From c1c43d61283f23830da2ecc8caad8fdf2ca4acff Mon Sep 17 00:00:00 2001 From: asiia-trilitech Date: Wed, 13 Mar 2024 15:47:32 +0000 Subject: [PATCH] deploy: 92bb2d1ef00855fbef5fb1e5cfd73584325b46ac --- asset-manifest.json | 6 +++--- index.html | 2 +- static/js/{main.16531fe2.js => main.6058878c.js} | 12 ++++++------ ...2.js.LICENSE.txt => main.6058878c.js.LICENSE.txt} | 0 .../{main.16531fe2.js.map => main.6058878c.js.map} | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) rename static/js/{main.16531fe2.js => main.6058878c.js} (51%) rename static/js/{main.16531fe2.js.LICENSE.txt => main.6058878c.js.LICENSE.txt} (100%) rename static/js/{main.16531fe2.js.map => main.6058878c.js.map} (60%) diff --git a/asset-manifest.json b/asset-manifest.json index 9d3b52e99..b3dbc8148 100644 --- a/asset-manifest.json +++ b/asset-manifest.json @@ -1,7 +1,7 @@ { "files": { "main.css": "./static/css/main.0dd87486.css", - "main.js": "./static/js/main.16531fe2.js", + "main.js": "./static/js/main.6058878c.js", "reactPlayerYouTube.js": "./static/js/reactPlayerYouTube.de047225.chunk.js", "reactPlayerSoundCloud.js": "./static/js/reactPlayerSoundCloud.fca705a3.chunk.js", "reactPlayerVimeo.js": "./static/js/reactPlayerVimeo.e403c288.chunk.js", @@ -22,7 +22,7 @@ "static/media/multisig.png": "./static/media/multisig.3ab2bbc3bda7df25ea83.png", "index.html": "./index.html", "main.0dd87486.css.map": "./static/css/main.0dd87486.css.map", - "main.16531fe2.js.map": "./static/js/main.16531fe2.js.map", + "main.6058878c.js.map": "./static/js/main.6058878c.js.map", "reactPlayerYouTube.de047225.chunk.js.map": "./static/js/reactPlayerYouTube.de047225.chunk.js.map", "reactPlayerSoundCloud.fca705a3.chunk.js.map": "./static/js/reactPlayerSoundCloud.fca705a3.chunk.js.map", "reactPlayerVimeo.e403c288.chunk.js.map": "./static/js/reactPlayerVimeo.e403c288.chunk.js.map", @@ -40,6 +40,6 @@ }, "entrypoints": [ "static/css/main.0dd87486.css", - "static/js/main.16531fe2.js" + "static/js/main.6058878c.js" ] } \ No newline at end of file diff --git a/index.html b/index.html index 23c99a892..e266d63e7 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -Umami
\ No newline at end of file +Umami
\ No newline at end of file diff --git a/static/js/main.16531fe2.js b/static/js/main.6058878c.js similarity index 51% rename from static/js/main.16531fe2.js rename to static/js/main.6058878c.js index b315da60d..0f5c0ea4c 100644 --- a/static/js/main.16531fe2.js +++ b/static/js/main.6058878c.js @@ -1,5 +1,5 @@ -/*! For license information please see main.16531fe2.js.LICENSE.txt */ -(()=>{var e={9140:(e,t)=>{var r;function n(e,t){navigator.onLine||e("offline"),e("error",t)}function i(e,t,r){navigator.serviceWorker.register(e,r).then((function(e){t("registered",e),e.waiting?t("updated",e):e.onupdatefound=function(){t("updatefound",e);var r=e.installing;r.onstatechange=function(){"installed"===r.state&&(navigator.serviceWorker.controller?t("updated",e):t("cached",e))}}})).catch((function(e){return n(t,e)}))}"undefined"!==typeof window&&(r="undefined"===typeof document||"interactive"!==document.readyState&&"complete"!==document.readyState?"undefined"!==typeof Promise?new Promise((function(e){return window.addEventListener("load",e)})):{then:function(e){return window.addEventListener("load",e)}}:Promise.resolve()),t.k=function(e,t){void 0===t&&(t={});var o=t.registrationOptions;void 0===o&&(o={}),delete t.registrationOptions;var a=function(e){for(var r=[],n=arguments.length-1;n-- >0;)r[n]=arguments[n+1];t&&t[e]&&t[e].apply(t,r)};"serviceWorker"in navigator&&r.then((function(){Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/))?(!function(e,t,r){fetch(e).then((function(n){404===n.status?(t("error",new Error("Service worker not found at "+e)),unregister()):-1===n.headers.get("content-type").indexOf("javascript")?(t("error",new Error("Expected "+e+" to have javascript content-type, but received "+n.headers.get("content-type"))),unregister()):i(e,t,r)})).catch((function(e){return n(t,e)}))}(e,a,o),navigator.serviceWorker.ready.then((function(e){a("ready",e)}))):(i(e,a,o),navigator.serviceWorker.ready.then((function(e){a("ready",e)})))}))}},3958:(e,t,r)=>{const n=Symbol("SemVer ANY");class i{static get ANY(){return n}constructor(e,t){if(t=o(t),e instanceof i){if(e.loose===!!t.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),l("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===n?this.value="":this.value=this.operator+this.semver.version,l("comp",this)}parse(e){const t=this.options.loose?a[s.COMPARATORLOOSE]:a[s.COMPARATOR],r=e.match(t);if(!r)throw new TypeError(`Invalid comparator: ${e}`);this.operator=void 0!==r[1]?r[1]:"","="===this.operator&&(this.operator=""),r[2]?this.semver=new u(r[2],this.options.loose):this.semver=n}toString(){return this.value}test(e){if(l("Comparator.test",e,this.options.loose),this.semver===n||e===n)return!0;if("string"===typeof e)try{e=new u(e,this.options)}catch(t){return!1}return c(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof i))throw new TypeError("a Comparator is required");return""===this.operator?""===this.value||new d(e.value,t).test(this.value):""===e.operator?""===e.value||new d(this.value,t).test(e.semver):(!(t=o(t)).includePrerelease||"<0.0.0-0"!==this.value&&"<0.0.0-0"!==e.value)&&(!(!t.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0")))&&(!(!this.operator.startsWith(">")||!e.operator.startsWith(">"))||(!(!this.operator.startsWith("<")||!e.operator.startsWith("<"))||(!(this.semver.version!==e.semver.version||!this.operator.includes("=")||!e.operator.includes("="))||(!!(c(this.semver,"<",e.semver,t)&&this.operator.startsWith(">")&&e.operator.startsWith("<"))||!!(c(this.semver,">",e.semver,t)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))))))}}e.exports=i;const o=r(8089),{safeRe:a,t:s}=r(7348),c=r(6521),l=r(558),u=r(3810),d=r(8361)},8361:(e,t,r)=>{class n{constructor(e,t){if(t=o(t),e instanceof n)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new n(e.raw,t);if(e instanceof a)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map((e=>this.parseRange(e.trim()))).filter((e=>e.length)),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const e=this.set[0];if(this.set=this.set.filter((e=>!g(e[0]))),0===this.set.length)this.set=[e];else if(this.set.length>1)for(const t of this.set)if(1===t.length&&v(t[0])){this.set=[t];break}}this.format()}format(){return this.range=this.set.map((e=>e.join(" ").trim())).join("||").trim(),this.range}toString(){return this.range}parseRange(e){const t=((this.options.includePrerelease&&p)|(this.options.loose&&m))+":"+e,r=i.get(t);if(r)return r;const n=this.options.loose,o=n?l[u.HYPHENRANGELOOSE]:l[u.HYPHENRANGE];e=e.replace(o,T(this.options.includePrerelease)),s("hyphen replace",e),e=e.replace(l[u.COMPARATORTRIM],d),s("comparator trim",e),e=e.replace(l[u.TILDETRIM],h),s("tilde trim",e),e=e.replace(l[u.CARETTRIM],f),s("caret trim",e);let c=e.split(" ").map((e=>b(e,this.options))).join(" ").split(/\s+/).map((e=>O(e,this.options)));n&&(c=c.filter((e=>(s("loose invalid filter",e,this.options),!!e.match(l[u.COMPARATORLOOSE]))))),s("range list",c);const v=new Map,y=c.map((e=>new a(e,this.options)));for(const i of y){if(g(i))return[i];v.set(i.value,i)}v.size>1&&v.has("")&&v.delete("");const w=[...v.values()];return i.set(t,w),w}intersects(e,t){if(!(e instanceof n))throw new TypeError("a Range is required");return this.set.some((r=>y(r,t)&&e.set.some((e=>y(e,t)&&r.every((r=>e.every((e=>r.intersects(e,t)))))))))}test(e){if(!e)return!1;if("string"===typeof e)try{e=new c(e,this.options)}catch(t){return!1}for(let r=0;r"<0.0.0-0"===e.value,v=e=>""===e.value,y=(e,t)=>{let r=!0;const n=e.slice();let i=n.pop();for(;r&&n.length;)r=n.every((e=>i.intersects(e,t))),i=n.pop();return r},b=(e,t)=>(s("comp",e,t),e=k(e,t),s("caret",e),e=x(e,t),s("tildes",e),e=E(e,t),s("xrange",e),e=P(e,t),s("stars",e),e),w=e=>!e||"x"===e.toLowerCase()||"*"===e,x=(e,t)=>e.trim().split(/\s+/).map((e=>_(e,t))).join(" "),_=(e,t)=>{const r=t.loose?l[u.TILDELOOSE]:l[u.TILDE];return e.replace(r,((t,r,n,i,o)=>{let a;return s("tilde",e,t,r,n,i,o),w(r)?a="":w(n)?a=`>=${r}.0.0 <${+r+1}.0.0-0`:w(i)?a=`>=${r}.${n}.0 <${r}.${+n+1}.0-0`:o?(s("replaceTilde pr",o),a=`>=${r}.${n}.${i}-${o} <${r}.${+n+1}.0-0`):a=`>=${r}.${n}.${i} <${r}.${+n+1}.0-0`,s("tilde return",a),a}))},k=(e,t)=>e.trim().split(/\s+/).map((e=>S(e,t))).join(" "),S=(e,t)=>{s("caret",e,t);const r=t.loose?l[u.CARETLOOSE]:l[u.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,((t,r,i,o,a)=>{let c;return s("caret",e,t,r,i,o,a),w(r)?c="":w(i)?c=`>=${r}.0.0${n} <${+r+1}.0.0-0`:w(o)?c="0"===r?`>=${r}.${i}.0${n} <${r}.${+i+1}.0-0`:`>=${r}.${i}.0${n} <${+r+1}.0.0-0`:a?(s("replaceCaret pr",a),c="0"===r?"0"===i?`>=${r}.${i}.${o}-${a} <${r}.${i}.${+o+1}-0`:`>=${r}.${i}.${o}-${a} <${r}.${+i+1}.0-0`:`>=${r}.${i}.${o}-${a} <${+r+1}.0.0-0`):(s("no pr"),c="0"===r?"0"===i?`>=${r}.${i}.${o}${n} <${r}.${i}.${+o+1}-0`:`>=${r}.${i}.${o}${n} <${r}.${+i+1}.0-0`:`>=${r}.${i}.${o} <${+r+1}.0.0-0`),s("caret return",c),c}))},E=(e,t)=>(s("replaceXRanges",e,t),e.split(/\s+/).map((e=>A(e,t))).join(" ")),A=(e,t)=>{e=e.trim();const r=t.loose?l[u.XRANGELOOSE]:l[u.XRANGE];return e.replace(r,((r,n,i,o,a,c)=>{s("xRange",e,r,n,i,o,a,c);const l=w(i),u=l||w(o),d=u||w(a),h=d;return"="===n&&h&&(n=""),c=t.includePrerelease?"-0":"",l?r=">"===n||"<"===n?"<0.0.0-0":"*":n&&h?(u&&(o=0),a=0,">"===n?(n=">=",u?(i=+i+1,o=0,a=0):(o=+o+1,a=0)):"<="===n&&(n="<",u?i=+i+1:o=+o+1),"<"===n&&(c="-0"),r=`${n+i}.${o}.${a}${c}`):u?r=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(r=`>=${i}.${o}.0${c} <${i}.${+o+1}.0-0`),s("xRange return",r),r}))},P=(e,t)=>(s("replaceStars",e,t),e.trim().replace(l[u.STAR],"")),O=(e,t)=>(s("replaceGTE0",e,t),e.trim().replace(l[t.includePrerelease?u.GTE0PRE:u.GTE0],"")),T=e=>(t,r,n,i,o,a,s,c,l,u,d,h,f)=>`${r=w(n)?"":w(i)?`>=${n}.0.0${e?"-0":""}`:w(o)?`>=${n}.${i}.0${e?"-0":""}`:a?`>=${r}`:`>=${r}${e?"-0":""}`} ${c=w(l)?"":w(u)?`<${+l+1}.0.0-0`:w(d)?`<${l}.${+u+1}.0-0`:h?`<=${l}.${u}.${d}-${h}`:e?`<${l}.${u}.${+d+1}-0`:`<=${c}`}`.trim(),j=(e,t,r)=>{for(let n=0;n0){const n=e[r].semver;if(n.major===t.major&&n.minor===t.minor&&n.patch===t.patch)return!0}return!1}return!0}},3810:(e,t,r)=>{const n=r(558),{MAX_LENGTH:i,MAX_SAFE_INTEGER:o}=r(9016),{safeRe:a,t:s}=r(7348),c=r(8089),{compareIdentifiers:l}=r(4073);class u{constructor(e,t){if(t=c(t),e instanceof u){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if("string"!==typeof e)throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>i)throw new TypeError(`version is longer than ${i} characters`);n("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;const r=e.trim().match(t.loose?a[s.LOOSE]:a[s.FULL]);if(!r)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>o||this.major<0)throw new TypeError("Invalid major version");if(this.minor>o||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>o||this.patch<0)throw new TypeError("Invalid patch version");r[4]?this.prerelease=r[4].split(".").map((e=>{if(/^[0-9]+$/.test(e)){const t=+e;if(t>=0&&t=0;)"number"===typeof this.prerelease[n]&&(this.prerelease[n]++,n=-2);if(-1===n){if(t===this.prerelease.join(".")&&!1===r)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(e)}}if(t){let n=[t,e];!1===r&&(n=[t]),0===l(this.prerelease[0],t)?isNaN(this.prerelease[1])&&(this.prerelease=n):this.prerelease=n}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}}e.exports=u},5308:(e,t,r)=>{const n=r(1430);e.exports=(e,t)=>{const r=n(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null}},6521:(e,t,r)=>{const n=r(1339),i=r(7673),o=r(9162),a=r(7827),s=r(9085),c=r(7214);e.exports=(e,t,r,l)=>{switch(t){case"===":return"object"===typeof e&&(e=e.version),"object"===typeof r&&(r=r.version),e===r;case"!==":return"object"===typeof e&&(e=e.version),"object"===typeof r&&(r=r.version),e!==r;case"":case"=":case"==":return n(e,r,l);case"!=":return i(e,r,l);case">":return o(e,r,l);case">=":return a(e,r,l);case"<":return s(e,r,l);case"<=":return c(e,r,l);default:throw new TypeError(`Invalid operator: ${t}`)}}},4836:(e,t,r)=>{const n=r(3810),i=r(1430),{safeRe:o,t:a}=r(7348);e.exports=(e,t)=>{if(e instanceof n)return e;if("number"===typeof e&&(e=String(e)),"string"!==typeof e)return null;let r=null;if((t=t||{}).rtl){let t;for(;(t=o[a.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length);)r&&t.index+t[0].length===r.index+r[0].length||(r=t),o[a.COERCERTL].lastIndex=t.index+t[1].length+t[2].length;o[a.COERCERTL].lastIndex=-1}else r=e.match(o[a.COERCE]);return null===r?null:i(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,t)}},7987:(e,t,r)=>{const n=r(3810);e.exports=(e,t,r)=>{const i=new n(e,r),o=new n(t,r);return i.compare(o)||i.compareBuild(o)}},7969:(e,t,r)=>{const n=r(1874);e.exports=(e,t)=>n(e,t,!0)},1874:(e,t,r)=>{const n=r(3810);e.exports=(e,t,r)=>new n(e,r).compare(new n(t,r))},5386:(e,t,r)=>{const n=r(1430);e.exports=(e,t)=>{const r=n(e,null,!0),i=n(t,null,!0),o=r.compare(i);if(0===o)return null;const a=o>0,s=a?r:i,c=a?i:r,l=!!s.prerelease.length;if(!!c.prerelease.length&&!l)return c.patch||c.minor?s.patch?"patch":s.minor?"minor":"major":"major";const u=l?"pre":"";return r.major!==i.major?u+"major":r.minor!==i.minor?u+"minor":r.patch!==i.patch?u+"patch":"prerelease"}},1339:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>0===n(e,t,r)},9162:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>n(e,t,r)>0},7827:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>n(e,t,r)>=0},5869:(e,t,r)=>{const n=r(3810);e.exports=(e,t,r,i,o)=>{"string"===typeof r&&(o=i,i=r,r=void 0);try{return new n(e instanceof n?e.version:e,r).inc(t,i,o).version}catch(a){return null}}},9085:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>n(e,t,r)<0},7214:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>n(e,t,r)<=0},9004:(e,t,r)=>{const n=r(3810);e.exports=(e,t)=>new n(e,t).major},2816:(e,t,r)=>{const n=r(3810);e.exports=(e,t)=>new n(e,t).minor},7673:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>0!==n(e,t,r)},1430:(e,t,r)=>{const n=r(3810);e.exports=(e,t,r=!1)=>{if(e instanceof n)return e;try{return new n(e,t)}catch(i){if(!r)return null;throw i}}},1943:(e,t,r)=>{const n=r(3810);e.exports=(e,t)=>new n(e,t).patch},4879:(e,t,r)=>{const n=r(1430);e.exports=(e,t)=>{const r=n(e,t);return r&&r.prerelease.length?r.prerelease:null}},948:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>n(t,e,r)},7915:(e,t,r)=>{const n=r(7987);e.exports=(e,t)=>e.sort(((e,r)=>n(r,e,t)))},6172:(e,t,r)=>{const n=r(8361);e.exports=(e,t,r)=>{try{t=new n(t,r)}catch(i){return!1}return t.test(e)}},5813:(e,t,r)=>{const n=r(7987);e.exports=(e,t)=>e.sort(((e,r)=>n(e,r,t)))},1176:(e,t,r)=>{const n=r(1430);e.exports=(e,t)=>{const r=n(e,t);return r?r.version:null}},1187:(e,t,r)=>{const n=r(7348),i=r(9016),o=r(3810),a=r(4073),s=r(1430),c=r(1176),l=r(5308),u=r(5869),d=r(5386),h=r(9004),f=r(2816),p=r(1943),m=r(4879),g=r(1874),v=r(948),y=r(7969),b=r(7987),w=r(5813),x=r(7915),_=r(9162),k=r(9085),S=r(1339),E=r(7673),A=r(7827),P=r(7214),O=r(6521),T=r(4836),j=r(3958),C=r(8361),R=r(6172),I=r(7153),M=r(6190),L=r(9311),N=r(9695),D=r(2192),z=r(2365),B=r(7501),U=r(916),F=r(6382),$=r(8307),H=r(5650);e.exports={parse:s,valid:c,clean:l,inc:u,diff:d,major:h,minor:f,patch:p,prerelease:m,compare:g,rcompare:v,compareLoose:y,compareBuild:b,sort:w,rsort:x,gt:_,lt:k,eq:S,neq:E,gte:A,lte:P,cmp:O,coerce:T,Comparator:j,Range:C,satisfies:R,toComparators:I,maxSatisfying:M,minSatisfying:L,minVersion:N,validRange:D,outside:z,gtr:B,ltr:U,intersects:F,simplifyRange:$,subset:H,SemVer:o,re:n.re,src:n.src,tokens:n.t,SEMVER_SPEC_VERSION:i.SEMVER_SPEC_VERSION,RELEASE_TYPES:i.RELEASE_TYPES,compareIdentifiers:a.compareIdentifiers,rcompareIdentifiers:a.rcompareIdentifiers}},9016:e=>{const t=Number.MAX_SAFE_INTEGER||9007199254740991;e.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:t,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}},558:(e,t,r)=>{const n="object"===typeof r(9996)&&{NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}.NODE_DEBUG&&/\bsemver\b/i.test({NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};e.exports=n},4073:e=>{const t=/^[0-9]+$/,r=(e,r)=>{const n=t.test(e),i=t.test(r);return n&&i&&(e=+e,r=+r),e===r?0:n&&!i?-1:i&&!n?1:er(t,e)}},8089:e=>{const t=Object.freeze({loose:!0}),r=Object.freeze({});e.exports=e=>e?"object"!==typeof e?t:e:r},7348:(e,t,r)=>{const{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:i,MAX_LENGTH:o}=r(9016),a=r(558),s=(t=e.exports={}).re=[],c=t.safeRe=[],l=t.src=[],u=t.t={};let d=0;const h="[a-zA-Z0-9-]",f=[["\\s",1],["\\d",o],[h,i]],p=(e,t,r)=>{const n=(e=>{for(const[t,r]of f)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e})(t),i=d++;a(e,i,t),u[e]=i,l[i]=t,s[i]=new RegExp(t,r?"g":void 0),c[i]=new RegExp(n,r?"g":void 0)};p("NUMERICIDENTIFIER","0|[1-9]\\d*"),p("NUMERICIDENTIFIERLOOSE","\\d+"),p("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${h}*`),p("MAINVERSION",`(${l[u.NUMERICIDENTIFIER]})\\.(${l[u.NUMERICIDENTIFIER]})\\.(${l[u.NUMERICIDENTIFIER]})`),p("MAINVERSIONLOOSE",`(${l[u.NUMERICIDENTIFIERLOOSE]})\\.(${l[u.NUMERICIDENTIFIERLOOSE]})\\.(${l[u.NUMERICIDENTIFIERLOOSE]})`),p("PRERELEASEIDENTIFIER",`(?:${l[u.NUMERICIDENTIFIER]}|${l[u.NONNUMERICIDENTIFIER]})`),p("PRERELEASEIDENTIFIERLOOSE",`(?:${l[u.NUMERICIDENTIFIERLOOSE]}|${l[u.NONNUMERICIDENTIFIER]})`),p("PRERELEASE",`(?:-(${l[u.PRERELEASEIDENTIFIER]}(?:\\.${l[u.PRERELEASEIDENTIFIER]})*))`),p("PRERELEASELOOSE",`(?:-?(${l[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${l[u.PRERELEASEIDENTIFIERLOOSE]})*))`),p("BUILDIDENTIFIER",`${h}+`),p("BUILD",`(?:\\+(${l[u.BUILDIDENTIFIER]}(?:\\.${l[u.BUILDIDENTIFIER]})*))`),p("FULLPLAIN",`v?${l[u.MAINVERSION]}${l[u.PRERELEASE]}?${l[u.BUILD]}?`),p("FULL",`^${l[u.FULLPLAIN]}$`),p("LOOSEPLAIN",`[v=\\s]*${l[u.MAINVERSIONLOOSE]}${l[u.PRERELEASELOOSE]}?${l[u.BUILD]}?`),p("LOOSE",`^${l[u.LOOSEPLAIN]}$`),p("GTLT","((?:<|>)?=?)"),p("XRANGEIDENTIFIERLOOSE",`${l[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),p("XRANGEIDENTIFIER",`${l[u.NUMERICIDENTIFIER]}|x|X|\\*`),p("XRANGEPLAIN",`[v=\\s]*(${l[u.XRANGEIDENTIFIER]})(?:\\.(${l[u.XRANGEIDENTIFIER]})(?:\\.(${l[u.XRANGEIDENTIFIER]})(?:${l[u.PRERELEASE]})?${l[u.BUILD]}?)?)?`),p("XRANGEPLAINLOOSE",`[v=\\s]*(${l[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[u.XRANGEIDENTIFIERLOOSE]})(?:${l[u.PRERELEASELOOSE]})?${l[u.BUILD]}?)?)?`),p("XRANGE",`^${l[u.GTLT]}\\s*${l[u.XRANGEPLAIN]}$`),p("XRANGELOOSE",`^${l[u.GTLT]}\\s*${l[u.XRANGEPLAINLOOSE]}$`),p("COERCE",`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?(?:$|[^\\d])`),p("COERCERTL",l[u.COERCE],!0),p("LONETILDE","(?:~>?)"),p("TILDETRIM",`(\\s*)${l[u.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",p("TILDE",`^${l[u.LONETILDE]}${l[u.XRANGEPLAIN]}$`),p("TILDELOOSE",`^${l[u.LONETILDE]}${l[u.XRANGEPLAINLOOSE]}$`),p("LONECARET","(?:\\^)"),p("CARETTRIM",`(\\s*)${l[u.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",p("CARET",`^${l[u.LONECARET]}${l[u.XRANGEPLAIN]}$`),p("CARETLOOSE",`^${l[u.LONECARET]}${l[u.XRANGEPLAINLOOSE]}$`),p("COMPARATORLOOSE",`^${l[u.GTLT]}\\s*(${l[u.LOOSEPLAIN]})$|^$`),p("COMPARATOR",`^${l[u.GTLT]}\\s*(${l[u.FULLPLAIN]})$|^$`),p("COMPARATORTRIM",`(\\s*)${l[u.GTLT]}\\s*(${l[u.LOOSEPLAIN]}|${l[u.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",p("HYPHENRANGE",`^\\s*(${l[u.XRANGEPLAIN]})\\s+-\\s+(${l[u.XRANGEPLAIN]})\\s*$`),p("HYPHENRANGELOOSE",`^\\s*(${l[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${l[u.XRANGEPLAINLOOSE]})\\s*$`),p("STAR","(<|>)?=?\\s*\\*"),p("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),p("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")},7501:(e,t,r)=>{const n=r(2365);e.exports=(e,t,r)=>n(e,t,">",r)},6382:(e,t,r)=>{const n=r(8361);e.exports=(e,t,r)=>(e=new n(e,r),t=new n(t,r),e.intersects(t,r))},916:(e,t,r)=>{const n=r(2365);e.exports=(e,t,r)=>n(e,t,"<",r)},6190:(e,t,r)=>{const n=r(3810),i=r(8361);e.exports=(e,t,r)=>{let o=null,a=null,s=null;try{s=new i(t,r)}catch(c){return null}return e.forEach((e=>{s.test(e)&&(o&&-1!==a.compare(e)||(o=e,a=new n(o,r)))})),o}},9311:(e,t,r)=>{const n=r(3810),i=r(8361);e.exports=(e,t,r)=>{let o=null,a=null,s=null;try{s=new i(t,r)}catch(c){return null}return e.forEach((e=>{s.test(e)&&(o&&1!==a.compare(e)||(o=e,a=new n(o,r)))})),o}},9695:(e,t,r)=>{const n=r(3810),i=r(8361),o=r(9162);e.exports=(e,t)=>{e=new i(e,t);let r=new n("0.0.0");if(e.test(r))return r;if(r=new n("0.0.0-0"),e.test(r))return r;r=null;for(let i=0;i{const t=new n(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":a&&!o(t,a)||(a=t);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${e.operator}`)}})),!a||r&&!o(r,a)||(r=a)}return r&&e.test(r)?r:null}},2365:(e,t,r)=>{const n=r(3810),i=r(3958),{ANY:o}=i,a=r(8361),s=r(6172),c=r(9162),l=r(9085),u=r(7214),d=r(7827);e.exports=(e,t,r,h)=>{let f,p,m,g,v;switch(e=new n(e,h),t=new a(t,h),r){case">":f=c,p=u,m=l,g=">",v=">=";break;case"<":f=l,p=d,m=c,g="<",v="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(s(e,t,h))return!1;for(let n=0;n{e.semver===o&&(e=new i(">=0.0.0")),a=a||e,s=s||e,f(e.semver,a.semver,h)?a=e:m(e.semver,s.semver,h)&&(s=e)})),a.operator===g||a.operator===v)return!1;if((!s.operator||s.operator===g)&&p(e,s.semver))return!1;if(s.operator===v&&m(e,s.semver))return!1}return!0}},8307:(e,t,r)=>{const n=r(6172),i=r(1874);e.exports=(e,t,r)=>{const o=[];let a=null,s=null;const c=e.sort(((e,t)=>i(e,t,r)));for(const i of c){n(i,t,r)?(s=i,a||(a=i)):(s&&o.push([a,s]),s=null,a=null)}a&&o.push([a,null]);const l=[];for(const[n,i]of o)n===i?l.push(n):i||n!==c[0]?i?n===c[0]?l.push(`<=${i}`):l.push(`${n} - ${i}`):l.push(`>=${n}`):l.push("*");const u=l.join(" || "),d="string"===typeof t.raw?t.raw:String(t);return u.length{const n=r(8361),i=r(3958),{ANY:o}=i,a=r(6172),s=r(1874),c=[new i(">=0.0.0-0")],l=[new i(">=0.0.0")],u=(e,t,r)=>{if(e===t)return!0;if(1===e.length&&e[0].semver===o){if(1===t.length&&t[0].semver===o)return!0;e=r.includePrerelease?c:l}if(1===t.length&&t[0].semver===o){if(r.includePrerelease)return!0;t=l}const n=new Set;let i,u,f,p,m,g,v;for(const o of e)">"===o.operator||">="===o.operator?i=d(i,o,r):"<"===o.operator||"<="===o.operator?u=h(u,o,r):n.add(o.semver);if(n.size>1)return null;if(i&&u){if(f=s(i.semver,u.semver,r),f>0)return null;if(0===f&&(">="!==i.operator||"<="!==u.operator))return null}for(const o of n){if(i&&!a(o,String(i),r))return null;if(u&&!a(o,String(u),r))return null;for(const e of t)if(!a(o,String(e),r))return!1;return!0}let y=!(!u||r.includePrerelease||!u.semver.prerelease.length)&&u.semver,b=!(!i||r.includePrerelease||!i.semver.prerelease.length)&&i.semver;y&&1===y.prerelease.length&&"<"===u.operator&&0===y.prerelease[0]&&(y=!1);for(const o of t){if(v=v||">"===o.operator||">="===o.operator,g=g||"<"===o.operator||"<="===o.operator,i)if(b&&o.semver.prerelease&&o.semver.prerelease.length&&o.semver.major===b.major&&o.semver.minor===b.minor&&o.semver.patch===b.patch&&(b=!1),">"===o.operator||">="===o.operator){if(p=d(i,o,r),p===o&&p!==i)return!1}else if(">="===i.operator&&!a(i.semver,String(o),r))return!1;if(u)if(y&&o.semver.prerelease&&o.semver.prerelease.length&&o.semver.major===y.major&&o.semver.minor===y.minor&&o.semver.patch===y.patch&&(y=!1),"<"===o.operator||"<="===o.operator){if(m=h(u,o,r),m===o&&m!==u)return!1}else if("<="===u.operator&&!a(u.semver,String(o),r))return!1;if(!o.operator&&(u||i)&&0!==f)return!1}return!(i&&g&&!u&&0!==f)&&(!(u&&v&&!i&&0!==f)&&(!b&&!y))},d=(e,t,r)=>{if(!e)return t;const n=s(e.semver,t.semver,r);return n>0?e:n<0||">"===t.operator&&">="===e.operator?t:e},h=(e,t,r)=>{if(!e)return t;const n=s(e.semver,t.semver,r);return n<0?e:n>0||"<"===t.operator&&"<="===e.operator?t:e};e.exports=(e,t,r={})=>{if(e===t)return!0;e=new n(e,r),t=new n(t,r);let i=!1;e:for(const n of e.set){for(const e of t.set){const t=u(n,e,r);if(i=i||null!==t,t)continue e}if(i)return!1}return!0}},7153:(e,t,r)=>{const n=r(8361);e.exports=(e,t)=>new n(e,t).set.map((e=>e.map((e=>e.value)).join(" ").trim().split(" ")))},2192:(e,t,r)=>{const n=r(8361);e.exports=(e,t)=>{try{return new n(e,t).range||"*"}catch(r){return null}}},8903:(e,t)=>{"use strict";function r(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function n(e){if("boolean"!==typeof e)throw new Error(`Expected boolean, not ${e}`)}function i(e,...t){if(!(e instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new TypeError(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function o(e){if("function"!==typeof e||"function"!==typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");r(e.outputLen),r(e.blockLen)}function a(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function s(e,t){i(e);const r=t.outputLen;if(e.length{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SHA2=void 0;const n=r(8903),i=r(7317);class o extends i.Hash{constructor(e,t,r,n){super(),this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=n,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,i.createView)(this.buffer)}update(e){n.default.exists(this);const{view:t,buffer:r,blockLen:o}=this,a=(e=(0,i.toBytes)(e)).length;for(let n=0;no-s&&(this.process(r,0),s=0);for(let n=s;n>i&o),s=Number(r&o),c=n?4:0,l=n?0:4;e.setUint32(t+c,a,n),e.setUint32(t+l,s,n)}(r,o-8,BigInt(8*this.length),a),this.process(r,0);const c=(0,i.createView)(e),l=this.outputLen;if(l%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const u=l/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.add=t.toBig=t.split=t.fromBig=void 0;const r=BigInt(2**32-1),n=BigInt(32);function i(e,t=!1){return t?{h:Number(e&r),l:Number(e>>n&r)}:{h:0|Number(e>>n&r),l:0|Number(e&r)}}function o(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let o=0;oBigInt(e>>>0)<>>0);function a(e,t,r,n){const i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:0|i}}t.add=a;const s={fromBig:i,split:o,toBig:t.toBig,shrSH:(e,t,r)=>e>>>r,shrSL:(e,t,r)=>e<<32-r|t>>>r,rotrSH:(e,t,r)=>e>>>r|t<<32-r,rotrSL:(e,t,r)=>e<<32-r|t>>>r,rotrBH:(e,t,r)=>e<<64-r|t>>>r-32,rotrBL:(e,t,r)=>e>>>r-32|t<<64-r,rotr32H:(e,t)=>t,rotr32L:(e,t)=>e,rotlSH:(e,t,r)=>e<>>32-r,rotlSL:(e,t,r)=>t<>>32-r,rotlBH:(e,t,r)=>t<>>64-r,rotlBL:(e,t,r)=>e<>>64-r,add:a,add3L:(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),add3H:(e,t,r,n)=>t+r+n+(e/2**32|0)|0,add4L:(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),add4H:(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,add5H:(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0,add5L:(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0)};t.default=s},8107:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.crypto=void 0,t.crypto="object"===typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0},9113:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hmac=void 0;const n=r(8903),i=r(7317);class o extends i.Hash{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,n.default.hash(e);const r=(0,i.toBytes)(t);if(this.iHash=e.create(),"function"!==typeof this.iHash.update)throw new TypeError("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const o=this.blockLen,a=new Uint8Array(o);a.set(r.length>o?e.create().update(r).digest():r);for(let n=0;nnew o(e,t).update(r).digest(),t.hmac.create=(e,t)=>new o(e,t)},9419:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.pbkdf2Async=t.pbkdf2=void 0;const n=r(8903),i=r(9113),o=r(7317);function a(e,t,r,a){n.default.hash(e);const s=(0,o.checkOpts)({dkLen:32,asyncTick:10},a),{c:c,dkLen:l,asyncTick:u}=s;if(n.default.number(c),n.default.number(l),n.default.number(u),c<1)throw new Error("PBKDF2: iterations (c) should be >= 1");const d=(0,o.toBytes)(t),h=(0,o.toBytes)(r),f=new Uint8Array(l),p=i.hmac.create(e,d),m=p._cloneInto().update(h);return{c:c,dkLen:l,asyncTick:u,DK:f,PRF:p,PRFSalt:m}}function s(e,t,r,n,i){return e.destroy(),t.destroy(),n&&n.destroy(),i.fill(0),r}t.pbkdf2=function(e,t,r,n){const{c:i,dkLen:c,DK:l,PRF:u,PRFSalt:d}=a(e,t,r,n);let h;const f=new Uint8Array(4),p=(0,o.createView)(f),m=new Uint8Array(u.outputLen);for(let o=1,a=0;a{d._cloneInto(f).update(g).digestInto(g);for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sha224=t.sha256=void 0;const n=r(2689),i=r(7317),o=(e,t,r)=>e&t^e&r^t&r,a=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),s=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),c=new Uint32Array(64);class l extends n.SHA2{constructor(){super(64,32,8,!1),this.A=0|s[0],this.B=0|s[1],this.C=0|s[2],this.D=0|s[3],this.E=0|s[4],this.F=0|s[5],this.G=0|s[6],this.H=0|s[7]}get(){const{A:e,B:t,C:r,D:n,E:i,F:o,G:a,H:s}=this;return[e,t,r,n,i,o,a,s]}set(e,t,r,n,i,o,a,s){this.A=0|e,this.B=0|t,this.C=0|r,this.D=0|n,this.E=0|i,this.F=0|o,this.G=0|a,this.H=0|s}process(e,t){for(let i=0;i<16;i++,t+=4)c[i]=e.getUint32(t,!1);for(let o=16;o<64;o++){const e=c[o-15],t=c[o-2],r=(0,i.rotr)(e,7)^(0,i.rotr)(e,18)^e>>>3,n=(0,i.rotr)(t,17)^(0,i.rotr)(t,19)^t>>>10;c[o]=n+c[o-7]+r+c[o-16]|0}let{A:r,B:n,C:s,D:l,E:u,F:d,G:h,H:f}=this;for(let m=0;m<64;m++){const e=f+((0,i.rotr)(u,6)^(0,i.rotr)(u,11)^(0,i.rotr)(u,25))+((p=u)&d^~p&h)+a[m]+c[m]|0,t=((0,i.rotr)(r,2)^(0,i.rotr)(r,13)^(0,i.rotr)(r,22))+o(r,n,s)|0;f=h,h=d,d=u,u=l+e|0,l=s,s=n,n=r,r=e+t|0}var p;r=r+this.A|0,n=n+this.B|0,s=s+this.C|0,l=l+this.D|0,u=u+this.E|0,d=d+this.F|0,h=h+this.G|0,f=f+this.H|0,this.set(r,n,s,l,u,d,h,f)}roundClean(){c.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}class u extends l{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}t.sha256=(0,i.wrapConstructor)((()=>new l)),t.sha224=(0,i.wrapConstructor)((()=>new u))},6681:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.shake256=t.shake128=t.keccak_512=t.keccak_384=t.keccak_256=t.keccak_224=t.sha3_512=t.sha3_384=t.sha3_256=t.sha3_224=t.Keccak=t.keccakP=void 0;const n=r(8903),i=r(5892),o=r(7317),[a,s,c]=[[],[],[]],l=BigInt(0),u=BigInt(1),d=BigInt(2),h=BigInt(7),f=BigInt(256),p=BigInt(113);for(let k=0,S=u,E=1,A=0;k<24;k++){[E,A]=[A,(2*E+3*A)%5],a.push(2*(5*A+E)),s.push((k+1)*(k+2)/2%64);let e=l;for(let t=0;t<7;t++)S=(S<>h)*p)%f,S&d&&(e^=u<<(u<r>32?i.default.rotlBH(e,t,r):i.default.rotlSH(e,t,r),y=(e,t,r)=>r>32?i.default.rotlBL(e,t,r):i.default.rotlSL(e,t,r);function b(e,t=24){const r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let n=0;n<10;n++)r[n]=e[n]^e[n+10]^e[n+20]^e[n+30]^e[n+40];for(let n=0;n<10;n+=2){const t=(n+8)%10,i=(n+2)%10,o=r[i],a=r[i+1],s=v(o,a,1)^r[t],c=y(o,a,1)^r[t+1];for(let r=0;r<50;r+=10)e[n+r]^=s,e[n+r+1]^=c}let t=e[2],i=e[3];for(let r=0;r<24;r++){const n=s[r],o=v(t,i,n),c=y(t,i,n),l=a[r];t=e[l],i=e[l+1],e[l]=o,e[l+1]=c}for(let n=0;n<50;n+=10){for(let t=0;t<10;t++)r[t]=e[n+t];for(let t=0;t<10;t++)e[n+t]^=~r[(t+2)%10]&r[(t+4)%10]}e[0]^=m[n],e[1]^=g[n]}r.fill(0)}t.keccakP=b;class w extends o.Hash{constructor(e,t,r,i=!1,a=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=r,this.enableXOF=i,this.rounds=a,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,n.default.number(r),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,o.u32)(this.state)}keccak(){b(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){n.default.exists(this);const{blockLen:t,state:r}=this,i=(e=(0,o.toBytes)(e)).length;for(let n=0;n=r&&this.keccak();const o=Math.min(r-this.posOut,i-n);e.set(t.subarray(this.posOut,this.posOut+o),n),this.posOut+=o,n+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return n.default.number(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(n.default.output(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:t,suffix:r,outputLen:n,rounds:i,enableXOF:o}=this;return e||(e=new w(t,r,n,o,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=r,e.outputLen=n,e.enableXOF=o,e.destroyed=this.destroyed,e}}t.Keccak=w;const x=(e,t,r)=>(0,o.wrapConstructor)((()=>new w(t,e,r)));t.sha3_224=x(6,144,28),t.sha3_256=x(6,136,32),t.sha3_384=x(6,104,48),t.sha3_512=x(6,72,64),t.keccak_224=x(1,144,28),t.keccak_256=x(1,136,32),t.keccak_384=x(1,104,48),t.keccak_512=x(1,72,64);const _=(e,t,r)=>(0,o.wrapConstructorWithOpts)(((n={})=>new w(t,e,void 0===n.dkLen?r:n.dkLen,!0)));t.shake128=_(31,168,16),t.shake256=_(31,136,32)},6428:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sha384=t.sha512_256=t.sha512_224=t.sha512=t.SHA512=void 0;const n=r(2689),i=r(5892),o=r(7317),[a,s]=i.default.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map((e=>BigInt(e)))),c=new Uint32Array(80),l=new Uint32Array(80);class u extends n.SHA2{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:t,Bh:r,Bl:n,Ch:i,Cl:o,Dh:a,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:h,Gl:f,Hh:p,Hl:m}=this;return[e,t,r,n,i,o,a,s,c,l,u,d,h,f,p,m]}set(e,t,r,n,i,o,a,s,c,l,u,d,h,f,p,m){this.Ah=0|e,this.Al=0|t,this.Bh=0|r,this.Bl=0|n,this.Ch=0|i,this.Cl=0|o,this.Dh=0|a,this.Dl=0|s,this.Eh=0|c,this.El=0|l,this.Fh=0|u,this.Fl=0|d,this.Gh=0|h,this.Gl=0|f,this.Hh=0|p,this.Hl=0|m}process(e,t){for(let i=0;i<16;i++,t+=4)c[i]=e.getUint32(t),l[i]=e.getUint32(t+=4);for(let a=16;a<80;a++){const e=0|c[a-15],t=0|l[a-15],r=i.default.rotrSH(e,t,1)^i.default.rotrSH(e,t,8)^i.default.shrSH(e,t,7),n=i.default.rotrSL(e,t,1)^i.default.rotrSL(e,t,8)^i.default.shrSL(e,t,7),o=0|c[a-2],s=0|l[a-2],u=i.default.rotrSH(o,s,19)^i.default.rotrBH(o,s,61)^i.default.shrSH(o,s,6),d=i.default.rotrSL(o,s,19)^i.default.rotrBL(o,s,61)^i.default.shrSL(o,s,6),h=i.default.add4L(n,d,l[a-7],l[a-16]),f=i.default.add4H(h,r,u,c[a-7],c[a-16]);c[a]=0|f,l[a]=0|h}let{Ah:r,Al:n,Bh:o,Bl:u,Ch:d,Cl:h,Dh:f,Dl:p,Eh:m,El:g,Fh:v,Fl:y,Gh:b,Gl:w,Hh:x,Hl:_}=this;for(let k=0;k<80;k++){const e=i.default.rotrSH(m,g,14)^i.default.rotrSH(m,g,18)^i.default.rotrBH(m,g,41),t=i.default.rotrSL(m,g,14)^i.default.rotrSL(m,g,18)^i.default.rotrBL(m,g,41),S=m&v^~m&b,E=g&y^~g&w,A=i.default.add5L(_,t,E,s[k],l[k]),P=i.default.add5H(A,x,e,S,a[k],c[k]),O=0|A,T=i.default.rotrSH(r,n,28)^i.default.rotrBH(r,n,34)^i.default.rotrBH(r,n,39),j=i.default.rotrSL(r,n,28)^i.default.rotrBL(r,n,34)^i.default.rotrBL(r,n,39),C=r&o^r&d^o&d,R=n&u^n&h^u&h;x=0|b,_=0|w,b=0|v,w=0|y,v=0|m,y=0|g,({h:m,l:g}=i.default.add(0|f,0|p,0|P,0|O)),f=0|d,p=0|h,d=0|o,h=0|u,o=0|r,u=0|n;const I=i.default.add3L(O,j,R);r=i.default.add3H(I,P,T,C),n=0|I}({h:r,l:n}=i.default.add(0|this.Ah,0|this.Al,0|r,0|n)),({h:o,l:u}=i.default.add(0|this.Bh,0|this.Bl,0|o,0|u)),({h:d,l:h}=i.default.add(0|this.Ch,0|this.Cl,0|d,0|h)),({h:f,l:p}=i.default.add(0|this.Dh,0|this.Dl,0|f,0|p)),({h:m,l:g}=i.default.add(0|this.Eh,0|this.El,0|m,0|g)),({h:v,l:y}=i.default.add(0|this.Fh,0|this.Fl,0|v,0|y)),({h:b,l:w}=i.default.add(0|this.Gh,0|this.Gl,0|b,0|w)),({h:x,l:_}=i.default.add(0|this.Hh,0|this.Hl,0|x,0|_)),this.set(r,n,o,u,d,h,f,p,m,g,v,y,b,w,x,_)}roundClean(){c.fill(0),l.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}t.SHA512=u;class d extends u{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}}class h extends u{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}}class f extends u{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}}t.sha512=(0,o.wrapConstructor)((()=>new u)),t.sha512_224=(0,o.wrapConstructor)((()=>new d)),t.sha512_256=(0,o.wrapConstructor)((()=>new h)),t.sha384=(0,o.wrapConstructor)((()=>new f))},7317:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomBytes=t.wrapConstructorWithOpts=t.wrapConstructor=t.checkOpts=t.Hash=t.concatBytes=t.toBytes=t.utf8ToBytes=t.asyncLoop=t.nextTick=t.hexToBytes=t.bytesToHex=t.isLE=t.rotr=t.createView=t.u32=t.u8=void 0;const n=r(8107);t.u8=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength);t.u32=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));t.createView=e=>new DataView(e.buffer,e.byteOffset,e.byteLength);if(t.rotr=(e,t)=>e<<32-t|e>>>t,t.isLE=68===new Uint8Array(new Uint32Array([287454020]).buffer)[0],!t.isLE)throw new Error("Non little-endian hardware is not supported");const i=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));t.bytesToHex=function(e){if(!(e instanceof Uint8Array))throw new Error("Uint8Array expected");let t="";for(let r=0;r{},t.asyncLoop=async function(e,r,n){let i=Date.now();for(let o=0;o=0&&ee instanceof Uint8Array)))throw new Error("Uint8Array list expected");if(1===e.length)return e[0];const t=e.reduce(((e,t)=>e+t.length),0),r=new Uint8Array(t);for(let n=0,i=0;ne().update(a(t)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t},t.wrapConstructorWithOpts=function(e){const t=(t,r)=>e(r).update(a(t)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=t=>e(t),t},t.randomBytes=function(e=32){if(n.crypto&&"function"===typeof n.crypto.getRandomValues)return n.crypto.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}},2730:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7046);function i(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>8,t[r+1]=e>>>0,t}function o(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t}function a(e,t){return void 0===t&&(t=0),e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}function s(e,t){return void 0===t&&(t=0),(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}function c(e,t){return void 0===t&&(t=0),e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]}function l(e,t){return void 0===t&&(t=0),(e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t])>>>0}function u(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>24,t[r+1]=e>>>16,t[r+2]=e>>>8,t[r+3]=e>>>0,t}function d(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24,t}function h(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),u(e/4294967296>>>0,t,r),u(e>>>0,t,r+4),t}function f(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),d(e>>>0,t,r),d(e/4294967296>>>0,t,r+4),t}t.readInt16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])<<16>>16},t.readUint16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])>>>0},t.readInt16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])<<16>>16},t.readUint16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])>>>0},t.writeUint16BE=i,t.writeInt16BE=i,t.writeUint16LE=o,t.writeInt16LE=o,t.readInt32BE=a,t.readUint32BE=s,t.readInt32LE=c,t.readUint32LE=l,t.writeUint32BE=u,t.writeInt32BE=u,t.writeUint32LE=d,t.writeInt32LE=d,t.readInt64BE=function(e,t){void 0===t&&(t=0);var r=a(e,t),n=a(e,t+4);return 4294967296*r+n-4294967296*(n>>31)},t.readUint64BE=function(e,t){return void 0===t&&(t=0),4294967296*s(e,t)+s(e,t+4)},t.readInt64LE=function(e,t){void 0===t&&(t=0);var r=c(e,t);return 4294967296*c(e,t+4)+r-4294967296*(r>>31)},t.readUint64LE=function(e,t){void 0===t&&(t=0);var r=l(e,t);return 4294967296*l(e,t+4)+r},t.writeUint64BE=h,t.writeInt64BE=h,t.writeUint64LE=f,t.writeInt64LE=f,t.readUintBE=function(e,t,r){if(void 0===r&&(r=0),e%8!==0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintBE: array is too short for the given bitLength");for(var n=0,i=1,o=e/8+r-1;o>=r;o--)n+=t[o]*i,i*=256;return n},t.readUintLE=function(e,t,r){if(void 0===r&&(r=0),e%8!==0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintLE: array is too short for the given bitLength");for(var n=0,i=1,o=r;o=i;a--)r[a]=t/o&255,o*=256;return r},t.writeUintLE=function(e,t,r,i){if(void 0===r&&(r=new Uint8Array(e/8)),void 0===i&&(i=0),e%8!==0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!n.isSafeInteger(t))throw new Error("writeUintLE value must be an integer");for(var o=1,a=i;a{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2730),i=r(4250);t.BLOCK_SIZE=128,t.DIGEST_LENGTH=64,t.KEY_LENGTH=64,t.PERSONALIZATION_LENGTH=16,t.SALT_LENGTH=16,t.MAX_LEAF_SIZE=Math.pow(2,32)-1,t.MAX_FANOUT=255,t.MAX_MAX_DEPTH=255;var o=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),a=[[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30],[28,20,8,16,18,30,26,12,2,24,0,4,22,14,10,6],[22,16,24,0,10,4,30,26,20,28,6,12,14,2,18,8],[14,18,6,2,26,24,22,28,4,12,10,20,8,0,30,16],[18,0,10,14,4,8,20,30,28,2,22,24,12,16,6,26],[4,24,12,20,0,22,16,6,8,26,14,10,30,28,2,18],[24,10,2,30,28,26,8,20,0,14,12,6,18,4,16,22],[26,22,14,28,24,2,6,18,10,0,30,8,16,12,4,20],[12,30,28,18,22,6,0,16,24,4,26,14,2,8,20,10],[20,4,16,8,14,12,2,10,30,22,18,28,6,24,26,0],[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30],[28,20,8,16,18,30,26,12,2,24,0,4,22,14,10,6]],s=function(){function e(e,r){if(void 0===e&&(e=64),this.digestLength=e,this.blockSize=t.BLOCK_SIZE,this._state=new Int32Array(o),this._buffer=new Uint8Array(t.BLOCK_SIZE),this._bufferLength=0,this._ctr=new Uint32Array(4),this._flag=new Uint32Array(4),this._lastNode=!1,this._finished=!1,this._vtmp=new Uint32Array(32),this._mtmp=new Uint32Array(32),e<1||e>t.DIGEST_LENGTH)throw new Error("blake2b: wrong digest length");r&&this.validateConfig(r);var i=0;r&&r.key&&(i=r.key.length);var a=1,s=1;r&&r.tree&&(a=r.tree.fanout,s=r.tree.maxDepth),this._state[0]^=e|i<<8|a<<16|s<<24,r&&r.tree&&(this._state[1]^=r.tree.leafSize,this._state[2]^=r.tree.nodeOffsetLowBits,this._state[3]^=r.tree.nodeOffsetHighBits,this._state[4]^=r.tree.nodeDepth|r.tree.innerDigestLength<<8,this._lastNode=r.tree.lastNode),r&&r.salt&&(this._state[8]^=n.readUint32LE(r.salt,0),this._state[9]^=n.readUint32LE(r.salt,4),this._state[10]^=n.readUint32LE(r.salt,8),this._state[11]^=n.readUint32LE(r.salt,12)),r&&r.personalization&&(this._state[12]^=n.readUint32LE(r.personalization,0),this._state[13]^=n.readUint32LE(r.personalization,4),this._state[14]^=n.readUint32LE(r.personalization,8),this._state[15]^=n.readUint32LE(r.personalization,12)),this._initialState=new Uint32Array(this._state),r&&r.key&&i>0&&(this._paddedKey=new Uint8Array(t.BLOCK_SIZE),this._paddedKey.set(r.key),this._buffer.set(this._paddedKey),this._bufferLength=t.BLOCK_SIZE)}return e.prototype.reset=function(){return this._state.set(this._initialState),this._paddedKey?(this._buffer.set(this._paddedKey),this._bufferLength=t.BLOCK_SIZE):this._bufferLength=0,i.wipe(this._ctr),i.wipe(this._flag),this._finished=!1,this},e.prototype.validateConfig=function(e){if(e.key&&e.key.length>t.KEY_LENGTH)throw new Error("blake2b: wrong key length");if(e.salt&&e.salt.length!==t.SALT_LENGTH)throw new Error("blake2b: wrong salt length");if(e.personalization&&e.personalization.length!==t.PERSONALIZATION_LENGTH)throw new Error("blake2b: wrong personalization length");if(e.tree){if(e.tree.fanout<0||e.tree.fanout>t.MAX_FANOUT)throw new Error("blake2b: wrong tree fanout");if(e.tree.maxDepth<0||e.tree.maxDepth>t.MAX_MAX_DEPTH)throw new Error("blake2b: wrong tree depth");if(e.tree.leafSize<0||e.tree.leafSize>t.MAX_LEAF_SIZE)throw new Error("blake2b: wrong leaf size");if(e.tree.innerDigestLength<0||e.tree.innerDigestLength>t.DIGEST_LENGTH)throw new Error("blake2b: wrong tree inner digest length")}},e.prototype.update=function(e,r){if(void 0===r&&(r=e.length),this._finished)throw new Error("blake2b: can't update because hash was finished.");var n=t.BLOCK_SIZE-this._bufferLength,i=0;if(0===r)return this;if(r>n){for(var o=0;ot.BLOCK_SIZE;){for(o=0;o>>16,k=65535&p,S=p>>>16;_+=m>>>16,k+=65535&g,S+=g>>>16,k+=(_+=(x+=65535&m)>>>16)>>>16,x=65535&(f=65535&x|_<<16),_=f>>>16,k=65535&(p=65535&k|(S+=k>>>16)<<16),S=p>>>16,_+=l>>>16,k+=65535&u,S+=u>>>16,f=65535&(x+=65535&l)|(_+=x>>>16)<<16,x=w^=p=65535&(k+=_>>>16)|(S+=k>>>16)<<16,w=b^=f,b=x,x=65535&v,_=v>>>16,k=65535&y,S=y>>>16,_+=b>>>16,k+=65535&w,S+=w>>>16,x=(m^=v=65535&(x+=65535&b)|(_+=x>>>16)<<16)<<8|(g^=y=65535&(k+=_>>>16)|(S+=k>>>16)<<16)>>>24,m=g<<8|m>>>24,g=x,x=65535&f,_=f>>>16,k=65535&p,S=p>>>16,_+=m>>>16,k+=65535&g,S+=g>>>16,k+=(_+=(x+=65535&m)>>>16)>>>16,x=65535&(f=65535&x|_<<16),_=f>>>16,k=65535&(p=65535&k|(S+=k>>>16)<<16),S=p>>>16,_+=d>>>16,k+=65535&h,S+=h>>>16,x=(b^=f=65535&(x+=65535&d)|(_+=x>>>16)<<16)<<16|(w^=p=65535&(k+=_>>>16)|(S+=k>>>16)<<16)>>>16,b=w<<16|b>>>16,w=x,x=65535&v,_=v>>>16,k=65535&y,S=y>>>16,_+=b>>>16,k+=65535&w,S+=w>>>16,x=(g^=y=65535&(k+=(_+=(x+=65535&b)>>>16)>>>16)|(S+=k>>>16)<<16)<<1|(m^=v=65535&x|_<<16)>>>31,m=m<<1|g>>>31,g=x,e[t]=f,e[o]=p,e[r]=m,e[a]=g,e[n]=v,e[s]=y,e[i]=b,e[c]=w},e.prototype._incrementCounter=function(e){for(var t=0;t<3;t++){var r=this._ctr[t]+e;if(this._ctr[t]=r>>>0,this._ctr[t]===r)return;e=1}},e.prototype._processBlock=function(e){this._incrementCounter(e);var t=this._vtmp;t.set(this._state),t.set(o,16),t[24]^=this._ctr[0],t[25]^=this._ctr[1],t[26]^=this._ctr[2],t[27]^=this._ctr[3],t[28]^=this._flag[0],t[29]^=this._flag[1],t[30]^=this._flag[2],t[31]^=this._flag[3];for(var r=this._mtmp,i=0;i<32;i++)r[i]=n.readUint32LE(this._buffer,4*i);for(var s=0;s<12;s++)this._G(t,0,8,16,24,1,9,17,25,r[a[s][0]],r[a[s][0]+1],r[a[s][1]],r[a[s][1]+1]),this._G(t,2,10,18,26,3,11,19,27,r[a[s][2]],r[a[s][2]+1],r[a[s][3]],r[a[s][3]+1]),this._G(t,4,12,20,28,5,13,21,29,r[a[s][4]],r[a[s][4]+1],r[a[s][5]],r[a[s][5]+1]),this._G(t,6,14,22,30,7,15,23,31,r[a[s][6]],r[a[s][6]+1],r[a[s][7]],r[a[s][7]+1]),this._G(t,0,10,20,30,1,11,21,31,r[a[s][8]],r[a[s][8]+1],r[a[s][9]],r[a[s][9]+1]),this._G(t,2,12,22,24,3,13,23,25,r[a[s][10]],r[a[s][10]+1],r[a[s][11]],r[a[s][11]+1]),this._G(t,4,14,16,26,5,15,17,27,r[a[s][12]],r[a[s][12]+1],r[a[s][13]],r[a[s][13]+1]),this._G(t,6,8,18,28,7,9,19,29,r[a[s][14]],r[a[s][14]+1],r[a[s][15]],r[a[s][15]+1]);for(i=0;i<16;i++)this._state[i]^=t[i]^t[i+16]},e}();t.BLAKE2b=s,t.hash=function(e,r,n){void 0===r&&(r=t.DIGEST_LENGTH);var i=new s(r,n);i.update(e);var o=i.digest();return i.clean(),o}},9722:(e,t)=>{"use strict";t.x=function(){for(var e=0,t=0;t{"use strict";function r(e,t){if(e.length!==t.length)return 0;for(var r=0,n=0;n>>8}Object.defineProperty(t,"__esModule",{value:!0}),t.select=function(e,t,r){return~(e-1)&t|e-1&r},t.lessOrEqual=function(e,t){return(0|e)-(0|t)-1>>>31&1},t.compare=r,t.equal=function(e,t){return 0!==e.length&&0!==t.length&&0!==r(e,t)}},5166:(e,t,r)=>{"use strict";t.a_=t.J$=t._S=t.K=t.TP=t.wE=t.Ee=void 0;const n=r(4706),i=r(2564),o=r(4250);function a(e){const t=new Float64Array(16);if(e)for(let r=0;r>16&1),r[t-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);const e=r[15]>>16&1;r[14]&=65535,g(n,r,1-e)}for(let i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}function y(e,t){let r=0;for(let n=0;n<32;n++)r|=e[n]^t[n];return(1&r-1>>>8)-1}function b(e,t){const r=new Uint8Array(32),n=new Uint8Array(32);return v(r,e),v(n,t),y(r,n)}function w(e){const t=new Uint8Array(32);return v(t,e),1&t[0]}function x(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]+r[n]}function _(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]-r[n]}function k(e,t,r){let n,i,o=0,a=0,s=0,c=0,l=0,u=0,d=0,h=0,f=0,p=0,m=0,g=0,v=0,y=0,b=0,w=0,x=0,_=0,k=0,S=0,E=0,A=0,P=0,O=0,T=0,j=0,C=0,R=0,I=0,M=0,L=0,N=r[0],D=r[1],z=r[2],B=r[3],U=r[4],F=r[5],$=r[6],H=r[7],V=r[8],q=r[9],K=r[10],W=r[11],G=r[12],Z=r[13],Y=r[14],X=r[15];n=t[0],o+=n*N,a+=n*D,s+=n*z,c+=n*B,l+=n*U,u+=n*F,d+=n*$,h+=n*H,f+=n*V,p+=n*q,m+=n*K,g+=n*W,v+=n*G,y+=n*Z,b+=n*Y,w+=n*X,n=t[1],a+=n*N,s+=n*D,c+=n*z,l+=n*B,u+=n*U,d+=n*F,h+=n*$,f+=n*H,p+=n*V,m+=n*q,g+=n*K,v+=n*W,y+=n*G,b+=n*Z,w+=n*Y,x+=n*X,n=t[2],s+=n*N,c+=n*D,l+=n*z,u+=n*B,d+=n*U,h+=n*F,f+=n*$,p+=n*H,m+=n*V,g+=n*q,v+=n*K,y+=n*W,b+=n*G,w+=n*Z,x+=n*Y,_+=n*X,n=t[3],c+=n*N,l+=n*D,u+=n*z,d+=n*B,h+=n*U,f+=n*F,p+=n*$,m+=n*H,g+=n*V,v+=n*q,y+=n*K,b+=n*W,w+=n*G,x+=n*Z,_+=n*Y,k+=n*X,n=t[4],l+=n*N,u+=n*D,d+=n*z,h+=n*B,f+=n*U,p+=n*F,m+=n*$,g+=n*H,v+=n*V,y+=n*q,b+=n*K,w+=n*W,x+=n*G,_+=n*Z,k+=n*Y,S+=n*X,n=t[5],u+=n*N,d+=n*D,h+=n*z,f+=n*B,p+=n*U,m+=n*F,g+=n*$,v+=n*H,y+=n*V,b+=n*q,w+=n*K,x+=n*W,_+=n*G,k+=n*Z,S+=n*Y,E+=n*X,n=t[6],d+=n*N,h+=n*D,f+=n*z,p+=n*B,m+=n*U,g+=n*F,v+=n*$,y+=n*H,b+=n*V,w+=n*q,x+=n*K,_+=n*W,k+=n*G,S+=n*Z,E+=n*Y,A+=n*X,n=t[7],h+=n*N,f+=n*D,p+=n*z,m+=n*B,g+=n*U,v+=n*F,y+=n*$,b+=n*H,w+=n*V,x+=n*q,_+=n*K,k+=n*W,S+=n*G,E+=n*Z,A+=n*Y,P+=n*X,n=t[8],f+=n*N,p+=n*D,m+=n*z,g+=n*B,v+=n*U,y+=n*F,b+=n*$,w+=n*H,x+=n*V,_+=n*q,k+=n*K,S+=n*W,E+=n*G,A+=n*Z,P+=n*Y,O+=n*X,n=t[9],p+=n*N,m+=n*D,g+=n*z,v+=n*B,y+=n*U,b+=n*F,w+=n*$,x+=n*H,_+=n*V,k+=n*q,S+=n*K,E+=n*W,A+=n*G,P+=n*Z,O+=n*Y,T+=n*X,n=t[10],m+=n*N,g+=n*D,v+=n*z,y+=n*B,b+=n*U,w+=n*F,x+=n*$,_+=n*H,k+=n*V,S+=n*q,E+=n*K,A+=n*W,P+=n*G,O+=n*Z,T+=n*Y,j+=n*X,n=t[11],g+=n*N,v+=n*D,y+=n*z,b+=n*B,w+=n*U,x+=n*F,_+=n*$,k+=n*H,S+=n*V,E+=n*q,A+=n*K,P+=n*W,O+=n*G,T+=n*Z,j+=n*Y,C+=n*X,n=t[12],v+=n*N,y+=n*D,b+=n*z,w+=n*B,x+=n*U,_+=n*F,k+=n*$,S+=n*H,E+=n*V,A+=n*q,P+=n*K,O+=n*W,T+=n*G,j+=n*Z,C+=n*Y,R+=n*X,n=t[13],y+=n*N,b+=n*D,w+=n*z,x+=n*B,_+=n*U,k+=n*F,S+=n*$,E+=n*H,A+=n*V,P+=n*q,O+=n*K,T+=n*W,j+=n*G,C+=n*Z,R+=n*Y,I+=n*X,n=t[14],b+=n*N,w+=n*D,x+=n*z,_+=n*B,k+=n*U,S+=n*F,E+=n*$,A+=n*H,P+=n*V,O+=n*q,T+=n*K,j+=n*W,C+=n*G,R+=n*Z,I+=n*Y,M+=n*X,n=t[15],w+=n*N,x+=n*D,_+=n*z,k+=n*B,S+=n*U,E+=n*F,A+=n*$,P+=n*H,O+=n*V,T+=n*q,j+=n*K,C+=n*W,R+=n*G,I+=n*Z,M+=n*Y,L+=n*X,o+=38*x,a+=38*_,s+=38*k,c+=38*S,l+=38*E,u+=38*A,d+=38*P,h+=38*O,f+=38*T,p+=38*j,m+=38*C,g+=38*R,v+=38*I,y+=38*M,b+=38*L,i=1,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=b+i+65535,i=Math.floor(n/65536),b=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,o+=i-1+37*(i-1),i=1,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=b+i+65535,i=Math.floor(n/65536),b=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,o+=i-1+37*(i-1),e[0]=o,e[1]=a,e[2]=s,e[3]=c,e[4]=l,e[5]=u,e[6]=d,e[7]=h,e[8]=f,e[9]=p,e[10]=m,e[11]=g,e[12]=v,e[13]=y,e[14]=b,e[15]=w}function S(e,t){k(e,t,t)}function E(e,t){const r=a();let n;for(n=0;n<16;n++)r[n]=t[n];for(n=253;n>=0;n--)S(r,r),2!==n&&4!==n&&k(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}function A(e,t){const r=a(),n=a(),i=a(),o=a(),s=a(),c=a(),l=a(),d=a(),h=a();_(r,e[1],e[0]),_(h,t[1],t[0]),k(r,r,h),x(n,e[0],e[1]),x(h,t[0],t[1]),k(n,n,h),k(i,e[3],t[3]),k(i,i,u),k(o,e[2],t[2]),x(o,o,o),_(s,n,r),_(c,o,i),x(l,o,i),x(d,n,r),k(e[0],s,c),k(e[1],d,l),k(e[2],l,c),k(e[3],s,d)}function P(e,t,r){for(let n=0;n<4;n++)g(e[n],t[n],r)}function O(e,t){const r=a(),n=a(),i=a();E(i,t[2]),k(r,t[0],i),k(n,t[1],i),v(e,n),e[31]^=w(r)<<7}function T(e,t,r){p(e[0],s),p(e[1],c),p(e[2],c),p(e[3],s);for(let n=255;n>=0;--n){const i=r[n/8|0]>>(7&n)&1;P(e,t,i),A(t,e),A(e,e),P(e,t,i)}}function j(e,t){const r=[a(),a(),a(),a()];p(r[0],d),p(r[1],h),p(r[2],c),k(r[3],d,h),T(e,r,t)}function C(e){if(e.length!==t.TP)throw new Error(`ed25519: seed must be ${t.TP} bytes`);const r=(0,i.hash)(e);r[0]&=248,r[31]&=127,r[31]|=64;const n=new Uint8Array(32),o=[a(),a(),a(),a()];j(o,r),O(n,o);const s=new Uint8Array(64);return s.set(e),s.set(n,32),{publicKey:n,secretKey:s}}t.K=C;const R=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function I(e,t){let r,n,i,o;for(n=63;n>=32;--n){for(r=0,i=n-32,o=n-12;i>4)*R[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=r*R[i];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function M(e){const t=new Float64Array(64);for(let r=0;r<64;r++)t[r]=e[r];for(let r=0;r<64;r++)e[r]=0;I(e,t)}function L(e,t){const r=a(),n=a(),i=a(),o=a(),u=a(),d=a(),h=a();return p(e[2],c),function(e,t){for(let r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}(e[1],t),S(i,e[1]),k(o,i,l),_(i,i,e[2]),x(o,e[2],o),S(u,o),S(d,u),k(h,d,u),k(r,h,i),k(r,r,o),function(e,t){const r=a();let n;for(n=0;n<16;n++)r[n]=t[n];for(n=250;n>=0;n--)S(r,r),1!==n&&k(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}(r,r),k(r,r,i),k(r,r,o),k(r,r,o),k(e[0],r,o),S(n,e[0]),k(n,n,o),b(n,i)&&k(e[0],e[0],f),S(n,e[0]),k(n,n,o),b(n,i)?-1:(w(e[0])===t[31]>>7&&_(e[0],s,e[0]),k(e[3],e[0],e[1]),0)}t._S=function(e,t){const r=new Float64Array(64),n=[a(),a(),a(),a()],o=(0,i.hash)(e.subarray(0,32));o[0]&=248,o[31]&=127,o[31]|=64;const s=new Uint8Array(64);s.set(o.subarray(32),32);const c=new i.SHA512;c.update(s.subarray(32)),c.update(t);const l=c.digest();c.clean(),M(l),j(n,l),O(s,n),c.reset(),c.update(s.subarray(0,32)),c.update(e.subarray(32)),c.update(t);const u=c.digest();M(u);for(let i=0;i<32;i++)r[i]=l[i];for(let i=0;i<32;i++)for(let e=0;e<32;e++)r[i+e]+=u[i]*o[e];return I(s.subarray(32),r),s},t.J$=function(e){let t=[a(),a(),a(),a()];if(L(t,e))throw new Error("Ed25519: invalid public key");let r=a(),n=a(),i=t[1];x(r,c,i),_(n,c,i),E(n,n),k(r,r,n);let o=new Uint8Array(32);return v(o,r),o},t.a_=function(e){const t=(0,i.hash)(e.subarray(0,32));t[0]&=248,t[31]&=127,t[31]|=64;const r=new Uint8Array(t.subarray(0,32));return(0,o.wipe)(t),r}},6708:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSerializableHash=function(e){return"undefined"!==typeof e.saveState&&"undefined"!==typeof e.restoreState&&"undefined"!==typeof e.cleanSavedState}},1514:(e,t,r)=>{"use strict";var n=r(6708),i=r(5810),o=r(4250),a=function(){function e(e,t){this._finished=!1,this._inner=new e,this._outer=new e,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var r=new Uint8Array(this.blockSize);t.length>this.blockSize?this._inner.update(t).finish(r).clean():r.set(t);for(var i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mul=Math.imul||function(e,t){var r=65535&e,n=65535&t;return r*n+((e>>>16&65535)*n+r*(t>>>16&65535)<<16>>>0)|0},t.add=function(e,t){return e+t|0},t.sub=function(e,t){return e-t|0},t.rotl=function(e,t){return e<>>32-t},t.rotr=function(e,t){return e<<32-t|e>>>t},t.isInteger=Number.isInteger||function(e){return"number"===typeof e&&isFinite(e)&&Math.floor(e)===e},t.MAX_SAFE_INTEGER=9007199254740991,t.isSafeInteger=function(e){return t.isInteger(e)&&e>=-t.MAX_SAFE_INTEGER&&e<=t.MAX_SAFE_INTEGER}},5937:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.openBox=t.box=t.precomputeSharedKey=t.generateKeyPair=void 0;const n=r(1204),i=r(2436),o=r(3141),a=r(4250);var s=r(1204);Object.defineProperty(t,"generateKeyPair",{enumerable:!0,get:function(){return s.generateKeyPair}});const c=new Uint8Array(16);function l(e,t){const r=(0,n.scalarMult)(t,e);return(0,i.hsalsa)(r,c,r),r}t.precomputeSharedKey=l,t.box=function(e,t,r,n){const i=l(e,t),s=(0,o.secretBox)(i,r,n);return(0,a.wipe)(i),s},t.openBox=function(e,t,r,n){const i=l(e,t),s=(0,o.openSecretBox)(i,r,n);return(0,a.wipe)(i),s}},5784:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(5937),t),i(r(3141),t)},3141:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.generateKey=t.openSecretBox=t.secretBox=void 0;const n=r(2436),i=r(1302),o=r(4250),a=r(4706);t.secretBox=function(e,t,r){if(24!==t.length)throw new Error("secretBox nonce must be 24 bytes");const a=new Uint8Array(64),s=new Uint8Array(32);s.set(t),(0,n.stream)(e,s,a,8);const c=new Uint8Array(16+r.length);for(let n=0;n<32&&n32&&(0,n.streamXOR)(e,s,r.subarray(32),c.subarray(48),8);const l=(0,i.oneTimeAuth)(a.subarray(0,32),c.subarray(16));for(let n=0;n32&&(0,n.streamXOR)(e,s,l.subarray(32),u.subarray(32),8),(0,o.wipe)(c),(0,o.wipe)(a),(0,o.wipe)(s),u},t.generateKey=function(e){return(0,a.randomBytes)(32,e)}},1302:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(5810),i=r(4250);t.DIGEST_LENGTH=16;var o=function(){function e(e){this.digestLength=t.DIGEST_LENGTH,this._buffer=new Uint8Array(16),this._r=new Uint16Array(10),this._h=new Uint16Array(10),this._pad=new Uint16Array(8),this._leftover=0,this._fin=0,this._finished=!1;var r=e[0]|e[1]<<8;this._r[0]=8191&r;var n=e[2]|e[3]<<8;this._r[1]=8191&(r>>>13|n<<3);var i=e[4]|e[5]<<8;this._r[2]=7939&(n>>>10|i<<6);var o=e[6]|e[7]<<8;this._r[3]=8191&(i>>>7|o<<9);var a=e[8]|e[9]<<8;this._r[4]=255&(o>>>4|a<<12),this._r[5]=a>>>1&8190;var s=e[10]|e[11]<<8;this._r[6]=8191&(a>>>14|s<<2);var c=e[12]|e[13]<<8;this._r[7]=8065&(s>>>11|c<<5);var l=e[14]|e[15]<<8;this._r[8]=8191&(c>>>8|l<<8),this._r[9]=l>>>5&127,this._pad[0]=e[16]|e[17]<<8,this._pad[1]=e[18]|e[19]<<8,this._pad[2]=e[20]|e[21]<<8,this._pad[3]=e[22]|e[23]<<8,this._pad[4]=e[24]|e[25]<<8,this._pad[5]=e[26]|e[27]<<8,this._pad[6]=e[28]|e[29]<<8,this._pad[7]=e[30]|e[31]<<8}return e.prototype._blocks=function(e,t,r){for(var n=this._fin?0:2048,i=this._h[0],o=this._h[1],a=this._h[2],s=this._h[3],c=this._h[4],l=this._h[5],u=this._h[6],d=this._h[7],h=this._h[8],f=this._h[9],p=this._r[0],m=this._r[1],g=this._r[2],v=this._r[3],y=this._r[4],b=this._r[5],w=this._r[6],x=this._r[7],_=this._r[8],k=this._r[9];r>=16;){var S=e[t+0]|e[t+1]<<8;i+=8191&S;var E=e[t+2]|e[t+3]<<8;o+=8191&(S>>>13|E<<3);var A=e[t+4]|e[t+5]<<8;a+=8191&(E>>>10|A<<6);var P=e[t+6]|e[t+7]<<8;s+=8191&(A>>>7|P<<9);var O=e[t+8]|e[t+9]<<8;c+=8191&(P>>>4|O<<12),l+=O>>>1&8191;var T=e[t+10]|e[t+11]<<8;u+=8191&(O>>>14|T<<2);var j=e[t+12]|e[t+13]<<8;d+=8191&(T>>>11|j<<5);var C=e[t+14]|e[t+15]<<8,R=0,I=R;I+=i*p,I+=o*(5*k),I+=a*(5*_),I+=s*(5*x),R=(I+=c*(5*w))>>>13,I&=8191,I+=l*(5*b),I+=u*(5*y),I+=d*(5*v),I+=(h+=8191&(j>>>8|C<<8))*(5*g);var M=R+=(I+=(f+=C>>>5|n)*(5*m))>>>13;M+=i*m,M+=o*p,M+=a*(5*k),M+=s*(5*_),R=(M+=c*(5*x))>>>13,M&=8191,M+=l*(5*w),M+=u*(5*b),M+=d*(5*y),M+=h*(5*v),R+=(M+=f*(5*g))>>>13,M&=8191;var L=R;L+=i*g,L+=o*m,L+=a*p,L+=s*(5*k),R=(L+=c*(5*_))>>>13,L&=8191,L+=l*(5*x),L+=u*(5*w),L+=d*(5*b),L+=h*(5*y);var N=R+=(L+=f*(5*v))>>>13;N+=i*v,N+=o*g,N+=a*m,N+=s*p,R=(N+=c*(5*k))>>>13,N&=8191,N+=l*(5*_),N+=u*(5*x),N+=d*(5*w),N+=h*(5*b);var D=R+=(N+=f*(5*y))>>>13;D+=i*y,D+=o*v,D+=a*g,D+=s*m,R=(D+=c*p)>>>13,D&=8191,D+=l*(5*k),D+=u*(5*_),D+=d*(5*x),D+=h*(5*w);var z=R+=(D+=f*(5*b))>>>13;z+=i*b,z+=o*y,z+=a*v,z+=s*g,R=(z+=c*m)>>>13,z&=8191,z+=l*p,z+=u*(5*k),z+=d*(5*_),z+=h*(5*x);var B=R+=(z+=f*(5*w))>>>13;B+=i*w,B+=o*b,B+=a*y,B+=s*v,R=(B+=c*g)>>>13,B&=8191,B+=l*m,B+=u*p,B+=d*(5*k),B+=h*(5*_);var U=R+=(B+=f*(5*x))>>>13;U+=i*x,U+=o*w,U+=a*b,U+=s*y,R=(U+=c*v)>>>13,U&=8191,U+=l*g,U+=u*m,U+=d*p,U+=h*(5*k);var F=R+=(U+=f*(5*_))>>>13;F+=i*_,F+=o*x,F+=a*w,F+=s*b,R=(F+=c*y)>>>13,F&=8191,F+=l*v,F+=u*g,F+=d*m,F+=h*p;var $=R+=(F+=f*(5*k))>>>13;$+=i*k,$+=o*_,$+=a*x,$+=s*w,R=($+=c*b)>>>13,$&=8191,$+=l*y,$+=u*v,$+=d*g,$+=h*m,i=I=8191&(R=(R=((R+=($+=f*p)>>>13)<<2)+R|0)+(I&=8191)|0),o=M+=R>>>=13,a=L&=8191,s=N&=8191,c=D&=8191,l=z&=8191,u=B&=8191,d=U&=8191,h=F&=8191,f=$&=8191,t+=16,r-=16}this._h[0]=i,this._h[1]=o,this._h[2]=a,this._h[3]=s,this._h[4]=c,this._h[5]=l,this._h[6]=u,this._h[7]=d,this._h[8]=h,this._h[9]=f},e.prototype.finish=function(e,t){void 0===t&&(t=0);var r,n,i,o,a=new Uint16Array(10);if(this._leftover){for(o=this._leftover,this._buffer[o++]=1;o<16;o++)this._buffer[o]=0;this._fin=1,this._blocks(this._buffer,0,16)}for(r=this._h[1]>>>13,this._h[1]&=8191,o=2;o<10;o++)this._h[o]+=r,r=this._h[o]>>>13,this._h[o]&=8191;for(this._h[0]+=5*r,r=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=r,r=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=r,a[0]=this._h[0]+5,r=a[0]>>>13,a[0]&=8191,o=1;o<10;o++)a[o]=this._h[o]+r,r=a[o]>>>13,a[o]&=8191;for(a[9]-=8192,n=(1^r)-1,o=0;o<10;o++)a[o]&=n;for(n=~n,o=0;o<10;o++)this._h[o]=this._h[o]&n|a[o];for(this._h[0]=65535&(this._h[0]|this._h[1]<<13),this._h[1]=65535&(this._h[1]>>>3|this._h[2]<<10),this._h[2]=65535&(this._h[2]>>>6|this._h[3]<<7),this._h[3]=65535&(this._h[3]>>>9|this._h[4]<<4),this._h[4]=65535&(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14),this._h[5]=65535&(this._h[6]>>>2|this._h[7]<<11),this._h[6]=65535&(this._h[7]>>>5|this._h[8]<<8),this._h[7]=65535&(this._h[8]>>>8|this._h[9]<<5),i=this._h[0]+this._pad[0],this._h[0]=65535&i,o=1;o<8;o++)i=(this._h[o]+this._pad[o]|0)+(i>>>16)|0,this._h[o]=65535&i;return e[t+0]=this._h[0]>>>0,e[t+1]=this._h[0]>>>8,e[t+2]=this._h[1]>>>0,e[t+3]=this._h[1]>>>8,e[t+4]=this._h[2]>>>0,e[t+5]=this._h[2]>>>8,e[t+6]=this._h[3]>>>0,e[t+7]=this._h[3]>>>8,e[t+8]=this._h[4]>>>0,e[t+9]=this._h[4]>>>8,e[t+10]=this._h[5]>>>0,e[t+11]=this._h[5]>>>8,e[t+12]=this._h[6]>>>0,e[t+13]=this._h[6]>>>8,e[t+14]=this._h[7]>>>0,e[t+15]=this._h[7]>>>8,this._finished=!0,this},e.prototype.update=function(e){var t,r=0,n=e.length;if(this._leftover){(t=16-this._leftover)>n&&(t=n);for(var i=0;i=16&&(t=n-n%16,this._blocks(e,r,t),r+=t,n-=t),n){for(i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomStringForEntropy=t.randomString=t.randomUint32=t.randomBytes=t.defaultRandomSource=void 0;const n=r(7806),i=r(2730),o=r(4250);function a(e,r=t.defaultRandomSource){return r.randomBytes(e)}t.defaultRandomSource=new n.SystemRandomSource,t.randomBytes=a,t.randomUint32=function(e=t.defaultRandomSource){const r=a(4,e),n=(0,i.readUint32LE)(r);return(0,o.wipe)(r),n};const s="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function c(e,r=s,n=t.defaultRandomSource){if(r.length<2)throw new Error("randomString charset is too short");if(r.length>256)throw new Error("randomString charset is too long");let i="";const c=r.length,l=256-256%c;for(;e>0;){const t=a(Math.ceil(256*e/l),n);for(let n=0;n0;n++){const o=t[n];o{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserRandomSource=void 0;t.BrowserRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;const e="undefined"!==typeof self?self.crypto||self.msCrypto:null;e&&void 0!==e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");const t=new Uint8Array(e);for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeRandomSource=void 0;const n=r(4250);t.NodeRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;{const e=r(9432);e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");let t=this._crypto.randomBytes(e);if(t.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");const r=new Uint8Array(e);for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SystemRandomSource=void 0;const n=r(5147),i=r(7639);t.SystemRandomSource=class{constructor(){return this.isAvailable=!1,this.name="",this._source=new n.BrowserRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Browser")):(this._source=new i.NodeRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Node")):void 0)}randomBytes(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)}}},5770:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2730),i=r(4250),o=20;function a(e,t,r){for(var i,a=1634760805,s=r[3]<<24|r[2]<<16|r[1]<<8|r[0],c=r[7]<<24|r[6]<<16|r[5]<<8|r[4],l=r[11]<<24|r[10]<<16|r[9]<<8|r[8],u=r[15]<<24|r[14]<<16|r[13]<<8|r[12],d=857760878,h=t[3]<<24|t[2]<<16|t[1]<<8|t[0],f=t[7]<<24|t[6]<<16|t[5]<<8|t[4],p=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],g=2036477234,v=r[19]<<24|r[18]<<16|r[17]<<8|r[16],y=r[23]<<24|r[22]<<16|r[21]<<8|r[20],b=r[27]<<24|r[26]<<16|r[25]<<8|r[24],w=r[31]<<24|r[30]<<16|r[29]<<8|r[28],x=1797285236,_=a,k=s,S=c,E=l,A=u,P=d,O=h,T=f,j=p,C=m,R=g,I=v,M=y,L=b,N=w,D=x,z=0;z>>25)+_|0)<<9|i>>>23)+A|0)<<13|i>>>19)+j|0)<<18|i>>>14,P^=(i=(k^=(i=(L^=(i=(C^=(i=P+k|0)<<7|i>>>25)+P|0)<<9|i>>>23)+C|0)<<13|i>>>19)+L|0)<<18|i>>>14,R^=(i=(O^=(i=(S^=(i=(N^=(i=R+O|0)<<7|i>>>25)+R|0)<<9|i>>>23)+N|0)<<13|i>>>19)+S|0)<<18|i>>>14,D^=(i=(I^=(i=(T^=(i=(E^=(i=D+I|0)<<7|i>>>25)+D|0)<<9|i>>>23)+E|0)<<13|i>>>19)+T|0)<<18|i>>>14,_^=(i=(E^=(i=(S^=(i=(k^=(i=_+E|0)<<7|i>>>25)+_|0)<<9|i>>>23)+k|0)<<13|i>>>19)+S|0)<<18|i>>>14,P^=(i=(A^=(i=(T^=(i=(O^=(i=P+A|0)<<7|i>>>25)+P|0)<<9|i>>>23)+O|0)<<13|i>>>19)+T|0)<<18|i>>>14,R^=(i=(C^=(i=(j^=(i=(I^=(i=R+C|0)<<7|i>>>25)+R|0)<<9|i>>>23)+I|0)<<13|i>>>19)+j|0)<<18|i>>>14,D^=(i=(N^=(i=(L^=(i=(M^=(i=D+N|0)<<7|i>>>25)+D|0)<<9|i>>>23)+M|0)<<13|i>>>19)+L|0)<<18|i>>>14;n.writeUint32LE(_+a|0,e,0),n.writeUint32LE(k+s|0,e,4),n.writeUint32LE(S+c|0,e,8),n.writeUint32LE(E+l|0,e,12),n.writeUint32LE(A+u|0,e,16),n.writeUint32LE(P+d|0,e,20),n.writeUint32LE(O+h|0,e,24),n.writeUint32LE(T+f|0,e,28),n.writeUint32LE(j+p|0,e,32),n.writeUint32LE(C+m|0,e,36),n.writeUint32LE(R+g|0,e,40),n.writeUint32LE(I+v|0,e,44),n.writeUint32LE(M+y|0,e,48),n.writeUint32LE(L+b|0,e,52),n.writeUint32LE(N+w|0,e,56),n.writeUint32LE(D+x|0,e,60)}function s(e,t,r,n,o){if(void 0===o&&(o=0),32!==e.length)throw new Error("Salsa20: key size must be 32 bytes");if(n.length>>=8,t++;if(n>0)throw new Error("Salsa20: counter overflow")}t.streamXOR=s,t.stream=function(e,t,r,n){return void 0===n&&(n=0),i.wipe(r),s(e,t,r,r,n)}},2564:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2730),i=r(4250);t.DIGEST_LENGTH=64,t.BLOCK_SIZE=128;var o=function(){function e(){this.digestLength=t.DIGEST_LENGTH,this.blockSize=t.BLOCK_SIZE,this._stateHi=new Int32Array(8),this._stateLo=new Int32Array(8),this._tempHi=new Int32Array(16),this._tempLo=new Int32Array(16),this._buffer=new Uint8Array(256),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return e.prototype._initState=function(){this._stateHi[0]=1779033703,this._stateHi[1]=3144134277,this._stateHi[2]=1013904242,this._stateHi[3]=2773480762,this._stateHi[4]=1359893119,this._stateHi[5]=2600822924,this._stateHi[6]=528734635,this._stateHi[7]=1541459225,this._stateLo[0]=4089235720,this._stateLo[1]=2227873595,this._stateLo[2]=4271175723,this._stateLo[3]=1595750129,this._stateLo[4]=2917565137,this._stateLo[5]=725511199,this._stateLo[6]=4215389547,this._stateLo[7]=327033209},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._tempHi),i.wipe(this._tempLo),this.reset()},e.prototype.update=function(e,r){if(void 0===r&&(r=e.length),this._finished)throw new Error("SHA512: can't update because hash was finished.");var n=0;if(this._bytesHashed+=r,this._bufferLength>0){for(;this._bufferLength0;)this._buffer[this._bufferLength++]=e[n++],r--;this._bufferLength===this.blockSize&&(s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,this.blockSize),this._bufferLength=0)}for(r>=this.blockSize&&(n=s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,e,n,r),r%=this.blockSize);r>0;)this._buffer[this._bufferLength++]=e[n++],r--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,r=this._bufferLength,i=t/536870912|0,o=t<<3,a=t%128<112?128:256;this._buffer[r]=128;for(var c=r+1;c0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},e.prototype.restoreState=function(e){return this._stateHi.set(e.stateHi),this._stateLo.set(e.stateLo),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.stateHi),i.wipe(e.stateLo),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.SHA512=o;var a=new Int32Array([1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591]);function s(e,t,r,i,o,s,c){for(var l,u,d,h,f,p,m,g,v=r[0],y=r[1],b=r[2],w=r[3],x=r[4],_=r[5],k=r[6],S=r[7],E=i[0],A=i[1],P=i[2],O=i[3],T=i[4],j=i[5],C=i[6],R=i[7];c>=128;){for(var I=0;I<16;I++){var M=8*I+s;e[I]=n.readUint32BE(o,M),t[I]=n.readUint32BE(o,M+4)}for(I=0;I<80;I++){var L,N,D=v,z=y,B=b,U=w,F=x,$=_,H=k,V=E,q=A,K=P,W=O,G=T,Z=j,Y=C;if(f=65535&(u=R),p=u>>>16,m=65535&(l=S),g=l>>>16,f+=65535&(u=(T>>>14|x<<18)^(T>>>18|x<<14)^(x>>>9|T<<23)),p+=u>>>16,m+=65535&(l=(x>>>14|T<<18)^(x>>>18|T<<14)^(T>>>9|x<<23)),g+=l>>>16,f+=65535&(u=T&j^~T&C),p+=u>>>16,m+=65535&(l=x&_^~x&k),g+=l>>>16,l=a[2*I],f+=65535&(u=a[2*I+1]),p+=u>>>16,m+=65535&l,g+=l>>>16,l=e[I%16],p+=(u=t[I%16])>>>16,m+=65535&l,g+=l>>>16,m+=(p+=(f+=65535&u)>>>16)>>>16,f=65535&(u=h=65535&f|p<<16),p=u>>>16,m=65535&(l=d=65535&m|(g+=m>>>16)<<16),g=l>>>16,f+=65535&(u=(E>>>28|v<<4)^(v>>>2|E<<30)^(v>>>7|E<<25)),p+=u>>>16,m+=65535&(l=(v>>>28|E<<4)^(E>>>2|v<<30)^(E>>>7|v<<25)),g+=l>>>16,p+=(u=E&A^E&P^A&P)>>>16,m+=65535&(l=v&y^v&b^y&b),g+=l>>>16,L=65535&(m+=(p+=(f+=65535&u)>>>16)>>>16)|(g+=m>>>16)<<16,N=65535&f|p<<16,f=65535&(u=W),p=u>>>16,m=65535&(l=U),g=l>>>16,p+=(u=h)>>>16,m+=65535&(l=d),g+=l>>>16,y=D,b=z,w=B,x=U=65535&(m+=(p+=(f+=65535&u)>>>16)>>>16)|(g+=m>>>16)<<16,_=F,k=$,S=H,v=L,A=V,P=q,O=K,T=W=65535&f|p<<16,j=G,C=Z,R=Y,E=N,I%16===15)for(M=0;M<16;M++)l=e[M],f=65535&(u=t[M]),p=u>>>16,m=65535&l,g=l>>>16,l=e[(M+9)%16],f+=65535&(u=t[(M+9)%16]),p+=u>>>16,m+=65535&l,g+=l>>>16,d=e[(M+1)%16],f+=65535&(u=((h=t[(M+1)%16])>>>1|d<<31)^(h>>>8|d<<24)^(h>>>7|d<<25)),p+=u>>>16,m+=65535&(l=(d>>>1|h<<31)^(d>>>8|h<<24)^d>>>7),g+=l>>>16,d=e[(M+14)%16],p+=(u=((h=t[(M+14)%16])>>>19|d<<13)^(d>>>29|h<<3)^(h>>>6|d<<26))>>>16,m+=65535&(l=(d>>>19|h<<13)^(h>>>29|d<<3)^d>>>6),g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,e[M]=65535&m|g<<16,t[M]=65535&f|p<<16}f=65535&(u=E),p=u>>>16,m=65535&(l=v),g=l>>>16,l=r[0],p+=(u=i[0])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[0]=v=65535&m|g<<16,i[0]=E=65535&f|p<<16,f=65535&(u=A),p=u>>>16,m=65535&(l=y),g=l>>>16,l=r[1],p+=(u=i[1])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[1]=y=65535&m|g<<16,i[1]=A=65535&f|p<<16,f=65535&(u=P),p=u>>>16,m=65535&(l=b),g=l>>>16,l=r[2],p+=(u=i[2])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[2]=b=65535&m|g<<16,i[2]=P=65535&f|p<<16,f=65535&(u=O),p=u>>>16,m=65535&(l=w),g=l>>>16,l=r[3],p+=(u=i[3])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[3]=w=65535&m|g<<16,i[3]=O=65535&f|p<<16,f=65535&(u=T),p=u>>>16,m=65535&(l=x),g=l>>>16,l=r[4],p+=(u=i[4])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[4]=x=65535&m|g<<16,i[4]=T=65535&f|p<<16,f=65535&(u=j),p=u>>>16,m=65535&(l=_),g=l>>>16,l=r[5],p+=(u=i[5])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[5]=_=65535&m|g<<16,i[5]=j=65535&f|p<<16,f=65535&(u=C),p=u>>>16,m=65535&(l=k),g=l>>>16,l=r[6],p+=(u=i[6])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[6]=k=65535&m|g<<16,i[6]=C=65535&f|p<<16,f=65535&(u=R),p=u>>>16,m=65535&(l=S),g=l>>>16,l=r[7],p+=(u=i[7])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[7]=S=65535&m|g<<16,i[7]=R=65535&f|p<<16,s+=128,c-=128}return s}t.hash=function(e){var t=new o;t.update(e);var r=t.digest();return t.clean(),r}},6058:(e,t)=>{"use strict";var r="utf8: invalid string",n="utf8: invalid source encoding";function i(e){for(var t=0,n=0;n=e.length-1)throw new Error(r);n++,t+=4}}return t}t.lF=function(e){for(var t=new Uint8Array(i(e)),r=0,n=0;n>6,t[r++]=128|63&o):o<55296?(t[r++]=224|o>>12,t[r++]=128|o>>6&63,t[r++]=128|63&o):(n++,o=(1023&o)<<10,o|=1023&e.charCodeAt(n),o+=65536,t[r++]=240|o>>18,t[r++]=128|o>>12&63,t[r++]=128|o>>6&63,t[r++]=128|63&o)}return t}},4250:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wipe=function(e){for(var t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.X25519Session=t.SECRET_SEED_LENGTH=t.SAVED_STATE_LENGTH=t.ACCEPT_MESSAGE_LENGTH=t.OFFER_MESSAGE_LENGTH=void 0;const n=r(4706),i=r(4250),o=r(1204),a=r(6458);t.OFFER_MESSAGE_LENGTH=o.PUBLIC_KEY_LENGTH,t.ACCEPT_MESSAGE_LENGTH=o.PUBLIC_KEY_LENGTH,t.SAVED_STATE_LENGTH=o.SECRET_KEY_LENGTH,t.SECRET_SEED_LENGTH=o.SECRET_KEY_LENGTH;t.X25519Session=class{constructor(e,r){this.offerMessageLength=t.OFFER_MESSAGE_LENGTH,this.acceptMessageLength=t.ACCEPT_MESSAGE_LENGTH,this.sharedKeyLength=o.SHARED_KEY_LENGTH,this.savedStateLength=t.SAVED_STATE_LENGTH,this._seed=e||(0,n.randomBytes)(o.SECRET_KEY_LENGTH,r)}saveState(){return new Uint8Array(this._seed)}restoreState(e){return this._seed=new Uint8Array(e),this}clean(){this._seed&&(0,i.wipe)(this._seed),this._keyPair&&((0,i.wipe)(this._keyPair.secretKey),(0,i.wipe)(this._keyPair.publicKey)),this._sharedKey&&(0,i.wipe)(this._sharedKey),this._sessionKeys&&((0,i.wipe)(this._sessionKeys.receive),(0,i.wipe)(this._sessionKeys.send))}offer(){return this._keyPair=(0,o.generateKeyPairFromSeed)(this._seed),new Uint8Array(this._keyPair.publicKey)}accept(e){if(this._keyPair)throw new Error("X25519Session: accept shouldn't be called by offering party");if(e.length!==this.offerMessageLength)throw new Error("X25519Session: incorrect offer message length");if(this._sharedKey)throw new Error("X25519Session: accept was already called");const t=(0,o.generateKeyPairFromSeed)(this._seed);return this._sharedKey=(0,o.sharedKey)(t.secretKey,e),this._sessionKeys=(0,a.clientSessionKeysFromSharedKey)(this._sharedKey,t.publicKey,e),(0,i.wipe)(t.secretKey),t.publicKey}finish(e){if(e.length!==this.acceptMessageLength)throw new Error("X25519Session: incorrect accept message length");if(!this._keyPair)throw new Error("X25519Session: no offer state");if(this._sharedKey)throw new Error("X25519Session: finish was already called");return this._sharedKey=(0,o.sharedKey)(this._keyPair.secretKey,e),this._sessionKeys=(0,a.serverSessionKeysFromSharedKey)(this._sharedKey,this._keyPair.publicKey,e),this}getSharedKey(){if(!this._sharedKey)throw new Error("X25519Session: no shared key established");return new Uint8Array(this._sharedKey)}getSessionKeys(){if(!this._sessionKeys)throw new Error("X25519Session: no shared key established");return{receive:new Uint8Array(this._sessionKeys.receive),send:new Uint8Array(this._sessionKeys.send)}}}},6458:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.clientSessionKeys=t.serverSessionKeys=t.clientSessionKeysFromSharedKey=t.serverSessionKeysFromSharedKey=t.X25519Session=void 0;const n=r(1442),i=r(1204);var o=r(2032);Object.defineProperty(t,"X25519Session",{enumerable:!0,get:function(){return o.X25519Session}});const a=32;function s(e,t,r,i=n.BLAKE2b){const o=new i;if(o.digestLength!==2*a)throw new Error("X25519: incorrect digest length");const s=o.update(e).update(r).update(t).digest();return{send:s.subarray(0,a),receive:s.subarray(a)}}function c(e,t,r,i=n.BLAKE2b){const o=new i;if(o.digestLength!==2*a)throw new Error("X25519: incorrect digest length");const s=o.update(e).update(t).update(r).digest();return{receive:s.subarray(0,a),send:s.subarray(a)}}t.serverSessionKeysFromSharedKey=s,t.clientSessionKeysFromSharedKey=c,t.serverSessionKeys=function(e,t,r=n.BLAKE2b){return s((0,i.sharedKey)(e.secretKey,t),e.publicKey,t,r)},t.clientSessionKeys=function(e,t,r=n.BLAKE2b){return c((0,i.sharedKey)(e.secretKey,t),e.publicKey,t,r)}},1204:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sharedKey=t.generateKeyPair=t.generateKeyPairFromSeed=t.scalarMultBase=t.scalarMult=t.SHARED_KEY_LENGTH=t.SECRET_KEY_LENGTH=t.PUBLIC_KEY_LENGTH=void 0;const n=r(4706),i=r(4250);function o(e){const t=new Float64Array(16);if(e)for(let r=0;r=0;--o){const e=r[o>>>3]>>>(7&o)&1;l(i,a,e),l(p,m,e),u(g,i,p),d(i,i,p),u(p,a,m),d(a,a,m),f(m,g),f(v,i),h(i,p,i),h(p,a,g),u(g,i,p),d(i,i,p),f(a,i),d(p,m,v),h(i,p,s),u(i,i,m),h(p,p,i),h(i,m,v),h(m,a,n),f(a,g),l(i,a,e),l(p,m,e)}for(let o=0;o<16;o++)n[o+16]=i[o],n[o+32]=p[o],n[o+48]=a[o],n[o+64]=m[o];const y=n.subarray(32),b=n.subarray(16);!function(e,t){const r=o();for(let n=0;n<16;n++)r[n]=t[n];for(let n=253;n>=0;n--)f(r,r),2!==n&&4!==n&&h(r,r,t);for(let n=0;n<16;n++)e[n]=r[n]}(y,y),h(b,b,y);const w=new Uint8Array(32);return function(e,t){const r=o(),n=o();for(let i=0;i<16;i++)n[i]=t[i];c(n),c(n),c(n);for(let i=0;i<2;i++){r[0]=n[0]-65517;for(let t=1;t<15;t++)r[t]=n[t]-65535-(r[t-1]>>16&1),r[t-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);const e=r[15]>>16&1;r[14]&=65535,l(n,r,1-e)}for(let i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}(w,b),w}function m(e){return p(e,a)}function g(e){if(e.length!==t.SECRET_KEY_LENGTH)throw new Error(`x25519: seed must be ${t.SECRET_KEY_LENGTH} bytes`);const r=new Uint8Array(e);return{publicKey:m(r),secretKey:r}}t.scalarMult=p,t.scalarMultBase=m,t.generateKeyPairFromSeed=g,t.generateKeyPair=function(e){const t=(0,n.randomBytes)(32,e),r=g(t);return(0,i.wipe)(t),r},t.sharedKey=function(e,r,n=!1){if(e.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(r.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");const i=p(e,r);if(n){let e=0;for(let t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2730),i=r(5770),o=r(4250);function a(e,t,r,n,a){if(void 0===a&&(a=0),0===a){if(24!==t.length)throw new Error("XSalsa20 nonce must be 24 bytes")}else if(32!==t.length)throw new Error("XSalsa20 nonce with counter must be 32 bytes");var s=c(e,t.subarray(0,16),new Uint8Array(32)),l=i.streamXOR(s,t.subarray(16),r,n,a);return o.wipe(s),l}t.streamXOR=a,t.stream=function(e,t,r,n){return void 0===n&&(n=0),o.wipe(r),a(e,t,r,r,n)};var s=20;function c(e,t,r){for(var i,o=1634760805,a=e[3]<<24|e[2]<<16|e[1]<<8|e[0],c=e[7]<<24|e[6]<<16|e[5]<<8|e[4],l=e[11]<<24|e[10]<<16|e[9]<<8|e[8],u=e[15]<<24|e[14]<<16|e[13]<<8|e[12],d=857760878,h=t[3]<<24|t[2]<<16|t[1]<<8|t[0],f=t[7]<<24|t[6]<<16|t[5]<<8|t[4],p=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],g=2036477234,v=e[19]<<24|e[18]<<16|e[17]<<8|e[16],y=e[23]<<24|e[22]<<16|e[21]<<8|e[20],b=e[27]<<24|e[26]<<16|e[25]<<8|e[24],w=e[31]<<24|e[30]<<16|e[29]<<8|e[28],x=1797285236,_=0;_>>25)+o|0)<<9|i>>>23)+u|0)<<13|i>>>19)+p|0)<<18|i>>>14,d^=(i=(a^=(i=(b^=(i=(m^=(i=d+a|0)<<7|i>>>25)+d|0)<<9|i>>>23)+m|0)<<13|i>>>19)+b|0)<<18|i>>>14,g^=(i=(h^=(i=(c^=(i=(w^=(i=g+h|0)<<7|i>>>25)+g|0)<<9|i>>>23)+w|0)<<13|i>>>19)+c|0)<<18|i>>>14,x^=(i=(v^=(i=(f^=(i=(l^=(i=x+v|0)<<7|i>>>25)+x|0)<<9|i>>>23)+l|0)<<13|i>>>19)+f|0)<<18|i>>>14,o^=(i=(l^=(i=(c^=(i=(a^=(i=o+l|0)<<7|i>>>25)+o|0)<<9|i>>>23)+a|0)<<13|i>>>19)+c|0)<<18|i>>>14,d^=(i=(u^=(i=(f^=(i=(h^=(i=d+u|0)<<7|i>>>25)+d|0)<<9|i>>>23)+h|0)<<13|i>>>19)+f|0)<<18|i>>>14,g^=(i=(m^=(i=(p^=(i=(v^=(i=g+m|0)<<7|i>>>25)+g|0)<<9|i>>>23)+v|0)<<13|i>>>19)+p|0)<<18|i>>>14,x^=(i=(w^=(i=(b^=(i=(y^=(i=x+w|0)<<7|i>>>25)+x|0)<<9|i>>>23)+y|0)<<13|i>>>19)+b|0)<<18|i>>>14;return n.writeUint32LE(o,r,0),n.writeUint32LE(d,r,4),n.writeUint32LE(g,r,8),n.writeUint32LE(x,r,12),n.writeUint32LE(h,r,16),n.writeUint32LE(f,r,20),n.writeUint32LE(p,r,24),n.writeUint32LE(m,r,28),r}t.hsalsa=c},4941:e=>{"use strict";e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r>>0,l=new Uint8Array(o);e[r];){var u=t[e.charCodeAt(r)];if(255===u)return;for(var d=0,h=o-1;(0!==u||d>>0,l[h]=u%256>>>0,u=u/256>>>0;if(0!==u)throw new Error("Non-zero carry");i=d,r++}for(var f=o-i;f!==o&&0===l[f];)f++;for(var p=new Uint8Array(n+(o-f)),m=n;f!==o;)p[m++]=l[f++];return p}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var r=0,n=0,i=0,o=t.length;i!==o&&0===t[i];)i++,r++;for(var c=(o-i)*l+1>>>0,u=new Uint8Array(c);i!==o;){for(var d=t[i],h=0,f=c-1;(0!==d||h>>0,u[f]=d%a>>>0,d=d/a>>>0;if(0!==d)throw new Error("Non-zero carry");n=h,i++}for(var p=c-n;p!==c&&0===u[p];)p++;for(var m=s.repeat(r);p{const n=r(4941);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},6097:(e,t,r)=>{"use strict";var n=r(4194);e.exports=function(e){function t(t){var r=t.slice(0,-4),n=t.slice(-4),i=e(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(t){var r=Uint8Array.from(t),i=e(r),o=r.length+4,a=new Uint8Array(o);return a.set(r,0),a.set(i.subarray(0,4),r.length),n.encode(a,o)},decode:function(e){var r=t(n.decode(e));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(e){var r=n.decodeUnsafe(e);if(r)return t(r)}}}},2946:(e,t,r)=>{"use strict";var{sha256:n}=r(7049),i=r(6097);e.exports=i((function(e){return n(n(e))}))},3924:function(e,t,r){!function(e,t){"use strict";function n(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function o(e,t,r){if(o.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var a;"object"===typeof e?e.exports=o:t.BN=o,o.BN=o,o.wordSize=26;try{a="undefined"!==typeof window&&"undefined"!==typeof window.Buffer?window.Buffer:r(1448).Buffer}catch(O){}function s(e,t){var r=e.charCodeAt(t);return r>=48&&r<=57?r-48:r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:void n(!1,"Invalid character in "+e)}function c(e,t,r){var n=s(e,r);return r-1>=t&&(n|=s(e,r-1)<<4),n}function l(e,t,r,i){for(var o=0,a=0,s=Math.min(e.length,r),c=t;c=49?l-49+10:l>=17?l-17+10:l,n(l>=0&&a0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,r){if("number"===typeof e)return this._initNumber(e,t,r);if("object"===typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)a=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(i=0,o=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this._strip()},o.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=c(e,t,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(e.length-t)%2===0?t+1:t;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this._strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var o=e.length-r,a=o%n,s=Math.min(o,o-a)+r,c=0,u=r;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},"undefined"!==typeof Symbol&&"function"===typeof Symbol.for)try{o.prototype[Symbol.for("nodejs.util.inspect.custom")]=d}catch(O){o.prototype.inspect=d}else o.prototype.inspect=d;function d(){return(this.red?""}var h=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],p=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];o.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,o=0,a=0;a>>24-i&16777215,(i+=2)>=26&&(i-=26,a--),r=0!==o||a!==this.length-1?h[6-c.length]+c+r:c+r}for(0!==o&&(r=o.toString(16)+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=f[e],u=p[e];r="";var d=this.clone();for(d.negative=0;!d.isZero();){var m=d.modrn(u).toString(e);r=(d=d.idivn(u)).isZero()?m+r:h[l-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16,2)},a&&(o.prototype.toBuffer=function(e,t){return this.toArrayLike(a,e,t)}),o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)};function m(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],o=0|t.words[0],a=i*o,s=67108863&a,c=a/67108864|0;r.words[0]=s;for(var l=1;l>>26,d=67108863&c,h=Math.min(l,t.length-1),f=Math.max(0,l-e.length+1);f<=h;f++){var p=l-f|0;u+=(a=(i=0|e.words[p])*(o=0|t.words[f])+d)/67108864|0,d=67108863&a}r.words[l]=0|d,c=0|u}return 0!==c?r.words[l]=0|c:r.length--,r._strip()}o.prototype.toArrayLike=function(e,t,r){this._strip();var i=this.byteLength(),o=r||Math.max(1,i);n(i<=o,"byte array longer than desired length"),n(o>0,"Requested array length <= 0");var a=function(e,t){return e.allocUnsafe?e.allocUnsafe(t):new e(t)}(e,o);return this["_toArrayLike"+("le"===t?"LE":"BE")](a,i),a},o.prototype._toArrayLikeLE=function(e,t){for(var r=0,n=0,i=0,o=0;i>8&255),r>16&255),6===o?(r>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r=0&&(e[r--]=a>>8&255),r>=0&&(e[r--]=a>>16&255),6===o?(r>=0&&(e[r--]=a>>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r>=0)for(e[r--]=n;r>=0;)e[r--]=0},Math.clz32?o.prototype._countBits=function(e){return 32-Math.clz32(e)}:o.prototype._countBits=function(e){var t=e,r=0;return t>=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0===(8191&t)&&(r+=13,t>>>=13),0===(127&t)&&(r+=7,t>>>=7),0===(15&t)&&(r+=4,t>>>=4),0===(3&t)&&(r+=2,t>>>=2),0===(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){n("number"===typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this._strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){n("number"===typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&t;for(;0!==o&&a>26,this.words[a]=67108863&t;if(0===o&&a>>13,f=0|a[1],p=8191&f,m=f>>>13,g=0|a[2],v=8191&g,y=g>>>13,b=0|a[3],w=8191&b,x=b>>>13,_=0|a[4],k=8191&_,S=_>>>13,E=0|a[5],A=8191&E,P=E>>>13,O=0|a[6],T=8191&O,j=O>>>13,C=0|a[7],R=8191&C,I=C>>>13,M=0|a[8],L=8191&M,N=M>>>13,D=0|a[9],z=8191&D,B=D>>>13,U=0|s[0],F=8191&U,$=U>>>13,H=0|s[1],V=8191&H,q=H>>>13,K=0|s[2],W=8191&K,G=K>>>13,Z=0|s[3],Y=8191&Z,X=Z>>>13,J=0|s[4],Q=8191&J,ee=J>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],oe=8191&ie,ae=ie>>>13,se=0|s[7],ce=8191&se,le=se>>>13,ue=0|s[8],de=8191&ue,he=ue>>>13,fe=0|s[9],pe=8191&fe,me=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(l+(n=Math.imul(d,F))|0)+((8191&(i=(i=Math.imul(d,$))+Math.imul(h,F)|0))<<13)|0;l=((o=Math.imul(h,$))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,F),i=(i=Math.imul(p,$))+Math.imul(m,F)|0,o=Math.imul(m,$);var ve=(l+(n=n+Math.imul(d,V)|0)|0)+((8191&(i=(i=i+Math.imul(d,q)|0)+Math.imul(h,V)|0))<<13)|0;l=((o=o+Math.imul(h,q)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(v,F),i=(i=Math.imul(v,$))+Math.imul(y,F)|0,o=Math.imul(y,$),n=n+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,q)|0;var ye=(l+(n=n+Math.imul(d,W)|0)|0)+((8191&(i=(i=i+Math.imul(d,G)|0)+Math.imul(h,W)|0))<<13)|0;l=((o=o+Math.imul(h,G)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(w,F),i=(i=Math.imul(w,$))+Math.imul(x,F)|0,o=Math.imul(x,$),n=n+Math.imul(v,V)|0,i=(i=i+Math.imul(v,q)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,q)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,G)|0;var be=(l+(n=n+Math.imul(d,Y)|0)|0)+((8191&(i=(i=i+Math.imul(d,X)|0)+Math.imul(h,Y)|0))<<13)|0;l=((o=o+Math.imul(h,X)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(k,F),i=(i=Math.imul(k,$))+Math.imul(S,F)|0,o=Math.imul(S,$),n=n+Math.imul(w,V)|0,i=(i=i+Math.imul(w,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,X)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,X)|0;var we=(l+(n=n+Math.imul(d,Q)|0)|0)+((8191&(i=(i=i+Math.imul(d,ee)|0)+Math.imul(h,Q)|0))<<13)|0;l=((o=o+Math.imul(h,ee)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(A,F),i=(i=Math.imul(A,$))+Math.imul(P,F)|0,o=Math.imul(P,$),n=n+Math.imul(k,V)|0,i=(i=i+Math.imul(k,q)|0)+Math.imul(S,V)|0,o=o+Math.imul(S,q)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(x,W)|0,o=o+Math.imul(x,G)|0,n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,X)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,X)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,ee)|0;var xe=(l+(n=n+Math.imul(d,re)|0)|0)+((8191&(i=(i=i+Math.imul(d,ne)|0)+Math.imul(h,re)|0))<<13)|0;l=((o=o+Math.imul(h,ne)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(T,F),i=(i=Math.imul(T,$))+Math.imul(j,F)|0,o=Math.imul(j,$),n=n+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,n=n+Math.imul(k,W)|0,i=(i=i+Math.imul(k,G)|0)+Math.imul(S,W)|0,o=o+Math.imul(S,G)|0,n=n+Math.imul(w,Y)|0,i=(i=i+Math.imul(w,X)|0)+Math.imul(x,Y)|0,o=o+Math.imul(x,X)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(m,re)|0,o=o+Math.imul(m,ne)|0;var _e=(l+(n=n+Math.imul(d,oe)|0)|0)+((8191&(i=(i=i+Math.imul(d,ae)|0)+Math.imul(h,oe)|0))<<13)|0;l=((o=o+Math.imul(h,ae)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(R,F),i=(i=Math.imul(R,$))+Math.imul(I,F)|0,o=Math.imul(I,$),n=n+Math.imul(T,V)|0,i=(i=i+Math.imul(T,q)|0)+Math.imul(j,V)|0,o=o+Math.imul(j,q)|0,n=n+Math.imul(A,W)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(P,W)|0,o=o+Math.imul(P,G)|0,n=n+Math.imul(k,Y)|0,i=(i=i+Math.imul(k,X)|0)+Math.imul(S,Y)|0,o=o+Math.imul(S,X)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,ee)|0)+Math.imul(x,Q)|0,o=o+Math.imul(x,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(y,re)|0,o=o+Math.imul(y,ne)|0,n=n+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,ae)|0)+Math.imul(m,oe)|0,o=o+Math.imul(m,ae)|0;var ke=(l+(n=n+Math.imul(d,ce)|0)|0)+((8191&(i=(i=i+Math.imul(d,le)|0)+Math.imul(h,ce)|0))<<13)|0;l=((o=o+Math.imul(h,le)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(L,F),i=(i=Math.imul(L,$))+Math.imul(N,F)|0,o=Math.imul(N,$),n=n+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(I,V)|0,o=o+Math.imul(I,q)|0,n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(j,W)|0,o=o+Math.imul(j,G)|0,n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,X)|0)+Math.imul(P,Y)|0,o=o+Math.imul(P,X)|0,n=n+Math.imul(k,Q)|0,i=(i=i+Math.imul(k,ee)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,ee)|0,n=n+Math.imul(w,re)|0,i=(i=i+Math.imul(w,ne)|0)+Math.imul(x,re)|0,o=o+Math.imul(x,ne)|0,n=n+Math.imul(v,oe)|0,i=(i=i+Math.imul(v,ae)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,ae)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,le)|0)+Math.imul(m,ce)|0,o=o+Math.imul(m,le)|0;var Se=(l+(n=n+Math.imul(d,de)|0)|0)+((8191&(i=(i=i+Math.imul(d,he)|0)+Math.imul(h,de)|0))<<13)|0;l=((o=o+Math.imul(h,he)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(z,F),i=(i=Math.imul(z,$))+Math.imul(B,F)|0,o=Math.imul(B,$),n=n+Math.imul(L,V)|0,i=(i=i+Math.imul(L,q)|0)+Math.imul(N,V)|0,o=o+Math.imul(N,q)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,X)|0)+Math.imul(j,Y)|0,o=o+Math.imul(j,X)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(P,Q)|0,o=o+Math.imul(P,ee)|0,n=n+Math.imul(k,re)|0,i=(i=i+Math.imul(k,ne)|0)+Math.imul(S,re)|0,o=o+Math.imul(S,ne)|0,n=n+Math.imul(w,oe)|0,i=(i=i+Math.imul(w,ae)|0)+Math.imul(x,oe)|0,o=o+Math.imul(x,ae)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,le)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,le)|0,n=n+Math.imul(p,de)|0,i=(i=i+Math.imul(p,he)|0)+Math.imul(m,de)|0,o=o+Math.imul(m,he)|0;var Ee=(l+(n=n+Math.imul(d,pe)|0)|0)+((8191&(i=(i=i+Math.imul(d,me)|0)+Math.imul(h,pe)|0))<<13)|0;l=((o=o+Math.imul(h,me)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(z,V),i=(i=Math.imul(z,q))+Math.imul(B,V)|0,o=Math.imul(B,q),n=n+Math.imul(L,W)|0,i=(i=i+Math.imul(L,G)|0)+Math.imul(N,W)|0,o=o+Math.imul(N,G)|0,n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(I,Y)|0,o=o+Math.imul(I,X)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(j,Q)|0,o=o+Math.imul(j,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(P,re)|0,o=o+Math.imul(P,ne)|0,n=n+Math.imul(k,oe)|0,i=(i=i+Math.imul(k,ae)|0)+Math.imul(S,oe)|0,o=o+Math.imul(S,ae)|0,n=n+Math.imul(w,ce)|0,i=(i=i+Math.imul(w,le)|0)+Math.imul(x,ce)|0,o=o+Math.imul(x,le)|0,n=n+Math.imul(v,de)|0,i=(i=i+Math.imul(v,he)|0)+Math.imul(y,de)|0,o=o+Math.imul(y,he)|0;var Ae=(l+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,me)|0)+Math.imul(m,pe)|0))<<13)|0;l=((o=o+Math.imul(m,me)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(z,W),i=(i=Math.imul(z,G))+Math.imul(B,W)|0,o=Math.imul(B,G),n=n+Math.imul(L,Y)|0,i=(i=i+Math.imul(L,X)|0)+Math.imul(N,Y)|0,o=o+Math.imul(N,X)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(j,re)|0,o=o+Math.imul(j,ne)|0,n=n+Math.imul(A,oe)|0,i=(i=i+Math.imul(A,ae)|0)+Math.imul(P,oe)|0,o=o+Math.imul(P,ae)|0,n=n+Math.imul(k,ce)|0,i=(i=i+Math.imul(k,le)|0)+Math.imul(S,ce)|0,o=o+Math.imul(S,le)|0,n=n+Math.imul(w,de)|0,i=(i=i+Math.imul(w,he)|0)+Math.imul(x,de)|0,o=o+Math.imul(x,he)|0;var Pe=(l+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,me)|0)+Math.imul(y,pe)|0))<<13)|0;l=((o=o+Math.imul(y,me)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(z,Y),i=(i=Math.imul(z,X))+Math.imul(B,Y)|0,o=Math.imul(B,X),n=n+Math.imul(L,Q)|0,i=(i=i+Math.imul(L,ee)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(I,re)|0,o=o+Math.imul(I,ne)|0,n=n+Math.imul(T,oe)|0,i=(i=i+Math.imul(T,ae)|0)+Math.imul(j,oe)|0,o=o+Math.imul(j,ae)|0,n=n+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(P,ce)|0,o=o+Math.imul(P,le)|0,n=n+Math.imul(k,de)|0,i=(i=i+Math.imul(k,he)|0)+Math.imul(S,de)|0,o=o+Math.imul(S,he)|0;var Oe=(l+(n=n+Math.imul(w,pe)|0)|0)+((8191&(i=(i=i+Math.imul(w,me)|0)+Math.imul(x,pe)|0))<<13)|0;l=((o=o+Math.imul(x,me)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(z,Q),i=(i=Math.imul(z,ee))+Math.imul(B,Q)|0,o=Math.imul(B,ee),n=n+Math.imul(L,re)|0,i=(i=i+Math.imul(L,ne)|0)+Math.imul(N,re)|0,o=o+Math.imul(N,ne)|0,n=n+Math.imul(R,oe)|0,i=(i=i+Math.imul(R,ae)|0)+Math.imul(I,oe)|0,o=o+Math.imul(I,ae)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,le)|0)+Math.imul(j,ce)|0,o=o+Math.imul(j,le)|0,n=n+Math.imul(A,de)|0,i=(i=i+Math.imul(A,he)|0)+Math.imul(P,de)|0,o=o+Math.imul(P,he)|0;var Te=(l+(n=n+Math.imul(k,pe)|0)|0)+((8191&(i=(i=i+Math.imul(k,me)|0)+Math.imul(S,pe)|0))<<13)|0;l=((o=o+Math.imul(S,me)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(z,re),i=(i=Math.imul(z,ne))+Math.imul(B,re)|0,o=Math.imul(B,ne),n=n+Math.imul(L,oe)|0,i=(i=i+Math.imul(L,ae)|0)+Math.imul(N,oe)|0,o=o+Math.imul(N,ae)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,le)|0)+Math.imul(I,ce)|0,o=o+Math.imul(I,le)|0,n=n+Math.imul(T,de)|0,i=(i=i+Math.imul(T,he)|0)+Math.imul(j,de)|0,o=o+Math.imul(j,he)|0;var je=(l+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,me)|0)+Math.imul(P,pe)|0))<<13)|0;l=((o=o+Math.imul(P,me)|0)+(i>>>13)|0)+(je>>>26)|0,je&=67108863,n=Math.imul(z,oe),i=(i=Math.imul(z,ae))+Math.imul(B,oe)|0,o=Math.imul(B,ae),n=n+Math.imul(L,ce)|0,i=(i=i+Math.imul(L,le)|0)+Math.imul(N,ce)|0,o=o+Math.imul(N,le)|0,n=n+Math.imul(R,de)|0,i=(i=i+Math.imul(R,he)|0)+Math.imul(I,de)|0,o=o+Math.imul(I,he)|0;var Ce=(l+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,me)|0)+Math.imul(j,pe)|0))<<13)|0;l=((o=o+Math.imul(j,me)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(z,ce),i=(i=Math.imul(z,le))+Math.imul(B,ce)|0,o=Math.imul(B,le),n=n+Math.imul(L,de)|0,i=(i=i+Math.imul(L,he)|0)+Math.imul(N,de)|0,o=o+Math.imul(N,he)|0;var Re=(l+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,me)|0)+Math.imul(I,pe)|0))<<13)|0;l=((o=o+Math.imul(I,me)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(z,de),i=(i=Math.imul(z,he))+Math.imul(B,de)|0,o=Math.imul(B,he);var Ie=(l+(n=n+Math.imul(L,pe)|0)|0)+((8191&(i=(i=i+Math.imul(L,me)|0)+Math.imul(N,pe)|0))<<13)|0;l=((o=o+Math.imul(N,me)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863;var Me=(l+(n=Math.imul(z,pe))|0)+((8191&(i=(i=Math.imul(z,me))+Math.imul(B,pe)|0))<<13)|0;return l=((o=Math.imul(B,me))+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,c[0]=ge,c[1]=ve,c[2]=ye,c[3]=be,c[4]=we,c[5]=xe,c[6]=_e,c[7]=ke,c[8]=Se,c[9]=Ee,c[10]=Ae,c[11]=Pe,c[12]=Oe,c[13]=Te,c[14]=je,c[15]=Ce,c[16]=Re,c[17]=Ie,c[18]=Me,0!==l&&(c[19]=l,r.length++),r};function v(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r._strip()}function y(e,t,r){return v(e,t,r)}function b(e,t){this.x=e,this.y=t}Math.imul||(g=m),o.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?g(this,e,t):r<63?m(this,e,t):r<1024?v(this,e,t):y(this,e,t)},b.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,n=0;n>=1;return n},b.prototype.permute=function(e,t,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*t;a>=26,r+=o/67108864|0,r+=a>>>26,this.words[i]=67108863&a}return 0!==r&&(this.words[i]=r,this.length++),t?this.ineg():this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i&1}return t}(e);if(0===t.length)return new o(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(t=0;t>>26-r}a&&(this.words[t]=a,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var o=e%26,a=Math.min((e-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,l=0;l=0&&(0!==u||l>=i);l--){var d=0|this.words[l];this.words[l]=u<<26-o|d>>>o,u=d&s}return c&&0!==u&&(c.words[c.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this._strip()},o.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){n("number"===typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(n("number"===typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&o}for(;i>26,this.words[i+r]=67108863&o;if(0===s)return this._strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this._strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,a=0|i.words[i.length-1];0!==(r=26-this._countBits(a))&&(i=i.ushln(r),n.iushln(r),a=0|i.words[i.length-1]);var s,c=n.length-i.length;if("mod"!==t){(s=new o(null)).length=c+1,s.words=new Array(s.length);for(var l=0;l=0;d--){var h=67108864*(0|n.words[i.length+d])+(0|n.words[i.length+d-1]);for(h=Math.min(h/a|0,67108863),n._ishlnsubmul(i,h,d);0!==n.negative;)h--,n.negative=0,n._ishlnsubmul(i,1,d),n.isZero()||(n.negative^=1);s&&(s.words[d]=h)}return s&&s._strip(),n._strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},o.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.iadd(e)),{div:i,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modrn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modrn(e.words[0]))}:this._wordDiv(e,t);var i,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modrn=function(e){var t=e<0;t&&(e=-e),n(e<=67108863);for(var r=(1<<26)%e,i=0,o=this.length-1;o>=0;o--)i=(r*i+(0|this.words[o]))%e;return t?-i:i},o.prototype.modn=function(e){return this.modrn(e)},o.prototype.idivn=function(e){var t=e<0;t&&(e=-e),n(e<=67108863);for(var r=0,i=this.length-1;i>=0;i--){var o=(0|this.words[i])+67108864*r;this.words[i]=o/e|0,r=o%e}return this._strip(),t?this.ineg():this},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),a=new o(0),s=new o(0),c=new o(1),l=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++l;for(var u=r.clone(),d=t.clone();!t.isZero();){for(var h=0,f=1;0===(t.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(t.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(u),a.isub(d)),i.iushrn(1),a.iushrn(1);for(var p=0,m=1;0===(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(u),c.isub(d)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),a.isub(c)):(r.isub(t),s.isub(i),c.isub(a))}return{a:s,b:c,gcd:r.iushln(l)}},o.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,a=new o(1),s=new o(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var l=0,u=1;0===(t.words[0]&u)&&l<26;++l,u<<=1);if(l>0)for(t.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var d=0,h=1;0===(r.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(r.iushrn(d);d-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),a.isub(s)):(r.isub(t),s.isub(a))}return(i=0===t.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var o=t;t=r,r=o}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){n("number"===typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this._strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new A(e)},o.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var w={k256:null,p224:null,p192:null,p25519:null};function x(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function _(){x.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function k(){x.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function S(){x.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function E(){x.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function A(e){if("string"===typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function P(e){A.call(this,e),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}x.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},x.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},x.prototype.split=function(e,t){e.iushrn(this.n,0,t)},x.prototype.imulK=function(e){return e.imul(this.k)},i(_,x),_.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,o=a}o>>>=22,e.words[i-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},_.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(w[e])return w[e];var t;if("k256"===e)t=new _;else if("p224"===e)t=new k;else if("p192"===e)t=new S;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new E}return w[e]=t,t},A.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},A.prototype._verify2=function(e,t){n(0===(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},A.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):(u(e,e.umod(this.m)._forceRed(this)),e)},A.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},A.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},A.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},A.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},A.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},A.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},A.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},A.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},A.prototype.isqr=function(e){return this.imul(e,e.clone())},A.prototype.sqr=function(e){return this.mul(e,e)},A.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2===1),3===t){var r=this.m.add(new o(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);n(!i.isZero());var s=new o(1).toRed(this),c=s.redNeg(),l=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,l).cmp(c);)u.redIAdd(c);for(var d=this.pow(u,i),h=this.pow(e,i.addn(1).iushrn(1)),f=this.pow(e,i),p=a;0!==f.cmp(s);){for(var m=f,g=0;0!==m.cmp(s);g++)m=m.redSqr();n(g=0;n--){for(var l=t.words[n],u=c-1;u>=0;u--){var d=l>>u&1;i!==r[0]&&(i=this.sqr(i)),0!==d||0!==a?(a<<=1,a|=d,(4===++s||0===n&&0===u)&&(i=this.mul(i,r[a]),s=0,a=0)):s=0}c=26}return i},A.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},A.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new P(e)},i(P,A),P.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},P.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},P.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},P.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},P.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},5409:(e,t,r)=>{"use strict";var n=r(8795).Buffer;e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r>>0,u=new Uint8Array(a);e[r];){var d=t[e.charCodeAt(r)];if(255===d)return;for(var h=0,f=a-1;(0!==d||h>>0,u[f]=d%256>>>0,d=d/256>>>0;if(0!==d)throw new Error("Non-zero carry");o=h,r++}for(var p=a-o;p!==a&&0===u[p];)p++;var m=n.allocUnsafe(i+(a-p));m.fill(0,0,i);for(var g=i;p!==a;)m[g++]=u[p++];return m}return{encode:function(t){if((Array.isArray(t)||t instanceof Uint8Array)&&(t=n.from(t)),!n.isBuffer(t))throw new TypeError("Expected Buffer");if(0===t.length)return"";for(var r=0,i=0,o=0,a=t.length;o!==a&&0===t[o];)o++,r++;for(var l=(a-o)*u+1>>>0,d=new Uint8Array(l);o!==a;){for(var h=t[o],f=0,p=l-1;(0!==h||f>>0,d[p]=h%s>>>0,h=h/s>>>0;if(0!==h)throw new Error("Non-zero carry");i=f,o++}for(var m=l-i;m!==l&&0===d[m];)m++;for(var g=c.repeat(r);m{"use strict";t.byteLength=function(e){var t=s(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,o=s(e),a=o[0],c=o[1],l=new i(function(e,t,r){return 3*(t+r)/4-r}(0,a,c)),u=0,d=c>0?a-4:a;for(r=0;r>16&255,l[u++]=t>>8&255,l[u++]=255&t;2===c&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,l[u++]=255&t);1===c&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,l[u++]=t>>8&255,l[u++]=255&t);return l},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,o=[],a=16383,s=0,l=n-i;sl?l:s+a));1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return o.join("")};for(var r=[],n=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0;a<64;++a)r[a]=o[a],n[o.charCodeAt(a)]=a;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function c(e,t,n){for(var i,o,a=[],s=t;s>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return a.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},3073:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n={};let i;t.wordlists=n,t._default=i;try{t._default=i=r(2607),n.czech=i}catch(o){}try{t._default=i=r(5898),n.chinese_simplified=i}catch(o){}try{t._default=i=r(81),n.chinese_traditional=i}catch(o){}try{t._default=i=r(5428),n.korean=i}catch(o){}try{t._default=i=r(5040),n.french=i}catch(o){}try{t._default=i=r(5576),n.italian=i}catch(o){}try{t._default=i=r(5376),n.spanish=i}catch(o){}try{t._default=i=r(7967),n.japanese=i,n.JA=i}catch(o){}try{t._default=i=r(7357),n.portuguese=i}catch(o){}try{t._default=i=r(7736),n.english=i,n.EN=i}catch(o){}},9331:(e,t,r)=>{"use strict";var n=r(9673).Buffer;const i=r(7049),o=r(6428),a=r(9419),s=r(7317),c=r(3073);let l=c._default;const u="Invalid mnemonic",d="Invalid entropy",h="Invalid mnemonic checksum",f="A wordlist is required but a default could not be found.\nPlease pass a 2048 word array explicitly.";function p(e){return(e||"").normalize("NFKD")}function m(e,t,r){for(;e.lengthm(e.toString(2),"0",8))).join("")}function y(e){const t=8*e.length/32,r=i.sha256(Uint8Array.from(e));return v(Array.from(r)).slice(0,t)}function b(e){return"mnemonic"+(e||"")}function w(e,t){if(!(t=t||l))throw new Error(f);const r=p(e).split(" ");if(r.length%3!==0)throw new Error(u);const i=r.map((e=>{const r=t.indexOf(e);if(-1===r)throw new Error(u);return m(r.toString(2),"0",11)})).join(""),o=32*Math.floor(i.length/33),a=i.slice(0,o),s=i.slice(o),c=a.match(/(.{1,8})/g).map(g);if(c.length<16)throw new Error(d);if(c.length>32)throw new Error(d);if(c.length%4!==0)throw new Error(d);const v=n.from(c);if(y(v)!==s)throw new Error(h);return v.toString("hex")}function x(e,t){if(n.isBuffer(e)||(e=n.from(e,"hex")),!(t=t||l))throw new Error(f);if(e.length<16)throw new TypeError(d);if(e.length>32)throw new TypeError(d);if(e.length%4!==0)throw new TypeError(d);const r=(v(Array.from(e))+y(e)).match(/(.{1,11})/g).map((e=>{const r=g(e);return t[r]}));return"\u3042\u3044\u3053\u304f\u3057\u3093"===t[0]?r.join("\u3000"):r.join(" ")}t.kw=function(e,t){const r=Uint8Array.from(n.from(p(e),"utf8")),i=Uint8Array.from(n.from(b(p(t)),"utf8")),s=a.pbkdf2(o.sha512,r,i,{c:2048,dkLen:64});return n.from(s)},t.we=function(e,t,r){if((e=e||128)%32!==0)throw new TypeError(d);return x((t=t||(e=>n.from(s.randomBytes(e))))(e/8),r)},t.JB=function(e,t){try{w(e,t)}catch(r){return!1}return!0};var _=r(3073);t.Yu=_.wordlists},8670:(e,t,r)=>{const n=r(1691);function i(e,t,r){const n=e[t]+e[r];let i=e[t+1]+e[r+1];n>=4294967296&&i++,e[t]=n,e[t+1]=i}function o(e,t,r,n){let i=e[t]+r;r<0&&(i+=4294967296);let o=e[t+1]+n;i>=4294967296&&o++,e[t]=i,e[t+1]=o}function a(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function s(e,t,r,n,a,s){const c=d[a],l=d[a+1],h=d[s],f=d[s+1];i(u,e,t),o(u,e,c,l);let p=u[n]^u[e],m=u[n+1]^u[e+1];u[n]=m,u[n+1]=p,i(u,r,n),p=u[t]^u[r],m=u[t+1]^u[r+1],u[t]=p>>>24^m<<8,u[t+1]=m>>>24^p<<8,i(u,e,t),o(u,e,h,f),p=u[n]^u[e],m=u[n+1]^u[e+1],u[n]=p>>>16^m<<16,u[n+1]=m>>>16^p<<16,i(u,r,n),p=u[t]^u[r],m=u[t+1]^u[r+1],u[t]=m>>>31^p<<1,u[t+1]=p>>>31^m<<1}const c=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),l=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3].map((function(e){return 2*e}))),u=new Uint32Array(32),d=new Uint32Array(32);function h(e,t){let r=0;for(r=0;r<16;r++)u[r]=e.h[r],u[r+16]=c[r];for(u[24]=u[24]^e.t,u[25]=u[25]^e.t/4294967296,t&&(u[28]=~u[28],u[29]=~u[29]),r=0;r<32;r++)d[r]=a(e.b,4*r);for(r=0;r<12;r++)s(0,8,16,24,l[16*r+0],l[16*r+1]),s(2,10,18,26,l[16*r+2],l[16*r+3]),s(4,12,20,28,l[16*r+4],l[16*r+5]),s(6,14,22,30,l[16*r+6],l[16*r+7]),s(0,10,20,30,l[16*r+8],l[16*r+9]),s(2,12,22,24,l[16*r+10],l[16*r+11]),s(4,14,16,26,l[16*r+12],l[16*r+13]),s(6,8,18,28,l[16*r+14],l[16*r+15]);for(r=0;r<16;r++)e.h[r]=e.h[r]^u[r]^u[r+16]}const f=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function p(e,t,r,n){if(0===e||e>64)throw new Error("Illegal output length, expected 0 < length <= 64");if(t&&t.length>64)throw new Error("Illegal key, expected Uint8Array with 0 < length <= 64");if(r&&16!==r.length)throw new Error("Illegal salt, expected Uint8Array with length is 16");if(n&&16!==n.length)throw new Error("Illegal personal, expected Uint8Array with length is 16");const i={b:new Uint8Array(128),h:new Uint32Array(16),t:0,c:0,outlen:e};f.fill(0),f[0]=e,t&&(f[1]=t.length),f[2]=1,f[3]=1,r&&f.set(r,32),n&&f.set(n,48);for(let o=0;o<16;o++)i.h[o]=c[o]^a(f,4*o);return t&&(m(i,t),i.c=128),i}function m(e,t){for(let r=0;r>2]>>8*(3&r);return t}function v(e,t,r,i,o){r=r||64,e=n.normalizeInput(e),i&&(i=n.normalizeInput(i)),o&&(o=n.normalizeInput(o));const a=p(r,t,i,o);return m(a,e),g(a)}e.exports={blake2b:v,blake2bHex:function(e,t,r,i,o){const a=v(e,t,r,i,o);return n.toHex(a)},blake2bInit:p,blake2bUpdate:m,blake2bFinal:g}},5581:(e,t,r)=>{const n=r(1691);function i(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function o(e,t,r,n,i,o){l[e]=l[e]+l[t]+i,l[n]=a(l[n]^l[e],16),l[r]=l[r]+l[n],l[t]=a(l[t]^l[r],12),l[e]=l[e]+l[t]+o,l[n]=a(l[n]^l[e],8),l[r]=l[r]+l[n],l[t]=a(l[t]^l[r],7)}function a(e,t){return e>>>t^e<<32-t}const s=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),c=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0]),l=new Uint32Array(16),u=new Uint32Array(16);function d(e,t){let r=0;for(r=0;r<8;r++)l[r]=e.h[r],l[r+8]=s[r];for(l[12]^=e.t,l[13]^=e.t/4294967296,t&&(l[14]=~l[14]),r=0;r<16;r++)u[r]=i(e.b,4*r);for(r=0;r<10;r++)o(0,4,8,12,u[c[16*r+0]],u[c[16*r+1]]),o(1,5,9,13,u[c[16*r+2]],u[c[16*r+3]]),o(2,6,10,14,u[c[16*r+4]],u[c[16*r+5]]),o(3,7,11,15,u[c[16*r+6]],u[c[16*r+7]]),o(0,5,10,15,u[c[16*r+8]],u[c[16*r+9]]),o(1,6,11,12,u[c[16*r+10]],u[c[16*r+11]]),o(2,7,8,13,u[c[16*r+12]],u[c[16*r+13]]),o(3,4,9,14,u[c[16*r+14]],u[c[16*r+15]]);for(r=0;r<8;r++)e.h[r]^=l[r]^l[r+8]}function h(e,t){if(!(e>0&&e<=32))throw new Error("Incorrect output length, should be in [1, 32]");const r=t?t.length:0;if(t&&!(r>0&&r<=32))throw new Error("Incorrect key length, should be in [1, 32]");const n={h:new Uint32Array(s),b:new Uint8Array(64),c:0,t:0,outlen:e};return n.h[0]^=16842752^r<<8^e,r>0&&(f(n,t),n.c=64),n}function f(e,t){for(let r=0;r>2]>>8*(3&r)&255;return t}function m(e,t,r){r=r||32,e=n.normalizeInput(e);const i=h(r,t);return f(i,e),p(i)}e.exports={blake2s:m,blake2sHex:function(e,t,r){const i=m(e,t,r);return n.toHex(i)},blake2sInit:h,blake2sUpdate:f,blake2sFinal:p}},7283:(e,t,r)=>{const n=r(8670),i=r(5581);e.exports={blake2b:n.blake2b,blake2bHex:n.blake2bHex,blake2bInit:n.blake2bInit,blake2bUpdate:n.blake2bUpdate,blake2bFinal:n.blake2bFinal,blake2s:i.blake2s,blake2sHex:i.blake2sHex,blake2sInit:i.blake2sInit,blake2sUpdate:i.blake2sUpdate,blake2sFinal:i.blake2sFinal}},1691:e=>{function t(e){return(4294967296+e).toString(16).substring(1)}e.exports={normalizeInput:function(e){let t;if(e instanceof Uint8Array)t=e;else{if("string"!==typeof e)throw new Error("Input must be an string, Buffer or Uint8Array");t=(new TextEncoder).encode(e)}return t},toHex:function(e){return Array.prototype.map.call(e,(function(e){return(e<16?"0":"")+e.toString(16)})).join("")},debugPrint:function(e,r,n){let i="\n"+e+" = ";for(let o=0;o=65&&r<=70?r-55:r>=97&&r<=102?r-87:r-48&15}function c(e,t,r){var n=s(e,r);return r-1>=t&&(n|=s(e,r-1)<<4),n}function l(e,t,r,n){for(var i=0,o=Math.min(e.length,r),a=t;a=49?s-49+10:s>=17?s-17+10:s}return i}o.isBN=function(e){return e instanceof o||null!==e&&"object"===typeof e&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,r){if("number"===typeof e)return this._initNumber(e,t,r);if("object"===typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)a=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(i=0,o=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this.strip()},o.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=c(e,t,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(e.length-t)%2===0?t+1:t;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this.strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var o=e.length-r,a=o%n,s=Math.min(o,o-a)+r,c=0,u=r;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var u=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],d=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function f(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],o=0|t.words[0],a=i*o,s=67108863&a,c=a/67108864|0;r.words[0]=s;for(var l=1;l>>26,d=67108863&c,h=Math.min(l,t.length-1),f=Math.max(0,l-e.length+1);f<=h;f++){var p=l-f|0;u+=(a=(i=0|e.words[p])*(o=0|t.words[f])+d)/67108864|0,d=67108863&a}r.words[l]=0|d,c=0|u}return 0!==c?r.words[l]=0|c:r.length--,r.strip()}o.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,o=0,a=0;a>>24-i&16777215)||a!==this.length-1?u[6-c.length]+c+r:c+r,(i+=2)>=26&&(i-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=d[e],f=h[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var m=p.modn(f).toString(e);r=(p=p.idivn(f)).isZero()?m+r:u[l-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return n("undefined"!==typeof a),this.toArrayLike(a,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,r){var i=this.byteLength(),o=r||Math.max(1,i);n(i<=o,"byte array longer than desired length"),n(o>0,"Requested array length <= 0"),this.strip();var a,s,c="le"===t,l=new e(o),u=this.clone();if(c){for(s=0;!u.isZero();s++)a=u.andln(255),u.iushrn(8),l[s]=a;for(;s=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0===(8191&t)&&(r+=13,t>>>=13),0===(127&t)&&(r+=7,t>>>=7),0===(15&t)&&(r+=4,t>>>=4),0===(3&t)&&(r+=2,t>>>=2),0===(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){n("number"===typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){n("number"===typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&t;for(;0!==o&&a>26,this.words[a]=67108863&t;if(0===o&&a>>13,f=0|a[1],p=8191&f,m=f>>>13,g=0|a[2],v=8191&g,y=g>>>13,b=0|a[3],w=8191&b,x=b>>>13,_=0|a[4],k=8191&_,S=_>>>13,E=0|a[5],A=8191&E,P=E>>>13,O=0|a[6],T=8191&O,j=O>>>13,C=0|a[7],R=8191&C,I=C>>>13,M=0|a[8],L=8191&M,N=M>>>13,D=0|a[9],z=8191&D,B=D>>>13,U=0|s[0],F=8191&U,$=U>>>13,H=0|s[1],V=8191&H,q=H>>>13,K=0|s[2],W=8191&K,G=K>>>13,Z=0|s[3],Y=8191&Z,X=Z>>>13,J=0|s[4],Q=8191&J,ee=J>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],oe=8191&ie,ae=ie>>>13,se=0|s[7],ce=8191&se,le=se>>>13,ue=0|s[8],de=8191&ue,he=ue>>>13,fe=0|s[9],pe=8191&fe,me=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(l+(n=Math.imul(d,F))|0)+((8191&(i=(i=Math.imul(d,$))+Math.imul(h,F)|0))<<13)|0;l=((o=Math.imul(h,$))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,F),i=(i=Math.imul(p,$))+Math.imul(m,F)|0,o=Math.imul(m,$);var ve=(l+(n=n+Math.imul(d,V)|0)|0)+((8191&(i=(i=i+Math.imul(d,q)|0)+Math.imul(h,V)|0))<<13)|0;l=((o=o+Math.imul(h,q)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(v,F),i=(i=Math.imul(v,$))+Math.imul(y,F)|0,o=Math.imul(y,$),n=n+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,q)|0;var ye=(l+(n=n+Math.imul(d,W)|0)|0)+((8191&(i=(i=i+Math.imul(d,G)|0)+Math.imul(h,W)|0))<<13)|0;l=((o=o+Math.imul(h,G)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(w,F),i=(i=Math.imul(w,$))+Math.imul(x,F)|0,o=Math.imul(x,$),n=n+Math.imul(v,V)|0,i=(i=i+Math.imul(v,q)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,q)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,G)|0;var be=(l+(n=n+Math.imul(d,Y)|0)|0)+((8191&(i=(i=i+Math.imul(d,X)|0)+Math.imul(h,Y)|0))<<13)|0;l=((o=o+Math.imul(h,X)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(k,F),i=(i=Math.imul(k,$))+Math.imul(S,F)|0,o=Math.imul(S,$),n=n+Math.imul(w,V)|0,i=(i=i+Math.imul(w,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,X)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,X)|0;var we=(l+(n=n+Math.imul(d,Q)|0)|0)+((8191&(i=(i=i+Math.imul(d,ee)|0)+Math.imul(h,Q)|0))<<13)|0;l=((o=o+Math.imul(h,ee)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(A,F),i=(i=Math.imul(A,$))+Math.imul(P,F)|0,o=Math.imul(P,$),n=n+Math.imul(k,V)|0,i=(i=i+Math.imul(k,q)|0)+Math.imul(S,V)|0,o=o+Math.imul(S,q)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(x,W)|0,o=o+Math.imul(x,G)|0,n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,X)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,X)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,ee)|0;var xe=(l+(n=n+Math.imul(d,re)|0)|0)+((8191&(i=(i=i+Math.imul(d,ne)|0)+Math.imul(h,re)|0))<<13)|0;l=((o=o+Math.imul(h,ne)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(T,F),i=(i=Math.imul(T,$))+Math.imul(j,F)|0,o=Math.imul(j,$),n=n+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,n=n+Math.imul(k,W)|0,i=(i=i+Math.imul(k,G)|0)+Math.imul(S,W)|0,o=o+Math.imul(S,G)|0,n=n+Math.imul(w,Y)|0,i=(i=i+Math.imul(w,X)|0)+Math.imul(x,Y)|0,o=o+Math.imul(x,X)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(m,re)|0,o=o+Math.imul(m,ne)|0;var _e=(l+(n=n+Math.imul(d,oe)|0)|0)+((8191&(i=(i=i+Math.imul(d,ae)|0)+Math.imul(h,oe)|0))<<13)|0;l=((o=o+Math.imul(h,ae)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(R,F),i=(i=Math.imul(R,$))+Math.imul(I,F)|0,o=Math.imul(I,$),n=n+Math.imul(T,V)|0,i=(i=i+Math.imul(T,q)|0)+Math.imul(j,V)|0,o=o+Math.imul(j,q)|0,n=n+Math.imul(A,W)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(P,W)|0,o=o+Math.imul(P,G)|0,n=n+Math.imul(k,Y)|0,i=(i=i+Math.imul(k,X)|0)+Math.imul(S,Y)|0,o=o+Math.imul(S,X)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,ee)|0)+Math.imul(x,Q)|0,o=o+Math.imul(x,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(y,re)|0,o=o+Math.imul(y,ne)|0,n=n+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,ae)|0)+Math.imul(m,oe)|0,o=o+Math.imul(m,ae)|0;var ke=(l+(n=n+Math.imul(d,ce)|0)|0)+((8191&(i=(i=i+Math.imul(d,le)|0)+Math.imul(h,ce)|0))<<13)|0;l=((o=o+Math.imul(h,le)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(L,F),i=(i=Math.imul(L,$))+Math.imul(N,F)|0,o=Math.imul(N,$),n=n+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(I,V)|0,o=o+Math.imul(I,q)|0,n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(j,W)|0,o=o+Math.imul(j,G)|0,n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,X)|0)+Math.imul(P,Y)|0,o=o+Math.imul(P,X)|0,n=n+Math.imul(k,Q)|0,i=(i=i+Math.imul(k,ee)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,ee)|0,n=n+Math.imul(w,re)|0,i=(i=i+Math.imul(w,ne)|0)+Math.imul(x,re)|0,o=o+Math.imul(x,ne)|0,n=n+Math.imul(v,oe)|0,i=(i=i+Math.imul(v,ae)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,ae)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,le)|0)+Math.imul(m,ce)|0,o=o+Math.imul(m,le)|0;var Se=(l+(n=n+Math.imul(d,de)|0)|0)+((8191&(i=(i=i+Math.imul(d,he)|0)+Math.imul(h,de)|0))<<13)|0;l=((o=o+Math.imul(h,he)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(z,F),i=(i=Math.imul(z,$))+Math.imul(B,F)|0,o=Math.imul(B,$),n=n+Math.imul(L,V)|0,i=(i=i+Math.imul(L,q)|0)+Math.imul(N,V)|0,o=o+Math.imul(N,q)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,X)|0)+Math.imul(j,Y)|0,o=o+Math.imul(j,X)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(P,Q)|0,o=o+Math.imul(P,ee)|0,n=n+Math.imul(k,re)|0,i=(i=i+Math.imul(k,ne)|0)+Math.imul(S,re)|0,o=o+Math.imul(S,ne)|0,n=n+Math.imul(w,oe)|0,i=(i=i+Math.imul(w,ae)|0)+Math.imul(x,oe)|0,o=o+Math.imul(x,ae)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,le)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,le)|0,n=n+Math.imul(p,de)|0,i=(i=i+Math.imul(p,he)|0)+Math.imul(m,de)|0,o=o+Math.imul(m,he)|0;var Ee=(l+(n=n+Math.imul(d,pe)|0)|0)+((8191&(i=(i=i+Math.imul(d,me)|0)+Math.imul(h,pe)|0))<<13)|0;l=((o=o+Math.imul(h,me)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(z,V),i=(i=Math.imul(z,q))+Math.imul(B,V)|0,o=Math.imul(B,q),n=n+Math.imul(L,W)|0,i=(i=i+Math.imul(L,G)|0)+Math.imul(N,W)|0,o=o+Math.imul(N,G)|0,n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(I,Y)|0,o=o+Math.imul(I,X)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(j,Q)|0,o=o+Math.imul(j,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(P,re)|0,o=o+Math.imul(P,ne)|0,n=n+Math.imul(k,oe)|0,i=(i=i+Math.imul(k,ae)|0)+Math.imul(S,oe)|0,o=o+Math.imul(S,ae)|0,n=n+Math.imul(w,ce)|0,i=(i=i+Math.imul(w,le)|0)+Math.imul(x,ce)|0,o=o+Math.imul(x,le)|0,n=n+Math.imul(v,de)|0,i=(i=i+Math.imul(v,he)|0)+Math.imul(y,de)|0,o=o+Math.imul(y,he)|0;var Ae=(l+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,me)|0)+Math.imul(m,pe)|0))<<13)|0;l=((o=o+Math.imul(m,me)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(z,W),i=(i=Math.imul(z,G))+Math.imul(B,W)|0,o=Math.imul(B,G),n=n+Math.imul(L,Y)|0,i=(i=i+Math.imul(L,X)|0)+Math.imul(N,Y)|0,o=o+Math.imul(N,X)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(j,re)|0,o=o+Math.imul(j,ne)|0,n=n+Math.imul(A,oe)|0,i=(i=i+Math.imul(A,ae)|0)+Math.imul(P,oe)|0,o=o+Math.imul(P,ae)|0,n=n+Math.imul(k,ce)|0,i=(i=i+Math.imul(k,le)|0)+Math.imul(S,ce)|0,o=o+Math.imul(S,le)|0,n=n+Math.imul(w,de)|0,i=(i=i+Math.imul(w,he)|0)+Math.imul(x,de)|0,o=o+Math.imul(x,he)|0;var Pe=(l+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,me)|0)+Math.imul(y,pe)|0))<<13)|0;l=((o=o+Math.imul(y,me)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(z,Y),i=(i=Math.imul(z,X))+Math.imul(B,Y)|0,o=Math.imul(B,X),n=n+Math.imul(L,Q)|0,i=(i=i+Math.imul(L,ee)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(I,re)|0,o=o+Math.imul(I,ne)|0,n=n+Math.imul(T,oe)|0,i=(i=i+Math.imul(T,ae)|0)+Math.imul(j,oe)|0,o=o+Math.imul(j,ae)|0,n=n+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(P,ce)|0,o=o+Math.imul(P,le)|0,n=n+Math.imul(k,de)|0,i=(i=i+Math.imul(k,he)|0)+Math.imul(S,de)|0,o=o+Math.imul(S,he)|0;var Oe=(l+(n=n+Math.imul(w,pe)|0)|0)+((8191&(i=(i=i+Math.imul(w,me)|0)+Math.imul(x,pe)|0))<<13)|0;l=((o=o+Math.imul(x,me)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(z,Q),i=(i=Math.imul(z,ee))+Math.imul(B,Q)|0,o=Math.imul(B,ee),n=n+Math.imul(L,re)|0,i=(i=i+Math.imul(L,ne)|0)+Math.imul(N,re)|0,o=o+Math.imul(N,ne)|0,n=n+Math.imul(R,oe)|0,i=(i=i+Math.imul(R,ae)|0)+Math.imul(I,oe)|0,o=o+Math.imul(I,ae)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,le)|0)+Math.imul(j,ce)|0,o=o+Math.imul(j,le)|0,n=n+Math.imul(A,de)|0,i=(i=i+Math.imul(A,he)|0)+Math.imul(P,de)|0,o=o+Math.imul(P,he)|0;var Te=(l+(n=n+Math.imul(k,pe)|0)|0)+((8191&(i=(i=i+Math.imul(k,me)|0)+Math.imul(S,pe)|0))<<13)|0;l=((o=o+Math.imul(S,me)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(z,re),i=(i=Math.imul(z,ne))+Math.imul(B,re)|0,o=Math.imul(B,ne),n=n+Math.imul(L,oe)|0,i=(i=i+Math.imul(L,ae)|0)+Math.imul(N,oe)|0,o=o+Math.imul(N,ae)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,le)|0)+Math.imul(I,ce)|0,o=o+Math.imul(I,le)|0,n=n+Math.imul(T,de)|0,i=(i=i+Math.imul(T,he)|0)+Math.imul(j,de)|0,o=o+Math.imul(j,he)|0;var je=(l+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,me)|0)+Math.imul(P,pe)|0))<<13)|0;l=((o=o+Math.imul(P,me)|0)+(i>>>13)|0)+(je>>>26)|0,je&=67108863,n=Math.imul(z,oe),i=(i=Math.imul(z,ae))+Math.imul(B,oe)|0,o=Math.imul(B,ae),n=n+Math.imul(L,ce)|0,i=(i=i+Math.imul(L,le)|0)+Math.imul(N,ce)|0,o=o+Math.imul(N,le)|0,n=n+Math.imul(R,de)|0,i=(i=i+Math.imul(R,he)|0)+Math.imul(I,de)|0,o=o+Math.imul(I,he)|0;var Ce=(l+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,me)|0)+Math.imul(j,pe)|0))<<13)|0;l=((o=o+Math.imul(j,me)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(z,ce),i=(i=Math.imul(z,le))+Math.imul(B,ce)|0,o=Math.imul(B,le),n=n+Math.imul(L,de)|0,i=(i=i+Math.imul(L,he)|0)+Math.imul(N,de)|0,o=o+Math.imul(N,he)|0;var Re=(l+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,me)|0)+Math.imul(I,pe)|0))<<13)|0;l=((o=o+Math.imul(I,me)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(z,de),i=(i=Math.imul(z,he))+Math.imul(B,de)|0,o=Math.imul(B,he);var Ie=(l+(n=n+Math.imul(L,pe)|0)|0)+((8191&(i=(i=i+Math.imul(L,me)|0)+Math.imul(N,pe)|0))<<13)|0;l=((o=o+Math.imul(N,me)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863;var Me=(l+(n=Math.imul(z,pe))|0)+((8191&(i=(i=Math.imul(z,me))+Math.imul(B,pe)|0))<<13)|0;return l=((o=Math.imul(B,me))+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,c[0]=ge,c[1]=ve,c[2]=ye,c[3]=be,c[4]=we,c[5]=xe,c[6]=_e,c[7]=ke,c[8]=Se,c[9]=Ee,c[10]=Ae,c[11]=Pe,c[12]=Oe,c[13]=Te,c[14]=je,c[15]=Ce,c[16]=Re,c[17]=Ie,c[18]=Me,0!==l&&(c[19]=l,r.length++),r};function m(e,t,r){return(new g).mulp(e,t,r)}function g(e,t){this.x=e,this.y=t}Math.imul||(p=f),o.prototype.mulTo=function(e,t){var r,n=this.length+e.length;return r=10===this.length&&10===e.length?p(this,e,t):n<63?f(this,e,t):n<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r.strip()}(this,e,t):m(this,e,t),r},g.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,n=0;n>=1;return n},g.prototype.permute=function(e,t,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*t;a>=26,t+=i/67108864|0,t+=o>>>26,this.words[r]=67108863&o}return 0!==t&&(this.words[r]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new o(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(t=0;t>>26-r}a&&(this.words[t]=a,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var o=e%26,a=Math.min((e-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,l=0;l=0&&(0!==u||l>=i);l--){var d=0|this.words[l];this.words[l]=u<<26-o|d>>>o,u=d&s}return c&&0!==u&&(c.words[c.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){n("number"===typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(n("number"===typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&o}for(;i>26,this.words[i+r]=67108863&o;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,a=0|i.words[i.length-1];0!==(r=26-this._countBits(a))&&(i=i.ushln(r),n.iushln(r),a=0|i.words[i.length-1]);var s,c=n.length-i.length;if("mod"!==t){(s=new o(null)).length=c+1,s.words=new Array(s.length);for(var l=0;l=0;d--){var h=67108864*(0|n.words[i.length+d])+(0|n.words[i.length+d-1]);for(h=Math.min(h/a|0,67108863),n._ishlnsubmul(i,h,d);0!==n.negative;)h--,n.negative=0,n._ishlnsubmul(i,1,d),n.isZero()||(n.negative^=1);s&&(s.words[d]=h)}return s&&s.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},o.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.iadd(e)),{div:i,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){n(e<=67108863);for(var t=(1<<26)%e,r=0,i=this.length-1;i>=0;i--)r=(t*r+(0|this.words[i]))%e;return r},o.prototype.idivn=function(e){n(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*t;this.words[r]=i/e|0,t=i%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),a=new o(0),s=new o(0),c=new o(1),l=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++l;for(var u=r.clone(),d=t.clone();!t.isZero();){for(var h=0,f=1;0===(t.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(t.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(u),a.isub(d)),i.iushrn(1),a.iushrn(1);for(var p=0,m=1;0===(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(u),c.isub(d)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),a.isub(c)):(r.isub(t),s.isub(i),c.isub(a))}return{a:s,b:c,gcd:r.iushln(l)}},o.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,a=new o(1),s=new o(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var l=0,u=1;0===(t.words[0]&u)&&l<26;++l,u<<=1);if(l>0)for(t.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var d=0,h=1;0===(r.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(r.iushrn(d);d-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),a.isub(s)):(r.isub(t),s.isub(a))}return(i=0===t.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var o=t;t=r,r=o}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){n("number"===typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new k(e)},o.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var v={k256:null,p224:null,p192:null,p25519:null};function y(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function b(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function w(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function x(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function k(e){if("string"===typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function S(e){k.call(this,e),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}y.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},y.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},y.prototype.split=function(e,t){e.iushrn(this.n,0,t)},y.prototype.imulK=function(e){return e.imul(this.k)},i(b,y),b.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,o=a}o>>>=22,e.words[i-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},b.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(v[e])return v[e];var t;if("k256"===e)t=new b;else if("p224"===e)t=new w;else if("p192"===e)t=new x;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new _}return v[e]=t,t},k.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},k.prototype._verify2=function(e,t){n(0===(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},k.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},k.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},k.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},k.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},k.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},k.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},k.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},k.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},k.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},k.prototype.isqr=function(e){return this.imul(e,e.clone())},k.prototype.sqr=function(e){return this.mul(e,e)},k.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2===1),3===t){var r=this.m.add(new o(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);n(!i.isZero());var s=new o(1).toRed(this),c=s.redNeg(),l=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,l).cmp(c);)u.redIAdd(c);for(var d=this.pow(u,i),h=this.pow(e,i.addn(1).iushrn(1)),f=this.pow(e,i),p=a;0!==f.cmp(s);){for(var m=f,g=0;0!==m.cmp(s);g++)m=m.redSqr();n(g=0;n--){for(var l=t.words[n],u=c-1;u>=0;u--){var d=l>>u&1;i!==r[0]&&(i=this.sqr(i)),0!==d||0!==a?(a<<=1,a|=d,(4===++s||0===n&&0===u)&&(i=this.mul(i,r[a]),s=0,a=0)):s=0}c=26}return i},k.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},k.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new S(e)},i(S,k),S.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},S.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},S.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},S.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},S.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},5278:function(e){e.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=90)}({17:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||""},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||""},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case"NT":return"NT";case"XP":case"NT 5.1":return"XP";case"NT 5.0":return"2000";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},e.getMacOSVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}},e.getAndroidVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?"Cupcake":1===t[0]&&t[1]>=6?"Donut":2===t[0]&&t[1]<2?"Eclair":2===t[0]&&2===t[1]?"Froyo":2===t[0]&&t[1]>2?"Gingerbread":3===t[0]?"Honeycomb":4===t[0]&&t[1]<1?"Ice Cream Sandwich":4===t[0]&&t[1]<4?"Jelly Bean":4===t[0]&&t[1]>=4?"KitKat":5===t[0]?"Lollipop":6===t[0]?"Marshmallow":7===t[0]?"Nougat":8===t[0]?"Oreo":9===t[0]?"Pie":void 0},e.getVersionPrecision=function(e){return e.split(".").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),o=e.getVersionPrecision(r),a=Math.max(i,o),s=0,c=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(".0");return e.map(n.split("."),(function(e){return new Array(20-e.length).join("0")+e})).reverse()}));for(n&&(s=a-Math.min(i,o)),a-=1;a>=s;){if(c[0][a]>c[1][a])return 1;if(c[0][a]===c[1][a]){if(a===s)return 0;a-=1}else if(c[0][a]1?i-1:0),a=1;a0){var a=Object.keys(r),c=s.default.find(a,(function(e){return t.isOS(e)}));if(c){var l=this.satisfies(r[c]);if(void 0!==l)return l}var u=s.default.find(a,(function(e){return t.isPlatform(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}}if(o>0){var h=Object.keys(i),f=s.default.find(h,(function(e){return t.isBrowser(e,!0)}));if(void 0!==f)return this.compareVersion(i[f])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=s.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if("string"==typeof i)return">"===e[0]||"<"===e[0]?(r=e.substr(1),"="===e[1]?(n=!0,r=e.substr(2)):t=[],">"===e[0]?t.push(1):t.push(-1)):"="===e[0]?r=e.substr(1):"~"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(s.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=l,e.exports=t.default},92:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=/version\/(\d+(\.?_?\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:"Googlebot"},r=i.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:"Opera"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\/|opios/i],describe:function(e){var t={name:"Opera"},r=i.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:"Samsung Internet for Android"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:"NAVER Whale Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:"MZ Browser"},r=i.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:"Focus"},r=i.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:"Swing"},r=i.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:"Opera Coast"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:function(e){var t={name:"Opera Touch"},r=i.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:"Yandex Browser"},r=i.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:"UC Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:"Maxthon"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:"Epiphany"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:"Puffin"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:"Sleipnir"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:"K-Meleon"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:"WeChat"},r=i.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:"Internet Explorer"},r=i.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\sedg\//i],describe:function(e){var t={name:"Microsoft Edge"},r=i.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:"Microsoft Edge"},r=i.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:"Vivaldi"},r=i.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:"SeaMonkey"},r=i.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:"Sailfish"},r=i.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:"Amazon Silk"},r=i.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:"PhantomJS"},r=i.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:"SlimerJS"},r=i.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t={name:"BlackBerry"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:"WebOS Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:"Bada"},r=i.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:"Tizen"},r=i.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:"QupZilla"},r=i.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:"Firefox"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:"Electron"},r=i.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:"Miui"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:"Chromium"},r=i.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:"Chrome"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:"Google Search"},r=i.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:"Android Browser"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:"PlayStation 4"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:"Safari"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search("\\(")?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:[/Roku\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:o.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:o.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(e){var t={name:o.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),r=i.default.getMacOSVersionName(t),n={name:o.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:o.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:o.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),r={name:o.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||i.default.getFirstMatch(/\bbb(\d+)/i,e);return{name:o.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:o.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:o.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:[/googlebot/i],describe:function(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&"Nova",r={type:o.PLATFORMS_MAP.mobile,vendor:"Huawei"};return t&&(r.model=t),r}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:o.PLATFORMS_MAP.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"blackberry"===e.getBrowserName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}}},{test:function(e){return"bada"===e.getBrowserName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"windows phone"===e.getBrowserName()},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Microsoft"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(".")[0]);return"android"===e.getOSName(!0)&&t>=3},describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(e){return"android"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"macos"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop,vendor:"Apple"}}},{test:function(e){return"windows"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(e){return"linux"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(e){return"playstation 4"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.tv}}},{test:function(e){return"roku"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:function(e){return"microsoft edge"===e.getBrowserName(!0)},describe:function(e){if(/\sedg\//i.test(e))return{name:o.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:o.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:o.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:o.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:o.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\/537\.36/i],describe:function(){return{name:o.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:o.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})},407:(e,t,r)=>{var n;function i(e){this.rand=e}if(e.exports=function(e){return n||(n=new i(null)),n.generate(e)},e.exports.Rand=i,i.prototype.generate=function(e){return this._rand(e)},i.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),r=0;r{var n=r(5409);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},2502:(e,t,r)=>{"use strict";var n=r(9717),i=r(8795).Buffer;e.exports=function(e){function t(t){var r=t.slice(0,-4),n=t.slice(-4),i=e(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(t){var r=e(t);return n.encode(i.concat([t,r],t.length+4))},decode:function(e){var r=t(n.decode(e));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(e){var r=n.decodeUnsafe(e);if(r)return t(r)}}}},7819:(e,t,r)=>{"use strict";var n=r(1330),i=r(2502);e.exports=i((function(e){var t=n("sha256").update(e).digest();return n("sha256").update(t).digest()}))},9673:(e,t,r)=>{"use strict";const n=r(2536),i=r(6341),o="function"===typeof Symbol&&"function"===typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){+e!=e&&(e=0);return c.alloc(+e)},t.INSPECT_MAX_BYTES=50;const a=2147483647;function s(e){if(e>a)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"===typeof e){if("string"===typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return d(e)}return l(e,t,r)}function l(e,t,r){if("string"===typeof e)return function(e,t){"string"===typeof t&&""!==t||(t="utf8");if(!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|m(e,t);let n=s(r);const i=n.write(e,t);i!==r&&(n=n.slice(0,i));return n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(Z(e,Uint8Array)){const t=new Uint8Array(e);return f(t.buffer,t.byteOffset,t.byteLength)}return h(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(Z(e,ArrayBuffer)||e&&Z(e.buffer,ArrayBuffer))return f(e,t,r);if("undefined"!==typeof SharedArrayBuffer&&(Z(e,SharedArrayBuffer)||e&&Z(e.buffer,SharedArrayBuffer)))return f(e,t,r);if("number"===typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);const i=function(e){if(c.isBuffer(e)){const t=0|p(e.length),r=s(t);return 0===r.length||e.copy(r,0,0,t),r}if(void 0!==e.length)return"number"!==typeof e.length||Y(e.length)?s(0):h(e);if("Buffer"===e.type&&Array.isArray(e.data))return h(e.data)}(e);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function u(e){if("number"!==typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function d(e){return u(e),s(e<0?0:0|p(e))}function h(e){const t=e.length<0?0:0|p(e.length),r=s(t);for(let n=0;n=a)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a.toString(16)+" bytes");return 0|e}function m(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Z(e,ArrayBuffer))return e.byteLength;if("string"!==typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return W(e).length;default:if(i)return n?-1:K(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){let n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return j(this,t,r);case"utf8":case"utf-8":return A(this,t,r);case"ascii":return O(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return E(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return C(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function v(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function y(e,t,r,n,i){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),Y(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"===typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:b(e,t,r,n,i);if("number"===typeof t)return t&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):b(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function b(e,t,r,n,i){let o,a=1,s=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;a=2,s/=2,c/=2,r/=2}function l(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){let n=-1;for(o=r;os&&(r=s-c),o=r;o>=0;o--){let r=!0;for(let n=0;ni&&(n=i):n=i;const o=t.length;let a;for(n>o/2&&(n=o/2),a=0;a>8,i=r%256,o.push(i),o.push(n);return o}(t,e.length-r),e,r,n)}function E(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function A(e,t,r){r=Math.min(e.length,r);const n=[];let i=t;for(;i239?4:t>223?3:t>191?2:1;if(i+a<=r){let r,n,s,c;switch(a){case 1:t<128&&(o=t);break;case 2:r=e[i+1],128===(192&r)&&(c=(31&t)<<6|63&r,c>127&&(o=c));break;case 3:r=e[i+1],n=e[i+2],128===(192&r)&&128===(192&n)&&(c=(15&t)<<12|(63&r)<<6|63&n,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:r=e[i+1],n=e[i+2],s=e[i+3],128===(192&r)&&128===(192&n)&&128===(192&s)&&(c=(15&t)<<18|(63&r)<<12|(63&n)<<6|63&s,c>65535&&c<1114112&&(o=c))}}null===o?(o=65533,a=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),i+=a}return function(e){const t=e.length;if(t<=P)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn.length?(c.isBuffer(t)||(t=c.from(t)),t.copy(n,i)):Uint8Array.prototype.set.call(n,t,i);else{if(!c.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(n,i)}i+=t.length}return n},c.byteLength=m,c.prototype._isBuffer=!0,c.prototype.swap16=function(){const e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tr&&(e+=" ... "),""},o&&(c.prototype[o]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(Z(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;let o=(i>>>=0)-(n>>>=0),a=(r>>>=0)-(t>>>=0);const s=Math.min(o,a),l=this.slice(n,i),u=e.slice(t,r);for(let c=0;c>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return w(this,e,t,r);case"utf8":case"utf-8":return x(this,e,t,r);case"ascii":case"latin1":case"binary":return _(this,e,t,r);case"base64":return k(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const P=4096;function O(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;in)&&(r=n);let i="";for(let o=t;or)throw new RangeError("Trying to access beyond buffer length")}function I(e,t,r,n,i,o){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function M(e,t,r,n,i){$(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o;let a=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,r}function L(e,t,r,n,i){$(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o>>=8,e[r+6]=o,o>>=8,e[r+5]=o,o>>=8,e[r+4]=o;let a=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=a,a>>=8,e[r+2]=a,a>>=8,e[r+1]=a,a>>=8,e[r]=a,r+8}function N(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function D(e,t,r,n,o){return t=+t,r>>>=0,o||N(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function z(e,t,r,n,o){return t=+t,r>>>=0,o||N(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){const r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||R(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||R(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||R(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||R(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||R(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=J((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+r*2**24;return BigInt(n)+(BigInt(i)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+r;return(BigInt(n)<>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||R(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o},c.prototype.readInt8=function(e,t){return e>>>=0,t||R(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||R(e,2,this.length);const r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||R(e,2,this.length);const r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||R(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||R(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=J((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=this[e+4]+256*this[e+5]+65536*this[e+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(n)<>>=0,t||R(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||R(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||R(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||R(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t>>>=0,r>>>=0,!n){I(this,e,t,r,Math.pow(2,8*r)-1,0)}let i=1,o=0;for(this[t]=255&e;++o>>=0,r>>>=0,!n){I(this,e,t,r,Math.pow(2,8*r)-1,0)}let i=r-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigUInt64LE=J((function(e,t=0){return M(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeBigUInt64BE=J((function(e,t=0){return L(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);I(this,e,t,r,n-1,-n)}let i=0,o=1,a=0;for(this[t]=255&e;++i>0)-a&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);I(this,e,t,r,n-1,-n)}let i=r-1,o=1,a=0;for(this[t+i]=255&e;--i>=0&&(o*=256);)e<0&&0===a&&0!==this[t+i+1]&&(a=1),this[t+i]=(e/o>>0)-a&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigInt64LE=J((function(e,t=0){return M(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeBigInt64BE=J((function(e,t=0){return L(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeFloatLE=function(e,t,r){return D(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return D(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return z(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return z(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(i=t;i=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function $(e,t,r,n,i,o){if(e>r||e3?0===t||t===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(o+1)}${n}`:`>= -(2${n} ** ${8*(o+1)-1}${n}) and < 2 ** ${8*(o+1)-1}${n}`:`>= ${t}${n} and <= ${r}${n}`,new B.ERR_OUT_OF_RANGE("value",i,e)}!function(e,t,r){H(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||V(t,e.length-(r+1))}(n,i,o)}function H(e,t){if("number"!==typeof e)throw new B.ERR_INVALID_ARG_TYPE(t,"number",e)}function V(e,t,r){if(Math.floor(e)!==e)throw H(e,r),new B.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new B.ERR_BUFFER_OUT_OF_BOUNDS;throw new B.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}U("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),U("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),U("ERR_OUT_OF_RANGE",(function(e,t,r){let n=`The value of "${e}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=F(String(r)):"bigint"===typeof r&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=F(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n}),RangeError);const q=/[^+/0-9A-Za-z-_]/g;function K(e,t){let r;t=t||1/0;const n=e.length;let i=null;const o=[];for(let a=0;a55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function W(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(q,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function G(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function Z(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function Y(e){return e!==e}const X=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function J(e){return"undefined"===typeof BigInt?Q:e}function Q(){throw new Error("BigInt not supported")}},1793:e=>{var t={utf8:{stringToBytes:function(e){return t.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(t.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],r=0;r{var n=r(8795).Buffer,i=r(3184).Transform,o=r(5575).I;function a(e){i.call(this),this.hashMode="string"===typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}r(9528)(a,i),a.prototype.update=function(e,t,r){"string"===typeof e&&(e=n.from(e,t));var i=this._update(e);return this.hashMode?this:(r&&(i=this._toString(i,r)),i)},a.prototype.setAutoPadding=function(){},a.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},a.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},a.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},a.prototype._transform=function(e,t,r){var n;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(i){n=i}finally{r(n)}},a.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(r){t=r}e(t)},a.prototype._finalOrDigest=function(e){var t=this.__final()||n.alloc(0);return e&&(t=this._toString(t,e,!0)),t},a.prototype._toString=function(e,t,r){if(this._decoder||(this._decoder=new o(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var n=this._decoder.write(e);return r&&(n+=this._decoder.end()),n},e.exports=a},9851:(e,t)=>{var r;!function(){"use strict";var n={}.hasOwnProperty;function i(){for(var e=[],t=0;t{"use strict";var n=r(9528),i=r(4266),o=r(7409),a=r(2308),s=r(6);function c(e){s.call(this,"digest"),this._hash=e}n(c,s),c.prototype._update=function(e){this._hash.update(e)},c.prototype._final=function(){return this._hash.digest()},e.exports=function(e){return"md5"===(e=e.toLowerCase())?new i:"rmd160"===e||"ripemd160"===e?new o:new c(a(e))}},8686:(e,t,r)=>{var n=r(4266);e.exports=function(e){return(new n).update(e).digest()}},6229:e=>{!function(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r={rotl:function(e,t){return e<>>32-t},rotr:function(e,t){return e<<32-t|e>>>t},endian:function(e){if(e.constructor==Number)return 16711935&r.rotl(e,8)|4278255360&r.rotl(e,24);for(var t=0;t0;e--)t.push(Math.floor(256*Math.random()));return t},bytesToWords:function(e){for(var t=[],r=0,n=0;r>>5]|=e[r]<<24-n%32;return t},wordsToBytes:function(e){for(var t=[],r=0;r<32*e.length;r+=8)t.push(e[r>>>5]>>>24-r%32&255);return t},bytesToHex:function(e){for(var t=[],r=0;r>>4).toString(16)),t.push((15&e[r]).toString(16));return t.join("")},hexToBytes:function(e){for(var t=[],r=0;r>>6*(3-o)&63)):r.push("=");return r.join("")},base64ToBytes:function(e){e=e.replace(/[^A-Z0-9+\/]/gi,"");for(var r=[],n=0,i=0;n>>6-2*i);return r}};e.exports=r}()},4610:e=>{"use strict";var t=function(e){return function(e){return!!e&&"object"===typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||function(e){return e.$$typeof===r}(e)}(e)};var r="function"===typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){return!1!==t.clone&&t.isMergeableObject(e)?c((r=e,Array.isArray(r)?[]:{}),e,t):e;var r}function i(e,t,r){return e.concat(t).map((function(e){return n(e,r)}))}function o(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return Object.propertyIsEnumerable.call(e,t)})):[]}(e))}function a(e,t){try{return t in e}catch(r){return!1}}function s(e,t,r){var i={};return r.isMergeableObject(e)&&o(e).forEach((function(t){i[t]=n(e[t],r)})),o(t).forEach((function(o){(function(e,t){return a(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))})(e,o)||(a(e,o)&&r.isMergeableObject(t[o])?i[o]=function(e,t){if(!t.customMerge)return c;var r=t.customMerge(e);return"function"===typeof r?r:c}(o,r)(e[o],t[o],r):i[o]=n(t[o],r))})),i}function c(e,r,o){(o=o||{}).arrayMerge=o.arrayMerge||i,o.isMergeableObject=o.isMergeableObject||t,o.cloneUnlessOtherwiseSpecified=n;var a=Array.isArray(r);return a===Array.isArray(e)?a?o.arrayMerge(e,r,o):s(e,r,o):n(r,o)}c.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,r){return c(e,r,t)}),{})};var l=c;e.exports=l},6435:(e,t,r)=>{"use strict";var n=t;n.version=r(1636).rE,n.utils=r(2229),n.rand=r(407),n.curve=r(464),n.curves=r(3426),n.ec=r(3869),n.eddsa=r(3764)},5279:(e,t,r)=>{"use strict";var n=r(3614),i=r(2229),o=i.getNAF,a=i.getJSF,s=i.assert;function c(e,t){this.type=e,this.p=new n(t.p,16),this.red=t.prime?n.red(t.prime):n.mont(this.p),this.zero=new n(0).toRed(this.red),this.one=new n(1).toRed(this.red),this.two=new n(2).toRed(this.red),this.n=t.n&&new n(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function l(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){s(e.precomputed);var r=e._getDoubles(),n=o(t,1,this._bitLength),i=(1<=a;u--)c=(c<<1)+n[u];l.push(c)}for(var d=this.jpoint(null,null,null),h=this.jpoint(null,null,null),f=i;f>0;f--){for(a=0;a=0;l--){for(var u=0;l>=0&&0===a[l];l--)u++;if(l>=0&&u++,c=c.dblp(u),l<0)break;var d=a[l];s(0!==d),c="affine"===e.type?d>0?c.mixedAdd(i[d-1>>1]):c.mixedAdd(i[-d-1>>1].neg()):d>0?c.add(i[d-1>>1]):c.add(i[-d-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,r,n,i){var s,c,l,u=this._wnafT1,d=this._wnafT2,h=this._wnafT3,f=0;for(s=0;s=1;s-=2){var m=s-1,g=s;if(1===u[m]&&1===u[g]){var v=[t[m],null,null,t[g]];0===t[m].y.cmp(t[g].y)?(v[1]=t[m].add(t[g]),v[2]=t[m].toJ().mixedAdd(t[g].neg())):0===t[m].y.cmp(t[g].y.redNeg())?(v[1]=t[m].toJ().mixedAdd(t[g]),v[2]=t[m].add(t[g].neg())):(v[1]=t[m].toJ().mixedAdd(t[g]),v[2]=t[m].toJ().mixedAdd(t[g].neg()));var y=[-3,-1,-5,-7,0,7,5,1,3],b=a(r[m],r[g]);for(f=Math.max(b[0].length,f),h[m]=new Array(f),h[g]=new Array(f),c=0;c=0;s--){for(var S=0;s>=0;){var E=!0;for(c=0;c=0&&S++,_=_.dblp(S),s<0)break;for(c=0;c0?l=d[c][A-1>>1]:A<0&&(l=d[c][-A-1>>1].neg()),_="affine"===l.type?_.mixedAdd(l):_.add(l))}}for(s=0;s=Math.ceil((e.bitLength()+1)/t.step)},l.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i{"use strict";var n=r(2229),i=r(3614),o=r(9528),a=r(5279),s=n.assert;function c(e){this.twisted=1!==(0|e.a),this.mOneA=this.twisted&&-1===(0|e.a),this.extended=this.mOneA,a.call(this,"edwards",e),this.a=new i(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new i(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new i(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),s(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1===(0|e.c)}function l(e,t,r,n,o){a.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===n?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new i(t,16),this.y=new i(r,16),this.z=n?new i(n,16):this.curve.one,this.t=o&&new i(o,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(c,a),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,r,n){return this.point(e,t,r,n)},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=this.c2.redSub(this.a.redMul(r)),o=this.one.redSub(this.c2.redMul(this.d).redMul(r)),a=n.redMul(o.redInvm()),s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");var c=s.fromRed().isOdd();return(t&&!c||!t&&c)&&(s=s.redNeg()),this.point(e,s)},c.prototype.pointFromY=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=r.redSub(this.c2),o=r.redMul(this.d).redMul(this.c2).redSub(this.a),a=n.redMul(o.redInvm());if(0===a.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),n=t.redMul(this.a).redAdd(r),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===n.cmp(i)},o(l,a.BasePoint),c.prototype.pointFromJSON=function(e){return l.fromJSON(this,e)},c.prototype.point=function(e,t,r,n){return new l(this,e,t,r,n)},l.fromJSON=function(e,t){return new l(e,t[0],t[1],t[2])},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},l.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var n=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),o=n.redAdd(t),a=o.redSub(r),s=n.redSub(t),c=i.redMul(a),l=o.redMul(s),u=i.redMul(s),d=a.redMul(o);return this.curve.point(c,l,d,u)},l.prototype._projDbl=function(){var e,t,r,n,i,o,a=this.x.redAdd(this.y).redSqr(),s=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var l=(n=this.curve._mulA(s)).redAdd(c);this.zOne?(e=a.redSub(s).redSub(c).redMul(l.redSub(this.curve.two)),t=l.redMul(n.redSub(c)),r=l.redSqr().redSub(l).redSub(l)):(i=this.z.redSqr(),o=l.redSub(i).redISub(i),e=a.redSub(s).redISub(c).redMul(o),t=l.redMul(n.redSub(c)),r=l.redMul(o))}else n=s.redAdd(c),i=this.curve._mulC(this.z).redSqr(),o=n.redSub(i).redSub(i),e=this.curve._mulC(a.redISub(n)).redMul(o),t=this.curve._mulC(n).redMul(s.redISub(c)),r=n.redMul(o);return this.curve.point(e,t,r)},l.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},l.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),n=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),o=r.redSub(t),a=i.redSub(n),s=i.redAdd(n),c=r.redAdd(t),l=o.redMul(a),u=s.redMul(c),d=o.redMul(c),h=a.redMul(s);return this.curve.point(l,u,h,d)},l.prototype._projAdd=function(e){var t,r,n=this.z.redMul(e.z),i=n.redSqr(),o=this.x.redMul(e.x),a=this.y.redMul(e.y),s=this.curve.d.redMul(o).redMul(a),c=i.redSub(s),l=i.redAdd(s),u=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(o).redISub(a),d=n.redMul(c).redMul(u);return this.curve.twisted?(t=n.redMul(l).redMul(a.redSub(this.curve._mulA(o))),r=c.redMul(l)):(t=n.redMul(l).redMul(a.redSub(o)),r=this.curve._mulC(c).redMul(l)),this.curve.point(d,t,r)},l.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},l.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},l.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},l.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},l.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},l.prototype.getX=function(){return this.normalize(),this.x.fromRed()},l.prototype.getY=function(){return this.normalize(),this.y.fromRed()},l.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},l.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),n=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(n),0===this.x.cmp(t))return!0}},l.prototype.toP=l.prototype.normalize,l.prototype.mixedAdd=l.prototype.add},464:(e,t,r)=>{"use strict";var n=t;n.base=r(5279),n.short=r(2990),n.mont=r(3660),n.edwards=r(452)},3660:(e,t,r)=>{"use strict";var n=r(3614),i=r(9528),o=r(5279),a=r(2229);function s(e){o.call(this,"mont",e),this.a=new n(e.a,16).toRed(this.red),this.b=new n(e.b,16).toRed(this.red),this.i4=new n(4).toRed(this.red).redInvm(),this.two=new n(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,r){o.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new n(t,16),this.z=new n(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}i(s,o),e.exports=s,s.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),n=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===n.redSqrt().redSqr().cmp(n)},i(c,o.BasePoint),s.prototype.decodePoint=function(e,t){return this.point(a.toArray(e,t),1)},s.prototype.point=function(e,t){return new c(this,e,t)},s.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),n=e.redMul(t),i=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(n,i)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),n=this.x.redSub(this.z),i=e.x.redAdd(e.z),o=e.x.redSub(e.z).redMul(r),a=i.redMul(n),s=t.z.redMul(o.redAdd(a).redSqr()),c=t.x.redMul(o.redISub(a).redSqr());return this.curve.point(s,c)},c.prototype.mul=function(e){for(var t=e.clone(),r=this,n=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var o=i.length-1;o>=0;o--)0===i[o]?(r=r.diffAdd(n,this),n=n.dbl()):(n=r.diffAdd(n,this),r=r.dbl());return n},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},2990:(e,t,r)=>{"use strict";var n=r(2229),i=r(3614),o=r(9528),a=r(5279),s=n.assert;function c(e){a.call(this,"short",e),this.a=new i(e.a,16).toRed(this.red),this.b=new i(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function l(e,t,r,n){a.BasePoint.call(this,e,"affine"),null===t&&null===r?(this.x=null,this.y=null,this.inf=!0):(this.x=new i(t,16),this.y=new i(r,16),n&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function u(e,t,r,n){a.BasePoint.call(this,e,"jacobian"),null===t&&null===r&&null===n?(this.x=this.curve.one,this.y=this.curve.one,this.z=new i(0)):(this.x=new i(t,16),this.y=new i(r,16),this.z=new i(n,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}o(c,a),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,r;if(e.beta)t=new i(e.beta,16).toRed(this.red);else{var n=this._getEndoRoots(this.p);t=(t=n[0].cmp(n[1])<0?n[0]:n[1]).toRed(this.red)}if(e.lambda)r=new i(e.lambda,16);else{var o=this._getEndoRoots(this.n);0===this.g.mul(o[0]).x.cmp(this.g.x.redMul(t))?r=o[0]:(r=o[1],s(0===this.g.mul(r).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:r,basis:e.basis?e.basis.map((function(e){return{a:new i(e.a,16),b:new i(e.b,16)}})):this._getEndoBasis(r)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:i.mont(e),r=new i(2).toRed(t).redInvm(),n=r.redNeg(),o=new i(3).toRed(t).redNeg().redSqrt().redMul(r);return[n.redAdd(o).fromRed(),n.redSub(o).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,r,n,o,a,s,c,l,u,d=this.n.ushrn(Math.floor(this.n.bitLength()/2)),h=e,f=this.n.clone(),p=new i(1),m=new i(0),g=new i(0),v=new i(1),y=0;0!==h.cmpn(0);){var b=f.div(h);l=f.sub(b.mul(h)),u=g.sub(b.mul(p));var w=v.sub(b.mul(m));if(!n&&l.cmp(d)<0)t=c.neg(),r=p,n=l.neg(),o=u;else if(n&&2===++y)break;c=l,f=h,h=l,g=p,p=u,v=m,m=w}a=l.neg(),s=u;var x=n.sqr().add(o.sqr());return a.sqr().add(s.sqr()).cmp(x)>=0&&(a=t,s=r),n.negative&&(n=n.neg(),o=o.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:n,b:o},{a:a,b:s}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],i=n.b.mul(e).divRound(this.n),o=r.b.neg().mul(e).divRound(this.n),a=i.mul(r.a),s=o.mul(n.a),c=i.mul(r.b),l=o.mul(n.b);return{k1:e.sub(a).sub(s),k2:c.add(l).neg()}},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var o=n.fromRed().isOdd();return(t&&!o||!t&&o)&&(n=n.redNeg()),this.point(e,n)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""},l.prototype.isInfinity=function(){return this.inf},l.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},l.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),o=i.redSqr().redISub(this.x.redAdd(this.x)),a=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,a)},l.prototype.getX=function(){return this.x.fromRed()},l.prototype.getY=function(){return this.y.fromRed()},l.prototype.mul=function(e){return e=new i(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},l.prototype.jmulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},l.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},l.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return t},l.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(u,a.BasePoint),c.prototype.jpoint=function(e,t,r){return new u(this,e,t,r)},u.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},u.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},u.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),i=e.x.redMul(r),o=this.y.redMul(t.redMul(e.z)),a=e.y.redMul(r.redMul(this.z)),s=n.redSub(i),c=o.redSub(a);if(0===s.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var l=s.redSqr(),u=l.redMul(s),d=n.redMul(l),h=c.redSqr().redIAdd(u).redISub(d).redISub(d),f=c.redMul(d.redISub(h)).redISub(o.redMul(u)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(h,f,p)},u.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),i=this.y,o=e.y.redMul(t).redMul(this.z),a=r.redSub(n),s=i.redSub(o);if(0===a.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=a.redSqr(),l=c.redMul(a),u=r.redMul(c),d=s.redSqr().redIAdd(l).redISub(u).redISub(u),h=s.redMul(u.redISub(d)).redISub(i.redMul(l)),f=this.z.redMul(a);return this.curve.jpoint(d,h,f)},u.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var r=this;for(t=0;t=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},u.prototype.inspect=function(){return this.isInfinity()?"":""},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},3426:(e,t,r)=>{"use strict";var n,i=t,o=r(2170),a=r(464),s=r(2229).assert;function c(e){"short"===e.type?this.curve=new a.short(e):"edwards"===e.type?this.curve=new a.edwards(e):this.curve=new a.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function l(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var r=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:r}),r}})}i.PresetCurve=c,l("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),l("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),l("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),l("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),l("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),l("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),l("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{n=r(7445)}catch(u){n=void 0}l("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",n]})},3869:(e,t,r)=>{"use strict";var n=r(3614),i=r(5533),o=r(2229),a=r(3426),s=r(407),c=o.assert,l=r(9150),u=r(3539);function d(e){if(!(this instanceof d))return new d(e);"string"===typeof e&&(c(Object.prototype.hasOwnProperty.call(a,e),"Unknown curve "+e),e=a[e]),e instanceof a.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}e.exports=d,d.prototype.keyPair=function(e){return new l(this,e)},d.prototype.keyFromPrivate=function(e,t){return l.fromPrivate(this,e,t)},d.prototype.keyFromPublic=function(e,t){return l.fromPublic(this,e,t)},d.prototype.genKeyPair=function(e){e||(e={});for(var t=new i({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||s(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),o=this.n.sub(new n(2));;){var a=new n(t.generate(r));if(!(a.cmp(o)>0))return a.iaddn(1),this.keyFromPrivate(a)}},d.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,r,o){"object"===typeof r&&(o=r,r=null),o||(o={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new n(e,16));for(var a=this.n.byteLength(),s=t.getPrivate().toArray("be",a),c=e.toArray("be",a),l=new i({hash:this.hash,entropy:s,nonce:c,pers:o.pers,persEnc:o.persEnc||"utf8"}),d=this.n.sub(new n(1)),h=0;;h++){var f=o.k?o.k(h):new n(l.generate(this.n.byteLength()));if(!((f=this._truncateToN(f,!0)).cmpn(1)<=0||f.cmp(d)>=0)){var p=this.g.mul(f);if(!p.isInfinity()){var m=p.getX(),g=m.umod(this.n);if(0!==g.cmpn(0)){var v=f.invm(this.n).mul(g.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var y=(p.getY().isOdd()?1:0)|(0!==m.cmp(g)?2:0);return o.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),y^=1),new u({r:g,s:v,recoveryParam:y})}}}}}},d.prototype.verify=function(e,t,r,i){e=this._truncateToN(new n(e,16)),r=this.keyFromPublic(r,i);var o=(t=new u(t,"hex")).r,a=t.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;var s,c=a.invm(this.n),l=c.mul(e).umod(this.n),d=c.mul(o).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(l,r.getPublic(),d)).isInfinity()&&s.eqXToP(o):!(s=this.g.mulAdd(l,r.getPublic(),d)).isInfinity()&&0===s.getX().umod(this.n).cmp(o)},d.prototype.recoverPubKey=function(e,t,r,i){c((3&r)===r,"The recovery param is more than two bits"),t=new u(t,i);var o=this.n,a=new n(e),s=t.r,l=t.s,d=1&r,h=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&h)throw new Error("Unable to find sencond key candinate");s=h?this.curve.pointFromX(s.add(this.curve.n),d):this.curve.pointFromX(s,d);var f=t.r.invm(o),p=o.sub(a).mul(f).umod(o),m=l.mul(f).umod(o);return this.g.mulAdd(p,s,m)},d.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new u(t,n)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var o;try{o=this.recoverPubKey(e,t,i)}catch(e){continue}if(o.eq(r))return i}throw new Error("Unable to find valid recovery factor")}},9150:(e,t,r)=>{"use strict";var n=r(3614),i=r(2229).assert;function o(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}e.exports=o,o.fromPublic=function(e,t,r){return t instanceof o?t:new o(e,{pub:t,pubEnc:r})},o.fromPrivate=function(e,t,r){return t instanceof o?t:new o(e,{priv:t,privEnc:r})},o.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},o.prototype.getPublic=function(e,t){return"string"===typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},o.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},o.prototype._importPrivate=function(e,t){this.priv=new n(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},o.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?i(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||i(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},o.prototype.derive=function(e){return e.validate()||i(e.validate(),"public point not validated"),e.mul(this.priv).getX()},o.prototype.sign=function(e,t,r){return this.ec.sign(e,this,t,r)},o.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},o.prototype.inspect=function(){return""}},3539:(e,t,r)=>{"use strict";var n=r(3614),i=r(2229),o=i.assert;function a(e,t){if(e instanceof a)return e;this._importDER(e,t)||(o(e.r&&e.s,"Signature without r or s"),this.r=new n(e.r,16),this.s=new n(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function s(){this.place=0}function c(e,t){var r=e[t.place++];if(!(128&r))return r;var n=15&r;if(0===n||n>4)return!1;for(var i=0,o=0,a=t.place;o>>=0;return!(i<=127)&&(t.place=a,i)}function l(e){for(var t=0,r=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}e.exports=a,a.prototype._importDER=function(e,t){e=i.toArray(e,t);var r=new s;if(48!==e[r.place++])return!1;var o=c(e,r);if(!1===o)return!1;if(o+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var a=c(e,r);if(!1===a)return!1;var l=e.slice(r.place,a+r.place);if(r.place+=a,2!==e[r.place++])return!1;var u=c(e,r);if(!1===u)return!1;if(e.length!==u+r.place)return!1;var d=e.slice(r.place,u+r.place);if(0===l[0]){if(!(128&l[1]))return!1;l=l.slice(1)}if(0===d[0]){if(!(128&d[1]))return!1;d=d.slice(1)}return this.r=new n(l),this.s=new n(d),this.recoveryParam=null,!0},a.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=l(t),r=l(r);!r[0]&&!(128&r[1]);)r=r.slice(1);var n=[2];u(n,t.length),(n=n.concat(t)).push(2),u(n,r.length);var o=n.concat(r),a=[48];return u(a,o.length),a=a.concat(o),i.encode(a,e)}},3764:(e,t,r)=>{"use strict";var n=r(2170),i=r(3426),o=r(2229),a=o.assert,s=o.parseBytes,c=r(8359),l=r(9746);function u(e){if(a("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof u))return new u(e);e=i[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=n.sha512}e.exports=u,u.prototype.sign=function(e,t){e=s(e);var r=this.keyFromSecret(t),n=this.hashInt(r.messagePrefix(),e),i=this.g.mul(n),o=this.encodePoint(i),a=this.hashInt(o,r.pubBytes(),e).mul(r.priv()),c=n.add(a).umod(this.curve.n);return this.makeSignature({R:i,S:c,Rencoded:o})},u.prototype.verify=function(e,t,r){e=s(e),t=this.makeSignature(t);var n=this.keyFromPublic(r),i=this.hashInt(t.Rencoded(),n.pubBytes(),e),o=this.g.mul(t.S());return t.R().add(n.pub().mul(i)).eq(o)},u.prototype.hashInt=function(){for(var e=this.hash(),t=0;t{"use strict";var n=r(2229),i=n.assert,o=n.parseBytes,a=n.cachedProperty;function s(e,t){this.eddsa=e,this._secret=o(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=o(t.pub)}s.fromPublic=function(e,t){return t instanceof s?t:new s(e,{pub:t})},s.fromSecret=function(e,t){return t instanceof s?t:new s(e,{secret:t})},s.prototype.secret=function(){return this._secret},a(s,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),a(s,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),a(s,"privBytes",(function(){var e=this.eddsa,t=this.hash(),r=e.encodingLength-1,n=t.slice(0,e.encodingLength);return n[0]&=248,n[r]&=127,n[r]|=64,n})),a(s,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),a(s,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),a(s,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),s.prototype.sign=function(e){return i(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},s.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},s.prototype.getSecret=function(e){return i(this._secret,"KeyPair is public only"),n.encode(this.secret(),e)},s.prototype.getPublic=function(e){return n.encode(this.pubBytes(),e)},e.exports=s},9746:(e,t,r)=>{"use strict";var n=r(3614),i=r(2229),o=i.assert,a=i.cachedProperty,s=i.parseBytes;function c(e,t){this.eddsa=e,"object"!==typeof t&&(t=s(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),o(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof n&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}a(c,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),a(c,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),a(c,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),a(c,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),c.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},c.prototype.toHex=function(){return i.encode(this.toBytes(),"hex").toUpperCase()},e.exports=c},7445:e=>{e.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},2229:(e,t,r)=>{"use strict";var n=t,i=r(3614),o=r(2563),a=r(4777);n.assert=o,n.toArray=a.toArray,n.zero2=a.zero2,n.toHex=a.toHex,n.encode=a.encode,n.getNAF=function(e,t,r){var n=new Array(Math.max(e.bitLength(),r)+1);n.fill(0);for(var i=1<(i>>1)-1?(i>>1)-c:c,o.isubn(s)):s=0,n[a]=s,o.iushrn(1)}return n},n.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var n,i=0,o=0;e.cmpn(-i)>0||t.cmpn(-o)>0;){var a,s,c=e.andln(3)+i&3,l=t.andln(3)+o&3;3===c&&(c=-1),3===l&&(l=-1),a=0===(1&c)?0:3!==(n=e.andln(7)+i&7)&&5!==n||2!==l?c:-c,r[0].push(a),s=0===(1&l)?0:3!==(n=t.andln(7)+o&7)&&5!==n||2!==c?l:-l,r[1].push(s),2*i===a+1&&(i=1-i),2*o===s+1&&(o=1-o),e.iushrn(1),t.iushrn(1)}return r},n.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},n.parseBytes=function(e){return"string"===typeof e?n.toArray(e,"hex"):e},n.intFromLE=function(e){return new i(e,"hex","le")}},4592:e=>{"use strict";function t(e,t){for(const r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}e.exports=function(e,r,n){if(!e||"string"===typeof e)throw new TypeError("Please pass an Error to err-code");n||(n={}),"object"===typeof r&&(n=r,r=void 0),null!=r&&(n.code=r);try{return t(e,n)}catch(i){n.message=e.message,n.stack=e.stack;const r=function(){};return r.prototype=Object.create(Object.getPrototypeOf(e)),t(new r,n)}}},6169:(e,t,r)=>{"use strict";t.So=void 0;const n=r(6681),i=r(5958);(0,i.wrapHash)(n.keccak_224),t.So=(()=>{const e=(0,i.wrapHash)(n.keccak_256);return e.create=n.keccak_256.create,e})(),(0,i.wrapHash)(n.keccak_384),(0,i.wrapHash)(n.keccak_512)},5958:function(e,t,r){"use strict";e=r.nmd(e);var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.crypto=t.wrapHash=t.equalsBytes=t.hexToBytes=t.bytesToUtf8=t.utf8ToBytes=t.createView=t.concatBytes=t.toHex=t.bytesToHex=t.assertBytes=t.assertBool=void 0;const i=n(r(8903)),o=r(7317),a=i.default.bool;t.assertBool=a;const s=i.default.bytes;t.assertBytes=s;var c=r(7317);Object.defineProperty(t,"bytesToHex",{enumerable:!0,get:function(){return c.bytesToHex}}),Object.defineProperty(t,"toHex",{enumerable:!0,get:function(){return c.bytesToHex}}),Object.defineProperty(t,"concatBytes",{enumerable:!0,get:function(){return c.concatBytes}}),Object.defineProperty(t,"createView",{enumerable:!0,get:function(){return c.createView}}),Object.defineProperty(t,"utf8ToBytes",{enumerable:!0,get:function(){return c.utf8ToBytes}}),t.bytesToUtf8=function(e){if(!(e instanceof Uint8Array))throw new TypeError("bytesToUtf8 expected Uint8Array, got "+typeof e);return(new TextDecoder).decode(e)},t.hexToBytes=function(e){const t=e.startsWith("0x")?e.substring(2):e;return(0,o.hexToBytes)(t)},t.equalsBytes=function(e,t){if(e.length!==t.length)return!1;for(let r=0;r(i.default.bytes(t),e(t))},t.crypto=(()=>{const t="object"===typeof self&&"crypto"in self?self.crypto:void 0,r="function"===typeof e.require&&e.require.bind(e);return{node:r&&!t?r("crypto"):void 0,web:t}})()},8449:e=>{"use strict";var t,r="object"===typeof Reflect?Reflect:null,n=r&&"function"===typeof r.apply?r.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};t=r&&"function"===typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var i=Number.isNaN||function(e){return e!==e};function o(){o.init.call(this)}e.exports=o,e.exports.once=function(e,t){return new Promise((function(r,n){function i(r){e.removeListener(t,o),n(r)}function o(){"function"===typeof e.removeListener&&e.removeListener("error",i),r([].slice.call(arguments))}m(e,t,o,{once:!0}),"error"!==t&&function(e,t,r){"function"===typeof e.on&&m(e,"error",t,r)}(e,i,{once:!0})}))},o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var a=10;function s(e){if("function"!==typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function c(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function l(e,t,r,n){var i,o,a,l;if(s(r),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),o=e._events),a=o[t]),void 0===a)a=o[t]=r,++e._eventsCount;else if("function"===typeof a?a=o[t]=n?[r,a]:[a,r]:n?a.unshift(r):a.push(r),(i=c(e))>0&&a.length>i&&!a.warned){a.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=e,u.type=t,u.count=a.length,l=u,console&&console.warn&&console.warn(l)}return e}function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=u.bind(n);return i.listener=r,n.wrapFn=i,i}function h(e,t,r){var n=e._events;if(void 0===n)return[];var i=n[t];return void 0===i?[]:"function"===typeof i?r?[i.listener||i]:[i]:r?function(e){for(var t=new Array(e.length),r=0;r0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var c=o[e];if(void 0===c)return!1;if("function"===typeof c)n(c,this,t);else{var l=c.length,u=p(c,l);for(r=0;r=0;o--)if(r[o]===t||r[o].listener===t){a=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},o.prototype.listeners=function(e){return h(this,e,!0)},o.prototype.rawListeners=function(e){return h(this,e,!1)},o.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):f.call(e,t)},o.prototype.listenerCount=f,o.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},7786:e=>{"use strict";e.exports=function(e,t){t||(t={}),"function"===typeof t&&(t={cmp:t});var r,n="boolean"===typeof t.cycles&&t.cycles,i=t.cmp&&(r=t.cmp,function(e){return function(t,n){var i={key:t,value:e[t]},o={key:n,value:e[n]};return r(i,o)}}),o=[];return function e(t){if(t&&t.toJSON&&"function"===typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!==typeof t)return JSON.stringify(t);var r,a;if(Array.isArray(t)){for(a="[",r=0;r{"use strict";var n=r(8795).Buffer,i=r(6885).Transform;function o(e){i.call(this),this._block=n.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}r(9528)(o,i),o.prototype._transform=function(e,t,r){var n=null;try{this.update(e,t)}catch(i){n=i}r(n)},o.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(r){t=r}e(t)},o.prototype.update=function(e,t){if(function(e,t){if(!n.isBuffer(e)&&"string"!==typeof e)throw new TypeError(t+" must be a string or a buffer")}(e,"Data"),this._finalized)throw new Error("Digest already called");n.isBuffer(e)||(e=n.from(e,t));for(var r=this._block,i=0;this._blockOffset+e.length-i>=this._blockSize;){for(var o=this._blockOffset;o0;++a)this._length[a]+=s,(s=this._length[a]/4294967296|0)>0&&(this._length[a]-=4294967296*s);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},2170:(e,t,r)=>{var n=t;n.utils=r(8084),n.common=r(6176),n.sha=r(5439),n.ripemd=r(1558),n.hmac=r(4698),n.sha1=n.sha.sha1,n.sha256=n.sha.sha256,n.sha224=n.sha.sha224,n.sha384=n.sha.sha384,n.sha512=n.sha.sha512,n.ripemd160=n.ripemd.ripemd160},6176:(e,t,r)=>{"use strict";var n=r(8084),i=r(2563);function o(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}t.BlockHash=o,o.prototype.update=function(e,t){if(e=n.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=n.join32(e,0,e.length-r,this.endian);for(var i=0;i>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,o=8;o{"use strict";var n=r(8084),i=r(2563);function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(n.toArray(t,r))}e.exports=o,o.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t{"use strict";var n=r(8084),i=r(6176),o=n.rotl32,a=n.sum32,s=n.sum32_3,c=n.sum32_4,l=i.BlockHash;function u(){if(!(this instanceof u))return new u;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function d(e,t,r,n){return e<=15?t^r^n:e<=31?t&r|~t&n:e<=47?(t|~r)^n:e<=63?t&n|r&~n:t^(r|~n)}function h(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function f(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}n.inherits(u,l),t.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var r=this.h[0],n=this.h[1],i=this.h[2],l=this.h[3],u=this.h[4],y=r,b=n,w=i,x=l,_=u,k=0;k<80;k++){var S=a(o(c(r,d(k,n,i,l),e[p[k]+t],h(k)),g[k]),u);r=u,u=l,l=o(i,10),i=n,n=S,S=a(o(c(y,d(79-k,b,w,x),e[m[k]+t],f(k)),v[k]),_),y=_,_=x,x=o(w,10),w=b,b=S}S=s(this.h[1],i,x),this.h[1]=s(this.h[2],l,_),this.h[2]=s(this.h[3],u,y),this.h[3]=s(this.h[4],r,b),this.h[4]=s(this.h[0],n,w),this.h[0]=S},u.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"little"):n.split32(this.h,"little")};var p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],m=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],g=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],v=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},5439:(e,t,r)=>{"use strict";t.sha1=r(3171),t.sha224=r(6640),t.sha256=r(1061),t.sha384=r(6193),t.sha512=r(2896)},3171:(e,t,r)=>{"use strict";var n=r(8084),i=r(6176),o=r(2027),a=n.rotl32,s=n.sum32,c=n.sum32_5,l=o.ft_1,u=i.BlockHash,d=[1518500249,1859775393,2400959708,3395469782];function h(){if(!(this instanceof h))return new h;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}n.inherits(h,u),e.exports=h,h.blockSize=512,h.outSize=160,h.hmacStrength=80,h.padLength=64,h.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(8084),i=r(1061);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}n.inherits(o,i),e.exports=o,o.blockSize=512,o.outSize=224,o.hmacStrength=192,o.padLength=64,o.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,7),"big"):n.split32(this.h.slice(0,7),"big")}},1061:(e,t,r)=>{"use strict";var n=r(8084),i=r(6176),o=r(2027),a=r(2563),s=n.sum32,c=n.sum32_4,l=n.sum32_5,u=o.ch32,d=o.maj32,h=o.s0_256,f=o.s1_256,p=o.g0_256,m=o.g1_256,g=i.BlockHash,v=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function y(){if(!(this instanceof y))return new y;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=v,this.W=new Array(64)}n.inherits(y,g),e.exports=y,y.blockSize=512,y.outSize=256,y.hmacStrength=192,y.padLength=64,y.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(8084),i=r(2896);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}n.inherits(o,i),e.exports=o,o.blockSize=1024,o.outSize=384,o.hmacStrength=192,o.padLength=128,o.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,12),"big"):n.split32(this.h.slice(0,12),"big")}},2896:(e,t,r)=>{"use strict";var n=r(8084),i=r(6176),o=r(2563),a=n.rotr64_hi,s=n.rotr64_lo,c=n.shr64_hi,l=n.shr64_lo,u=n.sum64,d=n.sum64_hi,h=n.sum64_lo,f=n.sum64_4_hi,p=n.sum64_4_lo,m=n.sum64_5_hi,g=n.sum64_5_lo,v=i.BlockHash,y=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function b(){if(!(this instanceof b))return new b;v.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=y,this.W=new Array(160)}function w(e,t,r,n,i){var o=e&r^~e&i;return o<0&&(o+=4294967296),o}function x(e,t,r,n,i,o){var a=t&n^~t&o;return a<0&&(a+=4294967296),a}function _(e,t,r,n,i){var o=e&r^e&i^r&i;return o<0&&(o+=4294967296),o}function k(e,t,r,n,i,o){var a=t&n^t&o^n&o;return a<0&&(a+=4294967296),a}function S(e,t){var r=a(e,t,28)^a(t,e,2)^a(t,e,7);return r<0&&(r+=4294967296),r}function E(e,t){var r=s(e,t,28)^s(t,e,2)^s(t,e,7);return r<0&&(r+=4294967296),r}function A(e,t){var r=a(e,t,14)^a(e,t,18)^a(t,e,9);return r<0&&(r+=4294967296),r}function P(e,t){var r=s(e,t,14)^s(e,t,18)^s(t,e,9);return r<0&&(r+=4294967296),r}function O(e,t){var r=a(e,t,1)^a(e,t,8)^c(e,t,7);return r<0&&(r+=4294967296),r}function T(e,t){var r=s(e,t,1)^s(e,t,8)^l(e,t,7);return r<0&&(r+=4294967296),r}function j(e,t){var r=a(e,t,19)^a(t,e,29)^c(e,t,6);return r<0&&(r+=4294967296),r}function C(e,t){var r=s(e,t,19)^s(t,e,29)^l(e,t,6);return r<0&&(r+=4294967296),r}n.inherits(b,v),e.exports=b,b.blockSize=1024,b.outSize=512,b.hmacStrength=192,b.padLength=128,b.prototype._prepareBlock=function(e,t){for(var r=this.W,n=0;n<32;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(8084).rotr32;function i(e,t,r){return e&t^~e&r}function o(e,t,r){return e&t^e&r^t&r}function a(e,t,r){return e^t^r}t.ft_1=function(e,t,r,n){return 0===e?i(t,r,n):1===e||3===e?a(t,r,n):2===e?o(t,r,n):void 0},t.ch32=i,t.maj32=o,t.p32=a,t.s0_256=function(e){return n(e,2)^n(e,13)^n(e,22)},t.s1_256=function(e){return n(e,6)^n(e,11)^n(e,25)},t.g0_256=function(e){return n(e,7)^n(e,18)^e>>>3},t.g1_256=function(e){return n(e,17)^n(e,19)^e>>>10}},8084:(e,t,r)=>{"use strict";var n=r(2563),i=r(9528);function o(e,t){return 55296===(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320===(64512&e.charCodeAt(t+1)))}function a(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function s(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"===typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!==0&&(e="0"+e),i=0;i>6|192,r[n++]=63&a|128):o(e,i)?(a=65536+((1023&a)<<10)+(1023&e.charCodeAt(++i)),r[n++]=a>>18|240,r[n++]=a>>12&63|128,r[n++]=a>>6&63|128,r[n++]=63&a|128):(r[n++]=a>>12|224,r[n++]=a>>6&63|128,r[n++]=63&a|128)}else for(i=0;i>>0}return a},t.split32=function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=o>>>16&255,r[i+2]=o>>>8&255,r[i+3]=255&o):(r[i+3]=o>>>24,r[i+2]=o>>>16&255,r[i+1]=o>>>8&255,r[i]=255&o)}return r},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,r){return e+t+r>>>0},t.sum32_4=function(e,t,r,n){return e+t+r+n>>>0},t.sum32_5=function(e,t,r,n,i){return e+t+r+n+i>>>0},t.sum64=function(e,t,r,n){var i=e[t],o=n+e[t+1]>>>0,a=(o>>0,e[t+1]=o},t.sum64_hi=function(e,t,r,n){return(t+n>>>0>>0},t.sum64_lo=function(e,t,r,n){return t+n>>>0},t.sum64_4_hi=function(e,t,r,n,i,o,a,s){var c=0,l=t;return c+=(l=l+n>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,r,n,i,o,a,s){return t+n+o+s>>>0},t.sum64_5_hi=function(e,t,r,n,i,o,a,s,c,l){var u=0,d=t;return u+=(d=d+n>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,r,n,i,o,a,s,c,l){return t+n+o+s+l>>>0},t.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},t.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},t.shr64_hi=function(e,t,r){return e>>>r},t.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},5533:(e,t,r)=>{"use strict";var n=r(2170),i=r(4777),o=r(2563);function a(e){if(!(this instanceof a))return new a(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=i.toArray(e.entropy,e.entropyEnc||"hex"),r=i.toArray(e.nonce,e.nonceEnc||"hex"),n=i.toArray(e.pers,e.persEnc||"hex");o(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}e.exports=a,a.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},a.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!==typeof t&&(n=r,r=t,t=null),r&&(r=i.toArray(r,n||"hex"),this._update(r));for(var o=[];o.length{"use strict";var n=r(1770),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},a={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function c(e){return n.isMemo(e)?a:s[e.$$typeof]||i}s[n.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[n.Memo]=a;var l=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,h=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(t,r,n){if("string"!==typeof r){if(p){var i=f(r);i&&i!==p&&e(t,i,n)}var a=u(r);d&&(a=a.concat(d(r)));for(var s=c(t),m=c(r),g=0;g{"use strict";var r="function"===typeof Symbol&&Symbol.for,n=r?Symbol.for("react.element"):60103,i=r?Symbol.for("react.portal"):60106,o=r?Symbol.for("react.fragment"):60107,a=r?Symbol.for("react.strict_mode"):60108,s=r?Symbol.for("react.profiler"):60114,c=r?Symbol.for("react.provider"):60109,l=r?Symbol.for("react.context"):60110,u=r?Symbol.for("react.async_mode"):60111,d=r?Symbol.for("react.concurrent_mode"):60111,h=r?Symbol.for("react.forward_ref"):60112,f=r?Symbol.for("react.suspense"):60113,p=r?Symbol.for("react.suspense_list"):60120,m=r?Symbol.for("react.memo"):60115,g=r?Symbol.for("react.lazy"):60116,v=r?Symbol.for("react.block"):60121,y=r?Symbol.for("react.fundamental"):60117,b=r?Symbol.for("react.responder"):60118,w=r?Symbol.for("react.scope"):60119;function x(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case u:case d:case o:case s:case a:case f:return e;default:switch(e=e&&e.$$typeof){case l:case h:case g:case m:case c:return e;default:return t}}case i:return t}}}function _(e){return x(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=l,t.ContextProvider=c,t.Element=n,t.ForwardRef=h,t.Fragment=o,t.Lazy=g,t.Memo=m,t.Portal=i,t.Profiler=s,t.StrictMode=a,t.Suspense=f,t.isAsyncMode=function(e){return _(e)||x(e)===u},t.isConcurrentMode=_,t.isContextConsumer=function(e){return x(e)===l},t.isContextProvider=function(e){return x(e)===c},t.isElement=function(e){return"object"===typeof e&&null!==e&&e.$$typeof===n},t.isForwardRef=function(e){return x(e)===h},t.isFragment=function(e){return x(e)===o},t.isLazy=function(e){return x(e)===g},t.isMemo=function(e){return x(e)===m},t.isPortal=function(e){return x(e)===i},t.isProfiler=function(e){return x(e)===s},t.isStrictMode=function(e){return x(e)===a},t.isSuspense=function(e){return x(e)===f},t.isValidElementType=function(e){return"string"===typeof e||"function"===typeof e||e===o||e===d||e===s||e===a||e===f||e===p||"object"===typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===m||e.$$typeof===c||e.$$typeof===l||e.$$typeof===h||e.$$typeof===y||e.$$typeof===b||e.$$typeof===w||e.$$typeof===v)},t.typeOf=x},1770:(e,t,r)=>{"use strict";e.exports=r(9430)},6341:(e,t)=>{t.read=function(e,t,r,n,i){var o,a,s=8*i-n-1,c=(1<>1,u=-7,d=r?i-1:0,h=r?-1:1,f=e[t+d];for(d+=h,o=f&(1<<-u)-1,f>>=-u,u+=s;u>0;o=256*o+e[t+d],d+=h,u-=8);for(a=o&(1<<-u)-1,o>>=-u,u+=n;u>0;a=256*a+e[t+d],d+=h,u-=8);if(0===o)o=1-l;else{if(o===c)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,n),o-=l}return(f?-1:1)*a*Math.pow(2,o-n)},t.write=function(e,t,r,n,i,o){var a,s,c,l=8*o-i-1,u=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:o-1,p=n?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=u):(a=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-a))<1&&(a--,c*=2),(t+=a+d>=1?h/c:h*Math.pow(2,1-d))*c>=2&&(a++,c/=2),a+d>=u?(s=0,a=u):a+d>=1?(s=(t*c-1)*Math.pow(2,i),a+=d):(s=t*Math.pow(2,d-1)*Math.pow(2,i),a=0));i>=8;e[r+f]=255&s,f+=p,s/=256,i-=8);for(a=a<0;e[r+f]=255&a,f+=p,a/=256,l-=8);e[r+f-p]|=128*m}},9528:e=>{"function"===typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},8904:e=>{function t(e){return!!e.constructor&&"function"===typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}e.exports=function(e){return null!=e&&(t(e)||function(e){return"function"===typeof e.readFloatLE&&"function"===typeof e.slice&&t(e.slice(0,0))}(e)||!!e._isBuffer)}},1923:(e,t,r)=>{"use strict";var n="undefined"!==typeof JSON?JSON:r(8169),i=Array.isArray||function(e){return"[object Array]"==={}.toString.call(e)},o=Object.keys||function(e){var t=Object.prototype.hasOwnProperty||function(){return!0},r=[];for(var n in e)t.call(e,n)&&r.push(n);return r};e.exports=function(e,t){t||(t={}),"function"===typeof t&&(t={cmp:t});var r=t.space||"";"number"===typeof r&&(r=Array(r+1).join(" "));var a,s="boolean"===typeof t.cycles&&t.cycles,c=t.replacer||function(e,t){return t},l=t.cmp&&(a=t.cmp,function(e){return function(t,r){var n={key:t,value:e[t]},i={key:r,value:e[r]};return a(n,i)}}),u=[];return function e(t,a,d,h){var f=r?"\n"+new Array(h+1).join(r):"",p=r?": ":":";if(d&&d.toJSON&&"function"===typeof d.toJSON&&(d=d.toJSON()),void 0!==(d=c.call(t,a,d))){if("object"!==typeof d||null===d)return n.stringify(d);if(i(d)){for(var m=[],g=0;g{"use strict";t.parse=r(6070),t.stringify=r(5e3)},6070:e=>{"use strict";var t,r,n,i={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"};function o(e){throw{name:"SyntaxError",message:e,at:t,text:n}}function a(e){return e&&e!==r&&o("Expected '"+e+"' instead of '"+r+"'"),r=n.charAt(t),t+=1,r}function s(){var e,t="";for("-"===r&&(t="-",a("-"));r>="0"&&r<="9";)t+=r,a();if("."===r)for(t+=".";a()&&r>="0"&&r<="9";)t+=r;if("e"===r||"E"===r)for(t+=r,a(),"-"!==r&&"+"!==r||(t+=r,a());r>="0"&&r<="9";)t+=r,a();return e=Number(t),isFinite(e)||o("Bad number"),e}function c(){var e,t,n,s="";if('"'===r)for(;a();){if('"'===r)return a(),s;if("\\"===r)if(a(),"u"===r){for(n=0,t=0;t<4&&(e=parseInt(a(),16),isFinite(e));t+=1)n=16*n+e;s+=String.fromCharCode(n)}else{if("string"!==typeof i[r])break;s+=i[r]}else s+=r}o("Bad string")}function l(){for(;r&&r<=" ";)a()}function u(){switch(l(),r){case"{":return function(){var e,t={};if("{"===r){if(a("{"),l(),"}"===r)return a("}"),t;for(;r;){if(e=c(),l(),a(":"),Object.prototype.hasOwnProperty.call(t,e)&&o('Duplicate key "'+e+'"'),t[e]=u(),l(),"}"===r)return a("}"),t;a(","),l()}}o("Bad object")}();case"[":return function(){var e=[];if("["===r){if(a("["),l(),"]"===r)return a("]"),e;for(;r;){if(e.push(u()),l(),"]"===r)return a("]"),e;a(","),l()}}o("Bad array")}();case'"':return c();case"-":return s();default:return r>="0"&&r<="9"?s():function(){switch(r){case"t":return a("t"),a("r"),a("u"),a("e"),!0;case"f":return a("f"),a("a"),a("l"),a("s"),a("e"),!1;case"n":return a("n"),a("u"),a("l"),a("l"),null;default:o("Unexpected '"+r+"'")}}()}}e.exports=function(e,i){var a;return n=e,t=0,r=" ",a=u(),l(),r&&o("Syntax error"),"function"===typeof i?function e(t,r){var n,o,a=t[r];if(a&&"object"===typeof a)for(n in u)Object.prototype.hasOwnProperty.call(a,n)&&("undefined"===typeof(o=e(a,n))?delete a[n]:a[n]=o);return i.call(t,r,a)}({"":a},""):a}},5e3:e=>{"use strict";var t,r,n,i=/[\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,o={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function a(e){return i.lastIndex=0,i.test(e)?'"'+e.replace(i,(function(e){var t=o[e];return"string"===typeof t?t:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}))+'"':'"'+e+'"'}function s(e,i){var o,c,l,u,d,h=t,f=i[e];switch(f&&"object"===typeof f&&"function"===typeof f.toJSON&&(f=f.toJSON(e)),"function"===typeof n&&(f=n.call(i,e,f)),typeof f){case"string":return a(f);case"number":return isFinite(f)?String(f):"null";case"boolean":case"null":return String(f);case"object":if(!f)return"null";if(t+=r,d=[],"[object Array]"===Object.prototype.toString.apply(f)){for(u=f.length,o=0;o{function t(e,t){e.onload=function(){this.onerror=this.onload=null,t(null,e)},e.onerror=function(){this.onerror=this.onload=null,t(new Error("Failed to load "+this.src),e)}}function r(e,t){e.onreadystatechange=function(){"complete"!=this.readyState&&"loaded"!=this.readyState||(this.onreadystatechange=null,t(null,e))}}e.exports=function(e,n,i){var o=document.head||document.getElementsByTagName("head")[0],a=document.createElement("script");"function"===typeof n&&(i=n,n={}),n=n||{},i=i||function(){},a.type=n.type||"text/javascript",a.charset=n.charset||"utf8",a.async=!("async"in n)||!!n.async,a.src=e,n.attrs&&function(e,t){for(var r in t)e.setAttribute(r,t[r])}(a,n.attrs),n.text&&(a.text=""+n.text),("onload"in a?t:r)(a,i),a.onload||t(a,i),o.appendChild(a)}},5480:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=1,o=2,a=9007199254740991,s="[object Arguments]",c="[object Array]",l="[object AsyncFunction]",u="[object Boolean]",d="[object Date]",h="[object Error]",f="[object Function]",p="[object GeneratorFunction]",m="[object Map]",g="[object Number]",v="[object Null]",y="[object Object]",b="[object Promise]",w="[object Proxy]",x="[object RegExp]",_="[object Set]",k="[object String]",S="[object Symbol]",E="[object Undefined]",A="[object WeakMap]",P="[object ArrayBuffer]",O="[object DataView]",T=/^\[object .+?Constructor\]$/,j=/^(?:0|[1-9]\d*)$/,C={};C["[object Float32Array]"]=C["[object Float64Array]"]=C["[object Int8Array]"]=C["[object Int16Array]"]=C["[object Int32Array]"]=C["[object Uint8Array]"]=C["[object Uint8ClampedArray]"]=C["[object Uint16Array]"]=C["[object Uint32Array]"]=!0,C[s]=C[c]=C[P]=C[u]=C[O]=C[d]=C[h]=C[f]=C[m]=C[g]=C[y]=C[x]=C[_]=C[k]=C[A]=!1;var R="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,I="object"==typeof self&&self&&self.Object===Object&&self,M=R||I||Function("return this")(),L=t&&!t.nodeType&&t,N=L&&e&&!e.nodeType&&e,D=N&&N.exports===L,z=D&&R.process,B=function(){try{return z&&z.binding&&z.binding("util")}catch(e){}}(),U=B&&B.isTypedArray;function F(e,t){for(var r=-1,n=null==e?0:e.length;++rl))return!1;var d=s.get(e);if(d&&s.get(t))return d==t;var h=-1,f=!0,p=r&o?new Ae:void 0;for(s.set(e,t),s.set(t,e);++h-1},Se.prototype.set=function(e,t){var r=this.__data__,n=Te(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Ee.prototype.clear=function(){this.size=0,this.__data__={hash:new ke,map:new(de||Se),string:new ke}},Ee.prototype.delete=function(e){var t=De(this,e).delete(e);return this.size-=t?1:0,t},Ee.prototype.get=function(e){return De(this,e).get(e)},Ee.prototype.has=function(e){return De(this,e).has(e)},Ee.prototype.set=function(e,t){var r=De(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Ae.prototype.add=Ae.prototype.push=function(e){return this.__data__.set(e,n),this},Ae.prototype.has=function(e){return this.__data__.has(e)},Pe.prototype.clear=function(){this.__data__=new Se,this.size=0},Pe.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Pe.prototype.get=function(e){return this.__data__.get(e)},Pe.prototype.has=function(e){return this.__data__.has(e)},Pe.prototype.set=function(e,t){var r=this.__data__;if(r instanceof Se){var n=r.__data__;if(!de||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Ee(n)}return r.set(e,t),this.size=r.size,this};var Be=se?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,i=0,o=[];++r-1&&e%1==0&&e-1&&e%1==0&&e<=a}function Ze(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ye(e){return null!=e&&"object"==typeof e}var Xe=U?function(e){return function(t){return e(t)}}(U):function(e){return Ye(e)&&Ge(e.length)&&!!C[je(e)]};function Je(e){return null!=(t=e)&&Ge(t.length)&&!We(t)?Oe(e):Me(e);var t}e.exports=function(e,t){return Re(e,t)}},2020:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=9007199254740991,o="[object Arguments]",a="[object AsyncFunction]",s="[object Function]",c="[object GeneratorFunction]",l="[object Null]",u="[object Object]",d="[object Proxy]",h="[object Undefined]",f=/^\[object .+?Constructor\]$/,p=/^(?:0|[1-9]\d*)$/,m={};m["[object Float32Array]"]=m["[object Float64Array]"]=m["[object Int8Array]"]=m["[object Int16Array]"]=m["[object Int32Array]"]=m["[object Uint8Array]"]=m["[object Uint8ClampedArray]"]=m["[object Uint16Array]"]=m["[object Uint32Array]"]=!0,m[o]=m["[object Array]"]=m["[object ArrayBuffer]"]=m["[object Boolean]"]=m["[object DataView]"]=m["[object Date]"]=m["[object Error]"]=m[s]=m["[object Map]"]=m["[object Number]"]=m[u]=m["[object RegExp]"]=m["[object Set]"]=m["[object String]"]=m["[object WeakMap]"]=!1;var g="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,v="object"==typeof self&&self&&self.Object===Object&&self,y=g||v||Function("return this")(),b=t&&!t.nodeType&&t,w=b&&e&&!e.nodeType&&e,x=w&&w.exports===b,_=x&&g.process,k=function(){try{var e=w&&w.require&&w.require("util").types;return e||_&&_.binding&&_.binding("util")}catch(t){}}(),S=k&&k.isTypedArray;var E,A,P=Array.prototype,O=Function.prototype,T=Object.prototype,j=y["__core-js_shared__"],C=O.toString,R=T.hasOwnProperty,I=function(){var e=/[^.]+$/.exec(j&&j.keys&&j.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),M=T.toString,L=C.call(Object),N=RegExp("^"+C.call(R).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=x?y.Buffer:void 0,z=y.Symbol,B=y.Uint8Array,U=D?D.allocUnsafe:void 0,F=(E=Object.getPrototypeOf,A=Object,function(e){return E(A(e))}),$=Object.create,H=T.propertyIsEnumerable,V=P.splice,q=z?z.toStringTag:void 0,K=function(){try{var e=ye(Object,"defineProperty");return e({},"",{}),e}catch(t){}}(),W=D?D.isBuffer:void 0,G=Math.max,Z=Date.now,Y=ye(y,"Map"),X=ye(Object,"create"),J=function(){function e(){}return function(t){if(!je(t))return{};if($)return $(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function Q(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t-1},ee.prototype.set=function(e,t){var r=this.__data__,n=ae(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},te.prototype.clear=function(){this.size=0,this.__data__={hash:new Q,map:new(Y||ee),string:new Q}},te.prototype.delete=function(e){var t=ve(this,e).delete(e);return this.size-=t?1:0,t},te.prototype.get=function(e){return ve(this,e).get(e)},te.prototype.has=function(e){return ve(this,e).has(e)},te.prototype.set=function(e,t){var r=ve(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},re.prototype.clear=function(){this.__data__=new ee,this.size=0},re.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},re.prototype.get=function(e){return this.__data__.get(e)},re.prototype.has=function(e){return this.__data__.has(e)},re.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ee){var n=r.__data__;if(!Y||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new te(n)}return r.set(e,t),this.size=r.size,this};var ce,le=function(e,t,r){for(var n=-1,i=Object(e),o=r(e),a=o.length;a--;){var s=o[ce?a:++n];if(!1===t(i[s],s,i))break}return e};function ue(e){return null==e?void 0===e?h:l:q&&q in Object(e)?function(e){var t=R.call(e,q),r=e[q];try{e[q]=void 0;var n=!0}catch(o){}var i=M.call(e);n&&(t?e[q]=r:delete e[q]);return i}(e):function(e){return M.call(e)}(e)}function de(e){return Ce(e)&&ue(e)==o}function he(e){return!(!je(e)||function(e){return!!I&&I in e}(e))&&(Oe(e)?N:f).test(function(e){if(null!=e){try{return C.call(e)}catch(t){}try{return e+""}catch(t){}}return""}(e))}function fe(e){if(!je(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=we(e),r=[];for(var n in e)("constructor"!=n||!t&&R.call(e,n))&&r.push(n);return r}function pe(e,t,r,n,i){e!==t&&le(t,(function(o,a){if(i||(i=new re),je(o))!function(e,t,r,n,i,o,a){var s=xe(e,r),c=xe(t,r),l=a.get(c);if(l)return void ie(e,r,l);var d=o?o(s,c,r+"",e,t,a):void 0,h=void 0===d;if(h){var f=Ee(c),p=!f&&Pe(c),m=!f&&!p&&Re(c);d=c,f||p||m?Ee(s)?d=s:Ce(g=s)&&Ae(g)?d=function(e,t){var r=-1,n=e.length;t||(t=Array(n));for(;++r-1&&e%1==0&&e0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(ge);function ke(e,t){return e===t||e!==e&&t!==t}var Se=de(function(){return arguments}())?de:function(e){return Ce(e)&&R.call(e,"callee")&&!H.call(e,"callee")},Ee=Array.isArray;function Ae(e){return null!=e&&Te(e.length)&&!Oe(e)}var Pe=W||function(){return!1};function Oe(e){if(!je(e))return!1;var t=ue(e);return t==s||t==c||t==a||t==d}function Te(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=i}function je(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ce(e){return null!=e&&"object"==typeof e}var Re=S?function(e){return function(t){return e(t)}}(S):function(e){return Ce(e)&&Te(e.length)&&!!m[ue(e)]};function Ie(e){return Ae(e)?ne(e,!0):fe(e)}var Me,Le=(Me=function(e,t,r){pe(e,t,r)},me((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,o=n>2?t[2]:void 0;for(i=Me.length>3&&"function"==typeof i?(n--,i):void 0,o&&function(e,t,r){if(!je(r))return!1;var n=typeof t;return!!("number"==n?Ae(r)&&be(t,r.length):"string"==n&&t in r)&&ke(r[t],e)}(t[0],t[1],o)&&(i=n<3?void 0:i,n=1),e=Object(e);++r{e=r.nmd(e);var n="__lodash_hash_undefined__",i=9007199254740991,o="[object Arguments]",a="[object AsyncFunction]",s="[object Function]",c="[object GeneratorFunction]",l="[object Null]",u="[object Object]",d="[object Proxy]",h="[object Undefined]",f=/^\[object .+?Constructor\]$/,p=/^(?:0|[1-9]\d*)$/,m={};m["[object Float32Array]"]=m["[object Float64Array]"]=m["[object Int8Array]"]=m["[object Int16Array]"]=m["[object Int32Array]"]=m["[object Uint8Array]"]=m["[object Uint8ClampedArray]"]=m["[object Uint16Array]"]=m["[object Uint32Array]"]=!0,m[o]=m["[object Array]"]=m["[object ArrayBuffer]"]=m["[object Boolean]"]=m["[object DataView]"]=m["[object Date]"]=m["[object Error]"]=m[s]=m["[object Map]"]=m["[object Number]"]=m[u]=m["[object RegExp]"]=m["[object Set]"]=m["[object String]"]=m["[object WeakMap]"]=!1;var g="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,v="object"==typeof self&&self&&self.Object===Object&&self,y=g||v||Function("return this")(),b=t&&!t.nodeType&&t,w=b&&e&&!e.nodeType&&e,x=w&&w.exports===b,_=x&&g.process,k=function(){try{var e=w&&w.require&&w.require("util").types;return e||_&&_.binding&&_.binding("util")}catch(t){}}(),S=k&&k.isTypedArray;var E,A,P=Array.prototype,O=Function.prototype,T=Object.prototype,j=y["__core-js_shared__"],C=O.toString,R=T.hasOwnProperty,I=function(){var e=/[^.]+$/.exec(j&&j.keys&&j.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),M=T.toString,L=C.call(Object),N=RegExp("^"+C.call(R).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=x?y.Buffer:void 0,z=y.Symbol,B=y.Uint8Array,U=D?D.allocUnsafe:void 0,F=(E=Object.getPrototypeOf,A=Object,function(e){return E(A(e))}),$=Object.create,H=T.propertyIsEnumerable,V=P.splice,q=z?z.toStringTag:void 0,K=function(){try{var e=ye(Object,"defineProperty");return e({},"",{}),e}catch(t){}}(),W=D?D.isBuffer:void 0,G=Math.max,Z=Date.now,Y=ye(y,"Map"),X=ye(Object,"create"),J=function(){function e(){}return function(t){if(!je(t))return{};if($)return $(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function Q(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t-1},ee.prototype.set=function(e,t){var r=this.__data__,n=ae(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},te.prototype.clear=function(){this.size=0,this.__data__={hash:new Q,map:new(Y||ee),string:new Q}},te.prototype.delete=function(e){var t=ve(this,e).delete(e);return this.size-=t?1:0,t},te.prototype.get=function(e){return ve(this,e).get(e)},te.prototype.has=function(e){return ve(this,e).has(e)},te.prototype.set=function(e,t){var r=ve(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},re.prototype.clear=function(){this.__data__=new ee,this.size=0},re.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},re.prototype.get=function(e){return this.__data__.get(e)},re.prototype.has=function(e){return this.__data__.has(e)},re.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ee){var n=r.__data__;if(!Y||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new te(n)}return r.set(e,t),this.size=r.size,this};var ce,le=function(e,t,r){for(var n=-1,i=Object(e),o=r(e),a=o.length;a--;){var s=o[ce?a:++n];if(!1===t(i[s],s,i))break}return e};function ue(e){return null==e?void 0===e?h:l:q&&q in Object(e)?function(e){var t=R.call(e,q),r=e[q];try{e[q]=void 0;var n=!0}catch(o){}var i=M.call(e);n&&(t?e[q]=r:delete e[q]);return i}(e):function(e){return M.call(e)}(e)}function de(e){return Ce(e)&&ue(e)==o}function he(e){return!(!je(e)||function(e){return!!I&&I in e}(e))&&(Oe(e)?N:f).test(function(e){if(null!=e){try{return C.call(e)}catch(t){}try{return e+""}catch(t){}}return""}(e))}function fe(e){if(!je(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=we(e),r=[];for(var n in e)("constructor"!=n||!t&&R.call(e,n))&&r.push(n);return r}function pe(e,t,r,n,i){e!==t&&le(t,(function(o,a){if(i||(i=new re),je(o))!function(e,t,r,n,i,o,a){var s=xe(e,r),c=xe(t,r),l=a.get(c);if(l)return void ie(e,r,l);var d=o?o(s,c,r+"",e,t,a):void 0,h=void 0===d;if(h){var f=Ee(c),p=!f&&Pe(c),m=!f&&!p&&Re(c);d=c,f||p||m?Ee(s)?d=s:Ce(g=s)&&Ae(g)?d=function(e,t){var r=-1,n=e.length;t||(t=Array(n));for(;++r-1&&e%1==0&&e0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(ge);function ke(e,t){return e===t||e!==e&&t!==t}var Se=de(function(){return arguments}())?de:function(e){return Ce(e)&&R.call(e,"callee")&&!H.call(e,"callee")},Ee=Array.isArray;function Ae(e){return null!=e&&Te(e.length)&&!Oe(e)}var Pe=W||function(){return!1};function Oe(e){if(!je(e))return!1;var t=ue(e);return t==s||t==c||t==a||t==d}function Te(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=i}function je(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ce(e){return null!=e&&"object"==typeof e}var Re=S?function(e){return function(t){return e(t)}}(S):function(e){return Ce(e)&&Te(e.length)&&!!m[ue(e)]};function Ie(e){return Ae(e)?ne(e,!0):fe(e)}var Me,Le=(Me=function(e,t,r,n){pe(e,t,r,n)},me((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,o=n>2?t[2]:void 0;for(i=Me.length>3&&"function"==typeof i?(n--,i):void 0,o&&function(e,t,r){if(!je(r))return!1;var n=typeof t;return!!("number"==n?Ae(r)&&be(t,r.length):"string"==n&&t in r)&&ke(r[t],e)}(t[0],t[1],o)&&(i=n<3?void 0:i,n=1),e=Object(e);++r"']/g,Y=RegExp(G.source),X=RegExp(Z.source),J=/<%-([\s\S]+?)%>/g,Q=/<%([\s\S]+?)%>/g,ee=/<%=([\s\S]+?)%>/g,te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,re=/^\w*$/,ne=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,oe=RegExp(ie.source),ae=/^\s+/,se=/\s/,ce=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,le=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,de=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,he=/[()=,{}\[\]\/\s]/,fe=/\\(\\)?/g,pe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,me=/\w*$/,ge=/^[-+]0x[0-9a-f]+$/i,ve=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,be=/^0o[0-7]+$/i,we=/^(?:0|[1-9]\d*)$/,xe=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,_e=/($^)/,ke=/['\n\r\u2028\u2029\\]/g,Se="\\ud800-\\udfff",Ee="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ae="\\u2700-\\u27bf",Pe="a-z\\xdf-\\xf6\\xf8-\\xff",Oe="A-Z\\xc0-\\xd6\\xd8-\\xde",Te="\\ufe0e\\ufe0f",je="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ce="['\u2019]",Re="["+Se+"]",Ie="["+je+"]",Me="["+Ee+"]",Le="\\d+",Ne="["+Ae+"]",De="["+Pe+"]",ze="[^"+Se+je+Le+Ae+Pe+Oe+"]",Be="\\ud83c[\\udffb-\\udfff]",Ue="[^"+Se+"]",Fe="(?:\\ud83c[\\udde6-\\uddff]){2}",$e="[\\ud800-\\udbff][\\udc00-\\udfff]",He="["+Oe+"]",Ve="\\u200d",qe="(?:"+De+"|"+ze+")",Ke="(?:"+He+"|"+ze+")",We="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Ge="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Ze="(?:"+Me+"|"+Be+")"+"?",Ye="["+Te+"]?",Xe=Ye+Ze+("(?:"+Ve+"(?:"+[Ue,Fe,$e].join("|")+")"+Ye+Ze+")*"),Je="(?:"+[Ne,Fe,$e].join("|")+")"+Xe,Qe="(?:"+[Ue+Me+"?",Me,Fe,$e,Re].join("|")+")",et=RegExp(Ce,"g"),tt=RegExp(Me,"g"),rt=RegExp(Be+"(?="+Be+")|"+Qe+Xe,"g"),nt=RegExp([He+"?"+De+"+"+We+"(?="+[Ie,He,"$"].join("|")+")",Ke+"+"+Ge+"(?="+[Ie,He+qe,"$"].join("|")+")",He+"?"+qe+"+"+We,He+"+"+Ge,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Le,Je].join("|"),"g"),it=RegExp("["+Ve+Se+Ee+Te+"]"),ot=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,at=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],st=-1,ct={};ct[N]=ct[D]=ct[z]=ct[B]=ct[U]=ct[F]=ct[$]=ct[H]=ct[V]=!0,ct[y]=ct[b]=ct[M]=ct[w]=ct[L]=ct[x]=ct[_]=ct[k]=ct[E]=ct[A]=ct[P]=ct[T]=ct[j]=ct[C]=ct[I]=!1;var lt={};lt[y]=lt[b]=lt[M]=lt[L]=lt[w]=lt[x]=lt[N]=lt[D]=lt[z]=lt[B]=lt[U]=lt[E]=lt[A]=lt[P]=lt[T]=lt[j]=lt[C]=lt[R]=lt[F]=lt[$]=lt[H]=lt[V]=!0,lt[_]=lt[k]=lt[I]=!1;var ut={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},dt=parseFloat,ht=parseInt,ft="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,pt="object"==typeof self&&self&&self.Object===Object&&self,mt=ft||pt||Function("return this")(),gt=t&&!t.nodeType&&t,vt=gt&&e&&!e.nodeType&&e,yt=vt&&vt.exports===gt,bt=yt&&ft.process,wt=function(){try{var e=vt&&vt.require&&vt.require("util").types;return e||bt&&bt.binding&&bt.binding("util")}catch(t){}}(),xt=wt&&wt.isArrayBuffer,_t=wt&&wt.isDate,kt=wt&&wt.isMap,St=wt&&wt.isRegExp,Et=wt&&wt.isSet,At=wt&&wt.isTypedArray;function Pt(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function Ot(e,t,r,n){for(var i=-1,o=null==e?0:e.length;++i-1}function Mt(e,t,r){for(var n=-1,i=null==e?0:e.length;++n-1;);return r}function nr(e,t){for(var r=e.length;r--&&Ht(t,e[r],0)>-1;);return r}var ir=Gt({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),or=Gt({"&":"&","<":"<",">":">",'"':""","'":"'"});function ar(e){return"\\"+ut[e]}function sr(e){return it.test(e)}function cr(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function lr(e,t){return function(r){return e(t(r))}}function ur(e,t){for(var r=-1,n=e.length,i=0,o=[];++r",""":'"',"'":"'"});var vr=function e(t){var r=(t=null==t?mt:vr.defaults(mt.Object(),t,vr.pick(mt,at))).Array,n=t.Date,se=t.Error,Se=t.Function,Ee=t.Math,Ae=t.Object,Pe=t.RegExp,Oe=t.String,Te=t.TypeError,je=r.prototype,Ce=Se.prototype,Re=Ae.prototype,Ie=t["__core-js_shared__"],Me=Ce.toString,Le=Re.hasOwnProperty,Ne=0,De=function(){var e=/[^.]+$/.exec(Ie&&Ie.keys&&Ie.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),ze=Re.toString,Be=Me.call(Ae),Ue=mt._,Fe=Pe("^"+Me.call(Le).replace(ie,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$e=yt?t.Buffer:i,He=t.Symbol,Ve=t.Uint8Array,qe=$e?$e.allocUnsafe:i,Ke=lr(Ae.getPrototypeOf,Ae),We=Ae.create,Ge=Re.propertyIsEnumerable,Ze=je.splice,Ye=He?He.isConcatSpreadable:i,Xe=He?He.iterator:i,Je=He?He.toStringTag:i,Qe=function(){try{var e=ho(Ae,"defineProperty");return e({},"",{}),e}catch(t){}}(),rt=t.clearTimeout!==mt.clearTimeout&&t.clearTimeout,it=n&&n.now!==mt.Date.now&&n.now,ut=t.setTimeout!==mt.setTimeout&&t.setTimeout,ft=Ee.ceil,pt=Ee.floor,gt=Ae.getOwnPropertySymbols,vt=$e?$e.isBuffer:i,bt=t.isFinite,wt=je.join,Ut=lr(Ae.keys,Ae),Gt=Ee.max,yr=Ee.min,br=n.now,wr=t.parseInt,xr=Ee.random,_r=je.reverse,kr=ho(t,"DataView"),Sr=ho(t,"Map"),Er=ho(t,"Promise"),Ar=ho(t,"Set"),Pr=ho(t,"WeakMap"),Or=ho(Ae,"create"),Tr=Pr&&new Pr,jr={},Cr=zo(kr),Rr=zo(Sr),Ir=zo(Er),Mr=zo(Ar),Lr=zo(Pr),Nr=He?He.prototype:i,Dr=Nr?Nr.valueOf:i,zr=Nr?Nr.toString:i;function Br(e){if(ts(e)&&!Va(e)&&!(e instanceof Hr)){if(e instanceof $r)return e;if(Le.call(e,"__wrapped__"))return Bo(e)}return new $r(e)}var Ur=function(){function e(){}return function(t){if(!es(t))return{};if(We)return We(t);e.prototype=t;var r=new e;return e.prototype=i,r}}();function Fr(){}function $r(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}function Hr(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=g,this.__views__=[]}function Vr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function cn(e,t,r,n,o,a){var s,c=1&t,l=2&t,u=4&t;if(r&&(s=o?r(e,n,o,a):r(e)),s!==i)return s;if(!es(e))return e;var d=Va(e);if(d){if(s=function(e){var t=e.length,r=new e.constructor(t);t&&"string"==typeof e[0]&&Le.call(e,"index")&&(r.index=e.index,r.input=e.input);return r}(e),!c)return Ti(e,s)}else{var h=mo(e),f=h==k||h==S;if(Ga(e))return ki(e,c);if(h==P||h==y||f&&!o){if(s=l||f?{}:vo(e),!c)return l?function(e,t){return ji(e,po(e),t)}(e,function(e,t){return e&&ji(t,Rs(t),e)}(s,e)):function(e,t){return ji(e,fo(e),t)}(e,nn(s,e))}else{if(!lt[h])return o?e:{};s=function(e,t,r){var n=e.constructor;switch(t){case M:return Si(e);case w:case x:return new n(+e);case L:return function(e,t){var r=t?Si(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case N:case D:case z:case B:case U:case F:case $:case H:case V:return Ei(e,r);case E:return new n;case A:case C:return new n(e);case T:return function(e){var t=new e.constructor(e.source,me.exec(e));return t.lastIndex=e.lastIndex,t}(e);case j:return new n;case R:return i=e,Dr?Ae(Dr.call(i)):{}}var i}(e,h,c)}}a||(a=new Gr);var p=a.get(e);if(p)return p;a.set(e,s),as(e)?e.forEach((function(n){s.add(cn(n,t,r,n,e,a))})):rs(e)&&e.forEach((function(n,i){s.set(i,cn(n,t,r,i,e,a))}));var m=d?i:(u?l?io:no:l?Rs:Cs)(e);return Tt(m||e,(function(n,i){m&&(n=e[i=n]),en(s,i,cn(n,t,r,i,e,a))})),s}function ln(e,t,r){var n=r.length;if(null==e)return!n;for(e=Ae(e);n--;){var o=r[n],a=t[o],s=e[o];if(s===i&&!(o in e)||!a(s))return!1}return!0}function un(e,t,r){if("function"!=typeof e)throw new Te(o);return Co((function(){e.apply(i,r)}),t)}function dn(e,t,r,n){var i=-1,o=It,a=!0,s=e.length,c=[],l=t.length;if(!s)return c;r&&(t=Lt(t,Qt(r))),n?(o=Mt,a=!1):t.length>=200&&(o=tr,a=!1,t=new Wr(t));e:for(;++i-1},qr.prototype.set=function(e,t){var r=this.__data__,n=tn(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Kr.prototype.clear=function(){this.size=0,this.__data__={hash:new Vr,map:new(Sr||qr),string:new Vr}},Kr.prototype.delete=function(e){var t=lo(this,e).delete(e);return this.size-=t?1:0,t},Kr.prototype.get=function(e){return lo(this,e).get(e)},Kr.prototype.has=function(e){return lo(this,e).has(e)},Kr.prototype.set=function(e,t){var r=lo(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Wr.prototype.add=Wr.prototype.push=function(e){return this.__data__.set(e,a),this},Wr.prototype.has=function(e){return this.__data__.has(e)},Gr.prototype.clear=function(){this.__data__=new qr,this.size=0},Gr.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Gr.prototype.get=function(e){return this.__data__.get(e)},Gr.prototype.has=function(e){return this.__data__.has(e)},Gr.prototype.set=function(e,t){var r=this.__data__;if(r instanceof qr){var n=r.__data__;if(!Sr||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Kr(n)}return r.set(e,t),this.size=r.size,this};var hn=Ii(wn),fn=Ii(xn,!0);function pn(e,t){var r=!0;return hn(e,(function(e,n,i){return r=!!t(e,n,i)})),r}function mn(e,t,r){for(var n=-1,o=e.length;++n0&&r(s)?t>1?vn(s,t-1,r,n,i):Nt(i,s):n||(i[i.length]=s)}return i}var yn=Mi(),bn=Mi(!0);function wn(e,t){return e&&yn(e,t,Cs)}function xn(e,t){return e&&bn(e,t,Cs)}function _n(e,t){return Rt(t,(function(t){return Xa(e[t])}))}function kn(e,t){for(var r=0,n=(t=bi(t,e)).length;null!=e&&rt}function Pn(e,t){return null!=e&&Le.call(e,t)}function On(e,t){return null!=e&&t in Ae(e)}function Tn(e,t,n){for(var o=n?Mt:It,a=e[0].length,s=e.length,c=s,l=r(s),u=1/0,d=[];c--;){var h=e[c];c&&t&&(h=Lt(h,Qt(t))),u=yr(h.length,u),l[c]=!n&&(t||a>=120&&h.length>=120)?new Wr(c&&h):i}h=e[0];var f=-1,p=l[0];e:for(;++f=s?c:c*("desc"==r[n]?-1:1)}return e.index-t.index}(e,t,r)}))}function qn(e,t,r){for(var n=-1,i=t.length,o={};++n-1;)s!==e&&Ze.call(s,c,1),Ze.call(e,c,1);return e}function Wn(e,t){for(var r=e?t.length:0,n=r-1;r--;){var i=t[r];if(r==n||i!==o){var o=i;bo(i)?Ze.call(e,i,1):di(e,i)}}return e}function Gn(e,t){return e+pt(xr()*(t-e+1))}function Zn(e,t){var r="";if(!e||t<1||t>p)return r;do{t%2&&(r+=e),(t=pt(t/2))&&(e+=e)}while(t);return r}function Yn(e,t){return Ro(Po(e,t,nc),e+"")}function Xn(e){return Yr(Us(e))}function Jn(e,t){var r=Us(e);return Lo(r,sn(t,0,r.length))}function Qn(e,t,r,n){if(!es(e))return e;for(var o=-1,a=(t=bi(t,e)).length,s=a-1,c=e;null!=c&&++oo?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var a=r(o);++i>>1,a=e[o];null!==a&&!cs(a)&&(r?a<=t:a=200){var l=t?null:Zi(e);if(l)return dr(l);a=!1,i=tr,c=new Wr}else c=t?[]:s;e:for(;++n=n?e:ni(e,t,r)}var _i=rt||function(e){return mt.clearTimeout(e)};function ki(e,t){if(t)return e.slice();var r=e.length,n=qe?qe(r):new e.constructor(r);return e.copy(n),n}function Si(e){var t=new e.constructor(e.byteLength);return new Ve(t).set(new Ve(e)),t}function Ei(e,t){var r=t?Si(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function Ai(e,t){if(e!==t){var r=e!==i,n=null===e,o=e===e,a=cs(e),s=t!==i,c=null===t,l=t===t,u=cs(t);if(!c&&!u&&!a&&e>t||a&&s&&l&&!c&&!u||n&&s&&l||!r&&l||!o)return 1;if(!n&&!a&&!u&&e1?r[o-1]:i,s=o>2?r[2]:i;for(a=e.length>3&&"function"==typeof a?(o--,a):i,s&&wo(r[0],r[1],s)&&(a=o<3?i:a,o=1),t=Ae(t);++n-1?o[a?t[s]:s]:i}}function Bi(e){return ro((function(t){var r=t.length,n=r,a=$r.prototype.thru;for(e&&t.reverse();n--;){var s=t[n];if("function"!=typeof s)throw new Te(o);if(a&&!c&&"wrapper"==ao(s))var c=new $r([],!0)}for(n=c?n:r;++n1&&w.reverse(),f&&uc))return!1;var u=a.get(e),d=a.get(t);if(u&&d)return u==t&&d==e;var h=-1,f=!0,p=2&r?new Wr:i;for(a.set(e,t),a.set(t,e);++h-1&&e%1==0&&e1?"& ":"")+t[n],t=t.join(r>2?", ":" "),e.replace(ce,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return Tt(v,(function(r){var n="_."+r[0];t&r[1]&&!It(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(le);return t?t[1].split(ue):[]}(n),r)))}function Mo(e){var t=0,r=0;return function(){var n=br(),o=16-(n-r);if(r=n,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(i,arguments)}}function Lo(e,t){var r=-1,n=e.length,o=n-1;for(t=t===i?n:t;++r1?e[t-1]:i;return r="function"==typeof r?(e.pop(),r):i,oa(e,r)}));function ha(e){var t=Br(e);return t.__chain__=!0,t}function fa(e,t){return t(e)}var pa=ro((function(e){var t=e.length,r=t?e[0]:0,n=this.__wrapped__,o=function(t){return an(t,e)};return!(t>1||this.__actions__.length)&&n instanceof Hr&&bo(r)?((n=n.slice(r,+r+(t?1:0))).__actions__.push({func:fa,args:[o],thisArg:i}),new $r(n,this.__chain__).thru((function(e){return t&&!e.length&&e.push(i),e}))):this.thru(o)}));var ma=Ci((function(e,t,r){Le.call(e,r)?++e[r]:on(e,r,1)}));var ga=zi(Ho),va=zi(Vo);function ya(e,t){return(Va(e)?Tt:hn)(e,co(t,3))}function ba(e,t){return(Va(e)?jt:fn)(e,co(t,3))}var wa=Ci((function(e,t,r){Le.call(e,r)?e[r].push(t):on(e,r,[t])}));var xa=Yn((function(e,t,n){var i=-1,o="function"==typeof t,a=Ka(e)?r(e.length):[];return hn(e,(function(e){a[++i]=o?Pt(t,e,n):jn(e,t,n)})),a})),_a=Ci((function(e,t,r){on(e,r,t)}));function ka(e,t){return(Va(e)?Lt:Bn)(e,co(t,3))}var Sa=Ci((function(e,t,r){e[r?0:1].push(t)}),(function(){return[[],[]]}));var Ea=Yn((function(e,t){if(null==e)return[];var r=t.length;return r>1&&wo(e,t[0],t[1])?t=[]:r>2&&wo(t[0],t[1],t[2])&&(t=[t[0]]),Vn(e,vn(t,1),[])})),Aa=it||function(){return mt.Date.now()};function Pa(e,t,r){return t=r?i:t,t=e&&null==t?e.length:t,Xi(e,d,i,i,i,i,t)}function Oa(e,t){var r;if("function"!=typeof t)throw new Te(o);return e=ps(e),function(){return--e>0&&(r=t.apply(this,arguments)),e<=1&&(t=i),r}}var Ta=Yn((function(e,t,r){var n=1;if(r.length){var i=ur(r,so(Ta));n|=l}return Xi(e,n,t,r,i)})),ja=Yn((function(e,t,r){var n=3;if(r.length){var i=ur(r,so(ja));n|=l}return Xi(t,n,e,r,i)}));function Ca(e,t,r){var n,a,s,c,l,u,d=0,h=!1,f=!1,p=!0;if("function"!=typeof e)throw new Te(o);function m(t){var r=n,o=a;return n=a=i,d=t,c=e.apply(o,r)}function g(e){var r=e-u;return u===i||r>=t||r<0||f&&e-d>=s}function v(){var e=Aa();if(g(e))return y(e);l=Co(v,function(e){var r=t-(e-u);return f?yr(r,s-(e-d)):r}(e))}function y(e){return l=i,p&&n?m(e):(n=a=i,c)}function b(){var e=Aa(),r=g(e);if(n=arguments,a=this,u=e,r){if(l===i)return function(e){return d=e,l=Co(v,t),h?m(e):c}(u);if(f)return _i(l),l=Co(v,t),m(u)}return l===i&&(l=Co(v,t)),c}return t=gs(t)||0,es(r)&&(h=!!r.leading,s=(f="maxWait"in r)?Gt(gs(r.maxWait)||0,t):s,p="trailing"in r?!!r.trailing:p),b.cancel=function(){l!==i&&_i(l),d=0,n=u=a=l=i},b.flush=function(){return l===i?c:y(Aa())},b}var Ra=Yn((function(e,t){return un(e,1,t)})),Ia=Yn((function(e,t,r){return un(e,gs(t)||0,r)}));function Ma(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Te(o);var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var a=e.apply(this,n);return r.cache=o.set(i,a)||o,a};return r.cache=new(Ma.Cache||Kr),r}function La(e){if("function"!=typeof e)throw new Te(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ma.Cache=Kr;var Na=wi((function(e,t){var r=(t=1==t.length&&Va(t[0])?Lt(t[0],Qt(co())):Lt(vn(t,1),Qt(co()))).length;return Yn((function(n){for(var i=-1,o=yr(n.length,r);++i=t})),Ha=Cn(function(){return arguments}())?Cn:function(e){return ts(e)&&Le.call(e,"callee")&&!Ge.call(e,"callee")},Va=r.isArray,qa=xt?Qt(xt):function(e){return ts(e)&&En(e)==M};function Ka(e){return null!=e&&Qa(e.length)&&!Xa(e)}function Wa(e){return ts(e)&&Ka(e)}var Ga=vt||gc,Za=_t?Qt(_t):function(e){return ts(e)&&En(e)==x};function Ya(e){if(!ts(e))return!1;var t=En(e);return t==_||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!is(e)}function Xa(e){if(!es(e))return!1;var t=En(e);return t==k||t==S||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Ja(e){return"number"==typeof e&&e==ps(e)}function Qa(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=p}function es(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ts(e){return null!=e&&"object"==typeof e}var rs=kt?Qt(kt):function(e){return ts(e)&&mo(e)==E};function ns(e){return"number"==typeof e||ts(e)&&En(e)==A}function is(e){if(!ts(e)||En(e)!=P)return!1;var t=Ke(e);if(null===t)return!0;var r=Le.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Me.call(r)==Be}var os=St?Qt(St):function(e){return ts(e)&&En(e)==T};var as=Et?Qt(Et):function(e){return ts(e)&&mo(e)==j};function ss(e){return"string"==typeof e||!Va(e)&&ts(e)&&En(e)==C}function cs(e){return"symbol"==typeof e||ts(e)&&En(e)==R}var ls=At?Qt(At):function(e){return ts(e)&&Qa(e.length)&&!!ct[En(e)]};var us=Ki(zn),ds=Ki((function(e,t){return e<=t}));function hs(e){if(!e)return[];if(Ka(e))return ss(e)?pr(e):Ti(e);if(Xe&&e[Xe])return function(e){for(var t,r=[];!(t=e.next()).done;)r.push(t.value);return r}(e[Xe]());var t=mo(e);return(t==E?cr:t==j?dr:Us)(e)}function fs(e){return e?(e=gs(e))===f||e===-1/0?17976931348623157e292*(e<0?-1:1):e===e?e:0:0===e?e:0}function ps(e){var t=fs(e),r=t%1;return t===t?r?t-r:t:0}function ms(e){return e?sn(ps(e),0,g):0}function gs(e){if("number"==typeof e)return e;if(cs(e))return m;if(es(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=es(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Jt(e);var r=ve.test(e);return r||be.test(e)?ht(e.slice(2),r?2:8):ge.test(e)?m:+e}function vs(e){return ji(e,Rs(e))}function ys(e){return null==e?"":li(e)}var bs=Ri((function(e,t){if(So(t)||Ka(t))ji(t,Cs(t),e);else for(var r in t)Le.call(t,r)&&en(e,r,t[r])})),ws=Ri((function(e,t){ji(t,Rs(t),e)})),xs=Ri((function(e,t,r,n){ji(t,Rs(t),e,n)})),_s=Ri((function(e,t,r,n){ji(t,Cs(t),e,n)})),ks=ro(an);var Ss=Yn((function(e,t){e=Ae(e);var r=-1,n=t.length,o=n>2?t[2]:i;for(o&&wo(t[0],t[1],o)&&(n=1);++r1),t})),ji(e,io(e),r),n&&(r=cn(r,7,eo));for(var i=t.length;i--;)di(r,t[i]);return r}));var Ns=ro((function(e,t){return null==e?{}:function(e,t){return qn(e,t,(function(t,r){return Ps(e,r)}))}(e,t)}));function Ds(e,t){if(null==e)return{};var r=Lt(io(e),(function(e){return[e]}));return t=co(t),qn(e,r,(function(e,r){return t(e,r[0])}))}var zs=Yi(Cs),Bs=Yi(Rs);function Us(e){return null==e?[]:er(e,Cs(e))}var Fs=Ni((function(e,t,r){return t=t.toLowerCase(),e+(r?$s(t):t)}));function $s(e){return Ys(ys(e).toLowerCase())}function Hs(e){return(e=ys(e))&&e.replace(xe,ir).replace(tt,"")}var Vs=Ni((function(e,t,r){return e+(r?"-":"")+t.toLowerCase()})),qs=Ni((function(e,t,r){return e+(r?" ":"")+t.toLowerCase()})),Ks=Li("toLowerCase");var Ws=Ni((function(e,t,r){return e+(r?"_":"")+t.toLowerCase()}));var Gs=Ni((function(e,t,r){return e+(r?" ":"")+Ys(t)}));var Zs=Ni((function(e,t,r){return e+(r?" ":"")+t.toUpperCase()})),Ys=Li("toUpperCase");function Xs(e,t,r){return e=ys(e),(t=r?i:t)===i?function(e){return ot.test(e)}(e)?function(e){return e.match(nt)||[]}(e):function(e){return e.match(de)||[]}(e):e.match(t)||[]}var Js=Yn((function(e,t){try{return Pt(e,i,t)}catch(r){return Ya(r)?r:new se(r)}})),Qs=ro((function(e,t){return Tt(t,(function(t){t=Do(t),on(e,t,Ta(e[t],e))})),e}));function ec(e){return function(){return e}}var tc=Bi(),rc=Bi(!0);function nc(e){return e}function ic(e){return Ln("function"==typeof e?e:cn(e,1))}var oc=Yn((function(e,t){return function(r){return jn(r,e,t)}})),ac=Yn((function(e,t){return function(r){return jn(e,r,t)}}));function sc(e,t,r){var n=Cs(t),i=_n(t,n);null!=r||es(t)&&(i.length||!n.length)||(r=t,t=e,e=this,i=_n(t,Cs(t)));var o=!(es(r)&&"chain"in r)||!!r.chain,a=Xa(e);return Tt(i,(function(r){var n=t[r];e[r]=n,a&&(e.prototype[r]=function(){var t=this.__chain__;if(o||t){var r=e(this.__wrapped__);return(r.__actions__=Ti(this.__actions__)).push({func:n,args:arguments,thisArg:e}),r.__chain__=t,r}return n.apply(e,Nt([this.value()],arguments))})})),e}function cc(){}var lc=Hi(Lt),uc=Hi(Ct),dc=Hi(Bt);function hc(e){return xo(e)?Wt(Do(e)):function(e){return function(t){return kn(t,e)}}(e)}var fc=qi(),pc=qi(!0);function mc(){return[]}function gc(){return!1}var vc=$i((function(e,t){return e+t}),0),yc=Gi("ceil"),bc=$i((function(e,t){return e/t}),1),wc=Gi("floor");var xc=$i((function(e,t){return e*t}),1),_c=Gi("round"),kc=$i((function(e,t){return e-t}),0);return Br.after=function(e,t){if("function"!=typeof t)throw new Te(o);return e=ps(e),function(){if(--e<1)return t.apply(this,arguments)}},Br.ary=Pa,Br.assign=bs,Br.assignIn=ws,Br.assignInWith=xs,Br.assignWith=_s,Br.at=ks,Br.before=Oa,Br.bind=Ta,Br.bindAll=Qs,Br.bindKey=ja,Br.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Va(e)?e:[e]},Br.chain=ha,Br.chunk=function(e,t,n){t=(n?wo(e,t,n):t===i)?1:Gt(ps(t),0);var o=null==e?0:e.length;if(!o||t<1)return[];for(var a=0,s=0,c=r(ft(o/t));ao?0:o+r),(n=n===i||n>o?o:ps(n))<0&&(n+=o),n=r>n?0:ms(n);r>>0)?(e=ys(e))&&("string"==typeof t||null!=t&&!os(t))&&!(t=li(t))&&sr(e)?xi(pr(e),0,r):e.split(t,r):[]},Br.spread=function(e,t){if("function"!=typeof e)throw new Te(o);return t=null==t?0:Gt(ps(t),0),Yn((function(r){var n=r[t],i=xi(r,0,t);return n&&Nt(i,n),Pt(e,this,i)}))},Br.tail=function(e){var t=null==e?0:e.length;return t?ni(e,1,t):[]},Br.take=function(e,t,r){return e&&e.length?ni(e,0,(t=r||t===i?1:ps(t))<0?0:t):[]},Br.takeRight=function(e,t,r){var n=null==e?0:e.length;return n?ni(e,(t=n-(t=r||t===i?1:ps(t)))<0?0:t,n):[]},Br.takeRightWhile=function(e,t){return e&&e.length?fi(e,co(t,3),!1,!0):[]},Br.takeWhile=function(e,t){return e&&e.length?fi(e,co(t,3)):[]},Br.tap=function(e,t){return t(e),e},Br.throttle=function(e,t,r){var n=!0,i=!0;if("function"!=typeof e)throw new Te(o);return es(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),Ca(e,t,{leading:n,maxWait:t,trailing:i})},Br.thru=fa,Br.toArray=hs,Br.toPairs=zs,Br.toPairsIn=Bs,Br.toPath=function(e){return Va(e)?Lt(e,Do):cs(e)?[e]:Ti(No(ys(e)))},Br.toPlainObject=vs,Br.transform=function(e,t,r){var n=Va(e),i=n||Ga(e)||ls(e);if(t=co(t,4),null==r){var o=e&&e.constructor;r=i?n?new o:[]:es(e)&&Xa(o)?Ur(Ke(e)):{}}return(i?Tt:wn)(e,(function(e,n,i){return t(r,e,n,i)})),r},Br.unary=function(e){return Pa(e,1)},Br.union=ta,Br.unionBy=ra,Br.unionWith=na,Br.uniq=function(e){return e&&e.length?ui(e):[]},Br.uniqBy=function(e,t){return e&&e.length?ui(e,co(t,2)):[]},Br.uniqWith=function(e,t){return t="function"==typeof t?t:i,e&&e.length?ui(e,i,t):[]},Br.unset=function(e,t){return null==e||di(e,t)},Br.unzip=ia,Br.unzipWith=oa,Br.update=function(e,t,r){return null==e?e:hi(e,t,yi(r))},Br.updateWith=function(e,t,r,n){return n="function"==typeof n?n:i,null==e?e:hi(e,t,yi(r),n)},Br.values=Us,Br.valuesIn=function(e){return null==e?[]:er(e,Rs(e))},Br.without=aa,Br.words=Xs,Br.wrap=function(e,t){return Da(yi(t),e)},Br.xor=sa,Br.xorBy=ca,Br.xorWith=la,Br.zip=ua,Br.zipObject=function(e,t){return gi(e||[],t||[],en)},Br.zipObjectDeep=function(e,t){return gi(e||[],t||[],Qn)},Br.zipWith=da,Br.entries=zs,Br.entriesIn=Bs,Br.extend=ws,Br.extendWith=xs,sc(Br,Br),Br.add=vc,Br.attempt=Js,Br.camelCase=Fs,Br.capitalize=$s,Br.ceil=yc,Br.clamp=function(e,t,r){return r===i&&(r=t,t=i),r!==i&&(r=(r=gs(r))===r?r:0),t!==i&&(t=(t=gs(t))===t?t:0),sn(gs(e),t,r)},Br.clone=function(e){return cn(e,4)},Br.cloneDeep=function(e){return cn(e,5)},Br.cloneDeepWith=function(e,t){return cn(e,5,t="function"==typeof t?t:i)},Br.cloneWith=function(e,t){return cn(e,4,t="function"==typeof t?t:i)},Br.conformsTo=function(e,t){return null==t||ln(e,t,Cs(t))},Br.deburr=Hs,Br.defaultTo=function(e,t){return null==e||e!==e?t:e},Br.divide=bc,Br.endsWith=function(e,t,r){e=ys(e),t=li(t);var n=e.length,o=r=r===i?n:sn(ps(r),0,n);return(r-=t.length)>=0&&e.slice(r,o)==t},Br.eq=Ua,Br.escape=function(e){return(e=ys(e))&&X.test(e)?e.replace(Z,or):e},Br.escapeRegExp=function(e){return(e=ys(e))&&oe.test(e)?e.replace(ie,"\\$&"):e},Br.every=function(e,t,r){var n=Va(e)?Ct:pn;return r&&wo(e,t,r)&&(t=i),n(e,co(t,3))},Br.find=ga,Br.findIndex=Ho,Br.findKey=function(e,t){return Ft(e,co(t,3),wn)},Br.findLast=va,Br.findLastIndex=Vo,Br.findLastKey=function(e,t){return Ft(e,co(t,3),xn)},Br.floor=wc,Br.forEach=ya,Br.forEachRight=ba,Br.forIn=function(e,t){return null==e?e:yn(e,co(t,3),Rs)},Br.forInRight=function(e,t){return null==e?e:bn(e,co(t,3),Rs)},Br.forOwn=function(e,t){return e&&wn(e,co(t,3))},Br.forOwnRight=function(e,t){return e&&xn(e,co(t,3))},Br.get=As,Br.gt=Fa,Br.gte=$a,Br.has=function(e,t){return null!=e&&go(e,t,Pn)},Br.hasIn=Ps,Br.head=Ko,Br.identity=nc,Br.includes=function(e,t,r,n){e=Ka(e)?e:Us(e),r=r&&!n?ps(r):0;var i=e.length;return r<0&&(r=Gt(i+r,0)),ss(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&Ht(e,t,r)>-1},Br.indexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:ps(r);return i<0&&(i=Gt(n+i,0)),Ht(e,t,i)},Br.inRange=function(e,t,r){return t=fs(t),r===i?(r=t,t=0):r=fs(r),function(e,t,r){return e>=yr(t,r)&&e=-9007199254740991&&e<=p},Br.isSet=as,Br.isString=ss,Br.isSymbol=cs,Br.isTypedArray=ls,Br.isUndefined=function(e){return e===i},Br.isWeakMap=function(e){return ts(e)&&mo(e)==I},Br.isWeakSet=function(e){return ts(e)&&"[object WeakSet]"==En(e)},Br.join=function(e,t){return null==e?"":wt.call(e,t)},Br.kebabCase=Vs,Br.last=Yo,Br.lastIndexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var o=n;return r!==i&&(o=(o=ps(r))<0?Gt(n+o,0):yr(o,n-1)),t===t?function(e,t,r){for(var n=r+1;n--;)if(e[n]===t)return n;return n}(e,t,o):$t(e,qt,o,!0)},Br.lowerCase=qs,Br.lowerFirst=Ks,Br.lt=us,Br.lte=ds,Br.max=function(e){return e&&e.length?mn(e,nc,An):i},Br.maxBy=function(e,t){return e&&e.length?mn(e,co(t,2),An):i},Br.mean=function(e){return Kt(e,nc)},Br.meanBy=function(e,t){return Kt(e,co(t,2))},Br.min=function(e){return e&&e.length?mn(e,nc,zn):i},Br.minBy=function(e,t){return e&&e.length?mn(e,co(t,2),zn):i},Br.stubArray=mc,Br.stubFalse=gc,Br.stubObject=function(){return{}},Br.stubString=function(){return""},Br.stubTrue=function(){return!0},Br.multiply=xc,Br.nth=function(e,t){return e&&e.length?Hn(e,ps(t)):i},Br.noConflict=function(){return mt._===this&&(mt._=Ue),this},Br.noop=cc,Br.now=Aa,Br.pad=function(e,t,r){e=ys(e);var n=(t=ps(t))?fr(e):0;if(!t||n>=t)return e;var i=(t-n)/2;return Vi(pt(i),r)+e+Vi(ft(i),r)},Br.padEnd=function(e,t,r){e=ys(e);var n=(t=ps(t))?fr(e):0;return t&&nt){var n=e;e=t,t=n}if(r||e%1||t%1){var o=xr();return yr(e+o*(t-e+dt("1e-"+((o+"").length-1))),t)}return Gn(e,t)},Br.reduce=function(e,t,r){var n=Va(e)?Dt:Zt,i=arguments.length<3;return n(e,co(t,4),r,i,hn)},Br.reduceRight=function(e,t,r){var n=Va(e)?zt:Zt,i=arguments.length<3;return n(e,co(t,4),r,i,fn)},Br.repeat=function(e,t,r){return t=(r?wo(e,t,r):t===i)?1:ps(t),Zn(ys(e),t)},Br.replace=function(){var e=arguments,t=ys(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Br.result=function(e,t,r){var n=-1,o=(t=bi(t,e)).length;for(o||(o=1,e=i);++np)return[];var r=g,n=yr(e,g);t=co(t),e-=g;for(var i=Xt(n,t);++r=a)return e;var c=r-fr(n);if(c<1)return n;var l=s?xi(s,0,c).join(""):e.slice(0,c);if(o===i)return l+n;if(s&&(c+=l.length-c),os(o)){if(e.slice(c).search(o)){var u,d=l;for(o.global||(o=Pe(o.source,ys(me.exec(o))+"g")),o.lastIndex=0;u=o.exec(d);)var h=u.index;l=l.slice(0,h===i?c:h)}}else if(e.indexOf(li(o),c)!=c){var f=l.lastIndexOf(o);f>-1&&(l=l.slice(0,f))}return l+n},Br.unescape=function(e){return(e=ys(e))&&Y.test(e)?e.replace(G,gr):e},Br.uniqueId=function(e){var t=++Ne;return ys(e)+t},Br.upperCase=Zs,Br.upperFirst=Ys,Br.each=ya,Br.eachRight=ba,Br.first=Ko,sc(Br,function(){var e={};return wn(Br,(function(t,r){Le.call(Br.prototype,r)||(e[r]=t)})),e}(),{chain:!1}),Br.VERSION="4.17.21",Tt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Br[e].placeholder=Br})),Tt(["drop","take"],(function(e,t){Hr.prototype[e]=function(r){r=r===i?1:Gt(ps(r),0);var n=this.__filtered__&&!t?new Hr(this):this.clone();return n.__filtered__?n.__takeCount__=yr(r,n.__takeCount__):n.__views__.push({size:yr(r,g),type:e+(n.__dir__<0?"Right":"")}),n},Hr.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Tt(["filter","map","takeWhile"],(function(e,t){var r=t+1,n=1==r||3==r;Hr.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:co(e,3),type:r}),t.__filtered__=t.__filtered__||n,t}})),Tt(["head","last"],(function(e,t){var r="take"+(t?"Right":"");Hr.prototype[e]=function(){return this[r](1).value()[0]}})),Tt(["initial","tail"],(function(e,t){var r="drop"+(t?"":"Right");Hr.prototype[e]=function(){return this.__filtered__?new Hr(this):this[r](1)}})),Hr.prototype.compact=function(){return this.filter(nc)},Hr.prototype.find=function(e){return this.filter(e).head()},Hr.prototype.findLast=function(e){return this.reverse().find(e)},Hr.prototype.invokeMap=Yn((function(e,t){return"function"==typeof e?new Hr(this):this.map((function(r){return jn(r,e,t)}))})),Hr.prototype.reject=function(e){return this.filter(La(co(e)))},Hr.prototype.slice=function(e,t){e=ps(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Hr(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==i&&(r=(t=ps(t))<0?r.dropRight(-t):r.take(t-e)),r)},Hr.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Hr.prototype.toArray=function(){return this.take(g)},wn(Hr.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),n=/^(?:head|last)$/.test(t),o=Br[n?"take"+("last"==t?"Right":""):t],a=n||/^find/.test(t);o&&(Br.prototype[t]=function(){var t=this.__wrapped__,s=n?[1]:arguments,c=t instanceof Hr,l=s[0],u=c||Va(t),d=function(e){var t=o.apply(Br,Nt([e],s));return n&&h?t[0]:t};u&&r&&"function"==typeof l&&1!=l.length&&(c=u=!1);var h=this.__chain__,f=!!this.__actions__.length,p=a&&!h,m=c&&!f;if(!a&&u){t=m?t:new Hr(this);var g=e.apply(t,s);return g.__actions__.push({func:fa,args:[d],thisArg:i}),new $r(g,h)}return p&&m?e.apply(this,s):(g=this.thru(d),p?n?g.value()[0]:g.value():g)})})),Tt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=je[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);Br.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var i=this.value();return t.apply(Va(i)?i:[],e)}return this[r]((function(r){return t.apply(Va(r)?r:[],e)}))}})),wn(Hr.prototype,(function(e,t){var r=Br[t];if(r){var n=r.name+"";Le.call(jr,n)||(jr[n]=[]),jr[n].push({name:t,func:r})}})),jr[Ui(i,2).name]=[{name:"wrapper",func:i}],Hr.prototype.clone=function(){var e=new Hr(this.__wrapped__);return e.__actions__=Ti(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ti(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ti(this.__views__),e},Hr.prototype.reverse=function(){if(this.__filtered__){var e=new Hr(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Hr.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,r=Va(e),n=t<0,i=r?e.length:0,o=function(e,t,r){var n=-1,i=r.length;for(;++n=this.__values__.length;return{done:e,value:e?i:this.__values__[this.__index__++]}},Br.prototype.plant=function(e){for(var t,r=this;r instanceof Fr;){var n=Bo(r);n.__index__=0,n.__values__=i,t?o.__wrapped__=n:t=n;var o=n;r=r.__wrapped__}return o.__wrapped__=e,t},Br.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Hr){var t=e;return this.__actions__.length&&(t=new Hr(this)),(t=t.reverse()).__actions__.push({func:fa,args:[ea],thisArg:i}),new $r(t,this.__chain__)}return this.thru(ea)},Br.prototype.toJSON=Br.prototype.valueOf=Br.prototype.value=function(){return pi(this.__wrapped__,this.__actions__)},Br.prototype.first=Br.prototype.head,Xe&&(Br.prototype[Xe]=function(){return this}),Br}();mt._=vr,(n=function(){return vr}.call(t,r,t,e))===i||(e.exports=n)}.call(this)},4371:function(e,t,r){var n,i;!function(o,a){"use strict";n=function(){var e=function(){},t="undefined",r=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),n=["trace","debug","info","warn","error"];function i(e,t){var r=e[t];if("function"===typeof r.bind)return r.bind(e);try{return Function.prototype.bind.call(r,e)}catch(n){return function(){return Function.prototype.apply.apply(r,[e,arguments])}}}function o(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function a(n){return"debug"===n&&(n="log"),typeof console!==t&&("trace"===n&&r?o:void 0!==console[n]?i(console,n):void 0!==console.log?i(console,"log"):e)}function s(t,r){for(var i=0;i=0&&r<=a.levels.SILENT))throw"log.setLevel() called with invalid level: "+r;if(o=r,!1!==n&&u(r),s.call(a,r,e),typeof console===t&&r{"use strict";const n=r(7873),i=Symbol("max"),o=Symbol("length"),a=Symbol("lengthCalculator"),s=Symbol("allowStale"),c=Symbol("maxAge"),l=Symbol("dispose"),u=Symbol("noDisposeOnSet"),d=Symbol("lruList"),h=Symbol("cache"),f=Symbol("updateAgeOnGet"),p=()=>1;const m=(e,t,r)=>{const n=e[h].get(t);if(n){const t=n.value;if(g(e,t)){if(y(e,n),!e[s])return}else r&&(e[f]&&(n.value.now=Date.now()),e[d].unshiftNode(n));return t.value}},g=(e,t)=>{if(!t||!t.maxAge&&!e[c])return!1;const r=Date.now()-t.now;return t.maxAge?r>t.maxAge:e[c]&&r>e[c]},v=e=>{if(e[o]>e[i])for(let t=e[d].tail;e[o]>e[i]&&null!==t;){const r=t.prev;y(e,t),t=r}},y=(e,t)=>{if(t){const r=t.value;e[l]&&e[l](r.key,r.value),e[o]-=r.length,e[h].delete(r.key),e[d].removeNode(t)}};class b{constructor(e,t,r,n,i){this.key=e,this.value=t,this.length=r,this.now=n,this.maxAge=i||0}}const w=(e,t,r,n)=>{let i=r.value;g(e,i)&&(y(e,r),e[s]||(i=void 0)),i&&t.call(n,i.value,i.key,e)};e.exports=class{constructor(e){if("number"===typeof e&&(e={max:e}),e||(e={}),e.max&&("number"!==typeof e.max||e.max<0))throw new TypeError("max must be a non-negative number");this[i]=e.max||1/0;const t=e.length||p;if(this[a]="function"!==typeof t?p:t,this[s]=e.stale||!1,e.maxAge&&"number"!==typeof e.maxAge)throw new TypeError("maxAge must be a number");this[c]=e.maxAge||0,this[l]=e.dispose,this[u]=e.noDisposeOnSet||!1,this[f]=e.updateAgeOnGet||!1,this.reset()}set max(e){if("number"!==typeof e||e<0)throw new TypeError("max must be a non-negative number");this[i]=e||1/0,v(this)}get max(){return this[i]}set allowStale(e){this[s]=!!e}get allowStale(){return this[s]}set maxAge(e){if("number"!==typeof e)throw new TypeError("maxAge must be a non-negative number");this[c]=e,v(this)}get maxAge(){return this[c]}set lengthCalculator(e){"function"!==typeof e&&(e=p),e!==this[a]&&(this[a]=e,this[o]=0,this[d].forEach((e=>{e.length=this[a](e.value,e.key),this[o]+=e.length}))),v(this)}get lengthCalculator(){return this[a]}get length(){return this[o]}get itemCount(){return this[d].length}rforEach(e,t){t=t||this;for(let r=this[d].tail;null!==r;){const n=r.prev;w(this,e,r,t),r=n}}forEach(e,t){t=t||this;for(let r=this[d].head;null!==r;){const n=r.next;w(this,e,r,t),r=n}}keys(){return this[d].toArray().map((e=>e.key))}values(){return this[d].toArray().map((e=>e.value))}reset(){this[l]&&this[d]&&this[d].length&&this[d].forEach((e=>this[l](e.key,e.value))),this[h]=new Map,this[d]=new n,this[o]=0}dump(){return this[d].map((e=>!g(this,e)&&{k:e.key,v:e.value,e:e.now+(e.maxAge||0)})).toArray().filter((e=>e))}dumpLru(){return this[d]}set(e,t,r){if((r=r||this[c])&&"number"!==typeof r)throw new TypeError("maxAge must be a number");const n=r?Date.now():0,s=this[a](t,e);if(this[h].has(e)){if(s>this[i])return y(this,this[h].get(e)),!1;const a=this[h].get(e).value;return this[l]&&(this[u]||this[l](e,a.value)),a.now=n,a.maxAge=r,a.value=t,this[o]+=s-a.length,a.length=s,this.get(e),v(this),!0}const f=new b(e,t,s,n,r);return f.length>this[i]?(this[l]&&this[l](e,t),!1):(this[o]+=f.length,this[d].unshift(f),this[h].set(e,this[d].head),v(this),!0)}has(e){if(!this[h].has(e))return!1;const t=this[h].get(e).value;return!g(this,t)}get(e){return m(this,e,!0)}peek(e){return m(this,e,!1)}pop(){const e=this[d].tail;return e?(y(this,e),e.value):null}del(e){y(this,this[h].get(e))}load(e){this.reset();const t=Date.now();for(let r=e.length-1;r>=0;r--){const n=e[r],i=n.e||0;if(0===i)this.set(n.k,n.v);else{const e=i-t;e>0&&this.set(n.k,n.v,e)}}}prune(){this[h].forEach(((e,t)=>m(this,t,!1)))}}},4266:(e,t,r)=>{"use strict";var n=r(9528),i=r(7291),o=r(8795).Buffer,a=new Array(16);function s(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<>>32-t}function l(e,t,r,n,i,o,a){return c(e+(t&r|~t&n)+i+o|0,a)+t|0}function u(e,t,r,n,i,o,a){return c(e+(t&n|r&~n)+i+o|0,a)+t|0}function d(e,t,r,n,i,o,a){return c(e+(t^r^n)+i+o|0,a)+t|0}function h(e,t,r,n,i,o,a){return c(e+(r^(t|~n))+i+o|0,a)+t|0}n(s,i),s.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,n=this._b,i=this._c,o=this._d;r=l(r,n,i,o,e[0],3614090360,7),o=l(o,r,n,i,e[1],3905402710,12),i=l(i,o,r,n,e[2],606105819,17),n=l(n,i,o,r,e[3],3250441966,22),r=l(r,n,i,o,e[4],4118548399,7),o=l(o,r,n,i,e[5],1200080426,12),i=l(i,o,r,n,e[6],2821735955,17),n=l(n,i,o,r,e[7],4249261313,22),r=l(r,n,i,o,e[8],1770035416,7),o=l(o,r,n,i,e[9],2336552879,12),i=l(i,o,r,n,e[10],4294925233,17),n=l(n,i,o,r,e[11],2304563134,22),r=l(r,n,i,o,e[12],1804603682,7),o=l(o,r,n,i,e[13],4254626195,12),i=l(i,o,r,n,e[14],2792965006,17),r=u(r,n=l(n,i,o,r,e[15],1236535329,22),i,o,e[1],4129170786,5),o=u(o,r,n,i,e[6],3225465664,9),i=u(i,o,r,n,e[11],643717713,14),n=u(n,i,o,r,e[0],3921069994,20),r=u(r,n,i,o,e[5],3593408605,5),o=u(o,r,n,i,e[10],38016083,9),i=u(i,o,r,n,e[15],3634488961,14),n=u(n,i,o,r,e[4],3889429448,20),r=u(r,n,i,o,e[9],568446438,5),o=u(o,r,n,i,e[14],3275163606,9),i=u(i,o,r,n,e[3],4107603335,14),n=u(n,i,o,r,e[8],1163531501,20),r=u(r,n,i,o,e[13],2850285829,5),o=u(o,r,n,i,e[2],4243563512,9),i=u(i,o,r,n,e[7],1735328473,14),r=d(r,n=u(n,i,o,r,e[12],2368359562,20),i,o,e[5],4294588738,4),o=d(o,r,n,i,e[8],2272392833,11),i=d(i,o,r,n,e[11],1839030562,16),n=d(n,i,o,r,e[14],4259657740,23),r=d(r,n,i,o,e[1],2763975236,4),o=d(o,r,n,i,e[4],1272893353,11),i=d(i,o,r,n,e[7],4139469664,16),n=d(n,i,o,r,e[10],3200236656,23),r=d(r,n,i,o,e[13],681279174,4),o=d(o,r,n,i,e[0],3936430074,11),i=d(i,o,r,n,e[3],3572445317,16),n=d(n,i,o,r,e[6],76029189,23),r=d(r,n,i,o,e[9],3654602809,4),o=d(o,r,n,i,e[12],3873151461,11),i=d(i,o,r,n,e[15],530742520,16),r=h(r,n=d(n,i,o,r,e[2],3299628645,23),i,o,e[0],4096336452,6),o=h(o,r,n,i,e[7],1126891415,10),i=h(i,o,r,n,e[14],2878612391,15),n=h(n,i,o,r,e[5],4237533241,21),r=h(r,n,i,o,e[12],1700485571,6),o=h(o,r,n,i,e[3],2399980690,10),i=h(i,o,r,n,e[10],4293915773,15),n=h(n,i,o,r,e[1],2240044497,21),r=h(r,n,i,o,e[8],1873313359,6),o=h(o,r,n,i,e[15],4264355552,10),i=h(i,o,r,n,e[6],2734768916,15),n=h(n,i,o,r,e[13],1309151649,21),r=h(r,n,i,o,e[4],4149444226,6),o=h(o,r,n,i,e[11],3174756917,10),i=h(i,o,r,n,e[2],718787259,15),n=h(n,i,o,r,e[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+n|0,this._c=this._c+i|0,this._d=this._d+o|0},s.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=s},2481:(e,t,r)=>{!function(){var t=r(6229),n=r(1793).utf8,i=r(8904),o=r(1793).bin,a=function(e,r){e.constructor==String?e=r&&"binary"===r.encoding?o.stringToBytes(e):n.stringToBytes(e):i(e)?e=Array.prototype.slice.call(e,0):Array.isArray(e)||e.constructor===Uint8Array||(e=e.toString());for(var s=t.bytesToWords(e),c=8*e.length,l=1732584193,u=-271733879,d=-1732584194,h=271733878,f=0;f>>24)|4278255360&(s[f]<<24|s[f]>>>8);s[c>>>5]|=128<>>9<<4)]=c;var p=a._ff,m=a._gg,g=a._hh,v=a._ii;for(f=0;f>>0,u=u+b>>>0,d=d+w>>>0,h=h+x>>>0}return t.endian([l,u,d,h])};a._ff=function(e,t,r,n,i,o,a){var s=e+(t&r|~t&n)+(i>>>0)+a;return(s<>>32-o)+t},a._gg=function(e,t,r,n,i,o,a){var s=e+(t&n|r&~n)+(i>>>0)+a;return(s<>>32-o)+t},a._hh=function(e,t,r,n,i,o,a){var s=e+(t^r^n)+(i>>>0)+a;return(s<>>32-o)+t},a._ii=function(e,t,r,n,i,o,a){var s=e+(r^(t|~n))+(i>>>0)+a;return(s<>>32-o)+t},a._blocksize=16,a._digestsize=16,e.exports=function(e,r){if(void 0===e||null===e)throw new Error("Illegal argument "+e);var n=t.wordsToBytes(a(e,r));return r&&r.asBytes?n:r&&r.asString?o.bytesToString(n):t.bytesToHex(n)}}()},8009:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>o});var n=Number.isNaN||function(e){return"number"===typeof e&&e!==e};function i(e,t){if(e.length!==t.length)return!1;for(var r=0;r{function t(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=t,t.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},4777:(e,t)=>{"use strict";var r=t;function n(e){return 1===e.length?"0"+e:e}function i(e){for(var t="",r=0;r>8,a=255&i;o?r.push(o,a):r.push(a)}return r},r.zero2=n,r.toHex=i,r.encode=function(e,t){return"hex"===t?i(e):e}},9258:(e,t,r)=>{"use strict";var n=function(){if("undefined"!==typeof self)return self;if("undefined"!==typeof window)return window;if("undefined"!==typeof r.g)return r.g;throw new Error("unable to locate global object")}();e.exports=t=n.fetch,n.fetch&&(t.default=n.fetch.bind(n)),t.Headers=n.Headers,t.Request=n.Request,t.Response=n.Response},1520:(e,t,r)=>{var n=r(529);function i(e){if("number"!==typeof e)throw new TypeError("Expected Number, got "+typeof e+" "+e);return Number.isFinite(e)?e+n(e):e}i.indicator=n,e.exports=i},529:e=>{e.exports=function(e){var t=(e=Math.abs(e))%100;if(t>=10&&t<=20)return"th";var r=e%10;return 1===r?"st":2===r?"nd":3===r?"rd":"th"}},8115:function(e,t){var r,n,i;n=[],r=function e(){"use strict";var t="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:{},r=!t.document&&!!t.postMessage,n=t.IS_PAPA_WORKER||!1,i={},o=0,a={parse:function(r,n){var s=(n=n||{}).dynamicTyping||!1;if(x(s)&&(n.dynamicTypingFunction=s,s={}),n.dynamicTyping=s,n.transform=!!x(n.transform)&&n.transform,n.worker&&a.WORKERS_SUPPORTED){var c=function(){if(!a.WORKERS_SUPPORTED)return!1;var r,n,s=(r=t.URL||t.webkitURL||null,n=e.toString(),a.BLOB_URL||(a.BLOB_URL=r.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ","(",n,")();"],{type:"text/javascript"})))),c=new t.Worker(s);return c.onmessage=g,c.id=o++,i[c.id]=c}();return c.userStep=n.step,c.userChunk=n.chunk,c.userComplete=n.complete,c.userError=n.error,n.step=x(n.step),n.chunk=x(n.chunk),n.complete=x(n.complete),n.error=x(n.error),delete n.worker,void c.postMessage({input:r,config:n,workerId:c.id})}var f=null;return a.NODE_STREAM_INPUT,"string"==typeof r?(r=function(e){return 65279===e.charCodeAt(0)?e.slice(1):e}(r),f=n.download?new l(n):new d(n)):!0===r.readable&&x(r.read)&&x(r.on)?f=new h(n):(t.File&&r instanceof File||r instanceof Object)&&(f=new u(n)),f.stream(r)},unparse:function(e,t){var r=!1,n=!0,i=",",o="\r\n",s='"',c=s+s,l=!1,u=null,d=!1;!function(){if("object"==typeof t){if("string"!=typeof t.delimiter||a.BAD_DELIMITERS.filter((function(e){return-1!==t.delimiter.indexOf(e)})).length||(i=t.delimiter),("boolean"==typeof t.quotes||"function"==typeof t.quotes||Array.isArray(t.quotes))&&(r=t.quotes),"boolean"!=typeof t.skipEmptyLines&&"string"!=typeof t.skipEmptyLines||(l=t.skipEmptyLines),"string"==typeof t.newline&&(o=t.newline),"string"==typeof t.quoteChar&&(s=t.quoteChar),"boolean"==typeof t.header&&(n=t.header),Array.isArray(t.columns)){if(0===t.columns.length)throw new Error("Option columns is empty");u=t.columns}void 0!==t.escapeChar&&(c=t.escapeChar+s),("boolean"==typeof t.escapeFormulae||t.escapeFormulae instanceof RegExp)&&(d=t.escapeFormulae instanceof RegExp?t.escapeFormulae:/^[=+\-@\t\r].*$/)}}();var h=new RegExp(p(s),"g");if("string"==typeof e&&(e=JSON.parse(e)),Array.isArray(e)){if(!e.length||Array.isArray(e[0]))return f(null,e,l);if("object"==typeof e[0])return f(u||Object.keys(e[0]),e,l)}else if("object"==typeof e)return"string"==typeof e.data&&(e.data=JSON.parse(e.data)),Array.isArray(e.data)&&(e.fields||(e.fields=e.meta&&e.meta.fields||u),e.fields||(e.fields=Array.isArray(e.data[0])?e.fields:"object"==typeof e.data[0]?Object.keys(e.data[0]):[]),Array.isArray(e.data[0])||"object"==typeof e.data[0]||(e.data=[e.data])),f(e.fields||[],e.data||[],l);throw new Error("Unable to serialize unrecognized input");function f(e,t,r){var a="";"string"==typeof e&&(e=JSON.parse(e)),"string"==typeof t&&(t=JSON.parse(t));var s=Array.isArray(e)&&0=this._config.preview;if(n)t.postMessage({results:s,workerId:a.WORKER_ID,finished:l});else if(x(this._config.chunk)&&!r){if(this._config.chunk(s,this._handle),this._handle.paused()||this._handle.aborted())return void(this._halted=!0);s=void 0,this._completeResults=void 0}return this._config.step||this._config.chunk||(this._completeResults.data=this._completeResults.data.concat(s.data),this._completeResults.errors=this._completeResults.errors.concat(s.errors),this._completeResults.meta=s.meta),this._completed||!l||!x(this._config.complete)||s&&s.meta.aborted||(this._config.complete(this._completeResults,this._input),this._completed=!0),l||s&&s.meta.paused||this._nextChunk(),s}this._halted=!0},this._sendError=function(e){x(this._config.error)?this._config.error(e):n&&this._config.error&&t.postMessage({workerId:a.WORKER_ID,error:e,finished:!1})}}function l(e){var t;(e=e||{}).chunkSize||(e.chunkSize=a.RemoteChunkSize),c.call(this,e),this._nextChunk=r?function(){this._readChunk(),this._chunkLoaded()}:function(){this._readChunk()},this.stream=function(e){this._input=e,this._nextChunk()},this._readChunk=function(){if(this._finished)this._chunkLoaded();else{if(t=new XMLHttpRequest,this._config.withCredentials&&(t.withCredentials=this._config.withCredentials),r||(t.onload=w(this._chunkLoaded,this),t.onerror=w(this._chunkError,this)),t.open(this._config.downloadRequestBody?"POST":"GET",this._input,!r),this._config.downloadRequestHeaders){var e=this._config.downloadRequestHeaders;for(var n in e)t.setRequestHeader(n,e[n])}if(this._config.chunkSize){var i=this._start+this._config.chunkSize-1;t.setRequestHeader("Range","bytes="+this._start+"-"+i)}try{t.send(this._config.downloadRequestBody)}catch(e){this._chunkError(e.message)}r&&0===t.status&&this._chunkError()}},this._chunkLoaded=function(){4===t.readyState&&(t.status<200||400<=t.status?this._chunkError():(this._start+=this._config.chunkSize?this._config.chunkSize:t.responseText.length,this._finished=!this._config.chunkSize||this._start>=function(e){var t=e.getResponseHeader("Content-Range");return null===t?-1:parseInt(t.substring(t.lastIndexOf("/")+1))}(t),this.parseChunk(t.responseText)))},this._chunkError=function(e){var r=t.statusText||e;this._sendError(new Error(r))}}function u(e){var t,r;(e=e||{}).chunkSize||(e.chunkSize=a.LocalChunkSize),c.call(this,e);var n="undefined"!=typeof FileReader;this.stream=function(e){this._input=e,r=e.slice||e.webkitSlice||e.mozSlice,n?((t=new FileReader).onload=w(this._chunkLoaded,this),t.onerror=w(this._chunkError,this)):t=new FileReaderSync,this._nextChunk()},this._nextChunk=function(){this._finished||this._config.preview&&!(this._rowCount=this._input.size,this.parseChunk(e.target.result)},this._chunkError=function(){this._sendError(t.error)}}function d(e){var t;c.call(this,e=e||{}),this.stream=function(e){return t=e,this._nextChunk()},this._nextChunk=function(){if(!this._finished){var e,r=this._config.chunkSize;return r?(e=t.substring(0,r),t=t.substring(r)):(e=t,t=""),this._finished=!t,this.parseChunk(e)}}}function h(e){c.call(this,e=e||{});var t=[],r=!0,n=!1;this.pause=function(){c.prototype.pause.apply(this,arguments),this._input.pause()},this.resume=function(){c.prototype.resume.apply(this,arguments),this._input.resume()},this.stream=function(e){this._input=e,this._input.on("data",this._streamData),this._input.on("end",this._streamEnd),this._input.on("error",this._streamError)},this._checkIsFinished=function(){n&&1===t.length&&(this._finished=!0)},this._nextChunk=function(){this._checkIsFinished(),t.length?this.parseChunk(t.shift()):r=!0},this._streamData=w((function(e){try{t.push("string"==typeof e?e:e.toString(this._config.encoding)),r&&(r=!1,this._checkIsFinished(),this.parseChunk(t.shift()))}catch(e){this._streamError(e)}}),this),this._streamError=w((function(e){this._streamCleanUp(),this._sendError(e)}),this),this._streamEnd=w((function(){this._streamCleanUp(),n=!0,this._streamData("")}),this),this._streamCleanUp=w((function(){this._input.removeListener("data",this._streamData),this._input.removeListener("end",this._streamEnd),this._input.removeListener("error",this._streamError)}),this)}function f(e){var t,r,n,i=Math.pow(2,53),o=-i,s=/^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/,c=/^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/,l=this,u=0,d=0,h=!1,f=!1,g=[],v={data:[],errors:[],meta:{}};if(x(e.step)){var y=e.step;e.step=function(t){if(v=t,k())_();else{if(_(),0===v.data.length)return;u+=t.data.length,e.preview&&u>e.preview?r.abort():(v.data=v.data[0],y(v,l))}}}function w(t){return"greedy"===e.skipEmptyLines?""===t.join("").trim():1===t.length&&0===t[0].length}function _(){return v&&n&&(E("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+a.DefaultDelimiter+"'"),n=!1),e.skipEmptyLines&&(v.data=v.data.filter((function(e){return!w(e)}))),k()&&function(){if(v)if(Array.isArray(v.data[0])){for(var t=0;k()&&t=g.length?"__parsed_extra":g[n]),e.transform&&(a=e.transform(a,o)),a=S(o,a),"__parsed_extra"===o?(i[o]=i[o]||[],i[o].push(a)):i[o]=a}return e.header&&(n>g.length?E("FieldMismatch","TooManyFields","Too many fields: expected "+g.length+" fields but parsed "+n,d+r):n=n.length/2?"\r\n":"\r"}(i,c)),n=!1,e.delimiter)x(e.delimiter)&&(e.delimiter=e.delimiter(i),v.meta.delimiter=e.delimiter);else{var l=function(t,r,n,i,o){var s,c,l,u;o=o||[",","\t","|",";",a.RECORD_SEP,a.UNIT_SEP];for(var d=0;d=s)return K(!0)}else for(B=u,u++;;){if(-1===(B=a.indexOf(t,B+1)))return f||_.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:w.length,index:u}),V();if(B===m-1)return V(a.substring(u,B).replace(z,t));if(t!==l||a[B+1]!==l){if(t===l||0===B||a[B-1]!==l){-1!==N&&N=s)return K(!0);break}_.push({type:"Quotes",code:"InvalidQuotes",message:"Trailing quote on quoted field is malformed",row:w.length,index:u}),B++}}else B++}return V();function $(e){w.push(e),S=u}function H(e){var t=0;if(-1!==e){var r=a.substring(B+1,e);r&&""===r.trim()&&(t=r.length)}return t}function V(e){return f||(void 0===e&&(e=a.substring(u)),k.push(e),u=m,$(k),b&&W()),K()}function q(e){u=e,$(k),k=[],D=a.indexOf(n,u)}function K(e){return{data:w,errors:_,meta:{delimiter:r,linebreak:n,aborted:d,truncated:!!e,cursor:S+(h||0)}}}function W(){o(K()),w=[],_=[]}},this.abort=function(){d=!0},this.getCharIndex=function(){return u}}function g(e){var t=e.data,r=i[t.workerId],n=!1;if(t.error)r.userError(t.error,t.file);else if(t.results&&t.results.data){var o={abort:function(){n=!0,v(t.workerId,{data:[],errors:[],meta:{aborted:!0}})},pause:y,resume:y};if(x(r.userStep)){for(var a=0;a{t.pbkdf2=r(7682),t.pbkdf2Sync=r(4038)},7682:(e,t,r)=>{var n,i,o=r(8795).Buffer,a=r(8177),s=r(1811),c=r(4038),l=r(4648),u=r.g.crypto&&r.g.crypto.subtle,d={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},h=[];function f(){return i||(i=r.g.process&&r.g.process.nextTick?r.g.process.nextTick:r.g.queueMicrotask?r.g.queueMicrotask:r.g.setImmediate?r.g.setImmediate:r.g.setTimeout)}function p(e,t,r,n,i){return u.importKey("raw",e,{name:"PBKDF2"},!1,["deriveBits"]).then((function(e){return u.deriveBits({name:"PBKDF2",salt:t,iterations:r,hash:{name:i}},e,n<<3)})).then((function(e){return o.from(e)}))}e.exports=function(e,t,i,m,g,v){"function"===typeof g&&(v=g,g=void 0);var y=d[(g=g||"sha1").toLowerCase()];if(y&&"function"===typeof r.g.Promise){if(a(i,m),e=l(e,s,"Password"),t=l(t,s,"Salt"),"function"!==typeof v)throw new Error("No callback provided to pbkdf2");!function(e,t){e.then((function(e){f()((function(){t(null,e)}))}),(function(e){f()((function(){t(e)}))}))}(function(e){if(r.g.process&&!r.g.process.browser)return Promise.resolve(!1);if(!u||!u.importKey||!u.deriveBits)return Promise.resolve(!1);if(void 0!==h[e])return h[e];var t=p(n=n||o.alloc(8),n,10,128,e).then((function(){return!0})).catch((function(){return!1}));return h[e]=t,t}(y).then((function(r){return r?p(e,t,i,m,y):c(e,t,i,m,g)})),v)}else f()((function(){var r;try{r=c(e,t,i,m,g)}catch(n){return v(n)}v(null,r)}))}},1811:(e,t,r)=>{var n,i=r(9996);if(r.g.process&&r.g.process.browser)n="utf-8";else if(r.g.process&&r.g.process.version){n=parseInt(i.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary"}else n="utf-8";e.exports=n},8177:e=>{var t=Math.pow(2,30)-1;e.exports=function(e,r){if("number"!==typeof e)throw new TypeError("Iterations not a number");if(e<0)throw new TypeError("Bad iterations");if("number"!==typeof r)throw new TypeError("Key length not a number");if(r<0||r>t||r!==r)throw new TypeError("Bad key length")}},4038:(e,t,r)=>{var n=r(8686),i=r(7409),o=r(2308),a=r(8795).Buffer,s=r(8177),c=r(1811),l=r(4648),u=a.alloc(128),d={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function h(e,t,r){var s=function(e){function t(t){return o(e).update(t).digest()}function r(e){return(new i).update(e).digest()}return"rmd160"===e||"ripemd160"===e?r:"md5"===e?n:t}(e),c="sha512"===e||"sha384"===e?128:64;t.length>c?t=s(t):t.length{var n=r(8795).Buffer;e.exports=function(e,t,r){if(n.isBuffer(e))return e;if("string"===typeof e)return n.from(e,t);if(ArrayBuffer.isView(e))return n.from(e.buffer);throw new TypeError(r+" must be a string, a Buffer, a typed array or a DataView")}},649:function(e){e.exports=function(){var e=[],t=[],r={},n={},i={};function o(e){return"string"===typeof e?new RegExp("^"+e+"$","i"):e}function a(e,t){return e===t?t:e===e.toLowerCase()?t.toLowerCase():e===e.toUpperCase()?t.toUpperCase():e[0]===e[0].toUpperCase()?t.charAt(0).toUpperCase()+t.substr(1).toLowerCase():t.toLowerCase()}function s(e,t){return e.replace(/\$(\d{1,2})/g,(function(e,r){return t[r]||""}))}function c(e,t){return e.replace(t[0],(function(r,n){var i=s(t[1],arguments);return a(""===r?e[n-1]:r,i)}))}function l(e,t,n){if(!e.length||r.hasOwnProperty(e))return t;for(var i=n.length;i--;){var o=n[i];if(o[0].test(t))return c(t,o)}return t}function u(e,t,r){return function(n){var i=n.toLowerCase();return t.hasOwnProperty(i)?a(n,i):e.hasOwnProperty(i)?a(n,e[i]):l(i,n,r)}}function d(e,t,r,n){return function(n){var i=n.toLowerCase();return!!t.hasOwnProperty(i)||!e.hasOwnProperty(i)&&l(i,i,r)===i}}function h(e,t,r){return(r?t+" ":"")+(1===t?h.singular(e):h.plural(e))}return h.plural=u(i,n,e),h.isPlural=d(i,n,e),h.singular=u(n,i,t),h.isSingular=d(n,i,t),h.addPluralRule=function(t,r){e.push([o(t),r])},h.addSingularRule=function(e,r){t.push([o(e),r])},h.addUncountableRule=function(e){"string"!==typeof e?(h.addPluralRule(e,"$0"),h.addSingularRule(e,"$0")):r[e.toLowerCase()]=!0},h.addIrregularRule=function(e,t){t=t.toLowerCase(),e=e.toLowerCase(),i[e]=t,n[t]=e},[["I","we"],["me","us"],["he","they"],["she","they"],["them","them"],["myself","ourselves"],["yourself","yourselves"],["itself","themselves"],["herself","themselves"],["himself","themselves"],["themself","themselves"],["is","are"],["was","were"],["has","have"],["this","these"],["that","those"],["echo","echoes"],["dingo","dingoes"],["volcano","volcanoes"],["tornado","tornadoes"],["torpedo","torpedoes"],["genus","genera"],["viscus","viscera"],["stigma","stigmata"],["stoma","stomata"],["dogma","dogmata"],["lemma","lemmata"],["schema","schemata"],["anathema","anathemata"],["ox","oxen"],["axe","axes"],["die","dice"],["yes","yeses"],["foot","feet"],["eave","eaves"],["goose","geese"],["tooth","teeth"],["quiz","quizzes"],["human","humans"],["proof","proofs"],["carve","carves"],["valve","valves"],["looey","looies"],["thief","thieves"],["groove","grooves"],["pickaxe","pickaxes"],["passerby","passersby"]].forEach((function(e){return h.addIrregularRule(e[0],e[1])})),[[/s?$/i,"s"],[/[^\u0000-\u007F]$/i,"$0"],[/([^aeiou]ese)$/i,"$1"],[/(ax|test)is$/i,"$1es"],[/(alias|[^aou]us|t[lm]as|gas|ris)$/i,"$1es"],[/(e[mn]u)s?$/i,"$1s"],[/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i,"$1"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1i"],[/(alumn|alg|vertebr)(?:a|ae)$/i,"$1ae"],[/(seraph|cherub)(?:im)?$/i,"$1im"],[/(her|at|gr)o$/i,"$1oes"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i,"$1a"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i,"$1a"],[/sis$/i,"ses"],[/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i,"$1$2ves"],[/([^aeiouy]|qu)y$/i,"$1ies"],[/([^ch][ieo][ln])ey$/i,"$1ies"],[/(x|ch|ss|sh|zz)$/i,"$1es"],[/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i,"$1ices"],[/\b((?:tit)?m|l)(?:ice|ouse)$/i,"$1ice"],[/(pe)(?:rson|ople)$/i,"$1ople"],[/(child)(?:ren)?$/i,"$1ren"],[/eaux$/i,"$0"],[/m[ae]n$/i,"men"],["thou","you"]].forEach((function(e){return h.addPluralRule(e[0],e[1])})),[[/s$/i,""],[/(ss)$/i,"$1"],[/(wi|kni|(?:after|half|high|low|mid|non|night|[^\w]|^)li)ves$/i,"$1fe"],[/(ar|(?:wo|[ae])l|[eo][ao])ves$/i,"$1f"],[/ies$/i,"y"],[/\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i,"$1ie"],[/\b(mon|smil)ies$/i,"$1ey"],[/\b((?:tit)?m|l)ice$/i,"$1ouse"],[/(seraph|cherub)im$/i,"$1"],[/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i,"$1"],[/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i,"$1sis"],[/(movie|twelve|abuse|e[mn]u)s$/i,"$1"],[/(test)(?:is|es)$/i,"$1is"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1us"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i,"$1um"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i,"$1on"],[/(alumn|alg|vertebr)ae$/i,"$1a"],[/(cod|mur|sil|vert|ind)ices$/i,"$1ex"],[/(matr|append)ices$/i,"$1ix"],[/(pe)(rson|ople)$/i,"$1rson"],[/(child)ren$/i,"$1"],[/(eau)x?$/i,"$1"],[/men$/i,"man"]].forEach((function(e){return h.addSingularRule(e[0],e[1])})),["adulthood","advice","agenda","aid","aircraft","alcohol","ammo","analytics","anime","athletics","audio","bison","blood","bream","buffalo","butter","carp","cash","chassis","chess","clothing","cod","commerce","cooperation","corps","debris","diabetes","digestion","elk","energy","equipment","excretion","expertise","firmware","flounder","fun","gallows","garbage","graffiti","hardware","headquarters","health","herpes","highjinks","homework","housework","information","jeans","justice","kudos","labour","literature","machinery","mackerel","mail","media","mews","moose","music","mud","manga","news","only","personnel","pike","plankton","pliers","police","pollution","premises","rain","research","rice","salmon","scissors","series","sewage","shambles","shrimp","software","species","staff","swine","tennis","traffic","transportation","trout","tuna","wealth","welfare","whiting","wildebeest","wildlife","you",/pok[e\xe9]mon$/i,/[^aeiou]ese$/i,/deer$/i,/fish$/i,/measles$/i,/o[iu]s$/i,/pox$/i,/sheep$/i].forEach(h.addUncountableRule),h}()},9996:e=>{var t,r,n=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function a(e){if(t===setTimeout)return setTimeout(e,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}!function(){try{t="function"===typeof setTimeout?setTimeout:i}catch(e){t=i}try{r="function"===typeof clearTimeout?clearTimeout:o}catch(e){r=o}}();var s,c=[],l=!1,u=-1;function d(){l&&s&&(l=!1,s.length?c=s.concat(c):u=-1,c.length&&h())}function h(){if(!l){var e=a(d);l=!0;for(var t=c.length;t;){for(s=c,c=[];++u1)for(var r=1;r{"use strict";var n=r(4592),i=r(9175),o=Object.prototype.hasOwnProperty;function a(e){return e&&"EPROMISERETRY"===e.code&&o.call(e,"retried")}e.exports=function(e,t){var r,o;return"object"===typeof e&&"function"===typeof t&&(r=t,t=e,e=r),o=i.operation(t),new Promise((function(t,r){o.attempt((function(i){Promise.resolve().then((function(){return e((function(e){throw a(e)&&(e=e.retried),n(new Error("Retrying"),"EPROMISERETRY",{retried:e})}),i)})).then(t,(function(e){a(e)&&(e=e.retried,o.retry(e||new Error))||r(e)}))}))}))}},7956:(e,t,r)=>{"use strict";var n=r(1395);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,r,i,o,a){if(a!==n){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return r.PropTypes=r,r}},9922:(e,t,r)=>{e.exports=r(7956)()},1395:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},6527:(e,t)=>{var r,n,i,o=function(){var e=function(e,t){var r=e,n=o[t],i=null,a=0,s=null,c=[],l={},u=function(e,t){i=function(e){for(var t=new Array(e),r=0;r=7&&m(e),null==s&&(s=A(r,n,c)),S(s,t)},d=function(e,t){for(var r=-1;r<=7;r+=1)if(!(e+r<=-1||a<=e+r))for(var n=-1;n<=7;n+=1)t+n<=-1||a<=t+n||(i[e+r][t+n]=0<=r&&r<=6&&(0==n||6==n)||0<=n&&n<=6&&(0==r||6==r)||2<=r&&r<=4&&2<=n&&n<=4)},h=function(){for(var e=8;e>n&1);i[Math.floor(n/3)][n%3+a-8-3]=o}for(n=0;n<18;n+=1){o=!e&&1==(t>>n&1);i[n%3+a-8-3][Math.floor(n/3)]=o}},k=function(e,t){for(var r=n<<3|t,o=p.getBCHTypeInfo(r),s=0;s<15;s+=1){var c=!e&&1==(o>>s&1);s<6?i[s][8]=c:s<8?i[s+1][8]=c:i[a-15+s][8]=c}for(s=0;s<15;s+=1){c=!e&&1==(o>>s&1);s<8?i[8][a-s-1]=c:s<9?i[8][15-s-1+1]=c:i[8][15-s-1]=c}i[a-8][8]=!e},S=function(e,t){for(var r=-1,n=a-1,o=7,s=0,c=p.getMaskFunction(t),l=a-1;l>0;l-=2)for(6==l&&(l-=1);;){for(var u=0;u<2;u+=1)if(null==i[n][l-u]){var d=!1;s>>o&1)),c(n,l-u)&&(d=!d),i[n][l-u]=d,-1==(o-=1)&&(s+=1,o=7)}if((n+=r)<0||a<=n){n-=r,r=-r;break}}},A=function(e,t,r){for(var n=v.getRSBlocks(e,t),i=y(),o=0;o8*s)throw"code length overflow. ("+i.getLengthInBits()+">"+8*s+")";for(i.getLengthInBits()+4<=8*s&&i.put(0,4);i.getLengthInBits()%8!=0;)i.putBit(!1);for(;!(i.getLengthInBits()>=8*s)&&(i.put(236,8),!(i.getLengthInBits()>=8*s));)i.put(17,8);return function(e,t){for(var r=0,n=0,i=0,o=new Array(t.length),a=new Array(t.length),s=0;s=0?h.getAt(f):0}}var m=0;for(u=0;un)&&(e=n,t=r)}return t}())},l.createTableTag=function(e,t){e=e||2;var r="";r+='";for(var i=0;i';r+=""}return r+="",r+="
"},l.createSvgTag=function(e,t,r,n){var i={};"object"==typeof arguments[0]&&(e=(i=arguments[0]).cellSize,t=i.margin,r=i.alt,n=i.title),e=e||2,t="undefined"==typeof t?4*e:t,(r="string"===typeof r?{text:r}:r||{}).text=r.text||null,r.id=r.text?r.id||"qrcode-description":null,(n="string"===typeof n?{text:n}:n||{}).text=n.text||null,n.id=n.text?n.id||"qrcode-title":null;var o,a,s,c,u=l.getModuleCount()*e+2*t,d="";for(c="l"+e+",0 0,"+e+" -"+e+",0 0,-"+e+"z ",d+=''+P(n.text)+"":"",d+=r.text?''+P(r.text)+"":"",d+='',d+='":t+=">";break;case"&":t+="&";break;case'"':t+=""";break;default:t+=n}}return t};return l.createASCII=function(e,t){if((e=e||1)<2)return function(e){e="undefined"==typeof e?2:e;var t,r,n,i,o,a=1*l.getModuleCount()+2*e,s=e,c=a-e,u={"\u2588\u2588":"\u2588","\u2588 ":"\u2580"," \u2588":"\u2584"," ":" "},d={"\u2588\u2588":"\u2580","\u2588 ":"\u2580"," \u2588":" "," ":" "},h="";for(t=0;t=c?d[o]:u[o];h+="\n"}return a%2&&e>0?h.substring(0,h.length-a-1)+Array(a+1).join("\u2580"):h.substring(0,h.length-1)}(t);e-=1,t="undefined"==typeof t?2*e:t;var r,n,i,o,a=l.getModuleCount()*e+2*t,s=t,c=a-t,u=Array(e+1).join("\u2588\u2588"),d=Array(e+1).join(" "),h="",f="";for(r=0;r>>8),t.push(255&a)):t.push(n)}}return t}};var t=1,r=2,n=4,i=8,o={L:1,M:0,Q:3,H:2},a=0,s=1,c=2,l=3,u=4,d=5,h=6,f=7,p=function(){var e=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],o=1335,p=7973,v={},y=function(e){for(var t=0;0!=e;)t+=1,e>>>=1;return t};return v.getBCHTypeInfo=function(e){for(var t=e<<10;y(t)-y(o)>=0;)t^=o<=0;)t^=p<5&&(r+=3+o-5)}for(n=0;n=256;)t-=255;return e[t]}};return n}();function g(e,t){if("undefined"==typeof e.length)throw e.length+"/"+t;var r=function(){for(var r=0;r>>7-t%8&1)},put:function(e,t){for(var n=0;n>>t-n-1&1))},getLengthInBits:function(){return t},putBit:function(r){var n=Math.floor(t/8);e.length<=n&&e.push(0),r&&(e[n]|=128>>>t%8),t+=1}};return r},b=function(e){var r=t,n=e,i={getMode:function(){return r},getLength:function(e){return n.length},write:function(e){for(var t=n,r=0;r+2>>8&255)+(255&n),e.put(n,13),r+=2}if(r>>8)},writeBytes:function(e,r,n){r=r||0,n=n||e.length;for(var i=0;i0&&(t+=","),t+=e[r];return t+="]"}};return t},S=function(e){var t=e,r=0,n=0,i=0,o={read:function(){for(;i<8;){if(r>=t.length){if(0==i)return-1;throw"unexpected end of file./"+i}var e=t.charAt(r);if(r+=1,"="==e)return i=0,-1;e.match(/^\s$/)||(n=n<<6|a(e.charCodeAt(0)),i+=6)}var o=n>>>i-8&255;return i-=8,o}},a=function(e){if(65<=e&&e<=90)return e-65;if(97<=e&&e<=122)return e-97+26;if(48<=e&&e<=57)return e-48+52;if(43==e)return 62;if(47==e)return 63;throw"c:"+e};return o},E=function(e,t,r){for(var n=function(e,t){var r=e,n=t,i=new Array(e*t),o={setPixel:function(e,t,n){i[t*r+e]=n},write:function(e){e.writeString("GIF87a"),e.writeShort(r),e.writeShort(n),e.writeByte(128),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(255),e.writeByte(255),e.writeByte(255),e.writeString(","),e.writeShort(0),e.writeShort(0),e.writeShort(r),e.writeShort(n),e.writeByte(0);var t=a(2);e.writeByte(2);for(var i=0;t.length-i>255;)e.writeByte(255),e.writeBytes(t,i,255),i+=255;e.writeByte(t.length-i),e.writeBytes(t,i,t.length-i),e.writeByte(0),e.writeString(";")}},a=function(e){for(var t=1<>>i!=0)throw"length over";for(;r+i>=8;)t.writeByte(255&(e<>>=8-r,n=0,r=0;n|=e<0&&t.writeByte(n)}}}(c);l.write(t,n);var u=0,d=String.fromCharCode(i[u]);for(u+=1;u=6;)o(e>>>t-6),t-=6},i.flush=function(){if(t>0&&(o(e<<6-t),e=0,t=0),r%3!=0)for(var i=3-r%3,a=0;a>6,128|63&n):n<55296||n>=57344?t.push(224|n>>12,128|n>>6&63,128|63&n):(r++,n=65536+((1023&n)<<10|1023&e.charCodeAt(r)),t.push(240|n>>18,128|n>>12&63,128|n>>6&63,128|63&n))}return t}(e)},n=[],void 0===(i="function"===typeof(r=function(){return o})?r.apply(t,n):r)||(e.exports=i)},693:(e,t,r)=>{"use strict";var n=r(4082),i=r(2360);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r",t=le.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,r,n){MSApp.execUnsafeLocalFunction((function(){return ue(e,t)}))}:ue);function he(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&3===r.nodeType)return void(r.nodeValue=t)}e.textContent=t}var fe={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},pe=["Webkit","ms","Moz","O"];function me(e,t,r){return null==t||"boolean"===typeof t||""===t?"":r||"number"!==typeof t||0===t||fe.hasOwnProperty(e)&&fe[e]?(""+t).trim():t+"px"}function ge(e,t){for(var r in e=e.style,t)if(t.hasOwnProperty(r)){var n=0===r.indexOf("--"),i=me(r,t[r],n);"float"===r&&(r="cssFloat"),n?e.setProperty(r,i):e[r]=i}}Object.keys(fe).forEach((function(e){pe.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),fe[t]=fe[e]}))}));var ve=D({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ye(e,t){if(t){if(ve[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(o(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(o(60));if("object"!==typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(o(61))}if(null!=t.style&&"object"!==typeof t.style)throw Error(o(62))}}function be(e,t){if(-1===e.indexOf("-"))return"string"===typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var we=null;function xe(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var _e=null,ke=null,Se=null;function Ee(e){if(e=bi(e)){if("function"!==typeof _e)throw Error(o(280));var t=e.stateNode;t&&(t=xi(t),_e(e.stateNode,e.type,t))}}function Ae(e){ke?Se?Se.push(e):Se=[e]:ke=e}function Pe(){if(ke){var e=ke,t=Se;if(Se=ke=null,Ee(e),t)for(e=0;e>>=0,0===e?32:31-(st(e)/ct|0)|0},st=Math.log,ct=Math.LN2;var lt=64,ut=4194304;function dt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ht(e,t){var r=e.pendingLanes;if(0===r)return 0;var n=0,i=e.suspendedLanes,o=e.pingedLanes,a=268435455&r;if(0!==a){var s=a&~i;0!==s?n=dt(s):0!==(o&=a)&&(n=dt(o))}else 0!==(a=r&~i)?n=dt(a):0!==o&&(n=dt(o));if(0===n)return 0;if(0!==t&&t!==n&&0===(t&i)&&((i=n&-n)>=(o=t&-t)||16===i&&0!==(4194240&o)))return t;if(0!==(4&n)&&(n|=16&r),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=n;0r;r++)t.push(e);return t}function vt(e,t,r){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-at(t)]=r}function yt(e,t){var r=e.entangledLanes|=t;for(e=e.entanglements;r;){var n=31-at(r),i=1<=Mr),Dr=String.fromCharCode(32),zr=!1;function Br(e,t){switch(e){case"keyup":return-1!==Rr.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ur(e){return"object"===typeof(e=e.detail)&&"data"in e?e.data:null}var Fr=!1;var $r={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Hr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!$r[e.type]:"textarea"===t}function Vr(e,t,r,n){Ae(n),0<(t=Kn(t,"onChange")).length&&(r=new lr("onChange","change",null,r,n),e.push({event:r,listeners:t}))}var qr=null,Kr=null;function Wr(e){zn(e,0)}function Gr(e){if(W(wi(e)))return e}function Zr(e,t){if("change"===e)return t}var Yr=!1;if(u){var Xr;if(u){var Jr="oninput"in document;if(!Jr){var Qr=document.createElement("div");Qr.setAttribute("oninput","return;"),Jr="function"===typeof Qr.oninput}Xr=Jr}else Xr=!1;Yr=Xr&&(!document.documentMode||9=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=ln(n)}}function dn(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?dn(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function hn(){for(var e=window,t=G();t instanceof e.HTMLIFrameElement;){try{var r="string"===typeof t.contentWindow.location.href}catch(n){r=!1}if(!r)break;t=G((e=t.contentWindow).document)}return t}function fn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function pn(e){var t=hn(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&dn(r.ownerDocument.documentElement,r)){if(null!==n&&fn(r))if(t=n.start,void 0===(e=n.end)&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if((e=(t=r.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var i=r.textContent.length,o=Math.min(n.start,i);n=void 0===n.end?o:Math.min(n.end,i),!e.extend&&o>n&&(i=n,n=o,o=i),i=un(r,o);var a=un(r,n);i&&a&&(1!==e.rangeCount||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&((t=t.createRange()).setStart(i.node,i.offset),e.removeAllRanges(),o>n?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}for(t=[],e=r;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"===typeof r.focus&&r.focus(),r=0;r=document.documentMode,gn=null,vn=null,yn=null,bn=!1;function wn(e,t,r){var n=r.window===r?r.document:9===r.nodeType?r:r.ownerDocument;bn||null==gn||gn!==G(n)||("selectionStart"in(n=gn)&&fn(n)?n={start:n.selectionStart,end:n.selectionEnd}:n={anchorNode:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset},yn&&cn(yn,n)||(yn=n,0<(n=Kn(vn,"onSelect")).length&&(t=new lr("onSelect","select",null,t,r),e.push({event:t,listeners:n}),t.target=gn)))}function xn(e,t){var r={};return r[e.toLowerCase()]=t.toLowerCase(),r["Webkit"+e]="webkit"+t,r["Moz"+e]="moz"+t,r}var _n={animationend:xn("Animation","AnimationEnd"),animationiteration:xn("Animation","AnimationIteration"),animationstart:xn("Animation","AnimationStart"),transitionend:xn("Transition","TransitionEnd")},kn={},Sn={};function En(e){if(kn[e])return kn[e];if(!_n[e])return e;var t,r=_n[e];for(t in r)if(r.hasOwnProperty(t)&&t in Sn)return kn[e]=r[t];return e}u&&(Sn=document.createElement("div").style,"AnimationEvent"in window||(delete _n.animationend.animation,delete _n.animationiteration.animation,delete _n.animationstart.animation),"TransitionEvent"in window||delete _n.transitionend.transition);var An=En("animationend"),Pn=En("animationiteration"),On=En("animationstart"),Tn=En("transitionend"),jn=new Map,Cn="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Rn(e,t){jn.set(e,t),c(t,[e])}for(var In=0;Inki||(e.current=_i[ki],_i[ki]=null,ki--)}function Ai(e,t){ki++,_i[ki]=e.current,e.current=t}var Pi={},Oi=Si(Pi),Ti=Si(!1),ji=Pi;function Ci(e,t){var r=e.type.contextTypes;if(!r)return Pi;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var i,o={};for(i in r)o[i]=t[i];return n&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function Ri(e){return null!==(e=e.childContextTypes)&&void 0!==e}function Ii(){Ei(Ti),Ei(Oi)}function Mi(e,t,r){if(Oi.current!==Pi)throw Error(o(168));Ai(Oi,t),Ai(Ti,r)}function Li(e,t,r){var n=e.stateNode;if(t=t.childContextTypes,"function"!==typeof n.getChildContext)return r;for(var i in n=n.getChildContext())if(!(i in t))throw Error(o(108,H(e)||"Unknown",i));return D({},r,n)}function Ni(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Pi,ji=Oi.current,Ai(Oi,e),Ai(Ti,Ti.current),!0}function Di(e,t,r){var n=e.stateNode;if(!n)throw Error(o(169));r?(e=Li(e,t,ji),n.__reactInternalMemoizedMergedChildContext=e,Ei(Ti),Ei(Oi),Ai(Oi,e)):Ei(Ti),Ai(Ti,r)}var zi=null,Bi=!1,Ui=!1;function Fi(e){null===zi?zi=[e]:zi.push(e)}function $i(){if(!Ui&&null!==zi){Ui=!0;var e=0,t=bt;try{var r=zi;for(bt=1;e>=a,i-=a,Yi=1<<32-at(t)+i|r<m?(g=d,d=null):g=d.sibling;var v=f(i,d,s[m],c);if(null===v){null===d&&(d=g);break}e&&d&&null===v.alternate&&t(i,d),o=a(v,o,m),null===u?l=v:u.sibling=v,u=v,d=g}if(m===s.length)return r(i,d),io&&Ji(i,m),l;if(null===d){for(;mg?(v=m,m=null):v=m.sibling;var b=f(i,m,y.value,l);if(null===b){null===m&&(m=v);break}e&&m&&null===b.alternate&&t(i,m),s=a(b,s,g),null===d?u=b:d.sibling=b,d=b,m=v}if(y.done)return r(i,m),io&&Ji(i,g),u;if(null===m){for(;!y.done;g++,y=c.next())null!==(y=h(i,y.value,l))&&(s=a(y,s,g),null===d?u=y:d.sibling=y,d=y);return io&&Ji(i,g),u}for(m=n(i,m);!y.done;g++,y=c.next())null!==(y=p(m,i,g,y.value,l))&&(e&&null!==y.alternate&&m.delete(null===y.key?g:y.key),s=a(y,s,g),null===d?u=y:d.sibling=y,d=y);return e&&m.forEach((function(e){return t(i,e)})),io&&Ji(i,g),u}return function e(n,o,a,c){if("object"===typeof a&&null!==a&&a.type===k&&null===a.key&&(a=a.props.children),"object"===typeof a&&null!==a){switch(a.$$typeof){case x:e:{for(var l=a.key,u=o;null!==u;){if(u.key===l){if((l=a.type)===k){if(7===u.tag){r(n,u.sibling),(o=i(u,a.props.children)).return=n,n=o;break e}}else if(u.elementType===l||"object"===typeof l&&null!==l&&l.$$typeof===R&&Zo(l)===u.type){r(n,u.sibling),(o=i(u,a.props)).ref=Wo(n,u,a),o.return=n,n=o;break e}r(n,u);break}t(n,u),u=u.sibling}a.type===k?((o=Nl(a.props.children,n.mode,c,a.key)).return=n,n=o):((c=Ll(a.type,a.key,a.props,null,n.mode,c)).ref=Wo(n,o,a),c.return=n,n=c)}return s(n);case _:e:{for(u=a.key;null!==o;){if(o.key===u){if(4===o.tag&&o.stateNode.containerInfo===a.containerInfo&&o.stateNode.implementation===a.implementation){r(n,o.sibling),(o=i(o,a.children||[])).return=n,n=o;break e}r(n,o);break}t(n,o),o=o.sibling}(o=Bl(a,n.mode,c)).return=n,n=o}return s(n);case R:return e(n,o,(u=a._init)(a._payload),c)}if(te(a))return m(n,o,a,c);if(L(a))return g(n,o,a,c);Go(n,a)}return"string"===typeof a&&""!==a||"number"===typeof a?(a=""+a,null!==o&&6===o.tag?(r(n,o.sibling),(o=i(o,a)).return=n,n=o):(r(n,o),(o=zl(a,n.mode,c)).return=n,n=o),s(n)):r(n,o)}}var Xo=Yo(!0),Jo=Yo(!1),Qo={},ea=Si(Qo),ta=Si(Qo),ra=Si(Qo);function na(e){if(e===Qo)throw Error(o(174));return e}function ia(e,t){switch(Ai(ra,t),Ai(ta,e),Ai(ea,Qo),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:ce(null,"");break;default:t=ce(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Ei(ea),Ai(ea,t)}function oa(){Ei(ea),Ei(ta),Ei(ra)}function aa(e){na(ra.current);var t=na(ea.current),r=ce(t,e.type);t!==r&&(Ai(ta,e),Ai(ea,r))}function sa(e){ta.current===e&&(Ei(ea),Ei(ta))}var ca=Si(0);function la(e){for(var t=e;null!==t;){if(13===t.tag){var r=t.memoizedState;if(null!==r&&(null===(r=r.dehydrated)||"$?"===r.data||"$!"===r.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!==(128&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ua=[];function da(){for(var e=0;er?r:4,e(!0);var n=fa.transition;fa.transition={};try{e(!1),t()}finally{bt=r,fa.transition=n}}function es(){return Pa().memoizedState}function ts(e,t,r){var n=rl(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},ns(e))is(t,r);else if(null!==(r=To(e,t,r,n))){nl(r,e,n,tl()),os(r,t,n)}}function rs(e,t,r){var n=rl(e),i={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(ns(e))is(t,i);else{var o=e.alternate;if(0===e.lanes&&(null===o||0===o.lanes)&&null!==(o=t.lastRenderedReducer))try{var a=t.lastRenderedState,s=o(a,r);if(i.hasEagerState=!0,i.eagerState=s,sn(s,a)){var c=t.interleaved;return null===c?(i.next=i,Oo(t)):(i.next=c.next,c.next=i),void(t.interleaved=i)}}catch(l){}null!==(r=To(e,t,i,n))&&(nl(r,e,n,i=tl()),os(r,t,n))}}function ns(e){var t=e.alternate;return e===ma||null!==t&&t===ma}function is(e,t){ba=ya=!0;var r=e.pending;null===r?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function os(e,t,r){if(0!==(4194240&r)){var n=t.lanes;r|=n&=e.pendingLanes,t.lanes=r,yt(e,r)}}var as={readContext:Ao,useCallback:_a,useContext:_a,useEffect:_a,useImperativeHandle:_a,useInsertionEffect:_a,useLayoutEffect:_a,useMemo:_a,useReducer:_a,useRef:_a,useState:_a,useDebugValue:_a,useDeferredValue:_a,useTransition:_a,useMutableSource:_a,useSyncExternalStore:_a,useId:_a,unstable_isNewReconciler:!1},ss={readContext:Ao,useCallback:function(e,t){return Aa().memoizedState=[e,void 0===t?null:t],e},useContext:Ao,useEffect:Ha,useImperativeHandle:function(e,t,r){return r=null!==r&&void 0!==r?r.concat([e]):null,Fa(4194308,4,Wa.bind(null,t,e),r)},useLayoutEffect:function(e,t){return Fa(4194308,4,e,t)},useInsertionEffect:function(e,t){return Fa(4,2,e,t)},useMemo:function(e,t){var r=Aa();return t=void 0===t?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=Aa();return t=void 0!==r?r(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=ts.bind(null,ma,e),[n.memoizedState,e]},useRef:function(e){return e={current:e},Aa().memoizedState=e},useState:za,useDebugValue:Za,useDeferredValue:function(e){return Aa().memoizedState=e},useTransition:function(){var e=za(!1),t=e[0];return e=Qa.bind(null,e[1]),Aa().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=ma,i=Aa();if(io){if(void 0===r)throw Error(o(407));r=r()}else{if(r=t(),null===jc)throw Error(o(349));0!==(30&pa)||Ia(n,t,r)}i.memoizedState=r;var a={value:r,getSnapshot:t};return i.queue=a,Ha(La.bind(null,n,a,e),[e]),n.flags|=2048,Ba(9,Ma.bind(null,n,a,r,t),void 0,null),r},useId:function(){var e=Aa(),t=jc.identifierPrefix;if(io){var r=Xi;t=":"+t+"R"+(r=(Yi&~(1<<32-at(Yi)-1)).toString(32)+r),0<(r=wa++)&&(t+="H"+r.toString(32)),t+=":"}else t=":"+t+"r"+(r=xa++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},cs={readContext:Ao,useCallback:Ya,useContext:Ao,useEffect:Va,useImperativeHandle:Ga,useInsertionEffect:qa,useLayoutEffect:Ka,useMemo:Xa,useReducer:Ta,useRef:Ua,useState:function(){return Ta(Oa)},useDebugValue:Za,useDeferredValue:function(e){return Ja(Pa(),ga.memoizedState,e)},useTransition:function(){return[Ta(Oa)[0],Pa().memoizedState]},useMutableSource:Ca,useSyncExternalStore:Ra,useId:es,unstable_isNewReconciler:!1},ls={readContext:Ao,useCallback:Ya,useContext:Ao,useEffect:Va,useImperativeHandle:Ga,useInsertionEffect:qa,useLayoutEffect:Ka,useMemo:Xa,useReducer:ja,useRef:Ua,useState:function(){return ja(Oa)},useDebugValue:Za,useDeferredValue:function(e){var t=Pa();return null===ga?t.memoizedState=e:Ja(t,ga.memoizedState,e)},useTransition:function(){return[ja(Oa)[0],Pa().memoizedState]},useMutableSource:Ca,useSyncExternalStore:Ra,useId:es,unstable_isNewReconciler:!1};function us(e,t){try{var r="",n=t;do{r+=F(n),n=n.return}while(n);var i=r}catch(o){i="\nError generating stack: "+o.message+"\n"+o.stack}return{value:e,source:t,stack:i,digest:null}}function ds(e,t,r){return{value:e,source:null,stack:null!=r?r:null,digest:null!=t?t:null}}function hs(e,t){try{console.error(t.value)}catch(r){setTimeout((function(){throw r}))}}var fs="function"===typeof WeakMap?WeakMap:Map;function ps(e,t,r){(r=Mo(-1,r)).tag=3,r.payload={element:null};var n=t.value;return r.callback=function(){qc||(qc=!0,Kc=n),hs(0,t)},r}function ms(e,t,r){(r=Mo(-1,r)).tag=3;var n=e.type.getDerivedStateFromError;if("function"===typeof n){var i=t.value;r.payload=function(){return n(i)},r.callback=function(){hs(0,t)}}var o=e.stateNode;return null!==o&&"function"===typeof o.componentDidCatch&&(r.callback=function(){hs(0,t),"function"!==typeof n&&(null===Wc?Wc=new Set([this]):Wc.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),r}function gs(e,t,r){var n=e.pingCache;if(null===n){n=e.pingCache=new fs;var i=new Set;n.set(t,i)}else void 0===(i=n.get(t))&&(i=new Set,n.set(t,i));i.has(r)||(i.add(r),e=Al.bind(null,e,t,r),t.then(e,e))}function vs(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function ys(e,t,r,n,i){return 0===(1&e.mode)?(e===t?e.flags|=65536:(e.flags|=128,r.flags|=131072,r.flags&=-52805,1===r.tag&&(null===r.alternate?r.tag=17:((t=Mo(-1,1)).tag=2,Lo(r,t,1))),r.lanes|=1),e):(e.flags|=65536,e.lanes=i,e)}var bs=w.ReactCurrentOwner,ws=!1;function xs(e,t,r,n){t.child=null===e?Jo(t,null,r,n):Xo(t,e.child,r,n)}function _s(e,t,r,n,i){r=r.render;var o=t.ref;return Eo(t,i),n=Sa(e,t,r,n,o,i),r=Ea(),null===e||ws?(io&&r&&eo(t),t.flags|=1,xs(e,t,n,i),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,qs(e,t,i))}function ks(e,t,r,n,i){if(null===e){var o=r.type;return"function"!==typeof o||Il(o)||void 0!==o.defaultProps||null!==r.compare||void 0!==r.defaultProps?((e=Ll(r.type,null,n,t,t.mode,i)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=o,Ss(e,t,o,n,i))}if(o=e.child,0===(e.lanes&i)){var a=o.memoizedProps;if((r=null!==(r=r.compare)?r:cn)(a,n)&&e.ref===t.ref)return qs(e,t,i)}return t.flags|=1,(e=Ml(o,n)).ref=t.ref,e.return=t,t.child=e}function Ss(e,t,r,n,i){if(null!==e){var o=e.memoizedProps;if(cn(o,n)&&e.ref===t.ref){if(ws=!1,t.pendingProps=n=o,0===(e.lanes&i))return t.lanes=e.lanes,qs(e,t,i);0!==(131072&e.flags)&&(ws=!0)}}return Ps(e,t,r,n,i)}function Es(e,t,r){var n=t.pendingProps,i=n.children,o=null!==e?e.memoizedState:null;if("hidden"===n.mode)if(0===(1&t.mode))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ai(Mc,Ic),Ic|=r;else{if(0===(1073741824&r))return e=null!==o?o.baseLanes|r:r,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Ai(Mc,Ic),Ic|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},n=null!==o?o.baseLanes:r,Ai(Mc,Ic),Ic|=n}else null!==o?(n=o.baseLanes|r,t.memoizedState=null):n=r,Ai(Mc,Ic),Ic|=n;return xs(e,t,i,r),t.child}function As(e,t){var r=t.ref;(null===e&&null!==r||null!==e&&e.ref!==r)&&(t.flags|=512,t.flags|=2097152)}function Ps(e,t,r,n,i){var o=Ri(r)?ji:Oi.current;return o=Ci(t,o),Eo(t,i),r=Sa(e,t,r,n,o,i),n=Ea(),null===e||ws?(io&&n&&eo(t),t.flags|=1,xs(e,t,r,i),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,qs(e,t,i))}function Os(e,t,r,n,i){if(Ri(r)){var o=!0;Ni(t)}else o=!1;if(Eo(t,i),null===t.stateNode)Vs(e,t),Vo(t,r,n),Ko(t,r,n,i),n=!0;else if(null===e){var a=t.stateNode,s=t.memoizedProps;a.props=s;var c=a.context,l=r.contextType;"object"===typeof l&&null!==l?l=Ao(l):l=Ci(t,l=Ri(r)?ji:Oi.current);var u=r.getDerivedStateFromProps,d="function"===typeof u||"function"===typeof a.getSnapshotBeforeUpdate;d||"function"!==typeof a.UNSAFE_componentWillReceiveProps&&"function"!==typeof a.componentWillReceiveProps||(s!==n||c!==l)&&qo(t,a,n,l),Co=!1;var h=t.memoizedState;a.state=h,zo(t,n,a,i),c=t.memoizedState,s!==n||h!==c||Ti.current||Co?("function"===typeof u&&(Fo(t,r,u,n),c=t.memoizedState),(s=Co||Ho(t,r,s,n,h,c,l))?(d||"function"!==typeof a.UNSAFE_componentWillMount&&"function"!==typeof a.componentWillMount||("function"===typeof a.componentWillMount&&a.componentWillMount(),"function"===typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount()),"function"===typeof a.componentDidMount&&(t.flags|=4194308)):("function"===typeof a.componentDidMount&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=c),a.props=n,a.state=c,a.context=l,n=s):("function"===typeof a.componentDidMount&&(t.flags|=4194308),n=!1)}else{a=t.stateNode,Io(e,t),s=t.memoizedProps,l=t.type===t.elementType?s:vo(t.type,s),a.props=l,d=t.pendingProps,h=a.context,"object"===typeof(c=r.contextType)&&null!==c?c=Ao(c):c=Ci(t,c=Ri(r)?ji:Oi.current);var f=r.getDerivedStateFromProps;(u="function"===typeof f||"function"===typeof a.getSnapshotBeforeUpdate)||"function"!==typeof a.UNSAFE_componentWillReceiveProps&&"function"!==typeof a.componentWillReceiveProps||(s!==d||h!==c)&&qo(t,a,n,c),Co=!1,h=t.memoizedState,a.state=h,zo(t,n,a,i);var p=t.memoizedState;s!==d||h!==p||Ti.current||Co?("function"===typeof f&&(Fo(t,r,f,n),p=t.memoizedState),(l=Co||Ho(t,r,l,n,h,p,c)||!1)?(u||"function"!==typeof a.UNSAFE_componentWillUpdate&&"function"!==typeof a.componentWillUpdate||("function"===typeof a.componentWillUpdate&&a.componentWillUpdate(n,p,c),"function"===typeof a.UNSAFE_componentWillUpdate&&a.UNSAFE_componentWillUpdate(n,p,c)),"function"===typeof a.componentDidUpdate&&(t.flags|=4),"function"===typeof a.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!==typeof a.componentDidUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=p),a.props=n,a.state=p,a.context=c,n=l):("function"!==typeof a.componentDidUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),n=!1)}return Ts(e,t,r,n,o,i)}function Ts(e,t,r,n,i,o){As(e,t);var a=0!==(128&t.flags);if(!n&&!a)return i&&Di(t,r,!1),qs(e,t,o);n=t.stateNode,bs.current=t;var s=a&&"function"!==typeof r.getDerivedStateFromError?null:n.render();return t.flags|=1,null!==e&&a?(t.child=Xo(t,e.child,null,o),t.child=Xo(t,null,s,o)):xs(e,t,s,o),t.memoizedState=n.state,i&&Di(t,r,!0),t.child}function js(e){var t=e.stateNode;t.pendingContext?Mi(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Mi(0,t.context,!1),ia(e,t.containerInfo)}function Cs(e,t,r,n,i){return po(),mo(i),t.flags|=256,xs(e,t,r,n),t.child}var Rs,Is,Ms,Ls,Ns={dehydrated:null,treeContext:null,retryLane:0};function Ds(e){return{baseLanes:e,cachePool:null,transitions:null}}function zs(e,t,r){var n,i=t.pendingProps,a=ca.current,s=!1,c=0!==(128&t.flags);if((n=c)||(n=(null===e||null!==e.memoizedState)&&0!==(2&a)),n?(s=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(a|=1),Ai(ca,1&a),null===e)return lo(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(0===(1&t.mode)?t.lanes=1:"$!"===e.data?t.lanes=8:t.lanes=1073741824,null):(c=i.children,e=i.fallback,s?(i=t.mode,s=t.child,c={mode:"hidden",children:c},0===(1&i)&&null!==s?(s.childLanes=0,s.pendingProps=c):s=Dl(c,i,0,null),e=Nl(e,i,r,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Ds(r),t.memoizedState=Ns,e):Bs(t,c));if(null!==(a=e.memoizedState)&&null!==(n=a.dehydrated))return function(e,t,r,n,i,a,s){if(r)return 256&t.flags?(t.flags&=-257,Us(e,t,s,n=ds(Error(o(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(a=n.fallback,i=t.mode,n=Dl({mode:"visible",children:n.children},i,0,null),(a=Nl(a,i,s,null)).flags|=2,n.return=t,a.return=t,n.sibling=a,t.child=n,0!==(1&t.mode)&&Xo(t,e.child,null,s),t.child.memoizedState=Ds(s),t.memoizedState=Ns,a);if(0===(1&t.mode))return Us(e,t,s,null);if("$!"===i.data){if(n=i.nextSibling&&i.nextSibling.dataset)var c=n.dgst;return n=c,Us(e,t,s,n=ds(a=Error(o(419)),n,void 0))}if(c=0!==(s&e.childLanes),ws||c){if(null!==(n=jc)){switch(s&-s){case 4:i=2;break;case 16:i=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:i=32;break;case 536870912:i=268435456;break;default:i=0}0!==(i=0!==(i&(n.suspendedLanes|s))?0:i)&&i!==a.retryLane&&(a.retryLane=i,jo(e,i),nl(n,e,i,-1))}return gl(),Us(e,t,s,n=ds(Error(o(421))))}return"$?"===i.data?(t.flags|=128,t.child=e.child,t=Ol.bind(null,e),i._reactRetry=t,null):(e=a.treeContext,no=li(i.nextSibling),ro=t,io=!0,oo=null,null!==e&&(Wi[Gi++]=Yi,Wi[Gi++]=Xi,Wi[Gi++]=Zi,Yi=e.id,Xi=e.overflow,Zi=t),t=Bs(t,n.children),t.flags|=4096,t)}(e,t,c,i,n,a,r);if(s){s=i.fallback,c=t.mode,n=(a=e.child).sibling;var l={mode:"hidden",children:i.children};return 0===(1&c)&&t.child!==a?((i=t.child).childLanes=0,i.pendingProps=l,t.deletions=null):(i=Ml(a,l)).subtreeFlags=14680064&a.subtreeFlags,null!==n?s=Ml(n,s):(s=Nl(s,c,r,null)).flags|=2,s.return=t,i.return=t,i.sibling=s,t.child=i,i=s,s=t.child,c=null===(c=e.child.memoizedState)?Ds(r):{baseLanes:c.baseLanes|r,cachePool:null,transitions:c.transitions},s.memoizedState=c,s.childLanes=e.childLanes&~r,t.memoizedState=Ns,i}return e=(s=e.child).sibling,i=Ml(s,{mode:"visible",children:i.children}),0===(1&t.mode)&&(i.lanes=r),i.return=t,i.sibling=null,null!==e&&(null===(r=t.deletions)?(t.deletions=[e],t.flags|=16):r.push(e)),t.child=i,t.memoizedState=null,i}function Bs(e,t){return(t=Dl({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function Us(e,t,r,n){return null!==n&&mo(n),Xo(t,e.child,null,r),(e=Bs(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Fs(e,t,r){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),So(e.return,t,r)}function $s(e,t,r,n,i){var o=e.memoizedState;null===o?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:r,tailMode:i}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=n,o.tail=r,o.tailMode=i)}function Hs(e,t,r){var n=t.pendingProps,i=n.revealOrder,o=n.tail;if(xs(e,t,n.children,r),0!==(2&(n=ca.current)))n=1&n|2,t.flags|=128;else{if(null!==e&&0!==(128&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Fs(e,r,t);else if(19===e.tag)Fs(e,r,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}n&=1}if(Ai(ca,n),0===(1&t.mode))t.memoizedState=null;else switch(i){case"forwards":for(r=t.child,i=null;null!==r;)null!==(e=r.alternate)&&null===la(e)&&(i=r),r=r.sibling;null===(r=i)?(i=t.child,t.child=null):(i=r.sibling,r.sibling=null),$s(t,!1,i,r,o);break;case"backwards":for(r=null,i=t.child,t.child=null;null!==i;){if(null!==(e=i.alternate)&&null===la(e)){t.child=i;break}e=i.sibling,i.sibling=r,r=i,i=e}$s(t,!0,r,null,o);break;case"together":$s(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Vs(e,t){0===(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function qs(e,t,r){if(null!==e&&(t.dependencies=e.dependencies),Dc|=t.lanes,0===(r&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(o(153));if(null!==t.child){for(r=Ml(e=t.child,e.pendingProps),t.child=r,r.return=t;null!==e.sibling;)e=e.sibling,(r=r.sibling=Ml(e,e.pendingProps)).return=t;r.sibling=null}return t.child}function Ks(e,t){if(!io)switch(e.tailMode){case"hidden":t=e.tail;for(var r=null;null!==t;)null!==t.alternate&&(r=t),t=t.sibling;null===r?e.tail=null:r.sibling=null;break;case"collapsed":r=e.tail;for(var n=null;null!==r;)null!==r.alternate&&(n=r),r=r.sibling;null===n?t||null===e.tail?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Ws(e){var t=null!==e.alternate&&e.alternate.child===e.child,r=0,n=0;if(t)for(var i=e.child;null!==i;)r|=i.lanes|i.childLanes,n|=14680064&i.subtreeFlags,n|=14680064&i.flags,i.return=e,i=i.sibling;else for(i=e.child;null!==i;)r|=i.lanes|i.childLanes,n|=i.subtreeFlags,n|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=n,e.childLanes=r,t}function Gs(e,t,r){var n=t.pendingProps;switch(to(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ws(t),null;case 1:case 17:return Ri(t.type)&&Ii(),Ws(t),null;case 3:return n=t.stateNode,oa(),Ei(Ti),Ei(Oi),da(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),null!==e&&null!==e.child||(ho(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&0===(256&t.flags)||(t.flags|=1024,null!==oo&&(sl(oo),oo=null))),Is(e,t),Ws(t),null;case 5:sa(t);var i=na(ra.current);if(r=t.type,null!==e&&null!=t.stateNode)Ms(e,t,r,n,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!n){if(null===t.stateNode)throw Error(o(166));return Ws(t),null}if(e=na(ea.current),ho(t)){n=t.stateNode,r=t.type;var a=t.memoizedProps;switch(n[hi]=t,n[fi]=a,e=0!==(1&t.mode),r){case"dialog":Bn("cancel",n),Bn("close",n);break;case"iframe":case"object":case"embed":Bn("load",n);break;case"video":case"audio":for(i=0;i<\/script>",e=e.removeChild(e.firstChild)):"string"===typeof n.is?e=c.createElement(r,{is:n.is}):(e=c.createElement(r),"select"===r&&(c=e,n.multiple?c.multiple=!0:n.size&&(c.size=n.size))):e=c.createElementNS(e,r),e[hi]=t,e[fi]=n,Rs(e,t,!1,!1),t.stateNode=e;e:{switch(c=be(r,n),r){case"dialog":Bn("cancel",e),Bn("close",e),i=n;break;case"iframe":case"object":case"embed":Bn("load",e),i=n;break;case"video":case"audio":for(i=0;iHc&&(t.flags|=128,n=!0,Ks(a,!1),t.lanes=4194304)}else{if(!n)if(null!==(e=la(c))){if(t.flags|=128,n=!0,null!==(r=e.updateQueue)&&(t.updateQueue=r,t.flags|=4),Ks(a,!0),null===a.tail&&"hidden"===a.tailMode&&!c.alternate&&!io)return Ws(t),null}else 2*Xe()-a.renderingStartTime>Hc&&1073741824!==r&&(t.flags|=128,n=!0,Ks(a,!1),t.lanes=4194304);a.isBackwards?(c.sibling=t.child,t.child=c):(null!==(r=a.last)?r.sibling=c:t.child=c,a.last=c)}return null!==a.tail?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=Xe(),t.sibling=null,r=ca.current,Ai(ca,n?1&r|2:1&r),t):(Ws(t),null);case 22:case 23:return hl(),n=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==n&&(t.flags|=8192),n&&0!==(1&t.mode)?0!==(1073741824&Ic)&&(Ws(t),6&t.subtreeFlags&&(t.flags|=8192)):Ws(t),null;case 24:case 25:return null}throw Error(o(156,t.tag))}function Zs(e,t){switch(to(t),t.tag){case 1:return Ri(t.type)&&Ii(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return oa(),Ei(Ti),Ei(Oi),da(),0!==(65536&(e=t.flags))&&0===(128&e)?(t.flags=-65537&e|128,t):null;case 5:return sa(t),null;case 13:if(Ei(ca),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(o(340));po()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Ei(ca),null;case 4:return oa(),null;case 10:return ko(t.type._context),null;case 22:case 23:return hl(),null;default:return null}}Rs=function(e,t){for(var r=t.child;null!==r;){if(5===r.tag||6===r.tag)e.appendChild(r.stateNode);else if(4!==r.tag&&null!==r.child){r.child.return=r,r=r.child;continue}if(r===t)break;for(;null===r.sibling;){if(null===r.return||r.return===t)return;r=r.return}r.sibling.return=r.return,r=r.sibling}},Is=function(){},Ms=function(e,t,r,n){var i=e.memoizedProps;if(i!==n){e=t.stateNode,na(ea.current);var o,a=null;switch(r){case"input":i=Z(e,i),n=Z(e,n),a=[];break;case"select":i=D({},i,{value:void 0}),n=D({},n,{value:void 0}),a=[];break;case"textarea":i=ne(e,i),n=ne(e,n),a=[];break;default:"function"!==typeof i.onClick&&"function"===typeof n.onClick&&(e.onclick=Qn)}for(u in ye(r,n),r=null,i)if(!n.hasOwnProperty(u)&&i.hasOwnProperty(u)&&null!=i[u])if("style"===u){var c=i[u];for(o in c)c.hasOwnProperty(o)&&(r||(r={}),r[o]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(s.hasOwnProperty(u)?a||(a=[]):(a=a||[]).push(u,null));for(u in n){var l=n[u];if(c=null!=i?i[u]:void 0,n.hasOwnProperty(u)&&l!==c&&(null!=l||null!=c))if("style"===u)if(c){for(o in c)!c.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(r||(r={}),r[o]="");for(o in l)l.hasOwnProperty(o)&&c[o]!==l[o]&&(r||(r={}),r[o]=l[o])}else r||(a||(a=[]),a.push(u,r)),r=l;else"dangerouslySetInnerHTML"===u?(l=l?l.__html:void 0,c=c?c.__html:void 0,null!=l&&c!==l&&(a=a||[]).push(u,l)):"children"===u?"string"!==typeof l&&"number"!==typeof l||(a=a||[]).push(u,""+l):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(s.hasOwnProperty(u)?(null!=l&&"onScroll"===u&&Bn("scroll",e),a||c===l||(a=[])):(a=a||[]).push(u,l))}r&&(a=a||[]).push("style",r);var u=a;(t.updateQueue=u)&&(t.flags|=4)}},Ls=function(e,t,r,n){r!==n&&(t.flags|=4)};var Ys=!1,Xs=!1,Js="function"===typeof WeakSet?WeakSet:Set,Qs=null;function ec(e,t){var r=e.ref;if(null!==r)if("function"===typeof r)try{r(null)}catch(n){El(e,t,n)}else r.current=null}function tc(e,t,r){try{r()}catch(n){El(e,t,n)}}var rc=!1;function nc(e,t,r){var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var i=n=n.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,void 0!==o&&tc(t,r,o)}i=i.next}while(i!==n)}}function ic(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var r=t=t.next;do{if((r.tag&e)===e){var n=r.create;r.destroy=n()}r=r.next}while(r!==t)}}function oc(e){var t=e.ref;if(null!==t){var r=e.stateNode;e.tag,e=r,"function"===typeof t?t(e):t.current=e}}function ac(e){var t=e.alternate;null!==t&&(e.alternate=null,ac(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[hi],delete t[fi],delete t[mi],delete t[gi],delete t[vi])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function sc(e){return 5===e.tag||3===e.tag||4===e.tag}function cc(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||sc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function lc(e,t,r){var n=e.tag;if(5===n||6===n)e=e.stateNode,t?8===r.nodeType?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(8===r.nodeType?(t=r.parentNode).insertBefore(e,r):(t=r).appendChild(e),null!==(r=r._reactRootContainer)&&void 0!==r||null!==t.onclick||(t.onclick=Qn));else if(4!==n&&null!==(e=e.child))for(lc(e,t,r),e=e.sibling;null!==e;)lc(e,t,r),e=e.sibling}function uc(e,t,r){var n=e.tag;if(5===n||6===n)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(4!==n&&null!==(e=e.child))for(uc(e,t,r),e=e.sibling;null!==e;)uc(e,t,r),e=e.sibling}var dc=null,hc=!1;function fc(e,t,r){for(r=r.child;null!==r;)pc(e,t,r),r=r.sibling}function pc(e,t,r){if(ot&&"function"===typeof ot.onCommitFiberUnmount)try{ot.onCommitFiberUnmount(it,r)}catch(s){}switch(r.tag){case 5:Xs||ec(r,t);case 6:var n=dc,i=hc;dc=null,fc(e,t,r),hc=i,null!==(dc=n)&&(hc?(e=dc,r=r.stateNode,8===e.nodeType?e.parentNode.removeChild(r):e.removeChild(r)):dc.removeChild(r.stateNode));break;case 18:null!==dc&&(hc?(e=dc,r=r.stateNode,8===e.nodeType?ci(e.parentNode,r):1===e.nodeType&&ci(e,r),$t(e)):ci(dc,r.stateNode));break;case 4:n=dc,i=hc,dc=r.stateNode.containerInfo,hc=!0,fc(e,t,r),dc=n,hc=i;break;case 0:case 11:case 14:case 15:if(!Xs&&(null!==(n=r.updateQueue)&&null!==(n=n.lastEffect))){i=n=n.next;do{var o=i,a=o.destroy;o=o.tag,void 0!==a&&(0!==(2&o)||0!==(4&o))&&tc(r,t,a),i=i.next}while(i!==n)}fc(e,t,r);break;case 1:if(!Xs&&(ec(r,t),"function"===typeof(n=r.stateNode).componentWillUnmount))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(s){El(r,t,s)}fc(e,t,r);break;case 21:fc(e,t,r);break;case 22:1&r.mode?(Xs=(n=Xs)||null!==r.memoizedState,fc(e,t,r),Xs=n):fc(e,t,r);break;default:fc(e,t,r)}}function mc(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var r=e.stateNode;null===r&&(r=e.stateNode=new Js),t.forEach((function(t){var n=Tl.bind(null,e,t);r.has(t)||(r.add(t),t.then(n,n))}))}}function gc(e,t){var r=t.deletions;if(null!==r)for(var n=0;ni&&(i=s),n&=~a}if(n=i,10<(n=(120>(n=Xe()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Ec(n/1960))-n)){e.timeoutHandle=ni(_l.bind(null,e,Fc,Vc),n);break}_l(e,Fc,Vc);break;default:throw Error(o(329))}}}return il(e,Xe()),e.callbackNode===r?ol.bind(null,e):null}function al(e,t){var r=Uc;return e.current.memoizedState.isDehydrated&&(fl(e,t).flags|=256),2!==(e=vl(e,t))&&(t=Fc,Fc=r,null!==t&&sl(t)),e}function sl(e){null===Fc?Fc=e:Fc.push.apply(Fc,e)}function cl(e,t){for(t&=~Bc,t&=~zc,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0e?16:e,null===Zc)var n=!1;else{if(e=Zc,Zc=null,Yc=0,0!==(6&Tc))throw Error(o(331));var i=Tc;for(Tc|=4,Qs=e.current;null!==Qs;){var a=Qs,s=a.child;if(0!==(16&Qs.flags)){var c=a.deletions;if(null!==c){for(var l=0;lXe()-$c?fl(e,0):Bc|=r),il(e,t)}function Pl(e,t){0===t&&(0===(1&e.mode)?t=1:(t=ut,0===(130023424&(ut<<=1))&&(ut=4194304)));var r=tl();null!==(e=jo(e,t))&&(vt(e,t,r),il(e,r))}function Ol(e){var t=e.memoizedState,r=0;null!==t&&(r=t.retryLane),Pl(e,r)}function Tl(e,t){var r=0;switch(e.tag){case 13:var n=e.stateNode,i=e.memoizedState;null!==i&&(r=i.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(o(314))}null!==n&&n.delete(t),Pl(e,r)}function jl(e,t){return We(e,t)}function Cl(e,t,r,n){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Rl(e,t,r,n){return new Cl(e,t,r,n)}function Il(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Ml(e,t){var r=e.alternate;return null===r?((r=Rl(e.tag,t,e.key,e.mode)).elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=14680064&e.flags,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function Ll(e,t,r,n,i,a){var s=2;if(n=e,"function"===typeof e)Il(e)&&(s=1);else if("string"===typeof e)s=5;else e:switch(e){case k:return Nl(r.children,i,a,t);case S:s=8,i|=8;break;case E:return(e=Rl(12,r,t,2|i)).elementType=E,e.lanes=a,e;case T:return(e=Rl(13,r,t,i)).elementType=T,e.lanes=a,e;case j:return(e=Rl(19,r,t,i)).elementType=j,e.lanes=a,e;case I:return Dl(r,i,a,t);default:if("object"===typeof e&&null!==e)switch(e.$$typeof){case A:s=10;break e;case P:s=9;break e;case O:s=11;break e;case C:s=14;break e;case R:s=16,n=null;break e}throw Error(o(130,null==e?e:typeof e,""))}return(t=Rl(s,r,t,i)).elementType=e,t.type=n,t.lanes=a,t}function Nl(e,t,r,n){return(e=Rl(7,e,n,t)).lanes=r,e}function Dl(e,t,r,n){return(e=Rl(22,e,n,t)).elementType=I,e.lanes=r,e.stateNode={isHidden:!1},e}function zl(e,t,r){return(e=Rl(6,e,null,t)).lanes=r,e}function Bl(e,t,r){return(t=Rl(4,null!==e.children?e.children:[],e.key,t)).lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Ul(e,t,r,n,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=n,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function Fl(e,t,r,n,i,o,a,s,c){return e=new Ul(e,t,r,s,c),1===t?(t=1,!0===o&&(t|=8)):t=0,o=Rl(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:n,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ro(o),e}function $l(e){if(!e)return Pi;e:{if($e(e=e._reactInternals)!==e||1!==e.tag)throw Error(o(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Ri(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(o(171))}if(1===e.tag){var r=e.type;if(Ri(r))return Li(e,r,t)}return t}function Hl(e,t,r,n,i,o,a,s,c){return(e=Fl(r,n,!0,e,0,o,0,s,c)).context=$l(null),r=e.current,(o=Mo(n=tl(),i=rl(r))).callback=void 0!==t&&null!==t?t:null,Lo(r,o,i),e.current.lanes=i,vt(e,i,n),il(e,n),e}function Vl(e,t,r,n){var i=t.current,o=tl(),a=rl(i);return r=$l(r),null===t.context?t.context=r:t.pendingContext=r,(t=Mo(o,a)).payload={element:e},null!==(n=void 0===n?null:n)&&(t.callback=n),null!==(e=Lo(i,t,a))&&(nl(e,i,a,o),No(e,i,a)),a}function ql(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Kl(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var r=e.retryLane;e.retryLane=0!==r&&r{"use strict";var n=r(2515);t.createRoot=n.createRoot,t.hydrateRoot=n.hydrateRoot},2515:(e,t,r)=>{"use strict";!function e(){if("undefined"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=r(693)},488:function(e,t,r){var n,i,o;i=[t,r(1080)],n=function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(t);function n(e){return e&&e.__esModule?e:{default:e}}e.default=r.default},void 0===(o="function"===typeof n?n.apply(t,i):n)||(e.exports=o)},1080:function(e,t,r){var n,i,o;i=[t,r(4082),r(9922)],n=function(e,t,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.setHasSupportToCaptureOption=f;var n=o(t),i=o(r);function o(e){return e&&e.__esModule?e:{default:e}}var a=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var l=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{capture:!0};return h?e:e.capture}function m(e){if("touches"in e){var t=e.touches[0];return{x:t.pageX,y:t.pageY}}return{x:e.screenX,y:e.screenY}}var g=function(e){function t(){var e;c(this,t);for(var r=arguments.length,n=Array(r),i=0;it&&this.props.onSwipeRight(1,e),this.movePosition.deltaY<-t?this.props.onSwipeUp(1,e):this.movePosition.deltaY>t&&this.props.onSwipeDown(1,e)),this.moveStart=null,this.moving=!1,this.movePosition=null}},{key:"_setSwiperRef",value:function(e){this.swiper=e,this.props.innerRef(e)}},{key:"render",value:function(){var e=this.props,t=(e.tagName,e.className),r=e.style,i=e.children,o=(e.allowMouseEvents,e.onSwipeUp,e.onSwipeDown,e.onSwipeLeft,e.onSwipeRight,e.onSwipeStart,e.onSwipeMove,e.onSwipeEnd,e.innerRef,e.tolerance,s(e,["tagName","className","style","children","allowMouseEvents","onSwipeUp","onSwipeDown","onSwipeLeft","onSwipeRight","onSwipeStart","onSwipeMove","onSwipeEnd","innerRef","tolerance"]));return n.default.createElement(this.props.tagName,a({ref:this._setSwiperRef,onMouseDown:this._onMouseDown,onTouchStart:this._handleSwipeStart,onTouchEnd:this._handleSwipeEnd,className:t,style:r},o),i)}}]),t}(t.Component);g.displayName="ReactSwipe",g.propTypes={tagName:i.default.string,className:i.default.string,style:i.default.object,children:i.default.node,allowMouseEvents:i.default.bool,onSwipeUp:i.default.func,onSwipeDown:i.default.func,onSwipeLeft:i.default.func,onSwipeRight:i.default.func,onSwipeStart:i.default.func,onSwipeMove:i.default.func,onSwipeEnd:i.default.func,innerRef:i.default.func,tolerance:i.default.number.isRequired},g.defaultProps={tagName:"div",allowMouseEvents:!1,onSwipeUp:function(){},onSwipeDown:function(){},onSwipeLeft:function(){},onSwipeRight:function(){},onSwipeStart:function(){},onSwipeMove:function(){},onSwipeEnd:function(){},innerRef:function(){},tolerance:0},e.default=g},void 0===(o="function"===typeof n?n.apply(t,i):n)||(e.exports=o)},2249:e=>{var t="undefined"!==typeof Element,r="function"===typeof Map,n="function"===typeof Set,i="function"===typeof ArrayBuffer&&!!ArrayBuffer.isView;function o(e,a){if(e===a)return!0;if(e&&a&&"object"==typeof e&&"object"==typeof a){if(e.constructor!==a.constructor)return!1;var s,c,l,u;if(Array.isArray(e)){if((s=e.length)!=a.length)return!1;for(c=s;0!==c--;)if(!o(e[c],a[c]))return!1;return!0}if(r&&e instanceof Map&&a instanceof Map){if(e.size!==a.size)return!1;for(u=e.entries();!(c=u.next()).done;)if(!a.has(c.value[0]))return!1;for(u=e.entries();!(c=u.next()).done;)if(!o(c.value[1],a.get(c.value[0])))return!1;return!0}if(n&&e instanceof Set&&a instanceof Set){if(e.size!==a.size)return!1;for(u=e.entries();!(c=u.next()).done;)if(!a.has(c.value[0]))return!1;return!0}if(i&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(a)){if((s=e.length)!=a.length)return!1;for(c=s;0!==c--;)if(e[c]!==a[c])return!1;return!0}if(e.constructor===RegExp)return e.source===a.source&&e.flags===a.flags;if(e.valueOf!==Object.prototype.valueOf&&"function"===typeof e.valueOf&&"function"===typeof a.valueOf)return e.valueOf()===a.valueOf();if(e.toString!==Object.prototype.toString&&"function"===typeof e.toString&&"function"===typeof a.toString)return e.toString()===a.toString();if((s=(l=Object.keys(e)).length)!==Object.keys(a).length)return!1;for(c=s;0!==c--;)if(!Object.prototype.hasOwnProperty.call(a,l[c]))return!1;if(t&&e instanceof Element)return!1;for(c=s;0!==c--;)if(("_owner"!==l[c]&&"__v"!==l[c]&&"__o"!==l[c]||!e.$$typeof)&&!o(e[l[c]],a[l[c]]))return!1;return!0}return e!==e&&a!==a}e.exports=function(e,t){try{return o(e,t)}catch(r){if((r.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw r}}},7282:(e,t,r)=>{e.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(1),i=s(n),o=s(r(2)),a=s(r(3));function s(e){return e&&e.__esModule?e:{default:e}}var c=function(e){var t=e.fg,r=e.bg,s=e.count,c=e.palette,l=e.string,u=e.size,d=e.getColor,h=e.padding,f=e.className,p=(0,n.useRef)(null);(0,n.useEffect)((function(){m(e)}));var m=function(){var e=(0,o.default)(l),n=Math.floor(u/s),i=e.slice(0,6);if(c&&c.length){var f=Math.floor((0,a.default)(parseInt(e.slice(-3),16),0,4095,0,c.length));t=c[f]}d&&d(t||i);var m=h;p.current.width=n*s+m,p.current.height=n*s+m;var g=e.split("").map((function(e){return(e=parseInt(e,16))<8?0:1})),v=[];v[0]=v[4]=g.slice(0,5),v[1]=v[3]=g.slice(5,10),v[2]=g.slice(10,15);var y=p.current.getContext("2d");y.imageSmoothingEnabled=!1,y.clearRect(0,0,p.current.width,p.current.height),v.forEach((function(e,o){e.forEach((function(e,a){e?(y.fillStyle=t||"#"+i,y.fillRect(n*o+m,n*a+m,n-m,n-m)):(y.fillStyle=r,y.fillRect(n*o+m,n*a+m,n-m,n-m))}))}))};return i.default.createElement("canvas",{ref:p,className:f,style:{width:u,height:u}})};c.defaultProps={className:"identicon",bg:"transparent",count:5,palette:null,fg:null,padding:0,size:400,getColor:null,string:""},t.default=c},function(e,t){e.exports=r(4082)},function(e,t,r){"use strict";var n;"function"==typeof Symbol&&Symbol.iterator,function(i){function o(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function a(e,t,r,n,i,a){return o(function(e,t){return e<>>32-t}(o(o(t,e),o(n,a)),i),r)}function s(e,t,r,n,i,o,s){return a(t&r|~t&n,e,t,i,o,s)}function c(e,t,r,n,i,o,s){return a(t&n|r&~n,e,t,i,o,s)}function l(e,t,r,n,i,o,s){return a(t^r^n,e,t,i,o,s)}function u(e,t,r,n,i,o,s){return a(r^(t|~n),e,t,i,o,s)}function d(e,t){e[t>>5]|=128<>>9<<4)]=t;var r,n,i,a,d,h=1732584193,f=-271733879,p=-1732584194,m=271733878;for(r=0;r>5]>>>t%32&255);return r}function f(e){var t,r=[];for(r[(e.length>>2)-1]=void 0,t=0;t>5]|=(255&e.charCodeAt(t/8))<>>4&15)+"0123456789abcdef".charAt(15&t);return n}function m(e){return unescape(encodeURIComponent(e))}function g(e){return function(e){return h(d(f(e),8*e.length))}(m(e))}function v(e,t){return function(e,t){var r,n,i=f(e),o=[],a=[];for(o[15]=a[15]=void 0,i.length>16&&(i=d(i,8*e.length)),r=0;r<16;r+=1)o[r]=909522486^i[r],a[r]=1549556828^i[r];return n=d(o.concat(f(t)),512+8*t.length),h(d(a.concat(n),640))}(m(e),m(t))}function y(e,t,r){return t?r?v(t,e):function(e,t){return p(v(e,t))}(t,e):r?g(e):function(e){return p(g(e))}(e)}void 0===(n=function(){return y}.call(t,r,t,e))||(e.exports=n)}()},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r,n,i){return(e-t)*(i-n)/(r-t)+n}}])},8493:(e,t)=>{"use strict";var r,n=Symbol.for("react.element"),i=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.server_context"),d=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),g=Symbol.for("react.offscreen");function v(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case o:case s:case a:case h:case f:return e;default:switch(e=e&&e.$$typeof){case u:case l:case d:case m:case p:case c:return e;default:return t}}case i:return t}}}r=Symbol.for("react.module.reference")},9185:(e,t,r)=>{"use strict";r(8493)},5247:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h=(e,t,r)=>(((e,t,r)=>{t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),f={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(f,{default:()=>y}),e.exports=(n=f,u(o({},"__esModule",{value:!0}),n));var p=d(r(4082)),m=d(r(2249)),g=r(5738),v=r(7817);class y extends p.Component{constructor(){super(...arguments),h(this,"mounted",!1),h(this,"isReady",!1),h(this,"isPlaying",!1),h(this,"isLoading",!0),h(this,"loadOnReady",null),h(this,"startOnPlay",!0),h(this,"seekOnPlay",null),h(this,"onDurationCalled",!1),h(this,"handlePlayerMount",(e=>{this.player||(this.player=e,this.player.load(this.props.url)),this.progress()})),h(this,"getInternalPlayer",(e=>this.player?this.player[e]:null)),h(this,"progress",(()=>{if(this.props.url&&this.player&&this.isReady){const e=this.getCurrentTime()||0,t=this.getSecondsLoaded(),r=this.getDuration();if(r){const n={playedSeconds:e,played:e/r};null!==t&&(n.loadedSeconds=t,n.loaded=t/r),n.playedSeconds===this.prevPlayed&&n.loadedSeconds===this.prevLoaded||this.props.onProgress(n),this.prevPlayed=n.playedSeconds,this.prevLoaded=n.loadedSeconds}}this.progressTimeout=setTimeout(this.progress,this.props.progressFrequency||this.props.progressInterval)})),h(this,"handleReady",(()=>{if(!this.mounted)return;this.isReady=!0,this.isLoading=!1;const{onReady:e,playing:t,volume:r,muted:n}=this.props;e(),n||null===r||this.player.setVolume(r),this.loadOnReady?(this.player.load(this.loadOnReady,!0),this.loadOnReady=null):t&&this.player.play(),this.handleDurationCheck()})),h(this,"handlePlay",(()=>{this.isPlaying=!0,this.isLoading=!1;const{onStart:e,onPlay:t,playbackRate:r}=this.props;this.startOnPlay&&(this.player.setPlaybackRate&&1!==r&&this.player.setPlaybackRate(r),e(),this.startOnPlay=!1),t(),this.seekOnPlay&&(this.seekTo(this.seekOnPlay),this.seekOnPlay=null),this.handleDurationCheck()})),h(this,"handlePause",(e=>{this.isPlaying=!1,this.isLoading||this.props.onPause(e)})),h(this,"handleEnded",(()=>{const{activePlayer:e,loop:t,onEnded:r}=this.props;e.loopOnEnded&&t&&this.seekTo(0),t||(this.isPlaying=!1,r())})),h(this,"handleError",((...e)=>{this.isLoading=!1,this.props.onError(...e)})),h(this,"handleDurationCheck",(()=>{clearTimeout(this.durationCheckTimeout);const e=this.getDuration();e?this.onDurationCalled||(this.props.onDuration(e),this.onDurationCalled=!0):this.durationCheckTimeout=setTimeout(this.handleDurationCheck,100)})),h(this,"handleLoaded",(()=>{this.isLoading=!1}))}componentDidMount(){this.mounted=!0}componentWillUnmount(){clearTimeout(this.progressTimeout),clearTimeout(this.durationCheckTimeout),this.isReady&&this.props.stopOnUnmount&&(this.player.stop(),this.player.disablePIP&&this.player.disablePIP()),this.mounted=!1}componentDidUpdate(e){if(!this.player)return;const{url:t,playing:r,volume:n,muted:i,playbackRate:o,pip:a,loop:s,activePlayer:c,disableDeferredLoading:l}=this.props;if(!(0,m.default)(e.url,t)){if(this.isLoading&&!c.forceLoad&&!l&&!(0,v.isMediaStream)(t))return console.warn(`ReactPlayer: the attempt to load ${t} is being deferred until the player has loaded`),void(this.loadOnReady=t);this.isLoading=!0,this.startOnPlay=!0,this.onDurationCalled=!1,this.player.load(t,this.isReady)}e.playing||!r||this.isPlaying||this.player.play(),e.playing&&!r&&this.isPlaying&&this.player.pause(),!e.pip&&a&&this.player.enablePIP&&this.player.enablePIP(),e.pip&&!a&&this.player.disablePIP&&this.player.disablePIP(),e.volume!==n&&null!==n&&this.player.setVolume(n),e.muted!==i&&(i?this.player.mute():(this.player.unmute(),null!==n&&setTimeout((()=>this.player.setVolume(n))))),e.playbackRate!==o&&this.player.setPlaybackRate&&this.player.setPlaybackRate(o),e.loop!==s&&this.player.setLoop&&this.player.setLoop(s)}getDuration(){return this.isReady?this.player.getDuration():null}getCurrentTime(){return this.isReady?this.player.getCurrentTime():null}getSecondsLoaded(){return this.isReady?this.player.getSecondsLoaded():null}seekTo(e,t,r){if(!this.isReady)return void(0!==e&&(this.seekOnPlay=e,setTimeout((()=>{this.seekOnPlay=null}),5e3)));if(t?"fraction"===t:e>0&&e<1){const t=this.player.getDuration();return t?void this.player.seekTo(t*e,r):void console.warn("ReactPlayer: could not seek using fraction \u2013\xa0duration not yet available")}this.player.seekTo(e,r)}render(){const e=this.props.activePlayer;return e?p.default.createElement(e,{...this.props,onMount:this.handlePlayerMount,onReady:this.handleReady,onPlay:this.handlePlay,onPause:this.handlePause,onEnded:this.handleEnded,onLoaded:this.handleLoaded,onError:this.handleError}):null}}h(y,"displayName","Player"),h(y,"propTypes",g.propTypes),h(y,"defaultProps",g.defaultProps)},9634:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h=(e,t,r)=>(((e,t,r)=>{t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),f={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(f,{createReactPlayer:()=>P}),e.exports=(n=f,u(o({},"__esModule",{value:!0}),n));var p=d(r(4082)),m=d(r(4610)),g=d(r(8009)),v=d(r(2249)),y=r(5738),b=r(7817),w=d(r(5247));const x=(0,b.lazy)((()=>r.e(353).then(r.t.bind(r,524,23)))),_="undefined"!==typeof window&&window.document&&"undefined"!==typeof document,k="undefined"!==typeof r.g&&r.g.window&&r.g.window.document,S=Object.keys(y.propTypes),E=_||k?p.Suspense:()=>null,A=[],P=(e,t)=>{var r;return r=class extends p.Component{constructor(){super(...arguments),h(this,"state",{showPreview:!!this.props.light}),h(this,"references",{wrapper:e=>{this.wrapper=e},player:e=>{this.player=e}}),h(this,"handleClickPreview",(e=>{this.setState({showPreview:!1}),this.props.onClickPreview(e)})),h(this,"showPreview",(()=>{this.setState({showPreview:!0})})),h(this,"getDuration",(()=>this.player?this.player.getDuration():null)),h(this,"getCurrentTime",(()=>this.player?this.player.getCurrentTime():null)),h(this,"getSecondsLoaded",(()=>this.player?this.player.getSecondsLoaded():null)),h(this,"getInternalPlayer",((e="player")=>this.player?this.player.getInternalPlayer(e):null)),h(this,"seekTo",((e,t,r)=>{if(!this.player)return null;this.player.seekTo(e,t,r)})),h(this,"handleReady",(()=>{this.props.onReady(this)})),h(this,"getActivePlayer",(0,g.default)((r=>{for(const t of[...A,...e])if(t.canPlay(r))return t;return t||null}))),h(this,"getConfig",(0,g.default)(((e,t)=>{const{config:r}=this.props;return m.default.all([y.defaultProps.config,y.defaultProps.config[t]||{},r,r[t]||{}])}))),h(this,"getAttributes",(0,g.default)((e=>(0,b.omit)(this.props,S)))),h(this,"renderActivePlayer",(e=>{if(!e)return null;const t=this.getActivePlayer(e);if(!t)return null;const r=this.getConfig(e,t.key);return p.default.createElement(w.default,{...this.props,key:t.key,ref:this.references.player,config:r,activePlayer:t.lazyPlayer||t,onReady:this.handleReady})}))}shouldComponentUpdate(e,t){return!(0,v.default)(this.props,e)||!(0,v.default)(this.state,t)}componentDidUpdate(e){const{light:t}=this.props;!e.light&&t&&this.setState({showPreview:!0}),e.light&&!t&&this.setState({showPreview:!1})}renderPreview(e){if(!e)return null;const{light:t,playIcon:r,previewTabIndex:n,oEmbedUrl:i,previewAriaLabel:o}=this.props;return p.default.createElement(x,{url:e,light:t,playIcon:r,previewTabIndex:n,previewAriaLabel:o,oEmbedUrl:i,onClick:this.handleClickPreview})}render(){const{url:e,style:t,width:r,height:n,fallback:i,wrapper:o}=this.props,{showPreview:a}=this.state,s=this.getAttributes(e),c="string"===typeof o?this.references.wrapper:void 0;return p.default.createElement(o,{ref:c,style:{...t,width:r,height:n},...s},p.default.createElement(E,{fallback:i},a?this.renderPreview(e):this.renderActivePlayer(e)))}},h(r,"displayName","ReactPlayer"),h(r,"propTypes",y.propTypes),h(r,"defaultProps",y.defaultProps),h(r,"addCustomPlayer",(e=>{A.push(e)})),h(r,"removeCustomPlayers",(()=>{A.length=0})),h(r,"canPlay",(t=>{for(const r of[...A,...e])if(r.canPlay(t))return!0;return!1})),h(r,"canEnablePIP",(t=>{for(const r of[...A,...e])if(r.canEnablePIP&&r.canEnablePIP(t))return!0;return!1})),r}},6784:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(d,{default:()=>m}),e.exports=(n=d,u(o({},"__esModule",{value:!0}),n));var h=((e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)))(r(841)),f=r(9634);const p=h.default[h.default.length-1];var m=(0,f.createReactPlayer)(h.default,p)},4921:(e,t,r)=>{var n,i=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,c={};((e,t)=>{for(var r in t)i(e,r,{get:t[r],enumerable:!0})})(c,{AUDIO_EXTENSIONS:()=>S,DASH_EXTENSIONS:()=>P,FLV_EXTENSIONS:()=>O,HLS_EXTENSIONS:()=>A,MATCH_URL_DAILYMOTION:()=>w,MATCH_URL_FACEBOOK:()=>p,MATCH_URL_FACEBOOK_WATCH:()=>m,MATCH_URL_KALTURA:()=>k,MATCH_URL_MIXCLOUD:()=>x,MATCH_URL_MUX:()=>f,MATCH_URL_SOUNDCLOUD:()=>d,MATCH_URL_STREAMABLE:()=>g,MATCH_URL_TWITCH_CHANNEL:()=>b,MATCH_URL_TWITCH_VIDEO:()=>y,MATCH_URL_VIDYARD:()=>_,MATCH_URL_VIMEO:()=>h,MATCH_URL_WISTIA:()=>v,MATCH_URL_YOUTUBE:()=>u,VIDEO_EXTENSIONS:()=>E,canPlay:()=>j}),e.exports=(n=c,((e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let c of a(t))s.call(e,c)||c===r||i(e,c,{get:()=>t[c],enumerable:!(n=o(t,c))||n.enumerable});return e})(i({},"__esModule",{value:!0}),n));var l=r(7817);const u=/(?:youtu\.be\/|youtube(?:-nocookie|education)?\.com\/(?:embed\/|v\/|watch\/|watch\?v=|watch\?.+&v=|shorts\/|live\/))((\w|-){11})|youtube\.com\/playlist\?list=|youtube\.com\/user\//,d=/(?:soundcloud\.com|snd\.sc)\/[^.]+$/,h=/vimeo\.com\/(?!progressive_redirect).+/,f=/stream\.mux\.com\/(\w+)/,p=/^https?:\/\/(www\.)?facebook\.com.*\/(video(s)?|watch|story)(\.php?|\/).+$/,m=/^https?:\/\/fb\.watch\/.+$/,g=/streamable\.com\/([a-z0-9]+)$/,v=/(?:wistia\.(?:com|net)|wi\.st)\/(?:medias|embed)\/(?:iframe\/)?([^?]+)/,y=/(?:www\.|go\.)?twitch\.tv\/videos\/(\d+)($|\?)/,b=/(?:www\.|go\.)?twitch\.tv\/([a-zA-Z0-9_]+)($|\?)/,w=/^(?:(?:https?):)?(?:\/\/)?(?:www\.)?(?:(?:dailymotion\.com(?:\/embed)?\/video)|dai\.ly)\/([a-zA-Z0-9]+)(?:_[\w_-]+)?(?:[\w.#_-]+)?/,x=/mixcloud\.com\/([^/]+\/[^/]+)/,_=/vidyard.com\/(?:watch\/)?([a-zA-Z0-9-_]+)/,k=/^https?:\/\/[a-zA-Z]+\.kaltura.(com|org)\/p\/([0-9]+)\/sp\/([0-9]+)00\/embedIframeJs\/uiconf_id\/([0-9]+)\/partner_id\/([0-9]+)(.*)entry_id.([a-zA-Z0-9-_].*)$/,S=/\.(m4a|m4b|mp4a|mpga|mp2|mp2a|mp3|m2a|m3a|wav|weba|aac|oga|spx)($|\?)/i,E=/\.(mp4|og[gv]|webm|mov|m4v)(#t=[,\d+]+)?($|\?)/i,A=/\.(m3u8)($|\?)/i,P=/\.(mpd)($|\?)/i,O=/\.(flv)($|\?)/i,T=e=>{if(e instanceof Array){for(const t of e){if("string"===typeof t&&T(t))return!0;if(T(t.src))return!0}return!1}return!(!(0,l.isMediaStream)(e)&&!(0,l.isBlobUrl)(e))||(S.test(e)||E.test(e)||A.test(e)||P.test(e)||O.test(e))},j={youtube:e=>e instanceof Array?e.every((e=>u.test(e))):u.test(e),soundcloud:e=>d.test(e)&&!S.test(e),vimeo:e=>h.test(e)&&!E.test(e)&&!A.test(e),mux:e=>f.test(e),facebook:e=>p.test(e)||m.test(e),streamable:e=>g.test(e),wistia:e=>v.test(e),twitch:e=>y.test(e)||b.test(e),dailymotion:e=>w.test(e),mixcloud:e=>x.test(e),vidyard:e=>_.test(e),kaltura:e=>k.test(e),file:T}},841:(e,t,r)=>{Object.create;var n,i=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,s=(Object.getPrototypeOf,Object.prototype.hasOwnProperty),c=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let c of a(t))s.call(e,c)||c===r||i(e,c,{get:()=>t[c],enumerable:!(n=o(t,c))||n.enumerable});return e},l={};((e,t)=>{for(var r in t)i(e,r,{get:t[r],enumerable:!0})})(l,{default:()=>h}),e.exports=(n=l,c(i({},"__esModule",{value:!0}),n));var u=r(7817),d=r(4921),h=[{key:"youtube",name:"YouTube",canPlay:d.canPlay.youtube,lazyPlayer:(0,u.lazy)((()=>r.e(446).then(r.t.bind(r,7324,23))))},{key:"soundcloud",name:"SoundCloud",canPlay:d.canPlay.soundcloud,lazyPlayer:(0,u.lazy)((()=>r.e(979).then(r.t.bind(r,3093,23))))},{key:"vimeo",name:"Vimeo",canPlay:d.canPlay.vimeo,lazyPlayer:(0,u.lazy)((()=>r.e(173).then(r.t.bind(r,9701,23))))},{key:"mux",name:"Mux",canPlay:d.canPlay.mux,lazyPlayer:(0,u.lazy)((()=>r.e(723).then(r.t.bind(r,1967,23))))},{key:"facebook",name:"Facebook",canPlay:d.canPlay.facebook,lazyPlayer:(0,u.lazy)((()=>r.e(887).then(r.t.bind(r,9129,23))))},{key:"streamable",name:"Streamable",canPlay:d.canPlay.streamable,lazyPlayer:(0,u.lazy)((()=>r.e(627).then(r.t.bind(r,9062,23))))},{key:"wistia",name:"Wistia",canPlay:d.canPlay.wistia,lazyPlayer:(0,u.lazy)((()=>r.e(340).then(r.t.bind(r,6564,23))))},{key:"twitch",name:"Twitch",canPlay:d.canPlay.twitch,lazyPlayer:(0,u.lazy)((()=>r.e(42).then(r.t.bind(r,9370,23))))},{key:"dailymotion",name:"DailyMotion",canPlay:d.canPlay.dailymotion,lazyPlayer:(0,u.lazy)((()=>r.e(328).then(r.t.bind(r,4134,23))))},{key:"mixcloud",name:"Mixcloud",canPlay:d.canPlay.mixcloud,lazyPlayer:(0,u.lazy)((()=>r.e(570).then(r.t.bind(r,8921,23))))},{key:"vidyard",name:"Vidyard",canPlay:d.canPlay.vidyard,lazyPlayer:(0,u.lazy)((()=>r.e(392).then(r.t.bind(r,6054,23))))},{key:"kaltura",name:"Kaltura",canPlay:d.canPlay.kaltura,lazyPlayer:(0,u.lazy)((()=>r.e(463).then(r.t.bind(r,3447,23))))},{key:"file",name:"FilePlayer",canPlay:d.canPlay.file,canEnablePIP:e=>d.canPlay.file(e)&&(document.pictureInPictureEnabled||(0,u.supportsWebKitPresentationMode)())&&!d.AUDIO_EXTENSIONS.test(e),lazyPlayer:(0,u.lazy)((()=>r.e(458).then(r.t.bind(r,2578,23))))}]},5738:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(d,{defaultProps:()=>S,propTypes:()=>_}),e.exports=(n=d,u(o({},"__esModule",{value:!0}),n));var h=((e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)))(r(9922));const{string:f,bool:p,number:m,array:g,oneOfType:v,shape:y,object:b,func:w,node:x}=h.default,_={url:v([f,g,b]),playing:p,loop:p,controls:p,volume:m,muted:p,playbackRate:m,width:v([f,m]),height:v([f,m]),style:b,progressInterval:m,playsinline:p,pip:p,stopOnUnmount:p,light:v([p,f,b]),playIcon:x,previewTabIndex:m,previewAriaLabel:f,fallback:x,oEmbedUrl:f,wrapper:v([f,w,y({render:w.isRequired})]),config:y({soundcloud:y({options:b}),youtube:y({playerVars:b,embedOptions:b,onUnstarted:w}),facebook:y({appId:f,version:f,playerId:f,attributes:b}),dailymotion:y({params:b}),vimeo:y({playerOptions:b,title:f}),mux:y({attributes:b,version:f}),file:y({attributes:b,tracks:g,forceVideo:p,forceAudio:p,forceHLS:p,forceSafariHLS:p,forceDisableHls:p,forceDASH:p,forceFLV:p,hlsOptions:b,hlsVersion:f,dashVersion:f,flvVersion:f}),wistia:y({options:b,playerId:f,customControls:g}),mixcloud:y({options:b}),twitch:y({options:b,playerId:f}),vidyard:y({options:b})}),onReady:w,onStart:w,onPlay:w,onPause:w,onBuffer:w,onBufferEnd:w,onEnded:w,onError:w,onDuration:w,onSeek:w,onPlaybackRateChange:w,onPlaybackQualityChange:w,onProgress:w,onClickPreview:w,onEnablePIP:w,onDisablePIP:w},k=()=>{},S={playing:!1,loop:!1,controls:!1,volume:null,muted:!1,playbackRate:1,width:"640px",height:"360px",style:{},progressInterval:1e3,playsinline:!1,pip:!1,stopOnUnmount:!0,light:!1,fallback:null,wrapper:"div",previewTabIndex:0,previewAriaLabel:"",oEmbedUrl:"https://noembed.com/embed?url={url}",config:{soundcloud:{options:{visual:!0,buying:!1,liking:!1,download:!1,sharing:!1,show_comments:!1,show_playcount:!1}},youtube:{playerVars:{playsinline:1,showinfo:0,rel:0,iv_load_policy:3,modestbranding:1},embedOptions:{},onUnstarted:k},facebook:{appId:"1309697205772819",version:"v3.3",playerId:null,attributes:{}},dailymotion:{params:{api:1,"endscreen-enable":!1}},vimeo:{playerOptions:{autopause:!1,byline:!1,portrait:!1,title:!1},title:null},mux:{attributes:{},version:"2"},file:{attributes:{},tracks:[],forceVideo:!1,forceAudio:!1,forceHLS:!1,forceDASH:!1,forceFLV:!1,hlsOptions:{},hlsVersion:"1.1.4",dashVersion:"3.1.3",flvVersion:"1.5.0",forceDisableHls:!1},wistia:{options:{},playerId:null,customControls:null},mixcloud:{options:{hide_cover:1}},twitch:{options:{},playerId:null},vidyard:{options:{}}},onReady:k,onStart:k,onPlay:k,onPause:k,onBuffer:k,onBufferEnd:k,onEnded:k,onError:k,onDuration:k,onSeek:k,onPlaybackRateChange:k,onPlaybackQualityChange:k,onProgress:k,onClickPreview:k,onEnablePIP:k,onDisablePIP:k}},7817:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(h,{callPlayer:()=>C,getConfig:()=>T,getSDK:()=>O,isBlobUrl:()=>I,isMediaStream:()=>R,lazy:()=>g,omit:()=>j,parseEndTime:()=>k,parseStartTime:()=>_,queryString:()=>E,randomString:()=>S,supportsWebKitPresentationMode:()=>M}),e.exports=(n=h,u(o({},"__esModule",{value:!0}),n));var f=d(r(4082)),p=d(r(929)),m=d(r(4610));const g=e=>f.default.lazy((async()=>{const t=await e();return"function"===typeof t.default?t:t.default})),v=/[?&#](?:start|t)=([0-9hms]+)/,y=/[?&#]end=([0-9hms]+)/,b=/(\d+)(h|m|s)/g,w=/^\d+$/;function x(e,t){if(e instanceof Array)return;const r=e.match(t);if(r){const e=r[1];if(e.match(b))return function(e){let t=0,r=b.exec(e);for(;null!==r;){const[,n,i]=r;"h"===i&&(t+=60*parseInt(n,10)*60),"m"===i&&(t+=60*parseInt(n,10)),"s"===i&&(t+=parseInt(n,10)),r=b.exec(e)}return t}(e);if(w.test(e))return parseInt(e)}}function _(e){return x(e,v)}function k(e){return x(e,y)}function S(){return Math.random().toString(36).substr(2,5)}function E(e){return Object.keys(e).map((t=>`${t}=${e[t]}`)).join("&")}function A(e){return window[e]?window[e]:window.exports&&window.exports[e]?window.exports[e]:window.module&&window.module.exports&&window.module.exports[e]?window.module.exports[e]:null}const P={},O=function(e){0;return e}((function(e,t,r=null,n=(()=>!0),i=p.default){const o=A(t);return o&&n(o)?Promise.resolve(o):new Promise(((n,o)=>{if(P[e])return void P[e].push({resolve:n,reject:o});P[e]=[{resolve:n,reject:o}];const a=t=>{P[e].forEach((e=>e.resolve(t)))};if(r){const e=window[r];window[r]=function(){e&&e(),a(A(t))}}i(e,(n=>{n?(P[e].forEach((e=>e.reject(n))),P[e]=null):r||a(A(t))}))}))}));function T(e,t){return(0,m.default)(t.config,e.config)}function j(e,...t){const r=[].concat(...t),n={},i=Object.keys(e);for(const o of i)-1===r.indexOf(o)&&(n[o]=e[o]);return n}function C(e,...t){if(!this.player||!this.player[e]){let t=`ReactPlayer: ${this.constructor.displayName} player could not call %c${e}%c \u2013 `;return this.player?this.player[e]||(t+="The method was not available"):t+="The player was not available",console.warn(t,"font-weight: bold",""),null}return this.player[e](...t)}function R(e){return"undefined"!==typeof window&&"undefined"!==typeof window.MediaStream&&e instanceof window.MediaStream}function I(e){return/^blob:/.test(e)}function M(e=document.createElement("video")){const t=!1===/iPhone|iPod/.test(navigator.userAgent);return e.webkitSupportsPresentationMode&&"function"===typeof e.webkitSetPresentationMode&&t}},6910:function(e,t,r){"use strict";var n=this&&this.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])},e(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(t,"__esModule",{value:!0}),t.QRCode=void 0;var i=r(5480),o=r(6527),a=r(4082),s=r(2515),c=function(e){function t(t){var r=e.call(this,t)||this;return r.canvas=a.createRef(),r}return n(t,e),t.utf16to8=function(e){var t,r,n="",i=e.length;for(t=0;t=1&&r<=127?n+=e.charAt(t):r>2047?(n+=String.fromCharCode(224|r>>12&15),n+=String.fromCharCode(128|r>>6&63),n+=String.fromCharCode(128|r>>0&63)):(n+=String.fromCharCode(192|r>>6&31),n+=String.fromCharCode(128|r>>0&63));return n},t.prototype.drawRoundedSquare=function(e,t,r,n,i,o,a,s){s.lineWidth=e,s.fillStyle=i,s.strokeStyle=i,r+=e/2,t+=e/2,n-=e,Array.isArray(o)||(o=[o,o,o,o]);var c=(o=o.map((function(e){return(e=Math.min(e,n/2))<0?0:e})))[0]||0,l=o[1]||0,u=o[2]||0,d=o[3]||0;s.beginPath(),s.moveTo(t+c,r),s.lineTo(t+n-l,r),l&&s.quadraticCurveTo(t+n,r,t+n,r+l),s.lineTo(t+n,r+n-u),u&&s.quadraticCurveTo(t+n,r+n,t+n-u,r+n),s.lineTo(t+d,r+n),d&&s.quadraticCurveTo(t,r+n,t,r+n-d),s.lineTo(t,r+c),c&&s.quadraticCurveTo(t,r,t+c,r),s.closePath(),s.stroke(),a&&s.fill()},t.prototype.drawPositioningPattern=function(e,t,r,n,i,o,a){void 0===a&&(a=[0,0,0,0]);var s,c,l,u,d=Math.ceil(t);"number"===typeof a||Array.isArray(a)?c=s=a:(s=a.outer||0,c=a.inner||0),"string"!==typeof o?(l=o.outer,u=o.inner):(l=o,u=o);var h=n*t+r,f=i*t+r,p=7*t;this.drawRoundedSquare(d,f,h,p,l,s,!1,e),p=3*t,h+=2*t,f+=2*t,this.drawRoundedSquare(d,f,h,p,u,c,!0,e)},t.prototype.isInPositioninZone=function(e,t,r){return r.some((function(r){return t>=r.row&&t<=r.row+7&&e>=r.col&&e<=r.col+7}))},t.prototype.transformPixelLengthIntoNumberOfCells=function(e,t){return e/t},t.prototype.isCoordinateInImage=function(e,t,r,n,i,o,a,s){if(s){var c=this.transformPixelLengthIntoNumberOfCells(i,a),l=this.transformPixelLengthIntoNumberOfCells(o,a),u=this.transformPixelLengthIntoNumberOfCells(r,a)-1,d=this.transformPixelLengthIntoNumberOfCells(n,a)-1;return t>=c-2&&t<=c+u+2&&e>=l-2&&e<=l+d+2}return!1},t.prototype.shouldComponentUpdate=function(e){return!i(this.props,e)},t.prototype.componentDidMount=function(){this.update()},t.prototype.componentDidUpdate=function(){this.update()},t.prototype.update=function(){var e=this.props,r=e.value,n=e.ecLevel,i=e.enableCORS,a=e.bgColor,c=e.fgColor,l=e.logoImage,u=e.logoOpacity,d=e.logoOnLoad,h=e.removeQrCodeBehindLogo,f=e.qrStyle,p=e.eyeRadius,m=e.eyeColor,g=e.logoPaddingStyle,v=+this.props.size,y=+this.props.quietZone,b=this.props.logoWidth?+this.props.logoWidth:0,w=this.props.logoHeight?+this.props.logoHeight:0,x=this.props.logoPadding?+this.props.logoPadding:0,_=o(0,n);_.addData(t.utf16to8(r)),_.make();var k=s.findDOMNode(this.canvas.current),S=k.getContext("2d"),E=v+2*y,A=_.getModuleCount(),P=v/A,O=window.devicePixelRatio||1;k.height=k.width=E*O,S.scale(O,O),S.fillStyle=a,S.fillRect(0,0,E,E);var T=y,j=[{row:0,col:0},{row:0,col:A-7},{row:A-7,col:0}];if(S.strokeStyle=c,"dots"===f){S.fillStyle=c;for(var C=P/2,R=0;R{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(e,t,r){var n=0===e?e:e+t;return"translate3d"+("("+("horizontal"===r?[n,0,0]:[0,n,0]).join(",")+")")}},6683:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fadeAnimationHandler=t.slideStopSwipingHandler=t.slideSwipeAnimationHandler=t.slideAnimationHandler=void 0;var n,i=r(4082),o=(n=r(4635))&&n.__esModule?n:{default:n},a=r(503);function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;tl))return s<0?e.centerMode&&e.centerSlidePercentage&&"horizontal"===e.axis?r.itemListStyle=(0,a.setPosition)(-(l+2)*e.centerSlidePercentage-(100-e.centerSlidePercentage)/2,e.axis):r.itemListStyle=(0,a.setPosition)(100*-(l+2),e.axis):s>l&&(r.itemListStyle=(0,a.setPosition)(0,e.axis)),r;var u=(0,a.getPosition)(n,e),d=(0,o.default)(u,"%",e.axis),h=e.transitionTime+"ms";return r.itemListStyle={WebkitTransform:d,msTransform:d,OTransform:d,transform:d},t.swiping||(r.itemListStyle=c(c({},r.itemListStyle),{},{WebkitTransitionDuration:h,MozTransitionDuration:h,OTransitionDuration:h,transitionDuration:h,msTransitionDuration:h})),r};t.slideSwipeAnimationHandler=function(e,t,r,n){var o={},s="horizontal"===t.axis,c=i.Children.count(t.children),l=(0,a.getPosition)(r.selectedItem,t),u=t.infiniteLoop?(0,a.getPosition)(c-1,t)-100:(0,a.getPosition)(c-1,t),d=s?e.x:e.y,h=d;0===l&&d>0&&(h=0),l===u&&d<0&&(h=0);var f=l+100/(r.itemSize/h),p=Math.abs(d)>t.swipeScrollTolerance;return t.infiniteLoop&&p&&(0===r.selectedItem&&f>-100?f-=100*c:r.selectedItem===c-1&&f<100*-c&&(f+=100*c)),(!t.preventMovementUntilSwipeScrollTolerance||p||r.swipeMovementStarted)&&(r.swipeMovementStarted||n({swipeMovementStarted:!0}),o.itemListStyle=(0,a.setPosition)(f,t.axis)),p&&!r.cancelClick&&n({cancelClick:!0}),o};t.slideStopSwipingHandler=function(e,t){var r=(0,a.getPosition)(t.selectedItem,e);return{itemListStyle:(0,a.setPosition)(r,e.axis)}};t.fadeAnimationHandler=function(e,t){var r=e.transitionTime+"ms",n="ease-in-out",i={position:"absolute",display:"block",zIndex:-2,minHeight:"100%",opacity:0,top:0,right:0,left:0,bottom:0,transitionTimingFunction:n,msTransitionTimingFunction:n,MozTransitionTimingFunction:n,WebkitTransitionTimingFunction:n,OTransitionTimingFunction:n};return t.swiping||(i=c(c({},i),{},{WebkitTransitionDuration:r,MozTransitionDuration:r,OTransitionDuration:r,transitionDuration:r,msTransitionDuration:r})),{slideStyle:i,selectedStyle:c(c({},i),{},{opacity:1,position:"relative"}),prevStyle:c({},i)}}},3222:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==f(e)&&"function"!==typeof e)return{default:e};var t=h();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=n?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(r,i,o):r[i]=e[i]}r.default=e,t&&t.set(e,r);return r}(r(4082)),i=d(r(488)),o=d(r(3841)),a=d(r(3642)),s=d(r(1846)),c=d(r(9927)),l=r(503),u=r(6683);function d(e){return e&&e.__esModule?e:{default:e}}function h(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return h=function(){return e},e}function f(e){return f="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function p(){return p=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:1;t.moveTo(t.state.selectedItem-("number"===typeof e?e:1))})),_(w(t),"increment",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.moveTo(t.state.selectedItem+("number"===typeof e?e:1))})),_(w(t),"moveTo",(function(e){if("number"===typeof e){var r=n.Children.count(t.props.children)-1;e<0&&(e=t.props.infiniteLoop?r:0),e>r&&(e=t.props.infiniteLoop?0:r),t.selectItem({selectedItem:e}),t.state.autoPlay&&!1===t.state.isMouseEntered&&t.resetAutoPlay()}})),_(w(t),"onClickNext",(function(){t.increment(1)})),_(w(t),"onClickPrev",(function(){t.decrement(1)})),_(w(t),"onSwipeForward",(function(){t.increment(1),t.props.emulateTouch&&t.setState({cancelClick:!0})})),_(w(t),"onSwipeBackwards",(function(){t.decrement(1),t.props.emulateTouch&&t.setState({cancelClick:!0})})),_(w(t),"changeItem",(function(e){return function(r){(0,l.isKeyboardEvent)(r)&&"Enter"!==r.key||t.moveTo(e)}})),_(w(t),"selectItem",(function(e){t.setState(g({previousItem:t.state.selectedItem},e),(function(){t.setState(t.animationHandler(t.props,t.state))})),t.handleOnChange(e.selectedItem,n.Children.toArray(t.props.children)[e.selectedItem])})),_(w(t),"getInitialImage",(function(){var e=t.props.selectedItem,r=t.itemsRef&&t.itemsRef[e];return(r&&r.getElementsByTagName("img")||[])[0]})),_(w(t),"getVariableItemHeight",(function(e){var r=t.itemsRef&&t.itemsRef[e];if(t.state.hasMount&&r&&r.children.length){var n=r.children[0].getElementsByTagName("img")||[];if(n.length>0){var i=n[0];if(!i.complete){i.addEventListener("load",(function e(){t.forceUpdate(),i.removeEventListener("load",e)}))}}var o=(n[0]||r.children[0]).clientHeight;return o>0?o:null}return null}));var r={initialized:!1,previousItem:e.selectedItem,selectedItem:e.selectedItem,hasMount:!1,isMouseEntered:!1,autoPlay:e.autoPlay,swiping:!1,swipeMovementStarted:!1,cancelClick:!1,itemSize:1,itemListStyle:{},slideStyle:{},selectedStyle:{},prevStyle:{}};return t.animationHandler="function"===typeof e.animationHandler&&e.animationHandler||"fade"===e.animationHandler&&u.fadeAnimationHandler||u.slideAnimationHandler,t.state=g(g({},r),t.animationHandler(e,r)),t}return t=f,(r=[{key:"componentDidMount",value:function(){this.props.children&&this.setupCarousel()}},{key:"componentDidUpdate",value:function(e,t){e.children||!this.props.children||this.state.initialized||this.setupCarousel(),!e.autoFocus&&this.props.autoFocus&&this.forceFocus(),t.swiping&&!this.state.swiping&&this.setState(g({},this.props.stopSwipingHandler(this.props,this.state))),e.selectedItem===this.props.selectedItem&&e.centerMode===this.props.centerMode||(this.updateSizes(),this.moveTo(this.props.selectedItem)),e.autoPlay!==this.props.autoPlay&&(this.props.autoPlay?this.setupAutoPlay():this.destroyAutoPlay(),this.setState({autoPlay:this.props.autoPlay}))}},{key:"componentWillUnmount",value:function(){this.destroyCarousel()}},{key:"setupCarousel",value:function(){var e=this;this.bindEvents(),this.state.autoPlay&&n.Children.count(this.props.children)>1&&this.setupAutoPlay(),this.props.autoFocus&&this.forceFocus(),this.setState({initialized:!0},(function(){var t=e.getInitialImage();t&&!t.complete?t.addEventListener("load",e.setMountState):e.setMountState()}))}},{key:"destroyCarousel",value:function(){this.state.initialized&&(this.unbindEvents(),this.destroyAutoPlay())}},{key:"setupAutoPlay",value:function(){this.autoPlay();var e=this.carouselWrapperRef;this.props.stopOnHover&&e&&(e.addEventListener("mouseenter",this.stopOnHover),e.addEventListener("mouseleave",this.startOnLeave))}},{key:"destroyAutoPlay",value:function(){this.clearAutoPlay();var e=this.carouselWrapperRef;this.props.stopOnHover&&e&&(e.removeEventListener("mouseenter",this.stopOnHover),e.removeEventListener("mouseleave",this.startOnLeave))}},{key:"bindEvents",value:function(){(0,c.default)().addEventListener("resize",this.updateSizes),(0,c.default)().addEventListener("DOMContentLoaded",this.updateSizes),this.props.useKeyboardArrows&&(0,s.default)().addEventListener("keydown",this.navigateWithKeyboard)}},{key:"unbindEvents",value:function(){(0,c.default)().removeEventListener("resize",this.updateSizes),(0,c.default)().removeEventListener("DOMContentLoaded",this.updateSizes);var e=this.getInitialImage();e&&e.removeEventListener("load",this.setMountState),this.props.useKeyboardArrows&&(0,s.default)().removeEventListener("keydown",this.navigateWithKeyboard)}},{key:"forceFocus",value:function(){var e;null===(e=this.carouselWrapperRef)||void 0===e||e.focus()}},{key:"renderItems",value:function(e){var t=this;return this.props.children?n.Children.map(this.props.children,(function(r,i){var a=i===t.state.selectedItem,s=i===t.state.previousItem,c=a&&t.state.selectedStyle||s&&t.state.prevStyle||t.state.slideStyle||{};t.props.centerMode&&"horizontal"===t.props.axis&&(c=g(g({},c),{},{minWidth:t.props.centerSlidePercentage+"%"})),t.state.swiping&&t.state.swipeMovementStarted&&(c=g(g({},c),{},{pointerEvents:"none"}));var l={ref:function(e){return t.setItemsRef(e,i)},key:"itemKey"+i+(e?"clone":""),className:o.default.ITEM(!0,i===t.state.selectedItem,i===t.state.previousItem),onClick:t.handleClickItem.bind(t,i,r),style:c};return n.default.createElement("li",l,t.props.renderItem(r,{isSelected:i===t.state.selectedItem,isPrevious:i===t.state.previousItem}))})):[]}},{key:"renderControls",value:function(){var e=this,t=this.props,r=t.showIndicators,i=t.labels,o=t.renderIndicator,a=t.children;return r?n.default.createElement("ul",{className:"control-dots"},n.Children.map(a,(function(t,r){return o&&o(e.changeItem(r),r===e.state.selectedItem,r,i.item)}))):null}},{key:"renderStatus",value:function(){return this.props.showStatus?n.default.createElement("p",{className:"carousel-status"},this.props.statusFormatter(this.state.selectedItem+1,n.Children.count(this.props.children))):null}},{key:"renderThumbs",value:function(){return this.props.showThumbs&&this.props.children&&0!==n.Children.count(this.props.children)?n.default.createElement(a.default,{ref:this.setThumbsRef,onSelectItem:this.handleClickThumb,selectedItem:this.state.selectedItem,transitionTime:this.props.transitionTime,thumbWidth:this.props.thumbWidth,labels:this.props.labels,emulateTouch:this.props.emulateTouch},this.props.renderThumbs(this.props.children)):null}},{key:"render",value:function(){var e=this;if(!this.props.children||0===n.Children.count(this.props.children))return null;var t=this.props.swipeable&&n.Children.count(this.props.children)>1,r="horizontal"===this.props.axis,a=this.props.showArrows&&n.Children.count(this.props.children)>1,s=a&&(this.state.selectedItem>0||this.props.infiniteLoop)||!1,c=a&&(this.state.selectedItem{},503:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setPosition=t.getPosition=t.isKeyboardEvent=t.defaultStatusFormatter=t.noop=void 0;var n,i=r(4082),o=(n=r(4635))&&n.__esModule?n:{default:n};t.noop=function(){};t.defaultStatusFormatter=function(e,t){return"".concat(e," of ").concat(t)};t.isKeyboardEvent=function(e){return!!e&&e.hasOwnProperty("key")};t.getPosition=function(e,t){if(t.infiniteLoop&&++e,0===e)return 0;var r=i.Children.count(t.children);if(t.centerMode&&"horizontal"===t.axis){var n=-e*t.centerSlidePercentage,o=r-1;return e&&(e!==o||t.infiniteLoop)?n+=(100-t.centerSlidePercentage)/2:e===o&&(n+=100-t.centerSlidePercentage),n}return 100*-e};t.setPosition=function(e,t){var r={};return["WebkitTransform","MozTransform","MsTransform","OTransform","transform","msTransform"].forEach((function(n){r[n]=(0,o.default)(e,"%",t)})),r}},3642:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==d(e)&&"function"!==typeof e)return{default:e};var t=u();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=n?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(r,i,o):r[i]=e[i]}r.default=e,t&&t.set(e,r);return r}(r(4082)),i=l(r(3841)),o=r(2597),a=l(r(4635)),s=l(r(488)),c=l(r(9927));function l(e){return e&&e.__esModule?e:{default:e}}function u(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return u=function(){return e},e}function d(e){return d="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function h(){return h=Object.assign||function(e){for(var t=1;t0&&(r=0),o===100*-Math.max(i-t.state.visibleItems,0)/t.state.visibleItems&&r<0&&(r=0);var s=o+100/(t.itemsWrapperRef.clientWidth/r);return t.itemsListRef&&["WebkitTransform","MozTransform","MsTransform","OTransform","transform","msTransform"].forEach((function(e){t.itemsListRef.style[e]=(0,a.default)(s,"%",t.props.axis)})),!0})),y(g(t),"slideRight",(function(e){t.moveTo(t.state.firstItem-("number"===typeof e?e:1))})),y(g(t),"slideLeft",(function(e){t.moveTo(t.state.firstItem+("number"===typeof e?e:1))})),y(g(t),"moveTo",(function(e){e=(e=e<0?0:e)>=t.state.lastPosition?t.state.lastPosition:e,t.setState({firstItem:e})})),t.state={selectedItem:e.selectedItem,swiping:!1,showArrows:!1,firstItem:0,visibleItems:0,lastPosition:0},t}return t=d,(r=[{key:"componentDidMount",value:function(){this.setupThumbs()}},{key:"componentDidUpdate",value:function(e){this.props.selectedItem!==this.state.selectedItem&&this.setState({selectedItem:this.props.selectedItem,firstItem:this.getFirstItem(this.props.selectedItem)}),this.props.children!==e.children&&this.updateSizes()}},{key:"componentWillUnmount",value:function(){this.destroyThumbs()}},{key:"setupThumbs",value:function(){(0,c.default)().addEventListener("resize",this.updateSizes),(0,c.default)().addEventListener("DOMContentLoaded",this.updateSizes),this.updateSizes()}},{key:"destroyThumbs",value:function(){(0,c.default)().removeEventListener("resize",this.updateSizes),(0,c.default)().removeEventListener("DOMContentLoaded",this.updateSizes)}},{key:"getFirstItem",value:function(e){var t=e;return e>=this.state.lastPosition&&(t=this.state.lastPosition),e1,o=this.state.showArrows&&this.state.firstItem>0,c=this.state.showArrows&&this.state.firstItem{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(9851))&&n.__esModule?n:{default:n};var o={ROOT:function(e){return(0,i.default)(function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}({"carousel-root":!0},e||"",!!e))},CAROUSEL:function(e){return(0,i.default)({carousel:!0,"carousel-slider":e})},WRAPPER:function(e,t){return(0,i.default)({"thumbs-wrapper":!e,"slider-wrapper":e,"axis-horizontal":"horizontal"===t,"axis-vertical":"horizontal"!==t})},SLIDER:function(e,t){return(0,i.default)({thumbs:!e,slider:e,animated:!t})},ITEM:function(e,t,r){return(0,i.default)({thumb:!e,slide:e,selected:t,previous:r})},ARROW_PREV:function(e){return(0,i.default)({"control-arrow control-prev":!0,"control-disabled":e})},ARROW_NEXT:function(e){return(0,i.default)({"control-arrow control-next":!0,"control-disabled":e})},DOT:function(e){return(0,i.default)({dot:!0,selected:e})}};t.default=o},2597:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.outerWidth=void 0;t.outerWidth=function(e){var t=e.offsetWidth,r=getComputedStyle(e);return t+=parseInt(r.marginLeft)+parseInt(r.marginRight)}},1762:(e,t,r)=>{"use strict";Object.defineProperty(t,"FN",{enumerable:!0,get:function(){return n.default}});var n=a(r(3222)),i=r(1451),o=a(r(3642));function a(e){return e&&e.__esModule?e:{default:e}}},1846:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(){return document}},9927:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(){return window}},8386:(e,t,r)=>{"use strict";var n=r(4082),i=Symbol.for("react.element"),o=Symbol.for("react.fragment"),a=Object.prototype.hasOwnProperty,s=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function l(e,t,r){var n,o={},l=null,u=null;for(n in void 0!==r&&(l=""+r),void 0!==t.key&&(l=""+t.key),void 0!==t.ref&&(u=t.ref),t)a.call(t,n)&&!c.hasOwnProperty(n)&&(o[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps)void 0===o[n]&&(o[n]=t[n]);return{$$typeof:i,type:e,key:l,ref:u,props:o,_owner:s.current}}t.Fragment=o,t.jsx=l,t.jsxs=l},9325:(e,t)=>{"use strict";var r=Symbol.for("react.element"),n=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),f=Symbol.iterator;var p={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m=Object.assign,g={};function v(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||p}function y(){}function b(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||p}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if("object"!==typeof e&&"function"!==typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},y.prototype=v.prototype;var w=b.prototype=new y;w.constructor=b,m(w,v.prototype),w.isPureReactComponent=!0;var x=Array.isArray,_=Object.prototype.hasOwnProperty,k={current:null},S={key:!0,ref:!0,__self:!0,__source:!0};function E(e,t,n){var i,o={},a=null,s=null;if(null!=t)for(i in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(a=""+t.key),t)_.call(t,i)&&!S.hasOwnProperty(i)&&(o[i]=t[i]);var c=arguments.length-2;if(1===c)o.children=n;else if(1{"use strict";e.exports=r(9325)},8826:(e,t,r)=>{"use strict";e.exports=r(8386)},7906:e=>{"use strict";var t={};function r(e,r,n){n||(n=Error);var i=function(e){var t,n;function i(t,n,i){return e.call(this,function(e,t,n){return"string"===typeof r?r:r(e,t,n)}(t,n,i))||this}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i}(n);i.prototype.name=n.name,i.prototype.code=e,t[e]=i}function n(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map((function(e){return String(e)})),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:2===r?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){var i,o,a,s;if("string"===typeof t&&(o="not ",t.substr(!a||a<0?0:+a,o.length)===o)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))s="The ".concat(e," ").concat(i," ").concat(n(t,"type"));else{var c=function(e,t,r){return"number"!==typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";s='The "'.concat(e,'" ').concat(c," ").concat(i," ").concat(n(t,"type"))}return s+=". Received type ".concat(typeof r)}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.F=t},9428:(e,t,r)=>{"use strict";var n=r(9996),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=u;var o=r(2298),a=r(1326);r(9528)(u,o);for(var s=i(a.prototype),c=0;c{"use strict";e.exports=i;var n=r(5812);function i(e){if(!(this instanceof i))return new i(e);n.call(this,e)}r(9528)(i,n),i.prototype._transform=function(e,t,r){r(null,e)}},2298:(e,t,r)=>{"use strict";var n,i=r(9996);e.exports=E,E.ReadableState=S;r(8449).EventEmitter;var o=function(e,t){return e.listeners(t).length},a=r(4147),s=r(9673).Buffer,c=("undefined"!==typeof r.g?r.g:"undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).Uint8Array||function(){};var l,u=r(9838);l=u&&u.debuglog?u.debuglog("stream"):function(){};var d,h,f,p=r(1807),m=r(6474),g=r(5173).getHighWaterMark,v=r(7906).F,y=v.ERR_INVALID_ARG_TYPE,b=v.ERR_STREAM_PUSH_AFTER_EOF,w=v.ERR_METHOD_NOT_IMPLEMENTED,x=v.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(9528)(E,a);var _=m.errorOrDestroy,k=["error","close","destroy","pause","resume"];function S(e,t,i){n=n||r(9428),e=e||{},"boolean"!==typeof i&&(i=t instanceof n),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=g(this,e,"readableHighWaterMark",i),this.buffer=new p,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(d||(d=r(5575).I),this.decoder=new d(e.encoding),this.encoding=e.encoding)}function E(e){if(n=n||r(9428),!(this instanceof E))return new E(e);var t=this instanceof n;this._readableState=new S(e,this,t),this.readable=!0,e&&("function"===typeof e.read&&(this._read=e.read),"function"===typeof e.destroy&&(this._destroy=e.destroy)),a.call(this)}function A(e,t,r,n,i){l("readableAddChunk",t);var o,a=e._readableState;if(null===t)a.reading=!1,function(e,t){if(l("onEofChunk"),t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?j(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,C(e)))}(e,a);else if(i||(o=function(e,t){var r;n=t,s.isBuffer(n)||n instanceof c||"string"===typeof t||void 0===t||e.objectMode||(r=new y("chunk",["string","Buffer","Uint8Array"],t));var n;return r}(a,t)),o)_(e,o);else if(a.objectMode||t&&t.length>0)if("string"===typeof t||a.objectMode||Object.getPrototypeOf(t)===s.prototype||(t=function(e){return s.from(e)}(t)),n)a.endEmitted?_(e,new x):P(e,a,t,!0);else if(a.ended)_(e,new b);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||0!==t.length?P(e,a,t,!1):R(e,a)):P(e,a,t,!1)}else n||(a.reading=!1,R(e,a));return!a.ended&&(a.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=O?e=O:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function j(e){var t=e._readableState;l("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(l("emitReadable",t.flowing),t.emittedReadable=!0,i.nextTick(C,e))}function C(e){var t=e._readableState;l("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,D(e)}function R(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function L(e){l("readable nexttick read 0"),e.read(0)}function N(e,t){l("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),D(e),t.flowing&&!t.reading&&e.read(0)}function D(e){var t=e._readableState;for(l("flow",t.flowing);t.flowing&&null!==e.read(););}function z(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function B(e){var t=e._readableState;l("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,i.nextTick(U,t,e))}function U(e,t){if(l("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function F(e,t){for(var r=0,n=e.length;r=t.highWaterMark:t.length>0)||t.ended))return l("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?B(this):j(this),null;if(0===(e=T(e,t))&&t.ended)return 0===t.length&&B(this),null;var n,i=t.needReadable;return l("need readable",i),(0===t.length||t.length-e0?z(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&B(this)),null!==n&&this.emit("data",n),n},E.prototype._read=function(e){_(this,new w("_read()"))},E.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,l("pipe count=%d opts=%j",n.pipesCount,t);var a=(!t||!1!==t.end)&&e!==i.stdout&&e!==i.stderr?c:g;function s(t,i){l("onunpipe"),t===r&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,l("cleanup"),e.removeListener("close",p),e.removeListener("finish",m),e.removeListener("drain",u),e.removeListener("error",f),e.removeListener("unpipe",s),r.removeListener("end",c),r.removeListener("end",g),r.removeListener("data",h),d=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function c(){l("onend"),e.end()}n.endEmitted?i.nextTick(a):r.once("end",a),e.on("unpipe",s);var u=function(e){return function(){var t=e._readableState;l("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,D(e))}}(r);e.on("drain",u);var d=!1;function h(t){l("ondata");var i=e.write(t);l("dest.write",i),!1===i&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==F(n.pipes,e))&&!d&&(l("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function f(t){l("onerror",t),g(),e.removeListener("error",f),0===o(e,"error")&&_(e,t)}function p(){e.removeListener("finish",m),g()}function m(){l("onfinish"),e.removeListener("close",p),g()}function g(){l("unpipe"),r.unpipe(e)}return r.on("data",h),function(e,t,r){if("function"===typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",f),e.once("close",p),e.once("finish",m),e.emit("pipe",r),n.flowing||(l("pipe resume"),r.resume()),e},E.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,l("on readable",n.length,n.reading),n.length?j(this):n.reading||i.nextTick(L,this))),r},E.prototype.addListener=E.prototype.on,E.prototype.removeListener=function(e,t){var r=a.prototype.removeListener.call(this,e,t);return"readable"===e&&i.nextTick(M,this),r},E.prototype.removeAllListeners=function(e){var t=a.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||i.nextTick(M,this),t},E.prototype.resume=function(){var e=this._readableState;return e.flowing||(l("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(N,e,t))}(this,e)),e.paused=!1,this},E.prototype.pause=function(){return l("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(l("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},E.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(l("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(l("wrapped data"),r.decoder&&(i=r.decoder.write(i)),!r.objectMode||null!==i&&void 0!==i)&&((r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause())))})),e)void 0===this[i]&&"function"===typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var o=0;o{"use strict";e.exports=u;var n=r(7906).F,i=n.ERR_METHOD_NOT_IMPLEMENTED,o=n.ERR_MULTIPLE_CALLBACK,a=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,c=r(9428);function l(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new o);r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";var n,i=r(9996);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=E,E.WritableState=S;var a={deprecate:r(9617)},s=r(4147),c=r(9673).Buffer,l=("undefined"!==typeof r.g?r.g:"undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).Uint8Array||function(){};var u,d=r(6474),h=r(5173).getHighWaterMark,f=r(7906).F,p=f.ERR_INVALID_ARG_TYPE,m=f.ERR_METHOD_NOT_IMPLEMENTED,g=f.ERR_MULTIPLE_CALLBACK,v=f.ERR_STREAM_CANNOT_PIPE,y=f.ERR_STREAM_DESTROYED,b=f.ERR_STREAM_NULL_VALUES,w=f.ERR_STREAM_WRITE_AFTER_END,x=f.ERR_UNKNOWN_ENCODING,_=d.errorOrDestroy;function k(){}function S(e,t,a){n=n||r(9428),e=e||{},"boolean"!==typeof a&&(a=t instanceof n),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=h(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var s=!1===e.decodeStrings;this.decodeStrings=!s,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,o=r.writecb;if("function"!==typeof o)throw new g;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,o){--t.pendingcb,r?(i.nextTick(o,n),i.nextTick(C,e,t),e._writableState.errorEmitted=!0,_(e,n)):(o(n),e._writableState.errorEmitted=!0,_(e,n),C(e,t))}(e,r,n,t,o);else{var a=T(r)||e.destroyed;a||r.corked||r.bufferProcessing||!r.bufferedRequest||O(e,r),n?i.nextTick(P,e,r,a,o):P(e,r,a,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function E(e){var t=this instanceof(n=n||r(9428));if(!t&&!u.call(E,this))return new E(e);this._writableState=new S(e,this,t),this.writable=!0,e&&("function"===typeof e.write&&(this._write=e.write),"function"===typeof e.writev&&(this._writev=e.writev),"function"===typeof e.destroy&&(this._destroy=e.destroy),"function"===typeof e.final&&(this._final=e.final)),s.call(this)}function A(e,t,r,n,i,o,a){t.writelen=n,t.writecb=a,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new y("write")):r?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function P(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),C(e,t)}function O(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,i=new Array(n),a=t.corkedRequestsFree;a.entry=r;for(var s=0,c=!0;r;)i[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;i.allBuffers=c,A(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(A(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function T(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function j(e,t){e._final((function(r){t.pendingcb--,r&&_(e,r),t.prefinished=!0,e.emit("prefinish"),C(e,t)}))}function C(e,t){var r=T(t);if(r&&(function(e,t){t.prefinished||t.finalCalled||("function"!==typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,i.nextTick(j,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var n=e._readableState;(!n||n.autoDestroy&&n.endEmitted)&&e.destroy()}return r}r(9528)(E,s),S.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(S.prototype,"buffer",{get:a.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"===typeof Symbol&&Symbol.hasInstance&&"function"===typeof Function.prototype[Symbol.hasInstance]?(u=Function.prototype[Symbol.hasInstance],Object.defineProperty(E,Symbol.hasInstance,{value:function(e){return!!u.call(this,e)||this===E&&(e&&e._writableState instanceof S)}})):u=function(e){return e instanceof this},E.prototype.pipe=function(){_(this,new v)},E.prototype.write=function(e,t,r){var n,o=this._writableState,a=!1,s=!o.objectMode&&(n=e,c.isBuffer(n)||n instanceof l);return s&&!c.isBuffer(e)&&(e=function(e){return c.from(e)}(e)),"function"===typeof t&&(r=t,t=null),s?t="buffer":t||(t=o.defaultEncoding),"function"!==typeof r&&(r=k),o.ending?function(e,t){var r=new w;_(e,r),i.nextTick(t,r)}(this,r):(s||function(e,t,r,n){var o;return null===r?o=new b:"string"===typeof r||t.objectMode||(o=new p("chunk",["string","Buffer"],r)),!o||(_(e,o),i.nextTick(n,o),!1)}(this,o,e,r))&&(o.pendingcb++,a=function(e,t,r,n,i,o){if(!r){var a=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!==typeof t||(t=c.from(t,r));return t}(t,n,i);n!==a&&(r=!0,i="buffer",n=a)}var s=t.objectMode?1:n.length;t.length+=s;var l=t.length-1))throw new x(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(E.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(E.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),E.prototype._write=function(e,t,r){r(new m("_write()"))},E.prototype._writev=null,E.prototype.end=function(e,t,r){var n=this._writableState;return"function"===typeof e?(r=e,e=null,t=null):"function"===typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,C(e,t),r&&(t.finished?i.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r),this},Object.defineProperty(E.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(E.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),E.prototype.destroy=d.destroy,E.prototype._undestroy=d.undestroy,E.prototype._destroy=function(e,t){t(e)}},6641:(e,t,r)=>{"use strict";var n,i=r(9996);function o(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var a=r(6064),s=Symbol("lastResolve"),c=Symbol("lastReject"),l=Symbol("error"),u=Symbol("ended"),d=Symbol("lastPromise"),h=Symbol("handlePromise"),f=Symbol("stream");function p(e,t){return{value:e,done:t}}function m(e){var t=e[s];if(null!==t){var r=e[f].read();null!==r&&(e[d]=null,e[s]=null,e[c]=null,t(p(r,!1)))}}function g(e){i.nextTick(m,e)}var v=Object.getPrototypeOf((function(){})),y=Object.setPrototypeOf((o(n={get stream(){return this[f]},next:function(){var e=this,t=this[l];if(null!==t)return Promise.reject(t);if(this[u])return Promise.resolve(p(void 0,!0));if(this[f].destroyed)return new Promise((function(t,r){i.nextTick((function(){e[l]?r(e[l]):t(p(void 0,!0))}))}));var r,n=this[d];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[u]?r(p(void 0,!0)):t[h](r,n)}),n)}}(n,this));else{var o=this[f].read();if(null!==o)return Promise.resolve(p(o,!1));r=new Promise(this[h])}return this[d]=r,r}},Symbol.asyncIterator,(function(){return this})),o(n,"return",(function(){var e=this;return new Promise((function(t,r){e[f].destroy(null,(function(e){e?r(e):t(p(void 0,!0))}))}))})),n),v);e.exports=function(e){var t,r=Object.create(y,(o(t={},f,{value:e,writable:!0}),o(t,s,{value:null,writable:!0}),o(t,c,{value:null,writable:!0}),o(t,l,{value:null,writable:!0}),o(t,u,{value:e._readableState.endEmitted,writable:!0}),o(t,h,{value:function(e,t){var n=r[f].read();n?(r[d]=null,r[s]=null,r[c]=null,e(p(n,!1))):(r[s]=e,r[c]=t)},writable:!0}),t));return r[d]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[c];return null!==t&&(r[d]=null,r[s]=null,r[c]=null,t(e)),void(r[l]=e)}var n=r[s];null!==n&&(r[d]=null,r[s]=null,r[c]=null,n(p(void 0,!0))),r[u]=!0})),e.on("readable",g.bind(null,r)),r}},1807:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return c.alloc(0);for(var t,r,n,i=c.allocUnsafe(e>>>0),o=this.head,a=0;o;)t=o.data,r=i,n=a,c.prototype.copy.call(t,r,n),a+=o.data.length,o=o.next;return i}},{key:"consume",value:function(e,t){var r;return ei.length?i.length:e;if(o===i.length?n+=i:n+=i.slice(0,e),0===(e-=o)){o===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(o));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=c.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,o=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,o),0===(e-=o)){o===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(o));break}++n}return this.length-=n,t}},{key:u,value:function(e,t){return l(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&a(t.prototype,r),n&&a(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}()},6474:(e,t,r)=>{"use strict";var n=r(9996);function i(e,t){a(e,t),o(e)}function o(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function a(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,s=this._readableState&&this._readableState.destroyed,c=this._writableState&&this._writableState.destroyed;return s||c?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(a,this,e)):n.nextTick(a,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted?n.nextTick(o,r):(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t?(n.nextTick(o,r),t(e)):n.nextTick(o,r)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}}},6064:(e,t,r)=>{"use strict";var n=r(7906).F.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,r,o){if("function"===typeof r)return e(t,null,r);r||(r={}),o=function(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i{e.exports=function(){throw new Error("Readable.from is not available in the browser")}},8652:(e,t,r)=>{"use strict";var n;var i=r(7906).F,o=i.ERR_MISSING_ARGS,a=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function c(e){e()}function l(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i0,(function(e){u||(u=e),e&&h.forEach(c),o||(h.forEach(c),d(u))}))}));return t.reduce(l)}},5173:(e,t,r)=>{"use strict";var n=r(7906).F.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var o=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=o){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new n(i?r:"highWaterMark",o);return Math.floor(o)}return e.objectMode?16:16384}}},4147:(e,t,r)=>{e.exports=r(8449).EventEmitter},6885:(e,t,r)=>{(t=e.exports=r(2298)).Stream=t,t.Readable=t,t.Writable=r(1326),t.Duplex=r(9428),t.Transform=r(5812),t.PassThrough=r(8542),t.finished=r(6064),t.pipeline=r(8652)},1505:(e,t,r)=>{"use strict";t.__esModule=!0,t.default=function(e){var t=(0,i.default)(e);return{getItem:function(e){return new Promise((function(r,n){r(t.getItem(e))}))},setItem:function(e,r){return new Promise((function(n,i){n(t.setItem(e,r))}))},removeItem:function(e){return new Promise((function(r,n){r(t.removeItem(e))}))}}};var n,i=(n=r(9151))&&n.__esModule?n:{default:n}},9151:(e,t)=>{"use strict";function r(e){return r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function n(){}t.__esModule=!0,t.default=function(e){var t="".concat(e,"Storage");return function(e){if("object"!==("undefined"===typeof self?"undefined":r(self))||!(e in self))return!1;try{var t=self[e],n="redux-persist ".concat(e," test");t.setItem(n,"test"),t.getItem(n),t.removeItem(n)}catch(i){return!1}return!0}(t)?self[t]:i};var i={getItem:n,setItem:n,removeItem:n}},364:(e,t,r)=>{"use strict";var n;t.A=void 0;var i=(0,((n=r(1505))&&n.__esModule?n:{default:n}).default)("local");t.A=i},9175:(e,t,r)=>{e.exports=r(5513)},5513:(e,t,r)=>{var n=r(7119);t.operation=function(e){var r=t.timeouts(e);return new n(r,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})},t.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],i=0;i{function t(e,t){"boolean"===typeof t&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}e.exports=t,t.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts},t.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null},t.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=(new Date).getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(void 0===r){if(!this._cachedTimeouts)return!1;this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift()}var n=this,i=setTimeout((function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout((function(){n._operationTimeoutCb(n._attempts)}),n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)}),r);return this._options.unref&&i.unref(),!0},t.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout((function(){r._operationTimeoutCb()}),r._operationTimeout)),this._operationStart=(new Date).getTime(),this._fn(this._attempts)},t.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)},t.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)},t.prototype.start=t.prototype.try,t.prototype.errors=function(){return this._errors},t.prototype.attempts=function(){return this._attempts},t.prototype.mainError=function(){if(0===this._errors.length)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=i,r=a)}return t}},7409:(e,t,r)=>{"use strict";var n=r(9673).Buffer,i=r(9528),o=r(7291),a=new Array(16),s=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],l=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],u=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],d=[0,1518500249,1859775393,2400959708,2840853838],h=[1352829926,1548603684,1836072691,2053994217,0];function f(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<>>32-t}function m(e,t,r,n,i,o,a,s){return p(e+(t^r^n)+o+a|0,s)+i|0}function g(e,t,r,n,i,o,a,s){return p(e+(t&r|~t&n)+o+a|0,s)+i|0}function v(e,t,r,n,i,o,a,s){return p(e+((t|~r)^n)+o+a|0,s)+i|0}function y(e,t,r,n,i,o,a,s){return p(e+(t&n|r&~n)+o+a|0,s)+i|0}function b(e,t,r,n,i,o,a,s){return p(e+(t^(r|~n))+o+a|0,s)+i|0}i(f,o),f.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var r=0|this._a,n=0|this._b,i=0|this._c,o=0|this._d,f=0|this._e,w=0|this._a,x=0|this._b,_=0|this._c,k=0|this._d,S=0|this._e,E=0;E<80;E+=1){var A,P;E<16?(A=m(r,n,i,o,f,e[s[E]],d[0],l[E]),P=b(w,x,_,k,S,e[c[E]],h[0],u[E])):E<32?(A=g(r,n,i,o,f,e[s[E]],d[1],l[E]),P=y(w,x,_,k,S,e[c[E]],h[1],u[E])):E<48?(A=v(r,n,i,o,f,e[s[E]],d[2],l[E]),P=v(w,x,_,k,S,e[c[E]],h[2],u[E])):E<64?(A=y(r,n,i,o,f,e[s[E]],d[3],l[E]),P=g(w,x,_,k,S,e[c[E]],h[3],u[E])):(A=b(r,n,i,o,f,e[s[E]],d[4],l[E]),P=m(w,x,_,k,S,e[c[E]],h[4],u[E])),r=f,f=o,o=p(i,10),i=n,n=A,w=S,S=k,k=p(_,10),_=x,x=P}var O=this._b+i+k|0;this._b=this._c+o+S|0,this._c=this._d+f+w|0,this._d=this._e+r+x|0,this._e=this._a+n+_|0,this._a=O},f.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=n.alloc?n.alloc(20):new n(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=f},8795:(e,t,r)=>{var n=r(9673),i=n.Buffer;function o(e,t){for(var r in e)t[r]=e[r]}function a(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(o(n,t),t.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(e,t,r){if("number"===typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},a.alloc=function(e,t,r){if("number"!==typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"===typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},a.allocUnsafe=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},8909:(e,t)=>{"use strict";function r(e,t){var r=e.length;e.push(t);e:for(;0>>1,i=e[n];if(!(0>>1;no(c,r))lo(u,c)?(e[n]=u,e[l]=r,n=l):(e[n]=c,e[s]=r,n=s);else{if(!(lo(u,r)))break e;e[n]=u,e[l]=r,n=l}}}return t}function o(e,t){var r=e.sortIndex-t.sortIndex;return 0!==r?r:e.id-t.id}if("object"===typeof performance&&"function"===typeof performance.now){var a=performance;t.unstable_now=function(){return a.now()}}else{var s=Date,c=s.now();t.unstable_now=function(){return s.now()-c}}var l=[],u=[],d=1,h=null,f=3,p=!1,m=!1,g=!1,v="function"===typeof setTimeout?setTimeout:null,y="function"===typeof clearTimeout?clearTimeout:null,b="undefined"!==typeof setImmediate?setImmediate:null;function w(e){for(var t=n(u);null!==t;){if(null===t.callback)i(u);else{if(!(t.startTime<=e))break;i(u),t.sortIndex=t.expirationTime,r(l,t)}t=n(u)}}function x(e){if(g=!1,w(e),!m)if(null!==n(l))m=!0,I(_);else{var t=n(u);null!==t&&M(x,t.startTime-e)}}function _(e,r){m=!1,g&&(g=!1,y(A),A=-1),p=!0;var o=f;try{for(w(r),h=n(l);null!==h&&(!(h.expirationTime>r)||e&&!T());){var a=h.callback;if("function"===typeof a){h.callback=null,f=h.priorityLevel;var s=a(h.expirationTime<=r);r=t.unstable_now(),"function"===typeof s?h.callback=s:h===n(l)&&i(l),w(r)}else i(l);h=n(l)}if(null!==h)var c=!0;else{var d=n(u);null!==d&&M(x,d.startTime-r),c=!1}return c}finally{h=null,f=o,p=!1}}"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var k,S=!1,E=null,A=-1,P=5,O=-1;function T(){return!(t.unstable_now()-Oe||125a?(e.sortIndex=o,r(u,e),null===n(l)&&e===n(u)&&(g?(y(A),A=-1):g=!0,M(x,o-a))):(e.sortIndex=s,r(l,e),m||p||(m=!0,I(_))),e},t.unstable_shouldYield=T,t.unstable_wrapCallback=function(e){var t=f;return function(){var r=f;f=t;try{return e.apply(this,arguments)}finally{f=r}}}},2360:(e,t,r)=>{"use strict";e.exports=r(8909)},9950:(e,t,r)=>{var n=r(8795).Buffer;function i(e,t){this._block=n.alloc(e),this._finalSize=t,this._blockSize=e,this._len=0}i.prototype.update=function(e,t){"string"===typeof e&&(t=t||"utf8",e=n.from(e,t));for(var r=this._block,i=this._blockSize,o=e.length,a=this._len,s=0;s=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=8*this._len;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var n=(4294967295&r)>>>0,i=(r-n)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(n,this._blockSize-4)}this._update(this._block);var o=this._hash();return e?o.toString(e):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=i},2308:(e,t,r)=>{var n=e.exports=function(e){e=e.toLowerCase();var t=n[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t};n.sha=r(7602),n.sha1=r(7071),n.sha224=r(5540),n.sha256=r(9713),n.sha384=r(8789),n.sha512=r(3908)},7602:(e,t,r)=>{var n=r(9528),i=r(9950),o=r(8795).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e){return e<<30|e>>>2}function u(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,d=0;d<16;++d)r[d]=e.readInt32BE(4*d);for(;d<80;++d)r[d]=r[d-3]^r[d-8]^r[d-14]^r[d-16];for(var h=0;h<80;++h){var f=~~(h/20),p=0|((t=n)<<5|t>>>27)+u(f,i,o,s)+c+r[h]+a[f];c=s,s=o,o=l(i),i=n,n=p}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=o.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},7071:(e,t,r)=>{var n=r(9528),i=r(9950),o=r(8795).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e){return e<<5|e>>>27}function u(e){return e<<30|e>>>2}function d(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,h=0;h<16;++h)r[h]=e.readInt32BE(4*h);for(;h<80;++h)r[h]=(t=r[h-3]^r[h-8]^r[h-14]^r[h-16])<<1|t>>>31;for(var f=0;f<80;++f){var p=~~(f/20),m=l(n)+d(p,i,o,s)+c+r[f]+a[p]|0;c=s,s=o,o=u(i),i=n,n=m}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=o.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},5540:(e,t,r)=>{var n=r(9528),i=r(9713),o=r(9950),a=r(8795).Buffer,s=new Array(64);function c(){this.init(),this._w=s,o.call(this,64,56)}n(c,i),c.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},c.prototype._hash=function(){var e=a.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=c},9713:(e,t,r)=>{var n=r(9528),i=r(9950),o=r(8795).Buffer,a=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],s=new Array(64);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function d(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function h(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function f(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}n(c,i),c.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,p=0|this._f,m=0|this._g,g=0|this._h,v=0;v<16;++v)r[v]=e.readInt32BE(4*v);for(;v<64;++v)r[v]=0|(((t=r[v-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+r[v-7]+f(r[v-15])+r[v-16];for(var y=0;y<64;++y){var b=g+h(c)+l(c,p,m)+a[y]+r[y]|0,w=d(n)+u(n,i,o)|0;g=m,m=p,p=c,c=s+b|0,s=o,o=i,i=n,n=b+w|0}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0,this._f=p+this._f|0,this._g=m+this._g|0,this._h=g+this._h|0},c.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},8789:(e,t,r)=>{var n=r(9528),i=r(3908),o=r(9950),a=r(8795).Buffer,s=new Array(160);function c(){this.init(),this._w=s,o.call(this,128,112)}n(c,i),c.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},c.prototype._hash=function(){var e=a.allocUnsafe(48);function t(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},e.exports=c},3908:(e,t,r)=>{var n=r(9528),i=r(9950),o=r(8795).Buffer,a=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],s=new Array(160);function c(){this.init(),this._w=s,i.call(this,128,112)}function l(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function d(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function h(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function f(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function g(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function v(e,t){return e>>>0>>0?1:0}n(c,i),c.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},c.prototype._update=function(e){for(var t=this._w,r=0|this._ah,n=0|this._bh,i=0|this._ch,o=0|this._dh,s=0|this._eh,c=0|this._fh,y=0|this._gh,b=0|this._hh,w=0|this._al,x=0|this._bl,_=0|this._cl,k=0|this._dl,S=0|this._el,E=0|this._fl,A=0|this._gl,P=0|this._hl,O=0;O<32;O+=2)t[O]=e.readInt32BE(4*O),t[O+1]=e.readInt32BE(4*O+4);for(;O<160;O+=2){var T=t[O-30],j=t[O-30+1],C=f(T,j),R=p(j,T),I=m(T=t[O-4],j=t[O-4+1]),M=g(j,T),L=t[O-14],N=t[O-14+1],D=t[O-32],z=t[O-32+1],B=R+N|0,U=C+L+v(B,R)|0;U=(U=U+I+v(B=B+M|0,M)|0)+D+v(B=B+z|0,z)|0,t[O]=U,t[O+1]=B}for(var F=0;F<160;F+=2){U=t[F],B=t[F+1];var $=u(r,n,i),H=u(w,x,_),V=d(r,w),q=d(w,r),K=h(s,S),W=h(S,s),G=a[F],Z=a[F+1],Y=l(s,c,y),X=l(S,E,A),J=P+W|0,Q=b+K+v(J,P)|0;Q=(Q=(Q=Q+Y+v(J=J+X|0,X)|0)+G+v(J=J+Z|0,Z)|0)+U+v(J=J+B|0,B)|0;var ee=q+H|0,te=V+$+v(ee,q)|0;b=y,P=A,y=c,A=E,c=s,E=S,s=o+Q+v(S=k+J|0,k)|0,o=i,k=_,i=n,_=x,n=r,x=w,r=Q+te+v(w=J+ee|0,J)|0}this._al=this._al+w|0,this._bl=this._bl+x|0,this._cl=this._cl+_|0,this._dl=this._dl+k|0,this._el=this._el+S|0,this._fl=this._fl+E|0,this._gl=this._gl+A|0,this._hl=this._hl+P|0,this._ah=this._ah+r+v(this._al,w)|0,this._bh=this._bh+n+v(this._bl,x)|0,this._ch=this._ch+i+v(this._cl,_)|0,this._dh=this._dh+o+v(this._dl,k)|0,this._eh=this._eh+s+v(this._el,S)|0,this._fh=this._fh+c+v(this._fl,E)|0,this._gh=this._gh+y+v(this._gl,A)|0,this._hh=this._hh+b+v(this._hl,P)|0},c.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},3184:(e,t,r)=>{e.exports=i;var n=r(8449).EventEmitter;function i(){n.call(this)}r(9528)(i,n),i.Readable=r(2298),i.Writable=r(1326),i.Duplex=r(9428),i.Transform=r(5812),i.PassThrough=r(8542),i.finished=r(6064),i.pipeline=r(8652),i.Stream=i,i.prototype.pipe=function(e,t){var r=this;function i(t){e.writable&&!1===e.write(t)&&r.pause&&r.pause()}function o(){r.readable&&r.resume&&r.resume()}r.on("data",i),e.on("drain",o),e._isStdio||t&&!1===t.end||(r.on("end",s),r.on("close",c));var a=!1;function s(){a||(a=!0,e.end())}function c(){a||(a=!0,"function"===typeof e.destroy&&e.destroy())}function l(e){if(u(),0===n.listenerCount(this,"error"))throw e}function u(){r.removeListener("data",i),e.removeListener("drain",o),r.removeListener("end",s),r.removeListener("close",c),r.removeListener("error",l),e.removeListener("error",l),r.removeListener("end",u),r.removeListener("close",u),e.removeListener("close",u)}return r.on("error",l),e.on("error",l),r.on("end",u),r.on("close",u),e.on("close",u),e.emit("pipe",r),e}},5575:(e,t,r)=>{"use strict";var n=r(8795).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!==typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=l,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=u,this.end=d,t=3;break;default:return this.write=h,void(this.end=f)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function a(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!==(192&t[0]))return e.lastNeed=0,"\ufffd";if(e.lastNeed>1&&t.length>1){if(128!==(192&t[1]))return e.lastNeed=1,"\ufffd";if(e.lastNeed>2&&t.length>2&&128!==(192&t[2]))return e.lastNeed=2,"\ufffd"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function u(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function f(e){return e&&e.length?this.write(e):""}t.I=o,o.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(e.lastNeed=i-1),i;if(--n=0)return i>0&&(e.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},5269:(e,t,r)=>{var n=r(9673).Buffer;e.exports=function(e){return ArrayBuffer.isView(e)?n.from(e.buffer,e.byteOffset,e.byteLength):n.from(e)}},3629:(e,t,r)=>{"use strict";var n=r(4082);var i="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},o=n.useState,a=n.useEffect,s=n.useLayoutEffect,c=n.useDebugValue;function l(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!i(e,r)}catch(n){return!0}}var u="undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),n=o({inst:{value:r,getSnapshot:t}}),i=n[0].inst,u=n[1];return s((function(){i.value=r,i.getSnapshot=t,l(i)&&u({inst:i})}),[e,r,t]),a((function(){return l(i)&&u({inst:i}),e((function(){l(i)&&u({inst:i})}))}),[e]),c(r),r};t.useSyncExternalStore=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:u},2850:(e,t,r)=>{"use strict";var n=r(4082),i=r(9494);var o="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},a=i.useSyncExternalStore,s=n.useRef,c=n.useEffect,l=n.useMemo,u=n.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,r,n,i){var d=s(null);if(null===d.current){var h={hasValue:!1,value:null};d.current=h}else h=d.current;d=l((function(){function e(e){if(!c){if(c=!0,a=e,e=n(e),void 0!==i&&h.hasValue){var t=h.value;if(i(t,e))return s=t}return s=e}if(t=s,o(a,e))return t;var r=n(e);return void 0!==i&&i(t,r)?t:(a=e,s=r)}var a,s,c=!1,l=void 0===r?null:r;return[function(){return e(t())},null===l?void 0:function(){return e(l())}]}),[t,r,n,i]);var f=a(e,d[0],d[1]);return c((function(){h.hasValue=!0,h.value=f}),[f]),u(f),f}},9494:(e,t,r)=>{"use strict";e.exports=r(3629)},9304:(e,t,r)=>{"use strict";e.exports=r(2850)},9617:(e,t,r)=>{function n(e){try{if(!r.g.localStorage)return!1}catch(n){return!1}var t=r.g.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}},7161:e=>{"use strict";e.exports=function(e){e.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}},7873:(e,t,r)=>{"use strict";function n(e){var t=this;if(t instanceof n||(t=new n),t.tail=null,t.head=null,t.length=0,e&&"function"===typeof e.forEach)e.forEach((function(e){t.push(e)}));else if(arguments.length>0)for(var r=0,i=arguments.length;r1)r=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");n=this.head.next,r=this.head.value}for(var i=0;null!==n;i++)r=e(r,n.value,i),n=n.next;return r},n.prototype.reduceReverse=function(e,t){var r,n=this.tail;if(arguments.length>1)r=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");n=this.tail.prev,r=this.tail.value}for(var i=this.length-1;null!==n;i--)r=e(r,n.value,i),n=n.prev;return r},n.prototype.toArray=function(){for(var e=new Array(this.length),t=0,r=this.head;null!==r;t++)e[t]=r.value,r=r.next;return e},n.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,r=this.tail;null!==r;t++)e[t]=r.value,r=r.prev;return e},n.prototype.slice=function(e,t){(t=t||this.length)<0&&(t+=this.length),(e=e||0)<0&&(e+=this.length);var r=new n;if(tthis.length&&(t=this.length);for(var i=0,o=this.head;null!==o&&ithis.length&&(t=this.length);for(var i=this.length,o=this.tail;null!==o&&i>t;i--)o=o.prev;for(;null!==o&&i>e;i--,o=o.prev)r.push(o.value);return r},n.prototype.splice=function(e,t,...r){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var n=0,o=this.head;null!==o&&n{},1224:()=>{},1448:()=>{},7790:()=>{},3776:()=>{},5340:()=>{},9838:()=>{},9260:(e,t,r)=>{var n=r(7779).default;function i(){"use strict";e.exports=i=function(){return t},e.exports.__esModule=!0,e.exports.default=e.exports;var t={},r=Object.prototype,o=r.hasOwnProperty,a=Object.defineProperty||function(e,t,r){e[t]=r.value},s="function"==typeof Symbol?Symbol:{},c=s.iterator||"@@iterator",l=s.asyncIterator||"@@asyncIterator",u=s.toStringTag||"@@toStringTag";function d(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{d({},"")}catch(j){d=function(e,t,r){return e[t]=r}}function h(e,t,r,n){var i=t&&t.prototype instanceof m?t:m,o=Object.create(i.prototype),s=new O(n||[]);return a(o,"_invoke",{value:S(e,r,s)}),o}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(j){return{type:"throw",arg:j}}}t.wrap=h;var p={};function m(){}function g(){}function v(){}var y={};d(y,c,(function(){return this}));var b=Object.getPrototypeOf,w=b&&b(b(T([])));w&&w!==r&&o.call(w,c)&&(y=w);var x=v.prototype=m.prototype=Object.create(y);function _(e){["next","throw","return"].forEach((function(t){d(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function r(i,a,s,c){var l=f(e[i],e,a);if("throw"!==l.type){var u=l.arg,d=u.value;return d&&"object"==n(d)&&o.call(d,"__await")?t.resolve(d.__await).then((function(e){r("next",e,s,c)}),(function(e){r("throw",e,s,c)})):t.resolve(d).then((function(e){u.value=e,s(u)}),(function(e){return r("throw",e,s,c)}))}c(l.arg)}var i;a(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,i){r(e,n,t,i)}))}return i=i?i.then(o,o):o()}})}function S(e,t,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=E(a,r);if(s){if(s===p)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=f(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===p)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function E(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,E(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var i=f(n,e.iterator,t.arg);if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,p;var o=i.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,p):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,p)}function A(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(A,this),this.reset(!0)}function T(e){if(e||""===e){var t=e[c];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,i=function t(){for(;++r=0;--n){var i=this.tryEntries[n],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=o.call(i,"catchLoc"),c=o.call(i,"finallyLoc");if(s&&c){if(this.prev=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),P(r),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;P(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:T(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),p}},t}e.exports=i,e.exports.__esModule=!0,e.exports.default=e.exports},7779:e=>{function t(r){return e.exports=t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,t(r)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},9211:(e,t,r)=>{var n=r(9260)();e.exports=n;try{regeneratorRuntime=n}catch(i){"object"===typeof globalThis?globalThis.regeneratorRuntime=n:Function("r","regeneratorRuntime = r")(n)}},5898:e=>{"use strict";e.exports=JSON.parse('["\u7684","\u4e00","\u662f","\u5728","\u4e0d","\u4e86","\u6709","\u548c","\u4eba","\u8fd9","\u4e2d","\u5927","\u4e3a","\u4e0a","\u4e2a","\u56fd","\u6211","\u4ee5","\u8981","\u4ed6","\u65f6","\u6765","\u7528","\u4eec","\u751f","\u5230","\u4f5c","\u5730","\u4e8e","\u51fa","\u5c31","\u5206","\u5bf9","\u6210","\u4f1a","\u53ef","\u4e3b","\u53d1","\u5e74","\u52a8","\u540c","\u5de5","\u4e5f","\u80fd","\u4e0b","\u8fc7","\u5b50","\u8bf4","\u4ea7","\u79cd","\u9762","\u800c","\u65b9","\u540e","\u591a","\u5b9a","\u884c","\u5b66","\u6cd5","\u6240","\u6c11","\u5f97","\u7ecf","\u5341","\u4e09","\u4e4b","\u8fdb","\u7740","\u7b49","\u90e8","\u5ea6","\u5bb6","\u7535","\u529b","\u91cc","\u5982","\u6c34","\u5316","\u9ad8","\u81ea","\u4e8c","\u7406","\u8d77","\u5c0f","\u7269","\u73b0","\u5b9e","\u52a0","\u91cf","\u90fd","\u4e24","\u4f53","\u5236","\u673a","\u5f53","\u4f7f","\u70b9","\u4ece","\u4e1a","\u672c","\u53bb","\u628a","\u6027","\u597d","\u5e94","\u5f00","\u5b83","\u5408","\u8fd8","\u56e0","\u7531","\u5176","\u4e9b","\u7136","\u524d","\u5916","\u5929","\u653f","\u56db","\u65e5","\u90a3","\u793e","\u4e49","\u4e8b","\u5e73","\u5f62","\u76f8","\u5168","\u8868","\u95f4","\u6837","\u4e0e","\u5173","\u5404","\u91cd","\u65b0","\u7ebf","\u5185","\u6570","\u6b63","\u5fc3","\u53cd","\u4f60","\u660e","\u770b","\u539f","\u53c8","\u4e48","\u5229","\u6bd4","\u6216","\u4f46","\u8d28","\u6c14","\u7b2c","\u5411","\u9053","\u547d","\u6b64","\u53d8","\u6761","\u53ea","\u6ca1","\u7ed3","\u89e3","\u95ee","\u610f","\u5efa","\u6708","\u516c","\u65e0","\u7cfb","\u519b","\u5f88","\u60c5","\u8005","\u6700","\u7acb","\u4ee3","\u60f3","\u5df2","\u901a","\u5e76","\u63d0","\u76f4","\u9898","\u515a","\u7a0b","\u5c55","\u4e94","\u679c","\u6599","\u8c61","\u5458","\u9769","\u4f4d","\u5165","\u5e38","\u6587","\u603b","\u6b21","\u54c1","\u5f0f","\u6d3b","\u8bbe","\u53ca","\u7ba1","\u7279","\u4ef6","\u957f","\u6c42","\u8001","\u5934","\u57fa","\u8d44","\u8fb9","\u6d41","\u8def","\u7ea7","\u5c11","\u56fe","\u5c71","\u7edf","\u63a5","\u77e5","\u8f83","\u5c06","\u7ec4","\u89c1","\u8ba1","\u522b","\u5979","\u624b","\u89d2","\u671f","\u6839","\u8bba","\u8fd0","\u519c","\u6307","\u51e0","\u4e5d","\u533a","\u5f3a","\u653e","\u51b3","\u897f","\u88ab","\u5e72","\u505a","\u5fc5","\u6218","\u5148","\u56de","\u5219","\u4efb","\u53d6","\u636e","\u5904","\u961f","\u5357","\u7ed9","\u8272","\u5149","\u95e8","\u5373","\u4fdd","\u6cbb","\u5317","\u9020","\u767e","\u89c4","\u70ed","\u9886","\u4e03","\u6d77","\u53e3","\u4e1c","\u5bfc","\u5668","\u538b","\u5fd7","\u4e16","\u91d1","\u589e","\u4e89","\u6d4e","\u9636","\u6cb9","\u601d","\u672f","\u6781","\u4ea4","\u53d7","\u8054","\u4ec0","\u8ba4","\u516d","\u5171","\u6743","\u6536","\u8bc1","\u6539","\u6e05","\u7f8e","\u518d","\u91c7","\u8f6c","\u66f4","\u5355","\u98ce","\u5207","\u6253","\u767d","\u6559","\u901f","\u82b1","\u5e26","\u5b89","\u573a","\u8eab","\u8f66","\u4f8b","\u771f","\u52a1","\u5177","\u4e07","\u6bcf","\u76ee","\u81f3","\u8fbe","\u8d70","\u79ef","\u793a","\u8bae","\u58f0","\u62a5","\u6597","\u5b8c","\u7c7b","\u516b","\u79bb","\u534e","\u540d","\u786e","\u624d","\u79d1","\u5f20","\u4fe1","\u9a6c","\u8282","\u8bdd","\u7c73","\u6574","\u7a7a","\u5143","\u51b5","\u4eca","\u96c6","\u6e29","\u4f20","\u571f","\u8bb8","\u6b65","\u7fa4","\u5e7f","\u77f3","\u8bb0","\u9700","\u6bb5","\u7814","\u754c","\u62c9","\u6797","\u5f8b","\u53eb","\u4e14","\u7a76","\u89c2","\u8d8a","\u7ec7","\u88c5","\u5f71","\u7b97","\u4f4e","\u6301","\u97f3","\u4f17","\u4e66","\u5e03","\u590d","\u5bb9","\u513f","\u987b","\u9645","\u5546","\u975e","\u9a8c","\u8fde","\u65ad","\u6df1","\u96be","\u8fd1","\u77ff","\u5343","\u5468","\u59d4","\u7d20","\u6280","\u5907","\u534a","\u529e","\u9752","\u7701","\u5217","\u4e60","\u54cd","\u7ea6","\u652f","\u822c","\u53f2","\u611f","\u52b3","\u4fbf","\u56e2","\u5f80","\u9178","\u5386","\u5e02","\u514b","\u4f55","\u9664","\u6d88","\u6784","\u5e9c","\u79f0","\u592a","\u51c6","\u7cbe","\u503c","\u53f7","\u7387","\u65cf","\u7ef4","\u5212","\u9009","\u6807","\u5199","\u5b58","\u5019","\u6bdb","\u4eb2","\u5feb","\u6548","\u65af","\u9662","\u67e5","\u6c5f","\u578b","\u773c","\u738b","\u6309","\u683c","\u517b","\u6613","\u7f6e","\u6d3e","\u5c42","\u7247","\u59cb","\u5374","\u4e13","\u72b6","\u80b2","\u5382","\u4eac","\u8bc6","\u9002","\u5c5e","\u5706","\u5305","\u706b","\u4f4f","\u8c03","\u6ee1","\u53bf","\u5c40","\u7167","\u53c2","\u7ea2","\u7ec6","\u5f15","\u542c","\u8be5","\u94c1","\u4ef7","\u4e25","\u9996","\u5e95","\u6db2","\u5b98","\u5fb7","\u968f","\u75c5","\u82cf","\u5931","\u5c14","\u6b7b","\u8bb2","\u914d","\u5973","\u9ec4","\u63a8","\u663e","\u8c08","\u7f6a","\u795e","\u827a","\u5462","\u5e2d","\u542b","\u4f01","\u671b","\u5bc6","\u6279","\u8425","\u9879","\u9632","\u4e3e","\u7403","\u82f1","\u6c27","\u52bf","\u544a","\u674e","\u53f0","\u843d","\u6728","\u5e2e","\u8f6e","\u7834","\u4e9a","\u5e08","\u56f4","\u6ce8","\u8fdc","\u5b57","\u6750","\u6392","\u4f9b","\u6cb3","\u6001","\u5c01","\u53e6","\u65bd","\u51cf","\u6811","\u6eb6","\u600e","\u6b62","\u6848","\u8a00","\u58eb","\u5747","\u6b66","\u56fa","\u53f6","\u9c7c","\u6ce2","\u89c6","\u4ec5","\u8d39","\u7d27","\u7231","\u5de6","\u7ae0","\u65e9","\u671d","\u5bb3","\u7eed","\u8f7b","\u670d","\u8bd5","\u98df","\u5145","\u5175","\u6e90","\u5224","\u62a4","\u53f8","\u8db3","\u67d0","\u7ec3","\u5dee","\u81f4","\u677f","\u7530","\u964d","\u9ed1","\u72af","\u8d1f","\u51fb","\u8303","\u7ee7","\u5174","\u4f3c","\u4f59","\u575a","\u66f2","\u8f93","\u4fee","\u6545","\u57ce","\u592b","\u591f","\u9001","\u7b14","\u8239","\u5360","\u53f3","\u8d22","\u5403","\u5bcc","\u6625","\u804c","\u89c9","\u6c49","\u753b","\u529f","\u5df4","\u8ddf","\u867d","\u6742","\u98de","\u68c0","\u5438","\u52a9","\u5347","\u9633","\u4e92","\u521d","\u521b","\u6297","\u8003","\u6295","\u574f","\u7b56","\u53e4","\u5f84","\u6362","\u672a","\u8dd1","\u7559","\u94a2","\u66fe","\u7aef","\u8d23","\u7ad9","\u7b80","\u8ff0","\u94b1","\u526f","\u5c3d","\u5e1d","\u5c04","\u8349","\u51b2","\u627f","\u72ec","\u4ee4","\u9650","\u963f","\u5ba3","\u73af","\u53cc","\u8bf7","\u8d85","\u5fae","\u8ba9","\u63a7","\u5dde","\u826f","\u8f74","\u627e","\u5426","\u7eaa","\u76ca","\u4f9d","\u4f18","\u9876","\u7840","\u8f7d","\u5012","\u623f","\u7a81","\u5750","\u7c89","\u654c","\u7565","\u5ba2","\u8881","\u51b7","\u80dc","\u7edd","\u6790","\u5757","\u5242","\u6d4b","\u4e1d","\u534f","\u8bc9","\u5ff5","\u9648","\u4ecd","\u7f57","\u76d0","\u53cb","\u6d0b","\u9519","\u82e6","\u591c","\u5211","\u79fb","\u9891","\u9010","\u9760","\u6df7","\u6bcd","\u77ed","\u76ae","\u7ec8","\u805a","\u6c7d","\u6751","\u4e91","\u54ea","\u65e2","\u8ddd","\u536b","\u505c","\u70c8","\u592e","\u5bdf","\u70e7","\u8fc5","\u5883","\u82e5","\u5370","\u6d32","\u523b","\u62ec","\u6fc0","\u5b54","\u641e","\u751a","\u5ba4","\u5f85","\u6838","\u6821","\u6563","\u4fb5","\u5427","\u7532","\u6e38","\u4e45","\u83dc","\u5473","\u65e7","\u6a21","\u6e56","\u8d27","\u635f","\u9884","\u963b","\u6beb","\u666e","\u7a33","\u4e59","\u5988","\u690d","\u606f","\u6269","\u94f6","\u8bed","\u6325","\u9152","\u5b88","\u62ff","\u5e8f","\u7eb8","\u533b","\u7f3a","\u96e8","\u5417","\u9488","\u5218","\u554a","\u6025","\u5531","\u8bef","\u8bad","\u613f","\u5ba1","\u9644","\u83b7","\u8336","\u9c9c","\u7cae","\u65a4","\u5b69","\u8131","\u786b","\u80a5","\u5584","\u9f99","\u6f14","\u7236","\u6e10","\u8840","\u6b22","\u68b0","\u638c","\u6b4c","\u6c99","\u521a","\u653b","\u8c13","\u76fe","\u8ba8","\u665a","\u7c92","\u4e71","\u71c3","\u77db","\u4e4e","\u6740","\u836f","\u5b81","\u9c81","\u8d35","\u949f","\u7164","\u8bfb","\u73ed","\u4f2f","\u9999","\u4ecb","\u8feb","\u53e5","\u4e30","\u57f9","\u63e1","\u5170","\u62c5","\u5f26","\u86cb","\u6c89","\u5047","\u7a7f","\u6267","\u7b54","\u4e50","\u8c01","\u987a","\u70df","\u7f29","\u5f81","\u8138","\u559c","\u677e","\u811a","\u56f0","\u5f02","\u514d","\u80cc","\u661f","\u798f","\u4e70","\u67d3","\u4e95","\u6982","\u6162","\u6015","\u78c1","\u500d","\u7956","\u7687","\u4fc3","\u9759","\u8865","\u8bc4","\u7ffb","\u8089","\u8df5","\u5c3c","\u8863","\u5bbd","\u626c","\u68c9","\u5e0c","\u4f24","\u64cd","\u5782","\u79cb","\u5b9c","\u6c22","\u5957","\u7763","\u632f","\u67b6","\u4eae","\u672b","\u5baa","\u5e86","\u7f16","\u725b","\u89e6","\u6620","\u96f7","\u9500","\u8bd7","\u5ea7","\u5c45","\u6293","\u88c2","\u80de","\u547c","\u5a18","\u666f","\u5a01","\u7eff","\u6676","\u539a","\u76df","\u8861","\u9e21","\u5b59","\u5ef6","\u5371","\u80f6","\u5c4b","\u4e61","\u4e34","\u9646","\u987e","\u6389","\u5440","\u706f","\u5c81","\u63aa","\u675f","\u8010","\u5267","\u7389","\u8d75","\u8df3","\u54e5","\u5b63","\u8bfe","\u51ef","\u80e1","\u989d","\u6b3e","\u7ecd","\u5377","\u9f50","\u4f1f","\u84b8","\u6b96","\u6c38","\u5b97","\u82d7","\u5ddd","\u7089","\u5ca9","\u5f31","\u96f6","\u6768","\u594f","\u6cbf","\u9732","\u6746","\u63a2","\u6ed1","\u9547","\u996d","\u6d53","\u822a","\u6000","\u8d76","\u5e93","\u593a","\u4f0a","\u7075","\u7a0e","\u9014","\u706d","\u8d5b","\u5f52","\u53ec","\u9f13","\u64ad","\u76d8","\u88c1","\u9669","\u5eb7","\u552f","\u5f55","\u83cc","\u7eaf","\u501f","\u7cd6","\u76d6","\u6a2a","\u7b26","\u79c1","\u52aa","\u5802","\u57df","\u67aa","\u6da6","\u5e45","\u54c8","\u7adf","\u719f","\u866b","\u6cfd","\u8111","\u58e4","\u78b3","\u6b27","\u904d","\u4fa7","\u5be8","\u6562","\u5f7b","\u8651","\u659c","\u8584","\u5ead","\u7eb3","\u5f39","\u9972","\u4f38","\u6298","\u9ea6","\u6e7f","\u6697","\u8377","\u74e6","\u585e","\u5e8a","\u7b51","\u6076","\u6237","\u8bbf","\u5854","\u5947","\u900f","\u6881","\u5200","\u65cb","\u8ff9","\u5361","\u6c2f","\u9047","\u4efd","\u6bd2","\u6ce5","\u9000","\u6d17","\u6446","\u7070","\u5f69","\u5356","\u8017","\u590f","\u62e9","\u5fd9","\u94dc","\u732e","\u786c","\u4e88","\u7e41","\u5708","\u96ea","\u51fd","\u4ea6","\u62bd","\u7bc7","\u9635","\u9634","\u4e01","\u5c3a","\u8ffd","\u5806","\u96c4","\u8fce","\u6cdb","\u7238","\u697c","\u907f","\u8c0b","\u5428","\u91ce","\u732a","\u65d7","\u7d2f","\u504f","\u5178","\u9986","\u7d22","\u79e6","\u8102","\u6f6e","\u7237","\u8c46","\u5ffd","\u6258","\u60ca","\u5851","\u9057","\u6108","\u6731","\u66ff","\u7ea4","\u7c97","\u503e","\u5c1a","\u75db","\u695a","\u8c22","\u594b","\u8d2d","\u78e8","\u541b","\u6c60","\u65c1","\u788e","\u9aa8","\u76d1","\u6355","\u5f1f","\u66b4","\u5272","\u8d2f","\u6b8a","\u91ca","\u8bcd","\u4ea1","\u58c1","\u987f","\u5b9d","\u5348","\u5c18","\u95fb","\u63ed","\u70ae","\u6b8b","\u51ac","\u6865","\u5987","\u8b66","\u7efc","\u62db","\u5434","\u4ed8","\u6d6e","\u906d","\u5f90","\u60a8","\u6447","\u8c37","\u8d5e","\u7bb1","\u9694","\u8ba2","\u7537","\u5439","\u56ed","\u7eb7","\u5510","\u8d25","\u5b8b","\u73bb","\u5de8","\u8015","\u5766","\u8363","\u95ed","\u6e7e","\u952e","\u51e1","\u9a7b","\u9505","\u6551","\u6069","\u5265","\u51dd","\u78b1","\u9f7f","\u622a","\u70bc","\u9ebb","\u7eba","\u7981","\u5e9f","\u76db","\u7248","\u7f13","\u51c0","\u775b","\u660c","\u5a5a","\u6d89","\u7b52","\u5634","\u63d2","\u5cb8","\u6717","\u5e84","\u8857","\u85cf","\u59d1","\u8d38","\u8150","\u5974","\u5566","\u60ef","\u4e58","\u4f19","\u6062","\u5300","\u7eb1","\u624e","\u8fa9","\u8033","\u5f6a","\u81e3","\u4ebf","\u7483","\u62b5","\u8109","\u79c0","\u8428","\u4fc4","\u7f51","\u821e","\u5e97","\u55b7","\u7eb5","\u5bf8","\u6c57","\u6302","\u6d2a","\u8d3a","\u95ea","\u67ec","\u7206","\u70ef","\u6d25","\u7a3b","\u5899","\u8f6f","\u52c7","\u50cf","\u6eda","\u5398","\u8499","\u82b3","\u80af","\u5761","\u67f1","\u8361","\u817f","\u4eea","\u65c5","\u5c3e","\u8f67","\u51b0","\u8d21","\u767b","\u9ece","\u524a","\u94bb","\u52d2","\u9003","\u969c","\u6c28","\u90ed","\u5cf0","\u5e01","\u6e2f","\u4f0f","\u8f68","\u4ea9","\u6bd5","\u64e6","\u83ab","\u523a","\u6d6a","\u79d8","\u63f4","\u682a","\u5065","\u552e","\u80a1","\u5c9b","\u7518","\u6ce1","\u7761","\u7ae5","\u94f8","\u6c64","\u9600","\u4f11","\u6c47","\u820d","\u7267","\u7ed5","\u70b8","\u54f2","\u78f7","\u7ee9","\u670b","\u6de1","\u5c16","\u542f","\u9677","\u67f4","\u5448","\u5f92","\u989c","\u6cea","\u7a0d","\u5fd8","\u6cf5","\u84dd","\u62d6","\u6d1e","\u6388","\u955c","\u8f9b","\u58ee","\u950b","\u8d2b","\u865a","\u5f2f","\u6469","\u6cf0","\u5e7c","\u5ef7","\u5c0a","\u7a97","\u7eb2","\u5f04","\u96b6","\u7591","\u6c0f","\u5bab","\u59d0","\u9707","\u745e","\u602a","\u5c24","\u7434","\u5faa","\u63cf","\u819c","\u8fdd","\u5939","\u8170","\u7f18","\u73e0","\u7a77","\u68ee","\u679d","\u7af9","\u6c9f","\u50ac","\u7ef3","\u5fc6","\u90a6","\u5269","\u5e78","\u6d46","\u680f","\u62e5","\u7259","\u8d2e","\u793c","\u6ee4","\u94a0","\u7eb9","\u7f62","\u62cd","\u54b1","\u558a","\u8896","\u57c3","\u52e4","\u7f5a","\u7126","\u6f5c","\u4f0d","\u58a8","\u6b32","\u7f1d","\u59d3","\u520a","\u9971","\u4eff","\u5956","\u94dd","\u9b3c","\u4e3d","\u8de8","\u9ed8","\u6316","\u94fe","\u626b","\u559d","\u888b","\u70ad","\u6c61","\u5e55","\u8bf8","\u5f27","\u52b1","\u6885","\u5976","\u6d01","\u707e","\u821f","\u9274","\u82ef","\u8bbc","\u62b1","\u6bc1","\u61c2","\u5bd2","\u667a","\u57d4","\u5bc4","\u5c4a","\u8dc3","\u6e21","\u6311","\u4e39","\u8270","\u8d1d","\u78b0","\u62d4","\u7239","\u6234","\u7801","\u68a6","\u82bd","\u7194","\u8d64","\u6e14","\u54ed","\u656c","\u9897","\u5954","\u94c5","\u4ef2","\u864e","\u7a00","\u59b9","\u4e4f","\u73cd","\u7533","\u684c","\u9075","\u5141","\u9686","\u87ba","\u4ed3","\u9b4f","\u9510","\u6653","\u6c2e","\u517c","\u9690","\u788d","\u8d6b","\u62e8","\u5fe0","\u8083","\u7f38","\u7275","\u62a2","\u535a","\u5de7","\u58f3","\u5144","\u675c","\u8baf","\u8bda","\u78a7","\u7965","\u67ef","\u9875","\u5de1","\u77e9","\u60b2","\u704c","\u9f84","\u4f26","\u7968","\u5bfb","\u6842","\u94fa","\u5723","\u6050","\u6070","\u90d1","\u8da3","\u62ac","\u8352","\u817e","\u8d34","\u67d4","\u6ef4","\u731b","\u9614","\u8f86","\u59bb","\u586b","\u64a4","\u50a8","\u7b7e","\u95f9","\u6270","\u7d2b","\u7802","\u9012","\u620f","\u540a","\u9676","\u4f10","\u5582","\u7597","\u74f6","\u5a46","\u629a","\u81c2","\u6478","\u5fcd","\u867e","\u8721","\u90bb","\u80f8","\u5de9","\u6324","\u5076","\u5f03","\u69fd","\u52b2","\u4e73","\u9093","\u5409","\u4ec1","\u70c2","\u7816","\u79df","\u4e4c","\u8230","\u4f34","\u74dc","\u6d45","\u4e19","\u6682","\u71e5","\u6a61","\u67f3","\u8ff7","\u6696","\u724c","\u79e7","\u80c6","\u8be6","\u7c27","\u8e0f","\u74f7","\u8c31","\u5446","\u5bbe","\u7cca","\u6d1b","\u8f89","\u6124","\u7ade","\u9699","\u6012","\u7c98","\u4e43","\u7eea","\u80a9","\u7c4d","\u654f","\u6d82","\u7199","\u7686","\u4fa6","\u60ac","\u6398","\u4eab","\u7ea0","\u9192","\u72c2","\u9501","\u6dc0","\u6068","\u7272","\u9738","\u722c","\u8d4f","\u9006","\u73a9","\u9675","\u795d","\u79d2","\u6d59","\u8c8c","\u5f79","\u5f7c","\u6089","\u9e2d","\u8d8b","\u51e4","\u6668","\u755c","\u8f88","\u79e9","\u5375","\u7f72","\u68af","\u708e","\u6ee9","\u68cb","\u9a71","\u7b5b","\u5ce1","\u5192","\u5565","\u5bff","\u8bd1","\u6d78","\u6cc9","\u5e3d","\u8fdf","\u7845","\u7586","\u8d37","\u6f0f","\u7a3f","\u51a0","\u5ae9","\u80c1","\u82af","\u7262","\u53db","\u8680","\u5965","\u9e23","\u5cad","\u7f8a","\u51ed","\u4e32","\u5858","\u7ed8","\u9175","\u878d","\u76c6","\u9521","\u5e99","\u7b79","\u51bb","\u8f85","\u6444","\u88ad","\u7b4b","\u62d2","\u50da","\u65f1","\u94be","\u9e1f","\u6f06","\u6c88","\u7709","\u758f","\u6dfb","\u68d2","\u7a57","\u785d","\u97e9","\u903c","\u626d","\u4fa8","\u51c9","\u633a","\u7897","\u683d","\u7092","\u676f","\u60a3","\u998f","\u529d","\u8c6a","\u8fbd","\u52c3","\u9e3f","\u65e6","\u540f","\u62dc","\u72d7","\u57cb","\u8f8a","\u63a9","\u996e","\u642c","\u9a82","\u8f9e","\u52fe","\u6263","\u4f30","\u848b","\u7ed2","\u96fe","\u4e08","\u6735","\u59c6","\u62df","\u5b87","\u8f91","\u9655","\u96d5","\u507f","\u84c4","\u5d07","\u526a","\u5021","\u5385","\u54ac","\u9a76","\u85af","\u5237","\u65a5","\u756a","\u8d4b","\u5949","\u4f5b","\u6d47","\u6f2b","\u66fc","\u6247","\u9499","\u6843","\u6276","\u4ed4","\u8fd4","\u4fd7","\u4e8f","\u8154","\u978b","\u68f1","\u8986","\u6846","\u6084","\u53d4","\u649e","\u9a97","\u52d8","\u65fa","\u6cb8","\u5b64","\u5410","\u5b5f","\u6e20","\u5c48","\u75be","\u5999","\u60dc","\u4ef0","\u72e0","\u80c0","\u8c10","\u629b","\u9709","\u6851","\u5c97","\u561b","\u8870","\u76d7","\u6e17","\u810f","\u8d56","\u6d8c","\u751c","\u66f9","\u9605","\u808c","\u54e9","\u5389","\u70c3","\u7eac","\u6bc5","\u6628","\u4f2a","\u75c7","\u716e","\u53f9","\u9489","\u642d","\u830e","\u7b3c","\u9177","\u5077","\u5f13","\u9525","\u6052","\u6770","\u5751","\u9f3b","\u7ffc","\u7eb6","\u53d9","\u72f1","\u902e","\u7f50","\u7edc","\u68da","\u6291","\u81a8","\u852c","\u5bfa","\u9aa4","\u7a46","\u51b6","\u67af","\u518c","\u5c38","\u51f8","\u7ec5","\u576f","\u727a","\u7130","\u8f70","\u6b23","\u664b","\u7626","\u5fa1","\u952d","\u9526","\u4e27","\u65ec","\u953b","\u5784","\u641c","\u6251","\u9080","\u4ead","\u916f","\u8fc8","\u8212","\u8106","\u9176","\u95f2","\u5fe7","\u915a","\u987d","\u7fbd","\u6da8","\u5378","\u4ed7","\u966a","\u8f9f","\u60e9","\u676d","\u59da","\u809a","\u6349","\u98d8","\u6f02","\u6606","\u6b3a","\u543e","\u90ce","\u70f7","\u6c41","\u5475","\u9970","\u8427","\u96c5","\u90ae","\u8fc1","\u71d5","\u6492","\u59fb","\u8d74","\u5bb4","\u70e6","\u503a","\u5e10","\u6591","\u94c3","\u65e8","\u9187","\u8463","\u997c","\u96cf","\u59ff","\u62cc","\u5085","\u8179","\u59a5","\u63c9","\u8d24","\u62c6","\u6b6a","\u8461","\u80fa","\u4e22","\u6d69","\u5fbd","\u6602","\u57ab","\u6321","\u89c8","\u8d2a","\u6170","\u7f34","\u6c6a","\u614c","\u51af","\u8bfa","\u59dc","\u8c0a","\u51f6","\u52a3","\u8bec","\u8000","\u660f","\u8eba","\u76c8","\u9a91","\u4e54","\u6eaa","\u4e1b","\u5362","\u62b9","\u95f7","\u54a8","\u522e","\u9a7e","\u7f06","\u609f","\u6458","\u94d2","\u63b7","\u9887","\u5e7b","\u67c4","\u60e0","\u60e8","\u4f73","\u4ec7","\u814a","\u7a9d","\u6da4","\u5251","\u77a7","\u5821","\u6cfc","\u8471","\u7f69","\u970d","\u635e","\u80ce","\u82cd","\u6ee8","\u4fe9","\u6345","\u6e58","\u780d","\u971e","\u90b5","\u8404","\u75af","\u6dee","\u9042","\u718a","\u7caa","\u70d8","\u5bbf","\u6863","\u6208","\u9a73","\u5ac2","\u88d5","\u5f99","\u7bad","\u6350","\u80a0","\u6491","\u6652","\u8fa8","\u6bbf","\u83b2","\u644a","\u6405","\u9171","\u5c4f","\u75ab","\u54c0","\u8521","\u5835","\u6cab","\u76b1","\u7545","\u53e0","\u9601","\u83b1","\u6572","\u8f96","\u94a9","\u75d5","\u575d","\u5df7","\u997f","\u7978","\u4e18","\u7384","\u6e9c","\u66f0","\u903b","\u5f6d","\u5c1d","\u537f","\u59a8","\u8247","\u541e","\u97e6","\u6028","\u77ee","\u6b47"]')},81:e=>{"use strict";e.exports=JSON.parse('["\u7684","\u4e00","\u662f","\u5728","\u4e0d","\u4e86","\u6709","\u548c","\u4eba","\u9019","\u4e2d","\u5927","\u70ba","\u4e0a","\u500b","\u570b","\u6211","\u4ee5","\u8981","\u4ed6","\u6642","\u4f86","\u7528","\u5011","\u751f","\u5230","\u4f5c","\u5730","\u65bc","\u51fa","\u5c31","\u5206","\u5c0d","\u6210","\u6703","\u53ef","\u4e3b","\u767c","\u5e74","\u52d5","\u540c","\u5de5","\u4e5f","\u80fd","\u4e0b","\u904e","\u5b50","\u8aaa","\u7522","\u7a2e","\u9762","\u800c","\u65b9","\u5f8c","\u591a","\u5b9a","\u884c","\u5b78","\u6cd5","\u6240","\u6c11","\u5f97","\u7d93","\u5341","\u4e09","\u4e4b","\u9032","\u8457","\u7b49","\u90e8","\u5ea6","\u5bb6","\u96fb","\u529b","\u88e1","\u5982","\u6c34","\u5316","\u9ad8","\u81ea","\u4e8c","\u7406","\u8d77","\u5c0f","\u7269","\u73fe","\u5be6","\u52a0","\u91cf","\u90fd","\u5169","\u9ad4","\u5236","\u6a5f","\u7576","\u4f7f","\u9ede","\u5f9e","\u696d","\u672c","\u53bb","\u628a","\u6027","\u597d","\u61c9","\u958b","\u5b83","\u5408","\u9084","\u56e0","\u7531","\u5176","\u4e9b","\u7136","\u524d","\u5916","\u5929","\u653f","\u56db","\u65e5","\u90a3","\u793e","\u7fa9","\u4e8b","\u5e73","\u5f62","\u76f8","\u5168","\u8868","\u9593","\u6a23","\u8207","\u95dc","\u5404","\u91cd","\u65b0","\u7dda","\u5167","\u6578","\u6b63","\u5fc3","\u53cd","\u4f60","\u660e","\u770b","\u539f","\u53c8","\u9ebc","\u5229","\u6bd4","\u6216","\u4f46","\u8cea","\u6c23","\u7b2c","\u5411","\u9053","\u547d","\u6b64","\u8b8a","\u689d","\u53ea","\u6c92","\u7d50","\u89e3","\u554f","\u610f","\u5efa","\u6708","\u516c","\u7121","\u7cfb","\u8ecd","\u5f88","\u60c5","\u8005","\u6700","\u7acb","\u4ee3","\u60f3","\u5df2","\u901a","\u4e26","\u63d0","\u76f4","\u984c","\u9ee8","\u7a0b","\u5c55","\u4e94","\u679c","\u6599","\u8c61","\u54e1","\u9769","\u4f4d","\u5165","\u5e38","\u6587","\u7e3d","\u6b21","\u54c1","\u5f0f","\u6d3b","\u8a2d","\u53ca","\u7ba1","\u7279","\u4ef6","\u9577","\u6c42","\u8001","\u982d","\u57fa","\u8cc7","\u908a","\u6d41","\u8def","\u7d1a","\u5c11","\u5716","\u5c71","\u7d71","\u63a5","\u77e5","\u8f03","\u5c07","\u7d44","\u898b","\u8a08","\u5225","\u5979","\u624b","\u89d2","\u671f","\u6839","\u8ad6","\u904b","\u8fb2","\u6307","\u5e7e","\u4e5d","\u5340","\u5f37","\u653e","\u6c7a","\u897f","\u88ab","\u5e79","\u505a","\u5fc5","\u6230","\u5148","\u56de","\u5247","\u4efb","\u53d6","\u64da","\u8655","\u968a","\u5357","\u7d66","\u8272","\u5149","\u9580","\u5373","\u4fdd","\u6cbb","\u5317","\u9020","\u767e","\u898f","\u71b1","\u9818","\u4e03","\u6d77","\u53e3","\u6771","\u5c0e","\u5668","\u58d3","\u5fd7","\u4e16","\u91d1","\u589e","\u722d","\u6fdf","\u968e","\u6cb9","\u601d","\u8853","\u6975","\u4ea4","\u53d7","\u806f","\u4ec0","\u8a8d","\u516d","\u5171","\u6b0a","\u6536","\u8b49","\u6539","\u6e05","\u7f8e","\u518d","\u63a1","\u8f49","\u66f4","\u55ae","\u98a8","\u5207","\u6253","\u767d","\u6559","\u901f","\u82b1","\u5e36","\u5b89","\u5834","\u8eab","\u8eca","\u4f8b","\u771f","\u52d9","\u5177","\u842c","\u6bcf","\u76ee","\u81f3","\u9054","\u8d70","\u7a4d","\u793a","\u8b70","\u8072","\u5831","\u9b25","\u5b8c","\u985e","\u516b","\u96e2","\u83ef","\u540d","\u78ba","\u624d","\u79d1","\u5f35","\u4fe1","\u99ac","\u7bc0","\u8a71","\u7c73","\u6574","\u7a7a","\u5143","\u6cc1","\u4eca","\u96c6","\u6eab","\u50b3","\u571f","\u8a31","\u6b65","\u7fa4","\u5ee3","\u77f3","\u8a18","\u9700","\u6bb5","\u7814","\u754c","\u62c9","\u6797","\u5f8b","\u53eb","\u4e14","\u7a76","\u89c0","\u8d8a","\u7e54","\u88dd","\u5f71","\u7b97","\u4f4e","\u6301","\u97f3","\u773e","\u66f8","\u5e03","\u590d","\u5bb9","\u5152","\u9808","\u969b","\u5546","\u975e","\u9a57","\u9023","\u65b7","\u6df1","\u96e3","\u8fd1","\u7926","\u5343","\u9031","\u59d4","\u7d20","\u6280","\u5099","\u534a","\u8fa6","\u9752","\u7701","\u5217","\u7fd2","\u97ff","\u7d04","\u652f","\u822c","\u53f2","\u611f","\u52de","\u4fbf","\u5718","\u5f80","\u9178","\u6b77","\u5e02","\u514b","\u4f55","\u9664","\u6d88","\u69cb","\u5e9c","\u7a31","\u592a","\u6e96","\u7cbe","\u503c","\u865f","\u7387","\u65cf","\u7dad","\u5283","\u9078","\u6a19","\u5beb","\u5b58","\u5019","\u6bdb","\u89aa","\u5feb","\u6548","\u65af","\u9662","\u67e5","\u6c5f","\u578b","\u773c","\u738b","\u6309","\u683c","\u990a","\u6613","\u7f6e","\u6d3e","\u5c64","\u7247","\u59cb","\u537b","\u5c08","\u72c0","\u80b2","\u5ee0","\u4eac","\u8b58","\u9069","\u5c6c","\u5713","\u5305","\u706b","\u4f4f","\u8abf","\u6eff","\u7e23","\u5c40","\u7167","\u53c3","\u7d05","\u7d30","\u5f15","\u807d","\u8a72","\u9435","\u50f9","\u56b4","\u9996","\u5e95","\u6db2","\u5b98","\u5fb7","\u96a8","\u75c5","\u8607","\u5931","\u723e","\u6b7b","\u8b1b","\u914d","\u5973","\u9ec3","\u63a8","\u986f","\u8ac7","\u7f6a","\u795e","\u85dd","\u5462","\u5e2d","\u542b","\u4f01","\u671b","\u5bc6","\u6279","\u71df","\u9805","\u9632","\u8209","\u7403","\u82f1","\u6c27","\u52e2","\u544a","\u674e","\u53f0","\u843d","\u6728","\u5e6b","\u8f2a","\u7834","\u4e9e","\u5e2b","\u570d","\u6ce8","\u9060","\u5b57","\u6750","\u6392","\u4f9b","\u6cb3","\u614b","\u5c01","\u53e6","\u65bd","\u6e1b","\u6a39","\u6eb6","\u600e","\u6b62","\u6848","\u8a00","\u58eb","\u5747","\u6b66","\u56fa","\u8449","\u9b5a","\u6ce2","\u8996","\u50c5","\u8cbb","\u7dca","\u611b","\u5de6","\u7ae0","\u65e9","\u671d","\u5bb3","\u7e8c","\u8f15","\u670d","\u8a66","\u98df","\u5145","\u5175","\u6e90","\u5224","\u8b77","\u53f8","\u8db3","\u67d0","\u7df4","\u5dee","\u81f4","\u677f","\u7530","\u964d","\u9ed1","\u72af","\u8ca0","\u64ca","\u8303","\u7e7c","\u8208","\u4f3c","\u9918","\u5805","\u66f2","\u8f38","\u4fee","\u6545","\u57ce","\u592b","\u5920","\u9001","\u7b46","\u8239","\u4f54","\u53f3","\u8ca1","\u5403","\u5bcc","\u6625","\u8077","\u89ba","\u6f22","\u756b","\u529f","\u5df4","\u8ddf","\u96d6","\u96dc","\u98db","\u6aa2","\u5438","\u52a9","\u6607","\u967d","\u4e92","\u521d","\u5275","\u6297","\u8003","\u6295","\u58de","\u7b56","\u53e4","\u5f91","\u63db","\u672a","\u8dd1","\u7559","\u92fc","\u66fe","\u7aef","\u8cac","\u7ad9","\u7c21","\u8ff0","\u9322","\u526f","\u76e1","\u5e1d","\u5c04","\u8349","\u885d","\u627f","\u7368","\u4ee4","\u9650","\u963f","\u5ba3","\u74b0","\u96d9","\u8acb","\u8d85","\u5fae","\u8b93","\u63a7","\u5dde","\u826f","\u8ef8","\u627e","\u5426","\u7d00","\u76ca","\u4f9d","\u512a","\u9802","\u790e","\u8f09","\u5012","\u623f","\u7a81","\u5750","\u7c89","\u6575","\u7565","\u5ba2","\u8881","\u51b7","\u52dd","\u7d55","\u6790","\u584a","\u5291","\u6e2c","\u7d72","\u5354","\u8a34","\u5ff5","\u9673","\u4ecd","\u7f85","\u9e7d","\u53cb","\u6d0b","\u932f","\u82e6","\u591c","\u5211","\u79fb","\u983b","\u9010","\u9760","\u6df7","\u6bcd","\u77ed","\u76ae","\u7d42","\u805a","\u6c7d","\u6751","\u96f2","\u54ea","\u65e2","\u8ddd","\u885b","\u505c","\u70c8","\u592e","\u5bdf","\u71d2","\u8fc5","\u5883","\u82e5","\u5370","\u6d32","\u523b","\u62ec","\u6fc0","\u5b54","\u641e","\u751a","\u5ba4","\u5f85","\u6838","\u6821","\u6563","\u4fb5","\u5427","\u7532","\u904a","\u4e45","\u83dc","\u5473","\u820a","\u6a21","\u6e56","\u8ca8","\u640d","\u9810","\u963b","\u6beb","\u666e","\u7a69","\u4e59","\u5abd","\u690d","\u606f","\u64f4","\u9280","\u8a9e","\u63ee","\u9152","\u5b88","\u62ff","\u5e8f","\u7d19","\u91ab","\u7f3a","\u96e8","\u55ce","\u91dd","\u5289","\u554a","\u6025","\u5531","\u8aa4","\u8a13","\u9858","\u5be9","\u9644","\u7372","\u8336","\u9bae","\u7ce7","\u65a4","\u5b69","\u812b","\u786b","\u80a5","\u5584","\u9f8d","\u6f14","\u7236","\u6f38","\u8840","\u6b61","\u68b0","\u638c","\u6b4c","\u6c99","\u525b","\u653b","\u8b02","\u76fe","\u8a0e","\u665a","\u7c92","\u4e82","\u71c3","\u77db","\u4e4e","\u6bba","\u85e5","\u5be7","\u9b6f","\u8cb4","\u9418","\u7164","\u8b80","\u73ed","\u4f2f","\u9999","\u4ecb","\u8feb","\u53e5","\u8c50","\u57f9","\u63e1","\u862d","\u64d4","\u5f26","\u86cb","\u6c89","\u5047","\u7a7f","\u57f7","\u7b54","\u6a02","\u8ab0","\u9806","\u7159","\u7e2e","\u5fb5","\u81c9","\u559c","\u677e","\u8173","\u56f0","\u7570","\u514d","\u80cc","\u661f","\u798f","\u8cb7","\u67d3","\u4e95","\u6982","\u6162","\u6015","\u78c1","\u500d","\u7956","\u7687","\u4fc3","\u975c","\u88dc","\u8a55","\u7ffb","\u8089","\u8e10","\u5c3c","\u8863","\u5bec","\u63da","\u68c9","\u5e0c","\u50b7","\u64cd","\u5782","\u79cb","\u5b9c","\u6c2b","\u5957","\u7763","\u632f","\u67b6","\u4eae","\u672b","\u61b2","\u6176","\u7de8","\u725b","\u89f8","\u6620","\u96f7","\u92b7","\u8a69","\u5ea7","\u5c45","\u6293","\u88c2","\u80de","\u547c","\u5a18","\u666f","\u5a01","\u7da0","\u6676","\u539a","\u76df","\u8861","\u96de","\u5b6b","\u5ef6","\u5371","\u81a0","\u5c4b","\u9109","\u81e8","\u9678","\u9867","\u6389","\u5440","\u71c8","\u6b72","\u63aa","\u675f","\u8010","\u5287","\u7389","\u8d99","\u8df3","\u54e5","\u5b63","\u8ab2","\u51f1","\u80e1","\u984d","\u6b3e","\u7d39","\u5377","\u9f4a","\u5049","\u84b8","\u6b96","\u6c38","\u5b97","\u82d7","\u5ddd","\u7210","\u5ca9","\u5f31","\u96f6","\u694a","\u594f","\u6cbf","\u9732","\u687f","\u63a2","\u6ed1","\u93ae","\u98ef","\u6fc3","\u822a","\u61f7","\u8d95","\u5eab","\u596a","\u4f0a","\u9748","\u7a05","\u9014","\u6ec5","\u8cfd","\u6b78","\u53ec","\u9f13","\u64ad","\u76e4","\u88c1","\u96aa","\u5eb7","\u552f","\u9304","\u83cc","\u7d14","\u501f","\u7cd6","\u84cb","\u6a6b","\u7b26","\u79c1","\u52aa","\u5802","\u57df","\u69cd","\u6f64","\u5e45","\u54c8","\u7adf","\u719f","\u87f2","\u6fa4","\u8166","\u58e4","\u78b3","\u6b50","\u904d","\u5074","\u5be8","\u6562","\u5fb9","\u616e","\u659c","\u8584","\u5ead","\u7d0d","\u5f48","\u98fc","\u4f38","\u6298","\u9ea5","\u6fd5","\u6697","\u8377","\u74e6","\u585e","\u5e8a","\u7bc9","\u60e1","\u6236","\u8a2a","\u5854","\u5947","\u900f","\u6881","\u5200","\u65cb","\u8de1","\u5361","\u6c2f","\u9047","\u4efd","\u6bd2","\u6ce5","\u9000","\u6d17","\u64fa","\u7070","\u5f69","\u8ce3","\u8017","\u590f","\u64c7","\u5fd9","\u9285","\u737b","\u786c","\u4e88","\u7e41","\u5708","\u96ea","\u51fd","\u4ea6","\u62bd","\u7bc7","\u9663","\u9670","\u4e01","\u5c3a","\u8ffd","\u5806","\u96c4","\u8fce","\u6cdb","\u7238","\u6a13","\u907f","\u8b00","\u5678","\u91ce","\u8c6c","\u65d7","\u7d2f","\u504f","\u5178","\u9928","\u7d22","\u79e6","\u8102","\u6f6e","\u723a","\u8c46","\u5ffd","\u6258","\u9a5a","\u5851","\u907a","\u6108","\u6731","\u66ff","\u7e96","\u7c97","\u50be","\u5c1a","\u75db","\u695a","\u8b1d","\u596e","\u8cfc","\u78e8","\u541b","\u6c60","\u65c1","\u788e","\u9aa8","\u76e3","\u6355","\u5f1f","\u66b4","\u5272","\u8cab","\u6b8a","\u91cb","\u8a5e","\u4ea1","\u58c1","\u9813","\u5bf6","\u5348","\u5875","\u805e","\u63ed","\u70ae","\u6b98","\u51ac","\u6a4b","\u5a66","\u8b66","\u7d9c","\u62db","\u5433","\u4ed8","\u6d6e","\u906d","\u5f90","\u60a8","\u6416","\u8c37","\u8d0a","\u7bb1","\u9694","\u8a02","\u7537","\u5439","\u5712","\u7d1b","\u5510","\u6557","\u5b8b","\u73bb","\u5de8","\u8015","\u5766","\u69ae","\u9589","\u7063","\u9375","\u51e1","\u99d0","\u934b","\u6551","\u6069","\u525d","\u51dd","\u9e7c","\u9f52","\u622a","\u7149","\u9ebb","\u7d21","\u7981","\u5ee2","\u76db","\u7248","\u7de9","\u6de8","\u775b","\u660c","\u5a5a","\u6d89","\u7b52","\u5634","\u63d2","\u5cb8","\u6717","\u838a","\u8857","\u85cf","\u59d1","\u8cbf","\u8150","\u5974","\u5566","\u6163","\u4e58","\u5925","\u6062","\u52fb","\u7d17","\u624e","\u8faf","\u8033","\u5f6a","\u81e3","\u5104","\u7483","\u62b5","\u8108","\u79c0","\u85a9","\u4fc4","\u7db2","\u821e","\u5e97","\u5674","\u7e31","\u5bf8","\u6c57","\u639b","\u6d2a","\u8cc0","\u9583","\u67ec","\u7206","\u70ef","\u6d25","\u7a3b","\u7246","\u8edf","\u52c7","\u50cf","\u6efe","\u5398","\u8499","\u82b3","\u80af","\u5761","\u67f1","\u76ea","\u817f","\u5100","\u65c5","\u5c3e","\u8ecb","\u51b0","\u8ca2","\u767b","\u9ece","\u524a","\u947d","\u52d2","\u9003","\u969c","\u6c28","\u90ed","\u5cf0","\u5e63","\u6e2f","\u4f0f","\u8ecc","\u755d","\u7562","\u64e6","\u83ab","\u523a","\u6d6a","\u79d8","\u63f4","\u682a","\u5065","\u552e","\u80a1","\u5cf6","\u7518","\u6ce1","\u7761","\u7ae5","\u9444","\u6e6f","\u95a5","\u4f11","\u532f","\u820d","\u7267","\u7e5e","\u70b8","\u54f2","\u78f7","\u7e3e","\u670b","\u6de1","\u5c16","\u555f","\u9677","\u67f4","\u5448","\u5f92","\u984f","\u6dda","\u7a0d","\u5fd8","\u6cf5","\u85cd","\u62d6","\u6d1e","\u6388","\u93e1","\u8f9b","\u58ef","\u92d2","\u8ca7","\u865b","\u5f4e","\u6469","\u6cf0","\u5e7c","\u5ef7","\u5c0a","\u7a97","\u7db1","\u5f04","\u96b8","\u7591","\u6c0f","\u5bae","\u59d0","\u9707","\u745e","\u602a","\u5c24","\u7434","\u5faa","\u63cf","\u819c","\u9055","\u593e","\u8170","\u7de3","\u73e0","\u7aae","\u68ee","\u679d","\u7af9","\u6e9d","\u50ac","\u7e69","\u61b6","\u90a6","\u5269","\u5e78","\u6f3f","\u6b04","\u64c1","\u7259","\u8caf","\u79ae","\u6ffe","\u9209","\u7d0b","\u7f77","\u62cd","\u54b1","\u558a","\u8896","\u57c3","\u52e4","\u7f70","\u7126","\u6f5b","\u4f0d","\u58a8","\u6b32","\u7e2b","\u59d3","\u520a","\u98fd","\u4eff","\u734e","\u92c1","\u9b3c","\u9e97","\u8de8","\u9ed8","\u6316","\u93c8","\u6383","\u559d","\u888b","\u70ad","\u6c61","\u5e55","\u8af8","\u5f27","\u52f5","\u6885","\u5976","\u6f54","\u707d","\u821f","\u9451","\u82ef","\u8a1f","\u62b1","\u6bc0","\u61c2","\u5bd2","\u667a","\u57d4","\u5bc4","\u5c46","\u8e8d","\u6e21","\u6311","\u4e39","\u8271","\u8c9d","\u78b0","\u62d4","\u7239","\u6234","\u78bc","\u5922","\u82bd","\u7194","\u8d64","\u6f01","\u54ed","\u656c","\u9846","\u5954","\u925b","\u4ef2","\u864e","\u7a00","\u59b9","\u4e4f","\u73cd","\u7533","\u684c","\u9075","\u5141","\u9686","\u87ba","\u5009","\u9b4f","\u92b3","\u66c9","\u6c2e","\u517c","\u96b1","\u7919","\u8d6b","\u64a5","\u5fe0","\u8085","\u7f38","\u727d","\u6436","\u535a","\u5de7","\u6bbc","\u5144","\u675c","\u8a0a","\u8aa0","\u78a7","\u7965","\u67ef","\u9801","\u5de1","\u77e9","\u60b2","\u704c","\u9f61","\u502b","\u7968","\u5c0b","\u6842","\u92ea","\u8056","\u6050","\u6070","\u912d","\u8da3","\u62ac","\u8352","\u9a30","\u8cbc","\u67d4","\u6ef4","\u731b","\u95ca","\u8f1b","\u59bb","\u586b","\u64a4","\u5132","\u7c3d","\u9b27","\u64fe","\u7d2b","\u7802","\u905e","\u6232","\u540a","\u9676","\u4f10","\u9935","\u7642","\u74f6","\u5a46","\u64ab","\u81c2","\u6478","\u5fcd","\u8766","\u881f","\u9130","\u80f8","\u978f","\u64e0","\u5076","\u68c4","\u69fd","\u52c1","\u4e73","\u9127","\u5409","\u4ec1","\u721b","\u78da","\u79df","\u70cf","\u8266","\u4f34","\u74dc","\u6dfa","\u4e19","\u66ab","\u71e5","\u6a61","\u67f3","\u8ff7","\u6696","\u724c","\u79e7","\u81bd","\u8a73","\u7c27","\u8e0f","\u74f7","\u8b5c","\u5446","\u8cd3","\u7cca","\u6d1b","\u8f1d","\u61a4","\u7af6","\u9699","\u6012","\u7c98","\u4e43","\u7dd2","\u80a9","\u7c4d","\u654f","\u5857","\u7199","\u7686","\u5075","\u61f8","\u6398","\u4eab","\u7cfe","\u9192","\u72c2","\u9396","\u6dc0","\u6068","\u7272","\u9738","\u722c","\u8cde","\u9006","\u73a9","\u9675","\u795d","\u79d2","\u6d59","\u8c8c","\u5f79","\u5f7c","\u6089","\u9d28","\u8da8","\u9cf3","\u6668","\u755c","\u8f29","\u79e9","\u5375","\u7f72","\u68af","\u708e","\u7058","\u68cb","\u9a45","\u7be9","\u5cfd","\u5192","\u5565","\u58fd","\u8b6f","\u6d78","\u6cc9","\u5e3d","\u9072","\u77fd","\u7586","\u8cb8","\u6f0f","\u7a3f","\u51a0","\u5ae9","\u8105","\u82af","\u7262","\u53db","\u8755","\u5967","\u9cf4","\u5dba","\u7f8a","\u6191","\u4e32","\u5858","\u7e6a","\u9175","\u878d","\u76c6","\u932b","\u5edf","\u7c4c","\u51cd","\u8f14","\u651d","\u8972","\u7b4b","\u62d2","\u50da","\u65f1","\u9240","\u9ce5","\u6f06","\u6c88","\u7709","\u758f","\u6dfb","\u68d2","\u7a57","\u785d","\u97d3","\u903c","\u626d","\u50d1","\u6dbc","\u633a","\u7897","\u683d","\u7092","\u676f","\u60a3","\u993e","\u52f8","\u8c6a","\u907c","\u52c3","\u9d3b","\u65e6","\u540f","\u62dc","\u72d7","\u57cb","\u8f25","\u63a9","\u98f2","\u642c","\u7f75","\u8fad","\u52fe","\u6263","\u4f30","\u8523","\u7d68","\u9727","\u4e08","\u6735","\u59c6","\u64ec","\u5b87","\u8f2f","\u965d","\u96d5","\u511f","\u84c4","\u5d07","\u526a","\u5021","\u5ef3","\u54ac","\u99db","\u85af","\u5237","\u65a5","\u756a","\u8ce6","\u5949","\u4f5b","\u6f86","\u6f2b","\u66fc","\u6247","\u9223","\u6843","\u6276","\u4ed4","\u8fd4","\u4fd7","\u8667","\u8154","\u978b","\u68f1","\u8986","\u6846","\u6084","\u53d4","\u649e","\u9a19","\u52d8","\u65fa","\u6cb8","\u5b64","\u5410","\u5b5f","\u6e20","\u5c48","\u75be","\u5999","\u60dc","\u4ef0","\u72e0","\u8139","\u8ae7","\u62cb","\u9ef4","\u6851","\u5d17","\u561b","\u8870","\u76dc","\u6ef2","\u81df","\u8cf4","\u6e67","\u751c","\u66f9","\u95b1","\u808c","\u54e9","\u53b2","\u70f4","\u7def","\u6bc5","\u6628","\u507d","\u75c7","\u716e","\u5606","\u91d8","\u642d","\u8396","\u7c60","\u9177","\u5077","\u5f13","\u9310","\u6046","\u5091","\u5751","\u9f3b","\u7ffc","\u7db8","\u6558","\u7344","\u902e","\u7f50","\u7d61","\u68da","\u6291","\u81a8","\u852c","\u5bfa","\u9a5f","\u7a46","\u51b6","\u67af","\u518a","\u5c4d","\u51f8","\u7d33","\u576f","\u72a7","\u7130","\u8f5f","\u6b23","\u6649","\u7626","\u79a6","\u9320","\u9326","\u55aa","\u65ec","\u935b","\u58df","\u641c","\u64b2","\u9080","\u4ead","\u916f","\u9081","\u8212","\u8106","\u9176","\u9592","\u6182","\u915a","\u9811","\u7fbd","\u6f32","\u5378","\u4ed7","\u966a","\u95e2","\u61f2","\u676d","\u59da","\u809a","\u6349","\u98c4","\u6f02","\u6606","\u6b3a","\u543e","\u90ce","\u70f7","\u6c41","\u5475","\u98fe","\u856d","\u96c5","\u90f5","\u9077","\u71d5","\u6492","\u59fb","\u8d74","\u5bb4","\u7169","\u50b5","\u5e33","\u6591","\u9234","\u65e8","\u9187","\u8463","\u9905","\u96db","\u59ff","\u62cc","\u5085","\u8179","\u59a5","\u63c9","\u8ce2","\u62c6","\u6b6a","\u8461","\u80fa","\u4e1f","\u6d69","\u5fbd","\u6602","\u588a","\u64cb","\u89bd","\u8caa","\u6170","\u7e73","\u6c6a","\u614c","\u99ae","\u8afe","\u59dc","\u8abc","\u5147","\u52a3","\u8aa3","\u8000","\u660f","\u8eba","\u76c8","\u9a0e","\u55ac","\u6eaa","\u53e2","\u76e7","\u62b9","\u60b6","\u8aee","\u522e","\u99d5","\u7e9c","\u609f","\u6458","\u927a","\u64f2","\u9817","\u5e7b","\u67c4","\u60e0","\u6158","\u4f73","\u4ec7","\u81d8","\u7aa9","\u6ecc","\u528d","\u77a7","\u5821","\u6f51","\u8525","\u7f69","\u970d","\u6488","\u80ce","\u84bc","\u6ff1","\u5006","\u6345","\u6e58","\u780d","\u971e","\u90b5","\u8404","\u760b","\u6dee","\u9042","\u718a","\u7cde","\u70d8","\u5bbf","\u6a94","\u6208","\u99c1","\u5ac2","\u88d5","\u5f99","\u7bad","\u6350","\u8178","\u6490","\u66ec","\u8fa8","\u6bbf","\u84ee","\u6524","\u652a","\u91ac","\u5c4f","\u75ab","\u54c0","\u8521","\u5835","\u6cab","\u76ba","\u66a2","\u758a","\u95a3","\u840a","\u6572","\u8f44","\u9264","\u75d5","\u58e9","\u5df7","\u9913","\u798d","\u4e18","\u7384","\u6e9c","\u66f0","\u908f","\u5f6d","\u5617","\u537f","\u59a8","\u8247","\u541e","\u97cb","\u6028","\u77ee","\u6b47"]')},2607:e=>{"use strict";e.exports=JSON.parse('["abdikace","abeceda","adresa","agrese","akce","aktovka","alej","alkohol","amputace","ananas","andulka","anekdota","anketa","antika","anulovat","archa","arogance","asfalt","asistent","aspirace","astma","astronom","atlas","atletika","atol","autobus","azyl","babka","bachor","bacil","baculka","badatel","bageta","bagr","bahno","bakterie","balada","baletka","balkon","balonek","balvan","balza","bambus","bankomat","barbar","baret","barman","baroko","barva","baterka","batoh","bavlna","bazalka","bazilika","bazuka","bedna","beran","beseda","bestie","beton","bezinka","bezmoc","beztak","bicykl","bidlo","biftek","bikiny","bilance","biograf","biolog","bitva","bizon","blahobyt","blatouch","blecha","bledule","blesk","blikat","blizna","blokovat","bloudit","blud","bobek","bobr","bodlina","bodnout","bohatost","bojkot","bojovat","bokorys","bolest","borec","borovice","bota","boubel","bouchat","bouda","boule","bourat","boxer","bradavka","brambora","branka","bratr","brepta","briketa","brko","brloh","bronz","broskev","brunetka","brusinka","brzda","brzy","bublina","bubnovat","buchta","buditel","budka","budova","bufet","bujarost","bukvice","buldok","bulva","bunda","bunkr","burza","butik","buvol","buzola","bydlet","bylina","bytovka","bzukot","capart","carevna","cedr","cedule","cejch","cejn","cela","celer","celkem","celnice","cenina","cennost","cenovka","centrum","cenzor","cestopis","cetka","chalupa","chapadlo","charita","chata","chechtat","chemie","chichot","chirurg","chlad","chleba","chlubit","chmel","chmura","chobot","chochol","chodba","cholera","chomout","chopit","choroba","chov","chrapot","chrlit","chrt","chrup","chtivost","chudina","chutnat","chvat","chvilka","chvost","chyba","chystat","chytit","cibule","cigareta","cihelna","cihla","cinkot","cirkus","cisterna","citace","citrus","cizinec","cizost","clona","cokoliv","couvat","ctitel","ctnost","cudnost","cuketa","cukr","cupot","cvaknout","cval","cvik","cvrkot","cyklista","daleko","dareba","datel","datum","dcera","debata","dechovka","decibel","deficit","deflace","dekl","dekret","demokrat","deprese","derby","deska","detektiv","dikobraz","diktovat","dioda","diplom","disk","displej","divadlo","divoch","dlaha","dlouho","dluhopis","dnes","dobro","dobytek","docent","dochutit","dodnes","dohled","dohoda","dohra","dojem","dojnice","doklad","dokola","doktor","dokument","dolar","doleva","dolina","doma","dominant","domluvit","domov","donutit","dopad","dopis","doplnit","doposud","doprovod","dopustit","dorazit","dorost","dort","dosah","doslov","dostatek","dosud","dosyta","dotaz","dotek","dotknout","doufat","doutnat","dovozce","dozadu","doznat","dozorce","drahota","drak","dramatik","dravec","draze","drdol","drobnost","drogerie","drozd","drsnost","drtit","drzost","duben","duchovno","dudek","duha","duhovka","dusit","dusno","dutost","dvojice","dvorec","dynamit","ekolog","ekonomie","elektron","elipsa","email","emise","emoce","empatie","epizoda","epocha","epopej","epos","esej","esence","eskorta","eskymo","etiketa","euforie","evoluce","exekuce","exkurze","expedice","exploze","export","extrakt","facka","fajfka","fakulta","fanatik","fantazie","farmacie","favorit","fazole","federace","fejeton","fenka","fialka","figurant","filozof","filtr","finance","finta","fixace","fjord","flanel","flirt","flotila","fond","fosfor","fotbal","fotka","foton","frakce","freska","fronta","fukar","funkce","fyzika","galeje","garant","genetika","geolog","gilotina","glazura","glejt","golem","golfista","gotika","graf","gramofon","granule","grep","gril","grog","groteska","guma","hadice","hadr","hala","halenka","hanba","hanopis","harfa","harpuna","havran","hebkost","hejkal","hejno","hejtman","hektar","helma","hematom","herec","herna","heslo","hezky","historik","hladovka","hlasivky","hlava","hledat","hlen","hlodavec","hloh","hloupost","hltat","hlubina","hluchota","hmat","hmota","hmyz","hnis","hnojivo","hnout","hoblina","hoboj","hoch","hodiny","hodlat","hodnota","hodovat","hojnost","hokej","holinka","holka","holub","homole","honitba","honorace","horal","horda","horizont","horko","horlivec","hormon","hornina","horoskop","horstvo","hospoda","hostina","hotovost","houba","houf","houpat","houska","hovor","hradba","hranice","hravost","hrazda","hrbolek","hrdina","hrdlo","hrdost","hrnek","hrobka","hromada","hrot","hrouda","hrozen","hrstka","hrubost","hryzat","hubenost","hubnout","hudba","hukot","humr","husita","hustota","hvozd","hybnost","hydrant","hygiena","hymna","hysterik","idylka","ihned","ikona","iluze","imunita","infekce","inflace","inkaso","inovace","inspekce","internet","invalida","investor","inzerce","ironie","jablko","jachta","jahoda","jakmile","jakost","jalovec","jantar","jarmark","jaro","jasan","jasno","jatka","javor","jazyk","jedinec","jedle","jednatel","jehlan","jekot","jelen","jelito","jemnost","jenom","jepice","jeseter","jevit","jezdec","jezero","jinak","jindy","jinoch","jiskra","jistota","jitrnice","jizva","jmenovat","jogurt","jurta","kabaret","kabel","kabinet","kachna","kadet","kadidlo","kahan","kajak","kajuta","kakao","kaktus","kalamita","kalhoty","kalibr","kalnost","kamera","kamkoliv","kamna","kanibal","kanoe","kantor","kapalina","kapela","kapitola","kapka","kaple","kapota","kapr","kapusta","kapybara","karamel","karotka","karton","kasa","katalog","katedra","kauce","kauza","kavalec","kazajka","kazeta","kazivost","kdekoliv","kdesi","kedluben","kemp","keramika","kino","klacek","kladivo","klam","klapot","klasika","klaun","klec","klenba","klepat","klesnout","klid","klima","klisna","klobouk","klokan","klopa","kloub","klubovna","klusat","kluzkost","kmen","kmitat","kmotr","kniha","knot","koalice","koberec","kobka","kobliha","kobyla","kocour","kohout","kojenec","kokos","koktejl","kolaps","koleda","kolize","kolo","komando","kometa","komik","komnata","komora","kompas","komunita","konat","koncept","kondice","konec","konfese","kongres","konina","konkurs","kontakt","konzerva","kopanec","kopie","kopnout","koprovka","korbel","korektor","kormidlo","koroptev","korpus","koruna","koryto","korzet","kosatec","kostka","kotel","kotleta","kotoul","koukat","koupelna","kousek","kouzlo","kovboj","koza","kozoroh","krabice","krach","krajina","kralovat","krasopis","kravata","kredit","krejcar","kresba","kreveta","kriket","kritik","krize","krkavec","krmelec","krmivo","krocan","krok","kronika","kropit","kroupa","krovka","krtek","kruhadlo","krupice","krutost","krvinka","krychle","krypta","krystal","kryt","kudlanka","kufr","kujnost","kukla","kulajda","kulich","kulka","kulomet","kultura","kuna","kupodivu","kurt","kurzor","kutil","kvalita","kvasinka","kvestor","kynolog","kyselina","kytara","kytice","kytka","kytovec","kyvadlo","labrador","lachtan","ladnost","laik","lakomec","lamela","lampa","lanovka","lasice","laso","lastura","latinka","lavina","lebka","leckdy","leden","lednice","ledovka","ledvina","legenda","legie","legrace","lehce","lehkost","lehnout","lektvar","lenochod","lentilka","lepenka","lepidlo","letadlo","letec","letmo","letokruh","levhart","levitace","levobok","libra","lichotka","lidojed","lidskost","lihovina","lijavec","lilek","limetka","linie","linka","linoleum","listopad","litina","litovat","lobista","lodivod","logika","logoped","lokalita","loket","lomcovat","lopata","lopuch","lord","losos","lotr","loudal","louh","louka","louskat","lovec","lstivost","lucerna","lucifer","lump","lusk","lustrace","lvice","lyra","lyrika","lysina","madam","madlo","magistr","mahagon","majetek","majitel","majorita","makak","makovice","makrela","malba","malina","malovat","malvice","maminka","mandle","manko","marnost","masakr","maskot","masopust","matice","matrika","maturita","mazanec","mazivo","mazlit","mazurka","mdloba","mechanik","meditace","medovina","melasa","meloun","mentolka","metla","metoda","metr","mezera","migrace","mihnout","mihule","mikina","mikrofon","milenec","milimetr","milost","mimika","mincovna","minibar","minomet","minulost","miska","mistr","mixovat","mladost","mlha","mlhovina","mlok","mlsat","mluvit","mnich","mnohem","mobil","mocnost","modelka","modlitba","mohyla","mokro","molekula","momentka","monarcha","monokl","monstrum","montovat","monzun","mosaz","moskyt","most","motivace","motorka","motyka","moucha","moudrost","mozaika","mozek","mozol","mramor","mravenec","mrkev","mrtvola","mrzet","mrzutost","mstitel","mudrc","muflon","mulat","mumie","munice","muset","mutace","muzeum","muzikant","myslivec","mzda","nabourat","nachytat","nadace","nadbytek","nadhoz","nadobro","nadpis","nahlas","nahnat","nahodile","nahradit","naivita","najednou","najisto","najmout","naklonit","nakonec","nakrmit","nalevo","namazat","namluvit","nanometr","naoko","naopak","naostro","napadat","napevno","naplnit","napnout","naposled","naprosto","narodit","naruby","narychlo","nasadit","nasekat","naslepo","nastat","natolik","navenek","navrch","navzdory","nazvat","nebe","nechat","necky","nedaleko","nedbat","neduh","negace","nehet","nehoda","nejen","nejprve","neklid","nelibost","nemilost","nemoc","neochota","neonka","nepokoj","nerost","nerv","nesmysl","nesoulad","netvor","neuron","nevina","nezvykle","nicota","nijak","nikam","nikdy","nikl","nikterak","nitro","nocleh","nohavice","nominace","nora","norek","nositel","nosnost","nouze","noviny","novota","nozdra","nuda","nudle","nuget","nutit","nutnost","nutrie","nymfa","obal","obarvit","obava","obdiv","obec","obehnat","obejmout","obezita","obhajoba","obilnice","objasnit","objekt","obklopit","oblast","oblek","obliba","obloha","obluda","obnos","obohatit","obojek","obout","obrazec","obrna","obruba","obrys","obsah","obsluha","obstarat","obuv","obvaz","obvinit","obvod","obvykle","obyvatel","obzor","ocas","ocel","ocenit","ochladit","ochota","ochrana","ocitnout","odboj","odbyt","odchod","odcizit","odebrat","odeslat","odevzdat","odezva","odhadce","odhodit","odjet","odjinud","odkaz","odkoupit","odliv","odluka","odmlka","odolnost","odpad","odpis","odplout","odpor","odpustit","odpykat","odrazka","odsoudit","odstup","odsun","odtok","odtud","odvaha","odveta","odvolat","odvracet","odznak","ofina","ofsajd","ohlas","ohnisko","ohrada","ohrozit","ohryzek","okap","okenice","oklika","okno","okouzlit","okovy","okrasa","okres","okrsek","okruh","okupant","okurka","okusit","olejnina","olizovat","omak","omeleta","omezit","omladina","omlouvat","omluva","omyl","onehdy","opakovat","opasek","operace","opice","opilost","opisovat","opora","opozice","opravdu","oproti","orbital","orchestr","orgie","orlice","orloj","ortel","osada","oschnout","osika","osivo","oslava","oslepit","oslnit","oslovit","osnova","osoba","osolit","ospalec","osten","ostraha","ostuda","ostych","osvojit","oteplit","otisk","otop","otrhat","otrlost","otrok","otruby","otvor","ovanout","ovar","oves","ovlivnit","ovoce","oxid","ozdoba","pachatel","pacient","padouch","pahorek","pakt","palanda","palec","palivo","paluba","pamflet","pamlsek","panenka","panika","panna","panovat","panstvo","pantofle","paprika","parketa","parodie","parta","paruka","paryba","paseka","pasivita","pastelka","patent","patrona","pavouk","pazneht","pazourek","pecka","pedagog","pejsek","peklo","peloton","penalta","pendrek","penze","periskop","pero","pestrost","petarda","petice","petrolej","pevnina","pexeso","pianista","piha","pijavice","pikle","piknik","pilina","pilnost","pilulka","pinzeta","pipeta","pisatel","pistole","pitevna","pivnice","pivovar","placenta","plakat","plamen","planeta","plastika","platit","plavidlo","plaz","plech","plemeno","plenta","ples","pletivo","plevel","plivat","plnit","plno","plocha","plodina","plomba","plout","pluk","plyn","pobavit","pobyt","pochod","pocit","poctivec","podat","podcenit","podepsat","podhled","podivit","podklad","podmanit","podnik","podoba","podpora","podraz","podstata","podvod","podzim","poezie","pohanka","pohnutka","pohovor","pohroma","pohyb","pointa","pojistka","pojmout","pokazit","pokles","pokoj","pokrok","pokuta","pokyn","poledne","polibek","polknout","poloha","polynom","pomalu","pominout","pomlka","pomoc","pomsta","pomyslet","ponechat","ponorka","ponurost","popadat","popel","popisek","poplach","poprosit","popsat","popud","poradce","porce","porod","porucha","poryv","posadit","posed","posila","poskok","poslanec","posoudit","pospolu","postava","posudek","posyp","potah","potkan","potlesk","potomek","potrava","potupa","potvora","poukaz","pouto","pouzdro","povaha","povidla","povlak","povoz","povrch","povstat","povyk","povzdech","pozdrav","pozemek","poznatek","pozor","pozvat","pracovat","prahory","praktika","prales","praotec","praporek","prase","pravda","princip","prkno","probudit","procento","prodej","profese","prohra","projekt","prolomit","promile","pronikat","propad","prorok","prosba","proton","proutek","provaz","prskavka","prsten","prudkost","prut","prvek","prvohory","psanec","psovod","pstruh","ptactvo","puberta","puch","pudl","pukavec","puklina","pukrle","pult","pumpa","punc","pupen","pusa","pusinka","pustina","putovat","putyka","pyramida","pysk","pytel","racek","rachot","radiace","radnice","radon","raft","ragby","raketa","rakovina","rameno","rampouch","rande","rarach","rarita","rasovna","rastr","ratolest","razance","razidlo","reagovat","reakce","recept","redaktor","referent","reflex","rejnok","reklama","rekord","rekrut","rektor","reputace","revize","revma","revolver","rezerva","riskovat","riziko","robotika","rodokmen","rohovka","rokle","rokoko","romaneto","ropovod","ropucha","rorejs","rosol","rostlina","rotmistr","rotoped","rotunda","roubenka","roucho","roup","roura","rovina","rovnice","rozbor","rozchod","rozdat","rozeznat","rozhodce","rozinka","rozjezd","rozkaz","rozloha","rozmar","rozpad","rozruch","rozsah","roztok","rozum","rozvod","rubrika","ruchadlo","rukavice","rukopis","ryba","rybolov","rychlost","rydlo","rypadlo","rytina","ryzost","sadista","sahat","sako","samec","samizdat","samota","sanitka","sardinka","sasanka","satelit","sazba","sazenice","sbor","schovat","sebranka","secese","sedadlo","sediment","sedlo","sehnat","sejmout","sekera","sekta","sekunda","sekvoje","semeno","seno","servis","sesadit","seshora","seskok","seslat","sestra","sesuv","sesypat","setba","setina","setkat","setnout","setrvat","sever","seznam","shoda","shrnout","sifon","silnice","sirka","sirotek","sirup","situace","skafandr","skalisko","skanzen","skaut","skeptik","skica","skladba","sklenice","sklo","skluz","skoba","skokan","skoro","skripta","skrz","skupina","skvost","skvrna","slabika","sladidlo","slanina","slast","slavnost","sledovat","slepec","sleva","slezina","slib","slina","sliznice","slon","sloupek","slovo","sluch","sluha","slunce","slupka","slza","smaragd","smetana","smilstvo","smlouva","smog","smrad","smrk","smrtka","smutek","smysl","snad","snaha","snob","sobota","socha","sodovka","sokol","sopka","sotva","souboj","soucit","soudce","souhlas","soulad","soumrak","souprava","soused","soutok","souviset","spalovna","spasitel","spis","splav","spodek","spojenec","spolu","sponzor","spornost","spousta","sprcha","spustit","sranda","sraz","srdce","srna","srnec","srovnat","srpen","srst","srub","stanice","starosta","statika","stavba","stehno","stezka","stodola","stolek","stopa","storno","stoupat","strach","stres","strhnout","strom","struna","studna","stupnice","stvol","styk","subjekt","subtropy","suchar","sudost","sukno","sundat","sunout","surikata","surovina","svah","svalstvo","svetr","svatba","svazek","svisle","svitek","svoboda","svodidlo","svorka","svrab","sykavka","sykot","synek","synovec","sypat","sypkost","syrovost","sysel","sytost","tabletka","tabule","tahoun","tajemno","tajfun","tajga","tajit","tajnost","taktika","tamhle","tampon","tancovat","tanec","tanker","tapeta","tavenina","tazatel","technika","tehdy","tekutina","telefon","temnota","tendence","tenista","tenor","teplota","tepna","teprve","terapie","termoska","textil","ticho","tiskopis","titulek","tkadlec","tkanina","tlapka","tleskat","tlukot","tlupa","tmel","toaleta","topinka","topol","torzo","touha","toulec","tradice","traktor","tramp","trasa","traverza","trefit","trest","trezor","trhavina","trhlina","trochu","trojice","troska","trouba","trpce","trpitel","trpkost","trubec","truchlit","truhlice","trus","trvat","tudy","tuhnout","tuhost","tundra","turista","turnaj","tuzemsko","tvaroh","tvorba","tvrdost","tvrz","tygr","tykev","ubohost","uboze","ubrat","ubrousek","ubrus","ubytovna","ucho","uctivost","udivit","uhradit","ujednat","ujistit","ujmout","ukazatel","uklidnit","uklonit","ukotvit","ukrojit","ulice","ulita","ulovit","umyvadlo","unavit","uniforma","uniknout","upadnout","uplatnit","uplynout","upoutat","upravit","uran","urazit","usednout","usilovat","usmrtit","usnadnit","usnout","usoudit","ustlat","ustrnout","utahovat","utkat","utlumit","utonout","utopenec","utrousit","uvalit","uvolnit","uvozovka","uzdravit","uzel","uzenina","uzlina","uznat","vagon","valcha","valoun","vana","vandal","vanilka","varan","varhany","varovat","vcelku","vchod","vdova","vedro","vegetace","vejce","velbloud","veletrh","velitel","velmoc","velryba","venkov","veranda","verze","veselka","veskrze","vesnice","vespodu","vesta","veterina","veverka","vibrace","vichr","videohra","vidina","vidle","vila","vinice","viset","vitalita","vize","vizitka","vjezd","vklad","vkus","vlajka","vlak","vlasec","vlevo","vlhkost","vliv","vlnovka","vloupat","vnucovat","vnuk","voda","vodivost","vodoznak","vodstvo","vojensky","vojna","vojsko","volant","volba","volit","volno","voskovka","vozidlo","vozovna","vpravo","vrabec","vracet","vrah","vrata","vrba","vrcholek","vrhat","vrstva","vrtule","vsadit","vstoupit","vstup","vtip","vybavit","vybrat","vychovat","vydat","vydra","vyfotit","vyhledat","vyhnout","vyhodit","vyhradit","vyhubit","vyjasnit","vyjet","vyjmout","vyklopit","vykonat","vylekat","vymazat","vymezit","vymizet","vymyslet","vynechat","vynikat","vynutit","vypadat","vyplatit","vypravit","vypustit","vyrazit","vyrovnat","vyrvat","vyslovit","vysoko","vystavit","vysunout","vysypat","vytasit","vytesat","vytratit","vyvinout","vyvolat","vyvrhel","vyzdobit","vyznat","vzadu","vzbudit","vzchopit","vzdor","vzduch","vzdychat","vzestup","vzhledem","vzkaz","vzlykat","vznik","vzorek","vzpoura","vztah","vztek","xylofon","zabrat","zabydlet","zachovat","zadarmo","zadusit","zafoukat","zahltit","zahodit","zahrada","zahynout","zajatec","zajet","zajistit","zaklepat","zakoupit","zalepit","zamezit","zamotat","zamyslet","zanechat","zanikat","zaplatit","zapojit","zapsat","zarazit","zastavit","zasunout","zatajit","zatemnit","zatknout","zaujmout","zavalit","zavelet","zavinit","zavolat","zavrtat","zazvonit","zbavit","zbrusu","zbudovat","zbytek","zdaleka","zdarma","zdatnost","zdivo","zdobit","zdroj","zdvih","zdymadlo","zelenina","zeman","zemina","zeptat","zezadu","zezdola","zhatit","zhltnout","zhluboka","zhotovit","zhruba","zima","zimnice","zjemnit","zklamat","zkoumat","zkratka","zkumavka","zlato","zlehka","zloba","zlom","zlost","zlozvyk","zmapovat","zmar","zmatek","zmije","zmizet","zmocnit","zmodrat","zmrzlina","zmutovat","znak","znalost","znamenat","znovu","zobrazit","zotavit","zoubek","zoufale","zplodit","zpomalit","zprava","zprostit","zprudka","zprvu","zrada","zranit","zrcadlo","zrnitost","zrno","zrovna","zrychlit","zrzavost","zticha","ztratit","zubovina","zubr","zvednout","zvenku","zvesela","zvon","zvrat","zvukovod","zvyk"]')},7736:e=>{"use strict";e.exports=JSON.parse('["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"]')},5040:e=>{"use strict";e.exports=JSON.parse('["abaisser","abandon","abdiquer","abeille","abolir","aborder","aboutir","aboyer","abrasif","abreuver","abriter","abroger","abrupt","absence","absolu","absurde","abusif","abyssal","acade\u0301mie","acajou","acarien","accabler","accepter","acclamer","accolade","accroche","accuser","acerbe","achat","acheter","aciduler","acier","acompte","acque\u0301rir","acronyme","acteur","actif","actuel","adepte","ade\u0301quat","adhe\u0301sif","adjectif","adjuger","admettre","admirer","adopter","adorer","adoucir","adresse","adroit","adulte","adverbe","ae\u0301rer","ae\u0301ronef","affaire","affecter","affiche","affreux","affubler","agacer","agencer","agile","agiter","agrafer","agre\u0301able","agrume","aider","aiguille","ailier","aimable","aisance","ajouter","ajuster","alarmer","alchimie","alerte","alge\u0300bre","algue","alie\u0301ner","aliment","alle\u0301ger","alliage","allouer","allumer","alourdir","alpaga","altesse","alve\u0301ole","amateur","ambigu","ambre","ame\u0301nager","amertume","amidon","amiral","amorcer","amour","amovible","amphibie","ampleur","amusant","analyse","anaphore","anarchie","anatomie","ancien","ane\u0301antir","angle","angoisse","anguleux","animal","annexer","annonce","annuel","anodin","anomalie","anonyme","anormal","antenne","antidote","anxieux","apaiser","ape\u0301ritif","aplanir","apologie","appareil","appeler","apporter","appuyer","aquarium","aqueduc","arbitre","arbuste","ardeur","ardoise","argent","arlequin","armature","armement","armoire","armure","arpenter","arracher","arriver","arroser","arsenic","arte\u0301riel","article","aspect","asphalte","aspirer","assaut","asservir","assiette","associer","assurer","asticot","astre","astuce","atelier","atome","atrium","atroce","attaque","attentif","attirer","attraper","aubaine","auberge","audace","audible","augurer","aurore","automne","autruche","avaler","avancer","avarice","avenir","averse","aveugle","aviateur","avide","avion","aviser","avoine","avouer","avril","axial","axiome","badge","bafouer","bagage","baguette","baignade","balancer","balcon","baleine","balisage","bambin","bancaire","bandage","banlieue","bannie\u0300re","banquier","barbier","baril","baron","barque","barrage","bassin","bastion","bataille","bateau","batterie","baudrier","bavarder","belette","be\u0301lier","belote","be\u0301ne\u0301fice","berceau","berger","berline","bermuda","besace","besogne","be\u0301tail","beurre","biberon","bicycle","bidule","bijou","bilan","bilingue","billard","binaire","biologie","biopsie","biotype","biscuit","bison","bistouri","bitume","bizarre","blafard","blague","blanchir","blessant","blinder","blond","bloquer","blouson","bobard","bobine","boire","boiser","bolide","bonbon","bondir","bonheur","bonifier","bonus","bordure","borne","botte","boucle","boueux","bougie","boulon","bouquin","bourse","boussole","boutique","boxeur","branche","brasier","brave","brebis","bre\u0300che","breuvage","bricoler","brigade","brillant","brioche","brique","brochure","broder","bronzer","brousse","broyeur","brume","brusque","brutal","bruyant","buffle","buisson","bulletin","bureau","burin","bustier","butiner","butoir","buvable","buvette","cabanon","cabine","cachette","cadeau","cadre","cafe\u0301ine","caillou","caisson","calculer","calepin","calibre","calmer","calomnie","calvaire","camarade","came\u0301ra","camion","campagne","canal","caneton","canon","cantine","canular","capable","caporal","caprice","capsule","capter","capuche","carabine","carbone","caresser","caribou","carnage","carotte","carreau","carton","cascade","casier","casque","cassure","causer","caution","cavalier","caverne","caviar","ce\u0301dille","ceinture","ce\u0301leste","cellule","cendrier","censurer","central","cercle","ce\u0301re\u0301bral","cerise","cerner","cerveau","cesser","chagrin","chaise","chaleur","chambre","chance","chapitre","charbon","chasseur","chaton","chausson","chavirer","chemise","chenille","che\u0301quier","chercher","cheval","chien","chiffre","chignon","chime\u0300re","chiot","chlorure","chocolat","choisir","chose","chouette","chrome","chute","cigare","cigogne","cimenter","cine\u0301ma","cintrer","circuler","cirer","cirque","citerne","citoyen","citron","civil","clairon","clameur","claquer","classe","clavier","client","cligner","climat","clivage","cloche","clonage","cloporte","cobalt","cobra","cocasse","cocotier","coder","codifier","coffre","cogner","cohe\u0301sion","coiffer","coincer","cole\u0300re","colibri","colline","colmater","colonel","combat","come\u0301die","commande","compact","concert","conduire","confier","congeler","connoter","consonne","contact","convexe","copain","copie","corail","corbeau","cordage","corniche","corpus","correct","corte\u0300ge","cosmique","costume","coton","coude","coupure","courage","couteau","couvrir","coyote","crabe","crainte","cravate","crayon","cre\u0301ature","cre\u0301diter","cre\u0301meux","creuser","crevette","cribler","crier","cristal","crite\u0300re","croire","croquer","crotale","crucial","cruel","crypter","cubique","cueillir","cuille\u0300re","cuisine","cuivre","culminer","cultiver","cumuler","cupide","curatif","curseur","cyanure","cycle","cylindre","cynique","daigner","damier","danger","danseur","dauphin","de\u0301battre","de\u0301biter","de\u0301border","de\u0301brider","de\u0301butant","de\u0301caler","de\u0301cembre","de\u0301chirer","de\u0301cider","de\u0301clarer","de\u0301corer","de\u0301crire","de\u0301cupler","de\u0301dale","de\u0301ductif","de\u0301esse","de\u0301fensif","de\u0301filer","de\u0301frayer","de\u0301gager","de\u0301givrer","de\u0301glutir","de\u0301grafer","de\u0301jeuner","de\u0301lice","de\u0301loger","demander","demeurer","de\u0301molir","de\u0301nicher","de\u0301nouer","dentelle","de\u0301nuder","de\u0301part","de\u0301penser","de\u0301phaser","de\u0301placer","de\u0301poser","de\u0301ranger","de\u0301rober","de\u0301sastre","descente","de\u0301sert","de\u0301signer","de\u0301sobe\u0301ir","dessiner","destrier","de\u0301tacher","de\u0301tester","de\u0301tourer","de\u0301tresse","devancer","devenir","deviner","devoir","diable","dialogue","diamant","dicter","diffe\u0301rer","dige\u0301rer","digital","digne","diluer","dimanche","diminuer","dioxyde","directif","diriger","discuter","disposer","dissiper","distance","divertir","diviser","docile","docteur","dogme","doigt","domaine","domicile","dompter","donateur","donjon","donner","dopamine","dortoir","dorure","dosage","doseur","dossier","dotation","douanier","double","douceur","douter","doyen","dragon","draper","dresser","dribbler","droiture","duperie","duplexe","durable","durcir","dynastie","e\u0301blouir","e\u0301carter","e\u0301charpe","e\u0301chelle","e\u0301clairer","e\u0301clipse","e\u0301clore","e\u0301cluse","e\u0301cole","e\u0301conomie","e\u0301corce","e\u0301couter","e\u0301craser","e\u0301cre\u0301mer","e\u0301crivain","e\u0301crou","e\u0301cume","e\u0301cureuil","e\u0301difier","e\u0301duquer","effacer","effectif","effigie","effort","effrayer","effusion","e\u0301galiser","e\u0301garer","e\u0301jecter","e\u0301laborer","e\u0301largir","e\u0301lectron","e\u0301le\u0301gant","e\u0301le\u0301phant","e\u0301le\u0300ve","e\u0301ligible","e\u0301litisme","e\u0301loge","e\u0301lucider","e\u0301luder","emballer","embellir","embryon","e\u0301meraude","e\u0301mission","emmener","e\u0301motion","e\u0301mouvoir","empereur","employer","emporter","emprise","e\u0301mulsion","encadrer","enche\u0300re","enclave","encoche","endiguer","endosser","endroit","enduire","e\u0301nergie","enfance","enfermer","enfouir","engager","engin","englober","e\u0301nigme","enjamber","enjeu","enlever","ennemi","ennuyeux","enrichir","enrobage","enseigne","entasser","entendre","entier","entourer","entraver","e\u0301nume\u0301rer","envahir","enviable","envoyer","enzyme","e\u0301olien","e\u0301paissir","e\u0301pargne","e\u0301patant","e\u0301paule","e\u0301picerie","e\u0301pide\u0301mie","e\u0301pier","e\u0301pilogue","e\u0301pine","e\u0301pisode","e\u0301pitaphe","e\u0301poque","e\u0301preuve","e\u0301prouver","e\u0301puisant","e\u0301querre","e\u0301quipe","e\u0301riger","e\u0301rosion","erreur","e\u0301ruption","escalier","espadon","espe\u0300ce","espie\u0300gle","espoir","esprit","esquiver","essayer","essence","essieu","essorer","estime","estomac","estrade","e\u0301tage\u0300re","e\u0301taler","e\u0301tanche","e\u0301tatique","e\u0301teindre","e\u0301tendoir","e\u0301ternel","e\u0301thanol","e\u0301thique","ethnie","e\u0301tirer","e\u0301toffer","e\u0301toile","e\u0301tonnant","e\u0301tourdir","e\u0301trange","e\u0301troit","e\u0301tude","euphorie","e\u0301valuer","e\u0301vasion","e\u0301ventail","e\u0301vidence","e\u0301viter","e\u0301volutif","e\u0301voquer","exact","exage\u0301rer","exaucer","exceller","excitant","exclusif","excuse","exe\u0301cuter","exemple","exercer","exhaler","exhorter","exigence","exiler","exister","exotique","expe\u0301dier","explorer","exposer","exprimer","exquis","extensif","extraire","exulter","fable","fabuleux","facette","facile","facture","faiblir","falaise","fameux","famille","farceur","farfelu","farine","farouche","fasciner","fatal","fatigue","faucon","fautif","faveur","favori","fe\u0301brile","fe\u0301conder","fe\u0301de\u0301rer","fe\u0301lin","femme","fe\u0301mur","fendoir","fe\u0301odal","fermer","fe\u0301roce","ferveur","festival","feuille","feutre","fe\u0301vrier","fiasco","ficeler","fictif","fide\u0300le","figure","filature","filetage","filie\u0300re","filleul","filmer","filou","filtrer","financer","finir","fiole","firme","fissure","fixer","flairer","flamme","flasque","flatteur","fle\u0301au","fle\u0300che","fleur","flexion","flocon","flore","fluctuer","fluide","fluvial","folie","fonderie","fongible","fontaine","forcer","forgeron","formuler","fortune","fossile","foudre","fouge\u0300re","fouiller","foulure","fourmi","fragile","fraise","franchir","frapper","frayeur","fre\u0301gate","freiner","frelon","fre\u0301mir","fre\u0301ne\u0301sie","fre\u0300re","friable","friction","frisson","frivole","froid","fromage","frontal","frotter","fruit","fugitif","fuite","fureur","furieux","furtif","fusion","futur","gagner","galaxie","galerie","gambader","garantir","gardien","garnir","garrigue","gazelle","gazon","ge\u0301ant","ge\u0301latine","ge\u0301lule","gendarme","ge\u0301ne\u0301ral","ge\u0301nie","genou","gentil","ge\u0301ologie","ge\u0301ome\u0300tre","ge\u0301ranium","germe","gestuel","geyser","gibier","gicler","girafe","givre","glace","glaive","glisser","globe","gloire","glorieux","golfeur","gomme","gonfler","gorge","gorille","goudron","gouffre","goulot","goupille","gourmand","goutte","graduel","graffiti","graine","grand","grappin","gratuit","gravir","grenat","griffure","griller","grimper","grogner","gronder","grotte","groupe","gruger","grutier","gruye\u0300re","gue\u0301pard","guerrier","guide","guimauve","guitare","gustatif","gymnaste","gyrostat","habitude","hachoir","halte","hameau","hangar","hanneton","haricot","harmonie","harpon","hasard","he\u0301lium","he\u0301matome","herbe","he\u0301risson","hermine","he\u0301ron","he\u0301siter","heureux","hiberner","hibou","hilarant","histoire","hiver","homard","hommage","homoge\u0300ne","honneur","honorer","honteux","horde","horizon","horloge","hormone","horrible","houleux","housse","hublot","huileux","humain","humble","humide","humour","hurler","hydromel","hygie\u0300ne","hymne","hypnose","idylle","ignorer","iguane","illicite","illusion","image","imbiber","imiter","immense","immobile","immuable","impact","impe\u0301rial","implorer","imposer","imprimer","imputer","incarner","incendie","incident","incliner","incolore","indexer","indice","inductif","ine\u0301dit","ineptie","inexact","infini","infliger","informer","infusion","inge\u0301rer","inhaler","inhiber","injecter","injure","innocent","inoculer","inonder","inscrire","insecte","insigne","insolite","inspirer","instinct","insulter","intact","intense","intime","intrigue","intuitif","inutile","invasion","inventer","inviter","invoquer","ironique","irradier","irre\u0301el","irriter","isoler","ivoire","ivresse","jaguar","jaillir","jambe","janvier","jardin","jauger","jaune","javelot","jetable","jeton","jeudi","jeunesse","joindre","joncher","jongler","joueur","jouissif","journal","jovial","joyau","joyeux","jubiler","jugement","junior","jupon","juriste","justice","juteux","juve\u0301nile","kayak","kimono","kiosque","label","labial","labourer","lace\u0301rer","lactose","lagune","laine","laisser","laitier","lambeau","lamelle","lampe","lanceur","langage","lanterne","lapin","largeur","larme","laurier","lavabo","lavoir","lecture","le\u0301gal","le\u0301ger","le\u0301gume","lessive","lettre","levier","lexique","le\u0301zard","liasse","libe\u0301rer","libre","licence","licorne","lie\u0300ge","lie\u0300vre","ligature","ligoter","ligue","limer","limite","limonade","limpide","line\u0301aire","lingot","lionceau","liquide","lisie\u0300re","lister","lithium","litige","littoral","livreur","logique","lointain","loisir","lombric","loterie","louer","lourd","loutre","louve","loyal","lubie","lucide","lucratif","lueur","lugubre","luisant","lumie\u0300re","lunaire","lundi","luron","lutter","luxueux","machine","magasin","magenta","magique","maigre","maillon","maintien","mairie","maison","majorer","malaxer","male\u0301fice","malheur","malice","mallette","mammouth","mandater","maniable","manquant","manteau","manuel","marathon","marbre","marchand","mardi","maritime","marqueur","marron","marteler","mascotte","massif","mate\u0301riel","matie\u0300re","matraque","maudire","maussade","mauve","maximal","me\u0301chant","me\u0301connu","me\u0301daille","me\u0301decin","me\u0301diter","me\u0301duse","meilleur","me\u0301lange","me\u0301lodie","membre","me\u0301moire","menacer","mener","menhir","mensonge","mentor","mercredi","me\u0301rite","merle","messager","mesure","me\u0301tal","me\u0301te\u0301ore","me\u0301thode","me\u0301tier","meuble","miauler","microbe","miette","mignon","migrer","milieu","million","mimique","mince","mine\u0301ral","minimal","minorer","minute","miracle","miroiter","missile","mixte","mobile","moderne","moelleux","mondial","moniteur","monnaie","monotone","monstre","montagne","monument","moqueur","morceau","morsure","mortier","moteur","motif","mouche","moufle","moulin","mousson","mouton","mouvant","multiple","munition","muraille","mure\u0300ne","murmure","muscle","muse\u0301um","musicien","mutation","muter","mutuel","myriade","myrtille","myste\u0300re","mythique","nageur","nappe","narquois","narrer","natation","nation","nature","naufrage","nautique","navire","ne\u0301buleux","nectar","ne\u0301faste","ne\u0301gation","ne\u0301gliger","ne\u0301gocier","neige","nerveux","nettoyer","neurone","neutron","neveu","niche","nickel","nitrate","niveau","noble","nocif","nocturne","noirceur","noisette","nomade","nombreux","nommer","normatif","notable","notifier","notoire","nourrir","nouveau","novateur","novembre","novice","nuage","nuancer","nuire","nuisible","nume\u0301ro","nuptial","nuque","nutritif","obe\u0301ir","objectif","obliger","obscur","observer","obstacle","obtenir","obturer","occasion","occuper","oce\u0301an","octobre","octroyer","octupler","oculaire","odeur","odorant","offenser","officier","offrir","ogive","oiseau","oisillon","olfactif","olivier","ombrage","omettre","onctueux","onduler","one\u0301reux","onirique","opale","opaque","ope\u0301rer","opinion","opportun","opprimer","opter","optique","orageux","orange","orbite","ordonner","oreille","organe","orgueil","orifice","ornement","orque","ortie","osciller","osmose","ossature","otarie","ouragan","ourson","outil","outrager","ouvrage","ovation","oxyde","oxyge\u0300ne","ozone","paisible","palace","palmare\u0300s","palourde","palper","panache","panda","pangolin","paniquer","panneau","panorama","pantalon","papaye","papier","papoter","papyrus","paradoxe","parcelle","paresse","parfumer","parler","parole","parrain","parsemer","partager","parure","parvenir","passion","paste\u0300que","paternel","patience","patron","pavillon","pavoiser","payer","paysage","peigne","peintre","pelage","pe\u0301lican","pelle","pelouse","peluche","pendule","pe\u0301ne\u0301trer","pe\u0301nible","pensif","pe\u0301nurie","pe\u0301pite","pe\u0301plum","perdrix","perforer","pe\u0301riode","permuter","perplexe","persil","perte","peser","pe\u0301tale","petit","pe\u0301trir","peuple","pharaon","phobie","phoque","photon","phrase","physique","piano","pictural","pie\u0300ce","pierre","pieuvre","pilote","pinceau","pipette","piquer","pirogue","piscine","piston","pivoter","pixel","pizza","placard","plafond","plaisir","planer","plaque","plastron","plateau","pleurer","plexus","pliage","plomb","plonger","pluie","plumage","pochette","poe\u0301sie","poe\u0300te","pointe","poirier","poisson","poivre","polaire","policier","pollen","polygone","pommade","pompier","ponctuel","ponde\u0301rer","poney","portique","position","posse\u0301der","posture","potager","poteau","potion","pouce","poulain","poumon","pourpre","poussin","pouvoir","prairie","pratique","pre\u0301cieux","pre\u0301dire","pre\u0301fixe","pre\u0301lude","pre\u0301nom","pre\u0301sence","pre\u0301texte","pre\u0301voir","primitif","prince","prison","priver","proble\u0300me","proce\u0301der","prodige","profond","progre\u0300s","proie","projeter","prologue","promener","propre","prospe\u0300re","prote\u0301ger","prouesse","proverbe","prudence","pruneau","psychose","public","puceron","puiser","pulpe","pulsar","punaise","punitif","pupitre","purifier","puzzle","pyramide","quasar","querelle","question","quie\u0301tude","quitter","quotient","racine","raconter","radieux","ragondin","raideur","raisin","ralentir","rallonge","ramasser","rapide","rasage","ratisser","ravager","ravin","rayonner","re\u0301actif","re\u0301agir","re\u0301aliser","re\u0301animer","recevoir","re\u0301citer","re\u0301clamer","re\u0301colter","recruter","reculer","recycler","re\u0301diger","redouter","refaire","re\u0301flexe","re\u0301former","refrain","refuge","re\u0301galien","re\u0301gion","re\u0301glage","re\u0301gulier","re\u0301ite\u0301rer","rejeter","rejouer","relatif","relever","relief","remarque","reme\u0300de","remise","remonter","remplir","remuer","renard","renfort","renifler","renoncer","rentrer","renvoi","replier","reporter","reprise","reptile","requin","re\u0301serve","re\u0301sineux","re\u0301soudre","respect","rester","re\u0301sultat","re\u0301tablir","retenir","re\u0301ticule","retomber","retracer","re\u0301union","re\u0301ussir","revanche","revivre","re\u0301volte","re\u0301vulsif","richesse","rideau","rieur","rigide","rigoler","rincer","riposter","risible","risque","rituel","rival","rivie\u0300re","rocheux","romance","rompre","ronce","rondin","roseau","rosier","rotatif","rotor","rotule","rouge","rouille","rouleau","routine","royaume","ruban","rubis","ruche","ruelle","rugueux","ruiner","ruisseau","ruser","rustique","rythme","sabler","saboter","sabre","sacoche","safari","sagesse","saisir","salade","salive","salon","saluer","samedi","sanction","sanglier","sarcasme","sardine","saturer","saugrenu","saumon","sauter","sauvage","savant","savonner","scalpel","scandale","sce\u0301le\u0301rat","sce\u0301nario","sceptre","sche\u0301ma","science","scinder","score","scrutin","sculpter","se\u0301ance","se\u0301cable","se\u0301cher","secouer","se\u0301cre\u0301ter","se\u0301datif","se\u0301duire","seigneur","se\u0301jour","se\u0301lectif","semaine","sembler","semence","se\u0301minal","se\u0301nateur","sensible","sentence","se\u0301parer","se\u0301quence","serein","sergent","se\u0301rieux","serrure","se\u0301rum","service","se\u0301same","se\u0301vir","sevrage","sextuple","side\u0301ral","sie\u0300cle","sie\u0301ger","siffler","sigle","signal","silence","silicium","simple","since\u0300re","sinistre","siphon","sirop","sismique","situer","skier","social","socle","sodium","soigneux","soldat","soleil","solitude","soluble","sombre","sommeil","somnoler","sonde","songeur","sonnette","sonore","sorcier","sortir","sosie","sottise","soucieux","soudure","souffle","soulever","soupape","source","soutirer","souvenir","spacieux","spatial","spe\u0301cial","sphe\u0300re","spiral","stable","station","sternum","stimulus","stipuler","strict","studieux","stupeur","styliste","sublime","substrat","subtil","subvenir","succe\u0300s","sucre","suffixe","sugge\u0301rer","suiveur","sulfate","superbe","supplier","surface","suricate","surmener","surprise","sursaut","survie","suspect","syllabe","symbole","syme\u0301trie","synapse","syntaxe","syste\u0300me","tabac","tablier","tactile","tailler","talent","talisman","talonner","tambour","tamiser","tangible","tapis","taquiner","tarder","tarif","tartine","tasse","tatami","tatouage","taupe","taureau","taxer","te\u0301moin","temporel","tenaille","tendre","teneur","tenir","tension","terminer","terne","terrible","te\u0301tine","texte","the\u0300me","the\u0301orie","the\u0301rapie","thorax","tibia","tie\u0300de","timide","tirelire","tiroir","tissu","titane","titre","tituber","toboggan","tole\u0301rant","tomate","tonique","tonneau","toponyme","torche","tordre","tornade","torpille","torrent","torse","tortue","totem","toucher","tournage","tousser","toxine","traction","trafic","tragique","trahir","train","trancher","travail","tre\u0300fle","tremper","tre\u0301sor","treuil","triage","tribunal","tricoter","trilogie","triomphe","tripler","triturer","trivial","trombone","tronc","tropical","troupeau","tuile","tulipe","tumulte","tunnel","turbine","tuteur","tutoyer","tuyau","tympan","typhon","typique","tyran","ubuesque","ultime","ultrason","unanime","unifier","union","unique","unitaire","univers","uranium","urbain","urticant","usage","usine","usuel","usure","utile","utopie","vacarme","vaccin","vagabond","vague","vaillant","vaincre","vaisseau","valable","valise","vallon","valve","vampire","vanille","vapeur","varier","vaseux","vassal","vaste","vecteur","vedette","ve\u0301ge\u0301tal","ve\u0301hicule","veinard","ve\u0301loce","vendredi","ve\u0301ne\u0301rer","venger","venimeux","ventouse","verdure","ve\u0301rin","vernir","verrou","verser","vertu","veston","ve\u0301te\u0301ran","ve\u0301tuste","vexant","vexer","viaduc","viande","victoire","vidange","vide\u0301o","vignette","vigueur","vilain","village","vinaigre","violon","vipe\u0300re","virement","virtuose","virus","visage","viseur","vision","visqueux","visuel","vital","vitesse","viticole","vitrine","vivace","vivipare","vocation","voguer","voile","voisin","voiture","volaille","volcan","voltiger","volume","vorace","vortex","voter","vouloir","voyage","voyelle","wagon","xe\u0301non","yacht","ze\u0300bre","ze\u0301nith","zeste","zoologie"]')},5576:e=>{"use strict";e.exports=JSON.parse('["abaco","abbaglio","abbinato","abete","abisso","abolire","abrasivo","abrogato","accadere","accenno","accusato","acetone","achille","acido","acqua","acre","acrilico","acrobata","acuto","adagio","addebito","addome","adeguato","aderire","adipe","adottare","adulare","affabile","affetto","affisso","affranto","aforisma","afoso","africano","agave","agente","agevole","aggancio","agire","agitare","agonismo","agricolo","agrumeto","aguzzo","alabarda","alato","albatro","alberato","albo","albume","alce","alcolico","alettone","alfa","algebra","aliante","alibi","alimento","allagato","allegro","allievo","allodola","allusivo","almeno","alogeno","alpaca","alpestre","altalena","alterno","alticcio","altrove","alunno","alveolo","alzare","amalgama","amanita","amarena","ambito","ambrato","ameba","america","ametista","amico","ammasso","ammenda","ammirare","ammonito","amore","ampio","ampliare","amuleto","anacardo","anagrafe","analista","anarchia","anatra","anca","ancella","ancora","andare","andrea","anello","angelo","angolare","angusto","anima","annegare","annidato","anno","annuncio","anonimo","anticipo","anzi","apatico","apertura","apode","apparire","appetito","appoggio","approdo","appunto","aprile","arabica","arachide","aragosta","araldica","arancio","aratura","arazzo","arbitro","archivio","ardito","arenile","argento","argine","arguto","aria","armonia","arnese","arredato","arringa","arrosto","arsenico","arso","artefice","arzillo","asciutto","ascolto","asepsi","asettico","asfalto","asino","asola","aspirato","aspro","assaggio","asse","assoluto","assurdo","asta","astenuto","astice","astratto","atavico","ateismo","atomico","atono","attesa","attivare","attorno","attrito","attuale","ausilio","austria","autista","autonomo","autunno","avanzato","avere","avvenire","avviso","avvolgere","azione","azoto","azzimo","azzurro","babele","baccano","bacino","baco","badessa","badilata","bagnato","baita","balcone","baldo","balena","ballata","balzano","bambino","bandire","baraonda","barbaro","barca","baritono","barlume","barocco","basilico","basso","batosta","battuto","baule","bava","bavosa","becco","beffa","belgio","belva","benda","benevole","benigno","benzina","bere","berlina","beta","bibita","bici","bidone","bifido","biga","bilancia","bimbo","binocolo","biologo","bipede","bipolare","birbante","birra","biscotto","bisesto","bisnonno","bisonte","bisturi","bizzarro","blando","blatta","bollito","bonifico","bordo","bosco","botanico","bottino","bozzolo","braccio","bradipo","brama","branca","bravura","bretella","brevetto","brezza","briglia","brillante","brindare","broccolo","brodo","bronzina","brullo","bruno","bubbone","buca","budino","buffone","buio","bulbo","buono","burlone","burrasca","bussola","busta","cadetto","caduco","calamaro","calcolo","calesse","calibro","calmo","caloria","cambusa","camerata","camicia","cammino","camola","campale","canapa","candela","cane","canino","canotto","cantina","capace","capello","capitolo","capogiro","cappero","capra","capsula","carapace","carcassa","cardo","carisma","carovana","carretto","cartolina","casaccio","cascata","caserma","caso","cassone","castello","casuale","catasta","catena","catrame","cauto","cavillo","cedibile","cedrata","cefalo","celebre","cellulare","cena","cenone","centesimo","ceramica","cercare","certo","cerume","cervello","cesoia","cespo","ceto","chela","chiaro","chicca","chiedere","chimera","china","chirurgo","chitarra","ciao","ciclismo","cifrare","cigno","cilindro","ciottolo","circa","cirrosi","citrico","cittadino","ciuffo","civetta","civile","classico","clinica","cloro","cocco","codardo","codice","coerente","cognome","collare","colmato","colore","colposo","coltivato","colza","coma","cometa","commando","comodo","computer","comune","conciso","condurre","conferma","congelare","coniuge","connesso","conoscere","consumo","continuo","convegno","coperto","copione","coppia","copricapo","corazza","cordata","coricato","cornice","corolla","corpo","corredo","corsia","cortese","cosmico","costante","cottura","covato","cratere","cravatta","creato","credere","cremoso","crescita","creta","criceto","crinale","crisi","critico","croce","cronaca","crostata","cruciale","crusca","cucire","cuculo","cugino","cullato","cupola","curatore","cursore","curvo","cuscino","custode","dado","daino","dalmata","damerino","daniela","dannoso","danzare","datato","davanti","davvero","debutto","decennio","deciso","declino","decollo","decreto","dedicato","definito","deforme","degno","delegare","delfino","delirio","delta","demenza","denotato","dentro","deposito","derapata","derivare","deroga","descritto","deserto","desiderio","desumere","detersivo","devoto","diametro","dicembre","diedro","difeso","diffuso","digerire","digitale","diluvio","dinamico","dinnanzi","dipinto","diploma","dipolo","diradare","dire","dirotto","dirupo","disagio","discreto","disfare","disgelo","disposto","distanza","disumano","dito","divano","divelto","dividere","divorato","doblone","docente","doganale","dogma","dolce","domato","domenica","dominare","dondolo","dono","dormire","dote","dottore","dovuto","dozzina","drago","druido","dubbio","dubitare","ducale","duna","duomo","duplice","duraturo","ebano","eccesso","ecco","eclissi","economia","edera","edicola","edile","editoria","educare","egemonia","egli","egoismo","egregio","elaborato","elargire","elegante","elencato","eletto","elevare","elfico","elica","elmo","elsa","eluso","emanato","emblema","emesso","emiro","emotivo","emozione","empirico","emulo","endemico","enduro","energia","enfasi","enoteca","entrare","enzima","epatite","epilogo","episodio","epocale","eppure","equatore","erario","erba","erboso","erede","eremita","erigere","ermetico","eroe","erosivo","errante","esagono","esame","esanime","esaudire","esca","esempio","esercito","esibito","esigente","esistere","esito","esofago","esortato","esoso","espanso","espresso","essenza","esso","esteso","estimare","estonia","estroso","esultare","etilico","etnico","etrusco","etto","euclideo","europa","evaso","evidenza","evitato","evoluto","evviva","fabbrica","faccenda","fachiro","falco","famiglia","fanale","fanfara","fango","fantasma","fare","farfalla","farinoso","farmaco","fascia","fastoso","fasullo","faticare","fato","favoloso","febbre","fecola","fede","fegato","felpa","feltro","femmina","fendere","fenomeno","fermento","ferro","fertile","fessura","festivo","fetta","feudo","fiaba","fiducia","fifa","figurato","filo","finanza","finestra","finire","fiore","fiscale","fisico","fiume","flacone","flamenco","flebo","flemma","florido","fluente","fluoro","fobico","focaccia","focoso","foderato","foglio","folata","folclore","folgore","fondente","fonetico","fonia","fontana","forbito","forchetta","foresta","formica","fornaio","foro","fortezza","forzare","fosfato","fosso","fracasso","frana","frassino","fratello","freccetta","frenata","fresco","frigo","frollino","fronde","frugale","frutta","fucilata","fucsia","fuggente","fulmine","fulvo","fumante","fumetto","fumoso","fune","funzione","fuoco","furbo","furgone","furore","fuso","futile","gabbiano","gaffe","galateo","gallina","galoppo","gambero","gamma","garanzia","garbo","garofano","garzone","gasdotto","gasolio","gastrico","gatto","gaudio","gazebo","gazzella","geco","gelatina","gelso","gemello","gemmato","gene","genitore","gennaio","genotipo","gergo","ghepardo","ghiaccio","ghisa","giallo","gilda","ginepro","giocare","gioiello","giorno","giove","girato","girone","gittata","giudizio","giurato","giusto","globulo","glutine","gnomo","gobba","golf","gomito","gommone","gonfio","gonna","governo","gracile","grado","grafico","grammo","grande","grattare","gravoso","grazia","greca","gregge","grifone","grigio","grinza","grotta","gruppo","guadagno","guaio","guanto","guardare","gufo","guidare","ibernato","icona","identico","idillio","idolo","idra","idrico","idrogeno","igiene","ignaro","ignorato","ilare","illeso","illogico","illudere","imballo","imbevuto","imbocco","imbuto","immane","immerso","immolato","impacco","impeto","impiego","importo","impronta","inalare","inarcare","inattivo","incanto","incendio","inchino","incisivo","incluso","incontro","incrocio","incubo","indagine","india","indole","inedito","infatti","infilare","inflitto","ingaggio","ingegno","inglese","ingordo","ingrosso","innesco","inodore","inoltrare","inondato","insano","insetto","insieme","insonnia","insulina","intasato","intero","intonaco","intuito","inumidire","invalido","invece","invito","iperbole","ipnotico","ipotesi","ippica","iride","irlanda","ironico","irrigato","irrorare","isolato","isotopo","isterico","istituto","istrice","italia","iterare","labbro","labirinto","lacca","lacerato","lacrima","lacuna","laddove","lago","lampo","lancetta","lanterna","lardoso","larga","laringe","lastra","latenza","latino","lattuga","lavagna","lavoro","legale","leggero","lembo","lentezza","lenza","leone","lepre","lesivo","lessato","lesto","letterale","leva","levigato","libero","lido","lievito","lilla","limatura","limitare","limpido","lineare","lingua","liquido","lira","lirica","lisca","lite","litigio","livrea","locanda","lode","logica","lombare","londra","longevo","loquace","lorenzo","loto","lotteria","luce","lucidato","lumaca","luminoso","lungo","lupo","luppolo","lusinga","lusso","lutto","macabro","macchina","macero","macinato","madama","magico","maglia","magnete","magro","maiolica","malafede","malgrado","malinteso","malsano","malto","malumore","mana","mancia","mandorla","mangiare","manifesto","mannaro","manovra","mansarda","mantide","manubrio","mappa","maratona","marcire","maretta","marmo","marsupio","maschera","massaia","mastino","materasso","matricola","mattone","maturo","mazurca","meandro","meccanico","mecenate","medesimo","meditare","mega","melassa","melis","melodia","meninge","meno","mensola","mercurio","merenda","merlo","meschino","mese","messere","mestolo","metallo","metodo","mettere","miagolare","mica","micelio","michele","microbo","midollo","miele","migliore","milano","milite","mimosa","minerale","mini","minore","mirino","mirtillo","miscela","missiva","misto","misurare","mitezza","mitigare","mitra","mittente","mnemonico","modello","modifica","modulo","mogano","mogio","mole","molosso","monastero","monco","mondina","monetario","monile","monotono","monsone","montato","monviso","mora","mordere","morsicato","mostro","motivato","motosega","motto","movenza","movimento","mozzo","mucca","mucosa","muffa","mughetto","mugnaio","mulatto","mulinello","multiplo","mummia","munto","muovere","murale","musa","muscolo","musica","mutevole","muto","nababbo","nafta","nanometro","narciso","narice","narrato","nascere","nastrare","naturale","nautica","naviglio","nebulosa","necrosi","negativo","negozio","nemmeno","neofita","neretto","nervo","nessuno","nettuno","neutrale","neve","nevrotico","nicchia","ninfa","nitido","nobile","nocivo","nodo","nome","nomina","nordico","normale","norvegese","nostrano","notare","notizia","notturno","novella","nucleo","nulla","numero","nuovo","nutrire","nuvola","nuziale","oasi","obbedire","obbligo","obelisco","oblio","obolo","obsoleto","occasione","occhio","occidente","occorrere","occultare","ocra","oculato","odierno","odorare","offerta","offrire","offuscato","oggetto","oggi","ognuno","olandese","olfatto","oliato","oliva","ologramma","oltre","omaggio","ombelico","ombra","omega","omissione","ondoso","onere","onice","onnivoro","onorevole","onta","operato","opinione","opposto","oracolo","orafo","ordine","orecchino","orefice","orfano","organico","origine","orizzonte","orma","ormeggio","ornativo","orologio","orrendo","orribile","ortensia","ortica","orzata","orzo","osare","oscurare","osmosi","ospedale","ospite","ossa","ossidare","ostacolo","oste","otite","otre","ottagono","ottimo","ottobre","ovale","ovest","ovino","oviparo","ovocito","ovunque","ovviare","ozio","pacchetto","pace","pacifico","padella","padrone","paese","paga","pagina","palazzina","palesare","pallido","palo","palude","pandoro","pannello","paolo","paonazzo","paprica","parabola","parcella","parere","pargolo","pari","parlato","parola","partire","parvenza","parziale","passivo","pasticca","patacca","patologia","pattume","pavone","peccato","pedalare","pedonale","peggio","peloso","penare","pendice","penisola","pennuto","penombra","pensare","pentola","pepe","pepita","perbene","percorso","perdonato","perforare","pergamena","periodo","permesso","perno","perplesso","persuaso","pertugio","pervaso","pesatore","pesista","peso","pestifero","petalo","pettine","petulante","pezzo","piacere","pianta","piattino","piccino","picozza","piega","pietra","piffero","pigiama","pigolio","pigro","pila","pilifero","pillola","pilota","pimpante","pineta","pinna","pinolo","pioggia","piombo","piramide","piretico","pirite","pirolisi","pitone","pizzico","placebo","planare","plasma","platano","plenario","pochezza","poderoso","podismo","poesia","poggiare","polenta","poligono","pollice","polmonite","polpetta","polso","poltrona","polvere","pomice","pomodoro","ponte","popoloso","porfido","poroso","porpora","porre","portata","posa","positivo","possesso","postulato","potassio","potere","pranzo","prassi","pratica","precluso","predica","prefisso","pregiato","prelievo","premere","prenotare","preparato","presenza","pretesto","prevalso","prima","principe","privato","problema","procura","produrre","profumo","progetto","prolunga","promessa","pronome","proposta","proroga","proteso","prova","prudente","prugna","prurito","psiche","pubblico","pudica","pugilato","pugno","pulce","pulito","pulsante","puntare","pupazzo","pupilla","puro","quadro","qualcosa","quasi","querela","quota","raccolto","raddoppio","radicale","radunato","raffica","ragazzo","ragione","ragno","ramarro","ramingo","ramo","randagio","rantolare","rapato","rapina","rappreso","rasatura","raschiato","rasente","rassegna","rastrello","rata","ravveduto","reale","recepire","recinto","recluta","recondito","recupero","reddito","redimere","regalato","registro","regola","regresso","relazione","remare","remoto","renna","replica","reprimere","reputare","resa","residente","responso","restauro","rete","retina","retorica","rettifica","revocato","riassunto","ribadire","ribelle","ribrezzo","ricarica","ricco","ricevere","riciclato","ricordo","ricreduto","ridicolo","ridurre","rifasare","riflesso","riforma","rifugio","rigare","rigettato","righello","rilassato","rilevato","rimanere","rimbalzo","rimedio","rimorchio","rinascita","rincaro","rinforzo","rinnovo","rinomato","rinsavito","rintocco","rinuncia","rinvenire","riparato","ripetuto","ripieno","riportare","ripresa","ripulire","risata","rischio","riserva","risibile","riso","rispetto","ristoro","risultato","risvolto","ritardo","ritegno","ritmico","ritrovo","riunione","riva","riverso","rivincita","rivolto","rizoma","roba","robotico","robusto","roccia","roco","rodaggio","rodere","roditore","rogito","rollio","romantico","rompere","ronzio","rosolare","rospo","rotante","rotondo","rotula","rovescio","rubizzo","rubrica","ruga","rullino","rumine","rumoroso","ruolo","rupe","russare","rustico","sabato","sabbiare","sabotato","sagoma","salasso","saldatura","salgemma","salivare","salmone","salone","saltare","saluto","salvo","sapere","sapido","saporito","saraceno","sarcasmo","sarto","sassoso","satellite","satira","satollo","saturno","savana","savio","saziato","sbadiglio","sbalzo","sbancato","sbarra","sbattere","sbavare","sbendare","sbirciare","sbloccato","sbocciato","sbrinare","sbruffone","sbuffare","scabroso","scadenza","scala","scambiare","scandalo","scapola","scarso","scatenare","scavato","scelto","scenico","scettro","scheda","schiena","sciarpa","scienza","scindere","scippo","sciroppo","scivolo","sclerare","scodella","scolpito","scomparto","sconforto","scoprire","scorta","scossone","scozzese","scriba","scrollare","scrutinio","scuderia","scultore","scuola","scuro","scusare","sdebitare","sdoganare","seccatura","secondo","sedano","seggiola","segnalato","segregato","seguito","selciato","selettivo","sella","selvaggio","semaforo","sembrare","seme","seminato","sempre","senso","sentire","sepolto","sequenza","serata","serbato","sereno","serio","serpente","serraglio","servire","sestina","setola","settimana","sfacelo","sfaldare","sfamato","sfarzoso","sfaticato","sfera","sfida","sfilato","sfinge","sfocato","sfoderare","sfogo","sfoltire","sforzato","sfratto","sfruttato","sfuggito","sfumare","sfuso","sgabello","sgarbato","sgonfiare","sgorbio","sgrassato","sguardo","sibilo","siccome","sierra","sigla","signore","silenzio","sillaba","simbolo","simpatico","simulato","sinfonia","singolo","sinistro","sino","sintesi","sinusoide","sipario","sisma","sistole","situato","slitta","slogatura","sloveno","smarrito","smemorato","smentito","smeraldo","smilzo","smontare","smottato","smussato","snellire","snervato","snodo","sobbalzo","sobrio","soccorso","sociale","sodale","soffitto","sogno","soldato","solenne","solido","sollazzo","solo","solubile","solvente","somatico","somma","sonda","sonetto","sonnifero","sopire","soppeso","sopra","sorgere","sorpasso","sorriso","sorso","sorteggio","sorvolato","sospiro","sosta","sottile","spada","spalla","spargere","spatola","spavento","spazzola","specie","spedire","spegnere","spelatura","speranza","spessore","spettrale","spezzato","spia","spigoloso","spillato","spinoso","spirale","splendido","sportivo","sposo","spranga","sprecare","spronato","spruzzo","spuntino","squillo","sradicare","srotolato","stabile","stacco","staffa","stagnare","stampato","stantio","starnuto","stasera","statuto","stelo","steppa","sterzo","stiletto","stima","stirpe","stivale","stizzoso","stonato","storico","strappo","stregato","stridulo","strozzare","strutto","stuccare","stufo","stupendo","subentro","succoso","sudore","suggerito","sugo","sultano","suonare","superbo","supporto","surgelato","surrogato","sussurro","sutura","svagare","svedese","sveglio","svelare","svenuto","svezia","sviluppo","svista","svizzera","svolta","svuotare","tabacco","tabulato","tacciare","taciturno","tale","talismano","tampone","tannino","tara","tardivo","targato","tariffa","tarpare","tartaruga","tasto","tattico","taverna","tavolata","tazza","teca","tecnico","telefono","temerario","tempo","temuto","tendone","tenero","tensione","tentacolo","teorema","terme","terrazzo","terzetto","tesi","tesserato","testato","tetro","tettoia","tifare","tigella","timbro","tinto","tipico","tipografo","tiraggio","tiro","titanio","titolo","titubante","tizio","tizzone","toccare","tollerare","tolto","tombola","tomo","tonfo","tonsilla","topazio","topologia","toppa","torba","tornare","torrone","tortora","toscano","tossire","tostatura","totano","trabocco","trachea","trafila","tragedia","tralcio","tramonto","transito","trapano","trarre","trasloco","trattato","trave","treccia","tremolio","trespolo","tributo","tricheco","trifoglio","trillo","trincea","trio","tristezza","triturato","trivella","tromba","trono","troppo","trottola","trovare","truccato","tubatura","tuffato","tulipano","tumulto","tunisia","turbare","turchino","tuta","tutela","ubicato","uccello","uccisore","udire","uditivo","uffa","ufficio","uguale","ulisse","ultimato","umano","umile","umorismo","uncinetto","ungere","ungherese","unicorno","unificato","unisono","unitario","unte","uovo","upupa","uragano","urgenza","urlo","usanza","usato","uscito","usignolo","usuraio","utensile","utilizzo","utopia","vacante","vaccinato","vagabondo","vagliato","valanga","valgo","valico","valletta","valoroso","valutare","valvola","vampata","vangare","vanitoso","vano","vantaggio","vanvera","vapore","varano","varcato","variante","vasca","vedetta","vedova","veduto","vegetale","veicolo","velcro","velina","velluto","veloce","venato","vendemmia","vento","verace","verbale","vergogna","verifica","vero","verruca","verticale","vescica","vessillo","vestale","veterano","vetrina","vetusto","viandante","vibrante","vicenda","vichingo","vicinanza","vidimare","vigilia","vigneto","vigore","vile","villano","vimini","vincitore","viola","vipera","virgola","virologo","virulento","viscoso","visione","vispo","vissuto","visura","vita","vitello","vittima","vivanda","vivido","viziare","voce","voga","volatile","volere","volpe","voragine","vulcano","zampogna","zanna","zappato","zattera","zavorra","zefiro","zelante","zelo","zenzero","zerbino","zibetto","zinco","zircone","zitto","zolla","zotico","zucchero","zufolo","zulu","zuppa"]')},7967:e=>{"use strict";e.exports=JSON.parse('["\u3042\u3044\u3053\u304f\u3057\u3093","\u3042\u3044\u3055\u3064","\u3042\u3044\u305f\u3099","\u3042\u304a\u305d\u3099\u3089","\u3042\u304b\u3061\u3083\u3093","\u3042\u304d\u308b","\u3042\u3051\u304b\u3099\u305f","\u3042\u3051\u308b","\u3042\u3053\u304b\u3099\u308c\u308b","\u3042\u3055\u3044","\u3042\u3055\u3072","\u3042\u3057\u3042\u3068","\u3042\u3057\u3099\u308f\u3046","\u3042\u3059\u3099\u304b\u308b","\u3042\u3059\u3099\u304d","\u3042\u305d\u3075\u3099","\u3042\u305f\u3048\u308b","\u3042\u305f\u305f\u3081\u308b","\u3042\u305f\u308a\u307e\u3048","\u3042\u305f\u308b","\u3042\u3064\u3044","\u3042\u3064\u304b\u3046","\u3042\u3063\u3057\u3085\u304f","\u3042\u3064\u307e\u308a","\u3042\u3064\u3081\u308b","\u3042\u3066\u306a","\u3042\u3066\u306f\u307e\u308b","\u3042\u3072\u308b","\u3042\u3075\u3099\u3089","\u3042\u3075\u3099\u308b","\u3042\u3075\u308c\u308b","\u3042\u307e\u3044","\u3042\u307e\u3068\u3099","\u3042\u307e\u3084\u304b\u3059","\u3042\u307e\u308a","\u3042\u307f\u3082\u306e","\u3042\u3081\u308a\u304b","\u3042\u3084\u307e\u308b","\u3042\u3086\u3080","\u3042\u3089\u3044\u304f\u3099\u307e","\u3042\u3089\u3057","\u3042\u3089\u3059\u3057\u3099","\u3042\u3089\u305f\u3081\u308b","\u3042\u3089\u3086\u308b","\u3042\u3089\u308f\u3059","\u3042\u308a\u304b\u3099\u3068\u3046","\u3042\u308f\u305b\u308b","\u3042\u308f\u3066\u308b","\u3042\u3093\u3044","\u3042\u3093\u304b\u3099\u3044","\u3042\u3093\u3053","\u3042\u3093\u305b\u3099\u3093","\u3042\u3093\u3066\u3044","\u3042\u3093\u306a\u3044","\u3042\u3093\u307e\u308a","\u3044\u3044\u305f\u3099\u3059","\u3044\u304a\u3093","\u3044\u304b\u3099\u3044","\u3044\u304b\u3099\u304f","\u3044\u304d\u304a\u3044","\u3044\u304d\u306a\u308a","\u3044\u304d\u3082\u306e","\u3044\u304d\u308b","\u3044\u304f\u3057\u3099","\u3044\u304f\u3075\u3099\u3093","\u3044\u3051\u306f\u3099\u306a","\u3044\u3051\u3093","\u3044\u3053\u3046","\u3044\u3053\u304f","\u3044\u3053\u3064","\u3044\u3055\u307e\u3057\u3044","\u3044\u3055\u3093","\u3044\u3057\u304d","\u3044\u3057\u3099\u3085\u3046","\u3044\u3057\u3099\u3087\u3046","\u3044\u3057\u3099\u308f\u308b","\u3044\u3059\u3099\u307f","\u3044\u3059\u3099\u308c","\u3044\u305b\u3044","\u3044\u305b\u3048\u3072\u3099","\u3044\u305b\u304b\u3044","\u3044\u305b\u304d","\u3044\u305b\u3099\u3093","\u3044\u305d\u3046\u308d\u3046","\u3044\u305d\u304b\u3099\u3057\u3044","\u3044\u305f\u3099\u3044","\u3044\u305f\u3099\u304f","\u3044\u305f\u3059\u3099\u3089","\u3044\u305f\u307f","\u3044\u305f\u308a\u3042","\u3044\u3061\u304a\u3046","\u3044\u3061\u3057\u3099","\u3044\u3061\u3068\u3099","\u3044\u3061\u306f\u3099","\u3044\u3061\u3075\u3099","\u3044\u3061\u308a\u3085\u3046","\u3044\u3064\u304b","\u3044\u3063\u3057\u3085\u3093","\u3044\u3063\u305b\u3044","\u3044\u3063\u305d\u3046","\u3044\u3063\u305f\u3093","\u3044\u3063\u3061","\u3044\u3063\u3066\u3044","\u3044\u3063\u307b\u309a\u3046","\u3044\u3066\u3055\u3099","\u3044\u3066\u3093","\u3044\u3068\u3099\u3046","\u3044\u3068\u3053","\u3044\u306a\u3044","\u3044\u306a\u304b","\u3044\u306d\u3080\u308a","\u3044\u306e\u3061","\u3044\u306e\u308b","\u3044\u306f\u3064","\u3044\u306f\u3099\u308b","\u3044\u306f\u3093","\u3044\u3072\u3099\u304d","\u3044\u3072\u3093","\u3044\u3075\u304f","\u3044\u3078\u3093","\u3044\u307b\u3046","\u3044\u307f\u3093","\u3044\u3082\u3046\u3068","\u3044\u3082\u305f\u308c","\u3044\u3082\u308a","\u3044\u3084\u304b\u3099\u308b","\u3044\u3084\u3059","\u3044\u3088\u304b\u3093","\u3044\u3088\u304f","\u3044\u3089\u3044","\u3044\u3089\u3059\u3068","\u3044\u308a\u304f\u3099\u3061","\u3044\u308a\u3087\u3046","\u3044\u308c\u3044","\u3044\u308c\u3082\u306e","\u3044\u308c\u308b","\u3044\u308d\u3048\u3093\u3072\u309a\u3064","\u3044\u308f\u3044","\u3044\u308f\u3046","\u3044\u308f\u304b\u3093","\u3044\u308f\u306f\u3099","\u3044\u308f\u3086\u308b","\u3044\u3093\u3051\u3099\u3093\u307e\u3081","\u3044\u3093\u3055\u3064","\u3044\u3093\u3057\u3087\u3046","\u3044\u3093\u3088\u3046","\u3046\u3048\u304d","\u3046\u3048\u308b","\u3046\u304a\u3055\u3099","\u3046\u304b\u3099\u3044","\u3046\u304b\u3075\u3099","\u3046\u304b\u3078\u3099\u308b","\u3046\u304d\u308f","\u3046\u304f\u3089\u3044\u306a","\u3046\u304f\u308c\u308c","\u3046\u3051\u305f\u307e\u308f\u308b","\u3046\u3051\u3064\u3051","\u3046\u3051\u3068\u308b","\u3046\u3051\u3082\u3064","\u3046\u3051\u308b","\u3046\u3053\u3099\u304b\u3059","\u3046\u3053\u3099\u304f","\u3046\u3053\u3093","\u3046\u3055\u304d\u3099","\u3046\u3057\u306a\u3046","\u3046\u3057\u308d\u304b\u3099\u307f","\u3046\u3059\u3044","\u3046\u3059\u304d\u3099","\u3046\u3059\u304f\u3099\u3089\u3044","\u3046\u3059\u3081\u308b","\u3046\u305b\u3064","\u3046\u3061\u3042\u308f\u305b","\u3046\u3061\u304b\u3099\u308f","\u3046\u3061\u304d","\u3046\u3061\u3085\u3046","\u3046\u3063\u304b\u308a","\u3046\u3064\u304f\u3057\u3044","\u3046\u3063\u305f\u3048\u308b","\u3046\u3064\u308b","\u3046\u3068\u3099\u3093","\u3046\u306a\u304d\u3099","\u3046\u306a\u3057\u3099","\u3046\u306a\u3059\u3099\u304f","\u3046\u306a\u308b","\u3046\u306d\u308b","\u3046\u306e\u3046","\u3046\u3075\u3099\u3051\u3099","\u3046\u3075\u3099\u3053\u3099\u3048","\u3046\u307e\u308c\u308b","\u3046\u3081\u308b","\u3046\u3082\u3046","\u3046\u3084\u307e\u3046","\u3046\u3088\u304f","\u3046\u3089\u304b\u3099\u3048\u3059","\u3046\u3089\u304f\u3099\u3061","\u3046\u3089\u306a\u3044","\u3046\u308a\u3042\u3051\u3099","\u3046\u308a\u304d\u308c","\u3046\u308b\u3055\u3044","\u3046\u308c\u3057\u3044","\u3046\u308c\u3086\u304d","\u3046\u308c\u308b","\u3046\u308d\u3053","\u3046\u308f\u304d","\u3046\u308f\u3055","\u3046\u3093\u3053\u3046","\u3046\u3093\u3061\u3093","\u3046\u3093\u3066\u3093","\u3046\u3093\u3068\u3099\u3046","\u3048\u3044\u3048\u3093","\u3048\u3044\u304b\u3099","\u3048\u3044\u304d\u3087\u3046","\u3048\u3044\u3053\u3099","\u3048\u3044\u305b\u3044","\u3048\u3044\u3075\u3099\u3093","\u3048\u3044\u3088\u3046","\u3048\u3044\u308f","\u3048\u304a\u308a","\u3048\u304b\u3099\u304a","\u3048\u304b\u3099\u304f","\u3048\u304d\u305f\u3044","\u3048\u304f\u305b\u308b","\u3048\u3057\u3083\u304f","\u3048\u3059\u3066","\u3048\u3064\u3089\u3093","\u3048\u306e\u304f\u3099","\u3048\u307b\u3046\u307e\u304d","\u3048\u307b\u3093","\u3048\u307e\u304d","\u3048\u3082\u3057\u3099","\u3048\u3082\u306e","\u3048\u3089\u3044","\u3048\u3089\u3075\u3099","\u3048\u308a\u3042","\u3048\u3093\u3048\u3093","\u3048\u3093\u304b\u3044","\u3048\u3093\u304d\u3099","\u3048\u3093\u3051\u3099\u304d","\u3048\u3093\u3057\u3085\u3046","\u3048\u3093\u305b\u3099\u3064","\u3048\u3093\u305d\u304f","\u3048\u3093\u3061\u3087\u3046","\u3048\u3093\u3068\u3064","\u304a\u3044\u304b\u3051\u308b","\u304a\u3044\u3053\u3059","\u304a\u3044\u3057\u3044","\u304a\u3044\u3064\u304f","\u304a\u3046\u3048\u3093","\u304a\u3046\u3055\u307e","\u304a\u3046\u3057\u3099","\u304a\u3046\u305b\u3064","\u304a\u3046\u305f\u3044","\u304a\u3046\u3075\u304f","\u304a\u3046\u3078\u3099\u3044","\u304a\u3046\u3088\u3046","\u304a\u3048\u308b","\u304a\u304a\u3044","\u304a\u304a\u3046","\u304a\u304a\u3068\u3099\u304a\u308a","\u304a\u304a\u3084","\u304a\u304a\u3088\u305d","\u304a\u304b\u3048\u308a","\u304a\u304b\u3059\u3099","\u304a\u304b\u3099\u3080","\u304a\u304b\u308f\u308a","\u304a\u304d\u3099\u306a\u3046","\u304a\u304d\u308b","\u304a\u304f\u3055\u307e","\u304a\u304f\u3057\u3099\u3087\u3046","\u304a\u304f\u308a\u304b\u3099\u306a","\u304a\u304f\u308b","\u304a\u304f\u308c\u308b","\u304a\u3053\u3059","\u304a\u3053\u306a\u3046","\u304a\u3053\u308b","\u304a\u3055\u3048\u308b","\u304a\u3055\u306a\u3044","\u304a\u3055\u3081\u308b","\u304a\u3057\u3044\u308c","\u304a\u3057\u3048\u308b","\u304a\u3057\u3099\u304d\u3099","\u304a\u3057\u3099\u3055\u3093","\u304a\u3057\u3083\u308c","\u304a\u305d\u3089\u304f","\u304a\u305d\u308f\u308b","\u304a\u305f\u304b\u3099\u3044","\u304a\u305f\u304f","\u304a\u305f\u3099\u3084\u304b","\u304a\u3061\u3064\u304f","\u304a\u3063\u3068","\u304a\u3064\u308a","\u304a\u3066\u3099\u304b\u3051","\u304a\u3068\u3057\u3082\u306e","\u304a\u3068\u306a\u3057\u3044","\u304a\u3068\u3099\u308a","\u304a\u3068\u3099\u308d\u304b\u3059","\u304a\u306f\u3099\u3055\u3093","\u304a\u307e\u3044\u308a","\u304a\u3081\u3066\u3099\u3068\u3046","\u304a\u3082\u3044\u3066\u3099","\u304a\u3082\u3046","\u304a\u3082\u305f\u3044","\u304a\u3082\u3061\u3083","\u304a\u3084\u3064","\u304a\u3084\u3086\u3072\u3099","\u304a\u3088\u307b\u3099\u3059","\u304a\u3089\u3093\u305f\u3099","\u304a\u308d\u3059","\u304a\u3093\u304b\u3099\u304f","\u304a\u3093\u3051\u3044","\u304a\u3093\u3057\u3083","\u304a\u3093\u305b\u3093","\u304a\u3093\u305f\u3099\u3093","\u304a\u3093\u3061\u3085\u3046","\u304a\u3093\u3068\u3099\u3051\u3044","\u304b\u3042\u3064","\u304b\u3044\u304b\u3099","\u304b\u3099\u3044\u304d","\u304b\u3099\u3044\u3051\u3093","\u304b\u3099\u3044\u3053\u3046","\u304b\u3044\u3055\u3064","\u304b\u3044\u3057\u3083","\u304b\u3044\u3059\u3044\u3088\u304f","\u304b\u3044\u305b\u3099\u3093","\u304b\u3044\u305d\u3099\u3046\u3068\u3099","\u304b\u3044\u3064\u3046","\u304b\u3044\u3066\u3093","\u304b\u3044\u3068\u3046","\u304b\u3044\u3075\u304f","\u304b\u3099\u3044\u3078\u304d","\u304b\u3044\u307b\u3046","\u304b\u3044\u3088\u3046","\u304b\u3099\u3044\u3089\u3044","\u304b\u3044\u308f","\u304b\u3048\u308b","\u304b\u304a\u308a","\u304b\u304b\u3048\u308b","\u304b\u304b\u3099\u304f","\u304b\u304b\u3099\u3057","\u304b\u304b\u3099\u307f","\u304b\u304f\u3053\u3099","\u304b\u304f\u3068\u304f","\u304b\u3055\u3099\u308b","\u304b\u3099\u305d\u3099\u3046","\u304b\u305f\u3044","\u304b\u305f\u3061","\u304b\u3099\u3061\u3087\u3046","\u304b\u3099\u3063\u304d\u3085\u3046","\u304b\u3099\u3063\u3053\u3046","\u304b\u3099\u3063\u3055\u3093","\u304b\u3099\u3063\u3057\u3087\u3046","\u304b\u306a\u3055\u3099\u308f\u3057","\u304b\u306e\u3046","\u304b\u3099\u306f\u304f","\u304b\u3075\u3099\u304b","\u304b\u307b\u3046","\u304b\u307b\u3053\u3099","\u304b\u307e\u3046","\u304b\u307e\u307b\u3099\u3053","\u304b\u3081\u308c\u304a\u3093","\u304b\u3086\u3044","\u304b\u3088\u3046\u3072\u3099","\u304b\u3089\u3044","\u304b\u308b\u3044","\u304b\u308d\u3046","\u304b\u308f\u304f","\u304b\u308f\u3089","\u304b\u3099\u3093\u304b","\u304b\u3093\u3051\u3044","\u304b\u3093\u3053\u3046","\u304b\u3093\u3057\u3083","\u304b\u3093\u305d\u3046","\u304b\u3093\u305f\u3093","\u304b\u3093\u3061","\u304b\u3099\u3093\u306f\u3099\u308b","\u304d\u3042\u3044","\u304d\u3042\u3064","\u304d\u3044\u308d","\u304d\u3099\u3044\u3093","\u304d\u3046\u3044","\u304d\u3046\u3093","\u304d\u3048\u308b","\u304d\u304a\u3046","\u304d\u304a\u304f","\u304d\u304a\u3061","\u304d\u304a\u3093","\u304d\u304b\u3044","\u304d\u304b\u304f","\u304d\u304b\u3093\u3057\u3083","\u304d\u304d\u3066","\u304d\u304f\u306f\u3099\u308a","\u304d\u304f\u3089\u3051\u3099","\u304d\u3051\u3093\u305b\u3044","\u304d\u3053\u3046","\u304d\u3053\u3048\u308b","\u304d\u3053\u304f","\u304d\u3055\u3044","\u304d\u3055\u304f","\u304d\u3055\u307e","\u304d\u3055\u3089\u304d\u3099","\u304d\u3099\u3057\u3099\u304b\u304b\u3099\u304f","\u304d\u3099\u3057\u304d","\u304d\u3099\u3057\u3099\u305f\u3044\u3051\u3093","\u304d\u3099\u3057\u3099\u306b\u3063\u3066\u3044","\u304d\u3099\u3057\u3099\u3085\u3064\u3057\u3083","\u304d\u3059\u3046","\u304d\u305b\u3044","\u304d\u305b\u304d","\u304d\u305b\u3064","\u304d\u305d\u3046","\u304d\u305d\u3099\u304f","\u304d\u305d\u3099\u3093","\u304d\u305f\u3048\u308b","\u304d\u3061\u3087\u3046","\u304d\u3064\u3048\u3093","\u304d\u3099\u3063\u3061\u308a","\u304d\u3064\u3064\u304d","\u304d\u3064\u306d","\u304d\u3066\u3044","\u304d\u3068\u3099\u3046","\u304d\u3068\u3099\u304f","\u304d\u306a\u3044","\u304d\u306a\u304b\u3099","\u304d\u306a\u3053","\u304d\u306c\u3053\u3099\u3057","\u304d\u306d\u3093","\u304d\u306e\u3046","\u304d\u306e\u3057\u305f","\u304d\u306f\u304f","\u304d\u3072\u3099\u3057\u3044","\u304d\u3072\u3093","\u304d\u3075\u304f","\u304d\u3075\u3099\u3093","\u304d\u307b\u3099\u3046","\u304d\u307b\u3093","\u304d\u307e\u308b","\u304d\u307f\u3064","\u304d\u3080\u3059\u3099\u304b\u3057\u3044","\u304d\u3081\u308b","\u304d\u3082\u305f\u3099\u3081\u3057","\u304d\u3082\u3061","\u304d\u3082\u306e","\u304d\u3083\u304f","\u304d\u3084\u304f","\u304d\u3099\u3085\u3046\u306b\u304f","\u304d\u3088\u3046","\u304d\u3087\u3046\u308a\u3085\u3046","\u304d\u3089\u3044","\u304d\u3089\u304f","\u304d\u308a\u3093","\u304d\u308c\u3044","\u304d\u308c\u3064","\u304d\u308d\u304f","\u304d\u3099\u308d\u3093","\u304d\u308f\u3081\u308b","\u304d\u3099\u3093\u3044\u308d","\u304d\u3093\u304b\u304f\u3057\u3099","\u304d\u3093\u3057\u3099\u3087","\u304d\u3093\u3088\u3046\u3072\u3099","\u304f\u3099\u3042\u3044","\u304f\u3044\u3059\u3099","\u304f\u3046\u304b\u3093","\u304f\u3046\u304d","\u304f\u3046\u304f\u3099\u3093","\u304f\u3046\u3053\u3046","\u304f\u3099\u3046\u305b\u3044","\u304f\u3046\u305d\u3046","\u304f\u3099\u3046\u305f\u3089","\u304f\u3046\u3075\u304f","\u304f\u3046\u307b\u3099","\u304f\u304b\u3093","\u304f\u304d\u3087\u3046","\u304f\u3051\u3099\u3093","\u304f\u3099\u3053\u3046","\u304f\u3055\u3044","\u304f\u3055\u304d","\u304f\u3055\u306f\u3099\u306a","\u304f\u3055\u308b","\u304f\u3057\u3083\u307f","\u304f\u3057\u3087\u3046","\u304f\u3059\u306e\u304d","\u304f\u3059\u308a\u3086\u3072\u3099","\u304f\u305b\u3051\u3099","\u304f\u305b\u3093","\u304f\u3099\u305f\u3044\u3066\u304d","\u304f\u305f\u3099\u3055\u308b","\u304f\u305f\u3072\u3099\u308c\u308b","\u304f\u3061\u3053\u307f","\u304f\u3061\u3055\u304d","\u304f\u3064\u3057\u305f","\u304f\u3099\u3063\u3059\u308a","\u304f\u3064\u308d\u304f\u3099","\u304f\u3068\u3046\u3066\u3093","\u304f\u3068\u3099\u304f","\u304f\u306a\u3093","\u304f\u306d\u304f\u306d","\u304f\u306e\u3046","\u304f\u3075\u3046","\u304f\u307f\u3042\u308f\u305b","\u304f\u307f\u305f\u3066\u308b","\u304f\u3081\u308b","\u304f\u3084\u304f\u3057\u3087","\u304f\u3089\u3059","\u304f\u3089\u3078\u3099\u308b","\u304f\u308b\u307e","\u304f\u308c\u308b","\u304f\u308d\u3046","\u304f\u308f\u3057\u3044","\u304f\u3099\u3093\u304b\u3093","\u304f\u3099\u3093\u3057\u3087\u304f","\u304f\u3099\u3093\u305f\u3044","\u304f\u3099\u3093\u3066","\u3051\u3042\u306a","\u3051\u3044\u304b\u304f","\u3051\u3044\u3051\u3093","\u3051\u3044\u3053","\u3051\u3044\u3055\u3064","\u3051\u3099\u3044\u3057\u3099\u3085\u3064","\u3051\u3044\u305f\u3044","\u3051\u3099\u3044\u306e\u3046\u3057\u3099\u3093","\u3051\u3044\u308c\u304d","\u3051\u3044\u308d","\u3051\u304a\u3068\u3059","\u3051\u304a\u308a\u3082\u306e","\u3051\u3099\u304d\u304b","\u3051\u3099\u304d\u3051\u3099\u3093","\u3051\u3099\u304d\u305f\u3099\u3093","\u3051\u3099\u304d\u3061\u3093","\u3051\u3099\u304d\u3068\u3064","\u3051\u3099\u304d\u306f","\u3051\u3099\u304d\u3084\u304f","\u3051\u3099\u3053\u3046","\u3051\u3099\u3053\u304f\u3057\u3099\u3087\u3046","\u3051\u3099\u3055\u3099\u3044","\u3051\u3055\u304d","\u3051\u3099\u3055\u3099\u3093","\u3051\u3057\u304d","\u3051\u3057\u3053\u3099\u3080","\u3051\u3057\u3087\u3046","\u3051\u3099\u3059\u3068","\u3051\u305f\u306f\u3099","\u3051\u3061\u3083\u3063\u3075\u309a","\u3051\u3061\u3089\u3059","\u3051\u3064\u3042\u3064","\u3051\u3064\u3044","\u3051\u3064\u3048\u304d","\u3051\u3063\u3053\u3093","\u3051\u3064\u3057\u3099\u3087","\u3051\u3063\u305b\u304d","\u3051\u3063\u3066\u3044","\u3051\u3064\u307e\u3064","\u3051\u3099\u3064\u3088\u3046\u3072\u3099","\u3051\u3099\u3064\u308c\u3044","\u3051\u3064\u308d\u3093","\u3051\u3099\u3068\u3099\u304f","\u3051\u3068\u306f\u3099\u3059","\u3051\u3068\u308b","\u3051\u306a\u3051\u3099","\u3051\u306a\u3059","\u3051\u306a\u307f","\u3051\u306c\u304d","\u3051\u3099\u306d\u3064","\u3051\u306d\u3093","\u3051\u306f\u3044","\u3051\u3099\u3072\u3093","\u3051\u3075\u3099\u304b\u3044","\u3051\u3099\u307b\u3099\u304f","\u3051\u307e\u308a","\u3051\u307f\u304b\u308b","\u3051\u3080\u3057","\u3051\u3080\u308a","\u3051\u3082\u306e","\u3051\u3089\u3044","\u3051\u308d\u3051\u308d","\u3051\u308f\u3057\u3044","\u3051\u3093\u3044","\u3051\u3093\u3048\u3064","\u3051\u3093\u304a","\u3051\u3093\u304b","\u3051\u3099\u3093\u304d","\u3051\u3093\u3051\u3099\u3093","\u3051\u3093\u3053\u3046","\u3051\u3093\u3055\u304f","\u3051\u3093\u3057\u3085\u3046","\u3051\u3093\u3059\u3046","\u3051\u3099\u3093\u305d\u3046","\u3051\u3093\u3061\u304f","\u3051\u3093\u3066\u3044","\u3051\u3093\u3068\u3046","\u3051\u3093\u306a\u3044","\u3051\u3093\u306b\u3093","\u3051\u3099\u3093\u3075\u3099\u3064","\u3051\u3093\u307e","\u3051\u3093\u307f\u3093","\u3051\u3093\u3081\u3044","\u3051\u3093\u3089\u3093","\u3051\u3093\u308a","\u3053\u3042\u304f\u307e","\u3053\u3044\u306c","\u3053\u3044\u3072\u3099\u3068","\u3053\u3099\u3046\u3044","\u3053\u3046\u3048\u3093","\u3053\u3046\u304a\u3093","\u3053\u3046\u304b\u3093","\u3053\u3099\u3046\u304d\u3085\u3046","\u3053\u3099\u3046\u3051\u3044","\u3053\u3046\u3053\u3046","\u3053\u3046\u3055\u3044","\u3053\u3046\u3057\u3099","\u3053\u3046\u3059\u3044","\u3053\u3099\u3046\u305b\u3044","\u3053\u3046\u305d\u304f","\u3053\u3046\u305f\u3044","\u3053\u3046\u3061\u3083","\u3053\u3046\u3064\u3046","\u3053\u3046\u3066\u3044","\u3053\u3046\u3068\u3099\u3046","\u3053\u3046\u306a\u3044","\u3053\u3046\u306f\u3044","\u3053\u3099\u3046\u307b\u3046","\u3053\u3099\u3046\u307e\u3093","\u3053\u3046\u3082\u304f","\u3053\u3046\u308a\u3064","\u3053\u3048\u308b","\u3053\u304a\u308a","\u3053\u3099\u304b\u3044","\u3053\u3099\u304b\u3099\u3064","\u3053\u3099\u304b\u3093","\u3053\u304f\u3053\u3099","\u3053\u304f\u3055\u3044","\u3053\u304f\u3068\u3046","\u3053\u304f\u306a\u3044","\u3053\u304f\u306f\u304f","\u3053\u304f\u3099\u307e","\u3053\u3051\u3044","\u3053\u3051\u308b","\u3053\u3053\u306e\u304b","\u3053\u3053\u308d","\u3053\u3055\u3081","\u3053\u3057\u3064","\u3053\u3059\u3046","\u3053\u305b\u3044","\u3053\u305b\u304d","\u3053\u305b\u3099\u3093","\u3053\u305d\u305f\u3099\u3066","\u3053\u305f\u3044","\u3053\u305f\u3048\u308b","\u3053\u305f\u3064","\u3053\u3061\u3087\u3046","\u3053\u3063\u304b","\u3053\u3064\u3053\u3064","\u3053\u3064\u306f\u3099\u3093","\u3053\u3064\u3075\u3099","\u3053\u3066\u3044","\u3053\u3066\u3093","\u3053\u3068\u304b\u3099\u3089","\u3053\u3068\u3057","\u3053\u3068\u306f\u3099","\u3053\u3068\u308a","\u3053\u306a\u3053\u3099\u306a","\u3053\u306d\u3053\u306d","\u3053\u306e\u307e\u307e","\u3053\u306e\u307f","\u3053\u306e\u3088","\u3053\u3099\u306f\u3093","\u3053\u3072\u3064\u3057\u3099","\u3053\u3075\u3046","\u3053\u3075\u3093","\u3053\u307b\u3099\u308c\u308b","\u3053\u3099\u307e\u3042\u3075\u3099\u3089","\u3053\u307e\u304b\u3044","\u3053\u3099\u307e\u3059\u308a","\u3053\u307e\u3064\u306a","\u3053\u307e\u308b","\u3053\u3080\u304d\u3099\u3053","\u3053\u3082\u3057\u3099","\u3053\u3082\u3061","\u3053\u3082\u306e","\u3053\u3082\u3093","\u3053\u3084\u304f","\u3053\u3084\u307e","\u3053\u3086\u3046","\u3053\u3086\u3072\u3099","\u3053\u3088\u3044","\u3053\u3088\u3046","\u3053\u308a\u308b","\u3053\u308c\u304f\u3057\u3087\u3093","\u3053\u308d\u3063\u3051","\u3053\u308f\u3082\u3066","\u3053\u308f\u308c\u308b","\u3053\u3093\u3044\u3093","\u3053\u3093\u304b\u3044","\u3053\u3093\u304d","\u3053\u3093\u3057\u3085\u3046","\u3053\u3093\u3059\u3044","\u3053\u3093\u305f\u3099\u3066","\u3053\u3093\u3068\u3093","\u3053\u3093\u306a\u3093","\u3053\u3093\u3072\u3099\u306b","\u3053\u3093\u307b\u309a\u3093","\u3053\u3093\u307e\u3051","\u3053\u3093\u3084","\u3053\u3093\u308c\u3044","\u3053\u3093\u308f\u304f","\u3055\u3099\u3044\u3048\u304d","\u3055\u3044\u304b\u3044","\u3055\u3044\u304d\u3093","\u3055\u3099\u3044\u3051\u3099\u3093","\u3055\u3099\u3044\u3053","\u3055\u3044\u3057\u3087","\u3055\u3044\u305b\u3044","\u3055\u3099\u3044\u305f\u304f","\u3055\u3099\u3044\u3061\u3085\u3046","\u3055\u3044\u3066\u304d","\u3055\u3099\u3044\u308a\u3087\u3046","\u3055\u3046\u306a","\u3055\u304b\u3044\u3057","\u3055\u304b\u3099\u3059","\u3055\u304b\u306a","\u3055\u304b\u307f\u3061","\u3055\u304b\u3099\u308b","\u3055\u304d\u3099\u3087\u3046","\u3055\u304f\u3057","\u3055\u304f\u3072\u3093","\u3055\u304f\u3089","\u3055\u3053\u304f","\u3055\u3053\u3064","\u3055\u3059\u3099\u304b\u308b","\u3055\u3099\u305b\u304d","\u3055\u305f\u3093","\u3055\u3064\u3048\u3044","\u3055\u3099\u3064\u304a\u3093","\u3055\u3099\u3063\u304b","\u3055\u3099\u3064\u304b\u3099\u304f","\u3055\u3063\u304d\u3087\u304f","\u3055\u3099\u3063\u3057","\u3055\u3064\u3057\u3099\u3093","\u3055\u3099\u3063\u305d\u3046","\u3055\u3064\u305f\u306f\u3099","\u3055\u3064\u307e\u3044\u3082","\u3055\u3066\u3044","\u3055\u3068\u3044\u3082","\u3055\u3068\u3046","\u3055\u3068\u304a\u3084","\u3055\u3068\u3057","\u3055\u3068\u308b","\u3055\u306e\u3046","\u3055\u306f\u3099\u304f","\u3055\u3072\u3099\u3057\u3044","\u3055\u3078\u3099\u3064","\u3055\u307b\u3046","\u3055\u307b\u3068\u3099","\u3055\u307e\u3059","\u3055\u307f\u3057\u3044","\u3055\u307f\u305f\u3099\u308c","\u3055\u3080\u3051","\u3055\u3081\u308b","\u3055\u3084\u3048\u3093\u3068\u3099\u3046","\u3055\u3086\u3046","\u3055\u3088\u3046","\u3055\u3088\u304f","\u3055\u3089\u305f\u3099","\u3055\u3099\u308b\u305d\u306f\u3099","\u3055\u308f\u3084\u304b","\u3055\u308f\u308b","\u3055\u3093\u3044\u3093","\u3055\u3093\u304b","\u3055\u3093\u304d\u3083\u304f","\u3055\u3093\u3053\u3046","\u3055\u3093\u3055\u3044","\u3055\u3099\u3093\u3057\u3087","\u3055\u3093\u3059\u3046","\u3055\u3093\u305b\u3044","\u3055\u3093\u305d","\u3055\u3093\u3061","\u3055\u3093\u307e","\u3055\u3093\u307f","\u3055\u3093\u3089\u3093","\u3057\u3042\u3044","\u3057\u3042\u3051\u3099","\u3057\u3042\u3055\u3063\u3066","\u3057\u3042\u308f\u305b","\u3057\u3044\u304f","\u3057\u3044\u3093","\u3057\u3046\u3061","\u3057\u3048\u3044","\u3057\u304a\u3051","\u3057\u304b\u3044","\u3057\u304b\u304f","\u3057\u3099\u304b\u3093","\u3057\u3053\u3099\u3068","\u3057\u3059\u3046","\u3057\u3099\u305f\u3099\u3044","\u3057\u305f\u3046\u3051","\u3057\u305f\u304d\u3099","\u3057\u305f\u3066","\u3057\u305f\u307f","\u3057\u3061\u3087\u3046","\u3057\u3061\u308a\u3093","\u3057\u3063\u304b\u308a","\u3057\u3064\u3057\u3099","\u3057\u3064\u3082\u3093","\u3057\u3066\u3044","\u3057\u3066\u304d","\u3057\u3066\u3064","\u3057\u3099\u3066\u3093","\u3057\u3099\u3068\u3099\u3046","\u3057\u306a\u304d\u3099\u308c","\u3057\u306a\u3082\u306e","\u3057\u306a\u3093","\u3057\u306d\u307e","\u3057\u306d\u3093","\u3057\u306e\u304f\u3099","\u3057\u306e\u3075\u3099","\u3057\u306f\u3044","\u3057\u306f\u3099\u304b\u308a","\u3057\u306f\u3064","\u3057\u306f\u3089\u3044","\u3057\u306f\u3093","\u3057\u3072\u3087\u3046","\u3057\u3075\u304f","\u3057\u3099\u3075\u3099\u3093","\u3057\u3078\u3044","\u3057\u307b\u3046","\u3057\u307b\u3093","\u3057\u307e\u3046","\u3057\u307e\u308b","\u3057\u307f\u3093","\u3057\u3080\u3051\u308b","\u3057\u3099\u3080\u3057\u3087","\u3057\u3081\u3044","\u3057\u3081\u308b","\u3057\u3082\u3093","\u3057\u3083\u3044\u3093","\u3057\u3083\u3046\u3093","\u3057\u3083\u304a\u3093","\u3057\u3099\u3083\u304b\u3099\u3044\u3082","\u3057\u3084\u304f\u3057\u3087","\u3057\u3083\u304f\u307b\u3046","\u3057\u3083\u3051\u3093","\u3057\u3083\u3053","\u3057\u3083\u3055\u3099\u3044","\u3057\u3083\u3057\u3093","\u3057\u3083\u305b\u3093","\u3057\u3083\u305d\u3046","\u3057\u3083\u305f\u3044","\u3057\u3083\u3061\u3087\u3046","\u3057\u3083\u3063\u304d\u3093","\u3057\u3099\u3083\u307e","\u3057\u3083\u308a\u3093","\u3057\u3083\u308c\u3044","\u3057\u3099\u3086\u3046","\u3057\u3099\u3085\u3046\u3057\u3087","\u3057\u3085\u304f\u306f\u304f","\u3057\u3099\u3085\u3057\u3093","\u3057\u3085\u3063\u305b\u304d","\u3057\u3085\u307f","\u3057\u3085\u3089\u306f\u3099","\u3057\u3099\u3085\u3093\u306f\u3099\u3093","\u3057\u3087\u3046\u304b\u3044","\u3057\u3087\u304f\u305f\u304f","\u3057\u3087\u3063\u3051\u3093","\u3057\u3087\u3068\u3099\u3046","\u3057\u3087\u3082\u3064","\u3057\u3089\u305b\u308b","\u3057\u3089\u3078\u3099\u308b","\u3057\u3093\u304b","\u3057\u3093\u3053\u3046","\u3057\u3099\u3093\u3057\u3099\u3083","\u3057\u3093\u305b\u3044\u3057\u3099","\u3057\u3093\u3061\u304f","\u3057\u3093\u308a\u3093","\u3059\u3042\u3051\u3099","\u3059\u3042\u3057","\u3059\u3042\u306a","\u3059\u3099\u3042\u3093","\u3059\u3044\u3048\u3044","\u3059\u3044\u304b","\u3059\u3044\u3068\u3046","\u3059\u3099\u3044\u3075\u3099\u3093","\u3059\u3044\u3088\u3046\u3072\u3099","\u3059\u3046\u304b\u3099\u304f","\u3059\u3046\u3057\u3099\u3064","\u3059\u3046\u305b\u3093","\u3059\u304a\u3068\u3099\u308a","\u3059\u304d\u307e","\u3059\u304f\u3046","\u3059\u304f\u306a\u3044","\u3059\u3051\u308b","\u3059\u3053\u3099\u3044","\u3059\u3053\u3057","\u3059\u3099\u3055\u3093","\u3059\u3059\u3099\u3057\u3044","\u3059\u3059\u3080","\u3059\u3059\u3081\u308b","\u3059\u3063\u304b\u308a","\u3059\u3099\u3063\u3057\u308a","\u3059\u3099\u3063\u3068","\u3059\u3066\u304d","\u3059\u3066\u308b","\u3059\u306d\u308b","\u3059\u306e\u3053","\u3059\u306f\u305f\u3099","\u3059\u306f\u3099\u3089\u3057\u3044","\u3059\u3099\u3072\u3087\u3046","\u3059\u3099\u3075\u3099\u306c\u308c","\u3059\u3075\u3099\u308a","\u3059\u3075\u308c","\u3059\u3078\u3099\u3066","\u3059\u3078\u3099\u308b","\u3059\u3099\u307b\u3046","\u3059\u307b\u3099\u3093","\u3059\u307e\u3044","\u3059\u3081\u3057","\u3059\u3082\u3046","\u3059\u3084\u304d","\u3059\u3089\u3059\u3089","\u3059\u308b\u3081","\u3059\u308c\u3061\u304b\u3099\u3046","\u3059\u308d\u3063\u3068","\u3059\u308f\u308b","\u3059\u3093\u305b\u3099\u3093","\u3059\u3093\u307b\u309a\u3046","\u305b\u3042\u3075\u3099\u3089","\u305b\u3044\u304b\u3064","\u305b\u3044\u3051\u3099\u3093","\u305b\u3044\u3057\u3099","\u305b\u3044\u3088\u3046","\u305b\u304a\u3046","\u305b\u304b\u3044\u304b\u3093","\u305b\u304d\u306b\u3093","\u305b\u304d\u3080","\u305b\u304d\u3086","\u305b\u304d\u3089\u3093\u3046\u3093","\u305b\u3051\u3093","\u305b\u3053\u3046","\u305b\u3059\u3057\u3099","\u305b\u305f\u3044","\u305b\u305f\u3051","\u305b\u3063\u304b\u304f","\u305b\u3063\u304d\u3083\u304f","\u305b\u3099\u3063\u304f","\u305b\u3063\u3051\u3093","\u305b\u3063\u3053\u3064","\u305b\u3063\u3055\u305f\u304f\u307e","\u305b\u3064\u305d\u3099\u304f","\u305b\u3064\u305f\u3099\u3093","\u305b\u3064\u3066\u3099\u3093","\u305b\u3063\u306f\u309a\u3093","\u305b\u3064\u3072\u3099","\u305b\u3064\u3075\u3099\u3093","\u305b\u3064\u3081\u3044","\u305b\u3064\u308a\u3064","\u305b\u306a\u304b","\u305b\u306e\u3072\u3099","\u305b\u306f\u306f\u3099","\u305b\u3072\u3099\u308d","\u305b\u307b\u3099\u306d","\u305b\u307e\u3044","\u305b\u307e\u308b","\u305b\u3081\u308b","\u305b\u3082\u305f\u308c","\u305b\u308a\u3075","\u305b\u3099\u3093\u3042\u304f","\u305b\u3093\u3044","\u305b\u3093\u3048\u3044","\u305b\u3093\u304b","\u305b\u3093\u304d\u3087","\u305b\u3093\u304f","\u305b\u3093\u3051\u3099\u3093","\u305b\u3099\u3093\u3053\u3099","\u305b\u3093\u3055\u3044","\u305b\u3093\u3057\u3085","\u305b\u3093\u3059\u3044","\u305b\u3093\u305b\u3044","\u305b\u3093\u305d\u3099","\u305b\u3093\u305f\u304f","\u305b\u3093\u3061\u3087\u3046","\u305b\u3093\u3066\u3044","\u305b\u3093\u3068\u3046","\u305b\u3093\u306c\u304d","\u305b\u3093\u306d\u3093","\u305b\u3093\u306f\u309a\u3044","\u305b\u3099\u3093\u3075\u3099","\u305b\u3099\u3093\u307b\u309a\u3046","\u305b\u3093\u3080","\u305b\u3093\u3081\u3093\u3057\u3099\u3087","\u305b\u3093\u3082\u3093","\u305b\u3093\u3084\u304f","\u305b\u3093\u3086\u3046","\u305b\u3093\u3088\u3046","\u305b\u3099\u3093\u3089","\u305b\u3099\u3093\u308a\u3083\u304f","\u305b\u3093\u308c\u3044","\u305b\u3093\u308d","\u305d\u3042\u304f","\u305d\u3044\u3068\u3051\u3099\u308b","\u305d\u3044\u306d","\u305d\u3046\u304b\u3099\u3093\u304d\u3087\u3046","\u305d\u3046\u304d","\u305d\u3046\u3053\u3099","\u305d\u3046\u3057\u3093","\u305d\u3046\u305f\u3099\u3093","\u305d\u3046\u306a\u3093","\u305d\u3046\u3072\u3099","\u305d\u3046\u3081\u3093","\u305d\u3046\u308a","\u305d\u3048\u3082\u306e","\u305d\u3048\u3093","\u305d\u304b\u3099\u3044","\u305d\u3051\u3099\u304d","\u305d\u3053\u3046","\u305d\u3053\u305d\u3053","\u305d\u3055\u3099\u3044","\u305d\u3057\u306a","\u305d\u305b\u3044","\u305d\u305b\u3093","\u305d\u305d\u304f\u3099","\u305d\u305f\u3099\u3066\u308b","\u305d\u3064\u3046","\u305d\u3064\u3048\u3093","\u305d\u3063\u304b\u3093","\u305d\u3064\u304d\u3099\u3087\u3046","\u305d\u3063\u3051\u3064","\u305d\u3063\u3053\u3046","\u305d\u3063\u305b\u3093","\u305d\u3063\u3068","\u305d\u3068\u304b\u3099\u308f","\u305d\u3068\u3064\u3099\u3089","\u305d\u306a\u3048\u308b","\u305d\u306a\u305f","\u305d\u3075\u307b\u3099","\u305d\u307b\u3099\u304f","\u305d\u307b\u3099\u308d","\u305d\u307e\u3064","\u305d\u307e\u308b","\u305d\u3080\u304f","\u305d\u3080\u308a\u3048","\u305d\u3081\u308b","\u305d\u3082\u305d\u3082","\u305d\u3088\u304b\u305b\u3099","\u305d\u3089\u307e\u3081","\u305d\u308d\u3046","\u305d\u3093\u304b\u3044","\u305d\u3093\u3051\u3044","\u305d\u3093\u3055\u3099\u3044","\u305d\u3093\u3057\u3064","\u305d\u3093\u305d\u3099\u304f","\u305d\u3093\u3061\u3087\u3046","\u305d\u3099\u3093\u3072\u3099","\u305d\u3099\u3093\u3075\u3099\u3093","\u305d\u3093\u307f\u3093","\u305f\u3042\u3044","\u305f\u3044\u3044\u3093","\u305f\u3044\u3046\u3093","\u305f\u3044\u3048\u304d","\u305f\u3044\u304a\u3046","\u305f\u3099\u3044\u304b\u3099\u304f","\u305f\u3044\u304d","\u305f\u3044\u304f\u3099\u3046","\u305f\u3044\u3051\u3093","\u305f\u3044\u3053","\u305f\u3044\u3055\u3099\u3044","\u305f\u3099\u3044\u3057\u3099\u3087\u3046\u3075\u3099","\u305f\u3099\u3044\u3059\u304d","\u305f\u3044\u305b\u3064","\u305f\u3044\u305d\u3046","\u305f\u3099\u3044\u305f\u3044","\u305f\u3044\u3061\u3087\u3046","\u305f\u3044\u3066\u3044","\u305f\u3099\u3044\u3068\u3099\u3053\u308d","\u305f\u3044\u306a\u3044","\u305f\u3044\u306d\u3064","\u305f\u3044\u306e\u3046","\u305f\u3044\u306f\u3093","\u305f\u3099\u3044\u3072\u3087\u3046","\u305f\u3044\u3075\u3046","\u305f\u3044\u3078\u3093","\u305f\u3044\u307b","\u305f\u3044\u307e\u3064\u306f\u3099\u306a","\u305f\u3044\u307f\u3093\u304f\u3099","\u305f\u3044\u3080","\u305f\u3044\u3081\u3093","\u305f\u3044\u3084\u304d","\u305f\u3044\u3088\u3046","\u305f\u3044\u3089","\u305f\u3044\u308a\u3087\u304f","\u305f\u3044\u308b","\u305f\u3044\u308f\u3093","\u305f\u3046\u3048","\u305f\u3048\u308b","\u305f\u304a\u3059","\u305f\u304a\u308b","\u305f\u304a\u308c\u308b","\u305f\u304b\u3044","\u305f\u304b\u306d","\u305f\u304d\u3072\u3099","\u305f\u304f\u3055\u3093","\u305f\u3053\u304f","\u305f\u3053\u3084\u304d","\u305f\u3055\u3044","\u305f\u3057\u3055\u3099\u3093","\u305f\u3099\u3057\u3099\u3083\u308c","\u305f\u3059\u3051\u308b","\u305f\u3059\u3099\u3055\u308f\u308b","\u305f\u305d\u304b\u3099\u308c","\u305f\u305f\u304b\u3046","\u305f\u305f\u304f","\u305f\u305f\u3099\u3057\u3044","\u305f\u305f\u307f","\u305f\u3061\u306f\u3099\u306a","\u305f\u3099\u3063\u304b\u3044","\u305f\u3099\u3063\u304d\u3083\u304f","\u305f\u3099\u3063\u3053","\u305f\u3099\u3063\u3057\u3085\u3064","\u305f\u3099\u3063\u305f\u3044","\u305f\u3066\u308b","\u305f\u3068\u3048\u308b","\u305f\u306a\u306f\u3099\u305f","\u305f\u306b\u3093","\u305f\u306c\u304d","\u305f\u306e\u3057\u307f","\u305f\u306f\u3064","\u305f\u3075\u3099\u3093","\u305f\u3078\u3099\u308b","\u305f\u307b\u3099\u3046","\u305f\u307e\u3053\u3099","\u305f\u307e\u308b","\u305f\u3099\u3080\u308b","\u305f\u3081\u3044\u304d","\u305f\u3081\u3059","\u305f\u3081\u308b","\u305f\u3082\u3064","\u305f\u3084\u3059\u3044","\u305f\u3088\u308b","\u305f\u3089\u3059","\u305f\u308a\u304d\u307b\u3093\u304b\u3099\u3093","\u305f\u308a\u3087\u3046","\u305f\u308a\u308b","\u305f\u308b\u3068","\u305f\u308c\u308b","\u305f\u308c\u3093\u3068","\u305f\u308d\u3063\u3068","\u305f\u308f\u3080\u308c\u308b","\u305f\u3099\u3093\u3042\u3064","\u305f\u3093\u3044","\u305f\u3093\u304a\u3093","\u305f\u3093\u304b","\u305f\u3093\u304d","\u305f\u3093\u3051\u3093","\u305f\u3093\u3053\u3099","\u305f\u3093\u3055\u3093","\u305f\u3093\u3057\u3099\u3087\u3046\u3072\u3099","\u305f\u3099\u3093\u305b\u3044","\u305f\u3093\u305d\u304f","\u305f\u3093\u305f\u3044","\u305f\u3099\u3093\u3061","\u305f\u3093\u3066\u3044","\u305f\u3093\u3068\u3046","\u305f\u3099\u3093\u306a","\u305f\u3093\u306b\u3093","\u305f\u3099\u3093\u306d\u3064","\u305f\u3093\u306e\u3046","\u305f\u3093\u3072\u309a\u3093","\u305f\u3099\u3093\u307b\u3099\u3046","\u305f\u3093\u307e\u3064","\u305f\u3093\u3081\u3044","\u305f\u3099\u3093\u308c\u3064","\u305f\u3099\u3093\u308d","\u305f\u3099\u3093\u308f","\u3061\u3042\u3044","\u3061\u3042\u3093","\u3061\u3044\u304d","\u3061\u3044\u3055\u3044","\u3061\u3048\u3093","\u3061\u304b\u3044","\u3061\u304b\u3089","\u3061\u304d\u3085\u3046","\u3061\u304d\u3093","\u3061\u3051\u3044\u3059\u3099","\u3061\u3051\u3093","\u3061\u3053\u304f","\u3061\u3055\u3044","\u3061\u3057\u304d","\u3061\u3057\u308a\u3087\u3046","\u3061\u305b\u3044","\u3061\u305d\u3046","\u3061\u305f\u3044","\u3061\u305f\u3093","\u3061\u3061\u304a\u3084","\u3061\u3064\u3057\u3099\u3087","\u3061\u3066\u304d","\u3061\u3066\u3093","\u3061\u306c\u304d","\u3061\u306c\u308a","\u3061\u306e\u3046","\u3061\u3072\u3087\u3046","\u3061\u3078\u3044\u305b\u3093","\u3061\u307b\u3046","\u3061\u307e\u305f","\u3061\u307f\u3064","\u3061\u307f\u3068\u3099\u308d","\u3061\u3081\u3044\u3068\u3099","\u3061\u3083\u3093\u3053\u306a\u3078\u3099","\u3061\u3085\u3046\u3044","\u3061\u3086\u308a\u3087\u304f","\u3061\u3087\u3046\u3057","\u3061\u3087\u3055\u304f\u3051\u3093","\u3061\u3089\u3057","\u3061\u3089\u307f","\u3061\u308a\u304b\u3099\u307f","\u3061\u308a\u3087\u3046","\u3061\u308b\u3068\u3099","\u3061\u308f\u308f","\u3061\u3093\u305f\u3044","\u3061\u3093\u3082\u304f","\u3064\u3044\u304b","\u3064\u3044\u305f\u3061","\u3064\u3046\u304b","\u3064\u3046\u3057\u3099\u3087\u3046","\u3064\u3046\u306f\u3093","\u3064\u3046\u308f","\u3064\u304b\u3046","\u3064\u304b\u308c\u308b","\u3064\u304f\u306d","\u3064\u304f\u308b","\u3064\u3051\u306d","\u3064\u3051\u308b","\u3064\u3053\u3099\u3046","\u3064\u305f\u3048\u308b","\u3064\u3064\u3099\u304f","\u3064\u3064\u3057\u3099","\u3064\u3064\u3080","\u3064\u3068\u3081\u308b","\u3064\u306a\u304b\u3099\u308b","\u3064\u306a\u307f","\u3064\u306d\u3064\u3099\u306d","\u3064\u306e\u308b","\u3064\u3075\u3099\u3059","\u3064\u307e\u3089\u306a\u3044","\u3064\u307e\u308b","\u3064\u307f\u304d","\u3064\u3081\u305f\u3044","\u3064\u3082\u308a","\u3064\u3082\u308b","\u3064\u3088\u3044","\u3064\u308b\u307b\u3099","\u3064\u308b\u307f\u304f","\u3064\u308f\u3082\u306e","\u3064\u308f\u308a","\u3066\u3042\u3057","\u3066\u3042\u3066","\u3066\u3042\u307f","\u3066\u3044\u304a\u3093","\u3066\u3044\u304b","\u3066\u3044\u304d","\u3066\u3044\u3051\u3044","\u3066\u3044\u3053\u304f","\u3066\u3044\u3055\u3064","\u3066\u3044\u3057","\u3066\u3044\u305b\u3044","\u3066\u3044\u305f\u3044","\u3066\u3044\u3068\u3099","\u3066\u3044\u306d\u3044","\u3066\u3044\u3072\u3087\u3046","\u3066\u3044\u3078\u3093","\u3066\u3044\u307b\u3099\u3046","\u3066\u3046\u3061","\u3066\u304a\u304f\u308c","\u3066\u304d\u3068\u3046","\u3066\u304f\u3072\u3099","\u3066\u3099\u3053\u307b\u3099\u3053","\u3066\u3055\u304d\u3099\u3087\u3046","\u3066\u3055\u3051\u3099","\u3066\u3059\u308a","\u3066\u305d\u3046","\u3066\u3061\u304b\u3099\u3044","\u3066\u3061\u3087\u3046","\u3066\u3064\u304b\u3099\u304f","\u3066\u3064\u3064\u3099\u304d","\u3066\u3099\u3063\u306f\u309a","\u3066\u3064\u307b\u3099\u3046","\u3066\u3064\u3084","\u3066\u3099\u306c\u304b\u3048","\u3066\u306c\u304d","\u3066\u306c\u304f\u3099\u3044","\u3066\u306e\u3072\u3089","\u3066\u306f\u3044","\u3066\u3075\u3099\u304f\u308d","\u3066\u3075\u305f\u3099","\u3066\u307b\u3068\u3099\u304d","\u3066\u307b\u3093","\u3066\u307e\u3048","\u3066\u307e\u304d\u3059\u3099\u3057","\u3066\u307f\u3057\u3099\u304b","\u3066\u307f\u3084\u3051\u3099","\u3066\u3089\u3059","\u3066\u308c\u3072\u3099","\u3066\u308f\u3051","\u3066\u308f\u305f\u3057","\u3066\u3099\u3093\u3042\u3064","\u3066\u3093\u3044\u3093","\u3066\u3093\u304b\u3044","\u3066\u3093\u304d","\u3066\u3093\u304f\u3099","\u3066\u3093\u3051\u3093","\u3066\u3093\u3053\u3099\u304f","\u3066\u3093\u3055\u3044","\u3066\u3093\u3057","\u3066\u3093\u3059\u3046","\u3066\u3099\u3093\u3061","\u3066\u3093\u3066\u304d","\u3066\u3093\u3068\u3046","\u3066\u3093\u306a\u3044","\u3066\u3093\u3075\u309a\u3089","\u3066\u3093\u307b\u3099\u3046\u305f\u3099\u3044","\u3066\u3093\u3081\u3064","\u3066\u3093\u3089\u3093\u304b\u3044","\u3066\u3099\u3093\u308a\u3087\u304f","\u3066\u3099\u3093\u308f","\u3068\u3099\u3042\u3044","\u3068\u3044\u308c","\u3068\u3099\u3046\u304b\u3093","\u3068\u3046\u304d\u3085\u3046","\u3068\u3099\u3046\u304f\u3099","\u3068\u3046\u3057","\u3068\u3046\u3080\u304d\u3099","\u3068\u304a\u3044","\u3068\u304a\u304b","\u3068\u304a\u304f","\u3068\u304a\u3059","\u3068\u304a\u308b","\u3068\u304b\u3044","\u3068\u304b\u3059","\u3068\u304d\u304a\u308a","\u3068\u304d\u3068\u3099\u304d","\u3068\u304f\u3044","\u3068\u304f\u3057\u3085\u3046","\u3068\u304f\u3066\u3093","\u3068\u304f\u306b","\u3068\u304f\u3078\u3099\u3064","\u3068\u3051\u3044","\u3068\u3051\u308b","\u3068\u3053\u3084","\u3068\u3055\u304b","\u3068\u3057\u3087\u304b\u3093","\u3068\u305d\u3046","\u3068\u305f\u3093","\u3068\u3061\u3085\u3046","\u3068\u3063\u304d\u3085\u3046","\u3068\u3063\u304f\u3093","\u3068\u3064\u305b\u3099\u3093","\u3068\u3064\u306b\u3085\u3046","\u3068\u3068\u3099\u3051\u308b","\u3068\u3068\u306e\u3048\u308b","\u3068\u306a\u3044","\u3068\u306a\u3048\u308b","\u3068\u306a\u308a","\u3068\u306e\u3055\u307e","\u3068\u306f\u3099\u3059","\u3068\u3099\u3075\u3099\u304b\u3099\u308f","\u3068\u307b\u3046","\u3068\u307e\u308b","\u3068\u3081\u308b","\u3068\u3082\u305f\u3099\u3061","\u3068\u3082\u308b","\u3068\u3099\u3088\u3046\u3072\u3099","\u3068\u3089\u3048\u308b","\u3068\u3093\u304b\u3064","\u3068\u3099\u3093\u3075\u3099\u308a","\u306a\u3044\u304b\u304f","\u306a\u3044\u3053\u3046","\u306a\u3044\u3057\u3087","\u306a\u3044\u3059","\u306a\u3044\u305b\u3093","\u306a\u3044\u305d\u3046","\u306a\u304a\u3059","\u306a\u304b\u3099\u3044","\u306a\u304f\u3059","\u306a\u3051\u3099\u308b","\u306a\u3053\u3046\u3068\u3099","\u306a\u3055\u3051","\u306a\u305f\u3066\u3099\u3053\u3053","\u306a\u3063\u3068\u3046","\u306a\u3064\u3084\u3059\u307f","\u306a\u306a\u304a\u3057","\u306a\u306b\u3053\u3099\u3068","\u306a\u306b\u3082\u306e","\u306a\u306b\u308f","\u306a\u306e\u304b","\u306a\u3075\u305f\u3099","\u306a\u307e\u3044\u304d","\u306a\u307e\u3048","\u306a\u307e\u307f","\u306a\u307f\u305f\u3099","\u306a\u3081\u3089\u304b","\u306a\u3081\u308b","\u306a\u3084\u3080","\u306a\u3089\u3046","\u306a\u3089\u3072\u3099","\u306a\u3089\u3075\u3099","\u306a\u308c\u308b","\u306a\u308f\u3068\u3072\u3099","\u306a\u308f\u306f\u3099\u308a","\u306b\u3042\u3046","\u306b\u3044\u304b\u3099\u305f","\u306b\u3046\u3051","\u306b\u304a\u3044","\u306b\u304b\u3044","\u306b\u304b\u3099\u3066","\u306b\u304d\u3072\u3099","\u306b\u304f\u3057\u307f","\u306b\u304f\u307e\u3093","\u306b\u3051\u3099\u308b","\u306b\u3055\u3093\u304b\u305f\u3093\u305d","\u306b\u3057\u304d","\u306b\u305b\u3082\u306e","\u306b\u3061\u3057\u3099\u3087\u3046","\u306b\u3061\u3088\u3046\u3072\u3099","\u306b\u3063\u304b","\u306b\u3063\u304d","\u306b\u3063\u3051\u3044","\u306b\u3063\u3053\u3046","\u306b\u3063\u3055\u3093","\u306b\u3063\u3057\u3087\u304f","\u306b\u3063\u3059\u3046","\u306b\u3063\u305b\u304d","\u306b\u3063\u3066\u3044","\u306b\u306a\u3046","\u306b\u307b\u3093","\u306b\u307e\u3081","\u306b\u3082\u3064","\u306b\u3084\u308a","\u306b\u3085\u3046\u3044\u3093","\u306b\u308a\u3093\u3057\u3083","\u306b\u308f\u3068\u308a","\u306b\u3093\u3044","\u306b\u3093\u304b","\u306b\u3093\u304d","\u306b\u3093\u3051\u3099\u3093","\u306b\u3093\u3057\u304d","\u306b\u3093\u3059\u3099\u3046","\u306b\u3093\u305d\u3046","\u306b\u3093\u305f\u3044","\u306b\u3093\u3061","\u306b\u3093\u3066\u3044","\u306b\u3093\u306b\u304f","\u306b\u3093\u3075\u309a","\u306b\u3093\u307e\u308a","\u306b\u3093\u3080","\u306b\u3093\u3081\u3044","\u306b\u3093\u3088\u3046","\u306c\u3044\u304f\u304d\u3099","\u306c\u304b\u3059","\u306c\u304f\u3099\u3044\u3068\u308b","\u306c\u304f\u3099\u3046","\u306c\u304f\u3082\u308a","\u306c\u3059\u3080","\u306c\u307e\u3048\u3072\u3099","\u306c\u3081\u308a","\u306c\u3089\u3059","\u306c\u3093\u3061\u3083\u304f","\u306d\u3042\u3051\u3099","\u306d\u3044\u304d","\u306d\u3044\u308b","\u306d\u3044\u308d","\u306d\u304f\u3099\u305b","\u306d\u304f\u305f\u3044","\u306d\u304f\u3089","\u306d\u3053\u305b\u3099","\u306d\u3053\u3080","\u306d\u3055\u3051\u3099","\u306d\u3059\u3053\u3099\u3059","\u306d\u305d\u3078\u3099\u308b","\u306d\u305f\u3099\u3093","\u306d\u3064\u3044","\u306d\u3063\u3057\u3093","\u306d\u3064\u305d\u3099\u3046","\u306d\u3063\u305f\u3044\u304d\u3099\u3087","\u306d\u3075\u3099\u305d\u304f","\u306d\u3075\u305f\u3099","\u306d\u307b\u3099\u3046","\u306d\u307b\u308a\u306f\u307b\u308a","\u306d\u307e\u304d","\u306d\u307e\u308f\u3057","\u306d\u307f\u307f","\u306d\u3080\u3044","\u306d\u3080\u305f\u3044","\u306d\u3082\u3068","\u306d\u3089\u3046","\u306d\u308f\u3055\u3099","\u306d\u3093\u3044\u308a","\u306d\u3093\u304a\u3057","\u306d\u3093\u304b\u3093","\u306d\u3093\u304d\u3093","\u306d\u3093\u304f\u3099","\u306d\u3093\u3055\u3099","\u306d\u3093\u3057","\u306d\u3093\u3061\u3083\u304f","\u306d\u3093\u3068\u3099","\u306d\u3093\u3072\u309a","\u306d\u3093\u3075\u3099\u3064","\u306d\u3093\u307e\u3064","\u306d\u3093\u308a\u3087\u3046","\u306d\u3093\u308c\u3044","\u306e\u3044\u3059\u3099","\u306e\u304a\u3064\u3099\u307e","\u306e\u304b\u3099\u3059","\u306e\u304d\u306a\u307f","\u306e\u3053\u304d\u3099\u308a","\u306e\u3053\u3059","\u306e\u3053\u308b","\u306e\u305b\u308b","\u306e\u305d\u3099\u304f","\u306e\u305d\u3099\u3080","\u306e\u305f\u307e\u3046","\u306e\u3061\u307b\u3068\u3099","\u306e\u3063\u304f","\u306e\u306f\u3099\u3059","\u306e\u306f\u3089","\u306e\u3078\u3099\u308b","\u306e\u307b\u3099\u308b","\u306e\u307f\u3082\u306e","\u306e\u3084\u307e","\u306e\u3089\u3044\u306c","\u306e\u3089\u306d\u3053","\u306e\u308a\u3082\u306e","\u306e\u308a\u3086\u304d","\u306e\u308c\u3093","\u306e\u3093\u304d","\u306f\u3099\u3042\u3044","\u306f\u3042\u304f","\u306f\u3099\u3042\u3055\u3093","\u306f\u3099\u3044\u304b","\u306f\u3099\u3044\u304f","\u306f\u3044\u3051\u3093","\u306f\u3044\u3053\u3099","\u306f\u3044\u3057\u3093","\u306f\u3044\u3059\u3044","\u306f\u3044\u305b\u3093","\u306f\u3044\u305d\u3046","\u306f\u3044\u3061","\u306f\u3099\u3044\u306f\u3099\u3044","\u306f\u3044\u308c\u3064","\u306f\u3048\u308b","\u306f\u304a\u308b","\u306f\u304b\u3044","\u306f\u3099\u304b\u308a","\u306f\u304b\u308b","\u306f\u304f\u3057\u3085","\u306f\u3051\u3093","\u306f\u3053\u3075\u3099","\u306f\u3055\u307f","\u306f\u3055\u3093","\u306f\u3057\u3053\u3099","\u306f\u3099\u3057\u3087","\u306f\u3057\u308b","\u306f\u305b\u308b","\u306f\u309a\u305d\u3053\u3093","\u306f\u305d\u3093","\u306f\u305f\u3093","\u306f\u3061\u307f\u3064","\u306f\u3064\u304a\u3093","\u306f\u3063\u304b\u304f","\u306f\u3064\u3099\u304d","\u306f\u3063\u304d\u308a","\u306f\u3063\u304f\u3064","\u306f\u3063\u3051\u3093","\u306f\u3063\u3053\u3046","\u306f\u3063\u3055\u3093","\u306f\u3063\u3057\u3093","\u306f\u3063\u305f\u3064","\u306f\u3063\u3061\u3085\u3046","\u306f\u3063\u3066\u3093","\u306f\u3063\u3072\u309a\u3087\u3046","\u306f\u3063\u307b\u309a\u3046","\u306f\u306a\u3059","\u306f\u306a\u3072\u3099","\u306f\u306b\u304b\u3080","\u306f\u3075\u3099\u3089\u3057","\u306f\u307f\u304b\u3099\u304d","\u306f\u3080\u304b\u3046","\u306f\u3081\u3064","\u306f\u3084\u3044","\u306f\u3084\u3057","\u306f\u3089\u3046","\u306f\u308d\u3046\u3043\u3093","\u306f\u308f\u3044","\u306f\u3093\u3044","\u306f\u3093\u3048\u3044","\u306f\u3093\u304a\u3093","\u306f\u3093\u304b\u304f","\u306f\u3093\u304d\u3087\u3046","\u306f\u3099\u3093\u304f\u3099\u307f","\u306f\u3093\u3053","\u306f\u3093\u3057\u3083","\u306f\u3093\u3059\u3046","\u306f\u3093\u305f\u3099\u3093","\u306f\u309a\u3093\u3061","\u306f\u309a\u3093\u3064","\u306f\u3093\u3066\u3044","\u306f\u3093\u3068\u3057","\u306f\u3093\u306e\u3046","\u306f\u3093\u306f\u309a","\u306f\u3093\u3075\u3099\u3093","\u306f\u3093\u3078\u309a\u3093","\u306f\u3093\u307b\u3099\u3046\u304d","\u306f\u3093\u3081\u3044","\u306f\u3093\u3089\u3093","\u306f\u3093\u308d\u3093","\u3072\u3044\u304d","\u3072\u3046\u3093","\u3072\u3048\u308b","\u3072\u304b\u304f","\u3072\u304b\u308a","\u3072\u304b\u308b","\u3072\u304b\u3093","\u3072\u304f\u3044","\u3072\u3051\u3064","\u3072\u3053\u3046\u304d","\u3072\u3053\u304f","\u3072\u3055\u3044","\u3072\u3055\u3057\u3075\u3099\u308a","\u3072\u3055\u3093","\u3072\u3099\u3057\u3099\u3085\u3064\u304b\u3093","\u3072\u3057\u3087","\u3072\u305d\u304b","\u3072\u305d\u3080","\u3072\u305f\u3080\u304d","\u3072\u305f\u3099\u308a","\u3072\u305f\u308b","\u3072\u3064\u304d\u3099","\u3072\u3063\u3053\u3057","\u3072\u3063\u3057","\u3072\u3064\u3057\u3099\u3085\u3072\u3093","\u3072\u3063\u3059","\u3072\u3064\u305b\u3099\u3093","\u3072\u309a\u3063\u305f\u308a","\u3072\u309a\u3063\u3061\u308a","\u3072\u3064\u3088\u3046","\u3072\u3066\u3044","\u3072\u3068\u3053\u3099\u307f","\u3072\u306a\u307e\u3064\u308a","\u3072\u306a\u3093","\u3072\u306d\u308b","\u3072\u306f\u3093","\u3072\u3072\u3099\u304f","\u3072\u3072\u3087\u3046","\u3072\u307b\u3046","\u3072\u307e\u308f\u308a","\u3072\u307e\u3093","\u3072\u307f\u3064","\u3072\u3081\u3044","\u3072\u3081\u3057\u3099\u3057","\u3072\u3084\u3051","\u3072\u3084\u3059","\u3072\u3088\u3046","\u3072\u3099\u3087\u3046\u304d","\u3072\u3089\u304b\u3099\u306a","\u3072\u3089\u304f","\u3072\u308a\u3064","\u3072\u308a\u3087\u3046","\u3072\u308b\u307e","\u3072\u308b\u3084\u3059\u307f","\u3072\u308c\u3044","\u3072\u308d\u3044","\u3072\u308d\u3046","\u3072\u308d\u304d","\u3072\u308d\u3086\u304d","\u3072\u3093\u304b\u304f","\u3072\u3093\u3051\u3064","\u3072\u3093\u3053\u3093","\u3072\u3093\u3057\u3085","\u3072\u3093\u305d\u3046","\u3072\u309a\u3093\u3061","\u3072\u3093\u306f\u309a\u3093","\u3072\u3099\u3093\u307b\u3099\u3046","\u3075\u3042\u3093","\u3075\u3044\u3046\u3061","\u3075\u3046\u3051\u3044","\u3075\u3046\u305b\u3093","\u3075\u309a\u3046\u305f\u308d\u3046","\u3075\u3046\u3068\u3046","\u3075\u3046\u3075","\u3075\u3048\u308b","\u3075\u304a\u3093","\u3075\u304b\u3044","\u3075\u304d\u3093","\u3075\u304f\u3055\u3099\u3064","\u3075\u304f\u3075\u3099\u304f\u308d","\u3075\u3053\u3046","\u3075\u3055\u3044","\u3075\u3057\u304d\u3099","\u3075\u3057\u3099\u307f","\u3075\u3059\u307e","\u3075\u305b\u3044","\u3075\u305b\u304f\u3099","\u3075\u305d\u304f","\u3075\u3099\u305f\u306b\u304f","\u3075\u305f\u3093","\u3075\u3061\u3087\u3046","\u3075\u3064\u3046","\u3075\u3064\u304b","\u3075\u3063\u304b\u3064","\u3075\u3063\u304d","\u3075\u3063\u3053\u304f","\u3075\u3099\u3068\u3099\u3046","\u3075\u3068\u308b","\u3075\u3068\u3093","\u3075\u306e\u3046","\u3075\u306f\u3044","\u3075\u3072\u3087\u3046","\u3075\u3078\u3093","\u3075\u307e\u3093","\u3075\u307f\u3093","\u3075\u3081\u3064","\u3075\u3081\u3093","\u3075\u3088\u3046","\u3075\u308a\u3053","\u3075\u308a\u308b","\u3075\u308b\u3044","\u3075\u3093\u3044\u304d","\u3075\u3099\u3093\u304b\u3099\u304f","\u3075\u3099\u3093\u304f\u3099","\u3075\u3093\u3057\u3064","\u3075\u3099\u3093\u305b\u304d","\u3075\u3093\u305d\u3046","\u3075\u3099\u3093\u307b\u309a\u3046","\u3078\u3044\u3042\u3093","\u3078\u3044\u304a\u3093","\u3078\u3044\u304b\u3099\u3044","\u3078\u3044\u304d","\u3078\u3044\u3051\u3099\u3093","\u3078\u3044\u3053\u3046","\u3078\u3044\u3055","\u3078\u3044\u3057\u3083","\u3078\u3044\u305b\u3064","\u3078\u3044\u305d","\u3078\u3044\u305f\u304f","\u3078\u3044\u3066\u3093","\u3078\u3044\u306d\u3064","\u3078\u3044\u308f","\u3078\u304d\u304b\u3099","\u3078\u3053\u3080","\u3078\u3099\u306b\u3044\u308d","\u3078\u3099\u306b\u3057\u3087\u3046\u304b\u3099","\u3078\u3089\u3059","\u3078\u3093\u304b\u3093","\u3078\u3099\u3093\u304d\u3087\u3046","\u3078\u3099\u3093\u3053\u3099\u3057","\u3078\u3093\u3055\u3044","\u3078\u3093\u305f\u3044","\u3078\u3099\u3093\u308a","\u307b\u3042\u3093","\u307b\u3044\u304f","\u307b\u3099\u3046\u304d\u3099\u3087","\u307b\u3046\u3053\u304f","\u307b\u3046\u305d\u3046","\u307b\u3046\u307b\u3046","\u307b\u3046\u3082\u3093","\u307b\u3046\u308a\u3064","\u307b\u3048\u308b","\u307b\u304a\u3093","\u307b\u304b\u3093","\u307b\u304d\u3087\u3046","\u307b\u3099\u304d\u3093","\u307b\u304f\u308d","\u307b\u3051\u3064","\u307b\u3051\u3093","\u307b\u3053\u3046","\u307b\u3053\u308b","\u307b\u3057\u3044","\u307b\u3057\u3064","\u307b\u3057\u3085","\u307b\u3057\u3087\u3046","\u307b\u305b\u3044","\u307b\u305d\u3044","\u307b\u305d\u304f","\u307b\u305f\u3066","\u307b\u305f\u308b","\u307b\u309a\u3061\u3075\u3099\u304f\u308d","\u307b\u3063\u304d\u3087\u304f","\u307b\u3063\u3055","\u307b\u3063\u305f\u3093","\u307b\u3068\u3093\u3068\u3099","\u307b\u3081\u308b","\u307b\u3093\u3044","\u307b\u3093\u304d","\u307b\u3093\u3051","\u307b\u3093\u3057\u3064","\u307b\u3093\u3084\u304f","\u307e\u3044\u306b\u3061","\u307e\u304b\u3044","\u307e\u304b\u305b\u308b","\u307e\u304b\u3099\u308b","\u307e\u3051\u308b","\u307e\u3053\u3068","\u307e\u3055\u3064","\u307e\u3057\u3099\u3081","\u307e\u3059\u304f","\u307e\u305b\u3099\u308b","\u307e\u3064\u308a","\u307e\u3068\u3081","\u307e\u306a\u3075\u3099","\u307e\u306c\u3051","\u307e\u306d\u304f","\u307e\u307b\u3046","\u307e\u3082\u308b","\u307e\u3086\u3051\u3099","\u307e\u3088\u3046","\u307e\u308d\u3084\u304b","\u307e\u308f\u3059","\u307e\u308f\u308a","\u307e\u308f\u308b","\u307e\u3093\u304b\u3099","\u307e\u3093\u304d\u3064","\u307e\u3093\u305d\u3099\u304f","\u307e\u3093\u306a\u304b","\u307f\u3044\u3089","\u307f\u3046\u3061","\u307f\u3048\u308b","\u307f\u304b\u3099\u304f","\u307f\u304b\u305f","\u307f\u304b\u3093","\u307f\u3051\u3093","\u307f\u3053\u3093","\u307f\u3057\u3099\u304b\u3044","\u307f\u3059\u3044","\u307f\u3059\u3048\u308b","\u307f\u305b\u308b","\u307f\u3063\u304b","\u307f\u3064\u304b\u308b","\u307f\u3064\u3051\u308b","\u307f\u3066\u3044","\u307f\u3068\u3081\u308b","\u307f\u306a\u3068","\u307f\u306a\u307f\u304b\u3055\u3044","\u307f\u306d\u3089\u308b","\u307f\u306e\u3046","\u307f\u306e\u304b\u3099\u3059","\u307f\u307b\u3093","\u307f\u3082\u3068","\u307f\u3084\u3051\u3099","\u307f\u3089\u3044","\u307f\u308a\u3087\u304f","\u307f\u308f\u304f","\u307f\u3093\u304b","\u307f\u3093\u305d\u3099\u304f","\u3080\u3044\u304b","\u3080\u3048\u304d","\u3080\u3048\u3093","\u3080\u304b\u3044","\u3080\u304b\u3046","\u3080\u304b\u3048","\u3080\u304b\u3057","\u3080\u304d\u3099\u3061\u3083","\u3080\u3051\u308b","\u3080\u3051\u3099\u3093","\u3080\u3055\u307b\u3099\u308b","\u3080\u3057\u3042\u3064\u3044","\u3080\u3057\u306f\u3099","\u3080\u3057\u3099\u3085\u3093","\u3080\u3057\u308d","\u3080\u3059\u3046","\u3080\u3059\u3053","\u3080\u3059\u3075\u3099","\u3080\u3059\u3081","\u3080\u305b\u308b","\u3080\u305b\u3093","\u3080\u3061\u3085\u3046","\u3080\u306a\u3057\u3044","\u3080\u306e\u3046","\u3080\u3084\u307f","\u3080\u3088\u3046","\u3080\u3089\u3055\u304d","\u3080\u308a\u3087\u3046","\u3080\u308d\u3093","\u3081\u3044\u3042\u3093","\u3081\u3044\u3046\u3093","\u3081\u3044\u3048\u3093","\u3081\u3044\u304b\u304f","\u3081\u3044\u304d\u3087\u304f","\u3081\u3044\u3055\u3044","\u3081\u3044\u3057","\u3081\u3044\u305d\u3046","\u3081\u3044\u3075\u3099\u3064","\u3081\u3044\u308c\u3044","\u3081\u3044\u308f\u304f","\u3081\u304f\u3099\u307e\u308c\u308b","\u3081\u3055\u3099\u3059","\u3081\u3057\u305f","\u3081\u3059\u3099\u3089\u3057\u3044","\u3081\u305f\u3099\u3064","\u3081\u307e\u3044","\u3081\u3084\u3059","\u3081\u3093\u304d\u3087","\u3081\u3093\u305b\u304d","\u3081\u3093\u3068\u3099\u3046","\u3082\u3046\u3057\u3042\u3051\u3099\u308b","\u3082\u3046\u3068\u3099\u3046\u3051\u3093","\u3082\u3048\u308b","\u3082\u304f\u3057","\u3082\u304f\u3066\u304d","\u3082\u304f\u3088\u3046\u3072\u3099","\u3082\u3061\u308d\u3093","\u3082\u3068\u3099\u308b","\u3082\u3089\u3046","\u3082\u3093\u304f","\u3082\u3093\u305f\u3099\u3044","\u3084\u304a\u3084","\u3084\u3051\u308b","\u3084\u3055\u3044","\u3084\u3055\u3057\u3044","\u3084\u3059\u3044","\u3084\u3059\u305f\u308d\u3046","\u3084\u3059\u307f","\u3084\u305b\u308b","\u3084\u305d\u3046","\u3084\u305f\u3044","\u3084\u3061\u3093","\u3084\u3063\u3068","\u3084\u3063\u306f\u309a\u308a","\u3084\u3075\u3099\u308b","\u3084\u3081\u308b","\u3084\u3084\u3053\u3057\u3044","\u3084\u3088\u3044","\u3084\u308f\u3089\u304b\u3044","\u3086\u3046\u304d","\u3086\u3046\u3072\u3099\u3093\u304d\u3087\u304f","\u3086\u3046\u3078\u3099","\u3086\u3046\u3081\u3044","\u3086\u3051\u3064","\u3086\u3057\u3085\u3064","\u3086\u305b\u3093","\u3086\u305d\u3046","\u3086\u305f\u304b","\u3086\u3061\u3083\u304f","\u3086\u3066\u3099\u308b","\u3086\u306b\u3085\u3046","\u3086\u3072\u3099\u308f","\u3086\u3089\u3044","\u3086\u308c\u308b","\u3088\u3046\u3044","\u3088\u3046\u304b","\u3088\u3046\u304d\u3085\u3046","\u3088\u3046\u3057\u3099","\u3088\u3046\u3059","\u3088\u3046\u3061\u3048\u3093","\u3088\u304b\u305b\u3099","\u3088\u304b\u3093","\u3088\u304d\u3093","\u3088\u304f\u305b\u3044","\u3088\u304f\u307b\u3099\u3046","\u3088\u3051\u3044","\u3088\u3053\u3099\u308c\u308b","\u3088\u3055\u3093","\u3088\u3057\u3085\u3046","\u3088\u305d\u3046","\u3088\u305d\u304f","\u3088\u3063\u304b","\u3088\u3066\u3044","\u3088\u3068\u3099\u304b\u3099\u308f\u304f","\u3088\u306d\u3064","\u3088\u3084\u304f","\u3088\u3086\u3046","\u3088\u308d\u3053\u3075\u3099","\u3088\u308d\u3057\u3044","\u3089\u3044\u3046","\u3089\u304f\u304b\u3099\u304d","\u3089\u304f\u3053\u3099","\u3089\u304f\u3055\u3064","\u3089\u304f\u305f\u3099","\u3089\u3057\u3093\u306f\u3099\u3093","\u3089\u305b\u3093","\u3089\u305d\u3099\u304f","\u3089\u305f\u3044","\u3089\u3063\u304b","\u3089\u308c\u3064","\u308a\u3048\u304d","\u308a\u304b\u3044","\u308a\u304d\u3055\u304f","\u308a\u304d\u305b\u3064","\u308a\u304f\u304f\u3099\u3093","\u308a\u304f\u3064","\u308a\u3051\u3093","\u308a\u3053\u3046","\u308a\u305b\u3044","\u308a\u305d\u3046","\u308a\u305d\u304f","\u308a\u3066\u3093","\u308a\u306d\u3093","\u308a\u3086\u3046","\u308a\u3085\u3046\u304b\u3099\u304f","\u308a\u3088\u3046","\u308a\u3087\u3046\u308a","\u308a\u3087\u304b\u3093","\u308a\u3087\u304f\u3061\u3083","\u308a\u3087\u3053\u3046","\u308a\u308a\u304f","\u308a\u308c\u304d","\u308a\u308d\u3093","\u308a\u3093\u3053\u3099","\u308b\u3044\u3051\u3044","\u308b\u3044\u3055\u3044","\u308b\u3044\u3057\u3099","\u308b\u3044\u305b\u304d","\u308b\u3059\u306f\u3099\u3093","\u308b\u308a\u304b\u3099\u308f\u3089","\u308c\u3044\u304b\u3093","\u308c\u3044\u304d\u3099","\u308c\u3044\u305b\u3044","\u308c\u3044\u305d\u3099\u3046\u3053","\u308c\u3044\u3068\u3046","\u308c\u3044\u307b\u3099\u3046","\u308c\u304d\u3057","\u308c\u304d\u305f\u3099\u3044","\u308c\u3093\u3042\u3044","\u308c\u3093\u3051\u3044","\u308c\u3093\u3053\u3093","\u308c\u3093\u3055\u3044","\u308c\u3093\u3057\u3085\u3046","\u308c\u3093\u305d\u3099\u304f","\u308c\u3093\u3089\u304f","\u308d\u3046\u304b","\u308d\u3046\u3053\u3099","\u308d\u3046\u3057\u3099\u3093","\u308d\u3046\u305d\u304f","\u308d\u304f\u304b\u3099","\u308d\u3053\u3064","\u308d\u3057\u3099\u3046\u3089","\u308d\u3057\u3085\u3064","\u308d\u305b\u3093","\u308d\u3066\u3093","\u308d\u3081\u3093","\u308d\u308c\u3064","\u308d\u3093\u304d\u3099","\u308d\u3093\u306f\u309a","\u308d\u3093\u3075\u3099\u3093","\u308d\u3093\u308a","\u308f\u304b\u3059","\u308f\u304b\u3081","\u308f\u304b\u3084\u307e","\u308f\u304b\u308c\u308b","\u308f\u3057\u3064","\u308f\u3057\u3099\u307e\u3057","\u308f\u3059\u308c\u3082\u306e","\u308f\u3089\u3046","\u308f\u308c\u308b"]')},5428:e=>{"use strict";e.exports=JSON.parse('["\u1100\u1161\u1100\u1167\u11a8","\u1100\u1161\u1101\u1173\u11b7","\u1100\u1161\u1102\u1161\u11ab","\u1100\u1161\u1102\u1173\u11bc","\u1100\u1161\u1103\u1173\u11a8","\u1100\u1161\u1105\u1173\u110e\u1175\u11b7","\u1100\u1161\u1106\u116e\u11b7","\u1100\u1161\u1107\u1161\u11bc","\u1100\u1161\u1109\u1161\u11bc","\u1100\u1161\u1109\u1173\u11b7","\u1100\u1161\u110b\u116e\u11ab\u1103\u1166","\u1100\u1161\u110b\u1173\u11af","\u1100\u1161\u110b\u1175\u1103\u1173","\u1100\u1161\u110b\u1175\u11b8","\u1100\u1161\u110c\u1161\u11bc","\u1100\u1161\u110c\u1165\u11bc","\u1100\u1161\u110c\u1169\u11a8","\u1100\u1161\u110c\u116e\u11a8","\u1100\u1161\u11a8\u110b\u1169","\u1100\u1161\u11a8\u110c\u1161","\u1100\u1161\u11ab\u1100\u1167\u11a8","\u1100\u1161\u11ab\u1107\u116e","\u1100\u1161\u11ab\u1109\u1165\u11b8","\u1100\u1161\u11ab\u110c\u1161\u11bc","\u1100\u1161\u11ab\u110c\u1165\u11b8","\u1100\u1161\u11ab\u1111\u1161\u11ab","\u1100\u1161\u11af\u1103\u1173\u11bc","\u1100\u1161\u11af\u1107\u1175","\u1100\u1161\u11af\u1109\u1162\u11a8","\u1100\u1161\u11af\u110c\u1173\u11bc","\u1100\u1161\u11b7\u1100\u1161\u11a8","\u1100\u1161\u11b7\u1100\u1175","\u1100\u1161\u11b7\u1109\u1169","\u1100\u1161\u11b7\u1109\u116e\u1109\u1165\u11bc","\u1100\u1161\u11b7\u110c\u1161","\u1100\u1161\u11b7\u110c\u1165\u11bc","\u1100\u1161\u11b8\u110c\u1161\u1100\u1175","\u1100\u1161\u11bc\u1102\u1161\u11b7","\u1100\u1161\u11bc\u1103\u1161\u11bc","\u1100\u1161\u11bc\u1103\u1169","\u1100\u1161\u11bc\u1105\u1167\u11a8\u1112\u1175","\u1100\u1161\u11bc\u1107\u1167\u11ab","\u1100\u1161\u11bc\u1107\u116e\u11a8","\u1100\u1161\u11bc\u1109\u1161","\u1100\u1161\u11bc\u1109\u116e\u1105\u1163\u11bc","\u1100\u1161\u11bc\u110b\u1161\u110c\u1175","\u1100\u1161\u11bc\u110b\u116f\u11ab\u1103\u1169","\u1100\u1161\u11bc\u110b\u1174","\u1100\u1161\u11bc\u110c\u1166","\u1100\u1161\u11bc\u110c\u1169","\u1100\u1161\u11c0\u110b\u1175","\u1100\u1162\u1100\u116e\u1105\u1175","\u1100\u1162\u1102\u1161\u1105\u1175","\u1100\u1162\u1107\u1161\u11bc","\u1100\u1162\u1107\u1167\u11af","\u1100\u1162\u1109\u1165\u11ab","\u1100\u1162\u1109\u1165\u11bc","\u1100\u1162\u110b\u1175\u11ab","\u1100\u1162\u11a8\u1100\u116a\u11ab\u110c\u1165\u11a8","\u1100\u1165\u1109\u1175\u11af","\u1100\u1165\u110b\u1162\u11a8","\u1100\u1165\u110b\u116e\u11af","\u1100\u1165\u110c\u1175\u11ba","\u1100\u1165\u1111\u116e\u11b7","\u1100\u1165\u11a8\u110c\u1165\u11bc","\u1100\u1165\u11ab\u1100\u1161\u11bc","\u1100\u1165\u11ab\u1106\u116e\u11af","\u1100\u1165\u11ab\u1109\u1165\u11af","\u1100\u1165\u11ab\u110c\u1169","\u1100\u1165\u11ab\u110e\u116e\u11a8","\u1100\u1165\u11af\u110b\u1173\u11b7","\u1100\u1165\u11b7\u1109\u1161","\u1100\u1165\u11b7\u1110\u1169","\u1100\u1166\u1109\u1175\u1111\u1161\u11ab","\u1100\u1166\u110b\u1175\u11b7","\u1100\u1167\u110b\u116e\u11af","\u1100\u1167\u11ab\u1112\u1162","\u1100\u1167\u11af\u1100\u116a","\u1100\u1167\u11af\u1100\u116e\u11a8","\u1100\u1167\u11af\u1105\u1169\u11ab","\u1100\u1167\u11af\u1109\u1165\u11a8","\u1100\u1167\u11af\u1109\u1173\u11bc","\u1100\u1167\u11af\u1109\u1175\u11b7","\u1100\u1167\u11af\u110c\u1165\u11bc","\u1100\u1167\u11af\u1112\u1169\u11ab","\u1100\u1167\u11bc\u1100\u1168","\u1100\u1167\u11bc\u1100\u1169","\u1100\u1167\u11bc\u1100\u1175","\u1100\u1167\u11bc\u1105\u1167\u11a8","\u1100\u1167\u11bc\u1107\u1169\u11a8\u1100\u116e\u11bc","\u1100\u1167\u11bc\u1107\u1175","\u1100\u1167\u11bc\u1109\u1161\u11bc\u1103\u1169","\u1100\u1167\u11bc\u110b\u1167\u11bc","\u1100\u1167\u11bc\u110b\u116e","\u1100\u1167\u11bc\u110c\u1162\u11bc","\u1100\u1167\u11bc\u110c\u1166","\u1100\u1167\u11bc\u110c\u116e","\u1100\u1167\u11bc\u110e\u1161\u11af","\u1100\u1167\u11bc\u110e\u1175","\u1100\u1167\u11bc\u1112\u1163\u11bc","\u1100\u1167\u11bc\u1112\u1165\u11b7","\u1100\u1168\u1100\u1169\u11a8","\u1100\u1168\u1103\u1161\u11ab","\u1100\u1168\u1105\u1161\u11ab","\u1100\u1168\u1109\u1161\u11ab","\u1100\u1168\u1109\u1169\u11a8","\u1100\u1168\u110b\u1163\u11a8","\u1100\u1168\u110c\u1165\u11af","\u1100\u1168\u110e\u1173\u11bc","\u1100\u1168\u1112\u116c\u11a8","\u1100\u1169\u1100\u1162\u11a8","\u1100\u1169\u1100\u116e\u1105\u1167","\u1100\u1169\u1100\u116e\u11bc","\u1100\u1169\u1100\u1173\u11b8","\u1100\u1169\u1103\u1173\u11bc\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1100\u1169\u1106\u116e\u1109\u1175\u11ab","\u1100\u1169\u1106\u1175\u11ab","\u1100\u1169\u110b\u1163\u11bc\u110b\u1175","\u1100\u1169\u110c\u1161\u11bc","\u1100\u1169\u110c\u1165\u11ab","\u1100\u1169\u110c\u1175\u11b8","\u1100\u1169\u110e\u116e\u11ba\u1100\u1161\u1105\u116e","\u1100\u1169\u1110\u1169\u11bc","\u1100\u1169\u1112\u1163\u11bc","\u1100\u1169\u11a8\u1109\u1175\u11a8","\u1100\u1169\u11af\u1106\u1169\u11a8","\u1100\u1169\u11af\u110d\u1161\u1100\u1175","\u1100\u1169\u11af\u1111\u1173","\u1100\u1169\u11bc\u1100\u1161\u11ab","\u1100\u1169\u11bc\u1100\u1162","\u1100\u1169\u11bc\u1100\u1167\u11a8","\u1100\u1169\u11bc\u1100\u116e\u11ab","\u1100\u1169\u11bc\u1100\u1173\u11b8","\u1100\u1169\u11bc\u1100\u1175","\u1100\u1169\u11bc\u1103\u1169\u11bc","\u1100\u1169\u11bc\u1106\u116e\u110b\u116f\u11ab","\u1100\u1169\u11bc\u1107\u116e","\u1100\u1169\u11bc\u1109\u1161","\u1100\u1169\u11bc\u1109\u1175\u11a8","\u1100\u1169\u11bc\u110b\u1165\u11b8","\u1100\u1169\u11bc\u110b\u1167\u11ab","\u1100\u1169\u11bc\u110b\u116f\u11ab","\u1100\u1169\u11bc\u110c\u1161\u11bc","\u1100\u1169\u11bc\u110d\u1161","\u1100\u1169\u11bc\u110e\u1162\u11a8","\u1100\u1169\u11bc\u1110\u1169\u11bc","\u1100\u1169\u11bc\u1111\u1169","\u1100\u1169\u11bc\u1112\u1161\u11bc","\u1100\u1169\u11bc\u1112\u1172\u110b\u1175\u11af","\u1100\u116a\u1106\u1169\u11a8","\u1100\u116a\u110b\u1175\u11af","\u1100\u116a\u110c\u1161\u11bc","\u1100\u116a\u110c\u1165\u11bc","\u1100\u116a\u1112\u1161\u11a8","\u1100\u116a\u11ab\u1100\u1162\u11a8","\u1100\u116a\u11ab\u1100\u1168","\u1100\u116a\u11ab\u1100\u116a\u11bc","\u1100\u116a\u11ab\u1102\u1167\u11b7","\u1100\u116a\u11ab\u1105\u1161\u11b7","\u1100\u116a\u11ab\u1105\u1167\u11ab","\u1100\u116a\u11ab\u1105\u1175","\u1100\u116a\u11ab\u1109\u1173\u11b8","\u1100\u116a\u11ab\u1109\u1175\u11b7","\u1100\u116a\u11ab\u110c\u1165\u11b7","\u1100\u116a\u11ab\u110e\u1161\u11af","\u1100\u116a\u11bc\u1100\u1167\u11bc","\u1100\u116a\u11bc\u1100\u1169","\u1100\u116a\u11bc\u110c\u1161\u11bc","\u1100\u116a\u11bc\u110c\u116e","\u1100\u116c\u1105\u1169\u110b\u116e\u11b7","\u1100\u116c\u11bc\u110c\u1161\u11bc\u1112\u1175","\u1100\u116d\u1100\u116a\u1109\u1165","\u1100\u116d\u1106\u116e\u11ab","\u1100\u116d\u1107\u1169\u11a8","\u1100\u116d\u1109\u1175\u11af","\u1100\u116d\u110b\u1163\u11bc","\u1100\u116d\u110b\u1172\u11a8","\u1100\u116d\u110c\u1161\u11bc","\u1100\u116d\u110c\u1175\u11a8","\u1100\u116d\u1110\u1169\u11bc","\u1100\u116d\u1112\u116a\u11ab","\u1100\u116d\u1112\u116e\u11ab","\u1100\u116e\u1100\u1167\u11bc","\u1100\u116e\u1105\u1173\u11b7","\u1100\u116e\u1106\u1165\u11bc","\u1100\u116e\u1107\u1167\u11af","\u1100\u116e\u1107\u116e\u11ab","\u1100\u116e\u1109\u1165\u11a8","\u1100\u116e\u1109\u1165\u11bc","\u1100\u116e\u1109\u1169\u11a8","\u1100\u116e\u110b\u1167\u11a8","\u1100\u116e\u110b\u1175\u11b8","\u1100\u116e\u110e\u1165\u11bc","\u1100\u116e\u110e\u1166\u110c\u1165\u11a8","\u1100\u116e\u11a8\u1100\u1161","\u1100\u116e\u11a8\u1100\u1175","\u1100\u116e\u11a8\u1102\u1162","\u1100\u116e\u11a8\u1105\u1175\u11b8","\u1100\u116e\u11a8\u1106\u116e\u11af","\u1100\u116e\u11a8\u1106\u1175\u11ab","\u1100\u116e\u11a8\u1109\u116e","\u1100\u116e\u11a8\u110b\u1165","\u1100\u116e\u11a8\u110b\u116a\u11bc","\u1100\u116e\u11a8\u110c\u1165\u11a8","\u1100\u116e\u11a8\u110c\u1166","\u1100\u116e\u11a8\u1112\u116c","\u1100\u116e\u11ab\u1103\u1162","\u1100\u116e\u11ab\u1109\u1161","\u1100\u116e\u11ab\u110b\u1175\u11ab","\u1100\u116e\u11bc\u1100\u1173\u11a8\u110c\u1165\u11a8","\u1100\u116f\u11ab\u1105\u1175","\u1100\u116f\u11ab\u110b\u1171","\u1100\u116f\u11ab\u1110\u116e","\u1100\u1171\u1100\u116e\u11a8","\u1100\u1171\u1109\u1175\u11ab","\u1100\u1172\u110c\u1165\u11bc","\u1100\u1172\u110e\u1175\u11a8","\u1100\u1172\u11ab\u1112\u1167\u11bc","\u1100\u1173\u1102\u1161\u11af","\u1100\u1173\u1102\u1163\u11bc","\u1100\u1173\u1102\u1173\u11af","\u1100\u1173\u1105\u1165\u1102\u1161","\u1100\u1173\u1105\u116e\u11b8","\u1100\u1173\u1105\u1173\u11ba","\u1100\u1173\u1105\u1175\u11b7","\u1100\u1173\u110c\u1166\u1109\u1165\u110b\u1163","\u1100\u1173\u1110\u1169\u1105\u1169\u11a8","\u1100\u1173\u11a8\u1107\u1169\u11a8","\u1100\u1173\u11a8\u1112\u1175","\u1100\u1173\u11ab\u1100\u1165","\u1100\u1173\u11ab\u1100\u116d","\u1100\u1173\u11ab\u1105\u1162","\u1100\u1173\u11ab\u1105\u1169","\u1100\u1173\u11ab\u1106\u116e","\u1100\u1173\u11ab\u1107\u1169\u11ab","\u1100\u1173\u11ab\u110b\u116f\u11ab","\u1100\u1173\u11ab\u110b\u1172\u11a8","\u1100\u1173\u11ab\u110e\u1165","\u1100\u1173\u11af\u110a\u1175","\u1100\u1173\u11af\u110c\u1161","\u1100\u1173\u11b7\u1100\u1161\u11bc\u1109\u1161\u11ab","\u1100\u1173\u11b7\u1100\u1169","\u1100\u1173\u11b7\u1102\u1167\u11ab","\u1100\u1173\u11b7\u1106\u1166\u1103\u1161\u11af","\u1100\u1173\u11b7\u110b\u1162\u11a8","\u1100\u1173\u11b7\u110b\u1167\u11ab","\u1100\u1173\u11b7\u110b\u116d\u110b\u1175\u11af","\u1100\u1173\u11b7\u110c\u1175","\u1100\u1173\u11bc\u110c\u1165\u11bc\u110c\u1165\u11a8","\u1100\u1175\u1100\u1161\u11ab","\u1100\u1175\u1100\u116a\u11ab","\u1100\u1175\u1102\u1167\u11b7","\u1100\u1175\u1102\u1173\u11bc","\u1100\u1175\u1103\u1169\u11a8\u1100\u116d","\u1100\u1175\u1103\u116e\u11bc","\u1100\u1175\u1105\u1169\u11a8","\u1100\u1175\u1105\u1173\u11b7","\u1100\u1175\u1107\u1165\u11b8","\u1100\u1175\u1107\u1169\u11ab","\u1100\u1175\u1107\u116e\u11ab","\u1100\u1175\u1108\u1173\u11b7","\u1100\u1175\u1109\u116e\u11a8\u1109\u1161","\u1100\u1175\u1109\u116e\u11af","\u1100\u1175\u110b\u1165\u11a8","\u1100\u1175\u110b\u1165\u11b8","\u1100\u1175\u110b\u1169\u11ab","\u1100\u1175\u110b\u116e\u11ab","\u1100\u1175\u110b\u116f\u11ab","\u1100\u1175\u110c\u1165\u11a8","\u1100\u1175\u110c\u116e\u11ab","\u1100\u1175\u110e\u1175\u11b7","\u1100\u1175\u1112\u1169\u11ab","\u1100\u1175\u1112\u116c\u11a8","\u1100\u1175\u11ab\u1100\u1173\u11b8","\u1100\u1175\u11ab\u110c\u1161\u11bc","\u1100\u1175\u11af\u110b\u1175","\u1100\u1175\u11b7\u1107\u1161\u11b8","\u1100\u1175\u11b7\u110e\u1175","\u1100\u1175\u11b7\u1111\u1169\u1100\u1169\u11bc\u1112\u1161\u11bc","\u1101\u1161\u11a8\u1103\u116e\u1100\u1175","\u1101\u1161\u11b7\u1108\u1161\u11a8","\u1101\u1162\u1103\u1161\u11af\u110b\u1173\u11b7","\u1101\u1162\u1109\u1169\u1100\u1173\u11b7","\u1101\u1165\u11b8\u110c\u1175\u11af","\u1101\u1169\u11a8\u1103\u1162\u1100\u1175","\u1101\u1169\u11be\u110b\u1175\u11c1","\u1102\u1161\u1103\u1173\u11af\u110b\u1175","\u1102\u1161\u1105\u1161\u11ab\u1112\u1175","\u1102\u1161\u1106\u1165\u110c\u1175","\u1102\u1161\u1106\u116e\u11af","\u1102\u1161\u110e\u1175\u11b7\u1107\u1161\u11ab","\u1102\u1161\u1112\u1173\u11af","\u1102\u1161\u11a8\u110b\u1167\u11b8","\u1102\u1161\u11ab\u1107\u1161\u11bc","\u1102\u1161\u11af\u1100\u1162","\u1102\u1161\u11af\u110a\u1175","\u1102\u1161\u11af\u110d\u1161","\u1102\u1161\u11b7\u1102\u1167","\u1102\u1161\u11b7\u1103\u1162\u1106\u116e\u11ab","\u1102\u1161\u11b7\u1106\u1162","\u1102\u1161\u11b7\u1109\u1161\u11ab","\u1102\u1161\u11b7\u110c\u1161","\u1102\u1161\u11b7\u1111\u1167\u11ab","\u1102\u1161\u11b7\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1102\u1161\u11bc\u1107\u1175","\u1102\u1161\u11c0\u1106\u1161\u11af","\u1102\u1162\u1102\u1167\u11ab","\u1102\u1162\u110b\u116d\u11bc","\u1102\u1162\u110b\u1175\u11af","\u1102\u1162\u11b7\u1107\u1175","\u1102\u1162\u11b7\u1109\u1162","\u1102\u1162\u11ba\u1106\u116e\u11af","\u1102\u1162\u11bc\u1103\u1169\u11bc","\u1102\u1162\u11bc\u1106\u1167\u11ab","\u1102\u1162\u11bc\u1107\u1161\u11bc","\u1102\u1162\u11bc\u110c\u1161\u11bc\u1100\u1169","\u1102\u1166\u11a8\u1110\u1161\u110b\u1175","\u1102\u1166\u11ba\u110d\u1162","\u1102\u1169\u1103\u1169\u11bc","\u1102\u1169\u1105\u1161\u11ab\u1109\u1162\u11a8","\u1102\u1169\u1105\u1167\u11a8","\u1102\u1169\u110b\u1175\u11ab","\u1102\u1169\u11a8\u110b\u1173\u11b7","\u1102\u1169\u11a8\u110e\u1161","\u1102\u1169\u11a8\u1112\u116a","\u1102\u1169\u11ab\u1105\u1175","\u1102\u1169\u11ab\u1106\u116e\u11ab","\u1102\u1169\u11ab\u110c\u1162\u11bc","\u1102\u1169\u11af\u110b\u1175","\u1102\u1169\u11bc\u1100\u116e","\u1102\u1169\u11bc\u1103\u1161\u11b7","\u1102\u1169\u11bc\u1106\u1175\u11ab","\u1102\u1169\u11bc\u1107\u116e","\u1102\u1169\u11bc\u110b\u1165\u11b8","\u1102\u1169\u11bc\u110c\u1161\u11bc","\u1102\u1169\u11bc\u110e\u1169\u11ab","\u1102\u1169\u11c1\u110b\u1175","\u1102\u116e\u11ab\u1103\u1169\u11bc\u110c\u1161","\u1102\u116e\u11ab\u1106\u116e\u11af","\u1102\u116e\u11ab\u110a\u1165\u11b8","\u1102\u1172\u110b\u116d\u11a8","\u1102\u1173\u1101\u1175\u11b7","\u1102\u1173\u11a8\u1103\u1162","\u1102\u1173\u11bc\u1103\u1169\u11bc\u110c\u1165\u11a8","\u1102\u1173\u11bc\u1105\u1167\u11a8","\u1103\u1161\u1107\u1161\u11bc","\u1103\u1161\u110b\u1163\u11bc\u1109\u1165\u11bc","\u1103\u1161\u110b\u1173\u11b7","\u1103\u1161\u110b\u1175\u110b\u1165\u1110\u1173","\u1103\u1161\u1112\u1162\u11bc","\u1103\u1161\u11ab\u1100\u1168","\u1103\u1161\u11ab\u1100\u1169\u11af","\u1103\u1161\u11ab\u1103\u1169\u11a8","\u1103\u1161\u11ab\u1106\u1161\u11ba","\u1103\u1161\u11ab\u1109\u116e\u11ab","\u1103\u1161\u11ab\u110b\u1165","\u1103\u1161\u11ab\u110b\u1171","\u1103\u1161\u11ab\u110c\u1165\u11b7","\u1103\u1161\u11ab\u110e\u1166","\u1103\u1161\u11ab\u110e\u116e","\u1103\u1161\u11ab\u1111\u1167\u11ab","\u1103\u1161\u11ab\u1111\u116e\u11bc","\u1103\u1161\u11af\u1100\u1163\u11af","\u1103\u1161\u11af\u1105\u1165","\u1103\u1161\u11af\u1105\u1167\u11a8","\u1103\u1161\u11af\u1105\u1175","\u1103\u1161\u11b0\u1100\u1169\u1100\u1175","\u1103\u1161\u11b7\u1103\u1161\u11bc","\u1103\u1161\u11b7\u1107\u1162","\u1103\u1161\u11b7\u110b\u116d","\u1103\u1161\u11b7\u110b\u1175\u11b7","\u1103\u1161\u11b8\u1107\u1167\u11ab","\u1103\u1161\u11b8\u110c\u1161\u11bc","\u1103\u1161\u11bc\u1100\u1173\u11ab","\u1103\u1161\u11bc\u1107\u116e\u11ab\u1100\u1161\u11ab","\u1103\u1161\u11bc\u110b\u1167\u11ab\u1112\u1175","\u1103\u1161\u11bc\u110c\u1161\u11bc","\u1103\u1162\u1100\u1172\u1106\u1169","\u1103\u1162\u1102\u1161\u11bd","\u1103\u1162\u1103\u1161\u11ab\u1112\u1175","\u1103\u1162\u1103\u1161\u11b8","\u1103\u1162\u1103\u1169\u1109\u1175","\u1103\u1162\u1105\u1163\u11a8","\u1103\u1162\u1105\u1163\u11bc","\u1103\u1162\u1105\u1172\u11a8","\u1103\u1162\u1106\u116e\u11ab","\u1103\u1162\u1107\u116e\u1107\u116e\u11ab","\u1103\u1162\u1109\u1175\u11ab","\u1103\u1162\u110b\u1173\u11bc","\u1103\u1162\u110c\u1161\u11bc","\u1103\u1162\u110c\u1165\u11ab","\u1103\u1162\u110c\u1165\u11b8","\u1103\u1162\u110c\u116e\u11bc","\u1103\u1162\u110e\u1162\u11a8","\u1103\u1162\u110e\u116e\u11af","\u1103\u1162\u110e\u116e\u11bc","\u1103\u1162\u1110\u1169\u11bc\u1105\u1167\u11bc","\u1103\u1162\u1112\u1161\u11a8","\u1103\u1162\u1112\u1161\u11ab\u1106\u1175\u11ab\u1100\u116e\u11a8","\u1103\u1162\u1112\u1161\u11b8\u1109\u1175\u11af","\u1103\u1162\u1112\u1167\u11bc","\u1103\u1165\u11bc\u110b\u1165\u1105\u1175","\u1103\u1166\u110b\u1175\u1110\u1173","\u1103\u1169\u1103\u1162\u110e\u1166","\u1103\u1169\u1103\u1165\u11a8","\u1103\u1169\u1103\u116e\u11a8","\u1103\u1169\u1106\u1161\u11bc","\u1103\u1169\u1109\u1165\u1100\u116a\u11ab","\u1103\u1169\u1109\u1175\u11b7","\u1103\u1169\u110b\u116e\u11b7","\u1103\u1169\u110b\u1175\u11b8","\u1103\u1169\u110c\u1161\u1100\u1175","\u1103\u1169\u110c\u1165\u1112\u1175","\u1103\u1169\u110c\u1165\u11ab","\u1103\u1169\u110c\u116e\u11bc","\u1103\u1169\u110e\u1161\u11a8","\u1103\u1169\u11a8\u1100\u1161\u11b7","\u1103\u1169\u11a8\u1105\u1175\u11b8","\u1103\u1169\u11a8\u1109\u1165","\u1103\u1169\u11a8\u110b\u1175\u11af","\u1103\u1169\u11a8\u110e\u1161\u11bc\u110c\u1165\u11a8","\u1103\u1169\u11bc\u1112\u116a\u110e\u1162\u11a8","\u1103\u1171\u11ba\u1106\u1169\u1109\u1173\u11b8","\u1103\u1171\u11ba\u1109\u1161\u11ab","\u1104\u1161\u11af\u110b\u1161\u110b\u1175","\u1106\u1161\u1102\u116e\u1105\u1161","\u1106\u1161\u1102\u1173\u11af","\u1106\u1161\u1103\u1161\u11bc","\u1106\u1161\u1105\u1161\u1110\u1169\u11ab","\u1106\u1161\u1105\u1167\u11ab","\u1106\u1161\u1106\u116e\u1105\u1175","\u1106\u1161\u1109\u1161\u110c\u1175","\u1106\u1161\u110b\u1163\u11a8","\u1106\u1161\u110b\u116d\u1102\u1166\u110c\u1173","\u1106\u1161\u110b\u1173\u11af","\u1106\u1161\u110b\u1173\u11b7","\u1106\u1161\u110b\u1175\u110f\u1173","\u1106\u1161\u110c\u116e\u11bc","\u1106\u1161\u110c\u1175\u1106\u1161\u11a8","\u1106\u1161\u110e\u1161\u11ab\u1100\u1161\u110c\u1175","\u1106\u1161\u110e\u1161\u11af","\u1106\u1161\u1112\u1173\u11ab","\u1106\u1161\u11a8\u1100\u1165\u11af\u1105\u1175","\u1106\u1161\u11a8\u1102\u1162","\u1106\u1161\u11a8\u1109\u1161\u11bc","\u1106\u1161\u11ab\u1102\u1161\u11b7","\u1106\u1161\u11ab\u1103\u116e","\u1106\u1161\u11ab\u1109\u1166","\u1106\u1161\u11ab\u110b\u1163\u11a8","\u1106\u1161\u11ab\u110b\u1175\u11af","\u1106\u1161\u11ab\u110c\u1165\u11b7","\u1106\u1161\u11ab\u110c\u1169\u11a8","\u1106\u1161\u11ab\u1112\u116a","\u1106\u1161\u11ad\u110b\u1175","\u1106\u1161\u11af\u1100\u1175","\u1106\u1161\u11af\u110a\u1173\u11b7","\u1106\u1161\u11af\u1110\u116e","\u1106\u1161\u11b7\u1103\u1162\u1105\u1169","\u1106\u1161\u11bc\u110b\u116f\u11ab\u1100\u1167\u11bc","\u1106\u1162\u1102\u1167\u11ab","\u1106\u1162\u1103\u1161\u11af","\u1106\u1162\u1105\u1167\u11a8","\u1106\u1162\u1107\u1165\u11ab","\u1106\u1162\u1109\u1173\u110f\u1165\u11b7","\u1106\u1162\u110b\u1175\u11af","\u1106\u1162\u110c\u1161\u11bc","\u1106\u1162\u11a8\u110c\u116e","\u1106\u1165\u11a8\u110b\u1175","\u1106\u1165\u11ab\u110c\u1165","\u1106\u1165\u11ab\u110c\u1175","\u1106\u1165\u11af\u1105\u1175","\u1106\u1166\u110b\u1175\u11af","\u1106\u1167\u1102\u1173\u1105\u1175","\u1106\u1167\u110e\u1175\u11af","\u1106\u1167\u11ab\u1103\u1161\u11b7","\u1106\u1167\u11af\u110e\u1175","\u1106\u1167\u11bc\u1103\u1161\u11ab","\u1106\u1167\u11bc\u1105\u1167\u11bc","\u1106\u1167\u11bc\u110b\u1168","\u1106\u1167\u11bc\u110b\u1174","\u1106\u1167\u11bc\u110c\u1165\u11af","\u1106\u1167\u11bc\u110e\u1175\u11bc","\u1106\u1167\u11bc\u1112\u1161\u11b7","\u1106\u1169\u1100\u1173\u11b7","\u1106\u1169\u1102\u1175\u1110\u1165","\u1106\u1169\u1103\u1166\u11af","\u1106\u1169\u1103\u1173\u11ab","\u1106\u1169\u1107\u1165\u11b7","\u1106\u1169\u1109\u1173\u11b8","\u1106\u1169\u110b\u1163\u11bc","\u1106\u1169\u110b\u1175\u11b7","\u1106\u1169\u110c\u1169\u1105\u1175","\u1106\u1169\u110c\u1175\u11b8","\u1106\u1169\u1110\u116e\u11bc\u110b\u1175","\u1106\u1169\u11a8\u1100\u1165\u11af\u110b\u1175","\u1106\u1169\u11a8\u1105\u1169\u11a8","\u1106\u1169\u11a8\u1109\u1161","\u1106\u1169\u11a8\u1109\u1169\u1105\u1175","\u1106\u1169\u11a8\u1109\u116e\u11b7","\u1106\u1169\u11a8\u110c\u1165\u11a8","\u1106\u1169\u11a8\u1111\u116d","\u1106\u1169\u11af\u1105\u1162","\u1106\u1169\u11b7\u1106\u1162","\u1106\u1169\u11b7\u1106\u116e\u1100\u1166","\u1106\u1169\u11b7\u1109\u1161\u11af","\u1106\u1169\u11b7\u1109\u1169\u11a8","\u1106\u1169\u11b7\u110c\u1175\u11ba","\u1106\u1169\u11b7\u1110\u1169\u11bc","\u1106\u1169\u11b8\u1109\u1175","\u1106\u116e\u1100\u116a\u11ab\u1109\u1175\u11b7","\u1106\u116e\u1100\u116e\u11bc\u1112\u116a","\u1106\u116e\u1103\u1165\u110b\u1171","\u1106\u116e\u1103\u1165\u11b7","\u1106\u116e\u1105\u1173\u11c1","\u1106\u116e\u1109\u1173\u11ab","\u1106\u116e\u110b\u1165\u11ba","\u1106\u116e\u110b\u1167\u11a8","\u1106\u116e\u110b\u116d\u11bc","\u1106\u116e\u110c\u1169\u1100\u1165\u11ab","\u1106\u116e\u110c\u1175\u1100\u1162","\u1106\u116e\u110e\u1165\u11a8","\u1106\u116e\u11ab\u1100\u116e","\u1106\u116e\u11ab\u1103\u1173\u11a8","\u1106\u116e\u11ab\u1107\u1165\u11b8","\u1106\u116e\u11ab\u1109\u1165","\u1106\u116e\u11ab\u110c\u1166","\u1106\u116e\u11ab\u1112\u1161\u11a8","\u1106\u116e\u11ab\u1112\u116a","\u1106\u116e\u11af\u1100\u1161","\u1106\u116e\u11af\u1100\u1165\u11ab","\u1106\u116e\u11af\u1100\u1167\u11af","\u1106\u116e\u11af\u1100\u1169\u1100\u1175","\u1106\u116e\u11af\u1105\u1169\u11ab","\u1106\u116e\u11af\u1105\u1175\u1112\u1161\u11a8","\u1106\u116e\u11af\u110b\u1173\u11b7","\u1106\u116e\u11af\u110c\u1175\u11af","\u1106\u116e\u11af\u110e\u1166","\u1106\u1175\u1100\u116e\u11a8","\u1106\u1175\u1103\u1175\u110b\u1165","\u1106\u1175\u1109\u1161\u110b\u1175\u11af","\u1106\u1175\u1109\u116e\u11af","\u1106\u1175\u110b\u1167\u11a8","\u1106\u1175\u110b\u116d\u11bc\u1109\u1175\u11af","\u1106\u1175\u110b\u116e\u11b7","\u1106\u1175\u110b\u1175\u11ab","\u1106\u1175\u1110\u1175\u11bc","\u1106\u1175\u1112\u1169\u11ab","\u1106\u1175\u11ab\u1100\u1161\u11ab","\u1106\u1175\u11ab\u110c\u1169\u11a8","\u1106\u1175\u11ab\u110c\u116e","\u1106\u1175\u11ae\u110b\u1173\u11b7","\u1106\u1175\u11af\u1100\u1161\u1105\u116e","\u1106\u1175\u11af\u1105\u1175\u1106\u1175\u1110\u1165","\u1106\u1175\u11c0\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u1100\u1161\u110c\u1175","\u1107\u1161\u1100\u116e\u1102\u1175","\u1107\u1161\u1102\u1161\u1102\u1161","\u1107\u1161\u1102\u1173\u11af","\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u1103\u1161\u11ba\u1100\u1161","\u1107\u1161\u1105\u1161\u11b7","\u1107\u1161\u110b\u1175\u1105\u1165\u1109\u1173","\u1107\u1161\u1110\u1161\u11bc","\u1107\u1161\u11a8\u1106\u116e\u11af\u1100\u116a\u11ab","\u1107\u1161\u11a8\u1109\u1161","\u1107\u1161\u11a8\u1109\u116e","\u1107\u1161\u11ab\u1103\u1162","\u1107\u1161\u11ab\u1103\u1173\u1109\u1175","\u1107\u1161\u11ab\u1106\u1161\u11af","\u1107\u1161\u11ab\u1107\u1161\u11af","\u1107\u1161\u11ab\u1109\u1165\u11bc","\u1107\u1161\u11ab\u110b\u1173\u11bc","\u1107\u1161\u11ab\u110c\u1161\u11bc","\u1107\u1161\u11ab\u110c\u116e\u11a8","\u1107\u1161\u11ab\u110c\u1175","\u1107\u1161\u11ab\u110e\u1161\u11ab","\u1107\u1161\u11ae\u110e\u1175\u11b7","\u1107\u1161\u11af\u1100\u1161\u1105\u1161\u11a8","\u1107\u1161\u11af\u1100\u1165\u11af\u110b\u1173\u11b7","\u1107\u1161\u11af\u1100\u1167\u11ab","\u1107\u1161\u11af\u1103\u1161\u11af","\u1107\u1161\u11af\u1105\u1166","\u1107\u1161\u11af\u1106\u1169\u11a8","\u1107\u1161\u11af\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u11af\u1109\u1162\u11bc","\u1107\u1161\u11af\u110b\u1173\u11b7","\u1107\u1161\u11af\u110c\u1161\u1100\u116e\u11a8","\u1107\u1161\u11af\u110c\u1165\u11ab","\u1107\u1161\u11af\u1110\u1169\u11b8","\u1107\u1161\u11af\u1111\u116d","\u1107\u1161\u11b7\u1112\u1161\u1102\u1173\u11af","\u1107\u1161\u11b8\u1100\u1173\u1105\u1173\u11ba","\u1107\u1161\u11b8\u1106\u1161\u11ba","\u1107\u1161\u11b8\u1109\u1161\u11bc","\u1107\u1161\u11b8\u1109\u1169\u11c0","\u1107\u1161\u11bc\u1100\u1173\u11b7","\u1107\u1161\u11bc\u1106\u1167\u11ab","\u1107\u1161\u11bc\u1106\u116e\u11ab","\u1107\u1161\u11bc\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u11bc\u1107\u1165\u11b8","\u1107\u1161\u11bc\u1109\u1169\u11bc","\u1107\u1161\u11bc\u1109\u1175\u11a8","\u1107\u1161\u11bc\u110b\u1161\u11ab","\u1107\u1161\u11bc\u110b\u116e\u11af","\u1107\u1161\u11bc\u110c\u1175","\u1107\u1161\u11bc\u1112\u1161\u11a8","\u1107\u1161\u11bc\u1112\u1162","\u1107\u1161\u11bc\u1112\u1163\u11bc","\u1107\u1162\u1100\u1167\u11bc","\u1107\u1162\u1101\u1169\u11b8","\u1107\u1162\u1103\u1161\u11af","\u1107\u1162\u1103\u1173\u1106\u1175\u11ab\u1110\u1165\u11ab","\u1107\u1162\u11a8\u1103\u116e\u1109\u1161\u11ab","\u1107\u1162\u11a8\u1109\u1162\u11a8","\u1107\u1162\u11a8\u1109\u1165\u11bc","\u1107\u1162\u11a8\u110b\u1175\u11ab","\u1107\u1162\u11a8\u110c\u1166","\u1107\u1162\u11a8\u1112\u116a\u110c\u1165\u11b7","\u1107\u1165\u1105\u1173\u11ba","\u1107\u1165\u1109\u1165\u11ba","\u1107\u1165\u1110\u1173\u11ab","\u1107\u1165\u11ab\u1100\u1162","\u1107\u1165\u11ab\u110b\u1167\u11a8","\u1107\u1165\u11ab\u110c\u1175","\u1107\u1165\u11ab\u1112\u1169","\u1107\u1165\u11af\u1100\u1173\u11b7","\u1107\u1165\u11af\u1105\u1166","\u1107\u1165\u11af\u110a\u1165","\u1107\u1165\u11b7\u110b\u1171","\u1107\u1165\u11b7\u110b\u1175\u11ab","\u1107\u1165\u11b7\u110c\u116c","\u1107\u1165\u11b8\u1105\u1172\u11af","\u1107\u1165\u11b8\u110b\u116f\u11ab","\u1107\u1165\u11b8\u110c\u1165\u11a8","\u1107\u1165\u11b8\u110e\u1175\u11a8","\u1107\u1166\u110b\u1175\u110c\u1175\u11bc","\u1107\u1166\u11af\u1110\u1173","\u1107\u1167\u11ab\u1100\u1167\u11bc","\u1107\u1167\u11ab\u1103\u1169\u11bc","\u1107\u1167\u11ab\u1106\u1167\u11bc","\u1107\u1167\u11ab\u1109\u1175\u11ab","\u1107\u1167\u11ab\u1112\u1169\u1109\u1161","\u1107\u1167\u11ab\u1112\u116a","\u1107\u1167\u11af\u1103\u1169","\u1107\u1167\u11af\u1106\u1167\u11bc","\u1107\u1167\u11af\u110b\u1175\u11af","\u1107\u1167\u11bc\u1109\u1175\u11af","\u1107\u1167\u11bc\u110b\u1161\u1105\u1175","\u1107\u1167\u11bc\u110b\u116f\u11ab","\u1107\u1169\u1100\u116a\u11ab","\u1107\u1169\u1102\u1165\u1109\u1173","\u1107\u1169\u1105\u1161\u1109\u1162\u11a8","\u1107\u1169\u1105\u1161\u11b7","\u1107\u1169\u1105\u1173\u11b7","\u1107\u1169\u1109\u1161\u11bc","\u1107\u1169\u110b\u1161\u11ab","\u1107\u1169\u110c\u1161\u1100\u1175","\u1107\u1169\u110c\u1161\u11bc","\u1107\u1169\u110c\u1165\u11ab","\u1107\u1169\u110c\u1169\u11ab","\u1107\u1169\u1110\u1169\u11bc","\u1107\u1169\u1111\u1167\u11ab\u110c\u1165\u11a8","\u1107\u1169\u1112\u1165\u11b7","\u1107\u1169\u11a8\u1103\u1169","\u1107\u1169\u11a8\u1109\u1161","\u1107\u1169\u11a8\u1109\u116e\u11bc\u110b\u1161","\u1107\u1169\u11a8\u1109\u1173\u11b8","\u1107\u1169\u11a9\u110b\u1173\u11b7","\u1107\u1169\u11ab\u1100\u1167\u11a8\u110c\u1165\u11a8","\u1107\u1169\u11ab\u1105\u1162","\u1107\u1169\u11ab\u1107\u116e","\u1107\u1169\u11ab\u1109\u1161","\u1107\u1169\u11ab\u1109\u1165\u11bc","\u1107\u1169\u11ab\u110b\u1175\u11ab","\u1107\u1169\u11ab\u110c\u1175\u11af","\u1107\u1169\u11af\u1111\u1166\u11ab","\u1107\u1169\u11bc\u1109\u1161","\u1107\u1169\u11bc\u110c\u1175","\u1107\u1169\u11bc\u1110\u116e","\u1107\u116e\u1100\u1173\u11ab","\u1107\u116e\u1101\u1173\u1105\u1165\u110b\u116e\u11b7","\u1107\u116e\u1103\u1161\u11b7","\u1107\u116e\u1103\u1169\u11bc\u1109\u1161\u11ab","\u1107\u116e\u1106\u116e\u11ab","\u1107\u116e\u1107\u116e\u11ab","\u1107\u116e\u1109\u1161\u11ab","\u1107\u116e\u1109\u1161\u11bc","\u1107\u116e\u110b\u1165\u11bf","\u1107\u116e\u110b\u1175\u11ab","\u1107\u116e\u110c\u1161\u11a8\u110b\u116d\u11bc","\u1107\u116e\u110c\u1161\u11bc","\u1107\u116e\u110c\u1165\u11bc","\u1107\u116e\u110c\u1169\u11a8","\u1107\u116e\u110c\u1175\u1105\u1165\u11ab\u1112\u1175","\u1107\u116e\u110e\u1175\u11ab","\u1107\u116e\u1110\u1161\u11a8","\u1107\u116e\u1111\u116e\u11b7","\u1107\u116e\u1112\u116c\u110c\u1161\u11bc","\u1107\u116e\u11a8\u1107\u116e","\u1107\u116e\u11a8\u1112\u1161\u11ab","\u1107\u116e\u11ab\u1102\u1169","\u1107\u116e\u11ab\u1105\u1163\u11bc","\u1107\u116e\u11ab\u1105\u1175","\u1107\u116e\u11ab\u1106\u1167\u11bc","\u1107\u116e\u11ab\u1109\u1165\u11a8","\u1107\u116e\u11ab\u110b\u1163","\u1107\u116e\u11ab\u110b\u1171\u1100\u1175","\u1107\u116e\u11ab\u1111\u1175\u11af","\u1107\u116e\u11ab\u1112\u1169\u11bc\u1109\u1162\u11a8","\u1107\u116e\u11af\u1100\u1169\u1100\u1175","\u1107\u116e\u11af\u1100\u116a","\u1107\u116e\u11af\u1100\u116d","\u1107\u116e\u11af\u1101\u1169\u11be","\u1107\u116e\u11af\u1106\u1161\u11ab","\u1107\u116e\u11af\u1107\u1165\u11b8","\u1107\u116e\u11af\u1107\u1175\u11be","\u1107\u116e\u11af\u110b\u1161\u11ab","\u1107\u116e\u11af\u110b\u1175\u110b\u1175\u11a8","\u1107\u116e\u11af\u1112\u1162\u11bc","\u1107\u1173\u1105\u1162\u11ab\u1103\u1173","\u1107\u1175\u1100\u1173\u11a8","\u1107\u1175\u1102\u1161\u11ab","\u1107\u1175\u1102\u1175\u11af","\u1107\u1175\u1103\u116e\u11af\u1100\u1175","\u1107\u1175\u1103\u1175\u110b\u1169","\u1107\u1175\u1105\u1169\u1109\u1169","\u1107\u1175\u1106\u1161\u11ab","\u1107\u1175\u1106\u1167\u11bc","\u1107\u1175\u1106\u1175\u11af","\u1107\u1175\u1107\u1161\u1105\u1161\u11b7","\u1107\u1175\u1107\u1175\u11b7\u1107\u1161\u11b8","\u1107\u1175\u1109\u1161\u11bc","\u1107\u1175\u110b\u116d\u11bc","\u1107\u1175\u110b\u1172\u11af","\u1107\u1175\u110c\u116e\u11bc","\u1107\u1175\u1110\u1161\u1106\u1175\u11ab","\u1107\u1175\u1111\u1161\u11ab","\u1107\u1175\u11af\u1103\u1175\u11bc","\u1107\u1175\u11ba\u1106\u116e\u11af","\u1107\u1175\u11ba\u1107\u1161\u11bc\u110b\u116e\u11af","\u1107\u1175\u11ba\u110c\u116e\u11af\u1100\u1175","\u1107\u1175\u11be\u1101\u1161\u11af","\u1108\u1161\u11af\u1100\u1161\u11ab\u1109\u1162\u11a8","\u1108\u1161\u11af\u1105\u1162","\u1108\u1161\u11af\u1105\u1175","\u1109\u1161\u1100\u1165\u11ab","\u1109\u1161\u1100\u1168\u110c\u1165\u11af","\u1109\u1161\u1102\u1161\u110b\u1175","\u1109\u1161\u1102\u1163\u11bc","\u1109\u1161\u1105\u1161\u11b7","\u1109\u1161\u1105\u1161\u11bc","\u1109\u1161\u1105\u1175\u11b8","\u1109\u1161\u1106\u1169\u1102\u1175\u11b7","\u1109\u1161\u1106\u116e\u11af","\u1109\u1161\u1107\u1161\u11bc","\u1109\u1161\u1109\u1161\u11bc","\u1109\u1161\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1161\u1109\u1165\u11af","\u1109\u1161\u1109\u1173\u11b7","\u1109\u1161\u1109\u1175\u11af","\u1109\u1161\u110b\u1165\u11b8","\u1109\u1161\u110b\u116d\u11bc","\u1109\u1161\u110b\u116f\u11af","\u1109\u1161\u110c\u1161\u11bc","\u1109\u1161\u110c\u1165\u11ab","\u1109\u1161\u110c\u1175\u11ab","\u1109\u1161\u110e\u1169\u11ab","\u1109\u1161\u110e\u116e\u11ab\u1100\u1175","\u1109\u1161\u1110\u1161\u11bc","\u1109\u1161\u1110\u116e\u1105\u1175","\u1109\u1161\u1112\u1173\u11af","\u1109\u1161\u11ab\u1100\u1175\u11af","\u1109\u1161\u11ab\u1107\u116e\u110b\u1175\u11ab\u1100\u116a","\u1109\u1161\u11ab\u110b\u1165\u11b8","\u1109\u1161\u11ab\u110e\u1162\u11a8","\u1109\u1161\u11af\u1105\u1175\u11b7","\u1109\u1161\u11af\u110b\u1175\u11ab","\u1109\u1161\u11af\u110d\u1161\u11a8","\u1109\u1161\u11b7\u1100\u1168\u1110\u1161\u11bc","\u1109\u1161\u11b7\u1100\u116e\u11a8","\u1109\u1161\u11b7\u1109\u1175\u11b8","\u1109\u1161\u11b7\u110b\u116f\u11af","\u1109\u1161\u11b7\u110e\u1169\u11ab","\u1109\u1161\u11bc\u1100\u116a\u11ab","\u1109\u1161\u11bc\u1100\u1173\u11b7","\u1109\u1161\u11bc\u1103\u1162","\u1109\u1161\u11bc\u1105\u1172","\u1109\u1161\u11bc\u1107\u1161\u11ab\u1100\u1175","\u1109\u1161\u11bc\u1109\u1161\u11bc","\u1109\u1161\u11bc\u1109\u1175\u11a8","\u1109\u1161\u11bc\u110b\u1165\u11b8","\u1109\u1161\u11bc\u110b\u1175\u11ab","\u1109\u1161\u11bc\u110c\u1161","\u1109\u1161\u11bc\u110c\u1165\u11b7","\u1109\u1161\u11bc\u110e\u1165","\u1109\u1161\u11bc\u110e\u116e","\u1109\u1161\u11bc\u1110\u1162","\u1109\u1161\u11bc\u1111\u116d","\u1109\u1161\u11bc\u1111\u116e\u11b7","\u1109\u1161\u11bc\u1112\u116a\u11bc","\u1109\u1162\u1107\u1167\u11a8","\u1109\u1162\u11a8\u1101\u1161\u11af","\u1109\u1162\u11a8\u110b\u1167\u11ab\u1111\u1175\u11af","\u1109\u1162\u11bc\u1100\u1161\u11a8","\u1109\u1162\u11bc\u1106\u1167\u11bc","\u1109\u1162\u11bc\u1106\u116e\u11af","\u1109\u1162\u11bc\u1107\u1161\u11bc\u1109\u1169\u11bc","\u1109\u1162\u11bc\u1109\u1161\u11ab","\u1109\u1162\u11bc\u1109\u1165\u11ab","\u1109\u1162\u11bc\u1109\u1175\u11ab","\u1109\u1162\u11bc\u110b\u1175\u11af","\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1165\u1105\u1161\u11b8","\u1109\u1165\u1105\u1173\u11ab","\u1109\u1165\u1106\u1167\u11bc","\u1109\u1165\u1106\u1175\u11ab","\u1109\u1165\u1107\u1175\u1109\u1173","\u1109\u1165\u110b\u1163\u11bc","\u1109\u1165\u110b\u116e\u11af","\u1109\u1165\u110c\u1165\u11a8","\u1109\u1165\u110c\u1165\u11b7","\u1109\u1165\u110d\u1169\u11a8","\u1109\u1165\u110f\u1173\u11af","\u1109\u1165\u11a8\u1109\u1161","\u1109\u1165\u11a8\u110b\u1172","\u1109\u1165\u11ab\u1100\u1165","\u1109\u1165\u11ab\u1106\u116e\u11af","\u1109\u1165\u11ab\u1107\u1162","\u1109\u1165\u11ab\u1109\u1162\u11bc","\u1109\u1165\u11ab\u1109\u116e","\u1109\u1165\u11ab\u110b\u116f\u11ab","\u1109\u1165\u11ab\u110c\u1161\u11bc","\u1109\u1165\u11ab\u110c\u1165\u11ab","\u1109\u1165\u11ab\u1110\u1162\u11a8","\u1109\u1165\u11ab\u1111\u116e\u11bc\u1100\u1175","\u1109\u1165\u11af\u1100\u1165\u110c\u1175","\u1109\u1165\u11af\u1102\u1161\u11af","\u1109\u1165\u11af\u1105\u1165\u11bc\u1110\u1161\u11bc","\u1109\u1165\u11af\u1106\u1167\u11bc","\u1109\u1165\u11af\u1106\u116e\u11ab","\u1109\u1165\u11af\u1109\u1161","\u1109\u1165\u11af\u110b\u1161\u11a8\u1109\u1161\u11ab","\u1109\u1165\u11af\u110e\u1175","\u1109\u1165\u11af\u1110\u1161\u11bc","\u1109\u1165\u11b8\u110a\u1175","\u1109\u1165\u11bc\u1100\u1169\u11bc","\u1109\u1165\u11bc\u1103\u1161\u11bc","\u1109\u1165\u11bc\u1106\u1167\u11bc","\u1109\u1165\u11bc\u1107\u1167\u11af","\u1109\u1165\u11bc\u110b\u1175\u11ab","\u1109\u1165\u11bc\u110c\u1161\u11bc","\u1109\u1165\u11bc\u110c\u1165\u11a8","\u1109\u1165\u11bc\u110c\u1175\u11af","\u1109\u1165\u11bc\u1112\u1161\u11b7","\u1109\u1166\u1100\u1173\u11b7","\u1109\u1166\u1106\u1175\u1102\u1161","\u1109\u1166\u1109\u1161\u11bc","\u1109\u1166\u110b\u116f\u11af","\u1109\u1166\u110c\u1169\u11bc\u1103\u1162\u110b\u116a\u11bc","\u1109\u1166\u1110\u1161\u11a8","\u1109\u1166\u11ab\u1110\u1165","\u1109\u1166\u11ab\u1110\u1175\u1106\u1175\u1110\u1165","\u1109\u1166\u11ba\u110d\u1162","\u1109\u1169\u1100\u1172\u1106\u1169","\u1109\u1169\u1100\u1173\u11a8\u110c\u1165\u11a8","\u1109\u1169\u1100\u1173\u11b7","\u1109\u1169\u1102\u1161\u1100\u1175","\u1109\u1169\u1102\u1167\u11ab","\u1109\u1169\u1103\u1173\u11a8","\u1109\u1169\u1106\u1161\u11bc","\u1109\u1169\u1106\u116e\u11ab","\u1109\u1169\u1109\u1165\u11af","\u1109\u1169\u1109\u1169\u11a8","\u1109\u1169\u110b\u1161\u1100\u116a","\u1109\u1169\u110b\u116d\u11bc","\u1109\u1169\u110b\u116f\u11ab","\u1109\u1169\u110b\u1173\u11b7","\u1109\u1169\u110c\u116e\u11bc\u1112\u1175","\u1109\u1169\u110c\u1175\u1111\u116e\u11b7","\u1109\u1169\u110c\u1175\u11af","\u1109\u1169\u1111\u116e\u11bc","\u1109\u1169\u1112\u1167\u11bc","\u1109\u1169\u11a8\u1103\u1161\u11b7","\u1109\u1169\u11a8\u1103\u1169","\u1109\u1169\u11a8\u110b\u1169\u11ba","\u1109\u1169\u11ab\u1100\u1161\u1105\u1161\u11a8","\u1109\u1169\u11ab\u1100\u1175\u11af","\u1109\u1169\u11ab\u1102\u1167","\u1109\u1169\u11ab\u1102\u1175\u11b7","\u1109\u1169\u11ab\u1103\u1173\u11bc","\u1109\u1169\u11ab\u1106\u1169\u11a8","\u1109\u1169\u11ab\u1108\u1167\u11a8","\u1109\u1169\u11ab\u1109\u1175\u11af","\u1109\u1169\u11ab\u110c\u1175\u11af","\u1109\u1169\u11ab\u1110\u1169\u11b8","\u1109\u1169\u11ab\u1112\u1162","\u1109\u1169\u11af\u110c\u1175\u11a8\u1112\u1175","\u1109\u1169\u11b7\u110a\u1175","\u1109\u1169\u11bc\u110b\u1161\u110c\u1175","\u1109\u1169\u11bc\u110b\u1175","\u1109\u1169\u11bc\u1111\u1167\u11ab","\u1109\u116c\u1100\u1169\u1100\u1175","\u1109\u116d\u1111\u1175\u11bc","\u1109\u116e\u1100\u1165\u11ab","\u1109\u116e\u1102\u1167\u11ab","\u1109\u116e\u1103\u1161\u11ab","\u1109\u116e\u1103\u1169\u11ba\u1106\u116e\u11af","\u1109\u116e\u1103\u1169\u11bc\u110c\u1165\u11a8","\u1109\u116e\u1106\u1167\u11ab","\u1109\u116e\u1106\u1167\u11bc","\u1109\u116e\u1107\u1161\u11a8","\u1109\u116e\u1109\u1161\u11bc","\u1109\u116e\u1109\u1165\u11a8","\u1109\u116e\u1109\u116e\u11af","\u1109\u116e\u1109\u1175\u1105\u1169","\u1109\u116e\u110b\u1165\u11b8","\u1109\u116e\u110b\u1167\u11b7","\u1109\u116e\u110b\u1167\u11bc","\u1109\u116e\u110b\u1175\u11b8","\u1109\u116e\u110c\u116e\u11ab","\u1109\u116e\u110c\u1175\u11b8","\u1109\u116e\u110e\u116e\u11af","\u1109\u116e\u110f\u1165\u11ba","\u1109\u116e\u1111\u1175\u11af","\u1109\u116e\u1112\u1161\u11a8","\u1109\u116e\u1112\u1165\u11b7\u1109\u1162\u11bc","\u1109\u116e\u1112\u116a\u1100\u1175","\u1109\u116e\u11a8\u1102\u1167","\u1109\u116e\u11a8\u1109\u1169","\u1109\u116e\u11a8\u110c\u1166","\u1109\u116e\u11ab\u1100\u1161\u11ab","\u1109\u116e\u11ab\u1109\u1165","\u1109\u116e\u11ab\u1109\u116e","\u1109\u116e\u11ab\u1109\u1175\u11a8\u1100\u1161\u11ab","\u1109\u116e\u11ab\u110b\u1171","\u1109\u116e\u11ae\u1100\u1161\u1105\u1161\u11a8","\u1109\u116e\u11af\u1107\u1167\u11bc","\u1109\u116e\u11af\u110c\u1175\u11b8","\u1109\u116e\u11ba\u110c\u1161","\u1109\u1173\u1102\u1175\u11b7","\u1109\u1173\u1106\u116e\u11af","\u1109\u1173\u1109\u1173\u1105\u1169","\u1109\u1173\u1109\u1173\u11bc","\u1109\u1173\u110b\u1170\u1110\u1165","\u1109\u1173\u110b\u1171\u110e\u1175","\u1109\u1173\u110f\u1166\u110b\u1175\u1110\u1173","\u1109\u1173\u1110\u1172\u1103\u1175\u110b\u1169","\u1109\u1173\u1110\u1173\u1105\u1166\u1109\u1173","\u1109\u1173\u1111\u1169\u110e\u1173","\u1109\u1173\u11af\u110d\u1165\u11a8","\u1109\u1173\u11af\u1111\u1173\u11b7","\u1109\u1173\u11b8\u1100\u116a\u11ab","\u1109\u1173\u11b8\u1100\u1175","\u1109\u1173\u11bc\u1100\u1162\u11a8","\u1109\u1173\u11bc\u1105\u1175","\u1109\u1173\u11bc\u1107\u116e","\u1109\u1173\u11bc\u110b\u116d\u11bc\u110e\u1161","\u1109\u1173\u11bc\u110c\u1175\u11ab","\u1109\u1175\u1100\u1161\u11a8","\u1109\u1175\u1100\u1161\u11ab","\u1109\u1175\u1100\u1169\u11af","\u1109\u1175\u1100\u1173\u11b7\u110e\u1175","\u1109\u1175\u1102\u1161\u1105\u1175\u110b\u1169","\u1109\u1175\u1103\u1162\u11a8","\u1109\u1175\u1105\u1175\u110c\u1173","\u1109\u1175\u1106\u1166\u11ab\u1110\u1173","\u1109\u1175\u1106\u1175\u11ab","\u1109\u1175\u1107\u116e\u1106\u1169","\u1109\u1175\u1109\u1165\u11ab","\u1109\u1175\u1109\u1165\u11af","\u1109\u1175\u1109\u1173\u1110\u1166\u11b7","\u1109\u1175\u110b\u1161\u1107\u1165\u110c\u1175","\u1109\u1175\u110b\u1165\u1106\u1165\u1102\u1175","\u1109\u1175\u110b\u116f\u11af","\u1109\u1175\u110b\u1175\u11ab","\u1109\u1175\u110b\u1175\u11af","\u1109\u1175\u110c\u1161\u11a8","\u1109\u1175\u110c\u1161\u11bc","\u1109\u1175\u110c\u1165\u11af","\u1109\u1175\u110c\u1165\u11b7","\u1109\u1175\u110c\u116e\u11bc","\u1109\u1175\u110c\u1173\u11ab","\u1109\u1175\u110c\u1175\u11b8","\u1109\u1175\u110e\u1165\u11bc","\u1109\u1175\u1112\u1161\u11b8","\u1109\u1175\u1112\u1165\u11b7","\u1109\u1175\u11a8\u1100\u116e","\u1109\u1175\u11a8\u1100\u1175","\u1109\u1175\u11a8\u1103\u1161\u11bc","\u1109\u1175\u11a8\u1105\u1163\u11bc","\u1109\u1175\u11a8\u1105\u116d\u1111\u116e\u11b7","\u1109\u1175\u11a8\u1106\u116e\u11af","\u1109\u1175\u11a8\u1108\u1161\u11bc","\u1109\u1175\u11a8\u1109\u1161","\u1109\u1175\u11a8\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1175\u11a8\u110e\u1169","\u1109\u1175\u11a8\u1110\u1161\u11a8","\u1109\u1175\u11a8\u1111\u116e\u11b7","\u1109\u1175\u11ab\u1100\u1169","\u1109\u1175\u11ab\u1100\u1172","\u1109\u1175\u11ab\u1102\u1167\u11b7","\u1109\u1175\u11ab\u1106\u116e\u11ab","\u1109\u1175\u11ab\u1107\u1161\u11af","\u1109\u1175\u11ab\u1107\u1175","\u1109\u1175\u11ab\u1109\u1161","\u1109\u1175\u11ab\u1109\u1166","\u1109\u1175\u11ab\u110b\u116d\u11bc","\u1109\u1175\u11ab\u110c\u1166\u1111\u116e\u11b7","\u1109\u1175\u11ab\u110e\u1165\u11bc","\u1109\u1175\u11ab\u110e\u1166","\u1109\u1175\u11ab\u1112\u116a","\u1109\u1175\u11af\u1100\u1161\u11b7","\u1109\u1175\u11af\u1102\u1162","\u1109\u1175\u11af\u1105\u1167\u11a8","\u1109\u1175\u11af\u1105\u1168","\u1109\u1175\u11af\u1106\u1161\u11bc","\u1109\u1175\u11af\u1109\u116e","\u1109\u1175\u11af\u1109\u1173\u11b8","\u1109\u1175\u11af\u1109\u1175","\u1109\u1175\u11af\u110c\u1161\u11bc","\u1109\u1175\u11af\u110c\u1165\u11bc","\u1109\u1175\u11af\u110c\u1175\u11af\u110c\u1165\u11a8","\u1109\u1175\u11af\u110e\u1165\u11ab","\u1109\u1175\u11af\u110e\u1166","\u1109\u1175\u11af\u110f\u1165\u11ba","\u1109\u1175\u11af\u1110\u1162","\u1109\u1175\u11af\u1111\u1162","\u1109\u1175\u11af\u1112\u1165\u11b7","\u1109\u1175\u11af\u1112\u1167\u11ab","\u1109\u1175\u11b7\u1105\u1175","\u1109\u1175\u11b7\u1107\u116e\u1105\u1173\u11b7","\u1109\u1175\u11b7\u1109\u1161","\u1109\u1175\u11b7\u110c\u1161\u11bc","\u1109\u1175\u11b7\u110c\u1165\u11bc","\u1109\u1175\u11b7\u1111\u1161\u11ab","\u110a\u1161\u11bc\u1103\u116e\u11bc\u110b\u1175","\u110a\u1175\u1105\u1173\u11b7","\u110a\u1175\u110b\u1161\u11ba","\u110b\u1161\u1100\u1161\u110a\u1175","\u110b\u1161\u1102\u1161\u110b\u116e\u11ab\u1109\u1165","\u110b\u1161\u1103\u1173\u1102\u1175\u11b7","\u110b\u1161\u1103\u1173\u11af","\u110b\u1161\u1109\u1171\u110b\u116e\u11b7","\u110b\u1161\u1109\u1173\u1111\u1161\u11af\u1110\u1173","\u110b\u1161\u1109\u1175\u110b\u1161","\u110b\u1161\u110b\u116e\u11af\u1105\u1165","\u110b\u1161\u110c\u1165\u110a\u1175","\u110b\u1161\u110c\u116e\u11b7\u1106\u1161","\u110b\u1161\u110c\u1175\u11a8","\u110b\u1161\u110e\u1175\u11b7","\u110b\u1161\u1111\u1161\u1110\u1173","\u110b\u1161\u1111\u1173\u1105\u1175\u110f\u1161","\u110b\u1161\u1111\u1173\u11b7","\u110b\u1161\u1112\u1169\u11b8","\u110b\u1161\u1112\u1173\u11ab","\u110b\u1161\u11a8\u1100\u1175","\u110b\u1161\u11a8\u1106\u1169\u11bc","\u110b\u1161\u11a8\u1109\u116e","\u110b\u1161\u11ab\u1100\u1162","\u110b\u1161\u11ab\u1100\u1167\u11bc","\u110b\u1161\u11ab\u1100\u116a","\u110b\u1161\u11ab\u1102\u1162","\u110b\u1161\u11ab\u1102\u1167\u11bc","\u110b\u1161\u11ab\u1103\u1169\u11bc","\u110b\u1161\u11ab\u1107\u1161\u11bc","\u110b\u1161\u11ab\u1107\u116e","\u110b\u1161\u11ab\u110c\u116e","\u110b\u1161\u11af\u1105\u116e\u1106\u1175\u1102\u1172\u11b7","\u110b\u1161\u11af\u110f\u1169\u110b\u1169\u11af","\u110b\u1161\u11b7\u1109\u1175","\u110b\u1161\u11b7\u110f\u1165\u11ba","\u110b\u1161\u11b8\u1105\u1167\u11a8","\u110b\u1161\u11c1\u1102\u1161\u11af","\u110b\u1161\u11c1\u1106\u116e\u11ab","\u110b\u1162\u110b\u1175\u11ab","\u110b\u1162\u110c\u1165\u11bc","\u110b\u1162\u11a8\u1109\u116e","\u110b\u1162\u11af\u1107\u1165\u11b7","\u110b\u1163\u1100\u1161\u11ab","\u110b\u1163\u1103\u1161\u11ab","\u110b\u1163\u110b\u1169\u11bc","\u110b\u1163\u11a8\u1100\u1161\u11ab","\u110b\u1163\u11a8\u1100\u116e\u11a8","\u110b\u1163\u11a8\u1109\u1169\u11a8","\u110b\u1163\u11a8\u1109\u116e","\u110b\u1163\u11a8\u110c\u1165\u11b7","\u110b\u1163\u11a8\u1111\u116e\u11b7","\u110b\u1163\u11a8\u1112\u1169\u11ab\u1102\u1167","\u110b\u1163\u11bc\u1102\u1167\u11b7","\u110b\u1163\u11bc\u1105\u1167\u11a8","\u110b\u1163\u11bc\u1106\u1161\u11af","\u110b\u1163\u11bc\u1107\u1162\u110e\u116e","\u110b\u1163\u11bc\u110c\u116e","\u110b\u1163\u11bc\u1111\u1161","\u110b\u1165\u1103\u116e\u11b7","\u110b\u1165\u1105\u1167\u110b\u116e\u11b7","\u110b\u1165\u1105\u1173\u11ab","\u110b\u1165\u110c\u1166\u11ba\u1107\u1161\u11b7","\u110b\u1165\u110d\u1162\u11bb\u1103\u1173\u11ab","\u110b\u1165\u110d\u1165\u1103\u1161\u1100\u1161","\u110b\u1165\u110d\u1165\u11ab\u110c\u1175","\u110b\u1165\u11ab\u1102\u1175","\u110b\u1165\u11ab\u1103\u1165\u11a8","\u110b\u1165\u11ab\u1105\u1169\u11ab","\u110b\u1165\u11ab\u110b\u1165","\u110b\u1165\u11af\u1100\u116e\u11af","\u110b\u1165\u11af\u1105\u1173\u11ab","\u110b\u1165\u11af\u110b\u1173\u11b7","\u110b\u1165\u11af\u1111\u1175\u11ba","\u110b\u1165\u11b7\u1106\u1161","\u110b\u1165\u11b8\u1106\u116e","\u110b\u1165\u11b8\u110c\u1169\u11bc","\u110b\u1165\u11b8\u110e\u1166","\u110b\u1165\u11bc\u1103\u1165\u11bc\u110b\u1175","\u110b\u1165\u11bc\u1106\u1161\u11bc","\u110b\u1165\u11bc\u1110\u1165\u1105\u1175","\u110b\u1165\u11bd\u1100\u1173\u110c\u1166","\u110b\u1166\u1102\u1165\u110c\u1175","\u110b\u1166\u110b\u1165\u110f\u1165\u11ab","\u110b\u1166\u11ab\u110c\u1175\u11ab","\u110b\u1167\u1100\u1165\u11ab","\u110b\u1167\u1100\u1169\u1109\u1162\u11bc","\u110b\u1167\u1100\u116a\u11ab","\u110b\u1167\u1100\u116e\u11ab","\u110b\u1167\u1100\u116f\u11ab","\u110b\u1167\u1103\u1162\u1109\u1162\u11bc","\u110b\u1167\u1103\u1165\u11b2","\u110b\u1167\u1103\u1169\u11bc\u1109\u1162\u11bc","\u110b\u1167\u1103\u1173\u11ab","\u110b\u1167\u1105\u1169\u11ab","\u110b\u1167\u1105\u1173\u11b7","\u110b\u1167\u1109\u1165\u11ba","\u110b\u1167\u1109\u1165\u11bc","\u110b\u1167\u110b\u116a\u11bc","\u110b\u1167\u110b\u1175\u11ab","\u110b\u1167\u110c\u1165\u11ab\u1112\u1175","\u110b\u1167\u110c\u1175\u11a8\u110b\u116f\u11ab","\u110b\u1167\u1112\u1161\u11a8\u1109\u1162\u11bc","\u110b\u1167\u1112\u1162\u11bc","\u110b\u1167\u11a8\u1109\u1161","\u110b\u1167\u11a8\u1109\u1175","\u110b\u1167\u11a8\u1112\u1161\u11af","\u110b\u1167\u11ab\u1100\u1167\u11af","\u110b\u1167\u11ab\u1100\u116e","\u110b\u1167\u11ab\u1100\u1173\u11a8","\u110b\u1167\u11ab\u1100\u1175","\u110b\u1167\u11ab\u1105\u1161\u11a8","\u110b\u1167\u11ab\u1109\u1165\u11af","\u110b\u1167\u11ab\u1109\u1166","\u110b\u1167\u11ab\u1109\u1169\u11a8","\u110b\u1167\u11ab\u1109\u1173\u11b8","\u110b\u1167\u11ab\u110b\u1162","\u110b\u1167\u11ab\u110b\u1168\u110b\u1175\u11ab","\u110b\u1167\u11ab\u110b\u1175\u11ab","\u110b\u1167\u11ab\u110c\u1161\u11bc","\u110b\u1167\u11ab\u110c\u116e","\u110b\u1167\u11ab\u110e\u116e\u11af","\u110b\u1167\u11ab\u1111\u1175\u11af","\u110b\u1167\u11ab\u1112\u1161\u11b8","\u110b\u1167\u11ab\u1112\u1172","\u110b\u1167\u11af\u1100\u1175","\u110b\u1167\u11af\u1106\u1162","\u110b\u1167\u11af\u1109\u116c","\u110b\u1167\u11af\u1109\u1175\u11b7\u1112\u1175","\u110b\u1167\u11af\u110c\u1165\u11bc","\u110b\u1167\u11af\u110e\u1161","\u110b\u1167\u11af\u1112\u1173\u11af","\u110b\u1167\u11b7\u1105\u1167","\u110b\u1167\u11b8\u1109\u1165","\u110b\u1167\u11bc\u1100\u116e\u11a8","\u110b\u1167\u11bc\u1102\u1161\u11b7","\u110b\u1167\u11bc\u1109\u1161\u11bc","\u110b\u1167\u11bc\u110b\u1163\u11bc","\u110b\u1167\u11bc\u110b\u1167\u11a8","\u110b\u1167\u11bc\u110b\u116e\u11bc","\u110b\u1167\u11bc\u110b\u116f\u11ab\u1112\u1175","\u110b\u1167\u11bc\u1112\u1161","\u110b\u1167\u11bc\u1112\u1163\u11bc","\u110b\u1167\u11bc\u1112\u1169\u11ab","\u110b\u1167\u11bc\u1112\u116a","\u110b\u1167\u11c1\u1100\u116e\u1105\u1175","\u110b\u1167\u11c1\u1107\u1161\u11bc","\u110b\u1167\u11c1\u110c\u1175\u11b8","\u110b\u1168\u1100\u1161\u11b7","\u110b\u1168\u1100\u1173\u11b7","\u110b\u1168\u1107\u1161\u11bc","\u110b\u1168\u1109\u1161\u11ab","\u110b\u1168\u1109\u1161\u11bc","\u110b\u1168\u1109\u1165\u11ab","\u110b\u1168\u1109\u116e\u11af","\u110b\u1168\u1109\u1173\u11b8","\u110b\u1168\u1109\u1175\u11a8\u110c\u1161\u11bc","\u110b\u1168\u110b\u1163\u11a8","\u110b\u1168\u110c\u1165\u11ab","\u110b\u1168\u110c\u1165\u11af","\u110b\u1168\u110c\u1165\u11bc","\u110b\u1168\u110f\u1165\u11ab\u1103\u1162","\u110b\u1168\u11ba\u1102\u1161\u11af","\u110b\u1169\u1102\u1173\u11af","\u110b\u1169\u1105\u1161\u11a8","\u110b\u1169\u1105\u1162\u11ba\u1103\u1169\u11bc\u110b\u1161\u11ab","\u110b\u1169\u1105\u1166\u11ab\u110c\u1175","\u110b\u1169\u1105\u1169\u110c\u1175","\u110b\u1169\u1105\u1173\u11ab\u1107\u1161\u11af","\u110b\u1169\u1107\u1173\u11ab","\u110b\u1169\u1109\u1175\u11b8","\u110b\u1169\u110b\u1167\u11b7","\u110b\u1169\u110b\u116f\u11af","\u110b\u1169\u110c\u1165\u11ab","\u110b\u1169\u110c\u1175\u11a8","\u110b\u1169\u110c\u1175\u11bc\u110b\u1165","\u110b\u1169\u1111\u1166\u1105\u1161","\u110b\u1169\u1111\u1175\u1109\u1173\u1110\u1166\u11af","\u110b\u1169\u1112\u1175\u1105\u1167","\u110b\u1169\u11a8\u1109\u1161\u11bc","\u110b\u1169\u11a8\u1109\u116e\u1109\u116e","\u110b\u1169\u11ab\u1100\u1161\u11bd","\u110b\u1169\u11ab\u1105\u1161\u110b\u1175\u11ab","\u110b\u1169\u11ab\u1106\u1169\u11b7","\u110b\u1169\u11ab\u110c\u1169\u11bc\u110b\u1175\u11af","\u110b\u1169\u11ab\u1110\u1169\u11bc","\u110b\u1169\u11af\u1100\u1161\u110b\u1173\u11af","\u110b\u1169\u11af\u1105\u1175\u11b7\u1111\u1175\u11a8","\u110b\u1169\u11af\u1112\u1162","\u110b\u1169\u11ba\u110e\u1161\u1105\u1175\u11b7","\u110b\u116a\u110b\u1175\u1109\u1167\u110e\u1173","\u110b\u116a\u110b\u1175\u11ab","\u110b\u116a\u11ab\u1109\u1165\u11bc","\u110b\u116a\u11ab\u110c\u1165\u11ab","\u110b\u116a\u11bc\u1107\u1175","\u110b\u116a\u11bc\u110c\u1161","\u110b\u116b\u1102\u1163\u1112\u1161\u1106\u1167\u11ab","\u110b\u116b\u11ab\u110c\u1175","\u110b\u116c\u1100\u1161\u11ba\u110c\u1175\u11b8","\u110b\u116c\u1100\u116e\u11a8","\u110b\u116c\u1105\u1169\u110b\u116e\u11b7","\u110b\u116c\u1109\u1161\u11b7\u110e\u1169\u11ab","\u110b\u116c\u110e\u116e\u11af","\u110b\u116c\u110e\u1175\u11b7","\u110b\u116c\u1112\u1161\u11af\u1106\u1165\u1102\u1175","\u110b\u116c\u11ab\u1107\u1161\u11af","\u110b\u116c\u11ab\u1109\u1169\u11ab","\u110b\u116c\u11ab\u110d\u1169\u11a8","\u110b\u116d\u1100\u1173\u11b7","\u110b\u116d\u110b\u1175\u11af","\u110b\u116d\u110c\u1173\u11b7","\u110b\u116d\u110e\u1165\u11bc","\u110b\u116d\u11bc\u1100\u1175","\u110b\u116d\u11bc\u1109\u1165","\u110b\u116d\u11bc\u110b\u1165","\u110b\u116e\u1109\u1161\u11ab","\u110b\u116e\u1109\u1165\u11ab","\u110b\u116e\u1109\u1173\u11bc","\u110b\u116e\u110b\u1167\u11ab\u1112\u1175","\u110b\u116e\u110c\u1165\u11bc","\u110b\u116e\u110e\u1166\u1100\u116e\u11a8","\u110b\u116e\u1111\u1167\u11ab","\u110b\u116e\u11ab\u1103\u1169\u11bc","\u110b\u116e\u11ab\u1106\u1167\u11bc","\u110b\u116e\u11ab\u1107\u1161\u11ab","\u110b\u116e\u11ab\u110c\u1165\u11ab","\u110b\u116e\u11ab\u1112\u1162\u11bc","\u110b\u116e\u11af\u1109\u1161\u11ab","\u110b\u116e\u11af\u110b\u1173\u11b7","\u110b\u116e\u11b7\u110c\u1175\u11a8\u110b\u1175\u11b7","\u110b\u116e\u11ba\u110b\u1165\u1105\u1173\u11ab","\u110b\u116e\u11ba\u110b\u1173\u11b7","\u110b\u116f\u1102\u1161\u11a8","\u110b\u116f\u11ab\u1100\u1169","\u110b\u116f\u11ab\u1105\u1162","\u110b\u116f\u11ab\u1109\u1165","\u110b\u116f\u11ab\u1109\u116e\u11bc\u110b\u1175","\u110b\u116f\u11ab\u110b\u1175\u11ab","\u110b\u116f\u11ab\u110c\u1161\u11bc","\u110b\u116f\u11ab\u1111\u1175\u1109\u1173","\u110b\u116f\u11af\u1100\u1173\u11b8","\u110b\u116f\u11af\u1103\u1173\u110f\u1165\u11b8","\u110b\u116f\u11af\u1109\u1166","\u110b\u116f\u11af\u110b\u116d\u110b\u1175\u11af","\u110b\u1170\u110b\u1175\u1110\u1165","\u110b\u1171\u1107\u1161\u11ab","\u110b\u1171\u1107\u1165\u11b8","\u110b\u1171\u1109\u1165\u11bc","\u110b\u1171\u110b\u116f\u11ab","\u110b\u1171\u1112\u1165\u11b7","\u110b\u1171\u1112\u1167\u11b8","\u110b\u1171\u11ba\u1109\u1161\u1105\u1161\u11b7","\u110b\u1172\u1102\u1161\u11ab\u1112\u1175","\u110b\u1172\u1105\u1165\u11b8","\u110b\u1172\u1106\u1167\u11bc","\u110b\u1172\u1106\u116e\u11af","\u110b\u1172\u1109\u1161\u11ab","\u110b\u1172\u110c\u1165\u11a8","\u110b\u1172\u110e\u1175\u110b\u116f\u11ab","\u110b\u1172\u1112\u1161\u11a8","\u110b\u1172\u1112\u1162\u11bc","\u110b\u1172\u1112\u1167\u11bc","\u110b\u1172\u11a8\u1100\u116e\u11ab","\u110b\u1172\u11a8\u1109\u1161\u11bc","\u110b\u1172\u11a8\u1109\u1175\u11b8","\u110b\u1172\u11a8\u110e\u1166","\u110b\u1173\u11ab\u1112\u1162\u11bc","\u110b\u1173\u11b7\u1105\u1167\u11a8","\u110b\u1173\u11b7\u1105\u116d","\u110b\u1173\u11b7\u1107\u1161\u11ab","\u110b\u1173\u11b7\u1109\u1165\u11bc","\u110b\u1173\u11b7\u1109\u1175\u11a8","\u110b\u1173\u11b7\u110b\u1161\u11a8","\u110b\u1173\u11b7\u110c\u116e","\u110b\u1174\u1100\u1167\u11ab","\u110b\u1174\u1102\u1169\u11ab","\u110b\u1174\u1106\u116e\u11ab","\u110b\u1174\u1107\u1169\u11a8","\u110b\u1174\u1109\u1175\u11a8","\u110b\u1174\u1109\u1175\u11b7","\u110b\u1174\u110b\u116c\u1105\u1169","\u110b\u1174\u110b\u116d\u11a8","\u110b\u1174\u110b\u116f\u11ab","\u110b\u1174\u1112\u1161\u11a8","\u110b\u1175\u1100\u1165\u11ba","\u110b\u1175\u1100\u1169\u11ba","\u110b\u1175\u1102\u1167\u11b7","\u110b\u1175\u1102\u1169\u11b7","\u110b\u1175\u1103\u1161\u11af","\u110b\u1175\u1103\u1162\u1105\u1169","\u110b\u1175\u1103\u1169\u11bc","\u110b\u1175\u1105\u1165\u11c2\u1100\u1166","\u110b\u1175\u1105\u1167\u11a8\u1109\u1165","\u110b\u1175\u1105\u1169\u11ab\u110c\u1165\u11a8","\u110b\u1175\u1105\u1173\u11b7","\u110b\u1175\u1106\u1175\u11ab","\u110b\u1175\u1107\u1161\u11af\u1109\u1169","\u110b\u1175\u1107\u1167\u11af","\u110b\u1175\u1107\u116e\u11af","\u110b\u1175\u1108\u1161\u11af","\u110b\u1175\u1109\u1161\u11bc","\u110b\u1175\u1109\u1165\u11bc","\u110b\u1175\u1109\u1173\u11af","\u110b\u1175\u110b\u1163\u1100\u1175","\u110b\u1175\u110b\u116d\u11bc","\u110b\u1175\u110b\u116e\u11ba","\u110b\u1175\u110b\u116f\u11af","\u110b\u1175\u110b\u1173\u11a8\u1100\u1169","\u110b\u1175\u110b\u1175\u11a8","\u110b\u1175\u110c\u1165\u11ab","\u110b\u1175\u110c\u116e\u11bc","\u110b\u1175\u1110\u1173\u11ae\u1102\u1161\u11af","\u110b\u1175\u1110\u1173\u11af","\u110b\u1175\u1112\u1169\u11ab","\u110b\u1175\u11ab\u1100\u1161\u11ab","\u110b\u1175\u11ab\u1100\u1167\u11a8","\u110b\u1175\u11ab\u1100\u1169\u11bc","\u110b\u1175\u11ab\u1100\u116e","\u110b\u1175\u11ab\u1100\u1173\u11ab","\u110b\u1175\u11ab\u1100\u1175","\u110b\u1175\u11ab\u1103\u1169","\u110b\u1175\u11ab\u1105\u1172","\u110b\u1175\u11ab\u1106\u116e\u11af","\u110b\u1175\u11ab\u1109\u1162\u11bc","\u110b\u1175\u11ab\u1109\u116b","\u110b\u1175\u11ab\u110b\u1167\u11ab","\u110b\u1175\u11ab\u110b\u116f\u11ab","\u110b\u1175\u11ab\u110c\u1162","\u110b\u1175\u11ab\u110c\u1169\u11bc","\u110b\u1175\u11ab\u110e\u1165\u11ab","\u110b\u1175\u11ab\u110e\u1166","\u110b\u1175\u11ab\u1110\u1165\u1102\u1166\u11ba","\u110b\u1175\u11ab\u1112\u1161","\u110b\u1175\u11ab\u1112\u1167\u11bc","\u110b\u1175\u11af\u1100\u1169\u11b8","\u110b\u1175\u11af\u1100\u1175","\u110b\u1175\u11af\u1103\u1161\u11ab","\u110b\u1175\u11af\u1103\u1162","\u110b\u1175\u11af\u1103\u1173\u11bc","\u110b\u1175\u11af\u1107\u1161\u11ab","\u110b\u1175\u11af\u1107\u1169\u11ab","\u110b\u1175\u11af\u1107\u116e","\u110b\u1175\u11af\u1109\u1161\u11bc","\u110b\u1175\u11af\u1109\u1162\u11bc","\u110b\u1175\u11af\u1109\u1169\u11ab","\u110b\u1175\u11af\u110b\u116d\u110b\u1175\u11af","\u110b\u1175\u11af\u110b\u116f\u11af","\u110b\u1175\u11af\u110c\u1165\u11bc","\u110b\u1175\u11af\u110c\u1169\u11bc","\u110b\u1175\u11af\u110c\u116e\u110b\u1175\u11af","\u110b\u1175\u11af\u110d\u1175\u11a8","\u110b\u1175\u11af\u110e\u1166","\u110b\u1175\u11af\u110e\u1175","\u110b\u1175\u11af\u1112\u1162\u11bc","\u110b\u1175\u11af\u1112\u116c\u110b\u116d\u11bc","\u110b\u1175\u11b7\u1100\u1173\u11b7","\u110b\u1175\u11b7\u1106\u116e","\u110b\u1175\u11b8\u1103\u1162","\u110b\u1175\u11b8\u1105\u1167\u11a8","\u110b\u1175\u11b8\u1106\u1161\u11ba","\u110b\u1175\u11b8\u1109\u1161","\u110b\u1175\u11b8\u1109\u116e\u11af","\u110b\u1175\u11b8\u1109\u1175","\u110b\u1175\u11b8\u110b\u116f\u11ab","\u110b\u1175\u11b8\u110c\u1161\u11bc","\u110b\u1175\u11b8\u1112\u1161\u11a8","\u110c\u1161\u1100\u1161\u110b\u116d\u11bc","\u110c\u1161\u1100\u1167\u11a8","\u110c\u1161\u1100\u1173\u11a8","\u110c\u1161\u1103\u1169\u11bc","\u110c\u1161\u1105\u1161\u11bc","\u110c\u1161\u1107\u116e\u1109\u1175\u11b7","\u110c\u1161\u1109\u1175\u11a8","\u110c\u1161\u1109\u1175\u11ab","\u110c\u1161\u110b\u1167\u11ab","\u110c\u1161\u110b\u116f\u11ab","\u110c\u1161\u110b\u1172\u11af","\u110c\u1161\u110c\u1165\u11ab\u1100\u1165","\u110c\u1161\u110c\u1165\u11bc","\u110c\u1161\u110c\u1169\u11ab\u1109\u1175\u11b7","\u110c\u1161\u1111\u1161\u11ab","\u110c\u1161\u11a8\u1100\u1161","\u110c\u1161\u11a8\u1102\u1167\u11ab","\u110c\u1161\u11a8\u1109\u1165\u11bc","\u110c\u1161\u11a8\u110b\u1165\u11b8","\u110c\u1161\u11a8\u110b\u116d\u11bc","\u110c\u1161\u11a8\u110b\u1173\u11ab\u1104\u1161\u11af","\u110c\u1161\u11a8\u1111\u116e\u11b7","\u110c\u1161\u11ab\u1103\u1175","\u110c\u1161\u11ab\u1104\u1173\u11a8","\u110c\u1161\u11ab\u110e\u1175","\u110c\u1161\u11af\u1106\u1169\u11ba","\u110c\u1161\u11b7\u1101\u1161\u11ab","\u110c\u1161\u11b7\u1109\u116e\u1112\u1161\u11b7","\u110c\u1161\u11b7\u1109\u1175","\u110c\u1161\u11b7\u110b\u1169\u11ba","\u110c\u1161\u11b7\u110c\u1161\u1105\u1175","\u110c\u1161\u11b8\u110c\u1175","\u110c\u1161\u11bc\u1100\u116a\u11ab","\u110c\u1161\u11bc\u1100\u116e\u11ab","\u110c\u1161\u11bc\u1100\u1175\u1100\u1161\u11ab","\u110c\u1161\u11bc\u1105\u1162","\u110c\u1161\u11bc\u1105\u1168","\u110c\u1161\u11bc\u1105\u1173","\u110c\u1161\u11bc\u1106\u1161","\u110c\u1161\u11bc\u1106\u1167\u11ab","\u110c\u1161\u11bc\u1106\u1169","\u110c\u1161\u11bc\u1106\u1175","\u110c\u1161\u11bc\u1107\u1175","\u110c\u1161\u11bc\u1109\u1161","\u110c\u1161\u11bc\u1109\u1169","\u110c\u1161\u11bc\u1109\u1175\u11a8","\u110c\u1161\u11bc\u110b\u1162\u110b\u1175\u11ab","\u110c\u1161\u11bc\u110b\u1175\u11ab","\u110c\u1161\u11bc\u110c\u1165\u11b7","\u110c\u1161\u11bc\u110e\u1161","\u110c\u1161\u11bc\u1112\u1161\u11a8\u1100\u1173\u11b7","\u110c\u1162\u1102\u1173\u11bc","\u110c\u1162\u1108\u1161\u11af\u1105\u1175","\u110c\u1162\u1109\u1161\u11ab","\u110c\u1162\u1109\u1162\u11bc","\u110c\u1162\u110c\u1161\u11a8\u1102\u1167\u11ab","\u110c\u1162\u110c\u1165\u11bc","\u110c\u1162\u110e\u1162\u1100\u1175","\u110c\u1162\u1111\u1161\u11ab","\u110c\u1162\u1112\u1161\u11a8","\u110c\u1162\u1112\u116a\u11af\u110b\u116d\u11bc","\u110c\u1165\u1100\u1165\u11ba","\u110c\u1165\u1100\u1169\u1105\u1175","\u110c\u1165\u1100\u1169\u11ba","\u110c\u1165\u1102\u1167\u11a8","\u110c\u1165\u1105\u1165\u11ab","\u110c\u1165\u1105\u1165\u11c2\u1100\u1166","\u110c\u1165\u1107\u1165\u11ab","\u110c\u1165\u110b\u116e\u11af","\u110c\u1165\u110c\u1165\u11af\u1105\u1169","\u110c\u1165\u110e\u116e\u11a8","\u110c\u1165\u11a8\u1100\u1173\u11a8","\u110c\u1165\u11a8\u1103\u1161\u11bc\u1112\u1175","\u110c\u1165\u11a8\u1109\u1165\u11bc","\u110c\u1165\u11a8\u110b\u116d\u11bc","\u110c\u1165\u11a8\u110b\u1173\u11bc","\u110c\u1165\u11ab\u1100\u1162","\u110c\u1165\u11ab\u1100\u1169\u11bc","\u110c\u1165\u11ab\u1100\u1175","\u110c\u1165\u11ab\u1103\u1161\u11af","\u110c\u1165\u11ab\u1105\u1161\u1103\u1169","\u110c\u1165\u11ab\u1106\u1161\u11bc","\u110c\u1165\u11ab\u1106\u116e\u11ab","\u110c\u1165\u11ab\u1107\u1161\u11ab","\u110c\u1165\u11ab\u1107\u116e","\u110c\u1165\u11ab\u1109\u1166","\u110c\u1165\u11ab\u1109\u1175","\u110c\u1165\u11ab\u110b\u116d\u11bc","\u110c\u1165\u11ab\u110c\u1161","\u110c\u1165\u11ab\u110c\u1162\u11bc","\u110c\u1165\u11ab\u110c\u116e","\u110c\u1165\u11ab\u110e\u1165\u11af","\u110c\u1165\u11ab\u110e\u1166","\u110c\u1165\u11ab\u1110\u1169\u11bc","\u110c\u1165\u11ab\u1112\u1167","\u110c\u1165\u11ab\u1112\u116e","\u110c\u1165\u11af\u1103\u1162","\u110c\u1165\u11af\u1106\u1161\u11bc","\u110c\u1165\u11af\u1107\u1161\u11ab","\u110c\u1165\u11af\u110b\u1163\u11a8","\u110c\u1165\u11af\u110e\u1161","\u110c\u1165\u11b7\u1100\u1165\u11b7","\u110c\u1165\u11b7\u1109\u116e","\u110c\u1165\u11b7\u1109\u1175\u11b7","\u110c\u1165\u11b7\u110b\u116f\u11ab","\u110c\u1165\u11b7\u110c\u1165\u11b7","\u110c\u1165\u11b7\u110e\u1161","\u110c\u1165\u11b8\u1100\u1173\u11ab","\u110c\u1165\u11b8\u1109\u1175","\u110c\u1165\u11b8\u110e\u1169\u11a8","\u110c\u1165\u11ba\u1100\u1161\u1105\u1161\u11a8","\u110c\u1165\u11bc\u1100\u1165\u110c\u1161\u11bc","\u110c\u1165\u11bc\u1103\u1169","\u110c\u1165\u11bc\u1105\u1172\u110c\u1161\u11bc","\u110c\u1165\u11bc\u1105\u1175","\u110c\u1165\u11bc\u1106\u1161\u11af","\u110c\u1165\u11bc\u1106\u1167\u11ab","\u110c\u1165\u11bc\u1106\u116e\u11ab","\u110c\u1165\u11bc\u1107\u1161\u11ab\u1103\u1162","\u110c\u1165\u11bc\u1107\u1169","\u110c\u1165\u11bc\u1107\u116e","\u110c\u1165\u11bc\u1107\u1175","\u110c\u1165\u11bc\u1109\u1161\u11bc","\u110c\u1165\u11bc\u1109\u1165\u11bc","\u110c\u1165\u11bc\u110b\u1169","\u110c\u1165\u11bc\u110b\u116f\u11ab","\u110c\u1165\u11bc\u110c\u1161\u11bc","\u110c\u1165\u11bc\u110c\u1175","\u110c\u1165\u11bc\u110e\u1175","\u110c\u1165\u11bc\u1112\u116a\u11a8\u1112\u1175","\u110c\u1166\u1100\u1169\u11bc","\u110c\u1166\u1100\u116a\u110c\u1165\u11b7","\u110c\u1166\u1103\u1162\u1105\u1169","\u110c\u1166\u1106\u1169\u11a8","\u110c\u1166\u1107\u1161\u11af","\u110c\u1166\u1107\u1165\u11b8","\u110c\u1166\u1109\u1161\u11ba\u1102\u1161\u11af","\u110c\u1166\u110b\u1161\u11ab","\u110c\u1166\u110b\u1175\u11af","\u110c\u1166\u110c\u1161\u11a8","\u110c\u1166\u110c\u116e\u1103\u1169","\u110c\u1166\u110e\u116e\u11af","\u110c\u1166\u1111\u116e\u11b7","\u110c\u1166\u1112\u1161\u11ab","\u110c\u1169\u1100\u1161\u11a8","\u110c\u1169\u1100\u1165\u11ab","\u110c\u1169\u1100\u1173\u11b7","\u110c\u1169\u1100\u1175\u11bc","\u110c\u1169\u1106\u1167\u11bc","\u110c\u1169\u1106\u1175\u1105\u116d","\u110c\u1169\u1109\u1161\u11bc","\u110c\u1169\u1109\u1165\u11ab","\u110c\u1169\u110b\u116d\u11bc\u1112\u1175","\u110c\u1169\u110c\u1165\u11af","\u110c\u1169\u110c\u1165\u11bc","\u110c\u1169\u110c\u1175\u11a8","\u110c\u1169\u11ab\u1103\u1162\u11ba\u1106\u1161\u11af","\u110c\u1169\u11ab\u110c\u1162","\u110c\u1169\u11af\u110b\u1165\u11b8","\u110c\u1169\u11af\u110b\u1173\u11b7","\u110c\u1169\u11bc\u1100\u116d","\u110c\u1169\u11bc\u1105\u1169","\u110c\u1169\u11bc\u1105\u1172","\u110c\u1169\u11bc\u1109\u1169\u1105\u1175","\u110c\u1169\u11bc\u110b\u1165\u11b8\u110b\u116f\u11ab","\u110c\u1169\u11bc\u110c\u1169\u11bc","\u110c\u1169\u11bc\u1112\u1161\u11b8","\u110c\u116a\u1109\u1165\u11a8","\u110c\u116c\u110b\u1175\u11ab","\u110c\u116e\u1100\u116a\u11ab\u110c\u1165\u11a8","\u110c\u116e\u1105\u1173\u11b7","\u110c\u116e\u1106\u1161\u11af","\u110c\u116e\u1106\u1165\u1102\u1175","\u110c\u116e\u1106\u1165\u11a8","\u110c\u116e\u1106\u116e\u11ab","\u110c\u116e\u1106\u1175\u11ab","\u110c\u116e\u1107\u1161\u11bc","\u110c\u116e\u1107\u1167\u11ab","\u110c\u116e\u1109\u1175\u11a8","\u110c\u116e\u110b\u1175\u11ab","\u110c\u116e\u110b\u1175\u11af","\u110c\u116e\u110c\u1161\u11bc","\u110c\u116e\u110c\u1165\u11ab\u110c\u1161","\u110c\u116e\u1110\u1162\u11a8","\u110c\u116e\u11ab\u1107\u1175","\u110c\u116e\u11af\u1100\u1165\u1105\u1175","\u110c\u116e\u11af\u1100\u1175","\u110c\u116e\u11af\u1106\u116e\u1102\u1174","\u110c\u116e\u11bc\u1100\u1161\u11ab","\u110c\u116e\u11bc\u1100\u1168\u1107\u1161\u11bc\u1109\u1169\u11bc","\u110c\u116e\u11bc\u1100\u116e\u11a8","\u110c\u116e\u11bc\u1102\u1167\u11ab","\u110c\u116e\u11bc\u1103\u1161\u11ab","\u110c\u116e\u11bc\u1103\u1169\u11a8","\u110c\u116e\u11bc\u1107\u1161\u11ab","\u110c\u116e\u11bc\u1107\u116e","\u110c\u116e\u11bc\u1109\u1166","\u110c\u116e\u11bc\u1109\u1169\u1100\u1175\u110b\u1165\u11b8","\u110c\u116e\u11bc\u1109\u116e\u11ab","\u110c\u116e\u11bc\u110b\u1161\u11bc","\u110c\u116e\u11bc\u110b\u116d","\u110c\u116e\u11bc\u1112\u1161\u11a8\u1100\u116d","\u110c\u1173\u11a8\u1109\u1165\u11a8","\u110c\u1173\u11a8\u1109\u1175","\u110c\u1173\u11af\u1100\u1165\u110b\u116e\u11b7","\u110c\u1173\u11bc\u1100\u1161","\u110c\u1173\u11bc\u1100\u1165","\u110c\u1173\u11bc\u1100\u116f\u11ab","\u110c\u1173\u11bc\u1109\u1161\u11bc","\u110c\u1173\u11bc\u1109\u1166","\u110c\u1175\u1100\u1161\u11a8","\u110c\u1175\u1100\u1161\u11b8","\u110c\u1175\u1100\u1167\u11bc","\u110c\u1175\u1100\u1173\u11a8\u1112\u1175","\u110c\u1175\u1100\u1173\u11b7","\u110c\u1175\u1100\u1173\u11b8","\u110c\u1175\u1102\u1173\u11bc","\u110c\u1175\u1105\u1173\u11b7\u1100\u1175\u11af","\u110c\u1175\u1105\u1175\u1109\u1161\u11ab","\u110c\u1175\u1107\u1161\u11bc","\u110c\u1175\u1107\u116e\u11bc","\u110c\u1175\u1109\u1175\u11a8","\u110c\u1175\u110b\u1167\u11a8","\u110c\u1175\u110b\u116e\u1100\u1162","\u110c\u1175\u110b\u116f\u11ab","\u110c\u1175\u110c\u1165\u11a8","\u110c\u1175\u110c\u1165\u11b7","\u110c\u1175\u110c\u1175\u11ab","\u110c\u1175\u110e\u116e\u11af","\u110c\u1175\u11a8\u1109\u1165\u11ab","\u110c\u1175\u11a8\u110b\u1165\u11b8","\u110c\u1175\u11a8\u110b\u116f\u11ab","\u110c\u1175\u11a8\u110c\u1161\u11bc","\u110c\u1175\u11ab\u1100\u1173\u11b8","\u110c\u1175\u11ab\u1103\u1169\u11bc","\u110c\u1175\u11ab\u1105\u1169","\u110c\u1175\u11ab\u1105\u116d","\u110c\u1175\u11ab\u1105\u1175","\u110c\u1175\u11ab\u110d\u1161","\u110c\u1175\u11ab\u110e\u1161\u11af","\u110c\u1175\u11ab\u110e\u116e\u11af","\u110c\u1175\u11ab\u1110\u1169\u11bc","\u110c\u1175\u11ab\u1112\u1162\u11bc","\u110c\u1175\u11af\u1106\u116e\u11ab","\u110c\u1175\u11af\u1107\u1167\u11bc","\u110c\u1175\u11af\u1109\u1165","\u110c\u1175\u11b7\u110c\u1161\u11a8","\u110c\u1175\u11b8\u1103\u1161\u11ab","\u110c\u1175\u11b8\u110b\u1161\u11ab","\u110c\u1175\u11b8\u110c\u116e\u11bc","\u110d\u1161\u110c\u1173\u11bc","\u110d\u1175\u1101\u1165\u1100\u1175","\u110e\u1161\u1102\u1161\u11b7","\u110e\u1161\u1105\u1161\u1105\u1175","\u110e\u1161\u1105\u1163\u11bc","\u110e\u1161\u1105\u1175\u11b7","\u110e\u1161\u1107\u1167\u11af","\u110e\u1161\u1109\u1165\u11ab","\u110e\u1161\u110e\u1173\u11b7","\u110e\u1161\u11a8\u1100\u1161\u11a8","\u110e\u1161\u11ab\u1106\u116e\u11af","\u110e\u1161\u11ab\u1109\u1165\u11bc","\u110e\u1161\u11b7\u1100\u1161","\u110e\u1161\u11b7\u1100\u1175\u1105\u1173\u11b7","\u110e\u1161\u11b7\u1109\u1162","\u110e\u1161\u11b7\u1109\u1165\u11a8","\u110e\u1161\u11b7\u110b\u1167","\u110e\u1161\u11b7\u110b\u116c","\u110e\u1161\u11b7\u110c\u1169","\u110e\u1161\u11ba\u110c\u1161\u11ab","\u110e\u1161\u11bc\u1100\u1161","\u110e\u1161\u11bc\u1100\u1169","\u110e\u1161\u11bc\u1100\u116e","\u110e\u1161\u11bc\u1106\u116e\u11ab","\u110e\u1161\u11bc\u1107\u1161\u11a9","\u110e\u1161\u11bc\u110c\u1161\u11a8","\u110e\u1161\u11bc\u110c\u1169","\u110e\u1162\u1102\u1165\u11af","\u110e\u1162\u110c\u1165\u11b7","\u110e\u1162\u11a8\u1100\u1161\u1107\u1161\u11bc","\u110e\u1162\u11a8\u1107\u1161\u11bc","\u110e\u1162\u11a8\u1109\u1161\u11bc","\u110e\u1162\u11a8\u110b\u1175\u11b7","\u110e\u1162\u11b7\u1111\u1175\u110b\u1165\u11ab","\u110e\u1165\u1107\u1165\u11af","\u110e\u1165\u110b\u1173\u11b7","\u110e\u1165\u11ab\u1100\u116e\u11a8","\u110e\u1165\u11ab\u1103\u116e\u11bc","\u110e\u1165\u11ab\u110c\u1161\u11bc","\u110e\u1165\u11ab\u110c\u1162","\u110e\u1165\u11ab\u110e\u1165\u11ab\u1112\u1175","\u110e\u1165\u11af\u1103\u1169","\u110e\u1165\u11af\u110c\u1165\u1112\u1175","\u110e\u1165\u11af\u1112\u1161\u11a8","\u110e\u1165\u11ba\u1102\u1161\u11af","\u110e\u1165\u11ba\u110d\u1162","\u110e\u1165\u11bc\u1102\u1167\u11ab","\u110e\u1165\u11bc\u1107\u1161\u110c\u1175","\u110e\u1165\u11bc\u1109\u1169","\u110e\u1165\u11bc\u110e\u116e\u11ab","\u110e\u1166\u1100\u1168","\u110e\u1166\u1105\u1167\u11a8","\u110e\u1166\u110b\u1169\u11ab","\u110e\u1166\u110b\u1172\u11a8","\u110e\u1166\u110c\u116e\u11bc","\u110e\u1166\u1112\u1165\u11b7","\u110e\u1169\u1103\u1173\u11bc\u1112\u1161\u11a8\u1109\u1162\u11bc","\u110e\u1169\u1107\u1161\u11ab","\u110e\u1169\u1107\u1161\u11b8","\u110e\u1169\u1109\u1161\u11bc\u1112\u116a","\u110e\u1169\u1109\u116e\u11ab","\u110e\u1169\u110b\u1167\u1105\u1173\u11b7","\u110e\u1169\u110b\u116f\u11ab","\u110e\u1169\u110c\u1165\u1102\u1167\u11a8","\u110e\u1169\u110c\u1165\u11b7","\u110e\u1169\u110e\u1165\u11bc","\u110e\u1169\u110f\u1169\u11af\u1105\u1175\u11ba","\u110e\u1169\u11ba\u1107\u116e\u11af","\u110e\u1169\u11bc\u1100\u1161\u11a8","\u110e\u1169\u11bc\u1105\u1175","\u110e\u1169\u11bc\u110c\u1161\u11bc","\u110e\u116a\u11af\u110b\u1167\u11bc","\u110e\u116c\u1100\u1173\u11ab","\u110e\u116c\u1109\u1161\u11bc","\u110e\u116c\u1109\u1165\u11ab","\u110e\u116c\u1109\u1175\u11ab","\u110e\u116c\u110b\u1161\u11a8","\u110e\u116c\u110c\u1169\u11bc","\u110e\u116e\u1109\u1165\u11a8","\u110e\u116e\u110b\u1165\u11a8","\u110e\u116e\u110c\u1175\u11ab","\u110e\u116e\u110e\u1165\u11ab","\u110e\u116e\u110e\u1173\u11a8","\u110e\u116e\u11a8\u1100\u116e","\u110e\u116e\u11a8\u1109\u1169","\u110e\u116e\u11a8\u110c\u1166","\u110e\u116e\u11a8\u1112\u1161","\u110e\u116e\u11af\u1100\u1173\u11ab","\u110e\u116e\u11af\u1107\u1161\u11af","\u110e\u116e\u11af\u1109\u1161\u11ab","\u110e\u116e\u11af\u1109\u1175\u11ab","\u110e\u116e\u11af\u110b\u1167\u11ab","\u110e\u116e\u11af\u110b\u1175\u11b8","\u110e\u116e\u11af\u110c\u1161\u11bc","\u110e\u116e\u11af\u1111\u1161\u11ab","\u110e\u116e\u11bc\u1100\u1167\u11a8","\u110e\u116e\u11bc\u1100\u1169","\u110e\u116e\u11bc\u1103\u1169\u11af","\u110e\u116e\u11bc\u1107\u116e\u11ab\u1112\u1175","\u110e\u116e\u11bc\u110e\u1165\u11bc\u1103\u1169","\u110e\u1171\u110b\u1165\u11b8","\u110e\u1171\u110c\u1175\u11a8","\u110e\u1171\u1112\u1163\u11bc","\u110e\u1175\u110b\u1163\u11a8","\u110e\u1175\u11ab\u1100\u116e","\u110e\u1175\u11ab\u110e\u1165\u11a8","\u110e\u1175\u11af\u1109\u1175\u11b8","\u110e\u1175\u11af\u110b\u116f\u11af","\u110e\u1175\u11af\u1111\u1161\u11ab","\u110e\u1175\u11b7\u1103\u1162","\u110e\u1175\u11b7\u1106\u116e\u11a8","\u110e\u1175\u11b7\u1109\u1175\u11af","\u110e\u1175\u11ba\u1109\u1169\u11af","\u110e\u1175\u11bc\u110e\u1161\u11ab","\u110f\u1161\u1106\u1166\u1105\u1161","\u110f\u1161\u110b\u116e\u11ab\u1110\u1165","\u110f\u1161\u11af\u1100\u116e\u11a8\u1109\u116e","\u110f\u1162\u1105\u1175\u11a8\u1110\u1165","\u110f\u1162\u11b7\u1111\u1165\u1109\u1173","\u110f\u1162\u11b7\u1111\u1166\u110b\u1175\u11ab","\u110f\u1165\u1110\u1173\u11ab","\u110f\u1165\u11ab\u1103\u1175\u1109\u1167\u11ab","\u110f\u1165\u11af\u1105\u1165","\u110f\u1165\u11b7\u1111\u1172\u1110\u1165","\u110f\u1169\u1101\u1175\u1105\u1175","\u110f\u1169\u1106\u1175\u1103\u1175","\u110f\u1169\u11ab\u1109\u1165\u1110\u1173","\u110f\u1169\u11af\u1105\u1161","\u110f\u1169\u11b7\u1111\u1173\u11af\u1105\u1166\u11a8\u1109\u1173","\u110f\u1169\u11bc\u1102\u1161\u1106\u116e\u11af","\u110f\u116b\u1100\u1161\u11b7","\u110f\u116e\u1103\u1166\u1110\u1161","\u110f\u1173\u1105\u1175\u11b7","\u110f\u1173\u11ab\u1100\u1175\u11af","\u110f\u1173\u11ab\u1104\u1161\u11af","\u110f\u1173\u11ab\u1109\u1169\u1105\u1175","\u110f\u1173\u11ab\u110b\u1161\u1103\u1173\u11af","\u110f\u1173\u11ab\u110b\u1165\u1106\u1165\u1102\u1175","\u110f\u1173\u11ab\u110b\u1175\u11af","\u110f\u1173\u11ab\u110c\u1165\u11af","\u110f\u1173\u11af\u1105\u1162\u1109\u1175\u11a8","\u110f\u1173\u11af\u1105\u1165\u11b8","\u110f\u1175\u11af\u1105\u1169","\u1110\u1161\u110b\u1175\u11b8","\u1110\u1161\u110c\u1161\u1100\u1175","\u1110\u1161\u11a8\u1100\u116e","\u1110\u1161\u11a8\u110c\u1161","\u1110\u1161\u11ab\u1109\u1162\u11bc","\u1110\u1162\u1100\u116f\u11ab\u1103\u1169","\u1110\u1162\u110b\u1163\u11bc","\u1110\u1162\u1111\u116e\u11bc","\u1110\u1162\u11a8\u1109\u1175","\u1110\u1162\u11af\u1105\u1165\u11ab\u1110\u1173","\u1110\u1165\u1102\u1165\u11af","\u1110\u1165\u1106\u1175\u1102\u1165\u11af","\u1110\u1166\u1102\u1175\u1109\u1173","\u1110\u1166\u1109\u1173\u1110\u1173","\u1110\u1166\u110b\u1175\u1107\u1173\u11af","\u1110\u1166\u11af\u1105\u1166\u1107\u1175\u110c\u1165\u11ab","\u1110\u1169\u1105\u1169\u11ab","\u1110\u1169\u1106\u1161\u1110\u1169","\u1110\u1169\u110b\u116d\u110b\u1175\u11af","\u1110\u1169\u11bc\u1100\u1168","\u1110\u1169\u11bc\u1100\u116a","\u1110\u1169\u11bc\u1105\u1169","\u1110\u1169\u11bc\u1109\u1175\u11ab","\u1110\u1169\u11bc\u110b\u1167\u11a8","\u1110\u1169\u11bc\u110b\u1175\u11af","\u1110\u1169\u11bc\u110c\u1161\u11bc","\u1110\u1169\u11bc\u110c\u1166","\u1110\u1169\u11bc\u110c\u1173\u11bc","\u1110\u1169\u11bc\u1112\u1161\u11b8","\u1110\u1169\u11bc\u1112\u116a","\u1110\u116c\u1100\u1173\u11ab","\u1110\u116c\u110b\u116f\u11ab","\u1110\u116c\u110c\u1175\u11a8\u1100\u1173\u11b7","\u1110\u1171\u1100\u1175\u11b7","\u1110\u1173\u1105\u1165\u11a8","\u1110\u1173\u11a8\u1100\u1173\u11b8","\u1110\u1173\u11a8\u1107\u1167\u11af","\u1110\u1173\u11a8\u1109\u1165\u11bc","\u1110\u1173\u11a8\u1109\u116e","\u1110\u1173\u11a8\u110c\u1175\u11bc","\u1110\u1173\u11a8\u1112\u1175","\u1110\u1173\u11ab\u1110\u1173\u11ab\u1112\u1175","\u1110\u1175\u1109\u1167\u110e\u1173","\u1111\u1161\u1105\u1161\u11ab\u1109\u1162\u11a8","\u1111\u1161\u110b\u1175\u11af","\u1111\u1161\u110e\u116e\u11af\u1109\u1169","\u1111\u1161\u11ab\u1100\u1167\u11af","\u1111\u1161\u11ab\u1103\u1161\u11ab","\u1111\u1161\u11ab\u1106\u1162","\u1111\u1161\u11ab\u1109\u1161","\u1111\u1161\u11af\u1109\u1175\u11b8","\u1111\u1161\u11af\u110b\u116f\u11af","\u1111\u1161\u11b8\u1109\u1169\u11bc","\u1111\u1162\u1109\u1167\u11ab","\u1111\u1162\u11a8\u1109\u1173","\u1111\u1162\u11a8\u1109\u1175\u1106\u1175\u11af\u1105\u1175","\u1111\u1162\u11ab\u1110\u1175","\u1111\u1165\u1109\u1166\u11ab\u1110\u1173","\u1111\u1166\u110b\u1175\u11ab\u1110\u1173","\u1111\u1167\u11ab\u1100\u1167\u11ab","\u1111\u1167\u11ab\u110b\u1174","\u1111\u1167\u11ab\u110c\u1175","\u1111\u1167\u11ab\u1112\u1175","\u1111\u1167\u11bc\u1100\u1161","\u1111\u1167\u11bc\u1100\u1172\u11ab","\u1111\u1167\u11bc\u1109\u1162\u11bc","\u1111\u1167\u11bc\u1109\u1169","\u1111\u1167\u11bc\u110b\u1163\u11bc","\u1111\u1167\u11bc\u110b\u1175\u11af","\u1111\u1167\u11bc\u1112\u116a","\u1111\u1169\u1109\u1173\u1110\u1165","\u1111\u1169\u110b\u1175\u11ab\u1110\u1173","\u1111\u1169\u110c\u1161\u11bc","\u1111\u1169\u1112\u1161\u11b7","\u1111\u116d\u1106\u1167\u11ab","\u1111\u116d\u110c\u1165\u11bc","\u1111\u116d\u110c\u116e\u11ab","\u1111\u116d\u1112\u1167\u11ab","\u1111\u116e\u11b7\u1106\u1169\u11a8","\u1111\u116e\u11b7\u110c\u1175\u11af","\u1111\u116e\u11bc\u1100\u1167\u11bc","\u1111\u116e\u11bc\u1109\u1169\u11a8","\u1111\u116e\u11bc\u1109\u1173\u11b8","\u1111\u1173\u1105\u1161\u11bc\u1109\u1173","\u1111\u1173\u1105\u1175\u11ab\u1110\u1165","\u1111\u1173\u11af\u1105\u1161\u1109\u1173\u1110\u1175\u11a8","\u1111\u1175\u1100\u1169\u11ab","\u1111\u1175\u1106\u1161\u11bc","\u1111\u1175\u110b\u1161\u1102\u1169","\u1111\u1175\u11af\u1105\u1173\u11b7","\u1111\u1175\u11af\u1109\u116e","\u1111\u1175\u11af\u110b\u116d","\u1111\u1175\u11af\u110c\u1161","\u1111\u1175\u11af\u1110\u1169\u11bc","\u1111\u1175\u11bc\u1100\u1168","\u1112\u1161\u1102\u1173\u1102\u1175\u11b7","\u1112\u1161\u1102\u1173\u11af","\u1112\u1161\u1103\u1173\u110b\u1170\u110b\u1165","\u1112\u1161\u1105\u116e\u11ba\u1107\u1161\u11b7","\u1112\u1161\u1107\u1161\u11ab\u1100\u1175","\u1112\u1161\u1109\u116e\u11a8\u110c\u1175\u11b8","\u1112\u1161\u1109\u116e\u11ab","\u1112\u1161\u110b\u1167\u1110\u1173\u11ab","\u1112\u1161\u110c\u1175\u1106\u1161\u11ab","\u1112\u1161\u110e\u1165\u11ab","\u1112\u1161\u1111\u116e\u11b7","\u1112\u1161\u1111\u1175\u11af","\u1112\u1161\u11a8\u1100\u116a","\u1112\u1161\u11a8\u1100\u116d","\u1112\u1161\u11a8\u1100\u1173\u11b8","\u1112\u1161\u11a8\u1100\u1175","\u1112\u1161\u11a8\u1102\u1167\u11ab","\u1112\u1161\u11a8\u1105\u1167\u11a8","\u1112\u1161\u11a8\u1107\u1165\u11ab","\u1112\u1161\u11a8\u1107\u116e\u1106\u1169","\u1112\u1161\u11a8\u1107\u1175","\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1112\u1161\u11a8\u1109\u116e\u11af","\u1112\u1161\u11a8\u1109\u1173\u11b8","\u1112\u1161\u11a8\u110b\u116d\u11bc\u1111\u116e\u11b7","\u1112\u1161\u11a8\u110b\u116f\u11ab","\u1112\u1161\u11a8\u110b\u1171","\u1112\u1161\u11a8\u110c\u1161","\u1112\u1161\u11a8\u110c\u1165\u11b7","\u1112\u1161\u11ab\u1100\u1168","\u1112\u1161\u11ab\u1100\u1173\u11af","\u1112\u1161\u11ab\u1101\u1165\u1107\u1165\u11ab\u110b\u1166","\u1112\u1161\u11ab\u1102\u1161\u11bd","\u1112\u1161\u11ab\u1102\u116e\u11ab","\u1112\u1161\u11ab\u1103\u1169\u11bc\u110b\u1161\u11ab","\u1112\u1161\u11ab\u1104\u1162","\u1112\u1161\u11ab\u1105\u1161\u1109\u1161\u11ab","\u1112\u1161\u11ab\u1106\u1161\u1103\u1175","\u1112\u1161\u11ab\u1106\u116e\u11ab","\u1112\u1161\u11ab\u1107\u1165\u11ab","\u1112\u1161\u11ab\u1107\u1169\u11a8","\u1112\u1161\u11ab\u1109\u1175\u11a8","\u1112\u1161\u11ab\u110b\u1167\u1105\u1173\u11b7","\u1112\u1161\u11ab\u110d\u1169\u11a8","\u1112\u1161\u11af\u1106\u1165\u1102\u1175","\u1112\u1161\u11af\u110b\u1161\u1107\u1165\u110c\u1175","\u1112\u1161\u11af\u110b\u1175\u11ab","\u1112\u1161\u11b7\u1101\u1166","\u1112\u1161\u11b7\u1107\u116e\u1105\u1169","\u1112\u1161\u11b8\u1100\u1167\u11a8","\u1112\u1161\u11b8\u1105\u1175\u110c\u1165\u11a8","\u1112\u1161\u11bc\u1100\u1169\u11bc","\u1112\u1161\u11bc\u1100\u116e","\u1112\u1161\u11bc\u1109\u1161\u11bc","\u1112\u1161\u11bc\u110b\u1174","\u1112\u1162\u1100\u1167\u11af","\u1112\u1162\u1100\u116e\u11ab","\u1112\u1162\u1103\u1161\u11b8","\u1112\u1162\u1103\u1161\u11bc","\u1112\u1162\u1106\u116e\u11af","\u1112\u1162\u1109\u1165\u11a8","\u1112\u1162\u1109\u1165\u11af","\u1112\u1162\u1109\u116e\u110b\u116d\u11a8\u110c\u1161\u11bc","\u1112\u1162\u110b\u1161\u11ab","\u1112\u1162\u11a8\u1109\u1175\u11b7","\u1112\u1162\u11ab\u1103\u1173\u1107\u1162\u11a8","\u1112\u1162\u11b7\u1107\u1165\u1100\u1165","\u1112\u1162\u11ba\u1107\u1167\u11c0","\u1112\u1162\u11ba\u1109\u1161\u11af","\u1112\u1162\u11bc\u1103\u1169\u11bc","\u1112\u1162\u11bc\u1107\u1169\u11a8","\u1112\u1162\u11bc\u1109\u1161","\u1112\u1162\u11bc\u110b\u116e\u11ab","\u1112\u1162\u11bc\u110b\u1171","\u1112\u1163\u11bc\u1100\u1175","\u1112\u1163\u11bc\u1109\u1161\u11bc","\u1112\u1163\u11bc\u1109\u116e","\u1112\u1165\u1105\u1161\u11a8","\u1112\u1165\u110b\u116d\u11bc","\u1112\u1166\u11af\u1100\u1175","\u1112\u1167\u11ab\u1100\u116a\u11ab","\u1112\u1167\u11ab\u1100\u1173\u11b7","\u1112\u1167\u11ab\u1103\u1162","\u1112\u1167\u11ab\u1109\u1161\u11bc","\u1112\u1167\u11ab\u1109\u1175\u11af","\u1112\u1167\u11ab\u110c\u1161\u11bc","\u1112\u1167\u11ab\u110c\u1162","\u1112\u1167\u11ab\u110c\u1175","\u1112\u1167\u11af\u110b\u1162\u11a8","\u1112\u1167\u11b8\u1105\u1167\u11a8","\u1112\u1167\u11bc\u1107\u116e","\u1112\u1167\u11bc\u1109\u1161","\u1112\u1167\u11bc\u1109\u116e","\u1112\u1167\u11bc\u1109\u1175\u11a8","\u1112\u1167\u11bc\u110c\u1166","\u1112\u1167\u11bc\u1110\u1162","\u1112\u1167\u11bc\u1111\u1167\u11ab","\u1112\u1168\u1110\u1162\u11a8","\u1112\u1169\u1100\u1175\u1109\u1175\u11b7","\u1112\u1169\u1102\u1161\u11b7","\u1112\u1169\u1105\u1161\u11bc\u110b\u1175","\u1112\u1169\u1107\u1161\u11a8","\u1112\u1169\u1110\u1166\u11af","\u1112\u1169\u1112\u1173\u11b8","\u1112\u1169\u11a8\u1109\u1175","\u1112\u1169\u11af\u1105\u1169","\u1112\u1169\u11b7\u1111\u1166\u110b\u1175\u110c\u1175","\u1112\u1169\u11bc\u1107\u1169","\u1112\u1169\u11bc\u1109\u116e","\u1112\u1169\u11bc\u110e\u1161","\u1112\u116a\u1106\u1167\u11ab","\u1112\u116a\u1107\u116e\u11ab","\u1112\u116a\u1109\u1161\u11af","\u1112\u116a\u110b\u116d\u110b\u1175\u11af","\u1112\u116a\u110c\u1161\u11bc","\u1112\u116a\u1112\u1161\u11a8","\u1112\u116a\u11a8\u1107\u1169","\u1112\u116a\u11a8\u110b\u1175\u11ab","\u1112\u116a\u11a8\u110c\u1161\u11bc","\u1112\u116a\u11a8\u110c\u1165\u11bc","\u1112\u116a\u11ab\u1100\u1161\u11b8","\u1112\u116a\u11ab\u1100\u1167\u11bc","\u1112\u116a\u11ab\u110b\u1167\u11bc","\u1112\u116a\u11ab\u110b\u1172\u11af","\u1112\u116a\u11ab\u110c\u1161","\u1112\u116a\u11af\u1100\u1175","\u1112\u116a\u11af\u1103\u1169\u11bc","\u1112\u116a\u11af\u1107\u1161\u11af\u1112\u1175","\u1112\u116a\u11af\u110b\u116d\u11bc","\u1112\u116a\u11af\u110d\u1161\u11a8","\u1112\u116c\u1100\u1167\u11ab","\u1112\u116c\u1100\u116a\u11ab","\u1112\u116c\u1107\u1169\u11a8","\u1112\u116c\u1109\u1162\u11a8","\u1112\u116c\u110b\u116f\u11ab","\u1112\u116c\u110c\u1161\u11bc","\u1112\u116c\u110c\u1165\u11ab","\u1112\u116c\u11ba\u1109\u116e","\u1112\u116c\u11bc\u1103\u1161\u11ab\u1107\u1169\u1103\u1169","\u1112\u116d\u110b\u1172\u11af\u110c\u1165\u11a8","\u1112\u116e\u1107\u1161\u11ab","\u1112\u116e\u110e\u116e\u11ba\u1100\u1161\u1105\u116e","\u1112\u116e\u11ab\u1105\u1167\u11ab","\u1112\u116f\u11af\u110a\u1175\u11ab","\u1112\u1172\u1109\u1175\u11a8","\u1112\u1172\u110b\u1175\u11af","\u1112\u1172\u11bc\u1102\u1162","\u1112\u1173\u1105\u1173\u11b7","\u1112\u1173\u11a8\u1107\u1162\u11a8","\u1112\u1173\u11a8\u110b\u1175\u11ab","\u1112\u1173\u11ab\u110c\u1165\u11a8","\u1112\u1173\u11ab\u1112\u1175","\u1112\u1173\u11bc\u1106\u1175","\u1112\u1173\u11bc\u1107\u116e\u11ab","\u1112\u1174\u1100\u1169\u11a8","\u1112\u1174\u1106\u1161\u11bc","\u1112\u1174\u1109\u1162\u11bc","\u1112\u1174\u11ab\u1109\u1162\u11a8","\u1112\u1175\u11b7\u1101\u1165\u11ba"]')},7357:e=>{"use strict";e.exports=JSON.parse('["abacate","abaixo","abalar","abater","abduzir","abelha","aberto","abismo","abotoar","abranger","abreviar","abrigar","abrupto","absinto","absoluto","absurdo","abutre","acabado","acalmar","acampar","acanhar","acaso","aceitar","acelerar","acenar","acervo","acessar","acetona","achatar","acidez","acima","acionado","acirrar","aclamar","aclive","acolhida","acomodar","acoplar","acordar","acumular","acusador","adaptar","adega","adentro","adepto","adequar","aderente","adesivo","adeus","adiante","aditivo","adjetivo","adjunto","admirar","adorar","adquirir","adubo","adverso","advogado","aeronave","afastar","aferir","afetivo","afinador","afivelar","aflito","afluente","afrontar","agachar","agarrar","agasalho","agenciar","agilizar","agiota","agitado","agora","agradar","agreste","agrupar","aguardar","agulha","ajoelhar","ajudar","ajustar","alameda","alarme","alastrar","alavanca","albergue","albino","alcatra","aldeia","alecrim","alegria","alertar","alface","alfinete","algum","alheio","aliar","alicate","alienar","alinhar","aliviar","almofada","alocar","alpiste","alterar","altitude","alucinar","alugar","aluno","alusivo","alvo","amaciar","amador","amarelo","amassar","ambas","ambiente","ameixa","amenizar","amido","amistoso","amizade","amolador","amontoar","amoroso","amostra","amparar","ampliar","ampola","anagrama","analisar","anarquia","anatomia","andaime","anel","anexo","angular","animar","anjo","anomalia","anotado","ansioso","anterior","anuidade","anunciar","anzol","apagador","apalpar","apanhado","apego","apelido","apertada","apesar","apetite","apito","aplauso","aplicada","apoio","apontar","aposta","aprendiz","aprovar","aquecer","arame","aranha","arara","arcada","ardente","areia","arejar","arenito","aresta","argiloso","argola","arma","arquivo","arraial","arrebate","arriscar","arroba","arrumar","arsenal","arterial","artigo","arvoredo","asfaltar","asilado","aspirar","assador","assinar","assoalho","assunto","astral","atacado","atadura","atalho","atarefar","atear","atender","aterro","ateu","atingir","atirador","ativo","atoleiro","atracar","atrevido","atriz","atual","atum","auditor","aumentar","aura","aurora","autismo","autoria","autuar","avaliar","avante","avaria","avental","avesso","aviador","avisar","avulso","axila","azarar","azedo","azeite","azulejo","babar","babosa","bacalhau","bacharel","bacia","bagagem","baiano","bailar","baioneta","bairro","baixista","bajular","baleia","baliza","balsa","banal","bandeira","banho","banir","banquete","barato","barbado","baronesa","barraca","barulho","baseado","bastante","batata","batedor","batida","batom","batucar","baunilha","beber","beijo","beirada","beisebol","beldade","beleza","belga","beliscar","bendito","bengala","benzer","berimbau","berlinda","berro","besouro","bexiga","bezerro","bico","bicudo","bienal","bifocal","bifurcar","bigorna","bilhete","bimestre","bimotor","biologia","biombo","biosfera","bipolar","birrento","biscoito","bisneto","bispo","bissexto","bitola","bizarro","blindado","bloco","bloquear","boato","bobagem","bocado","bocejo","bochecha","boicotar","bolada","boletim","bolha","bolo","bombeiro","bonde","boneco","bonita","borbulha","borda","boreal","borracha","bovino","boxeador","branco","brasa","braveza","breu","briga","brilho","brincar","broa","brochura","bronzear","broto","bruxo","bucha","budismo","bufar","bule","buraco","busca","busto","buzina","cabana","cabelo","cabide","cabo","cabrito","cacau","cacetada","cachorro","cacique","cadastro","cadeado","cafezal","caiaque","caipira","caixote","cajado","caju","calafrio","calcular","caldeira","calibrar","calmante","calota","camada","cambista","camisa","camomila","campanha","camuflar","canavial","cancelar","caneta","canguru","canhoto","canivete","canoa","cansado","cantar","canudo","capacho","capela","capinar","capotar","capricho","captador","capuz","caracol","carbono","cardeal","careca","carimbar","carneiro","carpete","carreira","cartaz","carvalho","casaco","casca","casebre","castelo","casulo","catarata","cativar","caule","causador","cautelar","cavalo","caverna","cebola","cedilha","cegonha","celebrar","celular","cenoura","censo","centeio","cercar","cerrado","certeiro","cerveja","cetim","cevada","chacota","chaleira","chamado","chapada","charme","chatice","chave","chefe","chegada","cheiro","cheque","chicote","chifre","chinelo","chocalho","chover","chumbo","chutar","chuva","cicatriz","ciclone","cidade","cidreira","ciente","cigana","cimento","cinto","cinza","ciranda","circuito","cirurgia","citar","clareza","clero","clicar","clone","clube","coado","coagir","cobaia","cobertor","cobrar","cocada","coelho","coentro","coeso","cogumelo","coibir","coifa","coiote","colar","coleira","colher","colidir","colmeia","colono","coluna","comando","combinar","comentar","comitiva","comover","complexo","comum","concha","condor","conectar","confuso","congelar","conhecer","conjugar","consumir","contrato","convite","cooperar","copeiro","copiador","copo","coquetel","coragem","cordial","corneta","coronha","corporal","correio","cortejo","coruja","corvo","cosseno","costela","cotonete","couro","couve","covil","cozinha","cratera","cravo","creche","credor","creme","crer","crespo","criada","criminal","crioulo","crise","criticar","crosta","crua","cruzeiro","cubano","cueca","cuidado","cujo","culatra","culminar","culpar","cultura","cumprir","cunhado","cupido","curativo","curral","cursar","curto","cuspir","custear","cutelo","damasco","datar","debater","debitar","deboche","debulhar","decalque","decimal","declive","decote","decretar","dedal","dedicado","deduzir","defesa","defumar","degelo","degrau","degustar","deitado","deixar","delator","delegado","delinear","delonga","demanda","demitir","demolido","dentista","depenado","depilar","depois","depressa","depurar","deriva","derramar","desafio","desbotar","descanso","desenho","desfiado","desgaste","desigual","deslize","desmamar","desova","despesa","destaque","desviar","detalhar","detentor","detonar","detrito","deusa","dever","devido","devotado","dezena","diagrama","dialeto","didata","difuso","digitar","dilatado","diluente","diminuir","dinastia","dinheiro","diocese","direto","discreta","disfarce","disparo","disquete","dissipar","distante","ditador","diurno","diverso","divisor","divulgar","dizer","dobrador","dolorido","domador","dominado","donativo","donzela","dormente","dorsal","dosagem","dourado","doutor","drenagem","drible","drogaria","duelar","duende","dueto","duplo","duquesa","durante","duvidoso","eclodir","ecoar","ecologia","edificar","edital","educado","efeito","efetivar","ejetar","elaborar","eleger","eleitor","elenco","elevador","eliminar","elogiar","embargo","embolado","embrulho","embutido","emenda","emergir","emissor","empatia","empenho","empinado","empolgar","emprego","empurrar","emulador","encaixe","encenado","enchente","encontro","endeusar","endossar","enfaixar","enfeite","enfim","engajado","engenho","englobar","engomado","engraxar","enguia","enjoar","enlatar","enquanto","enraizar","enrolado","enrugar","ensaio","enseada","ensino","ensopado","entanto","enteado","entidade","entortar","entrada","entulho","envergar","enviado","envolver","enxame","enxerto","enxofre","enxuto","epiderme","equipar","ereto","erguido","errata","erva","ervilha","esbanjar","esbelto","escama","escola","escrita","escuta","esfinge","esfolar","esfregar","esfumado","esgrima","esmalte","espanto","espelho","espiga","esponja","espreita","espumar","esquerda","estaca","esteira","esticar","estofado","estrela","estudo","esvaziar","etanol","etiqueta","euforia","europeu","evacuar","evaporar","evasivo","eventual","evidente","evoluir","exagero","exalar","examinar","exato","exausto","excesso","excitar","exclamar","executar","exemplo","exibir","exigente","exonerar","expandir","expelir","expirar","explanar","exposto","expresso","expulsar","externo","extinto","extrato","fabricar","fabuloso","faceta","facial","fada","fadiga","faixa","falar","falta","familiar","fandango","fanfarra","fantoche","fardado","farelo","farinha","farofa","farpa","fartura","fatia","fator","favorita","faxina","fazenda","fechado","feijoada","feirante","felino","feminino","fenda","feno","fera","feriado","ferrugem","ferver","festejar","fetal","feudal","fiapo","fibrose","ficar","ficheiro","figurado","fileira","filho","filme","filtrar","firmeza","fisgada","fissura","fita","fivela","fixador","fixo","flacidez","flamingo","flanela","flechada","flora","flutuar","fluxo","focal","focinho","fofocar","fogo","foguete","foice","folgado","folheto","forjar","formiga","forno","forte","fosco","fossa","fragata","fralda","frango","frasco","fraterno","freira","frente","fretar","frieza","friso","fritura","fronha","frustrar","fruteira","fugir","fulano","fuligem","fundar","fungo","funil","furador","furioso","futebol","gabarito","gabinete","gado","gaiato","gaiola","gaivota","galega","galho","galinha","galocha","ganhar","garagem","garfo","gargalo","garimpo","garoupa","garrafa","gasoduto","gasto","gata","gatilho","gaveta","gazela","gelado","geleia","gelo","gemada","gemer","gemido","generoso","gengiva","genial","genoma","genro","geologia","gerador","germinar","gesso","gestor","ginasta","gincana","gingado","girafa","girino","glacial","glicose","global","glorioso","goela","goiaba","golfe","golpear","gordura","gorjeta","gorro","gostoso","goteira","governar","gracejo","gradual","grafite","gralha","grampo","granada","gratuito","graveto","graxa","grego","grelhar","greve","grilo","grisalho","gritaria","grosso","grotesco","grudado","grunhido","gruta","guache","guarani","guaxinim","guerrear","guiar","guincho","guisado","gula","guloso","guru","habitar","harmonia","haste","haver","hectare","herdar","heresia","hesitar","hiato","hibernar","hidratar","hiena","hino","hipismo","hipnose","hipoteca","hoje","holofote","homem","honesto","honrado","hormonal","hospedar","humorado","iate","ideia","idoso","ignorado","igreja","iguana","ileso","ilha","iludido","iluminar","ilustrar","imagem","imediato","imenso","imersivo","iminente","imitador","imortal","impacto","impedir","implante","impor","imprensa","impune","imunizar","inalador","inapto","inativo","incenso","inchar","incidir","incluir","incolor","indeciso","indireto","indutor","ineficaz","inerente","infantil","infestar","infinito","inflamar","informal","infrator","ingerir","inibido","inicial","inimigo","injetar","inocente","inodoro","inovador","inox","inquieto","inscrito","inseto","insistir","inspetor","instalar","insulto","intacto","integral","intimar","intocado","intriga","invasor","inverno","invicto","invocar","iogurte","iraniano","ironizar","irreal","irritado","isca","isento","isolado","isqueiro","italiano","janeiro","jangada","janta","jararaca","jardim","jarro","jasmim","jato","javali","jazida","jejum","joaninha","joelhada","jogador","joia","jornal","jorrar","jovem","juba","judeu","judoca","juiz","julgador","julho","jurado","jurista","juro","justa","labareda","laboral","lacre","lactante","ladrilho","lagarta","lagoa","laje","lamber","lamentar","laminar","lampejo","lanche","lapidar","lapso","laranja","lareira","largura","lasanha","lastro","lateral","latido","lavanda","lavoura","lavrador","laxante","lazer","lealdade","lebre","legado","legendar","legista","leigo","leiloar","leitura","lembrete","leme","lenhador","lentilha","leoa","lesma","leste","letivo","letreiro","levar","leveza","levitar","liberal","libido","liderar","ligar","ligeiro","limitar","limoeiro","limpador","linda","linear","linhagem","liquidez","listagem","lisura","litoral","livro","lixa","lixeira","locador","locutor","lojista","lombo","lona","longe","lontra","lorde","lotado","loteria","loucura","lousa","louvar","luar","lucidez","lucro","luneta","lustre","lutador","luva","macaco","macete","machado","macio","madeira","madrinha","magnata","magreza","maior","mais","malandro","malha","malote","maluco","mamilo","mamoeiro","mamute","manada","mancha","mandato","manequim","manhoso","manivela","manobrar","mansa","manter","manusear","mapeado","maquinar","marcador","maresia","marfim","margem","marinho","marmita","maroto","marquise","marreco","martelo","marujo","mascote","masmorra","massagem","mastigar","matagal","materno","matinal","matutar","maxilar","medalha","medida","medusa","megafone","meiga","melancia","melhor","membro","memorial","menino","menos","mensagem","mental","merecer","mergulho","mesada","mesclar","mesmo","mesquita","mestre","metade","meteoro","metragem","mexer","mexicano","micro","migalha","migrar","milagre","milenar","milhar","mimado","minerar","minhoca","ministro","minoria","miolo","mirante","mirtilo","misturar","mocidade","moderno","modular","moeda","moer","moinho","moita","moldura","moleza","molho","molinete","molusco","montanha","moqueca","morango","morcego","mordomo","morena","mosaico","mosquete","mostarda","motel","motim","moto","motriz","muda","muito","mulata","mulher","multar","mundial","munido","muralha","murcho","muscular","museu","musical","nacional","nadador","naja","namoro","narina","narrado","nascer","nativa","natureza","navalha","navegar","navio","neblina","nebuloso","negativa","negociar","negrito","nervoso","neta","neural","nevasca","nevoeiro","ninar","ninho","nitidez","nivelar","nobreza","noite","noiva","nomear","nominal","nordeste","nortear","notar","noticiar","noturno","novelo","novilho","novo","nublado","nudez","numeral","nupcial","nutrir","nuvem","obcecado","obedecer","objetivo","obrigado","obscuro","obstetra","obter","obturar","ocidente","ocioso","ocorrer","oculista","ocupado","ofegante","ofensiva","oferenda","oficina","ofuscado","ogiva","olaria","oleoso","olhar","oliveira","ombro","omelete","omisso","omitir","ondulado","oneroso","ontem","opcional","operador","oponente","oportuno","oposto","orar","orbitar","ordem","ordinal","orfanato","orgasmo","orgulho","oriental","origem","oriundo","orla","ortodoxo","orvalho","oscilar","ossada","osso","ostentar","otimismo","ousadia","outono","outubro","ouvido","ovelha","ovular","oxidar","oxigenar","pacato","paciente","pacote","pactuar","padaria","padrinho","pagar","pagode","painel","pairar","paisagem","palavra","palestra","palheta","palito","palmada","palpitar","pancada","panela","panfleto","panqueca","pantanal","papagaio","papelada","papiro","parafina","parcial","pardal","parede","partida","pasmo","passado","pastel","patamar","patente","patinar","patrono","paulada","pausar","peculiar","pedalar","pedestre","pediatra","pedra","pegada","peitoral","peixe","pele","pelicano","penca","pendurar","peneira","penhasco","pensador","pente","perceber","perfeito","pergunta","perito","permitir","perna","perplexo","persiana","pertence","peruca","pescado","pesquisa","pessoa","petiscar","piada","picado","piedade","pigmento","pilastra","pilhado","pilotar","pimenta","pincel","pinguim","pinha","pinote","pintar","pioneiro","pipoca","piquete","piranha","pires","pirueta","piscar","pistola","pitanga","pivete","planta","plaqueta","platina","plebeu","plumagem","pluvial","pneu","poda","poeira","poetisa","polegada","policiar","poluente","polvilho","pomar","pomba","ponderar","pontaria","populoso","porta","possuir","postal","pote","poupar","pouso","povoar","praia","prancha","prato","praxe","prece","predador","prefeito","premiar","prensar","preparar","presilha","pretexto","prevenir","prezar","primata","princesa","prisma","privado","processo","produto","profeta","proibido","projeto","prometer","propagar","prosa","protetor","provador","publicar","pudim","pular","pulmonar","pulseira","punhal","punir","pupilo","pureza","puxador","quadra","quantia","quarto","quase","quebrar","queda","queijo","quente","querido","quimono","quina","quiosque","rabanada","rabisco","rachar","racionar","radial","raiar","rainha","raio","raiva","rajada","ralado","ramal","ranger","ranhura","rapadura","rapel","rapidez","raposa","raquete","raridade","rasante","rascunho","rasgar","raspador","rasteira","rasurar","ratazana","ratoeira","realeza","reanimar","reaver","rebaixar","rebelde","rebolar","recado","recente","recheio","recibo","recordar","recrutar","recuar","rede","redimir","redonda","reduzida","reenvio","refinar","refletir","refogar","refresco","refugiar","regalia","regime","regra","reinado","reitor","rejeitar","relativo","remador","remendo","remorso","renovado","reparo","repelir","repleto","repolho","represa","repudiar","requerer","resenha","resfriar","resgatar","residir","resolver","respeito","ressaca","restante","resumir","retalho","reter","retirar","retomada","retratar","revelar","revisor","revolta","riacho","rica","rigidez","rigoroso","rimar","ringue","risada","risco","risonho","robalo","rochedo","rodada","rodeio","rodovia","roedor","roleta","romano","roncar","rosado","roseira","rosto","rota","roteiro","rotina","rotular","rouco","roupa","roxo","rubro","rugido","rugoso","ruivo","rumo","rupestre","russo","sabor","saciar","sacola","sacudir","sadio","safira","saga","sagrada","saibro","salada","saleiro","salgado","saliva","salpicar","salsicha","saltar","salvador","sambar","samurai","sanar","sanfona","sangue","sanidade","sapato","sarda","sargento","sarjeta","saturar","saudade","saxofone","sazonal","secar","secular","seda","sedento","sediado","sedoso","sedutor","segmento","segredo","segundo","seiva","seleto","selvagem","semanal","semente","senador","senhor","sensual","sentado","separado","sereia","seringa","serra","servo","setembro","setor","sigilo","silhueta","silicone","simetria","simpatia","simular","sinal","sincero","singular","sinopse","sintonia","sirene","siri","situado","soberano","sobra","socorro","sogro","soja","solda","soletrar","solteiro","sombrio","sonata","sondar","sonegar","sonhador","sono","soprano","soquete","sorrir","sorteio","sossego","sotaque","soterrar","sovado","sozinho","suavizar","subida","submerso","subsolo","subtrair","sucata","sucesso","suco","sudeste","sufixo","sugador","sugerir","sujeito","sulfato","sumir","suor","superior","suplicar","suposto","suprimir","surdina","surfista","surpresa","surreal","surtir","suspiro","sustento","tabela","tablete","tabuada","tacho","tagarela","talher","talo","talvez","tamanho","tamborim","tampa","tangente","tanto","tapar","tapioca","tardio","tarefa","tarja","tarraxa","tatuagem","taurino","taxativo","taxista","teatral","tecer","tecido","teclado","tedioso","teia","teimar","telefone","telhado","tempero","tenente","tensor","tentar","termal","terno","terreno","tese","tesoura","testado","teto","textura","texugo","tiara","tigela","tijolo","timbrar","timidez","tingido","tinteiro","tiragem","titular","toalha","tocha","tolerar","tolice","tomada","tomilho","tonel","tontura","topete","tora","torcido","torneio","torque","torrada","torto","tostar","touca","toupeira","toxina","trabalho","tracejar","tradutor","trafegar","trajeto","trama","trancar","trapo","traseiro","tratador","travar","treino","tremer","trepidar","trevo","triagem","tribo","triciclo","tridente","trilogia","trindade","triplo","triturar","triunfal","trocar","trombeta","trova","trunfo","truque","tubular","tucano","tudo","tulipa","tupi","turbo","turma","turquesa","tutelar","tutorial","uivar","umbigo","unha","unidade","uniforme","urologia","urso","urtiga","urubu","usado","usina","usufruir","vacina","vadiar","vagaroso","vaidoso","vala","valente","validade","valores","vantagem","vaqueiro","varanda","vareta","varrer","vascular","vasilha","vassoura","vazar","vazio","veado","vedar","vegetar","veicular","veleiro","velhice","veludo","vencedor","vendaval","venerar","ventre","verbal","verdade","vereador","vergonha","vermelho","verniz","versar","vertente","vespa","vestido","vetorial","viaduto","viagem","viajar","viatura","vibrador","videira","vidraria","viela","viga","vigente","vigiar","vigorar","vilarejo","vinco","vinheta","vinil","violeta","virada","virtude","visitar","visto","vitral","viveiro","vizinho","voador","voar","vogal","volante","voleibol","voltagem","volumoso","vontade","vulto","vuvuzela","xadrez","xarope","xeque","xeretar","xerife","xingar","zangado","zarpar","zebu","zelador","zombar","zoologia","zumbido"]')},5376:e=>{"use strict";e.exports=JSON.parse('["a\u0301baco","abdomen","abeja","abierto","abogado","abono","aborto","abrazo","abrir","abuelo","abuso","acabar","academia","acceso","accio\u0301n","aceite","acelga","acento","aceptar","a\u0301cido","aclarar","acne\u0301","acoger","acoso","activo","acto","actriz","actuar","acudir","acuerdo","acusar","adicto","admitir","adoptar","adorno","aduana","adulto","ae\u0301reo","afectar","aficio\u0301n","afinar","afirmar","a\u0301gil","agitar","agoni\u0301a","agosto","agotar","agregar","agrio","agua","agudo","a\u0301guila","aguja","ahogo","ahorro","aire","aislar","ajedrez","ajeno","ajuste","alacra\u0301n","alambre","alarma","alba","a\u0301lbum","alcalde","aldea","alegre","alejar","alerta","aleta","alfiler","alga","algodo\u0301n","aliado","aliento","alivio","alma","almeja","almi\u0301bar","altar","alteza","altivo","alto","altura","alumno","alzar","amable","amante","amapola","amargo","amasar","a\u0301mbar","a\u0301mbito","ameno","amigo","amistad","amor","amparo","amplio","ancho","anciano","ancla","andar","ande\u0301n","anemia","a\u0301ngulo","anillo","a\u0301nimo","ani\u0301s","anotar","antena","antiguo","antojo","anual","anular","anuncio","an\u0303adir","an\u0303ejo","an\u0303o","apagar","aparato","apetito","apio","aplicar","apodo","aporte","apoyo","aprender","aprobar","apuesta","apuro","arado","aran\u0303a","arar","a\u0301rbitro","a\u0301rbol","arbusto","archivo","arco","arder","ardilla","arduo","a\u0301rea","a\u0301rido","aries","armoni\u0301a","arne\u0301s","aroma","arpa","arpo\u0301n","arreglo","arroz","arruga","arte","artista","asa","asado","asalto","ascenso","asegurar","aseo","asesor","asiento","asilo","asistir","asno","asombro","a\u0301spero","astilla","astro","astuto","asumir","asunto","atajo","ataque","atar","atento","ateo","a\u0301tico","atleta","a\u0301tomo","atraer","atroz","atu\u0301n","audaz","audio","auge","aula","aumento","ausente","autor","aval","avance","avaro","ave","avellana","avena","avestruz","avio\u0301n","aviso","ayer","ayuda","ayuno","azafra\u0301n","azar","azote","azu\u0301car","azufre","azul","baba","babor","bache","bahi\u0301a","baile","bajar","balanza","balco\u0301n","balde","bambu\u0301","banco","banda","ban\u0303o","barba","barco","barniz","barro","ba\u0301scula","basto\u0301n","basura","batalla","bateri\u0301a","batir","batuta","bau\u0301l","bazar","bebe\u0301","bebida","bello","besar","beso","bestia","bicho","bien","bingo","blanco","bloque","blusa","boa","bobina","bobo","boca","bocina","boda","bodega","boina","bola","bolero","bolsa","bomba","bondad","bonito","bono","bonsa\u0301i","borde","borrar","bosque","bote","boti\u0301n","bo\u0301veda","bozal","bravo","brazo","brecha","breve","brillo","brinco","brisa","broca","broma","bronce","brote","bruja","brusco","bruto","buceo","bucle","bueno","buey","bufanda","bufo\u0301n","bu\u0301ho","buitre","bulto","burbuja","burla","burro","buscar","butaca","buzo\u0301n","caballo","cabeza","cabina","cabra","cacao","cada\u0301ver","cadena","caer","cafe\u0301","cai\u0301da","caima\u0301n","caja","cajo\u0301n","cal","calamar","calcio","caldo","calidad","calle","calma","calor","calvo","cama","cambio","camello","camino","campo","ca\u0301ncer","candil","canela","canguro","canica","canto","can\u0303a","can\u0303o\u0301n","caoba","caos","capaz","capita\u0301n","capote","captar","capucha","cara","carbo\u0301n","ca\u0301rcel","careta","carga","carin\u0303o","carne","carpeta","carro","carta","casa","casco","casero","caspa","castor","catorce","catre","caudal","causa","cazo","cebolla","ceder","cedro","celda","ce\u0301lebre","celoso","ce\u0301lula","cemento","ceniza","centro","cerca","cerdo","cereza","cero","cerrar","certeza","ce\u0301sped","cetro","chacal","chaleco","champu\u0301","chancla","chapa","charla","chico","chiste","chivo","choque","choza","chuleta","chupar","ciclo\u0301n","ciego","cielo","cien","cierto","cifra","cigarro","cima","cinco","cine","cinta","cipre\u0301s","circo","ciruela","cisne","cita","ciudad","clamor","clan","claro","clase","clave","cliente","clima","cli\u0301nica","cobre","coccio\u0301n","cochino","cocina","coco","co\u0301digo","codo","cofre","coger","cohete","coji\u0301n","cojo","cola","colcha","colegio","colgar","colina","collar","colmo","columna","combate","comer","comida","co\u0301modo","compra","conde","conejo","conga","conocer","consejo","contar","copa","copia","corazo\u0301n","corbata","corcho","cordo\u0301n","corona","correr","coser","cosmos","costa","cra\u0301neo","cra\u0301ter","crear","crecer","crei\u0301do","crema","cri\u0301a","crimen","cripta","crisis","cromo","cro\u0301nica","croqueta","crudo","cruz","cuadro","cuarto","cuatro","cubo","cubrir","cuchara","cuello","cuento","cuerda","cuesta","cueva","cuidar","culebra","culpa","culto","cumbre","cumplir","cuna","cuneta","cuota","cupo\u0301n","cu\u0301pula","curar","curioso","curso","curva","cutis","dama","danza","dar","dardo","da\u0301til","deber","de\u0301bil","de\u0301cada","decir","dedo","defensa","definir","dejar","delfi\u0301n","delgado","delito","demora","denso","dental","deporte","derecho","derrota","desayuno","deseo","desfile","desnudo","destino","desvi\u0301o","detalle","detener","deuda","di\u0301a","diablo","diadema","diamante","diana","diario","dibujo","dictar","diente","dieta","diez","difi\u0301cil","digno","dilema","diluir","dinero","directo","dirigir","disco","disen\u0303o","disfraz","diva","divino","doble","doce","dolor","domingo","don","donar","dorado","dormir","dorso","dos","dosis","drago\u0301n","droga","ducha","duda","duelo","duen\u0303o","dulce","du\u0301o","duque","durar","dureza","duro","e\u0301bano","ebrio","echar","eco","ecuador","edad","edicio\u0301n","edificio","editor","educar","efecto","eficaz","eje","ejemplo","elefante","elegir","elemento","elevar","elipse","e\u0301lite","elixir","elogio","eludir","embudo","emitir","emocio\u0301n","empate","empen\u0303o","empleo","empresa","enano","encargo","enchufe","enci\u0301a","enemigo","enero","enfado","enfermo","engan\u0303o","enigma","enlace","enorme","enredo","ensayo","ensen\u0303ar","entero","entrar","envase","envi\u0301o","e\u0301poca","equipo","erizo","escala","escena","escolar","escribir","escudo","esencia","esfera","esfuerzo","espada","espejo","espi\u0301a","esposa","espuma","esqui\u0301","estar","este","estilo","estufa","etapa","eterno","e\u0301tica","etnia","evadir","evaluar","evento","evitar","exacto","examen","exceso","excusa","exento","exigir","exilio","existir","e\u0301xito","experto","explicar","exponer","extremo","fa\u0301brica","fa\u0301bula","fachada","fa\u0301cil","factor","faena","faja","falda","fallo","falso","faltar","fama","familia","famoso","farao\u0301n","farmacia","farol","farsa","fase","fatiga","fauna","favor","fax","febrero","fecha","feliz","feo","feria","feroz","fe\u0301rtil","fervor","festi\u0301n","fiable","fianza","fiar","fibra","ficcio\u0301n","ficha","fideo","fiebre","fiel","fiera","fiesta","figura","fijar","fijo","fila","filete","filial","filtro","fin","finca","fingir","finito","firma","flaco","flauta","flecha","flor","flota","fluir","flujo","flu\u0301or","fobia","foca","fogata","fogo\u0301n","folio","folleto","fondo","forma","forro","fortuna","forzar","fosa","foto","fracaso","fra\u0301gil","franja","frase","fraude","frei\u0301r","freno","fresa","fri\u0301o","frito","fruta","fuego","fuente","fuerza","fuga","fumar","funcio\u0301n","funda","furgo\u0301n","furia","fusil","fu\u0301tbol","futuro","gacela","gafas","gaita","gajo","gala","galeri\u0301a","gallo","gamba","ganar","gancho","ganga","ganso","garaje","garza","gasolina","gastar","gato","gavila\u0301n","gemelo","gemir","gen","ge\u0301nero","genio","gente","geranio","gerente","germen","gesto","gigante","gimnasio","girar","giro","glaciar","globo","gloria","gol","golfo","goloso","golpe","goma","gordo","gorila","gorra","gota","goteo","gozar","grada","gra\u0301fico","grano","grasa","gratis","grave","grieta","grillo","gripe","gris","grito","grosor","gru\u0301a","grueso","grumo","grupo","guante","guapo","guardia","guerra","gui\u0301a","guin\u0303o","guion","guiso","guitarra","gusano","gustar","haber","ha\u0301bil","hablar","hacer","hacha","hada","hallar","hamaca","harina","haz","hazan\u0303a","hebilla","hebra","hecho","helado","helio","hembra","herir","hermano","he\u0301roe","hervir","hielo","hierro","hi\u0301gado","higiene","hijo","himno","historia","hocico","hogar","hoguera","hoja","hombre","hongo","honor","honra","hora","hormiga","horno","hostil","hoyo","hueco","huelga","huerta","hueso","huevo","huida","huir","humano","hu\u0301medo","humilde","humo","hundir","huraca\u0301n","hurto","icono","ideal","idioma","i\u0301dolo","iglesia","iglu\u0301","igual","ilegal","ilusio\u0301n","imagen","ima\u0301n","imitar","impar","imperio","imponer","impulso","incapaz","i\u0301ndice","inerte","infiel","informe","ingenio","inicio","inmenso","inmune","innato","insecto","instante","intere\u0301s","i\u0301ntimo","intuir","inu\u0301til","invierno","ira","iris","ironi\u0301a","isla","islote","jabali\u0301","jabo\u0301n","jamo\u0301n","jarabe","jardi\u0301n","jarra","jaula","jazmi\u0301n","jefe","jeringa","jinete","jornada","joroba","joven","joya","juerga","jueves","juez","jugador","jugo","juguete","juicio","junco","jungla","junio","juntar","ju\u0301piter","jurar","justo","juvenil","juzgar","kilo","koala","labio","lacio","lacra","lado","ladro\u0301n","lagarto","la\u0301grima","laguna","laico","lamer","la\u0301mina","la\u0301mpara","lana","lancha","langosta","lanza","la\u0301piz","largo","larva","la\u0301stima","lata","la\u0301tex","latir","laurel","lavar","lazo","leal","leccio\u0301n","leche","lector","leer","legio\u0301n","legumbre","lejano","lengua","lento","len\u0303a","leo\u0301n","leopardo","lesio\u0301n","letal","letra","leve","leyenda","libertad","libro","licor","li\u0301der","lidiar","lienzo","liga","ligero","lima","li\u0301mite","limo\u0301n","limpio","lince","lindo","li\u0301nea","lingote","lino","linterna","li\u0301quido","liso","lista","litera","litio","litro","llaga","llama","llanto","llave","llegar","llenar","llevar","llorar","llover","lluvia","lobo","locio\u0301n","loco","locura","lo\u0301gica","logro","lombriz","lomo","lonja","lote","lucha","lucir","lugar","lujo","luna","lunes","lupa","lustro","luto","luz","maceta","macho","madera","madre","maduro","maestro","mafia","magia","mago","mai\u0301z","maldad","maleta","malla","malo","mama\u0301","mambo","mamut","manco","mando","manejar","manga","maniqui\u0301","manjar","mano","manso","manta","man\u0303ana","mapa","ma\u0301quina","mar","marco","marea","marfil","margen","marido","ma\u0301rmol","marro\u0301n","martes","marzo","masa","ma\u0301scara","masivo","matar","materia","matiz","matriz","ma\u0301ximo","mayor","mazorca","mecha","medalla","medio","me\u0301dula","mejilla","mejor","melena","melo\u0301n","memoria","menor","mensaje","mente","menu\u0301","mercado","merengue","me\u0301rito","mes","meso\u0301n","meta","meter","me\u0301todo","metro","mezcla","miedo","miel","miembro","miga","mil","milagro","militar","millo\u0301n","mimo","mina","minero","mi\u0301nimo","minuto","miope","mirar","misa","miseria","misil","mismo","mitad","mito","mochila","mocio\u0301n","moda","modelo","moho","mojar","molde","moler","molino","momento","momia","monarca","moneda","monja","monto","mon\u0303o","morada","morder","moreno","morir","morro","morsa","mortal","mosca","mostrar","motivo","mover","mo\u0301vil","mozo","mucho","mudar","mueble","muela","muerte","muestra","mugre","mujer","mula","muleta","multa","mundo","mun\u0303eca","mural","muro","mu\u0301sculo","museo","musgo","mu\u0301sica","muslo","na\u0301car","nacio\u0301n","nadar","naipe","naranja","nariz","narrar","nasal","natal","nativo","natural","na\u0301usea","naval","nave","navidad","necio","ne\u0301ctar","negar","negocio","negro","neo\u0301n","nervio","neto","neutro","nevar","nevera","nicho","nido","niebla","nieto","nin\u0303ez","nin\u0303o","ni\u0301tido","nivel","nobleza","noche","no\u0301mina","noria","norma","norte","nota","noticia","novato","novela","novio","nube","nuca","nu\u0301cleo","nudillo","nudo","nuera","nueve","nuez","nulo","nu\u0301mero","nutria","oasis","obeso","obispo","objeto","obra","obrero","observar","obtener","obvio","oca","ocaso","oce\u0301ano","ochenta","ocho","ocio","ocre","octavo","octubre","oculto","ocupar","ocurrir","odiar","odio","odisea","oeste","ofensa","oferta","oficio","ofrecer","ogro","oi\u0301do","oi\u0301r","ojo","ola","oleada","olfato","olivo","olla","olmo","olor","olvido","ombligo","onda","onza","opaco","opcio\u0301n","o\u0301pera","opinar","oponer","optar","o\u0301ptica","opuesto","oracio\u0301n","orador","oral","o\u0301rbita","orca","orden","oreja","o\u0301rgano","orgi\u0301a","orgullo","oriente","origen","orilla","oro","orquesta","oruga","osadi\u0301a","oscuro","osezno","oso","ostra","oton\u0303o","otro","oveja","o\u0301vulo","o\u0301xido","oxi\u0301geno","oyente","ozono","pacto","padre","paella","pa\u0301gina","pago","pai\u0301s","pa\u0301jaro","palabra","palco","paleta","pa\u0301lido","palma","paloma","palpar","pan","panal","pa\u0301nico","pantera","pan\u0303uelo","papa\u0301","papel","papilla","paquete","parar","parcela","pared","parir","paro","pa\u0301rpado","parque","pa\u0301rrafo","parte","pasar","paseo","pasio\u0301n","paso","pasta","pata","patio","patria","pausa","pauta","pavo","payaso","peato\u0301n","pecado","pecera","pecho","pedal","pedir","pegar","peine","pelar","peldan\u0303o","pelea","peligro","pellejo","pelo","peluca","pena","pensar","pen\u0303o\u0301n","peo\u0301n","peor","pepino","pequen\u0303o","pera","percha","perder","pereza","perfil","perico","perla","permiso","perro","persona","pesa","pesca","pe\u0301simo","pestan\u0303a","pe\u0301talo","petro\u0301leo","pez","pezun\u0303a","picar","picho\u0301n","pie","piedra","pierna","pieza","pijama","pilar","piloto","pimienta","pino","pintor","pinza","pin\u0303a","piojo","pipa","pirata","pisar","piscina","piso","pista","pito\u0301n","pizca","placa","plan","plata","playa","plaza","pleito","pleno","plomo","pluma","plural","pobre","poco","poder","podio","poema","poesi\u0301a","poeta","polen","polici\u0301a","pollo","polvo","pomada","pomelo","pomo","pompa","poner","porcio\u0301n","portal","posada","poseer","posible","poste","potencia","potro","pozo","prado","precoz","pregunta","premio","prensa","preso","previo","primo","pri\u0301ncipe","prisio\u0301n","privar","proa","probar","proceso","producto","proeza","profesor","programa","prole","promesa","pronto","propio","pro\u0301ximo","prueba","pu\u0301blico","puchero","pudor","pueblo","puerta","puesto","pulga","pulir","pulmo\u0301n","pulpo","pulso","puma","punto","pun\u0303al","pun\u0303o","pupa","pupila","pure\u0301","quedar","queja","quemar","querer","queso","quieto","qui\u0301mica","quince","quitar","ra\u0301bano","rabia","rabo","racio\u0301n","radical","rai\u0301z","rama","rampa","rancho","rango","rapaz","ra\u0301pido","rapto","rasgo","raspa","rato","rayo","raza","razo\u0301n","reaccio\u0301n","realidad","reban\u0303o","rebote","recaer","receta","rechazo","recoger","recreo","recto","recurso","red","redondo","reducir","reflejo","reforma","refra\u0301n","refugio","regalo","regir","regla","regreso","rehe\u0301n","reino","rei\u0301r","reja","relato","relevo","relieve","relleno","reloj","remar","remedio","remo","rencor","rendir","renta","reparto","repetir","reposo","reptil","res","rescate","resina","respeto","resto","resumen","retiro","retorno","retrato","reunir","reve\u0301s","revista","rey","rezar","rico","riego","rienda","riesgo","rifa","ri\u0301gido","rigor","rinco\u0301n","rin\u0303o\u0301n","ri\u0301o","riqueza","risa","ritmo","rito","rizo","roble","roce","rociar","rodar","rodeo","rodilla","roer","rojizo","rojo","romero","romper","ron","ronco","ronda","ropa","ropero","rosa","rosca","rostro","rotar","rubi\u0301","rubor","rudo","rueda","rugir","ruido","ruina","ruleta","rulo","rumbo","rumor","ruptura","ruta","rutina","sa\u0301bado","saber","sabio","sable","sacar","sagaz","sagrado","sala","saldo","salero","salir","salmo\u0301n","salo\u0301n","salsa","salto","salud","salvar","samba","sancio\u0301n","sandi\u0301a","sanear","sangre","sanidad","sano","santo","sapo","saque","sardina","sarte\u0301n","sastre","sata\u0301n","sauna","saxofo\u0301n","seccio\u0301n","seco","secreto","secta","sed","seguir","seis","sello","selva","semana","semilla","senda","sensor","sen\u0303al","sen\u0303or","separar","sepia","sequi\u0301a","ser","serie","sermo\u0301n","servir","sesenta","sesio\u0301n","seta","setenta","severo","sexo","sexto","sidra","siesta","siete","siglo","signo","si\u0301laba","silbar","silencio","silla","si\u0301mbolo","simio","sirena","sistema","sitio","situar","sobre","socio","sodio","sol","solapa","soldado","soledad","so\u0301lido","soltar","solucio\u0301n","sombra","sondeo","sonido","sonoro","sonrisa","sopa","soplar","soporte","sordo","sorpresa","sorteo","soste\u0301n","so\u0301tano","suave","subir","suceso","sudor","suegra","suelo","suen\u0303o","suerte","sufrir","sujeto","sulta\u0301n","sumar","superar","suplir","suponer","supremo","sur","surco","suren\u0303o","surgir","susto","sutil","tabaco","tabique","tabla","tabu\u0301","taco","tacto","tajo","talar","talco","talento","talla","talo\u0301n","taman\u0303o","tambor","tango","tanque","tapa","tapete","tapia","tapo\u0301n","taquilla","tarde","tarea","tarifa","tarjeta","tarot","tarro","tarta","tatuaje","tauro","taza","tazo\u0301n","teatro","techo","tecla","te\u0301cnica","tejado","tejer","tejido","tela","tele\u0301fono","tema","temor","templo","tenaz","tender","tener","tenis","tenso","teori\u0301a","terapia","terco","te\u0301rmino","ternura","terror","tesis","tesoro","testigo","tetera","texto","tez","tibio","tiburo\u0301n","tiempo","tienda","tierra","tieso","tigre","tijera","tilde","timbre","ti\u0301mido","timo","tinta","ti\u0301o","ti\u0301pico","tipo","tira","tiro\u0301n","tita\u0301n","ti\u0301tere","ti\u0301tulo","tiza","toalla","tobillo","tocar","tocino","todo","toga","toldo","tomar","tono","tonto","topar","tope","toque","to\u0301rax","torero","tormenta","torneo","toro","torpedo","torre","torso","tortuga","tos","tosco","toser","to\u0301xico","trabajo","tractor","traer","tra\u0301fico","trago","traje","tramo","trance","trato","trauma","trazar","tre\u0301bol","tregua","treinta","tren","trepar","tres","tribu","trigo","tripa","triste","triunfo","trofeo","trompa","tronco","tropa","trote","trozo","truco","trueno","trufa","tuberi\u0301a","tubo","tuerto","tumba","tumor","tu\u0301nel","tu\u0301nica","turbina","turismo","turno","tutor","ubicar","u\u0301lcera","umbral","unidad","unir","universo","uno","untar","un\u0303a","urbano","urbe","urgente","urna","usar","usuario","u\u0301til","utopi\u0301a","uva","vaca","vaci\u0301o","vacuna","vagar","vago","vaina","vajilla","vale","va\u0301lido","valle","valor","va\u0301lvula","vampiro","vara","variar","varo\u0301n","vaso","vecino","vector","vehi\u0301culo","veinte","vejez","vela","velero","veloz","vena","vencer","venda","veneno","vengar","venir","venta","venus","ver","verano","verbo","verde","vereda","verja","verso","verter","vi\u0301a","viaje","vibrar","vicio","vi\u0301ctima","vida","vi\u0301deo","vidrio","viejo","viernes","vigor","vil","villa","vinagre","vino","vin\u0303edo","violi\u0301n","viral","virgo","virtud","visor","vi\u0301spera","vista","vitamina","viudo","vivaz","vivero","vivir","vivo","volca\u0301n","volumen","volver","voraz","votar","voto","voz","vuelo","vulgar","yacer","yate","yegua","yema","yerno","yeso","yodo","yoga","yogur","zafiro","zanja","zapato","zarza","zona","zorro","zumo","zurdo"]')},1636:e=>{"use strict";e.exports={rE:"6.5.4"}}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var o=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}r.m=e,r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},(()=>{var e,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;r.t=function(n,i){if(1&i&&(n=this(n)),8&i)return n;if("object"===typeof n&&n){if(4&i&&n.__esModule)return n;if(16&i&&"function"===typeof n.then)return n}var o=Object.create(null);r.r(o);var a={};e=e||[null,t({}),t([]),t(t)];for(var s=2&i&&n;"object"==typeof s&&!~e.indexOf(s);s=t(s))Object.getOwnPropertyNames(s).forEach((e=>a[e]=()=>n[e]));return a.default=()=>n,r.d(o,a),o}})(),r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,n)=>(r.f[n](e,t),t)),[])),r.u=e=>"static/js/"+{42:"reactPlayerTwitch",173:"reactPlayerVimeo",328:"reactPlayerDailyMotion",340:"reactPlayerWistia",353:"reactPlayerPreview",392:"reactPlayerVidyard",446:"reactPlayerYouTube",458:"reactPlayerFilePlayer",463:"reactPlayerKaltura",570:"reactPlayerMixcloud",627:"reactPlayerStreamable",723:"reactPlayerMux",887:"reactPlayerFacebook",979:"reactPlayerSoundCloud"}[e]+"."+{42:"20a64de5",173:"e403c288",328:"141330e7",340:"e46ee45f",353:"ae77c75e",392:"c13e88aa",446:"de047225",458:"82c993af",463:"1c0fb203",570:"f6bc528b",627:"962271bf",723:"244822da",887:"5311619d",979:"fca705a3"}[e]+".chunk.js",r.miniCssF=e=>{},r.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={},t="umami:";r.l=(n,i,o,a)=>{if(e[n])e[n].push(i);else{var s,c;if(void 0!==o)for(var l=document.getElementsByTagName("script"),u=0;u{s.onerror=s.onload=null,clearTimeout(f);var i=e[n];if(delete e[n],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(r))),t)return t(r)},f=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}}})(),r.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="./",(()=>{var e={792:0};r.f.j=(t,n)=>{var i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{var o=new Promise(((r,n)=>i=e[t]=[r,n]));n.push(i[2]=o);var a=r.p+r.u(t),s=new Error;r.l(a,(n=>{if(r.o(e,t)&&(0!==(i=e[t])&&(e[t]=void 0),i)){var o=n&&("load"===n.type?"missing":n.type),a=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,i[1](s)}}),"chunk-"+t,t)}};var t=(t,n)=>{var i,o,[a,s,c]=n,l=0;if(a.some((t=>0!==e[t]))){for(i in s)r.o(s,i)&&(r.m[i]=s[i]);if(c)c(r)}for(t&&t(n);l{"use strict";var e={};r.r(e),r.d(e,{hasBrowserEnv:()=>xC,hasStandardBrowserEnv:()=>_C,hasStandardBrowserWebWorkerEnv:()=>SC});var t={};r.r(t),r.d(t,{hasBrowserEnv:()=>AD,hasStandardBrowserEnv:()=>PD,hasStandardBrowserWebWorkerEnv:()=>OD});var n={};r.r(n),r.d(n,{Decoder:()=>v9,Encoder:()=>m9,PacketType:()=>p9,protocol:()=>f9});var i=r(4082),o=r.t(i,2),a=r(8236);const s=(0,i.createContext)(null),c={didCatch:!1,error:null};class l extends i.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=c}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(null!==e){for(var t,r,n=arguments.length,i=new Array(n),o=0;o0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e.length!==t.length||e.some(((e,r)=>!Object.is(e,t[r])))}(e.resetKeys,n)&&(null===(i=(o=this.props).onReset)||void 0===i||i.call(o,{next:n,prev:e.resetKeys,reason:"keys"}),this.setState(c))}render(){const{children:e,fallbackRender:t,FallbackComponent:r,fallback:n}=this.props,{didCatch:o,error:a}=this.state;let c=e;if(o){const e={error:a,resetErrorBoundary:this.resetErrorBoundary};if("function"===typeof t)c=t(e);else if(r)c=(0,i.createElement)(r,e);else{if(null!==n&&!(0,i.isValidElement)(n))throw a;c=n}}return(0,i.createElement)(s.Provider,{value:{didCatch:o,error:a,resetErrorBoundary:this.resetErrorBoundary}},c)}}function u(e){return u="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function d(e,t){for(var r=0;re.filter(Boolean).join(" ");function b(e){const t=typeof e;return null!=e&&("object"===t||"function"===t)&&!Array.isArray(e)}var w=e=>{const{condition:t,message:r}=e};function x(e,...t){return _(e)?e(...t):e}var _=e=>"function"===typeof e,k=e=>e?"":void 0,S=e=>!!e||void 0;function E(...e){return function(t){e.some((e=>(null==e||e(t),null==t?void 0:t.defaultPrevented)))}}function A(...e){return function(t){e.forEach((e=>{null==e||e(t)}))}}var P=r(2844),O=e=>"string"===typeof e?e.replace(/!(important)?$/,"").trim():e,T=(e,t)=>r=>{const n=String(t),i=(e=>/!(important)?$/.test(e))(n),o=O(n),a=e?`${e}.${o}`:o;let s=b(r.__cssMap)&&a in r.__cssMap?r.__cssMap[a].varRef:t;return s=O(s),i?`${s} !important`:s};function j(e){const{scale:t,transform:r,compose:n}=e;return(e,i)=>{var o;const a=T(t,e)(i);let s=null!=(o=null==r?void 0:r(a,i))?o:a;return n&&(s=n(s,i)),s}}var C=(...e)=>t=>e.reduce(((e,t)=>t(e)),t);function R(e,t){return r=>{const n={property:r,scale:e};return n.transform=j({scale:e,transform:t}),n}}var I=({rtl:e,ltr:t})=>r=>"rtl"===r.direction?e:t;var M=["rotate(var(--chakra-rotate, 0))","scaleX(var(--chakra-scale-x, 1))","scaleY(var(--chakra-scale-y, 1))","skewX(var(--chakra-skew-x, 0))","skewY(var(--chakra-skew-y, 0))"];var L={"--chakra-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-sepia":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-drop-shadow":"var(--chakra-empty,/*!*/ /*!*/)",filter:["var(--chakra-blur)","var(--chakra-brightness)","var(--chakra-contrast)","var(--chakra-grayscale)","var(--chakra-hue-rotate)","var(--chakra-invert)","var(--chakra-saturate)","var(--chakra-sepia)","var(--chakra-drop-shadow)"].join(" ")},N={backdropFilter:["var(--chakra-backdrop-blur)","var(--chakra-backdrop-brightness)","var(--chakra-backdrop-contrast)","var(--chakra-backdrop-grayscale)","var(--chakra-backdrop-hue-rotate)","var(--chakra-backdrop-invert)","var(--chakra-backdrop-opacity)","var(--chakra-backdrop-saturate)","var(--chakra-backdrop-sepia)"].join(" "),"--chakra-backdrop-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-opacity":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-sepia":"var(--chakra-empty,/*!*/ /*!*/)"};var D={"row-reverse":{space:"--chakra-space-x-reverse",divide:"--chakra-divide-x-reverse"},"column-reverse":{space:"--chakra-space-y-reverse",divide:"--chakra-divide-y-reverse"}},z={"to-t":"to top","to-tr":"to top right","to-r":"to right","to-br":"to bottom right","to-b":"to bottom","to-bl":"to bottom left","to-l":"to left","to-tl":"to top left"},B=new Set(Object.values(z)),U=new Set(["none","-moz-initial","inherit","initial","revert","unset"]),F=e=>e.trim();var $=e=>"string"===typeof e&&e.includes("(")&&e.includes(")");var H=e=>t=>`${e}(${t})`,V={filter:e=>"auto"!==e?e:L,backdropFilter:e=>"auto"!==e?e:N,ring:e=>function(e){return{"--chakra-ring-offset-shadow":"var(--chakra-ring-inset) 0 0 0 var(--chakra-ring-offset-width) var(--chakra-ring-offset-color)","--chakra-ring-shadow":"var(--chakra-ring-inset) 0 0 0 calc(var(--chakra-ring-width) + var(--chakra-ring-offset-width)) var(--chakra-ring-color)","--chakra-ring-width":e,boxShadow:["var(--chakra-ring-offset-shadow)","var(--chakra-ring-shadow)","var(--chakra-shadow, 0 0 #0000)"].join(", ")}}(V.px(e)),bgClip:e=>"text"===e?{color:"transparent",backgroundClip:"text"}:{backgroundClip:e},transform:e=>"auto"===e?["translateX(var(--chakra-translate-x, 0))","translateY(var(--chakra-translate-y, 0))",...M].join(" "):"auto-gpu"===e?["translate3d(var(--chakra-translate-x, 0), var(--chakra-translate-y, 0), 0)",...M].join(" "):e,vh:e=>"$100vh"===e?"var(--chakra-vh)":e,px(e){if(null==e)return e;const{unitless:t}=(e=>{const t=parseFloat(e.toString()),r=e.toString().replace(String(t),"");return{unitless:!r,value:t,unit:r}})(e);return t||"number"===typeof e?`${e}px`:e},fraction:e=>"number"!==typeof e||e>1?e:100*e+"%",float:(e,t)=>"rtl"===t.direction?{left:"right",right:"left"}[e]:e,degree(e){if(function(e){return/^var\(--.+\)$/.test(e)}(e)||null==e)return e;const t="string"===typeof e&&!e.endsWith("deg");return"number"===typeof e||t?`${e}deg`:e},gradient:(e,t)=>function(e,t){if(null==e||U.has(e))return e;if(!$(e)&&!U.has(e))return`url('${e}')`;const r=/(^[a-z-A-Z]+)\((.*)\)/g.exec(e),n=null==r?void 0:r[1],i=null==r?void 0:r[2];if(!n||!i)return e;const o=n.includes("-gradient")?n:`${n}-gradient`,[a,...s]=i.split(",").map(F).filter(Boolean);if(0===(null==s?void 0:s.length))return e;const c=a in z?z[a]:a;return s.unshift(c),`${o}(${s.map((e=>{if(B.has(e))return e;const r=e.indexOf(" "),[n,i]=-1!==r?[e.substr(0,r),e.substr(r+1)]:[e],o=$(i)?i:i&&i.split(" "),a=`colors.${n}`,s=a in t.__cssMap?t.__cssMap[a].varRef:n;return o?[s,...Array.isArray(o)?o:[o]].join(" "):s})).join(", ")})`}(e,null!=t?t:{}),blur:H("blur"),opacity:H("opacity"),brightness:H("brightness"),contrast:H("contrast"),dropShadow:H("drop-shadow"),grayscale:H("grayscale"),hueRotate:e=>H("hue-rotate")(V.degree(e)),invert:H("invert"),saturate:H("saturate"),sepia:H("sepia"),bgImage(e){if(null==e)return e;return $(e)||U.has(e)?e:`url(${e})`},outline(e){const t="0"===String(e)||"none"===String(e);return null!==e&&t?{outline:"2px solid transparent",outlineOffset:"2px"}:{outline:e}},flexDirection(e){var t;const{space:r,divide:n}=null!=(t=D[e])?t:{},i={flexDirection:e};return r&&(i[r]=1),n&&(i[n]=1),i}},q={borderWidths:R("borderWidths"),borderStyles:R("borderStyles"),colors:R("colors"),borders:R("borders"),gradients:R("gradients",V.gradient),radii:R("radii",V.px),space:R("space",C(V.vh,V.px)),spaceT:R("space",C(V.vh,V.px)),degreeT:e=>({property:e,transform:V.degree}),prop:(e,t,r)=>({property:e,scale:t,...t&&{transform:j({scale:t,transform:r})}}),propT:(e,t)=>({property:e,transform:t}),sizes:R("sizes",C(V.vh,V.px)),sizesT:R("sizes",C(V.vh,V.fraction)),shadows:R("shadows"),logical:function(e){const{property:t,scale:r,transform:n}=e;return{scale:r,property:I(t),transform:r?j({scale:r,compose:n}):n}},blur:R("blur",V.blur)},K={background:q.colors("background"),backgroundColor:q.colors("backgroundColor"),backgroundImage:q.gradients("backgroundImage"),backgroundSize:!0,backgroundPosition:!0,backgroundRepeat:!0,backgroundAttachment:!0,backgroundClip:{transform:V.bgClip},bgSize:q.prop("backgroundSize"),bgPosition:q.prop("backgroundPosition"),bg:q.colors("background"),bgColor:q.colors("backgroundColor"),bgPos:q.prop("backgroundPosition"),bgRepeat:q.prop("backgroundRepeat"),bgAttachment:q.prop("backgroundAttachment"),bgGradient:q.gradients("backgroundImage"),bgClip:{transform:V.bgClip}};Object.assign(K,{bgImage:K.backgroundImage,bgImg:K.backgroundImage});var W={border:q.borders("border"),borderWidth:q.borderWidths("borderWidth"),borderStyle:q.borderStyles("borderStyle"),borderColor:q.colors("borderColor"),borderRadius:q.radii("borderRadius"),borderTop:q.borders("borderTop"),borderBlockStart:q.borders("borderBlockStart"),borderTopLeftRadius:q.radii("borderTopLeftRadius"),borderStartStartRadius:q.logical({scale:"radii",property:{ltr:"borderTopLeftRadius",rtl:"borderTopRightRadius"}}),borderEndStartRadius:q.logical({scale:"radii",property:{ltr:"borderBottomLeftRadius",rtl:"borderBottomRightRadius"}}),borderTopRightRadius:q.radii("borderTopRightRadius"),borderStartEndRadius:q.logical({scale:"radii",property:{ltr:"borderTopRightRadius",rtl:"borderTopLeftRadius"}}),borderEndEndRadius:q.logical({scale:"radii",property:{ltr:"borderBottomRightRadius",rtl:"borderBottomLeftRadius"}}),borderRight:q.borders("borderRight"),borderInlineEnd:q.borders("borderInlineEnd"),borderBottom:q.borders("borderBottom"),borderBlockEnd:q.borders("borderBlockEnd"),borderBottomLeftRadius:q.radii("borderBottomLeftRadius"),borderBottomRightRadius:q.radii("borderBottomRightRadius"),borderLeft:q.borders("borderLeft"),borderInlineStart:{property:"borderInlineStart",scale:"borders"},borderInlineStartRadius:q.logical({scale:"radii",property:{ltr:["borderTopLeftRadius","borderBottomLeftRadius"],rtl:["borderTopRightRadius","borderBottomRightRadius"]}}),borderInlineEndRadius:q.logical({scale:"radii",property:{ltr:["borderTopRightRadius","borderBottomRightRadius"],rtl:["borderTopLeftRadius","borderBottomLeftRadius"]}}),borderX:q.borders(["borderLeft","borderRight"]),borderInline:q.borders("borderInline"),borderY:q.borders(["borderTop","borderBottom"]),borderBlock:q.borders("borderBlock"),borderTopWidth:q.borderWidths("borderTopWidth"),borderBlockStartWidth:q.borderWidths("borderBlockStartWidth"),borderTopColor:q.colors("borderTopColor"),borderBlockStartColor:q.colors("borderBlockStartColor"),borderTopStyle:q.borderStyles("borderTopStyle"),borderBlockStartStyle:q.borderStyles("borderBlockStartStyle"),borderBottomWidth:q.borderWidths("borderBottomWidth"),borderBlockEndWidth:q.borderWidths("borderBlockEndWidth"),borderBottomColor:q.colors("borderBottomColor"),borderBlockEndColor:q.colors("borderBlockEndColor"),borderBottomStyle:q.borderStyles("borderBottomStyle"),borderBlockEndStyle:q.borderStyles("borderBlockEndStyle"),borderLeftWidth:q.borderWidths("borderLeftWidth"),borderInlineStartWidth:q.borderWidths("borderInlineStartWidth"),borderLeftColor:q.colors("borderLeftColor"),borderInlineStartColor:q.colors("borderInlineStartColor"),borderLeftStyle:q.borderStyles("borderLeftStyle"),borderInlineStartStyle:q.borderStyles("borderInlineStartStyle"),borderRightWidth:q.borderWidths("borderRightWidth"),borderInlineEndWidth:q.borderWidths("borderInlineEndWidth"),borderRightColor:q.colors("borderRightColor"),borderInlineEndColor:q.colors("borderInlineEndColor"),borderRightStyle:q.borderStyles("borderRightStyle"),borderInlineEndStyle:q.borderStyles("borderInlineEndStyle"),borderTopRadius:q.radii(["borderTopLeftRadius","borderTopRightRadius"]),borderBottomRadius:q.radii(["borderBottomLeftRadius","borderBottomRightRadius"]),borderLeftRadius:q.radii(["borderTopLeftRadius","borderBottomLeftRadius"]),borderRightRadius:q.radii(["borderTopRightRadius","borderBottomRightRadius"])};Object.assign(W,{rounded:W.borderRadius,roundedTop:W.borderTopRadius,roundedTopLeft:W.borderTopLeftRadius,roundedTopRight:W.borderTopRightRadius,roundedTopStart:W.borderStartStartRadius,roundedTopEnd:W.borderStartEndRadius,roundedBottom:W.borderBottomRadius,roundedBottomLeft:W.borderBottomLeftRadius,roundedBottomRight:W.borderBottomRightRadius,roundedBottomStart:W.borderEndStartRadius,roundedBottomEnd:W.borderEndEndRadius,roundedLeft:W.borderLeftRadius,roundedRight:W.borderRightRadius,roundedStart:W.borderInlineStartRadius,roundedEnd:W.borderInlineEndRadius,borderStart:W.borderInlineStart,borderEnd:W.borderInlineEnd,borderTopStartRadius:W.borderStartStartRadius,borderTopEndRadius:W.borderStartEndRadius,borderBottomStartRadius:W.borderEndStartRadius,borderBottomEndRadius:W.borderEndEndRadius,borderStartRadius:W.borderInlineStartRadius,borderEndRadius:W.borderInlineEndRadius,borderStartWidth:W.borderInlineStartWidth,borderEndWidth:W.borderInlineEndWidth,borderStartColor:W.borderInlineStartColor,borderEndColor:W.borderInlineEndColor,borderStartStyle:W.borderInlineStartStyle,borderEndStyle:W.borderInlineEndStyle});var G={color:q.colors("color"),textColor:q.colors("color"),fill:q.colors("fill"),stroke:q.colors("stroke")},Z={boxShadow:q.shadows("boxShadow"),mixBlendMode:!0,blendMode:q.prop("mixBlendMode"),backgroundBlendMode:!0,bgBlendMode:q.prop("backgroundBlendMode"),opacity:!0};Object.assign(Z,{shadow:Z.boxShadow});var Y={filter:{transform:V.filter},blur:q.blur("--chakra-blur"),brightness:q.propT("--chakra-brightness",V.brightness),contrast:q.propT("--chakra-contrast",V.contrast),hueRotate:q.propT("--chakra-hue-rotate",V.hueRotate),invert:q.propT("--chakra-invert",V.invert),saturate:q.propT("--chakra-saturate",V.saturate),dropShadow:q.propT("--chakra-drop-shadow",V.dropShadow),backdropFilter:{transform:V.backdropFilter},backdropBlur:q.blur("--chakra-backdrop-blur"),backdropBrightness:q.propT("--chakra-backdrop-brightness",V.brightness),backdropContrast:q.propT("--chakra-backdrop-contrast",V.contrast),backdropHueRotate:q.propT("--chakra-backdrop-hue-rotate",V.hueRotate),backdropInvert:q.propT("--chakra-backdrop-invert",V.invert),backdropSaturate:q.propT("--chakra-backdrop-saturate",V.saturate)},X={alignItems:!0,alignContent:!0,justifyItems:!0,justifyContent:!0,flexWrap:!0,flexDirection:{transform:V.flexDirection},flex:!0,flexFlow:!0,flexGrow:!0,flexShrink:!0,flexBasis:q.sizes("flexBasis"),justifySelf:!0,alignSelf:!0,order:!0,placeItems:!0,placeContent:!0,placeSelf:!0,gap:q.space("gap"),rowGap:q.space("rowGap"),columnGap:q.space("columnGap")};Object.assign(X,{flexDir:X.flexDirection});var J={gridGap:q.space("gridGap"),gridColumnGap:q.space("gridColumnGap"),gridRowGap:q.space("gridRowGap"),gridColumn:!0,gridRow:!0,gridAutoFlow:!0,gridAutoColumns:!0,gridColumnStart:!0,gridColumnEnd:!0,gridRowStart:!0,gridRowEnd:!0,gridAutoRows:!0,gridTemplate:!0,gridTemplateColumns:!0,gridTemplateRows:!0,gridTemplateAreas:!0,gridArea:!0},Q={appearance:!0,cursor:!0,resize:!0,userSelect:!0,pointerEvents:!0,outline:{transform:V.outline},outlineOffset:!0,outlineColor:q.colors("outlineColor")},ee={width:q.sizesT("width"),inlineSize:q.sizesT("inlineSize"),height:q.sizes("height"),blockSize:q.sizes("blockSize"),boxSize:q.sizes(["width","height"]),minWidth:q.sizes("minWidth"),minInlineSize:q.sizes("minInlineSize"),minHeight:q.sizes("minHeight"),minBlockSize:q.sizes("minBlockSize"),maxWidth:q.sizes("maxWidth"),maxInlineSize:q.sizes("maxInlineSize"),maxHeight:q.sizes("maxHeight"),maxBlockSize:q.sizes("maxBlockSize"),overflow:!0,overflowX:!0,overflowY:!0,overscrollBehavior:!0,overscrollBehaviorX:!0,overscrollBehaviorY:!0,display:!0,aspectRatio:!0,hideFrom:{scale:"breakpoints",transform:(e,t)=>{var r,n,i;return{[`@media screen and (min-width: ${null!=(i=null==(n=null==(r=t.__breakpoints)?void 0:r.get(e))?void 0:n.minW)?i:e})`]:{display:"none"}}}},hideBelow:{scale:"breakpoints",transform:(e,t)=>{var r,n,i;return{[`@media screen and (max-width: ${null!=(i=null==(n=null==(r=t.__breakpoints)?void 0:r.get(e))?void 0:n._minW)?i:e})`]:{display:"none"}}}},verticalAlign:!0,boxSizing:!0,boxDecorationBreak:!0,float:q.propT("float",V.float),objectFit:!0,objectPosition:!0,visibility:!0,isolation:!0};Object.assign(ee,{w:ee.width,h:ee.height,minW:ee.minWidth,maxW:ee.maxWidth,minH:ee.minHeight,maxH:ee.maxHeight,overscroll:ee.overscrollBehavior,overscrollX:ee.overscrollBehaviorX,overscrollY:ee.overscrollBehaviorY});var te={listStyleType:!0,listStylePosition:!0,listStylePos:q.prop("listStylePosition"),listStyleImage:!0,listStyleImg:q.prop("listStyleImage")};var re=(e=>{const t=new WeakMap;return(r,n,i,o)=>{if("undefined"===typeof r)return e(r,n,i);t.has(r)||t.set(r,new Map);const a=t.get(r);if(a.has(n))return a.get(n);const s=e(r,n,i,o);return a.set(n,s),s}})((function(e,t,r,n){const i="string"===typeof t?t.split("."):[t];for(n=0;n{const n={},i=re(e,t,{});for(const o in i){o in r&&null!=r[o]||(n[o]=i[o])}return n},ae={srOnly:{transform:e=>!0===e?ne:"focusable"===e?ie:{}},layerStyle:{processResult:!0,transform:(e,t,r)=>oe(t,`layerStyles.${e}`,r)},textStyle:{processResult:!0,transform:(e,t,r)=>oe(t,`textStyles.${e}`,r)},apply:{processResult:!0,transform:(e,t,r)=>oe(t,e,r)}},se={position:!0,pos:q.prop("position"),zIndex:q.prop("zIndex","zIndices"),inset:q.spaceT("inset"),insetX:q.spaceT(["left","right"]),insetInline:q.spaceT("insetInline"),insetY:q.spaceT(["top","bottom"]),insetBlock:q.spaceT("insetBlock"),top:q.spaceT("top"),insetBlockStart:q.spaceT("insetBlockStart"),bottom:q.spaceT("bottom"),insetBlockEnd:q.spaceT("insetBlockEnd"),left:q.spaceT("left"),insetInlineStart:q.logical({scale:"space",property:{ltr:"left",rtl:"right"}}),right:q.spaceT("right"),insetInlineEnd:q.logical({scale:"space",property:{ltr:"right",rtl:"left"}})};Object.assign(se,{insetStart:se.insetInlineStart,insetEnd:se.insetInlineEnd});var ce={ring:{transform:V.ring},ringColor:q.colors("--chakra-ring-color"),ringOffset:q.prop("--chakra-ring-offset-width"),ringOffsetColor:q.colors("--chakra-ring-offset-color"),ringInset:q.prop("--chakra-ring-inset")},le={margin:q.spaceT("margin"),marginTop:q.spaceT("marginTop"),marginBlockStart:q.spaceT("marginBlockStart"),marginRight:q.spaceT("marginRight"),marginInlineEnd:q.spaceT("marginInlineEnd"),marginBottom:q.spaceT("marginBottom"),marginBlockEnd:q.spaceT("marginBlockEnd"),marginLeft:q.spaceT("marginLeft"),marginInlineStart:q.spaceT("marginInlineStart"),marginX:q.spaceT(["marginInlineStart","marginInlineEnd"]),marginInline:q.spaceT("marginInline"),marginY:q.spaceT(["marginTop","marginBottom"]),marginBlock:q.spaceT("marginBlock"),padding:q.space("padding"),paddingTop:q.space("paddingTop"),paddingBlockStart:q.space("paddingBlockStart"),paddingRight:q.space("paddingRight"),paddingBottom:q.space("paddingBottom"),paddingBlockEnd:q.space("paddingBlockEnd"),paddingLeft:q.space("paddingLeft"),paddingInlineStart:q.space("paddingInlineStart"),paddingInlineEnd:q.space("paddingInlineEnd"),paddingX:q.space(["paddingInlineStart","paddingInlineEnd"]),paddingInline:q.space("paddingInline"),paddingY:q.space(["paddingTop","paddingBottom"]),paddingBlock:q.space("paddingBlock")};Object.assign(le,{m:le.margin,mt:le.marginTop,mr:le.marginRight,me:le.marginInlineEnd,marginEnd:le.marginInlineEnd,mb:le.marginBottom,ml:le.marginLeft,ms:le.marginInlineStart,marginStart:le.marginInlineStart,mx:le.marginX,my:le.marginY,p:le.padding,pt:le.paddingTop,py:le.paddingY,px:le.paddingX,pb:le.paddingBottom,pl:le.paddingLeft,ps:le.paddingInlineStart,paddingStart:le.paddingInlineStart,pr:le.paddingRight,pe:le.paddingInlineEnd,paddingEnd:le.paddingInlineEnd});var ue={textDecorationColor:q.colors("textDecorationColor"),textDecoration:!0,textDecor:{property:"textDecoration"},textDecorationLine:!0,textDecorationStyle:!0,textDecorationThickness:!0,textUnderlineOffset:!0,textShadow:q.shadows("textShadow")},de={clipPath:!0,transform:q.propT("transform",V.transform),transformOrigin:!0,translateX:q.spaceT("--chakra-translate-x"),translateY:q.spaceT("--chakra-translate-y"),skewX:q.degreeT("--chakra-skew-x"),skewY:q.degreeT("--chakra-skew-y"),scaleX:q.prop("--chakra-scale-x"),scaleY:q.prop("--chakra-scale-y"),scale:q.prop(["--chakra-scale-x","--chakra-scale-y"]),rotate:q.degreeT("--chakra-rotate")},he={transition:!0,transitionDelay:!0,animation:!0,willChange:!0,transitionDuration:q.prop("transitionDuration","transition.duration"),transitionProperty:q.prop("transitionProperty","transition.property"),transitionTimingFunction:q.prop("transitionTimingFunction","transition.easing")},fe={fontFamily:q.prop("fontFamily","fonts"),fontSize:q.prop("fontSize","fontSizes",V.px),fontWeight:q.prop("fontWeight","fontWeights"),lineHeight:q.prop("lineHeight","lineHeights"),letterSpacing:q.prop("letterSpacing","letterSpacings"),textAlign:!0,fontStyle:!0,textIndent:!0,wordBreak:!0,overflowWrap:!0,textOverflow:!0,textTransform:!0,whiteSpace:!0,isTruncated:{transform(e){if(!0===e)return{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}}},noOfLines:{static:{overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:"var(--chakra-line-clamp)"},property:"--chakra-line-clamp"}},pe={scrollBehavior:!0,scrollSnapAlign:!0,scrollSnapStop:!0,scrollSnapType:!0,scrollMargin:q.spaceT("scrollMargin"),scrollMarginTop:q.spaceT("scrollMarginTop"),scrollMarginBottom:q.spaceT("scrollMarginBottom"),scrollMarginLeft:q.spaceT("scrollMarginLeft"),scrollMarginRight:q.spaceT("scrollMarginRight"),scrollMarginX:q.spaceT(["scrollMarginLeft","scrollMarginRight"]),scrollMarginY:q.spaceT(["scrollMarginTop","scrollMarginBottom"]),scrollPadding:q.spaceT("scrollPadding"),scrollPaddingTop:q.spaceT("scrollPaddingTop"),scrollPaddingBottom:q.spaceT("scrollPaddingBottom"),scrollPaddingLeft:q.spaceT("scrollPaddingLeft"),scrollPaddingRight:q.spaceT("scrollPaddingRight"),scrollPaddingX:q.spaceT(["scrollPaddingLeft","scrollPaddingRight"]),scrollPaddingY:q.spaceT(["scrollPaddingTop","scrollPaddingBottom"])};function me(e){return b(e)&&e.reference?e.reference:String(e)}var ge=(e,...t)=>t.map(me).join(` ${e} `).replace(/calc/g,""),ve=(...e)=>`calc(${ge("+",...e)})`,ye=(...e)=>`calc(${ge("-",...e)})`,be=(...e)=>`calc(${ge("*",...e)})`,we=(...e)=>`calc(${ge("/",...e)})`,xe=e=>{const t=me(e);return null==t||Number.isNaN(parseFloat(t))?be(t,-1):String(t).startsWith("-")?String(t).slice(1):`-${t}`},_e=Object.assign((e=>({add:(...t)=>_e(ve(e,...t)),subtract:(...t)=>_e(ye(e,...t)),multiply:(...t)=>_e(be(e,...t)),divide:(...t)=>_e(we(e,...t)),negate:()=>_e(xe(e)),toString:()=>e.toString()})),{add:ve,subtract:ye,multiply:be,divide:we,negate:xe});function ke(e){return function(e){return e.replace(/[!-,/:-@[-^`{-~]/g,"\\$&")}(function(e){if(e.includes("\\."))return e;const t=!Number.isInteger(parseFloat(e.toString()));return t?e.replace(".","\\."):e}(function(e,t="-"){return e.replace(/\s+/g,t)}(e.toString())))}function Se(e,t){return`var(${e}${t?`, ${t}`:""})`}function Ee(e,t=""){return ke(`--${function(e,t=""){return[t,e].filter(Boolean).join("-")}(e,t)}`)}function Ae(e,t,r){const n=Ee(e,r);return{variable:n,reference:Se(n,t)}}function Pe(e){const t=null==e?0:e.length;return t?e[t-1]:void 0}function Oe(e){if(null==e)return e;const{unitless:t}=function(e){const t=parseFloat(e.toString()),r=e.toString().replace(String(t),"");return{unitless:!r,value:t,unit:r}}(e);return t||"number"===typeof e?`${e}px`:e}var Te=(e,t)=>parseInt(e[1],10)>parseInt(t[1],10)?1:-1,je=e=>Object.fromEntries(Object.entries(e).sort(Te));function Ce(e){const t=je(e);return Object.assign(Object.values(t),t)}function Re(e){var t;if(!e)return e;e=null!=(t=Oe(e))?t:e;return"number"===typeof e?`${e+-.02}`:e.replace(/(\d+\.?\d*)/u,(e=>`${parseFloat(e)+-.02}`))}function Ie(e,t){const r=["@media screen"];return e&&r.push("and",`(min-width: ${Oe(e)})`),t&&r.push("and",`(max-width: ${Oe(t)})`),r.join(" ")}function Me(e){var t;if(!e)return null;e.base=null!=(t=e.base)?t:"0px";const r=Ce(e),n=Object.entries(e).sort(Te).map((([e,t],r,n)=>{var i;let[,o]=null!=(i=n[r+1])?i:[];return o=parseFloat(o)>0?Re(o):void 0,{_minW:Re(t),breakpoint:e,minW:t,maxW:o,maxWQuery:Ie(null,o),minWQuery:Ie(t),minMaxQuery:Ie(t,o)}})),i=function(e){const t=Object.keys(je(e));return new Set(t)}(e),o=Array.from(i.values());return{keys:i,normalized:r,isResponsive(e){const t=Object.keys(e);return t.length>0&&t.every((e=>i.has(e)))},asObject:je(e),asArray:Ce(e),details:n,get:e=>n.find((t=>t.breakpoint===e)),media:[null,...r.map((e=>Ie(e))).slice(1)],toArrayValue(e){if(!b(e))throw new Error("toArrayValue: value must be an object");const t=o.map((t=>{var r;return null!=(r=e[t])?r:null}));for(;null===Pe(t);)t.pop();return t},toObjectValue(e){if(!Array.isArray(e))throw new Error("toObjectValue: value must be an array");return e.reduce(((e,t,r)=>{const n=o[r];return null!=n&&null!=t&&(e[n]=t),e}),{})}}}var Le=(e,t)=>`${e}:hover ${t}, ${e}[data-hover] ${t}`,Ne=(e,t)=>`${e}:focus ${t}, ${e}[data-focus] ${t}`,De=(e,t)=>`${e}:focus-visible ${t}`,ze=(e,t)=>`${e}:focus-within ${t}`,Be=(e,t)=>`${e}:active ${t}, ${e}[data-active] ${t}`,Ue=(e,t)=>`${e}:disabled ${t}, ${e}[data-disabled] ${t}`,Fe=(e,t)=>`${e}:invalid ${t}, ${e}[data-invalid] ${t}`,$e=(e,t)=>`${e}:checked ${t}, ${e}[data-checked] ${t}`,He=(e,t)=>`${e}:placeholder-shown ${t}`,Ve=e=>Ke((t=>e(t,"&")),"[role=group]","[data-group]",".group"),qe=e=>Ke((t=>e(t,"~ &")),"[data-peer]",".peer"),Ke=(e,...t)=>t.map(e).join(", "),We={_hover:"&:hover, &[data-hover]",_active:"&:active, &[data-active]",_focus:"&:focus, &[data-focus]",_highlighted:"&[data-highlighted]",_focusWithin:"&:focus-within",_focusVisible:"&:focus-visible, &[data-focus-visible]",_disabled:"&:disabled, &[disabled], &[aria-disabled=true], &[data-disabled]",_readOnly:"&[aria-readonly=true], &[readonly], &[data-readonly]",_before:"&::before",_after:"&::after",_empty:"&:empty",_expanded:"&[aria-expanded=true], &[data-expanded]",_checked:"&[aria-checked=true], &[data-checked]",_grabbed:"&[aria-grabbed=true], &[data-grabbed]",_pressed:"&[aria-pressed=true], &[data-pressed]",_invalid:"&[aria-invalid=true], &[data-invalid]",_valid:"&[data-valid], &[data-state=valid]",_loading:"&[data-loading], &[aria-busy=true]",_selected:"&[aria-selected=true], &[data-selected]",_hidden:"&[hidden], &[data-hidden]",_autofill:"&:-webkit-autofill",_even:"&:nth-of-type(even)",_odd:"&:nth-of-type(odd)",_first:"&:first-of-type",_firstLetter:"&::first-letter",_last:"&:last-of-type",_notFirst:"&:not(:first-of-type)",_notLast:"&:not(:last-of-type)",_visited:"&:visited",_activeLink:"&[aria-current=page]",_activeStep:"&[aria-current=step]",_indeterminate:"&:indeterminate, &[aria-checked=mixed], &[data-indeterminate]",_groupHover:Ve(Le),_peerHover:qe(Le),_groupFocus:Ve(Ne),_peerFocus:qe(Ne),_groupFocusVisible:Ve(De),_peerFocusVisible:qe(De),_groupActive:Ve(Be),_peerActive:qe(Be),_groupDisabled:Ve(Ue),_peerDisabled:qe(Ue),_groupInvalid:Ve(Fe),_peerInvalid:qe(Fe),_groupChecked:Ve($e),_peerChecked:qe($e),_groupFocusWithin:Ve(ze),_peerFocusWithin:qe(ze),_peerPlaceholderShown:qe(He),_placeholder:"&::placeholder",_placeholderShown:"&:placeholder-shown",_fullScreen:"&:fullscreen",_selection:"&::selection",_rtl:"[dir=rtl] &, &[dir=rtl]",_ltr:"[dir=ltr] &, &[dir=ltr]",_mediaDark:"@media (prefers-color-scheme: dark)",_mediaReduceMotion:"@media (prefers-reduced-motion: reduce)",_dark:".chakra-ui-dark &:not([data-theme]),[data-theme=dark] &:not([data-theme]),&[data-theme=dark]",_light:".chakra-ui-light &:not([data-theme]),[data-theme=light] &:not([data-theme]),&[data-theme=light]",_horizontal:"&[data-orientation=horizontal]",_vertical:"&[data-orientation=vertical]"},Ge=Object.keys(We);function Ze(e,t){return Ae(String(e).replace(/\./g,"-"),void 0,t)}function Ye(e,t,r={}){const{stop:n,getKey:i}=r;return function e(r,o=[]){var a;if(function(e){return"object"===typeof e&&null!=e&&!Array.isArray(e)}(r)||Array.isArray(r)){const s={};for(const[c,l]of Object.entries(r)){const u=null!=(a=null==i?void 0:i(c))?a:c,d=[...o,u];if(null==n?void 0:n(r,d))return t(r,o);s[u]=e(l,d)}return s}return t(r,o)}(e)}var Xe=["colors","borders","borderWidths","borderStyles","fonts","fontSizes","fontWeights","gradients","letterSpacings","lineHeights","radii","space","shadows","sizes","zIndices","transition","blur","breakpoints"];var Je=e=>Ge.includes(e)||"default"===e;function Qe(e){var t;const r=function(e){const{__cssMap:t,__cssVars:r,__breakpoints:n,...i}=e;return i}(e),n=function(e){return function(e,t){const r={};for(const n of t)n in e&&(r[n]=e[n]);return r}(e,Xe)}(r),i=function(e){return e.semanticTokens}(r),o=function({tokens:e,semanticTokens:t}){const r={};return Ye(e,((e,t)=>{null!=e&&(r[t.join(".")]={isSemantic:!1,value:e})})),Ye(t,((e,t)=>{null!=e&&(r[t.join(".")]={isSemantic:!0,value:e})}),{stop:e=>Object.keys(e).every(Je)}),r}({tokens:n,semanticTokens:i}),a=null==(t=r.config)?void 0:t.cssVarPrefix,{cssMap:s,cssVars:c}=function(e,t){let r={};const n={};for(const[i,o]of Object.entries(e)){const{isSemantic:a,value:s}=o,{variable:c,reference:l}=Ze(i,null==t?void 0:t.cssVarPrefix);if(!a){if(i.startsWith("space")){const e=i.split("."),[t,...r]=e,o=`${t}.-${r.join(".")}`,a=_e.negate(s),u=_e.negate(l);n[o]={value:a,var:c,varRef:u}}r[c]=s,n[i]={value:s,var:c,varRef:l};continue}const u=r=>{const n=[String(i).split(".")[0],r].join(".");if(!e[n])return r;const{reference:o}=Ze(n,null==t?void 0:t.cssVarPrefix);return o},d=b(s)?s:{default:s};r=P(r,Object.entries(d).reduce(((e,[t,r])=>{var n,i;if(!r)return e;const o=u(`${r}`);return"default"===t?(e[c]=o,e):(e[null!=(i=null==(n=We)?void 0:n[t])?i:t]={[c]:o},e)}),{})),n[i]={value:l,var:c,varRef:l}}return{cssVars:r,cssMap:n}}(o,{cssVarPrefix:a});return Object.assign(r,{__cssVars:{"--chakra-ring-inset":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-ring-offset-width":"0px","--chakra-ring-offset-color":"#fff","--chakra-ring-color":"rgba(66, 153, 225, 0.6)","--chakra-ring-offset-shadow":"0 0 #0000","--chakra-ring-shadow":"0 0 #0000","--chakra-space-x-reverse":"0","--chakra-space-y-reverse":"0",...c},__cssMap:s,__breakpoints:Me(r.breakpoints)}),r}var et=P({},K,W,G,X,ee,Y,ce,Q,J,ae,se,Z,le,pe,fe,ue,de,te,he),tt=Object.assign({},le,ee,X,J,se),rt=Object.keys(tt),nt=[...Object.keys(et),...Ge],it={...et,...We},ot=e=>e in it;var at=(e,t)=>e.startsWith("--")&&"string"===typeof t&&!function(e){return/^var\(--.+\)$/.test(e)}(t),st=(e,t)=>{var r,n;if(null==t)return t;const i=t=>{var r,n;return null==(n=null==(r=e.__cssMap)?void 0:r[t])?void 0:n.varRef},o=e=>{var t;return null!=(t=i(e))?t:e},[a,s]=function(e){const t=[];let r="",n=!1;for(let i=0;i{var a,s,c;const l=x(e,n),u=(e=>t=>{if(!t.__breakpoints)return e;const{isResponsive:r,toArrayValue:n,media:i}=t.__breakpoints,o={};for(const a in e){let s=x(e[a],t);if(null==s)continue;if(s=b(s)&&r(s)?n(s):s,!Array.isArray(s)){o[a]=s;continue}const c=s.slice(0,i.length).length;for(let e=0;et=>ct({theme:t,pseudos:We,configs:et})(e);function ut(e){return{definePartsStyle:e=>e,defineMultiStyleConfig:t=>({parts:e,...t})}}function dt(e,t){for(let r=t+1;r{P(s,{[e]:u?p[e]:{[f]:p[e]}})})):d?s[f]=p:u?P(s,p):s[f]=p)}return s}}function ft(e){return function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(e,["styleConfig","size","variant","colorScheme"])}var pt=new Set([...nt,"textStyle","layerStyle","apply","noOfLines","focusBorderColor","errorBorderColor","as","__css","css","sx"]),mt=new Set(["htmlWidth","htmlHeight","htmlSize","htmlTranslate"]);function gt(e){return mt.has(e)||!pt.has(e)}var vt=(0,i.createContext)({});function yt(){const e=(0,i.useContext)(vt);if(void 0===e)throw new Error("useColorMode must be used within a ColorModeProvider");return e}vt.displayName="ColorModeContext";var bt=(e=>{const t=new WeakMap;return(r,n,i,o)=>{if("undefined"===typeof r)return e(r,n,i);t.has(r)||t.set(r,new Map);const a=t.get(r);if(a.has(n))return a.get(n);const s=e(r,n,i,o);return a.set(n,s),s}})((function(e,t,r,n){const i="string"===typeof t?t.split("."):[t];for(n=0;n{const i=e[n];t(i,n,e)&&(r[n]=i)})),r}var xt=e=>wt(e,(e=>null!==e&&void 0!==e));function _t(e,...t){return function(e){return"function"===typeof e}(e)?e(...t):e}function kt(...e){return function(t){e.some((e=>(null==e||e(t),null==t?void 0:t.defaultPrevented)))}}function St(){return St=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?Lt(qt,--Ht):0,Ft--,10===Vt&&(Ft=1,Ut--),Vt}function Zt(){return Vt=Ht<$t?Lt(qt,Ht++):0,Ft++,10===Vt&&(Ft=1,Ut++),Vt}function Yt(){return Lt(qt,Ht)}function Xt(){return Ht}function Jt(e,t){return Nt(qt,e,t)}function Qt(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function er(e){return Ut=Ft=1,$t=Dt(qt=e),Ht=0,[]}function tr(e){return qt="",e}function rr(e){return Rt(Jt(Ht-1,or(91===e?e+2:40===e?e+1:e)))}function nr(e){for(;(Vt=Yt())&&Vt<33;)Zt();return Qt(e)>2||Qt(Vt)>3?"":" "}function ir(e,t){for(;--t&&Zt()&&!(Vt<48||Vt>102||Vt>57&&Vt<65||Vt>70&&Vt<97););return Jt(e,Xt()+(t<6&&32==Yt()&&32==Zt()))}function or(e){for(;Zt();)switch(Vt){case e:return Ht;case 34:case 39:34!==e&&39!==e&&or(Vt);break;case 40:41===e&&or(e);break;case 92:Zt()}return Ht}function ar(e,t){for(;Zt()&&e+Vt!==57&&(e+Vt!==84||47!==Yt()););return"/*"+Jt(t,Ht-1)+"*"+jt(47===e?e:Zt())}function sr(e){for(;!Qt(Yt());)Zt();return Jt(e,Ht)}var cr="-ms-",lr="-moz-",ur="-webkit-",dr="comm",hr="rule",fr="decl",pr="@keyframes";function mr(e,t){for(var r="",n=zt(e),i=0;i0&&Dt(k)-d&&Bt(f>32?xr(k+";",n,r,d-1):xr(It(k," ","")+";",n,r,d-2),c);break;case 59:k+=";";default:if(Bt(_=br(k,t,r,l,u,i,s,b,w=[],x=[],d),o),123===y)if(0===u)yr(k,t,_,_,w,o,d,s,x);else switch(99===h&&110===Lt(k,3)?100:h){case 100:case 108:case 109:case 115:yr(e,_,_,n&&Bt(br(e,_,_,0,0,i,s,b,i,w=[],d),x),i,x,d,s,n?w:x);break;default:yr(k,_,_,_,[""],x,0,s,x)}}l=u=f=0,m=v=1,b=k="",d=a;break;case 58:d=1+Dt(k),f=p;default:if(m<1)if(123==y)--m;else if(125==y&&0==m++&&125==Gt())continue;switch(k+=jt(y),y*m){case 38:v=u>0?1:(k+="\f",-1);break;case 44:s[l++]=(Dt(k)-1)*v,v=1;break;case 64:45===Yt()&&(k+=rr(Zt())),h=Yt(),u=d=Dt(b=k+=sr(Xt())),y++;break;case 45:45===p&&2==Dt(k)&&(m=0)}}return o}function br(e,t,r,n,i,o,a,s,c,l,u){for(var d=i-1,h=0===i?o:[""],f=zt(h),p=0,m=0,g=0;p0?h[v]+" "+y:It(y,/&\f/g,h[v])))&&(c[g++]=b);return Kt(e,t,r,0===i?hr:s,c,l,u)}function wr(e,t,r){return Kt(e,t,r,dr,jt(Vt),Nt(e,2,-2),0)}function xr(e,t,r,n){return Kt(e,t,r,fr,Nt(e,0,n),Nt(e,n+1,-1),n)}var _r=function(e,t,r){for(var n=0,i=0;n=i,i=Yt(),38===n&&12===i&&(t[r]=1),!Qt(i);)Zt();return Jt(e,Ht)},kr=function(e,t){return tr(function(e,t){var r=-1,n=44;do{switch(Qt(n)){case 0:38===n&&12===Yt()&&(t[r]=1),e[r]+=_r(Ht-1,t,r);break;case 2:e[r]+=rr(n);break;case 4:if(44===n){e[++r]=58===Yt()?"&\f":"",t[r]=e[r].length;break}default:e[r]+=jt(n)}}while(n=Zt());return e}(er(e),t))},Sr=new WeakMap,Er=function(e){if("rule"===e.type&&e.parent&&!(e.length<1)){for(var t=e.value,r=e.parent,n=e.column===r.column&&e.line===r.line;"rule"!==r.type;)if(!(r=r.parent))return;if((1!==e.props.length||58===t.charCodeAt(0)||Sr.get(r))&&!n){Sr.set(e,!0);for(var i=[],o=kr(t,i),a=r.props,s=0,c=0;s6)switch(Lt(e,t+1)){case 109:if(45!==Lt(e,t+4))break;case 102:return It(e,/(.+:)(.+)-([^]+)/,"$1"+ur+"$2-$3$1"+lr+(108==Lt(e,t+3)?"$3":"$2-$3"))+e;case 115:return~Mt(e,"stretch")?Pr(It(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==Lt(e,t+1))break;case 6444:switch(Lt(e,Dt(e)-3-(~Mt(e,"!important")&&10))){case 107:return It(e,":",":"+ur)+e;case 101:return It(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+ur+(45===Lt(e,14)?"inline-":"")+"box$3$1"+ur+"$2$3$1"+cr+"$2box$3")+e}break;case 5936:switch(Lt(e,t+11)){case 114:return ur+e+cr+It(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return ur+e+cr+It(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return ur+e+cr+It(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return ur+e+cr+e+e}return e}var Or=[function(e,t,r,n){if(e.length>-1&&!e.return)switch(e.type){case fr:e.return=Pr(e.value,e.length);break;case pr:return mr([Wt(e,{value:It(e.value,"@","@"+ur)})],n);case hr:if(e.length)return function(e,t){return e.map(t).join("")}(e.props,(function(t){switch(function(e,t){return(e=t.exec(e))?e[0]:e}(t,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return mr([Wt(e,{props:[It(t,/:(read-\w+)/,":-moz-$1")]})],n);case"::placeholder":return mr([Wt(e,{props:[It(t,/:(plac\w+)/,":"+ur+"input-$1")]}),Wt(e,{props:[It(t,/:(plac\w+)/,":-moz-$1")]}),Wt(e,{props:[It(t,/:(plac\w+)/,cr+"input-$1")]})],n)}return""}))}}],Tr=function(e){var t=e.key;if("css"===t){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(r,(function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""))}))}var n=e.stylisPlugins||Or;var i,o,a={},s=[];i=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),(function(e){for(var t=e.getAttribute("data-emotion").split(" "),r=1;r=4;++n,i-=4)t=1540483477*(65535&(t=255&e.charCodeAt(n)|(255&e.charCodeAt(++n))<<8|(255&e.charCodeAt(++n))<<16|(255&e.charCodeAt(++n))<<24))+(59797*(t>>>16)<<16),r=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&r)+(59797*(r>>>16)<<16);switch(i){case 3:r^=(255&e.charCodeAt(n+2))<<16;case 2:r^=(255&e.charCodeAt(n+1))<<8;case 1:r=1540483477*(65535&(r^=255&e.charCodeAt(n)))+(59797*(r>>>16)<<16)}return(((r=1540483477*(65535&(r^=r>>>13))+(59797*(r>>>16)<<16))^r>>>15)>>>0).toString(36)}var Ir={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},Mr=/[A-Z]|^ms/g,Lr=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Nr=function(e){return 45===e.charCodeAt(1)},Dr=function(e){return null!=e&&"boolean"!==typeof e},zr=Et((function(e){return Nr(e)?e:e.replace(Mr,"-$&").toLowerCase()})),Br=function(e,t){switch(e){case"animation":case"animationName":if("string"===typeof t)return t.replace(Lr,(function(e,t,r){return Fr={name:t,styles:r,next:Fr},t}))}return 1===Ir[e]||Nr(e)||"number"!==typeof t||0===t?t:t+"px"};function Ur(e,t,r){if(null==r)return"";if(void 0!==r.__emotion_styles)return r;switch(typeof r){case"boolean":return"";case"object":if(1===r.anim)return Fr={name:r.name,styles:r.styles,next:Fr},r.name;if(void 0!==r.styles){var n=r.next;if(void 0!==n)for(;void 0!==n;)Fr={name:n.name,styles:n.styles,next:Fr},n=n.next;return r.styles+";"}return function(e,t,r){var n="";if(Array.isArray(r))for(var i=0;i96?dn:hn},pn=function(e,t,r){var n;if(t){var i=t.shouldForwardProp;n=e.__emotion_forwardProp&&i?function(t){return e.__emotion_forwardProp(t)&&i(t)}:i}return"function"!==typeof n&&r&&(n=e.__emotion_forwardProp),n},mn=function(e){var t=e.cache,r=e.serialized,n=e.isStringTag;return Jr(t,r,n),qr((function(){return Qr(t,r,n)})),null},gn=function e(t,r){var n,o,a=t.__emotion_real===t,s=a&&t.__emotion_base||t;void 0!==r&&(n=r.label,o=r.target);var c=pn(t,r,a),l=c||fn(s),u=!l("as");return function(){var d=arguments,h=a&&void 0!==t.__emotion_styles?t.__emotion_styles.slice(0):[];if(void 0!==n&&h.push("label:"+n+";"),null==d[0]||void 0===d[0].raw)h.push.apply(h,d);else{0,h.push(d[0][0]);for(var f=d.length,p=1;pt=>{const{theme:r,css:n,__css:i,sx:o,...a}=t,s=wt(a,((e,t)=>ot(t))),c=function(e,...t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");const r={...e};for(const n of t)if(null!=n)for(const e in n)Object.prototype.hasOwnProperty.call(n,e)&&(e in r&&delete r[e],r[e]=n[e]);return r}({},i,_t(e,t),xt(s),o),l=lt(c)(t.theme);return n?[l,n]:l};function bn(e,t){const{baseStyle:r,...n}=null!=t?t:{};n.shouldForwardProp||(n.shouldForwardProp=gt);const o=yn({baseStyle:r}),a=vn(e,n)(o);return i.forwardRef((function(e,t){const{colorMode:r,forced:n}=yt();return i.createElement(a,{ref:t,"data-theme":n?r:void 0,...e})}))}var wn=function(){const e=new Map;return new Proxy(bn,{apply:(e,t,r)=>bn(...r),get:(t,r)=>(e.has(r)||e.set(r,bn(r)),e.get(r))})}(),xn=r(8826),_n=v((function(e,t){const{direction:r,align:n,justify:i,wrap:o,basis:a,grow:s,shrink:c,...l}=e,u={display:"flex",flexDirection:r,alignItems:n,justifyContent:i,flexWrap:o,flexBasis:a,flexGrow:s,flexShrink:c};return(0,xn.jsx)(wn.div,{ref:t,__css:u,...l})}));_n.displayName="Flex";var kn=wn("div",{baseStyle:{display:"flex",alignItems:"center",justifyContent:"center"}});kn.displayName="Center";var Sn={horizontal:{insetStart:"50%",transform:"translateX(-50%)"},vertical:{top:"50%",transform:"translateY(-50%)"},both:{insetStart:"50%",top:"50%",transform:"translate(-50%, -50%)"}},En=(v((function(e,t){const{axis:r="both",...n}=e;return(0,xn.jsx)(wn.div,{ref:t,__css:Sn[r],...n,position:"absolute"})})),wn("div"));En.displayName="Box";var An=v((function(e,t){const{size:r,centerContent:n=!0,...i}=e,o=n?{display:"flex",alignItems:"center",justifyContent:"center"}:{};return(0,xn.jsx)(En,{ref:t,boxSize:r,__css:{...o,flexShrink:0,flexGrow:0},...i})}));An.displayName="Square";var Pn=v((function(e,t){const{size:r,...n}=e;return(0,xn.jsx)(An,{size:r,ref:t,borderRadius:"9999px",...n})}));function On(){const e=(0,i.useContext)(Zr);if(!e)throw Error("useTheme: `theme` is undefined. Seems you forgot to wrap your app in `` or ``");return e}function Tn(){return{...yt(),theme:On()}}function jn(e,t,r){const n=Array.isArray(t)?t:[t],i=Array.isArray(r)?r:[r];return r=>{const o=i.filter(Boolean),a=n.map(((t,n)=>{var i,a;if("breakpoints"===e)return function(e,t,r){var n,i;if(null==t)return t;const o=t=>{var r,n;return null==(n=null==(r=e.__breakpoints)?void 0:r.asArray)?void 0:n[t]};return null!=(i=null!=(n=o(t))?n:o(r))?i:r}(r,t,null!=(i=o[n])?i:t);return function(e,t,r){var n,i;if(null==t)return t;const o=t=>{var r,n;return null==(n=null==(r=e.__cssMap)?void 0:r[t])?void 0:n.value};return null!=(i=null!=(n=o(t))?n:o(r))?i:r}(r,`${e}.${t}`,null!=(a=o[n])?a:t)}));return Array.isArray(t)?a:a[0]}}Pn.displayName="Circle";var Cn=r(2249);function Rn(e,t={}){var r;const{styleConfig:n,...o}=t,{theme:a,colorMode:s}=Tn(),c=e?bt(a,`components.${e}`):void 0,l=n||c,u=P({theme:a,colorMode:s},null!=(r=null==l?void 0:l.defaultProps)?r:{},xt(function(e,t){const r={};return Object.keys(e).forEach((n=>{t.includes(n)||(r[n]=e[n])})),r}(o,["children"]))),d=(0,i.useRef)({});if(l){const e=function(e){return t=>{var r;const{variant:n,size:i,theme:o}=t,a=ht(o);return P({},x(null!=(r=e.baseStyle)?r:{},t),a(e,"sizes",i,t),a(e,"variants",n,t))}}(l),t=e(u);Cn(d.current,t)||(d.current=t)}return d.current}function In(e,t={}){return Rn(e,t)}function Mn(e,t={}){return Rn(e,t)}var Ln=v((function(e,t){const r=In("Heading",e),{className:n,...i}=ft(e);return(0,xn.jsx)(wn.h2,{ref:t,className:y("chakra-heading",e.className),...i,__css:r})}));function Nn(e={}){const{name:t,strict:r=!0,hookName:n="useContext",providerName:o="Provider",errorMessage:a,defaultValue:s}=e,c=(0,i.createContext)(s);return c.displayName=t,[c.Provider,function e(){var t;const s=(0,i.useContext)(c);if(!s&&r){const r=new Error(null!=a?a:`${n} returned \`undefined\`. Seems you forgot to wrap component within ${o}`);throw r.name="ContextError",null==(t=Error.captureStackTrace)||t.call(Error,r,e),r}return s},c]}Ln.displayName="Heading";var[Dn,zn]=Nn({strict:!1,name:"ButtonGroupContext"});function Bn(e){const{children:t,className:r,...n}=e,o=(0,i.isValidElement)(t)?(0,i.cloneElement)(t,{"aria-hidden":!0,focusable:!1}):t,a=y("chakra-button__icon",r);return(0,xn.jsx)(wn.span,{display:"inline-flex",alignSelf:"center",flexShrink:0,...n,className:a,children:o})}Bn.displayName="ButtonIcon";r(5304);var Un=Gr((function(e,t){var r=e.styles,n=Hr([r],void 0,i.useContext(Zr)),o=i.useRef();return Kr((function(){var e=t.key+"-global",r=new t.sheet.constructor({key:e,nonce:t.sheet.nonce,container:t.sheet.container,speedy:t.sheet.isSpeedy}),i=!1,a=document.querySelector('style[data-emotion="'+e+" "+n.name+'"]');return t.sheet.tags.length&&(r.before=t.sheet.tags[0]),null!==a&&(i=!0,a.setAttribute("data-emotion",e),r.hydrate([a])),o.current=[r,i],function(){r.flush()}}),[t]),Kr((function(){var e=o.current,r=e[0];if(e[1])e[1]=!1;else{if(void 0!==n.next&&Qr(t,n.next,!0),r.tags.length){var i=r.tags[r.tags.length-1].nextElementSibling;r.before=i,r.flush()}t.insert("",n,r,!1)}}),[t,n.name]),null}));function Fn(){for(var e=arguments.length,t=new Array(e),r=0;r{const r=In("Spinner",e),{label:n="Loading...",thickness:i="2px",speed:o="0.45s",emptyColor:a="transparent",className:s,...c}=ft(e),l=y("chakra-spinner",s),u={display:"inline-block",borderColor:"currentColor",borderStyle:"solid",borderRadius:"99999px",borderWidth:i,borderBottomColor:a,borderLeftColor:a,animation:`${Hn} ${o} linear infinite`,...r};return(0,xn.jsx)(wn.div,{ref:t,__css:u,className:l,...c,children:n&&(0,xn.jsx)(wn.span,{srOnly:!0,children:n})})}));function qn(e){const{label:t,placement:r,spacing:n="0.5rem",children:o=(0,xn.jsx)(Vn,{color:"currentColor",width:"1em",height:"1em"}),className:a,__css:s,...c}=e,l=y("chakra-button__spinner",a),u="start"===r?"marginEnd":"marginStart",d=(0,i.useMemo)((()=>({display:"flex",alignItems:"center",position:t?"relative":"absolute",[u]:t?n:0,fontSize:"1em",lineHeight:"normal",...s})),[s,t,u,n]);return(0,xn.jsx)(wn.div,{className:l,...c,__css:d,children:o})}function Kn(...e){return t=>{e.forEach((e=>{!function(e,t){if(null!=e)if("function"!==typeof e)try{e.current=t}catch(r){throw new Error(`Cannot assign value '${t}' to ref '${e}'`)}else e(t)}(e,t)}))}}function Wn(...e){return(0,i.useMemo)((()=>Kn(...e)),e)}Vn.displayName="Spinner",qn.displayName="ButtonSpinner";var Gn=v(((e,t)=>{const r=zn(),n=In("Button",{...r,...e}),{isDisabled:o=(null==r?void 0:r.isDisabled),isLoading:a,isActive:s,children:c,leftIcon:l,rightIcon:u,loadingText:d,iconSpacing:h="0.5rem",type:f,spinner:p,spinnerPlacement:m="start",className:g,as:v,...b}=ft(e),w=(0,i.useMemo)((()=>{const e={...null==n?void 0:n._focus,zIndex:1};return{display:"inline-flex",appearance:"none",alignItems:"center",justifyContent:"center",userSelect:"none",position:"relative",whiteSpace:"nowrap",verticalAlign:"middle",outline:"none",...n,...!!r&&{_focus:e}}}),[n,r]),{ref:x,type:_}=function(e){const[t,r]=(0,i.useState)(!e),n=(0,i.useCallback)((e=>{e&&r("BUTTON"===e.tagName)}),[]);return{ref:n,type:t?"button":void 0}}(v),S={rightIcon:u,leftIcon:l,iconSpacing:h,children:c};return(0,xn.jsxs)(wn.button,{ref:Wn(t,x),as:v,type:null!=f?f:_,"data-active":k(s),"data-loading":k(a),__css:w,className:y("chakra-button",g),...b,disabled:o||a,children:[a&&"start"===m&&(0,xn.jsx)(qn,{className:"chakra-button__spinner--start",label:d,placement:"start",spacing:h,children:p}),a?d||(0,xn.jsx)(wn.span,{opacity:0,children:(0,xn.jsx)(Zn,{...S})}):(0,xn.jsx)(Zn,{...S}),a&&"end"===m&&(0,xn.jsx)(qn,{className:"chakra-button__spinner--end",label:d,placement:"end",spacing:h,children:p})]})}));function Zn(e){const{leftIcon:t,rightIcon:r,children:n,iconSpacing:i}=e;return(0,xn.jsxs)(xn.Fragment,{children:[t&&(0,xn.jsx)(Bn,{marginEnd:i,children:t}),n,r&&(0,xn.jsx)(Bn,{marginStart:i,children:r})]})}Gn.displayName="Button";var Yn=v((function(e,t){const r=In("Link",e),{className:n,isExternal:i,...o}=ft(e);return(0,xn.jsx)(wn.a,{target:i?"_blank":void 0,rel:i?"noopener":void 0,ref:t,className:y("chakra-link",n),...o,__css:r})}));Yn.displayName="Link";const Xn=()=>{const e=()=>{window.location.reload()};return(0,xn.jsx)(_n,{alignItems:"stretch",children:(0,xn.jsx)(kn,{width:"100%",marginTop:"200px",children:(0,xn.jsxs)(En,{children:[(0,xn.jsx)(Ln,{marginBottom:3,textAlign:"center",children:"Ooops, something went wrong!"}),(0,xn.jsx)(Gn,{marginRight:2,onClick:e,children:"Refresh the page"}),(0,xn.jsx)(Gn,{marginRight:2,onClick:()=>{const e=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(window.localStorage))}`,t=document.createElement("a");t.href=e,t.download="data.json",t.click()},variant:"secondary",children:"Download Backup"}),(0,xn.jsx)(Gn,{marginRight:2,onClick:()=>{window.localStorage.clear(),e()},variant:"warning",children:"Offboard"}),(0,xn.jsx)(Gn,{variant:"tertiary",children:(0,xn.jsx)(Yn,{href:"mailto:umami-support@trili.tech?subject=Umami V2 feedback&body=What is it about? (if a bug report please consider including your account address) %0A PLEASE FILL %0A%0A What is the feedback? %0A PLEASE FILL",rel:"noopener noreferrer",target:"_blank",children:"Report Error"})})]})})})};var Jn="undefined"===typeof window||"Deno"in globalThis;function Qn(){}function ei(e){return"number"===typeof e&&e>=0&&e!==1/0}function ti(e,t){return Math.max(e+(t||0)-Date.now(),0)}function ri(e,t){const{type:r="all",exact:n,fetchStatus:i,predicate:o,queryKey:a,stale:s}=e;if(a)if(n){if(t.queryHash!==ii(a,t.options))return!1}else if(!ai(t.queryKey,a))return!1;if("all"!==r){const e=t.isActive();if("active"===r&&!e)return!1;if("inactive"===r&&e)return!1}return("boolean"!==typeof s||t.isStale()===s)&&((!i||i===t.state.fetchStatus)&&!(o&&!o(t)))}function ni(e,t){const{exact:r,status:n,predicate:i,mutationKey:o}=e;if(o){if(!t.options.mutationKey)return!1;if(r){if(oi(t.options.mutationKey)!==oi(o))return!1}else if(!ai(t.options.mutationKey,o))return!1}return(!n||t.state.status===n)&&!(i&&!i(t))}function ii(e,t){return(t?.queryKeyHashFn||oi)(e)}function oi(e){return JSON.stringify(e,((e,t)=>ui(t)?Object.keys(t).sort().reduce(((e,r)=>(e[r]=t[r],e)),{}):t))}function ai(e,t){return e===t||typeof e===typeof t&&(!(!e||!t||"object"!==typeof e||"object"!==typeof t)&&!Object.keys(t).some((r=>!ai(e[r],t[r]))))}function si(e,t){if(e===t)return e;const r=li(e)&&li(t);if(r||ui(e)&&ui(t)){const n=r?e:Object.keys(e),i=n.length,o=r?t:Object.keys(t),a=o.length,s=r?[]:{};let c=0;for(let l=0;lr?n.slice(1):n}function pi(e,t,r=0){const n=[t,...e];return r&&n.length>r?n.slice(0,-1):n}var mi=Symbol();var gi=function(){let e=[],t=0,r=e=>{e()},n=e=>{e()},i=e=>setTimeout(e,0);const o=n=>{t?e.push(n):i((()=>{r(n)}))},a=()=>{const t=e;e=[],t.length&&i((()=>{n((()=>{t.forEach((e=>{r(e)}))}))}))};return{batch:e=>{let r;t++;try{r=e()}finally{t--,t||a()}return r},batchCalls:e=>(...t)=>{o((()=>{e(...t)}))},schedule:o,setNotifyFunction:e=>{r=e},setBatchNotifyFunction:e=>{n=e},setScheduler:e=>{i=e}}}(),vi=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},yi=new class extends vi{#e;#t;#r;constructor(){super(),this.#r=e=>{if(!Jn&&window.addEventListener){const t=()=>e();return window.addEventListener("visibilitychange",t,!1),()=>{window.removeEventListener("visibilitychange",t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#r)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#r=e,this.#t?.(),this.#t=e((e=>{"boolean"===typeof e?this.setFocused(e):this.onFocus()}))}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){const e=this.isFocused();this.listeners.forEach((t=>{t(e)}))}isFocused(){return"boolean"===typeof this.#e?this.#e:"hidden"!==globalThis.document?.visibilityState}},bi=new class extends vi{#n=!0;#t;#r;constructor(){super(),this.#r=e=>{if(!Jn&&window.addEventListener){const t=()=>e(!0),r=()=>e(!1);return window.addEventListener("online",t,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",t),window.removeEventListener("offline",r)}}}}onSubscribe(){this.#t||this.setEventListener(this.#r)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#r=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#n!==e&&(this.#n=e,this.listeners.forEach((t=>{t(e)})))}isOnline(){return this.#n}};function wi(e){return Math.min(1e3*2**e,3e4)}function xi(e){return"online"!==(e??"online")||bi.isOnline()}var _i=class{constructor(e){this.revert=e?.revert,this.silent=e?.silent}};function ki(e){return e instanceof _i}function Si(e){let t,r,n,i=!1,o=0,a=!1;const s=new Promise(((e,t)=>{r=e,n=t})),c=()=>!yi.isFocused()||"always"!==e.networkMode&&!bi.isOnline(),l=n=>{a||(a=!0,e.onSuccess?.(n),t?.(),r(n))},u=r=>{a||(a=!0,e.onError?.(r),t?.(),n(r))},d=()=>new Promise((r=>{t=e=>{const t=a||!c();return t&&r(e),t},e.onPause?.()})).then((()=>{t=void 0,a||e.onContinue?.()})),h=()=>{if(a)return;let t;try{t=e.fn()}catch(r){t=Promise.reject(r)}Promise.resolve(t).then(l).catch((t=>{if(a)return;const r=e.retry??(Jn?0:3),n=e.retryDelay??wi,s="function"===typeof n?n(o,t):n,l=!0===r||"number"===typeof r&&o{setTimeout(e,f)}))).then((()=>{if(c())return d()})).then((()=>{i?u(t):h()}))):u(t)}))};return xi(e.networkMode)?h():d().then(h),{promise:s,cancel:t=>{a||(u(new _i(t)),e.abort?.())},continue:()=>{const e=t?.();return e?s:Promise.resolve()},cancelRetry:()=>{i=!0},continueRetry:()=>{i=!1}}}var Ei=class{#i;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),ei(this.gcTime)&&(this.#i=setTimeout((()=>{this.optionalRemove()}),this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(Jn?1/0:3e5))}clearGcTimeout(){this.#i&&(clearTimeout(this.#i),this.#i=void 0)}},Ai=class extends Ei{#o;#a;#s;#c;#l;#u;#d;constructor(e){super(),this.#d=!1,this.#u=e.defaultOptions,this.setOptions(e.options),this.#l=[],this.#s=e.cache,this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#o=e.state||function(e){const t="function"===typeof e.initialData?e.initialData():e.initialData,r=void 0!==t,n=r?"function"===typeof e.initialDataUpdatedAt?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:r?n??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:r?"success":"pending",fetchStatus:"idle"}}(this.options),this.state=this.#o,this.scheduleGc()}get meta(){return this.options.meta}setOptions(e){this.options={...this.#u,...e},this.updateGcTime(this.options.gcTime)}optionalRemove(){this.#l.length||"idle"!==this.state.fetchStatus||this.#s.remove(this)}setData(e,t){const r=hi(this.state.data,e,this.options);return this.#h({data:r,type:"success",dataUpdatedAt:t?.updatedAt,manual:t?.manual}),r}setState(e,t){this.#h({type:"setState",state:e,setStateOptions:t})}cancel(e){const t=this.#c?.promise;return this.#c?.cancel(e),t?t.then(Qn).catch(Qn):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(this.#o)}isActive(){return this.#l.some((e=>!1!==e.options.enabled))}isDisabled(){return this.getObserversCount()>0&&!this.isActive()}isStale(){return!!this.state.isInvalidated||(this.getObserversCount()>0?this.#l.some((e=>e.getCurrentResult().isStale)):void 0===this.state.data)}isStaleByTime(e=0){return this.state.isInvalidated||void 0===this.state.data||!ti(this.state.dataUpdatedAt,e)}onFocus(){const e=this.#l.find((e=>e.shouldFetchOnWindowFocus()));e?.refetch({cancelRefetch:!1}),this.#c?.continue()}onOnline(){const e=this.#l.find((e=>e.shouldFetchOnReconnect()));e?.refetch({cancelRefetch:!1}),this.#c?.continue()}addObserver(e){this.#l.includes(e)||(this.#l.push(e),this.clearGcTimeout(),this.#s.notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){this.#l.includes(e)&&(this.#l=this.#l.filter((t=>t!==e)),this.#l.length||(this.#c&&(this.#d?this.#c.cancel({revert:!0}):this.#c.cancelRetry()),this.scheduleGc()),this.#s.notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return this.#l.length}invalidate(){this.state.isInvalidated||this.#h({type:"invalidate"})}fetch(e,t){if("idle"!==this.state.fetchStatus)if(void 0!==this.state.data&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#c)return this.#c.continueRetry(),this.#c.promise;if(e&&this.setOptions(e),!this.options.queryFn){const e=this.#l.find((e=>e.options.queryFn));e&&this.setOptions(e.options)}const r=new AbortController,n={queryKey:this.queryKey,meta:this.meta},i=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#d=!0,r.signal)})};i(n);const o={fetchOptions:t,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:()=>this.options.queryFn&&this.options.queryFn!==mi?(this.#d=!1,this.options.persister?this.options.persister(this.options.queryFn,n,this):this.options.queryFn(n)):Promise.reject(new Error(`Missing queryFn: '${this.options.queryHash}'`))};i(o),this.options.behavior?.onFetch(o,this),this.#a=this.state,"idle"!==this.state.fetchStatus&&this.state.fetchMeta===o.fetchOptions?.meta||this.#h({type:"fetch",meta:o.fetchOptions?.meta});const a=e=>{ki(e)&&e.silent||this.#h({type:"error",error:e}),ki(e)||(this.#s.config.onError?.(e,this),this.#s.config.onSettled?.(this.state.data,e,this)),this.isFetchingOptimistic||this.scheduleGc(),this.isFetchingOptimistic=!1};return this.#c=Si({fn:o.fetchFn,abort:r.abort.bind(r),onSuccess:e=>{void 0!==e?(this.setData(e),this.#s.config.onSuccess?.(e,this),this.#s.config.onSettled?.(e,this.state.error,this),this.isFetchingOptimistic||this.scheduleGc(),this.isFetchingOptimistic=!1):a(new Error(`${this.queryHash} data is undefined`))},onError:a,onFail:(e,t)=>{this.#h({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#h({type:"pause"})},onContinue:()=>{this.#h({type:"continue"})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode}),this.#c.promise}#h(e){this.state=(t=>{switch(e.type){case"failed":return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...t,fetchStatus:"paused"};case"continue":return{...t,fetchStatus:"fetching"};case"fetch":return{...t,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:e.meta??null,fetchStatus:xi(this.options.networkMode)?"fetching":"paused",...void 0===t.data&&{error:null,status:"pending"}};case"success":return{...t,data:e.data,dataUpdateCount:t.dataUpdateCount+1,dataUpdatedAt:e.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const r=e.error;return ki(r)&&r.revert&&this.#a?{...this.#a,fetchStatus:"idle"}:{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error"};case"invalidate":return{...t,isInvalidated:!0};case"setState":return{...t,...e.state}}})(this.state),gi.batch((()=>{this.#l.forEach((e=>{e.onQueryUpdate()})),this.#s.notify({query:this,type:"updated",action:e})}))}};var Pi=class extends vi{constructor(e={}){super(),this.config=e,this.#f=new Map}#f;build(e,t,r){const n=t.queryKey,i=t.queryHash??ii(n,t);let o=this.get(i);return o||(o=new Ai({cache:this,queryKey:n,queryHash:i,options:e.defaultQueryOptions(t),state:r,defaultOptions:e.getQueryDefaults(n)}),this.add(o)),o}add(e){this.#f.has(e.queryHash)||(this.#f.set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){const t=this.#f.get(e.queryHash);t&&(e.destroy(),t===e&&this.#f.delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){gi.batch((()=>{this.getAll().forEach((e=>{this.remove(e)}))}))}get(e){return this.#f.get(e)}getAll(){return[...this.#f.values()]}find(e){const t={exact:!0,...e};return this.getAll().find((e=>ri(t,e)))}findAll(e={}){const t=this.getAll();return Object.keys(e).length>0?t.filter((t=>ri(e,t))):t}notify(e){gi.batch((()=>{this.listeners.forEach((t=>{t(e)}))}))}onFocus(){gi.batch((()=>{this.getAll().forEach((e=>{e.onFocus()}))}))}onOnline(){gi.batch((()=>{this.getAll().forEach((e=>{e.onOnline()}))}))}},Oi=class extends Ei{#l;#u;#p;#c;constructor(e){super(),this.mutationId=e.mutationId,this.#u=e.defaultOptions,this.#p=e.mutationCache,this.#l=[],this.state=e.state||{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0},this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options={...this.#u,...e},this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#l.includes(e)||(this.#l.push(e),this.clearGcTimeout(),this.#p.notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){this.#l=this.#l.filter((t=>t!==e)),this.scheduleGc(),this.#p.notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){this.#l.length||("pending"===this.state.status?this.scheduleGc():this.#p.remove(this))}continue(){return this.#c?.continue()??this.execute(this.state.variables)}async execute(e){const t=()=>(this.#c=Si({fn:()=>this.options.mutationFn?this.options.mutationFn(e):Promise.reject(new Error("No mutationFn found")),onFail:(e,t)=>{this.#h({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#h({type:"pause"})},onContinue:()=>{this.#h({type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode}),this.#c.promise),r="pending"===this.state.status;try{if(!r){this.#h({type:"pending",variables:e}),await(this.#p.config.onMutate?.(e,this));const t=await(this.options.onMutate?.(e));t!==this.state.context&&this.#h({type:"pending",context:t,variables:e})}const n=await t();return await(this.#p.config.onSuccess?.(n,e,this.state.context,this)),await(this.options.onSuccess?.(n,e,this.state.context)),await(this.#p.config.onSettled?.(n,null,this.state.variables,this.state.context,this)),await(this.options.onSettled?.(n,null,e,this.state.context)),this.#h({type:"success",data:n}),n}catch(n){try{throw await(this.#p.config.onError?.(n,e,this.state.context,this)),await(this.options.onError?.(n,e,this.state.context)),await(this.#p.config.onSettled?.(void 0,n,this.state.variables,this.state.context,this)),await(this.options.onSettled?.(void 0,n,e,this.state.context)),n}finally{this.#h({type:"error",error:n})}}}#h(e){this.state=(t=>{switch(e.type){case"failed":return{...t,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...t,isPaused:!0};case"continue":return{...t,isPaused:!1};case"pending":return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:!xi(this.options.networkMode),status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"}}})(this.state),gi.batch((()=>{this.#l.forEach((t=>{t.onMutationUpdate(e)})),this.#p.notify({mutation:this,type:"updated",action:e})}))}};var Ti=class extends vi{constructor(e={}){super(),this.config=e,this.#m=[],this.#g=0}#m;#g;#v;build(e,t,r){const n=new Oi({mutationCache:this,mutationId:++this.#g,options:e.defaultMutationOptions(t),state:r});return this.add(n),n}add(e){this.#m.push(e),this.notify({type:"added",mutation:e})}remove(e){this.#m=this.#m.filter((t=>t!==e)),this.notify({type:"removed",mutation:e})}clear(){gi.batch((()=>{this.#m.forEach((e=>{this.remove(e)}))}))}getAll(){return this.#m}find(e){const t={exact:!0,...e};return this.#m.find((e=>ni(t,e)))}findAll(e={}){return this.#m.filter((t=>ni(e,t)))}notify(e){gi.batch((()=>{this.listeners.forEach((t=>{t(e)}))}))}resumePausedMutations(){return this.#v=(this.#v??Promise.resolve()).then((()=>{const e=this.#m.filter((e=>e.state.isPaused));return gi.batch((()=>e.reduce(((e,t)=>e.then((()=>t.continue().catch(Qn)))),Promise.resolve())))})).then((()=>{this.#v=void 0})),this.#v}};function ji(e){return{onFetch:(t,r)=>{const n=async()=>{const r=t.options,n=t.fetchOptions?.meta?.fetchMore?.direction,i=t.state.data?.pages||[],o=t.state.data?.pageParams||[],a={pages:[],pageParams:[]};let s=!1;const c=t.options.queryFn&&t.options.queryFn!==mi?t.options.queryFn:()=>Promise.reject(new Error(`Missing queryFn: '${t.options.queryHash}'`)),l=async(e,r,n)=>{if(s)return Promise.reject();if(null==r&&e.pages.length)return Promise.resolve(e);const i={queryKey:t.queryKey,pageParam:r,direction:n?"backward":"forward",meta:t.options.meta};var o;o=i,Object.defineProperty(o,"signal",{enumerable:!0,get:()=>(t.signal.aborted?s=!0:t.signal.addEventListener("abort",(()=>{s=!0})),t.signal)});const a=await c(i),{maxPages:l}=t.options,u=n?pi:fi;return{pages:u(e.pages,a,l),pageParams:u(e.pageParams,r,l)}};let u;if(n&&i.length){const e="backward"===n,t={pages:i,pageParams:o},a=(e?Ri:Ci)(r,t);u=await l(t,a,e)}else{u=await l(a,o[0]??r.initialPageParam);const t=e??i.length;for(let e=1;et.options.persister?.(n,{queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},r):t.fetchFn=n}}}function Ci(e,{pages:t,pageParams:r}){const n=t.length-1;return e.getNextPageParam(t[n],t,r[n],r)}function Ri(e,{pages:t,pageParams:r}){return e.getPreviousPageParam?.(t[0],t,r[0],r)}var Ii=i.createContext(void 0),Mi=e=>{const t=i.useContext(Ii);if(e)return e;if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},Li=({client:e,children:t})=>(i.useEffect((()=>(e.mount(),()=>{e.unmount()})),[e]),(0,xn.jsx)(Ii.Provider,{value:e,children:t}));const Ni=new class{#y;#p;#u;#b;#w;#x;#_;#k;constructor(e={}){this.#y=e.queryCache||new Pi,this.#p=e.mutationCache||new Ti,this.#u=e.defaultOptions||{},this.#b=new Map,this.#w=new Map,this.#x=0}mount(){this.#x++,1===this.#x&&(this.#_=yi.subscribe((async e=>{e&&(await this.resumePausedMutations(),this.#y.onFocus())})),this.#k=bi.subscribe((async e=>{e&&(await this.resumePausedMutations(),this.#y.onOnline())})))}unmount(){this.#x--,0===this.#x&&(this.#_?.(),this.#_=void 0,this.#k?.(),this.#k=void 0)}isFetching(e){return this.#y.findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return this.#p.findAll({...e,status:"pending"}).length}getQueryData(e){const t=this.defaultQueryOptions({queryKey:e});return this.#y.get(t.queryHash)?.state.data}ensureQueryData(e){const t=this.getQueryData(e.queryKey);return void 0!==t?Promise.resolve(t):this.fetchQuery(e)}getQueriesData(e){return this.getQueryCache().findAll(e).map((({queryKey:e,state:t})=>[e,t.data]))}setQueryData(e,t,r){const n=this.defaultQueryOptions({queryKey:e}),i=this.#y.get(n.queryHash),o=i?.state.data,a=function(e,t){return"function"===typeof e?e(t):e}(t,o);if(void 0!==a)return this.#y.build(this,n).setData(a,{...r,manual:!0})}setQueriesData(e,t,r){return gi.batch((()=>this.getQueryCache().findAll(e).map((({queryKey:e})=>[e,this.setQueryData(e,t,r)]))))}getQueryState(e){const t=this.defaultQueryOptions({queryKey:e});return this.#y.get(t.queryHash)?.state}removeQueries(e){const t=this.#y;gi.batch((()=>{t.findAll(e).forEach((e=>{t.remove(e)}))}))}resetQueries(e,t){const r=this.#y,n={type:"active",...e};return gi.batch((()=>(r.findAll(e).forEach((e=>{e.reset()})),this.refetchQueries(n,t))))}cancelQueries(e={},t={}){const r={revert:!0,...t},n=gi.batch((()=>this.#y.findAll(e).map((e=>e.cancel(r)))));return Promise.all(n).then(Qn).catch(Qn)}invalidateQueries(e={},t={}){return gi.batch((()=>{if(this.#y.findAll(e).forEach((e=>{e.invalidate()})),"none"===e.refetchType)return Promise.resolve();const r={...e,type:e.refetchType??e.type??"active"};return this.refetchQueries(r,t)}))}refetchQueries(e={},t){const r={...t,cancelRefetch:t?.cancelRefetch??!0},n=gi.batch((()=>this.#y.findAll(e).filter((e=>!e.isDisabled())).map((e=>{let t=e.fetch(void 0,r);return r.throwOnError||(t=t.catch(Qn)),"paused"===e.state.fetchStatus?Promise.resolve():t}))));return Promise.all(n).then(Qn)}fetchQuery(e){const t=this.defaultQueryOptions(e);void 0===t.retry&&(t.retry=!1);const r=this.#y.build(this,t);return r.isStaleByTime(t.staleTime)?r.fetch(t):Promise.resolve(r.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(Qn).catch(Qn)}fetchInfiniteQuery(e){return e.behavior=ji(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(Qn).catch(Qn)}resumePausedMutations(){return bi.isOnline()?this.#p.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#y}getMutationCache(){return this.#p}getDefaultOptions(){return this.#u}setDefaultOptions(e){this.#u=e}setQueryDefaults(e,t){this.#b.set(oi(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...this.#b.values()];let r={};return t.forEach((t=>{ai(e,t.queryKey)&&(r={...r,...t.defaultOptions})})),r}setMutationDefaults(e,t){this.#w.set(oi(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...this.#w.values()];let r={};return t.forEach((t=>{ai(e,t.mutationKey)&&(r={...r,...t.defaultOptions})})),r}defaultQueryOptions(e){if(e._defaulted)return e;const t={...this.#u.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=ii(t.queryKey,t)),void 0===t.refetchOnReconnect&&(t.refetchOnReconnect="always"!==t.networkMode),void 0===t.throwOnError&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),!0!==t.enabled&&t.queryFn===mi&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#u.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#y.clear(),this.#p.clear()}},Di=({children:e})=>(0,xn.jsx)(Li,{client:Ni,children:e});var zi=r(9494),Bi=r(9304),Ui=r(2515),Fi=r.t(Ui,2);let $i=function(e){e()};const Hi=()=>$i,Vi=Symbol.for("react-redux-context"),qi="undefined"!==typeof globalThis?globalThis:{};function Ki(){var e;if(!i.createContext)return{};const t=null!=(e=qi[Vi])?e:qi[Vi]=new Map;let r=t.get(i.createContext);return r||(r=i.createContext(null),t.set(i.createContext,r)),r}const Wi=Ki();function Gi(e=Wi){return function(){return(0,i.useContext)(e)}}const Zi=Gi();let Yi=()=>{throw new Error("uSES not initialized!")};const Xi=(e,t)=>e===t;function Ji(e=Wi){const t=e===Wi?Zi:Gi(e);return function(e,r={}){const{equalityFn:n=Xi,stabilityCheck:o,noopCheck:a}="function"===typeof r?{equalityFn:r}:r;const{store:s,subscription:c,getServerState:l,stabilityCheck:u,noopCheck:d}=t(),h=((0,i.useRef)(!0),(0,i.useCallback)({[e.name]:t=>e(t)}[e.name],[e,u,o])),f=Yi(c.addNestedSub,s.getState,l||s.getState,h,n);return(0,i.useDebugValue)(f),f}}const Qi=Ji();r(9185);const eo={notify(){},get:()=>[]};function to(e,t){let r,n=eo,i=0,o=!1;function a(){l.onStateChange&&l.onStateChange()}function s(){i++,r||(r=t?t.addNestedSub(a):e.subscribe(a),n=function(){const e=Hi();let t=null,r=null;return{clear(){t=null,r=null},notify(){e((()=>{let e=t;for(;e;)e.callback(),e=e.next}))},get(){let e=[],r=t;for(;r;)e.push(r),r=r.next;return e},subscribe(e){let n=!0,i=r={callback:e,next:null,prev:r};return i.prev?i.prev.next=i:t=i,function(){n&&null!==t&&(n=!1,i.next?i.next.prev=i.prev:r=i.prev,i.prev?i.prev.next=i.next:t=i.next)}}}}())}function c(){i--,r&&0===i&&(r(),r=void 0,n.clear(),n=eo)}const l={addNestedSub:function(e){s();const t=n.subscribe(e);let r=!1;return()=>{r||(r=!0,t(),c())}},notifyNestedSubs:function(){n.notify()},handleChangeWrapper:a,isSubscribed:function(){return o},trySubscribe:function(){o||(o=!0,s())},tryUnsubscribe:function(){o&&(o=!1,c())},getListeners:()=>n};return l}const ro=!("undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement)?i.useLayoutEffect:i.useEffect;let no=null;const io=function({store:e,context:t,children:r,serverState:n,stabilityCheck:o="once",noopCheck:a="once"}){const s=i.useMemo((()=>{const t=to(e);return{store:e,subscription:t,getServerState:n?()=>n:void 0,stabilityCheck:o,noopCheck:a}}),[e,n,o,a]),c=i.useMemo((()=>e.getState()),[e]);ro((()=>{const{subscription:t}=s;return t.onStateChange=t.notifyNestedSubs,t.trySubscribe(),c!==e.getState()&&t.notifyNestedSubs(),()=>{t.tryUnsubscribe(),t.onStateChange=void 0}}),[s,c]);const l=t||Wi;return i.createElement(l.Provider,{value:s},r)};function oo(e=Wi){const t=e===Wi?Zi:Gi(e);return function(){const{store:e}=t();return e}}const ao=oo();function so(e=Wi){const t=e===Wi?ao:oo(e);return function(){return t().dispatch}}const co=so();var lo;function uo(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n3?t.i-4:t.i:Array.isArray(e)?1:wo(e)?2:xo(e)?3:0}function go(e,t){return 2===mo(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function vo(e,t){return 2===mo(e)?e.get(t):e[t]}function yo(e,t,r){var n=mo(e);2===n?e.set(t,r):3===n?e.add(r):e[t]=r}function bo(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function wo(e){return Yo&&e instanceof Map}function xo(e){return Xo&&e instanceof Set}function _o(e){return e.o||e.t}function ko(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=ia(e);delete t[ta];for(var r=na(t),n=0;n1&&(e.set=e.add=e.clear=e.delete=Eo),Object.freeze(e),t&&po(e,(function(e,t){return So(t,!0)}),!0)),e}function Eo(){uo(2)}function Ao(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function Po(e){var t=oa[e];return t||uo(18,e),t}function Oo(e,t){oa[e]||(oa[e]=t)}function To(){return Go}function jo(e,t){t&&(Po("Patches"),e.u=[],e.s=[],e.v=t)}function Co(e){Ro(e),e.p.forEach(Mo),e.p=null}function Ro(e){e===Go&&(Go=e.l)}function Io(e){return Go={p:[],l:Go,h:e,m:!0,_:0}}function Mo(e){var t=e[ta];0===t.i||1===t.i?t.j():t.g=!0}function Lo(e,t){t._=t.p.length;var r=t.p[0],n=void 0!==e&&e!==r;return t.h.O||Po("ES5").S(t,e,n),n?(r[ta].P&&(Co(t),uo(4)),fo(e)&&(e=No(t,e),t.l||zo(t,e)),t.u&&Po("Patches").M(r[ta].t,e,t.u,t.s)):e=No(t,r,[]),Co(t),t.u&&t.v(t.u,t.s),e!==Qo?e:void 0}function No(e,t,r){if(Ao(t))return t;var n=t[ta];if(!n)return po(t,(function(i,o){return Do(e,n,t,i,o,r)}),!0),t;if(n.A!==e)return t;if(!n.P)return zo(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var i=4===n.i||5===n.i?n.o=ko(n.k):n.o,o=i,a=!1;3===n.i&&(o=new Set(i),i.clear(),a=!0),po(o,(function(t,o){return Do(e,n,i,t,o,r,a)})),zo(e,i,!1),r&&e.u&&Po("Patches").N(n,r,e.u,e.s)}return n.o}function Do(e,t,r,n,i,o,a){if(ho(i)){var s=No(e,i,o&&t&&3!==t.i&&!go(t.R,n)?o.concat(n):void 0);if(yo(r,n,s),!ho(s))return;e.m=!1}else a&&r.add(i);if(fo(i)&&!Ao(i)){if(!e.h.D&&e._<1)return;No(e,i),t&&t.A.l||zo(e,i)}}function zo(e,t,r){void 0===r&&(r=!1),!e.l&&e.h.D&&e.m&&So(t,r)}function Bo(e,t){var r=e[ta];return(r?_o(r):e)[t]}function Uo(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function Fo(e){e.P||(e.P=!0,e.l&&Fo(e.l))}function $o(e){e.o||(e.o=ko(e.t))}function Ho(e,t,r){var n=wo(t)?Po("MapSet").F(t,r):xo(t)?Po("MapSet").T(t,r):e.O?function(e,t){var r=Array.isArray(e),n={i:r?1:0,A:t?t.A:To(),P:!1,I:!1,R:{},l:t,t:e,k:null,o:null,j:null,C:!1},i=n,o=aa;r&&(i=[n],o=sa);var a=Proxy.revocable(i,o),s=a.revoke,c=a.proxy;return n.k=c,n.j=s,c}(t,r):Po("ES5").J(t,r);return(r?r.A:To()).p.push(n),n}function Vo(e){return ho(e)||uo(22,e),function e(t){if(!fo(t))return t;var r,n=t[ta],i=mo(t);if(n){if(!n.P&&(n.i<4||!Po("ES5").K(n)))return n.t;n.I=!0,r=qo(t,i),n.I=!1}else r=qo(t,i);return po(r,(function(t,i){n&&vo(n.t,t)===i||yo(r,t,e(i))})),3===i?new Set(r):r}(e)}function qo(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return ko(e)}function Ko(){function e(e,t){var r=i[e];return r?r.enumerable=t:i[e]=r={configurable:!0,enumerable:t,get:function(){var t=this[ta];return aa.get(t,e)},set:function(t){var r=this[ta];aa.set(r,e,t)}},r}function t(e){for(var t=e.length-1;t>=0;t--){var i=e[t][ta];if(!i.P)switch(i.i){case 5:n(i)&&Fo(i);break;case 4:r(i)&&Fo(i)}}}function r(e){for(var t=e.t,r=e.k,n=na(r),i=n.length-1;i>=0;i--){var o=n[i];if(o!==ta){var a=t[o];if(void 0===a&&!go(t,o))return!0;var s=r[o],c=s&&s[ta];if(c?c.t!==a:!bo(s,a))return!0}}var l=!!t[ta];return n.length!==na(t).length+(l?0:1)}function n(e){var t=e.k;if(t.length!==e.t.length)return!0;var r=Object.getOwnPropertyDescriptor(t,t.length-1);if(r&&!r.get)return!0;for(var n=0;n{Yi=e})(Bi.useSyncExternalStoreWithSelector),(e=>{no=e})(zi.useSyncExternalStore),lo=Ui.unstable_batchedUpdates,$i=lo;var Wo,Go,Zo="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),Yo="undefined"!=typeof Map,Xo="undefined"!=typeof Set,Jo="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,Qo=Zo?Symbol.for("immer-nothing"):((Wo={})["immer-nothing"]=!0,Wo),ea=Zo?Symbol.for("immer-draftable"):"__$immer_draftable",ta=Zo?Symbol.for("immer-state"):"__$immer_state",ra=("undefined"!=typeof Symbol&&Symbol.iterator,""+Object.prototype.constructor),na="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,ia=Object.getOwnPropertyDescriptors||function(e){var t={};return na(e).forEach((function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)})),t},oa={},aa={get:function(e,t){if(t===ta)return e;var r=_o(e);if(!go(r,t))return function(e,t,r){var n,i=Uo(t,r);return i?"value"in i?i.value:null===(n=i.get)||void 0===n?void 0:n.call(e.k):void 0}(e,r,t);var n=r[t];return e.I||!fo(n)?n:n===Bo(e.t,t)?($o(e),e.o[t]=Ho(e.A.h,n,e)):n},has:function(e,t){return t in _o(e)},ownKeys:function(e){return Reflect.ownKeys(_o(e))},set:function(e,t,r){var n=Uo(_o(e),t);if(null==n?void 0:n.set)return n.set.call(e.k,r),!0;if(!e.P){var i=Bo(_o(e),t),o=null==i?void 0:i[ta];if(o&&o.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(bo(r,i)&&(void 0!==r||go(e.t,t)))return!0;$o(e),Fo(e)}return e.o[t]===r&&(void 0!==r||t in e.o)||Number.isNaN(r)&&Number.isNaN(e.o[t])||(e.o[t]=r,e.R[t]=!0),!0},deleteProperty:function(e,t){return void 0!==Bo(e.t,t)||t in e.t?(e.R[t]=!1,$o(e),Fo(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=_o(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n?{writable:!0,configurable:1!==e.i||"length"!==t,enumerable:n.enumerable,value:r[t]}:n},defineProperty:function(){uo(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){uo(12)}},sa={};po(aa,(function(e,t){sa[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}})),sa.deleteProperty=function(e,t){return sa.set.call(this,e,t,void 0)},sa.set=function(e,t,r){return aa.set.call(this,e[0],t,r,e[0])};var ca=function(){function e(e){var t=this;this.O=Jo,this.D=!0,this.produce=function(e,r,n){if("function"==typeof e&&"function"!=typeof r){var i=r;r=e;var o=t;return function(e){var t=this;void 0===e&&(e=i);for(var n=arguments.length,a=Array(n>1?n-1:0),s=1;s1?n-1:0),o=1;o=0;r--){var n=t[r];if(0===n.path.length&&"replace"===n.op){e=n.value;break}}r>-1&&(t=t.slice(r+1));var i=Po("Patches").$;return ho(e)?i(e,t):this.produce(e,(function(e){return i(e,t)}))},e}(),la=new ca,ua=la.produce;la.produceWithPatches.bind(la),la.setAutoFreeze.bind(la),la.setUseProxies.bind(la),la.applyPatches.bind(la),la.createDraft.bind(la),la.finishDraft.bind(la);const da=ua;function ha(e){return ha="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ha(e)}function fa(e){var t=function(e,t){if("object"!==ha(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==ha(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===ha(t)?t:String(t)}function pa(e,t,r){return(t=fa(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ma(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ga(e){for(var t=1;t0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function Ps(e,t){var r=void 0!==e.version?e.version:-1,n=(e.debug,void 0===e.stateReconciler?vs:e.stateReconciler),i=e.getStoredState||ws,o=void 0!==e.timeout?e.timeout:5e3,a=null,s=!1,c=!0,l=function(e){return e._persist.rehydrated&&a&&!c&&a.update(e),e};return function(u,d){var h=u||{},f=h._persist,p=As(h,["_persist"]);if(d.type===ds){var m=!1,g=function(t,r){m||(d.rehydrate(e.key,t,r),m=!0)};if(o&&setTimeout((function(){!m&&g(void 0,new Error('redux-persist: persist timed out for persist key "'.concat(e.key,'"')))}),o),c=!1,a||(a=ys(e)),f)return Ss({},t(p,d),{_persist:f});if("function"!==typeof d.rehydrate||"function"!==typeof d.register)throw new Error("redux-persist: either rehydrate or register is not a function on the PERSIST action. This can happen if the action is being replayed. This is an unexplored use case, please open an issue and we will figure out a resolution.");return d.register(e.key),i(e).then((function(t){var n=e.migrate||function(e,t){return Promise.resolve(e)};n(t,r).then((function(e){g(e)}),(function(e){g(void 0,e)}))}),(function(e){g(void 0,e)})),Ss({},t(p,d),{_persist:{version:r,rehydrated:!1}})}if(d.type===hs)return s=!0,d.result(function(e){var t=e.storage,r="".concat(void 0!==e.keyPrefix?e.keyPrefix:ss).concat(e.key);return t.removeItem(r,_s)}(e)),Ss({},t(p,d),{_persist:f});if(d.type===cs)return d.result(a&&a.flush()),Ss({},t(p,d),{_persist:f});if(d.type===us)c=!0;else if(d.type===ls){if(s)return Ss({},p,{_persist:Ss({},f,{rehydrated:!0})});if(d.key===e.key){var v=t(p,d),y=d.payload,b=Ss({},!1!==n&&void 0!==y?n(y,u,v,e):v,{_persist:Ss({},f,{rehydrated:!0})});return l(b)}}if(!f)return t(u,d);var w=t(p,d);return w===p?u:l(Ss({},w,{_persist:f}))}}function Os(e){return function(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:Rs,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case fs:return js({},e,{registry:[].concat(Os(e.registry),[t.key])});case ls:var r=e.registry.indexOf(t.key),n=Os(e.registry);return n.splice(r,1),js({},e,{registry:n,bootstrapped:0===n.length});default:return e}};function Ms(e,t){(t||{}).debug;return function(t,r){if(!t)return Promise.resolve(void 0);var n=t._persist&&void 0!==t._persist.version?t._persist.version:-1;if(n===r)return Promise.resolve(t);if(n>r)return Promise.resolve(t);var i=Object.keys(e).map((function(e){return parseInt(e)})).filter((function(e){return r>=e&&e>n})).sort((function(e,t){return e-t}));try{var o=i.reduce((function(t,r){return e[r](t)}),t);return Promise.resolve(o)}catch(kne){return Promise.reject(kne)}}}var Ls=r(364),Ns=r(1841);const Ds={html:"",seen:!0},zs=Ya({name:"announcements",initialState:Ds,reducers:{reset:()=>Ds,setCurrent:(e,{payload:t})=>{t!==e.html&&(e.seen=!1),e.html=t},setSeen:e=>{e.seen=!0}}}),Bs={0:e=>ua(e,(e=>{e.multisigs.labelsMap={}})),1:e=>ua(e,(e=>{e.announcement=Ds})),2:Ns.identity},Us={0:Ns.identity,1:Ns.identity,2:e=>ua(e,(e=>{e.items.forEach((e=>{"secret_key"===e.type&&(e.curve="ed25519")}))}))};var Fs=r(9673),$s=r(5166),Hs=r(1442),Vs=r(7283),qs=r.n(Vs),Ks=r(2946),Ws=r.n(Ks);class Gs extends Error{}class Zs extends Gs{}class Ys extends Gs{}class Xs extends Gs{}class Js extends Gs{}class Qs extends Gs{}class ec extends Zs{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidAddressError",this.message=`Invalid address "${e}"`,this.message+=t?` ${t}.`:"."}}class tc extends Zs{constructor(e,t){super(),this.blockHash=e,this.errorDetail=t,this.name="InvalidBlockHashError",this.message=`Invalid block hash "${e}"`,this.message+=t?` ${t}.`:"."}}class rc extends Zs{constructor(e){super(),this.amount=e,this.name="InvalidAmountError",this.message=`Invalid amount "${e}"`}}class nc extends Zs{constructor(e,t){super(),this.derivationPath=e,this.errorDetail=t,this.name="InvalidDerivationPathError",this.message=`Invalid derivation path "${e}"`,this.message+=t?` ${t}.`:"."}}class ic extends Zs{constructor(e,t){super(),this.hexString=e,this.errorDetail=t,this.name="InvalidHexStringError",this.message=`Invalid hex string "${e}"`,this.message+=t?` ${t}.`:"."}}class oc extends Zs{constructor(e,t){super(),this.msg=e,this.errorDetail=t,this.name="InvalidMessageError",this.message=`Invalid message "${e}"`,this.message+=t?` ${t}.`:"."}}class ac extends Zs{constructor(e,t,r,n){super(),this.viewName=e,this.sigs=t,this.args=r,this.cause=n,this.name="InvalidViewParameterError",this.message=`Invalid view arguments ${JSON.stringify(r)} received for name "${e}" expecting one of the following signatures ${JSON.stringify(t)}.`}}class sc extends Zs{constructor(e){super(),this.errorDetail=e,this.name="InvalidKeyError",this.message="Invalid private key",this.message+=e?` ${e}.`:"."}}class cc extends Zs{constructor(e,t){super(),this.publicKey=e,this.errorDetail=t,this.name="InvalidPublicKeyError",this.message=`Invalid public key "${e}"`,this.message+=t?` ${t}.`:"."}}class lc extends Zs{constructor(e,t){super(),this.contractAddress=e,this.errorDetail=t,this.name="InvalidContractAddressError",this.message=`Invalid contract address "${e}"`,this.message+=t?` ${t}.`:"."}}class uc extends Zs{constructor(e,t){super(),this.chainId=e,this.errorDetail=t,this.name="InvalidChainIdError",this.message=`Invalid chain id "${e}"`,this.message+=t?` ${t}.`:"."}}class dc extends Zs{constructor(e,t){super(),this.keyHash=e,this.errorDetail=t,this.name="InvalidKeyHashError",this.message=`Invalid public key hash "${e}"`,this.message+=t?` ${t}.`:"."}}class hc extends Zs{constructor(e,t){super(),this.operationHash=e,this.errorDetail=t,this.name="InvalidOperationHashError",this.message=`Invalid operation hash "${e}"`,this.message+=t?` ${t}.`:"."}}class fc extends Zs{constructor(e,t){super(),this.operationKind=e,this.errorDetail=t,this.name="InvalidOperationKindError",this.message=`Invalid operation kind "${e}"`,this.message+=t?` ${t}.`:"."}}class pc extends Js{constructor(e){super(),this.message=e,this.name="DeprecationError"}}class mc extends Js{constructor(e){super(),this.message=e,this.name="ProhibitedActionError"}}class gc extends Gs{constructor(e,t){super(),this.pkh=e,this.cause=t,this.name="PublicKeyNotFoundError",this.message=`Public key not found of this address "${e}" in either wallet or contract API.`}}var vc=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,yc=Math.ceil,bc=Math.floor,wc="[BigNumber Error] ",xc=wc+"Number primitive has more than 15 significant digits: ",_c=1e14,kc=14,Sc=9007199254740991,Ec=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],Ac=1e7,Pc=1e9;function Oc(e){var t=0|e;return e>0||e===t?t:t-1}function Tc(e){for(var t,r,n=1,i=e.length,o=e[0]+"";nl^r?1:-1;for(s=(c=i.length)<(l=o.length)?c:l,a=0;ao[a]^r?1:-1;return c==l?0:c>l^r?1:-1}function Cc(e,t,r,n){if(er||e!==bc(e))throw Error(wc+(n||"Argument")+("number"==typeof e?er?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function Rc(e){var t=e.c.length-1;return Oc(e.e/kc)==t&&e.c[t]%2!=0}function Ic(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function Mc(e,t,r){var n,i;if(t<0){for(i=r+".";++t;i+=r);e=i+e}else if(++t>(n=e.length)){for(i=r,t-=n;--t;i+=r);e+=i}else th?g.c=g.e=null:e.e=10;u/=10,l++);return void(l>h?g.c=g.e=null:(g.e=l,g.c=[e]))}m=String(e)}else{if(!vc.test(m=String(e)))return i(g,m,f);g.s=45==m.charCodeAt(0)?(m=m.slice(1),-1):1}(l=m.indexOf("."))>-1&&(m=m.replace(".","")),(u=m.search(/e/i))>0?(l<0&&(l=u),l+=+m.slice(u+1),m=m.substring(0,u)):l<0&&(l=m.length)}else{if(Cc(t,2,v.length,"Base"),10==t&&y)return k(g=new b(e),s+g.e+1,c);if(m=String(e),f="number"==typeof e){if(0*e!=0)return i(g,m,f,t);if(g.s=1/e<0?(m=m.slice(1),-1):1,b.DEBUG&&m.replace(/^0\.0*|\./,"").length>15)throw Error(xc+e)}else g.s=45===m.charCodeAt(0)?(m=m.slice(1),-1):1;for(r=v.slice(0,t),l=u=0,p=m.length;ul){l=p;continue}}else if(!a&&(m==m.toUpperCase()&&(m=m.toLowerCase())||m==m.toLowerCase()&&(m=m.toUpperCase()))){a=!0,u=-1,l=0;continue}return i(g,String(e),f,t)}f=!1,(l=(m=n(m,t,10,g.s)).indexOf("."))>-1?m=m.replace(".",""):l=m.length}for(u=0;48===m.charCodeAt(u);u++);for(p=m.length;48===m.charCodeAt(--p););if(m=m.slice(u,++p)){if(p-=u,f&&b.DEBUG&&p>15&&(e>Sc||e!==bc(e)))throw Error(xc+g.s*e);if((l=l-u-1)>h)g.c=g.e=null;else if(l=u)?Ic(d,a):Mc(d,a,"0");else if(o=(e=k(new b(e),t,r)).e,s=(d=Tc(e.c)).length,1==n||2==n&&(t<=o||o<=l)){for(;ss){if(--t>0)for(d+=".";t--;d+="0");}else if((t+=o-s)>0)for(o+1==s&&(d+=".");t--;d+="0");return e.s<0&&i?"-"+d:d}function x(e,t){for(var r,n,i=1,o=new b(e[0]);i=10;i/=10,n++);return(r=n+r*kc-1)>h?e.c=e.e=null:r=10;s/=10,i++);if((o=t-i)<0)o+=kc,a=t,c=f[l=0],u=bc(c/p[i-a-1]%10);else if((l=yc((o+1)/kc))>=f.length){if(!n)break e;for(;f.length<=l;f.push(0));c=u=0,i=1,a=(o%=kc)-kc+1}else{for(c=s=f[l],i=1;s>=10;s/=10,i++);u=(a=(o%=kc)-kc+i)<0?0:bc(c/p[i-a-1]%10)}if(n=n||t<0||null!=f[l+1]||(a<0?c:c%p[i-a-1]),n=r<4?(u||n)&&(0==r||r==(e.s<0?3:2)):u>5||5==u&&(4==r||n||6==r&&(o>0?a>0?c/p[i-a]:0:f[l-1])%10&1||r==(e.s<0?8:7)),t<1||!f[0])return f.length=0,n?(t-=e.e+1,f[0]=p[(kc-t%kc)%kc],e.e=-t||0):f[0]=e.e=0,e;if(0==o?(f.length=l,s=1,l--):(f.length=l+1,s=p[kc-o],f[l]=a>0?bc(c/p[i-a]%p[a])*s:0),n)for(;;){if(0==l){for(o=1,a=f[0];a>=10;a/=10,o++);for(a=f[0]+=s,s=1;a>=10;a/=10,s++);o!=s&&(e.e++,f[0]==_c&&(f[0]=1));break}if(f[l]+=s,f[l]!=_c)break;f[l--]=0,s=1}for(o=f.length;0===f[--o];f.pop());}e.e>h?e.c=e.e=null:e.e=u?Ic(t,r):Mc(t,r,"0"),e.s<0?"-"+t:t)}return b.clone=e,b.ROUND_UP=0,b.ROUND_DOWN=1,b.ROUND_CEIL=2,b.ROUND_FLOOR=3,b.ROUND_HALF_UP=4,b.ROUND_HALF_DOWN=5,b.ROUND_HALF_EVEN=6,b.ROUND_HALF_CEIL=7,b.ROUND_HALF_FLOOR=8,b.EUCLID=9,b.config=b.set=function(e){var t,r;if(null!=e){if("object"!=typeof e)throw Error(wc+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(Cc(r=e[t],0,Pc,t),s=r),e.hasOwnProperty(t="ROUNDING_MODE")&&(Cc(r=e[t],0,8,t),c=r),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((r=e[t])&&r.pop?(Cc(r[0],-Pc,0,t),Cc(r[1],0,Pc,t),l=r[0],u=r[1]):(Cc(r,-Pc,Pc,t),l=-(u=r<0?-r:r))),e.hasOwnProperty(t="RANGE"))if((r=e[t])&&r.pop)Cc(r[0],-Pc,-1,t),Cc(r[1],1,Pc,t),d=r[0],h=r[1];else{if(Cc(r,-Pc,Pc,t),!r)throw Error(wc+t+" cannot be zero: "+r);d=-(h=r<0?-r:r)}if(e.hasOwnProperty(t="CRYPTO")){if((r=e[t])!==!!r)throw Error(wc+t+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw f=!r,Error(wc+"crypto unavailable");f=r}else f=r}if(e.hasOwnProperty(t="MODULO_MODE")&&(Cc(r=e[t],0,9,t),p=r),e.hasOwnProperty(t="POW_PRECISION")&&(Cc(r=e[t],0,Pc,t),m=r),e.hasOwnProperty(t="FORMAT")){if("object"!=typeof(r=e[t]))throw Error(wc+t+" not an object: "+r);g=r}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(r=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(wc+t+" invalid: "+r);y="0123456789"==r.slice(0,10),v=r}}return{DECIMAL_PLACES:s,ROUNDING_MODE:c,EXPONENTIAL_AT:[l,u],RANGE:[d,h],CRYPTO:f,MODULO_MODE:p,POW_PRECISION:m,FORMAT:g,ALPHABET:v}},b.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!b.DEBUG)return!0;var t,r,n=e.c,i=e.e,o=e.s;e:if("[object Array]"=={}.toString.call(n)){if((1===o||-1===o)&&i>=-Pc&&i<=Pc&&i===bc(i)){if(0===n[0]){if(0===i&&1===n.length)return!0;break e}if((t=(i+1)%kc)<1&&(t+=kc),String(n[0]).length==t){for(t=0;t=_c||r!==bc(r))break e;if(0!==r)return!0}}}else if(null===n&&null===i&&(null===o||1===o||-1===o))return!0;throw Error(wc+"Invalid BigNumber: "+e)},b.maximum=b.max=function(){return x(arguments,-1)},b.minimum=b.min=function(){return x(arguments,1)},b.random=function(){var e=9007199254740992,t=Math.random()*e&2097151?function(){return bc(Math.random()*e)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)};return function(e){var r,n,i,o,c,l=0,u=[],d=new b(a);if(null==e?e=s:Cc(e,0,Pc),o=yc(e/kc),f)if(crypto.getRandomValues){for(r=crypto.getRandomValues(new Uint32Array(o*=2));l>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),r[l]=n[0],r[l+1]=n[1]):(u.push(c%1e14),l+=2);l=o/2}else{if(!crypto.randomBytes)throw f=!1,Error(wc+"crypto unavailable");for(r=crypto.randomBytes(o*=7);l=9e15?crypto.randomBytes(7).copy(r,l):(u.push(c%1e14),l+=7);l=o/7}if(!f)for(;l=10;c/=10,l++);lr-1&&(null==a[i+1]&&(a[i+1]=0),a[i+1]+=a[i]/r|0,a[i]%=r)}return a.reverse()}return function(n,i,o,a,l){var u,d,h,f,p,g,y,w,x=n.indexOf("."),_=s,k=c;for(x>=0&&(f=m,m=0,n=n.replace(".",""),g=(w=new b(i)).pow(n.length-x),m=f,w.c=t(Mc(Tc(g.c),g.e,"0"),10,o,e),w.e=w.c.length),h=f=(y=t(n,i,o,l?(u=v,e):(u=e,v))).length;0==y[--f];y.pop());if(!y[0])return u.charAt(0);if(x<0?--h:(g.c=y,g.e=h,g.s=a,y=(g=r(g,w,_,k,o)).c,p=g.r,h=g.e),x=y[d=h+_+1],f=o/2,p=p||d<0||null!=y[d+1],p=k<4?(null!=x||p)&&(0==k||k==(g.s<0?3:2)):x>f||x==f&&(4==k||p||6==k&&1&y[d-1]||k==(g.s<0?8:7)),d<1||!y[0])n=p?Mc(u.charAt(1),-_,u.charAt(0)):u.charAt(0);else{if(y.length=d,p)for(--o;++y[--d]>o;)y[d]=0,d||(++h,y=[1].concat(y));for(f=y.length;!y[--f];);for(x=0,n="";x<=f;n+=u.charAt(y[x++]));n=Mc(n,h,u.charAt(0))}return n}}(),r=function(){function e(e,t,r){var n,i,o,a,s=0,c=e.length,l=t%Ac,u=t/Ac|0;for(e=e.slice();c--;)s=((i=l*(o=e[c]%Ac)+(n=u*o+(a=e[c]/Ac|0)*l)%Ac*Ac+s)/r|0)+(n/Ac|0)+u*a,e[c]=i%r;return s&&(e=[s].concat(e)),e}function t(e,t,r,n){var i,o;if(r!=n)o=r>n?1:-1;else for(i=o=0;it[i]?1:-1;break}return o}function r(e,t,r,n){for(var i=0;r--;)e[r]-=i,i=e[r]1;e.splice(0,1));}return function(n,i,o,a,s){var c,l,u,d,h,f,p,m,g,v,y,w,x,_,S,E,A,P=n.s==i.s?1:-1,O=n.c,T=i.c;if(!O||!O[0]||!T||!T[0])return new b(n.s&&i.s&&(O?!T||O[0]!=T[0]:T)?O&&0==O[0]||!T?0*P:P/0:NaN);for(g=(m=new b(P)).c=[],P=o+(l=n.e-i.e)+1,s||(s=_c,l=Oc(n.e/kc)-Oc(i.e/kc),P=P/kc|0),u=0;T[u]==(O[u]||0);u++);if(T[u]>(O[u]||0)&&l--,P<0)g.push(1),d=!0;else{for(_=O.length,E=T.length,u=0,P+=2,(h=bc(s/(T[0]+1)))>1&&(T=e(T,h,s),O=e(O,h,s),E=T.length,_=O.length),x=E,y=(v=O.slice(0,E)).length;y=s/2&&S++;do{if(h=0,(c=t(T,v,E,y))<0){if(w=v[0],E!=y&&(w=w*s+(v[1]||0)),(h=bc(w/S))>1)for(h>=s&&(h=s-1),p=(f=e(T,h,s)).length,y=v.length;1==t(f,v,p,y);)h--,r(f,E=10;P/=10,u++);k(m,o+(m.e=u+l*kc-1)+1,a,d)}else m.e=l,m.r=+d;return m}}(),i=function(){var e=/^(-?)0([xbo])(?=\w[\w.]*$)/i,t=/^([^.]+)\.$/,r=/^\.([^.]+)$/,n=/^-?(Infinity|NaN)$/,i=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(o,a,s,c){var l,u=s?a:a.replace(i,"");if(n.test(u))o.s=isNaN(u)?null:u<0?-1:1;else{if(!s&&(u=u.replace(e,(function(e,t,r){return l="x"==(r=r.toLowerCase())?16:"b"==r?2:8,c&&c!=l?e:t})),c&&(l=c,u=u.replace(t,"$1").replace(r,"0.$1")),a!=u))return new b(u,l);if(b.DEBUG)throw Error(wc+"Not a"+(c?" base "+c:"")+" number: "+a);o.s=null}o.c=o.e=null}}(),o.absoluteValue=o.abs=function(){var e=new b(this);return e.s<0&&(e.s=1),e},o.comparedTo=function(e,t){return jc(this,new b(e,t))},o.decimalPlaces=o.dp=function(e,t){var r,n,i,o=this;if(null!=e)return Cc(e,0,Pc),null==t?t=c:Cc(t,0,8),k(new b(o),e+o.e+1,t);if(!(r=o.c))return null;if(n=((i=r.length-1)-Oc(this.e/kc))*kc,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},o.dividedBy=o.div=function(e,t){return r(this,new b(e,t),s,c)},o.dividedToIntegerBy=o.idiv=function(e,t){return r(this,new b(e,t),0,1)},o.exponentiatedBy=o.pow=function(e,t){var r,n,i,o,s,l,u,d,h=this;if((e=new b(e)).c&&!e.isInteger())throw Error(wc+"Exponent not an integer: "+S(e));if(null!=t&&(t=new b(t)),s=e.e>14,!h.c||!h.c[0]||1==h.c[0]&&!h.e&&1==h.c.length||!e.c||!e.c[0])return d=new b(Math.pow(+S(h),s?e.s*(2-Rc(e)):+S(e))),t?d.mod(t):d;if(l=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new b(NaN);(n=!l&&h.isInteger()&&t.isInteger())&&(h=h.mod(t))}else{if(e.e>9&&(h.e>0||h.e<-1||(0==h.e?h.c[0]>1||s&&h.c[1]>=24e7:h.c[0]<8e13||s&&h.c[0]<=9999975e7)))return o=h.s<0&&Rc(e)?-0:0,h.e>-1&&(o=1/o),new b(l?1/o:o);m&&(o=yc(m/kc+2))}for(s?(r=new b(.5),l&&(e.s=1),u=Rc(e)):u=(i=Math.abs(+S(e)))%2,d=new b(a);;){if(u){if(!(d=d.times(h)).c)break;o?d.c.length>o&&(d.c.length=o):n&&(d=d.mod(t))}if(i){if(0===(i=bc(i/2)))break;u=i%2}else if(k(e=e.times(r),e.e+1,1),e.e>14)u=Rc(e);else{if(0===(i=+S(e)))break;u=i%2}h=h.times(h),o?h.c&&h.c.length>o&&(h.c.length=o):n&&(h=h.mod(t))}return n?d:(l&&(d=a.div(d)),t?d.mod(t):o?k(d,m,c,undefined):d)},o.integerValue=function(e){var t=new b(this);return null==e?e=c:Cc(e,0,8),k(t,t.e+1,e)},o.isEqualTo=o.eq=function(e,t){return 0===jc(this,new b(e,t))},o.isFinite=function(){return!!this.c},o.isGreaterThan=o.gt=function(e,t){return jc(this,new b(e,t))>0},o.isGreaterThanOrEqualTo=o.gte=function(e,t){return 1===(t=jc(this,new b(e,t)))||0===t},o.isInteger=function(){return!!this.c&&Oc(this.e/kc)>this.c.length-2},o.isLessThan=o.lt=function(e,t){return jc(this,new b(e,t))<0},o.isLessThanOrEqualTo=o.lte=function(e,t){return-1===(t=jc(this,new b(e,t)))||0===t},o.isNaN=function(){return!this.s},o.isNegative=function(){return this.s<0},o.isPositive=function(){return this.s>0},o.isZero=function(){return!!this.c&&0==this.c[0]},o.minus=function(e,t){var r,n,i,o,a=this,s=a.s;if(t=(e=new b(e,t)).s,!s||!t)return new b(NaN);if(s!=t)return e.s=-t,a.plus(e);var l=a.e/kc,u=e.e/kc,d=a.c,h=e.c;if(!l||!u){if(!d||!h)return d?(e.s=-t,e):new b(h?a:NaN);if(!d[0]||!h[0])return h[0]?(e.s=-t,e):new b(d[0]?a:3==c?-0:0)}if(l=Oc(l),u=Oc(u),d=d.slice(),s=l-u){for((o=s<0)?(s=-s,i=d):(u=l,i=h),i.reverse(),t=s;t--;i.push(0));i.reverse()}else for(n=(o=(s=d.length)<(t=h.length))?s:t,s=t=0;t0)for(;t--;d[r++]=0);for(t=_c-1;n>s;){if(d[--n]=0;){for(r=0,h=w[i]%g,f=w[i]/g|0,o=i+(a=c);o>i;)r=((l=h*(l=y[--a]%g)+(s=f*l+(u=y[a]/g|0)*h)%g*g+p[o]+r)/m|0)+(s/g|0)+f*u,p[o--]=l%m;p[o]=r}return r?++n:p.splice(0,1),_(e,p,n)},o.negated=function(){var e=new b(this);return e.s=-e.s||null,e},o.plus=function(e,t){var r,n=this,i=n.s;if(t=(e=new b(e,t)).s,!i||!t)return new b(NaN);if(i!=t)return e.s=-t,n.minus(e);var o=n.e/kc,a=e.e/kc,s=n.c,c=e.c;if(!o||!a){if(!s||!c)return new b(i/0);if(!s[0]||!c[0])return c[0]?e:new b(s[0]?n:0*i)}if(o=Oc(o),a=Oc(a),s=s.slice(),i=o-a){for(i>0?(a=o,r=c):(i=-i,r=s),r.reverse();i--;r.push(0));r.reverse()}for((i=s.length)-(t=c.length)<0&&(r=c,c=s,s=r,t=i),i=0;t;)i=(s[--t]=s[t]+c[t]+i)/_c|0,s[t]=_c===s[t]?0:s[t]%_c;return i&&(s=[i].concat(s),++a),_(e,s,a)},o.precision=o.sd=function(e,t){var r,n,i,o=this;if(null!=e&&e!==!!e)return Cc(e,1,Pc),null==t?t=c:Cc(t,0,8),k(new b(o),e,t);if(!(r=o.c))return null;if(n=(i=r.length-1)*kc+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return e&&o.e+1>n&&(n=o.e+1),n},o.shiftedBy=function(e){return Cc(e,-9007199254740991,Sc),this.times("1e"+e)},o.squareRoot=o.sqrt=function(){var e,t,n,i,o,a=this,l=a.c,u=a.s,d=a.e,h=s+4,f=new b("0.5");if(1!==u||!l||!l[0])return new b(!u||u<0&&(!l||l[0])?NaN:l?a:1/0);if(0==(u=Math.sqrt(+S(a)))||u==1/0?(((t=Tc(l)).length+d)%2==0&&(t+="0"),u=Math.sqrt(+t),d=Oc((d+1)/2)-(d<0||d%2),n=new b(t=u==1/0?"5e"+d:(t=u.toExponential()).slice(0,t.indexOf("e")+1)+d)):n=new b(u+""),n.c[0])for((u=(d=n.e)+h)<3&&(u=0);;)if(o=n,n=f.times(o.plus(r(a,o,h,1))),Tc(o.c).slice(0,u)===(t=Tc(n.c)).slice(0,u)){if(n.e0&&p>0){for(o=p%s||s,u=f.substr(0,o);o0&&(u+=l+f.slice(o)),h&&(u="-"+u)}n=d?u+(r.decimalSeparator||"")+((c=+r.fractionGroupSize)?d.replace(new RegExp("\\d{"+c+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):d):u}return(r.prefix||"")+n+(r.suffix||"")},o.toFraction=function(e){var t,n,i,o,s,l,u,d,f,p,m,g,v=this,y=v.c;if(null!=e&&(!(u=new b(e)).isInteger()&&(u.c||1!==u.s)||u.lt(a)))throw Error(wc+"Argument "+(u.isInteger()?"out of range: ":"not an integer: ")+S(u));if(!y)return new b(v);for(t=new b(a),f=n=new b(a),i=d=new b(a),g=Tc(y),s=t.e=g.length-v.e-1,t.c[0]=Ec[(l=s%kc)<0?kc+l:l],e=!e||u.comparedTo(t)>0?s>0?t:f:u,l=h,h=1/0,u=new b(g),d.c[0]=0;p=r(u,t,0,1),1!=(o=n.plus(p.times(i))).comparedTo(e);)n=i,i=o,f=d.plus(p.times(o=f)),d=o,t=u.minus(p.times(o=t)),u=o;return o=r(e.minus(n),i,0,1),d=d.plus(o.times(f)),n=n.plus(o.times(i)),d.s=f.s=v.s,m=r(f,i,s*=2,c).minus(v).abs().comparedTo(r(d,n,s,c).minus(v).abs())<1?[f,i]:[d,n],h=l,m},o.toNumber=function(){return+S(this)},o.toPrecision=function(e,t){return null!=e&&Cc(e,1,Pc),w(this,e,t,2)},o.toString=function(e){var t,r=this,i=r.s,o=r.e;return null===o?i?(t="Infinity",i<0&&(t="-"+t)):t="NaN":(null==e?t=o<=l||o>=u?Ic(Tc(r.c),o):Mc(Tc(r.c),o,"0"):10===e&&y?t=Mc(Tc((r=k(new b(r),s+o+1,c)).c),r.e,"0"):(Cc(e,2,v.length,"Base"),t=n(Mc(Tc(r.c),o,"0"),10,e,i,!0)),i<0&&r.c[0]&&(t="-"+t)),t},o.valueOf=o.toJSON=function(){return S(this)},o._isBigNumber=!0,o[Symbol.toStringTag]="BigNumber",o[Symbol.for("nodejs.util.inspect.custom")]=o.valueOf,null!=t&&b.set(t),b}();const Nc=Lc;var Dc,zc=r(6435),Bc=r.n(zc),Uc=r(5269),Fc=r.n(Uc);!function(e){e.TZ1="tz1",e.TZ2="tz2",e.TZ3="tz3",e.TZ4="tz4",e.KT="KT",e.KT1="KT1",e.EDSK2="edsk2",e.SPSK="spsk",e.P2SK="p2sk",e.EDPK="edpk",e.SPPK="sppk",e.P2PK="p2pk",e.BLPK="BLpk",e.EDESK="edesk",e.SPESK="spesk",e.P2ESK="p2esk",e.EDSK="edsk",e.EDSIG="edsig",e.SPSIG="spsig",e.P2SIG="p2sig",e.SIG="sig",e.NET="Net",e.NCE="nce",e.B="B",e.O="o",e.LO="Lo",e.LLO="LLo",e.P="P",e.CO="Co",e.ID="id",e.EXPR="expr",e.TZ="TZ",e.VH="vh",e.SASK="sask",e.ZET1="zet1",e.SR1="sr1",e.SRC1="src1"}(Dc||(Dc={}));const $c={[Dc.TZ1]:new Uint8Array([6,161,159]),[Dc.TZ2]:new Uint8Array([6,161,161]),[Dc.TZ3]:new Uint8Array([6,161,164]),[Dc.TZ4]:new Uint8Array([6,161,166]),[Dc.KT]:new Uint8Array([2,90,121]),[Dc.KT1]:new Uint8Array([2,90,121]),[Dc.EDSK]:new Uint8Array([43,246,78,7]),[Dc.EDSK2]:new Uint8Array([13,15,58,7]),[Dc.SPSK]:new Uint8Array([17,162,224,201]),[Dc.P2SK]:new Uint8Array([16,81,238,189]),[Dc.EDPK]:new Uint8Array([13,15,37,217]),[Dc.SPPK]:new Uint8Array([3,254,226,86]),[Dc.P2PK]:new Uint8Array([3,178,139,127]),[Dc.BLPK]:new Uint8Array([6,149,135,204]),[Dc.EDESK]:new Uint8Array([7,90,60,179,41]),[Dc.SPESK]:new Uint8Array([9,237,241,174,150]),[Dc.P2ESK]:new Uint8Array([9,48,57,115,171]),[Dc.EDSIG]:new Uint8Array([9,245,205,134,18]),[Dc.SPSIG]:new Uint8Array([13,115,101,19,63]),[Dc.P2SIG]:new Uint8Array([54,240,44,52]),[Dc.SIG]:new Uint8Array([4,130,43]),[Dc.NET]:new Uint8Array([87,82,0]),[Dc.NCE]:new Uint8Array([69,220,169]),[Dc.B]:new Uint8Array([1,52]),[Dc.O]:new Uint8Array([5,116]),[Dc.LO]:new Uint8Array([133,233]),[Dc.LLO]:new Uint8Array([29,159,109]),[Dc.P]:new Uint8Array([2,170]),[Dc.CO]:new Uint8Array([79,179]),[Dc.ID]:new Uint8Array([153,103]),[Dc.EXPR]:new Uint8Array([13,44,64,27]),[Dc.TZ]:new Uint8Array([2,90,121]),[Dc.VH]:new Uint8Array([1,106,242]),[Dc.SASK]:new Uint8Array([11,237,20,92]),[Dc.ZET1]:new Uint8Array([18,71,40,223]),[Dc.SR1]:new Uint8Array([6,124,117]),[Dc.SRC1]:new Uint8Array([17,165,134,138])},Hc={[Dc.TZ1]:20,[Dc.TZ2]:20,[Dc.TZ3]:20,[Dc.TZ4]:20,[Dc.KT]:20,[Dc.KT1]:20,[Dc.EDPK]:32,[Dc.SPPK]:33,[Dc.P2PK]:33,[Dc.BLPK]:48,[Dc.EDSIG]:64,[Dc.SPSIG]:64,[Dc.P2SIG]:64,[Dc.SIG]:64,[Dc.NET]:4,[Dc.B]:32,[Dc.P]:32,[Dc.O]:32,[Dc.VH]:32,[Dc.SASK]:169,[Dc.ZET1]:43,[Dc.SR1]:20,[Dc.SRC1]:32};class Vc extends Js{constructor(e,t){super(),this.value=e,this.desiredType=t,this.name="ValueConversionError",this.message=`Unable to convert ${e} to a ${t}`}}var qc;function Kc(e){return"string"===typeof e&&e in $c}function Wc(e,t){const r=new RegExp(`^(${t.join("|")})`).exec(e);if(!r||0===r.length)return qc.NO_PREFIX_MATCHED;const n=r[0];if(!Kc(n))return qc.NO_PREFIX_MATCHED;e.includes("%")&&(e=e.split("%")[0]);if(!/^(KT1\w{33})$/.test(e)&&"KT1"===n)return qc.INVALID_CHECKSUM;let i=Ws().decodeUnsafe(e);return i?(i=i.slice($c[n].length),i.length!==Hc[n]?qc.INVALID_LENGTH:qc.VALID):qc.INVALID_CHECKSUM}!function(e){e[e.NO_PREFIX_MATCHED=0]="NO_PREFIX_MATCHED",e[e.INVALID_CHECKSUM=1]="INVALID_CHECKSUM",e[e.INVALID_LENGTH=2]="INVALID_LENGTH",e[e.VALID=3]="VALID"}(qc||(qc={}));const Gc=[Dc.TZ1,Dc.TZ2,Dc.TZ3,Dc.TZ4],Zc=[Dc.KT1],Yc=[Dc.EDSIG,Dc.P2SIG,Dc.SPSIG,Dc.SIG],Xc=[Dc.EDPK,Dc.SPPK,Dc.P2PK,Dc.BLPK],Jc=[Dc.O],Qc=(Dc.P,[Dc.B]),el=[Dc.SR1];function tl(e){return Wc(e,[...Gc,...Zc,...el])}function rl(e){return Wc(e,[Dc.NET])}function nl(e){return Wc(e,Zc)}function il(e){return Wc(e,Gc)}function ol(e){return Wc(e,Yc)}function al(e){return Wc(e,Xc)}function sl(e){return Wc(e,Jc)}function cl(e){switch(e){case qc.NO_PREFIX_MATCHED:return"with unsupported prefix";case qc.INVALID_CHECKSUM:return"failed checksum";case qc.INVALID_LENGTH:return"with incorrect length";default:return""}}const ll=6,ul=3;function dl(e){switch(e){case"tz":return ll;case"mtz":return ul;default:return 0}}function hl(e="mutez",t="mutez",r){const n=new Nc(r);return n.isNaN()?r:n.multipliedBy(Math.pow(10,dl(e))).dividedBy(Math.pow(10,dl(t)))}function fl(e,t){const r="string"===typeof e?Uint8Array.from(Fs.Buffer.from(e,"hex")):e,n=new Uint8Array(t.length+r.length);return n.set(t),n.set(r,t.length),Ws().encode(Fs.Buffer.from(n.buffer))}const pl=(e,t)=>Ws().decode(e).slice(t.length);function ml(e){if("0x"===e.substring(0,2)&&(e=e.slice(2)),"00"===e.substring(0,2)){const t={"0000":$c.tz1,"0001":$c.tz2,"0002":$c.tz3};return fl(e.substring(4),t[e.substring(0,4)])}return fl(e.substring(2,42),$c.KT)}function gl(e){if("0"===e[0]){const t={"00":new Uint8Array([6,161,159]),"01":new Uint8Array([6,161,161]),"02":new Uint8Array([6,161,164])};return fl(e.substring(2),t[e.substring(0,2)])}}const vl=e=>{if(e.length%2!==0)throw new ic(e,": Expecting even number of characters");const t=xl(e);if(!t.match(/^([\da-f]{2})*$/gi))throw new ic(e,": Only characters 0-9, a-f and A-F are expected. Optionally, it can be prefixed with '0x'");const r=new Uint8Array(t.length/2);let n=0;for(let i=0;i{const r=new Uint8Array(e.length+t.length);return r.set(e),r.set(t,e.length),r},bl=e=>{const t=[];return e.forEach((e=>{const r=`00${e.toString(16)}`.slice(-2);t.push(r)})),t.join("")};function wl(e){const t=xl(e);if(!t.match(/^(0x)?([\da-f]{2})*$/gi))throw new ic(e,": Expecting even number of characters: 0-9, a-z, A-Z, optionally prefixed with 0x");return Fs.Buffer.from(t,"hex")}function xl(e){return e.startsWith("0x")?e.slice(2):e}const _l="AES-GCM";var kl=r(9673).Buffer;const Sl=async(e,t)=>El(kl.from(e,"utf-8"),t,6e5),El=async(e,t,r)=>{const n={name:"PBKDF2",salt:t,iterations:r,hash:"SHA-256"},i=await crypto.subtle.importKey("raw",e,n.name,!1,["deriveKey"]);return await crypto.subtle.deriveKey(n,i,{name:_l,length:256},!1,["encrypt","decrypt"])};var Al=r(9673).Buffer;const Pl=async(e,t)=>{const r=crypto.getRandomValues(new Uint8Array(32)),n=await Sl(t,r),i=crypto.getRandomValues(new Uint8Array(12)),o=await crypto.subtle.encrypt({name:_l,iv:i},n,Al.from(e,"utf-8"));return{iv:bl(Al.from(i)),salt:bl(Al.from(r)),data:bl(Al.from(o))}},Ol=async(e,t,r="V2")=>{const{iv:n,salt:i,data:o}=e;try{const e="V2"===r?await Sl(t,wl(i)):await(async(e,t)=>El(kl.alloc(32,e,"utf-8"),t,1e4))(t,wl(i)),a=await crypto.subtle.decrypt({name:_l,iv:wl(n)},e,wl(o));return Al.from(a).toString("utf-8")}catch(a){throw new Error("Error decrypting data: Invalid password")}},Tl=rs("accounts/changeMnemonicPassword",(async({currentPassword:e,newPassword:t},{getState:r})=>{if(e===t)throw new Error("New password must be different from the current password");const{items:n,seedPhrases:i}=r().accounts;if(0===n.filter((e=>"mnemonic"===e.type)).length)throw new Error("No mnemonic accounts found");const o=await Promise.all(Object.entries(i).map((async([r,n])=>{if(!n)throw new Error("No encrypted mnemonic found");try{const i=await Ol(n,e);return[r,await Pl(i,t)]}catch(kne){throw new Error(kne.message)}})));return{newEncryptedMnemonics:(0,Ns.fromPairs)(o)}})),jl={items:[],seedPhrases:{},secretKeys:{}},Cl=Ya({name:"accounts",initialState:jl,extraReducers:e=>{e.addCase(Tl.fulfilled,((e,t)=>{const{newEncryptedMnemonics:r}=t.payload;e.seedPhrases=r}))},reducers:{reset:()=>jl,removeMnemonicAndAccounts:(e,{payload:t})=>{const{fingerPrint:r}=t,n=e.items.filter((e=>!("mnemonic"===e.type&&e.seedFingerPrint===r)));e.items=n,delete e.seedPhrases[r]},removeNonMnemonicAccounts:(e,{payload:t})=>{e.items=(0,Ns.remove)(e.items,(e=>"mnemonic"===e.type||e.type!==t.accountType))},removeAccount:(e,{payload:t})=>{(0,Ns.remove)(e.items,(e=>e.address.pkh===t.address.pkh))},renameAccount:(e,{payload:t})=>{const{account:r,newName:n}=t;if(0===n.length)throw new Error("Cannot rename account to an empty name.");if(e.items.find((e=>e.label===n)))throw new Error(`Cannot rename account ${r.address.pkh} to ${n} since the name already exists.`);const i=e.items.find((e=>e.address.pkh===r.address.pkh&&e.label===r.label));i&&(i.label=n)},addAccount:(e,{payload:t})=>{e.items=Rl(e.items,[t])},addMnemonicAccounts:(e,{payload:{encryptedMnemonic:t,accounts:r,seedFingerprint:n}})=>{e.items=Rl(e.items,r),e.seedPhrases[n]=t},addMockMnemonicAccounts:(e,{payload:t})=>{e.items=Rl(e.items,t)},addSecretKey:(e,{payload:{pkh:t,encryptedSecretKey:r}})=>{e.secretKeys[t]=r},removeSecretKey:(e,{payload:t})=>{delete e.secretKeys[t.address.pkh]}}}),Rl=(e,t)=>(t.forEach((t=>{if(e.some((e=>e.address.pkh===t.address.pkh)))throw new Error(`Can't add account ${t.address.pkh} in store since it already exists.`)})),[...e,...t]);Cl.actions;var Il,Ml;!function(e){e.assertEqual=e=>e,e.assertIs=function(e){},e.assertNever=function(e){throw new Error},e.arrayToEnum=e=>{const t={};for(const r of e)t[r]=r;return t},e.getValidEnumValues=t=>{const r=e.objectKeys(t).filter((e=>"number"!==typeof t[t[e]])),n={};for(const e of r)n[e]=t[e];return e.objectValues(n)},e.objectValues=t=>e.objectKeys(t).map((function(e){return t[e]})),e.objectKeys="function"===typeof Object.keys?e=>Object.keys(e):e=>{const t=[];for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.push(r);return t},e.find=(e,t)=>{for(const r of e)if(t(r))return r},e.isInteger="function"===typeof Number.isInteger?e=>Number.isInteger(e):e=>"number"===typeof e&&isFinite(e)&&Math.floor(e)===e,e.joinValues=function(e,t=" | "){return e.map((e=>"string"===typeof e?`'${e}'`:e)).join(t)},e.jsonStringifyReplacer=(e,t)=>"bigint"===typeof t?t.toString():t}(Il||(Il={})),function(e){e.mergeShapes=(e,t)=>({...e,...t})}(Ml||(Ml={}));const Ll=Il.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Nl=e=>{switch(typeof e){case"undefined":return Ll.undefined;case"string":return Ll.string;case"number":return isNaN(e)?Ll.nan:Ll.number;case"boolean":return Ll.boolean;case"function":return Ll.function;case"bigint":return Ll.bigint;case"symbol":return Ll.symbol;case"object":return Array.isArray(e)?Ll.array:null===e?Ll.null:e.then&&"function"===typeof e.then&&e.catch&&"function"===typeof e.catch?Ll.promise:"undefined"!==typeof Map&&e instanceof Map?Ll.map:"undefined"!==typeof Set&&e instanceof Set?Ll.set:"undefined"!==typeof Date&&e instanceof Date?Ll.date:Ll.object;default:return Ll.unknown}},Dl=Il.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class zl extends Error{constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(e){return e.message},r={_errors:[]},n=e=>{for(const i of e.issues)if("invalid_union"===i.code)i.unionErrors.map(n);else if("invalid_return_type"===i.code)n(i.returnTypeError);else if("invalid_arguments"===i.code)n(i.argumentsError);else if(0===i.path.length)r._errors.push(t(i));else{let e=r,n=0;for(;ne.message)){const t={},r=[];for(const n of this.issues)n.path.length>0?(t[n.path[0]]=t[n.path[0]]||[],t[n.path[0]].push(e(n))):r.push(e(n));return{formErrors:r,fieldErrors:t}}get formErrors(){return this.flatten()}}zl.create=e=>new zl(e);const Bl=(e,t)=>{let r;switch(e.code){case Dl.invalid_type:r=e.received===Ll.undefined?"Required":`Expected ${e.expected}, received ${e.received}`;break;case Dl.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,Il.jsonStringifyReplacer)}`;break;case Dl.unrecognized_keys:r=`Unrecognized key(s) in object: ${Il.joinValues(e.keys,", ")}`;break;case Dl.invalid_union:r="Invalid input";break;case Dl.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Il.joinValues(e.options)}`;break;case Dl.invalid_enum_value:r=`Invalid enum value. Expected ${Il.joinValues(e.options)}, received '${e.received}'`;break;case Dl.invalid_arguments:r="Invalid function arguments";break;case Dl.invalid_return_type:r="Invalid function return type";break;case Dl.invalid_date:r="Invalid date";break;case Dl.invalid_string:"object"===typeof e.validation?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,"number"===typeof e.validation.position&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:Il.assertNever(e.validation):r="regex"!==e.validation?`Invalid ${e.validation}`:"Invalid";break;case Dl.too_small:r="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:"date"===e.type?`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:"Invalid input";break;case Dl.too_big:r="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"bigint"===e.type?`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"date"===e.type?`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:"Invalid input";break;case Dl.custom:r="Invalid input";break;case Dl.invalid_intersection_types:r="Intersection results could not be merged";break;case Dl.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case Dl.not_finite:r="Number must be finite";break;default:r=t.defaultError,Il.assertNever(e)}return{message:r}};let Ul=Bl;function Fl(){return Ul}const $l=e=>{const{data:t,path:r,errorMaps:n,issueData:i}=e,o=[...r,...i.path||[]],a={...i,path:o};let s="";const c=n.filter((e=>!!e)).slice().reverse();for(const l of c)s=l(a,{data:t,defaultError:s}).message;return{...i,path:o,message:i.message||s}};function Hl(e,t){const r=$l({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,Fl(),Bl].filter((e=>!!e))});e.common.issues.push(r)}class Vl{constructor(){this.value="valid"}dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(e,t){const r=[];for(const n of t){if("aborted"===n.status)return ql;"dirty"===n.status&&e.dirty(),r.push(n.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,t){const r=[];for(const n of t)r.push({key:await n.key,value:await n.value});return Vl.mergeObjectSync(e,r)}static mergeObjectSync(e,t){const r={};for(const n of t){const{key:t,value:i}=n;if("aborted"===t.status)return ql;if("aborted"===i.status)return ql;"dirty"===t.status&&e.dirty(),"dirty"===i.status&&e.dirty(),"__proto__"===t.value||"undefined"===typeof i.value&&!n.alwaysSet||(r[t.value]=i.value)}return{status:e.value,value:r}}}const ql=Object.freeze({status:"aborted"}),Kl=e=>({status:"dirty",value:e}),Wl=e=>({status:"valid",value:e}),Gl=e=>"aborted"===e.status,Zl=e=>"dirty"===e.status,Yl=e=>"valid"===e.status,Xl=e=>"undefined"!==typeof Promise&&e instanceof Promise;var Jl;!function(e){e.errToObj=e=>"string"===typeof e?{message:e}:e||{},e.toString=e=>"string"===typeof e?e:null===e||void 0===e?void 0:e.message}(Jl||(Jl={}));class Ql{constructor(e,t,r,n){this._cachedPath=[],this.parent=e,this.data=t,this._path=r,this._key=n}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const eu=(e,t)=>{if(Yl(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new zl(e.common.issues);return this._error=t,this._error}}};function tu(e){if(!e)return{};const{errorMap:t,invalid_type_error:r,required_error:n,description:i}=e;if(t&&(r||n))throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');if(t)return{errorMap:t,description:i};return{errorMap:(e,t)=>"invalid_type"!==e.code?{message:t.defaultError}:"undefined"===typeof t.data?{message:null!==n&&void 0!==n?n:t.defaultError}:{message:null!==r&&void 0!==r?r:t.defaultError},description:i}}class ru{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return Nl(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Nl(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Vl,ctx:{common:e.parent.common,data:e.data,parsedType:Nl(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(Xl(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const r=this.safeParse(e,t);if(r.success)return r.data;throw r.error}safeParse(e,t){var r;const n={common:{issues:[],async:null!==(r=null===t||void 0===t?void 0:t.async)&&void 0!==r&&r,contextualErrorMap:null===t||void 0===t?void 0:t.errorMap},path:(null===t||void 0===t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Nl(e)},i=this._parseSync({data:e,path:n.path,parent:n});return eu(n,i)}async parseAsync(e,t){const r=await this.safeParseAsync(e,t);if(r.success)return r.data;throw r.error}async safeParseAsync(e,t){const r={common:{issues:[],contextualErrorMap:null===t||void 0===t?void 0:t.errorMap,async:!0},path:(null===t||void 0===t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Nl(e)},n=this._parse({data:e,path:r.path,parent:r}),i=await(Xl(n)?n:Promise.resolve(n));return eu(r,i)}refine(e,t){const r=e=>"string"===typeof t||"undefined"===typeof t?{message:t}:"function"===typeof t?t(e):t;return this._refinement(((t,n)=>{const i=e(t),o=()=>n.addIssue({code:Dl.custom,...r(t)});return"undefined"!==typeof Promise&&i instanceof Promise?i.then((e=>!!e||(o(),!1))):!!i||(o(),!1)}))}refinement(e,t){return this._refinement(((r,n)=>!!e(r)||(n.addIssue("function"===typeof t?t(r,n):t),!1)))}_refinement(e){return new Vu({schema:this,typeName:rd.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return qu.create(this,this._def)}nullable(){return Ku.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Eu.create(this,this._def)}promise(){return Hu.create(this,this._def)}or(e){return Ou.create([this,e],this._def)}and(e){return Ru.create(this,e,this._def)}transform(e){return new Vu({...tu(this._def),schema:this,typeName:rd.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t="function"===typeof e?e:()=>e;return new Wu({...tu(this._def),innerType:this,defaultValue:t,typeName:rd.ZodDefault})}brand(){return new Xu({typeName:rd.ZodBranded,type:this,...tu(this._def)})}catch(e){const t="function"===typeof e?e:()=>e;return new Gu({...tu(this._def),innerType:this,catchValue:t,typeName:rd.ZodCatch})}describe(e){return new(0,this.constructor)({...this._def,description:e})}pipe(e){return Ju.create(this,e)}readonly(){return Qu.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const nu=/^c[^\s-]{8,}$/i,iu=/^[a-z][a-z0-9]*$/,ou=/^[0-9A-HJKMNP-TV-Z]{26}$/,au=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,su=/^(?!\.)(?!.*\.\.)([A-Z0-9_+-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i;let cu;const lu=/^(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))$/,uu=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/;function du(e,t){return!("v4"!==t&&t||!lu.test(e))||!("v6"!==t&&t||!uu.test(e))}class hu extends ru{_parse(e){this._def.coerce&&(e.data=String(e.data));if(this._getType(e)!==Ll.string){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.string,received:t.parsedType}),ql}const t=new Vl;let r;for(const i of this._def.checks)if("min"===i.kind)e.data.lengthi.value&&(r=this._getOrReturnCtx(e,r),Hl(r,{code:Dl.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),t.dirty());else if("length"===i.kind){const n=e.data.length>i.value,o=e.data.lengthe.test(t)),{validation:t,code:Dl.invalid_string,...Jl.errToObj(r)})}_addCheck(e){return new hu({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...Jl.errToObj(e)})}url(e){return this._addCheck({kind:"url",...Jl.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...Jl.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...Jl.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...Jl.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...Jl.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...Jl.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...Jl.errToObj(e)})}datetime(e){var t;return"string"===typeof e?this._addCheck({kind:"datetime",precision:null,offset:!1,message:e}):this._addCheck({kind:"datetime",precision:"undefined"===typeof(null===e||void 0===e?void 0:e.precision)?null:null===e||void 0===e?void 0:e.precision,offset:null!==(t=null===e||void 0===e?void 0:e.offset)&&void 0!==t&&t,...Jl.errToObj(null===e||void 0===e?void 0:e.message)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...Jl.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:null===t||void 0===t?void 0:t.position,...Jl.errToObj(null===t||void 0===t?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...Jl.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...Jl.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...Jl.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...Jl.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...Jl.errToObj(t)})}nonempty(e){return this.min(1,Jl.errToObj(e))}trim(){return new hu({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new hu({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new hu({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((e=>"datetime"===e.kind))}get isEmail(){return!!this._def.checks.find((e=>"email"===e.kind))}get isURL(){return!!this._def.checks.find((e=>"url"===e.kind))}get isEmoji(){return!!this._def.checks.find((e=>"emoji"===e.kind))}get isUUID(){return!!this._def.checks.find((e=>"uuid"===e.kind))}get isCUID(){return!!this._def.checks.find((e=>"cuid"===e.kind))}get isCUID2(){return!!this._def.checks.find((e=>"cuid2"===e.kind))}get isULID(){return!!this._def.checks.find((e=>"ulid"===e.kind))}get isIP(){return!!this._def.checks.find((e=>"ip"===e.kind))}get minLength(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.valuen?r:n;return parseInt(e.toFixed(i).replace(".",""))%parseInt(t.toFixed(i).replace(".",""))/Math.pow(10,i)}hu.create=e=>{var t;return new hu({checks:[],typeName:rd.ZodString,coerce:null!==(t=null===e||void 0===e?void 0:e.coerce)&&void 0!==t&&t,...tu(e)})};class pu extends ru{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){this._def.coerce&&(e.data=Number(e.data));if(this._getType(e)!==Ll.number){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.number,received:t.parsedType}),ql}let t;const r=new Vl;for(const n of this._def.checks)if("int"===n.kind)Il.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),Hl(t,{code:Dl.invalid_type,expected:"integer",received:"float",message:n.message}),r.dirty());else if("min"===n.kind){(n.inclusive?e.datan.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),Hl(t,{code:Dl.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),r.dirty())}else"multipleOf"===n.kind?0!==fu(e.data,n.value)&&(t=this._getOrReturnCtx(e,t),Hl(t,{code:Dl.not_multiple_of,multipleOf:n.value,message:n.message}),r.dirty()):"finite"===n.kind?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),Hl(t,{code:Dl.not_finite,message:n.message}),r.dirty()):Il.assertNever(n);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,Jl.toString(t))}gt(e,t){return this.setLimit("min",e,!1,Jl.toString(t))}lte(e,t){return this.setLimit("max",e,!0,Jl.toString(t))}lt(e,t){return this.setLimit("max",e,!1,Jl.toString(t))}setLimit(e,t,r,n){return new pu({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:Jl.toString(n)}]})}_addCheck(e){return new pu({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:Jl.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:Jl.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:Jl.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:Jl.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:Jl.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:Jl.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:Jl.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:Jl.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:Jl.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value"int"===e.kind||"multipleOf"===e.kind&&Il.isInteger(e.value)))}get isFinite(){let e=null,t=null;for(const r of this._def.checks){if("finite"===r.kind||"int"===r.kind||"multipleOf"===r.kind)return!0;"min"===r.kind?(null===t||r.value>t)&&(t=r.value):"max"===r.kind&&(null===e||r.valuenew pu({checks:[],typeName:rd.ZodNumber,coerce:(null===e||void 0===e?void 0:e.coerce)||!1,...tu(e)});class mu extends ru{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){this._def.coerce&&(e.data=BigInt(e.data));if(this._getType(e)!==Ll.bigint){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.bigint,received:t.parsedType}),ql}let t;const r=new Vl;for(const n of this._def.checks)if("min"===n.kind){(n.inclusive?e.datan.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),Hl(t,{code:Dl.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),r.dirty())}else"multipleOf"===n.kind?e.data%n.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),Hl(t,{code:Dl.not_multiple_of,multipleOf:n.value,message:n.message}),r.dirty()):Il.assertNever(n);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,Jl.toString(t))}gt(e,t){return this.setLimit("min",e,!1,Jl.toString(t))}lte(e,t){return this.setLimit("max",e,!0,Jl.toString(t))}lt(e,t){return this.setLimit("max",e,!1,Jl.toString(t))}setLimit(e,t,r,n){return new mu({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:Jl.toString(n)}]})}_addCheck(e){return new mu({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:Jl.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:Jl.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:Jl.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:Jl.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:Jl.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value{var t;return new mu({checks:[],typeName:rd.ZodBigInt,coerce:null!==(t=null===e||void 0===e?void 0:e.coerce)&&void 0!==t&&t,...tu(e)})};class gu extends ru{_parse(e){this._def.coerce&&(e.data=Boolean(e.data));if(this._getType(e)!==Ll.boolean){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.boolean,received:t.parsedType}),ql}return Wl(e.data)}}gu.create=e=>new gu({typeName:rd.ZodBoolean,coerce:(null===e||void 0===e?void 0:e.coerce)||!1,...tu(e)});class vu extends ru{_parse(e){this._def.coerce&&(e.data=new Date(e.data));if(this._getType(e)!==Ll.date){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.date,received:t.parsedType}),ql}if(isNaN(e.data.getTime())){return Hl(this._getOrReturnCtx(e),{code:Dl.invalid_date}),ql}const t=new Vl;let r;for(const n of this._def.checks)"min"===n.kind?e.data.getTime()n.value&&(r=this._getOrReturnCtx(e,r),Hl(r,{code:Dl.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),t.dirty()):Il.assertNever(n);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new vu({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:Jl.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:Jl.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return null!=e?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.valuenew vu({checks:[],coerce:(null===e||void 0===e?void 0:e.coerce)||!1,typeName:rd.ZodDate,...tu(e)});class yu extends ru{_parse(e){if(this._getType(e)!==Ll.symbol){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.symbol,received:t.parsedType}),ql}return Wl(e.data)}}yu.create=e=>new yu({typeName:rd.ZodSymbol,...tu(e)});class bu extends ru{_parse(e){if(this._getType(e)!==Ll.undefined){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.undefined,received:t.parsedType}),ql}return Wl(e.data)}}bu.create=e=>new bu({typeName:rd.ZodUndefined,...tu(e)});class wu extends ru{_parse(e){if(this._getType(e)!==Ll.null){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.null,received:t.parsedType}),ql}return Wl(e.data)}}wu.create=e=>new wu({typeName:rd.ZodNull,...tu(e)});class xu extends ru{constructor(){super(...arguments),this._any=!0}_parse(e){return Wl(e.data)}}xu.create=e=>new xu({typeName:rd.ZodAny,...tu(e)});class _u extends ru{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Wl(e.data)}}_u.create=e=>new _u({typeName:rd.ZodUnknown,...tu(e)});class ku extends ru{_parse(e){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.never,received:t.parsedType}),ql}}ku.create=e=>new ku({typeName:rd.ZodNever,...tu(e)});class Su extends ru{_parse(e){if(this._getType(e)!==Ll.undefined){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.void,received:t.parsedType}),ql}return Wl(e.data)}}Su.create=e=>new Su({typeName:rd.ZodVoid,...tu(e)});class Eu extends ru{_parse(e){const{ctx:t,status:r}=this._processInputParams(e),n=this._def;if(t.parsedType!==Ll.array)return Hl(t,{code:Dl.invalid_type,expected:Ll.array,received:t.parsedType}),ql;if(null!==n.exactLength){const e=t.data.length>n.exactLength.value,i=t.data.lengthn.maxLength.value&&(Hl(t,{code:Dl.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),r.dirty()),t.common.async)return Promise.all([...t.data].map(((e,r)=>n.type._parseAsync(new Ql(t,e,t.path,r))))).then((e=>Vl.mergeArray(r,e)));const i=[...t.data].map(((e,r)=>n.type._parseSync(new Ql(t,e,t.path,r))));return Vl.mergeArray(r,i)}get element(){return this._def.type}min(e,t){return new Eu({...this._def,minLength:{value:e,message:Jl.toString(t)}})}max(e,t){return new Eu({...this._def,maxLength:{value:e,message:Jl.toString(t)}})}length(e,t){return new Eu({...this._def,exactLength:{value:e,message:Jl.toString(t)}})}nonempty(e){return this.min(1,e)}}function Au(e){if(e instanceof Pu){const t={};for(const r in e.shape){const n=e.shape[r];t[r]=qu.create(Au(n))}return new Pu({...e._def,shape:()=>t})}return e instanceof Eu?new Eu({...e._def,type:Au(e.element)}):e instanceof qu?qu.create(Au(e.unwrap())):e instanceof Ku?Ku.create(Au(e.unwrap())):e instanceof Iu?Iu.create(e.items.map((e=>Au(e)))):e}Eu.create=(e,t)=>new Eu({type:e,minLength:null,maxLength:null,exactLength:null,typeName:rd.ZodArray,...tu(t)});class Pu extends ru{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(null!==this._cached)return this._cached;const e=this._def.shape(),t=Il.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==Ll.object){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.object,received:t.parsedType}),ql}const{status:t,ctx:r}=this._processInputParams(e),{shape:n,keys:i}=this._getCached(),o=[];if(!(this._def.catchall instanceof ku&&"strip"===this._def.unknownKeys))for(const s in r.data)i.includes(s)||o.push(s);const a=[];for(const s of i){const e=n[s],t=r.data[s];a.push({key:{status:"valid",value:s},value:e._parse(new Ql(r,t,r.path,s)),alwaysSet:s in r.data})}if(this._def.catchall instanceof ku){const e=this._def.unknownKeys;if("passthrough"===e)for(const t of o)a.push({key:{status:"valid",value:t},value:{status:"valid",value:r.data[t]}});else if("strict"===e)o.length>0&&(Hl(r,{code:Dl.unrecognized_keys,keys:o}),t.dirty());else if("strip"!==e)throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const e=this._def.catchall;for(const t of o){const n=r.data[t];a.push({key:{status:"valid",value:t},value:e._parse(new Ql(r,n,r.path,t)),alwaysSet:t in r.data})}}return r.common.async?Promise.resolve().then((async()=>{const e=[];for(const t of a){const r=await t.key;e.push({key:r,value:await t.value,alwaysSet:t.alwaysSet})}return e})).then((e=>Vl.mergeObjectSync(t,e))):Vl.mergeObjectSync(t,a)}get shape(){return this._def.shape()}strict(e){return Jl.errToObj,new Pu({...this._def,unknownKeys:"strict",...void 0!==e?{errorMap:(t,r)=>{var n,i,o,a;const s=null!==(o=null===(i=(n=this._def).errorMap)||void 0===i?void 0:i.call(n,t,r).message)&&void 0!==o?o:r.defaultError;return"unrecognized_keys"===t.code?{message:null!==(a=Jl.errToObj(e).message)&&void 0!==a?a:s}:{message:s}}}:{}})}strip(){return new Pu({...this._def,unknownKeys:"strip"})}passthrough(){return new Pu({...this._def,unknownKeys:"passthrough"})}extend(e){return new Pu({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new Pu({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:rd.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new Pu({...this._def,catchall:e})}pick(e){const t={};return Il.objectKeys(e).forEach((r=>{e[r]&&this.shape[r]&&(t[r]=this.shape[r])})),new Pu({...this._def,shape:()=>t})}omit(e){const t={};return Il.objectKeys(this.shape).forEach((r=>{e[r]||(t[r]=this.shape[r])})),new Pu({...this._def,shape:()=>t})}deepPartial(){return Au(this)}partial(e){const t={};return Il.objectKeys(this.shape).forEach((r=>{const n=this.shape[r];e&&!e[r]?t[r]=n:t[r]=n.optional()})),new Pu({...this._def,shape:()=>t})}required(e){const t={};return Il.objectKeys(this.shape).forEach((r=>{if(e&&!e[r])t[r]=this.shape[r];else{let e=this.shape[r];for(;e instanceof qu;)e=e._def.innerType;t[r]=e}})),new Pu({...this._def,shape:()=>t})}keyof(){return Uu(Il.objectKeys(this.shape))}}Pu.create=(e,t)=>new Pu({shape:()=>e,unknownKeys:"strip",catchall:ku.create(),typeName:rd.ZodObject,...tu(t)}),Pu.strictCreate=(e,t)=>new Pu({shape:()=>e,unknownKeys:"strict",catchall:ku.create(),typeName:rd.ZodObject,...tu(t)}),Pu.lazycreate=(e,t)=>new Pu({shape:e,unknownKeys:"strip",catchall:ku.create(),typeName:rd.ZodObject,...tu(t)});class Ou extends ru{_parse(e){const{ctx:t}=this._processInputParams(e),r=this._def.options;if(t.common.async)return Promise.all(r.map((async e=>{const r={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:r}),ctx:r}}))).then((function(e){for(const t of e)if("valid"===t.result.status)return t.result;for(const n of e)if("dirty"===n.result.status)return t.common.issues.push(...n.ctx.common.issues),n.result;const r=e.map((e=>new zl(e.ctx.common.issues)));return Hl(t,{code:Dl.invalid_union,unionErrors:r}),ql}));{let e;const n=[];for(const o of r){const r={...t,common:{...t.common,issues:[]},parent:null},i=o._parseSync({data:t.data,path:t.path,parent:r});if("valid"===i.status)return i;"dirty"!==i.status||e||(e={result:i,ctx:r}),r.common.issues.length&&n.push(r.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;const i=n.map((e=>new zl(e)));return Hl(t,{code:Dl.invalid_union,unionErrors:i}),ql}}get options(){return this._def.options}}Ou.create=(e,t)=>new Ou({options:e,typeName:rd.ZodUnion,...tu(t)});const Tu=e=>e instanceof zu?Tu(e.schema):e instanceof Vu?Tu(e.innerType()):e instanceof Bu?[e.value]:e instanceof Fu?e.options:e instanceof $u?Object.keys(e.enum):e instanceof Wu?Tu(e._def.innerType):e instanceof bu?[void 0]:e instanceof wu?[null]:null;class ju extends ru{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Ll.object)return Hl(t,{code:Dl.invalid_type,expected:Ll.object,received:t.parsedType}),ql;const r=this.discriminator,n=t.data[r],i=this.optionsMap.get(n);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(Hl(t,{code:Dl.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),ql)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,r){const n=new Map;for(const i of t){const t=Tu(i.shape[e]);if(!t)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const r of t){if(n.has(r))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(r)}`);n.set(r,i)}}return new ju({typeName:rd.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:n,...tu(r)})}}function Cu(e,t){const r=Nl(e),n=Nl(t);if(e===t)return{valid:!0,data:e};if(r===Ll.object&&n===Ll.object){const r=Il.objectKeys(t),n=Il.objectKeys(e).filter((e=>-1!==r.indexOf(e))),i={...e,...t};for(const o of n){const r=Cu(e[o],t[o]);if(!r.valid)return{valid:!1};i[o]=r.data}return{valid:!0,data:i}}if(r===Ll.array&&n===Ll.array){if(e.length!==t.length)return{valid:!1};const r=[];for(let n=0;n{if(Gl(e)||Gl(n))return ql;const i=Cu(e.value,n.value);return i.valid?((Zl(e)||Zl(n))&&t.dirty(),{status:t.value,value:i.data}):(Hl(r,{code:Dl.invalid_intersection_types}),ql)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then((([e,t])=>n(e,t))):n(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}Ru.create=(e,t,r)=>new Ru({left:e,right:t,typeName:rd.ZodIntersection,...tu(r)});class Iu extends ru{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Ll.array)return Hl(r,{code:Dl.invalid_type,expected:Ll.array,received:r.parsedType}),ql;if(r.data.lengththis._def.items.length&&(Hl(r,{code:Dl.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const n=[...r.data].map(((e,t)=>{const n=this._def.items[t]||this._def.rest;return n?n._parse(new Ql(r,e,r.path,t)):null})).filter((e=>!!e));return r.common.async?Promise.all(n).then((e=>Vl.mergeArray(t,e))):Vl.mergeArray(t,n)}get items(){return this._def.items}rest(e){return new Iu({...this._def,rest:e})}}Iu.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Iu({items:e,typeName:rd.ZodTuple,rest:null,...tu(t)})};class Mu extends ru{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Ll.object)return Hl(r,{code:Dl.invalid_type,expected:Ll.object,received:r.parsedType}),ql;const n=[],i=this._def.keyType,o=this._def.valueType;for(const a in r.data)n.push({key:i._parse(new Ql(r,a,r.path,a)),value:o._parse(new Ql(r,r.data[a],r.path,a))});return r.common.async?Vl.mergeObjectAsync(t,n):Vl.mergeObjectSync(t,n)}get element(){return this._def.valueType}static create(e,t,r){return new Mu(t instanceof ru?{keyType:e,valueType:t,typeName:rd.ZodRecord,...tu(r)}:{keyType:hu.create(),valueType:e,typeName:rd.ZodRecord,...tu(t)})}}class Lu extends ru{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Ll.map)return Hl(r,{code:Dl.invalid_type,expected:Ll.map,received:r.parsedType}),ql;const n=this._def.keyType,i=this._def.valueType,o=[...r.data.entries()].map((([e,t],o)=>({key:n._parse(new Ql(r,e,r.path,[o,"key"])),value:i._parse(new Ql(r,t,r.path,[o,"value"]))})));if(r.common.async){const e=new Map;return Promise.resolve().then((async()=>{for(const r of o){const n=await r.key,i=await r.value;if("aborted"===n.status||"aborted"===i.status)return ql;"dirty"!==n.status&&"dirty"!==i.status||t.dirty(),e.set(n.value,i.value)}return{status:t.value,value:e}}))}{const e=new Map;for(const r of o){const n=r.key,i=r.value;if("aborted"===n.status||"aborted"===i.status)return ql;"dirty"!==n.status&&"dirty"!==i.status||t.dirty(),e.set(n.value,i.value)}return{status:t.value,value:e}}}}Lu.create=(e,t,r)=>new Lu({valueType:t,keyType:e,typeName:rd.ZodMap,...tu(r)});class Nu extends ru{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Ll.set)return Hl(r,{code:Dl.invalid_type,expected:Ll.set,received:r.parsedType}),ql;const n=this._def;null!==n.minSize&&r.data.sizen.maxSize.value&&(Hl(r,{code:Dl.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),t.dirty());const i=this._def.valueType;function o(e){const r=new Set;for(const n of e){if("aborted"===n.status)return ql;"dirty"===n.status&&t.dirty(),r.add(n.value)}return{status:t.value,value:r}}const a=[...r.data.values()].map(((e,t)=>i._parse(new Ql(r,e,r.path,t))));return r.common.async?Promise.all(a).then((e=>o(e))):o(a)}min(e,t){return new Nu({...this._def,minSize:{value:e,message:Jl.toString(t)}})}max(e,t){return new Nu({...this._def,maxSize:{value:e,message:Jl.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}Nu.create=(e,t)=>new Nu({valueType:e,minSize:null,maxSize:null,typeName:rd.ZodSet,...tu(t)});class Du extends ru{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Ll.function)return Hl(t,{code:Dl.invalid_type,expected:Ll.function,received:t.parsedType}),ql;function r(e,r){return $l({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Fl(),Bl].filter((e=>!!e)),issueData:{code:Dl.invalid_arguments,argumentsError:r}})}function n(e,r){return $l({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Fl(),Bl].filter((e=>!!e)),issueData:{code:Dl.invalid_return_type,returnTypeError:r}})}const i={errorMap:t.common.contextualErrorMap},o=t.data;if(this._def.returns instanceof Hu){const e=this;return Wl((async function(...t){const a=new zl([]),s=await e._def.args.parseAsync(t,i).catch((e=>{throw a.addIssue(r(t,e)),a})),c=await Reflect.apply(o,this,s),l=await e._def.returns._def.type.parseAsync(c,i).catch((e=>{throw a.addIssue(n(c,e)),a}));return l}))}{const e=this;return Wl((function(...t){const a=e._def.args.safeParse(t,i);if(!a.success)throw new zl([r(t,a.error)]);const s=Reflect.apply(o,this,a.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new zl([n(s,c.error)]);return c.data}))}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new Du({...this._def,args:Iu.create(e).rest(_u.create())})}returns(e){return new Du({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,r){return new Du({args:e||Iu.create([]).rest(_u.create()),returns:t||_u.create(),typeName:rd.ZodFunction,...tu(r)})}}class zu extends ru{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}zu.create=(e,t)=>new zu({getter:e,typeName:rd.ZodLazy,...tu(t)});class Bu extends ru{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return Hl(t,{received:t.data,code:Dl.invalid_literal,expected:this._def.value}),ql}return{status:"valid",value:e.data}}get value(){return this._def.value}}function Uu(e,t){return new Fu({values:e,typeName:rd.ZodEnum,...tu(t)})}Bu.create=(e,t)=>new Bu({value:e,typeName:rd.ZodLiteral,...tu(t)});class Fu extends ru{_parse(e){if("string"!==typeof e.data){const t=this._getOrReturnCtx(e),r=this._def.values;return Hl(t,{expected:Il.joinValues(r),received:t.parsedType,code:Dl.invalid_type}),ql}if(-1===this._def.values.indexOf(e.data)){const t=this._getOrReturnCtx(e),r=this._def.values;return Hl(t,{received:t.data,code:Dl.invalid_enum_value,options:r}),ql}return Wl(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e){return Fu.create(e)}exclude(e){return Fu.create(this.options.filter((t=>!e.includes(t))))}}Fu.create=Uu;class $u extends ru{_parse(e){const t=Il.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==Ll.string&&r.parsedType!==Ll.number){const e=Il.objectValues(t);return Hl(r,{expected:Il.joinValues(e),received:r.parsedType,code:Dl.invalid_type}),ql}if(-1===t.indexOf(e.data)){const e=Il.objectValues(t);return Hl(r,{received:r.data,code:Dl.invalid_enum_value,options:e}),ql}return Wl(e.data)}get enum(){return this._def.values}}$u.create=(e,t)=>new $u({values:e,typeName:rd.ZodNativeEnum,...tu(t)});class Hu extends ru{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Ll.promise&&!1===t.common.async)return Hl(t,{code:Dl.invalid_type,expected:Ll.promise,received:t.parsedType}),ql;const r=t.parsedType===Ll.promise?t.data:Promise.resolve(t.data);return Wl(r.then((e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap}))))}}Hu.create=(e,t)=>new Hu({type:e,typeName:rd.ZodPromise,...tu(t)});class Vu extends ru{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===rd.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:r}=this._processInputParams(e),n=this._def.effect||null,i={addIssue:e=>{Hl(r,e),e.fatal?t.abort():t.dirty()},get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),"preprocess"===n.type){const e=n.transform(r.data,i);return r.common.issues.length?{status:"dirty",value:r.data}:r.common.async?Promise.resolve(e).then((e=>this._def.schema._parseAsync({data:e,path:r.path,parent:r}))):this._def.schema._parseSync({data:e,path:r.path,parent:r})}if("refinement"===n.type){const e=e=>{const t=n.refinement(e,i);if(r.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1===r.common.async){const n=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return"aborted"===n.status?ql:("dirty"===n.status&&t.dirty(),e(n.value),{status:t.value,value:n.value})}return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then((r=>"aborted"===r.status?ql:("dirty"===r.status&&t.dirty(),e(r.value).then((()=>({status:t.value,value:r.value}))))))}if("transform"===n.type){if(!1===r.common.async){const e=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Yl(e))return e;const o=n.transform(e.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then((e=>Yl(e)?Promise.resolve(n.transform(e.value,i)).then((e=>({status:t.value,value:e}))):e))}Il.assertNever(n)}}Vu.create=(e,t,r)=>new Vu({schema:e,typeName:rd.ZodEffects,effect:t,...tu(r)}),Vu.createWithPreprocess=(e,t,r)=>new Vu({schema:t,effect:{type:"preprocess",transform:e},typeName:rd.ZodEffects,...tu(r)});class qu extends ru{_parse(e){return this._getType(e)===Ll.undefined?Wl(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}qu.create=(e,t)=>new qu({innerType:e,typeName:rd.ZodOptional,...tu(t)});class Ku extends ru{_parse(e){return this._getType(e)===Ll.null?Wl(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Ku.create=(e,t)=>new Ku({innerType:e,typeName:rd.ZodNullable,...tu(t)});class Wu extends ru{_parse(e){const{ctx:t}=this._processInputParams(e);let r=t.data;return t.parsedType===Ll.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}Wu.create=(e,t)=>new Wu({innerType:e,typeName:rd.ZodDefault,defaultValue:"function"===typeof t.default?t.default:()=>t.default,...tu(t)});class Gu extends ru{_parse(e){const{ctx:t}=this._processInputParams(e),r={...t,common:{...t.common,issues:[]}},n=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Xl(n)?n.then((e=>({status:"valid",value:"valid"===e.status?e.value:this._def.catchValue({get error(){return new zl(r.common.issues)},input:r.data})}))):{status:"valid",value:"valid"===n.status?n.value:this._def.catchValue({get error(){return new zl(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}Gu.create=(e,t)=>new Gu({innerType:e,typeName:rd.ZodCatch,catchValue:"function"===typeof t.catch?t.catch:()=>t.catch,...tu(t)});class Zu extends ru{_parse(e){if(this._getType(e)!==Ll.nan){const t=this._getOrReturnCtx(e);return Hl(t,{code:Dl.invalid_type,expected:Ll.nan,received:t.parsedType}),ql}return{status:"valid",value:e.data}}}Zu.create=e=>new Zu({typeName:rd.ZodNaN,...tu(e)});const Yu=Symbol("zod_brand");class Xu extends ru{_parse(e){const{ctx:t}=this._processInputParams(e),r=t.data;return this._def.type._parse({data:r,path:t.path,parent:t})}unwrap(){return this._def.type}}class Ju extends ru{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.common.async){return(async()=>{const e=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return"aborted"===e.status?ql:"dirty"===e.status?(t.dirty(),Kl(e.value)):this._def.out._parseAsync({data:e.value,path:r.path,parent:r})})()}{const e=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return"aborted"===e.status?ql:"dirty"===e.status?(t.dirty(),{status:"dirty",value:e.value}):this._def.out._parseSync({data:e.value,path:r.path,parent:r})}}static create(e,t){return new Ju({in:e,out:t,typeName:rd.ZodPipeline})}}class Qu extends ru{_parse(e){const t=this._def.innerType._parse(e);return Yl(t)&&(t.value=Object.freeze(t.value)),t}}Qu.create=(e,t)=>new Qu({innerType:e,typeName:rd.ZodReadonly,...tu(t)});const ed=(e,t={},r)=>e?xu.create().superRefine(((n,i)=>{var o,a;if(!e(n)){const e="function"===typeof t?t(n):"string"===typeof t?{message:t}:t,s=null===(a=null!==(o=e.fatal)&&void 0!==o?o:r)||void 0===a||a,c="string"===typeof e?{message:e}:e;i.addIssue({code:"custom",...c,fatal:s})}})):xu.create(),td={object:Pu.lazycreate};var rd;!function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"}(rd||(rd={}));const nd=hu.create,id=pu.create,od=Zu.create,ad=mu.create,sd=gu.create,cd=vu.create,ld=yu.create,ud=bu.create,dd=wu.create,hd=xu.create,fd=_u.create,pd=ku.create,md=Su.create,gd=Eu.create,vd=Pu.create,yd=Pu.strictCreate,bd=Ou.create,wd=ju.create,xd=Ru.create,_d=Iu.create,kd=Mu.create,Sd=Lu.create,Ed=Nu.create,Ad=Du.create,Pd=zu.create,Od=Bu.create,Td=Fu.create,jd=$u.create,Cd=Hu.create,Rd=Vu.create,Id=qu.create,Md=Ku.create,Ld=Vu.createWithPreprocess,Nd=Ju.create,Dd={string:e=>hu.create({...e,coerce:!0}),number:e=>pu.create({...e,coerce:!0}),boolean:e=>gu.create({...e,coerce:!0}),bigint:e=>mu.create({...e,coerce:!0}),date:e=>vu.create({...e,coerce:!0})},zd=ql;var Bd=Object.freeze({__proto__:null,defaultErrorMap:Bl,setErrorMap:function(e){Ul=e},getErrorMap:Fl,makeIssue:$l,EMPTY_PATH:[],addIssueToContext:Hl,ParseStatus:Vl,INVALID:ql,DIRTY:Kl,OK:Wl,isAborted:Gl,isDirty:Zl,isValid:Yl,isAsync:Xl,get util(){return Il},get objectUtil(){return Ml},ZodParsedType:Ll,getParsedType:Nl,ZodType:ru,ZodString:hu,ZodNumber:pu,ZodBigInt:mu,ZodBoolean:gu,ZodDate:vu,ZodSymbol:yu,ZodUndefined:bu,ZodNull:wu,ZodAny:xu,ZodUnknown:_u,ZodNever:ku,ZodVoid:Su,ZodArray:Eu,ZodObject:Pu,ZodUnion:Ou,ZodDiscriminatedUnion:ju,ZodIntersection:Ru,ZodTuple:Iu,ZodRecord:Mu,ZodMap:Lu,ZodSet:Nu,ZodFunction:Du,ZodLazy:zu,ZodLiteral:Bu,ZodEnum:Fu,ZodNativeEnum:$u,ZodPromise:Hu,ZodEffects:Vu,ZodTransformer:Vu,ZodOptional:qu,ZodNullable:Ku,ZodDefault:Wu,ZodCatch:Gu,ZodNaN:Zu,BRAND:Yu,ZodBranded:Xu,ZodPipeline:Ju,ZodReadonly:Qu,custom:ed,Schema:ru,ZodSchema:ru,late:td,get ZodFirstPartyTypeKind(){return rd},coerce:Dd,any:hd,array:gd,bigint:ad,boolean:sd,date:cd,discriminatedUnion:wd,effect:Rd,enum:Td,function:Ad,instanceof:(e,t={message:`Input not instance of ${e.name}`})=>ed((t=>t instanceof e),t),intersection:xd,lazy:Pd,literal:Od,map:Sd,nan:od,nativeEnum:jd,never:pd,null:dd,nullable:Md,number:id,object:vd,oboolean:()=>sd().optional(),onumber:()=>id().optional(),optional:Id,ostring:()=>nd().optional(),pipeline:Nd,preprocess:Ld,promise:Cd,record:kd,set:Ed,strictObject:yd,string:nd,symbol:ld,transformer:Rd,tuple:_d,undefined:ud,union:bd,unknown:fd,void:md,NEVER:zd,ZodIssueCode:Dl,quotelessJson:e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),ZodError:zl});const Ud=Bd.object({address:Bd.string()}),Fd=e=>{if(Hd(e))return qd(e);if(Vd(e))return Kd(e);throw new Error(`Cannot parse address type: ${e}`)},$d=e=>tl(e)===qc.VALID,Hd=e=>$d(e)&&e.match(/^KT1\w+/),Vd=e=>$d(e)&&e.match(/^tz[1234]\w+/),qd=e=>{if(Hd(e))return{type:"contract",pkh:e};throw new Error(`Invalid contract address: ${e}`)},Kd=e=>{if(Vd(e))return{type:"implicit",pkh:e};throw new Error(`Invalid implicit address: ${e}`)},Wd=Bd.object({standard:Bd.string().regex(/^fa1\.2$/i),contract:Ud}),Gd=Bd.object({standard:Bd.string().regex(/^fa2$/i),tokenId:Bd.string(),contract:Ud}),Zd=Bd.object({id:Bd.number(),standard:Bd.string().regex(/^fa2$/i),tokenId:Bd.string(),contract:Ud,totalSupply:Bd.string().optional(),metadata:Bd.object({displayUri:Bd.string(),decimals:Bd.void().or(Bd.string().regex(/^0$/))})}),Yd=e=>{const t=e.metadata;if("fa1.2"===e.standard){const r=Wd.safeParse(e);return r.success?{type:"fa1.2",metadata:t,contract:r.data.contract.address,tokenId:"0"}:(console.warn("Invalid FA1 token: "+JSON.stringify(e)),null)}const r=Zd.safeParse(e);if(r.success)return{metadata:t,type:"nft",id:r.data.id,contract:r.data.contract.address,tokenId:r.data.tokenId,displayUri:r.data.metadata.displayUri,totalSupply:r.data.totalSupply};const n=Gd.safeParse(e);return n.success?{type:"fa2",metadata:t,contract:n.data.contract.address,tokenId:n.data.tokenId}:(console.warn("Invalid FA2 token: "+JSON.stringify(e)),null)},Xd=e=>`${e.contract}:${e.tokenId}`,Jd=e=>Qd(e)||(e=>{switch(e.type){case"fa1.2":return dh;case"fa2":return hh;case"nft":return fh}})(e),Qd=e=>{var t;return null===(t=e.metadata)||void 0===t?void 0:t.name},eh=e=>th(e)||(e=>{switch(e.type){case"fa1.2":return ph;case"fa2":return mh;case"nft":return gh}})(e),th=e=>{var t;return null===(t=e.metadata)||void 0===t?void 0:t.symbol},rh=e=>{var t,r;return null!==(t=null===(r=e.metadata)||void 0===r?void 0:r.decimals)&&void 0!==t?t:vh},nh=(e,t)=>{const r=new Nc(t),n=rh(e);return r.multipliedBy(new Nc(10).exponentiatedBy(n)).toFixed()},ih=(e,t=vh)=>{const r=Nc(e).dividedBy(Nc(10).pow(t));try{return new Intl.NumberFormat("en-US",{minimumFractionDigits:Number(t),maximumFractionDigits:Number(t)}).format(r.toNumber())}catch(n){return console.warn(`Can't format token amount with decimals = ${t}`),ih(e,"0")}},oh=(e,t,r)=>{var n;if("nft"===t.type)return e;const i=eh(t),o=null===(n=t.metadata)||void 0===n?void 0:n.decimals,a=null!==r&&void 0!==r&&r.showSymbol?` ${i}`:"";return`${ih(e,o)}${a}`},ah=e=>e.metadata.artifactUri||e.displayUri,sh=e=>e.metadata.thumbnailUri||e.displayUri,ch=e=>{var t,r;return null===(t=e.metadata.formats)||void 0===t||null===(r=t.find((t=>t.uri===ah(e))))||void 0===r?void 0:r.mimeType},lh=(e,t)=>`${uh(e,t)}/metadata`,uh=({contract:e,tokenId:t},r)=>`${r.tzktExplorerUrl}/${e}/tokens/${t}`,dh="FA1.2 token",hh="FA2 token",fh="NFT",ph="FA1.2",mh="FA2",gh="NFT",vh="0",yh=e=>{const t=Yd(e.token);return t&&e.balance?{balance:e.balance,lastLevel:e.lastLevel,...t}:null},bh={blockLevel:null,balances:{mutez:{},tokens:{}},transfers:{tez:{},tokens:{}},delegationLevels:{},bakers:[],conversionRate:null,refetchTrigger:0,isLoading:!1,lastTimeUpdated:null},wh=Ya({name:"assets",initialState:bh,extraReducers:e=>e.addCase(Cl.actions.reset,(()=>bh)),reducers:{reset:()=>bh,updateBlockLevel:(e,{payload:t})=>{e.blockLevel=t},updateTokenTransfers:(e,{payload:t})=>{t.forEach((t=>{e.transfers.tokens[t.transactionId]=t}))},updateTezBalance:(e,{payload:t})=>{e.balances.mutez=t.reduce(((e,t)=>({...e,[t.address]:String(t.balance)})),{}),e.delegationLevels=t.reduce(((e,t)=>({...e,[t.address]:t.delegationLevel})),{})},updateTokenBalance:(e,{payload:t})=>{const r=(0,Ns.groupBy)(t,(e=>e.account.address));e.balances.tokens=(0,Ns.mapValues)(r,(e=>(0,Ns.compact)(e.map(yh)).map((({balance:e,contract:t,tokenId:r,lastLevel:n})=>({balance:e,contract:t,tokenId:r,lastLevel:n})))))},updateBakers:(e,{payload:t})=>{e.bakers=t},updateConversionRate:(e,{payload:t})=>{e.conversionRate=t},refetch:e=>{e.refetchTrigger+=1},setIsLoading:(e,{payload:t})=>{e.isLoading=t},setLastTimeUpdated:(e,{payload:t})=>{e.lastTimeUpdated=t}}}),xh=wh.actions,_h={name:"mainnet",rpcUrl:"https://prod.tcinfra.net/rpc/mainnet/",tzktApiUrl:"https://api.mainnet.tzkt.io",tzktExplorerUrl:"https://tzkt.io",buyTezUrl:"https://widget.wert.io"},kh=e=>Sh.map((e=>e.name)).includes(e.name),Sh=[_h,{name:"ghostnet",rpcUrl:"https://ghostnet.ecadinfra.com",tzktApiUrl:"https://api.ghostnet.tzkt.io",tzktExplorerUrl:"https://ghostnet.tzkt.io",buyTezUrl:"https://faucet.ghostnet.teztnets.xyz/"}],Eh=(0,Ns.fromPairs)(Sh.map((e=>[e.name,[]]))),Ah=Ya({name:"batches",initialState:Eh,reducers:{reset:()=>Eh,add:(e,{payload:{operations:t,network:r}})=>{r.name in e||(e[r.name]=[]);const n=e[r.name],i=n.find((e=>e.sender.address.pkh===t.sender.address.pkh));i?i.operations.push(...t.operations):n.push(t)},clear:(e,{payload:{pkh:t,network:r}})=>{const n=e[r.name]||[],i=(0,Ns.findIndex)(n,(e=>e.sender.address.pkh===t));-1!==i&&n.splice(i,1)},removeItem:(e,{payload:{pkh:t,index:r,network:n}})=>{const i=e[n.name]||[],o=(0,Ns.findIndex)(i,(e=>e.sender.address.pkh===t));if(-1===o)return;const a=i[o];rOh,addConnection:(e,{payload:t})=>{e[t.dAppId]={accountPkh:t.accountPkh,networkType:t.networkType}},removeConnection:(e,{payload:t})=>{delete e[t.dAppId]}}}),jh=(Th.actions,(e,t)=>Object.values(e).map((e=>e.name)).includes(t)),Ch={},Rh=Ya({name:"contacts",initialState:Ch,reducers:{reset:()=>Ch,upsert:(e,{payload:t})=>{jh(e,t.name)||(e[t.pkh]=t)},remove:(e,{payload:t})=>{delete e[t]}}}),Ih=Rh.actions,Mh=[],Lh=Ya({name:"errors",initialState:Mh,reducers:{reset:()=>Mh,add(e,{payload:t}){100===e.length&&e.shift(),e.push(t)}}}),Nh={items:[],pendingOperations:{},labelsMap:{}},Dh=Ya({name:"multisigs",initialState:Nh,reducers:{reset:()=>Nh,setMultisigs:(e,{payload:t})=>{const r=(0,Ns.fromPairs)(e.items.map((e=>[e.address.pkh,e.label])));e.items=t.map(((t,n)=>({...t,label:r[t.address.pkh]||e.labelsMap[t.address.pkh]||`Multisig Account ${n}`,type:"multisig"})))},addMultisigLabel:(e,{payload:{pkh:t,label:r}})=>{e.labelsMap[t]=r},setPendingOperations:(e,{payload:t})=>{e.pendingOperations=(0,Ns.groupBy)(t,(e=>e.bigmapId))},setName:(e,{payload:t})=>{const{account:{address:{pkh:r}},newName:n}=t,i=e.items.find((e=>e.address.pkh===r));i&&(i.label=n)}}}),zh=Dh.actions,Bh={available:Sh,current:_h},Uh=Ya({name:"networks",initialState:Bh,reducers:{reset:()=>Bh,setCurrent:(e,{payload:t})=>{e.current=t},upsertNetwork:(e,{payload:t})=>{if(kh(t))return;const r=e.available.findIndex((e=>e.name===t.name));e.current.name===t.name&&(e.current=t),-1===r?e.available.push(t):e.available[r]=t},removeNetwork:(e,{payload:t})=>{kh(t)||(0,Ns.remove)(e.available,(e=>e.name===t.name))}}}),Fh=Uh.actions,$h=(0,Ns.fromPairs)(Sh.map((e=>[e.name,{}]))),Hh=Ya({name:"tokens",initialState:$h,reducers:{reset:()=>$h,addTokens:(e,{payload:{network:t,tokens:r}})=>{(0,Ns.compact)(r.map(Yd)).forEach((r=>{(0,Ns.setWith)(e,[t.name,r.contract,r.tokenId],r,Object)}))}}}),Vh=Hh.actions,qh={key:"root",version:2,storage:Ls.A,blacklist:["accounts"],migrate:Ms(Bs,{debug:!1})},Kh=ka({accounts:Ps({key:"accounts",version:2,storage:Ls.A,migrate:Ms(Us,{debug:!1})},Cl.reducer),announcement:zs.reducer,assets:wh.reducer,batches:Ah.reducer,beacon:Th.reducer,contacts:Rh.reducer,errors:Lh.reducer,multisigs:Dh.reducer,networks:Uh.reducer,tokens:Hh.reducer}),Wh=function(e){var t,r=Ga(),n=e||{},i=n.reducer,o=void 0===i?void 0:i,a=n.middleware,s=void 0===a?r():a,c=n.devTools,l=void 0===c||c,u=n.preloadedState,d=void 0===u?void 0:u,h=n.enhancers,f=void 0===h?void 0:h;if("function"===typeof o)t=o;else{if(!Ha(o))throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');t=ka(o)}var p=s;"function"===typeof p&&(p=p(r));var m=Ea.apply(void 0,p),g=Sa;l&&(g=$a(Ba({trace:!1},"object"===typeof l&&l)));var v=new Ka(m),y=v;return Array.isArray(f)?y=Ca([m],f):"function"===typeof f&&(y=f(v)),_a(t,d,g.apply(void 0,y))}({reducer:Ps(qh,Kh),middleware:e=>e({serializableCheck:{ignoredActions:[cs,ls,us,ds,hs,fs]}})}),Gh=e=>(0,xn.jsx)(io,{store:Wh,children:e.children});var Zh=String.raw,Yh=Zh` +/*! For license information please see main.6058878c.js.LICENSE.txt */ +(()=>{var e={9140:(e,t)=>{var r;function n(e,t){navigator.onLine||e("offline"),e("error",t)}function i(e,t,r){navigator.serviceWorker.register(e,r).then((function(e){t("registered",e),e.waiting?t("updated",e):e.onupdatefound=function(){t("updatefound",e);var r=e.installing;r.onstatechange=function(){"installed"===r.state&&(navigator.serviceWorker.controller?t("updated",e):t("cached",e))}}})).catch((function(e){return n(t,e)}))}"undefined"!==typeof window&&(r="undefined"===typeof document||"interactive"!==document.readyState&&"complete"!==document.readyState?"undefined"!==typeof Promise?new Promise((function(e){return window.addEventListener("load",e)})):{then:function(e){return window.addEventListener("load",e)}}:Promise.resolve()),t.k=function(e,t){void 0===t&&(t={});var o=t.registrationOptions;void 0===o&&(o={}),delete t.registrationOptions;var a=function(e){for(var r=[],n=arguments.length-1;n-- >0;)r[n]=arguments[n+1];t&&t[e]&&t[e].apply(t,r)};"serviceWorker"in navigator&&r.then((function(){Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/))?(!function(e,t,r){fetch(e).then((function(n){404===n.status?(t("error",new Error("Service worker not found at "+e)),unregister()):-1===n.headers.get("content-type").indexOf("javascript")?(t("error",new Error("Expected "+e+" to have javascript content-type, but received "+n.headers.get("content-type"))),unregister()):i(e,t,r)})).catch((function(e){return n(t,e)}))}(e,a,o),navigator.serviceWorker.ready.then((function(e){a("ready",e)}))):(i(e,a,o),navigator.serviceWorker.ready.then((function(e){a("ready",e)})))}))}},3958:(e,t,r)=>{const n=Symbol("SemVer ANY");class i{static get ANY(){return n}constructor(e,t){if(t=o(t),e instanceof i){if(e.loose===!!t.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),l("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===n?this.value="":this.value=this.operator+this.semver.version,l("comp",this)}parse(e){const t=this.options.loose?a[s.COMPARATORLOOSE]:a[s.COMPARATOR],r=e.match(t);if(!r)throw new TypeError(`Invalid comparator: ${e}`);this.operator=void 0!==r[1]?r[1]:"","="===this.operator&&(this.operator=""),r[2]?this.semver=new u(r[2],this.options.loose):this.semver=n}toString(){return this.value}test(e){if(l("Comparator.test",e,this.options.loose),this.semver===n||e===n)return!0;if("string"===typeof e)try{e=new u(e,this.options)}catch(t){return!1}return c(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof i))throw new TypeError("a Comparator is required");return""===this.operator?""===this.value||new d(e.value,t).test(this.value):""===e.operator?""===e.value||new d(this.value,t).test(e.semver):(!(t=o(t)).includePrerelease||"<0.0.0-0"!==this.value&&"<0.0.0-0"!==e.value)&&(!(!t.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0")))&&(!(!this.operator.startsWith(">")||!e.operator.startsWith(">"))||(!(!this.operator.startsWith("<")||!e.operator.startsWith("<"))||(!(this.semver.version!==e.semver.version||!this.operator.includes("=")||!e.operator.includes("="))||(!!(c(this.semver,"<",e.semver,t)&&this.operator.startsWith(">")&&e.operator.startsWith("<"))||!!(c(this.semver,">",e.semver,t)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))))))}}e.exports=i;const o=r(8089),{safeRe:a,t:s}=r(7348),c=r(6521),l=r(558),u=r(3810),d=r(8361)},8361:(e,t,r)=>{class n{constructor(e,t){if(t=o(t),e instanceof n)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new n(e.raw,t);if(e instanceof a)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map((e=>this.parseRange(e.trim()))).filter((e=>e.length)),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const e=this.set[0];if(this.set=this.set.filter((e=>!g(e[0]))),0===this.set.length)this.set=[e];else if(this.set.length>1)for(const t of this.set)if(1===t.length&&v(t[0])){this.set=[t];break}}this.format()}format(){return this.range=this.set.map((e=>e.join(" ").trim())).join("||").trim(),this.range}toString(){return this.range}parseRange(e){const t=((this.options.includePrerelease&&p)|(this.options.loose&&m))+":"+e,r=i.get(t);if(r)return r;const n=this.options.loose,o=n?l[u.HYPHENRANGELOOSE]:l[u.HYPHENRANGE];e=e.replace(o,T(this.options.includePrerelease)),s("hyphen replace",e),e=e.replace(l[u.COMPARATORTRIM],d),s("comparator trim",e),e=e.replace(l[u.TILDETRIM],h),s("tilde trim",e),e=e.replace(l[u.CARETTRIM],f),s("caret trim",e);let c=e.split(" ").map((e=>b(e,this.options))).join(" ").split(/\s+/).map((e=>O(e,this.options)));n&&(c=c.filter((e=>(s("loose invalid filter",e,this.options),!!e.match(l[u.COMPARATORLOOSE]))))),s("range list",c);const v=new Map,y=c.map((e=>new a(e,this.options)));for(const i of y){if(g(i))return[i];v.set(i.value,i)}v.size>1&&v.has("")&&v.delete("");const w=[...v.values()];return i.set(t,w),w}intersects(e,t){if(!(e instanceof n))throw new TypeError("a Range is required");return this.set.some((r=>y(r,t)&&e.set.some((e=>y(e,t)&&r.every((r=>e.every((e=>r.intersects(e,t)))))))))}test(e){if(!e)return!1;if("string"===typeof e)try{e=new c(e,this.options)}catch(t){return!1}for(let r=0;r"<0.0.0-0"===e.value,v=e=>""===e.value,y=(e,t)=>{let r=!0;const n=e.slice();let i=n.pop();for(;r&&n.length;)r=n.every((e=>i.intersects(e,t))),i=n.pop();return r},b=(e,t)=>(s("comp",e,t),e=k(e,t),s("caret",e),e=x(e,t),s("tildes",e),e=E(e,t),s("xrange",e),e=P(e,t),s("stars",e),e),w=e=>!e||"x"===e.toLowerCase()||"*"===e,x=(e,t)=>e.trim().split(/\s+/).map((e=>_(e,t))).join(" "),_=(e,t)=>{const r=t.loose?l[u.TILDELOOSE]:l[u.TILDE];return e.replace(r,((t,r,n,i,o)=>{let a;return s("tilde",e,t,r,n,i,o),w(r)?a="":w(n)?a=`>=${r}.0.0 <${+r+1}.0.0-0`:w(i)?a=`>=${r}.${n}.0 <${r}.${+n+1}.0-0`:o?(s("replaceTilde pr",o),a=`>=${r}.${n}.${i}-${o} <${r}.${+n+1}.0-0`):a=`>=${r}.${n}.${i} <${r}.${+n+1}.0-0`,s("tilde return",a),a}))},k=(e,t)=>e.trim().split(/\s+/).map((e=>S(e,t))).join(" "),S=(e,t)=>{s("caret",e,t);const r=t.loose?l[u.CARETLOOSE]:l[u.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,((t,r,i,o,a)=>{let c;return s("caret",e,t,r,i,o,a),w(r)?c="":w(i)?c=`>=${r}.0.0${n} <${+r+1}.0.0-0`:w(o)?c="0"===r?`>=${r}.${i}.0${n} <${r}.${+i+1}.0-0`:`>=${r}.${i}.0${n} <${+r+1}.0.0-0`:a?(s("replaceCaret pr",a),c="0"===r?"0"===i?`>=${r}.${i}.${o}-${a} <${r}.${i}.${+o+1}-0`:`>=${r}.${i}.${o}-${a} <${r}.${+i+1}.0-0`:`>=${r}.${i}.${o}-${a} <${+r+1}.0.0-0`):(s("no pr"),c="0"===r?"0"===i?`>=${r}.${i}.${o}${n} <${r}.${i}.${+o+1}-0`:`>=${r}.${i}.${o}${n} <${r}.${+i+1}.0-0`:`>=${r}.${i}.${o} <${+r+1}.0.0-0`),s("caret return",c),c}))},E=(e,t)=>(s("replaceXRanges",e,t),e.split(/\s+/).map((e=>A(e,t))).join(" ")),A=(e,t)=>{e=e.trim();const r=t.loose?l[u.XRANGELOOSE]:l[u.XRANGE];return e.replace(r,((r,n,i,o,a,c)=>{s("xRange",e,r,n,i,o,a,c);const l=w(i),u=l||w(o),d=u||w(a),h=d;return"="===n&&h&&(n=""),c=t.includePrerelease?"-0":"",l?r=">"===n||"<"===n?"<0.0.0-0":"*":n&&h?(u&&(o=0),a=0,">"===n?(n=">=",u?(i=+i+1,o=0,a=0):(o=+o+1,a=0)):"<="===n&&(n="<",u?i=+i+1:o=+o+1),"<"===n&&(c="-0"),r=`${n+i}.${o}.${a}${c}`):u?r=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(r=`>=${i}.${o}.0${c} <${i}.${+o+1}.0-0`),s("xRange return",r),r}))},P=(e,t)=>(s("replaceStars",e,t),e.trim().replace(l[u.STAR],"")),O=(e,t)=>(s("replaceGTE0",e,t),e.trim().replace(l[t.includePrerelease?u.GTE0PRE:u.GTE0],"")),T=e=>(t,r,n,i,o,a,s,c,l,u,d,h,f)=>`${r=w(n)?"":w(i)?`>=${n}.0.0${e?"-0":""}`:w(o)?`>=${n}.${i}.0${e?"-0":""}`:a?`>=${r}`:`>=${r}${e?"-0":""}`} ${c=w(l)?"":w(u)?`<${+l+1}.0.0-0`:w(d)?`<${l}.${+u+1}.0-0`:h?`<=${l}.${u}.${d}-${h}`:e?`<${l}.${u}.${+d+1}-0`:`<=${c}`}`.trim(),C=(e,t,r)=>{for(let n=0;n0){const n=e[r].semver;if(n.major===t.major&&n.minor===t.minor&&n.patch===t.patch)return!0}return!1}return!0}},3810:(e,t,r)=>{const n=r(558),{MAX_LENGTH:i,MAX_SAFE_INTEGER:o}=r(9016),{safeRe:a,t:s}=r(7348),c=r(8089),{compareIdentifiers:l}=r(4073);class u{constructor(e,t){if(t=c(t),e instanceof u){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if("string"!==typeof e)throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>i)throw new TypeError(`version is longer than ${i} characters`);n("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;const r=e.trim().match(t.loose?a[s.LOOSE]:a[s.FULL]);if(!r)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>o||this.major<0)throw new TypeError("Invalid major version");if(this.minor>o||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>o||this.patch<0)throw new TypeError("Invalid patch version");r[4]?this.prerelease=r[4].split(".").map((e=>{if(/^[0-9]+$/.test(e)){const t=+e;if(t>=0&&t=0;)"number"===typeof this.prerelease[n]&&(this.prerelease[n]++,n=-2);if(-1===n){if(t===this.prerelease.join(".")&&!1===r)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(e)}}if(t){let n=[t,e];!1===r&&(n=[t]),0===l(this.prerelease[0],t)?isNaN(this.prerelease[1])&&(this.prerelease=n):this.prerelease=n}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}}e.exports=u},5308:(e,t,r)=>{const n=r(1430);e.exports=(e,t)=>{const r=n(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null}},6521:(e,t,r)=>{const n=r(1339),i=r(7673),o=r(9162),a=r(7827),s=r(9085),c=r(7214);e.exports=(e,t,r,l)=>{switch(t){case"===":return"object"===typeof e&&(e=e.version),"object"===typeof r&&(r=r.version),e===r;case"!==":return"object"===typeof e&&(e=e.version),"object"===typeof r&&(r=r.version),e!==r;case"":case"=":case"==":return n(e,r,l);case"!=":return i(e,r,l);case">":return o(e,r,l);case">=":return a(e,r,l);case"<":return s(e,r,l);case"<=":return c(e,r,l);default:throw new TypeError(`Invalid operator: ${t}`)}}},4836:(e,t,r)=>{const n=r(3810),i=r(1430),{safeRe:o,t:a}=r(7348);e.exports=(e,t)=>{if(e instanceof n)return e;if("number"===typeof e&&(e=String(e)),"string"!==typeof e)return null;let r=null;if((t=t||{}).rtl){let t;for(;(t=o[a.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length);)r&&t.index+t[0].length===r.index+r[0].length||(r=t),o[a.COERCERTL].lastIndex=t.index+t[1].length+t[2].length;o[a.COERCERTL].lastIndex=-1}else r=e.match(o[a.COERCE]);return null===r?null:i(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,t)}},7987:(e,t,r)=>{const n=r(3810);e.exports=(e,t,r)=>{const i=new n(e,r),o=new n(t,r);return i.compare(o)||i.compareBuild(o)}},7969:(e,t,r)=>{const n=r(1874);e.exports=(e,t)=>n(e,t,!0)},1874:(e,t,r)=>{const n=r(3810);e.exports=(e,t,r)=>new n(e,r).compare(new n(t,r))},5386:(e,t,r)=>{const n=r(1430);e.exports=(e,t)=>{const r=n(e,null,!0),i=n(t,null,!0),o=r.compare(i);if(0===o)return null;const a=o>0,s=a?r:i,c=a?i:r,l=!!s.prerelease.length;if(!!c.prerelease.length&&!l)return c.patch||c.minor?s.patch?"patch":s.minor?"minor":"major":"major";const u=l?"pre":"";return r.major!==i.major?u+"major":r.minor!==i.minor?u+"minor":r.patch!==i.patch?u+"patch":"prerelease"}},1339:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>0===n(e,t,r)},9162:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>n(e,t,r)>0},7827:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>n(e,t,r)>=0},5869:(e,t,r)=>{const n=r(3810);e.exports=(e,t,r,i,o)=>{"string"===typeof r&&(o=i,i=r,r=void 0);try{return new n(e instanceof n?e.version:e,r).inc(t,i,o).version}catch(a){return null}}},9085:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>n(e,t,r)<0},7214:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>n(e,t,r)<=0},9004:(e,t,r)=>{const n=r(3810);e.exports=(e,t)=>new n(e,t).major},2816:(e,t,r)=>{const n=r(3810);e.exports=(e,t)=>new n(e,t).minor},7673:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>0!==n(e,t,r)},1430:(e,t,r)=>{const n=r(3810);e.exports=(e,t,r=!1)=>{if(e instanceof n)return e;try{return new n(e,t)}catch(i){if(!r)return null;throw i}}},1943:(e,t,r)=>{const n=r(3810);e.exports=(e,t)=>new n(e,t).patch},4879:(e,t,r)=>{const n=r(1430);e.exports=(e,t)=>{const r=n(e,t);return r&&r.prerelease.length?r.prerelease:null}},948:(e,t,r)=>{const n=r(1874);e.exports=(e,t,r)=>n(t,e,r)},7915:(e,t,r)=>{const n=r(7987);e.exports=(e,t)=>e.sort(((e,r)=>n(r,e,t)))},6172:(e,t,r)=>{const n=r(8361);e.exports=(e,t,r)=>{try{t=new n(t,r)}catch(i){return!1}return t.test(e)}},5813:(e,t,r)=>{const n=r(7987);e.exports=(e,t)=>e.sort(((e,r)=>n(e,r,t)))},8795:(e,t,r)=>{const n=r(1430);e.exports=(e,t)=>{const r=n(e,t);return r?r.version:null}},1187:(e,t,r)=>{const n=r(7348),i=r(9016),o=r(3810),a=r(4073),s=r(1430),c=r(8795),l=r(5308),u=r(5869),d=r(5386),h=r(9004),f=r(2816),p=r(1943),m=r(4879),g=r(1874),v=r(948),y=r(7969),b=r(7987),w=r(5813),x=r(7915),_=r(9162),k=r(9085),S=r(1339),E=r(7673),A=r(7827),P=r(7214),O=r(6521),T=r(4836),C=r(3958),j=r(8361),R=r(6172),I=r(7153),M=r(6190),L=r(5340),N=r(9695),D=r(2192),z=r(2365),B=r(7501),F=r(916),U=r(6382),$=r(8307),H=r(5650);e.exports={parse:s,valid:c,clean:l,inc:u,diff:d,major:h,minor:f,patch:p,prerelease:m,compare:g,rcompare:v,compareLoose:y,compareBuild:b,sort:w,rsort:x,gt:_,lt:k,eq:S,neq:E,gte:A,lte:P,cmp:O,coerce:T,Comparator:C,Range:j,satisfies:R,toComparators:I,maxSatisfying:M,minSatisfying:L,minVersion:N,validRange:D,outside:z,gtr:B,ltr:F,intersects:U,simplifyRange:$,subset:H,SemVer:o,re:n.re,src:n.src,tokens:n.t,SEMVER_SPEC_VERSION:i.SEMVER_SPEC_VERSION,RELEASE_TYPES:i.RELEASE_TYPES,compareIdentifiers:a.compareIdentifiers,rcompareIdentifiers:a.rcompareIdentifiers}},9016:e=>{const t=Number.MAX_SAFE_INTEGER||9007199254740991;e.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:t,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}},558:(e,t,r)=>{const n="object"===typeof r(9996)&&{NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}.NODE_DEBUG&&/\bsemver\b/i.test({NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};e.exports=n},4073:e=>{const t=/^[0-9]+$/,r=(e,r)=>{const n=t.test(e),i=t.test(r);return n&&i&&(e=+e,r=+r),e===r?0:n&&!i?-1:i&&!n?1:er(t,e)}},8089:e=>{const t=Object.freeze({loose:!0}),r=Object.freeze({});e.exports=e=>e?"object"!==typeof e?t:e:r},7348:(e,t,r)=>{const{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:i,MAX_LENGTH:o}=r(9016),a=r(558),s=(t=e.exports={}).re=[],c=t.safeRe=[],l=t.src=[],u=t.t={};let d=0;const h="[a-zA-Z0-9-]",f=[["\\s",1],["\\d",o],[h,i]],p=(e,t,r)=>{const n=(e=>{for(const[t,r]of f)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e})(t),i=d++;a(e,i,t),u[e]=i,l[i]=t,s[i]=new RegExp(t,r?"g":void 0),c[i]=new RegExp(n,r?"g":void 0)};p("NUMERICIDENTIFIER","0|[1-9]\\d*"),p("NUMERICIDENTIFIERLOOSE","\\d+"),p("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${h}*`),p("MAINVERSION",`(${l[u.NUMERICIDENTIFIER]})\\.(${l[u.NUMERICIDENTIFIER]})\\.(${l[u.NUMERICIDENTIFIER]})`),p("MAINVERSIONLOOSE",`(${l[u.NUMERICIDENTIFIERLOOSE]})\\.(${l[u.NUMERICIDENTIFIERLOOSE]})\\.(${l[u.NUMERICIDENTIFIERLOOSE]})`),p("PRERELEASEIDENTIFIER",`(?:${l[u.NUMERICIDENTIFIER]}|${l[u.NONNUMERICIDENTIFIER]})`),p("PRERELEASEIDENTIFIERLOOSE",`(?:${l[u.NUMERICIDENTIFIERLOOSE]}|${l[u.NONNUMERICIDENTIFIER]})`),p("PRERELEASE",`(?:-(${l[u.PRERELEASEIDENTIFIER]}(?:\\.${l[u.PRERELEASEIDENTIFIER]})*))`),p("PRERELEASELOOSE",`(?:-?(${l[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${l[u.PRERELEASEIDENTIFIERLOOSE]})*))`),p("BUILDIDENTIFIER",`${h}+`),p("BUILD",`(?:\\+(${l[u.BUILDIDENTIFIER]}(?:\\.${l[u.BUILDIDENTIFIER]})*))`),p("FULLPLAIN",`v?${l[u.MAINVERSION]}${l[u.PRERELEASE]}?${l[u.BUILD]}?`),p("FULL",`^${l[u.FULLPLAIN]}$`),p("LOOSEPLAIN",`[v=\\s]*${l[u.MAINVERSIONLOOSE]}${l[u.PRERELEASELOOSE]}?${l[u.BUILD]}?`),p("LOOSE",`^${l[u.LOOSEPLAIN]}$`),p("GTLT","((?:<|>)?=?)"),p("XRANGEIDENTIFIERLOOSE",`${l[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),p("XRANGEIDENTIFIER",`${l[u.NUMERICIDENTIFIER]}|x|X|\\*`),p("XRANGEPLAIN",`[v=\\s]*(${l[u.XRANGEIDENTIFIER]})(?:\\.(${l[u.XRANGEIDENTIFIER]})(?:\\.(${l[u.XRANGEIDENTIFIER]})(?:${l[u.PRERELEASE]})?${l[u.BUILD]}?)?)?`),p("XRANGEPLAINLOOSE",`[v=\\s]*(${l[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[u.XRANGEIDENTIFIERLOOSE]})(?:${l[u.PRERELEASELOOSE]})?${l[u.BUILD]}?)?)?`),p("XRANGE",`^${l[u.GTLT]}\\s*${l[u.XRANGEPLAIN]}$`),p("XRANGELOOSE",`^${l[u.GTLT]}\\s*${l[u.XRANGEPLAINLOOSE]}$`),p("COERCE",`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?(?:$|[^\\d])`),p("COERCERTL",l[u.COERCE],!0),p("LONETILDE","(?:~>?)"),p("TILDETRIM",`(\\s*)${l[u.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",p("TILDE",`^${l[u.LONETILDE]}${l[u.XRANGEPLAIN]}$`),p("TILDELOOSE",`^${l[u.LONETILDE]}${l[u.XRANGEPLAINLOOSE]}$`),p("LONECARET","(?:\\^)"),p("CARETTRIM",`(\\s*)${l[u.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",p("CARET",`^${l[u.LONECARET]}${l[u.XRANGEPLAIN]}$`),p("CARETLOOSE",`^${l[u.LONECARET]}${l[u.XRANGEPLAINLOOSE]}$`),p("COMPARATORLOOSE",`^${l[u.GTLT]}\\s*(${l[u.LOOSEPLAIN]})$|^$`),p("COMPARATOR",`^${l[u.GTLT]}\\s*(${l[u.FULLPLAIN]})$|^$`),p("COMPARATORTRIM",`(\\s*)${l[u.GTLT]}\\s*(${l[u.LOOSEPLAIN]}|${l[u.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",p("HYPHENRANGE",`^\\s*(${l[u.XRANGEPLAIN]})\\s+-\\s+(${l[u.XRANGEPLAIN]})\\s*$`),p("HYPHENRANGELOOSE",`^\\s*(${l[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${l[u.XRANGEPLAINLOOSE]})\\s*$`),p("STAR","(<|>)?=?\\s*\\*"),p("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),p("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")},7501:(e,t,r)=>{const n=r(2365);e.exports=(e,t,r)=>n(e,t,">",r)},6382:(e,t,r)=>{const n=r(8361);e.exports=(e,t,r)=>(e=new n(e,r),t=new n(t,r),e.intersects(t,r))},916:(e,t,r)=>{const n=r(2365);e.exports=(e,t,r)=>n(e,t,"<",r)},6190:(e,t,r)=>{const n=r(3810),i=r(8361);e.exports=(e,t,r)=>{let o=null,a=null,s=null;try{s=new i(t,r)}catch(c){return null}return e.forEach((e=>{s.test(e)&&(o&&-1!==a.compare(e)||(o=e,a=new n(o,r)))})),o}},5340:(e,t,r)=>{const n=r(3810),i=r(8361);e.exports=(e,t,r)=>{let o=null,a=null,s=null;try{s=new i(t,r)}catch(c){return null}return e.forEach((e=>{s.test(e)&&(o&&1!==a.compare(e)||(o=e,a=new n(o,r)))})),o}},9695:(e,t,r)=>{const n=r(3810),i=r(8361),o=r(9162);e.exports=(e,t)=>{e=new i(e,t);let r=new n("0.0.0");if(e.test(r))return r;if(r=new n("0.0.0-0"),e.test(r))return r;r=null;for(let i=0;i{const t=new n(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":a&&!o(t,a)||(a=t);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${e.operator}`)}})),!a||r&&!o(r,a)||(r=a)}return r&&e.test(r)?r:null}},2365:(e,t,r)=>{const n=r(3810),i=r(3958),{ANY:o}=i,a=r(8361),s=r(6172),c=r(9162),l=r(9085),u=r(7214),d=r(7827);e.exports=(e,t,r,h)=>{let f,p,m,g,v;switch(e=new n(e,h),t=new a(t,h),r){case">":f=c,p=u,m=l,g=">",v=">=";break;case"<":f=l,p=d,m=c,g="<",v="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(s(e,t,h))return!1;for(let n=0;n{e.semver===o&&(e=new i(">=0.0.0")),a=a||e,s=s||e,f(e.semver,a.semver,h)?a=e:m(e.semver,s.semver,h)&&(s=e)})),a.operator===g||a.operator===v)return!1;if((!s.operator||s.operator===g)&&p(e,s.semver))return!1;if(s.operator===v&&m(e,s.semver))return!1}return!0}},8307:(e,t,r)=>{const n=r(6172),i=r(1874);e.exports=(e,t,r)=>{const o=[];let a=null,s=null;const c=e.sort(((e,t)=>i(e,t,r)));for(const i of c){n(i,t,r)?(s=i,a||(a=i)):(s&&o.push([a,s]),s=null,a=null)}a&&o.push([a,null]);const l=[];for(const[n,i]of o)n===i?l.push(n):i||n!==c[0]?i?n===c[0]?l.push(`<=${i}`):l.push(`${n} - ${i}`):l.push(`>=${n}`):l.push("*");const u=l.join(" || "),d="string"===typeof t.raw?t.raw:String(t);return u.length{const n=r(8361),i=r(3958),{ANY:o}=i,a=r(6172),s=r(1874),c=[new i(">=0.0.0-0")],l=[new i(">=0.0.0")],u=(e,t,r)=>{if(e===t)return!0;if(1===e.length&&e[0].semver===o){if(1===t.length&&t[0].semver===o)return!0;e=r.includePrerelease?c:l}if(1===t.length&&t[0].semver===o){if(r.includePrerelease)return!0;t=l}const n=new Set;let i,u,f,p,m,g,v;for(const o of e)">"===o.operator||">="===o.operator?i=d(i,o,r):"<"===o.operator||"<="===o.operator?u=h(u,o,r):n.add(o.semver);if(n.size>1)return null;if(i&&u){if(f=s(i.semver,u.semver,r),f>0)return null;if(0===f&&(">="!==i.operator||"<="!==u.operator))return null}for(const o of n){if(i&&!a(o,String(i),r))return null;if(u&&!a(o,String(u),r))return null;for(const e of t)if(!a(o,String(e),r))return!1;return!0}let y=!(!u||r.includePrerelease||!u.semver.prerelease.length)&&u.semver,b=!(!i||r.includePrerelease||!i.semver.prerelease.length)&&i.semver;y&&1===y.prerelease.length&&"<"===u.operator&&0===y.prerelease[0]&&(y=!1);for(const o of t){if(v=v||">"===o.operator||">="===o.operator,g=g||"<"===o.operator||"<="===o.operator,i)if(b&&o.semver.prerelease&&o.semver.prerelease.length&&o.semver.major===b.major&&o.semver.minor===b.minor&&o.semver.patch===b.patch&&(b=!1),">"===o.operator||">="===o.operator){if(p=d(i,o,r),p===o&&p!==i)return!1}else if(">="===i.operator&&!a(i.semver,String(o),r))return!1;if(u)if(y&&o.semver.prerelease&&o.semver.prerelease.length&&o.semver.major===y.major&&o.semver.minor===y.minor&&o.semver.patch===y.patch&&(y=!1),"<"===o.operator||"<="===o.operator){if(m=h(u,o,r),m===o&&m!==u)return!1}else if("<="===u.operator&&!a(u.semver,String(o),r))return!1;if(!o.operator&&(u||i)&&0!==f)return!1}return!(i&&g&&!u&&0!==f)&&(!(u&&v&&!i&&0!==f)&&(!b&&!y))},d=(e,t,r)=>{if(!e)return t;const n=s(e.semver,t.semver,r);return n>0?e:n<0||">"===t.operator&&">="===e.operator?t:e},h=(e,t,r)=>{if(!e)return t;const n=s(e.semver,t.semver,r);return n<0?e:n>0||"<"===t.operator&&"<="===e.operator?t:e};e.exports=(e,t,r={})=>{if(e===t)return!0;e=new n(e,r),t=new n(t,r);let i=!1;e:for(const n of e.set){for(const e of t.set){const t=u(n,e,r);if(i=i||null!==t,t)continue e}if(i)return!1}return!0}},7153:(e,t,r)=>{const n=r(8361);e.exports=(e,t)=>new n(e,t).set.map((e=>e.map((e=>e.value)).join(" ").trim().split(" ")))},2192:(e,t,r)=>{const n=r(8361);e.exports=(e,t)=>{try{return new n(e,t).range||"*"}catch(r){return null}}},8903:(e,t)=>{"use strict";function r(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function n(e){if("boolean"!==typeof e)throw new Error(`Expected boolean, not ${e}`)}function i(e,...t){if(!(e instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new TypeError(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function o(e){if("function"!==typeof e||"function"!==typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");r(e.outputLen),r(e.blockLen)}function a(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function s(e,t){i(e);const r=t.outputLen;if(e.length{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SHA2=void 0;const n=r(8903),i=r(7317);class o extends i.Hash{constructor(e,t,r,n){super(),this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=n,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,i.createView)(this.buffer)}update(e){n.default.exists(this);const{view:t,buffer:r,blockLen:o}=this,a=(e=(0,i.toBytes)(e)).length;for(let n=0;no-s&&(this.process(r,0),s=0);for(let n=s;n>i&o),s=Number(r&o),c=n?4:0,l=n?0:4;e.setUint32(t+c,a,n),e.setUint32(t+l,s,n)}(r,o-8,BigInt(8*this.length),a),this.process(r,0);const c=(0,i.createView)(e),l=this.outputLen;if(l%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const u=l/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.add=t.toBig=t.split=t.fromBig=void 0;const r=BigInt(2**32-1),n=BigInt(32);function i(e,t=!1){return t?{h:Number(e&r),l:Number(e>>n&r)}:{h:0|Number(e>>n&r),l:0|Number(e&r)}}function o(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let o=0;oBigInt(e>>>0)<>>0);function a(e,t,r,n){const i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:0|i}}t.add=a;const s={fromBig:i,split:o,toBig:t.toBig,shrSH:(e,t,r)=>e>>>r,shrSL:(e,t,r)=>e<<32-r|t>>>r,rotrSH:(e,t,r)=>e>>>r|t<<32-r,rotrSL:(e,t,r)=>e<<32-r|t>>>r,rotrBH:(e,t,r)=>e<<64-r|t>>>r-32,rotrBL:(e,t,r)=>e>>>r-32|t<<64-r,rotr32H:(e,t)=>t,rotr32L:(e,t)=>e,rotlSH:(e,t,r)=>e<>>32-r,rotlSL:(e,t,r)=>t<>>32-r,rotlBH:(e,t,r)=>t<>>64-r,rotlBL:(e,t,r)=>e<>>64-r,add:a,add3L:(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),add3H:(e,t,r,n)=>t+r+n+(e/2**32|0)|0,add4L:(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),add4H:(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,add5H:(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0,add5L:(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0)};t.default=s},8107:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.crypto=void 0,t.crypto="object"===typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0},9113:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hmac=void 0;const n=r(8903),i=r(7317);class o extends i.Hash{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,n.default.hash(e);const r=(0,i.toBytes)(t);if(this.iHash=e.create(),"function"!==typeof this.iHash.update)throw new TypeError("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const o=this.blockLen,a=new Uint8Array(o);a.set(r.length>o?e.create().update(r).digest():r);for(let n=0;nnew o(e,t).update(r).digest(),t.hmac.create=(e,t)=>new o(e,t)},9419:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.pbkdf2Async=t.pbkdf2=void 0;const n=r(8903),i=r(9113),o=r(7317);function a(e,t,r,a){n.default.hash(e);const s=(0,o.checkOpts)({dkLen:32,asyncTick:10},a),{c:c,dkLen:l,asyncTick:u}=s;if(n.default.number(c),n.default.number(l),n.default.number(u),c<1)throw new Error("PBKDF2: iterations (c) should be >= 1");const d=(0,o.toBytes)(t),h=(0,o.toBytes)(r),f=new Uint8Array(l),p=i.hmac.create(e,d),m=p._cloneInto().update(h);return{c:c,dkLen:l,asyncTick:u,DK:f,PRF:p,PRFSalt:m}}function s(e,t,r,n,i){return e.destroy(),t.destroy(),n&&n.destroy(),i.fill(0),r}t.pbkdf2=function(e,t,r,n){const{c:i,dkLen:c,DK:l,PRF:u,PRFSalt:d}=a(e,t,r,n);let h;const f=new Uint8Array(4),p=(0,o.createView)(f),m=new Uint8Array(u.outputLen);for(let o=1,a=0;a{d._cloneInto(f).update(g).digestInto(g);for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sha224=t.sha256=void 0;const n=r(2689),i=r(7317),o=(e,t,r)=>e&t^e&r^t&r,a=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),s=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),c=new Uint32Array(64);class l extends n.SHA2{constructor(){super(64,32,8,!1),this.A=0|s[0],this.B=0|s[1],this.C=0|s[2],this.D=0|s[3],this.E=0|s[4],this.F=0|s[5],this.G=0|s[6],this.H=0|s[7]}get(){const{A:e,B:t,C:r,D:n,E:i,F:o,G:a,H:s}=this;return[e,t,r,n,i,o,a,s]}set(e,t,r,n,i,o,a,s){this.A=0|e,this.B=0|t,this.C=0|r,this.D=0|n,this.E=0|i,this.F=0|o,this.G=0|a,this.H=0|s}process(e,t){for(let i=0;i<16;i++,t+=4)c[i]=e.getUint32(t,!1);for(let o=16;o<64;o++){const e=c[o-15],t=c[o-2],r=(0,i.rotr)(e,7)^(0,i.rotr)(e,18)^e>>>3,n=(0,i.rotr)(t,17)^(0,i.rotr)(t,19)^t>>>10;c[o]=n+c[o-7]+r+c[o-16]|0}let{A:r,B:n,C:s,D:l,E:u,F:d,G:h,H:f}=this;for(let m=0;m<64;m++){const e=f+((0,i.rotr)(u,6)^(0,i.rotr)(u,11)^(0,i.rotr)(u,25))+((p=u)&d^~p&h)+a[m]+c[m]|0,t=((0,i.rotr)(r,2)^(0,i.rotr)(r,13)^(0,i.rotr)(r,22))+o(r,n,s)|0;f=h,h=d,d=u,u=l+e|0,l=s,s=n,n=r,r=e+t|0}var p;r=r+this.A|0,n=n+this.B|0,s=s+this.C|0,l=l+this.D|0,u=u+this.E|0,d=d+this.F|0,h=h+this.G|0,f=f+this.H|0,this.set(r,n,s,l,u,d,h,f)}roundClean(){c.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}class u extends l{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}t.sha256=(0,i.wrapConstructor)((()=>new l)),t.sha224=(0,i.wrapConstructor)((()=>new u))},6681:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.shake256=t.shake128=t.keccak_512=t.keccak_384=t.keccak_256=t.keccak_224=t.sha3_512=t.sha3_384=t.sha3_256=t.sha3_224=t.Keccak=t.keccakP=void 0;const n=r(8903),i=r(5892),o=r(7317),[a,s,c]=[[],[],[]],l=BigInt(0),u=BigInt(1),d=BigInt(2),h=BigInt(7),f=BigInt(256),p=BigInt(113);for(let k=0,S=u,E=1,A=0;k<24;k++){[E,A]=[A,(2*E+3*A)%5],a.push(2*(5*A+E)),s.push((k+1)*(k+2)/2%64);let e=l;for(let t=0;t<7;t++)S=(S<>h)*p)%f,S&d&&(e^=u<<(u<r>32?i.default.rotlBH(e,t,r):i.default.rotlSH(e,t,r),y=(e,t,r)=>r>32?i.default.rotlBL(e,t,r):i.default.rotlSL(e,t,r);function b(e,t=24){const r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let n=0;n<10;n++)r[n]=e[n]^e[n+10]^e[n+20]^e[n+30]^e[n+40];for(let n=0;n<10;n+=2){const t=(n+8)%10,i=(n+2)%10,o=r[i],a=r[i+1],s=v(o,a,1)^r[t],c=y(o,a,1)^r[t+1];for(let r=0;r<50;r+=10)e[n+r]^=s,e[n+r+1]^=c}let t=e[2],i=e[3];for(let r=0;r<24;r++){const n=s[r],o=v(t,i,n),c=y(t,i,n),l=a[r];t=e[l],i=e[l+1],e[l]=o,e[l+1]=c}for(let n=0;n<50;n+=10){for(let t=0;t<10;t++)r[t]=e[n+t];for(let t=0;t<10;t++)e[n+t]^=~r[(t+2)%10]&r[(t+4)%10]}e[0]^=m[n],e[1]^=g[n]}r.fill(0)}t.keccakP=b;class w extends o.Hash{constructor(e,t,r,i=!1,a=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=r,this.enableXOF=i,this.rounds=a,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,n.default.number(r),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,o.u32)(this.state)}keccak(){b(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){n.default.exists(this);const{blockLen:t,state:r}=this,i=(e=(0,o.toBytes)(e)).length;for(let n=0;n=r&&this.keccak();const o=Math.min(r-this.posOut,i-n);e.set(t.subarray(this.posOut,this.posOut+o),n),this.posOut+=o,n+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return n.default.number(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(n.default.output(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:t,suffix:r,outputLen:n,rounds:i,enableXOF:o}=this;return e||(e=new w(t,r,n,o,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=r,e.outputLen=n,e.enableXOF=o,e.destroyed=this.destroyed,e}}t.Keccak=w;const x=(e,t,r)=>(0,o.wrapConstructor)((()=>new w(t,e,r)));t.sha3_224=x(6,144,28),t.sha3_256=x(6,136,32),t.sha3_384=x(6,104,48),t.sha3_512=x(6,72,64),t.keccak_224=x(1,144,28),t.keccak_256=x(1,136,32),t.keccak_384=x(1,104,48),t.keccak_512=x(1,72,64);const _=(e,t,r)=>(0,o.wrapConstructorWithOpts)(((n={})=>new w(t,e,void 0===n.dkLen?r:n.dkLen,!0)));t.shake128=_(31,168,16),t.shake256=_(31,136,32)},6428:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sha384=t.sha512_256=t.sha512_224=t.sha512=t.SHA512=void 0;const n=r(2689),i=r(5892),o=r(7317),[a,s]=i.default.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map((e=>BigInt(e)))),c=new Uint32Array(80),l=new Uint32Array(80);class u extends n.SHA2{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:t,Bh:r,Bl:n,Ch:i,Cl:o,Dh:a,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:h,Gl:f,Hh:p,Hl:m}=this;return[e,t,r,n,i,o,a,s,c,l,u,d,h,f,p,m]}set(e,t,r,n,i,o,a,s,c,l,u,d,h,f,p,m){this.Ah=0|e,this.Al=0|t,this.Bh=0|r,this.Bl=0|n,this.Ch=0|i,this.Cl=0|o,this.Dh=0|a,this.Dl=0|s,this.Eh=0|c,this.El=0|l,this.Fh=0|u,this.Fl=0|d,this.Gh=0|h,this.Gl=0|f,this.Hh=0|p,this.Hl=0|m}process(e,t){for(let i=0;i<16;i++,t+=4)c[i]=e.getUint32(t),l[i]=e.getUint32(t+=4);for(let a=16;a<80;a++){const e=0|c[a-15],t=0|l[a-15],r=i.default.rotrSH(e,t,1)^i.default.rotrSH(e,t,8)^i.default.shrSH(e,t,7),n=i.default.rotrSL(e,t,1)^i.default.rotrSL(e,t,8)^i.default.shrSL(e,t,7),o=0|c[a-2],s=0|l[a-2],u=i.default.rotrSH(o,s,19)^i.default.rotrBH(o,s,61)^i.default.shrSH(o,s,6),d=i.default.rotrSL(o,s,19)^i.default.rotrBL(o,s,61)^i.default.shrSL(o,s,6),h=i.default.add4L(n,d,l[a-7],l[a-16]),f=i.default.add4H(h,r,u,c[a-7],c[a-16]);c[a]=0|f,l[a]=0|h}let{Ah:r,Al:n,Bh:o,Bl:u,Ch:d,Cl:h,Dh:f,Dl:p,Eh:m,El:g,Fh:v,Fl:y,Gh:b,Gl:w,Hh:x,Hl:_}=this;for(let k=0;k<80;k++){const e=i.default.rotrSH(m,g,14)^i.default.rotrSH(m,g,18)^i.default.rotrBH(m,g,41),t=i.default.rotrSL(m,g,14)^i.default.rotrSL(m,g,18)^i.default.rotrBL(m,g,41),S=m&v^~m&b,E=g&y^~g&w,A=i.default.add5L(_,t,E,s[k],l[k]),P=i.default.add5H(A,x,e,S,a[k],c[k]),O=0|A,T=i.default.rotrSH(r,n,28)^i.default.rotrBH(r,n,34)^i.default.rotrBH(r,n,39),C=i.default.rotrSL(r,n,28)^i.default.rotrBL(r,n,34)^i.default.rotrBL(r,n,39),j=r&o^r&d^o&d,R=n&u^n&h^u&h;x=0|b,_=0|w,b=0|v,w=0|y,v=0|m,y=0|g,({h:m,l:g}=i.default.add(0|f,0|p,0|P,0|O)),f=0|d,p=0|h,d=0|o,h=0|u,o=0|r,u=0|n;const I=i.default.add3L(O,C,R);r=i.default.add3H(I,P,T,j),n=0|I}({h:r,l:n}=i.default.add(0|this.Ah,0|this.Al,0|r,0|n)),({h:o,l:u}=i.default.add(0|this.Bh,0|this.Bl,0|o,0|u)),({h:d,l:h}=i.default.add(0|this.Ch,0|this.Cl,0|d,0|h)),({h:f,l:p}=i.default.add(0|this.Dh,0|this.Dl,0|f,0|p)),({h:m,l:g}=i.default.add(0|this.Eh,0|this.El,0|m,0|g)),({h:v,l:y}=i.default.add(0|this.Fh,0|this.Fl,0|v,0|y)),({h:b,l:w}=i.default.add(0|this.Gh,0|this.Gl,0|b,0|w)),({h:x,l:_}=i.default.add(0|this.Hh,0|this.Hl,0|x,0|_)),this.set(r,n,o,u,d,h,f,p,m,g,v,y,b,w,x,_)}roundClean(){c.fill(0),l.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}t.SHA512=u;class d extends u{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}}class h extends u{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}}class f extends u{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}}t.sha512=(0,o.wrapConstructor)((()=>new u)),t.sha512_224=(0,o.wrapConstructor)((()=>new d)),t.sha512_256=(0,o.wrapConstructor)((()=>new h)),t.sha384=(0,o.wrapConstructor)((()=>new f))},7317:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomBytes=t.wrapConstructorWithOpts=t.wrapConstructor=t.checkOpts=t.Hash=t.concatBytes=t.toBytes=t.utf8ToBytes=t.asyncLoop=t.nextTick=t.hexToBytes=t.bytesToHex=t.isLE=t.rotr=t.createView=t.u32=t.u8=void 0;const n=r(8107);t.u8=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength);t.u32=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));t.createView=e=>new DataView(e.buffer,e.byteOffset,e.byteLength);if(t.rotr=(e,t)=>e<<32-t|e>>>t,t.isLE=68===new Uint8Array(new Uint32Array([287454020]).buffer)[0],!t.isLE)throw new Error("Non little-endian hardware is not supported");const i=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));t.bytesToHex=function(e){if(!(e instanceof Uint8Array))throw new Error("Uint8Array expected");let t="";for(let r=0;r{},t.asyncLoop=async function(e,r,n){let i=Date.now();for(let o=0;o=0&&ee instanceof Uint8Array)))throw new Error("Uint8Array list expected");if(1===e.length)return e[0];const t=e.reduce(((e,t)=>e+t.length),0),r=new Uint8Array(t);for(let n=0,i=0;ne().update(a(t)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t},t.wrapConstructorWithOpts=function(e){const t=(t,r)=>e(r).update(a(t)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=t=>e(t),t},t.randomBytes=function(e=32){if(n.crypto&&"function"===typeof n.crypto.getRandomValues)return n.crypto.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}},2730:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7046);function i(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>8,t[r+1]=e>>>0,t}function o(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t}function a(e,t){return void 0===t&&(t=0),e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}function s(e,t){return void 0===t&&(t=0),(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}function c(e,t){return void 0===t&&(t=0),e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]}function l(e,t){return void 0===t&&(t=0),(e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t])>>>0}function u(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>24,t[r+1]=e>>>16,t[r+2]=e>>>8,t[r+3]=e>>>0,t}function d(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24,t}function h(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),u(e/4294967296>>>0,t,r),u(e>>>0,t,r+4),t}function f(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),d(e>>>0,t,r),d(e/4294967296>>>0,t,r+4),t}t.readInt16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])<<16>>16},t.readUint16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])>>>0},t.readInt16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])<<16>>16},t.readUint16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])>>>0},t.writeUint16BE=i,t.writeInt16BE=i,t.writeUint16LE=o,t.writeInt16LE=o,t.readInt32BE=a,t.readUint32BE=s,t.readInt32LE=c,t.readUint32LE=l,t.writeUint32BE=u,t.writeInt32BE=u,t.writeUint32LE=d,t.writeInt32LE=d,t.readInt64BE=function(e,t){void 0===t&&(t=0);var r=a(e,t),n=a(e,t+4);return 4294967296*r+n-4294967296*(n>>31)},t.readUint64BE=function(e,t){return void 0===t&&(t=0),4294967296*s(e,t)+s(e,t+4)},t.readInt64LE=function(e,t){void 0===t&&(t=0);var r=c(e,t);return 4294967296*c(e,t+4)+r-4294967296*(r>>31)},t.readUint64LE=function(e,t){void 0===t&&(t=0);var r=l(e,t);return 4294967296*l(e,t+4)+r},t.writeUint64BE=h,t.writeInt64BE=h,t.writeUint64LE=f,t.writeInt64LE=f,t.readUintBE=function(e,t,r){if(void 0===r&&(r=0),e%8!==0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintBE: array is too short for the given bitLength");for(var n=0,i=1,o=e/8+r-1;o>=r;o--)n+=t[o]*i,i*=256;return n},t.readUintLE=function(e,t,r){if(void 0===r&&(r=0),e%8!==0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintLE: array is too short for the given bitLength");for(var n=0,i=1,o=r;o=i;a--)r[a]=t/o&255,o*=256;return r},t.writeUintLE=function(e,t,r,i){if(void 0===r&&(r=new Uint8Array(e/8)),void 0===i&&(i=0),e%8!==0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!n.isSafeInteger(t))throw new Error("writeUintLE value must be an integer");for(var o=1,a=i;a{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2730),i=r(4250);t.BLOCK_SIZE=128,t.DIGEST_LENGTH=64,t.KEY_LENGTH=64,t.PERSONALIZATION_LENGTH=16,t.SALT_LENGTH=16,t.MAX_LEAF_SIZE=Math.pow(2,32)-1,t.MAX_FANOUT=255,t.MAX_MAX_DEPTH=255;var o=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),a=[[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30],[28,20,8,16,18,30,26,12,2,24,0,4,22,14,10,6],[22,16,24,0,10,4,30,26,20,28,6,12,14,2,18,8],[14,18,6,2,26,24,22,28,4,12,10,20,8,0,30,16],[18,0,10,14,4,8,20,30,28,2,22,24,12,16,6,26],[4,24,12,20,0,22,16,6,8,26,14,10,30,28,2,18],[24,10,2,30,28,26,8,20,0,14,12,6,18,4,16,22],[26,22,14,28,24,2,6,18,10,0,30,8,16,12,4,20],[12,30,28,18,22,6,0,16,24,4,26,14,2,8,20,10],[20,4,16,8,14,12,2,10,30,22,18,28,6,24,26,0],[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30],[28,20,8,16,18,30,26,12,2,24,0,4,22,14,10,6]],s=function(){function e(e,r){if(void 0===e&&(e=64),this.digestLength=e,this.blockSize=t.BLOCK_SIZE,this._state=new Int32Array(o),this._buffer=new Uint8Array(t.BLOCK_SIZE),this._bufferLength=0,this._ctr=new Uint32Array(4),this._flag=new Uint32Array(4),this._lastNode=!1,this._finished=!1,this._vtmp=new Uint32Array(32),this._mtmp=new Uint32Array(32),e<1||e>t.DIGEST_LENGTH)throw new Error("blake2b: wrong digest length");r&&this.validateConfig(r);var i=0;r&&r.key&&(i=r.key.length);var a=1,s=1;r&&r.tree&&(a=r.tree.fanout,s=r.tree.maxDepth),this._state[0]^=e|i<<8|a<<16|s<<24,r&&r.tree&&(this._state[1]^=r.tree.leafSize,this._state[2]^=r.tree.nodeOffsetLowBits,this._state[3]^=r.tree.nodeOffsetHighBits,this._state[4]^=r.tree.nodeDepth|r.tree.innerDigestLength<<8,this._lastNode=r.tree.lastNode),r&&r.salt&&(this._state[8]^=n.readUint32LE(r.salt,0),this._state[9]^=n.readUint32LE(r.salt,4),this._state[10]^=n.readUint32LE(r.salt,8),this._state[11]^=n.readUint32LE(r.salt,12)),r&&r.personalization&&(this._state[12]^=n.readUint32LE(r.personalization,0),this._state[13]^=n.readUint32LE(r.personalization,4),this._state[14]^=n.readUint32LE(r.personalization,8),this._state[15]^=n.readUint32LE(r.personalization,12)),this._initialState=new Uint32Array(this._state),r&&r.key&&i>0&&(this._paddedKey=new Uint8Array(t.BLOCK_SIZE),this._paddedKey.set(r.key),this._buffer.set(this._paddedKey),this._bufferLength=t.BLOCK_SIZE)}return e.prototype.reset=function(){return this._state.set(this._initialState),this._paddedKey?(this._buffer.set(this._paddedKey),this._bufferLength=t.BLOCK_SIZE):this._bufferLength=0,i.wipe(this._ctr),i.wipe(this._flag),this._finished=!1,this},e.prototype.validateConfig=function(e){if(e.key&&e.key.length>t.KEY_LENGTH)throw new Error("blake2b: wrong key length");if(e.salt&&e.salt.length!==t.SALT_LENGTH)throw new Error("blake2b: wrong salt length");if(e.personalization&&e.personalization.length!==t.PERSONALIZATION_LENGTH)throw new Error("blake2b: wrong personalization length");if(e.tree){if(e.tree.fanout<0||e.tree.fanout>t.MAX_FANOUT)throw new Error("blake2b: wrong tree fanout");if(e.tree.maxDepth<0||e.tree.maxDepth>t.MAX_MAX_DEPTH)throw new Error("blake2b: wrong tree depth");if(e.tree.leafSize<0||e.tree.leafSize>t.MAX_LEAF_SIZE)throw new Error("blake2b: wrong leaf size");if(e.tree.innerDigestLength<0||e.tree.innerDigestLength>t.DIGEST_LENGTH)throw new Error("blake2b: wrong tree inner digest length")}},e.prototype.update=function(e,r){if(void 0===r&&(r=e.length),this._finished)throw new Error("blake2b: can't update because hash was finished.");var n=t.BLOCK_SIZE-this._bufferLength,i=0;if(0===r)return this;if(r>n){for(var o=0;ot.BLOCK_SIZE;){for(o=0;o>>16,k=65535&p,S=p>>>16;_+=m>>>16,k+=65535&g,S+=g>>>16,k+=(_+=(x+=65535&m)>>>16)>>>16,x=65535&(f=65535&x|_<<16),_=f>>>16,k=65535&(p=65535&k|(S+=k>>>16)<<16),S=p>>>16,_+=l>>>16,k+=65535&u,S+=u>>>16,f=65535&(x+=65535&l)|(_+=x>>>16)<<16,x=w^=p=65535&(k+=_>>>16)|(S+=k>>>16)<<16,w=b^=f,b=x,x=65535&v,_=v>>>16,k=65535&y,S=y>>>16,_+=b>>>16,k+=65535&w,S+=w>>>16,x=(m^=v=65535&(x+=65535&b)|(_+=x>>>16)<<16)<<8|(g^=y=65535&(k+=_>>>16)|(S+=k>>>16)<<16)>>>24,m=g<<8|m>>>24,g=x,x=65535&f,_=f>>>16,k=65535&p,S=p>>>16,_+=m>>>16,k+=65535&g,S+=g>>>16,k+=(_+=(x+=65535&m)>>>16)>>>16,x=65535&(f=65535&x|_<<16),_=f>>>16,k=65535&(p=65535&k|(S+=k>>>16)<<16),S=p>>>16,_+=d>>>16,k+=65535&h,S+=h>>>16,x=(b^=f=65535&(x+=65535&d)|(_+=x>>>16)<<16)<<16|(w^=p=65535&(k+=_>>>16)|(S+=k>>>16)<<16)>>>16,b=w<<16|b>>>16,w=x,x=65535&v,_=v>>>16,k=65535&y,S=y>>>16,_+=b>>>16,k+=65535&w,S+=w>>>16,x=(g^=y=65535&(k+=(_+=(x+=65535&b)>>>16)>>>16)|(S+=k>>>16)<<16)<<1|(m^=v=65535&x|_<<16)>>>31,m=m<<1|g>>>31,g=x,e[t]=f,e[o]=p,e[r]=m,e[a]=g,e[n]=v,e[s]=y,e[i]=b,e[c]=w},e.prototype._incrementCounter=function(e){for(var t=0;t<3;t++){var r=this._ctr[t]+e;if(this._ctr[t]=r>>>0,this._ctr[t]===r)return;e=1}},e.prototype._processBlock=function(e){this._incrementCounter(e);var t=this._vtmp;t.set(this._state),t.set(o,16),t[24]^=this._ctr[0],t[25]^=this._ctr[1],t[26]^=this._ctr[2],t[27]^=this._ctr[3],t[28]^=this._flag[0],t[29]^=this._flag[1],t[30]^=this._flag[2],t[31]^=this._flag[3];for(var r=this._mtmp,i=0;i<32;i++)r[i]=n.readUint32LE(this._buffer,4*i);for(var s=0;s<12;s++)this._G(t,0,8,16,24,1,9,17,25,r[a[s][0]],r[a[s][0]+1],r[a[s][1]],r[a[s][1]+1]),this._G(t,2,10,18,26,3,11,19,27,r[a[s][2]],r[a[s][2]+1],r[a[s][3]],r[a[s][3]+1]),this._G(t,4,12,20,28,5,13,21,29,r[a[s][4]],r[a[s][4]+1],r[a[s][5]],r[a[s][5]+1]),this._G(t,6,14,22,30,7,15,23,31,r[a[s][6]],r[a[s][6]+1],r[a[s][7]],r[a[s][7]+1]),this._G(t,0,10,20,30,1,11,21,31,r[a[s][8]],r[a[s][8]+1],r[a[s][9]],r[a[s][9]+1]),this._G(t,2,12,22,24,3,13,23,25,r[a[s][10]],r[a[s][10]+1],r[a[s][11]],r[a[s][11]+1]),this._G(t,4,14,16,26,5,15,17,27,r[a[s][12]],r[a[s][12]+1],r[a[s][13]],r[a[s][13]+1]),this._G(t,6,8,18,28,7,9,19,29,r[a[s][14]],r[a[s][14]+1],r[a[s][15]],r[a[s][15]+1]);for(i=0;i<16;i++)this._state[i]^=t[i]^t[i+16]},e}();t.BLAKE2b=s,t.hash=function(e,r,n){void 0===r&&(r=t.DIGEST_LENGTH);var i=new s(r,n);i.update(e);var o=i.digest();return i.clean(),o}},9722:(e,t)=>{"use strict";t.x=function(){for(var e=0,t=0;t{"use strict";function r(e,t){if(e.length!==t.length)return 0;for(var r=0,n=0;n>>8}Object.defineProperty(t,"__esModule",{value:!0}),t.select=function(e,t,r){return~(e-1)&t|e-1&r},t.lessOrEqual=function(e,t){return(0|e)-(0|t)-1>>>31&1},t.compare=r,t.equal=function(e,t){return 0!==e.length&&0!==t.length&&0!==r(e,t)}},5166:(e,t,r)=>{"use strict";t.a_=t.J$=t._S=t.K=t.TP=t.wE=t.Ee=void 0;const n=r(4706),i=r(2564),o=r(4250);function a(e){const t=new Float64Array(16);if(e)for(let r=0;r>16&1),r[t-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);const e=r[15]>>16&1;r[14]&=65535,g(n,r,1-e)}for(let i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}function y(e,t){let r=0;for(let n=0;n<32;n++)r|=e[n]^t[n];return(1&r-1>>>8)-1}function b(e,t){const r=new Uint8Array(32),n=new Uint8Array(32);return v(r,e),v(n,t),y(r,n)}function w(e){const t=new Uint8Array(32);return v(t,e),1&t[0]}function x(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]+r[n]}function _(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]-r[n]}function k(e,t,r){let n,i,o=0,a=0,s=0,c=0,l=0,u=0,d=0,h=0,f=0,p=0,m=0,g=0,v=0,y=0,b=0,w=0,x=0,_=0,k=0,S=0,E=0,A=0,P=0,O=0,T=0,C=0,j=0,R=0,I=0,M=0,L=0,N=r[0],D=r[1],z=r[2],B=r[3],F=r[4],U=r[5],$=r[6],H=r[7],V=r[8],q=r[9],K=r[10],W=r[11],G=r[12],Z=r[13],Y=r[14],X=r[15];n=t[0],o+=n*N,a+=n*D,s+=n*z,c+=n*B,l+=n*F,u+=n*U,d+=n*$,h+=n*H,f+=n*V,p+=n*q,m+=n*K,g+=n*W,v+=n*G,y+=n*Z,b+=n*Y,w+=n*X,n=t[1],a+=n*N,s+=n*D,c+=n*z,l+=n*B,u+=n*F,d+=n*U,h+=n*$,f+=n*H,p+=n*V,m+=n*q,g+=n*K,v+=n*W,y+=n*G,b+=n*Z,w+=n*Y,x+=n*X,n=t[2],s+=n*N,c+=n*D,l+=n*z,u+=n*B,d+=n*F,h+=n*U,f+=n*$,p+=n*H,m+=n*V,g+=n*q,v+=n*K,y+=n*W,b+=n*G,w+=n*Z,x+=n*Y,_+=n*X,n=t[3],c+=n*N,l+=n*D,u+=n*z,d+=n*B,h+=n*F,f+=n*U,p+=n*$,m+=n*H,g+=n*V,v+=n*q,y+=n*K,b+=n*W,w+=n*G,x+=n*Z,_+=n*Y,k+=n*X,n=t[4],l+=n*N,u+=n*D,d+=n*z,h+=n*B,f+=n*F,p+=n*U,m+=n*$,g+=n*H,v+=n*V,y+=n*q,b+=n*K,w+=n*W,x+=n*G,_+=n*Z,k+=n*Y,S+=n*X,n=t[5],u+=n*N,d+=n*D,h+=n*z,f+=n*B,p+=n*F,m+=n*U,g+=n*$,v+=n*H,y+=n*V,b+=n*q,w+=n*K,x+=n*W,_+=n*G,k+=n*Z,S+=n*Y,E+=n*X,n=t[6],d+=n*N,h+=n*D,f+=n*z,p+=n*B,m+=n*F,g+=n*U,v+=n*$,y+=n*H,b+=n*V,w+=n*q,x+=n*K,_+=n*W,k+=n*G,S+=n*Z,E+=n*Y,A+=n*X,n=t[7],h+=n*N,f+=n*D,p+=n*z,m+=n*B,g+=n*F,v+=n*U,y+=n*$,b+=n*H,w+=n*V,x+=n*q,_+=n*K,k+=n*W,S+=n*G,E+=n*Z,A+=n*Y,P+=n*X,n=t[8],f+=n*N,p+=n*D,m+=n*z,g+=n*B,v+=n*F,y+=n*U,b+=n*$,w+=n*H,x+=n*V,_+=n*q,k+=n*K,S+=n*W,E+=n*G,A+=n*Z,P+=n*Y,O+=n*X,n=t[9],p+=n*N,m+=n*D,g+=n*z,v+=n*B,y+=n*F,b+=n*U,w+=n*$,x+=n*H,_+=n*V,k+=n*q,S+=n*K,E+=n*W,A+=n*G,P+=n*Z,O+=n*Y,T+=n*X,n=t[10],m+=n*N,g+=n*D,v+=n*z,y+=n*B,b+=n*F,w+=n*U,x+=n*$,_+=n*H,k+=n*V,S+=n*q,E+=n*K,A+=n*W,P+=n*G,O+=n*Z,T+=n*Y,C+=n*X,n=t[11],g+=n*N,v+=n*D,y+=n*z,b+=n*B,w+=n*F,x+=n*U,_+=n*$,k+=n*H,S+=n*V,E+=n*q,A+=n*K,P+=n*W,O+=n*G,T+=n*Z,C+=n*Y,j+=n*X,n=t[12],v+=n*N,y+=n*D,b+=n*z,w+=n*B,x+=n*F,_+=n*U,k+=n*$,S+=n*H,E+=n*V,A+=n*q,P+=n*K,O+=n*W,T+=n*G,C+=n*Z,j+=n*Y,R+=n*X,n=t[13],y+=n*N,b+=n*D,w+=n*z,x+=n*B,_+=n*F,k+=n*U,S+=n*$,E+=n*H,A+=n*V,P+=n*q,O+=n*K,T+=n*W,C+=n*G,j+=n*Z,R+=n*Y,I+=n*X,n=t[14],b+=n*N,w+=n*D,x+=n*z,_+=n*B,k+=n*F,S+=n*U,E+=n*$,A+=n*H,P+=n*V,O+=n*q,T+=n*K,C+=n*W,j+=n*G,R+=n*Z,I+=n*Y,M+=n*X,n=t[15],w+=n*N,x+=n*D,_+=n*z,k+=n*B,S+=n*F,E+=n*U,A+=n*$,P+=n*H,O+=n*V,T+=n*q,C+=n*K,j+=n*W,R+=n*G,I+=n*Z,M+=n*Y,L+=n*X,o+=38*x,a+=38*_,s+=38*k,c+=38*S,l+=38*E,u+=38*A,d+=38*P,h+=38*O,f+=38*T,p+=38*C,m+=38*j,g+=38*R,v+=38*I,y+=38*M,b+=38*L,i=1,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=b+i+65535,i=Math.floor(n/65536),b=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,o+=i-1+37*(i-1),i=1,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=b+i+65535,i=Math.floor(n/65536),b=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,o+=i-1+37*(i-1),e[0]=o,e[1]=a,e[2]=s,e[3]=c,e[4]=l,e[5]=u,e[6]=d,e[7]=h,e[8]=f,e[9]=p,e[10]=m,e[11]=g,e[12]=v,e[13]=y,e[14]=b,e[15]=w}function S(e,t){k(e,t,t)}function E(e,t){const r=a();let n;for(n=0;n<16;n++)r[n]=t[n];for(n=253;n>=0;n--)S(r,r),2!==n&&4!==n&&k(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}function A(e,t){const r=a(),n=a(),i=a(),o=a(),s=a(),c=a(),l=a(),d=a(),h=a();_(r,e[1],e[0]),_(h,t[1],t[0]),k(r,r,h),x(n,e[0],e[1]),x(h,t[0],t[1]),k(n,n,h),k(i,e[3],t[3]),k(i,i,u),k(o,e[2],t[2]),x(o,o,o),_(s,n,r),_(c,o,i),x(l,o,i),x(d,n,r),k(e[0],s,c),k(e[1],d,l),k(e[2],l,c),k(e[3],s,d)}function P(e,t,r){for(let n=0;n<4;n++)g(e[n],t[n],r)}function O(e,t){const r=a(),n=a(),i=a();E(i,t[2]),k(r,t[0],i),k(n,t[1],i),v(e,n),e[31]^=w(r)<<7}function T(e,t,r){p(e[0],s),p(e[1],c),p(e[2],c),p(e[3],s);for(let n=255;n>=0;--n){const i=r[n/8|0]>>(7&n)&1;P(e,t,i),A(t,e),A(e,e),P(e,t,i)}}function C(e,t){const r=[a(),a(),a(),a()];p(r[0],d),p(r[1],h),p(r[2],c),k(r[3],d,h),T(e,r,t)}function j(e){if(e.length!==t.TP)throw new Error(`ed25519: seed must be ${t.TP} bytes`);const r=(0,i.hash)(e);r[0]&=248,r[31]&=127,r[31]|=64;const n=new Uint8Array(32),o=[a(),a(),a(),a()];C(o,r),O(n,o);const s=new Uint8Array(64);return s.set(e),s.set(n,32),{publicKey:n,secretKey:s}}t.K=j;const R=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function I(e,t){let r,n,i,o;for(n=63;n>=32;--n){for(r=0,i=n-32,o=n-12;i>4)*R[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=r*R[i];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function M(e){const t=new Float64Array(64);for(let r=0;r<64;r++)t[r]=e[r];for(let r=0;r<64;r++)e[r]=0;I(e,t)}function L(e,t){const r=a(),n=a(),i=a(),o=a(),u=a(),d=a(),h=a();return p(e[2],c),function(e,t){for(let r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}(e[1],t),S(i,e[1]),k(o,i,l),_(i,i,e[2]),x(o,e[2],o),S(u,o),S(d,u),k(h,d,u),k(r,h,i),k(r,r,o),function(e,t){const r=a();let n;for(n=0;n<16;n++)r[n]=t[n];for(n=250;n>=0;n--)S(r,r),1!==n&&k(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}(r,r),k(r,r,i),k(r,r,o),k(r,r,o),k(e[0],r,o),S(n,e[0]),k(n,n,o),b(n,i)&&k(e[0],e[0],f),S(n,e[0]),k(n,n,o),b(n,i)?-1:(w(e[0])===t[31]>>7&&_(e[0],s,e[0]),k(e[3],e[0],e[1]),0)}t._S=function(e,t){const r=new Float64Array(64),n=[a(),a(),a(),a()],o=(0,i.hash)(e.subarray(0,32));o[0]&=248,o[31]&=127,o[31]|=64;const s=new Uint8Array(64);s.set(o.subarray(32),32);const c=new i.SHA512;c.update(s.subarray(32)),c.update(t);const l=c.digest();c.clean(),M(l),C(n,l),O(s,n),c.reset(),c.update(s.subarray(0,32)),c.update(e.subarray(32)),c.update(t);const u=c.digest();M(u);for(let i=0;i<32;i++)r[i]=l[i];for(let i=0;i<32;i++)for(let e=0;e<32;e++)r[i+e]+=u[i]*o[e];return I(s.subarray(32),r),s},t.J$=function(e){let t=[a(),a(),a(),a()];if(L(t,e))throw new Error("Ed25519: invalid public key");let r=a(),n=a(),i=t[1];x(r,c,i),_(n,c,i),E(n,n),k(r,r,n);let o=new Uint8Array(32);return v(o,r),o},t.a_=function(e){const t=(0,i.hash)(e.subarray(0,32));t[0]&=248,t[31]&=127,t[31]|=64;const r=new Uint8Array(t.subarray(0,32));return(0,o.wipe)(t),r}},6708:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSerializableHash=function(e){return"undefined"!==typeof e.saveState&&"undefined"!==typeof e.restoreState&&"undefined"!==typeof e.cleanSavedState}},1514:(e,t,r)=>{"use strict";var n=r(6708),i=r(5810),o=r(4250),a=function(){function e(e,t){this._finished=!1,this._inner=new e,this._outer=new e,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var r=new Uint8Array(this.blockSize);t.length>this.blockSize?this._inner.update(t).finish(r).clean():r.set(t);for(var i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mul=Math.imul||function(e,t){var r=65535&e,n=65535&t;return r*n+((e>>>16&65535)*n+r*(t>>>16&65535)<<16>>>0)|0},t.add=function(e,t){return e+t|0},t.sub=function(e,t){return e-t|0},t.rotl=function(e,t){return e<>>32-t},t.rotr=function(e,t){return e<<32-t|e>>>t},t.isInteger=Number.isInteger||function(e){return"number"===typeof e&&isFinite(e)&&Math.floor(e)===e},t.MAX_SAFE_INTEGER=9007199254740991,t.isSafeInteger=function(e){return t.isInteger(e)&&e>=-t.MAX_SAFE_INTEGER&&e<=t.MAX_SAFE_INTEGER}},5937:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.openBox=t.box=t.precomputeSharedKey=t.generateKeyPair=void 0;const n=r(1204),i=r(2436),o=r(3141),a=r(4250);var s=r(1204);Object.defineProperty(t,"generateKeyPair",{enumerable:!0,get:function(){return s.generateKeyPair}});const c=new Uint8Array(16);function l(e,t){const r=(0,n.scalarMult)(t,e);return(0,i.hsalsa)(r,c,r),r}t.precomputeSharedKey=l,t.box=function(e,t,r,n){const i=l(e,t),s=(0,o.secretBox)(i,r,n);return(0,a.wipe)(i),s},t.openBox=function(e,t,r,n){const i=l(e,t),s=(0,o.openSecretBox)(i,r,n);return(0,a.wipe)(i),s}},5784:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(5937),t),i(r(3141),t)},3141:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.generateKey=t.openSecretBox=t.secretBox=void 0;const n=r(2436),i=r(1302),o=r(4250),a=r(4706);t.secretBox=function(e,t,r){if(24!==t.length)throw new Error("secretBox nonce must be 24 bytes");const a=new Uint8Array(64),s=new Uint8Array(32);s.set(t),(0,n.stream)(e,s,a,8);const c=new Uint8Array(16+r.length);for(let n=0;n<32&&n32&&(0,n.streamXOR)(e,s,r.subarray(32),c.subarray(48),8);const l=(0,i.oneTimeAuth)(a.subarray(0,32),c.subarray(16));for(let n=0;n32&&(0,n.streamXOR)(e,s,l.subarray(32),u.subarray(32),8),(0,o.wipe)(c),(0,o.wipe)(a),(0,o.wipe)(s),u},t.generateKey=function(e){return(0,a.randomBytes)(32,e)}},1302:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(5810),i=r(4250);t.DIGEST_LENGTH=16;var o=function(){function e(e){this.digestLength=t.DIGEST_LENGTH,this._buffer=new Uint8Array(16),this._r=new Uint16Array(10),this._h=new Uint16Array(10),this._pad=new Uint16Array(8),this._leftover=0,this._fin=0,this._finished=!1;var r=e[0]|e[1]<<8;this._r[0]=8191&r;var n=e[2]|e[3]<<8;this._r[1]=8191&(r>>>13|n<<3);var i=e[4]|e[5]<<8;this._r[2]=7939&(n>>>10|i<<6);var o=e[6]|e[7]<<8;this._r[3]=8191&(i>>>7|o<<9);var a=e[8]|e[9]<<8;this._r[4]=255&(o>>>4|a<<12),this._r[5]=a>>>1&8190;var s=e[10]|e[11]<<8;this._r[6]=8191&(a>>>14|s<<2);var c=e[12]|e[13]<<8;this._r[7]=8065&(s>>>11|c<<5);var l=e[14]|e[15]<<8;this._r[8]=8191&(c>>>8|l<<8),this._r[9]=l>>>5&127,this._pad[0]=e[16]|e[17]<<8,this._pad[1]=e[18]|e[19]<<8,this._pad[2]=e[20]|e[21]<<8,this._pad[3]=e[22]|e[23]<<8,this._pad[4]=e[24]|e[25]<<8,this._pad[5]=e[26]|e[27]<<8,this._pad[6]=e[28]|e[29]<<8,this._pad[7]=e[30]|e[31]<<8}return e.prototype._blocks=function(e,t,r){for(var n=this._fin?0:2048,i=this._h[0],o=this._h[1],a=this._h[2],s=this._h[3],c=this._h[4],l=this._h[5],u=this._h[6],d=this._h[7],h=this._h[8],f=this._h[9],p=this._r[0],m=this._r[1],g=this._r[2],v=this._r[3],y=this._r[4],b=this._r[5],w=this._r[6],x=this._r[7],_=this._r[8],k=this._r[9];r>=16;){var S=e[t+0]|e[t+1]<<8;i+=8191&S;var E=e[t+2]|e[t+3]<<8;o+=8191&(S>>>13|E<<3);var A=e[t+4]|e[t+5]<<8;a+=8191&(E>>>10|A<<6);var P=e[t+6]|e[t+7]<<8;s+=8191&(A>>>7|P<<9);var O=e[t+8]|e[t+9]<<8;c+=8191&(P>>>4|O<<12),l+=O>>>1&8191;var T=e[t+10]|e[t+11]<<8;u+=8191&(O>>>14|T<<2);var C=e[t+12]|e[t+13]<<8;d+=8191&(T>>>11|C<<5);var j=e[t+14]|e[t+15]<<8,R=0,I=R;I+=i*p,I+=o*(5*k),I+=a*(5*_),I+=s*(5*x),R=(I+=c*(5*w))>>>13,I&=8191,I+=l*(5*b),I+=u*(5*y),I+=d*(5*v),I+=(h+=8191&(C>>>8|j<<8))*(5*g);var M=R+=(I+=(f+=j>>>5|n)*(5*m))>>>13;M+=i*m,M+=o*p,M+=a*(5*k),M+=s*(5*_),R=(M+=c*(5*x))>>>13,M&=8191,M+=l*(5*w),M+=u*(5*b),M+=d*(5*y),M+=h*(5*v),R+=(M+=f*(5*g))>>>13,M&=8191;var L=R;L+=i*g,L+=o*m,L+=a*p,L+=s*(5*k),R=(L+=c*(5*_))>>>13,L&=8191,L+=l*(5*x),L+=u*(5*w),L+=d*(5*b),L+=h*(5*y);var N=R+=(L+=f*(5*v))>>>13;N+=i*v,N+=o*g,N+=a*m,N+=s*p,R=(N+=c*(5*k))>>>13,N&=8191,N+=l*(5*_),N+=u*(5*x),N+=d*(5*w),N+=h*(5*b);var D=R+=(N+=f*(5*y))>>>13;D+=i*y,D+=o*v,D+=a*g,D+=s*m,R=(D+=c*p)>>>13,D&=8191,D+=l*(5*k),D+=u*(5*_),D+=d*(5*x),D+=h*(5*w);var z=R+=(D+=f*(5*b))>>>13;z+=i*b,z+=o*y,z+=a*v,z+=s*g,R=(z+=c*m)>>>13,z&=8191,z+=l*p,z+=u*(5*k),z+=d*(5*_),z+=h*(5*x);var B=R+=(z+=f*(5*w))>>>13;B+=i*w,B+=o*b,B+=a*y,B+=s*v,R=(B+=c*g)>>>13,B&=8191,B+=l*m,B+=u*p,B+=d*(5*k),B+=h*(5*_);var F=R+=(B+=f*(5*x))>>>13;F+=i*x,F+=o*w,F+=a*b,F+=s*y,R=(F+=c*v)>>>13,F&=8191,F+=l*g,F+=u*m,F+=d*p,F+=h*(5*k);var U=R+=(F+=f*(5*_))>>>13;U+=i*_,U+=o*x,U+=a*w,U+=s*b,R=(U+=c*y)>>>13,U&=8191,U+=l*v,U+=u*g,U+=d*m,U+=h*p;var $=R+=(U+=f*(5*k))>>>13;$+=i*k,$+=o*_,$+=a*x,$+=s*w,R=($+=c*b)>>>13,$&=8191,$+=l*y,$+=u*v,$+=d*g,$+=h*m,i=I=8191&(R=(R=((R+=($+=f*p)>>>13)<<2)+R|0)+(I&=8191)|0),o=M+=R>>>=13,a=L&=8191,s=N&=8191,c=D&=8191,l=z&=8191,u=B&=8191,d=F&=8191,h=U&=8191,f=$&=8191,t+=16,r-=16}this._h[0]=i,this._h[1]=o,this._h[2]=a,this._h[3]=s,this._h[4]=c,this._h[5]=l,this._h[6]=u,this._h[7]=d,this._h[8]=h,this._h[9]=f},e.prototype.finish=function(e,t){void 0===t&&(t=0);var r,n,i,o,a=new Uint16Array(10);if(this._leftover){for(o=this._leftover,this._buffer[o++]=1;o<16;o++)this._buffer[o]=0;this._fin=1,this._blocks(this._buffer,0,16)}for(r=this._h[1]>>>13,this._h[1]&=8191,o=2;o<10;o++)this._h[o]+=r,r=this._h[o]>>>13,this._h[o]&=8191;for(this._h[0]+=5*r,r=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=r,r=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=r,a[0]=this._h[0]+5,r=a[0]>>>13,a[0]&=8191,o=1;o<10;o++)a[o]=this._h[o]+r,r=a[o]>>>13,a[o]&=8191;for(a[9]-=8192,n=(1^r)-1,o=0;o<10;o++)a[o]&=n;for(n=~n,o=0;o<10;o++)this._h[o]=this._h[o]&n|a[o];for(this._h[0]=65535&(this._h[0]|this._h[1]<<13),this._h[1]=65535&(this._h[1]>>>3|this._h[2]<<10),this._h[2]=65535&(this._h[2]>>>6|this._h[3]<<7),this._h[3]=65535&(this._h[3]>>>9|this._h[4]<<4),this._h[4]=65535&(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14),this._h[5]=65535&(this._h[6]>>>2|this._h[7]<<11),this._h[6]=65535&(this._h[7]>>>5|this._h[8]<<8),this._h[7]=65535&(this._h[8]>>>8|this._h[9]<<5),i=this._h[0]+this._pad[0],this._h[0]=65535&i,o=1;o<8;o++)i=(this._h[o]+this._pad[o]|0)+(i>>>16)|0,this._h[o]=65535&i;return e[t+0]=this._h[0]>>>0,e[t+1]=this._h[0]>>>8,e[t+2]=this._h[1]>>>0,e[t+3]=this._h[1]>>>8,e[t+4]=this._h[2]>>>0,e[t+5]=this._h[2]>>>8,e[t+6]=this._h[3]>>>0,e[t+7]=this._h[3]>>>8,e[t+8]=this._h[4]>>>0,e[t+9]=this._h[4]>>>8,e[t+10]=this._h[5]>>>0,e[t+11]=this._h[5]>>>8,e[t+12]=this._h[6]>>>0,e[t+13]=this._h[6]>>>8,e[t+14]=this._h[7]>>>0,e[t+15]=this._h[7]>>>8,this._finished=!0,this},e.prototype.update=function(e){var t,r=0,n=e.length;if(this._leftover){(t=16-this._leftover)>n&&(t=n);for(var i=0;i=16&&(t=n-n%16,this._blocks(e,r,t),r+=t,n-=t),n){for(i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomStringForEntropy=t.randomString=t.randomUint32=t.randomBytes=t.defaultRandomSource=void 0;const n=r(7806),i=r(2730),o=r(4250);function a(e,r=t.defaultRandomSource){return r.randomBytes(e)}t.defaultRandomSource=new n.SystemRandomSource,t.randomBytes=a,t.randomUint32=function(e=t.defaultRandomSource){const r=a(4,e),n=(0,i.readUint32LE)(r);return(0,o.wipe)(r),n};const s="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function c(e,r=s,n=t.defaultRandomSource){if(r.length<2)throw new Error("randomString charset is too short");if(r.length>256)throw new Error("randomString charset is too long");let i="";const c=r.length,l=256-256%c;for(;e>0;){const t=a(Math.ceil(256*e/l),n);for(let n=0;n0;n++){const o=t[n];o{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserRandomSource=void 0;t.BrowserRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;const e="undefined"!==typeof self?self.crypto||self.msCrypto:null;e&&void 0!==e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");const t=new Uint8Array(e);for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeRandomSource=void 0;const n=r(4250);t.NodeRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;{const e=r(9432);e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");let t=this._crypto.randomBytes(e);if(t.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");const r=new Uint8Array(e);for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SystemRandomSource=void 0;const n=r(5147),i=r(7639);t.SystemRandomSource=class{constructor(){return this.isAvailable=!1,this.name="",this._source=new n.BrowserRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Browser")):(this._source=new i.NodeRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Node")):void 0)}randomBytes(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)}}},5770:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2730),i=r(4250),o=20;function a(e,t,r){for(var i,a=1634760805,s=r[3]<<24|r[2]<<16|r[1]<<8|r[0],c=r[7]<<24|r[6]<<16|r[5]<<8|r[4],l=r[11]<<24|r[10]<<16|r[9]<<8|r[8],u=r[15]<<24|r[14]<<16|r[13]<<8|r[12],d=857760878,h=t[3]<<24|t[2]<<16|t[1]<<8|t[0],f=t[7]<<24|t[6]<<16|t[5]<<8|t[4],p=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],g=2036477234,v=r[19]<<24|r[18]<<16|r[17]<<8|r[16],y=r[23]<<24|r[22]<<16|r[21]<<8|r[20],b=r[27]<<24|r[26]<<16|r[25]<<8|r[24],w=r[31]<<24|r[30]<<16|r[29]<<8|r[28],x=1797285236,_=a,k=s,S=c,E=l,A=u,P=d,O=h,T=f,C=p,j=m,R=g,I=v,M=y,L=b,N=w,D=x,z=0;z>>25)+_|0)<<9|i>>>23)+A|0)<<13|i>>>19)+C|0)<<18|i>>>14,P^=(i=(k^=(i=(L^=(i=(j^=(i=P+k|0)<<7|i>>>25)+P|0)<<9|i>>>23)+j|0)<<13|i>>>19)+L|0)<<18|i>>>14,R^=(i=(O^=(i=(S^=(i=(N^=(i=R+O|0)<<7|i>>>25)+R|0)<<9|i>>>23)+N|0)<<13|i>>>19)+S|0)<<18|i>>>14,D^=(i=(I^=(i=(T^=(i=(E^=(i=D+I|0)<<7|i>>>25)+D|0)<<9|i>>>23)+E|0)<<13|i>>>19)+T|0)<<18|i>>>14,_^=(i=(E^=(i=(S^=(i=(k^=(i=_+E|0)<<7|i>>>25)+_|0)<<9|i>>>23)+k|0)<<13|i>>>19)+S|0)<<18|i>>>14,P^=(i=(A^=(i=(T^=(i=(O^=(i=P+A|0)<<7|i>>>25)+P|0)<<9|i>>>23)+O|0)<<13|i>>>19)+T|0)<<18|i>>>14,R^=(i=(j^=(i=(C^=(i=(I^=(i=R+j|0)<<7|i>>>25)+R|0)<<9|i>>>23)+I|0)<<13|i>>>19)+C|0)<<18|i>>>14,D^=(i=(N^=(i=(L^=(i=(M^=(i=D+N|0)<<7|i>>>25)+D|0)<<9|i>>>23)+M|0)<<13|i>>>19)+L|0)<<18|i>>>14;n.writeUint32LE(_+a|0,e,0),n.writeUint32LE(k+s|0,e,4),n.writeUint32LE(S+c|0,e,8),n.writeUint32LE(E+l|0,e,12),n.writeUint32LE(A+u|0,e,16),n.writeUint32LE(P+d|0,e,20),n.writeUint32LE(O+h|0,e,24),n.writeUint32LE(T+f|0,e,28),n.writeUint32LE(C+p|0,e,32),n.writeUint32LE(j+m|0,e,36),n.writeUint32LE(R+g|0,e,40),n.writeUint32LE(I+v|0,e,44),n.writeUint32LE(M+y|0,e,48),n.writeUint32LE(L+b|0,e,52),n.writeUint32LE(N+w|0,e,56),n.writeUint32LE(D+x|0,e,60)}function s(e,t,r,n,o){if(void 0===o&&(o=0),32!==e.length)throw new Error("Salsa20: key size must be 32 bytes");if(n.length>>=8,t++;if(n>0)throw new Error("Salsa20: counter overflow")}t.streamXOR=s,t.stream=function(e,t,r,n){return void 0===n&&(n=0),i.wipe(r),s(e,t,r,r,n)}},2564:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2730),i=r(4250);t.DIGEST_LENGTH=64,t.BLOCK_SIZE=128;var o=function(){function e(){this.digestLength=t.DIGEST_LENGTH,this.blockSize=t.BLOCK_SIZE,this._stateHi=new Int32Array(8),this._stateLo=new Int32Array(8),this._tempHi=new Int32Array(16),this._tempLo=new Int32Array(16),this._buffer=new Uint8Array(256),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return e.prototype._initState=function(){this._stateHi[0]=1779033703,this._stateHi[1]=3144134277,this._stateHi[2]=1013904242,this._stateHi[3]=2773480762,this._stateHi[4]=1359893119,this._stateHi[5]=2600822924,this._stateHi[6]=528734635,this._stateHi[7]=1541459225,this._stateLo[0]=4089235720,this._stateLo[1]=2227873595,this._stateLo[2]=4271175723,this._stateLo[3]=1595750129,this._stateLo[4]=2917565137,this._stateLo[5]=725511199,this._stateLo[6]=4215389547,this._stateLo[7]=327033209},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._tempHi),i.wipe(this._tempLo),this.reset()},e.prototype.update=function(e,r){if(void 0===r&&(r=e.length),this._finished)throw new Error("SHA512: can't update because hash was finished.");var n=0;if(this._bytesHashed+=r,this._bufferLength>0){for(;this._bufferLength0;)this._buffer[this._bufferLength++]=e[n++],r--;this._bufferLength===this.blockSize&&(s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,this.blockSize),this._bufferLength=0)}for(r>=this.blockSize&&(n=s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,e,n,r),r%=this.blockSize);r>0;)this._buffer[this._bufferLength++]=e[n++],r--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,r=this._bufferLength,i=t/536870912|0,o=t<<3,a=t%128<112?128:256;this._buffer[r]=128;for(var c=r+1;c0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},e.prototype.restoreState=function(e){return this._stateHi.set(e.stateHi),this._stateLo.set(e.stateLo),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.stateHi),i.wipe(e.stateLo),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.SHA512=o;var a=new Int32Array([1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591]);function s(e,t,r,i,o,s,c){for(var l,u,d,h,f,p,m,g,v=r[0],y=r[1],b=r[2],w=r[3],x=r[4],_=r[5],k=r[6],S=r[7],E=i[0],A=i[1],P=i[2],O=i[3],T=i[4],C=i[5],j=i[6],R=i[7];c>=128;){for(var I=0;I<16;I++){var M=8*I+s;e[I]=n.readUint32BE(o,M),t[I]=n.readUint32BE(o,M+4)}for(I=0;I<80;I++){var L,N,D=v,z=y,B=b,F=w,U=x,$=_,H=k,V=E,q=A,K=P,W=O,G=T,Z=C,Y=j;if(f=65535&(u=R),p=u>>>16,m=65535&(l=S),g=l>>>16,f+=65535&(u=(T>>>14|x<<18)^(T>>>18|x<<14)^(x>>>9|T<<23)),p+=u>>>16,m+=65535&(l=(x>>>14|T<<18)^(x>>>18|T<<14)^(T>>>9|x<<23)),g+=l>>>16,f+=65535&(u=T&C^~T&j),p+=u>>>16,m+=65535&(l=x&_^~x&k),g+=l>>>16,l=a[2*I],f+=65535&(u=a[2*I+1]),p+=u>>>16,m+=65535&l,g+=l>>>16,l=e[I%16],p+=(u=t[I%16])>>>16,m+=65535&l,g+=l>>>16,m+=(p+=(f+=65535&u)>>>16)>>>16,f=65535&(u=h=65535&f|p<<16),p=u>>>16,m=65535&(l=d=65535&m|(g+=m>>>16)<<16),g=l>>>16,f+=65535&(u=(E>>>28|v<<4)^(v>>>2|E<<30)^(v>>>7|E<<25)),p+=u>>>16,m+=65535&(l=(v>>>28|E<<4)^(E>>>2|v<<30)^(E>>>7|v<<25)),g+=l>>>16,p+=(u=E&A^E&P^A&P)>>>16,m+=65535&(l=v&y^v&b^y&b),g+=l>>>16,L=65535&(m+=(p+=(f+=65535&u)>>>16)>>>16)|(g+=m>>>16)<<16,N=65535&f|p<<16,f=65535&(u=W),p=u>>>16,m=65535&(l=F),g=l>>>16,p+=(u=h)>>>16,m+=65535&(l=d),g+=l>>>16,y=D,b=z,w=B,x=F=65535&(m+=(p+=(f+=65535&u)>>>16)>>>16)|(g+=m>>>16)<<16,_=U,k=$,S=H,v=L,A=V,P=q,O=K,T=W=65535&f|p<<16,C=G,j=Z,R=Y,E=N,I%16===15)for(M=0;M<16;M++)l=e[M],f=65535&(u=t[M]),p=u>>>16,m=65535&l,g=l>>>16,l=e[(M+9)%16],f+=65535&(u=t[(M+9)%16]),p+=u>>>16,m+=65535&l,g+=l>>>16,d=e[(M+1)%16],f+=65535&(u=((h=t[(M+1)%16])>>>1|d<<31)^(h>>>8|d<<24)^(h>>>7|d<<25)),p+=u>>>16,m+=65535&(l=(d>>>1|h<<31)^(d>>>8|h<<24)^d>>>7),g+=l>>>16,d=e[(M+14)%16],p+=(u=((h=t[(M+14)%16])>>>19|d<<13)^(d>>>29|h<<3)^(h>>>6|d<<26))>>>16,m+=65535&(l=(d>>>19|h<<13)^(h>>>29|d<<3)^d>>>6),g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,e[M]=65535&m|g<<16,t[M]=65535&f|p<<16}f=65535&(u=E),p=u>>>16,m=65535&(l=v),g=l>>>16,l=r[0],p+=(u=i[0])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[0]=v=65535&m|g<<16,i[0]=E=65535&f|p<<16,f=65535&(u=A),p=u>>>16,m=65535&(l=y),g=l>>>16,l=r[1],p+=(u=i[1])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[1]=y=65535&m|g<<16,i[1]=A=65535&f|p<<16,f=65535&(u=P),p=u>>>16,m=65535&(l=b),g=l>>>16,l=r[2],p+=(u=i[2])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[2]=b=65535&m|g<<16,i[2]=P=65535&f|p<<16,f=65535&(u=O),p=u>>>16,m=65535&(l=w),g=l>>>16,l=r[3],p+=(u=i[3])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[3]=w=65535&m|g<<16,i[3]=O=65535&f|p<<16,f=65535&(u=T),p=u>>>16,m=65535&(l=x),g=l>>>16,l=r[4],p+=(u=i[4])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[4]=x=65535&m|g<<16,i[4]=T=65535&f|p<<16,f=65535&(u=C),p=u>>>16,m=65535&(l=_),g=l>>>16,l=r[5],p+=(u=i[5])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[5]=_=65535&m|g<<16,i[5]=C=65535&f|p<<16,f=65535&(u=j),p=u>>>16,m=65535&(l=k),g=l>>>16,l=r[6],p+=(u=i[6])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[6]=k=65535&m|g<<16,i[6]=j=65535&f|p<<16,f=65535&(u=R),p=u>>>16,m=65535&(l=S),g=l>>>16,l=r[7],p+=(u=i[7])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[7]=S=65535&m|g<<16,i[7]=R=65535&f|p<<16,s+=128,c-=128}return s}t.hash=function(e){var t=new o;t.update(e);var r=t.digest();return t.clean(),r}},6058:(e,t)=>{"use strict";var r="utf8: invalid string",n="utf8: invalid source encoding";function i(e){for(var t=0,n=0;n=e.length-1)throw new Error(r);n++,t+=4}}return t}t.lF=function(e){for(var t=new Uint8Array(i(e)),r=0,n=0;n>6,t[r++]=128|63&o):o<55296?(t[r++]=224|o>>12,t[r++]=128|o>>6&63,t[r++]=128|63&o):(n++,o=(1023&o)<<10,o|=1023&e.charCodeAt(n),o+=65536,t[r++]=240|o>>18,t[r++]=128|o>>12&63,t[r++]=128|o>>6&63,t[r++]=128|63&o)}return t}},4250:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wipe=function(e){for(var t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.X25519Session=t.SECRET_SEED_LENGTH=t.SAVED_STATE_LENGTH=t.ACCEPT_MESSAGE_LENGTH=t.OFFER_MESSAGE_LENGTH=void 0;const n=r(4706),i=r(4250),o=r(1204),a=r(6458);t.OFFER_MESSAGE_LENGTH=o.PUBLIC_KEY_LENGTH,t.ACCEPT_MESSAGE_LENGTH=o.PUBLIC_KEY_LENGTH,t.SAVED_STATE_LENGTH=o.SECRET_KEY_LENGTH,t.SECRET_SEED_LENGTH=o.SECRET_KEY_LENGTH;t.X25519Session=class{constructor(e,r){this.offerMessageLength=t.OFFER_MESSAGE_LENGTH,this.acceptMessageLength=t.ACCEPT_MESSAGE_LENGTH,this.sharedKeyLength=o.SHARED_KEY_LENGTH,this.savedStateLength=t.SAVED_STATE_LENGTH,this._seed=e||(0,n.randomBytes)(o.SECRET_KEY_LENGTH,r)}saveState(){return new Uint8Array(this._seed)}restoreState(e){return this._seed=new Uint8Array(e),this}clean(){this._seed&&(0,i.wipe)(this._seed),this._keyPair&&((0,i.wipe)(this._keyPair.secretKey),(0,i.wipe)(this._keyPair.publicKey)),this._sharedKey&&(0,i.wipe)(this._sharedKey),this._sessionKeys&&((0,i.wipe)(this._sessionKeys.receive),(0,i.wipe)(this._sessionKeys.send))}offer(){return this._keyPair=(0,o.generateKeyPairFromSeed)(this._seed),new Uint8Array(this._keyPair.publicKey)}accept(e){if(this._keyPair)throw new Error("X25519Session: accept shouldn't be called by offering party");if(e.length!==this.offerMessageLength)throw new Error("X25519Session: incorrect offer message length");if(this._sharedKey)throw new Error("X25519Session: accept was already called");const t=(0,o.generateKeyPairFromSeed)(this._seed);return this._sharedKey=(0,o.sharedKey)(t.secretKey,e),this._sessionKeys=(0,a.clientSessionKeysFromSharedKey)(this._sharedKey,t.publicKey,e),(0,i.wipe)(t.secretKey),t.publicKey}finish(e){if(e.length!==this.acceptMessageLength)throw new Error("X25519Session: incorrect accept message length");if(!this._keyPair)throw new Error("X25519Session: no offer state");if(this._sharedKey)throw new Error("X25519Session: finish was already called");return this._sharedKey=(0,o.sharedKey)(this._keyPair.secretKey,e),this._sessionKeys=(0,a.serverSessionKeysFromSharedKey)(this._sharedKey,this._keyPair.publicKey,e),this}getSharedKey(){if(!this._sharedKey)throw new Error("X25519Session: no shared key established");return new Uint8Array(this._sharedKey)}getSessionKeys(){if(!this._sessionKeys)throw new Error("X25519Session: no shared key established");return{receive:new Uint8Array(this._sessionKeys.receive),send:new Uint8Array(this._sessionKeys.send)}}}},6458:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.clientSessionKeys=t.serverSessionKeys=t.clientSessionKeysFromSharedKey=t.serverSessionKeysFromSharedKey=t.X25519Session=void 0;const n=r(1442),i=r(1204);var o=r(2032);Object.defineProperty(t,"X25519Session",{enumerable:!0,get:function(){return o.X25519Session}});const a=32;function s(e,t,r,i=n.BLAKE2b){const o=new i;if(o.digestLength!==2*a)throw new Error("X25519: incorrect digest length");const s=o.update(e).update(r).update(t).digest();return{send:s.subarray(0,a),receive:s.subarray(a)}}function c(e,t,r,i=n.BLAKE2b){const o=new i;if(o.digestLength!==2*a)throw new Error("X25519: incorrect digest length");const s=o.update(e).update(t).update(r).digest();return{receive:s.subarray(0,a),send:s.subarray(a)}}t.serverSessionKeysFromSharedKey=s,t.clientSessionKeysFromSharedKey=c,t.serverSessionKeys=function(e,t,r=n.BLAKE2b){return s((0,i.sharedKey)(e.secretKey,t),e.publicKey,t,r)},t.clientSessionKeys=function(e,t,r=n.BLAKE2b){return c((0,i.sharedKey)(e.secretKey,t),e.publicKey,t,r)}},1204:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sharedKey=t.generateKeyPair=t.generateKeyPairFromSeed=t.scalarMultBase=t.scalarMult=t.SHARED_KEY_LENGTH=t.SECRET_KEY_LENGTH=t.PUBLIC_KEY_LENGTH=void 0;const n=r(4706),i=r(4250);function o(e){const t=new Float64Array(16);if(e)for(let r=0;r=0;--o){const e=r[o>>>3]>>>(7&o)&1;l(i,a,e),l(p,m,e),u(g,i,p),d(i,i,p),u(p,a,m),d(a,a,m),f(m,g),f(v,i),h(i,p,i),h(p,a,g),u(g,i,p),d(i,i,p),f(a,i),d(p,m,v),h(i,p,s),u(i,i,m),h(p,p,i),h(i,m,v),h(m,a,n),f(a,g),l(i,a,e),l(p,m,e)}for(let o=0;o<16;o++)n[o+16]=i[o],n[o+32]=p[o],n[o+48]=a[o],n[o+64]=m[o];const y=n.subarray(32),b=n.subarray(16);!function(e,t){const r=o();for(let n=0;n<16;n++)r[n]=t[n];for(let n=253;n>=0;n--)f(r,r),2!==n&&4!==n&&h(r,r,t);for(let n=0;n<16;n++)e[n]=r[n]}(y,y),h(b,b,y);const w=new Uint8Array(32);return function(e,t){const r=o(),n=o();for(let i=0;i<16;i++)n[i]=t[i];c(n),c(n),c(n);for(let i=0;i<2;i++){r[0]=n[0]-65517;for(let t=1;t<15;t++)r[t]=n[t]-65535-(r[t-1]>>16&1),r[t-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);const e=r[15]>>16&1;r[14]&=65535,l(n,r,1-e)}for(let i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}(w,b),w}function m(e){return p(e,a)}function g(e){if(e.length!==t.SECRET_KEY_LENGTH)throw new Error(`x25519: seed must be ${t.SECRET_KEY_LENGTH} bytes`);const r=new Uint8Array(e);return{publicKey:m(r),secretKey:r}}t.scalarMult=p,t.scalarMultBase=m,t.generateKeyPairFromSeed=g,t.generateKeyPair=function(e){const t=(0,n.randomBytes)(32,e),r=g(t);return(0,i.wipe)(t),r},t.sharedKey=function(e,r,n=!1){if(e.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(r.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");const i=p(e,r);if(n){let e=0;for(let t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(2730),i=r(5770),o=r(4250);function a(e,t,r,n,a){if(void 0===a&&(a=0),0===a){if(24!==t.length)throw new Error("XSalsa20 nonce must be 24 bytes")}else if(32!==t.length)throw new Error("XSalsa20 nonce with counter must be 32 bytes");var s=c(e,t.subarray(0,16),new Uint8Array(32)),l=i.streamXOR(s,t.subarray(16),r,n,a);return o.wipe(s),l}t.streamXOR=a,t.stream=function(e,t,r,n){return void 0===n&&(n=0),o.wipe(r),a(e,t,r,r,n)};var s=20;function c(e,t,r){for(var i,o=1634760805,a=e[3]<<24|e[2]<<16|e[1]<<8|e[0],c=e[7]<<24|e[6]<<16|e[5]<<8|e[4],l=e[11]<<24|e[10]<<16|e[9]<<8|e[8],u=e[15]<<24|e[14]<<16|e[13]<<8|e[12],d=857760878,h=t[3]<<24|t[2]<<16|t[1]<<8|t[0],f=t[7]<<24|t[6]<<16|t[5]<<8|t[4],p=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],g=2036477234,v=e[19]<<24|e[18]<<16|e[17]<<8|e[16],y=e[23]<<24|e[22]<<16|e[21]<<8|e[20],b=e[27]<<24|e[26]<<16|e[25]<<8|e[24],w=e[31]<<24|e[30]<<16|e[29]<<8|e[28],x=1797285236,_=0;_>>25)+o|0)<<9|i>>>23)+u|0)<<13|i>>>19)+p|0)<<18|i>>>14,d^=(i=(a^=(i=(b^=(i=(m^=(i=d+a|0)<<7|i>>>25)+d|0)<<9|i>>>23)+m|0)<<13|i>>>19)+b|0)<<18|i>>>14,g^=(i=(h^=(i=(c^=(i=(w^=(i=g+h|0)<<7|i>>>25)+g|0)<<9|i>>>23)+w|0)<<13|i>>>19)+c|0)<<18|i>>>14,x^=(i=(v^=(i=(f^=(i=(l^=(i=x+v|0)<<7|i>>>25)+x|0)<<9|i>>>23)+l|0)<<13|i>>>19)+f|0)<<18|i>>>14,o^=(i=(l^=(i=(c^=(i=(a^=(i=o+l|0)<<7|i>>>25)+o|0)<<9|i>>>23)+a|0)<<13|i>>>19)+c|0)<<18|i>>>14,d^=(i=(u^=(i=(f^=(i=(h^=(i=d+u|0)<<7|i>>>25)+d|0)<<9|i>>>23)+h|0)<<13|i>>>19)+f|0)<<18|i>>>14,g^=(i=(m^=(i=(p^=(i=(v^=(i=g+m|0)<<7|i>>>25)+g|0)<<9|i>>>23)+v|0)<<13|i>>>19)+p|0)<<18|i>>>14,x^=(i=(w^=(i=(b^=(i=(y^=(i=x+w|0)<<7|i>>>25)+x|0)<<9|i>>>23)+y|0)<<13|i>>>19)+b|0)<<18|i>>>14;return n.writeUint32LE(o,r,0),n.writeUint32LE(d,r,4),n.writeUint32LE(g,r,8),n.writeUint32LE(x,r,12),n.writeUint32LE(h,r,16),n.writeUint32LE(f,r,20),n.writeUint32LE(p,r,24),n.writeUint32LE(m,r,28),r}t.hsalsa=c},4941:e=>{"use strict";e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r>>0,l=new Uint8Array(o);e[r];){var u=t[e.charCodeAt(r)];if(255===u)return;for(var d=0,h=o-1;(0!==u||d>>0,l[h]=u%256>>>0,u=u/256>>>0;if(0!==u)throw new Error("Non-zero carry");i=d,r++}for(var f=o-i;f!==o&&0===l[f];)f++;for(var p=new Uint8Array(n+(o-f)),m=n;f!==o;)p[m++]=l[f++];return p}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var r=0,n=0,i=0,o=t.length;i!==o&&0===t[i];)i++,r++;for(var c=(o-i)*l+1>>>0,u=new Uint8Array(c);i!==o;){for(var d=t[i],h=0,f=c-1;(0!==d||h>>0,u[f]=d%a>>>0,d=d/a>>>0;if(0!==d)throw new Error("Non-zero carry");n=h,i++}for(var p=c-n;p!==c&&0===u[p];)p++;for(var m=s.repeat(r);p{const n=r(4941);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},6097:(e,t,r)=>{"use strict";var n=r(4194);e.exports=function(e){function t(t){var r=t.slice(0,-4),n=t.slice(-4),i=e(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(t){var r=Uint8Array.from(t),i=e(r),o=r.length+4,a=new Uint8Array(o);return a.set(r,0),a.set(i.subarray(0,4),r.length),n.encode(a,o)},decode:function(e){var r=t(n.decode(e));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(e){var r=n.decodeUnsafe(e);if(r)return t(r)}}}},2946:(e,t,r)=>{"use strict";var{sha256:n}=r(7049),i=r(6097);e.exports=i((function(e){return n(n(e))}))},3924:function(e,t,r){!function(e,t){"use strict";function n(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function o(e,t,r){if(o.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var a;"object"===typeof e?e.exports=o:t.BN=o,o.BN=o,o.wordSize=26;try{a="undefined"!==typeof window&&"undefined"!==typeof window.Buffer?window.Buffer:r(1448).Buffer}catch(O){}function s(e,t){var r=e.charCodeAt(t);return r>=48&&r<=57?r-48:r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:void n(!1,"Invalid character in "+e)}function c(e,t,r){var n=s(e,r);return r-1>=t&&(n|=s(e,r-1)<<4),n}function l(e,t,r,i){for(var o=0,a=0,s=Math.min(e.length,r),c=t;c=49?l-49+10:l>=17?l-17+10:l,n(l>=0&&a0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,r){if("number"===typeof e)return this._initNumber(e,t,r);if("object"===typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)a=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(i=0,o=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this._strip()},o.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=c(e,t,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(e.length-t)%2===0?t+1:t;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this._strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var o=e.length-r,a=o%n,s=Math.min(o,o-a)+r,c=0,u=r;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},"undefined"!==typeof Symbol&&"function"===typeof Symbol.for)try{o.prototype[Symbol.for("nodejs.util.inspect.custom")]=d}catch(O){o.prototype.inspect=d}else o.prototype.inspect=d;function d(){return(this.red?""}var h=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],p=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];o.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,o=0,a=0;a>>24-i&16777215,(i+=2)>=26&&(i-=26,a--),r=0!==o||a!==this.length-1?h[6-c.length]+c+r:c+r}for(0!==o&&(r=o.toString(16)+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=f[e],u=p[e];r="";var d=this.clone();for(d.negative=0;!d.isZero();){var m=d.modrn(u).toString(e);r=(d=d.idivn(u)).isZero()?m+r:h[l-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16,2)},a&&(o.prototype.toBuffer=function(e,t){return this.toArrayLike(a,e,t)}),o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)};function m(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],o=0|t.words[0],a=i*o,s=67108863&a,c=a/67108864|0;r.words[0]=s;for(var l=1;l>>26,d=67108863&c,h=Math.min(l,t.length-1),f=Math.max(0,l-e.length+1);f<=h;f++){var p=l-f|0;u+=(a=(i=0|e.words[p])*(o=0|t.words[f])+d)/67108864|0,d=67108863&a}r.words[l]=0|d,c=0|u}return 0!==c?r.words[l]=0|c:r.length--,r._strip()}o.prototype.toArrayLike=function(e,t,r){this._strip();var i=this.byteLength(),o=r||Math.max(1,i);n(i<=o,"byte array longer than desired length"),n(o>0,"Requested array length <= 0");var a=function(e,t){return e.allocUnsafe?e.allocUnsafe(t):new e(t)}(e,o);return this["_toArrayLike"+("le"===t?"LE":"BE")](a,i),a},o.prototype._toArrayLikeLE=function(e,t){for(var r=0,n=0,i=0,o=0;i>8&255),r>16&255),6===o?(r>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r=0&&(e[r--]=a>>8&255),r>=0&&(e[r--]=a>>16&255),6===o?(r>=0&&(e[r--]=a>>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r>=0)for(e[r--]=n;r>=0;)e[r--]=0},Math.clz32?o.prototype._countBits=function(e){return 32-Math.clz32(e)}:o.prototype._countBits=function(e){var t=e,r=0;return t>=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0===(8191&t)&&(r+=13,t>>>=13),0===(127&t)&&(r+=7,t>>>=7),0===(15&t)&&(r+=4,t>>>=4),0===(3&t)&&(r+=2,t>>>=2),0===(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){n("number"===typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this._strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){n("number"===typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&t;for(;0!==o&&a>26,this.words[a]=67108863&t;if(0===o&&a>>13,f=0|a[1],p=8191&f,m=f>>>13,g=0|a[2],v=8191&g,y=g>>>13,b=0|a[3],w=8191&b,x=b>>>13,_=0|a[4],k=8191&_,S=_>>>13,E=0|a[5],A=8191&E,P=E>>>13,O=0|a[6],T=8191&O,C=O>>>13,j=0|a[7],R=8191&j,I=j>>>13,M=0|a[8],L=8191&M,N=M>>>13,D=0|a[9],z=8191&D,B=D>>>13,F=0|s[0],U=8191&F,$=F>>>13,H=0|s[1],V=8191&H,q=H>>>13,K=0|s[2],W=8191&K,G=K>>>13,Z=0|s[3],Y=8191&Z,X=Z>>>13,J=0|s[4],Q=8191&J,ee=J>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],oe=8191&ie,ae=ie>>>13,se=0|s[7],ce=8191&se,le=se>>>13,ue=0|s[8],de=8191&ue,he=ue>>>13,fe=0|s[9],pe=8191&fe,me=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(l+(n=Math.imul(d,U))|0)+((8191&(i=(i=Math.imul(d,$))+Math.imul(h,U)|0))<<13)|0;l=((o=Math.imul(h,$))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,U),i=(i=Math.imul(p,$))+Math.imul(m,U)|0,o=Math.imul(m,$);var ve=(l+(n=n+Math.imul(d,V)|0)|0)+((8191&(i=(i=i+Math.imul(d,q)|0)+Math.imul(h,V)|0))<<13)|0;l=((o=o+Math.imul(h,q)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(v,U),i=(i=Math.imul(v,$))+Math.imul(y,U)|0,o=Math.imul(y,$),n=n+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,q)|0;var ye=(l+(n=n+Math.imul(d,W)|0)|0)+((8191&(i=(i=i+Math.imul(d,G)|0)+Math.imul(h,W)|0))<<13)|0;l=((o=o+Math.imul(h,G)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(w,U),i=(i=Math.imul(w,$))+Math.imul(x,U)|0,o=Math.imul(x,$),n=n+Math.imul(v,V)|0,i=(i=i+Math.imul(v,q)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,q)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,G)|0;var be=(l+(n=n+Math.imul(d,Y)|0)|0)+((8191&(i=(i=i+Math.imul(d,X)|0)+Math.imul(h,Y)|0))<<13)|0;l=((o=o+Math.imul(h,X)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(k,U),i=(i=Math.imul(k,$))+Math.imul(S,U)|0,o=Math.imul(S,$),n=n+Math.imul(w,V)|0,i=(i=i+Math.imul(w,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,X)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,X)|0;var we=(l+(n=n+Math.imul(d,Q)|0)|0)+((8191&(i=(i=i+Math.imul(d,ee)|0)+Math.imul(h,Q)|0))<<13)|0;l=((o=o+Math.imul(h,ee)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(A,U),i=(i=Math.imul(A,$))+Math.imul(P,U)|0,o=Math.imul(P,$),n=n+Math.imul(k,V)|0,i=(i=i+Math.imul(k,q)|0)+Math.imul(S,V)|0,o=o+Math.imul(S,q)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(x,W)|0,o=o+Math.imul(x,G)|0,n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,X)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,X)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,ee)|0;var xe=(l+(n=n+Math.imul(d,re)|0)|0)+((8191&(i=(i=i+Math.imul(d,ne)|0)+Math.imul(h,re)|0))<<13)|0;l=((o=o+Math.imul(h,ne)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(T,U),i=(i=Math.imul(T,$))+Math.imul(C,U)|0,o=Math.imul(C,$),n=n+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,n=n+Math.imul(k,W)|0,i=(i=i+Math.imul(k,G)|0)+Math.imul(S,W)|0,o=o+Math.imul(S,G)|0,n=n+Math.imul(w,Y)|0,i=(i=i+Math.imul(w,X)|0)+Math.imul(x,Y)|0,o=o+Math.imul(x,X)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(m,re)|0,o=o+Math.imul(m,ne)|0;var _e=(l+(n=n+Math.imul(d,oe)|0)|0)+((8191&(i=(i=i+Math.imul(d,ae)|0)+Math.imul(h,oe)|0))<<13)|0;l=((o=o+Math.imul(h,ae)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(R,U),i=(i=Math.imul(R,$))+Math.imul(I,U)|0,o=Math.imul(I,$),n=n+Math.imul(T,V)|0,i=(i=i+Math.imul(T,q)|0)+Math.imul(C,V)|0,o=o+Math.imul(C,q)|0,n=n+Math.imul(A,W)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(P,W)|0,o=o+Math.imul(P,G)|0,n=n+Math.imul(k,Y)|0,i=(i=i+Math.imul(k,X)|0)+Math.imul(S,Y)|0,o=o+Math.imul(S,X)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,ee)|0)+Math.imul(x,Q)|0,o=o+Math.imul(x,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(y,re)|0,o=o+Math.imul(y,ne)|0,n=n+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,ae)|0)+Math.imul(m,oe)|0,o=o+Math.imul(m,ae)|0;var ke=(l+(n=n+Math.imul(d,ce)|0)|0)+((8191&(i=(i=i+Math.imul(d,le)|0)+Math.imul(h,ce)|0))<<13)|0;l=((o=o+Math.imul(h,le)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(L,U),i=(i=Math.imul(L,$))+Math.imul(N,U)|0,o=Math.imul(N,$),n=n+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(I,V)|0,o=o+Math.imul(I,q)|0,n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(C,W)|0,o=o+Math.imul(C,G)|0,n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,X)|0)+Math.imul(P,Y)|0,o=o+Math.imul(P,X)|0,n=n+Math.imul(k,Q)|0,i=(i=i+Math.imul(k,ee)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,ee)|0,n=n+Math.imul(w,re)|0,i=(i=i+Math.imul(w,ne)|0)+Math.imul(x,re)|0,o=o+Math.imul(x,ne)|0,n=n+Math.imul(v,oe)|0,i=(i=i+Math.imul(v,ae)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,ae)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,le)|0)+Math.imul(m,ce)|0,o=o+Math.imul(m,le)|0;var Se=(l+(n=n+Math.imul(d,de)|0)|0)+((8191&(i=(i=i+Math.imul(d,he)|0)+Math.imul(h,de)|0))<<13)|0;l=((o=o+Math.imul(h,he)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(z,U),i=(i=Math.imul(z,$))+Math.imul(B,U)|0,o=Math.imul(B,$),n=n+Math.imul(L,V)|0,i=(i=i+Math.imul(L,q)|0)+Math.imul(N,V)|0,o=o+Math.imul(N,q)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,X)|0)+Math.imul(C,Y)|0,o=o+Math.imul(C,X)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(P,Q)|0,o=o+Math.imul(P,ee)|0,n=n+Math.imul(k,re)|0,i=(i=i+Math.imul(k,ne)|0)+Math.imul(S,re)|0,o=o+Math.imul(S,ne)|0,n=n+Math.imul(w,oe)|0,i=(i=i+Math.imul(w,ae)|0)+Math.imul(x,oe)|0,o=o+Math.imul(x,ae)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,le)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,le)|0,n=n+Math.imul(p,de)|0,i=(i=i+Math.imul(p,he)|0)+Math.imul(m,de)|0,o=o+Math.imul(m,he)|0;var Ee=(l+(n=n+Math.imul(d,pe)|0)|0)+((8191&(i=(i=i+Math.imul(d,me)|0)+Math.imul(h,pe)|0))<<13)|0;l=((o=o+Math.imul(h,me)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(z,V),i=(i=Math.imul(z,q))+Math.imul(B,V)|0,o=Math.imul(B,q),n=n+Math.imul(L,W)|0,i=(i=i+Math.imul(L,G)|0)+Math.imul(N,W)|0,o=o+Math.imul(N,G)|0,n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(I,Y)|0,o=o+Math.imul(I,X)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(C,Q)|0,o=o+Math.imul(C,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(P,re)|0,o=o+Math.imul(P,ne)|0,n=n+Math.imul(k,oe)|0,i=(i=i+Math.imul(k,ae)|0)+Math.imul(S,oe)|0,o=o+Math.imul(S,ae)|0,n=n+Math.imul(w,ce)|0,i=(i=i+Math.imul(w,le)|0)+Math.imul(x,ce)|0,o=o+Math.imul(x,le)|0,n=n+Math.imul(v,de)|0,i=(i=i+Math.imul(v,he)|0)+Math.imul(y,de)|0,o=o+Math.imul(y,he)|0;var Ae=(l+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,me)|0)+Math.imul(m,pe)|0))<<13)|0;l=((o=o+Math.imul(m,me)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(z,W),i=(i=Math.imul(z,G))+Math.imul(B,W)|0,o=Math.imul(B,G),n=n+Math.imul(L,Y)|0,i=(i=i+Math.imul(L,X)|0)+Math.imul(N,Y)|0,o=o+Math.imul(N,X)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(C,re)|0,o=o+Math.imul(C,ne)|0,n=n+Math.imul(A,oe)|0,i=(i=i+Math.imul(A,ae)|0)+Math.imul(P,oe)|0,o=o+Math.imul(P,ae)|0,n=n+Math.imul(k,ce)|0,i=(i=i+Math.imul(k,le)|0)+Math.imul(S,ce)|0,o=o+Math.imul(S,le)|0,n=n+Math.imul(w,de)|0,i=(i=i+Math.imul(w,he)|0)+Math.imul(x,de)|0,o=o+Math.imul(x,he)|0;var Pe=(l+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,me)|0)+Math.imul(y,pe)|0))<<13)|0;l=((o=o+Math.imul(y,me)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(z,Y),i=(i=Math.imul(z,X))+Math.imul(B,Y)|0,o=Math.imul(B,X),n=n+Math.imul(L,Q)|0,i=(i=i+Math.imul(L,ee)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(I,re)|0,o=o+Math.imul(I,ne)|0,n=n+Math.imul(T,oe)|0,i=(i=i+Math.imul(T,ae)|0)+Math.imul(C,oe)|0,o=o+Math.imul(C,ae)|0,n=n+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(P,ce)|0,o=o+Math.imul(P,le)|0,n=n+Math.imul(k,de)|0,i=(i=i+Math.imul(k,he)|0)+Math.imul(S,de)|0,o=o+Math.imul(S,he)|0;var Oe=(l+(n=n+Math.imul(w,pe)|0)|0)+((8191&(i=(i=i+Math.imul(w,me)|0)+Math.imul(x,pe)|0))<<13)|0;l=((o=o+Math.imul(x,me)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(z,Q),i=(i=Math.imul(z,ee))+Math.imul(B,Q)|0,o=Math.imul(B,ee),n=n+Math.imul(L,re)|0,i=(i=i+Math.imul(L,ne)|0)+Math.imul(N,re)|0,o=o+Math.imul(N,ne)|0,n=n+Math.imul(R,oe)|0,i=(i=i+Math.imul(R,ae)|0)+Math.imul(I,oe)|0,o=o+Math.imul(I,ae)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,le)|0)+Math.imul(C,ce)|0,o=o+Math.imul(C,le)|0,n=n+Math.imul(A,de)|0,i=(i=i+Math.imul(A,he)|0)+Math.imul(P,de)|0,o=o+Math.imul(P,he)|0;var Te=(l+(n=n+Math.imul(k,pe)|0)|0)+((8191&(i=(i=i+Math.imul(k,me)|0)+Math.imul(S,pe)|0))<<13)|0;l=((o=o+Math.imul(S,me)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(z,re),i=(i=Math.imul(z,ne))+Math.imul(B,re)|0,o=Math.imul(B,ne),n=n+Math.imul(L,oe)|0,i=(i=i+Math.imul(L,ae)|0)+Math.imul(N,oe)|0,o=o+Math.imul(N,ae)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,le)|0)+Math.imul(I,ce)|0,o=o+Math.imul(I,le)|0,n=n+Math.imul(T,de)|0,i=(i=i+Math.imul(T,he)|0)+Math.imul(C,de)|0,o=o+Math.imul(C,he)|0;var Ce=(l+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,me)|0)+Math.imul(P,pe)|0))<<13)|0;l=((o=o+Math.imul(P,me)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(z,oe),i=(i=Math.imul(z,ae))+Math.imul(B,oe)|0,o=Math.imul(B,ae),n=n+Math.imul(L,ce)|0,i=(i=i+Math.imul(L,le)|0)+Math.imul(N,ce)|0,o=o+Math.imul(N,le)|0,n=n+Math.imul(R,de)|0,i=(i=i+Math.imul(R,he)|0)+Math.imul(I,de)|0,o=o+Math.imul(I,he)|0;var je=(l+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,me)|0)+Math.imul(C,pe)|0))<<13)|0;l=((o=o+Math.imul(C,me)|0)+(i>>>13)|0)+(je>>>26)|0,je&=67108863,n=Math.imul(z,ce),i=(i=Math.imul(z,le))+Math.imul(B,ce)|0,o=Math.imul(B,le),n=n+Math.imul(L,de)|0,i=(i=i+Math.imul(L,he)|0)+Math.imul(N,de)|0,o=o+Math.imul(N,he)|0;var Re=(l+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,me)|0)+Math.imul(I,pe)|0))<<13)|0;l=((o=o+Math.imul(I,me)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(z,de),i=(i=Math.imul(z,he))+Math.imul(B,de)|0,o=Math.imul(B,he);var Ie=(l+(n=n+Math.imul(L,pe)|0)|0)+((8191&(i=(i=i+Math.imul(L,me)|0)+Math.imul(N,pe)|0))<<13)|0;l=((o=o+Math.imul(N,me)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863;var Me=(l+(n=Math.imul(z,pe))|0)+((8191&(i=(i=Math.imul(z,me))+Math.imul(B,pe)|0))<<13)|0;return l=((o=Math.imul(B,me))+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,c[0]=ge,c[1]=ve,c[2]=ye,c[3]=be,c[4]=we,c[5]=xe,c[6]=_e,c[7]=ke,c[8]=Se,c[9]=Ee,c[10]=Ae,c[11]=Pe,c[12]=Oe,c[13]=Te,c[14]=Ce,c[15]=je,c[16]=Re,c[17]=Ie,c[18]=Me,0!==l&&(c[19]=l,r.length++),r};function v(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r._strip()}function y(e,t,r){return v(e,t,r)}function b(e,t){this.x=e,this.y=t}Math.imul||(g=m),o.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?g(this,e,t):r<63?m(this,e,t):r<1024?v(this,e,t):y(this,e,t)},b.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,n=0;n>=1;return n},b.prototype.permute=function(e,t,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*t;a>=26,r+=o/67108864|0,r+=a>>>26,this.words[i]=67108863&a}return 0!==r&&(this.words[i]=r,this.length++),t?this.ineg():this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i&1}return t}(e);if(0===t.length)return new o(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(t=0;t>>26-r}a&&(this.words[t]=a,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var o=e%26,a=Math.min((e-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,l=0;l=0&&(0!==u||l>=i);l--){var d=0|this.words[l];this.words[l]=u<<26-o|d>>>o,u=d&s}return c&&0!==u&&(c.words[c.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this._strip()},o.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){n("number"===typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(n("number"===typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&o}for(;i>26,this.words[i+r]=67108863&o;if(0===s)return this._strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this._strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,a=0|i.words[i.length-1];0!==(r=26-this._countBits(a))&&(i=i.ushln(r),n.iushln(r),a=0|i.words[i.length-1]);var s,c=n.length-i.length;if("mod"!==t){(s=new o(null)).length=c+1,s.words=new Array(s.length);for(var l=0;l=0;d--){var h=67108864*(0|n.words[i.length+d])+(0|n.words[i.length+d-1]);for(h=Math.min(h/a|0,67108863),n._ishlnsubmul(i,h,d);0!==n.negative;)h--,n.negative=0,n._ishlnsubmul(i,1,d),n.isZero()||(n.negative^=1);s&&(s.words[d]=h)}return s&&s._strip(),n._strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},o.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.iadd(e)),{div:i,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modrn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modrn(e.words[0]))}:this._wordDiv(e,t);var i,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modrn=function(e){var t=e<0;t&&(e=-e),n(e<=67108863);for(var r=(1<<26)%e,i=0,o=this.length-1;o>=0;o--)i=(r*i+(0|this.words[o]))%e;return t?-i:i},o.prototype.modn=function(e){return this.modrn(e)},o.prototype.idivn=function(e){var t=e<0;t&&(e=-e),n(e<=67108863);for(var r=0,i=this.length-1;i>=0;i--){var o=(0|this.words[i])+67108864*r;this.words[i]=o/e|0,r=o%e}return this._strip(),t?this.ineg():this},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),a=new o(0),s=new o(0),c=new o(1),l=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++l;for(var u=r.clone(),d=t.clone();!t.isZero();){for(var h=0,f=1;0===(t.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(t.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(u),a.isub(d)),i.iushrn(1),a.iushrn(1);for(var p=0,m=1;0===(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(u),c.isub(d)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),a.isub(c)):(r.isub(t),s.isub(i),c.isub(a))}return{a:s,b:c,gcd:r.iushln(l)}},o.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,a=new o(1),s=new o(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var l=0,u=1;0===(t.words[0]&u)&&l<26;++l,u<<=1);if(l>0)for(t.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var d=0,h=1;0===(r.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(r.iushrn(d);d-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),a.isub(s)):(r.isub(t),s.isub(a))}return(i=0===t.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var o=t;t=r,r=o}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){n("number"===typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this._strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new A(e)},o.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var w={k256:null,p224:null,p192:null,p25519:null};function x(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function _(){x.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function k(){x.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function S(){x.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function E(){x.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function A(e){if("string"===typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function P(e){A.call(this,e),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}x.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},x.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},x.prototype.split=function(e,t){e.iushrn(this.n,0,t)},x.prototype.imulK=function(e){return e.imul(this.k)},i(_,x),_.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,o=a}o>>>=22,e.words[i-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},_.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(w[e])return w[e];var t;if("k256"===e)t=new _;else if("p224"===e)t=new k;else if("p192"===e)t=new S;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new E}return w[e]=t,t},A.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},A.prototype._verify2=function(e,t){n(0===(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},A.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):(u(e,e.umod(this.m)._forceRed(this)),e)},A.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},A.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},A.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},A.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},A.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},A.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},A.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},A.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},A.prototype.isqr=function(e){return this.imul(e,e.clone())},A.prototype.sqr=function(e){return this.mul(e,e)},A.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2===1),3===t){var r=this.m.add(new o(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);n(!i.isZero());var s=new o(1).toRed(this),c=s.redNeg(),l=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,l).cmp(c);)u.redIAdd(c);for(var d=this.pow(u,i),h=this.pow(e,i.addn(1).iushrn(1)),f=this.pow(e,i),p=a;0!==f.cmp(s);){for(var m=f,g=0;0!==m.cmp(s);g++)m=m.redSqr();n(g=0;n--){for(var l=t.words[n],u=c-1;u>=0;u--){var d=l>>u&1;i!==r[0]&&(i=this.sqr(i)),0!==d||0!==a?(a<<=1,a|=d,(4===++s||0===n&&0===u)&&(i=this.mul(i,r[a]),s=0,a=0)):s=0}c=26}return i},A.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},A.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new P(e)},i(P,A),P.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},P.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},P.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},P.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},P.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},5409:(e,t,r)=>{"use strict";var n=r(1176).Buffer;e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r>>0,u=new Uint8Array(a);e[r];){var d=t[e.charCodeAt(r)];if(255===d)return;for(var h=0,f=a-1;(0!==d||h>>0,u[f]=d%256>>>0,d=d/256>>>0;if(0!==d)throw new Error("Non-zero carry");o=h,r++}for(var p=a-o;p!==a&&0===u[p];)p++;var m=n.allocUnsafe(i+(a-p));m.fill(0,0,i);for(var g=i;p!==a;)m[g++]=u[p++];return m}return{encode:function(t){if((Array.isArray(t)||t instanceof Uint8Array)&&(t=n.from(t)),!n.isBuffer(t))throw new TypeError("Expected Buffer");if(0===t.length)return"";for(var r=0,i=0,o=0,a=t.length;o!==a&&0===t[o];)o++,r++;for(var l=(a-o)*u+1>>>0,d=new Uint8Array(l);o!==a;){for(var h=t[o],f=0,p=l-1;(0!==h||f>>0,d[p]=h%s>>>0,h=h/s>>>0;if(0!==h)throw new Error("Non-zero carry");i=f,o++}for(var m=l-i;m!==l&&0===d[m];)m++;for(var g=c.repeat(r);m{"use strict";t.byteLength=function(e){var t=s(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,o=s(e),a=o[0],c=o[1],l=new i(function(e,t,r){return 3*(t+r)/4-r}(0,a,c)),u=0,d=c>0?a-4:a;for(r=0;r>16&255,l[u++]=t>>8&255,l[u++]=255&t;2===c&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,l[u++]=255&t);1===c&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,l[u++]=t>>8&255,l[u++]=255&t);return l},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,o=[],a=16383,s=0,l=n-i;sl?l:s+a));1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return o.join("")};for(var r=[],n=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0;a<64;++a)r[a]=o[a],n[o.charCodeAt(a)]=a;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function c(e,t,n){for(var i,o,a=[],s=t;s>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return a.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},3073:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n={};let i;t.wordlists=n,t._default=i;try{t._default=i=r(2607),n.czech=i}catch(o){}try{t._default=i=r(5898),n.chinese_simplified=i}catch(o){}try{t._default=i=r(81),n.chinese_traditional=i}catch(o){}try{t._default=i=r(5428),n.korean=i}catch(o){}try{t._default=i=r(5040),n.french=i}catch(o){}try{t._default=i=r(5576),n.italian=i}catch(o){}try{t._default=i=r(5376),n.spanish=i}catch(o){}try{t._default=i=r(7967),n.japanese=i,n.JA=i}catch(o){}try{t._default=i=r(7357),n.portuguese=i}catch(o){}try{t._default=i=r(7736),n.english=i,n.EN=i}catch(o){}},9331:(e,t,r)=>{"use strict";var n=r(9673).Buffer;const i=r(7049),o=r(6428),a=r(9419),s=r(7317),c=r(3073);let l=c._default;const u="Invalid mnemonic",d="Invalid entropy",h="Invalid mnemonic checksum",f="A wordlist is required but a default could not be found.\nPlease pass a 2048 word array explicitly.";function p(e){return(e||"").normalize("NFKD")}function m(e,t,r){for(;e.lengthm(e.toString(2),"0",8))).join("")}function y(e){const t=8*e.length/32,r=i.sha256(Uint8Array.from(e));return v(Array.from(r)).slice(0,t)}function b(e){return"mnemonic"+(e||"")}function w(e,t){if(!(t=t||l))throw new Error(f);const r=p(e).split(" ");if(r.length%3!==0)throw new Error(u);const i=r.map((e=>{const r=t.indexOf(e);if(-1===r)throw new Error(u);return m(r.toString(2),"0",11)})).join(""),o=32*Math.floor(i.length/33),a=i.slice(0,o),s=i.slice(o),c=a.match(/(.{1,8})/g).map(g);if(c.length<16)throw new Error(d);if(c.length>32)throw new Error(d);if(c.length%4!==0)throw new Error(d);const v=n.from(c);if(y(v)!==s)throw new Error(h);return v.toString("hex")}function x(e,t){if(n.isBuffer(e)||(e=n.from(e,"hex")),!(t=t||l))throw new Error(f);if(e.length<16)throw new TypeError(d);if(e.length>32)throw new TypeError(d);if(e.length%4!==0)throw new TypeError(d);const r=(v(Array.from(e))+y(e)).match(/(.{1,11})/g).map((e=>{const r=g(e);return t[r]}));return"\u3042\u3044\u3053\u304f\u3057\u3093"===t[0]?r.join("\u3000"):r.join(" ")}t.kw=function(e,t){const r=Uint8Array.from(n.from(p(e),"utf8")),i=Uint8Array.from(n.from(b(p(t)),"utf8")),s=a.pbkdf2(o.sha512,r,i,{c:2048,dkLen:64});return n.from(s)},t.we=function(e,t,r){if((e=e||128)%32!==0)throw new TypeError(d);return x((t=t||(e=>n.from(s.randomBytes(e))))(e/8),r)},t.JB=function(e,t){try{w(e,t)}catch(r){return!1}return!0};var _=r(3073);t.Yu=_.wordlists},8670:(e,t,r)=>{const n=r(1691);function i(e,t,r){const n=e[t]+e[r];let i=e[t+1]+e[r+1];n>=4294967296&&i++,e[t]=n,e[t+1]=i}function o(e,t,r,n){let i=e[t]+r;r<0&&(i+=4294967296);let o=e[t+1]+n;i>=4294967296&&o++,e[t]=i,e[t+1]=o}function a(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function s(e,t,r,n,a,s){const c=d[a],l=d[a+1],h=d[s],f=d[s+1];i(u,e,t),o(u,e,c,l);let p=u[n]^u[e],m=u[n+1]^u[e+1];u[n]=m,u[n+1]=p,i(u,r,n),p=u[t]^u[r],m=u[t+1]^u[r+1],u[t]=p>>>24^m<<8,u[t+1]=m>>>24^p<<8,i(u,e,t),o(u,e,h,f),p=u[n]^u[e],m=u[n+1]^u[e+1],u[n]=p>>>16^m<<16,u[n+1]=m>>>16^p<<16,i(u,r,n),p=u[t]^u[r],m=u[t+1]^u[r+1],u[t]=m>>>31^p<<1,u[t+1]=p>>>31^m<<1}const c=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),l=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3].map((function(e){return 2*e}))),u=new Uint32Array(32),d=new Uint32Array(32);function h(e,t){let r=0;for(r=0;r<16;r++)u[r]=e.h[r],u[r+16]=c[r];for(u[24]=u[24]^e.t,u[25]=u[25]^e.t/4294967296,t&&(u[28]=~u[28],u[29]=~u[29]),r=0;r<32;r++)d[r]=a(e.b,4*r);for(r=0;r<12;r++)s(0,8,16,24,l[16*r+0],l[16*r+1]),s(2,10,18,26,l[16*r+2],l[16*r+3]),s(4,12,20,28,l[16*r+4],l[16*r+5]),s(6,14,22,30,l[16*r+6],l[16*r+7]),s(0,10,20,30,l[16*r+8],l[16*r+9]),s(2,12,22,24,l[16*r+10],l[16*r+11]),s(4,14,16,26,l[16*r+12],l[16*r+13]),s(6,8,18,28,l[16*r+14],l[16*r+15]);for(r=0;r<16;r++)e.h[r]=e.h[r]^u[r]^u[r+16]}const f=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function p(e,t,r,n){if(0===e||e>64)throw new Error("Illegal output length, expected 0 < length <= 64");if(t&&t.length>64)throw new Error("Illegal key, expected Uint8Array with 0 < length <= 64");if(r&&16!==r.length)throw new Error("Illegal salt, expected Uint8Array with length is 16");if(n&&16!==n.length)throw new Error("Illegal personal, expected Uint8Array with length is 16");const i={b:new Uint8Array(128),h:new Uint32Array(16),t:0,c:0,outlen:e};f.fill(0),f[0]=e,t&&(f[1]=t.length),f[2]=1,f[3]=1,r&&f.set(r,32),n&&f.set(n,48);for(let o=0;o<16;o++)i.h[o]=c[o]^a(f,4*o);return t&&(m(i,t),i.c=128),i}function m(e,t){for(let r=0;r>2]>>8*(3&r);return t}function v(e,t,r,i,o){r=r||64,e=n.normalizeInput(e),i&&(i=n.normalizeInput(i)),o&&(o=n.normalizeInput(o));const a=p(r,t,i,o);return m(a,e),g(a)}e.exports={blake2b:v,blake2bHex:function(e,t,r,i,o){const a=v(e,t,r,i,o);return n.toHex(a)},blake2bInit:p,blake2bUpdate:m,blake2bFinal:g}},5581:(e,t,r)=>{const n=r(1691);function i(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function o(e,t,r,n,i,o){l[e]=l[e]+l[t]+i,l[n]=a(l[n]^l[e],16),l[r]=l[r]+l[n],l[t]=a(l[t]^l[r],12),l[e]=l[e]+l[t]+o,l[n]=a(l[n]^l[e],8),l[r]=l[r]+l[n],l[t]=a(l[t]^l[r],7)}function a(e,t){return e>>>t^e<<32-t}const s=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),c=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0]),l=new Uint32Array(16),u=new Uint32Array(16);function d(e,t){let r=0;for(r=0;r<8;r++)l[r]=e.h[r],l[r+8]=s[r];for(l[12]^=e.t,l[13]^=e.t/4294967296,t&&(l[14]=~l[14]),r=0;r<16;r++)u[r]=i(e.b,4*r);for(r=0;r<10;r++)o(0,4,8,12,u[c[16*r+0]],u[c[16*r+1]]),o(1,5,9,13,u[c[16*r+2]],u[c[16*r+3]]),o(2,6,10,14,u[c[16*r+4]],u[c[16*r+5]]),o(3,7,11,15,u[c[16*r+6]],u[c[16*r+7]]),o(0,5,10,15,u[c[16*r+8]],u[c[16*r+9]]),o(1,6,11,12,u[c[16*r+10]],u[c[16*r+11]]),o(2,7,8,13,u[c[16*r+12]],u[c[16*r+13]]),o(3,4,9,14,u[c[16*r+14]],u[c[16*r+15]]);for(r=0;r<8;r++)e.h[r]^=l[r]^l[r+8]}function h(e,t){if(!(e>0&&e<=32))throw new Error("Incorrect output length, should be in [1, 32]");const r=t?t.length:0;if(t&&!(r>0&&r<=32))throw new Error("Incorrect key length, should be in [1, 32]");const n={h:new Uint32Array(s),b:new Uint8Array(64),c:0,t:0,outlen:e};return n.h[0]^=16842752^r<<8^e,r>0&&(f(n,t),n.c=64),n}function f(e,t){for(let r=0;r>2]>>8*(3&r)&255;return t}function m(e,t,r){r=r||32,e=n.normalizeInput(e);const i=h(r,t);return f(i,e),p(i)}e.exports={blake2s:m,blake2sHex:function(e,t,r){const i=m(e,t,r);return n.toHex(i)},blake2sInit:h,blake2sUpdate:f,blake2sFinal:p}},7283:(e,t,r)=>{const n=r(8670),i=r(5581);e.exports={blake2b:n.blake2b,blake2bHex:n.blake2bHex,blake2bInit:n.blake2bInit,blake2bUpdate:n.blake2bUpdate,blake2bFinal:n.blake2bFinal,blake2s:i.blake2s,blake2sHex:i.blake2sHex,blake2sInit:i.blake2sInit,blake2sUpdate:i.blake2sUpdate,blake2sFinal:i.blake2sFinal}},1691:e=>{function t(e){return(4294967296+e).toString(16).substring(1)}e.exports={normalizeInput:function(e){let t;if(e instanceof Uint8Array)t=e;else{if("string"!==typeof e)throw new Error("Input must be an string, Buffer or Uint8Array");t=(new TextEncoder).encode(e)}return t},toHex:function(e){return Array.prototype.map.call(e,(function(e){return(e<16?"0":"")+e.toString(16)})).join("")},debugPrint:function(e,r,n){let i="\n"+e+" = ";for(let o=0;o=65&&r<=70?r-55:r>=97&&r<=102?r-87:r-48&15}function c(e,t,r){var n=s(e,r);return r-1>=t&&(n|=s(e,r-1)<<4),n}function l(e,t,r,n){for(var i=0,o=Math.min(e.length,r),a=t;a=49?s-49+10:s>=17?s-17+10:s}return i}o.isBN=function(e){return e instanceof o||null!==e&&"object"===typeof e&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,r){if("number"===typeof e)return this._initNumber(e,t,r);if("object"===typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)a=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(i=0,o=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this.strip()},o.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=c(e,t,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(e.length-t)%2===0?t+1:t;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this.strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var o=e.length-r,a=o%n,s=Math.min(o,o-a)+r,c=0,u=r;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var u=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],d=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function f(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],o=0|t.words[0],a=i*o,s=67108863&a,c=a/67108864|0;r.words[0]=s;for(var l=1;l>>26,d=67108863&c,h=Math.min(l,t.length-1),f=Math.max(0,l-e.length+1);f<=h;f++){var p=l-f|0;u+=(a=(i=0|e.words[p])*(o=0|t.words[f])+d)/67108864|0,d=67108863&a}r.words[l]=0|d,c=0|u}return 0!==c?r.words[l]=0|c:r.length--,r.strip()}o.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,o=0,a=0;a>>24-i&16777215)||a!==this.length-1?u[6-c.length]+c+r:c+r,(i+=2)>=26&&(i-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=d[e],f=h[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var m=p.modn(f).toString(e);r=(p=p.idivn(f)).isZero()?m+r:u[l-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return n("undefined"!==typeof a),this.toArrayLike(a,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,r){var i=this.byteLength(),o=r||Math.max(1,i);n(i<=o,"byte array longer than desired length"),n(o>0,"Requested array length <= 0"),this.strip();var a,s,c="le"===t,l=new e(o),u=this.clone();if(c){for(s=0;!u.isZero();s++)a=u.andln(255),u.iushrn(8),l[s]=a;for(;s=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0===(8191&t)&&(r+=13,t>>>=13),0===(127&t)&&(r+=7,t>>>=7),0===(15&t)&&(r+=4,t>>>=4),0===(3&t)&&(r+=2,t>>>=2),0===(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){n("number"===typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){n("number"===typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&t;for(;0!==o&&a>26,this.words[a]=67108863&t;if(0===o&&a>>13,f=0|a[1],p=8191&f,m=f>>>13,g=0|a[2],v=8191&g,y=g>>>13,b=0|a[3],w=8191&b,x=b>>>13,_=0|a[4],k=8191&_,S=_>>>13,E=0|a[5],A=8191&E,P=E>>>13,O=0|a[6],T=8191&O,C=O>>>13,j=0|a[7],R=8191&j,I=j>>>13,M=0|a[8],L=8191&M,N=M>>>13,D=0|a[9],z=8191&D,B=D>>>13,F=0|s[0],U=8191&F,$=F>>>13,H=0|s[1],V=8191&H,q=H>>>13,K=0|s[2],W=8191&K,G=K>>>13,Z=0|s[3],Y=8191&Z,X=Z>>>13,J=0|s[4],Q=8191&J,ee=J>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],oe=8191&ie,ae=ie>>>13,se=0|s[7],ce=8191&se,le=se>>>13,ue=0|s[8],de=8191&ue,he=ue>>>13,fe=0|s[9],pe=8191&fe,me=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(l+(n=Math.imul(d,U))|0)+((8191&(i=(i=Math.imul(d,$))+Math.imul(h,U)|0))<<13)|0;l=((o=Math.imul(h,$))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,U),i=(i=Math.imul(p,$))+Math.imul(m,U)|0,o=Math.imul(m,$);var ve=(l+(n=n+Math.imul(d,V)|0)|0)+((8191&(i=(i=i+Math.imul(d,q)|0)+Math.imul(h,V)|0))<<13)|0;l=((o=o+Math.imul(h,q)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(v,U),i=(i=Math.imul(v,$))+Math.imul(y,U)|0,o=Math.imul(y,$),n=n+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,q)|0;var ye=(l+(n=n+Math.imul(d,W)|0)|0)+((8191&(i=(i=i+Math.imul(d,G)|0)+Math.imul(h,W)|0))<<13)|0;l=((o=o+Math.imul(h,G)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(w,U),i=(i=Math.imul(w,$))+Math.imul(x,U)|0,o=Math.imul(x,$),n=n+Math.imul(v,V)|0,i=(i=i+Math.imul(v,q)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,q)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,G)|0;var be=(l+(n=n+Math.imul(d,Y)|0)|0)+((8191&(i=(i=i+Math.imul(d,X)|0)+Math.imul(h,Y)|0))<<13)|0;l=((o=o+Math.imul(h,X)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(k,U),i=(i=Math.imul(k,$))+Math.imul(S,U)|0,o=Math.imul(S,$),n=n+Math.imul(w,V)|0,i=(i=i+Math.imul(w,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,X)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,X)|0;var we=(l+(n=n+Math.imul(d,Q)|0)|0)+((8191&(i=(i=i+Math.imul(d,ee)|0)+Math.imul(h,Q)|0))<<13)|0;l=((o=o+Math.imul(h,ee)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(A,U),i=(i=Math.imul(A,$))+Math.imul(P,U)|0,o=Math.imul(P,$),n=n+Math.imul(k,V)|0,i=(i=i+Math.imul(k,q)|0)+Math.imul(S,V)|0,o=o+Math.imul(S,q)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(x,W)|0,o=o+Math.imul(x,G)|0,n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,X)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,X)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,ee)|0;var xe=(l+(n=n+Math.imul(d,re)|0)|0)+((8191&(i=(i=i+Math.imul(d,ne)|0)+Math.imul(h,re)|0))<<13)|0;l=((o=o+Math.imul(h,ne)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(T,U),i=(i=Math.imul(T,$))+Math.imul(C,U)|0,o=Math.imul(C,$),n=n+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,n=n+Math.imul(k,W)|0,i=(i=i+Math.imul(k,G)|0)+Math.imul(S,W)|0,o=o+Math.imul(S,G)|0,n=n+Math.imul(w,Y)|0,i=(i=i+Math.imul(w,X)|0)+Math.imul(x,Y)|0,o=o+Math.imul(x,X)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(m,re)|0,o=o+Math.imul(m,ne)|0;var _e=(l+(n=n+Math.imul(d,oe)|0)|0)+((8191&(i=(i=i+Math.imul(d,ae)|0)+Math.imul(h,oe)|0))<<13)|0;l=((o=o+Math.imul(h,ae)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(R,U),i=(i=Math.imul(R,$))+Math.imul(I,U)|0,o=Math.imul(I,$),n=n+Math.imul(T,V)|0,i=(i=i+Math.imul(T,q)|0)+Math.imul(C,V)|0,o=o+Math.imul(C,q)|0,n=n+Math.imul(A,W)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(P,W)|0,o=o+Math.imul(P,G)|0,n=n+Math.imul(k,Y)|0,i=(i=i+Math.imul(k,X)|0)+Math.imul(S,Y)|0,o=o+Math.imul(S,X)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,ee)|0)+Math.imul(x,Q)|0,o=o+Math.imul(x,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(y,re)|0,o=o+Math.imul(y,ne)|0,n=n+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,ae)|0)+Math.imul(m,oe)|0,o=o+Math.imul(m,ae)|0;var ke=(l+(n=n+Math.imul(d,ce)|0)|0)+((8191&(i=(i=i+Math.imul(d,le)|0)+Math.imul(h,ce)|0))<<13)|0;l=((o=o+Math.imul(h,le)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(L,U),i=(i=Math.imul(L,$))+Math.imul(N,U)|0,o=Math.imul(N,$),n=n+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(I,V)|0,o=o+Math.imul(I,q)|0,n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(C,W)|0,o=o+Math.imul(C,G)|0,n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,X)|0)+Math.imul(P,Y)|0,o=o+Math.imul(P,X)|0,n=n+Math.imul(k,Q)|0,i=(i=i+Math.imul(k,ee)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,ee)|0,n=n+Math.imul(w,re)|0,i=(i=i+Math.imul(w,ne)|0)+Math.imul(x,re)|0,o=o+Math.imul(x,ne)|0,n=n+Math.imul(v,oe)|0,i=(i=i+Math.imul(v,ae)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,ae)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,le)|0)+Math.imul(m,ce)|0,o=o+Math.imul(m,le)|0;var Se=(l+(n=n+Math.imul(d,de)|0)|0)+((8191&(i=(i=i+Math.imul(d,he)|0)+Math.imul(h,de)|0))<<13)|0;l=((o=o+Math.imul(h,he)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(z,U),i=(i=Math.imul(z,$))+Math.imul(B,U)|0,o=Math.imul(B,$),n=n+Math.imul(L,V)|0,i=(i=i+Math.imul(L,q)|0)+Math.imul(N,V)|0,o=o+Math.imul(N,q)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,X)|0)+Math.imul(C,Y)|0,o=o+Math.imul(C,X)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(P,Q)|0,o=o+Math.imul(P,ee)|0,n=n+Math.imul(k,re)|0,i=(i=i+Math.imul(k,ne)|0)+Math.imul(S,re)|0,o=o+Math.imul(S,ne)|0,n=n+Math.imul(w,oe)|0,i=(i=i+Math.imul(w,ae)|0)+Math.imul(x,oe)|0,o=o+Math.imul(x,ae)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,le)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,le)|0,n=n+Math.imul(p,de)|0,i=(i=i+Math.imul(p,he)|0)+Math.imul(m,de)|0,o=o+Math.imul(m,he)|0;var Ee=(l+(n=n+Math.imul(d,pe)|0)|0)+((8191&(i=(i=i+Math.imul(d,me)|0)+Math.imul(h,pe)|0))<<13)|0;l=((o=o+Math.imul(h,me)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(z,V),i=(i=Math.imul(z,q))+Math.imul(B,V)|0,o=Math.imul(B,q),n=n+Math.imul(L,W)|0,i=(i=i+Math.imul(L,G)|0)+Math.imul(N,W)|0,o=o+Math.imul(N,G)|0,n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(I,Y)|0,o=o+Math.imul(I,X)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(C,Q)|0,o=o+Math.imul(C,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(P,re)|0,o=o+Math.imul(P,ne)|0,n=n+Math.imul(k,oe)|0,i=(i=i+Math.imul(k,ae)|0)+Math.imul(S,oe)|0,o=o+Math.imul(S,ae)|0,n=n+Math.imul(w,ce)|0,i=(i=i+Math.imul(w,le)|0)+Math.imul(x,ce)|0,o=o+Math.imul(x,le)|0,n=n+Math.imul(v,de)|0,i=(i=i+Math.imul(v,he)|0)+Math.imul(y,de)|0,o=o+Math.imul(y,he)|0;var Ae=(l+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,me)|0)+Math.imul(m,pe)|0))<<13)|0;l=((o=o+Math.imul(m,me)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(z,W),i=(i=Math.imul(z,G))+Math.imul(B,W)|0,o=Math.imul(B,G),n=n+Math.imul(L,Y)|0,i=(i=i+Math.imul(L,X)|0)+Math.imul(N,Y)|0,o=o+Math.imul(N,X)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(C,re)|0,o=o+Math.imul(C,ne)|0,n=n+Math.imul(A,oe)|0,i=(i=i+Math.imul(A,ae)|0)+Math.imul(P,oe)|0,o=o+Math.imul(P,ae)|0,n=n+Math.imul(k,ce)|0,i=(i=i+Math.imul(k,le)|0)+Math.imul(S,ce)|0,o=o+Math.imul(S,le)|0,n=n+Math.imul(w,de)|0,i=(i=i+Math.imul(w,he)|0)+Math.imul(x,de)|0,o=o+Math.imul(x,he)|0;var Pe=(l+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,me)|0)+Math.imul(y,pe)|0))<<13)|0;l=((o=o+Math.imul(y,me)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(z,Y),i=(i=Math.imul(z,X))+Math.imul(B,Y)|0,o=Math.imul(B,X),n=n+Math.imul(L,Q)|0,i=(i=i+Math.imul(L,ee)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(I,re)|0,o=o+Math.imul(I,ne)|0,n=n+Math.imul(T,oe)|0,i=(i=i+Math.imul(T,ae)|0)+Math.imul(C,oe)|0,o=o+Math.imul(C,ae)|0,n=n+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(P,ce)|0,o=o+Math.imul(P,le)|0,n=n+Math.imul(k,de)|0,i=(i=i+Math.imul(k,he)|0)+Math.imul(S,de)|0,o=o+Math.imul(S,he)|0;var Oe=(l+(n=n+Math.imul(w,pe)|0)|0)+((8191&(i=(i=i+Math.imul(w,me)|0)+Math.imul(x,pe)|0))<<13)|0;l=((o=o+Math.imul(x,me)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(z,Q),i=(i=Math.imul(z,ee))+Math.imul(B,Q)|0,o=Math.imul(B,ee),n=n+Math.imul(L,re)|0,i=(i=i+Math.imul(L,ne)|0)+Math.imul(N,re)|0,o=o+Math.imul(N,ne)|0,n=n+Math.imul(R,oe)|0,i=(i=i+Math.imul(R,ae)|0)+Math.imul(I,oe)|0,o=o+Math.imul(I,ae)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,le)|0)+Math.imul(C,ce)|0,o=o+Math.imul(C,le)|0,n=n+Math.imul(A,de)|0,i=(i=i+Math.imul(A,he)|0)+Math.imul(P,de)|0,o=o+Math.imul(P,he)|0;var Te=(l+(n=n+Math.imul(k,pe)|0)|0)+((8191&(i=(i=i+Math.imul(k,me)|0)+Math.imul(S,pe)|0))<<13)|0;l=((o=o+Math.imul(S,me)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(z,re),i=(i=Math.imul(z,ne))+Math.imul(B,re)|0,o=Math.imul(B,ne),n=n+Math.imul(L,oe)|0,i=(i=i+Math.imul(L,ae)|0)+Math.imul(N,oe)|0,o=o+Math.imul(N,ae)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,le)|0)+Math.imul(I,ce)|0,o=o+Math.imul(I,le)|0,n=n+Math.imul(T,de)|0,i=(i=i+Math.imul(T,he)|0)+Math.imul(C,de)|0,o=o+Math.imul(C,he)|0;var Ce=(l+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,me)|0)+Math.imul(P,pe)|0))<<13)|0;l=((o=o+Math.imul(P,me)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(z,oe),i=(i=Math.imul(z,ae))+Math.imul(B,oe)|0,o=Math.imul(B,ae),n=n+Math.imul(L,ce)|0,i=(i=i+Math.imul(L,le)|0)+Math.imul(N,ce)|0,o=o+Math.imul(N,le)|0,n=n+Math.imul(R,de)|0,i=(i=i+Math.imul(R,he)|0)+Math.imul(I,de)|0,o=o+Math.imul(I,he)|0;var je=(l+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,me)|0)+Math.imul(C,pe)|0))<<13)|0;l=((o=o+Math.imul(C,me)|0)+(i>>>13)|0)+(je>>>26)|0,je&=67108863,n=Math.imul(z,ce),i=(i=Math.imul(z,le))+Math.imul(B,ce)|0,o=Math.imul(B,le),n=n+Math.imul(L,de)|0,i=(i=i+Math.imul(L,he)|0)+Math.imul(N,de)|0,o=o+Math.imul(N,he)|0;var Re=(l+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,me)|0)+Math.imul(I,pe)|0))<<13)|0;l=((o=o+Math.imul(I,me)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(z,de),i=(i=Math.imul(z,he))+Math.imul(B,de)|0,o=Math.imul(B,he);var Ie=(l+(n=n+Math.imul(L,pe)|0)|0)+((8191&(i=(i=i+Math.imul(L,me)|0)+Math.imul(N,pe)|0))<<13)|0;l=((o=o+Math.imul(N,me)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863;var Me=(l+(n=Math.imul(z,pe))|0)+((8191&(i=(i=Math.imul(z,me))+Math.imul(B,pe)|0))<<13)|0;return l=((o=Math.imul(B,me))+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,c[0]=ge,c[1]=ve,c[2]=ye,c[3]=be,c[4]=we,c[5]=xe,c[6]=_e,c[7]=ke,c[8]=Se,c[9]=Ee,c[10]=Ae,c[11]=Pe,c[12]=Oe,c[13]=Te,c[14]=Ce,c[15]=je,c[16]=Re,c[17]=Ie,c[18]=Me,0!==l&&(c[19]=l,r.length++),r};function m(e,t,r){return(new g).mulp(e,t,r)}function g(e,t){this.x=e,this.y=t}Math.imul||(p=f),o.prototype.mulTo=function(e,t){var r,n=this.length+e.length;return r=10===this.length&&10===e.length?p(this,e,t):n<63?f(this,e,t):n<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r.strip()}(this,e,t):m(this,e,t),r},g.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,n=0;n>=1;return n},g.prototype.permute=function(e,t,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*t;a>=26,t+=i/67108864|0,t+=o>>>26,this.words[r]=67108863&o}return 0!==t&&(this.words[r]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new o(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(t=0;t>>26-r}a&&(this.words[t]=a,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var o=e%26,a=Math.min((e-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,l=0;l=0&&(0!==u||l>=i);l--){var d=0|this.words[l];this.words[l]=u<<26-o|d>>>o,u=d&s}return c&&0!==u&&(c.words[c.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){n("number"===typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(n("number"===typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&o}for(;i>26,this.words[i+r]=67108863&o;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,a=0|i.words[i.length-1];0!==(r=26-this._countBits(a))&&(i=i.ushln(r),n.iushln(r),a=0|i.words[i.length-1]);var s,c=n.length-i.length;if("mod"!==t){(s=new o(null)).length=c+1,s.words=new Array(s.length);for(var l=0;l=0;d--){var h=67108864*(0|n.words[i.length+d])+(0|n.words[i.length+d-1]);for(h=Math.min(h/a|0,67108863),n._ishlnsubmul(i,h,d);0!==n.negative;)h--,n.negative=0,n._ishlnsubmul(i,1,d),n.isZero()||(n.negative^=1);s&&(s.words[d]=h)}return s&&s.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},o.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.iadd(e)),{div:i,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){n(e<=67108863);for(var t=(1<<26)%e,r=0,i=this.length-1;i>=0;i--)r=(t*r+(0|this.words[i]))%e;return r},o.prototype.idivn=function(e){n(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*t;this.words[r]=i/e|0,t=i%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),a=new o(0),s=new o(0),c=new o(1),l=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++l;for(var u=r.clone(),d=t.clone();!t.isZero();){for(var h=0,f=1;0===(t.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(t.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(u),a.isub(d)),i.iushrn(1),a.iushrn(1);for(var p=0,m=1;0===(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(u),c.isub(d)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),a.isub(c)):(r.isub(t),s.isub(i),c.isub(a))}return{a:s,b:c,gcd:r.iushln(l)}},o.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,a=new o(1),s=new o(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var l=0,u=1;0===(t.words[0]&u)&&l<26;++l,u<<=1);if(l>0)for(t.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var d=0,h=1;0===(r.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(r.iushrn(d);d-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),a.isub(s)):(r.isub(t),s.isub(a))}return(i=0===t.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var o=t;t=r,r=o}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){n("number"===typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new k(e)},o.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var v={k256:null,p224:null,p192:null,p25519:null};function y(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function b(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function w(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function x(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function k(e){if("string"===typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function S(e){k.call(this,e),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}y.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},y.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},y.prototype.split=function(e,t){e.iushrn(this.n,0,t)},y.prototype.imulK=function(e){return e.imul(this.k)},i(b,y),b.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,o=a}o>>>=22,e.words[i-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},b.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(v[e])return v[e];var t;if("k256"===e)t=new b;else if("p224"===e)t=new w;else if("p192"===e)t=new x;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new _}return v[e]=t,t},k.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},k.prototype._verify2=function(e,t){n(0===(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},k.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},k.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},k.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},k.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},k.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},k.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},k.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},k.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},k.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},k.prototype.isqr=function(e){return this.imul(e,e.clone())},k.prototype.sqr=function(e){return this.mul(e,e)},k.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2===1),3===t){var r=this.m.add(new o(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);n(!i.isZero());var s=new o(1).toRed(this),c=s.redNeg(),l=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,l).cmp(c);)u.redIAdd(c);for(var d=this.pow(u,i),h=this.pow(e,i.addn(1).iushrn(1)),f=this.pow(e,i),p=a;0!==f.cmp(s);){for(var m=f,g=0;0!==m.cmp(s);g++)m=m.redSqr();n(g=0;n--){for(var l=t.words[n],u=c-1;u>=0;u--){var d=l>>u&1;i!==r[0]&&(i=this.sqr(i)),0!==d||0!==a?(a<<=1,a|=d,(4===++s||0===n&&0===u)&&(i=this.mul(i,r[a]),s=0,a=0)):s=0}c=26}return i},k.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},k.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new S(e)},i(S,k),S.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},S.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},S.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},S.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},S.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},5278:function(e){e.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=90)}({17:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||""},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||""},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case"NT":return"NT";case"XP":case"NT 5.1":return"XP";case"NT 5.0":return"2000";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},e.getMacOSVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}},e.getAndroidVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?"Cupcake":1===t[0]&&t[1]>=6?"Donut":2===t[0]&&t[1]<2?"Eclair":2===t[0]&&2===t[1]?"Froyo":2===t[0]&&t[1]>2?"Gingerbread":3===t[0]?"Honeycomb":4===t[0]&&t[1]<1?"Ice Cream Sandwich":4===t[0]&&t[1]<4?"Jelly Bean":4===t[0]&&t[1]>=4?"KitKat":5===t[0]?"Lollipop":6===t[0]?"Marshmallow":7===t[0]?"Nougat":8===t[0]?"Oreo":9===t[0]?"Pie":void 0},e.getVersionPrecision=function(e){return e.split(".").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),o=e.getVersionPrecision(r),a=Math.max(i,o),s=0,c=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(".0");return e.map(n.split("."),(function(e){return new Array(20-e.length).join("0")+e})).reverse()}));for(n&&(s=a-Math.min(i,o)),a-=1;a>=s;){if(c[0][a]>c[1][a])return 1;if(c[0][a]===c[1][a]){if(a===s)return 0;a-=1}else if(c[0][a]1?i-1:0),a=1;a0){var a=Object.keys(r),c=s.default.find(a,(function(e){return t.isOS(e)}));if(c){var l=this.satisfies(r[c]);if(void 0!==l)return l}var u=s.default.find(a,(function(e){return t.isPlatform(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}}if(o>0){var h=Object.keys(i),f=s.default.find(h,(function(e){return t.isBrowser(e,!0)}));if(void 0!==f)return this.compareVersion(i[f])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=s.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if("string"==typeof i)return">"===e[0]||"<"===e[0]?(r=e.substr(1),"="===e[1]?(n=!0,r=e.substr(2)):t=[],">"===e[0]?t.push(1):t.push(-1)):"="===e[0]?r=e.substr(1):"~"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(s.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=l,e.exports=t.default},92:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=/version\/(\d+(\.?_?\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:"Googlebot"},r=i.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:"Opera"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\/|opios/i],describe:function(e){var t={name:"Opera"},r=i.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:"Samsung Internet for Android"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:"NAVER Whale Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:"MZ Browser"},r=i.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:"Focus"},r=i.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:"Swing"},r=i.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:"Opera Coast"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:function(e){var t={name:"Opera Touch"},r=i.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:"Yandex Browser"},r=i.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:"UC Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:"Maxthon"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:"Epiphany"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:"Puffin"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:"Sleipnir"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:"K-Meleon"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:"WeChat"},r=i.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:"Internet Explorer"},r=i.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\sedg\//i],describe:function(e){var t={name:"Microsoft Edge"},r=i.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:"Microsoft Edge"},r=i.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:"Vivaldi"},r=i.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:"SeaMonkey"},r=i.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:"Sailfish"},r=i.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:"Amazon Silk"},r=i.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:"PhantomJS"},r=i.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:"SlimerJS"},r=i.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t={name:"BlackBerry"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:"WebOS Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:"Bada"},r=i.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:"Tizen"},r=i.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:"QupZilla"},r=i.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:"Firefox"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:"Electron"},r=i.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:"Miui"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:"Chromium"},r=i.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:"Chrome"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:"Google Search"},r=i.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:"Android Browser"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:"PlayStation 4"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:"Safari"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search("\\(")?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:[/Roku\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:o.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:o.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(e){var t={name:o.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),r=i.default.getMacOSVersionName(t),n={name:o.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:o.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:o.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),r={name:o.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||i.default.getFirstMatch(/\bbb(\d+)/i,e);return{name:o.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:o.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:o.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:[/googlebot/i],describe:function(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&"Nova",r={type:o.PLATFORMS_MAP.mobile,vendor:"Huawei"};return t&&(r.model=t),r}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:o.PLATFORMS_MAP.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"blackberry"===e.getBrowserName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}}},{test:function(e){return"bada"===e.getBrowserName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"windows phone"===e.getBrowserName()},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Microsoft"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(".")[0]);return"android"===e.getOSName(!0)&&t>=3},describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(e){return"android"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"macos"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop,vendor:"Apple"}}},{test:function(e){return"windows"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(e){return"linux"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(e){return"playstation 4"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.tv}}},{test:function(e){return"roku"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:function(e){return"microsoft edge"===e.getBrowserName(!0)},describe:function(e){if(/\sedg\//i.test(e))return{name:o.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:o.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:o.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:o.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:o.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\/537\.36/i],describe:function(){return{name:o.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:o.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})},407:(e,t,r)=>{var n;function i(e){this.rand=e}if(e.exports=function(e){return n||(n=new i(null)),n.generate(e)},e.exports.Rand=i,i.prototype.generate=function(e){return this._rand(e)},i.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),r=0;r{var n=r(5409);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},2502:(e,t,r)=>{"use strict";var n=r(9717),i=r(1176).Buffer;e.exports=function(e){function t(t){var r=t.slice(0,-4),n=t.slice(-4),i=e(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(t){var r=e(t);return n.encode(i.concat([t,r],t.length+4))},decode:function(e){var r=t(n.decode(e));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(e){var r=n.decodeUnsafe(e);if(r)return t(r)}}}},7819:(e,t,r)=>{"use strict";var n=r(1330),i=r(2502);e.exports=i((function(e){var t=n("sha256").update(e).digest();return n("sha256").update(t).digest()}))},9673:(e,t,r)=>{"use strict";const n=r(2536),i=r(6341),o="function"===typeof Symbol&&"function"===typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){+e!=e&&(e=0);return c.alloc(+e)},t.INSPECT_MAX_BYTES=50;const a=2147483647;function s(e){if(e>a)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"===typeof e){if("string"===typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return d(e)}return l(e,t,r)}function l(e,t,r){if("string"===typeof e)return function(e,t){"string"===typeof t&&""!==t||(t="utf8");if(!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|m(e,t);let n=s(r);const i=n.write(e,t);i!==r&&(n=n.slice(0,i));return n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(Z(e,Uint8Array)){const t=new Uint8Array(e);return f(t.buffer,t.byteOffset,t.byteLength)}return h(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(Z(e,ArrayBuffer)||e&&Z(e.buffer,ArrayBuffer))return f(e,t,r);if("undefined"!==typeof SharedArrayBuffer&&(Z(e,SharedArrayBuffer)||e&&Z(e.buffer,SharedArrayBuffer)))return f(e,t,r);if("number"===typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);const i=function(e){if(c.isBuffer(e)){const t=0|p(e.length),r=s(t);return 0===r.length||e.copy(r,0,0,t),r}if(void 0!==e.length)return"number"!==typeof e.length||Y(e.length)?s(0):h(e);if("Buffer"===e.type&&Array.isArray(e.data))return h(e.data)}(e);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function u(e){if("number"!==typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function d(e){return u(e),s(e<0?0:0|p(e))}function h(e){const t=e.length<0?0:0|p(e.length),r=s(t);for(let n=0;n=a)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a.toString(16)+" bytes");return 0|e}function m(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Z(e,ArrayBuffer))return e.byteLength;if("string"!==typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return W(e).length;default:if(i)return n?-1:K(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){let n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return C(this,t,r);case"utf8":case"utf-8":return A(this,t,r);case"ascii":return O(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return E(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function v(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function y(e,t,r,n,i){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),Y(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"===typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:b(e,t,r,n,i);if("number"===typeof t)return t&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):b(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function b(e,t,r,n,i){let o,a=1,s=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;a=2,s/=2,c/=2,r/=2}function l(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){let n=-1;for(o=r;os&&(r=s-c),o=r;o>=0;o--){let r=!0;for(let n=0;ni&&(n=i):n=i;const o=t.length;let a;for(n>o/2&&(n=o/2),a=0;a>8,i=r%256,o.push(i),o.push(n);return o}(t,e.length-r),e,r,n)}function E(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function A(e,t,r){r=Math.min(e.length,r);const n=[];let i=t;for(;i239?4:t>223?3:t>191?2:1;if(i+a<=r){let r,n,s,c;switch(a){case 1:t<128&&(o=t);break;case 2:r=e[i+1],128===(192&r)&&(c=(31&t)<<6|63&r,c>127&&(o=c));break;case 3:r=e[i+1],n=e[i+2],128===(192&r)&&128===(192&n)&&(c=(15&t)<<12|(63&r)<<6|63&n,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:r=e[i+1],n=e[i+2],s=e[i+3],128===(192&r)&&128===(192&n)&&128===(192&s)&&(c=(15&t)<<18|(63&r)<<12|(63&n)<<6|63&s,c>65535&&c<1114112&&(o=c))}}null===o?(o=65533,a=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),i+=a}return function(e){const t=e.length;if(t<=P)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn.length?(c.isBuffer(t)||(t=c.from(t)),t.copy(n,i)):Uint8Array.prototype.set.call(n,t,i);else{if(!c.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(n,i)}i+=t.length}return n},c.byteLength=m,c.prototype._isBuffer=!0,c.prototype.swap16=function(){const e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tr&&(e+=" ... "),""},o&&(c.prototype[o]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(Z(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;let o=(i>>>=0)-(n>>>=0),a=(r>>>=0)-(t>>>=0);const s=Math.min(o,a),l=this.slice(n,i),u=e.slice(t,r);for(let c=0;c>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return w(this,e,t,r);case"utf8":case"utf-8":return x(this,e,t,r);case"ascii":case"latin1":case"binary":return _(this,e,t,r);case"base64":return k(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const P=4096;function O(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;in)&&(r=n);let i="";for(let o=t;or)throw new RangeError("Trying to access beyond buffer length")}function I(e,t,r,n,i,o){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function M(e,t,r,n,i){$(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o;let a=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,r}function L(e,t,r,n,i){$(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o>>=8,e[r+6]=o,o>>=8,e[r+5]=o,o>>=8,e[r+4]=o;let a=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=a,a>>=8,e[r+2]=a,a>>=8,e[r+1]=a,a>>=8,e[r]=a,r+8}function N(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function D(e,t,r,n,o){return t=+t,r>>>=0,o||N(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function z(e,t,r,n,o){return t=+t,r>>>=0,o||N(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){const r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||R(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||R(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||R(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||R(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||R(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=J((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+r*2**24;return BigInt(n)+(BigInt(i)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+r;return(BigInt(n)<>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||R(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o},c.prototype.readInt8=function(e,t){return e>>>=0,t||R(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||R(e,2,this.length);const r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||R(e,2,this.length);const r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||R(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||R(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=J((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=this[e+4]+256*this[e+5]+65536*this[e+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(n)<>>=0,t||R(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||R(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||R(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||R(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t>>>=0,r>>>=0,!n){I(this,e,t,r,Math.pow(2,8*r)-1,0)}let i=1,o=0;for(this[t]=255&e;++o>>=0,r>>>=0,!n){I(this,e,t,r,Math.pow(2,8*r)-1,0)}let i=r-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigUInt64LE=J((function(e,t=0){return M(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeBigUInt64BE=J((function(e,t=0){return L(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);I(this,e,t,r,n-1,-n)}let i=0,o=1,a=0;for(this[t]=255&e;++i>0)-a&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);I(this,e,t,r,n-1,-n)}let i=r-1,o=1,a=0;for(this[t+i]=255&e;--i>=0&&(o*=256);)e<0&&0===a&&0!==this[t+i+1]&&(a=1),this[t+i]=(e/o>>0)-a&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigInt64LE=J((function(e,t=0){return M(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeBigInt64BE=J((function(e,t=0){return L(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeFloatLE=function(e,t,r){return D(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return D(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return z(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return z(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(i=t;i=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function $(e,t,r,n,i,o){if(e>r||e3?0===t||t===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(o+1)}${n}`:`>= -(2${n} ** ${8*(o+1)-1}${n}) and < 2 ** ${8*(o+1)-1}${n}`:`>= ${t}${n} and <= ${r}${n}`,new B.ERR_OUT_OF_RANGE("value",i,e)}!function(e,t,r){H(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||V(t,e.length-(r+1))}(n,i,o)}function H(e,t){if("number"!==typeof e)throw new B.ERR_INVALID_ARG_TYPE(t,"number",e)}function V(e,t,r){if(Math.floor(e)!==e)throw H(e,r),new B.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new B.ERR_BUFFER_OUT_OF_BOUNDS;throw new B.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}F("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),F("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),F("ERR_OUT_OF_RANGE",(function(e,t,r){let n=`The value of "${e}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=U(String(r)):"bigint"===typeof r&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=U(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n}),RangeError);const q=/[^+/0-9A-Za-z-_]/g;function K(e,t){let r;t=t||1/0;const n=e.length;let i=null;const o=[];for(let a=0;a55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function W(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(q,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function G(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function Z(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function Y(e){return e!==e}const X=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function J(e){return"undefined"===typeof BigInt?Q:e}function Q(){throw new Error("BigInt not supported")}},1793:e=>{var t={utf8:{stringToBytes:function(e){return t.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(t.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],r=0;r{var n=r(1176).Buffer,i=r(3184).Transform,o=r(5575).I;function a(e){i.call(this),this.hashMode="string"===typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}r(9528)(a,i),a.prototype.update=function(e,t,r){"string"===typeof e&&(e=n.from(e,t));var i=this._update(e);return this.hashMode?this:(r&&(i=this._toString(i,r)),i)},a.prototype.setAutoPadding=function(){},a.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},a.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},a.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},a.prototype._transform=function(e,t,r){var n;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(i){n=i}finally{r(n)}},a.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(r){t=r}e(t)},a.prototype._finalOrDigest=function(e){var t=this.__final()||n.alloc(0);return e&&(t=this._toString(t,e,!0)),t},a.prototype._toString=function(e,t,r){if(this._decoder||(this._decoder=new o(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var n=this._decoder.write(e);return r&&(n+=this._decoder.end()),n},e.exports=a},9851:(e,t)=>{var r;!function(){"use strict";var n={}.hasOwnProperty;function i(){for(var e=[],t=0;t{"use strict";var n=r(9528),i=r(4266),o=r(7409),a=r(2308),s=r(6);function c(e){s.call(this,"digest"),this._hash=e}n(c,s),c.prototype._update=function(e){this._hash.update(e)},c.prototype._final=function(){return this._hash.digest()},e.exports=function(e){return"md5"===(e=e.toLowerCase())?new i:"rmd160"===e||"ripemd160"===e?new o:new c(a(e))}},8686:(e,t,r)=>{var n=r(4266);e.exports=function(e){return(new n).update(e).digest()}},6229:e=>{!function(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r={rotl:function(e,t){return e<>>32-t},rotr:function(e,t){return e<<32-t|e>>>t},endian:function(e){if(e.constructor==Number)return 16711935&r.rotl(e,8)|4278255360&r.rotl(e,24);for(var t=0;t0;e--)t.push(Math.floor(256*Math.random()));return t},bytesToWords:function(e){for(var t=[],r=0,n=0;r>>5]|=e[r]<<24-n%32;return t},wordsToBytes:function(e){for(var t=[],r=0;r<32*e.length;r+=8)t.push(e[r>>>5]>>>24-r%32&255);return t},bytesToHex:function(e){for(var t=[],r=0;r>>4).toString(16)),t.push((15&e[r]).toString(16));return t.join("")},hexToBytes:function(e){for(var t=[],r=0;r>>6*(3-o)&63)):r.push("=");return r.join("")},base64ToBytes:function(e){e=e.replace(/[^A-Z0-9+\/]/gi,"");for(var r=[],n=0,i=0;n>>6-2*i);return r}};e.exports=r}()},4610:e=>{"use strict";var t=function(e){return function(e){return!!e&&"object"===typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||function(e){return e.$$typeof===r}(e)}(e)};var r="function"===typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){return!1!==t.clone&&t.isMergeableObject(e)?c((r=e,Array.isArray(r)?[]:{}),e,t):e;var r}function i(e,t,r){return e.concat(t).map((function(e){return n(e,r)}))}function o(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return Object.propertyIsEnumerable.call(e,t)})):[]}(e))}function a(e,t){try{return t in e}catch(r){return!1}}function s(e,t,r){var i={};return r.isMergeableObject(e)&&o(e).forEach((function(t){i[t]=n(e[t],r)})),o(t).forEach((function(o){(function(e,t){return a(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))})(e,o)||(a(e,o)&&r.isMergeableObject(t[o])?i[o]=function(e,t){if(!t.customMerge)return c;var r=t.customMerge(e);return"function"===typeof r?r:c}(o,r)(e[o],t[o],r):i[o]=n(t[o],r))})),i}function c(e,r,o){(o=o||{}).arrayMerge=o.arrayMerge||i,o.isMergeableObject=o.isMergeableObject||t,o.cloneUnlessOtherwiseSpecified=n;var a=Array.isArray(r);return a===Array.isArray(e)?a?o.arrayMerge(e,r,o):s(e,r,o):n(r,o)}c.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,r){return c(e,r,t)}),{})};var l=c;e.exports=l},6435:(e,t,r)=>{"use strict";var n=t;n.version=r(1636).rE,n.utils=r(2229),n.rand=r(407),n.curve=r(464),n.curves=r(3426),n.ec=r(3869),n.eddsa=r(3764)},5279:(e,t,r)=>{"use strict";var n=r(3614),i=r(2229),o=i.getNAF,a=i.getJSF,s=i.assert;function c(e,t){this.type=e,this.p=new n(t.p,16),this.red=t.prime?n.red(t.prime):n.mont(this.p),this.zero=new n(0).toRed(this.red),this.one=new n(1).toRed(this.red),this.two=new n(2).toRed(this.red),this.n=t.n&&new n(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function l(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){s(e.precomputed);var r=e._getDoubles(),n=o(t,1,this._bitLength),i=(1<=a;u--)c=(c<<1)+n[u];l.push(c)}for(var d=this.jpoint(null,null,null),h=this.jpoint(null,null,null),f=i;f>0;f--){for(a=0;a=0;l--){for(var u=0;l>=0&&0===a[l];l--)u++;if(l>=0&&u++,c=c.dblp(u),l<0)break;var d=a[l];s(0!==d),c="affine"===e.type?d>0?c.mixedAdd(i[d-1>>1]):c.mixedAdd(i[-d-1>>1].neg()):d>0?c.add(i[d-1>>1]):c.add(i[-d-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,r,n,i){var s,c,l,u=this._wnafT1,d=this._wnafT2,h=this._wnafT3,f=0;for(s=0;s=1;s-=2){var m=s-1,g=s;if(1===u[m]&&1===u[g]){var v=[t[m],null,null,t[g]];0===t[m].y.cmp(t[g].y)?(v[1]=t[m].add(t[g]),v[2]=t[m].toJ().mixedAdd(t[g].neg())):0===t[m].y.cmp(t[g].y.redNeg())?(v[1]=t[m].toJ().mixedAdd(t[g]),v[2]=t[m].add(t[g].neg())):(v[1]=t[m].toJ().mixedAdd(t[g]),v[2]=t[m].toJ().mixedAdd(t[g].neg()));var y=[-3,-1,-5,-7,0,7,5,1,3],b=a(r[m],r[g]);for(f=Math.max(b[0].length,f),h[m]=new Array(f),h[g]=new Array(f),c=0;c=0;s--){for(var S=0;s>=0;){var E=!0;for(c=0;c=0&&S++,_=_.dblp(S),s<0)break;for(c=0;c0?l=d[c][A-1>>1]:A<0&&(l=d[c][-A-1>>1].neg()),_="affine"===l.type?_.mixedAdd(l):_.add(l))}}for(s=0;s=Math.ceil((e.bitLength()+1)/t.step)},l.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i{"use strict";var n=r(2229),i=r(3614),o=r(9528),a=r(5279),s=n.assert;function c(e){this.twisted=1!==(0|e.a),this.mOneA=this.twisted&&-1===(0|e.a),this.extended=this.mOneA,a.call(this,"edwards",e),this.a=new i(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new i(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new i(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),s(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1===(0|e.c)}function l(e,t,r,n,o){a.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===n?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new i(t,16),this.y=new i(r,16),this.z=n?new i(n,16):this.curve.one,this.t=o&&new i(o,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(c,a),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,r,n){return this.point(e,t,r,n)},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=this.c2.redSub(this.a.redMul(r)),o=this.one.redSub(this.c2.redMul(this.d).redMul(r)),a=n.redMul(o.redInvm()),s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");var c=s.fromRed().isOdd();return(t&&!c||!t&&c)&&(s=s.redNeg()),this.point(e,s)},c.prototype.pointFromY=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=r.redSub(this.c2),o=r.redMul(this.d).redMul(this.c2).redSub(this.a),a=n.redMul(o.redInvm());if(0===a.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),n=t.redMul(this.a).redAdd(r),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===n.cmp(i)},o(l,a.BasePoint),c.prototype.pointFromJSON=function(e){return l.fromJSON(this,e)},c.prototype.point=function(e,t,r,n){return new l(this,e,t,r,n)},l.fromJSON=function(e,t){return new l(e,t[0],t[1],t[2])},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},l.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var n=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),o=n.redAdd(t),a=o.redSub(r),s=n.redSub(t),c=i.redMul(a),l=o.redMul(s),u=i.redMul(s),d=a.redMul(o);return this.curve.point(c,l,d,u)},l.prototype._projDbl=function(){var e,t,r,n,i,o,a=this.x.redAdd(this.y).redSqr(),s=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var l=(n=this.curve._mulA(s)).redAdd(c);this.zOne?(e=a.redSub(s).redSub(c).redMul(l.redSub(this.curve.two)),t=l.redMul(n.redSub(c)),r=l.redSqr().redSub(l).redSub(l)):(i=this.z.redSqr(),o=l.redSub(i).redISub(i),e=a.redSub(s).redISub(c).redMul(o),t=l.redMul(n.redSub(c)),r=l.redMul(o))}else n=s.redAdd(c),i=this.curve._mulC(this.z).redSqr(),o=n.redSub(i).redSub(i),e=this.curve._mulC(a.redISub(n)).redMul(o),t=this.curve._mulC(n).redMul(s.redISub(c)),r=n.redMul(o);return this.curve.point(e,t,r)},l.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},l.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),n=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),o=r.redSub(t),a=i.redSub(n),s=i.redAdd(n),c=r.redAdd(t),l=o.redMul(a),u=s.redMul(c),d=o.redMul(c),h=a.redMul(s);return this.curve.point(l,u,h,d)},l.prototype._projAdd=function(e){var t,r,n=this.z.redMul(e.z),i=n.redSqr(),o=this.x.redMul(e.x),a=this.y.redMul(e.y),s=this.curve.d.redMul(o).redMul(a),c=i.redSub(s),l=i.redAdd(s),u=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(o).redISub(a),d=n.redMul(c).redMul(u);return this.curve.twisted?(t=n.redMul(l).redMul(a.redSub(this.curve._mulA(o))),r=c.redMul(l)):(t=n.redMul(l).redMul(a.redSub(o)),r=this.curve._mulC(c).redMul(l)),this.curve.point(d,t,r)},l.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},l.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},l.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},l.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},l.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},l.prototype.getX=function(){return this.normalize(),this.x.fromRed()},l.prototype.getY=function(){return this.normalize(),this.y.fromRed()},l.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},l.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),n=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(n),0===this.x.cmp(t))return!0}},l.prototype.toP=l.prototype.normalize,l.prototype.mixedAdd=l.prototype.add},464:(e,t,r)=>{"use strict";var n=t;n.base=r(5279),n.short=r(2990),n.mont=r(3660),n.edwards=r(452)},3660:(e,t,r)=>{"use strict";var n=r(3614),i=r(9528),o=r(5279),a=r(2229);function s(e){o.call(this,"mont",e),this.a=new n(e.a,16).toRed(this.red),this.b=new n(e.b,16).toRed(this.red),this.i4=new n(4).toRed(this.red).redInvm(),this.two=new n(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,r){o.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new n(t,16),this.z=new n(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}i(s,o),e.exports=s,s.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),n=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===n.redSqrt().redSqr().cmp(n)},i(c,o.BasePoint),s.prototype.decodePoint=function(e,t){return this.point(a.toArray(e,t),1)},s.prototype.point=function(e,t){return new c(this,e,t)},s.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),n=e.redMul(t),i=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(n,i)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),n=this.x.redSub(this.z),i=e.x.redAdd(e.z),o=e.x.redSub(e.z).redMul(r),a=i.redMul(n),s=t.z.redMul(o.redAdd(a).redSqr()),c=t.x.redMul(o.redISub(a).redSqr());return this.curve.point(s,c)},c.prototype.mul=function(e){for(var t=e.clone(),r=this,n=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var o=i.length-1;o>=0;o--)0===i[o]?(r=r.diffAdd(n,this),n=n.dbl()):(n=r.diffAdd(n,this),r=r.dbl());return n},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},2990:(e,t,r)=>{"use strict";var n=r(2229),i=r(3614),o=r(9528),a=r(5279),s=n.assert;function c(e){a.call(this,"short",e),this.a=new i(e.a,16).toRed(this.red),this.b=new i(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function l(e,t,r,n){a.BasePoint.call(this,e,"affine"),null===t&&null===r?(this.x=null,this.y=null,this.inf=!0):(this.x=new i(t,16),this.y=new i(r,16),n&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function u(e,t,r,n){a.BasePoint.call(this,e,"jacobian"),null===t&&null===r&&null===n?(this.x=this.curve.one,this.y=this.curve.one,this.z=new i(0)):(this.x=new i(t,16),this.y=new i(r,16),this.z=new i(n,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}o(c,a),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,r;if(e.beta)t=new i(e.beta,16).toRed(this.red);else{var n=this._getEndoRoots(this.p);t=(t=n[0].cmp(n[1])<0?n[0]:n[1]).toRed(this.red)}if(e.lambda)r=new i(e.lambda,16);else{var o=this._getEndoRoots(this.n);0===this.g.mul(o[0]).x.cmp(this.g.x.redMul(t))?r=o[0]:(r=o[1],s(0===this.g.mul(r).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:r,basis:e.basis?e.basis.map((function(e){return{a:new i(e.a,16),b:new i(e.b,16)}})):this._getEndoBasis(r)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:i.mont(e),r=new i(2).toRed(t).redInvm(),n=r.redNeg(),o=new i(3).toRed(t).redNeg().redSqrt().redMul(r);return[n.redAdd(o).fromRed(),n.redSub(o).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,r,n,o,a,s,c,l,u,d=this.n.ushrn(Math.floor(this.n.bitLength()/2)),h=e,f=this.n.clone(),p=new i(1),m=new i(0),g=new i(0),v=new i(1),y=0;0!==h.cmpn(0);){var b=f.div(h);l=f.sub(b.mul(h)),u=g.sub(b.mul(p));var w=v.sub(b.mul(m));if(!n&&l.cmp(d)<0)t=c.neg(),r=p,n=l.neg(),o=u;else if(n&&2===++y)break;c=l,f=h,h=l,g=p,p=u,v=m,m=w}a=l.neg(),s=u;var x=n.sqr().add(o.sqr());return a.sqr().add(s.sqr()).cmp(x)>=0&&(a=t,s=r),n.negative&&(n=n.neg(),o=o.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:n,b:o},{a:a,b:s}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],i=n.b.mul(e).divRound(this.n),o=r.b.neg().mul(e).divRound(this.n),a=i.mul(r.a),s=o.mul(n.a),c=i.mul(r.b),l=o.mul(n.b);return{k1:e.sub(a).sub(s),k2:c.add(l).neg()}},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var o=n.fromRed().isOdd();return(t&&!o||!t&&o)&&(n=n.redNeg()),this.point(e,n)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""},l.prototype.isInfinity=function(){return this.inf},l.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},l.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),o=i.redSqr().redISub(this.x.redAdd(this.x)),a=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,a)},l.prototype.getX=function(){return this.x.fromRed()},l.prototype.getY=function(){return this.y.fromRed()},l.prototype.mul=function(e){return e=new i(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},l.prototype.jmulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},l.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},l.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return t},l.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(u,a.BasePoint),c.prototype.jpoint=function(e,t,r){return new u(this,e,t,r)},u.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},u.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},u.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),i=e.x.redMul(r),o=this.y.redMul(t.redMul(e.z)),a=e.y.redMul(r.redMul(this.z)),s=n.redSub(i),c=o.redSub(a);if(0===s.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var l=s.redSqr(),u=l.redMul(s),d=n.redMul(l),h=c.redSqr().redIAdd(u).redISub(d).redISub(d),f=c.redMul(d.redISub(h)).redISub(o.redMul(u)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(h,f,p)},u.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),i=this.y,o=e.y.redMul(t).redMul(this.z),a=r.redSub(n),s=i.redSub(o);if(0===a.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=a.redSqr(),l=c.redMul(a),u=r.redMul(c),d=s.redSqr().redIAdd(l).redISub(u).redISub(u),h=s.redMul(u.redISub(d)).redISub(i.redMul(l)),f=this.z.redMul(a);return this.curve.jpoint(d,h,f)},u.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var r=this;for(t=0;t=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},u.prototype.inspect=function(){return this.isInfinity()?"":""},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},3426:(e,t,r)=>{"use strict";var n,i=t,o=r(2170),a=r(464),s=r(2229).assert;function c(e){"short"===e.type?this.curve=new a.short(e):"edwards"===e.type?this.curve=new a.edwards(e):this.curve=new a.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function l(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var r=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:r}),r}})}i.PresetCurve=c,l("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),l("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),l("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),l("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),l("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),l("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),l("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{n=r(7445)}catch(u){n=void 0}l("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",n]})},3869:(e,t,r)=>{"use strict";var n=r(3614),i=r(5533),o=r(2229),a=r(3426),s=r(407),c=o.assert,l=r(9150),u=r(3539);function d(e){if(!(this instanceof d))return new d(e);"string"===typeof e&&(c(Object.prototype.hasOwnProperty.call(a,e),"Unknown curve "+e),e=a[e]),e instanceof a.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}e.exports=d,d.prototype.keyPair=function(e){return new l(this,e)},d.prototype.keyFromPrivate=function(e,t){return l.fromPrivate(this,e,t)},d.prototype.keyFromPublic=function(e,t){return l.fromPublic(this,e,t)},d.prototype.genKeyPair=function(e){e||(e={});for(var t=new i({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||s(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),o=this.n.sub(new n(2));;){var a=new n(t.generate(r));if(!(a.cmp(o)>0))return a.iaddn(1),this.keyFromPrivate(a)}},d.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,r,o){"object"===typeof r&&(o=r,r=null),o||(o={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new n(e,16));for(var a=this.n.byteLength(),s=t.getPrivate().toArray("be",a),c=e.toArray("be",a),l=new i({hash:this.hash,entropy:s,nonce:c,pers:o.pers,persEnc:o.persEnc||"utf8"}),d=this.n.sub(new n(1)),h=0;;h++){var f=o.k?o.k(h):new n(l.generate(this.n.byteLength()));if(!((f=this._truncateToN(f,!0)).cmpn(1)<=0||f.cmp(d)>=0)){var p=this.g.mul(f);if(!p.isInfinity()){var m=p.getX(),g=m.umod(this.n);if(0!==g.cmpn(0)){var v=f.invm(this.n).mul(g.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var y=(p.getY().isOdd()?1:0)|(0!==m.cmp(g)?2:0);return o.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),y^=1),new u({r:g,s:v,recoveryParam:y})}}}}}},d.prototype.verify=function(e,t,r,i){e=this._truncateToN(new n(e,16)),r=this.keyFromPublic(r,i);var o=(t=new u(t,"hex")).r,a=t.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;var s,c=a.invm(this.n),l=c.mul(e).umod(this.n),d=c.mul(o).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(l,r.getPublic(),d)).isInfinity()&&s.eqXToP(o):!(s=this.g.mulAdd(l,r.getPublic(),d)).isInfinity()&&0===s.getX().umod(this.n).cmp(o)},d.prototype.recoverPubKey=function(e,t,r,i){c((3&r)===r,"The recovery param is more than two bits"),t=new u(t,i);var o=this.n,a=new n(e),s=t.r,l=t.s,d=1&r,h=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&h)throw new Error("Unable to find sencond key candinate");s=h?this.curve.pointFromX(s.add(this.curve.n),d):this.curve.pointFromX(s,d);var f=t.r.invm(o),p=o.sub(a).mul(f).umod(o),m=l.mul(f).umod(o);return this.g.mulAdd(p,s,m)},d.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new u(t,n)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var o;try{o=this.recoverPubKey(e,t,i)}catch(e){continue}if(o.eq(r))return i}throw new Error("Unable to find valid recovery factor")}},9150:(e,t,r)=>{"use strict";var n=r(3614),i=r(2229).assert;function o(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}e.exports=o,o.fromPublic=function(e,t,r){return t instanceof o?t:new o(e,{pub:t,pubEnc:r})},o.fromPrivate=function(e,t,r){return t instanceof o?t:new o(e,{priv:t,privEnc:r})},o.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},o.prototype.getPublic=function(e,t){return"string"===typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},o.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},o.prototype._importPrivate=function(e,t){this.priv=new n(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},o.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?i(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||i(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},o.prototype.derive=function(e){return e.validate()||i(e.validate(),"public point not validated"),e.mul(this.priv).getX()},o.prototype.sign=function(e,t,r){return this.ec.sign(e,this,t,r)},o.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},o.prototype.inspect=function(){return""}},3539:(e,t,r)=>{"use strict";var n=r(3614),i=r(2229),o=i.assert;function a(e,t){if(e instanceof a)return e;this._importDER(e,t)||(o(e.r&&e.s,"Signature without r or s"),this.r=new n(e.r,16),this.s=new n(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function s(){this.place=0}function c(e,t){var r=e[t.place++];if(!(128&r))return r;var n=15&r;if(0===n||n>4)return!1;for(var i=0,o=0,a=t.place;o>>=0;return!(i<=127)&&(t.place=a,i)}function l(e){for(var t=0,r=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}e.exports=a,a.prototype._importDER=function(e,t){e=i.toArray(e,t);var r=new s;if(48!==e[r.place++])return!1;var o=c(e,r);if(!1===o)return!1;if(o+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var a=c(e,r);if(!1===a)return!1;var l=e.slice(r.place,a+r.place);if(r.place+=a,2!==e[r.place++])return!1;var u=c(e,r);if(!1===u)return!1;if(e.length!==u+r.place)return!1;var d=e.slice(r.place,u+r.place);if(0===l[0]){if(!(128&l[1]))return!1;l=l.slice(1)}if(0===d[0]){if(!(128&d[1]))return!1;d=d.slice(1)}return this.r=new n(l),this.s=new n(d),this.recoveryParam=null,!0},a.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=l(t),r=l(r);!r[0]&&!(128&r[1]);)r=r.slice(1);var n=[2];u(n,t.length),(n=n.concat(t)).push(2),u(n,r.length);var o=n.concat(r),a=[48];return u(a,o.length),a=a.concat(o),i.encode(a,e)}},3764:(e,t,r)=>{"use strict";var n=r(2170),i=r(3426),o=r(2229),a=o.assert,s=o.parseBytes,c=r(8359),l=r(9746);function u(e){if(a("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof u))return new u(e);e=i[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=n.sha512}e.exports=u,u.prototype.sign=function(e,t){e=s(e);var r=this.keyFromSecret(t),n=this.hashInt(r.messagePrefix(),e),i=this.g.mul(n),o=this.encodePoint(i),a=this.hashInt(o,r.pubBytes(),e).mul(r.priv()),c=n.add(a).umod(this.curve.n);return this.makeSignature({R:i,S:c,Rencoded:o})},u.prototype.verify=function(e,t,r){e=s(e),t=this.makeSignature(t);var n=this.keyFromPublic(r),i=this.hashInt(t.Rencoded(),n.pubBytes(),e),o=this.g.mul(t.S());return t.R().add(n.pub().mul(i)).eq(o)},u.prototype.hashInt=function(){for(var e=this.hash(),t=0;t{"use strict";var n=r(2229),i=n.assert,o=n.parseBytes,a=n.cachedProperty;function s(e,t){this.eddsa=e,this._secret=o(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=o(t.pub)}s.fromPublic=function(e,t){return t instanceof s?t:new s(e,{pub:t})},s.fromSecret=function(e,t){return t instanceof s?t:new s(e,{secret:t})},s.prototype.secret=function(){return this._secret},a(s,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),a(s,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),a(s,"privBytes",(function(){var e=this.eddsa,t=this.hash(),r=e.encodingLength-1,n=t.slice(0,e.encodingLength);return n[0]&=248,n[r]&=127,n[r]|=64,n})),a(s,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),a(s,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),a(s,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),s.prototype.sign=function(e){return i(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},s.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},s.prototype.getSecret=function(e){return i(this._secret,"KeyPair is public only"),n.encode(this.secret(),e)},s.prototype.getPublic=function(e){return n.encode(this.pubBytes(),e)},e.exports=s},9746:(e,t,r)=>{"use strict";var n=r(3614),i=r(2229),o=i.assert,a=i.cachedProperty,s=i.parseBytes;function c(e,t){this.eddsa=e,"object"!==typeof t&&(t=s(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),o(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof n&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}a(c,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),a(c,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),a(c,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),a(c,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),c.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},c.prototype.toHex=function(){return i.encode(this.toBytes(),"hex").toUpperCase()},e.exports=c},7445:e=>{e.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},2229:(e,t,r)=>{"use strict";var n=t,i=r(3614),o=r(2563),a=r(4777);n.assert=o,n.toArray=a.toArray,n.zero2=a.zero2,n.toHex=a.toHex,n.encode=a.encode,n.getNAF=function(e,t,r){var n=new Array(Math.max(e.bitLength(),r)+1);n.fill(0);for(var i=1<(i>>1)-1?(i>>1)-c:c,o.isubn(s)):s=0,n[a]=s,o.iushrn(1)}return n},n.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var n,i=0,o=0;e.cmpn(-i)>0||t.cmpn(-o)>0;){var a,s,c=e.andln(3)+i&3,l=t.andln(3)+o&3;3===c&&(c=-1),3===l&&(l=-1),a=0===(1&c)?0:3!==(n=e.andln(7)+i&7)&&5!==n||2!==l?c:-c,r[0].push(a),s=0===(1&l)?0:3!==(n=t.andln(7)+o&7)&&5!==n||2!==c?l:-l,r[1].push(s),2*i===a+1&&(i=1-i),2*o===s+1&&(o=1-o),e.iushrn(1),t.iushrn(1)}return r},n.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},n.parseBytes=function(e){return"string"===typeof e?n.toArray(e,"hex"):e},n.intFromLE=function(e){return new i(e,"hex","le")}},4592:e=>{"use strict";function t(e,t){for(const r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}e.exports=function(e,r,n){if(!e||"string"===typeof e)throw new TypeError("Please pass an Error to err-code");n||(n={}),"object"===typeof r&&(n=r,r=void 0),null!=r&&(n.code=r);try{return t(e,n)}catch(i){n.message=e.message,n.stack=e.stack;const r=function(){};return r.prototype=Object.create(Object.getPrototypeOf(e)),t(new r,n)}}},6169:(e,t,r)=>{"use strict";t.So=void 0;const n=r(6681),i=r(5958);(0,i.wrapHash)(n.keccak_224),t.So=(()=>{const e=(0,i.wrapHash)(n.keccak_256);return e.create=n.keccak_256.create,e})(),(0,i.wrapHash)(n.keccak_384),(0,i.wrapHash)(n.keccak_512)},5958:function(e,t,r){"use strict";e=r.nmd(e);var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.crypto=t.wrapHash=t.equalsBytes=t.hexToBytes=t.bytesToUtf8=t.utf8ToBytes=t.createView=t.concatBytes=t.toHex=t.bytesToHex=t.assertBytes=t.assertBool=void 0;const i=n(r(8903)),o=r(7317),a=i.default.bool;t.assertBool=a;const s=i.default.bytes;t.assertBytes=s;var c=r(7317);Object.defineProperty(t,"bytesToHex",{enumerable:!0,get:function(){return c.bytesToHex}}),Object.defineProperty(t,"toHex",{enumerable:!0,get:function(){return c.bytesToHex}}),Object.defineProperty(t,"concatBytes",{enumerable:!0,get:function(){return c.concatBytes}}),Object.defineProperty(t,"createView",{enumerable:!0,get:function(){return c.createView}}),Object.defineProperty(t,"utf8ToBytes",{enumerable:!0,get:function(){return c.utf8ToBytes}}),t.bytesToUtf8=function(e){if(!(e instanceof Uint8Array))throw new TypeError("bytesToUtf8 expected Uint8Array, got "+typeof e);return(new TextDecoder).decode(e)},t.hexToBytes=function(e){const t=e.startsWith("0x")?e.substring(2):e;return(0,o.hexToBytes)(t)},t.equalsBytes=function(e,t){if(e.length!==t.length)return!1;for(let r=0;r(i.default.bytes(t),e(t))},t.crypto=(()=>{const t="object"===typeof self&&"crypto"in self?self.crypto:void 0,r="function"===typeof e.require&&e.require.bind(e);return{node:r&&!t?r("crypto"):void 0,web:t}})()},8449:e=>{"use strict";var t,r="object"===typeof Reflect?Reflect:null,n=r&&"function"===typeof r.apply?r.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};t=r&&"function"===typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var i=Number.isNaN||function(e){return e!==e};function o(){o.init.call(this)}e.exports=o,e.exports.once=function(e,t){return new Promise((function(r,n){function i(r){e.removeListener(t,o),n(r)}function o(){"function"===typeof e.removeListener&&e.removeListener("error",i),r([].slice.call(arguments))}m(e,t,o,{once:!0}),"error"!==t&&function(e,t,r){"function"===typeof e.on&&m(e,"error",t,r)}(e,i,{once:!0})}))},o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var a=10;function s(e){if("function"!==typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function c(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function l(e,t,r,n){var i,o,a,l;if(s(r),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),o=e._events),a=o[t]),void 0===a)a=o[t]=r,++e._eventsCount;else if("function"===typeof a?a=o[t]=n?[r,a]:[a,r]:n?a.unshift(r):a.push(r),(i=c(e))>0&&a.length>i&&!a.warned){a.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=e,u.type=t,u.count=a.length,l=u,console&&console.warn&&console.warn(l)}return e}function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=u.bind(n);return i.listener=r,n.wrapFn=i,i}function h(e,t,r){var n=e._events;if(void 0===n)return[];var i=n[t];return void 0===i?[]:"function"===typeof i?r?[i.listener||i]:[i]:r?function(e){for(var t=new Array(e.length),r=0;r0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var c=o[e];if(void 0===c)return!1;if("function"===typeof c)n(c,this,t);else{var l=c.length,u=p(c,l);for(r=0;r=0;o--)if(r[o]===t||r[o].listener===t){a=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},o.prototype.listeners=function(e){return h(this,e,!0)},o.prototype.rawListeners=function(e){return h(this,e,!1)},o.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):f.call(e,t)},o.prototype.listenerCount=f,o.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},7786:e=>{"use strict";e.exports=function(e,t){t||(t={}),"function"===typeof t&&(t={cmp:t});var r,n="boolean"===typeof t.cycles&&t.cycles,i=t.cmp&&(r=t.cmp,function(e){return function(t,n){var i={key:t,value:e[t]},o={key:n,value:e[n]};return r(i,o)}}),o=[];return function e(t){if(t&&t.toJSON&&"function"===typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!==typeof t)return JSON.stringify(t);var r,a;if(Array.isArray(t)){for(a="[",r=0;r{"use strict";var n=r(1176).Buffer,i=r(6885).Transform;function o(e){i.call(this),this._block=n.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}r(9528)(o,i),o.prototype._transform=function(e,t,r){var n=null;try{this.update(e,t)}catch(i){n=i}r(n)},o.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(r){t=r}e(t)},o.prototype.update=function(e,t){if(function(e,t){if(!n.isBuffer(e)&&"string"!==typeof e)throw new TypeError(t+" must be a string or a buffer")}(e,"Data"),this._finalized)throw new Error("Digest already called");n.isBuffer(e)||(e=n.from(e,t));for(var r=this._block,i=0;this._blockOffset+e.length-i>=this._blockSize;){for(var o=this._blockOffset;o0;++a)this._length[a]+=s,(s=this._length[a]/4294967296|0)>0&&(this._length[a]-=4294967296*s);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},2170:(e,t,r)=>{var n=t;n.utils=r(8084),n.common=r(6176),n.sha=r(5439),n.ripemd=r(1558),n.hmac=r(4698),n.sha1=n.sha.sha1,n.sha256=n.sha.sha256,n.sha224=n.sha.sha224,n.sha384=n.sha.sha384,n.sha512=n.sha.sha512,n.ripemd160=n.ripemd.ripemd160},6176:(e,t,r)=>{"use strict";var n=r(8084),i=r(2563);function o(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}t.BlockHash=o,o.prototype.update=function(e,t){if(e=n.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=n.join32(e,0,e.length-r,this.endian);for(var i=0;i>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,o=8;o{"use strict";var n=r(8084),i=r(2563);function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(n.toArray(t,r))}e.exports=o,o.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t{"use strict";var n=r(8084),i=r(6176),o=n.rotl32,a=n.sum32,s=n.sum32_3,c=n.sum32_4,l=i.BlockHash;function u(){if(!(this instanceof u))return new u;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function d(e,t,r,n){return e<=15?t^r^n:e<=31?t&r|~t&n:e<=47?(t|~r)^n:e<=63?t&n|r&~n:t^(r|~n)}function h(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function f(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}n.inherits(u,l),t.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var r=this.h[0],n=this.h[1],i=this.h[2],l=this.h[3],u=this.h[4],y=r,b=n,w=i,x=l,_=u,k=0;k<80;k++){var S=a(o(c(r,d(k,n,i,l),e[p[k]+t],h(k)),g[k]),u);r=u,u=l,l=o(i,10),i=n,n=S,S=a(o(c(y,d(79-k,b,w,x),e[m[k]+t],f(k)),v[k]),_),y=_,_=x,x=o(w,10),w=b,b=S}S=s(this.h[1],i,x),this.h[1]=s(this.h[2],l,_),this.h[2]=s(this.h[3],u,y),this.h[3]=s(this.h[4],r,b),this.h[4]=s(this.h[0],n,w),this.h[0]=S},u.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"little"):n.split32(this.h,"little")};var p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],m=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],g=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],v=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},5439:(e,t,r)=>{"use strict";t.sha1=r(3171),t.sha224=r(6640),t.sha256=r(1061),t.sha384=r(6193),t.sha512=r(2896)},3171:(e,t,r)=>{"use strict";var n=r(8084),i=r(6176),o=r(2027),a=n.rotl32,s=n.sum32,c=n.sum32_5,l=o.ft_1,u=i.BlockHash,d=[1518500249,1859775393,2400959708,3395469782];function h(){if(!(this instanceof h))return new h;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}n.inherits(h,u),e.exports=h,h.blockSize=512,h.outSize=160,h.hmacStrength=80,h.padLength=64,h.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(8084),i=r(1061);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}n.inherits(o,i),e.exports=o,o.blockSize=512,o.outSize=224,o.hmacStrength=192,o.padLength=64,o.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,7),"big"):n.split32(this.h.slice(0,7),"big")}},1061:(e,t,r)=>{"use strict";var n=r(8084),i=r(6176),o=r(2027),a=r(2563),s=n.sum32,c=n.sum32_4,l=n.sum32_5,u=o.ch32,d=o.maj32,h=o.s0_256,f=o.s1_256,p=o.g0_256,m=o.g1_256,g=i.BlockHash,v=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function y(){if(!(this instanceof y))return new y;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=v,this.W=new Array(64)}n.inherits(y,g),e.exports=y,y.blockSize=512,y.outSize=256,y.hmacStrength=192,y.padLength=64,y.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(8084),i=r(2896);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}n.inherits(o,i),e.exports=o,o.blockSize=1024,o.outSize=384,o.hmacStrength=192,o.padLength=128,o.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,12),"big"):n.split32(this.h.slice(0,12),"big")}},2896:(e,t,r)=>{"use strict";var n=r(8084),i=r(6176),o=r(2563),a=n.rotr64_hi,s=n.rotr64_lo,c=n.shr64_hi,l=n.shr64_lo,u=n.sum64,d=n.sum64_hi,h=n.sum64_lo,f=n.sum64_4_hi,p=n.sum64_4_lo,m=n.sum64_5_hi,g=n.sum64_5_lo,v=i.BlockHash,y=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function b(){if(!(this instanceof b))return new b;v.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=y,this.W=new Array(160)}function w(e,t,r,n,i){var o=e&r^~e&i;return o<0&&(o+=4294967296),o}function x(e,t,r,n,i,o){var a=t&n^~t&o;return a<0&&(a+=4294967296),a}function _(e,t,r,n,i){var o=e&r^e&i^r&i;return o<0&&(o+=4294967296),o}function k(e,t,r,n,i,o){var a=t&n^t&o^n&o;return a<0&&(a+=4294967296),a}function S(e,t){var r=a(e,t,28)^a(t,e,2)^a(t,e,7);return r<0&&(r+=4294967296),r}function E(e,t){var r=s(e,t,28)^s(t,e,2)^s(t,e,7);return r<0&&(r+=4294967296),r}function A(e,t){var r=a(e,t,14)^a(e,t,18)^a(t,e,9);return r<0&&(r+=4294967296),r}function P(e,t){var r=s(e,t,14)^s(e,t,18)^s(t,e,9);return r<0&&(r+=4294967296),r}function O(e,t){var r=a(e,t,1)^a(e,t,8)^c(e,t,7);return r<0&&(r+=4294967296),r}function T(e,t){var r=s(e,t,1)^s(e,t,8)^l(e,t,7);return r<0&&(r+=4294967296),r}function C(e,t){var r=a(e,t,19)^a(t,e,29)^c(e,t,6);return r<0&&(r+=4294967296),r}function j(e,t){var r=s(e,t,19)^s(t,e,29)^l(e,t,6);return r<0&&(r+=4294967296),r}n.inherits(b,v),e.exports=b,b.blockSize=1024,b.outSize=512,b.hmacStrength=192,b.padLength=128,b.prototype._prepareBlock=function(e,t){for(var r=this.W,n=0;n<32;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(8084).rotr32;function i(e,t,r){return e&t^~e&r}function o(e,t,r){return e&t^e&r^t&r}function a(e,t,r){return e^t^r}t.ft_1=function(e,t,r,n){return 0===e?i(t,r,n):1===e||3===e?a(t,r,n):2===e?o(t,r,n):void 0},t.ch32=i,t.maj32=o,t.p32=a,t.s0_256=function(e){return n(e,2)^n(e,13)^n(e,22)},t.s1_256=function(e){return n(e,6)^n(e,11)^n(e,25)},t.g0_256=function(e){return n(e,7)^n(e,18)^e>>>3},t.g1_256=function(e){return n(e,17)^n(e,19)^e>>>10}},8084:(e,t,r)=>{"use strict";var n=r(2563),i=r(9528);function o(e,t){return 55296===(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320===(64512&e.charCodeAt(t+1)))}function a(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function s(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"===typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!==0&&(e="0"+e),i=0;i>6|192,r[n++]=63&a|128):o(e,i)?(a=65536+((1023&a)<<10)+(1023&e.charCodeAt(++i)),r[n++]=a>>18|240,r[n++]=a>>12&63|128,r[n++]=a>>6&63|128,r[n++]=63&a|128):(r[n++]=a>>12|224,r[n++]=a>>6&63|128,r[n++]=63&a|128)}else for(i=0;i>>0}return a},t.split32=function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=o>>>16&255,r[i+2]=o>>>8&255,r[i+3]=255&o):(r[i+3]=o>>>24,r[i+2]=o>>>16&255,r[i+1]=o>>>8&255,r[i]=255&o)}return r},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,r){return e+t+r>>>0},t.sum32_4=function(e,t,r,n){return e+t+r+n>>>0},t.sum32_5=function(e,t,r,n,i){return e+t+r+n+i>>>0},t.sum64=function(e,t,r,n){var i=e[t],o=n+e[t+1]>>>0,a=(o>>0,e[t+1]=o},t.sum64_hi=function(e,t,r,n){return(t+n>>>0>>0},t.sum64_lo=function(e,t,r,n){return t+n>>>0},t.sum64_4_hi=function(e,t,r,n,i,o,a,s){var c=0,l=t;return c+=(l=l+n>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,r,n,i,o,a,s){return t+n+o+s>>>0},t.sum64_5_hi=function(e,t,r,n,i,o,a,s,c,l){var u=0,d=t;return u+=(d=d+n>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,r,n,i,o,a,s,c,l){return t+n+o+s+l>>>0},t.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},t.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},t.shr64_hi=function(e,t,r){return e>>>r},t.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},5533:(e,t,r)=>{"use strict";var n=r(2170),i=r(4777),o=r(2563);function a(e){if(!(this instanceof a))return new a(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=i.toArray(e.entropy,e.entropyEnc||"hex"),r=i.toArray(e.nonce,e.nonceEnc||"hex"),n=i.toArray(e.pers,e.persEnc||"hex");o(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}e.exports=a,a.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},a.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!==typeof t&&(n=r,r=t,t=null),r&&(r=i.toArray(r,n||"hex"),this._update(r));for(var o=[];o.length{"use strict";var n=r(1770),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},a={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function c(e){return n.isMemo(e)?a:s[e.$$typeof]||i}s[n.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[n.Memo]=a;var l=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,h=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(t,r,n){if("string"!==typeof r){if(p){var i=f(r);i&&i!==p&&e(t,i,n)}var a=u(r);d&&(a=a.concat(d(r)));for(var s=c(t),m=c(r),g=0;g{"use strict";var r="function"===typeof Symbol&&Symbol.for,n=r?Symbol.for("react.element"):60103,i=r?Symbol.for("react.portal"):60106,o=r?Symbol.for("react.fragment"):60107,a=r?Symbol.for("react.strict_mode"):60108,s=r?Symbol.for("react.profiler"):60114,c=r?Symbol.for("react.provider"):60109,l=r?Symbol.for("react.context"):60110,u=r?Symbol.for("react.async_mode"):60111,d=r?Symbol.for("react.concurrent_mode"):60111,h=r?Symbol.for("react.forward_ref"):60112,f=r?Symbol.for("react.suspense"):60113,p=r?Symbol.for("react.suspense_list"):60120,m=r?Symbol.for("react.memo"):60115,g=r?Symbol.for("react.lazy"):60116,v=r?Symbol.for("react.block"):60121,y=r?Symbol.for("react.fundamental"):60117,b=r?Symbol.for("react.responder"):60118,w=r?Symbol.for("react.scope"):60119;function x(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case u:case d:case o:case s:case a:case f:return e;default:switch(e=e&&e.$$typeof){case l:case h:case g:case m:case c:return e;default:return t}}case i:return t}}}function _(e){return x(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=l,t.ContextProvider=c,t.Element=n,t.ForwardRef=h,t.Fragment=o,t.Lazy=g,t.Memo=m,t.Portal=i,t.Profiler=s,t.StrictMode=a,t.Suspense=f,t.isAsyncMode=function(e){return _(e)||x(e)===u},t.isConcurrentMode=_,t.isContextConsumer=function(e){return x(e)===l},t.isContextProvider=function(e){return x(e)===c},t.isElement=function(e){return"object"===typeof e&&null!==e&&e.$$typeof===n},t.isForwardRef=function(e){return x(e)===h},t.isFragment=function(e){return x(e)===o},t.isLazy=function(e){return x(e)===g},t.isMemo=function(e){return x(e)===m},t.isPortal=function(e){return x(e)===i},t.isProfiler=function(e){return x(e)===s},t.isStrictMode=function(e){return x(e)===a},t.isSuspense=function(e){return x(e)===f},t.isValidElementType=function(e){return"string"===typeof e||"function"===typeof e||e===o||e===d||e===s||e===a||e===f||e===p||"object"===typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===m||e.$$typeof===c||e.$$typeof===l||e.$$typeof===h||e.$$typeof===y||e.$$typeof===b||e.$$typeof===w||e.$$typeof===v)},t.typeOf=x},1770:(e,t,r)=>{"use strict";e.exports=r(9430)},6341:(e,t)=>{t.read=function(e,t,r,n,i){var o,a,s=8*i-n-1,c=(1<>1,u=-7,d=r?i-1:0,h=r?-1:1,f=e[t+d];for(d+=h,o=f&(1<<-u)-1,f>>=-u,u+=s;u>0;o=256*o+e[t+d],d+=h,u-=8);for(a=o&(1<<-u)-1,o>>=-u,u+=n;u>0;a=256*a+e[t+d],d+=h,u-=8);if(0===o)o=1-l;else{if(o===c)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,n),o-=l}return(f?-1:1)*a*Math.pow(2,o-n)},t.write=function(e,t,r,n,i,o){var a,s,c,l=8*o-i-1,u=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:o-1,p=n?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=u):(a=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-a))<1&&(a--,c*=2),(t+=a+d>=1?h/c:h*Math.pow(2,1-d))*c>=2&&(a++,c/=2),a+d>=u?(s=0,a=u):a+d>=1?(s=(t*c-1)*Math.pow(2,i),a+=d):(s=t*Math.pow(2,d-1)*Math.pow(2,i),a=0));i>=8;e[r+f]=255&s,f+=p,s/=256,i-=8);for(a=a<0;e[r+f]=255&a,f+=p,a/=256,l-=8);e[r+f-p]|=128*m}},9528:e=>{"function"===typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},8904:e=>{function t(e){return!!e.constructor&&"function"===typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}e.exports=function(e){return null!=e&&(t(e)||function(e){return"function"===typeof e.readFloatLE&&"function"===typeof e.slice&&t(e.slice(0,0))}(e)||!!e._isBuffer)}},1923:(e,t,r)=>{"use strict";var n="undefined"!==typeof JSON?JSON:r(8169),i=Array.isArray||function(e){return"[object Array]"==={}.toString.call(e)},o=Object.keys||function(e){var t=Object.prototype.hasOwnProperty||function(){return!0},r=[];for(var n in e)t.call(e,n)&&r.push(n);return r};e.exports=function(e,t){t||(t={}),"function"===typeof t&&(t={cmp:t});var r=t.space||"";"number"===typeof r&&(r=Array(r+1).join(" "));var a,s="boolean"===typeof t.cycles&&t.cycles,c=t.replacer||function(e,t){return t},l=t.cmp&&(a=t.cmp,function(e){return function(t,r){var n={key:t,value:e[t]},i={key:r,value:e[r]};return a(n,i)}}),u=[];return function e(t,a,d,h){var f=r?"\n"+new Array(h+1).join(r):"",p=r?": ":":";if(d&&d.toJSON&&"function"===typeof d.toJSON&&(d=d.toJSON()),void 0!==(d=c.call(t,a,d))){if("object"!==typeof d||null===d)return n.stringify(d);if(i(d)){for(var m=[],g=0;g{"use strict";t.parse=r(6070),t.stringify=r(5e3)},6070:e=>{"use strict";var t,r,n,i={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"};function o(e){throw{name:"SyntaxError",message:e,at:t,text:n}}function a(e){return e&&e!==r&&o("Expected '"+e+"' instead of '"+r+"'"),r=n.charAt(t),t+=1,r}function s(){var e,t="";for("-"===r&&(t="-",a("-"));r>="0"&&r<="9";)t+=r,a();if("."===r)for(t+=".";a()&&r>="0"&&r<="9";)t+=r;if("e"===r||"E"===r)for(t+=r,a(),"-"!==r&&"+"!==r||(t+=r,a());r>="0"&&r<="9";)t+=r,a();return e=Number(t),isFinite(e)||o("Bad number"),e}function c(){var e,t,n,s="";if('"'===r)for(;a();){if('"'===r)return a(),s;if("\\"===r)if(a(),"u"===r){for(n=0,t=0;t<4&&(e=parseInt(a(),16),isFinite(e));t+=1)n=16*n+e;s+=String.fromCharCode(n)}else{if("string"!==typeof i[r])break;s+=i[r]}else s+=r}o("Bad string")}function l(){for(;r&&r<=" ";)a()}function u(){switch(l(),r){case"{":return function(){var e,t={};if("{"===r){if(a("{"),l(),"}"===r)return a("}"),t;for(;r;){if(e=c(),l(),a(":"),Object.prototype.hasOwnProperty.call(t,e)&&o('Duplicate key "'+e+'"'),t[e]=u(),l(),"}"===r)return a("}"),t;a(","),l()}}o("Bad object")}();case"[":return function(){var e=[];if("["===r){if(a("["),l(),"]"===r)return a("]"),e;for(;r;){if(e.push(u()),l(),"]"===r)return a("]"),e;a(","),l()}}o("Bad array")}();case'"':return c();case"-":return s();default:return r>="0"&&r<="9"?s():function(){switch(r){case"t":return a("t"),a("r"),a("u"),a("e"),!0;case"f":return a("f"),a("a"),a("l"),a("s"),a("e"),!1;case"n":return a("n"),a("u"),a("l"),a("l"),null;default:o("Unexpected '"+r+"'")}}()}}e.exports=function(e,i){var a;return n=e,t=0,r=" ",a=u(),l(),r&&o("Syntax error"),"function"===typeof i?function e(t,r){var n,o,a=t[r];if(a&&"object"===typeof a)for(n in u)Object.prototype.hasOwnProperty.call(a,n)&&("undefined"===typeof(o=e(a,n))?delete a[n]:a[n]=o);return i.call(t,r,a)}({"":a},""):a}},5e3:e=>{"use strict";var t,r,n,i=/[\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,o={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function a(e){return i.lastIndex=0,i.test(e)?'"'+e.replace(i,(function(e){var t=o[e];return"string"===typeof t?t:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}))+'"':'"'+e+'"'}function s(e,i){var o,c,l,u,d,h=t,f=i[e];switch(f&&"object"===typeof f&&"function"===typeof f.toJSON&&(f=f.toJSON(e)),"function"===typeof n&&(f=n.call(i,e,f)),typeof f){case"string":return a(f);case"number":return isFinite(f)?String(f):"null";case"boolean":case"null":return String(f);case"object":if(!f)return"null";if(t+=r,d=[],"[object Array]"===Object.prototype.toString.apply(f)){for(u=f.length,o=0;o{function t(e,t){e.onload=function(){this.onerror=this.onload=null,t(null,e)},e.onerror=function(){this.onerror=this.onload=null,t(new Error("Failed to load "+this.src),e)}}function r(e,t){e.onreadystatechange=function(){"complete"!=this.readyState&&"loaded"!=this.readyState||(this.onreadystatechange=null,t(null,e))}}e.exports=function(e,n,i){var o=document.head||document.getElementsByTagName("head")[0],a=document.createElement("script");"function"===typeof n&&(i=n,n={}),n=n||{},i=i||function(){},a.type=n.type||"text/javascript",a.charset=n.charset||"utf8",a.async=!("async"in n)||!!n.async,a.src=e,n.attrs&&function(e,t){for(var r in t)e.setAttribute(r,t[r])}(a,n.attrs),n.text&&(a.text=""+n.text),("onload"in a?t:r)(a,i),a.onload||t(a,i),o.appendChild(a)}},5480:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=1,o=2,a=9007199254740991,s="[object Arguments]",c="[object Array]",l="[object AsyncFunction]",u="[object Boolean]",d="[object Date]",h="[object Error]",f="[object Function]",p="[object GeneratorFunction]",m="[object Map]",g="[object Number]",v="[object Null]",y="[object Object]",b="[object Promise]",w="[object Proxy]",x="[object RegExp]",_="[object Set]",k="[object String]",S="[object Symbol]",E="[object Undefined]",A="[object WeakMap]",P="[object ArrayBuffer]",O="[object DataView]",T=/^\[object .+?Constructor\]$/,C=/^(?:0|[1-9]\d*)$/,j={};j["[object Float32Array]"]=j["[object Float64Array]"]=j["[object Int8Array]"]=j["[object Int16Array]"]=j["[object Int32Array]"]=j["[object Uint8Array]"]=j["[object Uint8ClampedArray]"]=j["[object Uint16Array]"]=j["[object Uint32Array]"]=!0,j[s]=j[c]=j[P]=j[u]=j[O]=j[d]=j[h]=j[f]=j[m]=j[g]=j[y]=j[x]=j[_]=j[k]=j[A]=!1;var R="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,I="object"==typeof self&&self&&self.Object===Object&&self,M=R||I||Function("return this")(),L=t&&!t.nodeType&&t,N=L&&e&&!e.nodeType&&e,D=N&&N.exports===L,z=D&&R.process,B=function(){try{return z&&z.binding&&z.binding("util")}catch(e){}}(),F=B&&B.isTypedArray;function U(e,t){for(var r=-1,n=null==e?0:e.length;++rl))return!1;var d=s.get(e);if(d&&s.get(t))return d==t;var h=-1,f=!0,p=r&o?new Ae:void 0;for(s.set(e,t),s.set(t,e);++h-1},Se.prototype.set=function(e,t){var r=this.__data__,n=Te(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Ee.prototype.clear=function(){this.size=0,this.__data__={hash:new ke,map:new(de||Se),string:new ke}},Ee.prototype.delete=function(e){var t=De(this,e).delete(e);return this.size-=t?1:0,t},Ee.prototype.get=function(e){return De(this,e).get(e)},Ee.prototype.has=function(e){return De(this,e).has(e)},Ee.prototype.set=function(e,t){var r=De(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Ae.prototype.add=Ae.prototype.push=function(e){return this.__data__.set(e,n),this},Ae.prototype.has=function(e){return this.__data__.has(e)},Pe.prototype.clear=function(){this.__data__=new Se,this.size=0},Pe.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Pe.prototype.get=function(e){return this.__data__.get(e)},Pe.prototype.has=function(e){return this.__data__.has(e)},Pe.prototype.set=function(e,t){var r=this.__data__;if(r instanceof Se){var n=r.__data__;if(!de||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Ee(n)}return r.set(e,t),this.size=r.size,this};var Be=se?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,i=0,o=[];++r-1&&e%1==0&&e-1&&e%1==0&&e<=a}function Ze(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ye(e){return null!=e&&"object"==typeof e}var Xe=F?function(e){return function(t){return e(t)}}(F):function(e){return Ye(e)&&Ge(e.length)&&!!j[Ce(e)]};function Je(e){return null!=(t=e)&&Ge(t.length)&&!We(t)?Oe(e):Me(e);var t}e.exports=function(e,t){return Re(e,t)}},2020:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=9007199254740991,o="[object Arguments]",a="[object AsyncFunction]",s="[object Function]",c="[object GeneratorFunction]",l="[object Null]",u="[object Object]",d="[object Proxy]",h="[object Undefined]",f=/^\[object .+?Constructor\]$/,p=/^(?:0|[1-9]\d*)$/,m={};m["[object Float32Array]"]=m["[object Float64Array]"]=m["[object Int8Array]"]=m["[object Int16Array]"]=m["[object Int32Array]"]=m["[object Uint8Array]"]=m["[object Uint8ClampedArray]"]=m["[object Uint16Array]"]=m["[object Uint32Array]"]=!0,m[o]=m["[object Array]"]=m["[object ArrayBuffer]"]=m["[object Boolean]"]=m["[object DataView]"]=m["[object Date]"]=m["[object Error]"]=m[s]=m["[object Map]"]=m["[object Number]"]=m[u]=m["[object RegExp]"]=m["[object Set]"]=m["[object String]"]=m["[object WeakMap]"]=!1;var g="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,v="object"==typeof self&&self&&self.Object===Object&&self,y=g||v||Function("return this")(),b=t&&!t.nodeType&&t,w=b&&e&&!e.nodeType&&e,x=w&&w.exports===b,_=x&&g.process,k=function(){try{var e=w&&w.require&&w.require("util").types;return e||_&&_.binding&&_.binding("util")}catch(t){}}(),S=k&&k.isTypedArray;var E,A,P=Array.prototype,O=Function.prototype,T=Object.prototype,C=y["__core-js_shared__"],j=O.toString,R=T.hasOwnProperty,I=function(){var e=/[^.]+$/.exec(C&&C.keys&&C.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),M=T.toString,L=j.call(Object),N=RegExp("^"+j.call(R).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=x?y.Buffer:void 0,z=y.Symbol,B=y.Uint8Array,F=D?D.allocUnsafe:void 0,U=(E=Object.getPrototypeOf,A=Object,function(e){return E(A(e))}),$=Object.create,H=T.propertyIsEnumerable,V=P.splice,q=z?z.toStringTag:void 0,K=function(){try{var e=ye(Object,"defineProperty");return e({},"",{}),e}catch(t){}}(),W=D?D.isBuffer:void 0,G=Math.max,Z=Date.now,Y=ye(y,"Map"),X=ye(Object,"create"),J=function(){function e(){}return function(t){if(!Ce(t))return{};if($)return $(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function Q(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t-1},ee.prototype.set=function(e,t){var r=this.__data__,n=ae(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},te.prototype.clear=function(){this.size=0,this.__data__={hash:new Q,map:new(Y||ee),string:new Q}},te.prototype.delete=function(e){var t=ve(this,e).delete(e);return this.size-=t?1:0,t},te.prototype.get=function(e){return ve(this,e).get(e)},te.prototype.has=function(e){return ve(this,e).has(e)},te.prototype.set=function(e,t){var r=ve(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},re.prototype.clear=function(){this.__data__=new ee,this.size=0},re.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},re.prototype.get=function(e){return this.__data__.get(e)},re.prototype.has=function(e){return this.__data__.has(e)},re.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ee){var n=r.__data__;if(!Y||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new te(n)}return r.set(e,t),this.size=r.size,this};var ce,le=function(e,t,r){for(var n=-1,i=Object(e),o=r(e),a=o.length;a--;){var s=o[ce?a:++n];if(!1===t(i[s],s,i))break}return e};function ue(e){return null==e?void 0===e?h:l:q&&q in Object(e)?function(e){var t=R.call(e,q),r=e[q];try{e[q]=void 0;var n=!0}catch(o){}var i=M.call(e);n&&(t?e[q]=r:delete e[q]);return i}(e):function(e){return M.call(e)}(e)}function de(e){return je(e)&&ue(e)==o}function he(e){return!(!Ce(e)||function(e){return!!I&&I in e}(e))&&(Oe(e)?N:f).test(function(e){if(null!=e){try{return j.call(e)}catch(t){}try{return e+""}catch(t){}}return""}(e))}function fe(e){if(!Ce(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=we(e),r=[];for(var n in e)("constructor"!=n||!t&&R.call(e,n))&&r.push(n);return r}function pe(e,t,r,n,i){e!==t&&le(t,(function(o,a){if(i||(i=new re),Ce(o))!function(e,t,r,n,i,o,a){var s=xe(e,r),c=xe(t,r),l=a.get(c);if(l)return void ie(e,r,l);var d=o?o(s,c,r+"",e,t,a):void 0,h=void 0===d;if(h){var f=Ee(c),p=!f&&Pe(c),m=!f&&!p&&Re(c);d=c,f||p||m?Ee(s)?d=s:je(g=s)&&Ae(g)?d=function(e,t){var r=-1,n=e.length;t||(t=Array(n));for(;++r-1&&e%1==0&&e0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(ge);function ke(e,t){return e===t||e!==e&&t!==t}var Se=de(function(){return arguments}())?de:function(e){return je(e)&&R.call(e,"callee")&&!H.call(e,"callee")},Ee=Array.isArray;function Ae(e){return null!=e&&Te(e.length)&&!Oe(e)}var Pe=W||function(){return!1};function Oe(e){if(!Ce(e))return!1;var t=ue(e);return t==s||t==c||t==a||t==d}function Te(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=i}function Ce(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function je(e){return null!=e&&"object"==typeof e}var Re=S?function(e){return function(t){return e(t)}}(S):function(e){return je(e)&&Te(e.length)&&!!m[ue(e)]};function Ie(e){return Ae(e)?ne(e,!0):fe(e)}var Me,Le=(Me=function(e,t,r){pe(e,t,r)},me((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,o=n>2?t[2]:void 0;for(i=Me.length>3&&"function"==typeof i?(n--,i):void 0,o&&function(e,t,r){if(!Ce(r))return!1;var n=typeof t;return!!("number"==n?Ae(r)&&be(t,r.length):"string"==n&&t in r)&&ke(r[t],e)}(t[0],t[1],o)&&(i=n<3?void 0:i,n=1),e=Object(e);++r{e=r.nmd(e);var n="__lodash_hash_undefined__",i=9007199254740991,o="[object Arguments]",a="[object AsyncFunction]",s="[object Function]",c="[object GeneratorFunction]",l="[object Null]",u="[object Object]",d="[object Proxy]",h="[object Undefined]",f=/^\[object .+?Constructor\]$/,p=/^(?:0|[1-9]\d*)$/,m={};m["[object Float32Array]"]=m["[object Float64Array]"]=m["[object Int8Array]"]=m["[object Int16Array]"]=m["[object Int32Array]"]=m["[object Uint8Array]"]=m["[object Uint8ClampedArray]"]=m["[object Uint16Array]"]=m["[object Uint32Array]"]=!0,m[o]=m["[object Array]"]=m["[object ArrayBuffer]"]=m["[object Boolean]"]=m["[object DataView]"]=m["[object Date]"]=m["[object Error]"]=m[s]=m["[object Map]"]=m["[object Number]"]=m[u]=m["[object RegExp]"]=m["[object Set]"]=m["[object String]"]=m["[object WeakMap]"]=!1;var g="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,v="object"==typeof self&&self&&self.Object===Object&&self,y=g||v||Function("return this")(),b=t&&!t.nodeType&&t,w=b&&e&&!e.nodeType&&e,x=w&&w.exports===b,_=x&&g.process,k=function(){try{var e=w&&w.require&&w.require("util").types;return e||_&&_.binding&&_.binding("util")}catch(t){}}(),S=k&&k.isTypedArray;var E,A,P=Array.prototype,O=Function.prototype,T=Object.prototype,C=y["__core-js_shared__"],j=O.toString,R=T.hasOwnProperty,I=function(){var e=/[^.]+$/.exec(C&&C.keys&&C.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),M=T.toString,L=j.call(Object),N=RegExp("^"+j.call(R).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=x?y.Buffer:void 0,z=y.Symbol,B=y.Uint8Array,F=D?D.allocUnsafe:void 0,U=(E=Object.getPrototypeOf,A=Object,function(e){return E(A(e))}),$=Object.create,H=T.propertyIsEnumerable,V=P.splice,q=z?z.toStringTag:void 0,K=function(){try{var e=ye(Object,"defineProperty");return e({},"",{}),e}catch(t){}}(),W=D?D.isBuffer:void 0,G=Math.max,Z=Date.now,Y=ye(y,"Map"),X=ye(Object,"create"),J=function(){function e(){}return function(t){if(!Ce(t))return{};if($)return $(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function Q(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t-1},ee.prototype.set=function(e,t){var r=this.__data__,n=ae(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},te.prototype.clear=function(){this.size=0,this.__data__={hash:new Q,map:new(Y||ee),string:new Q}},te.prototype.delete=function(e){var t=ve(this,e).delete(e);return this.size-=t?1:0,t},te.prototype.get=function(e){return ve(this,e).get(e)},te.prototype.has=function(e){return ve(this,e).has(e)},te.prototype.set=function(e,t){var r=ve(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},re.prototype.clear=function(){this.__data__=new ee,this.size=0},re.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},re.prototype.get=function(e){return this.__data__.get(e)},re.prototype.has=function(e){return this.__data__.has(e)},re.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ee){var n=r.__data__;if(!Y||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new te(n)}return r.set(e,t),this.size=r.size,this};var ce,le=function(e,t,r){for(var n=-1,i=Object(e),o=r(e),a=o.length;a--;){var s=o[ce?a:++n];if(!1===t(i[s],s,i))break}return e};function ue(e){return null==e?void 0===e?h:l:q&&q in Object(e)?function(e){var t=R.call(e,q),r=e[q];try{e[q]=void 0;var n=!0}catch(o){}var i=M.call(e);n&&(t?e[q]=r:delete e[q]);return i}(e):function(e){return M.call(e)}(e)}function de(e){return je(e)&&ue(e)==o}function he(e){return!(!Ce(e)||function(e){return!!I&&I in e}(e))&&(Oe(e)?N:f).test(function(e){if(null!=e){try{return j.call(e)}catch(t){}try{return e+""}catch(t){}}return""}(e))}function fe(e){if(!Ce(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=we(e),r=[];for(var n in e)("constructor"!=n||!t&&R.call(e,n))&&r.push(n);return r}function pe(e,t,r,n,i){e!==t&&le(t,(function(o,a){if(i||(i=new re),Ce(o))!function(e,t,r,n,i,o,a){var s=xe(e,r),c=xe(t,r),l=a.get(c);if(l)return void ie(e,r,l);var d=o?o(s,c,r+"",e,t,a):void 0,h=void 0===d;if(h){var f=Ee(c),p=!f&&Pe(c),m=!f&&!p&&Re(c);d=c,f||p||m?Ee(s)?d=s:je(g=s)&&Ae(g)?d=function(e,t){var r=-1,n=e.length;t||(t=Array(n));for(;++r-1&&e%1==0&&e0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(ge);function ke(e,t){return e===t||e!==e&&t!==t}var Se=de(function(){return arguments}())?de:function(e){return je(e)&&R.call(e,"callee")&&!H.call(e,"callee")},Ee=Array.isArray;function Ae(e){return null!=e&&Te(e.length)&&!Oe(e)}var Pe=W||function(){return!1};function Oe(e){if(!Ce(e))return!1;var t=ue(e);return t==s||t==c||t==a||t==d}function Te(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=i}function Ce(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function je(e){return null!=e&&"object"==typeof e}var Re=S?function(e){return function(t){return e(t)}}(S):function(e){return je(e)&&Te(e.length)&&!!m[ue(e)]};function Ie(e){return Ae(e)?ne(e,!0):fe(e)}var Me,Le=(Me=function(e,t,r,n){pe(e,t,r,n)},me((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,o=n>2?t[2]:void 0;for(i=Me.length>3&&"function"==typeof i?(n--,i):void 0,o&&function(e,t,r){if(!Ce(r))return!1;var n=typeof t;return!!("number"==n?Ae(r)&&be(t,r.length):"string"==n&&t in r)&&ke(r[t],e)}(t[0],t[1],o)&&(i=n<3?void 0:i,n=1),e=Object(e);++r"']/g,Y=RegExp(G.source),X=RegExp(Z.source),J=/<%-([\s\S]+?)%>/g,Q=/<%([\s\S]+?)%>/g,ee=/<%=([\s\S]+?)%>/g,te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,re=/^\w*$/,ne=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,oe=RegExp(ie.source),ae=/^\s+/,se=/\s/,ce=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,le=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,de=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,he=/[()=,{}\[\]\/\s]/,fe=/\\(\\)?/g,pe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,me=/\w*$/,ge=/^[-+]0x[0-9a-f]+$/i,ve=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,be=/^0o[0-7]+$/i,we=/^(?:0|[1-9]\d*)$/,xe=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,_e=/($^)/,ke=/['\n\r\u2028\u2029\\]/g,Se="\\ud800-\\udfff",Ee="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ae="\\u2700-\\u27bf",Pe="a-z\\xdf-\\xf6\\xf8-\\xff",Oe="A-Z\\xc0-\\xd6\\xd8-\\xde",Te="\\ufe0e\\ufe0f",Ce="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",je="['\u2019]",Re="["+Se+"]",Ie="["+Ce+"]",Me="["+Ee+"]",Le="\\d+",Ne="["+Ae+"]",De="["+Pe+"]",ze="[^"+Se+Ce+Le+Ae+Pe+Oe+"]",Be="\\ud83c[\\udffb-\\udfff]",Fe="[^"+Se+"]",Ue="(?:\\ud83c[\\udde6-\\uddff]){2}",$e="[\\ud800-\\udbff][\\udc00-\\udfff]",He="["+Oe+"]",Ve="\\u200d",qe="(?:"+De+"|"+ze+")",Ke="(?:"+He+"|"+ze+")",We="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Ge="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Ze="(?:"+Me+"|"+Be+")"+"?",Ye="["+Te+"]?",Xe=Ye+Ze+("(?:"+Ve+"(?:"+[Fe,Ue,$e].join("|")+")"+Ye+Ze+")*"),Je="(?:"+[Ne,Ue,$e].join("|")+")"+Xe,Qe="(?:"+[Fe+Me+"?",Me,Ue,$e,Re].join("|")+")",et=RegExp(je,"g"),tt=RegExp(Me,"g"),rt=RegExp(Be+"(?="+Be+")|"+Qe+Xe,"g"),nt=RegExp([He+"?"+De+"+"+We+"(?="+[Ie,He,"$"].join("|")+")",Ke+"+"+Ge+"(?="+[Ie,He+qe,"$"].join("|")+")",He+"?"+qe+"+"+We,He+"+"+Ge,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Le,Je].join("|"),"g"),it=RegExp("["+Ve+Se+Ee+Te+"]"),ot=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,at=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],st=-1,ct={};ct[N]=ct[D]=ct[z]=ct[B]=ct[F]=ct[U]=ct[$]=ct[H]=ct[V]=!0,ct[y]=ct[b]=ct[M]=ct[w]=ct[L]=ct[x]=ct[_]=ct[k]=ct[E]=ct[A]=ct[P]=ct[T]=ct[C]=ct[j]=ct[I]=!1;var lt={};lt[y]=lt[b]=lt[M]=lt[L]=lt[w]=lt[x]=lt[N]=lt[D]=lt[z]=lt[B]=lt[F]=lt[E]=lt[A]=lt[P]=lt[T]=lt[C]=lt[j]=lt[R]=lt[U]=lt[$]=lt[H]=lt[V]=!0,lt[_]=lt[k]=lt[I]=!1;var ut={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},dt=parseFloat,ht=parseInt,ft="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,pt="object"==typeof self&&self&&self.Object===Object&&self,mt=ft||pt||Function("return this")(),gt=t&&!t.nodeType&&t,vt=gt&&e&&!e.nodeType&&e,yt=vt&&vt.exports===gt,bt=yt&&ft.process,wt=function(){try{var e=vt&&vt.require&&vt.require("util").types;return e||bt&&bt.binding&&bt.binding("util")}catch(t){}}(),xt=wt&&wt.isArrayBuffer,_t=wt&&wt.isDate,kt=wt&&wt.isMap,St=wt&&wt.isRegExp,Et=wt&&wt.isSet,At=wt&&wt.isTypedArray;function Pt(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function Ot(e,t,r,n){for(var i=-1,o=null==e?0:e.length;++i-1}function Mt(e,t,r){for(var n=-1,i=null==e?0:e.length;++n-1;);return r}function nr(e,t){for(var r=e.length;r--&&Ht(t,e[r],0)>-1;);return r}var ir=Gt({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),or=Gt({"&":"&","<":"<",">":">",'"':""","'":"'"});function ar(e){return"\\"+ut[e]}function sr(e){return it.test(e)}function cr(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function lr(e,t){return function(r){return e(t(r))}}function ur(e,t){for(var r=-1,n=e.length,i=0,o=[];++r",""":'"',"'":"'"});var vr=function e(t){var r=(t=null==t?mt:vr.defaults(mt.Object(),t,vr.pick(mt,at))).Array,n=t.Date,se=t.Error,Se=t.Function,Ee=t.Math,Ae=t.Object,Pe=t.RegExp,Oe=t.String,Te=t.TypeError,Ce=r.prototype,je=Se.prototype,Re=Ae.prototype,Ie=t["__core-js_shared__"],Me=je.toString,Le=Re.hasOwnProperty,Ne=0,De=function(){var e=/[^.]+$/.exec(Ie&&Ie.keys&&Ie.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),ze=Re.toString,Be=Me.call(Ae),Fe=mt._,Ue=Pe("^"+Me.call(Le).replace(ie,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$e=yt?t.Buffer:i,He=t.Symbol,Ve=t.Uint8Array,qe=$e?$e.allocUnsafe:i,Ke=lr(Ae.getPrototypeOf,Ae),We=Ae.create,Ge=Re.propertyIsEnumerable,Ze=Ce.splice,Ye=He?He.isConcatSpreadable:i,Xe=He?He.iterator:i,Je=He?He.toStringTag:i,Qe=function(){try{var e=ho(Ae,"defineProperty");return e({},"",{}),e}catch(t){}}(),rt=t.clearTimeout!==mt.clearTimeout&&t.clearTimeout,it=n&&n.now!==mt.Date.now&&n.now,ut=t.setTimeout!==mt.setTimeout&&t.setTimeout,ft=Ee.ceil,pt=Ee.floor,gt=Ae.getOwnPropertySymbols,vt=$e?$e.isBuffer:i,bt=t.isFinite,wt=Ce.join,Ft=lr(Ae.keys,Ae),Gt=Ee.max,yr=Ee.min,br=n.now,wr=t.parseInt,xr=Ee.random,_r=Ce.reverse,kr=ho(t,"DataView"),Sr=ho(t,"Map"),Er=ho(t,"Promise"),Ar=ho(t,"Set"),Pr=ho(t,"WeakMap"),Or=ho(Ae,"create"),Tr=Pr&&new Pr,Cr={},jr=zo(kr),Rr=zo(Sr),Ir=zo(Er),Mr=zo(Ar),Lr=zo(Pr),Nr=He?He.prototype:i,Dr=Nr?Nr.valueOf:i,zr=Nr?Nr.toString:i;function Br(e){if(ts(e)&&!Va(e)&&!(e instanceof Hr)){if(e instanceof $r)return e;if(Le.call(e,"__wrapped__"))return Bo(e)}return new $r(e)}var Fr=function(){function e(){}return function(t){if(!es(t))return{};if(We)return We(t);e.prototype=t;var r=new e;return e.prototype=i,r}}();function Ur(){}function $r(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}function Hr(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=g,this.__views__=[]}function Vr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function cn(e,t,r,n,o,a){var s,c=1&t,l=2&t,u=4&t;if(r&&(s=o?r(e,n,o,a):r(e)),s!==i)return s;if(!es(e))return e;var d=Va(e);if(d){if(s=function(e){var t=e.length,r=new e.constructor(t);t&&"string"==typeof e[0]&&Le.call(e,"index")&&(r.index=e.index,r.input=e.input);return r}(e),!c)return Ti(e,s)}else{var h=mo(e),f=h==k||h==S;if(Ga(e))return ki(e,c);if(h==P||h==y||f&&!o){if(s=l||f?{}:vo(e),!c)return l?function(e,t){return Ci(e,po(e),t)}(e,function(e,t){return e&&Ci(t,Rs(t),e)}(s,e)):function(e,t){return Ci(e,fo(e),t)}(e,nn(s,e))}else{if(!lt[h])return o?e:{};s=function(e,t,r){var n=e.constructor;switch(t){case M:return Si(e);case w:case x:return new n(+e);case L:return function(e,t){var r=t?Si(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case N:case D:case z:case B:case F:case U:case $:case H:case V:return Ei(e,r);case E:return new n;case A:case j:return new n(e);case T:return function(e){var t=new e.constructor(e.source,me.exec(e));return t.lastIndex=e.lastIndex,t}(e);case C:return new n;case R:return i=e,Dr?Ae(Dr.call(i)):{}}var i}(e,h,c)}}a||(a=new Gr);var p=a.get(e);if(p)return p;a.set(e,s),as(e)?e.forEach((function(n){s.add(cn(n,t,r,n,e,a))})):rs(e)&&e.forEach((function(n,i){s.set(i,cn(n,t,r,i,e,a))}));var m=d?i:(u?l?io:no:l?Rs:js)(e);return Tt(m||e,(function(n,i){m&&(n=e[i=n]),en(s,i,cn(n,t,r,i,e,a))})),s}function ln(e,t,r){var n=r.length;if(null==e)return!n;for(e=Ae(e);n--;){var o=r[n],a=t[o],s=e[o];if(s===i&&!(o in e)||!a(s))return!1}return!0}function un(e,t,r){if("function"!=typeof e)throw new Te(o);return jo((function(){e.apply(i,r)}),t)}function dn(e,t,r,n){var i=-1,o=It,a=!0,s=e.length,c=[],l=t.length;if(!s)return c;r&&(t=Lt(t,Qt(r))),n?(o=Mt,a=!1):t.length>=200&&(o=tr,a=!1,t=new Wr(t));e:for(;++i-1},qr.prototype.set=function(e,t){var r=this.__data__,n=tn(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Kr.prototype.clear=function(){this.size=0,this.__data__={hash:new Vr,map:new(Sr||qr),string:new Vr}},Kr.prototype.delete=function(e){var t=lo(this,e).delete(e);return this.size-=t?1:0,t},Kr.prototype.get=function(e){return lo(this,e).get(e)},Kr.prototype.has=function(e){return lo(this,e).has(e)},Kr.prototype.set=function(e,t){var r=lo(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Wr.prototype.add=Wr.prototype.push=function(e){return this.__data__.set(e,a),this},Wr.prototype.has=function(e){return this.__data__.has(e)},Gr.prototype.clear=function(){this.__data__=new qr,this.size=0},Gr.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Gr.prototype.get=function(e){return this.__data__.get(e)},Gr.prototype.has=function(e){return this.__data__.has(e)},Gr.prototype.set=function(e,t){var r=this.__data__;if(r instanceof qr){var n=r.__data__;if(!Sr||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Kr(n)}return r.set(e,t),this.size=r.size,this};var hn=Ii(wn),fn=Ii(xn,!0);function pn(e,t){var r=!0;return hn(e,(function(e,n,i){return r=!!t(e,n,i)})),r}function mn(e,t,r){for(var n=-1,o=e.length;++n0&&r(s)?t>1?vn(s,t-1,r,n,i):Nt(i,s):n||(i[i.length]=s)}return i}var yn=Mi(),bn=Mi(!0);function wn(e,t){return e&&yn(e,t,js)}function xn(e,t){return e&&bn(e,t,js)}function _n(e,t){return Rt(t,(function(t){return Xa(e[t])}))}function kn(e,t){for(var r=0,n=(t=bi(t,e)).length;null!=e&&rt}function Pn(e,t){return null!=e&&Le.call(e,t)}function On(e,t){return null!=e&&t in Ae(e)}function Tn(e,t,n){for(var o=n?Mt:It,a=e[0].length,s=e.length,c=s,l=r(s),u=1/0,d=[];c--;){var h=e[c];c&&t&&(h=Lt(h,Qt(t))),u=yr(h.length,u),l[c]=!n&&(t||a>=120&&h.length>=120)?new Wr(c&&h):i}h=e[0];var f=-1,p=l[0];e:for(;++f=s?c:c*("desc"==r[n]?-1:1)}return e.index-t.index}(e,t,r)}))}function qn(e,t,r){for(var n=-1,i=t.length,o={};++n-1;)s!==e&&Ze.call(s,c,1),Ze.call(e,c,1);return e}function Wn(e,t){for(var r=e?t.length:0,n=r-1;r--;){var i=t[r];if(r==n||i!==o){var o=i;bo(i)?Ze.call(e,i,1):di(e,i)}}return e}function Gn(e,t){return e+pt(xr()*(t-e+1))}function Zn(e,t){var r="";if(!e||t<1||t>p)return r;do{t%2&&(r+=e),(t=pt(t/2))&&(e+=e)}while(t);return r}function Yn(e,t){return Ro(Po(e,t,nc),e+"")}function Xn(e){return Yr(Fs(e))}function Jn(e,t){var r=Fs(e);return Lo(r,sn(t,0,r.length))}function Qn(e,t,r,n){if(!es(e))return e;for(var o=-1,a=(t=bi(t,e)).length,s=a-1,c=e;null!=c&&++oo?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var a=r(o);++i>>1,a=e[o];null!==a&&!cs(a)&&(r?a<=t:a=200){var l=t?null:Zi(e);if(l)return dr(l);a=!1,i=tr,c=new Wr}else c=t?[]:s;e:for(;++n=n?e:ni(e,t,r)}var _i=rt||function(e){return mt.clearTimeout(e)};function ki(e,t){if(t)return e.slice();var r=e.length,n=qe?qe(r):new e.constructor(r);return e.copy(n),n}function Si(e){var t=new e.constructor(e.byteLength);return new Ve(t).set(new Ve(e)),t}function Ei(e,t){var r=t?Si(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function Ai(e,t){if(e!==t){var r=e!==i,n=null===e,o=e===e,a=cs(e),s=t!==i,c=null===t,l=t===t,u=cs(t);if(!c&&!u&&!a&&e>t||a&&s&&l&&!c&&!u||n&&s&&l||!r&&l||!o)return 1;if(!n&&!a&&!u&&e1?r[o-1]:i,s=o>2?r[2]:i;for(a=e.length>3&&"function"==typeof a?(o--,a):i,s&&wo(r[0],r[1],s)&&(a=o<3?i:a,o=1),t=Ae(t);++n-1?o[a?t[s]:s]:i}}function Bi(e){return ro((function(t){var r=t.length,n=r,a=$r.prototype.thru;for(e&&t.reverse();n--;){var s=t[n];if("function"!=typeof s)throw new Te(o);if(a&&!c&&"wrapper"==ao(s))var c=new $r([],!0)}for(n=c?n:r;++n1&&w.reverse(),f&&uc))return!1;var u=a.get(e),d=a.get(t);if(u&&d)return u==t&&d==e;var h=-1,f=!0,p=2&r?new Wr:i;for(a.set(e,t),a.set(t,e);++h-1&&e%1==0&&e1?"& ":"")+t[n],t=t.join(r>2?", ":" "),e.replace(ce,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return Tt(v,(function(r){var n="_."+r[0];t&r[1]&&!It(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(le);return t?t[1].split(ue):[]}(n),r)))}function Mo(e){var t=0,r=0;return function(){var n=br(),o=16-(n-r);if(r=n,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(i,arguments)}}function Lo(e,t){var r=-1,n=e.length,o=n-1;for(t=t===i?n:t;++r1?e[t-1]:i;return r="function"==typeof r?(e.pop(),r):i,oa(e,r)}));function ha(e){var t=Br(e);return t.__chain__=!0,t}function fa(e,t){return t(e)}var pa=ro((function(e){var t=e.length,r=t?e[0]:0,n=this.__wrapped__,o=function(t){return an(t,e)};return!(t>1||this.__actions__.length)&&n instanceof Hr&&bo(r)?((n=n.slice(r,+r+(t?1:0))).__actions__.push({func:fa,args:[o],thisArg:i}),new $r(n,this.__chain__).thru((function(e){return t&&!e.length&&e.push(i),e}))):this.thru(o)}));var ma=ji((function(e,t,r){Le.call(e,r)?++e[r]:on(e,r,1)}));var ga=zi(Ho),va=zi(Vo);function ya(e,t){return(Va(e)?Tt:hn)(e,co(t,3))}function ba(e,t){return(Va(e)?Ct:fn)(e,co(t,3))}var wa=ji((function(e,t,r){Le.call(e,r)?e[r].push(t):on(e,r,[t])}));var xa=Yn((function(e,t,n){var i=-1,o="function"==typeof t,a=Ka(e)?r(e.length):[];return hn(e,(function(e){a[++i]=o?Pt(t,e,n):Cn(e,t,n)})),a})),_a=ji((function(e,t,r){on(e,r,t)}));function ka(e,t){return(Va(e)?Lt:Bn)(e,co(t,3))}var Sa=ji((function(e,t,r){e[r?0:1].push(t)}),(function(){return[[],[]]}));var Ea=Yn((function(e,t){if(null==e)return[];var r=t.length;return r>1&&wo(e,t[0],t[1])?t=[]:r>2&&wo(t[0],t[1],t[2])&&(t=[t[0]]),Vn(e,vn(t,1),[])})),Aa=it||function(){return mt.Date.now()};function Pa(e,t,r){return t=r?i:t,t=e&&null==t?e.length:t,Xi(e,d,i,i,i,i,t)}function Oa(e,t){var r;if("function"!=typeof t)throw new Te(o);return e=ps(e),function(){return--e>0&&(r=t.apply(this,arguments)),e<=1&&(t=i),r}}var Ta=Yn((function(e,t,r){var n=1;if(r.length){var i=ur(r,so(Ta));n|=l}return Xi(e,n,t,r,i)})),Ca=Yn((function(e,t,r){var n=3;if(r.length){var i=ur(r,so(Ca));n|=l}return Xi(t,n,e,r,i)}));function ja(e,t,r){var n,a,s,c,l,u,d=0,h=!1,f=!1,p=!0;if("function"!=typeof e)throw new Te(o);function m(t){var r=n,o=a;return n=a=i,d=t,c=e.apply(o,r)}function g(e){var r=e-u;return u===i||r>=t||r<0||f&&e-d>=s}function v(){var e=Aa();if(g(e))return y(e);l=jo(v,function(e){var r=t-(e-u);return f?yr(r,s-(e-d)):r}(e))}function y(e){return l=i,p&&n?m(e):(n=a=i,c)}function b(){var e=Aa(),r=g(e);if(n=arguments,a=this,u=e,r){if(l===i)return function(e){return d=e,l=jo(v,t),h?m(e):c}(u);if(f)return _i(l),l=jo(v,t),m(u)}return l===i&&(l=jo(v,t)),c}return t=gs(t)||0,es(r)&&(h=!!r.leading,s=(f="maxWait"in r)?Gt(gs(r.maxWait)||0,t):s,p="trailing"in r?!!r.trailing:p),b.cancel=function(){l!==i&&_i(l),d=0,n=u=a=l=i},b.flush=function(){return l===i?c:y(Aa())},b}var Ra=Yn((function(e,t){return un(e,1,t)})),Ia=Yn((function(e,t,r){return un(e,gs(t)||0,r)}));function Ma(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Te(o);var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var a=e.apply(this,n);return r.cache=o.set(i,a)||o,a};return r.cache=new(Ma.Cache||Kr),r}function La(e){if("function"!=typeof e)throw new Te(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ma.Cache=Kr;var Na=wi((function(e,t){var r=(t=1==t.length&&Va(t[0])?Lt(t[0],Qt(co())):Lt(vn(t,1),Qt(co()))).length;return Yn((function(n){for(var i=-1,o=yr(n.length,r);++i=t})),Ha=jn(function(){return arguments}())?jn:function(e){return ts(e)&&Le.call(e,"callee")&&!Ge.call(e,"callee")},Va=r.isArray,qa=xt?Qt(xt):function(e){return ts(e)&&En(e)==M};function Ka(e){return null!=e&&Qa(e.length)&&!Xa(e)}function Wa(e){return ts(e)&&Ka(e)}var Ga=vt||gc,Za=_t?Qt(_t):function(e){return ts(e)&&En(e)==x};function Ya(e){if(!ts(e))return!1;var t=En(e);return t==_||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!is(e)}function Xa(e){if(!es(e))return!1;var t=En(e);return t==k||t==S||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Ja(e){return"number"==typeof e&&e==ps(e)}function Qa(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=p}function es(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ts(e){return null!=e&&"object"==typeof e}var rs=kt?Qt(kt):function(e){return ts(e)&&mo(e)==E};function ns(e){return"number"==typeof e||ts(e)&&En(e)==A}function is(e){if(!ts(e)||En(e)!=P)return!1;var t=Ke(e);if(null===t)return!0;var r=Le.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Me.call(r)==Be}var os=St?Qt(St):function(e){return ts(e)&&En(e)==T};var as=Et?Qt(Et):function(e){return ts(e)&&mo(e)==C};function ss(e){return"string"==typeof e||!Va(e)&&ts(e)&&En(e)==j}function cs(e){return"symbol"==typeof e||ts(e)&&En(e)==R}var ls=At?Qt(At):function(e){return ts(e)&&Qa(e.length)&&!!ct[En(e)]};var us=Ki(zn),ds=Ki((function(e,t){return e<=t}));function hs(e){if(!e)return[];if(Ka(e))return ss(e)?pr(e):Ti(e);if(Xe&&e[Xe])return function(e){for(var t,r=[];!(t=e.next()).done;)r.push(t.value);return r}(e[Xe]());var t=mo(e);return(t==E?cr:t==C?dr:Fs)(e)}function fs(e){return e?(e=gs(e))===f||e===-1/0?17976931348623157e292*(e<0?-1:1):e===e?e:0:0===e?e:0}function ps(e){var t=fs(e),r=t%1;return t===t?r?t-r:t:0}function ms(e){return e?sn(ps(e),0,g):0}function gs(e){if("number"==typeof e)return e;if(cs(e))return m;if(es(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=es(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Jt(e);var r=ve.test(e);return r||be.test(e)?ht(e.slice(2),r?2:8):ge.test(e)?m:+e}function vs(e){return Ci(e,Rs(e))}function ys(e){return null==e?"":li(e)}var bs=Ri((function(e,t){if(So(t)||Ka(t))Ci(t,js(t),e);else for(var r in t)Le.call(t,r)&&en(e,r,t[r])})),ws=Ri((function(e,t){Ci(t,Rs(t),e)})),xs=Ri((function(e,t,r,n){Ci(t,Rs(t),e,n)})),_s=Ri((function(e,t,r,n){Ci(t,js(t),e,n)})),ks=ro(an);var Ss=Yn((function(e,t){e=Ae(e);var r=-1,n=t.length,o=n>2?t[2]:i;for(o&&wo(t[0],t[1],o)&&(n=1);++r1),t})),Ci(e,io(e),r),n&&(r=cn(r,7,eo));for(var i=t.length;i--;)di(r,t[i]);return r}));var Ns=ro((function(e,t){return null==e?{}:function(e,t){return qn(e,t,(function(t,r){return Ps(e,r)}))}(e,t)}));function Ds(e,t){if(null==e)return{};var r=Lt(io(e),(function(e){return[e]}));return t=co(t),qn(e,r,(function(e,r){return t(e,r[0])}))}var zs=Yi(js),Bs=Yi(Rs);function Fs(e){return null==e?[]:er(e,js(e))}var Us=Ni((function(e,t,r){return t=t.toLowerCase(),e+(r?$s(t):t)}));function $s(e){return Ys(ys(e).toLowerCase())}function Hs(e){return(e=ys(e))&&e.replace(xe,ir).replace(tt,"")}var Vs=Ni((function(e,t,r){return e+(r?"-":"")+t.toLowerCase()})),qs=Ni((function(e,t,r){return e+(r?" ":"")+t.toLowerCase()})),Ks=Li("toLowerCase");var Ws=Ni((function(e,t,r){return e+(r?"_":"")+t.toLowerCase()}));var Gs=Ni((function(e,t,r){return e+(r?" ":"")+Ys(t)}));var Zs=Ni((function(e,t,r){return e+(r?" ":"")+t.toUpperCase()})),Ys=Li("toUpperCase");function Xs(e,t,r){return e=ys(e),(t=r?i:t)===i?function(e){return ot.test(e)}(e)?function(e){return e.match(nt)||[]}(e):function(e){return e.match(de)||[]}(e):e.match(t)||[]}var Js=Yn((function(e,t){try{return Pt(e,i,t)}catch(r){return Ya(r)?r:new se(r)}})),Qs=ro((function(e,t){return Tt(t,(function(t){t=Do(t),on(e,t,Ta(e[t],e))})),e}));function ec(e){return function(){return e}}var tc=Bi(),rc=Bi(!0);function nc(e){return e}function ic(e){return Ln("function"==typeof e?e:cn(e,1))}var oc=Yn((function(e,t){return function(r){return Cn(r,e,t)}})),ac=Yn((function(e,t){return function(r){return Cn(e,r,t)}}));function sc(e,t,r){var n=js(t),i=_n(t,n);null!=r||es(t)&&(i.length||!n.length)||(r=t,t=e,e=this,i=_n(t,js(t)));var o=!(es(r)&&"chain"in r)||!!r.chain,a=Xa(e);return Tt(i,(function(r){var n=t[r];e[r]=n,a&&(e.prototype[r]=function(){var t=this.__chain__;if(o||t){var r=e(this.__wrapped__);return(r.__actions__=Ti(this.__actions__)).push({func:n,args:arguments,thisArg:e}),r.__chain__=t,r}return n.apply(e,Nt([this.value()],arguments))})})),e}function cc(){}var lc=Hi(Lt),uc=Hi(jt),dc=Hi(Bt);function hc(e){return xo(e)?Wt(Do(e)):function(e){return function(t){return kn(t,e)}}(e)}var fc=qi(),pc=qi(!0);function mc(){return[]}function gc(){return!1}var vc=$i((function(e,t){return e+t}),0),yc=Gi("ceil"),bc=$i((function(e,t){return e/t}),1),wc=Gi("floor");var xc=$i((function(e,t){return e*t}),1),_c=Gi("round"),kc=$i((function(e,t){return e-t}),0);return Br.after=function(e,t){if("function"!=typeof t)throw new Te(o);return e=ps(e),function(){if(--e<1)return t.apply(this,arguments)}},Br.ary=Pa,Br.assign=bs,Br.assignIn=ws,Br.assignInWith=xs,Br.assignWith=_s,Br.at=ks,Br.before=Oa,Br.bind=Ta,Br.bindAll=Qs,Br.bindKey=Ca,Br.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Va(e)?e:[e]},Br.chain=ha,Br.chunk=function(e,t,n){t=(n?wo(e,t,n):t===i)?1:Gt(ps(t),0);var o=null==e?0:e.length;if(!o||t<1)return[];for(var a=0,s=0,c=r(ft(o/t));ao?0:o+r),(n=n===i||n>o?o:ps(n))<0&&(n+=o),n=r>n?0:ms(n);r>>0)?(e=ys(e))&&("string"==typeof t||null!=t&&!os(t))&&!(t=li(t))&&sr(e)?xi(pr(e),0,r):e.split(t,r):[]},Br.spread=function(e,t){if("function"!=typeof e)throw new Te(o);return t=null==t?0:Gt(ps(t),0),Yn((function(r){var n=r[t],i=xi(r,0,t);return n&&Nt(i,n),Pt(e,this,i)}))},Br.tail=function(e){var t=null==e?0:e.length;return t?ni(e,1,t):[]},Br.take=function(e,t,r){return e&&e.length?ni(e,0,(t=r||t===i?1:ps(t))<0?0:t):[]},Br.takeRight=function(e,t,r){var n=null==e?0:e.length;return n?ni(e,(t=n-(t=r||t===i?1:ps(t)))<0?0:t,n):[]},Br.takeRightWhile=function(e,t){return e&&e.length?fi(e,co(t,3),!1,!0):[]},Br.takeWhile=function(e,t){return e&&e.length?fi(e,co(t,3)):[]},Br.tap=function(e,t){return t(e),e},Br.throttle=function(e,t,r){var n=!0,i=!0;if("function"!=typeof e)throw new Te(o);return es(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),ja(e,t,{leading:n,maxWait:t,trailing:i})},Br.thru=fa,Br.toArray=hs,Br.toPairs=zs,Br.toPairsIn=Bs,Br.toPath=function(e){return Va(e)?Lt(e,Do):cs(e)?[e]:Ti(No(ys(e)))},Br.toPlainObject=vs,Br.transform=function(e,t,r){var n=Va(e),i=n||Ga(e)||ls(e);if(t=co(t,4),null==r){var o=e&&e.constructor;r=i?n?new o:[]:es(e)&&Xa(o)?Fr(Ke(e)):{}}return(i?Tt:wn)(e,(function(e,n,i){return t(r,e,n,i)})),r},Br.unary=function(e){return Pa(e,1)},Br.union=ta,Br.unionBy=ra,Br.unionWith=na,Br.uniq=function(e){return e&&e.length?ui(e):[]},Br.uniqBy=function(e,t){return e&&e.length?ui(e,co(t,2)):[]},Br.uniqWith=function(e,t){return t="function"==typeof t?t:i,e&&e.length?ui(e,i,t):[]},Br.unset=function(e,t){return null==e||di(e,t)},Br.unzip=ia,Br.unzipWith=oa,Br.update=function(e,t,r){return null==e?e:hi(e,t,yi(r))},Br.updateWith=function(e,t,r,n){return n="function"==typeof n?n:i,null==e?e:hi(e,t,yi(r),n)},Br.values=Fs,Br.valuesIn=function(e){return null==e?[]:er(e,Rs(e))},Br.without=aa,Br.words=Xs,Br.wrap=function(e,t){return Da(yi(t),e)},Br.xor=sa,Br.xorBy=ca,Br.xorWith=la,Br.zip=ua,Br.zipObject=function(e,t){return gi(e||[],t||[],en)},Br.zipObjectDeep=function(e,t){return gi(e||[],t||[],Qn)},Br.zipWith=da,Br.entries=zs,Br.entriesIn=Bs,Br.extend=ws,Br.extendWith=xs,sc(Br,Br),Br.add=vc,Br.attempt=Js,Br.camelCase=Us,Br.capitalize=$s,Br.ceil=yc,Br.clamp=function(e,t,r){return r===i&&(r=t,t=i),r!==i&&(r=(r=gs(r))===r?r:0),t!==i&&(t=(t=gs(t))===t?t:0),sn(gs(e),t,r)},Br.clone=function(e){return cn(e,4)},Br.cloneDeep=function(e){return cn(e,5)},Br.cloneDeepWith=function(e,t){return cn(e,5,t="function"==typeof t?t:i)},Br.cloneWith=function(e,t){return cn(e,4,t="function"==typeof t?t:i)},Br.conformsTo=function(e,t){return null==t||ln(e,t,js(t))},Br.deburr=Hs,Br.defaultTo=function(e,t){return null==e||e!==e?t:e},Br.divide=bc,Br.endsWith=function(e,t,r){e=ys(e),t=li(t);var n=e.length,o=r=r===i?n:sn(ps(r),0,n);return(r-=t.length)>=0&&e.slice(r,o)==t},Br.eq=Fa,Br.escape=function(e){return(e=ys(e))&&X.test(e)?e.replace(Z,or):e},Br.escapeRegExp=function(e){return(e=ys(e))&&oe.test(e)?e.replace(ie,"\\$&"):e},Br.every=function(e,t,r){var n=Va(e)?jt:pn;return r&&wo(e,t,r)&&(t=i),n(e,co(t,3))},Br.find=ga,Br.findIndex=Ho,Br.findKey=function(e,t){return Ut(e,co(t,3),wn)},Br.findLast=va,Br.findLastIndex=Vo,Br.findLastKey=function(e,t){return Ut(e,co(t,3),xn)},Br.floor=wc,Br.forEach=ya,Br.forEachRight=ba,Br.forIn=function(e,t){return null==e?e:yn(e,co(t,3),Rs)},Br.forInRight=function(e,t){return null==e?e:bn(e,co(t,3),Rs)},Br.forOwn=function(e,t){return e&&wn(e,co(t,3))},Br.forOwnRight=function(e,t){return e&&xn(e,co(t,3))},Br.get=As,Br.gt=Ua,Br.gte=$a,Br.has=function(e,t){return null!=e&&go(e,t,Pn)},Br.hasIn=Ps,Br.head=Ko,Br.identity=nc,Br.includes=function(e,t,r,n){e=Ka(e)?e:Fs(e),r=r&&!n?ps(r):0;var i=e.length;return r<0&&(r=Gt(i+r,0)),ss(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&Ht(e,t,r)>-1},Br.indexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:ps(r);return i<0&&(i=Gt(n+i,0)),Ht(e,t,i)},Br.inRange=function(e,t,r){return t=fs(t),r===i?(r=t,t=0):r=fs(r),function(e,t,r){return e>=yr(t,r)&&e=-9007199254740991&&e<=p},Br.isSet=as,Br.isString=ss,Br.isSymbol=cs,Br.isTypedArray=ls,Br.isUndefined=function(e){return e===i},Br.isWeakMap=function(e){return ts(e)&&mo(e)==I},Br.isWeakSet=function(e){return ts(e)&&"[object WeakSet]"==En(e)},Br.join=function(e,t){return null==e?"":wt.call(e,t)},Br.kebabCase=Vs,Br.last=Yo,Br.lastIndexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var o=n;return r!==i&&(o=(o=ps(r))<0?Gt(n+o,0):yr(o,n-1)),t===t?function(e,t,r){for(var n=r+1;n--;)if(e[n]===t)return n;return n}(e,t,o):$t(e,qt,o,!0)},Br.lowerCase=qs,Br.lowerFirst=Ks,Br.lt=us,Br.lte=ds,Br.max=function(e){return e&&e.length?mn(e,nc,An):i},Br.maxBy=function(e,t){return e&&e.length?mn(e,co(t,2),An):i},Br.mean=function(e){return Kt(e,nc)},Br.meanBy=function(e,t){return Kt(e,co(t,2))},Br.min=function(e){return e&&e.length?mn(e,nc,zn):i},Br.minBy=function(e,t){return e&&e.length?mn(e,co(t,2),zn):i},Br.stubArray=mc,Br.stubFalse=gc,Br.stubObject=function(){return{}},Br.stubString=function(){return""},Br.stubTrue=function(){return!0},Br.multiply=xc,Br.nth=function(e,t){return e&&e.length?Hn(e,ps(t)):i},Br.noConflict=function(){return mt._===this&&(mt._=Fe),this},Br.noop=cc,Br.now=Aa,Br.pad=function(e,t,r){e=ys(e);var n=(t=ps(t))?fr(e):0;if(!t||n>=t)return e;var i=(t-n)/2;return Vi(pt(i),r)+e+Vi(ft(i),r)},Br.padEnd=function(e,t,r){e=ys(e);var n=(t=ps(t))?fr(e):0;return t&&nt){var n=e;e=t,t=n}if(r||e%1||t%1){var o=xr();return yr(e+o*(t-e+dt("1e-"+((o+"").length-1))),t)}return Gn(e,t)},Br.reduce=function(e,t,r){var n=Va(e)?Dt:Zt,i=arguments.length<3;return n(e,co(t,4),r,i,hn)},Br.reduceRight=function(e,t,r){var n=Va(e)?zt:Zt,i=arguments.length<3;return n(e,co(t,4),r,i,fn)},Br.repeat=function(e,t,r){return t=(r?wo(e,t,r):t===i)?1:ps(t),Zn(ys(e),t)},Br.replace=function(){var e=arguments,t=ys(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Br.result=function(e,t,r){var n=-1,o=(t=bi(t,e)).length;for(o||(o=1,e=i);++np)return[];var r=g,n=yr(e,g);t=co(t),e-=g;for(var i=Xt(n,t);++r=a)return e;var c=r-fr(n);if(c<1)return n;var l=s?xi(s,0,c).join(""):e.slice(0,c);if(o===i)return l+n;if(s&&(c+=l.length-c),os(o)){if(e.slice(c).search(o)){var u,d=l;for(o.global||(o=Pe(o.source,ys(me.exec(o))+"g")),o.lastIndex=0;u=o.exec(d);)var h=u.index;l=l.slice(0,h===i?c:h)}}else if(e.indexOf(li(o),c)!=c){var f=l.lastIndexOf(o);f>-1&&(l=l.slice(0,f))}return l+n},Br.unescape=function(e){return(e=ys(e))&&Y.test(e)?e.replace(G,gr):e},Br.uniqueId=function(e){var t=++Ne;return ys(e)+t},Br.upperCase=Zs,Br.upperFirst=Ys,Br.each=ya,Br.eachRight=ba,Br.first=Ko,sc(Br,function(){var e={};return wn(Br,(function(t,r){Le.call(Br.prototype,r)||(e[r]=t)})),e}(),{chain:!1}),Br.VERSION="4.17.21",Tt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Br[e].placeholder=Br})),Tt(["drop","take"],(function(e,t){Hr.prototype[e]=function(r){r=r===i?1:Gt(ps(r),0);var n=this.__filtered__&&!t?new Hr(this):this.clone();return n.__filtered__?n.__takeCount__=yr(r,n.__takeCount__):n.__views__.push({size:yr(r,g),type:e+(n.__dir__<0?"Right":"")}),n},Hr.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Tt(["filter","map","takeWhile"],(function(e,t){var r=t+1,n=1==r||3==r;Hr.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:co(e,3),type:r}),t.__filtered__=t.__filtered__||n,t}})),Tt(["head","last"],(function(e,t){var r="take"+(t?"Right":"");Hr.prototype[e]=function(){return this[r](1).value()[0]}})),Tt(["initial","tail"],(function(e,t){var r="drop"+(t?"":"Right");Hr.prototype[e]=function(){return this.__filtered__?new Hr(this):this[r](1)}})),Hr.prototype.compact=function(){return this.filter(nc)},Hr.prototype.find=function(e){return this.filter(e).head()},Hr.prototype.findLast=function(e){return this.reverse().find(e)},Hr.prototype.invokeMap=Yn((function(e,t){return"function"==typeof e?new Hr(this):this.map((function(r){return Cn(r,e,t)}))})),Hr.prototype.reject=function(e){return this.filter(La(co(e)))},Hr.prototype.slice=function(e,t){e=ps(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Hr(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==i&&(r=(t=ps(t))<0?r.dropRight(-t):r.take(t-e)),r)},Hr.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Hr.prototype.toArray=function(){return this.take(g)},wn(Hr.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),n=/^(?:head|last)$/.test(t),o=Br[n?"take"+("last"==t?"Right":""):t],a=n||/^find/.test(t);o&&(Br.prototype[t]=function(){var t=this.__wrapped__,s=n?[1]:arguments,c=t instanceof Hr,l=s[0],u=c||Va(t),d=function(e){var t=o.apply(Br,Nt([e],s));return n&&h?t[0]:t};u&&r&&"function"==typeof l&&1!=l.length&&(c=u=!1);var h=this.__chain__,f=!!this.__actions__.length,p=a&&!h,m=c&&!f;if(!a&&u){t=m?t:new Hr(this);var g=e.apply(t,s);return g.__actions__.push({func:fa,args:[d],thisArg:i}),new $r(g,h)}return p&&m?e.apply(this,s):(g=this.thru(d),p?n?g.value()[0]:g.value():g)})})),Tt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ce[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);Br.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var i=this.value();return t.apply(Va(i)?i:[],e)}return this[r]((function(r){return t.apply(Va(r)?r:[],e)}))}})),wn(Hr.prototype,(function(e,t){var r=Br[t];if(r){var n=r.name+"";Le.call(Cr,n)||(Cr[n]=[]),Cr[n].push({name:t,func:r})}})),Cr[Fi(i,2).name]=[{name:"wrapper",func:i}],Hr.prototype.clone=function(){var e=new Hr(this.__wrapped__);return e.__actions__=Ti(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ti(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ti(this.__views__),e},Hr.prototype.reverse=function(){if(this.__filtered__){var e=new Hr(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Hr.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,r=Va(e),n=t<0,i=r?e.length:0,o=function(e,t,r){var n=-1,i=r.length;for(;++n=this.__values__.length;return{done:e,value:e?i:this.__values__[this.__index__++]}},Br.prototype.plant=function(e){for(var t,r=this;r instanceof Ur;){var n=Bo(r);n.__index__=0,n.__values__=i,t?o.__wrapped__=n:t=n;var o=n;r=r.__wrapped__}return o.__wrapped__=e,t},Br.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Hr){var t=e;return this.__actions__.length&&(t=new Hr(this)),(t=t.reverse()).__actions__.push({func:fa,args:[ea],thisArg:i}),new $r(t,this.__chain__)}return this.thru(ea)},Br.prototype.toJSON=Br.prototype.valueOf=Br.prototype.value=function(){return pi(this.__wrapped__,this.__actions__)},Br.prototype.first=Br.prototype.head,Xe&&(Br.prototype[Xe]=function(){return this}),Br}();mt._=vr,(n=function(){return vr}.call(t,r,t,e))===i||(e.exports=n)}.call(this)},4371:function(e,t,r){var n,i;!function(o,a){"use strict";n=function(){var e=function(){},t="undefined",r=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),n=["trace","debug","info","warn","error"];function i(e,t){var r=e[t];if("function"===typeof r.bind)return r.bind(e);try{return Function.prototype.bind.call(r,e)}catch(n){return function(){return Function.prototype.apply.apply(r,[e,arguments])}}}function o(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function a(n){return"debug"===n&&(n="log"),typeof console!==t&&("trace"===n&&r?o:void 0!==console[n]?i(console,n):void 0!==console.log?i(console,"log"):e)}function s(t,r){for(var i=0;i=0&&r<=a.levels.SILENT))throw"log.setLevel() called with invalid level: "+r;if(o=r,!1!==n&&u(r),s.call(a,r,e),typeof console===t&&r{"use strict";const n=r(7873),i=Symbol("max"),o=Symbol("length"),a=Symbol("lengthCalculator"),s=Symbol("allowStale"),c=Symbol("maxAge"),l=Symbol("dispose"),u=Symbol("noDisposeOnSet"),d=Symbol("lruList"),h=Symbol("cache"),f=Symbol("updateAgeOnGet"),p=()=>1;const m=(e,t,r)=>{const n=e[h].get(t);if(n){const t=n.value;if(g(e,t)){if(y(e,n),!e[s])return}else r&&(e[f]&&(n.value.now=Date.now()),e[d].unshiftNode(n));return t.value}},g=(e,t)=>{if(!t||!t.maxAge&&!e[c])return!1;const r=Date.now()-t.now;return t.maxAge?r>t.maxAge:e[c]&&r>e[c]},v=e=>{if(e[o]>e[i])for(let t=e[d].tail;e[o]>e[i]&&null!==t;){const r=t.prev;y(e,t),t=r}},y=(e,t)=>{if(t){const r=t.value;e[l]&&e[l](r.key,r.value),e[o]-=r.length,e[h].delete(r.key),e[d].removeNode(t)}};class b{constructor(e,t,r,n,i){this.key=e,this.value=t,this.length=r,this.now=n,this.maxAge=i||0}}const w=(e,t,r,n)=>{let i=r.value;g(e,i)&&(y(e,r),e[s]||(i=void 0)),i&&t.call(n,i.value,i.key,e)};e.exports=class{constructor(e){if("number"===typeof e&&(e={max:e}),e||(e={}),e.max&&("number"!==typeof e.max||e.max<0))throw new TypeError("max must be a non-negative number");this[i]=e.max||1/0;const t=e.length||p;if(this[a]="function"!==typeof t?p:t,this[s]=e.stale||!1,e.maxAge&&"number"!==typeof e.maxAge)throw new TypeError("maxAge must be a number");this[c]=e.maxAge||0,this[l]=e.dispose,this[u]=e.noDisposeOnSet||!1,this[f]=e.updateAgeOnGet||!1,this.reset()}set max(e){if("number"!==typeof e||e<0)throw new TypeError("max must be a non-negative number");this[i]=e||1/0,v(this)}get max(){return this[i]}set allowStale(e){this[s]=!!e}get allowStale(){return this[s]}set maxAge(e){if("number"!==typeof e)throw new TypeError("maxAge must be a non-negative number");this[c]=e,v(this)}get maxAge(){return this[c]}set lengthCalculator(e){"function"!==typeof e&&(e=p),e!==this[a]&&(this[a]=e,this[o]=0,this[d].forEach((e=>{e.length=this[a](e.value,e.key),this[o]+=e.length}))),v(this)}get lengthCalculator(){return this[a]}get length(){return this[o]}get itemCount(){return this[d].length}rforEach(e,t){t=t||this;for(let r=this[d].tail;null!==r;){const n=r.prev;w(this,e,r,t),r=n}}forEach(e,t){t=t||this;for(let r=this[d].head;null!==r;){const n=r.next;w(this,e,r,t),r=n}}keys(){return this[d].toArray().map((e=>e.key))}values(){return this[d].toArray().map((e=>e.value))}reset(){this[l]&&this[d]&&this[d].length&&this[d].forEach((e=>this[l](e.key,e.value))),this[h]=new Map,this[d]=new n,this[o]=0}dump(){return this[d].map((e=>!g(this,e)&&{k:e.key,v:e.value,e:e.now+(e.maxAge||0)})).toArray().filter((e=>e))}dumpLru(){return this[d]}set(e,t,r){if((r=r||this[c])&&"number"!==typeof r)throw new TypeError("maxAge must be a number");const n=r?Date.now():0,s=this[a](t,e);if(this[h].has(e)){if(s>this[i])return y(this,this[h].get(e)),!1;const a=this[h].get(e).value;return this[l]&&(this[u]||this[l](e,a.value)),a.now=n,a.maxAge=r,a.value=t,this[o]+=s-a.length,a.length=s,this.get(e),v(this),!0}const f=new b(e,t,s,n,r);return f.length>this[i]?(this[l]&&this[l](e,t),!1):(this[o]+=f.length,this[d].unshift(f),this[h].set(e,this[d].head),v(this),!0)}has(e){if(!this[h].has(e))return!1;const t=this[h].get(e).value;return!g(this,t)}get(e){return m(this,e,!0)}peek(e){return m(this,e,!1)}pop(){const e=this[d].tail;return e?(y(this,e),e.value):null}del(e){y(this,this[h].get(e))}load(e){this.reset();const t=Date.now();for(let r=e.length-1;r>=0;r--){const n=e[r],i=n.e||0;if(0===i)this.set(n.k,n.v);else{const e=i-t;e>0&&this.set(n.k,n.v,e)}}}prune(){this[h].forEach(((e,t)=>m(this,t,!1)))}}},4266:(e,t,r)=>{"use strict";var n=r(9528),i=r(7291),o=r(1176).Buffer,a=new Array(16);function s(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<>>32-t}function l(e,t,r,n,i,o,a){return c(e+(t&r|~t&n)+i+o|0,a)+t|0}function u(e,t,r,n,i,o,a){return c(e+(t&n|r&~n)+i+o|0,a)+t|0}function d(e,t,r,n,i,o,a){return c(e+(t^r^n)+i+o|0,a)+t|0}function h(e,t,r,n,i,o,a){return c(e+(r^(t|~n))+i+o|0,a)+t|0}n(s,i),s.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,n=this._b,i=this._c,o=this._d;r=l(r,n,i,o,e[0],3614090360,7),o=l(o,r,n,i,e[1],3905402710,12),i=l(i,o,r,n,e[2],606105819,17),n=l(n,i,o,r,e[3],3250441966,22),r=l(r,n,i,o,e[4],4118548399,7),o=l(o,r,n,i,e[5],1200080426,12),i=l(i,o,r,n,e[6],2821735955,17),n=l(n,i,o,r,e[7],4249261313,22),r=l(r,n,i,o,e[8],1770035416,7),o=l(o,r,n,i,e[9],2336552879,12),i=l(i,o,r,n,e[10],4294925233,17),n=l(n,i,o,r,e[11],2304563134,22),r=l(r,n,i,o,e[12],1804603682,7),o=l(o,r,n,i,e[13],4254626195,12),i=l(i,o,r,n,e[14],2792965006,17),r=u(r,n=l(n,i,o,r,e[15],1236535329,22),i,o,e[1],4129170786,5),o=u(o,r,n,i,e[6],3225465664,9),i=u(i,o,r,n,e[11],643717713,14),n=u(n,i,o,r,e[0],3921069994,20),r=u(r,n,i,o,e[5],3593408605,5),o=u(o,r,n,i,e[10],38016083,9),i=u(i,o,r,n,e[15],3634488961,14),n=u(n,i,o,r,e[4],3889429448,20),r=u(r,n,i,o,e[9],568446438,5),o=u(o,r,n,i,e[14],3275163606,9),i=u(i,o,r,n,e[3],4107603335,14),n=u(n,i,o,r,e[8],1163531501,20),r=u(r,n,i,o,e[13],2850285829,5),o=u(o,r,n,i,e[2],4243563512,9),i=u(i,o,r,n,e[7],1735328473,14),r=d(r,n=u(n,i,o,r,e[12],2368359562,20),i,o,e[5],4294588738,4),o=d(o,r,n,i,e[8],2272392833,11),i=d(i,o,r,n,e[11],1839030562,16),n=d(n,i,o,r,e[14],4259657740,23),r=d(r,n,i,o,e[1],2763975236,4),o=d(o,r,n,i,e[4],1272893353,11),i=d(i,o,r,n,e[7],4139469664,16),n=d(n,i,o,r,e[10],3200236656,23),r=d(r,n,i,o,e[13],681279174,4),o=d(o,r,n,i,e[0],3936430074,11),i=d(i,o,r,n,e[3],3572445317,16),n=d(n,i,o,r,e[6],76029189,23),r=d(r,n,i,o,e[9],3654602809,4),o=d(o,r,n,i,e[12],3873151461,11),i=d(i,o,r,n,e[15],530742520,16),r=h(r,n=d(n,i,o,r,e[2],3299628645,23),i,o,e[0],4096336452,6),o=h(o,r,n,i,e[7],1126891415,10),i=h(i,o,r,n,e[14],2878612391,15),n=h(n,i,o,r,e[5],4237533241,21),r=h(r,n,i,o,e[12],1700485571,6),o=h(o,r,n,i,e[3],2399980690,10),i=h(i,o,r,n,e[10],4293915773,15),n=h(n,i,o,r,e[1],2240044497,21),r=h(r,n,i,o,e[8],1873313359,6),o=h(o,r,n,i,e[15],4264355552,10),i=h(i,o,r,n,e[6],2734768916,15),n=h(n,i,o,r,e[13],1309151649,21),r=h(r,n,i,o,e[4],4149444226,6),o=h(o,r,n,i,e[11],3174756917,10),i=h(i,o,r,n,e[2],718787259,15),n=h(n,i,o,r,e[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+n|0,this._c=this._c+i|0,this._d=this._d+o|0},s.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=s},2481:(e,t,r)=>{!function(){var t=r(6229),n=r(1793).utf8,i=r(8904),o=r(1793).bin,a=function(e,r){e.constructor==String?e=r&&"binary"===r.encoding?o.stringToBytes(e):n.stringToBytes(e):i(e)?e=Array.prototype.slice.call(e,0):Array.isArray(e)||e.constructor===Uint8Array||(e=e.toString());for(var s=t.bytesToWords(e),c=8*e.length,l=1732584193,u=-271733879,d=-1732584194,h=271733878,f=0;f>>24)|4278255360&(s[f]<<24|s[f]>>>8);s[c>>>5]|=128<>>9<<4)]=c;var p=a._ff,m=a._gg,g=a._hh,v=a._ii;for(f=0;f>>0,u=u+b>>>0,d=d+w>>>0,h=h+x>>>0}return t.endian([l,u,d,h])};a._ff=function(e,t,r,n,i,o,a){var s=e+(t&r|~t&n)+(i>>>0)+a;return(s<>>32-o)+t},a._gg=function(e,t,r,n,i,o,a){var s=e+(t&n|r&~n)+(i>>>0)+a;return(s<>>32-o)+t},a._hh=function(e,t,r,n,i,o,a){var s=e+(t^r^n)+(i>>>0)+a;return(s<>>32-o)+t},a._ii=function(e,t,r,n,i,o,a){var s=e+(r^(t|~n))+(i>>>0)+a;return(s<>>32-o)+t},a._blocksize=16,a._digestsize=16,e.exports=function(e,r){if(void 0===e||null===e)throw new Error("Illegal argument "+e);var n=t.wordsToBytes(a(e,r));return r&&r.asBytes?n:r&&r.asString?o.bytesToString(n):t.bytesToHex(n)}}()},8009:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>o});var n=Number.isNaN||function(e){return"number"===typeof e&&e!==e};function i(e,t){if(e.length!==t.length)return!1;for(var r=0;r{function t(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=t,t.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},4777:(e,t)=>{"use strict";var r=t;function n(e){return 1===e.length?"0"+e:e}function i(e){for(var t="",r=0;r>8,a=255&i;o?r.push(o,a):r.push(a)}return r},r.zero2=n,r.toHex=i,r.encode=function(e,t){return"hex"===t?i(e):e}},9258:(e,t,r)=>{"use strict";var n=function(){if("undefined"!==typeof self)return self;if("undefined"!==typeof window)return window;if("undefined"!==typeof r.g)return r.g;throw new Error("unable to locate global object")}();e.exports=t=n.fetch,n.fetch&&(t.default=n.fetch.bind(n)),t.Headers=n.Headers,t.Request=n.Request,t.Response=n.Response},1520:(e,t,r)=>{var n=r(529);function i(e){if("number"!==typeof e)throw new TypeError("Expected Number, got "+typeof e+" "+e);return Number.isFinite(e)?e+n(e):e}i.indicator=n,e.exports=i},529:e=>{e.exports=function(e){var t=(e=Math.abs(e))%100;if(t>=10&&t<=20)return"th";var r=e%10;return 1===r?"st":2===r?"nd":3===r?"rd":"th"}},8115:function(e,t){var r,n,i;n=[],r=function e(){"use strict";var t="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:{},r=!t.document&&!!t.postMessage,n=t.IS_PAPA_WORKER||!1,i={},o=0,a={parse:function(r,n){var s=(n=n||{}).dynamicTyping||!1;if(x(s)&&(n.dynamicTypingFunction=s,s={}),n.dynamicTyping=s,n.transform=!!x(n.transform)&&n.transform,n.worker&&a.WORKERS_SUPPORTED){var c=function(){if(!a.WORKERS_SUPPORTED)return!1;var r,n,s=(r=t.URL||t.webkitURL||null,n=e.toString(),a.BLOB_URL||(a.BLOB_URL=r.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ","(",n,")();"],{type:"text/javascript"})))),c=new t.Worker(s);return c.onmessage=g,c.id=o++,i[c.id]=c}();return c.userStep=n.step,c.userChunk=n.chunk,c.userComplete=n.complete,c.userError=n.error,n.step=x(n.step),n.chunk=x(n.chunk),n.complete=x(n.complete),n.error=x(n.error),delete n.worker,void c.postMessage({input:r,config:n,workerId:c.id})}var f=null;return a.NODE_STREAM_INPUT,"string"==typeof r?(r=function(e){return 65279===e.charCodeAt(0)?e.slice(1):e}(r),f=n.download?new l(n):new d(n)):!0===r.readable&&x(r.read)&&x(r.on)?f=new h(n):(t.File&&r instanceof File||r instanceof Object)&&(f=new u(n)),f.stream(r)},unparse:function(e,t){var r=!1,n=!0,i=",",o="\r\n",s='"',c=s+s,l=!1,u=null,d=!1;!function(){if("object"==typeof t){if("string"!=typeof t.delimiter||a.BAD_DELIMITERS.filter((function(e){return-1!==t.delimiter.indexOf(e)})).length||(i=t.delimiter),("boolean"==typeof t.quotes||"function"==typeof t.quotes||Array.isArray(t.quotes))&&(r=t.quotes),"boolean"!=typeof t.skipEmptyLines&&"string"!=typeof t.skipEmptyLines||(l=t.skipEmptyLines),"string"==typeof t.newline&&(o=t.newline),"string"==typeof t.quoteChar&&(s=t.quoteChar),"boolean"==typeof t.header&&(n=t.header),Array.isArray(t.columns)){if(0===t.columns.length)throw new Error("Option columns is empty");u=t.columns}void 0!==t.escapeChar&&(c=t.escapeChar+s),("boolean"==typeof t.escapeFormulae||t.escapeFormulae instanceof RegExp)&&(d=t.escapeFormulae instanceof RegExp?t.escapeFormulae:/^[=+\-@\t\r].*$/)}}();var h=new RegExp(p(s),"g");if("string"==typeof e&&(e=JSON.parse(e)),Array.isArray(e)){if(!e.length||Array.isArray(e[0]))return f(null,e,l);if("object"==typeof e[0])return f(u||Object.keys(e[0]),e,l)}else if("object"==typeof e)return"string"==typeof e.data&&(e.data=JSON.parse(e.data)),Array.isArray(e.data)&&(e.fields||(e.fields=e.meta&&e.meta.fields||u),e.fields||(e.fields=Array.isArray(e.data[0])?e.fields:"object"==typeof e.data[0]?Object.keys(e.data[0]):[]),Array.isArray(e.data[0])||"object"==typeof e.data[0]||(e.data=[e.data])),f(e.fields||[],e.data||[],l);throw new Error("Unable to serialize unrecognized input");function f(e,t,r){var a="";"string"==typeof e&&(e=JSON.parse(e)),"string"==typeof t&&(t=JSON.parse(t));var s=Array.isArray(e)&&0=this._config.preview;if(n)t.postMessage({results:s,workerId:a.WORKER_ID,finished:l});else if(x(this._config.chunk)&&!r){if(this._config.chunk(s,this._handle),this._handle.paused()||this._handle.aborted())return void(this._halted=!0);s=void 0,this._completeResults=void 0}return this._config.step||this._config.chunk||(this._completeResults.data=this._completeResults.data.concat(s.data),this._completeResults.errors=this._completeResults.errors.concat(s.errors),this._completeResults.meta=s.meta),this._completed||!l||!x(this._config.complete)||s&&s.meta.aborted||(this._config.complete(this._completeResults,this._input),this._completed=!0),l||s&&s.meta.paused||this._nextChunk(),s}this._halted=!0},this._sendError=function(e){x(this._config.error)?this._config.error(e):n&&this._config.error&&t.postMessage({workerId:a.WORKER_ID,error:e,finished:!1})}}function l(e){var t;(e=e||{}).chunkSize||(e.chunkSize=a.RemoteChunkSize),c.call(this,e),this._nextChunk=r?function(){this._readChunk(),this._chunkLoaded()}:function(){this._readChunk()},this.stream=function(e){this._input=e,this._nextChunk()},this._readChunk=function(){if(this._finished)this._chunkLoaded();else{if(t=new XMLHttpRequest,this._config.withCredentials&&(t.withCredentials=this._config.withCredentials),r||(t.onload=w(this._chunkLoaded,this),t.onerror=w(this._chunkError,this)),t.open(this._config.downloadRequestBody?"POST":"GET",this._input,!r),this._config.downloadRequestHeaders){var e=this._config.downloadRequestHeaders;for(var n in e)t.setRequestHeader(n,e[n])}if(this._config.chunkSize){var i=this._start+this._config.chunkSize-1;t.setRequestHeader("Range","bytes="+this._start+"-"+i)}try{t.send(this._config.downloadRequestBody)}catch(e){this._chunkError(e.message)}r&&0===t.status&&this._chunkError()}},this._chunkLoaded=function(){4===t.readyState&&(t.status<200||400<=t.status?this._chunkError():(this._start+=this._config.chunkSize?this._config.chunkSize:t.responseText.length,this._finished=!this._config.chunkSize||this._start>=function(e){var t=e.getResponseHeader("Content-Range");return null===t?-1:parseInt(t.substring(t.lastIndexOf("/")+1))}(t),this.parseChunk(t.responseText)))},this._chunkError=function(e){var r=t.statusText||e;this._sendError(new Error(r))}}function u(e){var t,r;(e=e||{}).chunkSize||(e.chunkSize=a.LocalChunkSize),c.call(this,e);var n="undefined"!=typeof FileReader;this.stream=function(e){this._input=e,r=e.slice||e.webkitSlice||e.mozSlice,n?((t=new FileReader).onload=w(this._chunkLoaded,this),t.onerror=w(this._chunkError,this)):t=new FileReaderSync,this._nextChunk()},this._nextChunk=function(){this._finished||this._config.preview&&!(this._rowCount=this._input.size,this.parseChunk(e.target.result)},this._chunkError=function(){this._sendError(t.error)}}function d(e){var t;c.call(this,e=e||{}),this.stream=function(e){return t=e,this._nextChunk()},this._nextChunk=function(){if(!this._finished){var e,r=this._config.chunkSize;return r?(e=t.substring(0,r),t=t.substring(r)):(e=t,t=""),this._finished=!t,this.parseChunk(e)}}}function h(e){c.call(this,e=e||{});var t=[],r=!0,n=!1;this.pause=function(){c.prototype.pause.apply(this,arguments),this._input.pause()},this.resume=function(){c.prototype.resume.apply(this,arguments),this._input.resume()},this.stream=function(e){this._input=e,this._input.on("data",this._streamData),this._input.on("end",this._streamEnd),this._input.on("error",this._streamError)},this._checkIsFinished=function(){n&&1===t.length&&(this._finished=!0)},this._nextChunk=function(){this._checkIsFinished(),t.length?this.parseChunk(t.shift()):r=!0},this._streamData=w((function(e){try{t.push("string"==typeof e?e:e.toString(this._config.encoding)),r&&(r=!1,this._checkIsFinished(),this.parseChunk(t.shift()))}catch(e){this._streamError(e)}}),this),this._streamError=w((function(e){this._streamCleanUp(),this._sendError(e)}),this),this._streamEnd=w((function(){this._streamCleanUp(),n=!0,this._streamData("")}),this),this._streamCleanUp=w((function(){this._input.removeListener("data",this._streamData),this._input.removeListener("end",this._streamEnd),this._input.removeListener("error",this._streamError)}),this)}function f(e){var t,r,n,i=Math.pow(2,53),o=-i,s=/^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/,c=/^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/,l=this,u=0,d=0,h=!1,f=!1,g=[],v={data:[],errors:[],meta:{}};if(x(e.step)){var y=e.step;e.step=function(t){if(v=t,k())_();else{if(_(),0===v.data.length)return;u+=t.data.length,e.preview&&u>e.preview?r.abort():(v.data=v.data[0],y(v,l))}}}function w(t){return"greedy"===e.skipEmptyLines?""===t.join("").trim():1===t.length&&0===t[0].length}function _(){return v&&n&&(E("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+a.DefaultDelimiter+"'"),n=!1),e.skipEmptyLines&&(v.data=v.data.filter((function(e){return!w(e)}))),k()&&function(){if(v)if(Array.isArray(v.data[0])){for(var t=0;k()&&t=g.length?"__parsed_extra":g[n]),e.transform&&(a=e.transform(a,o)),a=S(o,a),"__parsed_extra"===o?(i[o]=i[o]||[],i[o].push(a)):i[o]=a}return e.header&&(n>g.length?E("FieldMismatch","TooManyFields","Too many fields: expected "+g.length+" fields but parsed "+n,d+r):n=n.length/2?"\r\n":"\r"}(i,c)),n=!1,e.delimiter)x(e.delimiter)&&(e.delimiter=e.delimiter(i),v.meta.delimiter=e.delimiter);else{var l=function(t,r,n,i,o){var s,c,l,u;o=o||[",","\t","|",";",a.RECORD_SEP,a.UNIT_SEP];for(var d=0;d=s)return K(!0)}else for(B=u,u++;;){if(-1===(B=a.indexOf(t,B+1)))return f||_.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:w.length,index:u}),V();if(B===m-1)return V(a.substring(u,B).replace(z,t));if(t!==l||a[B+1]!==l){if(t===l||0===B||a[B-1]!==l){-1!==N&&N=s)return K(!0);break}_.push({type:"Quotes",code:"InvalidQuotes",message:"Trailing quote on quoted field is malformed",row:w.length,index:u}),B++}}else B++}return V();function $(e){w.push(e),S=u}function H(e){var t=0;if(-1!==e){var r=a.substring(B+1,e);r&&""===r.trim()&&(t=r.length)}return t}function V(e){return f||(void 0===e&&(e=a.substring(u)),k.push(e),u=m,$(k),b&&W()),K()}function q(e){u=e,$(k),k=[],D=a.indexOf(n,u)}function K(e){return{data:w,errors:_,meta:{delimiter:r,linebreak:n,aborted:d,truncated:!!e,cursor:S+(h||0)}}}function W(){o(K()),w=[],_=[]}},this.abort=function(){d=!0},this.getCharIndex=function(){return u}}function g(e){var t=e.data,r=i[t.workerId],n=!1;if(t.error)r.userError(t.error,t.file);else if(t.results&&t.results.data){var o={abort:function(){n=!0,v(t.workerId,{data:[],errors:[],meta:{aborted:!0}})},pause:y,resume:y};if(x(r.userStep)){for(var a=0;a{t.pbkdf2=r(7682),t.pbkdf2Sync=r(4038)},7682:(e,t,r)=>{var n,i,o=r(1176).Buffer,a=r(8177),s=r(1811),c=r(4038),l=r(4648),u=r.g.crypto&&r.g.crypto.subtle,d={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},h=[];function f(){return i||(i=r.g.process&&r.g.process.nextTick?r.g.process.nextTick:r.g.queueMicrotask?r.g.queueMicrotask:r.g.setImmediate?r.g.setImmediate:r.g.setTimeout)}function p(e,t,r,n,i){return u.importKey("raw",e,{name:"PBKDF2"},!1,["deriveBits"]).then((function(e){return u.deriveBits({name:"PBKDF2",salt:t,iterations:r,hash:{name:i}},e,n<<3)})).then((function(e){return o.from(e)}))}e.exports=function(e,t,i,m,g,v){"function"===typeof g&&(v=g,g=void 0);var y=d[(g=g||"sha1").toLowerCase()];if(y&&"function"===typeof r.g.Promise){if(a(i,m),e=l(e,s,"Password"),t=l(t,s,"Salt"),"function"!==typeof v)throw new Error("No callback provided to pbkdf2");!function(e,t){e.then((function(e){f()((function(){t(null,e)}))}),(function(e){f()((function(){t(e)}))}))}(function(e){if(r.g.process&&!r.g.process.browser)return Promise.resolve(!1);if(!u||!u.importKey||!u.deriveBits)return Promise.resolve(!1);if(void 0!==h[e])return h[e];var t=p(n=n||o.alloc(8),n,10,128,e).then((function(){return!0})).catch((function(){return!1}));return h[e]=t,t}(y).then((function(r){return r?p(e,t,i,m,y):c(e,t,i,m,g)})),v)}else f()((function(){var r;try{r=c(e,t,i,m,g)}catch(n){return v(n)}v(null,r)}))}},1811:(e,t,r)=>{var n,i=r(9996);if(r.g.process&&r.g.process.browser)n="utf-8";else if(r.g.process&&r.g.process.version){n=parseInt(i.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary"}else n="utf-8";e.exports=n},8177:e=>{var t=Math.pow(2,30)-1;e.exports=function(e,r){if("number"!==typeof e)throw new TypeError("Iterations not a number");if(e<0)throw new TypeError("Bad iterations");if("number"!==typeof r)throw new TypeError("Key length not a number");if(r<0||r>t||r!==r)throw new TypeError("Bad key length")}},4038:(e,t,r)=>{var n=r(8686),i=r(7409),o=r(2308),a=r(1176).Buffer,s=r(8177),c=r(1811),l=r(4648),u=a.alloc(128),d={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function h(e,t,r){var s=function(e){function t(t){return o(e).update(t).digest()}function r(e){return(new i).update(e).digest()}return"rmd160"===e||"ripemd160"===e?r:"md5"===e?n:t}(e),c="sha512"===e||"sha384"===e?128:64;t.length>c?t=s(t):t.length{var n=r(1176).Buffer;e.exports=function(e,t,r){if(n.isBuffer(e))return e;if("string"===typeof e)return n.from(e,t);if(ArrayBuffer.isView(e))return n.from(e.buffer);throw new TypeError(r+" must be a string, a Buffer, a typed array or a DataView")}},649:function(e){e.exports=function(){var e=[],t=[],r={},n={},i={};function o(e){return"string"===typeof e?new RegExp("^"+e+"$","i"):e}function a(e,t){return e===t?t:e===e.toLowerCase()?t.toLowerCase():e===e.toUpperCase()?t.toUpperCase():e[0]===e[0].toUpperCase()?t.charAt(0).toUpperCase()+t.substr(1).toLowerCase():t.toLowerCase()}function s(e,t){return e.replace(/\$(\d{1,2})/g,(function(e,r){return t[r]||""}))}function c(e,t){return e.replace(t[0],(function(r,n){var i=s(t[1],arguments);return a(""===r?e[n-1]:r,i)}))}function l(e,t,n){if(!e.length||r.hasOwnProperty(e))return t;for(var i=n.length;i--;){var o=n[i];if(o[0].test(t))return c(t,o)}return t}function u(e,t,r){return function(n){var i=n.toLowerCase();return t.hasOwnProperty(i)?a(n,i):e.hasOwnProperty(i)?a(n,e[i]):l(i,n,r)}}function d(e,t,r,n){return function(n){var i=n.toLowerCase();return!!t.hasOwnProperty(i)||!e.hasOwnProperty(i)&&l(i,i,r)===i}}function h(e,t,r){return(r?t+" ":"")+(1===t?h.singular(e):h.plural(e))}return h.plural=u(i,n,e),h.isPlural=d(i,n,e),h.singular=u(n,i,t),h.isSingular=d(n,i,t),h.addPluralRule=function(t,r){e.push([o(t),r])},h.addSingularRule=function(e,r){t.push([o(e),r])},h.addUncountableRule=function(e){"string"!==typeof e?(h.addPluralRule(e,"$0"),h.addSingularRule(e,"$0")):r[e.toLowerCase()]=!0},h.addIrregularRule=function(e,t){t=t.toLowerCase(),e=e.toLowerCase(),i[e]=t,n[t]=e},[["I","we"],["me","us"],["he","they"],["she","they"],["them","them"],["myself","ourselves"],["yourself","yourselves"],["itself","themselves"],["herself","themselves"],["himself","themselves"],["themself","themselves"],["is","are"],["was","were"],["has","have"],["this","these"],["that","those"],["echo","echoes"],["dingo","dingoes"],["volcano","volcanoes"],["tornado","tornadoes"],["torpedo","torpedoes"],["genus","genera"],["viscus","viscera"],["stigma","stigmata"],["stoma","stomata"],["dogma","dogmata"],["lemma","lemmata"],["schema","schemata"],["anathema","anathemata"],["ox","oxen"],["axe","axes"],["die","dice"],["yes","yeses"],["foot","feet"],["eave","eaves"],["goose","geese"],["tooth","teeth"],["quiz","quizzes"],["human","humans"],["proof","proofs"],["carve","carves"],["valve","valves"],["looey","looies"],["thief","thieves"],["groove","grooves"],["pickaxe","pickaxes"],["passerby","passersby"]].forEach((function(e){return h.addIrregularRule(e[0],e[1])})),[[/s?$/i,"s"],[/[^\u0000-\u007F]$/i,"$0"],[/([^aeiou]ese)$/i,"$1"],[/(ax|test)is$/i,"$1es"],[/(alias|[^aou]us|t[lm]as|gas|ris)$/i,"$1es"],[/(e[mn]u)s?$/i,"$1s"],[/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i,"$1"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1i"],[/(alumn|alg|vertebr)(?:a|ae)$/i,"$1ae"],[/(seraph|cherub)(?:im)?$/i,"$1im"],[/(her|at|gr)o$/i,"$1oes"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i,"$1a"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i,"$1a"],[/sis$/i,"ses"],[/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i,"$1$2ves"],[/([^aeiouy]|qu)y$/i,"$1ies"],[/([^ch][ieo][ln])ey$/i,"$1ies"],[/(x|ch|ss|sh|zz)$/i,"$1es"],[/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i,"$1ices"],[/\b((?:tit)?m|l)(?:ice|ouse)$/i,"$1ice"],[/(pe)(?:rson|ople)$/i,"$1ople"],[/(child)(?:ren)?$/i,"$1ren"],[/eaux$/i,"$0"],[/m[ae]n$/i,"men"],["thou","you"]].forEach((function(e){return h.addPluralRule(e[0],e[1])})),[[/s$/i,""],[/(ss)$/i,"$1"],[/(wi|kni|(?:after|half|high|low|mid|non|night|[^\w]|^)li)ves$/i,"$1fe"],[/(ar|(?:wo|[ae])l|[eo][ao])ves$/i,"$1f"],[/ies$/i,"y"],[/\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i,"$1ie"],[/\b(mon|smil)ies$/i,"$1ey"],[/\b((?:tit)?m|l)ice$/i,"$1ouse"],[/(seraph|cherub)im$/i,"$1"],[/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i,"$1"],[/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i,"$1sis"],[/(movie|twelve|abuse|e[mn]u)s$/i,"$1"],[/(test)(?:is|es)$/i,"$1is"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1us"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i,"$1um"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i,"$1on"],[/(alumn|alg|vertebr)ae$/i,"$1a"],[/(cod|mur|sil|vert|ind)ices$/i,"$1ex"],[/(matr|append)ices$/i,"$1ix"],[/(pe)(rson|ople)$/i,"$1rson"],[/(child)ren$/i,"$1"],[/(eau)x?$/i,"$1"],[/men$/i,"man"]].forEach((function(e){return h.addSingularRule(e[0],e[1])})),["adulthood","advice","agenda","aid","aircraft","alcohol","ammo","analytics","anime","athletics","audio","bison","blood","bream","buffalo","butter","carp","cash","chassis","chess","clothing","cod","commerce","cooperation","corps","debris","diabetes","digestion","elk","energy","equipment","excretion","expertise","firmware","flounder","fun","gallows","garbage","graffiti","hardware","headquarters","health","herpes","highjinks","homework","housework","information","jeans","justice","kudos","labour","literature","machinery","mackerel","mail","media","mews","moose","music","mud","manga","news","only","personnel","pike","plankton","pliers","police","pollution","premises","rain","research","rice","salmon","scissors","series","sewage","shambles","shrimp","software","species","staff","swine","tennis","traffic","transportation","trout","tuna","wealth","welfare","whiting","wildebeest","wildlife","you",/pok[e\xe9]mon$/i,/[^aeiou]ese$/i,/deer$/i,/fish$/i,/measles$/i,/o[iu]s$/i,/pox$/i,/sheep$/i].forEach(h.addUncountableRule),h}()},9996:e=>{var t,r,n=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function a(e){if(t===setTimeout)return setTimeout(e,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}!function(){try{t="function"===typeof setTimeout?setTimeout:i}catch(e){t=i}try{r="function"===typeof clearTimeout?clearTimeout:o}catch(e){r=o}}();var s,c=[],l=!1,u=-1;function d(){l&&s&&(l=!1,s.length?c=s.concat(c):u=-1,c.length&&h())}function h(){if(!l){var e=a(d);l=!0;for(var t=c.length;t;){for(s=c,c=[];++u1)for(var r=1;r{"use strict";var n=r(4592),i=r(9175),o=Object.prototype.hasOwnProperty;function a(e){return e&&"EPROMISERETRY"===e.code&&o.call(e,"retried")}e.exports=function(e,t){var r,o;return"object"===typeof e&&"function"===typeof t&&(r=t,t=e,e=r),o=i.operation(t),new Promise((function(t,r){o.attempt((function(i){Promise.resolve().then((function(){return e((function(e){throw a(e)&&(e=e.retried),n(new Error("Retrying"),"EPROMISERETRY",{retried:e})}),i)})).then(t,(function(e){a(e)&&(e=e.retried,o.retry(e||new Error))||r(e)}))}))}))}},7956:(e,t,r)=>{"use strict";var n=r(1395);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,r,i,o,a){if(a!==n){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return r.PropTypes=r,r}},9922:(e,t,r)=>{e.exports=r(7956)()},1395:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},6527:(e,t)=>{var r,n,i,o=function(){var e=function(e,t){var r=e,n=o[t],i=null,a=0,s=null,c=[],l={},u=function(e,t){i=function(e){for(var t=new Array(e),r=0;r=7&&m(e),null==s&&(s=A(r,n,c)),S(s,t)},d=function(e,t){for(var r=-1;r<=7;r+=1)if(!(e+r<=-1||a<=e+r))for(var n=-1;n<=7;n+=1)t+n<=-1||a<=t+n||(i[e+r][t+n]=0<=r&&r<=6&&(0==n||6==n)||0<=n&&n<=6&&(0==r||6==r)||2<=r&&r<=4&&2<=n&&n<=4)},h=function(){for(var e=8;e>n&1);i[Math.floor(n/3)][n%3+a-8-3]=o}for(n=0;n<18;n+=1){o=!e&&1==(t>>n&1);i[n%3+a-8-3][Math.floor(n/3)]=o}},k=function(e,t){for(var r=n<<3|t,o=p.getBCHTypeInfo(r),s=0;s<15;s+=1){var c=!e&&1==(o>>s&1);s<6?i[s][8]=c:s<8?i[s+1][8]=c:i[a-15+s][8]=c}for(s=0;s<15;s+=1){c=!e&&1==(o>>s&1);s<8?i[8][a-s-1]=c:s<9?i[8][15-s-1+1]=c:i[8][15-s-1]=c}i[a-8][8]=!e},S=function(e,t){for(var r=-1,n=a-1,o=7,s=0,c=p.getMaskFunction(t),l=a-1;l>0;l-=2)for(6==l&&(l-=1);;){for(var u=0;u<2;u+=1)if(null==i[n][l-u]){var d=!1;s>>o&1)),c(n,l-u)&&(d=!d),i[n][l-u]=d,-1==(o-=1)&&(s+=1,o=7)}if((n+=r)<0||a<=n){n-=r,r=-r;break}}},A=function(e,t,r){for(var n=v.getRSBlocks(e,t),i=y(),o=0;o8*s)throw"code length overflow. ("+i.getLengthInBits()+">"+8*s+")";for(i.getLengthInBits()+4<=8*s&&i.put(0,4);i.getLengthInBits()%8!=0;)i.putBit(!1);for(;!(i.getLengthInBits()>=8*s)&&(i.put(236,8),!(i.getLengthInBits()>=8*s));)i.put(17,8);return function(e,t){for(var r=0,n=0,i=0,o=new Array(t.length),a=new Array(t.length),s=0;s=0?h.getAt(f):0}}var m=0;for(u=0;un)&&(e=n,t=r)}return t}())},l.createTableTag=function(e,t){e=e||2;var r="";r+='";for(var i=0;i';r+=""}return r+="",r+="
"},l.createSvgTag=function(e,t,r,n){var i={};"object"==typeof arguments[0]&&(e=(i=arguments[0]).cellSize,t=i.margin,r=i.alt,n=i.title),e=e||2,t="undefined"==typeof t?4*e:t,(r="string"===typeof r?{text:r}:r||{}).text=r.text||null,r.id=r.text?r.id||"qrcode-description":null,(n="string"===typeof n?{text:n}:n||{}).text=n.text||null,n.id=n.text?n.id||"qrcode-title":null;var o,a,s,c,u=l.getModuleCount()*e+2*t,d="";for(c="l"+e+",0 0,"+e+" -"+e+",0 0,-"+e+"z ",d+=''+P(n.text)+"":"",d+=r.text?''+P(r.text)+"":"",d+='',d+='":t+=">";break;case"&":t+="&";break;case'"':t+=""";break;default:t+=n}}return t};return l.createASCII=function(e,t){if((e=e||1)<2)return function(e){e="undefined"==typeof e?2:e;var t,r,n,i,o,a=1*l.getModuleCount()+2*e,s=e,c=a-e,u={"\u2588\u2588":"\u2588","\u2588 ":"\u2580"," \u2588":"\u2584"," ":" "},d={"\u2588\u2588":"\u2580","\u2588 ":"\u2580"," \u2588":" "," ":" "},h="";for(t=0;t=c?d[o]:u[o];h+="\n"}return a%2&&e>0?h.substring(0,h.length-a-1)+Array(a+1).join("\u2580"):h.substring(0,h.length-1)}(t);e-=1,t="undefined"==typeof t?2*e:t;var r,n,i,o,a=l.getModuleCount()*e+2*t,s=t,c=a-t,u=Array(e+1).join("\u2588\u2588"),d=Array(e+1).join(" "),h="",f="";for(r=0;r>>8),t.push(255&a)):t.push(n)}}return t}};var t=1,r=2,n=4,i=8,o={L:1,M:0,Q:3,H:2},a=0,s=1,c=2,l=3,u=4,d=5,h=6,f=7,p=function(){var e=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],o=1335,p=7973,v={},y=function(e){for(var t=0;0!=e;)t+=1,e>>>=1;return t};return v.getBCHTypeInfo=function(e){for(var t=e<<10;y(t)-y(o)>=0;)t^=o<=0;)t^=p<5&&(r+=3+o-5)}for(n=0;n=256;)t-=255;return e[t]}};return n}();function g(e,t){if("undefined"==typeof e.length)throw e.length+"/"+t;var r=function(){for(var r=0;r>>7-t%8&1)},put:function(e,t){for(var n=0;n>>t-n-1&1))},getLengthInBits:function(){return t},putBit:function(r){var n=Math.floor(t/8);e.length<=n&&e.push(0),r&&(e[n]|=128>>>t%8),t+=1}};return r},b=function(e){var r=t,n=e,i={getMode:function(){return r},getLength:function(e){return n.length},write:function(e){for(var t=n,r=0;r+2>>8&255)+(255&n),e.put(n,13),r+=2}if(r>>8)},writeBytes:function(e,r,n){r=r||0,n=n||e.length;for(var i=0;i0&&(t+=","),t+=e[r];return t+="]"}};return t},S=function(e){var t=e,r=0,n=0,i=0,o={read:function(){for(;i<8;){if(r>=t.length){if(0==i)return-1;throw"unexpected end of file./"+i}var e=t.charAt(r);if(r+=1,"="==e)return i=0,-1;e.match(/^\s$/)||(n=n<<6|a(e.charCodeAt(0)),i+=6)}var o=n>>>i-8&255;return i-=8,o}},a=function(e){if(65<=e&&e<=90)return e-65;if(97<=e&&e<=122)return e-97+26;if(48<=e&&e<=57)return e-48+52;if(43==e)return 62;if(47==e)return 63;throw"c:"+e};return o},E=function(e,t,r){for(var n=function(e,t){var r=e,n=t,i=new Array(e*t),o={setPixel:function(e,t,n){i[t*r+e]=n},write:function(e){e.writeString("GIF87a"),e.writeShort(r),e.writeShort(n),e.writeByte(128),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(255),e.writeByte(255),e.writeByte(255),e.writeString(","),e.writeShort(0),e.writeShort(0),e.writeShort(r),e.writeShort(n),e.writeByte(0);var t=a(2);e.writeByte(2);for(var i=0;t.length-i>255;)e.writeByte(255),e.writeBytes(t,i,255),i+=255;e.writeByte(t.length-i),e.writeBytes(t,i,t.length-i),e.writeByte(0),e.writeString(";")}},a=function(e){for(var t=1<>>i!=0)throw"length over";for(;r+i>=8;)t.writeByte(255&(e<>>=8-r,n=0,r=0;n|=e<0&&t.writeByte(n)}}}(c);l.write(t,n);var u=0,d=String.fromCharCode(i[u]);for(u+=1;u=6;)o(e>>>t-6),t-=6},i.flush=function(){if(t>0&&(o(e<<6-t),e=0,t=0),r%3!=0)for(var i=3-r%3,a=0;a>6,128|63&n):n<55296||n>=57344?t.push(224|n>>12,128|n>>6&63,128|63&n):(r++,n=65536+((1023&n)<<10|1023&e.charCodeAt(r)),t.push(240|n>>18,128|n>>12&63,128|n>>6&63,128|63&n))}return t}(e)},n=[],void 0===(i="function"===typeof(r=function(){return o})?r.apply(t,n):r)||(e.exports=i)},693:(e,t,r)=>{"use strict";var n=r(4082),i=r(2360);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r",t=le.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,r,n){MSApp.execUnsafeLocalFunction((function(){return ue(e,t)}))}:ue);function he(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&3===r.nodeType)return void(r.nodeValue=t)}e.textContent=t}var fe={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},pe=["Webkit","ms","Moz","O"];function me(e,t,r){return null==t||"boolean"===typeof t||""===t?"":r||"number"!==typeof t||0===t||fe.hasOwnProperty(e)&&fe[e]?(""+t).trim():t+"px"}function ge(e,t){for(var r in e=e.style,t)if(t.hasOwnProperty(r)){var n=0===r.indexOf("--"),i=me(r,t[r],n);"float"===r&&(r="cssFloat"),n?e.setProperty(r,i):e[r]=i}}Object.keys(fe).forEach((function(e){pe.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),fe[t]=fe[e]}))}));var ve=D({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ye(e,t){if(t){if(ve[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(o(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(o(60));if("object"!==typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(o(61))}if(null!=t.style&&"object"!==typeof t.style)throw Error(o(62))}}function be(e,t){if(-1===e.indexOf("-"))return"string"===typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var we=null;function xe(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var _e=null,ke=null,Se=null;function Ee(e){if(e=bi(e)){if("function"!==typeof _e)throw Error(o(280));var t=e.stateNode;t&&(t=xi(t),_e(e.stateNode,e.type,t))}}function Ae(e){ke?Se?Se.push(e):Se=[e]:ke=e}function Pe(){if(ke){var e=ke,t=Se;if(Se=ke=null,Ee(e),t)for(e=0;e>>=0,0===e?32:31-(st(e)/ct|0)|0},st=Math.log,ct=Math.LN2;var lt=64,ut=4194304;function dt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ht(e,t){var r=e.pendingLanes;if(0===r)return 0;var n=0,i=e.suspendedLanes,o=e.pingedLanes,a=268435455&r;if(0!==a){var s=a&~i;0!==s?n=dt(s):0!==(o&=a)&&(n=dt(o))}else 0!==(a=r&~i)?n=dt(a):0!==o&&(n=dt(o));if(0===n)return 0;if(0!==t&&t!==n&&0===(t&i)&&((i=n&-n)>=(o=t&-t)||16===i&&0!==(4194240&o)))return t;if(0!==(4&n)&&(n|=16&r),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=n;0r;r++)t.push(e);return t}function vt(e,t,r){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-at(t)]=r}function yt(e,t){var r=e.entangledLanes|=t;for(e=e.entanglements;r;){var n=31-at(r),i=1<=Mr),Dr=String.fromCharCode(32),zr=!1;function Br(e,t){switch(e){case"keyup":return-1!==Rr.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Fr(e){return"object"===typeof(e=e.detail)&&"data"in e?e.data:null}var Ur=!1;var $r={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Hr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!$r[e.type]:"textarea"===t}function Vr(e,t,r,n){Ae(n),0<(t=Kn(t,"onChange")).length&&(r=new lr("onChange","change",null,r,n),e.push({event:r,listeners:t}))}var qr=null,Kr=null;function Wr(e){zn(e,0)}function Gr(e){if(W(wi(e)))return e}function Zr(e,t){if("change"===e)return t}var Yr=!1;if(u){var Xr;if(u){var Jr="oninput"in document;if(!Jr){var Qr=document.createElement("div");Qr.setAttribute("oninput","return;"),Jr="function"===typeof Qr.oninput}Xr=Jr}else Xr=!1;Yr=Xr&&(!document.documentMode||9=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=ln(n)}}function dn(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?dn(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function hn(){for(var e=window,t=G();t instanceof e.HTMLIFrameElement;){try{var r="string"===typeof t.contentWindow.location.href}catch(n){r=!1}if(!r)break;t=G((e=t.contentWindow).document)}return t}function fn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function pn(e){var t=hn(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&dn(r.ownerDocument.documentElement,r)){if(null!==n&&fn(r))if(t=n.start,void 0===(e=n.end)&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if((e=(t=r.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var i=r.textContent.length,o=Math.min(n.start,i);n=void 0===n.end?o:Math.min(n.end,i),!e.extend&&o>n&&(i=n,n=o,o=i),i=un(r,o);var a=un(r,n);i&&a&&(1!==e.rangeCount||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&((t=t.createRange()).setStart(i.node,i.offset),e.removeAllRanges(),o>n?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}for(t=[],e=r;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"===typeof r.focus&&r.focus(),r=0;r=document.documentMode,gn=null,vn=null,yn=null,bn=!1;function wn(e,t,r){var n=r.window===r?r.document:9===r.nodeType?r:r.ownerDocument;bn||null==gn||gn!==G(n)||("selectionStart"in(n=gn)&&fn(n)?n={start:n.selectionStart,end:n.selectionEnd}:n={anchorNode:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset},yn&&cn(yn,n)||(yn=n,0<(n=Kn(vn,"onSelect")).length&&(t=new lr("onSelect","select",null,t,r),e.push({event:t,listeners:n}),t.target=gn)))}function xn(e,t){var r={};return r[e.toLowerCase()]=t.toLowerCase(),r["Webkit"+e]="webkit"+t,r["Moz"+e]="moz"+t,r}var _n={animationend:xn("Animation","AnimationEnd"),animationiteration:xn("Animation","AnimationIteration"),animationstart:xn("Animation","AnimationStart"),transitionend:xn("Transition","TransitionEnd")},kn={},Sn={};function En(e){if(kn[e])return kn[e];if(!_n[e])return e;var t,r=_n[e];for(t in r)if(r.hasOwnProperty(t)&&t in Sn)return kn[e]=r[t];return e}u&&(Sn=document.createElement("div").style,"AnimationEvent"in window||(delete _n.animationend.animation,delete _n.animationiteration.animation,delete _n.animationstart.animation),"TransitionEvent"in window||delete _n.transitionend.transition);var An=En("animationend"),Pn=En("animationiteration"),On=En("animationstart"),Tn=En("transitionend"),Cn=new Map,jn="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Rn(e,t){Cn.set(e,t),c(t,[e])}for(var In=0;Inki||(e.current=_i[ki],_i[ki]=null,ki--)}function Ai(e,t){ki++,_i[ki]=e.current,e.current=t}var Pi={},Oi=Si(Pi),Ti=Si(!1),Ci=Pi;function ji(e,t){var r=e.type.contextTypes;if(!r)return Pi;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var i,o={};for(i in r)o[i]=t[i];return n&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function Ri(e){return null!==(e=e.childContextTypes)&&void 0!==e}function Ii(){Ei(Ti),Ei(Oi)}function Mi(e,t,r){if(Oi.current!==Pi)throw Error(o(168));Ai(Oi,t),Ai(Ti,r)}function Li(e,t,r){var n=e.stateNode;if(t=t.childContextTypes,"function"!==typeof n.getChildContext)return r;for(var i in n=n.getChildContext())if(!(i in t))throw Error(o(108,H(e)||"Unknown",i));return D({},r,n)}function Ni(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Pi,Ci=Oi.current,Ai(Oi,e),Ai(Ti,Ti.current),!0}function Di(e,t,r){var n=e.stateNode;if(!n)throw Error(o(169));r?(e=Li(e,t,Ci),n.__reactInternalMemoizedMergedChildContext=e,Ei(Ti),Ei(Oi),Ai(Oi,e)):Ei(Ti),Ai(Ti,r)}var zi=null,Bi=!1,Fi=!1;function Ui(e){null===zi?zi=[e]:zi.push(e)}function $i(){if(!Fi&&null!==zi){Fi=!0;var e=0,t=bt;try{var r=zi;for(bt=1;e>=a,i-=a,Yi=1<<32-at(t)+i|r<m?(g=d,d=null):g=d.sibling;var v=f(i,d,s[m],c);if(null===v){null===d&&(d=g);break}e&&d&&null===v.alternate&&t(i,d),o=a(v,o,m),null===u?l=v:u.sibling=v,u=v,d=g}if(m===s.length)return r(i,d),io&&Ji(i,m),l;if(null===d){for(;mg?(v=m,m=null):v=m.sibling;var b=f(i,m,y.value,l);if(null===b){null===m&&(m=v);break}e&&m&&null===b.alternate&&t(i,m),s=a(b,s,g),null===d?u=b:d.sibling=b,d=b,m=v}if(y.done)return r(i,m),io&&Ji(i,g),u;if(null===m){for(;!y.done;g++,y=c.next())null!==(y=h(i,y.value,l))&&(s=a(y,s,g),null===d?u=y:d.sibling=y,d=y);return io&&Ji(i,g),u}for(m=n(i,m);!y.done;g++,y=c.next())null!==(y=p(m,i,g,y.value,l))&&(e&&null!==y.alternate&&m.delete(null===y.key?g:y.key),s=a(y,s,g),null===d?u=y:d.sibling=y,d=y);return e&&m.forEach((function(e){return t(i,e)})),io&&Ji(i,g),u}return function e(n,o,a,c){if("object"===typeof a&&null!==a&&a.type===k&&null===a.key&&(a=a.props.children),"object"===typeof a&&null!==a){switch(a.$$typeof){case x:e:{for(var l=a.key,u=o;null!==u;){if(u.key===l){if((l=a.type)===k){if(7===u.tag){r(n,u.sibling),(o=i(u,a.props.children)).return=n,n=o;break e}}else if(u.elementType===l||"object"===typeof l&&null!==l&&l.$$typeof===R&&Zo(l)===u.type){r(n,u.sibling),(o=i(u,a.props)).ref=Wo(n,u,a),o.return=n,n=o;break e}r(n,u);break}t(n,u),u=u.sibling}a.type===k?((o=Nl(a.props.children,n.mode,c,a.key)).return=n,n=o):((c=Ll(a.type,a.key,a.props,null,n.mode,c)).ref=Wo(n,o,a),c.return=n,n=c)}return s(n);case _:e:{for(u=a.key;null!==o;){if(o.key===u){if(4===o.tag&&o.stateNode.containerInfo===a.containerInfo&&o.stateNode.implementation===a.implementation){r(n,o.sibling),(o=i(o,a.children||[])).return=n,n=o;break e}r(n,o);break}t(n,o),o=o.sibling}(o=Bl(a,n.mode,c)).return=n,n=o}return s(n);case R:return e(n,o,(u=a._init)(a._payload),c)}if(te(a))return m(n,o,a,c);if(L(a))return g(n,o,a,c);Go(n,a)}return"string"===typeof a&&""!==a||"number"===typeof a?(a=""+a,null!==o&&6===o.tag?(r(n,o.sibling),(o=i(o,a)).return=n,n=o):(r(n,o),(o=zl(a,n.mode,c)).return=n,n=o),s(n)):r(n,o)}}var Xo=Yo(!0),Jo=Yo(!1),Qo={},ea=Si(Qo),ta=Si(Qo),ra=Si(Qo);function na(e){if(e===Qo)throw Error(o(174));return e}function ia(e,t){switch(Ai(ra,t),Ai(ta,e),Ai(ea,Qo),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:ce(null,"");break;default:t=ce(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Ei(ea),Ai(ea,t)}function oa(){Ei(ea),Ei(ta),Ei(ra)}function aa(e){na(ra.current);var t=na(ea.current),r=ce(t,e.type);t!==r&&(Ai(ta,e),Ai(ea,r))}function sa(e){ta.current===e&&(Ei(ea),Ei(ta))}var ca=Si(0);function la(e){for(var t=e;null!==t;){if(13===t.tag){var r=t.memoizedState;if(null!==r&&(null===(r=r.dehydrated)||"$?"===r.data||"$!"===r.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!==(128&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ua=[];function da(){for(var e=0;er?r:4,e(!0);var n=fa.transition;fa.transition={};try{e(!1),t()}finally{bt=r,fa.transition=n}}function es(){return Pa().memoizedState}function ts(e,t,r){var n=rl(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},ns(e))is(t,r);else if(null!==(r=To(e,t,r,n))){nl(r,e,n,tl()),os(r,t,n)}}function rs(e,t,r){var n=rl(e),i={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(ns(e))is(t,i);else{var o=e.alternate;if(0===e.lanes&&(null===o||0===o.lanes)&&null!==(o=t.lastRenderedReducer))try{var a=t.lastRenderedState,s=o(a,r);if(i.hasEagerState=!0,i.eagerState=s,sn(s,a)){var c=t.interleaved;return null===c?(i.next=i,Oo(t)):(i.next=c.next,c.next=i),void(t.interleaved=i)}}catch(l){}null!==(r=To(e,t,i,n))&&(nl(r,e,n,i=tl()),os(r,t,n))}}function ns(e){var t=e.alternate;return e===ma||null!==t&&t===ma}function is(e,t){ba=ya=!0;var r=e.pending;null===r?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function os(e,t,r){if(0!==(4194240&r)){var n=t.lanes;r|=n&=e.pendingLanes,t.lanes=r,yt(e,r)}}var as={readContext:Ao,useCallback:_a,useContext:_a,useEffect:_a,useImperativeHandle:_a,useInsertionEffect:_a,useLayoutEffect:_a,useMemo:_a,useReducer:_a,useRef:_a,useState:_a,useDebugValue:_a,useDeferredValue:_a,useTransition:_a,useMutableSource:_a,useSyncExternalStore:_a,useId:_a,unstable_isNewReconciler:!1},ss={readContext:Ao,useCallback:function(e,t){return Aa().memoizedState=[e,void 0===t?null:t],e},useContext:Ao,useEffect:Ha,useImperativeHandle:function(e,t,r){return r=null!==r&&void 0!==r?r.concat([e]):null,Ua(4194308,4,Wa.bind(null,t,e),r)},useLayoutEffect:function(e,t){return Ua(4194308,4,e,t)},useInsertionEffect:function(e,t){return Ua(4,2,e,t)},useMemo:function(e,t){var r=Aa();return t=void 0===t?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=Aa();return t=void 0!==r?r(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=ts.bind(null,ma,e),[n.memoizedState,e]},useRef:function(e){return e={current:e},Aa().memoizedState=e},useState:za,useDebugValue:Za,useDeferredValue:function(e){return Aa().memoizedState=e},useTransition:function(){var e=za(!1),t=e[0];return e=Qa.bind(null,e[1]),Aa().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=ma,i=Aa();if(io){if(void 0===r)throw Error(o(407));r=r()}else{if(r=t(),null===Cc)throw Error(o(349));0!==(30&pa)||Ia(n,t,r)}i.memoizedState=r;var a={value:r,getSnapshot:t};return i.queue=a,Ha(La.bind(null,n,a,e),[e]),n.flags|=2048,Ba(9,Ma.bind(null,n,a,r,t),void 0,null),r},useId:function(){var e=Aa(),t=Cc.identifierPrefix;if(io){var r=Xi;t=":"+t+"R"+(r=(Yi&~(1<<32-at(Yi)-1)).toString(32)+r),0<(r=wa++)&&(t+="H"+r.toString(32)),t+=":"}else t=":"+t+"r"+(r=xa++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},cs={readContext:Ao,useCallback:Ya,useContext:Ao,useEffect:Va,useImperativeHandle:Ga,useInsertionEffect:qa,useLayoutEffect:Ka,useMemo:Xa,useReducer:Ta,useRef:Fa,useState:function(){return Ta(Oa)},useDebugValue:Za,useDeferredValue:function(e){return Ja(Pa(),ga.memoizedState,e)},useTransition:function(){return[Ta(Oa)[0],Pa().memoizedState]},useMutableSource:ja,useSyncExternalStore:Ra,useId:es,unstable_isNewReconciler:!1},ls={readContext:Ao,useCallback:Ya,useContext:Ao,useEffect:Va,useImperativeHandle:Ga,useInsertionEffect:qa,useLayoutEffect:Ka,useMemo:Xa,useReducer:Ca,useRef:Fa,useState:function(){return Ca(Oa)},useDebugValue:Za,useDeferredValue:function(e){var t=Pa();return null===ga?t.memoizedState=e:Ja(t,ga.memoizedState,e)},useTransition:function(){return[Ca(Oa)[0],Pa().memoizedState]},useMutableSource:ja,useSyncExternalStore:Ra,useId:es,unstable_isNewReconciler:!1};function us(e,t){try{var r="",n=t;do{r+=U(n),n=n.return}while(n);var i=r}catch(o){i="\nError generating stack: "+o.message+"\n"+o.stack}return{value:e,source:t,stack:i,digest:null}}function ds(e,t,r){return{value:e,source:null,stack:null!=r?r:null,digest:null!=t?t:null}}function hs(e,t){try{console.error(t.value)}catch(r){setTimeout((function(){throw r}))}}var fs="function"===typeof WeakMap?WeakMap:Map;function ps(e,t,r){(r=Mo(-1,r)).tag=3,r.payload={element:null};var n=t.value;return r.callback=function(){qc||(qc=!0,Kc=n),hs(0,t)},r}function ms(e,t,r){(r=Mo(-1,r)).tag=3;var n=e.type.getDerivedStateFromError;if("function"===typeof n){var i=t.value;r.payload=function(){return n(i)},r.callback=function(){hs(0,t)}}var o=e.stateNode;return null!==o&&"function"===typeof o.componentDidCatch&&(r.callback=function(){hs(0,t),"function"!==typeof n&&(null===Wc?Wc=new Set([this]):Wc.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),r}function gs(e,t,r){var n=e.pingCache;if(null===n){n=e.pingCache=new fs;var i=new Set;n.set(t,i)}else void 0===(i=n.get(t))&&(i=new Set,n.set(t,i));i.has(r)||(i.add(r),e=Al.bind(null,e,t,r),t.then(e,e))}function vs(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function ys(e,t,r,n,i){return 0===(1&e.mode)?(e===t?e.flags|=65536:(e.flags|=128,r.flags|=131072,r.flags&=-52805,1===r.tag&&(null===r.alternate?r.tag=17:((t=Mo(-1,1)).tag=2,Lo(r,t,1))),r.lanes|=1),e):(e.flags|=65536,e.lanes=i,e)}var bs=w.ReactCurrentOwner,ws=!1;function xs(e,t,r,n){t.child=null===e?Jo(t,null,r,n):Xo(t,e.child,r,n)}function _s(e,t,r,n,i){r=r.render;var o=t.ref;return Eo(t,i),n=Sa(e,t,r,n,o,i),r=Ea(),null===e||ws?(io&&r&&eo(t),t.flags|=1,xs(e,t,n,i),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,qs(e,t,i))}function ks(e,t,r,n,i){if(null===e){var o=r.type;return"function"!==typeof o||Il(o)||void 0!==o.defaultProps||null!==r.compare||void 0!==r.defaultProps?((e=Ll(r.type,null,n,t,t.mode,i)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=o,Ss(e,t,o,n,i))}if(o=e.child,0===(e.lanes&i)){var a=o.memoizedProps;if((r=null!==(r=r.compare)?r:cn)(a,n)&&e.ref===t.ref)return qs(e,t,i)}return t.flags|=1,(e=Ml(o,n)).ref=t.ref,e.return=t,t.child=e}function Ss(e,t,r,n,i){if(null!==e){var o=e.memoizedProps;if(cn(o,n)&&e.ref===t.ref){if(ws=!1,t.pendingProps=n=o,0===(e.lanes&i))return t.lanes=e.lanes,qs(e,t,i);0!==(131072&e.flags)&&(ws=!0)}}return Ps(e,t,r,n,i)}function Es(e,t,r){var n=t.pendingProps,i=n.children,o=null!==e?e.memoizedState:null;if("hidden"===n.mode)if(0===(1&t.mode))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ai(Mc,Ic),Ic|=r;else{if(0===(1073741824&r))return e=null!==o?o.baseLanes|r:r,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Ai(Mc,Ic),Ic|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},n=null!==o?o.baseLanes:r,Ai(Mc,Ic),Ic|=n}else null!==o?(n=o.baseLanes|r,t.memoizedState=null):n=r,Ai(Mc,Ic),Ic|=n;return xs(e,t,i,r),t.child}function As(e,t){var r=t.ref;(null===e&&null!==r||null!==e&&e.ref!==r)&&(t.flags|=512,t.flags|=2097152)}function Ps(e,t,r,n,i){var o=Ri(r)?Ci:Oi.current;return o=ji(t,o),Eo(t,i),r=Sa(e,t,r,n,o,i),n=Ea(),null===e||ws?(io&&n&&eo(t),t.flags|=1,xs(e,t,r,i),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,qs(e,t,i))}function Os(e,t,r,n,i){if(Ri(r)){var o=!0;Ni(t)}else o=!1;if(Eo(t,i),null===t.stateNode)Vs(e,t),Vo(t,r,n),Ko(t,r,n,i),n=!0;else if(null===e){var a=t.stateNode,s=t.memoizedProps;a.props=s;var c=a.context,l=r.contextType;"object"===typeof l&&null!==l?l=Ao(l):l=ji(t,l=Ri(r)?Ci:Oi.current);var u=r.getDerivedStateFromProps,d="function"===typeof u||"function"===typeof a.getSnapshotBeforeUpdate;d||"function"!==typeof a.UNSAFE_componentWillReceiveProps&&"function"!==typeof a.componentWillReceiveProps||(s!==n||c!==l)&&qo(t,a,n,l),jo=!1;var h=t.memoizedState;a.state=h,zo(t,n,a,i),c=t.memoizedState,s!==n||h!==c||Ti.current||jo?("function"===typeof u&&(Uo(t,r,u,n),c=t.memoizedState),(s=jo||Ho(t,r,s,n,h,c,l))?(d||"function"!==typeof a.UNSAFE_componentWillMount&&"function"!==typeof a.componentWillMount||("function"===typeof a.componentWillMount&&a.componentWillMount(),"function"===typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount()),"function"===typeof a.componentDidMount&&(t.flags|=4194308)):("function"===typeof a.componentDidMount&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=c),a.props=n,a.state=c,a.context=l,n=s):("function"===typeof a.componentDidMount&&(t.flags|=4194308),n=!1)}else{a=t.stateNode,Io(e,t),s=t.memoizedProps,l=t.type===t.elementType?s:vo(t.type,s),a.props=l,d=t.pendingProps,h=a.context,"object"===typeof(c=r.contextType)&&null!==c?c=Ao(c):c=ji(t,c=Ri(r)?Ci:Oi.current);var f=r.getDerivedStateFromProps;(u="function"===typeof f||"function"===typeof a.getSnapshotBeforeUpdate)||"function"!==typeof a.UNSAFE_componentWillReceiveProps&&"function"!==typeof a.componentWillReceiveProps||(s!==d||h!==c)&&qo(t,a,n,c),jo=!1,h=t.memoizedState,a.state=h,zo(t,n,a,i);var p=t.memoizedState;s!==d||h!==p||Ti.current||jo?("function"===typeof f&&(Uo(t,r,f,n),p=t.memoizedState),(l=jo||Ho(t,r,l,n,h,p,c)||!1)?(u||"function"!==typeof a.UNSAFE_componentWillUpdate&&"function"!==typeof a.componentWillUpdate||("function"===typeof a.componentWillUpdate&&a.componentWillUpdate(n,p,c),"function"===typeof a.UNSAFE_componentWillUpdate&&a.UNSAFE_componentWillUpdate(n,p,c)),"function"===typeof a.componentDidUpdate&&(t.flags|=4),"function"===typeof a.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!==typeof a.componentDidUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=p),a.props=n,a.state=p,a.context=c,n=l):("function"!==typeof a.componentDidUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),n=!1)}return Ts(e,t,r,n,o,i)}function Ts(e,t,r,n,i,o){As(e,t);var a=0!==(128&t.flags);if(!n&&!a)return i&&Di(t,r,!1),qs(e,t,o);n=t.stateNode,bs.current=t;var s=a&&"function"!==typeof r.getDerivedStateFromError?null:n.render();return t.flags|=1,null!==e&&a?(t.child=Xo(t,e.child,null,o),t.child=Xo(t,null,s,o)):xs(e,t,s,o),t.memoizedState=n.state,i&&Di(t,r,!0),t.child}function Cs(e){var t=e.stateNode;t.pendingContext?Mi(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Mi(0,t.context,!1),ia(e,t.containerInfo)}function js(e,t,r,n,i){return po(),mo(i),t.flags|=256,xs(e,t,r,n),t.child}var Rs,Is,Ms,Ls,Ns={dehydrated:null,treeContext:null,retryLane:0};function Ds(e){return{baseLanes:e,cachePool:null,transitions:null}}function zs(e,t,r){var n,i=t.pendingProps,a=ca.current,s=!1,c=0!==(128&t.flags);if((n=c)||(n=(null===e||null!==e.memoizedState)&&0!==(2&a)),n?(s=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(a|=1),Ai(ca,1&a),null===e)return lo(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(0===(1&t.mode)?t.lanes=1:"$!"===e.data?t.lanes=8:t.lanes=1073741824,null):(c=i.children,e=i.fallback,s?(i=t.mode,s=t.child,c={mode:"hidden",children:c},0===(1&i)&&null!==s?(s.childLanes=0,s.pendingProps=c):s=Dl(c,i,0,null),e=Nl(e,i,r,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Ds(r),t.memoizedState=Ns,e):Bs(t,c));if(null!==(a=e.memoizedState)&&null!==(n=a.dehydrated))return function(e,t,r,n,i,a,s){if(r)return 256&t.flags?(t.flags&=-257,Fs(e,t,s,n=ds(Error(o(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(a=n.fallback,i=t.mode,n=Dl({mode:"visible",children:n.children},i,0,null),(a=Nl(a,i,s,null)).flags|=2,n.return=t,a.return=t,n.sibling=a,t.child=n,0!==(1&t.mode)&&Xo(t,e.child,null,s),t.child.memoizedState=Ds(s),t.memoizedState=Ns,a);if(0===(1&t.mode))return Fs(e,t,s,null);if("$!"===i.data){if(n=i.nextSibling&&i.nextSibling.dataset)var c=n.dgst;return n=c,Fs(e,t,s,n=ds(a=Error(o(419)),n,void 0))}if(c=0!==(s&e.childLanes),ws||c){if(null!==(n=Cc)){switch(s&-s){case 4:i=2;break;case 16:i=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:i=32;break;case 536870912:i=268435456;break;default:i=0}0!==(i=0!==(i&(n.suspendedLanes|s))?0:i)&&i!==a.retryLane&&(a.retryLane=i,Co(e,i),nl(n,e,i,-1))}return gl(),Fs(e,t,s,n=ds(Error(o(421))))}return"$?"===i.data?(t.flags|=128,t.child=e.child,t=Ol.bind(null,e),i._reactRetry=t,null):(e=a.treeContext,no=li(i.nextSibling),ro=t,io=!0,oo=null,null!==e&&(Wi[Gi++]=Yi,Wi[Gi++]=Xi,Wi[Gi++]=Zi,Yi=e.id,Xi=e.overflow,Zi=t),t=Bs(t,n.children),t.flags|=4096,t)}(e,t,c,i,n,a,r);if(s){s=i.fallback,c=t.mode,n=(a=e.child).sibling;var l={mode:"hidden",children:i.children};return 0===(1&c)&&t.child!==a?((i=t.child).childLanes=0,i.pendingProps=l,t.deletions=null):(i=Ml(a,l)).subtreeFlags=14680064&a.subtreeFlags,null!==n?s=Ml(n,s):(s=Nl(s,c,r,null)).flags|=2,s.return=t,i.return=t,i.sibling=s,t.child=i,i=s,s=t.child,c=null===(c=e.child.memoizedState)?Ds(r):{baseLanes:c.baseLanes|r,cachePool:null,transitions:c.transitions},s.memoizedState=c,s.childLanes=e.childLanes&~r,t.memoizedState=Ns,i}return e=(s=e.child).sibling,i=Ml(s,{mode:"visible",children:i.children}),0===(1&t.mode)&&(i.lanes=r),i.return=t,i.sibling=null,null!==e&&(null===(r=t.deletions)?(t.deletions=[e],t.flags|=16):r.push(e)),t.child=i,t.memoizedState=null,i}function Bs(e,t){return(t=Dl({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function Fs(e,t,r,n){return null!==n&&mo(n),Xo(t,e.child,null,r),(e=Bs(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Us(e,t,r){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),So(e.return,t,r)}function $s(e,t,r,n,i){var o=e.memoizedState;null===o?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:r,tailMode:i}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=n,o.tail=r,o.tailMode=i)}function Hs(e,t,r){var n=t.pendingProps,i=n.revealOrder,o=n.tail;if(xs(e,t,n.children,r),0!==(2&(n=ca.current)))n=1&n|2,t.flags|=128;else{if(null!==e&&0!==(128&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Us(e,r,t);else if(19===e.tag)Us(e,r,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}n&=1}if(Ai(ca,n),0===(1&t.mode))t.memoizedState=null;else switch(i){case"forwards":for(r=t.child,i=null;null!==r;)null!==(e=r.alternate)&&null===la(e)&&(i=r),r=r.sibling;null===(r=i)?(i=t.child,t.child=null):(i=r.sibling,r.sibling=null),$s(t,!1,i,r,o);break;case"backwards":for(r=null,i=t.child,t.child=null;null!==i;){if(null!==(e=i.alternate)&&null===la(e)){t.child=i;break}e=i.sibling,i.sibling=r,r=i,i=e}$s(t,!0,r,null,o);break;case"together":$s(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Vs(e,t){0===(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function qs(e,t,r){if(null!==e&&(t.dependencies=e.dependencies),Dc|=t.lanes,0===(r&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(o(153));if(null!==t.child){for(r=Ml(e=t.child,e.pendingProps),t.child=r,r.return=t;null!==e.sibling;)e=e.sibling,(r=r.sibling=Ml(e,e.pendingProps)).return=t;r.sibling=null}return t.child}function Ks(e,t){if(!io)switch(e.tailMode){case"hidden":t=e.tail;for(var r=null;null!==t;)null!==t.alternate&&(r=t),t=t.sibling;null===r?e.tail=null:r.sibling=null;break;case"collapsed":r=e.tail;for(var n=null;null!==r;)null!==r.alternate&&(n=r),r=r.sibling;null===n?t||null===e.tail?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Ws(e){var t=null!==e.alternate&&e.alternate.child===e.child,r=0,n=0;if(t)for(var i=e.child;null!==i;)r|=i.lanes|i.childLanes,n|=14680064&i.subtreeFlags,n|=14680064&i.flags,i.return=e,i=i.sibling;else for(i=e.child;null!==i;)r|=i.lanes|i.childLanes,n|=i.subtreeFlags,n|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=n,e.childLanes=r,t}function Gs(e,t,r){var n=t.pendingProps;switch(to(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ws(t),null;case 1:case 17:return Ri(t.type)&&Ii(),Ws(t),null;case 3:return n=t.stateNode,oa(),Ei(Ti),Ei(Oi),da(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),null!==e&&null!==e.child||(ho(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&0===(256&t.flags)||(t.flags|=1024,null!==oo&&(sl(oo),oo=null))),Is(e,t),Ws(t),null;case 5:sa(t);var i=na(ra.current);if(r=t.type,null!==e&&null!=t.stateNode)Ms(e,t,r,n,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!n){if(null===t.stateNode)throw Error(o(166));return Ws(t),null}if(e=na(ea.current),ho(t)){n=t.stateNode,r=t.type;var a=t.memoizedProps;switch(n[hi]=t,n[fi]=a,e=0!==(1&t.mode),r){case"dialog":Bn("cancel",n),Bn("close",n);break;case"iframe":case"object":case"embed":Bn("load",n);break;case"video":case"audio":for(i=0;i<\/script>",e=e.removeChild(e.firstChild)):"string"===typeof n.is?e=c.createElement(r,{is:n.is}):(e=c.createElement(r),"select"===r&&(c=e,n.multiple?c.multiple=!0:n.size&&(c.size=n.size))):e=c.createElementNS(e,r),e[hi]=t,e[fi]=n,Rs(e,t,!1,!1),t.stateNode=e;e:{switch(c=be(r,n),r){case"dialog":Bn("cancel",e),Bn("close",e),i=n;break;case"iframe":case"object":case"embed":Bn("load",e),i=n;break;case"video":case"audio":for(i=0;iHc&&(t.flags|=128,n=!0,Ks(a,!1),t.lanes=4194304)}else{if(!n)if(null!==(e=la(c))){if(t.flags|=128,n=!0,null!==(r=e.updateQueue)&&(t.updateQueue=r,t.flags|=4),Ks(a,!0),null===a.tail&&"hidden"===a.tailMode&&!c.alternate&&!io)return Ws(t),null}else 2*Xe()-a.renderingStartTime>Hc&&1073741824!==r&&(t.flags|=128,n=!0,Ks(a,!1),t.lanes=4194304);a.isBackwards?(c.sibling=t.child,t.child=c):(null!==(r=a.last)?r.sibling=c:t.child=c,a.last=c)}return null!==a.tail?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=Xe(),t.sibling=null,r=ca.current,Ai(ca,n?1&r|2:1&r),t):(Ws(t),null);case 22:case 23:return hl(),n=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==n&&(t.flags|=8192),n&&0!==(1&t.mode)?0!==(1073741824&Ic)&&(Ws(t),6&t.subtreeFlags&&(t.flags|=8192)):Ws(t),null;case 24:case 25:return null}throw Error(o(156,t.tag))}function Zs(e,t){switch(to(t),t.tag){case 1:return Ri(t.type)&&Ii(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return oa(),Ei(Ti),Ei(Oi),da(),0!==(65536&(e=t.flags))&&0===(128&e)?(t.flags=-65537&e|128,t):null;case 5:return sa(t),null;case 13:if(Ei(ca),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(o(340));po()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Ei(ca),null;case 4:return oa(),null;case 10:return ko(t.type._context),null;case 22:case 23:return hl(),null;default:return null}}Rs=function(e,t){for(var r=t.child;null!==r;){if(5===r.tag||6===r.tag)e.appendChild(r.stateNode);else if(4!==r.tag&&null!==r.child){r.child.return=r,r=r.child;continue}if(r===t)break;for(;null===r.sibling;){if(null===r.return||r.return===t)return;r=r.return}r.sibling.return=r.return,r=r.sibling}},Is=function(){},Ms=function(e,t,r,n){var i=e.memoizedProps;if(i!==n){e=t.stateNode,na(ea.current);var o,a=null;switch(r){case"input":i=Z(e,i),n=Z(e,n),a=[];break;case"select":i=D({},i,{value:void 0}),n=D({},n,{value:void 0}),a=[];break;case"textarea":i=ne(e,i),n=ne(e,n),a=[];break;default:"function"!==typeof i.onClick&&"function"===typeof n.onClick&&(e.onclick=Qn)}for(u in ye(r,n),r=null,i)if(!n.hasOwnProperty(u)&&i.hasOwnProperty(u)&&null!=i[u])if("style"===u){var c=i[u];for(o in c)c.hasOwnProperty(o)&&(r||(r={}),r[o]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(s.hasOwnProperty(u)?a||(a=[]):(a=a||[]).push(u,null));for(u in n){var l=n[u];if(c=null!=i?i[u]:void 0,n.hasOwnProperty(u)&&l!==c&&(null!=l||null!=c))if("style"===u)if(c){for(o in c)!c.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(r||(r={}),r[o]="");for(o in l)l.hasOwnProperty(o)&&c[o]!==l[o]&&(r||(r={}),r[o]=l[o])}else r||(a||(a=[]),a.push(u,r)),r=l;else"dangerouslySetInnerHTML"===u?(l=l?l.__html:void 0,c=c?c.__html:void 0,null!=l&&c!==l&&(a=a||[]).push(u,l)):"children"===u?"string"!==typeof l&&"number"!==typeof l||(a=a||[]).push(u,""+l):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(s.hasOwnProperty(u)?(null!=l&&"onScroll"===u&&Bn("scroll",e),a||c===l||(a=[])):(a=a||[]).push(u,l))}r&&(a=a||[]).push("style",r);var u=a;(t.updateQueue=u)&&(t.flags|=4)}},Ls=function(e,t,r,n){r!==n&&(t.flags|=4)};var Ys=!1,Xs=!1,Js="function"===typeof WeakSet?WeakSet:Set,Qs=null;function ec(e,t){var r=e.ref;if(null!==r)if("function"===typeof r)try{r(null)}catch(n){El(e,t,n)}else r.current=null}function tc(e,t,r){try{r()}catch(n){El(e,t,n)}}var rc=!1;function nc(e,t,r){var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var i=n=n.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,void 0!==o&&tc(t,r,o)}i=i.next}while(i!==n)}}function ic(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var r=t=t.next;do{if((r.tag&e)===e){var n=r.create;r.destroy=n()}r=r.next}while(r!==t)}}function oc(e){var t=e.ref;if(null!==t){var r=e.stateNode;e.tag,e=r,"function"===typeof t?t(e):t.current=e}}function ac(e){var t=e.alternate;null!==t&&(e.alternate=null,ac(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[hi],delete t[fi],delete t[mi],delete t[gi],delete t[vi])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function sc(e){return 5===e.tag||3===e.tag||4===e.tag}function cc(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||sc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function lc(e,t,r){var n=e.tag;if(5===n||6===n)e=e.stateNode,t?8===r.nodeType?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(8===r.nodeType?(t=r.parentNode).insertBefore(e,r):(t=r).appendChild(e),null!==(r=r._reactRootContainer)&&void 0!==r||null!==t.onclick||(t.onclick=Qn));else if(4!==n&&null!==(e=e.child))for(lc(e,t,r),e=e.sibling;null!==e;)lc(e,t,r),e=e.sibling}function uc(e,t,r){var n=e.tag;if(5===n||6===n)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(4!==n&&null!==(e=e.child))for(uc(e,t,r),e=e.sibling;null!==e;)uc(e,t,r),e=e.sibling}var dc=null,hc=!1;function fc(e,t,r){for(r=r.child;null!==r;)pc(e,t,r),r=r.sibling}function pc(e,t,r){if(ot&&"function"===typeof ot.onCommitFiberUnmount)try{ot.onCommitFiberUnmount(it,r)}catch(s){}switch(r.tag){case 5:Xs||ec(r,t);case 6:var n=dc,i=hc;dc=null,fc(e,t,r),hc=i,null!==(dc=n)&&(hc?(e=dc,r=r.stateNode,8===e.nodeType?e.parentNode.removeChild(r):e.removeChild(r)):dc.removeChild(r.stateNode));break;case 18:null!==dc&&(hc?(e=dc,r=r.stateNode,8===e.nodeType?ci(e.parentNode,r):1===e.nodeType&&ci(e,r),$t(e)):ci(dc,r.stateNode));break;case 4:n=dc,i=hc,dc=r.stateNode.containerInfo,hc=!0,fc(e,t,r),dc=n,hc=i;break;case 0:case 11:case 14:case 15:if(!Xs&&(null!==(n=r.updateQueue)&&null!==(n=n.lastEffect))){i=n=n.next;do{var o=i,a=o.destroy;o=o.tag,void 0!==a&&(0!==(2&o)||0!==(4&o))&&tc(r,t,a),i=i.next}while(i!==n)}fc(e,t,r);break;case 1:if(!Xs&&(ec(r,t),"function"===typeof(n=r.stateNode).componentWillUnmount))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(s){El(r,t,s)}fc(e,t,r);break;case 21:fc(e,t,r);break;case 22:1&r.mode?(Xs=(n=Xs)||null!==r.memoizedState,fc(e,t,r),Xs=n):fc(e,t,r);break;default:fc(e,t,r)}}function mc(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var r=e.stateNode;null===r&&(r=e.stateNode=new Js),t.forEach((function(t){var n=Tl.bind(null,e,t);r.has(t)||(r.add(t),t.then(n,n))}))}}function gc(e,t){var r=t.deletions;if(null!==r)for(var n=0;ni&&(i=s),n&=~a}if(n=i,10<(n=(120>(n=Xe()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Ec(n/1960))-n)){e.timeoutHandle=ni(_l.bind(null,e,Uc,Vc),n);break}_l(e,Uc,Vc);break;default:throw Error(o(329))}}}return il(e,Xe()),e.callbackNode===r?ol.bind(null,e):null}function al(e,t){var r=Fc;return e.current.memoizedState.isDehydrated&&(fl(e,t).flags|=256),2!==(e=vl(e,t))&&(t=Uc,Uc=r,null!==t&&sl(t)),e}function sl(e){null===Uc?Uc=e:Uc.push.apply(Uc,e)}function cl(e,t){for(t&=~Bc,t&=~zc,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0e?16:e,null===Zc)var n=!1;else{if(e=Zc,Zc=null,Yc=0,0!==(6&Tc))throw Error(o(331));var i=Tc;for(Tc|=4,Qs=e.current;null!==Qs;){var a=Qs,s=a.child;if(0!==(16&Qs.flags)){var c=a.deletions;if(null!==c){for(var l=0;lXe()-$c?fl(e,0):Bc|=r),il(e,t)}function Pl(e,t){0===t&&(0===(1&e.mode)?t=1:(t=ut,0===(130023424&(ut<<=1))&&(ut=4194304)));var r=tl();null!==(e=Co(e,t))&&(vt(e,t,r),il(e,r))}function Ol(e){var t=e.memoizedState,r=0;null!==t&&(r=t.retryLane),Pl(e,r)}function Tl(e,t){var r=0;switch(e.tag){case 13:var n=e.stateNode,i=e.memoizedState;null!==i&&(r=i.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(o(314))}null!==n&&n.delete(t),Pl(e,r)}function Cl(e,t){return We(e,t)}function jl(e,t,r,n){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Rl(e,t,r,n){return new jl(e,t,r,n)}function Il(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Ml(e,t){var r=e.alternate;return null===r?((r=Rl(e.tag,t,e.key,e.mode)).elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=14680064&e.flags,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function Ll(e,t,r,n,i,a){var s=2;if(n=e,"function"===typeof e)Il(e)&&(s=1);else if("string"===typeof e)s=5;else e:switch(e){case k:return Nl(r.children,i,a,t);case S:s=8,i|=8;break;case E:return(e=Rl(12,r,t,2|i)).elementType=E,e.lanes=a,e;case T:return(e=Rl(13,r,t,i)).elementType=T,e.lanes=a,e;case C:return(e=Rl(19,r,t,i)).elementType=C,e.lanes=a,e;case I:return Dl(r,i,a,t);default:if("object"===typeof e&&null!==e)switch(e.$$typeof){case A:s=10;break e;case P:s=9;break e;case O:s=11;break e;case j:s=14;break e;case R:s=16,n=null;break e}throw Error(o(130,null==e?e:typeof e,""))}return(t=Rl(s,r,t,i)).elementType=e,t.type=n,t.lanes=a,t}function Nl(e,t,r,n){return(e=Rl(7,e,n,t)).lanes=r,e}function Dl(e,t,r,n){return(e=Rl(22,e,n,t)).elementType=I,e.lanes=r,e.stateNode={isHidden:!1},e}function zl(e,t,r){return(e=Rl(6,e,null,t)).lanes=r,e}function Bl(e,t,r){return(t=Rl(4,null!==e.children?e.children:[],e.key,t)).lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Fl(e,t,r,n,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=n,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function Ul(e,t,r,n,i,o,a,s,c){return e=new Fl(e,t,r,s,c),1===t?(t=1,!0===o&&(t|=8)):t=0,o=Rl(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:n,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ro(o),e}function $l(e){if(!e)return Pi;e:{if($e(e=e._reactInternals)!==e||1!==e.tag)throw Error(o(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Ri(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(o(171))}if(1===e.tag){var r=e.type;if(Ri(r))return Li(e,r,t)}return t}function Hl(e,t,r,n,i,o,a,s,c){return(e=Ul(r,n,!0,e,0,o,0,s,c)).context=$l(null),r=e.current,(o=Mo(n=tl(),i=rl(r))).callback=void 0!==t&&null!==t?t:null,Lo(r,o,i),e.current.lanes=i,vt(e,i,n),il(e,n),e}function Vl(e,t,r,n){var i=t.current,o=tl(),a=rl(i);return r=$l(r),null===t.context?t.context=r:t.pendingContext=r,(t=Mo(o,a)).payload={element:e},null!==(n=void 0===n?null:n)&&(t.callback=n),null!==(e=Lo(i,t,a))&&(nl(e,i,a,o),No(e,i,a)),a}function ql(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Kl(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var r=e.retryLane;e.retryLane=0!==r&&r{"use strict";var n=r(2515);t.createRoot=n.createRoot,t.hydrateRoot=n.hydrateRoot},2515:(e,t,r)=>{"use strict";!function e(){if("undefined"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=r(693)},488:function(e,t,r){var n,i,o;i=[t,r(1080)],n=function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(t);function n(e){return e&&e.__esModule?e:{default:e}}e.default=r.default},void 0===(o="function"===typeof n?n.apply(t,i):n)||(e.exports=o)},1080:function(e,t,r){var n,i,o;i=[t,r(4082),r(9922)],n=function(e,t,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.setHasSupportToCaptureOption=f;var n=o(t),i=o(r);function o(e){return e&&e.__esModule?e:{default:e}}var a=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var l=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{capture:!0};return h?e:e.capture}function m(e){if("touches"in e){var t=e.touches[0];return{x:t.pageX,y:t.pageY}}return{x:e.screenX,y:e.screenY}}var g=function(e){function t(){var e;c(this,t);for(var r=arguments.length,n=Array(r),i=0;it&&this.props.onSwipeRight(1,e),this.movePosition.deltaY<-t?this.props.onSwipeUp(1,e):this.movePosition.deltaY>t&&this.props.onSwipeDown(1,e)),this.moveStart=null,this.moving=!1,this.movePosition=null}},{key:"_setSwiperRef",value:function(e){this.swiper=e,this.props.innerRef(e)}},{key:"render",value:function(){var e=this.props,t=(e.tagName,e.className),r=e.style,i=e.children,o=(e.allowMouseEvents,e.onSwipeUp,e.onSwipeDown,e.onSwipeLeft,e.onSwipeRight,e.onSwipeStart,e.onSwipeMove,e.onSwipeEnd,e.innerRef,e.tolerance,s(e,["tagName","className","style","children","allowMouseEvents","onSwipeUp","onSwipeDown","onSwipeLeft","onSwipeRight","onSwipeStart","onSwipeMove","onSwipeEnd","innerRef","tolerance"]));return n.default.createElement(this.props.tagName,a({ref:this._setSwiperRef,onMouseDown:this._onMouseDown,onTouchStart:this._handleSwipeStart,onTouchEnd:this._handleSwipeEnd,className:t,style:r},o),i)}}]),t}(t.Component);g.displayName="ReactSwipe",g.propTypes={tagName:i.default.string,className:i.default.string,style:i.default.object,children:i.default.node,allowMouseEvents:i.default.bool,onSwipeUp:i.default.func,onSwipeDown:i.default.func,onSwipeLeft:i.default.func,onSwipeRight:i.default.func,onSwipeStart:i.default.func,onSwipeMove:i.default.func,onSwipeEnd:i.default.func,innerRef:i.default.func,tolerance:i.default.number.isRequired},g.defaultProps={tagName:"div",allowMouseEvents:!1,onSwipeUp:function(){},onSwipeDown:function(){},onSwipeLeft:function(){},onSwipeRight:function(){},onSwipeStart:function(){},onSwipeMove:function(){},onSwipeEnd:function(){},innerRef:function(){},tolerance:0},e.default=g},void 0===(o="function"===typeof n?n.apply(t,i):n)||(e.exports=o)},2249:e=>{var t="undefined"!==typeof Element,r="function"===typeof Map,n="function"===typeof Set,i="function"===typeof ArrayBuffer&&!!ArrayBuffer.isView;function o(e,a){if(e===a)return!0;if(e&&a&&"object"==typeof e&&"object"==typeof a){if(e.constructor!==a.constructor)return!1;var s,c,l,u;if(Array.isArray(e)){if((s=e.length)!=a.length)return!1;for(c=s;0!==c--;)if(!o(e[c],a[c]))return!1;return!0}if(r&&e instanceof Map&&a instanceof Map){if(e.size!==a.size)return!1;for(u=e.entries();!(c=u.next()).done;)if(!a.has(c.value[0]))return!1;for(u=e.entries();!(c=u.next()).done;)if(!o(c.value[1],a.get(c.value[0])))return!1;return!0}if(n&&e instanceof Set&&a instanceof Set){if(e.size!==a.size)return!1;for(u=e.entries();!(c=u.next()).done;)if(!a.has(c.value[0]))return!1;return!0}if(i&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(a)){if((s=e.length)!=a.length)return!1;for(c=s;0!==c--;)if(e[c]!==a[c])return!1;return!0}if(e.constructor===RegExp)return e.source===a.source&&e.flags===a.flags;if(e.valueOf!==Object.prototype.valueOf&&"function"===typeof e.valueOf&&"function"===typeof a.valueOf)return e.valueOf()===a.valueOf();if(e.toString!==Object.prototype.toString&&"function"===typeof e.toString&&"function"===typeof a.toString)return e.toString()===a.toString();if((s=(l=Object.keys(e)).length)!==Object.keys(a).length)return!1;for(c=s;0!==c--;)if(!Object.prototype.hasOwnProperty.call(a,l[c]))return!1;if(t&&e instanceof Element)return!1;for(c=s;0!==c--;)if(("_owner"!==l[c]&&"__v"!==l[c]&&"__o"!==l[c]||!e.$$typeof)&&!o(e[l[c]],a[l[c]]))return!1;return!0}return e!==e&&a!==a}e.exports=function(e,t){try{return o(e,t)}catch(r){if((r.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw r}}},7282:(e,t,r)=>{e.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(1),i=s(n),o=s(r(2)),a=s(r(3));function s(e){return e&&e.__esModule?e:{default:e}}var c=function(e){var t=e.fg,r=e.bg,s=e.count,c=e.palette,l=e.string,u=e.size,d=e.getColor,h=e.padding,f=e.className,p=(0,n.useRef)(null);(0,n.useEffect)((function(){m(e)}));var m=function(){var e=(0,o.default)(l),n=Math.floor(u/s),i=e.slice(0,6);if(c&&c.length){var f=Math.floor((0,a.default)(parseInt(e.slice(-3),16),0,4095,0,c.length));t=c[f]}d&&d(t||i);var m=h;p.current.width=n*s+m,p.current.height=n*s+m;var g=e.split("").map((function(e){return(e=parseInt(e,16))<8?0:1})),v=[];v[0]=v[4]=g.slice(0,5),v[1]=v[3]=g.slice(5,10),v[2]=g.slice(10,15);var y=p.current.getContext("2d");y.imageSmoothingEnabled=!1,y.clearRect(0,0,p.current.width,p.current.height),v.forEach((function(e,o){e.forEach((function(e,a){e?(y.fillStyle=t||"#"+i,y.fillRect(n*o+m,n*a+m,n-m,n-m)):(y.fillStyle=r,y.fillRect(n*o+m,n*a+m,n-m,n-m))}))}))};return i.default.createElement("canvas",{ref:p,className:f,style:{width:u,height:u}})};c.defaultProps={className:"identicon",bg:"transparent",count:5,palette:null,fg:null,padding:0,size:400,getColor:null,string:""},t.default=c},function(e,t){e.exports=r(4082)},function(e,t,r){"use strict";var n;"function"==typeof Symbol&&Symbol.iterator,function(i){function o(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function a(e,t,r,n,i,a){return o(function(e,t){return e<>>32-t}(o(o(t,e),o(n,a)),i),r)}function s(e,t,r,n,i,o,s){return a(t&r|~t&n,e,t,i,o,s)}function c(e,t,r,n,i,o,s){return a(t&n|r&~n,e,t,i,o,s)}function l(e,t,r,n,i,o,s){return a(t^r^n,e,t,i,o,s)}function u(e,t,r,n,i,o,s){return a(r^(t|~n),e,t,i,o,s)}function d(e,t){e[t>>5]|=128<>>9<<4)]=t;var r,n,i,a,d,h=1732584193,f=-271733879,p=-1732584194,m=271733878;for(r=0;r>5]>>>t%32&255);return r}function f(e){var t,r=[];for(r[(e.length>>2)-1]=void 0,t=0;t>5]|=(255&e.charCodeAt(t/8))<>>4&15)+"0123456789abcdef".charAt(15&t);return n}function m(e){return unescape(encodeURIComponent(e))}function g(e){return function(e){return h(d(f(e),8*e.length))}(m(e))}function v(e,t){return function(e,t){var r,n,i=f(e),o=[],a=[];for(o[15]=a[15]=void 0,i.length>16&&(i=d(i,8*e.length)),r=0;r<16;r+=1)o[r]=909522486^i[r],a[r]=1549556828^i[r];return n=d(o.concat(f(t)),512+8*t.length),h(d(a.concat(n),640))}(m(e),m(t))}function y(e,t,r){return t?r?v(t,e):function(e,t){return p(v(e,t))}(t,e):r?g(e):function(e){return p(g(e))}(e)}void 0===(n=function(){return y}.call(t,r,t,e))||(e.exports=n)}()},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r,n,i){return(e-t)*(i-n)/(r-t)+n}}])},8493:(e,t)=>{"use strict";var r,n=Symbol.for("react.element"),i=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.server_context"),d=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),g=Symbol.for("react.offscreen");function v(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case o:case s:case a:case h:case f:return e;default:switch(e=e&&e.$$typeof){case u:case l:case d:case m:case p:case c:return e;default:return t}}case i:return t}}}r=Symbol.for("react.module.reference")},9185:(e,t,r)=>{"use strict";r(8493)},5247:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h=(e,t,r)=>(((e,t,r)=>{t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),f={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(f,{default:()=>y}),e.exports=(n=f,u(o({},"__esModule",{value:!0}),n));var p=d(r(4082)),m=d(r(2249)),g=r(5738),v=r(7817);class y extends p.Component{constructor(){super(...arguments),h(this,"mounted",!1),h(this,"isReady",!1),h(this,"isPlaying",!1),h(this,"isLoading",!0),h(this,"loadOnReady",null),h(this,"startOnPlay",!0),h(this,"seekOnPlay",null),h(this,"onDurationCalled",!1),h(this,"handlePlayerMount",(e=>{this.player||(this.player=e,this.player.load(this.props.url)),this.progress()})),h(this,"getInternalPlayer",(e=>this.player?this.player[e]:null)),h(this,"progress",(()=>{if(this.props.url&&this.player&&this.isReady){const e=this.getCurrentTime()||0,t=this.getSecondsLoaded(),r=this.getDuration();if(r){const n={playedSeconds:e,played:e/r};null!==t&&(n.loadedSeconds=t,n.loaded=t/r),n.playedSeconds===this.prevPlayed&&n.loadedSeconds===this.prevLoaded||this.props.onProgress(n),this.prevPlayed=n.playedSeconds,this.prevLoaded=n.loadedSeconds}}this.progressTimeout=setTimeout(this.progress,this.props.progressFrequency||this.props.progressInterval)})),h(this,"handleReady",(()=>{if(!this.mounted)return;this.isReady=!0,this.isLoading=!1;const{onReady:e,playing:t,volume:r,muted:n}=this.props;e(),n||null===r||this.player.setVolume(r),this.loadOnReady?(this.player.load(this.loadOnReady,!0),this.loadOnReady=null):t&&this.player.play(),this.handleDurationCheck()})),h(this,"handlePlay",(()=>{this.isPlaying=!0,this.isLoading=!1;const{onStart:e,onPlay:t,playbackRate:r}=this.props;this.startOnPlay&&(this.player.setPlaybackRate&&1!==r&&this.player.setPlaybackRate(r),e(),this.startOnPlay=!1),t(),this.seekOnPlay&&(this.seekTo(this.seekOnPlay),this.seekOnPlay=null),this.handleDurationCheck()})),h(this,"handlePause",(e=>{this.isPlaying=!1,this.isLoading||this.props.onPause(e)})),h(this,"handleEnded",(()=>{const{activePlayer:e,loop:t,onEnded:r}=this.props;e.loopOnEnded&&t&&this.seekTo(0),t||(this.isPlaying=!1,r())})),h(this,"handleError",((...e)=>{this.isLoading=!1,this.props.onError(...e)})),h(this,"handleDurationCheck",(()=>{clearTimeout(this.durationCheckTimeout);const e=this.getDuration();e?this.onDurationCalled||(this.props.onDuration(e),this.onDurationCalled=!0):this.durationCheckTimeout=setTimeout(this.handleDurationCheck,100)})),h(this,"handleLoaded",(()=>{this.isLoading=!1}))}componentDidMount(){this.mounted=!0}componentWillUnmount(){clearTimeout(this.progressTimeout),clearTimeout(this.durationCheckTimeout),this.isReady&&this.props.stopOnUnmount&&(this.player.stop(),this.player.disablePIP&&this.player.disablePIP()),this.mounted=!1}componentDidUpdate(e){if(!this.player)return;const{url:t,playing:r,volume:n,muted:i,playbackRate:o,pip:a,loop:s,activePlayer:c,disableDeferredLoading:l}=this.props;if(!(0,m.default)(e.url,t)){if(this.isLoading&&!c.forceLoad&&!l&&!(0,v.isMediaStream)(t))return console.warn(`ReactPlayer: the attempt to load ${t} is being deferred until the player has loaded`),void(this.loadOnReady=t);this.isLoading=!0,this.startOnPlay=!0,this.onDurationCalled=!1,this.player.load(t,this.isReady)}e.playing||!r||this.isPlaying||this.player.play(),e.playing&&!r&&this.isPlaying&&this.player.pause(),!e.pip&&a&&this.player.enablePIP&&this.player.enablePIP(),e.pip&&!a&&this.player.disablePIP&&this.player.disablePIP(),e.volume!==n&&null!==n&&this.player.setVolume(n),e.muted!==i&&(i?this.player.mute():(this.player.unmute(),null!==n&&setTimeout((()=>this.player.setVolume(n))))),e.playbackRate!==o&&this.player.setPlaybackRate&&this.player.setPlaybackRate(o),e.loop!==s&&this.player.setLoop&&this.player.setLoop(s)}getDuration(){return this.isReady?this.player.getDuration():null}getCurrentTime(){return this.isReady?this.player.getCurrentTime():null}getSecondsLoaded(){return this.isReady?this.player.getSecondsLoaded():null}seekTo(e,t,r){if(!this.isReady)return void(0!==e&&(this.seekOnPlay=e,setTimeout((()=>{this.seekOnPlay=null}),5e3)));if(t?"fraction"===t:e>0&&e<1){const t=this.player.getDuration();return t?void this.player.seekTo(t*e,r):void console.warn("ReactPlayer: could not seek using fraction \u2013\xa0duration not yet available")}this.player.seekTo(e,r)}render(){const e=this.props.activePlayer;return e?p.default.createElement(e,{...this.props,onMount:this.handlePlayerMount,onReady:this.handleReady,onPlay:this.handlePlay,onPause:this.handlePause,onEnded:this.handleEnded,onLoaded:this.handleLoaded,onError:this.handleError}):null}}h(y,"displayName","Player"),h(y,"propTypes",g.propTypes),h(y,"defaultProps",g.defaultProps)},9634:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h=(e,t,r)=>(((e,t,r)=>{t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),f={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(f,{createReactPlayer:()=>P}),e.exports=(n=f,u(o({},"__esModule",{value:!0}),n));var p=d(r(4082)),m=d(r(4610)),g=d(r(8009)),v=d(r(2249)),y=r(5738),b=r(7817),w=d(r(5247));const x=(0,b.lazy)((()=>r.e(353).then(r.t.bind(r,524,23)))),_="undefined"!==typeof window&&window.document&&"undefined"!==typeof document,k="undefined"!==typeof r.g&&r.g.window&&r.g.window.document,S=Object.keys(y.propTypes),E=_||k?p.Suspense:()=>null,A=[],P=(e,t)=>{var r;return r=class extends p.Component{constructor(){super(...arguments),h(this,"state",{showPreview:!!this.props.light}),h(this,"references",{wrapper:e=>{this.wrapper=e},player:e=>{this.player=e}}),h(this,"handleClickPreview",(e=>{this.setState({showPreview:!1}),this.props.onClickPreview(e)})),h(this,"showPreview",(()=>{this.setState({showPreview:!0})})),h(this,"getDuration",(()=>this.player?this.player.getDuration():null)),h(this,"getCurrentTime",(()=>this.player?this.player.getCurrentTime():null)),h(this,"getSecondsLoaded",(()=>this.player?this.player.getSecondsLoaded():null)),h(this,"getInternalPlayer",((e="player")=>this.player?this.player.getInternalPlayer(e):null)),h(this,"seekTo",((e,t,r)=>{if(!this.player)return null;this.player.seekTo(e,t,r)})),h(this,"handleReady",(()=>{this.props.onReady(this)})),h(this,"getActivePlayer",(0,g.default)((r=>{for(const t of[...A,...e])if(t.canPlay(r))return t;return t||null}))),h(this,"getConfig",(0,g.default)(((e,t)=>{const{config:r}=this.props;return m.default.all([y.defaultProps.config,y.defaultProps.config[t]||{},r,r[t]||{}])}))),h(this,"getAttributes",(0,g.default)((e=>(0,b.omit)(this.props,S)))),h(this,"renderActivePlayer",(e=>{if(!e)return null;const t=this.getActivePlayer(e);if(!t)return null;const r=this.getConfig(e,t.key);return p.default.createElement(w.default,{...this.props,key:t.key,ref:this.references.player,config:r,activePlayer:t.lazyPlayer||t,onReady:this.handleReady})}))}shouldComponentUpdate(e,t){return!(0,v.default)(this.props,e)||!(0,v.default)(this.state,t)}componentDidUpdate(e){const{light:t}=this.props;!e.light&&t&&this.setState({showPreview:!0}),e.light&&!t&&this.setState({showPreview:!1})}renderPreview(e){if(!e)return null;const{light:t,playIcon:r,previewTabIndex:n,oEmbedUrl:i,previewAriaLabel:o}=this.props;return p.default.createElement(x,{url:e,light:t,playIcon:r,previewTabIndex:n,previewAriaLabel:o,oEmbedUrl:i,onClick:this.handleClickPreview})}render(){const{url:e,style:t,width:r,height:n,fallback:i,wrapper:o}=this.props,{showPreview:a}=this.state,s=this.getAttributes(e),c="string"===typeof o?this.references.wrapper:void 0;return p.default.createElement(o,{ref:c,style:{...t,width:r,height:n},...s},p.default.createElement(E,{fallback:i},a?this.renderPreview(e):this.renderActivePlayer(e)))}},h(r,"displayName","ReactPlayer"),h(r,"propTypes",y.propTypes),h(r,"defaultProps",y.defaultProps),h(r,"addCustomPlayer",(e=>{A.push(e)})),h(r,"removeCustomPlayers",(()=>{A.length=0})),h(r,"canPlay",(t=>{for(const r of[...A,...e])if(r.canPlay(t))return!0;return!1})),h(r,"canEnablePIP",(t=>{for(const r of[...A,...e])if(r.canEnablePIP&&r.canEnablePIP(t))return!0;return!1})),r}},6784:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(d,{default:()=>m}),e.exports=(n=d,u(o({},"__esModule",{value:!0}),n));var h=((e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)))(r(841)),f=r(9634);const p=h.default[h.default.length-1];var m=(0,f.createReactPlayer)(h.default,p)},4921:(e,t,r)=>{var n,i=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,c={};((e,t)=>{for(var r in t)i(e,r,{get:t[r],enumerable:!0})})(c,{AUDIO_EXTENSIONS:()=>S,DASH_EXTENSIONS:()=>P,FLV_EXTENSIONS:()=>O,HLS_EXTENSIONS:()=>A,MATCH_URL_DAILYMOTION:()=>w,MATCH_URL_FACEBOOK:()=>p,MATCH_URL_FACEBOOK_WATCH:()=>m,MATCH_URL_KALTURA:()=>k,MATCH_URL_MIXCLOUD:()=>x,MATCH_URL_MUX:()=>f,MATCH_URL_SOUNDCLOUD:()=>d,MATCH_URL_STREAMABLE:()=>g,MATCH_URL_TWITCH_CHANNEL:()=>b,MATCH_URL_TWITCH_VIDEO:()=>y,MATCH_URL_VIDYARD:()=>_,MATCH_URL_VIMEO:()=>h,MATCH_URL_WISTIA:()=>v,MATCH_URL_YOUTUBE:()=>u,VIDEO_EXTENSIONS:()=>E,canPlay:()=>C}),e.exports=(n=c,((e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let c of a(t))s.call(e,c)||c===r||i(e,c,{get:()=>t[c],enumerable:!(n=o(t,c))||n.enumerable});return e})(i({},"__esModule",{value:!0}),n));var l=r(7817);const u=/(?:youtu\.be\/|youtube(?:-nocookie|education)?\.com\/(?:embed\/|v\/|watch\/|watch\?v=|watch\?.+&v=|shorts\/|live\/))((\w|-){11})|youtube\.com\/playlist\?list=|youtube\.com\/user\//,d=/(?:soundcloud\.com|snd\.sc)\/[^.]+$/,h=/vimeo\.com\/(?!progressive_redirect).+/,f=/stream\.mux\.com\/(\w+)/,p=/^https?:\/\/(www\.)?facebook\.com.*\/(video(s)?|watch|story)(\.php?|\/).+$/,m=/^https?:\/\/fb\.watch\/.+$/,g=/streamable\.com\/([a-z0-9]+)$/,v=/(?:wistia\.(?:com|net)|wi\.st)\/(?:medias|embed)\/(?:iframe\/)?([^?]+)/,y=/(?:www\.|go\.)?twitch\.tv\/videos\/(\d+)($|\?)/,b=/(?:www\.|go\.)?twitch\.tv\/([a-zA-Z0-9_]+)($|\?)/,w=/^(?:(?:https?):)?(?:\/\/)?(?:www\.)?(?:(?:dailymotion\.com(?:\/embed)?\/video)|dai\.ly)\/([a-zA-Z0-9]+)(?:_[\w_-]+)?(?:[\w.#_-]+)?/,x=/mixcloud\.com\/([^/]+\/[^/]+)/,_=/vidyard.com\/(?:watch\/)?([a-zA-Z0-9-_]+)/,k=/^https?:\/\/[a-zA-Z]+\.kaltura.(com|org)\/p\/([0-9]+)\/sp\/([0-9]+)00\/embedIframeJs\/uiconf_id\/([0-9]+)\/partner_id\/([0-9]+)(.*)entry_id.([a-zA-Z0-9-_].*)$/,S=/\.(m4a|m4b|mp4a|mpga|mp2|mp2a|mp3|m2a|m3a|wav|weba|aac|oga|spx)($|\?)/i,E=/\.(mp4|og[gv]|webm|mov|m4v)(#t=[,\d+]+)?($|\?)/i,A=/\.(m3u8)($|\?)/i,P=/\.(mpd)($|\?)/i,O=/\.(flv)($|\?)/i,T=e=>{if(e instanceof Array){for(const t of e){if("string"===typeof t&&T(t))return!0;if(T(t.src))return!0}return!1}return!(!(0,l.isMediaStream)(e)&&!(0,l.isBlobUrl)(e))||(S.test(e)||E.test(e)||A.test(e)||P.test(e)||O.test(e))},C={youtube:e=>e instanceof Array?e.every((e=>u.test(e))):u.test(e),soundcloud:e=>d.test(e)&&!S.test(e),vimeo:e=>h.test(e)&&!E.test(e)&&!A.test(e),mux:e=>f.test(e),facebook:e=>p.test(e)||m.test(e),streamable:e=>g.test(e),wistia:e=>v.test(e),twitch:e=>y.test(e)||b.test(e),dailymotion:e=>w.test(e),mixcloud:e=>x.test(e),vidyard:e=>_.test(e),kaltura:e=>k.test(e),file:T}},841:(e,t,r)=>{Object.create;var n,i=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,s=(Object.getPrototypeOf,Object.prototype.hasOwnProperty),c=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let c of a(t))s.call(e,c)||c===r||i(e,c,{get:()=>t[c],enumerable:!(n=o(t,c))||n.enumerable});return e},l={};((e,t)=>{for(var r in t)i(e,r,{get:t[r],enumerable:!0})})(l,{default:()=>h}),e.exports=(n=l,c(i({},"__esModule",{value:!0}),n));var u=r(7817),d=r(4921),h=[{key:"youtube",name:"YouTube",canPlay:d.canPlay.youtube,lazyPlayer:(0,u.lazy)((()=>r.e(446).then(r.t.bind(r,7324,23))))},{key:"soundcloud",name:"SoundCloud",canPlay:d.canPlay.soundcloud,lazyPlayer:(0,u.lazy)((()=>r.e(979).then(r.t.bind(r,3093,23))))},{key:"vimeo",name:"Vimeo",canPlay:d.canPlay.vimeo,lazyPlayer:(0,u.lazy)((()=>r.e(173).then(r.t.bind(r,9701,23))))},{key:"mux",name:"Mux",canPlay:d.canPlay.mux,lazyPlayer:(0,u.lazy)((()=>r.e(723).then(r.t.bind(r,1967,23))))},{key:"facebook",name:"Facebook",canPlay:d.canPlay.facebook,lazyPlayer:(0,u.lazy)((()=>r.e(887).then(r.t.bind(r,9129,23))))},{key:"streamable",name:"Streamable",canPlay:d.canPlay.streamable,lazyPlayer:(0,u.lazy)((()=>r.e(627).then(r.t.bind(r,9062,23))))},{key:"wistia",name:"Wistia",canPlay:d.canPlay.wistia,lazyPlayer:(0,u.lazy)((()=>r.e(340).then(r.t.bind(r,6564,23))))},{key:"twitch",name:"Twitch",canPlay:d.canPlay.twitch,lazyPlayer:(0,u.lazy)((()=>r.e(42).then(r.t.bind(r,9370,23))))},{key:"dailymotion",name:"DailyMotion",canPlay:d.canPlay.dailymotion,lazyPlayer:(0,u.lazy)((()=>r.e(328).then(r.t.bind(r,4134,23))))},{key:"mixcloud",name:"Mixcloud",canPlay:d.canPlay.mixcloud,lazyPlayer:(0,u.lazy)((()=>r.e(570).then(r.t.bind(r,8921,23))))},{key:"vidyard",name:"Vidyard",canPlay:d.canPlay.vidyard,lazyPlayer:(0,u.lazy)((()=>r.e(392).then(r.t.bind(r,6054,23))))},{key:"kaltura",name:"Kaltura",canPlay:d.canPlay.kaltura,lazyPlayer:(0,u.lazy)((()=>r.e(463).then(r.t.bind(r,3447,23))))},{key:"file",name:"FilePlayer",canPlay:d.canPlay.file,canEnablePIP:e=>d.canPlay.file(e)&&(document.pictureInPictureEnabled||(0,u.supportsWebKitPresentationMode)())&&!d.AUDIO_EXTENSIONS.test(e),lazyPlayer:(0,u.lazy)((()=>r.e(458).then(r.t.bind(r,2578,23))))}]},5738:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(d,{defaultProps:()=>S,propTypes:()=>_}),e.exports=(n=d,u(o({},"__esModule",{value:!0}),n));var h=((e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)))(r(9922));const{string:f,bool:p,number:m,array:g,oneOfType:v,shape:y,object:b,func:w,node:x}=h.default,_={url:v([f,g,b]),playing:p,loop:p,controls:p,volume:m,muted:p,playbackRate:m,width:v([f,m]),height:v([f,m]),style:b,progressInterval:m,playsinline:p,pip:p,stopOnUnmount:p,light:v([p,f,b]),playIcon:x,previewTabIndex:m,previewAriaLabel:f,fallback:x,oEmbedUrl:f,wrapper:v([f,w,y({render:w.isRequired})]),config:y({soundcloud:y({options:b}),youtube:y({playerVars:b,embedOptions:b,onUnstarted:w}),facebook:y({appId:f,version:f,playerId:f,attributes:b}),dailymotion:y({params:b}),vimeo:y({playerOptions:b,title:f}),mux:y({attributes:b,version:f}),file:y({attributes:b,tracks:g,forceVideo:p,forceAudio:p,forceHLS:p,forceSafariHLS:p,forceDisableHls:p,forceDASH:p,forceFLV:p,hlsOptions:b,hlsVersion:f,dashVersion:f,flvVersion:f}),wistia:y({options:b,playerId:f,customControls:g}),mixcloud:y({options:b}),twitch:y({options:b,playerId:f}),vidyard:y({options:b})}),onReady:w,onStart:w,onPlay:w,onPause:w,onBuffer:w,onBufferEnd:w,onEnded:w,onError:w,onDuration:w,onSeek:w,onPlaybackRateChange:w,onPlaybackQualityChange:w,onProgress:w,onClickPreview:w,onEnablePIP:w,onDisablePIP:w},k=()=>{},S={playing:!1,loop:!1,controls:!1,volume:null,muted:!1,playbackRate:1,width:"640px",height:"360px",style:{},progressInterval:1e3,playsinline:!1,pip:!1,stopOnUnmount:!0,light:!1,fallback:null,wrapper:"div",previewTabIndex:0,previewAriaLabel:"",oEmbedUrl:"https://noembed.com/embed?url={url}",config:{soundcloud:{options:{visual:!0,buying:!1,liking:!1,download:!1,sharing:!1,show_comments:!1,show_playcount:!1}},youtube:{playerVars:{playsinline:1,showinfo:0,rel:0,iv_load_policy:3,modestbranding:1},embedOptions:{},onUnstarted:k},facebook:{appId:"1309697205772819",version:"v3.3",playerId:null,attributes:{}},dailymotion:{params:{api:1,"endscreen-enable":!1}},vimeo:{playerOptions:{autopause:!1,byline:!1,portrait:!1,title:!1},title:null},mux:{attributes:{},version:"2"},file:{attributes:{},tracks:[],forceVideo:!1,forceAudio:!1,forceHLS:!1,forceDASH:!1,forceFLV:!1,hlsOptions:{},hlsVersion:"1.1.4",dashVersion:"3.1.3",flvVersion:"1.5.0",forceDisableHls:!1},wistia:{options:{},playerId:null,customControls:null},mixcloud:{options:{hide_cover:1}},twitch:{options:{},playerId:null},vidyard:{options:{}}},onReady:k,onStart:k,onPlay:k,onPause:k,onBuffer:k,onBufferEnd:k,onEnded:k,onError:k,onDuration:k,onSeek:k,onPlaybackRateChange:k,onPlaybackQualityChange:k,onProgress:k,onClickPreview:k,onEnablePIP:k,onDisablePIP:k}},7817:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(h,{callPlayer:()=>j,getConfig:()=>T,getSDK:()=>O,isBlobUrl:()=>I,isMediaStream:()=>R,lazy:()=>g,omit:()=>C,parseEndTime:()=>k,parseStartTime:()=>_,queryString:()=>E,randomString:()=>S,supportsWebKitPresentationMode:()=>M}),e.exports=(n=h,u(o({},"__esModule",{value:!0}),n));var f=d(r(4082)),p=d(r(929)),m=d(r(4610));const g=e=>f.default.lazy((async()=>{const t=await e();return"function"===typeof t.default?t:t.default})),v=/[?&#](?:start|t)=([0-9hms]+)/,y=/[?&#]end=([0-9hms]+)/,b=/(\d+)(h|m|s)/g,w=/^\d+$/;function x(e,t){if(e instanceof Array)return;const r=e.match(t);if(r){const e=r[1];if(e.match(b))return function(e){let t=0,r=b.exec(e);for(;null!==r;){const[,n,i]=r;"h"===i&&(t+=60*parseInt(n,10)*60),"m"===i&&(t+=60*parseInt(n,10)),"s"===i&&(t+=parseInt(n,10)),r=b.exec(e)}return t}(e);if(w.test(e))return parseInt(e)}}function _(e){return x(e,v)}function k(e){return x(e,y)}function S(){return Math.random().toString(36).substr(2,5)}function E(e){return Object.keys(e).map((t=>`${t}=${e[t]}`)).join("&")}function A(e){return window[e]?window[e]:window.exports&&window.exports[e]?window.exports[e]:window.module&&window.module.exports&&window.module.exports[e]?window.module.exports[e]:null}const P={},O=function(e){0;return e}((function(e,t,r=null,n=(()=>!0),i=p.default){const o=A(t);return o&&n(o)?Promise.resolve(o):new Promise(((n,o)=>{if(P[e])return void P[e].push({resolve:n,reject:o});P[e]=[{resolve:n,reject:o}];const a=t=>{P[e].forEach((e=>e.resolve(t)))};if(r){const e=window[r];window[r]=function(){e&&e(),a(A(t))}}i(e,(n=>{n?(P[e].forEach((e=>e.reject(n))),P[e]=null):r||a(A(t))}))}))}));function T(e,t){return(0,m.default)(t.config,e.config)}function C(e,...t){const r=[].concat(...t),n={},i=Object.keys(e);for(const o of i)-1===r.indexOf(o)&&(n[o]=e[o]);return n}function j(e,...t){if(!this.player||!this.player[e]){let t=`ReactPlayer: ${this.constructor.displayName} player could not call %c${e}%c \u2013 `;return this.player?this.player[e]||(t+="The method was not available"):t+="The player was not available",console.warn(t,"font-weight: bold",""),null}return this.player[e](...t)}function R(e){return"undefined"!==typeof window&&"undefined"!==typeof window.MediaStream&&e instanceof window.MediaStream}function I(e){return/^blob:/.test(e)}function M(e=document.createElement("video")){const t=!1===/iPhone|iPod/.test(navigator.userAgent);return e.webkitSupportsPresentationMode&&"function"===typeof e.webkitSetPresentationMode&&t}},6910:function(e,t,r){"use strict";var n=this&&this.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])},e(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(t,"__esModule",{value:!0}),t.QRCode=void 0;var i=r(5480),o=r(6527),a=r(4082),s=r(2515),c=function(e){function t(t){var r=e.call(this,t)||this;return r.canvas=a.createRef(),r}return n(t,e),t.utf16to8=function(e){var t,r,n="",i=e.length;for(t=0;t=1&&r<=127?n+=e.charAt(t):r>2047?(n+=String.fromCharCode(224|r>>12&15),n+=String.fromCharCode(128|r>>6&63),n+=String.fromCharCode(128|r>>0&63)):(n+=String.fromCharCode(192|r>>6&31),n+=String.fromCharCode(128|r>>0&63));return n},t.prototype.drawRoundedSquare=function(e,t,r,n,i,o,a,s){s.lineWidth=e,s.fillStyle=i,s.strokeStyle=i,r+=e/2,t+=e/2,n-=e,Array.isArray(o)||(o=[o,o,o,o]);var c=(o=o.map((function(e){return(e=Math.min(e,n/2))<0?0:e})))[0]||0,l=o[1]||0,u=o[2]||0,d=o[3]||0;s.beginPath(),s.moveTo(t+c,r),s.lineTo(t+n-l,r),l&&s.quadraticCurveTo(t+n,r,t+n,r+l),s.lineTo(t+n,r+n-u),u&&s.quadraticCurveTo(t+n,r+n,t+n-u,r+n),s.lineTo(t+d,r+n),d&&s.quadraticCurveTo(t,r+n,t,r+n-d),s.lineTo(t,r+c),c&&s.quadraticCurveTo(t,r,t+c,r),s.closePath(),s.stroke(),a&&s.fill()},t.prototype.drawPositioningPattern=function(e,t,r,n,i,o,a){void 0===a&&(a=[0,0,0,0]);var s,c,l,u,d=Math.ceil(t);"number"===typeof a||Array.isArray(a)?c=s=a:(s=a.outer||0,c=a.inner||0),"string"!==typeof o?(l=o.outer,u=o.inner):(l=o,u=o);var h=n*t+r,f=i*t+r,p=7*t;this.drawRoundedSquare(d,f,h,p,l,s,!1,e),p=3*t,h+=2*t,f+=2*t,this.drawRoundedSquare(d,f,h,p,u,c,!0,e)},t.prototype.isInPositioninZone=function(e,t,r){return r.some((function(r){return t>=r.row&&t<=r.row+7&&e>=r.col&&e<=r.col+7}))},t.prototype.transformPixelLengthIntoNumberOfCells=function(e,t){return e/t},t.prototype.isCoordinateInImage=function(e,t,r,n,i,o,a,s){if(s){var c=this.transformPixelLengthIntoNumberOfCells(i,a),l=this.transformPixelLengthIntoNumberOfCells(o,a),u=this.transformPixelLengthIntoNumberOfCells(r,a)-1,d=this.transformPixelLengthIntoNumberOfCells(n,a)-1;return t>=c-2&&t<=c+u+2&&e>=l-2&&e<=l+d+2}return!1},t.prototype.shouldComponentUpdate=function(e){return!i(this.props,e)},t.prototype.componentDidMount=function(){this.update()},t.prototype.componentDidUpdate=function(){this.update()},t.prototype.update=function(){var e=this.props,r=e.value,n=e.ecLevel,i=e.enableCORS,a=e.bgColor,c=e.fgColor,l=e.logoImage,u=e.logoOpacity,d=e.logoOnLoad,h=e.removeQrCodeBehindLogo,f=e.qrStyle,p=e.eyeRadius,m=e.eyeColor,g=e.logoPaddingStyle,v=+this.props.size,y=+this.props.quietZone,b=this.props.logoWidth?+this.props.logoWidth:0,w=this.props.logoHeight?+this.props.logoHeight:0,x=this.props.logoPadding?+this.props.logoPadding:0,_=o(0,n);_.addData(t.utf16to8(r)),_.make();var k=s.findDOMNode(this.canvas.current),S=k.getContext("2d"),E=v+2*y,A=_.getModuleCount(),P=v/A,O=window.devicePixelRatio||1;k.height=k.width=E*O,S.scale(O,O),S.fillStyle=a,S.fillRect(0,0,E,E);var T=y,C=[{row:0,col:0},{row:0,col:A-7},{row:A-7,col:0}];if(S.strokeStyle=c,"dots"===f){S.fillStyle=c;for(var j=P/2,R=0;R{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(e,t,r){var n=0===e?e:e+t;return"translate3d"+("("+("horizontal"===r?[n,0,0]:[0,n,0]).join(",")+")")}},6683:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fadeAnimationHandler=t.slideStopSwipingHandler=t.slideSwipeAnimationHandler=t.slideAnimationHandler=void 0;var n,i=r(4082),o=(n=r(4635))&&n.__esModule?n:{default:n},a=r(503);function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;tl))return s<0?e.centerMode&&e.centerSlidePercentage&&"horizontal"===e.axis?r.itemListStyle=(0,a.setPosition)(-(l+2)*e.centerSlidePercentage-(100-e.centerSlidePercentage)/2,e.axis):r.itemListStyle=(0,a.setPosition)(100*-(l+2),e.axis):s>l&&(r.itemListStyle=(0,a.setPosition)(0,e.axis)),r;var u=(0,a.getPosition)(n,e),d=(0,o.default)(u,"%",e.axis),h=e.transitionTime+"ms";return r.itemListStyle={WebkitTransform:d,msTransform:d,OTransform:d,transform:d},t.swiping||(r.itemListStyle=c(c({},r.itemListStyle),{},{WebkitTransitionDuration:h,MozTransitionDuration:h,OTransitionDuration:h,transitionDuration:h,msTransitionDuration:h})),r};t.slideSwipeAnimationHandler=function(e,t,r,n){var o={},s="horizontal"===t.axis,c=i.Children.count(t.children),l=(0,a.getPosition)(r.selectedItem,t),u=t.infiniteLoop?(0,a.getPosition)(c-1,t)-100:(0,a.getPosition)(c-1,t),d=s?e.x:e.y,h=d;0===l&&d>0&&(h=0),l===u&&d<0&&(h=0);var f=l+100/(r.itemSize/h),p=Math.abs(d)>t.swipeScrollTolerance;return t.infiniteLoop&&p&&(0===r.selectedItem&&f>-100?f-=100*c:r.selectedItem===c-1&&f<100*-c&&(f+=100*c)),(!t.preventMovementUntilSwipeScrollTolerance||p||r.swipeMovementStarted)&&(r.swipeMovementStarted||n({swipeMovementStarted:!0}),o.itemListStyle=(0,a.setPosition)(f,t.axis)),p&&!r.cancelClick&&n({cancelClick:!0}),o};t.slideStopSwipingHandler=function(e,t){var r=(0,a.getPosition)(t.selectedItem,e);return{itemListStyle:(0,a.setPosition)(r,e.axis)}};t.fadeAnimationHandler=function(e,t){var r=e.transitionTime+"ms",n="ease-in-out",i={position:"absolute",display:"block",zIndex:-2,minHeight:"100%",opacity:0,top:0,right:0,left:0,bottom:0,transitionTimingFunction:n,msTransitionTimingFunction:n,MozTransitionTimingFunction:n,WebkitTransitionTimingFunction:n,OTransitionTimingFunction:n};return t.swiping||(i=c(c({},i),{},{WebkitTransitionDuration:r,MozTransitionDuration:r,OTransitionDuration:r,transitionDuration:r,msTransitionDuration:r})),{slideStyle:i,selectedStyle:c(c({},i),{},{opacity:1,position:"relative"}),prevStyle:c({},i)}}},3222:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==f(e)&&"function"!==typeof e)return{default:e};var t=h();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=n?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(r,i,o):r[i]=e[i]}r.default=e,t&&t.set(e,r);return r}(r(4082)),i=d(r(488)),o=d(r(3841)),a=d(r(3642)),s=d(r(1846)),c=d(r(9927)),l=r(503),u=r(6683);function d(e){return e&&e.__esModule?e:{default:e}}function h(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return h=function(){return e},e}function f(e){return f="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function p(){return p=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:1;t.moveTo(t.state.selectedItem-("number"===typeof e?e:1))})),_(w(t),"increment",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.moveTo(t.state.selectedItem+("number"===typeof e?e:1))})),_(w(t),"moveTo",(function(e){if("number"===typeof e){var r=n.Children.count(t.props.children)-1;e<0&&(e=t.props.infiniteLoop?r:0),e>r&&(e=t.props.infiniteLoop?0:r),t.selectItem({selectedItem:e}),t.state.autoPlay&&!1===t.state.isMouseEntered&&t.resetAutoPlay()}})),_(w(t),"onClickNext",(function(){t.increment(1)})),_(w(t),"onClickPrev",(function(){t.decrement(1)})),_(w(t),"onSwipeForward",(function(){t.increment(1),t.props.emulateTouch&&t.setState({cancelClick:!0})})),_(w(t),"onSwipeBackwards",(function(){t.decrement(1),t.props.emulateTouch&&t.setState({cancelClick:!0})})),_(w(t),"changeItem",(function(e){return function(r){(0,l.isKeyboardEvent)(r)&&"Enter"!==r.key||t.moveTo(e)}})),_(w(t),"selectItem",(function(e){t.setState(g({previousItem:t.state.selectedItem},e),(function(){t.setState(t.animationHandler(t.props,t.state))})),t.handleOnChange(e.selectedItem,n.Children.toArray(t.props.children)[e.selectedItem])})),_(w(t),"getInitialImage",(function(){var e=t.props.selectedItem,r=t.itemsRef&&t.itemsRef[e];return(r&&r.getElementsByTagName("img")||[])[0]})),_(w(t),"getVariableItemHeight",(function(e){var r=t.itemsRef&&t.itemsRef[e];if(t.state.hasMount&&r&&r.children.length){var n=r.children[0].getElementsByTagName("img")||[];if(n.length>0){var i=n[0];if(!i.complete){i.addEventListener("load",(function e(){t.forceUpdate(),i.removeEventListener("load",e)}))}}var o=(n[0]||r.children[0]).clientHeight;return o>0?o:null}return null}));var r={initialized:!1,previousItem:e.selectedItem,selectedItem:e.selectedItem,hasMount:!1,isMouseEntered:!1,autoPlay:e.autoPlay,swiping:!1,swipeMovementStarted:!1,cancelClick:!1,itemSize:1,itemListStyle:{},slideStyle:{},selectedStyle:{},prevStyle:{}};return t.animationHandler="function"===typeof e.animationHandler&&e.animationHandler||"fade"===e.animationHandler&&u.fadeAnimationHandler||u.slideAnimationHandler,t.state=g(g({},r),t.animationHandler(e,r)),t}return t=f,(r=[{key:"componentDidMount",value:function(){this.props.children&&this.setupCarousel()}},{key:"componentDidUpdate",value:function(e,t){e.children||!this.props.children||this.state.initialized||this.setupCarousel(),!e.autoFocus&&this.props.autoFocus&&this.forceFocus(),t.swiping&&!this.state.swiping&&this.setState(g({},this.props.stopSwipingHandler(this.props,this.state))),e.selectedItem===this.props.selectedItem&&e.centerMode===this.props.centerMode||(this.updateSizes(),this.moveTo(this.props.selectedItem)),e.autoPlay!==this.props.autoPlay&&(this.props.autoPlay?this.setupAutoPlay():this.destroyAutoPlay(),this.setState({autoPlay:this.props.autoPlay}))}},{key:"componentWillUnmount",value:function(){this.destroyCarousel()}},{key:"setupCarousel",value:function(){var e=this;this.bindEvents(),this.state.autoPlay&&n.Children.count(this.props.children)>1&&this.setupAutoPlay(),this.props.autoFocus&&this.forceFocus(),this.setState({initialized:!0},(function(){var t=e.getInitialImage();t&&!t.complete?t.addEventListener("load",e.setMountState):e.setMountState()}))}},{key:"destroyCarousel",value:function(){this.state.initialized&&(this.unbindEvents(),this.destroyAutoPlay())}},{key:"setupAutoPlay",value:function(){this.autoPlay();var e=this.carouselWrapperRef;this.props.stopOnHover&&e&&(e.addEventListener("mouseenter",this.stopOnHover),e.addEventListener("mouseleave",this.startOnLeave))}},{key:"destroyAutoPlay",value:function(){this.clearAutoPlay();var e=this.carouselWrapperRef;this.props.stopOnHover&&e&&(e.removeEventListener("mouseenter",this.stopOnHover),e.removeEventListener("mouseleave",this.startOnLeave))}},{key:"bindEvents",value:function(){(0,c.default)().addEventListener("resize",this.updateSizes),(0,c.default)().addEventListener("DOMContentLoaded",this.updateSizes),this.props.useKeyboardArrows&&(0,s.default)().addEventListener("keydown",this.navigateWithKeyboard)}},{key:"unbindEvents",value:function(){(0,c.default)().removeEventListener("resize",this.updateSizes),(0,c.default)().removeEventListener("DOMContentLoaded",this.updateSizes);var e=this.getInitialImage();e&&e.removeEventListener("load",this.setMountState),this.props.useKeyboardArrows&&(0,s.default)().removeEventListener("keydown",this.navigateWithKeyboard)}},{key:"forceFocus",value:function(){var e;null===(e=this.carouselWrapperRef)||void 0===e||e.focus()}},{key:"renderItems",value:function(e){var t=this;return this.props.children?n.Children.map(this.props.children,(function(r,i){var a=i===t.state.selectedItem,s=i===t.state.previousItem,c=a&&t.state.selectedStyle||s&&t.state.prevStyle||t.state.slideStyle||{};t.props.centerMode&&"horizontal"===t.props.axis&&(c=g(g({},c),{},{minWidth:t.props.centerSlidePercentage+"%"})),t.state.swiping&&t.state.swipeMovementStarted&&(c=g(g({},c),{},{pointerEvents:"none"}));var l={ref:function(e){return t.setItemsRef(e,i)},key:"itemKey"+i+(e?"clone":""),className:o.default.ITEM(!0,i===t.state.selectedItem,i===t.state.previousItem),onClick:t.handleClickItem.bind(t,i,r),style:c};return n.default.createElement("li",l,t.props.renderItem(r,{isSelected:i===t.state.selectedItem,isPrevious:i===t.state.previousItem}))})):[]}},{key:"renderControls",value:function(){var e=this,t=this.props,r=t.showIndicators,i=t.labels,o=t.renderIndicator,a=t.children;return r?n.default.createElement("ul",{className:"control-dots"},n.Children.map(a,(function(t,r){return o&&o(e.changeItem(r),r===e.state.selectedItem,r,i.item)}))):null}},{key:"renderStatus",value:function(){return this.props.showStatus?n.default.createElement("p",{className:"carousel-status"},this.props.statusFormatter(this.state.selectedItem+1,n.Children.count(this.props.children))):null}},{key:"renderThumbs",value:function(){return this.props.showThumbs&&this.props.children&&0!==n.Children.count(this.props.children)?n.default.createElement(a.default,{ref:this.setThumbsRef,onSelectItem:this.handleClickThumb,selectedItem:this.state.selectedItem,transitionTime:this.props.transitionTime,thumbWidth:this.props.thumbWidth,labels:this.props.labels,emulateTouch:this.props.emulateTouch},this.props.renderThumbs(this.props.children)):null}},{key:"render",value:function(){var e=this;if(!this.props.children||0===n.Children.count(this.props.children))return null;var t=this.props.swipeable&&n.Children.count(this.props.children)>1,r="horizontal"===this.props.axis,a=this.props.showArrows&&n.Children.count(this.props.children)>1,s=a&&(this.state.selectedItem>0||this.props.infiniteLoop)||!1,c=a&&(this.state.selectedItem{},503:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setPosition=t.getPosition=t.isKeyboardEvent=t.defaultStatusFormatter=t.noop=void 0;var n,i=r(4082),o=(n=r(4635))&&n.__esModule?n:{default:n};t.noop=function(){};t.defaultStatusFormatter=function(e,t){return"".concat(e," of ").concat(t)};t.isKeyboardEvent=function(e){return!!e&&e.hasOwnProperty("key")};t.getPosition=function(e,t){if(t.infiniteLoop&&++e,0===e)return 0;var r=i.Children.count(t.children);if(t.centerMode&&"horizontal"===t.axis){var n=-e*t.centerSlidePercentage,o=r-1;return e&&(e!==o||t.infiniteLoop)?n+=(100-t.centerSlidePercentage)/2:e===o&&(n+=100-t.centerSlidePercentage),n}return 100*-e};t.setPosition=function(e,t){var r={};return["WebkitTransform","MozTransform","MsTransform","OTransform","transform","msTransform"].forEach((function(n){r[n]=(0,o.default)(e,"%",t)})),r}},3642:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==d(e)&&"function"!==typeof e)return{default:e};var t=u();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=n?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(r,i,o):r[i]=e[i]}r.default=e,t&&t.set(e,r);return r}(r(4082)),i=l(r(3841)),o=r(2597),a=l(r(4635)),s=l(r(488)),c=l(r(9927));function l(e){return e&&e.__esModule?e:{default:e}}function u(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return u=function(){return e},e}function d(e){return d="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function h(){return h=Object.assign||function(e){for(var t=1;t0&&(r=0),o===100*-Math.max(i-t.state.visibleItems,0)/t.state.visibleItems&&r<0&&(r=0);var s=o+100/(t.itemsWrapperRef.clientWidth/r);return t.itemsListRef&&["WebkitTransform","MozTransform","MsTransform","OTransform","transform","msTransform"].forEach((function(e){t.itemsListRef.style[e]=(0,a.default)(s,"%",t.props.axis)})),!0})),y(g(t),"slideRight",(function(e){t.moveTo(t.state.firstItem-("number"===typeof e?e:1))})),y(g(t),"slideLeft",(function(e){t.moveTo(t.state.firstItem+("number"===typeof e?e:1))})),y(g(t),"moveTo",(function(e){e=(e=e<0?0:e)>=t.state.lastPosition?t.state.lastPosition:e,t.setState({firstItem:e})})),t.state={selectedItem:e.selectedItem,swiping:!1,showArrows:!1,firstItem:0,visibleItems:0,lastPosition:0},t}return t=d,(r=[{key:"componentDidMount",value:function(){this.setupThumbs()}},{key:"componentDidUpdate",value:function(e){this.props.selectedItem!==this.state.selectedItem&&this.setState({selectedItem:this.props.selectedItem,firstItem:this.getFirstItem(this.props.selectedItem)}),this.props.children!==e.children&&this.updateSizes()}},{key:"componentWillUnmount",value:function(){this.destroyThumbs()}},{key:"setupThumbs",value:function(){(0,c.default)().addEventListener("resize",this.updateSizes),(0,c.default)().addEventListener("DOMContentLoaded",this.updateSizes),this.updateSizes()}},{key:"destroyThumbs",value:function(){(0,c.default)().removeEventListener("resize",this.updateSizes),(0,c.default)().removeEventListener("DOMContentLoaded",this.updateSizes)}},{key:"getFirstItem",value:function(e){var t=e;return e>=this.state.lastPosition&&(t=this.state.lastPosition),e1,o=this.state.showArrows&&this.state.firstItem>0,c=this.state.showArrows&&this.state.firstItem{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(9851))&&n.__esModule?n:{default:n};var o={ROOT:function(e){return(0,i.default)(function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}({"carousel-root":!0},e||"",!!e))},CAROUSEL:function(e){return(0,i.default)({carousel:!0,"carousel-slider":e})},WRAPPER:function(e,t){return(0,i.default)({"thumbs-wrapper":!e,"slider-wrapper":e,"axis-horizontal":"horizontal"===t,"axis-vertical":"horizontal"!==t})},SLIDER:function(e,t){return(0,i.default)({thumbs:!e,slider:e,animated:!t})},ITEM:function(e,t,r){return(0,i.default)({thumb:!e,slide:e,selected:t,previous:r})},ARROW_PREV:function(e){return(0,i.default)({"control-arrow control-prev":!0,"control-disabled":e})},ARROW_NEXT:function(e){return(0,i.default)({"control-arrow control-next":!0,"control-disabled":e})},DOT:function(e){return(0,i.default)({dot:!0,selected:e})}};t.default=o},2597:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.outerWidth=void 0;t.outerWidth=function(e){var t=e.offsetWidth,r=getComputedStyle(e);return t+=parseInt(r.marginLeft)+parseInt(r.marginRight)}},1762:(e,t,r)=>{"use strict";Object.defineProperty(t,"FN",{enumerable:!0,get:function(){return n.default}});var n=a(r(3222)),i=r(1451),o=a(r(3642));function a(e){return e&&e.__esModule?e:{default:e}}},1846:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(){return document}},9927:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(){return window}},8386:(e,t,r)=>{"use strict";var n=r(4082),i=Symbol.for("react.element"),o=Symbol.for("react.fragment"),a=Object.prototype.hasOwnProperty,s=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function l(e,t,r){var n,o={},l=null,u=null;for(n in void 0!==r&&(l=""+r),void 0!==t.key&&(l=""+t.key),void 0!==t.ref&&(u=t.ref),t)a.call(t,n)&&!c.hasOwnProperty(n)&&(o[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps)void 0===o[n]&&(o[n]=t[n]);return{$$typeof:i,type:e,key:l,ref:u,props:o,_owner:s.current}}t.Fragment=o,t.jsx=l,t.jsxs=l},9325:(e,t)=>{"use strict";var r=Symbol.for("react.element"),n=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),f=Symbol.iterator;var p={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m=Object.assign,g={};function v(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||p}function y(){}function b(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||p}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if("object"!==typeof e&&"function"!==typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},y.prototype=v.prototype;var w=b.prototype=new y;w.constructor=b,m(w,v.prototype),w.isPureReactComponent=!0;var x=Array.isArray,_=Object.prototype.hasOwnProperty,k={current:null},S={key:!0,ref:!0,__self:!0,__source:!0};function E(e,t,n){var i,o={},a=null,s=null;if(null!=t)for(i in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(a=""+t.key),t)_.call(t,i)&&!S.hasOwnProperty(i)&&(o[i]=t[i]);var c=arguments.length-2;if(1===c)o.children=n;else if(1{"use strict";e.exports=r(9325)},8826:(e,t,r)=>{"use strict";e.exports=r(8386)},7906:e=>{"use strict";var t={};function r(e,r,n){n||(n=Error);var i=function(e){var t,n;function i(t,n,i){return e.call(this,function(e,t,n){return"string"===typeof r?r:r(e,t,n)}(t,n,i))||this}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i}(n);i.prototype.name=n.name,i.prototype.code=e,t[e]=i}function n(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map((function(e){return String(e)})),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:2===r?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){var i,o,a,s;if("string"===typeof t&&(o="not ",t.substr(!a||a<0?0:+a,o.length)===o)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))s="The ".concat(e," ").concat(i," ").concat(n(t,"type"));else{var c=function(e,t,r){return"number"!==typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";s='The "'.concat(e,'" ').concat(c," ").concat(i," ").concat(n(t,"type"))}return s+=". Received type ".concat(typeof r)}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.F=t},9428:(e,t,r)=>{"use strict";var n=r(9996),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=u;var o=r(2298),a=r(1326);r(9528)(u,o);for(var s=i(a.prototype),c=0;c{"use strict";e.exports=i;var n=r(5812);function i(e){if(!(this instanceof i))return new i(e);n.call(this,e)}r(9528)(i,n),i.prototype._transform=function(e,t,r){r(null,e)}},2298:(e,t,r)=>{"use strict";var n,i=r(9996);e.exports=E,E.ReadableState=S;r(8449).EventEmitter;var o=function(e,t){return e.listeners(t).length},a=r(4147),s=r(9673).Buffer,c=("undefined"!==typeof r.g?r.g:"undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).Uint8Array||function(){};var l,u=r(9838);l=u&&u.debuglog?u.debuglog("stream"):function(){};var d,h,f,p=r(1807),m=r(6474),g=r(5173).getHighWaterMark,v=r(7906).F,y=v.ERR_INVALID_ARG_TYPE,b=v.ERR_STREAM_PUSH_AFTER_EOF,w=v.ERR_METHOD_NOT_IMPLEMENTED,x=v.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(9528)(E,a);var _=m.errorOrDestroy,k=["error","close","destroy","pause","resume"];function S(e,t,i){n=n||r(9428),e=e||{},"boolean"!==typeof i&&(i=t instanceof n),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=g(this,e,"readableHighWaterMark",i),this.buffer=new p,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(d||(d=r(5575).I),this.decoder=new d(e.encoding),this.encoding=e.encoding)}function E(e){if(n=n||r(9428),!(this instanceof E))return new E(e);var t=this instanceof n;this._readableState=new S(e,this,t),this.readable=!0,e&&("function"===typeof e.read&&(this._read=e.read),"function"===typeof e.destroy&&(this._destroy=e.destroy)),a.call(this)}function A(e,t,r,n,i){l("readableAddChunk",t);var o,a=e._readableState;if(null===t)a.reading=!1,function(e,t){if(l("onEofChunk"),t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?C(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,j(e)))}(e,a);else if(i||(o=function(e,t){var r;n=t,s.isBuffer(n)||n instanceof c||"string"===typeof t||void 0===t||e.objectMode||(r=new y("chunk",["string","Buffer","Uint8Array"],t));var n;return r}(a,t)),o)_(e,o);else if(a.objectMode||t&&t.length>0)if("string"===typeof t||a.objectMode||Object.getPrototypeOf(t)===s.prototype||(t=function(e){return s.from(e)}(t)),n)a.endEmitted?_(e,new x):P(e,a,t,!0);else if(a.ended)_(e,new b);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||0!==t.length?P(e,a,t,!1):R(e,a)):P(e,a,t,!1)}else n||(a.reading=!1,R(e,a));return!a.ended&&(a.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=O?e=O:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function C(e){var t=e._readableState;l("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(l("emitReadable",t.flowing),t.emittedReadable=!0,i.nextTick(j,e))}function j(e){var t=e._readableState;l("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,D(e)}function R(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function L(e){l("readable nexttick read 0"),e.read(0)}function N(e,t){l("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),D(e),t.flowing&&!t.reading&&e.read(0)}function D(e){var t=e._readableState;for(l("flow",t.flowing);t.flowing&&null!==e.read(););}function z(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function B(e){var t=e._readableState;l("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,i.nextTick(F,t,e))}function F(e,t){if(l("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function U(e,t){for(var r=0,n=e.length;r=t.highWaterMark:t.length>0)||t.ended))return l("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?B(this):C(this),null;if(0===(e=T(e,t))&&t.ended)return 0===t.length&&B(this),null;var n,i=t.needReadable;return l("need readable",i),(0===t.length||t.length-e0?z(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&B(this)),null!==n&&this.emit("data",n),n},E.prototype._read=function(e){_(this,new w("_read()"))},E.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,l("pipe count=%d opts=%j",n.pipesCount,t);var a=(!t||!1!==t.end)&&e!==i.stdout&&e!==i.stderr?c:g;function s(t,i){l("onunpipe"),t===r&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,l("cleanup"),e.removeListener("close",p),e.removeListener("finish",m),e.removeListener("drain",u),e.removeListener("error",f),e.removeListener("unpipe",s),r.removeListener("end",c),r.removeListener("end",g),r.removeListener("data",h),d=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function c(){l("onend"),e.end()}n.endEmitted?i.nextTick(a):r.once("end",a),e.on("unpipe",s);var u=function(e){return function(){var t=e._readableState;l("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,D(e))}}(r);e.on("drain",u);var d=!1;function h(t){l("ondata");var i=e.write(t);l("dest.write",i),!1===i&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==U(n.pipes,e))&&!d&&(l("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function f(t){l("onerror",t),g(),e.removeListener("error",f),0===o(e,"error")&&_(e,t)}function p(){e.removeListener("finish",m),g()}function m(){l("onfinish"),e.removeListener("close",p),g()}function g(){l("unpipe"),r.unpipe(e)}return r.on("data",h),function(e,t,r){if("function"===typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",f),e.once("close",p),e.once("finish",m),e.emit("pipe",r),n.flowing||(l("pipe resume"),r.resume()),e},E.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,l("on readable",n.length,n.reading),n.length?C(this):n.reading||i.nextTick(L,this))),r},E.prototype.addListener=E.prototype.on,E.prototype.removeListener=function(e,t){var r=a.prototype.removeListener.call(this,e,t);return"readable"===e&&i.nextTick(M,this),r},E.prototype.removeAllListeners=function(e){var t=a.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||i.nextTick(M,this),t},E.prototype.resume=function(){var e=this._readableState;return e.flowing||(l("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(N,e,t))}(this,e)),e.paused=!1,this},E.prototype.pause=function(){return l("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(l("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},E.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(l("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(l("wrapped data"),r.decoder&&(i=r.decoder.write(i)),!r.objectMode||null!==i&&void 0!==i)&&((r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause())))})),e)void 0===this[i]&&"function"===typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var o=0;o{"use strict";e.exports=u;var n=r(7906).F,i=n.ERR_METHOD_NOT_IMPLEMENTED,o=n.ERR_MULTIPLE_CALLBACK,a=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,c=r(9428);function l(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new o);r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";var n,i=r(9996);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=E,E.WritableState=S;var a={deprecate:r(9617)},s=r(4147),c=r(9673).Buffer,l=("undefined"!==typeof r.g?r.g:"undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).Uint8Array||function(){};var u,d=r(6474),h=r(5173).getHighWaterMark,f=r(7906).F,p=f.ERR_INVALID_ARG_TYPE,m=f.ERR_METHOD_NOT_IMPLEMENTED,g=f.ERR_MULTIPLE_CALLBACK,v=f.ERR_STREAM_CANNOT_PIPE,y=f.ERR_STREAM_DESTROYED,b=f.ERR_STREAM_NULL_VALUES,w=f.ERR_STREAM_WRITE_AFTER_END,x=f.ERR_UNKNOWN_ENCODING,_=d.errorOrDestroy;function k(){}function S(e,t,a){n=n||r(9428),e=e||{},"boolean"!==typeof a&&(a=t instanceof n),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=h(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var s=!1===e.decodeStrings;this.decodeStrings=!s,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,o=r.writecb;if("function"!==typeof o)throw new g;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,o){--t.pendingcb,r?(i.nextTick(o,n),i.nextTick(j,e,t),e._writableState.errorEmitted=!0,_(e,n)):(o(n),e._writableState.errorEmitted=!0,_(e,n),j(e,t))}(e,r,n,t,o);else{var a=T(r)||e.destroyed;a||r.corked||r.bufferProcessing||!r.bufferedRequest||O(e,r),n?i.nextTick(P,e,r,a,o):P(e,r,a,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function E(e){var t=this instanceof(n=n||r(9428));if(!t&&!u.call(E,this))return new E(e);this._writableState=new S(e,this,t),this.writable=!0,e&&("function"===typeof e.write&&(this._write=e.write),"function"===typeof e.writev&&(this._writev=e.writev),"function"===typeof e.destroy&&(this._destroy=e.destroy),"function"===typeof e.final&&(this._final=e.final)),s.call(this)}function A(e,t,r,n,i,o,a){t.writelen=n,t.writecb=a,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new y("write")):r?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function P(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),j(e,t)}function O(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,i=new Array(n),a=t.corkedRequestsFree;a.entry=r;for(var s=0,c=!0;r;)i[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;i.allBuffers=c,A(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(A(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function T(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function C(e,t){e._final((function(r){t.pendingcb--,r&&_(e,r),t.prefinished=!0,e.emit("prefinish"),j(e,t)}))}function j(e,t){var r=T(t);if(r&&(function(e,t){t.prefinished||t.finalCalled||("function"!==typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,i.nextTick(C,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var n=e._readableState;(!n||n.autoDestroy&&n.endEmitted)&&e.destroy()}return r}r(9528)(E,s),S.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(S.prototype,"buffer",{get:a.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"===typeof Symbol&&Symbol.hasInstance&&"function"===typeof Function.prototype[Symbol.hasInstance]?(u=Function.prototype[Symbol.hasInstance],Object.defineProperty(E,Symbol.hasInstance,{value:function(e){return!!u.call(this,e)||this===E&&(e&&e._writableState instanceof S)}})):u=function(e){return e instanceof this},E.prototype.pipe=function(){_(this,new v)},E.prototype.write=function(e,t,r){var n,o=this._writableState,a=!1,s=!o.objectMode&&(n=e,c.isBuffer(n)||n instanceof l);return s&&!c.isBuffer(e)&&(e=function(e){return c.from(e)}(e)),"function"===typeof t&&(r=t,t=null),s?t="buffer":t||(t=o.defaultEncoding),"function"!==typeof r&&(r=k),o.ending?function(e,t){var r=new w;_(e,r),i.nextTick(t,r)}(this,r):(s||function(e,t,r,n){var o;return null===r?o=new b:"string"===typeof r||t.objectMode||(o=new p("chunk",["string","Buffer"],r)),!o||(_(e,o),i.nextTick(n,o),!1)}(this,o,e,r))&&(o.pendingcb++,a=function(e,t,r,n,i,o){if(!r){var a=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!==typeof t||(t=c.from(t,r));return t}(t,n,i);n!==a&&(r=!0,i="buffer",n=a)}var s=t.objectMode?1:n.length;t.length+=s;var l=t.length-1))throw new x(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(E.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(E.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),E.prototype._write=function(e,t,r){r(new m("_write()"))},E.prototype._writev=null,E.prototype.end=function(e,t,r){var n=this._writableState;return"function"===typeof e?(r=e,e=null,t=null):"function"===typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,j(e,t),r&&(t.finished?i.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r),this},Object.defineProperty(E.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(E.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),E.prototype.destroy=d.destroy,E.prototype._undestroy=d.undestroy,E.prototype._destroy=function(e,t){t(e)}},6641:(e,t,r)=>{"use strict";var n,i=r(9996);function o(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var a=r(6064),s=Symbol("lastResolve"),c=Symbol("lastReject"),l=Symbol("error"),u=Symbol("ended"),d=Symbol("lastPromise"),h=Symbol("handlePromise"),f=Symbol("stream");function p(e,t){return{value:e,done:t}}function m(e){var t=e[s];if(null!==t){var r=e[f].read();null!==r&&(e[d]=null,e[s]=null,e[c]=null,t(p(r,!1)))}}function g(e){i.nextTick(m,e)}var v=Object.getPrototypeOf((function(){})),y=Object.setPrototypeOf((o(n={get stream(){return this[f]},next:function(){var e=this,t=this[l];if(null!==t)return Promise.reject(t);if(this[u])return Promise.resolve(p(void 0,!0));if(this[f].destroyed)return new Promise((function(t,r){i.nextTick((function(){e[l]?r(e[l]):t(p(void 0,!0))}))}));var r,n=this[d];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[u]?r(p(void 0,!0)):t[h](r,n)}),n)}}(n,this));else{var o=this[f].read();if(null!==o)return Promise.resolve(p(o,!1));r=new Promise(this[h])}return this[d]=r,r}},Symbol.asyncIterator,(function(){return this})),o(n,"return",(function(){var e=this;return new Promise((function(t,r){e[f].destroy(null,(function(e){e?r(e):t(p(void 0,!0))}))}))})),n),v);e.exports=function(e){var t,r=Object.create(y,(o(t={},f,{value:e,writable:!0}),o(t,s,{value:null,writable:!0}),o(t,c,{value:null,writable:!0}),o(t,l,{value:null,writable:!0}),o(t,u,{value:e._readableState.endEmitted,writable:!0}),o(t,h,{value:function(e,t){var n=r[f].read();n?(r[d]=null,r[s]=null,r[c]=null,e(p(n,!1))):(r[s]=e,r[c]=t)},writable:!0}),t));return r[d]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[c];return null!==t&&(r[d]=null,r[s]=null,r[c]=null,t(e)),void(r[l]=e)}var n=r[s];null!==n&&(r[d]=null,r[s]=null,r[c]=null,n(p(void 0,!0))),r[u]=!0})),e.on("readable",g.bind(null,r)),r}},1807:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return c.alloc(0);for(var t,r,n,i=c.allocUnsafe(e>>>0),o=this.head,a=0;o;)t=o.data,r=i,n=a,c.prototype.copy.call(t,r,n),a+=o.data.length,o=o.next;return i}},{key:"consume",value:function(e,t){var r;return ei.length?i.length:e;if(o===i.length?n+=i:n+=i.slice(0,e),0===(e-=o)){o===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(o));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=c.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,o=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,o),0===(e-=o)){o===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(o));break}++n}return this.length-=n,t}},{key:u,value:function(e,t){return l(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&a(t.prototype,r),n&&a(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}()},6474:(e,t,r)=>{"use strict";var n=r(9996);function i(e,t){a(e,t),o(e)}function o(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function a(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,s=this._readableState&&this._readableState.destroyed,c=this._writableState&&this._writableState.destroyed;return s||c?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(a,this,e)):n.nextTick(a,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted?n.nextTick(o,r):(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t?(n.nextTick(o,r),t(e)):n.nextTick(o,r)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}}},6064:(e,t,r)=>{"use strict";var n=r(7906).F.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,r,o){if("function"===typeof r)return e(t,null,r);r||(r={}),o=function(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i{e.exports=function(){throw new Error("Readable.from is not available in the browser")}},8652:(e,t,r)=>{"use strict";var n;var i=r(7906).F,o=i.ERR_MISSING_ARGS,a=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function c(e){e()}function l(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i0,(function(e){u||(u=e),e&&h.forEach(c),o||(h.forEach(c),d(u))}))}));return t.reduce(l)}},5173:(e,t,r)=>{"use strict";var n=r(7906).F.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var o=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=o){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new n(i?r:"highWaterMark",o);return Math.floor(o)}return e.objectMode?16:16384}}},4147:(e,t,r)=>{e.exports=r(8449).EventEmitter},6885:(e,t,r)=>{(t=e.exports=r(2298)).Stream=t,t.Readable=t,t.Writable=r(1326),t.Duplex=r(9428),t.Transform=r(5812),t.PassThrough=r(8542),t.finished=r(6064),t.pipeline=r(8652)},1505:(e,t,r)=>{"use strict";t.__esModule=!0,t.default=function(e){var t=(0,i.default)(e);return{getItem:function(e){return new Promise((function(r,n){r(t.getItem(e))}))},setItem:function(e,r){return new Promise((function(n,i){n(t.setItem(e,r))}))},removeItem:function(e){return new Promise((function(r,n){r(t.removeItem(e))}))}}};var n,i=(n=r(9151))&&n.__esModule?n:{default:n}},9151:(e,t)=>{"use strict";function r(e){return r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function n(){}t.__esModule=!0,t.default=function(e){var t="".concat(e,"Storage");return function(e){if("object"!==("undefined"===typeof self?"undefined":r(self))||!(e in self))return!1;try{var t=self[e],n="redux-persist ".concat(e," test");t.setItem(n,"test"),t.getItem(n),t.removeItem(n)}catch(i){return!1}return!0}(t)?self[t]:i};var i={getItem:n,setItem:n,removeItem:n}},364:(e,t,r)=>{"use strict";var n;t.A=void 0;var i=(0,((n=r(1505))&&n.__esModule?n:{default:n}).default)("local");t.A=i},9175:(e,t,r)=>{e.exports=r(5513)},5513:(e,t,r)=>{var n=r(7119);t.operation=function(e){var r=t.timeouts(e);return new n(r,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})},t.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],i=0;i{function t(e,t){"boolean"===typeof t&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}e.exports=t,t.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts},t.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null},t.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=(new Date).getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(void 0===r){if(!this._cachedTimeouts)return!1;this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift()}var n=this,i=setTimeout((function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout((function(){n._operationTimeoutCb(n._attempts)}),n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)}),r);return this._options.unref&&i.unref(),!0},t.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout((function(){r._operationTimeoutCb()}),r._operationTimeout)),this._operationStart=(new Date).getTime(),this._fn(this._attempts)},t.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)},t.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)},t.prototype.start=t.prototype.try,t.prototype.errors=function(){return this._errors},t.prototype.attempts=function(){return this._attempts},t.prototype.mainError=function(){if(0===this._errors.length)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=i,r=a)}return t}},7409:(e,t,r)=>{"use strict";var n=r(9673).Buffer,i=r(9528),o=r(7291),a=new Array(16),s=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],l=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],u=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],d=[0,1518500249,1859775393,2400959708,2840853838],h=[1352829926,1548603684,1836072691,2053994217,0];function f(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<>>32-t}function m(e,t,r,n,i,o,a,s){return p(e+(t^r^n)+o+a|0,s)+i|0}function g(e,t,r,n,i,o,a,s){return p(e+(t&r|~t&n)+o+a|0,s)+i|0}function v(e,t,r,n,i,o,a,s){return p(e+((t|~r)^n)+o+a|0,s)+i|0}function y(e,t,r,n,i,o,a,s){return p(e+(t&n|r&~n)+o+a|0,s)+i|0}function b(e,t,r,n,i,o,a,s){return p(e+(t^(r|~n))+o+a|0,s)+i|0}i(f,o),f.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var r=0|this._a,n=0|this._b,i=0|this._c,o=0|this._d,f=0|this._e,w=0|this._a,x=0|this._b,_=0|this._c,k=0|this._d,S=0|this._e,E=0;E<80;E+=1){var A,P;E<16?(A=m(r,n,i,o,f,e[s[E]],d[0],l[E]),P=b(w,x,_,k,S,e[c[E]],h[0],u[E])):E<32?(A=g(r,n,i,o,f,e[s[E]],d[1],l[E]),P=y(w,x,_,k,S,e[c[E]],h[1],u[E])):E<48?(A=v(r,n,i,o,f,e[s[E]],d[2],l[E]),P=v(w,x,_,k,S,e[c[E]],h[2],u[E])):E<64?(A=y(r,n,i,o,f,e[s[E]],d[3],l[E]),P=g(w,x,_,k,S,e[c[E]],h[3],u[E])):(A=b(r,n,i,o,f,e[s[E]],d[4],l[E]),P=m(w,x,_,k,S,e[c[E]],h[4],u[E])),r=f,f=o,o=p(i,10),i=n,n=A,w=S,S=k,k=p(_,10),_=x,x=P}var O=this._b+i+k|0;this._b=this._c+o+S|0,this._c=this._d+f+w|0,this._d=this._e+r+x|0,this._e=this._a+n+_|0,this._a=O},f.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=n.alloc?n.alloc(20):new n(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=f},1176:(e,t,r)=>{var n=r(9673),i=n.Buffer;function o(e,t){for(var r in e)t[r]=e[r]}function a(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(o(n,t),t.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(e,t,r){if("number"===typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},a.alloc=function(e,t,r){if("number"!==typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"===typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},a.allocUnsafe=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},8909:(e,t)=>{"use strict";function r(e,t){var r=e.length;e.push(t);e:for(;0>>1,i=e[n];if(!(0>>1;no(c,r))lo(u,c)?(e[n]=u,e[l]=r,n=l):(e[n]=c,e[s]=r,n=s);else{if(!(lo(u,r)))break e;e[n]=u,e[l]=r,n=l}}}return t}function o(e,t){var r=e.sortIndex-t.sortIndex;return 0!==r?r:e.id-t.id}if("object"===typeof performance&&"function"===typeof performance.now){var a=performance;t.unstable_now=function(){return a.now()}}else{var s=Date,c=s.now();t.unstable_now=function(){return s.now()-c}}var l=[],u=[],d=1,h=null,f=3,p=!1,m=!1,g=!1,v="function"===typeof setTimeout?setTimeout:null,y="function"===typeof clearTimeout?clearTimeout:null,b="undefined"!==typeof setImmediate?setImmediate:null;function w(e){for(var t=n(u);null!==t;){if(null===t.callback)i(u);else{if(!(t.startTime<=e))break;i(u),t.sortIndex=t.expirationTime,r(l,t)}t=n(u)}}function x(e){if(g=!1,w(e),!m)if(null!==n(l))m=!0,I(_);else{var t=n(u);null!==t&&M(x,t.startTime-e)}}function _(e,r){m=!1,g&&(g=!1,y(A),A=-1),p=!0;var o=f;try{for(w(r),h=n(l);null!==h&&(!(h.expirationTime>r)||e&&!T());){var a=h.callback;if("function"===typeof a){h.callback=null,f=h.priorityLevel;var s=a(h.expirationTime<=r);r=t.unstable_now(),"function"===typeof s?h.callback=s:h===n(l)&&i(l),w(r)}else i(l);h=n(l)}if(null!==h)var c=!0;else{var d=n(u);null!==d&&M(x,d.startTime-r),c=!1}return c}finally{h=null,f=o,p=!1}}"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var k,S=!1,E=null,A=-1,P=5,O=-1;function T(){return!(t.unstable_now()-Oe||125a?(e.sortIndex=o,r(u,e),null===n(l)&&e===n(u)&&(g?(y(A),A=-1):g=!0,M(x,o-a))):(e.sortIndex=s,r(l,e),m||p||(m=!0,I(_))),e},t.unstable_shouldYield=T,t.unstable_wrapCallback=function(e){var t=f;return function(){var r=f;f=t;try{return e.apply(this,arguments)}finally{f=r}}}},2360:(e,t,r)=>{"use strict";e.exports=r(8909)},9950:(e,t,r)=>{var n=r(1176).Buffer;function i(e,t){this._block=n.alloc(e),this._finalSize=t,this._blockSize=e,this._len=0}i.prototype.update=function(e,t){"string"===typeof e&&(t=t||"utf8",e=n.from(e,t));for(var r=this._block,i=this._blockSize,o=e.length,a=this._len,s=0;s=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=8*this._len;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var n=(4294967295&r)>>>0,i=(r-n)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(n,this._blockSize-4)}this._update(this._block);var o=this._hash();return e?o.toString(e):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=i},2308:(e,t,r)=>{var n=e.exports=function(e){e=e.toLowerCase();var t=n[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t};n.sha=r(7602),n.sha1=r(7071),n.sha224=r(5540),n.sha256=r(9713),n.sha384=r(8789),n.sha512=r(3908)},7602:(e,t,r)=>{var n=r(9528),i=r(9950),o=r(1176).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e){return e<<30|e>>>2}function u(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,d=0;d<16;++d)r[d]=e.readInt32BE(4*d);for(;d<80;++d)r[d]=r[d-3]^r[d-8]^r[d-14]^r[d-16];for(var h=0;h<80;++h){var f=~~(h/20),p=0|((t=n)<<5|t>>>27)+u(f,i,o,s)+c+r[h]+a[f];c=s,s=o,o=l(i),i=n,n=p}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=o.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},7071:(e,t,r)=>{var n=r(9528),i=r(9950),o=r(1176).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e){return e<<5|e>>>27}function u(e){return e<<30|e>>>2}function d(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,h=0;h<16;++h)r[h]=e.readInt32BE(4*h);for(;h<80;++h)r[h]=(t=r[h-3]^r[h-8]^r[h-14]^r[h-16])<<1|t>>>31;for(var f=0;f<80;++f){var p=~~(f/20),m=l(n)+d(p,i,o,s)+c+r[f]+a[p]|0;c=s,s=o,o=u(i),i=n,n=m}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=o.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},5540:(e,t,r)=>{var n=r(9528),i=r(9713),o=r(9950),a=r(1176).Buffer,s=new Array(64);function c(){this.init(),this._w=s,o.call(this,64,56)}n(c,i),c.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},c.prototype._hash=function(){var e=a.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=c},9713:(e,t,r)=>{var n=r(9528),i=r(9950),o=r(1176).Buffer,a=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],s=new Array(64);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function d(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function h(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function f(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}n(c,i),c.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,p=0|this._f,m=0|this._g,g=0|this._h,v=0;v<16;++v)r[v]=e.readInt32BE(4*v);for(;v<64;++v)r[v]=0|(((t=r[v-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+r[v-7]+f(r[v-15])+r[v-16];for(var y=0;y<64;++y){var b=g+h(c)+l(c,p,m)+a[y]+r[y]|0,w=d(n)+u(n,i,o)|0;g=m,m=p,p=c,c=s+b|0,s=o,o=i,i=n,n=b+w|0}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0,this._f=p+this._f|0,this._g=m+this._g|0,this._h=g+this._h|0},c.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},8789:(e,t,r)=>{var n=r(9528),i=r(3908),o=r(9950),a=r(1176).Buffer,s=new Array(160);function c(){this.init(),this._w=s,o.call(this,128,112)}n(c,i),c.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},c.prototype._hash=function(){var e=a.allocUnsafe(48);function t(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},e.exports=c},3908:(e,t,r)=>{var n=r(9528),i=r(9950),o=r(1176).Buffer,a=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],s=new Array(160);function c(){this.init(),this._w=s,i.call(this,128,112)}function l(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function d(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function h(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function f(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function g(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function v(e,t){return e>>>0>>0?1:0}n(c,i),c.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},c.prototype._update=function(e){for(var t=this._w,r=0|this._ah,n=0|this._bh,i=0|this._ch,o=0|this._dh,s=0|this._eh,c=0|this._fh,y=0|this._gh,b=0|this._hh,w=0|this._al,x=0|this._bl,_=0|this._cl,k=0|this._dl,S=0|this._el,E=0|this._fl,A=0|this._gl,P=0|this._hl,O=0;O<32;O+=2)t[O]=e.readInt32BE(4*O),t[O+1]=e.readInt32BE(4*O+4);for(;O<160;O+=2){var T=t[O-30],C=t[O-30+1],j=f(T,C),R=p(C,T),I=m(T=t[O-4],C=t[O-4+1]),M=g(C,T),L=t[O-14],N=t[O-14+1],D=t[O-32],z=t[O-32+1],B=R+N|0,F=j+L+v(B,R)|0;F=(F=F+I+v(B=B+M|0,M)|0)+D+v(B=B+z|0,z)|0,t[O]=F,t[O+1]=B}for(var U=0;U<160;U+=2){F=t[U],B=t[U+1];var $=u(r,n,i),H=u(w,x,_),V=d(r,w),q=d(w,r),K=h(s,S),W=h(S,s),G=a[U],Z=a[U+1],Y=l(s,c,y),X=l(S,E,A),J=P+W|0,Q=b+K+v(J,P)|0;Q=(Q=(Q=Q+Y+v(J=J+X|0,X)|0)+G+v(J=J+Z|0,Z)|0)+F+v(J=J+B|0,B)|0;var ee=q+H|0,te=V+$+v(ee,q)|0;b=y,P=A,y=c,A=E,c=s,E=S,s=o+Q+v(S=k+J|0,k)|0,o=i,k=_,i=n,_=x,n=r,x=w,r=Q+te+v(w=J+ee|0,J)|0}this._al=this._al+w|0,this._bl=this._bl+x|0,this._cl=this._cl+_|0,this._dl=this._dl+k|0,this._el=this._el+S|0,this._fl=this._fl+E|0,this._gl=this._gl+A|0,this._hl=this._hl+P|0,this._ah=this._ah+r+v(this._al,w)|0,this._bh=this._bh+n+v(this._bl,x)|0,this._ch=this._ch+i+v(this._cl,_)|0,this._dh=this._dh+o+v(this._dl,k)|0,this._eh=this._eh+s+v(this._el,S)|0,this._fh=this._fh+c+v(this._fl,E)|0,this._gh=this._gh+y+v(this._gl,A)|0,this._hh=this._hh+b+v(this._hl,P)|0},c.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},3184:(e,t,r)=>{e.exports=i;var n=r(8449).EventEmitter;function i(){n.call(this)}r(9528)(i,n),i.Readable=r(2298),i.Writable=r(1326),i.Duplex=r(9428),i.Transform=r(5812),i.PassThrough=r(8542),i.finished=r(6064),i.pipeline=r(8652),i.Stream=i,i.prototype.pipe=function(e,t){var r=this;function i(t){e.writable&&!1===e.write(t)&&r.pause&&r.pause()}function o(){r.readable&&r.resume&&r.resume()}r.on("data",i),e.on("drain",o),e._isStdio||t&&!1===t.end||(r.on("end",s),r.on("close",c));var a=!1;function s(){a||(a=!0,e.end())}function c(){a||(a=!0,"function"===typeof e.destroy&&e.destroy())}function l(e){if(u(),0===n.listenerCount(this,"error"))throw e}function u(){r.removeListener("data",i),e.removeListener("drain",o),r.removeListener("end",s),r.removeListener("close",c),r.removeListener("error",l),e.removeListener("error",l),r.removeListener("end",u),r.removeListener("close",u),e.removeListener("close",u)}return r.on("error",l),e.on("error",l),r.on("end",u),r.on("close",u),e.on("close",u),e.emit("pipe",r),e}},5575:(e,t,r)=>{"use strict";var n=r(1176).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!==typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=l,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=u,this.end=d,t=3;break;default:return this.write=h,void(this.end=f)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function a(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!==(192&t[0]))return e.lastNeed=0,"\ufffd";if(e.lastNeed>1&&t.length>1){if(128!==(192&t[1]))return e.lastNeed=1,"\ufffd";if(e.lastNeed>2&&t.length>2&&128!==(192&t[2]))return e.lastNeed=2,"\ufffd"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function u(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function f(e){return e&&e.length?this.write(e):""}t.I=o,o.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(e.lastNeed=i-1),i;if(--n=0)return i>0&&(e.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},5269:(e,t,r)=>{var n=r(9673).Buffer;e.exports=function(e){return ArrayBuffer.isView(e)?n.from(e.buffer,e.byteOffset,e.byteLength):n.from(e)}},3629:(e,t,r)=>{"use strict";var n=r(4082);var i="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},o=n.useState,a=n.useEffect,s=n.useLayoutEffect,c=n.useDebugValue;function l(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!i(e,r)}catch(n){return!0}}var u="undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),n=o({inst:{value:r,getSnapshot:t}}),i=n[0].inst,u=n[1];return s((function(){i.value=r,i.getSnapshot=t,l(i)&&u({inst:i})}),[e,r,t]),a((function(){return l(i)&&u({inst:i}),e((function(){l(i)&&u({inst:i})}))}),[e]),c(r),r};t.useSyncExternalStore=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:u},2850:(e,t,r)=>{"use strict";var n=r(4082),i=r(9494);var o="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},a=i.useSyncExternalStore,s=n.useRef,c=n.useEffect,l=n.useMemo,u=n.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,r,n,i){var d=s(null);if(null===d.current){var h={hasValue:!1,value:null};d.current=h}else h=d.current;d=l((function(){function e(e){if(!c){if(c=!0,a=e,e=n(e),void 0!==i&&h.hasValue){var t=h.value;if(i(t,e))return s=t}return s=e}if(t=s,o(a,e))return t;var r=n(e);return void 0!==i&&i(t,r)?t:(a=e,s=r)}var a,s,c=!1,l=void 0===r?null:r;return[function(){return e(t())},null===l?void 0:function(){return e(l())}]}),[t,r,n,i]);var f=a(e,d[0],d[1]);return c((function(){h.hasValue=!0,h.value=f}),[f]),u(f),f}},9494:(e,t,r)=>{"use strict";e.exports=r(3629)},9304:(e,t,r)=>{"use strict";e.exports=r(2850)},9617:(e,t,r)=>{function n(e){try{if(!r.g.localStorage)return!1}catch(n){return!1}var t=r.g.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}},7161:e=>{"use strict";e.exports=function(e){e.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}},7873:(e,t,r)=>{"use strict";function n(e){var t=this;if(t instanceof n||(t=new n),t.tail=null,t.head=null,t.length=0,e&&"function"===typeof e.forEach)e.forEach((function(e){t.push(e)}));else if(arguments.length>0)for(var r=0,i=arguments.length;r1)r=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");n=this.head.next,r=this.head.value}for(var i=0;null!==n;i++)r=e(r,n.value,i),n=n.next;return r},n.prototype.reduceReverse=function(e,t){var r,n=this.tail;if(arguments.length>1)r=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");n=this.tail.prev,r=this.tail.value}for(var i=this.length-1;null!==n;i--)r=e(r,n.value,i),n=n.prev;return r},n.prototype.toArray=function(){for(var e=new Array(this.length),t=0,r=this.head;null!==r;t++)e[t]=r.value,r=r.next;return e},n.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,r=this.tail;null!==r;t++)e[t]=r.value,r=r.prev;return e},n.prototype.slice=function(e,t){(t=t||this.length)<0&&(t+=this.length),(e=e||0)<0&&(e+=this.length);var r=new n;if(tthis.length&&(t=this.length);for(var i=0,o=this.head;null!==o&&ithis.length&&(t=this.length);for(var i=this.length,o=this.tail;null!==o&&i>t;i--)o=o.prev;for(;null!==o&&i>e;i--,o=o.prev)r.push(o.value);return r},n.prototype.splice=function(e,t,...r){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var n=0,o=this.head;null!==o&&n{},1224:()=>{},1448:()=>{},7790:()=>{},3776:()=>{},2959:()=>{},9838:()=>{},9260:(e,t,r)=>{var n=r(7779).default;function i(){"use strict";e.exports=i=function(){return t},e.exports.__esModule=!0,e.exports.default=e.exports;var t={},r=Object.prototype,o=r.hasOwnProperty,a=Object.defineProperty||function(e,t,r){e[t]=r.value},s="function"==typeof Symbol?Symbol:{},c=s.iterator||"@@iterator",l=s.asyncIterator||"@@asyncIterator",u=s.toStringTag||"@@toStringTag";function d(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{d({},"")}catch(C){d=function(e,t,r){return e[t]=r}}function h(e,t,r,n){var i=t&&t.prototype instanceof m?t:m,o=Object.create(i.prototype),s=new O(n||[]);return a(o,"_invoke",{value:S(e,r,s)}),o}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(C){return{type:"throw",arg:C}}}t.wrap=h;var p={};function m(){}function g(){}function v(){}var y={};d(y,c,(function(){return this}));var b=Object.getPrototypeOf,w=b&&b(b(T([])));w&&w!==r&&o.call(w,c)&&(y=w);var x=v.prototype=m.prototype=Object.create(y);function _(e){["next","throw","return"].forEach((function(t){d(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function r(i,a,s,c){var l=f(e[i],e,a);if("throw"!==l.type){var u=l.arg,d=u.value;return d&&"object"==n(d)&&o.call(d,"__await")?t.resolve(d.__await).then((function(e){r("next",e,s,c)}),(function(e){r("throw",e,s,c)})):t.resolve(d).then((function(e){u.value=e,s(u)}),(function(e){return r("throw",e,s,c)}))}c(l.arg)}var i;a(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,i){r(e,n,t,i)}))}return i=i?i.then(o,o):o()}})}function S(e,t,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=E(a,r);if(s){if(s===p)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=f(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===p)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function E(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,E(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var i=f(n,e.iterator,t.arg);if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,p;var o=i.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,p):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,p)}function A(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(A,this),this.reset(!0)}function T(e){if(e||""===e){var t=e[c];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,i=function t(){for(;++r=0;--n){var i=this.tryEntries[n],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=o.call(i,"catchLoc"),c=o.call(i,"finallyLoc");if(s&&c){if(this.prev=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),P(r),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;P(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:T(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),p}},t}e.exports=i,e.exports.__esModule=!0,e.exports.default=e.exports},7779:e=>{function t(r){return e.exports=t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,t(r)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},9211:(e,t,r)=>{var n=r(9260)();e.exports=n;try{regeneratorRuntime=n}catch(i){"object"===typeof globalThis?globalThis.regeneratorRuntime=n:Function("r","regeneratorRuntime = r")(n)}},5898:e=>{"use strict";e.exports=JSON.parse('["\u7684","\u4e00","\u662f","\u5728","\u4e0d","\u4e86","\u6709","\u548c","\u4eba","\u8fd9","\u4e2d","\u5927","\u4e3a","\u4e0a","\u4e2a","\u56fd","\u6211","\u4ee5","\u8981","\u4ed6","\u65f6","\u6765","\u7528","\u4eec","\u751f","\u5230","\u4f5c","\u5730","\u4e8e","\u51fa","\u5c31","\u5206","\u5bf9","\u6210","\u4f1a","\u53ef","\u4e3b","\u53d1","\u5e74","\u52a8","\u540c","\u5de5","\u4e5f","\u80fd","\u4e0b","\u8fc7","\u5b50","\u8bf4","\u4ea7","\u79cd","\u9762","\u800c","\u65b9","\u540e","\u591a","\u5b9a","\u884c","\u5b66","\u6cd5","\u6240","\u6c11","\u5f97","\u7ecf","\u5341","\u4e09","\u4e4b","\u8fdb","\u7740","\u7b49","\u90e8","\u5ea6","\u5bb6","\u7535","\u529b","\u91cc","\u5982","\u6c34","\u5316","\u9ad8","\u81ea","\u4e8c","\u7406","\u8d77","\u5c0f","\u7269","\u73b0","\u5b9e","\u52a0","\u91cf","\u90fd","\u4e24","\u4f53","\u5236","\u673a","\u5f53","\u4f7f","\u70b9","\u4ece","\u4e1a","\u672c","\u53bb","\u628a","\u6027","\u597d","\u5e94","\u5f00","\u5b83","\u5408","\u8fd8","\u56e0","\u7531","\u5176","\u4e9b","\u7136","\u524d","\u5916","\u5929","\u653f","\u56db","\u65e5","\u90a3","\u793e","\u4e49","\u4e8b","\u5e73","\u5f62","\u76f8","\u5168","\u8868","\u95f4","\u6837","\u4e0e","\u5173","\u5404","\u91cd","\u65b0","\u7ebf","\u5185","\u6570","\u6b63","\u5fc3","\u53cd","\u4f60","\u660e","\u770b","\u539f","\u53c8","\u4e48","\u5229","\u6bd4","\u6216","\u4f46","\u8d28","\u6c14","\u7b2c","\u5411","\u9053","\u547d","\u6b64","\u53d8","\u6761","\u53ea","\u6ca1","\u7ed3","\u89e3","\u95ee","\u610f","\u5efa","\u6708","\u516c","\u65e0","\u7cfb","\u519b","\u5f88","\u60c5","\u8005","\u6700","\u7acb","\u4ee3","\u60f3","\u5df2","\u901a","\u5e76","\u63d0","\u76f4","\u9898","\u515a","\u7a0b","\u5c55","\u4e94","\u679c","\u6599","\u8c61","\u5458","\u9769","\u4f4d","\u5165","\u5e38","\u6587","\u603b","\u6b21","\u54c1","\u5f0f","\u6d3b","\u8bbe","\u53ca","\u7ba1","\u7279","\u4ef6","\u957f","\u6c42","\u8001","\u5934","\u57fa","\u8d44","\u8fb9","\u6d41","\u8def","\u7ea7","\u5c11","\u56fe","\u5c71","\u7edf","\u63a5","\u77e5","\u8f83","\u5c06","\u7ec4","\u89c1","\u8ba1","\u522b","\u5979","\u624b","\u89d2","\u671f","\u6839","\u8bba","\u8fd0","\u519c","\u6307","\u51e0","\u4e5d","\u533a","\u5f3a","\u653e","\u51b3","\u897f","\u88ab","\u5e72","\u505a","\u5fc5","\u6218","\u5148","\u56de","\u5219","\u4efb","\u53d6","\u636e","\u5904","\u961f","\u5357","\u7ed9","\u8272","\u5149","\u95e8","\u5373","\u4fdd","\u6cbb","\u5317","\u9020","\u767e","\u89c4","\u70ed","\u9886","\u4e03","\u6d77","\u53e3","\u4e1c","\u5bfc","\u5668","\u538b","\u5fd7","\u4e16","\u91d1","\u589e","\u4e89","\u6d4e","\u9636","\u6cb9","\u601d","\u672f","\u6781","\u4ea4","\u53d7","\u8054","\u4ec0","\u8ba4","\u516d","\u5171","\u6743","\u6536","\u8bc1","\u6539","\u6e05","\u7f8e","\u518d","\u91c7","\u8f6c","\u66f4","\u5355","\u98ce","\u5207","\u6253","\u767d","\u6559","\u901f","\u82b1","\u5e26","\u5b89","\u573a","\u8eab","\u8f66","\u4f8b","\u771f","\u52a1","\u5177","\u4e07","\u6bcf","\u76ee","\u81f3","\u8fbe","\u8d70","\u79ef","\u793a","\u8bae","\u58f0","\u62a5","\u6597","\u5b8c","\u7c7b","\u516b","\u79bb","\u534e","\u540d","\u786e","\u624d","\u79d1","\u5f20","\u4fe1","\u9a6c","\u8282","\u8bdd","\u7c73","\u6574","\u7a7a","\u5143","\u51b5","\u4eca","\u96c6","\u6e29","\u4f20","\u571f","\u8bb8","\u6b65","\u7fa4","\u5e7f","\u77f3","\u8bb0","\u9700","\u6bb5","\u7814","\u754c","\u62c9","\u6797","\u5f8b","\u53eb","\u4e14","\u7a76","\u89c2","\u8d8a","\u7ec7","\u88c5","\u5f71","\u7b97","\u4f4e","\u6301","\u97f3","\u4f17","\u4e66","\u5e03","\u590d","\u5bb9","\u513f","\u987b","\u9645","\u5546","\u975e","\u9a8c","\u8fde","\u65ad","\u6df1","\u96be","\u8fd1","\u77ff","\u5343","\u5468","\u59d4","\u7d20","\u6280","\u5907","\u534a","\u529e","\u9752","\u7701","\u5217","\u4e60","\u54cd","\u7ea6","\u652f","\u822c","\u53f2","\u611f","\u52b3","\u4fbf","\u56e2","\u5f80","\u9178","\u5386","\u5e02","\u514b","\u4f55","\u9664","\u6d88","\u6784","\u5e9c","\u79f0","\u592a","\u51c6","\u7cbe","\u503c","\u53f7","\u7387","\u65cf","\u7ef4","\u5212","\u9009","\u6807","\u5199","\u5b58","\u5019","\u6bdb","\u4eb2","\u5feb","\u6548","\u65af","\u9662","\u67e5","\u6c5f","\u578b","\u773c","\u738b","\u6309","\u683c","\u517b","\u6613","\u7f6e","\u6d3e","\u5c42","\u7247","\u59cb","\u5374","\u4e13","\u72b6","\u80b2","\u5382","\u4eac","\u8bc6","\u9002","\u5c5e","\u5706","\u5305","\u706b","\u4f4f","\u8c03","\u6ee1","\u53bf","\u5c40","\u7167","\u53c2","\u7ea2","\u7ec6","\u5f15","\u542c","\u8be5","\u94c1","\u4ef7","\u4e25","\u9996","\u5e95","\u6db2","\u5b98","\u5fb7","\u968f","\u75c5","\u82cf","\u5931","\u5c14","\u6b7b","\u8bb2","\u914d","\u5973","\u9ec4","\u63a8","\u663e","\u8c08","\u7f6a","\u795e","\u827a","\u5462","\u5e2d","\u542b","\u4f01","\u671b","\u5bc6","\u6279","\u8425","\u9879","\u9632","\u4e3e","\u7403","\u82f1","\u6c27","\u52bf","\u544a","\u674e","\u53f0","\u843d","\u6728","\u5e2e","\u8f6e","\u7834","\u4e9a","\u5e08","\u56f4","\u6ce8","\u8fdc","\u5b57","\u6750","\u6392","\u4f9b","\u6cb3","\u6001","\u5c01","\u53e6","\u65bd","\u51cf","\u6811","\u6eb6","\u600e","\u6b62","\u6848","\u8a00","\u58eb","\u5747","\u6b66","\u56fa","\u53f6","\u9c7c","\u6ce2","\u89c6","\u4ec5","\u8d39","\u7d27","\u7231","\u5de6","\u7ae0","\u65e9","\u671d","\u5bb3","\u7eed","\u8f7b","\u670d","\u8bd5","\u98df","\u5145","\u5175","\u6e90","\u5224","\u62a4","\u53f8","\u8db3","\u67d0","\u7ec3","\u5dee","\u81f4","\u677f","\u7530","\u964d","\u9ed1","\u72af","\u8d1f","\u51fb","\u8303","\u7ee7","\u5174","\u4f3c","\u4f59","\u575a","\u66f2","\u8f93","\u4fee","\u6545","\u57ce","\u592b","\u591f","\u9001","\u7b14","\u8239","\u5360","\u53f3","\u8d22","\u5403","\u5bcc","\u6625","\u804c","\u89c9","\u6c49","\u753b","\u529f","\u5df4","\u8ddf","\u867d","\u6742","\u98de","\u68c0","\u5438","\u52a9","\u5347","\u9633","\u4e92","\u521d","\u521b","\u6297","\u8003","\u6295","\u574f","\u7b56","\u53e4","\u5f84","\u6362","\u672a","\u8dd1","\u7559","\u94a2","\u66fe","\u7aef","\u8d23","\u7ad9","\u7b80","\u8ff0","\u94b1","\u526f","\u5c3d","\u5e1d","\u5c04","\u8349","\u51b2","\u627f","\u72ec","\u4ee4","\u9650","\u963f","\u5ba3","\u73af","\u53cc","\u8bf7","\u8d85","\u5fae","\u8ba9","\u63a7","\u5dde","\u826f","\u8f74","\u627e","\u5426","\u7eaa","\u76ca","\u4f9d","\u4f18","\u9876","\u7840","\u8f7d","\u5012","\u623f","\u7a81","\u5750","\u7c89","\u654c","\u7565","\u5ba2","\u8881","\u51b7","\u80dc","\u7edd","\u6790","\u5757","\u5242","\u6d4b","\u4e1d","\u534f","\u8bc9","\u5ff5","\u9648","\u4ecd","\u7f57","\u76d0","\u53cb","\u6d0b","\u9519","\u82e6","\u591c","\u5211","\u79fb","\u9891","\u9010","\u9760","\u6df7","\u6bcd","\u77ed","\u76ae","\u7ec8","\u805a","\u6c7d","\u6751","\u4e91","\u54ea","\u65e2","\u8ddd","\u536b","\u505c","\u70c8","\u592e","\u5bdf","\u70e7","\u8fc5","\u5883","\u82e5","\u5370","\u6d32","\u523b","\u62ec","\u6fc0","\u5b54","\u641e","\u751a","\u5ba4","\u5f85","\u6838","\u6821","\u6563","\u4fb5","\u5427","\u7532","\u6e38","\u4e45","\u83dc","\u5473","\u65e7","\u6a21","\u6e56","\u8d27","\u635f","\u9884","\u963b","\u6beb","\u666e","\u7a33","\u4e59","\u5988","\u690d","\u606f","\u6269","\u94f6","\u8bed","\u6325","\u9152","\u5b88","\u62ff","\u5e8f","\u7eb8","\u533b","\u7f3a","\u96e8","\u5417","\u9488","\u5218","\u554a","\u6025","\u5531","\u8bef","\u8bad","\u613f","\u5ba1","\u9644","\u83b7","\u8336","\u9c9c","\u7cae","\u65a4","\u5b69","\u8131","\u786b","\u80a5","\u5584","\u9f99","\u6f14","\u7236","\u6e10","\u8840","\u6b22","\u68b0","\u638c","\u6b4c","\u6c99","\u521a","\u653b","\u8c13","\u76fe","\u8ba8","\u665a","\u7c92","\u4e71","\u71c3","\u77db","\u4e4e","\u6740","\u836f","\u5b81","\u9c81","\u8d35","\u949f","\u7164","\u8bfb","\u73ed","\u4f2f","\u9999","\u4ecb","\u8feb","\u53e5","\u4e30","\u57f9","\u63e1","\u5170","\u62c5","\u5f26","\u86cb","\u6c89","\u5047","\u7a7f","\u6267","\u7b54","\u4e50","\u8c01","\u987a","\u70df","\u7f29","\u5f81","\u8138","\u559c","\u677e","\u811a","\u56f0","\u5f02","\u514d","\u80cc","\u661f","\u798f","\u4e70","\u67d3","\u4e95","\u6982","\u6162","\u6015","\u78c1","\u500d","\u7956","\u7687","\u4fc3","\u9759","\u8865","\u8bc4","\u7ffb","\u8089","\u8df5","\u5c3c","\u8863","\u5bbd","\u626c","\u68c9","\u5e0c","\u4f24","\u64cd","\u5782","\u79cb","\u5b9c","\u6c22","\u5957","\u7763","\u632f","\u67b6","\u4eae","\u672b","\u5baa","\u5e86","\u7f16","\u725b","\u89e6","\u6620","\u96f7","\u9500","\u8bd7","\u5ea7","\u5c45","\u6293","\u88c2","\u80de","\u547c","\u5a18","\u666f","\u5a01","\u7eff","\u6676","\u539a","\u76df","\u8861","\u9e21","\u5b59","\u5ef6","\u5371","\u80f6","\u5c4b","\u4e61","\u4e34","\u9646","\u987e","\u6389","\u5440","\u706f","\u5c81","\u63aa","\u675f","\u8010","\u5267","\u7389","\u8d75","\u8df3","\u54e5","\u5b63","\u8bfe","\u51ef","\u80e1","\u989d","\u6b3e","\u7ecd","\u5377","\u9f50","\u4f1f","\u84b8","\u6b96","\u6c38","\u5b97","\u82d7","\u5ddd","\u7089","\u5ca9","\u5f31","\u96f6","\u6768","\u594f","\u6cbf","\u9732","\u6746","\u63a2","\u6ed1","\u9547","\u996d","\u6d53","\u822a","\u6000","\u8d76","\u5e93","\u593a","\u4f0a","\u7075","\u7a0e","\u9014","\u706d","\u8d5b","\u5f52","\u53ec","\u9f13","\u64ad","\u76d8","\u88c1","\u9669","\u5eb7","\u552f","\u5f55","\u83cc","\u7eaf","\u501f","\u7cd6","\u76d6","\u6a2a","\u7b26","\u79c1","\u52aa","\u5802","\u57df","\u67aa","\u6da6","\u5e45","\u54c8","\u7adf","\u719f","\u866b","\u6cfd","\u8111","\u58e4","\u78b3","\u6b27","\u904d","\u4fa7","\u5be8","\u6562","\u5f7b","\u8651","\u659c","\u8584","\u5ead","\u7eb3","\u5f39","\u9972","\u4f38","\u6298","\u9ea6","\u6e7f","\u6697","\u8377","\u74e6","\u585e","\u5e8a","\u7b51","\u6076","\u6237","\u8bbf","\u5854","\u5947","\u900f","\u6881","\u5200","\u65cb","\u8ff9","\u5361","\u6c2f","\u9047","\u4efd","\u6bd2","\u6ce5","\u9000","\u6d17","\u6446","\u7070","\u5f69","\u5356","\u8017","\u590f","\u62e9","\u5fd9","\u94dc","\u732e","\u786c","\u4e88","\u7e41","\u5708","\u96ea","\u51fd","\u4ea6","\u62bd","\u7bc7","\u9635","\u9634","\u4e01","\u5c3a","\u8ffd","\u5806","\u96c4","\u8fce","\u6cdb","\u7238","\u697c","\u907f","\u8c0b","\u5428","\u91ce","\u732a","\u65d7","\u7d2f","\u504f","\u5178","\u9986","\u7d22","\u79e6","\u8102","\u6f6e","\u7237","\u8c46","\u5ffd","\u6258","\u60ca","\u5851","\u9057","\u6108","\u6731","\u66ff","\u7ea4","\u7c97","\u503e","\u5c1a","\u75db","\u695a","\u8c22","\u594b","\u8d2d","\u78e8","\u541b","\u6c60","\u65c1","\u788e","\u9aa8","\u76d1","\u6355","\u5f1f","\u66b4","\u5272","\u8d2f","\u6b8a","\u91ca","\u8bcd","\u4ea1","\u58c1","\u987f","\u5b9d","\u5348","\u5c18","\u95fb","\u63ed","\u70ae","\u6b8b","\u51ac","\u6865","\u5987","\u8b66","\u7efc","\u62db","\u5434","\u4ed8","\u6d6e","\u906d","\u5f90","\u60a8","\u6447","\u8c37","\u8d5e","\u7bb1","\u9694","\u8ba2","\u7537","\u5439","\u56ed","\u7eb7","\u5510","\u8d25","\u5b8b","\u73bb","\u5de8","\u8015","\u5766","\u8363","\u95ed","\u6e7e","\u952e","\u51e1","\u9a7b","\u9505","\u6551","\u6069","\u5265","\u51dd","\u78b1","\u9f7f","\u622a","\u70bc","\u9ebb","\u7eba","\u7981","\u5e9f","\u76db","\u7248","\u7f13","\u51c0","\u775b","\u660c","\u5a5a","\u6d89","\u7b52","\u5634","\u63d2","\u5cb8","\u6717","\u5e84","\u8857","\u85cf","\u59d1","\u8d38","\u8150","\u5974","\u5566","\u60ef","\u4e58","\u4f19","\u6062","\u5300","\u7eb1","\u624e","\u8fa9","\u8033","\u5f6a","\u81e3","\u4ebf","\u7483","\u62b5","\u8109","\u79c0","\u8428","\u4fc4","\u7f51","\u821e","\u5e97","\u55b7","\u7eb5","\u5bf8","\u6c57","\u6302","\u6d2a","\u8d3a","\u95ea","\u67ec","\u7206","\u70ef","\u6d25","\u7a3b","\u5899","\u8f6f","\u52c7","\u50cf","\u6eda","\u5398","\u8499","\u82b3","\u80af","\u5761","\u67f1","\u8361","\u817f","\u4eea","\u65c5","\u5c3e","\u8f67","\u51b0","\u8d21","\u767b","\u9ece","\u524a","\u94bb","\u52d2","\u9003","\u969c","\u6c28","\u90ed","\u5cf0","\u5e01","\u6e2f","\u4f0f","\u8f68","\u4ea9","\u6bd5","\u64e6","\u83ab","\u523a","\u6d6a","\u79d8","\u63f4","\u682a","\u5065","\u552e","\u80a1","\u5c9b","\u7518","\u6ce1","\u7761","\u7ae5","\u94f8","\u6c64","\u9600","\u4f11","\u6c47","\u820d","\u7267","\u7ed5","\u70b8","\u54f2","\u78f7","\u7ee9","\u670b","\u6de1","\u5c16","\u542f","\u9677","\u67f4","\u5448","\u5f92","\u989c","\u6cea","\u7a0d","\u5fd8","\u6cf5","\u84dd","\u62d6","\u6d1e","\u6388","\u955c","\u8f9b","\u58ee","\u950b","\u8d2b","\u865a","\u5f2f","\u6469","\u6cf0","\u5e7c","\u5ef7","\u5c0a","\u7a97","\u7eb2","\u5f04","\u96b6","\u7591","\u6c0f","\u5bab","\u59d0","\u9707","\u745e","\u602a","\u5c24","\u7434","\u5faa","\u63cf","\u819c","\u8fdd","\u5939","\u8170","\u7f18","\u73e0","\u7a77","\u68ee","\u679d","\u7af9","\u6c9f","\u50ac","\u7ef3","\u5fc6","\u90a6","\u5269","\u5e78","\u6d46","\u680f","\u62e5","\u7259","\u8d2e","\u793c","\u6ee4","\u94a0","\u7eb9","\u7f62","\u62cd","\u54b1","\u558a","\u8896","\u57c3","\u52e4","\u7f5a","\u7126","\u6f5c","\u4f0d","\u58a8","\u6b32","\u7f1d","\u59d3","\u520a","\u9971","\u4eff","\u5956","\u94dd","\u9b3c","\u4e3d","\u8de8","\u9ed8","\u6316","\u94fe","\u626b","\u559d","\u888b","\u70ad","\u6c61","\u5e55","\u8bf8","\u5f27","\u52b1","\u6885","\u5976","\u6d01","\u707e","\u821f","\u9274","\u82ef","\u8bbc","\u62b1","\u6bc1","\u61c2","\u5bd2","\u667a","\u57d4","\u5bc4","\u5c4a","\u8dc3","\u6e21","\u6311","\u4e39","\u8270","\u8d1d","\u78b0","\u62d4","\u7239","\u6234","\u7801","\u68a6","\u82bd","\u7194","\u8d64","\u6e14","\u54ed","\u656c","\u9897","\u5954","\u94c5","\u4ef2","\u864e","\u7a00","\u59b9","\u4e4f","\u73cd","\u7533","\u684c","\u9075","\u5141","\u9686","\u87ba","\u4ed3","\u9b4f","\u9510","\u6653","\u6c2e","\u517c","\u9690","\u788d","\u8d6b","\u62e8","\u5fe0","\u8083","\u7f38","\u7275","\u62a2","\u535a","\u5de7","\u58f3","\u5144","\u675c","\u8baf","\u8bda","\u78a7","\u7965","\u67ef","\u9875","\u5de1","\u77e9","\u60b2","\u704c","\u9f84","\u4f26","\u7968","\u5bfb","\u6842","\u94fa","\u5723","\u6050","\u6070","\u90d1","\u8da3","\u62ac","\u8352","\u817e","\u8d34","\u67d4","\u6ef4","\u731b","\u9614","\u8f86","\u59bb","\u586b","\u64a4","\u50a8","\u7b7e","\u95f9","\u6270","\u7d2b","\u7802","\u9012","\u620f","\u540a","\u9676","\u4f10","\u5582","\u7597","\u74f6","\u5a46","\u629a","\u81c2","\u6478","\u5fcd","\u867e","\u8721","\u90bb","\u80f8","\u5de9","\u6324","\u5076","\u5f03","\u69fd","\u52b2","\u4e73","\u9093","\u5409","\u4ec1","\u70c2","\u7816","\u79df","\u4e4c","\u8230","\u4f34","\u74dc","\u6d45","\u4e19","\u6682","\u71e5","\u6a61","\u67f3","\u8ff7","\u6696","\u724c","\u79e7","\u80c6","\u8be6","\u7c27","\u8e0f","\u74f7","\u8c31","\u5446","\u5bbe","\u7cca","\u6d1b","\u8f89","\u6124","\u7ade","\u9699","\u6012","\u7c98","\u4e43","\u7eea","\u80a9","\u7c4d","\u654f","\u6d82","\u7199","\u7686","\u4fa6","\u60ac","\u6398","\u4eab","\u7ea0","\u9192","\u72c2","\u9501","\u6dc0","\u6068","\u7272","\u9738","\u722c","\u8d4f","\u9006","\u73a9","\u9675","\u795d","\u79d2","\u6d59","\u8c8c","\u5f79","\u5f7c","\u6089","\u9e2d","\u8d8b","\u51e4","\u6668","\u755c","\u8f88","\u79e9","\u5375","\u7f72","\u68af","\u708e","\u6ee9","\u68cb","\u9a71","\u7b5b","\u5ce1","\u5192","\u5565","\u5bff","\u8bd1","\u6d78","\u6cc9","\u5e3d","\u8fdf","\u7845","\u7586","\u8d37","\u6f0f","\u7a3f","\u51a0","\u5ae9","\u80c1","\u82af","\u7262","\u53db","\u8680","\u5965","\u9e23","\u5cad","\u7f8a","\u51ed","\u4e32","\u5858","\u7ed8","\u9175","\u878d","\u76c6","\u9521","\u5e99","\u7b79","\u51bb","\u8f85","\u6444","\u88ad","\u7b4b","\u62d2","\u50da","\u65f1","\u94be","\u9e1f","\u6f06","\u6c88","\u7709","\u758f","\u6dfb","\u68d2","\u7a57","\u785d","\u97e9","\u903c","\u626d","\u4fa8","\u51c9","\u633a","\u7897","\u683d","\u7092","\u676f","\u60a3","\u998f","\u529d","\u8c6a","\u8fbd","\u52c3","\u9e3f","\u65e6","\u540f","\u62dc","\u72d7","\u57cb","\u8f8a","\u63a9","\u996e","\u642c","\u9a82","\u8f9e","\u52fe","\u6263","\u4f30","\u848b","\u7ed2","\u96fe","\u4e08","\u6735","\u59c6","\u62df","\u5b87","\u8f91","\u9655","\u96d5","\u507f","\u84c4","\u5d07","\u526a","\u5021","\u5385","\u54ac","\u9a76","\u85af","\u5237","\u65a5","\u756a","\u8d4b","\u5949","\u4f5b","\u6d47","\u6f2b","\u66fc","\u6247","\u9499","\u6843","\u6276","\u4ed4","\u8fd4","\u4fd7","\u4e8f","\u8154","\u978b","\u68f1","\u8986","\u6846","\u6084","\u53d4","\u649e","\u9a97","\u52d8","\u65fa","\u6cb8","\u5b64","\u5410","\u5b5f","\u6e20","\u5c48","\u75be","\u5999","\u60dc","\u4ef0","\u72e0","\u80c0","\u8c10","\u629b","\u9709","\u6851","\u5c97","\u561b","\u8870","\u76d7","\u6e17","\u810f","\u8d56","\u6d8c","\u751c","\u66f9","\u9605","\u808c","\u54e9","\u5389","\u70c3","\u7eac","\u6bc5","\u6628","\u4f2a","\u75c7","\u716e","\u53f9","\u9489","\u642d","\u830e","\u7b3c","\u9177","\u5077","\u5f13","\u9525","\u6052","\u6770","\u5751","\u9f3b","\u7ffc","\u7eb6","\u53d9","\u72f1","\u902e","\u7f50","\u7edc","\u68da","\u6291","\u81a8","\u852c","\u5bfa","\u9aa4","\u7a46","\u51b6","\u67af","\u518c","\u5c38","\u51f8","\u7ec5","\u576f","\u727a","\u7130","\u8f70","\u6b23","\u664b","\u7626","\u5fa1","\u952d","\u9526","\u4e27","\u65ec","\u953b","\u5784","\u641c","\u6251","\u9080","\u4ead","\u916f","\u8fc8","\u8212","\u8106","\u9176","\u95f2","\u5fe7","\u915a","\u987d","\u7fbd","\u6da8","\u5378","\u4ed7","\u966a","\u8f9f","\u60e9","\u676d","\u59da","\u809a","\u6349","\u98d8","\u6f02","\u6606","\u6b3a","\u543e","\u90ce","\u70f7","\u6c41","\u5475","\u9970","\u8427","\u96c5","\u90ae","\u8fc1","\u71d5","\u6492","\u59fb","\u8d74","\u5bb4","\u70e6","\u503a","\u5e10","\u6591","\u94c3","\u65e8","\u9187","\u8463","\u997c","\u96cf","\u59ff","\u62cc","\u5085","\u8179","\u59a5","\u63c9","\u8d24","\u62c6","\u6b6a","\u8461","\u80fa","\u4e22","\u6d69","\u5fbd","\u6602","\u57ab","\u6321","\u89c8","\u8d2a","\u6170","\u7f34","\u6c6a","\u614c","\u51af","\u8bfa","\u59dc","\u8c0a","\u51f6","\u52a3","\u8bec","\u8000","\u660f","\u8eba","\u76c8","\u9a91","\u4e54","\u6eaa","\u4e1b","\u5362","\u62b9","\u95f7","\u54a8","\u522e","\u9a7e","\u7f06","\u609f","\u6458","\u94d2","\u63b7","\u9887","\u5e7b","\u67c4","\u60e0","\u60e8","\u4f73","\u4ec7","\u814a","\u7a9d","\u6da4","\u5251","\u77a7","\u5821","\u6cfc","\u8471","\u7f69","\u970d","\u635e","\u80ce","\u82cd","\u6ee8","\u4fe9","\u6345","\u6e58","\u780d","\u971e","\u90b5","\u8404","\u75af","\u6dee","\u9042","\u718a","\u7caa","\u70d8","\u5bbf","\u6863","\u6208","\u9a73","\u5ac2","\u88d5","\u5f99","\u7bad","\u6350","\u80a0","\u6491","\u6652","\u8fa8","\u6bbf","\u83b2","\u644a","\u6405","\u9171","\u5c4f","\u75ab","\u54c0","\u8521","\u5835","\u6cab","\u76b1","\u7545","\u53e0","\u9601","\u83b1","\u6572","\u8f96","\u94a9","\u75d5","\u575d","\u5df7","\u997f","\u7978","\u4e18","\u7384","\u6e9c","\u66f0","\u903b","\u5f6d","\u5c1d","\u537f","\u59a8","\u8247","\u541e","\u97e6","\u6028","\u77ee","\u6b47"]')},81:e=>{"use strict";e.exports=JSON.parse('["\u7684","\u4e00","\u662f","\u5728","\u4e0d","\u4e86","\u6709","\u548c","\u4eba","\u9019","\u4e2d","\u5927","\u70ba","\u4e0a","\u500b","\u570b","\u6211","\u4ee5","\u8981","\u4ed6","\u6642","\u4f86","\u7528","\u5011","\u751f","\u5230","\u4f5c","\u5730","\u65bc","\u51fa","\u5c31","\u5206","\u5c0d","\u6210","\u6703","\u53ef","\u4e3b","\u767c","\u5e74","\u52d5","\u540c","\u5de5","\u4e5f","\u80fd","\u4e0b","\u904e","\u5b50","\u8aaa","\u7522","\u7a2e","\u9762","\u800c","\u65b9","\u5f8c","\u591a","\u5b9a","\u884c","\u5b78","\u6cd5","\u6240","\u6c11","\u5f97","\u7d93","\u5341","\u4e09","\u4e4b","\u9032","\u8457","\u7b49","\u90e8","\u5ea6","\u5bb6","\u96fb","\u529b","\u88e1","\u5982","\u6c34","\u5316","\u9ad8","\u81ea","\u4e8c","\u7406","\u8d77","\u5c0f","\u7269","\u73fe","\u5be6","\u52a0","\u91cf","\u90fd","\u5169","\u9ad4","\u5236","\u6a5f","\u7576","\u4f7f","\u9ede","\u5f9e","\u696d","\u672c","\u53bb","\u628a","\u6027","\u597d","\u61c9","\u958b","\u5b83","\u5408","\u9084","\u56e0","\u7531","\u5176","\u4e9b","\u7136","\u524d","\u5916","\u5929","\u653f","\u56db","\u65e5","\u90a3","\u793e","\u7fa9","\u4e8b","\u5e73","\u5f62","\u76f8","\u5168","\u8868","\u9593","\u6a23","\u8207","\u95dc","\u5404","\u91cd","\u65b0","\u7dda","\u5167","\u6578","\u6b63","\u5fc3","\u53cd","\u4f60","\u660e","\u770b","\u539f","\u53c8","\u9ebc","\u5229","\u6bd4","\u6216","\u4f46","\u8cea","\u6c23","\u7b2c","\u5411","\u9053","\u547d","\u6b64","\u8b8a","\u689d","\u53ea","\u6c92","\u7d50","\u89e3","\u554f","\u610f","\u5efa","\u6708","\u516c","\u7121","\u7cfb","\u8ecd","\u5f88","\u60c5","\u8005","\u6700","\u7acb","\u4ee3","\u60f3","\u5df2","\u901a","\u4e26","\u63d0","\u76f4","\u984c","\u9ee8","\u7a0b","\u5c55","\u4e94","\u679c","\u6599","\u8c61","\u54e1","\u9769","\u4f4d","\u5165","\u5e38","\u6587","\u7e3d","\u6b21","\u54c1","\u5f0f","\u6d3b","\u8a2d","\u53ca","\u7ba1","\u7279","\u4ef6","\u9577","\u6c42","\u8001","\u982d","\u57fa","\u8cc7","\u908a","\u6d41","\u8def","\u7d1a","\u5c11","\u5716","\u5c71","\u7d71","\u63a5","\u77e5","\u8f03","\u5c07","\u7d44","\u898b","\u8a08","\u5225","\u5979","\u624b","\u89d2","\u671f","\u6839","\u8ad6","\u904b","\u8fb2","\u6307","\u5e7e","\u4e5d","\u5340","\u5f37","\u653e","\u6c7a","\u897f","\u88ab","\u5e79","\u505a","\u5fc5","\u6230","\u5148","\u56de","\u5247","\u4efb","\u53d6","\u64da","\u8655","\u968a","\u5357","\u7d66","\u8272","\u5149","\u9580","\u5373","\u4fdd","\u6cbb","\u5317","\u9020","\u767e","\u898f","\u71b1","\u9818","\u4e03","\u6d77","\u53e3","\u6771","\u5c0e","\u5668","\u58d3","\u5fd7","\u4e16","\u91d1","\u589e","\u722d","\u6fdf","\u968e","\u6cb9","\u601d","\u8853","\u6975","\u4ea4","\u53d7","\u806f","\u4ec0","\u8a8d","\u516d","\u5171","\u6b0a","\u6536","\u8b49","\u6539","\u6e05","\u7f8e","\u518d","\u63a1","\u8f49","\u66f4","\u55ae","\u98a8","\u5207","\u6253","\u767d","\u6559","\u901f","\u82b1","\u5e36","\u5b89","\u5834","\u8eab","\u8eca","\u4f8b","\u771f","\u52d9","\u5177","\u842c","\u6bcf","\u76ee","\u81f3","\u9054","\u8d70","\u7a4d","\u793a","\u8b70","\u8072","\u5831","\u9b25","\u5b8c","\u985e","\u516b","\u96e2","\u83ef","\u540d","\u78ba","\u624d","\u79d1","\u5f35","\u4fe1","\u99ac","\u7bc0","\u8a71","\u7c73","\u6574","\u7a7a","\u5143","\u6cc1","\u4eca","\u96c6","\u6eab","\u50b3","\u571f","\u8a31","\u6b65","\u7fa4","\u5ee3","\u77f3","\u8a18","\u9700","\u6bb5","\u7814","\u754c","\u62c9","\u6797","\u5f8b","\u53eb","\u4e14","\u7a76","\u89c0","\u8d8a","\u7e54","\u88dd","\u5f71","\u7b97","\u4f4e","\u6301","\u97f3","\u773e","\u66f8","\u5e03","\u590d","\u5bb9","\u5152","\u9808","\u969b","\u5546","\u975e","\u9a57","\u9023","\u65b7","\u6df1","\u96e3","\u8fd1","\u7926","\u5343","\u9031","\u59d4","\u7d20","\u6280","\u5099","\u534a","\u8fa6","\u9752","\u7701","\u5217","\u7fd2","\u97ff","\u7d04","\u652f","\u822c","\u53f2","\u611f","\u52de","\u4fbf","\u5718","\u5f80","\u9178","\u6b77","\u5e02","\u514b","\u4f55","\u9664","\u6d88","\u69cb","\u5e9c","\u7a31","\u592a","\u6e96","\u7cbe","\u503c","\u865f","\u7387","\u65cf","\u7dad","\u5283","\u9078","\u6a19","\u5beb","\u5b58","\u5019","\u6bdb","\u89aa","\u5feb","\u6548","\u65af","\u9662","\u67e5","\u6c5f","\u578b","\u773c","\u738b","\u6309","\u683c","\u990a","\u6613","\u7f6e","\u6d3e","\u5c64","\u7247","\u59cb","\u537b","\u5c08","\u72c0","\u80b2","\u5ee0","\u4eac","\u8b58","\u9069","\u5c6c","\u5713","\u5305","\u706b","\u4f4f","\u8abf","\u6eff","\u7e23","\u5c40","\u7167","\u53c3","\u7d05","\u7d30","\u5f15","\u807d","\u8a72","\u9435","\u50f9","\u56b4","\u9996","\u5e95","\u6db2","\u5b98","\u5fb7","\u96a8","\u75c5","\u8607","\u5931","\u723e","\u6b7b","\u8b1b","\u914d","\u5973","\u9ec3","\u63a8","\u986f","\u8ac7","\u7f6a","\u795e","\u85dd","\u5462","\u5e2d","\u542b","\u4f01","\u671b","\u5bc6","\u6279","\u71df","\u9805","\u9632","\u8209","\u7403","\u82f1","\u6c27","\u52e2","\u544a","\u674e","\u53f0","\u843d","\u6728","\u5e6b","\u8f2a","\u7834","\u4e9e","\u5e2b","\u570d","\u6ce8","\u9060","\u5b57","\u6750","\u6392","\u4f9b","\u6cb3","\u614b","\u5c01","\u53e6","\u65bd","\u6e1b","\u6a39","\u6eb6","\u600e","\u6b62","\u6848","\u8a00","\u58eb","\u5747","\u6b66","\u56fa","\u8449","\u9b5a","\u6ce2","\u8996","\u50c5","\u8cbb","\u7dca","\u611b","\u5de6","\u7ae0","\u65e9","\u671d","\u5bb3","\u7e8c","\u8f15","\u670d","\u8a66","\u98df","\u5145","\u5175","\u6e90","\u5224","\u8b77","\u53f8","\u8db3","\u67d0","\u7df4","\u5dee","\u81f4","\u677f","\u7530","\u964d","\u9ed1","\u72af","\u8ca0","\u64ca","\u8303","\u7e7c","\u8208","\u4f3c","\u9918","\u5805","\u66f2","\u8f38","\u4fee","\u6545","\u57ce","\u592b","\u5920","\u9001","\u7b46","\u8239","\u4f54","\u53f3","\u8ca1","\u5403","\u5bcc","\u6625","\u8077","\u89ba","\u6f22","\u756b","\u529f","\u5df4","\u8ddf","\u96d6","\u96dc","\u98db","\u6aa2","\u5438","\u52a9","\u6607","\u967d","\u4e92","\u521d","\u5275","\u6297","\u8003","\u6295","\u58de","\u7b56","\u53e4","\u5f91","\u63db","\u672a","\u8dd1","\u7559","\u92fc","\u66fe","\u7aef","\u8cac","\u7ad9","\u7c21","\u8ff0","\u9322","\u526f","\u76e1","\u5e1d","\u5c04","\u8349","\u885d","\u627f","\u7368","\u4ee4","\u9650","\u963f","\u5ba3","\u74b0","\u96d9","\u8acb","\u8d85","\u5fae","\u8b93","\u63a7","\u5dde","\u826f","\u8ef8","\u627e","\u5426","\u7d00","\u76ca","\u4f9d","\u512a","\u9802","\u790e","\u8f09","\u5012","\u623f","\u7a81","\u5750","\u7c89","\u6575","\u7565","\u5ba2","\u8881","\u51b7","\u52dd","\u7d55","\u6790","\u584a","\u5291","\u6e2c","\u7d72","\u5354","\u8a34","\u5ff5","\u9673","\u4ecd","\u7f85","\u9e7d","\u53cb","\u6d0b","\u932f","\u82e6","\u591c","\u5211","\u79fb","\u983b","\u9010","\u9760","\u6df7","\u6bcd","\u77ed","\u76ae","\u7d42","\u805a","\u6c7d","\u6751","\u96f2","\u54ea","\u65e2","\u8ddd","\u885b","\u505c","\u70c8","\u592e","\u5bdf","\u71d2","\u8fc5","\u5883","\u82e5","\u5370","\u6d32","\u523b","\u62ec","\u6fc0","\u5b54","\u641e","\u751a","\u5ba4","\u5f85","\u6838","\u6821","\u6563","\u4fb5","\u5427","\u7532","\u904a","\u4e45","\u83dc","\u5473","\u820a","\u6a21","\u6e56","\u8ca8","\u640d","\u9810","\u963b","\u6beb","\u666e","\u7a69","\u4e59","\u5abd","\u690d","\u606f","\u64f4","\u9280","\u8a9e","\u63ee","\u9152","\u5b88","\u62ff","\u5e8f","\u7d19","\u91ab","\u7f3a","\u96e8","\u55ce","\u91dd","\u5289","\u554a","\u6025","\u5531","\u8aa4","\u8a13","\u9858","\u5be9","\u9644","\u7372","\u8336","\u9bae","\u7ce7","\u65a4","\u5b69","\u812b","\u786b","\u80a5","\u5584","\u9f8d","\u6f14","\u7236","\u6f38","\u8840","\u6b61","\u68b0","\u638c","\u6b4c","\u6c99","\u525b","\u653b","\u8b02","\u76fe","\u8a0e","\u665a","\u7c92","\u4e82","\u71c3","\u77db","\u4e4e","\u6bba","\u85e5","\u5be7","\u9b6f","\u8cb4","\u9418","\u7164","\u8b80","\u73ed","\u4f2f","\u9999","\u4ecb","\u8feb","\u53e5","\u8c50","\u57f9","\u63e1","\u862d","\u64d4","\u5f26","\u86cb","\u6c89","\u5047","\u7a7f","\u57f7","\u7b54","\u6a02","\u8ab0","\u9806","\u7159","\u7e2e","\u5fb5","\u81c9","\u559c","\u677e","\u8173","\u56f0","\u7570","\u514d","\u80cc","\u661f","\u798f","\u8cb7","\u67d3","\u4e95","\u6982","\u6162","\u6015","\u78c1","\u500d","\u7956","\u7687","\u4fc3","\u975c","\u88dc","\u8a55","\u7ffb","\u8089","\u8e10","\u5c3c","\u8863","\u5bec","\u63da","\u68c9","\u5e0c","\u50b7","\u64cd","\u5782","\u79cb","\u5b9c","\u6c2b","\u5957","\u7763","\u632f","\u67b6","\u4eae","\u672b","\u61b2","\u6176","\u7de8","\u725b","\u89f8","\u6620","\u96f7","\u92b7","\u8a69","\u5ea7","\u5c45","\u6293","\u88c2","\u80de","\u547c","\u5a18","\u666f","\u5a01","\u7da0","\u6676","\u539a","\u76df","\u8861","\u96de","\u5b6b","\u5ef6","\u5371","\u81a0","\u5c4b","\u9109","\u81e8","\u9678","\u9867","\u6389","\u5440","\u71c8","\u6b72","\u63aa","\u675f","\u8010","\u5287","\u7389","\u8d99","\u8df3","\u54e5","\u5b63","\u8ab2","\u51f1","\u80e1","\u984d","\u6b3e","\u7d39","\u5377","\u9f4a","\u5049","\u84b8","\u6b96","\u6c38","\u5b97","\u82d7","\u5ddd","\u7210","\u5ca9","\u5f31","\u96f6","\u694a","\u594f","\u6cbf","\u9732","\u687f","\u63a2","\u6ed1","\u93ae","\u98ef","\u6fc3","\u822a","\u61f7","\u8d95","\u5eab","\u596a","\u4f0a","\u9748","\u7a05","\u9014","\u6ec5","\u8cfd","\u6b78","\u53ec","\u9f13","\u64ad","\u76e4","\u88c1","\u96aa","\u5eb7","\u552f","\u9304","\u83cc","\u7d14","\u501f","\u7cd6","\u84cb","\u6a6b","\u7b26","\u79c1","\u52aa","\u5802","\u57df","\u69cd","\u6f64","\u5e45","\u54c8","\u7adf","\u719f","\u87f2","\u6fa4","\u8166","\u58e4","\u78b3","\u6b50","\u904d","\u5074","\u5be8","\u6562","\u5fb9","\u616e","\u659c","\u8584","\u5ead","\u7d0d","\u5f48","\u98fc","\u4f38","\u6298","\u9ea5","\u6fd5","\u6697","\u8377","\u74e6","\u585e","\u5e8a","\u7bc9","\u60e1","\u6236","\u8a2a","\u5854","\u5947","\u900f","\u6881","\u5200","\u65cb","\u8de1","\u5361","\u6c2f","\u9047","\u4efd","\u6bd2","\u6ce5","\u9000","\u6d17","\u64fa","\u7070","\u5f69","\u8ce3","\u8017","\u590f","\u64c7","\u5fd9","\u9285","\u737b","\u786c","\u4e88","\u7e41","\u5708","\u96ea","\u51fd","\u4ea6","\u62bd","\u7bc7","\u9663","\u9670","\u4e01","\u5c3a","\u8ffd","\u5806","\u96c4","\u8fce","\u6cdb","\u7238","\u6a13","\u907f","\u8b00","\u5678","\u91ce","\u8c6c","\u65d7","\u7d2f","\u504f","\u5178","\u9928","\u7d22","\u79e6","\u8102","\u6f6e","\u723a","\u8c46","\u5ffd","\u6258","\u9a5a","\u5851","\u907a","\u6108","\u6731","\u66ff","\u7e96","\u7c97","\u50be","\u5c1a","\u75db","\u695a","\u8b1d","\u596e","\u8cfc","\u78e8","\u541b","\u6c60","\u65c1","\u788e","\u9aa8","\u76e3","\u6355","\u5f1f","\u66b4","\u5272","\u8cab","\u6b8a","\u91cb","\u8a5e","\u4ea1","\u58c1","\u9813","\u5bf6","\u5348","\u5875","\u805e","\u63ed","\u70ae","\u6b98","\u51ac","\u6a4b","\u5a66","\u8b66","\u7d9c","\u62db","\u5433","\u4ed8","\u6d6e","\u906d","\u5f90","\u60a8","\u6416","\u8c37","\u8d0a","\u7bb1","\u9694","\u8a02","\u7537","\u5439","\u5712","\u7d1b","\u5510","\u6557","\u5b8b","\u73bb","\u5de8","\u8015","\u5766","\u69ae","\u9589","\u7063","\u9375","\u51e1","\u99d0","\u934b","\u6551","\u6069","\u525d","\u51dd","\u9e7c","\u9f52","\u622a","\u7149","\u9ebb","\u7d21","\u7981","\u5ee2","\u76db","\u7248","\u7de9","\u6de8","\u775b","\u660c","\u5a5a","\u6d89","\u7b52","\u5634","\u63d2","\u5cb8","\u6717","\u838a","\u8857","\u85cf","\u59d1","\u8cbf","\u8150","\u5974","\u5566","\u6163","\u4e58","\u5925","\u6062","\u52fb","\u7d17","\u624e","\u8faf","\u8033","\u5f6a","\u81e3","\u5104","\u7483","\u62b5","\u8108","\u79c0","\u85a9","\u4fc4","\u7db2","\u821e","\u5e97","\u5674","\u7e31","\u5bf8","\u6c57","\u639b","\u6d2a","\u8cc0","\u9583","\u67ec","\u7206","\u70ef","\u6d25","\u7a3b","\u7246","\u8edf","\u52c7","\u50cf","\u6efe","\u5398","\u8499","\u82b3","\u80af","\u5761","\u67f1","\u76ea","\u817f","\u5100","\u65c5","\u5c3e","\u8ecb","\u51b0","\u8ca2","\u767b","\u9ece","\u524a","\u947d","\u52d2","\u9003","\u969c","\u6c28","\u90ed","\u5cf0","\u5e63","\u6e2f","\u4f0f","\u8ecc","\u755d","\u7562","\u64e6","\u83ab","\u523a","\u6d6a","\u79d8","\u63f4","\u682a","\u5065","\u552e","\u80a1","\u5cf6","\u7518","\u6ce1","\u7761","\u7ae5","\u9444","\u6e6f","\u95a5","\u4f11","\u532f","\u820d","\u7267","\u7e5e","\u70b8","\u54f2","\u78f7","\u7e3e","\u670b","\u6de1","\u5c16","\u555f","\u9677","\u67f4","\u5448","\u5f92","\u984f","\u6dda","\u7a0d","\u5fd8","\u6cf5","\u85cd","\u62d6","\u6d1e","\u6388","\u93e1","\u8f9b","\u58ef","\u92d2","\u8ca7","\u865b","\u5f4e","\u6469","\u6cf0","\u5e7c","\u5ef7","\u5c0a","\u7a97","\u7db1","\u5f04","\u96b8","\u7591","\u6c0f","\u5bae","\u59d0","\u9707","\u745e","\u602a","\u5c24","\u7434","\u5faa","\u63cf","\u819c","\u9055","\u593e","\u8170","\u7de3","\u73e0","\u7aae","\u68ee","\u679d","\u7af9","\u6e9d","\u50ac","\u7e69","\u61b6","\u90a6","\u5269","\u5e78","\u6f3f","\u6b04","\u64c1","\u7259","\u8caf","\u79ae","\u6ffe","\u9209","\u7d0b","\u7f77","\u62cd","\u54b1","\u558a","\u8896","\u57c3","\u52e4","\u7f70","\u7126","\u6f5b","\u4f0d","\u58a8","\u6b32","\u7e2b","\u59d3","\u520a","\u98fd","\u4eff","\u734e","\u92c1","\u9b3c","\u9e97","\u8de8","\u9ed8","\u6316","\u93c8","\u6383","\u559d","\u888b","\u70ad","\u6c61","\u5e55","\u8af8","\u5f27","\u52f5","\u6885","\u5976","\u6f54","\u707d","\u821f","\u9451","\u82ef","\u8a1f","\u62b1","\u6bc0","\u61c2","\u5bd2","\u667a","\u57d4","\u5bc4","\u5c46","\u8e8d","\u6e21","\u6311","\u4e39","\u8271","\u8c9d","\u78b0","\u62d4","\u7239","\u6234","\u78bc","\u5922","\u82bd","\u7194","\u8d64","\u6f01","\u54ed","\u656c","\u9846","\u5954","\u925b","\u4ef2","\u864e","\u7a00","\u59b9","\u4e4f","\u73cd","\u7533","\u684c","\u9075","\u5141","\u9686","\u87ba","\u5009","\u9b4f","\u92b3","\u66c9","\u6c2e","\u517c","\u96b1","\u7919","\u8d6b","\u64a5","\u5fe0","\u8085","\u7f38","\u727d","\u6436","\u535a","\u5de7","\u6bbc","\u5144","\u675c","\u8a0a","\u8aa0","\u78a7","\u7965","\u67ef","\u9801","\u5de1","\u77e9","\u60b2","\u704c","\u9f61","\u502b","\u7968","\u5c0b","\u6842","\u92ea","\u8056","\u6050","\u6070","\u912d","\u8da3","\u62ac","\u8352","\u9a30","\u8cbc","\u67d4","\u6ef4","\u731b","\u95ca","\u8f1b","\u59bb","\u586b","\u64a4","\u5132","\u7c3d","\u9b27","\u64fe","\u7d2b","\u7802","\u905e","\u6232","\u540a","\u9676","\u4f10","\u9935","\u7642","\u74f6","\u5a46","\u64ab","\u81c2","\u6478","\u5fcd","\u8766","\u881f","\u9130","\u80f8","\u978f","\u64e0","\u5076","\u68c4","\u69fd","\u52c1","\u4e73","\u9127","\u5409","\u4ec1","\u721b","\u78da","\u79df","\u70cf","\u8266","\u4f34","\u74dc","\u6dfa","\u4e19","\u66ab","\u71e5","\u6a61","\u67f3","\u8ff7","\u6696","\u724c","\u79e7","\u81bd","\u8a73","\u7c27","\u8e0f","\u74f7","\u8b5c","\u5446","\u8cd3","\u7cca","\u6d1b","\u8f1d","\u61a4","\u7af6","\u9699","\u6012","\u7c98","\u4e43","\u7dd2","\u80a9","\u7c4d","\u654f","\u5857","\u7199","\u7686","\u5075","\u61f8","\u6398","\u4eab","\u7cfe","\u9192","\u72c2","\u9396","\u6dc0","\u6068","\u7272","\u9738","\u722c","\u8cde","\u9006","\u73a9","\u9675","\u795d","\u79d2","\u6d59","\u8c8c","\u5f79","\u5f7c","\u6089","\u9d28","\u8da8","\u9cf3","\u6668","\u755c","\u8f29","\u79e9","\u5375","\u7f72","\u68af","\u708e","\u7058","\u68cb","\u9a45","\u7be9","\u5cfd","\u5192","\u5565","\u58fd","\u8b6f","\u6d78","\u6cc9","\u5e3d","\u9072","\u77fd","\u7586","\u8cb8","\u6f0f","\u7a3f","\u51a0","\u5ae9","\u8105","\u82af","\u7262","\u53db","\u8755","\u5967","\u9cf4","\u5dba","\u7f8a","\u6191","\u4e32","\u5858","\u7e6a","\u9175","\u878d","\u76c6","\u932b","\u5edf","\u7c4c","\u51cd","\u8f14","\u651d","\u8972","\u7b4b","\u62d2","\u50da","\u65f1","\u9240","\u9ce5","\u6f06","\u6c88","\u7709","\u758f","\u6dfb","\u68d2","\u7a57","\u785d","\u97d3","\u903c","\u626d","\u50d1","\u6dbc","\u633a","\u7897","\u683d","\u7092","\u676f","\u60a3","\u993e","\u52f8","\u8c6a","\u907c","\u52c3","\u9d3b","\u65e6","\u540f","\u62dc","\u72d7","\u57cb","\u8f25","\u63a9","\u98f2","\u642c","\u7f75","\u8fad","\u52fe","\u6263","\u4f30","\u8523","\u7d68","\u9727","\u4e08","\u6735","\u59c6","\u64ec","\u5b87","\u8f2f","\u965d","\u96d5","\u511f","\u84c4","\u5d07","\u526a","\u5021","\u5ef3","\u54ac","\u99db","\u85af","\u5237","\u65a5","\u756a","\u8ce6","\u5949","\u4f5b","\u6f86","\u6f2b","\u66fc","\u6247","\u9223","\u6843","\u6276","\u4ed4","\u8fd4","\u4fd7","\u8667","\u8154","\u978b","\u68f1","\u8986","\u6846","\u6084","\u53d4","\u649e","\u9a19","\u52d8","\u65fa","\u6cb8","\u5b64","\u5410","\u5b5f","\u6e20","\u5c48","\u75be","\u5999","\u60dc","\u4ef0","\u72e0","\u8139","\u8ae7","\u62cb","\u9ef4","\u6851","\u5d17","\u561b","\u8870","\u76dc","\u6ef2","\u81df","\u8cf4","\u6e67","\u751c","\u66f9","\u95b1","\u808c","\u54e9","\u53b2","\u70f4","\u7def","\u6bc5","\u6628","\u507d","\u75c7","\u716e","\u5606","\u91d8","\u642d","\u8396","\u7c60","\u9177","\u5077","\u5f13","\u9310","\u6046","\u5091","\u5751","\u9f3b","\u7ffc","\u7db8","\u6558","\u7344","\u902e","\u7f50","\u7d61","\u68da","\u6291","\u81a8","\u852c","\u5bfa","\u9a5f","\u7a46","\u51b6","\u67af","\u518a","\u5c4d","\u51f8","\u7d33","\u576f","\u72a7","\u7130","\u8f5f","\u6b23","\u6649","\u7626","\u79a6","\u9320","\u9326","\u55aa","\u65ec","\u935b","\u58df","\u641c","\u64b2","\u9080","\u4ead","\u916f","\u9081","\u8212","\u8106","\u9176","\u9592","\u6182","\u915a","\u9811","\u7fbd","\u6f32","\u5378","\u4ed7","\u966a","\u95e2","\u61f2","\u676d","\u59da","\u809a","\u6349","\u98c4","\u6f02","\u6606","\u6b3a","\u543e","\u90ce","\u70f7","\u6c41","\u5475","\u98fe","\u856d","\u96c5","\u90f5","\u9077","\u71d5","\u6492","\u59fb","\u8d74","\u5bb4","\u7169","\u50b5","\u5e33","\u6591","\u9234","\u65e8","\u9187","\u8463","\u9905","\u96db","\u59ff","\u62cc","\u5085","\u8179","\u59a5","\u63c9","\u8ce2","\u62c6","\u6b6a","\u8461","\u80fa","\u4e1f","\u6d69","\u5fbd","\u6602","\u588a","\u64cb","\u89bd","\u8caa","\u6170","\u7e73","\u6c6a","\u614c","\u99ae","\u8afe","\u59dc","\u8abc","\u5147","\u52a3","\u8aa3","\u8000","\u660f","\u8eba","\u76c8","\u9a0e","\u55ac","\u6eaa","\u53e2","\u76e7","\u62b9","\u60b6","\u8aee","\u522e","\u99d5","\u7e9c","\u609f","\u6458","\u927a","\u64f2","\u9817","\u5e7b","\u67c4","\u60e0","\u6158","\u4f73","\u4ec7","\u81d8","\u7aa9","\u6ecc","\u528d","\u77a7","\u5821","\u6f51","\u8525","\u7f69","\u970d","\u6488","\u80ce","\u84bc","\u6ff1","\u5006","\u6345","\u6e58","\u780d","\u971e","\u90b5","\u8404","\u760b","\u6dee","\u9042","\u718a","\u7cde","\u70d8","\u5bbf","\u6a94","\u6208","\u99c1","\u5ac2","\u88d5","\u5f99","\u7bad","\u6350","\u8178","\u6490","\u66ec","\u8fa8","\u6bbf","\u84ee","\u6524","\u652a","\u91ac","\u5c4f","\u75ab","\u54c0","\u8521","\u5835","\u6cab","\u76ba","\u66a2","\u758a","\u95a3","\u840a","\u6572","\u8f44","\u9264","\u75d5","\u58e9","\u5df7","\u9913","\u798d","\u4e18","\u7384","\u6e9c","\u66f0","\u908f","\u5f6d","\u5617","\u537f","\u59a8","\u8247","\u541e","\u97cb","\u6028","\u77ee","\u6b47"]')},2607:e=>{"use strict";e.exports=JSON.parse('["abdikace","abeceda","adresa","agrese","akce","aktovka","alej","alkohol","amputace","ananas","andulka","anekdota","anketa","antika","anulovat","archa","arogance","asfalt","asistent","aspirace","astma","astronom","atlas","atletika","atol","autobus","azyl","babka","bachor","bacil","baculka","badatel","bageta","bagr","bahno","bakterie","balada","baletka","balkon","balonek","balvan","balza","bambus","bankomat","barbar","baret","barman","baroko","barva","baterka","batoh","bavlna","bazalka","bazilika","bazuka","bedna","beran","beseda","bestie","beton","bezinka","bezmoc","beztak","bicykl","bidlo","biftek","bikiny","bilance","biograf","biolog","bitva","bizon","blahobyt","blatouch","blecha","bledule","blesk","blikat","blizna","blokovat","bloudit","blud","bobek","bobr","bodlina","bodnout","bohatost","bojkot","bojovat","bokorys","bolest","borec","borovice","bota","boubel","bouchat","bouda","boule","bourat","boxer","bradavka","brambora","branka","bratr","brepta","briketa","brko","brloh","bronz","broskev","brunetka","brusinka","brzda","brzy","bublina","bubnovat","buchta","buditel","budka","budova","bufet","bujarost","bukvice","buldok","bulva","bunda","bunkr","burza","butik","buvol","buzola","bydlet","bylina","bytovka","bzukot","capart","carevna","cedr","cedule","cejch","cejn","cela","celer","celkem","celnice","cenina","cennost","cenovka","centrum","cenzor","cestopis","cetka","chalupa","chapadlo","charita","chata","chechtat","chemie","chichot","chirurg","chlad","chleba","chlubit","chmel","chmura","chobot","chochol","chodba","cholera","chomout","chopit","choroba","chov","chrapot","chrlit","chrt","chrup","chtivost","chudina","chutnat","chvat","chvilka","chvost","chyba","chystat","chytit","cibule","cigareta","cihelna","cihla","cinkot","cirkus","cisterna","citace","citrus","cizinec","cizost","clona","cokoliv","couvat","ctitel","ctnost","cudnost","cuketa","cukr","cupot","cvaknout","cval","cvik","cvrkot","cyklista","daleko","dareba","datel","datum","dcera","debata","dechovka","decibel","deficit","deflace","dekl","dekret","demokrat","deprese","derby","deska","detektiv","dikobraz","diktovat","dioda","diplom","disk","displej","divadlo","divoch","dlaha","dlouho","dluhopis","dnes","dobro","dobytek","docent","dochutit","dodnes","dohled","dohoda","dohra","dojem","dojnice","doklad","dokola","doktor","dokument","dolar","doleva","dolina","doma","dominant","domluvit","domov","donutit","dopad","dopis","doplnit","doposud","doprovod","dopustit","dorazit","dorost","dort","dosah","doslov","dostatek","dosud","dosyta","dotaz","dotek","dotknout","doufat","doutnat","dovozce","dozadu","doznat","dozorce","drahota","drak","dramatik","dravec","draze","drdol","drobnost","drogerie","drozd","drsnost","drtit","drzost","duben","duchovno","dudek","duha","duhovka","dusit","dusno","dutost","dvojice","dvorec","dynamit","ekolog","ekonomie","elektron","elipsa","email","emise","emoce","empatie","epizoda","epocha","epopej","epos","esej","esence","eskorta","eskymo","etiketa","euforie","evoluce","exekuce","exkurze","expedice","exploze","export","extrakt","facka","fajfka","fakulta","fanatik","fantazie","farmacie","favorit","fazole","federace","fejeton","fenka","fialka","figurant","filozof","filtr","finance","finta","fixace","fjord","flanel","flirt","flotila","fond","fosfor","fotbal","fotka","foton","frakce","freska","fronta","fukar","funkce","fyzika","galeje","garant","genetika","geolog","gilotina","glazura","glejt","golem","golfista","gotika","graf","gramofon","granule","grep","gril","grog","groteska","guma","hadice","hadr","hala","halenka","hanba","hanopis","harfa","harpuna","havran","hebkost","hejkal","hejno","hejtman","hektar","helma","hematom","herec","herna","heslo","hezky","historik","hladovka","hlasivky","hlava","hledat","hlen","hlodavec","hloh","hloupost","hltat","hlubina","hluchota","hmat","hmota","hmyz","hnis","hnojivo","hnout","hoblina","hoboj","hoch","hodiny","hodlat","hodnota","hodovat","hojnost","hokej","holinka","holka","holub","homole","honitba","honorace","horal","horda","horizont","horko","horlivec","hormon","hornina","horoskop","horstvo","hospoda","hostina","hotovost","houba","houf","houpat","houska","hovor","hradba","hranice","hravost","hrazda","hrbolek","hrdina","hrdlo","hrdost","hrnek","hrobka","hromada","hrot","hrouda","hrozen","hrstka","hrubost","hryzat","hubenost","hubnout","hudba","hukot","humr","husita","hustota","hvozd","hybnost","hydrant","hygiena","hymna","hysterik","idylka","ihned","ikona","iluze","imunita","infekce","inflace","inkaso","inovace","inspekce","internet","invalida","investor","inzerce","ironie","jablko","jachta","jahoda","jakmile","jakost","jalovec","jantar","jarmark","jaro","jasan","jasno","jatka","javor","jazyk","jedinec","jedle","jednatel","jehlan","jekot","jelen","jelito","jemnost","jenom","jepice","jeseter","jevit","jezdec","jezero","jinak","jindy","jinoch","jiskra","jistota","jitrnice","jizva","jmenovat","jogurt","jurta","kabaret","kabel","kabinet","kachna","kadet","kadidlo","kahan","kajak","kajuta","kakao","kaktus","kalamita","kalhoty","kalibr","kalnost","kamera","kamkoliv","kamna","kanibal","kanoe","kantor","kapalina","kapela","kapitola","kapka","kaple","kapota","kapr","kapusta","kapybara","karamel","karotka","karton","kasa","katalog","katedra","kauce","kauza","kavalec","kazajka","kazeta","kazivost","kdekoliv","kdesi","kedluben","kemp","keramika","kino","klacek","kladivo","klam","klapot","klasika","klaun","klec","klenba","klepat","klesnout","klid","klima","klisna","klobouk","klokan","klopa","kloub","klubovna","klusat","kluzkost","kmen","kmitat","kmotr","kniha","knot","koalice","koberec","kobka","kobliha","kobyla","kocour","kohout","kojenec","kokos","koktejl","kolaps","koleda","kolize","kolo","komando","kometa","komik","komnata","komora","kompas","komunita","konat","koncept","kondice","konec","konfese","kongres","konina","konkurs","kontakt","konzerva","kopanec","kopie","kopnout","koprovka","korbel","korektor","kormidlo","koroptev","korpus","koruna","koryto","korzet","kosatec","kostka","kotel","kotleta","kotoul","koukat","koupelna","kousek","kouzlo","kovboj","koza","kozoroh","krabice","krach","krajina","kralovat","krasopis","kravata","kredit","krejcar","kresba","kreveta","kriket","kritik","krize","krkavec","krmelec","krmivo","krocan","krok","kronika","kropit","kroupa","krovka","krtek","kruhadlo","krupice","krutost","krvinka","krychle","krypta","krystal","kryt","kudlanka","kufr","kujnost","kukla","kulajda","kulich","kulka","kulomet","kultura","kuna","kupodivu","kurt","kurzor","kutil","kvalita","kvasinka","kvestor","kynolog","kyselina","kytara","kytice","kytka","kytovec","kyvadlo","labrador","lachtan","ladnost","laik","lakomec","lamela","lampa","lanovka","lasice","laso","lastura","latinka","lavina","lebka","leckdy","leden","lednice","ledovka","ledvina","legenda","legie","legrace","lehce","lehkost","lehnout","lektvar","lenochod","lentilka","lepenka","lepidlo","letadlo","letec","letmo","letokruh","levhart","levitace","levobok","libra","lichotka","lidojed","lidskost","lihovina","lijavec","lilek","limetka","linie","linka","linoleum","listopad","litina","litovat","lobista","lodivod","logika","logoped","lokalita","loket","lomcovat","lopata","lopuch","lord","losos","lotr","loudal","louh","louka","louskat","lovec","lstivost","lucerna","lucifer","lump","lusk","lustrace","lvice","lyra","lyrika","lysina","madam","madlo","magistr","mahagon","majetek","majitel","majorita","makak","makovice","makrela","malba","malina","malovat","malvice","maminka","mandle","manko","marnost","masakr","maskot","masopust","matice","matrika","maturita","mazanec","mazivo","mazlit","mazurka","mdloba","mechanik","meditace","medovina","melasa","meloun","mentolka","metla","metoda","metr","mezera","migrace","mihnout","mihule","mikina","mikrofon","milenec","milimetr","milost","mimika","mincovna","minibar","minomet","minulost","miska","mistr","mixovat","mladost","mlha","mlhovina","mlok","mlsat","mluvit","mnich","mnohem","mobil","mocnost","modelka","modlitba","mohyla","mokro","molekula","momentka","monarcha","monokl","monstrum","montovat","monzun","mosaz","moskyt","most","motivace","motorka","motyka","moucha","moudrost","mozaika","mozek","mozol","mramor","mravenec","mrkev","mrtvola","mrzet","mrzutost","mstitel","mudrc","muflon","mulat","mumie","munice","muset","mutace","muzeum","muzikant","myslivec","mzda","nabourat","nachytat","nadace","nadbytek","nadhoz","nadobro","nadpis","nahlas","nahnat","nahodile","nahradit","naivita","najednou","najisto","najmout","naklonit","nakonec","nakrmit","nalevo","namazat","namluvit","nanometr","naoko","naopak","naostro","napadat","napevno","naplnit","napnout","naposled","naprosto","narodit","naruby","narychlo","nasadit","nasekat","naslepo","nastat","natolik","navenek","navrch","navzdory","nazvat","nebe","nechat","necky","nedaleko","nedbat","neduh","negace","nehet","nehoda","nejen","nejprve","neklid","nelibost","nemilost","nemoc","neochota","neonka","nepokoj","nerost","nerv","nesmysl","nesoulad","netvor","neuron","nevina","nezvykle","nicota","nijak","nikam","nikdy","nikl","nikterak","nitro","nocleh","nohavice","nominace","nora","norek","nositel","nosnost","nouze","noviny","novota","nozdra","nuda","nudle","nuget","nutit","nutnost","nutrie","nymfa","obal","obarvit","obava","obdiv","obec","obehnat","obejmout","obezita","obhajoba","obilnice","objasnit","objekt","obklopit","oblast","oblek","obliba","obloha","obluda","obnos","obohatit","obojek","obout","obrazec","obrna","obruba","obrys","obsah","obsluha","obstarat","obuv","obvaz","obvinit","obvod","obvykle","obyvatel","obzor","ocas","ocel","ocenit","ochladit","ochota","ochrana","ocitnout","odboj","odbyt","odchod","odcizit","odebrat","odeslat","odevzdat","odezva","odhadce","odhodit","odjet","odjinud","odkaz","odkoupit","odliv","odluka","odmlka","odolnost","odpad","odpis","odplout","odpor","odpustit","odpykat","odrazka","odsoudit","odstup","odsun","odtok","odtud","odvaha","odveta","odvolat","odvracet","odznak","ofina","ofsajd","ohlas","ohnisko","ohrada","ohrozit","ohryzek","okap","okenice","oklika","okno","okouzlit","okovy","okrasa","okres","okrsek","okruh","okupant","okurka","okusit","olejnina","olizovat","omak","omeleta","omezit","omladina","omlouvat","omluva","omyl","onehdy","opakovat","opasek","operace","opice","opilost","opisovat","opora","opozice","opravdu","oproti","orbital","orchestr","orgie","orlice","orloj","ortel","osada","oschnout","osika","osivo","oslava","oslepit","oslnit","oslovit","osnova","osoba","osolit","ospalec","osten","ostraha","ostuda","ostych","osvojit","oteplit","otisk","otop","otrhat","otrlost","otrok","otruby","otvor","ovanout","ovar","oves","ovlivnit","ovoce","oxid","ozdoba","pachatel","pacient","padouch","pahorek","pakt","palanda","palec","palivo","paluba","pamflet","pamlsek","panenka","panika","panna","panovat","panstvo","pantofle","paprika","parketa","parodie","parta","paruka","paryba","paseka","pasivita","pastelka","patent","patrona","pavouk","pazneht","pazourek","pecka","pedagog","pejsek","peklo","peloton","penalta","pendrek","penze","periskop","pero","pestrost","petarda","petice","petrolej","pevnina","pexeso","pianista","piha","pijavice","pikle","piknik","pilina","pilnost","pilulka","pinzeta","pipeta","pisatel","pistole","pitevna","pivnice","pivovar","placenta","plakat","plamen","planeta","plastika","platit","plavidlo","plaz","plech","plemeno","plenta","ples","pletivo","plevel","plivat","plnit","plno","plocha","plodina","plomba","plout","pluk","plyn","pobavit","pobyt","pochod","pocit","poctivec","podat","podcenit","podepsat","podhled","podivit","podklad","podmanit","podnik","podoba","podpora","podraz","podstata","podvod","podzim","poezie","pohanka","pohnutka","pohovor","pohroma","pohyb","pointa","pojistka","pojmout","pokazit","pokles","pokoj","pokrok","pokuta","pokyn","poledne","polibek","polknout","poloha","polynom","pomalu","pominout","pomlka","pomoc","pomsta","pomyslet","ponechat","ponorka","ponurost","popadat","popel","popisek","poplach","poprosit","popsat","popud","poradce","porce","porod","porucha","poryv","posadit","posed","posila","poskok","poslanec","posoudit","pospolu","postava","posudek","posyp","potah","potkan","potlesk","potomek","potrava","potupa","potvora","poukaz","pouto","pouzdro","povaha","povidla","povlak","povoz","povrch","povstat","povyk","povzdech","pozdrav","pozemek","poznatek","pozor","pozvat","pracovat","prahory","praktika","prales","praotec","praporek","prase","pravda","princip","prkno","probudit","procento","prodej","profese","prohra","projekt","prolomit","promile","pronikat","propad","prorok","prosba","proton","proutek","provaz","prskavka","prsten","prudkost","prut","prvek","prvohory","psanec","psovod","pstruh","ptactvo","puberta","puch","pudl","pukavec","puklina","pukrle","pult","pumpa","punc","pupen","pusa","pusinka","pustina","putovat","putyka","pyramida","pysk","pytel","racek","rachot","radiace","radnice","radon","raft","ragby","raketa","rakovina","rameno","rampouch","rande","rarach","rarita","rasovna","rastr","ratolest","razance","razidlo","reagovat","reakce","recept","redaktor","referent","reflex","rejnok","reklama","rekord","rekrut","rektor","reputace","revize","revma","revolver","rezerva","riskovat","riziko","robotika","rodokmen","rohovka","rokle","rokoko","romaneto","ropovod","ropucha","rorejs","rosol","rostlina","rotmistr","rotoped","rotunda","roubenka","roucho","roup","roura","rovina","rovnice","rozbor","rozchod","rozdat","rozeznat","rozhodce","rozinka","rozjezd","rozkaz","rozloha","rozmar","rozpad","rozruch","rozsah","roztok","rozum","rozvod","rubrika","ruchadlo","rukavice","rukopis","ryba","rybolov","rychlost","rydlo","rypadlo","rytina","ryzost","sadista","sahat","sako","samec","samizdat","samota","sanitka","sardinka","sasanka","satelit","sazba","sazenice","sbor","schovat","sebranka","secese","sedadlo","sediment","sedlo","sehnat","sejmout","sekera","sekta","sekunda","sekvoje","semeno","seno","servis","sesadit","seshora","seskok","seslat","sestra","sesuv","sesypat","setba","setina","setkat","setnout","setrvat","sever","seznam","shoda","shrnout","sifon","silnice","sirka","sirotek","sirup","situace","skafandr","skalisko","skanzen","skaut","skeptik","skica","skladba","sklenice","sklo","skluz","skoba","skokan","skoro","skripta","skrz","skupina","skvost","skvrna","slabika","sladidlo","slanina","slast","slavnost","sledovat","slepec","sleva","slezina","slib","slina","sliznice","slon","sloupek","slovo","sluch","sluha","slunce","slupka","slza","smaragd","smetana","smilstvo","smlouva","smog","smrad","smrk","smrtka","smutek","smysl","snad","snaha","snob","sobota","socha","sodovka","sokol","sopka","sotva","souboj","soucit","soudce","souhlas","soulad","soumrak","souprava","soused","soutok","souviset","spalovna","spasitel","spis","splav","spodek","spojenec","spolu","sponzor","spornost","spousta","sprcha","spustit","sranda","sraz","srdce","srna","srnec","srovnat","srpen","srst","srub","stanice","starosta","statika","stavba","stehno","stezka","stodola","stolek","stopa","storno","stoupat","strach","stres","strhnout","strom","struna","studna","stupnice","stvol","styk","subjekt","subtropy","suchar","sudost","sukno","sundat","sunout","surikata","surovina","svah","svalstvo","svetr","svatba","svazek","svisle","svitek","svoboda","svodidlo","svorka","svrab","sykavka","sykot","synek","synovec","sypat","sypkost","syrovost","sysel","sytost","tabletka","tabule","tahoun","tajemno","tajfun","tajga","tajit","tajnost","taktika","tamhle","tampon","tancovat","tanec","tanker","tapeta","tavenina","tazatel","technika","tehdy","tekutina","telefon","temnota","tendence","tenista","tenor","teplota","tepna","teprve","terapie","termoska","textil","ticho","tiskopis","titulek","tkadlec","tkanina","tlapka","tleskat","tlukot","tlupa","tmel","toaleta","topinka","topol","torzo","touha","toulec","tradice","traktor","tramp","trasa","traverza","trefit","trest","trezor","trhavina","trhlina","trochu","trojice","troska","trouba","trpce","trpitel","trpkost","trubec","truchlit","truhlice","trus","trvat","tudy","tuhnout","tuhost","tundra","turista","turnaj","tuzemsko","tvaroh","tvorba","tvrdost","tvrz","tygr","tykev","ubohost","uboze","ubrat","ubrousek","ubrus","ubytovna","ucho","uctivost","udivit","uhradit","ujednat","ujistit","ujmout","ukazatel","uklidnit","uklonit","ukotvit","ukrojit","ulice","ulita","ulovit","umyvadlo","unavit","uniforma","uniknout","upadnout","uplatnit","uplynout","upoutat","upravit","uran","urazit","usednout","usilovat","usmrtit","usnadnit","usnout","usoudit","ustlat","ustrnout","utahovat","utkat","utlumit","utonout","utopenec","utrousit","uvalit","uvolnit","uvozovka","uzdravit","uzel","uzenina","uzlina","uznat","vagon","valcha","valoun","vana","vandal","vanilka","varan","varhany","varovat","vcelku","vchod","vdova","vedro","vegetace","vejce","velbloud","veletrh","velitel","velmoc","velryba","venkov","veranda","verze","veselka","veskrze","vesnice","vespodu","vesta","veterina","veverka","vibrace","vichr","videohra","vidina","vidle","vila","vinice","viset","vitalita","vize","vizitka","vjezd","vklad","vkus","vlajka","vlak","vlasec","vlevo","vlhkost","vliv","vlnovka","vloupat","vnucovat","vnuk","voda","vodivost","vodoznak","vodstvo","vojensky","vojna","vojsko","volant","volba","volit","volno","voskovka","vozidlo","vozovna","vpravo","vrabec","vracet","vrah","vrata","vrba","vrcholek","vrhat","vrstva","vrtule","vsadit","vstoupit","vstup","vtip","vybavit","vybrat","vychovat","vydat","vydra","vyfotit","vyhledat","vyhnout","vyhodit","vyhradit","vyhubit","vyjasnit","vyjet","vyjmout","vyklopit","vykonat","vylekat","vymazat","vymezit","vymizet","vymyslet","vynechat","vynikat","vynutit","vypadat","vyplatit","vypravit","vypustit","vyrazit","vyrovnat","vyrvat","vyslovit","vysoko","vystavit","vysunout","vysypat","vytasit","vytesat","vytratit","vyvinout","vyvolat","vyvrhel","vyzdobit","vyznat","vzadu","vzbudit","vzchopit","vzdor","vzduch","vzdychat","vzestup","vzhledem","vzkaz","vzlykat","vznik","vzorek","vzpoura","vztah","vztek","xylofon","zabrat","zabydlet","zachovat","zadarmo","zadusit","zafoukat","zahltit","zahodit","zahrada","zahynout","zajatec","zajet","zajistit","zaklepat","zakoupit","zalepit","zamezit","zamotat","zamyslet","zanechat","zanikat","zaplatit","zapojit","zapsat","zarazit","zastavit","zasunout","zatajit","zatemnit","zatknout","zaujmout","zavalit","zavelet","zavinit","zavolat","zavrtat","zazvonit","zbavit","zbrusu","zbudovat","zbytek","zdaleka","zdarma","zdatnost","zdivo","zdobit","zdroj","zdvih","zdymadlo","zelenina","zeman","zemina","zeptat","zezadu","zezdola","zhatit","zhltnout","zhluboka","zhotovit","zhruba","zima","zimnice","zjemnit","zklamat","zkoumat","zkratka","zkumavka","zlato","zlehka","zloba","zlom","zlost","zlozvyk","zmapovat","zmar","zmatek","zmije","zmizet","zmocnit","zmodrat","zmrzlina","zmutovat","znak","znalost","znamenat","znovu","zobrazit","zotavit","zoubek","zoufale","zplodit","zpomalit","zprava","zprostit","zprudka","zprvu","zrada","zranit","zrcadlo","zrnitost","zrno","zrovna","zrychlit","zrzavost","zticha","ztratit","zubovina","zubr","zvednout","zvenku","zvesela","zvon","zvrat","zvukovod","zvyk"]')},7736:e=>{"use strict";e.exports=JSON.parse('["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"]')},5040:e=>{"use strict";e.exports=JSON.parse('["abaisser","abandon","abdiquer","abeille","abolir","aborder","aboutir","aboyer","abrasif","abreuver","abriter","abroger","abrupt","absence","absolu","absurde","abusif","abyssal","acade\u0301mie","acajou","acarien","accabler","accepter","acclamer","accolade","accroche","accuser","acerbe","achat","acheter","aciduler","acier","acompte","acque\u0301rir","acronyme","acteur","actif","actuel","adepte","ade\u0301quat","adhe\u0301sif","adjectif","adjuger","admettre","admirer","adopter","adorer","adoucir","adresse","adroit","adulte","adverbe","ae\u0301rer","ae\u0301ronef","affaire","affecter","affiche","affreux","affubler","agacer","agencer","agile","agiter","agrafer","agre\u0301able","agrume","aider","aiguille","ailier","aimable","aisance","ajouter","ajuster","alarmer","alchimie","alerte","alge\u0300bre","algue","alie\u0301ner","aliment","alle\u0301ger","alliage","allouer","allumer","alourdir","alpaga","altesse","alve\u0301ole","amateur","ambigu","ambre","ame\u0301nager","amertume","amidon","amiral","amorcer","amour","amovible","amphibie","ampleur","amusant","analyse","anaphore","anarchie","anatomie","ancien","ane\u0301antir","angle","angoisse","anguleux","animal","annexer","annonce","annuel","anodin","anomalie","anonyme","anormal","antenne","antidote","anxieux","apaiser","ape\u0301ritif","aplanir","apologie","appareil","appeler","apporter","appuyer","aquarium","aqueduc","arbitre","arbuste","ardeur","ardoise","argent","arlequin","armature","armement","armoire","armure","arpenter","arracher","arriver","arroser","arsenic","arte\u0301riel","article","aspect","asphalte","aspirer","assaut","asservir","assiette","associer","assurer","asticot","astre","astuce","atelier","atome","atrium","atroce","attaque","attentif","attirer","attraper","aubaine","auberge","audace","audible","augurer","aurore","automne","autruche","avaler","avancer","avarice","avenir","averse","aveugle","aviateur","avide","avion","aviser","avoine","avouer","avril","axial","axiome","badge","bafouer","bagage","baguette","baignade","balancer","balcon","baleine","balisage","bambin","bancaire","bandage","banlieue","bannie\u0300re","banquier","barbier","baril","baron","barque","barrage","bassin","bastion","bataille","bateau","batterie","baudrier","bavarder","belette","be\u0301lier","belote","be\u0301ne\u0301fice","berceau","berger","berline","bermuda","besace","besogne","be\u0301tail","beurre","biberon","bicycle","bidule","bijou","bilan","bilingue","billard","binaire","biologie","biopsie","biotype","biscuit","bison","bistouri","bitume","bizarre","blafard","blague","blanchir","blessant","blinder","blond","bloquer","blouson","bobard","bobine","boire","boiser","bolide","bonbon","bondir","bonheur","bonifier","bonus","bordure","borne","botte","boucle","boueux","bougie","boulon","bouquin","bourse","boussole","boutique","boxeur","branche","brasier","brave","brebis","bre\u0300che","breuvage","bricoler","brigade","brillant","brioche","brique","brochure","broder","bronzer","brousse","broyeur","brume","brusque","brutal","bruyant","buffle","buisson","bulletin","bureau","burin","bustier","butiner","butoir","buvable","buvette","cabanon","cabine","cachette","cadeau","cadre","cafe\u0301ine","caillou","caisson","calculer","calepin","calibre","calmer","calomnie","calvaire","camarade","came\u0301ra","camion","campagne","canal","caneton","canon","cantine","canular","capable","caporal","caprice","capsule","capter","capuche","carabine","carbone","caresser","caribou","carnage","carotte","carreau","carton","cascade","casier","casque","cassure","causer","caution","cavalier","caverne","caviar","ce\u0301dille","ceinture","ce\u0301leste","cellule","cendrier","censurer","central","cercle","ce\u0301re\u0301bral","cerise","cerner","cerveau","cesser","chagrin","chaise","chaleur","chambre","chance","chapitre","charbon","chasseur","chaton","chausson","chavirer","chemise","chenille","che\u0301quier","chercher","cheval","chien","chiffre","chignon","chime\u0300re","chiot","chlorure","chocolat","choisir","chose","chouette","chrome","chute","cigare","cigogne","cimenter","cine\u0301ma","cintrer","circuler","cirer","cirque","citerne","citoyen","citron","civil","clairon","clameur","claquer","classe","clavier","client","cligner","climat","clivage","cloche","clonage","cloporte","cobalt","cobra","cocasse","cocotier","coder","codifier","coffre","cogner","cohe\u0301sion","coiffer","coincer","cole\u0300re","colibri","colline","colmater","colonel","combat","come\u0301die","commande","compact","concert","conduire","confier","congeler","connoter","consonne","contact","convexe","copain","copie","corail","corbeau","cordage","corniche","corpus","correct","corte\u0300ge","cosmique","costume","coton","coude","coupure","courage","couteau","couvrir","coyote","crabe","crainte","cravate","crayon","cre\u0301ature","cre\u0301diter","cre\u0301meux","creuser","crevette","cribler","crier","cristal","crite\u0300re","croire","croquer","crotale","crucial","cruel","crypter","cubique","cueillir","cuille\u0300re","cuisine","cuivre","culminer","cultiver","cumuler","cupide","curatif","curseur","cyanure","cycle","cylindre","cynique","daigner","damier","danger","danseur","dauphin","de\u0301battre","de\u0301biter","de\u0301border","de\u0301brider","de\u0301butant","de\u0301caler","de\u0301cembre","de\u0301chirer","de\u0301cider","de\u0301clarer","de\u0301corer","de\u0301crire","de\u0301cupler","de\u0301dale","de\u0301ductif","de\u0301esse","de\u0301fensif","de\u0301filer","de\u0301frayer","de\u0301gager","de\u0301givrer","de\u0301glutir","de\u0301grafer","de\u0301jeuner","de\u0301lice","de\u0301loger","demander","demeurer","de\u0301molir","de\u0301nicher","de\u0301nouer","dentelle","de\u0301nuder","de\u0301part","de\u0301penser","de\u0301phaser","de\u0301placer","de\u0301poser","de\u0301ranger","de\u0301rober","de\u0301sastre","descente","de\u0301sert","de\u0301signer","de\u0301sobe\u0301ir","dessiner","destrier","de\u0301tacher","de\u0301tester","de\u0301tourer","de\u0301tresse","devancer","devenir","deviner","devoir","diable","dialogue","diamant","dicter","diffe\u0301rer","dige\u0301rer","digital","digne","diluer","dimanche","diminuer","dioxyde","directif","diriger","discuter","disposer","dissiper","distance","divertir","diviser","docile","docteur","dogme","doigt","domaine","domicile","dompter","donateur","donjon","donner","dopamine","dortoir","dorure","dosage","doseur","dossier","dotation","douanier","double","douceur","douter","doyen","dragon","draper","dresser","dribbler","droiture","duperie","duplexe","durable","durcir","dynastie","e\u0301blouir","e\u0301carter","e\u0301charpe","e\u0301chelle","e\u0301clairer","e\u0301clipse","e\u0301clore","e\u0301cluse","e\u0301cole","e\u0301conomie","e\u0301corce","e\u0301couter","e\u0301craser","e\u0301cre\u0301mer","e\u0301crivain","e\u0301crou","e\u0301cume","e\u0301cureuil","e\u0301difier","e\u0301duquer","effacer","effectif","effigie","effort","effrayer","effusion","e\u0301galiser","e\u0301garer","e\u0301jecter","e\u0301laborer","e\u0301largir","e\u0301lectron","e\u0301le\u0301gant","e\u0301le\u0301phant","e\u0301le\u0300ve","e\u0301ligible","e\u0301litisme","e\u0301loge","e\u0301lucider","e\u0301luder","emballer","embellir","embryon","e\u0301meraude","e\u0301mission","emmener","e\u0301motion","e\u0301mouvoir","empereur","employer","emporter","emprise","e\u0301mulsion","encadrer","enche\u0300re","enclave","encoche","endiguer","endosser","endroit","enduire","e\u0301nergie","enfance","enfermer","enfouir","engager","engin","englober","e\u0301nigme","enjamber","enjeu","enlever","ennemi","ennuyeux","enrichir","enrobage","enseigne","entasser","entendre","entier","entourer","entraver","e\u0301nume\u0301rer","envahir","enviable","envoyer","enzyme","e\u0301olien","e\u0301paissir","e\u0301pargne","e\u0301patant","e\u0301paule","e\u0301picerie","e\u0301pide\u0301mie","e\u0301pier","e\u0301pilogue","e\u0301pine","e\u0301pisode","e\u0301pitaphe","e\u0301poque","e\u0301preuve","e\u0301prouver","e\u0301puisant","e\u0301querre","e\u0301quipe","e\u0301riger","e\u0301rosion","erreur","e\u0301ruption","escalier","espadon","espe\u0300ce","espie\u0300gle","espoir","esprit","esquiver","essayer","essence","essieu","essorer","estime","estomac","estrade","e\u0301tage\u0300re","e\u0301taler","e\u0301tanche","e\u0301tatique","e\u0301teindre","e\u0301tendoir","e\u0301ternel","e\u0301thanol","e\u0301thique","ethnie","e\u0301tirer","e\u0301toffer","e\u0301toile","e\u0301tonnant","e\u0301tourdir","e\u0301trange","e\u0301troit","e\u0301tude","euphorie","e\u0301valuer","e\u0301vasion","e\u0301ventail","e\u0301vidence","e\u0301viter","e\u0301volutif","e\u0301voquer","exact","exage\u0301rer","exaucer","exceller","excitant","exclusif","excuse","exe\u0301cuter","exemple","exercer","exhaler","exhorter","exigence","exiler","exister","exotique","expe\u0301dier","explorer","exposer","exprimer","exquis","extensif","extraire","exulter","fable","fabuleux","facette","facile","facture","faiblir","falaise","fameux","famille","farceur","farfelu","farine","farouche","fasciner","fatal","fatigue","faucon","fautif","faveur","favori","fe\u0301brile","fe\u0301conder","fe\u0301de\u0301rer","fe\u0301lin","femme","fe\u0301mur","fendoir","fe\u0301odal","fermer","fe\u0301roce","ferveur","festival","feuille","feutre","fe\u0301vrier","fiasco","ficeler","fictif","fide\u0300le","figure","filature","filetage","filie\u0300re","filleul","filmer","filou","filtrer","financer","finir","fiole","firme","fissure","fixer","flairer","flamme","flasque","flatteur","fle\u0301au","fle\u0300che","fleur","flexion","flocon","flore","fluctuer","fluide","fluvial","folie","fonderie","fongible","fontaine","forcer","forgeron","formuler","fortune","fossile","foudre","fouge\u0300re","fouiller","foulure","fourmi","fragile","fraise","franchir","frapper","frayeur","fre\u0301gate","freiner","frelon","fre\u0301mir","fre\u0301ne\u0301sie","fre\u0300re","friable","friction","frisson","frivole","froid","fromage","frontal","frotter","fruit","fugitif","fuite","fureur","furieux","furtif","fusion","futur","gagner","galaxie","galerie","gambader","garantir","gardien","garnir","garrigue","gazelle","gazon","ge\u0301ant","ge\u0301latine","ge\u0301lule","gendarme","ge\u0301ne\u0301ral","ge\u0301nie","genou","gentil","ge\u0301ologie","ge\u0301ome\u0300tre","ge\u0301ranium","germe","gestuel","geyser","gibier","gicler","girafe","givre","glace","glaive","glisser","globe","gloire","glorieux","golfeur","gomme","gonfler","gorge","gorille","goudron","gouffre","goulot","goupille","gourmand","goutte","graduel","graffiti","graine","grand","grappin","gratuit","gravir","grenat","griffure","griller","grimper","grogner","gronder","grotte","groupe","gruger","grutier","gruye\u0300re","gue\u0301pard","guerrier","guide","guimauve","guitare","gustatif","gymnaste","gyrostat","habitude","hachoir","halte","hameau","hangar","hanneton","haricot","harmonie","harpon","hasard","he\u0301lium","he\u0301matome","herbe","he\u0301risson","hermine","he\u0301ron","he\u0301siter","heureux","hiberner","hibou","hilarant","histoire","hiver","homard","hommage","homoge\u0300ne","honneur","honorer","honteux","horde","horizon","horloge","hormone","horrible","houleux","housse","hublot","huileux","humain","humble","humide","humour","hurler","hydromel","hygie\u0300ne","hymne","hypnose","idylle","ignorer","iguane","illicite","illusion","image","imbiber","imiter","immense","immobile","immuable","impact","impe\u0301rial","implorer","imposer","imprimer","imputer","incarner","incendie","incident","incliner","incolore","indexer","indice","inductif","ine\u0301dit","ineptie","inexact","infini","infliger","informer","infusion","inge\u0301rer","inhaler","inhiber","injecter","injure","innocent","inoculer","inonder","inscrire","insecte","insigne","insolite","inspirer","instinct","insulter","intact","intense","intime","intrigue","intuitif","inutile","invasion","inventer","inviter","invoquer","ironique","irradier","irre\u0301el","irriter","isoler","ivoire","ivresse","jaguar","jaillir","jambe","janvier","jardin","jauger","jaune","javelot","jetable","jeton","jeudi","jeunesse","joindre","joncher","jongler","joueur","jouissif","journal","jovial","joyau","joyeux","jubiler","jugement","junior","jupon","juriste","justice","juteux","juve\u0301nile","kayak","kimono","kiosque","label","labial","labourer","lace\u0301rer","lactose","lagune","laine","laisser","laitier","lambeau","lamelle","lampe","lanceur","langage","lanterne","lapin","largeur","larme","laurier","lavabo","lavoir","lecture","le\u0301gal","le\u0301ger","le\u0301gume","lessive","lettre","levier","lexique","le\u0301zard","liasse","libe\u0301rer","libre","licence","licorne","lie\u0300ge","lie\u0300vre","ligature","ligoter","ligue","limer","limite","limonade","limpide","line\u0301aire","lingot","lionceau","liquide","lisie\u0300re","lister","lithium","litige","littoral","livreur","logique","lointain","loisir","lombric","loterie","louer","lourd","loutre","louve","loyal","lubie","lucide","lucratif","lueur","lugubre","luisant","lumie\u0300re","lunaire","lundi","luron","lutter","luxueux","machine","magasin","magenta","magique","maigre","maillon","maintien","mairie","maison","majorer","malaxer","male\u0301fice","malheur","malice","mallette","mammouth","mandater","maniable","manquant","manteau","manuel","marathon","marbre","marchand","mardi","maritime","marqueur","marron","marteler","mascotte","massif","mate\u0301riel","matie\u0300re","matraque","maudire","maussade","mauve","maximal","me\u0301chant","me\u0301connu","me\u0301daille","me\u0301decin","me\u0301diter","me\u0301duse","meilleur","me\u0301lange","me\u0301lodie","membre","me\u0301moire","menacer","mener","menhir","mensonge","mentor","mercredi","me\u0301rite","merle","messager","mesure","me\u0301tal","me\u0301te\u0301ore","me\u0301thode","me\u0301tier","meuble","miauler","microbe","miette","mignon","migrer","milieu","million","mimique","mince","mine\u0301ral","minimal","minorer","minute","miracle","miroiter","missile","mixte","mobile","moderne","moelleux","mondial","moniteur","monnaie","monotone","monstre","montagne","monument","moqueur","morceau","morsure","mortier","moteur","motif","mouche","moufle","moulin","mousson","mouton","mouvant","multiple","munition","muraille","mure\u0300ne","murmure","muscle","muse\u0301um","musicien","mutation","muter","mutuel","myriade","myrtille","myste\u0300re","mythique","nageur","nappe","narquois","narrer","natation","nation","nature","naufrage","nautique","navire","ne\u0301buleux","nectar","ne\u0301faste","ne\u0301gation","ne\u0301gliger","ne\u0301gocier","neige","nerveux","nettoyer","neurone","neutron","neveu","niche","nickel","nitrate","niveau","noble","nocif","nocturne","noirceur","noisette","nomade","nombreux","nommer","normatif","notable","notifier","notoire","nourrir","nouveau","novateur","novembre","novice","nuage","nuancer","nuire","nuisible","nume\u0301ro","nuptial","nuque","nutritif","obe\u0301ir","objectif","obliger","obscur","observer","obstacle","obtenir","obturer","occasion","occuper","oce\u0301an","octobre","octroyer","octupler","oculaire","odeur","odorant","offenser","officier","offrir","ogive","oiseau","oisillon","olfactif","olivier","ombrage","omettre","onctueux","onduler","one\u0301reux","onirique","opale","opaque","ope\u0301rer","opinion","opportun","opprimer","opter","optique","orageux","orange","orbite","ordonner","oreille","organe","orgueil","orifice","ornement","orque","ortie","osciller","osmose","ossature","otarie","ouragan","ourson","outil","outrager","ouvrage","ovation","oxyde","oxyge\u0300ne","ozone","paisible","palace","palmare\u0300s","palourde","palper","panache","panda","pangolin","paniquer","panneau","panorama","pantalon","papaye","papier","papoter","papyrus","paradoxe","parcelle","paresse","parfumer","parler","parole","parrain","parsemer","partager","parure","parvenir","passion","paste\u0300que","paternel","patience","patron","pavillon","pavoiser","payer","paysage","peigne","peintre","pelage","pe\u0301lican","pelle","pelouse","peluche","pendule","pe\u0301ne\u0301trer","pe\u0301nible","pensif","pe\u0301nurie","pe\u0301pite","pe\u0301plum","perdrix","perforer","pe\u0301riode","permuter","perplexe","persil","perte","peser","pe\u0301tale","petit","pe\u0301trir","peuple","pharaon","phobie","phoque","photon","phrase","physique","piano","pictural","pie\u0300ce","pierre","pieuvre","pilote","pinceau","pipette","piquer","pirogue","piscine","piston","pivoter","pixel","pizza","placard","plafond","plaisir","planer","plaque","plastron","plateau","pleurer","plexus","pliage","plomb","plonger","pluie","plumage","pochette","poe\u0301sie","poe\u0300te","pointe","poirier","poisson","poivre","polaire","policier","pollen","polygone","pommade","pompier","ponctuel","ponde\u0301rer","poney","portique","position","posse\u0301der","posture","potager","poteau","potion","pouce","poulain","poumon","pourpre","poussin","pouvoir","prairie","pratique","pre\u0301cieux","pre\u0301dire","pre\u0301fixe","pre\u0301lude","pre\u0301nom","pre\u0301sence","pre\u0301texte","pre\u0301voir","primitif","prince","prison","priver","proble\u0300me","proce\u0301der","prodige","profond","progre\u0300s","proie","projeter","prologue","promener","propre","prospe\u0300re","prote\u0301ger","prouesse","proverbe","prudence","pruneau","psychose","public","puceron","puiser","pulpe","pulsar","punaise","punitif","pupitre","purifier","puzzle","pyramide","quasar","querelle","question","quie\u0301tude","quitter","quotient","racine","raconter","radieux","ragondin","raideur","raisin","ralentir","rallonge","ramasser","rapide","rasage","ratisser","ravager","ravin","rayonner","re\u0301actif","re\u0301agir","re\u0301aliser","re\u0301animer","recevoir","re\u0301citer","re\u0301clamer","re\u0301colter","recruter","reculer","recycler","re\u0301diger","redouter","refaire","re\u0301flexe","re\u0301former","refrain","refuge","re\u0301galien","re\u0301gion","re\u0301glage","re\u0301gulier","re\u0301ite\u0301rer","rejeter","rejouer","relatif","relever","relief","remarque","reme\u0300de","remise","remonter","remplir","remuer","renard","renfort","renifler","renoncer","rentrer","renvoi","replier","reporter","reprise","reptile","requin","re\u0301serve","re\u0301sineux","re\u0301soudre","respect","rester","re\u0301sultat","re\u0301tablir","retenir","re\u0301ticule","retomber","retracer","re\u0301union","re\u0301ussir","revanche","revivre","re\u0301volte","re\u0301vulsif","richesse","rideau","rieur","rigide","rigoler","rincer","riposter","risible","risque","rituel","rival","rivie\u0300re","rocheux","romance","rompre","ronce","rondin","roseau","rosier","rotatif","rotor","rotule","rouge","rouille","rouleau","routine","royaume","ruban","rubis","ruche","ruelle","rugueux","ruiner","ruisseau","ruser","rustique","rythme","sabler","saboter","sabre","sacoche","safari","sagesse","saisir","salade","salive","salon","saluer","samedi","sanction","sanglier","sarcasme","sardine","saturer","saugrenu","saumon","sauter","sauvage","savant","savonner","scalpel","scandale","sce\u0301le\u0301rat","sce\u0301nario","sceptre","sche\u0301ma","science","scinder","score","scrutin","sculpter","se\u0301ance","se\u0301cable","se\u0301cher","secouer","se\u0301cre\u0301ter","se\u0301datif","se\u0301duire","seigneur","se\u0301jour","se\u0301lectif","semaine","sembler","semence","se\u0301minal","se\u0301nateur","sensible","sentence","se\u0301parer","se\u0301quence","serein","sergent","se\u0301rieux","serrure","se\u0301rum","service","se\u0301same","se\u0301vir","sevrage","sextuple","side\u0301ral","sie\u0300cle","sie\u0301ger","siffler","sigle","signal","silence","silicium","simple","since\u0300re","sinistre","siphon","sirop","sismique","situer","skier","social","socle","sodium","soigneux","soldat","soleil","solitude","soluble","sombre","sommeil","somnoler","sonde","songeur","sonnette","sonore","sorcier","sortir","sosie","sottise","soucieux","soudure","souffle","soulever","soupape","source","soutirer","souvenir","spacieux","spatial","spe\u0301cial","sphe\u0300re","spiral","stable","station","sternum","stimulus","stipuler","strict","studieux","stupeur","styliste","sublime","substrat","subtil","subvenir","succe\u0300s","sucre","suffixe","sugge\u0301rer","suiveur","sulfate","superbe","supplier","surface","suricate","surmener","surprise","sursaut","survie","suspect","syllabe","symbole","syme\u0301trie","synapse","syntaxe","syste\u0300me","tabac","tablier","tactile","tailler","talent","talisman","talonner","tambour","tamiser","tangible","tapis","taquiner","tarder","tarif","tartine","tasse","tatami","tatouage","taupe","taureau","taxer","te\u0301moin","temporel","tenaille","tendre","teneur","tenir","tension","terminer","terne","terrible","te\u0301tine","texte","the\u0300me","the\u0301orie","the\u0301rapie","thorax","tibia","tie\u0300de","timide","tirelire","tiroir","tissu","titane","titre","tituber","toboggan","tole\u0301rant","tomate","tonique","tonneau","toponyme","torche","tordre","tornade","torpille","torrent","torse","tortue","totem","toucher","tournage","tousser","toxine","traction","trafic","tragique","trahir","train","trancher","travail","tre\u0300fle","tremper","tre\u0301sor","treuil","triage","tribunal","tricoter","trilogie","triomphe","tripler","triturer","trivial","trombone","tronc","tropical","troupeau","tuile","tulipe","tumulte","tunnel","turbine","tuteur","tutoyer","tuyau","tympan","typhon","typique","tyran","ubuesque","ultime","ultrason","unanime","unifier","union","unique","unitaire","univers","uranium","urbain","urticant","usage","usine","usuel","usure","utile","utopie","vacarme","vaccin","vagabond","vague","vaillant","vaincre","vaisseau","valable","valise","vallon","valve","vampire","vanille","vapeur","varier","vaseux","vassal","vaste","vecteur","vedette","ve\u0301ge\u0301tal","ve\u0301hicule","veinard","ve\u0301loce","vendredi","ve\u0301ne\u0301rer","venger","venimeux","ventouse","verdure","ve\u0301rin","vernir","verrou","verser","vertu","veston","ve\u0301te\u0301ran","ve\u0301tuste","vexant","vexer","viaduc","viande","victoire","vidange","vide\u0301o","vignette","vigueur","vilain","village","vinaigre","violon","vipe\u0300re","virement","virtuose","virus","visage","viseur","vision","visqueux","visuel","vital","vitesse","viticole","vitrine","vivace","vivipare","vocation","voguer","voile","voisin","voiture","volaille","volcan","voltiger","volume","vorace","vortex","voter","vouloir","voyage","voyelle","wagon","xe\u0301non","yacht","ze\u0300bre","ze\u0301nith","zeste","zoologie"]')},5576:e=>{"use strict";e.exports=JSON.parse('["abaco","abbaglio","abbinato","abete","abisso","abolire","abrasivo","abrogato","accadere","accenno","accusato","acetone","achille","acido","acqua","acre","acrilico","acrobata","acuto","adagio","addebito","addome","adeguato","aderire","adipe","adottare","adulare","affabile","affetto","affisso","affranto","aforisma","afoso","africano","agave","agente","agevole","aggancio","agire","agitare","agonismo","agricolo","agrumeto","aguzzo","alabarda","alato","albatro","alberato","albo","albume","alce","alcolico","alettone","alfa","algebra","aliante","alibi","alimento","allagato","allegro","allievo","allodola","allusivo","almeno","alogeno","alpaca","alpestre","altalena","alterno","alticcio","altrove","alunno","alveolo","alzare","amalgama","amanita","amarena","ambito","ambrato","ameba","america","ametista","amico","ammasso","ammenda","ammirare","ammonito","amore","ampio","ampliare","amuleto","anacardo","anagrafe","analista","anarchia","anatra","anca","ancella","ancora","andare","andrea","anello","angelo","angolare","angusto","anima","annegare","annidato","anno","annuncio","anonimo","anticipo","anzi","apatico","apertura","apode","apparire","appetito","appoggio","approdo","appunto","aprile","arabica","arachide","aragosta","araldica","arancio","aratura","arazzo","arbitro","archivio","ardito","arenile","argento","argine","arguto","aria","armonia","arnese","arredato","arringa","arrosto","arsenico","arso","artefice","arzillo","asciutto","ascolto","asepsi","asettico","asfalto","asino","asola","aspirato","aspro","assaggio","asse","assoluto","assurdo","asta","astenuto","astice","astratto","atavico","ateismo","atomico","atono","attesa","attivare","attorno","attrito","attuale","ausilio","austria","autista","autonomo","autunno","avanzato","avere","avvenire","avviso","avvolgere","azione","azoto","azzimo","azzurro","babele","baccano","bacino","baco","badessa","badilata","bagnato","baita","balcone","baldo","balena","ballata","balzano","bambino","bandire","baraonda","barbaro","barca","baritono","barlume","barocco","basilico","basso","batosta","battuto","baule","bava","bavosa","becco","beffa","belgio","belva","benda","benevole","benigno","benzina","bere","berlina","beta","bibita","bici","bidone","bifido","biga","bilancia","bimbo","binocolo","biologo","bipede","bipolare","birbante","birra","biscotto","bisesto","bisnonno","bisonte","bisturi","bizzarro","blando","blatta","bollito","bonifico","bordo","bosco","botanico","bottino","bozzolo","braccio","bradipo","brama","branca","bravura","bretella","brevetto","brezza","briglia","brillante","brindare","broccolo","brodo","bronzina","brullo","bruno","bubbone","buca","budino","buffone","buio","bulbo","buono","burlone","burrasca","bussola","busta","cadetto","caduco","calamaro","calcolo","calesse","calibro","calmo","caloria","cambusa","camerata","camicia","cammino","camola","campale","canapa","candela","cane","canino","canotto","cantina","capace","capello","capitolo","capogiro","cappero","capra","capsula","carapace","carcassa","cardo","carisma","carovana","carretto","cartolina","casaccio","cascata","caserma","caso","cassone","castello","casuale","catasta","catena","catrame","cauto","cavillo","cedibile","cedrata","cefalo","celebre","cellulare","cena","cenone","centesimo","ceramica","cercare","certo","cerume","cervello","cesoia","cespo","ceto","chela","chiaro","chicca","chiedere","chimera","china","chirurgo","chitarra","ciao","ciclismo","cifrare","cigno","cilindro","ciottolo","circa","cirrosi","citrico","cittadino","ciuffo","civetta","civile","classico","clinica","cloro","cocco","codardo","codice","coerente","cognome","collare","colmato","colore","colposo","coltivato","colza","coma","cometa","commando","comodo","computer","comune","conciso","condurre","conferma","congelare","coniuge","connesso","conoscere","consumo","continuo","convegno","coperto","copione","coppia","copricapo","corazza","cordata","coricato","cornice","corolla","corpo","corredo","corsia","cortese","cosmico","costante","cottura","covato","cratere","cravatta","creato","credere","cremoso","crescita","creta","criceto","crinale","crisi","critico","croce","cronaca","crostata","cruciale","crusca","cucire","cuculo","cugino","cullato","cupola","curatore","cursore","curvo","cuscino","custode","dado","daino","dalmata","damerino","daniela","dannoso","danzare","datato","davanti","davvero","debutto","decennio","deciso","declino","decollo","decreto","dedicato","definito","deforme","degno","delegare","delfino","delirio","delta","demenza","denotato","dentro","deposito","derapata","derivare","deroga","descritto","deserto","desiderio","desumere","detersivo","devoto","diametro","dicembre","diedro","difeso","diffuso","digerire","digitale","diluvio","dinamico","dinnanzi","dipinto","diploma","dipolo","diradare","dire","dirotto","dirupo","disagio","discreto","disfare","disgelo","disposto","distanza","disumano","dito","divano","divelto","dividere","divorato","doblone","docente","doganale","dogma","dolce","domato","domenica","dominare","dondolo","dono","dormire","dote","dottore","dovuto","dozzina","drago","druido","dubbio","dubitare","ducale","duna","duomo","duplice","duraturo","ebano","eccesso","ecco","eclissi","economia","edera","edicola","edile","editoria","educare","egemonia","egli","egoismo","egregio","elaborato","elargire","elegante","elencato","eletto","elevare","elfico","elica","elmo","elsa","eluso","emanato","emblema","emesso","emiro","emotivo","emozione","empirico","emulo","endemico","enduro","energia","enfasi","enoteca","entrare","enzima","epatite","epilogo","episodio","epocale","eppure","equatore","erario","erba","erboso","erede","eremita","erigere","ermetico","eroe","erosivo","errante","esagono","esame","esanime","esaudire","esca","esempio","esercito","esibito","esigente","esistere","esito","esofago","esortato","esoso","espanso","espresso","essenza","esso","esteso","estimare","estonia","estroso","esultare","etilico","etnico","etrusco","etto","euclideo","europa","evaso","evidenza","evitato","evoluto","evviva","fabbrica","faccenda","fachiro","falco","famiglia","fanale","fanfara","fango","fantasma","fare","farfalla","farinoso","farmaco","fascia","fastoso","fasullo","faticare","fato","favoloso","febbre","fecola","fede","fegato","felpa","feltro","femmina","fendere","fenomeno","fermento","ferro","fertile","fessura","festivo","fetta","feudo","fiaba","fiducia","fifa","figurato","filo","finanza","finestra","finire","fiore","fiscale","fisico","fiume","flacone","flamenco","flebo","flemma","florido","fluente","fluoro","fobico","focaccia","focoso","foderato","foglio","folata","folclore","folgore","fondente","fonetico","fonia","fontana","forbito","forchetta","foresta","formica","fornaio","foro","fortezza","forzare","fosfato","fosso","fracasso","frana","frassino","fratello","freccetta","frenata","fresco","frigo","frollino","fronde","frugale","frutta","fucilata","fucsia","fuggente","fulmine","fulvo","fumante","fumetto","fumoso","fune","funzione","fuoco","furbo","furgone","furore","fuso","futile","gabbiano","gaffe","galateo","gallina","galoppo","gambero","gamma","garanzia","garbo","garofano","garzone","gasdotto","gasolio","gastrico","gatto","gaudio","gazebo","gazzella","geco","gelatina","gelso","gemello","gemmato","gene","genitore","gennaio","genotipo","gergo","ghepardo","ghiaccio","ghisa","giallo","gilda","ginepro","giocare","gioiello","giorno","giove","girato","girone","gittata","giudizio","giurato","giusto","globulo","glutine","gnomo","gobba","golf","gomito","gommone","gonfio","gonna","governo","gracile","grado","grafico","grammo","grande","grattare","gravoso","grazia","greca","gregge","grifone","grigio","grinza","grotta","gruppo","guadagno","guaio","guanto","guardare","gufo","guidare","ibernato","icona","identico","idillio","idolo","idra","idrico","idrogeno","igiene","ignaro","ignorato","ilare","illeso","illogico","illudere","imballo","imbevuto","imbocco","imbuto","immane","immerso","immolato","impacco","impeto","impiego","importo","impronta","inalare","inarcare","inattivo","incanto","incendio","inchino","incisivo","incluso","incontro","incrocio","incubo","indagine","india","indole","inedito","infatti","infilare","inflitto","ingaggio","ingegno","inglese","ingordo","ingrosso","innesco","inodore","inoltrare","inondato","insano","insetto","insieme","insonnia","insulina","intasato","intero","intonaco","intuito","inumidire","invalido","invece","invito","iperbole","ipnotico","ipotesi","ippica","iride","irlanda","ironico","irrigato","irrorare","isolato","isotopo","isterico","istituto","istrice","italia","iterare","labbro","labirinto","lacca","lacerato","lacrima","lacuna","laddove","lago","lampo","lancetta","lanterna","lardoso","larga","laringe","lastra","latenza","latino","lattuga","lavagna","lavoro","legale","leggero","lembo","lentezza","lenza","leone","lepre","lesivo","lessato","lesto","letterale","leva","levigato","libero","lido","lievito","lilla","limatura","limitare","limpido","lineare","lingua","liquido","lira","lirica","lisca","lite","litigio","livrea","locanda","lode","logica","lombare","londra","longevo","loquace","lorenzo","loto","lotteria","luce","lucidato","lumaca","luminoso","lungo","lupo","luppolo","lusinga","lusso","lutto","macabro","macchina","macero","macinato","madama","magico","maglia","magnete","magro","maiolica","malafede","malgrado","malinteso","malsano","malto","malumore","mana","mancia","mandorla","mangiare","manifesto","mannaro","manovra","mansarda","mantide","manubrio","mappa","maratona","marcire","maretta","marmo","marsupio","maschera","massaia","mastino","materasso","matricola","mattone","maturo","mazurca","meandro","meccanico","mecenate","medesimo","meditare","mega","melassa","melis","melodia","meninge","meno","mensola","mercurio","merenda","merlo","meschino","mese","messere","mestolo","metallo","metodo","mettere","miagolare","mica","micelio","michele","microbo","midollo","miele","migliore","milano","milite","mimosa","minerale","mini","minore","mirino","mirtillo","miscela","missiva","misto","misurare","mitezza","mitigare","mitra","mittente","mnemonico","modello","modifica","modulo","mogano","mogio","mole","molosso","monastero","monco","mondina","monetario","monile","monotono","monsone","montato","monviso","mora","mordere","morsicato","mostro","motivato","motosega","motto","movenza","movimento","mozzo","mucca","mucosa","muffa","mughetto","mugnaio","mulatto","mulinello","multiplo","mummia","munto","muovere","murale","musa","muscolo","musica","mutevole","muto","nababbo","nafta","nanometro","narciso","narice","narrato","nascere","nastrare","naturale","nautica","naviglio","nebulosa","necrosi","negativo","negozio","nemmeno","neofita","neretto","nervo","nessuno","nettuno","neutrale","neve","nevrotico","nicchia","ninfa","nitido","nobile","nocivo","nodo","nome","nomina","nordico","normale","norvegese","nostrano","notare","notizia","notturno","novella","nucleo","nulla","numero","nuovo","nutrire","nuvola","nuziale","oasi","obbedire","obbligo","obelisco","oblio","obolo","obsoleto","occasione","occhio","occidente","occorrere","occultare","ocra","oculato","odierno","odorare","offerta","offrire","offuscato","oggetto","oggi","ognuno","olandese","olfatto","oliato","oliva","ologramma","oltre","omaggio","ombelico","ombra","omega","omissione","ondoso","onere","onice","onnivoro","onorevole","onta","operato","opinione","opposto","oracolo","orafo","ordine","orecchino","orefice","orfano","organico","origine","orizzonte","orma","ormeggio","ornativo","orologio","orrendo","orribile","ortensia","ortica","orzata","orzo","osare","oscurare","osmosi","ospedale","ospite","ossa","ossidare","ostacolo","oste","otite","otre","ottagono","ottimo","ottobre","ovale","ovest","ovino","oviparo","ovocito","ovunque","ovviare","ozio","pacchetto","pace","pacifico","padella","padrone","paese","paga","pagina","palazzina","palesare","pallido","palo","palude","pandoro","pannello","paolo","paonazzo","paprica","parabola","parcella","parere","pargolo","pari","parlato","parola","partire","parvenza","parziale","passivo","pasticca","patacca","patologia","pattume","pavone","peccato","pedalare","pedonale","peggio","peloso","penare","pendice","penisola","pennuto","penombra","pensare","pentola","pepe","pepita","perbene","percorso","perdonato","perforare","pergamena","periodo","permesso","perno","perplesso","persuaso","pertugio","pervaso","pesatore","pesista","peso","pestifero","petalo","pettine","petulante","pezzo","piacere","pianta","piattino","piccino","picozza","piega","pietra","piffero","pigiama","pigolio","pigro","pila","pilifero","pillola","pilota","pimpante","pineta","pinna","pinolo","pioggia","piombo","piramide","piretico","pirite","pirolisi","pitone","pizzico","placebo","planare","plasma","platano","plenario","pochezza","poderoso","podismo","poesia","poggiare","polenta","poligono","pollice","polmonite","polpetta","polso","poltrona","polvere","pomice","pomodoro","ponte","popoloso","porfido","poroso","porpora","porre","portata","posa","positivo","possesso","postulato","potassio","potere","pranzo","prassi","pratica","precluso","predica","prefisso","pregiato","prelievo","premere","prenotare","preparato","presenza","pretesto","prevalso","prima","principe","privato","problema","procura","produrre","profumo","progetto","prolunga","promessa","pronome","proposta","proroga","proteso","prova","prudente","prugna","prurito","psiche","pubblico","pudica","pugilato","pugno","pulce","pulito","pulsante","puntare","pupazzo","pupilla","puro","quadro","qualcosa","quasi","querela","quota","raccolto","raddoppio","radicale","radunato","raffica","ragazzo","ragione","ragno","ramarro","ramingo","ramo","randagio","rantolare","rapato","rapina","rappreso","rasatura","raschiato","rasente","rassegna","rastrello","rata","ravveduto","reale","recepire","recinto","recluta","recondito","recupero","reddito","redimere","regalato","registro","regola","regresso","relazione","remare","remoto","renna","replica","reprimere","reputare","resa","residente","responso","restauro","rete","retina","retorica","rettifica","revocato","riassunto","ribadire","ribelle","ribrezzo","ricarica","ricco","ricevere","riciclato","ricordo","ricreduto","ridicolo","ridurre","rifasare","riflesso","riforma","rifugio","rigare","rigettato","righello","rilassato","rilevato","rimanere","rimbalzo","rimedio","rimorchio","rinascita","rincaro","rinforzo","rinnovo","rinomato","rinsavito","rintocco","rinuncia","rinvenire","riparato","ripetuto","ripieno","riportare","ripresa","ripulire","risata","rischio","riserva","risibile","riso","rispetto","ristoro","risultato","risvolto","ritardo","ritegno","ritmico","ritrovo","riunione","riva","riverso","rivincita","rivolto","rizoma","roba","robotico","robusto","roccia","roco","rodaggio","rodere","roditore","rogito","rollio","romantico","rompere","ronzio","rosolare","rospo","rotante","rotondo","rotula","rovescio","rubizzo","rubrica","ruga","rullino","rumine","rumoroso","ruolo","rupe","russare","rustico","sabato","sabbiare","sabotato","sagoma","salasso","saldatura","salgemma","salivare","salmone","salone","saltare","saluto","salvo","sapere","sapido","saporito","saraceno","sarcasmo","sarto","sassoso","satellite","satira","satollo","saturno","savana","savio","saziato","sbadiglio","sbalzo","sbancato","sbarra","sbattere","sbavare","sbendare","sbirciare","sbloccato","sbocciato","sbrinare","sbruffone","sbuffare","scabroso","scadenza","scala","scambiare","scandalo","scapola","scarso","scatenare","scavato","scelto","scenico","scettro","scheda","schiena","sciarpa","scienza","scindere","scippo","sciroppo","scivolo","sclerare","scodella","scolpito","scomparto","sconforto","scoprire","scorta","scossone","scozzese","scriba","scrollare","scrutinio","scuderia","scultore","scuola","scuro","scusare","sdebitare","sdoganare","seccatura","secondo","sedano","seggiola","segnalato","segregato","seguito","selciato","selettivo","sella","selvaggio","semaforo","sembrare","seme","seminato","sempre","senso","sentire","sepolto","sequenza","serata","serbato","sereno","serio","serpente","serraglio","servire","sestina","setola","settimana","sfacelo","sfaldare","sfamato","sfarzoso","sfaticato","sfera","sfida","sfilato","sfinge","sfocato","sfoderare","sfogo","sfoltire","sforzato","sfratto","sfruttato","sfuggito","sfumare","sfuso","sgabello","sgarbato","sgonfiare","sgorbio","sgrassato","sguardo","sibilo","siccome","sierra","sigla","signore","silenzio","sillaba","simbolo","simpatico","simulato","sinfonia","singolo","sinistro","sino","sintesi","sinusoide","sipario","sisma","sistole","situato","slitta","slogatura","sloveno","smarrito","smemorato","smentito","smeraldo","smilzo","smontare","smottato","smussato","snellire","snervato","snodo","sobbalzo","sobrio","soccorso","sociale","sodale","soffitto","sogno","soldato","solenne","solido","sollazzo","solo","solubile","solvente","somatico","somma","sonda","sonetto","sonnifero","sopire","soppeso","sopra","sorgere","sorpasso","sorriso","sorso","sorteggio","sorvolato","sospiro","sosta","sottile","spada","spalla","spargere","spatola","spavento","spazzola","specie","spedire","spegnere","spelatura","speranza","spessore","spettrale","spezzato","spia","spigoloso","spillato","spinoso","spirale","splendido","sportivo","sposo","spranga","sprecare","spronato","spruzzo","spuntino","squillo","sradicare","srotolato","stabile","stacco","staffa","stagnare","stampato","stantio","starnuto","stasera","statuto","stelo","steppa","sterzo","stiletto","stima","stirpe","stivale","stizzoso","stonato","storico","strappo","stregato","stridulo","strozzare","strutto","stuccare","stufo","stupendo","subentro","succoso","sudore","suggerito","sugo","sultano","suonare","superbo","supporto","surgelato","surrogato","sussurro","sutura","svagare","svedese","sveglio","svelare","svenuto","svezia","sviluppo","svista","svizzera","svolta","svuotare","tabacco","tabulato","tacciare","taciturno","tale","talismano","tampone","tannino","tara","tardivo","targato","tariffa","tarpare","tartaruga","tasto","tattico","taverna","tavolata","tazza","teca","tecnico","telefono","temerario","tempo","temuto","tendone","tenero","tensione","tentacolo","teorema","terme","terrazzo","terzetto","tesi","tesserato","testato","tetro","tettoia","tifare","tigella","timbro","tinto","tipico","tipografo","tiraggio","tiro","titanio","titolo","titubante","tizio","tizzone","toccare","tollerare","tolto","tombola","tomo","tonfo","tonsilla","topazio","topologia","toppa","torba","tornare","torrone","tortora","toscano","tossire","tostatura","totano","trabocco","trachea","trafila","tragedia","tralcio","tramonto","transito","trapano","trarre","trasloco","trattato","trave","treccia","tremolio","trespolo","tributo","tricheco","trifoglio","trillo","trincea","trio","tristezza","triturato","trivella","tromba","trono","troppo","trottola","trovare","truccato","tubatura","tuffato","tulipano","tumulto","tunisia","turbare","turchino","tuta","tutela","ubicato","uccello","uccisore","udire","uditivo","uffa","ufficio","uguale","ulisse","ultimato","umano","umile","umorismo","uncinetto","ungere","ungherese","unicorno","unificato","unisono","unitario","unte","uovo","upupa","uragano","urgenza","urlo","usanza","usato","uscito","usignolo","usuraio","utensile","utilizzo","utopia","vacante","vaccinato","vagabondo","vagliato","valanga","valgo","valico","valletta","valoroso","valutare","valvola","vampata","vangare","vanitoso","vano","vantaggio","vanvera","vapore","varano","varcato","variante","vasca","vedetta","vedova","veduto","vegetale","veicolo","velcro","velina","velluto","veloce","venato","vendemmia","vento","verace","verbale","vergogna","verifica","vero","verruca","verticale","vescica","vessillo","vestale","veterano","vetrina","vetusto","viandante","vibrante","vicenda","vichingo","vicinanza","vidimare","vigilia","vigneto","vigore","vile","villano","vimini","vincitore","viola","vipera","virgola","virologo","virulento","viscoso","visione","vispo","vissuto","visura","vita","vitello","vittima","vivanda","vivido","viziare","voce","voga","volatile","volere","volpe","voragine","vulcano","zampogna","zanna","zappato","zattera","zavorra","zefiro","zelante","zelo","zenzero","zerbino","zibetto","zinco","zircone","zitto","zolla","zotico","zucchero","zufolo","zulu","zuppa"]')},7967:e=>{"use strict";e.exports=JSON.parse('["\u3042\u3044\u3053\u304f\u3057\u3093","\u3042\u3044\u3055\u3064","\u3042\u3044\u305f\u3099","\u3042\u304a\u305d\u3099\u3089","\u3042\u304b\u3061\u3083\u3093","\u3042\u304d\u308b","\u3042\u3051\u304b\u3099\u305f","\u3042\u3051\u308b","\u3042\u3053\u304b\u3099\u308c\u308b","\u3042\u3055\u3044","\u3042\u3055\u3072","\u3042\u3057\u3042\u3068","\u3042\u3057\u3099\u308f\u3046","\u3042\u3059\u3099\u304b\u308b","\u3042\u3059\u3099\u304d","\u3042\u305d\u3075\u3099","\u3042\u305f\u3048\u308b","\u3042\u305f\u305f\u3081\u308b","\u3042\u305f\u308a\u307e\u3048","\u3042\u305f\u308b","\u3042\u3064\u3044","\u3042\u3064\u304b\u3046","\u3042\u3063\u3057\u3085\u304f","\u3042\u3064\u307e\u308a","\u3042\u3064\u3081\u308b","\u3042\u3066\u306a","\u3042\u3066\u306f\u307e\u308b","\u3042\u3072\u308b","\u3042\u3075\u3099\u3089","\u3042\u3075\u3099\u308b","\u3042\u3075\u308c\u308b","\u3042\u307e\u3044","\u3042\u307e\u3068\u3099","\u3042\u307e\u3084\u304b\u3059","\u3042\u307e\u308a","\u3042\u307f\u3082\u306e","\u3042\u3081\u308a\u304b","\u3042\u3084\u307e\u308b","\u3042\u3086\u3080","\u3042\u3089\u3044\u304f\u3099\u307e","\u3042\u3089\u3057","\u3042\u3089\u3059\u3057\u3099","\u3042\u3089\u305f\u3081\u308b","\u3042\u3089\u3086\u308b","\u3042\u3089\u308f\u3059","\u3042\u308a\u304b\u3099\u3068\u3046","\u3042\u308f\u305b\u308b","\u3042\u308f\u3066\u308b","\u3042\u3093\u3044","\u3042\u3093\u304b\u3099\u3044","\u3042\u3093\u3053","\u3042\u3093\u305b\u3099\u3093","\u3042\u3093\u3066\u3044","\u3042\u3093\u306a\u3044","\u3042\u3093\u307e\u308a","\u3044\u3044\u305f\u3099\u3059","\u3044\u304a\u3093","\u3044\u304b\u3099\u3044","\u3044\u304b\u3099\u304f","\u3044\u304d\u304a\u3044","\u3044\u304d\u306a\u308a","\u3044\u304d\u3082\u306e","\u3044\u304d\u308b","\u3044\u304f\u3057\u3099","\u3044\u304f\u3075\u3099\u3093","\u3044\u3051\u306f\u3099\u306a","\u3044\u3051\u3093","\u3044\u3053\u3046","\u3044\u3053\u304f","\u3044\u3053\u3064","\u3044\u3055\u307e\u3057\u3044","\u3044\u3055\u3093","\u3044\u3057\u304d","\u3044\u3057\u3099\u3085\u3046","\u3044\u3057\u3099\u3087\u3046","\u3044\u3057\u3099\u308f\u308b","\u3044\u3059\u3099\u307f","\u3044\u3059\u3099\u308c","\u3044\u305b\u3044","\u3044\u305b\u3048\u3072\u3099","\u3044\u305b\u304b\u3044","\u3044\u305b\u304d","\u3044\u305b\u3099\u3093","\u3044\u305d\u3046\u308d\u3046","\u3044\u305d\u304b\u3099\u3057\u3044","\u3044\u305f\u3099\u3044","\u3044\u305f\u3099\u304f","\u3044\u305f\u3059\u3099\u3089","\u3044\u305f\u307f","\u3044\u305f\u308a\u3042","\u3044\u3061\u304a\u3046","\u3044\u3061\u3057\u3099","\u3044\u3061\u3068\u3099","\u3044\u3061\u306f\u3099","\u3044\u3061\u3075\u3099","\u3044\u3061\u308a\u3085\u3046","\u3044\u3064\u304b","\u3044\u3063\u3057\u3085\u3093","\u3044\u3063\u305b\u3044","\u3044\u3063\u305d\u3046","\u3044\u3063\u305f\u3093","\u3044\u3063\u3061","\u3044\u3063\u3066\u3044","\u3044\u3063\u307b\u309a\u3046","\u3044\u3066\u3055\u3099","\u3044\u3066\u3093","\u3044\u3068\u3099\u3046","\u3044\u3068\u3053","\u3044\u306a\u3044","\u3044\u306a\u304b","\u3044\u306d\u3080\u308a","\u3044\u306e\u3061","\u3044\u306e\u308b","\u3044\u306f\u3064","\u3044\u306f\u3099\u308b","\u3044\u306f\u3093","\u3044\u3072\u3099\u304d","\u3044\u3072\u3093","\u3044\u3075\u304f","\u3044\u3078\u3093","\u3044\u307b\u3046","\u3044\u307f\u3093","\u3044\u3082\u3046\u3068","\u3044\u3082\u305f\u308c","\u3044\u3082\u308a","\u3044\u3084\u304b\u3099\u308b","\u3044\u3084\u3059","\u3044\u3088\u304b\u3093","\u3044\u3088\u304f","\u3044\u3089\u3044","\u3044\u3089\u3059\u3068","\u3044\u308a\u304f\u3099\u3061","\u3044\u308a\u3087\u3046","\u3044\u308c\u3044","\u3044\u308c\u3082\u306e","\u3044\u308c\u308b","\u3044\u308d\u3048\u3093\u3072\u309a\u3064","\u3044\u308f\u3044","\u3044\u308f\u3046","\u3044\u308f\u304b\u3093","\u3044\u308f\u306f\u3099","\u3044\u308f\u3086\u308b","\u3044\u3093\u3051\u3099\u3093\u307e\u3081","\u3044\u3093\u3055\u3064","\u3044\u3093\u3057\u3087\u3046","\u3044\u3093\u3088\u3046","\u3046\u3048\u304d","\u3046\u3048\u308b","\u3046\u304a\u3055\u3099","\u3046\u304b\u3099\u3044","\u3046\u304b\u3075\u3099","\u3046\u304b\u3078\u3099\u308b","\u3046\u304d\u308f","\u3046\u304f\u3089\u3044\u306a","\u3046\u304f\u308c\u308c","\u3046\u3051\u305f\u307e\u308f\u308b","\u3046\u3051\u3064\u3051","\u3046\u3051\u3068\u308b","\u3046\u3051\u3082\u3064","\u3046\u3051\u308b","\u3046\u3053\u3099\u304b\u3059","\u3046\u3053\u3099\u304f","\u3046\u3053\u3093","\u3046\u3055\u304d\u3099","\u3046\u3057\u306a\u3046","\u3046\u3057\u308d\u304b\u3099\u307f","\u3046\u3059\u3044","\u3046\u3059\u304d\u3099","\u3046\u3059\u304f\u3099\u3089\u3044","\u3046\u3059\u3081\u308b","\u3046\u305b\u3064","\u3046\u3061\u3042\u308f\u305b","\u3046\u3061\u304b\u3099\u308f","\u3046\u3061\u304d","\u3046\u3061\u3085\u3046","\u3046\u3063\u304b\u308a","\u3046\u3064\u304f\u3057\u3044","\u3046\u3063\u305f\u3048\u308b","\u3046\u3064\u308b","\u3046\u3068\u3099\u3093","\u3046\u306a\u304d\u3099","\u3046\u306a\u3057\u3099","\u3046\u306a\u3059\u3099\u304f","\u3046\u306a\u308b","\u3046\u306d\u308b","\u3046\u306e\u3046","\u3046\u3075\u3099\u3051\u3099","\u3046\u3075\u3099\u3053\u3099\u3048","\u3046\u307e\u308c\u308b","\u3046\u3081\u308b","\u3046\u3082\u3046","\u3046\u3084\u307e\u3046","\u3046\u3088\u304f","\u3046\u3089\u304b\u3099\u3048\u3059","\u3046\u3089\u304f\u3099\u3061","\u3046\u3089\u306a\u3044","\u3046\u308a\u3042\u3051\u3099","\u3046\u308a\u304d\u308c","\u3046\u308b\u3055\u3044","\u3046\u308c\u3057\u3044","\u3046\u308c\u3086\u304d","\u3046\u308c\u308b","\u3046\u308d\u3053","\u3046\u308f\u304d","\u3046\u308f\u3055","\u3046\u3093\u3053\u3046","\u3046\u3093\u3061\u3093","\u3046\u3093\u3066\u3093","\u3046\u3093\u3068\u3099\u3046","\u3048\u3044\u3048\u3093","\u3048\u3044\u304b\u3099","\u3048\u3044\u304d\u3087\u3046","\u3048\u3044\u3053\u3099","\u3048\u3044\u305b\u3044","\u3048\u3044\u3075\u3099\u3093","\u3048\u3044\u3088\u3046","\u3048\u3044\u308f","\u3048\u304a\u308a","\u3048\u304b\u3099\u304a","\u3048\u304b\u3099\u304f","\u3048\u304d\u305f\u3044","\u3048\u304f\u305b\u308b","\u3048\u3057\u3083\u304f","\u3048\u3059\u3066","\u3048\u3064\u3089\u3093","\u3048\u306e\u304f\u3099","\u3048\u307b\u3046\u307e\u304d","\u3048\u307b\u3093","\u3048\u307e\u304d","\u3048\u3082\u3057\u3099","\u3048\u3082\u306e","\u3048\u3089\u3044","\u3048\u3089\u3075\u3099","\u3048\u308a\u3042","\u3048\u3093\u3048\u3093","\u3048\u3093\u304b\u3044","\u3048\u3093\u304d\u3099","\u3048\u3093\u3051\u3099\u304d","\u3048\u3093\u3057\u3085\u3046","\u3048\u3093\u305b\u3099\u3064","\u3048\u3093\u305d\u304f","\u3048\u3093\u3061\u3087\u3046","\u3048\u3093\u3068\u3064","\u304a\u3044\u304b\u3051\u308b","\u304a\u3044\u3053\u3059","\u304a\u3044\u3057\u3044","\u304a\u3044\u3064\u304f","\u304a\u3046\u3048\u3093","\u304a\u3046\u3055\u307e","\u304a\u3046\u3057\u3099","\u304a\u3046\u305b\u3064","\u304a\u3046\u305f\u3044","\u304a\u3046\u3075\u304f","\u304a\u3046\u3078\u3099\u3044","\u304a\u3046\u3088\u3046","\u304a\u3048\u308b","\u304a\u304a\u3044","\u304a\u304a\u3046","\u304a\u304a\u3068\u3099\u304a\u308a","\u304a\u304a\u3084","\u304a\u304a\u3088\u305d","\u304a\u304b\u3048\u308a","\u304a\u304b\u3059\u3099","\u304a\u304b\u3099\u3080","\u304a\u304b\u308f\u308a","\u304a\u304d\u3099\u306a\u3046","\u304a\u304d\u308b","\u304a\u304f\u3055\u307e","\u304a\u304f\u3057\u3099\u3087\u3046","\u304a\u304f\u308a\u304b\u3099\u306a","\u304a\u304f\u308b","\u304a\u304f\u308c\u308b","\u304a\u3053\u3059","\u304a\u3053\u306a\u3046","\u304a\u3053\u308b","\u304a\u3055\u3048\u308b","\u304a\u3055\u306a\u3044","\u304a\u3055\u3081\u308b","\u304a\u3057\u3044\u308c","\u304a\u3057\u3048\u308b","\u304a\u3057\u3099\u304d\u3099","\u304a\u3057\u3099\u3055\u3093","\u304a\u3057\u3083\u308c","\u304a\u305d\u3089\u304f","\u304a\u305d\u308f\u308b","\u304a\u305f\u304b\u3099\u3044","\u304a\u305f\u304f","\u304a\u305f\u3099\u3084\u304b","\u304a\u3061\u3064\u304f","\u304a\u3063\u3068","\u304a\u3064\u308a","\u304a\u3066\u3099\u304b\u3051","\u304a\u3068\u3057\u3082\u306e","\u304a\u3068\u306a\u3057\u3044","\u304a\u3068\u3099\u308a","\u304a\u3068\u3099\u308d\u304b\u3059","\u304a\u306f\u3099\u3055\u3093","\u304a\u307e\u3044\u308a","\u304a\u3081\u3066\u3099\u3068\u3046","\u304a\u3082\u3044\u3066\u3099","\u304a\u3082\u3046","\u304a\u3082\u305f\u3044","\u304a\u3082\u3061\u3083","\u304a\u3084\u3064","\u304a\u3084\u3086\u3072\u3099","\u304a\u3088\u307b\u3099\u3059","\u304a\u3089\u3093\u305f\u3099","\u304a\u308d\u3059","\u304a\u3093\u304b\u3099\u304f","\u304a\u3093\u3051\u3044","\u304a\u3093\u3057\u3083","\u304a\u3093\u305b\u3093","\u304a\u3093\u305f\u3099\u3093","\u304a\u3093\u3061\u3085\u3046","\u304a\u3093\u3068\u3099\u3051\u3044","\u304b\u3042\u3064","\u304b\u3044\u304b\u3099","\u304b\u3099\u3044\u304d","\u304b\u3099\u3044\u3051\u3093","\u304b\u3099\u3044\u3053\u3046","\u304b\u3044\u3055\u3064","\u304b\u3044\u3057\u3083","\u304b\u3044\u3059\u3044\u3088\u304f","\u304b\u3044\u305b\u3099\u3093","\u304b\u3044\u305d\u3099\u3046\u3068\u3099","\u304b\u3044\u3064\u3046","\u304b\u3044\u3066\u3093","\u304b\u3044\u3068\u3046","\u304b\u3044\u3075\u304f","\u304b\u3099\u3044\u3078\u304d","\u304b\u3044\u307b\u3046","\u304b\u3044\u3088\u3046","\u304b\u3099\u3044\u3089\u3044","\u304b\u3044\u308f","\u304b\u3048\u308b","\u304b\u304a\u308a","\u304b\u304b\u3048\u308b","\u304b\u304b\u3099\u304f","\u304b\u304b\u3099\u3057","\u304b\u304b\u3099\u307f","\u304b\u304f\u3053\u3099","\u304b\u304f\u3068\u304f","\u304b\u3055\u3099\u308b","\u304b\u3099\u305d\u3099\u3046","\u304b\u305f\u3044","\u304b\u305f\u3061","\u304b\u3099\u3061\u3087\u3046","\u304b\u3099\u3063\u304d\u3085\u3046","\u304b\u3099\u3063\u3053\u3046","\u304b\u3099\u3063\u3055\u3093","\u304b\u3099\u3063\u3057\u3087\u3046","\u304b\u306a\u3055\u3099\u308f\u3057","\u304b\u306e\u3046","\u304b\u3099\u306f\u304f","\u304b\u3075\u3099\u304b","\u304b\u307b\u3046","\u304b\u307b\u3053\u3099","\u304b\u307e\u3046","\u304b\u307e\u307b\u3099\u3053","\u304b\u3081\u308c\u304a\u3093","\u304b\u3086\u3044","\u304b\u3088\u3046\u3072\u3099","\u304b\u3089\u3044","\u304b\u308b\u3044","\u304b\u308d\u3046","\u304b\u308f\u304f","\u304b\u308f\u3089","\u304b\u3099\u3093\u304b","\u304b\u3093\u3051\u3044","\u304b\u3093\u3053\u3046","\u304b\u3093\u3057\u3083","\u304b\u3093\u305d\u3046","\u304b\u3093\u305f\u3093","\u304b\u3093\u3061","\u304b\u3099\u3093\u306f\u3099\u308b","\u304d\u3042\u3044","\u304d\u3042\u3064","\u304d\u3044\u308d","\u304d\u3099\u3044\u3093","\u304d\u3046\u3044","\u304d\u3046\u3093","\u304d\u3048\u308b","\u304d\u304a\u3046","\u304d\u304a\u304f","\u304d\u304a\u3061","\u304d\u304a\u3093","\u304d\u304b\u3044","\u304d\u304b\u304f","\u304d\u304b\u3093\u3057\u3083","\u304d\u304d\u3066","\u304d\u304f\u306f\u3099\u308a","\u304d\u304f\u3089\u3051\u3099","\u304d\u3051\u3093\u305b\u3044","\u304d\u3053\u3046","\u304d\u3053\u3048\u308b","\u304d\u3053\u304f","\u304d\u3055\u3044","\u304d\u3055\u304f","\u304d\u3055\u307e","\u304d\u3055\u3089\u304d\u3099","\u304d\u3099\u3057\u3099\u304b\u304b\u3099\u304f","\u304d\u3099\u3057\u304d","\u304d\u3099\u3057\u3099\u305f\u3044\u3051\u3093","\u304d\u3099\u3057\u3099\u306b\u3063\u3066\u3044","\u304d\u3099\u3057\u3099\u3085\u3064\u3057\u3083","\u304d\u3059\u3046","\u304d\u305b\u3044","\u304d\u305b\u304d","\u304d\u305b\u3064","\u304d\u305d\u3046","\u304d\u305d\u3099\u304f","\u304d\u305d\u3099\u3093","\u304d\u305f\u3048\u308b","\u304d\u3061\u3087\u3046","\u304d\u3064\u3048\u3093","\u304d\u3099\u3063\u3061\u308a","\u304d\u3064\u3064\u304d","\u304d\u3064\u306d","\u304d\u3066\u3044","\u304d\u3068\u3099\u3046","\u304d\u3068\u3099\u304f","\u304d\u306a\u3044","\u304d\u306a\u304b\u3099","\u304d\u306a\u3053","\u304d\u306c\u3053\u3099\u3057","\u304d\u306d\u3093","\u304d\u306e\u3046","\u304d\u306e\u3057\u305f","\u304d\u306f\u304f","\u304d\u3072\u3099\u3057\u3044","\u304d\u3072\u3093","\u304d\u3075\u304f","\u304d\u3075\u3099\u3093","\u304d\u307b\u3099\u3046","\u304d\u307b\u3093","\u304d\u307e\u308b","\u304d\u307f\u3064","\u304d\u3080\u3059\u3099\u304b\u3057\u3044","\u304d\u3081\u308b","\u304d\u3082\u305f\u3099\u3081\u3057","\u304d\u3082\u3061","\u304d\u3082\u306e","\u304d\u3083\u304f","\u304d\u3084\u304f","\u304d\u3099\u3085\u3046\u306b\u304f","\u304d\u3088\u3046","\u304d\u3087\u3046\u308a\u3085\u3046","\u304d\u3089\u3044","\u304d\u3089\u304f","\u304d\u308a\u3093","\u304d\u308c\u3044","\u304d\u308c\u3064","\u304d\u308d\u304f","\u304d\u3099\u308d\u3093","\u304d\u308f\u3081\u308b","\u304d\u3099\u3093\u3044\u308d","\u304d\u3093\u304b\u304f\u3057\u3099","\u304d\u3093\u3057\u3099\u3087","\u304d\u3093\u3088\u3046\u3072\u3099","\u304f\u3099\u3042\u3044","\u304f\u3044\u3059\u3099","\u304f\u3046\u304b\u3093","\u304f\u3046\u304d","\u304f\u3046\u304f\u3099\u3093","\u304f\u3046\u3053\u3046","\u304f\u3099\u3046\u305b\u3044","\u304f\u3046\u305d\u3046","\u304f\u3099\u3046\u305f\u3089","\u304f\u3046\u3075\u304f","\u304f\u3046\u307b\u3099","\u304f\u304b\u3093","\u304f\u304d\u3087\u3046","\u304f\u3051\u3099\u3093","\u304f\u3099\u3053\u3046","\u304f\u3055\u3044","\u304f\u3055\u304d","\u304f\u3055\u306f\u3099\u306a","\u304f\u3055\u308b","\u304f\u3057\u3083\u307f","\u304f\u3057\u3087\u3046","\u304f\u3059\u306e\u304d","\u304f\u3059\u308a\u3086\u3072\u3099","\u304f\u305b\u3051\u3099","\u304f\u305b\u3093","\u304f\u3099\u305f\u3044\u3066\u304d","\u304f\u305f\u3099\u3055\u308b","\u304f\u305f\u3072\u3099\u308c\u308b","\u304f\u3061\u3053\u307f","\u304f\u3061\u3055\u304d","\u304f\u3064\u3057\u305f","\u304f\u3099\u3063\u3059\u308a","\u304f\u3064\u308d\u304f\u3099","\u304f\u3068\u3046\u3066\u3093","\u304f\u3068\u3099\u304f","\u304f\u306a\u3093","\u304f\u306d\u304f\u306d","\u304f\u306e\u3046","\u304f\u3075\u3046","\u304f\u307f\u3042\u308f\u305b","\u304f\u307f\u305f\u3066\u308b","\u304f\u3081\u308b","\u304f\u3084\u304f\u3057\u3087","\u304f\u3089\u3059","\u304f\u3089\u3078\u3099\u308b","\u304f\u308b\u307e","\u304f\u308c\u308b","\u304f\u308d\u3046","\u304f\u308f\u3057\u3044","\u304f\u3099\u3093\u304b\u3093","\u304f\u3099\u3093\u3057\u3087\u304f","\u304f\u3099\u3093\u305f\u3044","\u304f\u3099\u3093\u3066","\u3051\u3042\u306a","\u3051\u3044\u304b\u304f","\u3051\u3044\u3051\u3093","\u3051\u3044\u3053","\u3051\u3044\u3055\u3064","\u3051\u3099\u3044\u3057\u3099\u3085\u3064","\u3051\u3044\u305f\u3044","\u3051\u3099\u3044\u306e\u3046\u3057\u3099\u3093","\u3051\u3044\u308c\u304d","\u3051\u3044\u308d","\u3051\u304a\u3068\u3059","\u3051\u304a\u308a\u3082\u306e","\u3051\u3099\u304d\u304b","\u3051\u3099\u304d\u3051\u3099\u3093","\u3051\u3099\u304d\u305f\u3099\u3093","\u3051\u3099\u304d\u3061\u3093","\u3051\u3099\u304d\u3068\u3064","\u3051\u3099\u304d\u306f","\u3051\u3099\u304d\u3084\u304f","\u3051\u3099\u3053\u3046","\u3051\u3099\u3053\u304f\u3057\u3099\u3087\u3046","\u3051\u3099\u3055\u3099\u3044","\u3051\u3055\u304d","\u3051\u3099\u3055\u3099\u3093","\u3051\u3057\u304d","\u3051\u3057\u3053\u3099\u3080","\u3051\u3057\u3087\u3046","\u3051\u3099\u3059\u3068","\u3051\u305f\u306f\u3099","\u3051\u3061\u3083\u3063\u3075\u309a","\u3051\u3061\u3089\u3059","\u3051\u3064\u3042\u3064","\u3051\u3064\u3044","\u3051\u3064\u3048\u304d","\u3051\u3063\u3053\u3093","\u3051\u3064\u3057\u3099\u3087","\u3051\u3063\u305b\u304d","\u3051\u3063\u3066\u3044","\u3051\u3064\u307e\u3064","\u3051\u3099\u3064\u3088\u3046\u3072\u3099","\u3051\u3099\u3064\u308c\u3044","\u3051\u3064\u308d\u3093","\u3051\u3099\u3068\u3099\u304f","\u3051\u3068\u306f\u3099\u3059","\u3051\u3068\u308b","\u3051\u306a\u3051\u3099","\u3051\u306a\u3059","\u3051\u306a\u307f","\u3051\u306c\u304d","\u3051\u3099\u306d\u3064","\u3051\u306d\u3093","\u3051\u306f\u3044","\u3051\u3099\u3072\u3093","\u3051\u3075\u3099\u304b\u3044","\u3051\u3099\u307b\u3099\u304f","\u3051\u307e\u308a","\u3051\u307f\u304b\u308b","\u3051\u3080\u3057","\u3051\u3080\u308a","\u3051\u3082\u306e","\u3051\u3089\u3044","\u3051\u308d\u3051\u308d","\u3051\u308f\u3057\u3044","\u3051\u3093\u3044","\u3051\u3093\u3048\u3064","\u3051\u3093\u304a","\u3051\u3093\u304b","\u3051\u3099\u3093\u304d","\u3051\u3093\u3051\u3099\u3093","\u3051\u3093\u3053\u3046","\u3051\u3093\u3055\u304f","\u3051\u3093\u3057\u3085\u3046","\u3051\u3093\u3059\u3046","\u3051\u3099\u3093\u305d\u3046","\u3051\u3093\u3061\u304f","\u3051\u3093\u3066\u3044","\u3051\u3093\u3068\u3046","\u3051\u3093\u306a\u3044","\u3051\u3093\u306b\u3093","\u3051\u3099\u3093\u3075\u3099\u3064","\u3051\u3093\u307e","\u3051\u3093\u307f\u3093","\u3051\u3093\u3081\u3044","\u3051\u3093\u3089\u3093","\u3051\u3093\u308a","\u3053\u3042\u304f\u307e","\u3053\u3044\u306c","\u3053\u3044\u3072\u3099\u3068","\u3053\u3099\u3046\u3044","\u3053\u3046\u3048\u3093","\u3053\u3046\u304a\u3093","\u3053\u3046\u304b\u3093","\u3053\u3099\u3046\u304d\u3085\u3046","\u3053\u3099\u3046\u3051\u3044","\u3053\u3046\u3053\u3046","\u3053\u3046\u3055\u3044","\u3053\u3046\u3057\u3099","\u3053\u3046\u3059\u3044","\u3053\u3099\u3046\u305b\u3044","\u3053\u3046\u305d\u304f","\u3053\u3046\u305f\u3044","\u3053\u3046\u3061\u3083","\u3053\u3046\u3064\u3046","\u3053\u3046\u3066\u3044","\u3053\u3046\u3068\u3099\u3046","\u3053\u3046\u306a\u3044","\u3053\u3046\u306f\u3044","\u3053\u3099\u3046\u307b\u3046","\u3053\u3099\u3046\u307e\u3093","\u3053\u3046\u3082\u304f","\u3053\u3046\u308a\u3064","\u3053\u3048\u308b","\u3053\u304a\u308a","\u3053\u3099\u304b\u3044","\u3053\u3099\u304b\u3099\u3064","\u3053\u3099\u304b\u3093","\u3053\u304f\u3053\u3099","\u3053\u304f\u3055\u3044","\u3053\u304f\u3068\u3046","\u3053\u304f\u306a\u3044","\u3053\u304f\u306f\u304f","\u3053\u304f\u3099\u307e","\u3053\u3051\u3044","\u3053\u3051\u308b","\u3053\u3053\u306e\u304b","\u3053\u3053\u308d","\u3053\u3055\u3081","\u3053\u3057\u3064","\u3053\u3059\u3046","\u3053\u305b\u3044","\u3053\u305b\u304d","\u3053\u305b\u3099\u3093","\u3053\u305d\u305f\u3099\u3066","\u3053\u305f\u3044","\u3053\u305f\u3048\u308b","\u3053\u305f\u3064","\u3053\u3061\u3087\u3046","\u3053\u3063\u304b","\u3053\u3064\u3053\u3064","\u3053\u3064\u306f\u3099\u3093","\u3053\u3064\u3075\u3099","\u3053\u3066\u3044","\u3053\u3066\u3093","\u3053\u3068\u304b\u3099\u3089","\u3053\u3068\u3057","\u3053\u3068\u306f\u3099","\u3053\u3068\u308a","\u3053\u306a\u3053\u3099\u306a","\u3053\u306d\u3053\u306d","\u3053\u306e\u307e\u307e","\u3053\u306e\u307f","\u3053\u306e\u3088","\u3053\u3099\u306f\u3093","\u3053\u3072\u3064\u3057\u3099","\u3053\u3075\u3046","\u3053\u3075\u3093","\u3053\u307b\u3099\u308c\u308b","\u3053\u3099\u307e\u3042\u3075\u3099\u3089","\u3053\u307e\u304b\u3044","\u3053\u3099\u307e\u3059\u308a","\u3053\u307e\u3064\u306a","\u3053\u307e\u308b","\u3053\u3080\u304d\u3099\u3053","\u3053\u3082\u3057\u3099","\u3053\u3082\u3061","\u3053\u3082\u306e","\u3053\u3082\u3093","\u3053\u3084\u304f","\u3053\u3084\u307e","\u3053\u3086\u3046","\u3053\u3086\u3072\u3099","\u3053\u3088\u3044","\u3053\u3088\u3046","\u3053\u308a\u308b","\u3053\u308c\u304f\u3057\u3087\u3093","\u3053\u308d\u3063\u3051","\u3053\u308f\u3082\u3066","\u3053\u308f\u308c\u308b","\u3053\u3093\u3044\u3093","\u3053\u3093\u304b\u3044","\u3053\u3093\u304d","\u3053\u3093\u3057\u3085\u3046","\u3053\u3093\u3059\u3044","\u3053\u3093\u305f\u3099\u3066","\u3053\u3093\u3068\u3093","\u3053\u3093\u306a\u3093","\u3053\u3093\u3072\u3099\u306b","\u3053\u3093\u307b\u309a\u3093","\u3053\u3093\u307e\u3051","\u3053\u3093\u3084","\u3053\u3093\u308c\u3044","\u3053\u3093\u308f\u304f","\u3055\u3099\u3044\u3048\u304d","\u3055\u3044\u304b\u3044","\u3055\u3044\u304d\u3093","\u3055\u3099\u3044\u3051\u3099\u3093","\u3055\u3099\u3044\u3053","\u3055\u3044\u3057\u3087","\u3055\u3044\u305b\u3044","\u3055\u3099\u3044\u305f\u304f","\u3055\u3099\u3044\u3061\u3085\u3046","\u3055\u3044\u3066\u304d","\u3055\u3099\u3044\u308a\u3087\u3046","\u3055\u3046\u306a","\u3055\u304b\u3044\u3057","\u3055\u304b\u3099\u3059","\u3055\u304b\u306a","\u3055\u304b\u307f\u3061","\u3055\u304b\u3099\u308b","\u3055\u304d\u3099\u3087\u3046","\u3055\u304f\u3057","\u3055\u304f\u3072\u3093","\u3055\u304f\u3089","\u3055\u3053\u304f","\u3055\u3053\u3064","\u3055\u3059\u3099\u304b\u308b","\u3055\u3099\u305b\u304d","\u3055\u305f\u3093","\u3055\u3064\u3048\u3044","\u3055\u3099\u3064\u304a\u3093","\u3055\u3099\u3063\u304b","\u3055\u3099\u3064\u304b\u3099\u304f","\u3055\u3063\u304d\u3087\u304f","\u3055\u3099\u3063\u3057","\u3055\u3064\u3057\u3099\u3093","\u3055\u3099\u3063\u305d\u3046","\u3055\u3064\u305f\u306f\u3099","\u3055\u3064\u307e\u3044\u3082","\u3055\u3066\u3044","\u3055\u3068\u3044\u3082","\u3055\u3068\u3046","\u3055\u3068\u304a\u3084","\u3055\u3068\u3057","\u3055\u3068\u308b","\u3055\u306e\u3046","\u3055\u306f\u3099\u304f","\u3055\u3072\u3099\u3057\u3044","\u3055\u3078\u3099\u3064","\u3055\u307b\u3046","\u3055\u307b\u3068\u3099","\u3055\u307e\u3059","\u3055\u307f\u3057\u3044","\u3055\u307f\u305f\u3099\u308c","\u3055\u3080\u3051","\u3055\u3081\u308b","\u3055\u3084\u3048\u3093\u3068\u3099\u3046","\u3055\u3086\u3046","\u3055\u3088\u3046","\u3055\u3088\u304f","\u3055\u3089\u305f\u3099","\u3055\u3099\u308b\u305d\u306f\u3099","\u3055\u308f\u3084\u304b","\u3055\u308f\u308b","\u3055\u3093\u3044\u3093","\u3055\u3093\u304b","\u3055\u3093\u304d\u3083\u304f","\u3055\u3093\u3053\u3046","\u3055\u3093\u3055\u3044","\u3055\u3099\u3093\u3057\u3087","\u3055\u3093\u3059\u3046","\u3055\u3093\u305b\u3044","\u3055\u3093\u305d","\u3055\u3093\u3061","\u3055\u3093\u307e","\u3055\u3093\u307f","\u3055\u3093\u3089\u3093","\u3057\u3042\u3044","\u3057\u3042\u3051\u3099","\u3057\u3042\u3055\u3063\u3066","\u3057\u3042\u308f\u305b","\u3057\u3044\u304f","\u3057\u3044\u3093","\u3057\u3046\u3061","\u3057\u3048\u3044","\u3057\u304a\u3051","\u3057\u304b\u3044","\u3057\u304b\u304f","\u3057\u3099\u304b\u3093","\u3057\u3053\u3099\u3068","\u3057\u3059\u3046","\u3057\u3099\u305f\u3099\u3044","\u3057\u305f\u3046\u3051","\u3057\u305f\u304d\u3099","\u3057\u305f\u3066","\u3057\u305f\u307f","\u3057\u3061\u3087\u3046","\u3057\u3061\u308a\u3093","\u3057\u3063\u304b\u308a","\u3057\u3064\u3057\u3099","\u3057\u3064\u3082\u3093","\u3057\u3066\u3044","\u3057\u3066\u304d","\u3057\u3066\u3064","\u3057\u3099\u3066\u3093","\u3057\u3099\u3068\u3099\u3046","\u3057\u306a\u304d\u3099\u308c","\u3057\u306a\u3082\u306e","\u3057\u306a\u3093","\u3057\u306d\u307e","\u3057\u306d\u3093","\u3057\u306e\u304f\u3099","\u3057\u306e\u3075\u3099","\u3057\u306f\u3044","\u3057\u306f\u3099\u304b\u308a","\u3057\u306f\u3064","\u3057\u306f\u3089\u3044","\u3057\u306f\u3093","\u3057\u3072\u3087\u3046","\u3057\u3075\u304f","\u3057\u3099\u3075\u3099\u3093","\u3057\u3078\u3044","\u3057\u307b\u3046","\u3057\u307b\u3093","\u3057\u307e\u3046","\u3057\u307e\u308b","\u3057\u307f\u3093","\u3057\u3080\u3051\u308b","\u3057\u3099\u3080\u3057\u3087","\u3057\u3081\u3044","\u3057\u3081\u308b","\u3057\u3082\u3093","\u3057\u3083\u3044\u3093","\u3057\u3083\u3046\u3093","\u3057\u3083\u304a\u3093","\u3057\u3099\u3083\u304b\u3099\u3044\u3082","\u3057\u3084\u304f\u3057\u3087","\u3057\u3083\u304f\u307b\u3046","\u3057\u3083\u3051\u3093","\u3057\u3083\u3053","\u3057\u3083\u3055\u3099\u3044","\u3057\u3083\u3057\u3093","\u3057\u3083\u305b\u3093","\u3057\u3083\u305d\u3046","\u3057\u3083\u305f\u3044","\u3057\u3083\u3061\u3087\u3046","\u3057\u3083\u3063\u304d\u3093","\u3057\u3099\u3083\u307e","\u3057\u3083\u308a\u3093","\u3057\u3083\u308c\u3044","\u3057\u3099\u3086\u3046","\u3057\u3099\u3085\u3046\u3057\u3087","\u3057\u3085\u304f\u306f\u304f","\u3057\u3099\u3085\u3057\u3093","\u3057\u3085\u3063\u305b\u304d","\u3057\u3085\u307f","\u3057\u3085\u3089\u306f\u3099","\u3057\u3099\u3085\u3093\u306f\u3099\u3093","\u3057\u3087\u3046\u304b\u3044","\u3057\u3087\u304f\u305f\u304f","\u3057\u3087\u3063\u3051\u3093","\u3057\u3087\u3068\u3099\u3046","\u3057\u3087\u3082\u3064","\u3057\u3089\u305b\u308b","\u3057\u3089\u3078\u3099\u308b","\u3057\u3093\u304b","\u3057\u3093\u3053\u3046","\u3057\u3099\u3093\u3057\u3099\u3083","\u3057\u3093\u305b\u3044\u3057\u3099","\u3057\u3093\u3061\u304f","\u3057\u3093\u308a\u3093","\u3059\u3042\u3051\u3099","\u3059\u3042\u3057","\u3059\u3042\u306a","\u3059\u3099\u3042\u3093","\u3059\u3044\u3048\u3044","\u3059\u3044\u304b","\u3059\u3044\u3068\u3046","\u3059\u3099\u3044\u3075\u3099\u3093","\u3059\u3044\u3088\u3046\u3072\u3099","\u3059\u3046\u304b\u3099\u304f","\u3059\u3046\u3057\u3099\u3064","\u3059\u3046\u305b\u3093","\u3059\u304a\u3068\u3099\u308a","\u3059\u304d\u307e","\u3059\u304f\u3046","\u3059\u304f\u306a\u3044","\u3059\u3051\u308b","\u3059\u3053\u3099\u3044","\u3059\u3053\u3057","\u3059\u3099\u3055\u3093","\u3059\u3059\u3099\u3057\u3044","\u3059\u3059\u3080","\u3059\u3059\u3081\u308b","\u3059\u3063\u304b\u308a","\u3059\u3099\u3063\u3057\u308a","\u3059\u3099\u3063\u3068","\u3059\u3066\u304d","\u3059\u3066\u308b","\u3059\u306d\u308b","\u3059\u306e\u3053","\u3059\u306f\u305f\u3099","\u3059\u306f\u3099\u3089\u3057\u3044","\u3059\u3099\u3072\u3087\u3046","\u3059\u3099\u3075\u3099\u306c\u308c","\u3059\u3075\u3099\u308a","\u3059\u3075\u308c","\u3059\u3078\u3099\u3066","\u3059\u3078\u3099\u308b","\u3059\u3099\u307b\u3046","\u3059\u307b\u3099\u3093","\u3059\u307e\u3044","\u3059\u3081\u3057","\u3059\u3082\u3046","\u3059\u3084\u304d","\u3059\u3089\u3059\u3089","\u3059\u308b\u3081","\u3059\u308c\u3061\u304b\u3099\u3046","\u3059\u308d\u3063\u3068","\u3059\u308f\u308b","\u3059\u3093\u305b\u3099\u3093","\u3059\u3093\u307b\u309a\u3046","\u305b\u3042\u3075\u3099\u3089","\u305b\u3044\u304b\u3064","\u305b\u3044\u3051\u3099\u3093","\u305b\u3044\u3057\u3099","\u305b\u3044\u3088\u3046","\u305b\u304a\u3046","\u305b\u304b\u3044\u304b\u3093","\u305b\u304d\u306b\u3093","\u305b\u304d\u3080","\u305b\u304d\u3086","\u305b\u304d\u3089\u3093\u3046\u3093","\u305b\u3051\u3093","\u305b\u3053\u3046","\u305b\u3059\u3057\u3099","\u305b\u305f\u3044","\u305b\u305f\u3051","\u305b\u3063\u304b\u304f","\u305b\u3063\u304d\u3083\u304f","\u305b\u3099\u3063\u304f","\u305b\u3063\u3051\u3093","\u305b\u3063\u3053\u3064","\u305b\u3063\u3055\u305f\u304f\u307e","\u305b\u3064\u305d\u3099\u304f","\u305b\u3064\u305f\u3099\u3093","\u305b\u3064\u3066\u3099\u3093","\u305b\u3063\u306f\u309a\u3093","\u305b\u3064\u3072\u3099","\u305b\u3064\u3075\u3099\u3093","\u305b\u3064\u3081\u3044","\u305b\u3064\u308a\u3064","\u305b\u306a\u304b","\u305b\u306e\u3072\u3099","\u305b\u306f\u306f\u3099","\u305b\u3072\u3099\u308d","\u305b\u307b\u3099\u306d","\u305b\u307e\u3044","\u305b\u307e\u308b","\u305b\u3081\u308b","\u305b\u3082\u305f\u308c","\u305b\u308a\u3075","\u305b\u3099\u3093\u3042\u304f","\u305b\u3093\u3044","\u305b\u3093\u3048\u3044","\u305b\u3093\u304b","\u305b\u3093\u304d\u3087","\u305b\u3093\u304f","\u305b\u3093\u3051\u3099\u3093","\u305b\u3099\u3093\u3053\u3099","\u305b\u3093\u3055\u3044","\u305b\u3093\u3057\u3085","\u305b\u3093\u3059\u3044","\u305b\u3093\u305b\u3044","\u305b\u3093\u305d\u3099","\u305b\u3093\u305f\u304f","\u305b\u3093\u3061\u3087\u3046","\u305b\u3093\u3066\u3044","\u305b\u3093\u3068\u3046","\u305b\u3093\u306c\u304d","\u305b\u3093\u306d\u3093","\u305b\u3093\u306f\u309a\u3044","\u305b\u3099\u3093\u3075\u3099","\u305b\u3099\u3093\u307b\u309a\u3046","\u305b\u3093\u3080","\u305b\u3093\u3081\u3093\u3057\u3099\u3087","\u305b\u3093\u3082\u3093","\u305b\u3093\u3084\u304f","\u305b\u3093\u3086\u3046","\u305b\u3093\u3088\u3046","\u305b\u3099\u3093\u3089","\u305b\u3099\u3093\u308a\u3083\u304f","\u305b\u3093\u308c\u3044","\u305b\u3093\u308d","\u305d\u3042\u304f","\u305d\u3044\u3068\u3051\u3099\u308b","\u305d\u3044\u306d","\u305d\u3046\u304b\u3099\u3093\u304d\u3087\u3046","\u305d\u3046\u304d","\u305d\u3046\u3053\u3099","\u305d\u3046\u3057\u3093","\u305d\u3046\u305f\u3099\u3093","\u305d\u3046\u306a\u3093","\u305d\u3046\u3072\u3099","\u305d\u3046\u3081\u3093","\u305d\u3046\u308a","\u305d\u3048\u3082\u306e","\u305d\u3048\u3093","\u305d\u304b\u3099\u3044","\u305d\u3051\u3099\u304d","\u305d\u3053\u3046","\u305d\u3053\u305d\u3053","\u305d\u3055\u3099\u3044","\u305d\u3057\u306a","\u305d\u305b\u3044","\u305d\u305b\u3093","\u305d\u305d\u304f\u3099","\u305d\u305f\u3099\u3066\u308b","\u305d\u3064\u3046","\u305d\u3064\u3048\u3093","\u305d\u3063\u304b\u3093","\u305d\u3064\u304d\u3099\u3087\u3046","\u305d\u3063\u3051\u3064","\u305d\u3063\u3053\u3046","\u305d\u3063\u305b\u3093","\u305d\u3063\u3068","\u305d\u3068\u304b\u3099\u308f","\u305d\u3068\u3064\u3099\u3089","\u305d\u306a\u3048\u308b","\u305d\u306a\u305f","\u305d\u3075\u307b\u3099","\u305d\u307b\u3099\u304f","\u305d\u307b\u3099\u308d","\u305d\u307e\u3064","\u305d\u307e\u308b","\u305d\u3080\u304f","\u305d\u3080\u308a\u3048","\u305d\u3081\u308b","\u305d\u3082\u305d\u3082","\u305d\u3088\u304b\u305b\u3099","\u305d\u3089\u307e\u3081","\u305d\u308d\u3046","\u305d\u3093\u304b\u3044","\u305d\u3093\u3051\u3044","\u305d\u3093\u3055\u3099\u3044","\u305d\u3093\u3057\u3064","\u305d\u3093\u305d\u3099\u304f","\u305d\u3093\u3061\u3087\u3046","\u305d\u3099\u3093\u3072\u3099","\u305d\u3099\u3093\u3075\u3099\u3093","\u305d\u3093\u307f\u3093","\u305f\u3042\u3044","\u305f\u3044\u3044\u3093","\u305f\u3044\u3046\u3093","\u305f\u3044\u3048\u304d","\u305f\u3044\u304a\u3046","\u305f\u3099\u3044\u304b\u3099\u304f","\u305f\u3044\u304d","\u305f\u3044\u304f\u3099\u3046","\u305f\u3044\u3051\u3093","\u305f\u3044\u3053","\u305f\u3044\u3055\u3099\u3044","\u305f\u3099\u3044\u3057\u3099\u3087\u3046\u3075\u3099","\u305f\u3099\u3044\u3059\u304d","\u305f\u3044\u305b\u3064","\u305f\u3044\u305d\u3046","\u305f\u3099\u3044\u305f\u3044","\u305f\u3044\u3061\u3087\u3046","\u305f\u3044\u3066\u3044","\u305f\u3099\u3044\u3068\u3099\u3053\u308d","\u305f\u3044\u306a\u3044","\u305f\u3044\u306d\u3064","\u305f\u3044\u306e\u3046","\u305f\u3044\u306f\u3093","\u305f\u3099\u3044\u3072\u3087\u3046","\u305f\u3044\u3075\u3046","\u305f\u3044\u3078\u3093","\u305f\u3044\u307b","\u305f\u3044\u307e\u3064\u306f\u3099\u306a","\u305f\u3044\u307f\u3093\u304f\u3099","\u305f\u3044\u3080","\u305f\u3044\u3081\u3093","\u305f\u3044\u3084\u304d","\u305f\u3044\u3088\u3046","\u305f\u3044\u3089","\u305f\u3044\u308a\u3087\u304f","\u305f\u3044\u308b","\u305f\u3044\u308f\u3093","\u305f\u3046\u3048","\u305f\u3048\u308b","\u305f\u304a\u3059","\u305f\u304a\u308b","\u305f\u304a\u308c\u308b","\u305f\u304b\u3044","\u305f\u304b\u306d","\u305f\u304d\u3072\u3099","\u305f\u304f\u3055\u3093","\u305f\u3053\u304f","\u305f\u3053\u3084\u304d","\u305f\u3055\u3044","\u305f\u3057\u3055\u3099\u3093","\u305f\u3099\u3057\u3099\u3083\u308c","\u305f\u3059\u3051\u308b","\u305f\u3059\u3099\u3055\u308f\u308b","\u305f\u305d\u304b\u3099\u308c","\u305f\u305f\u304b\u3046","\u305f\u305f\u304f","\u305f\u305f\u3099\u3057\u3044","\u305f\u305f\u307f","\u305f\u3061\u306f\u3099\u306a","\u305f\u3099\u3063\u304b\u3044","\u305f\u3099\u3063\u304d\u3083\u304f","\u305f\u3099\u3063\u3053","\u305f\u3099\u3063\u3057\u3085\u3064","\u305f\u3099\u3063\u305f\u3044","\u305f\u3066\u308b","\u305f\u3068\u3048\u308b","\u305f\u306a\u306f\u3099\u305f","\u305f\u306b\u3093","\u305f\u306c\u304d","\u305f\u306e\u3057\u307f","\u305f\u306f\u3064","\u305f\u3075\u3099\u3093","\u305f\u3078\u3099\u308b","\u305f\u307b\u3099\u3046","\u305f\u307e\u3053\u3099","\u305f\u307e\u308b","\u305f\u3099\u3080\u308b","\u305f\u3081\u3044\u304d","\u305f\u3081\u3059","\u305f\u3081\u308b","\u305f\u3082\u3064","\u305f\u3084\u3059\u3044","\u305f\u3088\u308b","\u305f\u3089\u3059","\u305f\u308a\u304d\u307b\u3093\u304b\u3099\u3093","\u305f\u308a\u3087\u3046","\u305f\u308a\u308b","\u305f\u308b\u3068","\u305f\u308c\u308b","\u305f\u308c\u3093\u3068","\u305f\u308d\u3063\u3068","\u305f\u308f\u3080\u308c\u308b","\u305f\u3099\u3093\u3042\u3064","\u305f\u3093\u3044","\u305f\u3093\u304a\u3093","\u305f\u3093\u304b","\u305f\u3093\u304d","\u305f\u3093\u3051\u3093","\u305f\u3093\u3053\u3099","\u305f\u3093\u3055\u3093","\u305f\u3093\u3057\u3099\u3087\u3046\u3072\u3099","\u305f\u3099\u3093\u305b\u3044","\u305f\u3093\u305d\u304f","\u305f\u3093\u305f\u3044","\u305f\u3099\u3093\u3061","\u305f\u3093\u3066\u3044","\u305f\u3093\u3068\u3046","\u305f\u3099\u3093\u306a","\u305f\u3093\u306b\u3093","\u305f\u3099\u3093\u306d\u3064","\u305f\u3093\u306e\u3046","\u305f\u3093\u3072\u309a\u3093","\u305f\u3099\u3093\u307b\u3099\u3046","\u305f\u3093\u307e\u3064","\u305f\u3093\u3081\u3044","\u305f\u3099\u3093\u308c\u3064","\u305f\u3099\u3093\u308d","\u305f\u3099\u3093\u308f","\u3061\u3042\u3044","\u3061\u3042\u3093","\u3061\u3044\u304d","\u3061\u3044\u3055\u3044","\u3061\u3048\u3093","\u3061\u304b\u3044","\u3061\u304b\u3089","\u3061\u304d\u3085\u3046","\u3061\u304d\u3093","\u3061\u3051\u3044\u3059\u3099","\u3061\u3051\u3093","\u3061\u3053\u304f","\u3061\u3055\u3044","\u3061\u3057\u304d","\u3061\u3057\u308a\u3087\u3046","\u3061\u305b\u3044","\u3061\u305d\u3046","\u3061\u305f\u3044","\u3061\u305f\u3093","\u3061\u3061\u304a\u3084","\u3061\u3064\u3057\u3099\u3087","\u3061\u3066\u304d","\u3061\u3066\u3093","\u3061\u306c\u304d","\u3061\u306c\u308a","\u3061\u306e\u3046","\u3061\u3072\u3087\u3046","\u3061\u3078\u3044\u305b\u3093","\u3061\u307b\u3046","\u3061\u307e\u305f","\u3061\u307f\u3064","\u3061\u307f\u3068\u3099\u308d","\u3061\u3081\u3044\u3068\u3099","\u3061\u3083\u3093\u3053\u306a\u3078\u3099","\u3061\u3085\u3046\u3044","\u3061\u3086\u308a\u3087\u304f","\u3061\u3087\u3046\u3057","\u3061\u3087\u3055\u304f\u3051\u3093","\u3061\u3089\u3057","\u3061\u3089\u307f","\u3061\u308a\u304b\u3099\u307f","\u3061\u308a\u3087\u3046","\u3061\u308b\u3068\u3099","\u3061\u308f\u308f","\u3061\u3093\u305f\u3044","\u3061\u3093\u3082\u304f","\u3064\u3044\u304b","\u3064\u3044\u305f\u3061","\u3064\u3046\u304b","\u3064\u3046\u3057\u3099\u3087\u3046","\u3064\u3046\u306f\u3093","\u3064\u3046\u308f","\u3064\u304b\u3046","\u3064\u304b\u308c\u308b","\u3064\u304f\u306d","\u3064\u304f\u308b","\u3064\u3051\u306d","\u3064\u3051\u308b","\u3064\u3053\u3099\u3046","\u3064\u305f\u3048\u308b","\u3064\u3064\u3099\u304f","\u3064\u3064\u3057\u3099","\u3064\u3064\u3080","\u3064\u3068\u3081\u308b","\u3064\u306a\u304b\u3099\u308b","\u3064\u306a\u307f","\u3064\u306d\u3064\u3099\u306d","\u3064\u306e\u308b","\u3064\u3075\u3099\u3059","\u3064\u307e\u3089\u306a\u3044","\u3064\u307e\u308b","\u3064\u307f\u304d","\u3064\u3081\u305f\u3044","\u3064\u3082\u308a","\u3064\u3082\u308b","\u3064\u3088\u3044","\u3064\u308b\u307b\u3099","\u3064\u308b\u307f\u304f","\u3064\u308f\u3082\u306e","\u3064\u308f\u308a","\u3066\u3042\u3057","\u3066\u3042\u3066","\u3066\u3042\u307f","\u3066\u3044\u304a\u3093","\u3066\u3044\u304b","\u3066\u3044\u304d","\u3066\u3044\u3051\u3044","\u3066\u3044\u3053\u304f","\u3066\u3044\u3055\u3064","\u3066\u3044\u3057","\u3066\u3044\u305b\u3044","\u3066\u3044\u305f\u3044","\u3066\u3044\u3068\u3099","\u3066\u3044\u306d\u3044","\u3066\u3044\u3072\u3087\u3046","\u3066\u3044\u3078\u3093","\u3066\u3044\u307b\u3099\u3046","\u3066\u3046\u3061","\u3066\u304a\u304f\u308c","\u3066\u304d\u3068\u3046","\u3066\u304f\u3072\u3099","\u3066\u3099\u3053\u307b\u3099\u3053","\u3066\u3055\u304d\u3099\u3087\u3046","\u3066\u3055\u3051\u3099","\u3066\u3059\u308a","\u3066\u305d\u3046","\u3066\u3061\u304b\u3099\u3044","\u3066\u3061\u3087\u3046","\u3066\u3064\u304b\u3099\u304f","\u3066\u3064\u3064\u3099\u304d","\u3066\u3099\u3063\u306f\u309a","\u3066\u3064\u307b\u3099\u3046","\u3066\u3064\u3084","\u3066\u3099\u306c\u304b\u3048","\u3066\u306c\u304d","\u3066\u306c\u304f\u3099\u3044","\u3066\u306e\u3072\u3089","\u3066\u306f\u3044","\u3066\u3075\u3099\u304f\u308d","\u3066\u3075\u305f\u3099","\u3066\u307b\u3068\u3099\u304d","\u3066\u307b\u3093","\u3066\u307e\u3048","\u3066\u307e\u304d\u3059\u3099\u3057","\u3066\u307f\u3057\u3099\u304b","\u3066\u307f\u3084\u3051\u3099","\u3066\u3089\u3059","\u3066\u308c\u3072\u3099","\u3066\u308f\u3051","\u3066\u308f\u305f\u3057","\u3066\u3099\u3093\u3042\u3064","\u3066\u3093\u3044\u3093","\u3066\u3093\u304b\u3044","\u3066\u3093\u304d","\u3066\u3093\u304f\u3099","\u3066\u3093\u3051\u3093","\u3066\u3093\u3053\u3099\u304f","\u3066\u3093\u3055\u3044","\u3066\u3093\u3057","\u3066\u3093\u3059\u3046","\u3066\u3099\u3093\u3061","\u3066\u3093\u3066\u304d","\u3066\u3093\u3068\u3046","\u3066\u3093\u306a\u3044","\u3066\u3093\u3075\u309a\u3089","\u3066\u3093\u307b\u3099\u3046\u305f\u3099\u3044","\u3066\u3093\u3081\u3064","\u3066\u3093\u3089\u3093\u304b\u3044","\u3066\u3099\u3093\u308a\u3087\u304f","\u3066\u3099\u3093\u308f","\u3068\u3099\u3042\u3044","\u3068\u3044\u308c","\u3068\u3099\u3046\u304b\u3093","\u3068\u3046\u304d\u3085\u3046","\u3068\u3099\u3046\u304f\u3099","\u3068\u3046\u3057","\u3068\u3046\u3080\u304d\u3099","\u3068\u304a\u3044","\u3068\u304a\u304b","\u3068\u304a\u304f","\u3068\u304a\u3059","\u3068\u304a\u308b","\u3068\u304b\u3044","\u3068\u304b\u3059","\u3068\u304d\u304a\u308a","\u3068\u304d\u3068\u3099\u304d","\u3068\u304f\u3044","\u3068\u304f\u3057\u3085\u3046","\u3068\u304f\u3066\u3093","\u3068\u304f\u306b","\u3068\u304f\u3078\u3099\u3064","\u3068\u3051\u3044","\u3068\u3051\u308b","\u3068\u3053\u3084","\u3068\u3055\u304b","\u3068\u3057\u3087\u304b\u3093","\u3068\u305d\u3046","\u3068\u305f\u3093","\u3068\u3061\u3085\u3046","\u3068\u3063\u304d\u3085\u3046","\u3068\u3063\u304f\u3093","\u3068\u3064\u305b\u3099\u3093","\u3068\u3064\u306b\u3085\u3046","\u3068\u3068\u3099\u3051\u308b","\u3068\u3068\u306e\u3048\u308b","\u3068\u306a\u3044","\u3068\u306a\u3048\u308b","\u3068\u306a\u308a","\u3068\u306e\u3055\u307e","\u3068\u306f\u3099\u3059","\u3068\u3099\u3075\u3099\u304b\u3099\u308f","\u3068\u307b\u3046","\u3068\u307e\u308b","\u3068\u3081\u308b","\u3068\u3082\u305f\u3099\u3061","\u3068\u3082\u308b","\u3068\u3099\u3088\u3046\u3072\u3099","\u3068\u3089\u3048\u308b","\u3068\u3093\u304b\u3064","\u3068\u3099\u3093\u3075\u3099\u308a","\u306a\u3044\u304b\u304f","\u306a\u3044\u3053\u3046","\u306a\u3044\u3057\u3087","\u306a\u3044\u3059","\u306a\u3044\u305b\u3093","\u306a\u3044\u305d\u3046","\u306a\u304a\u3059","\u306a\u304b\u3099\u3044","\u306a\u304f\u3059","\u306a\u3051\u3099\u308b","\u306a\u3053\u3046\u3068\u3099","\u306a\u3055\u3051","\u306a\u305f\u3066\u3099\u3053\u3053","\u306a\u3063\u3068\u3046","\u306a\u3064\u3084\u3059\u307f","\u306a\u306a\u304a\u3057","\u306a\u306b\u3053\u3099\u3068","\u306a\u306b\u3082\u306e","\u306a\u306b\u308f","\u306a\u306e\u304b","\u306a\u3075\u305f\u3099","\u306a\u307e\u3044\u304d","\u306a\u307e\u3048","\u306a\u307e\u307f","\u306a\u307f\u305f\u3099","\u306a\u3081\u3089\u304b","\u306a\u3081\u308b","\u306a\u3084\u3080","\u306a\u3089\u3046","\u306a\u3089\u3072\u3099","\u306a\u3089\u3075\u3099","\u306a\u308c\u308b","\u306a\u308f\u3068\u3072\u3099","\u306a\u308f\u306f\u3099\u308a","\u306b\u3042\u3046","\u306b\u3044\u304b\u3099\u305f","\u306b\u3046\u3051","\u306b\u304a\u3044","\u306b\u304b\u3044","\u306b\u304b\u3099\u3066","\u306b\u304d\u3072\u3099","\u306b\u304f\u3057\u307f","\u306b\u304f\u307e\u3093","\u306b\u3051\u3099\u308b","\u306b\u3055\u3093\u304b\u305f\u3093\u305d","\u306b\u3057\u304d","\u306b\u305b\u3082\u306e","\u306b\u3061\u3057\u3099\u3087\u3046","\u306b\u3061\u3088\u3046\u3072\u3099","\u306b\u3063\u304b","\u306b\u3063\u304d","\u306b\u3063\u3051\u3044","\u306b\u3063\u3053\u3046","\u306b\u3063\u3055\u3093","\u306b\u3063\u3057\u3087\u304f","\u306b\u3063\u3059\u3046","\u306b\u3063\u305b\u304d","\u306b\u3063\u3066\u3044","\u306b\u306a\u3046","\u306b\u307b\u3093","\u306b\u307e\u3081","\u306b\u3082\u3064","\u306b\u3084\u308a","\u306b\u3085\u3046\u3044\u3093","\u306b\u308a\u3093\u3057\u3083","\u306b\u308f\u3068\u308a","\u306b\u3093\u3044","\u306b\u3093\u304b","\u306b\u3093\u304d","\u306b\u3093\u3051\u3099\u3093","\u306b\u3093\u3057\u304d","\u306b\u3093\u3059\u3099\u3046","\u306b\u3093\u305d\u3046","\u306b\u3093\u305f\u3044","\u306b\u3093\u3061","\u306b\u3093\u3066\u3044","\u306b\u3093\u306b\u304f","\u306b\u3093\u3075\u309a","\u306b\u3093\u307e\u308a","\u306b\u3093\u3080","\u306b\u3093\u3081\u3044","\u306b\u3093\u3088\u3046","\u306c\u3044\u304f\u304d\u3099","\u306c\u304b\u3059","\u306c\u304f\u3099\u3044\u3068\u308b","\u306c\u304f\u3099\u3046","\u306c\u304f\u3082\u308a","\u306c\u3059\u3080","\u306c\u307e\u3048\u3072\u3099","\u306c\u3081\u308a","\u306c\u3089\u3059","\u306c\u3093\u3061\u3083\u304f","\u306d\u3042\u3051\u3099","\u306d\u3044\u304d","\u306d\u3044\u308b","\u306d\u3044\u308d","\u306d\u304f\u3099\u305b","\u306d\u304f\u305f\u3044","\u306d\u304f\u3089","\u306d\u3053\u305b\u3099","\u306d\u3053\u3080","\u306d\u3055\u3051\u3099","\u306d\u3059\u3053\u3099\u3059","\u306d\u305d\u3078\u3099\u308b","\u306d\u305f\u3099\u3093","\u306d\u3064\u3044","\u306d\u3063\u3057\u3093","\u306d\u3064\u305d\u3099\u3046","\u306d\u3063\u305f\u3044\u304d\u3099\u3087","\u306d\u3075\u3099\u305d\u304f","\u306d\u3075\u305f\u3099","\u306d\u307b\u3099\u3046","\u306d\u307b\u308a\u306f\u307b\u308a","\u306d\u307e\u304d","\u306d\u307e\u308f\u3057","\u306d\u307f\u307f","\u306d\u3080\u3044","\u306d\u3080\u305f\u3044","\u306d\u3082\u3068","\u306d\u3089\u3046","\u306d\u308f\u3055\u3099","\u306d\u3093\u3044\u308a","\u306d\u3093\u304a\u3057","\u306d\u3093\u304b\u3093","\u306d\u3093\u304d\u3093","\u306d\u3093\u304f\u3099","\u306d\u3093\u3055\u3099","\u306d\u3093\u3057","\u306d\u3093\u3061\u3083\u304f","\u306d\u3093\u3068\u3099","\u306d\u3093\u3072\u309a","\u306d\u3093\u3075\u3099\u3064","\u306d\u3093\u307e\u3064","\u306d\u3093\u308a\u3087\u3046","\u306d\u3093\u308c\u3044","\u306e\u3044\u3059\u3099","\u306e\u304a\u3064\u3099\u307e","\u306e\u304b\u3099\u3059","\u306e\u304d\u306a\u307f","\u306e\u3053\u304d\u3099\u308a","\u306e\u3053\u3059","\u306e\u3053\u308b","\u306e\u305b\u308b","\u306e\u305d\u3099\u304f","\u306e\u305d\u3099\u3080","\u306e\u305f\u307e\u3046","\u306e\u3061\u307b\u3068\u3099","\u306e\u3063\u304f","\u306e\u306f\u3099\u3059","\u306e\u306f\u3089","\u306e\u3078\u3099\u308b","\u306e\u307b\u3099\u308b","\u306e\u307f\u3082\u306e","\u306e\u3084\u307e","\u306e\u3089\u3044\u306c","\u306e\u3089\u306d\u3053","\u306e\u308a\u3082\u306e","\u306e\u308a\u3086\u304d","\u306e\u308c\u3093","\u306e\u3093\u304d","\u306f\u3099\u3042\u3044","\u306f\u3042\u304f","\u306f\u3099\u3042\u3055\u3093","\u306f\u3099\u3044\u304b","\u306f\u3099\u3044\u304f","\u306f\u3044\u3051\u3093","\u306f\u3044\u3053\u3099","\u306f\u3044\u3057\u3093","\u306f\u3044\u3059\u3044","\u306f\u3044\u305b\u3093","\u306f\u3044\u305d\u3046","\u306f\u3044\u3061","\u306f\u3099\u3044\u306f\u3099\u3044","\u306f\u3044\u308c\u3064","\u306f\u3048\u308b","\u306f\u304a\u308b","\u306f\u304b\u3044","\u306f\u3099\u304b\u308a","\u306f\u304b\u308b","\u306f\u304f\u3057\u3085","\u306f\u3051\u3093","\u306f\u3053\u3075\u3099","\u306f\u3055\u307f","\u306f\u3055\u3093","\u306f\u3057\u3053\u3099","\u306f\u3099\u3057\u3087","\u306f\u3057\u308b","\u306f\u305b\u308b","\u306f\u309a\u305d\u3053\u3093","\u306f\u305d\u3093","\u306f\u305f\u3093","\u306f\u3061\u307f\u3064","\u306f\u3064\u304a\u3093","\u306f\u3063\u304b\u304f","\u306f\u3064\u3099\u304d","\u306f\u3063\u304d\u308a","\u306f\u3063\u304f\u3064","\u306f\u3063\u3051\u3093","\u306f\u3063\u3053\u3046","\u306f\u3063\u3055\u3093","\u306f\u3063\u3057\u3093","\u306f\u3063\u305f\u3064","\u306f\u3063\u3061\u3085\u3046","\u306f\u3063\u3066\u3093","\u306f\u3063\u3072\u309a\u3087\u3046","\u306f\u3063\u307b\u309a\u3046","\u306f\u306a\u3059","\u306f\u306a\u3072\u3099","\u306f\u306b\u304b\u3080","\u306f\u3075\u3099\u3089\u3057","\u306f\u307f\u304b\u3099\u304d","\u306f\u3080\u304b\u3046","\u306f\u3081\u3064","\u306f\u3084\u3044","\u306f\u3084\u3057","\u306f\u3089\u3046","\u306f\u308d\u3046\u3043\u3093","\u306f\u308f\u3044","\u306f\u3093\u3044","\u306f\u3093\u3048\u3044","\u306f\u3093\u304a\u3093","\u306f\u3093\u304b\u304f","\u306f\u3093\u304d\u3087\u3046","\u306f\u3099\u3093\u304f\u3099\u307f","\u306f\u3093\u3053","\u306f\u3093\u3057\u3083","\u306f\u3093\u3059\u3046","\u306f\u3093\u305f\u3099\u3093","\u306f\u309a\u3093\u3061","\u306f\u309a\u3093\u3064","\u306f\u3093\u3066\u3044","\u306f\u3093\u3068\u3057","\u306f\u3093\u306e\u3046","\u306f\u3093\u306f\u309a","\u306f\u3093\u3075\u3099\u3093","\u306f\u3093\u3078\u309a\u3093","\u306f\u3093\u307b\u3099\u3046\u304d","\u306f\u3093\u3081\u3044","\u306f\u3093\u3089\u3093","\u306f\u3093\u308d\u3093","\u3072\u3044\u304d","\u3072\u3046\u3093","\u3072\u3048\u308b","\u3072\u304b\u304f","\u3072\u304b\u308a","\u3072\u304b\u308b","\u3072\u304b\u3093","\u3072\u304f\u3044","\u3072\u3051\u3064","\u3072\u3053\u3046\u304d","\u3072\u3053\u304f","\u3072\u3055\u3044","\u3072\u3055\u3057\u3075\u3099\u308a","\u3072\u3055\u3093","\u3072\u3099\u3057\u3099\u3085\u3064\u304b\u3093","\u3072\u3057\u3087","\u3072\u305d\u304b","\u3072\u305d\u3080","\u3072\u305f\u3080\u304d","\u3072\u305f\u3099\u308a","\u3072\u305f\u308b","\u3072\u3064\u304d\u3099","\u3072\u3063\u3053\u3057","\u3072\u3063\u3057","\u3072\u3064\u3057\u3099\u3085\u3072\u3093","\u3072\u3063\u3059","\u3072\u3064\u305b\u3099\u3093","\u3072\u309a\u3063\u305f\u308a","\u3072\u309a\u3063\u3061\u308a","\u3072\u3064\u3088\u3046","\u3072\u3066\u3044","\u3072\u3068\u3053\u3099\u307f","\u3072\u306a\u307e\u3064\u308a","\u3072\u306a\u3093","\u3072\u306d\u308b","\u3072\u306f\u3093","\u3072\u3072\u3099\u304f","\u3072\u3072\u3087\u3046","\u3072\u307b\u3046","\u3072\u307e\u308f\u308a","\u3072\u307e\u3093","\u3072\u307f\u3064","\u3072\u3081\u3044","\u3072\u3081\u3057\u3099\u3057","\u3072\u3084\u3051","\u3072\u3084\u3059","\u3072\u3088\u3046","\u3072\u3099\u3087\u3046\u304d","\u3072\u3089\u304b\u3099\u306a","\u3072\u3089\u304f","\u3072\u308a\u3064","\u3072\u308a\u3087\u3046","\u3072\u308b\u307e","\u3072\u308b\u3084\u3059\u307f","\u3072\u308c\u3044","\u3072\u308d\u3044","\u3072\u308d\u3046","\u3072\u308d\u304d","\u3072\u308d\u3086\u304d","\u3072\u3093\u304b\u304f","\u3072\u3093\u3051\u3064","\u3072\u3093\u3053\u3093","\u3072\u3093\u3057\u3085","\u3072\u3093\u305d\u3046","\u3072\u309a\u3093\u3061","\u3072\u3093\u306f\u309a\u3093","\u3072\u3099\u3093\u307b\u3099\u3046","\u3075\u3042\u3093","\u3075\u3044\u3046\u3061","\u3075\u3046\u3051\u3044","\u3075\u3046\u305b\u3093","\u3075\u309a\u3046\u305f\u308d\u3046","\u3075\u3046\u3068\u3046","\u3075\u3046\u3075","\u3075\u3048\u308b","\u3075\u304a\u3093","\u3075\u304b\u3044","\u3075\u304d\u3093","\u3075\u304f\u3055\u3099\u3064","\u3075\u304f\u3075\u3099\u304f\u308d","\u3075\u3053\u3046","\u3075\u3055\u3044","\u3075\u3057\u304d\u3099","\u3075\u3057\u3099\u307f","\u3075\u3059\u307e","\u3075\u305b\u3044","\u3075\u305b\u304f\u3099","\u3075\u305d\u304f","\u3075\u3099\u305f\u306b\u304f","\u3075\u305f\u3093","\u3075\u3061\u3087\u3046","\u3075\u3064\u3046","\u3075\u3064\u304b","\u3075\u3063\u304b\u3064","\u3075\u3063\u304d","\u3075\u3063\u3053\u304f","\u3075\u3099\u3068\u3099\u3046","\u3075\u3068\u308b","\u3075\u3068\u3093","\u3075\u306e\u3046","\u3075\u306f\u3044","\u3075\u3072\u3087\u3046","\u3075\u3078\u3093","\u3075\u307e\u3093","\u3075\u307f\u3093","\u3075\u3081\u3064","\u3075\u3081\u3093","\u3075\u3088\u3046","\u3075\u308a\u3053","\u3075\u308a\u308b","\u3075\u308b\u3044","\u3075\u3093\u3044\u304d","\u3075\u3099\u3093\u304b\u3099\u304f","\u3075\u3099\u3093\u304f\u3099","\u3075\u3093\u3057\u3064","\u3075\u3099\u3093\u305b\u304d","\u3075\u3093\u305d\u3046","\u3075\u3099\u3093\u307b\u309a\u3046","\u3078\u3044\u3042\u3093","\u3078\u3044\u304a\u3093","\u3078\u3044\u304b\u3099\u3044","\u3078\u3044\u304d","\u3078\u3044\u3051\u3099\u3093","\u3078\u3044\u3053\u3046","\u3078\u3044\u3055","\u3078\u3044\u3057\u3083","\u3078\u3044\u305b\u3064","\u3078\u3044\u305d","\u3078\u3044\u305f\u304f","\u3078\u3044\u3066\u3093","\u3078\u3044\u306d\u3064","\u3078\u3044\u308f","\u3078\u304d\u304b\u3099","\u3078\u3053\u3080","\u3078\u3099\u306b\u3044\u308d","\u3078\u3099\u306b\u3057\u3087\u3046\u304b\u3099","\u3078\u3089\u3059","\u3078\u3093\u304b\u3093","\u3078\u3099\u3093\u304d\u3087\u3046","\u3078\u3099\u3093\u3053\u3099\u3057","\u3078\u3093\u3055\u3044","\u3078\u3093\u305f\u3044","\u3078\u3099\u3093\u308a","\u307b\u3042\u3093","\u307b\u3044\u304f","\u307b\u3099\u3046\u304d\u3099\u3087","\u307b\u3046\u3053\u304f","\u307b\u3046\u305d\u3046","\u307b\u3046\u307b\u3046","\u307b\u3046\u3082\u3093","\u307b\u3046\u308a\u3064","\u307b\u3048\u308b","\u307b\u304a\u3093","\u307b\u304b\u3093","\u307b\u304d\u3087\u3046","\u307b\u3099\u304d\u3093","\u307b\u304f\u308d","\u307b\u3051\u3064","\u307b\u3051\u3093","\u307b\u3053\u3046","\u307b\u3053\u308b","\u307b\u3057\u3044","\u307b\u3057\u3064","\u307b\u3057\u3085","\u307b\u3057\u3087\u3046","\u307b\u305b\u3044","\u307b\u305d\u3044","\u307b\u305d\u304f","\u307b\u305f\u3066","\u307b\u305f\u308b","\u307b\u309a\u3061\u3075\u3099\u304f\u308d","\u307b\u3063\u304d\u3087\u304f","\u307b\u3063\u3055","\u307b\u3063\u305f\u3093","\u307b\u3068\u3093\u3068\u3099","\u307b\u3081\u308b","\u307b\u3093\u3044","\u307b\u3093\u304d","\u307b\u3093\u3051","\u307b\u3093\u3057\u3064","\u307b\u3093\u3084\u304f","\u307e\u3044\u306b\u3061","\u307e\u304b\u3044","\u307e\u304b\u305b\u308b","\u307e\u304b\u3099\u308b","\u307e\u3051\u308b","\u307e\u3053\u3068","\u307e\u3055\u3064","\u307e\u3057\u3099\u3081","\u307e\u3059\u304f","\u307e\u305b\u3099\u308b","\u307e\u3064\u308a","\u307e\u3068\u3081","\u307e\u306a\u3075\u3099","\u307e\u306c\u3051","\u307e\u306d\u304f","\u307e\u307b\u3046","\u307e\u3082\u308b","\u307e\u3086\u3051\u3099","\u307e\u3088\u3046","\u307e\u308d\u3084\u304b","\u307e\u308f\u3059","\u307e\u308f\u308a","\u307e\u308f\u308b","\u307e\u3093\u304b\u3099","\u307e\u3093\u304d\u3064","\u307e\u3093\u305d\u3099\u304f","\u307e\u3093\u306a\u304b","\u307f\u3044\u3089","\u307f\u3046\u3061","\u307f\u3048\u308b","\u307f\u304b\u3099\u304f","\u307f\u304b\u305f","\u307f\u304b\u3093","\u307f\u3051\u3093","\u307f\u3053\u3093","\u307f\u3057\u3099\u304b\u3044","\u307f\u3059\u3044","\u307f\u3059\u3048\u308b","\u307f\u305b\u308b","\u307f\u3063\u304b","\u307f\u3064\u304b\u308b","\u307f\u3064\u3051\u308b","\u307f\u3066\u3044","\u307f\u3068\u3081\u308b","\u307f\u306a\u3068","\u307f\u306a\u307f\u304b\u3055\u3044","\u307f\u306d\u3089\u308b","\u307f\u306e\u3046","\u307f\u306e\u304b\u3099\u3059","\u307f\u307b\u3093","\u307f\u3082\u3068","\u307f\u3084\u3051\u3099","\u307f\u3089\u3044","\u307f\u308a\u3087\u304f","\u307f\u308f\u304f","\u307f\u3093\u304b","\u307f\u3093\u305d\u3099\u304f","\u3080\u3044\u304b","\u3080\u3048\u304d","\u3080\u3048\u3093","\u3080\u304b\u3044","\u3080\u304b\u3046","\u3080\u304b\u3048","\u3080\u304b\u3057","\u3080\u304d\u3099\u3061\u3083","\u3080\u3051\u308b","\u3080\u3051\u3099\u3093","\u3080\u3055\u307b\u3099\u308b","\u3080\u3057\u3042\u3064\u3044","\u3080\u3057\u306f\u3099","\u3080\u3057\u3099\u3085\u3093","\u3080\u3057\u308d","\u3080\u3059\u3046","\u3080\u3059\u3053","\u3080\u3059\u3075\u3099","\u3080\u3059\u3081","\u3080\u305b\u308b","\u3080\u305b\u3093","\u3080\u3061\u3085\u3046","\u3080\u306a\u3057\u3044","\u3080\u306e\u3046","\u3080\u3084\u307f","\u3080\u3088\u3046","\u3080\u3089\u3055\u304d","\u3080\u308a\u3087\u3046","\u3080\u308d\u3093","\u3081\u3044\u3042\u3093","\u3081\u3044\u3046\u3093","\u3081\u3044\u3048\u3093","\u3081\u3044\u304b\u304f","\u3081\u3044\u304d\u3087\u304f","\u3081\u3044\u3055\u3044","\u3081\u3044\u3057","\u3081\u3044\u305d\u3046","\u3081\u3044\u3075\u3099\u3064","\u3081\u3044\u308c\u3044","\u3081\u3044\u308f\u304f","\u3081\u304f\u3099\u307e\u308c\u308b","\u3081\u3055\u3099\u3059","\u3081\u3057\u305f","\u3081\u3059\u3099\u3089\u3057\u3044","\u3081\u305f\u3099\u3064","\u3081\u307e\u3044","\u3081\u3084\u3059","\u3081\u3093\u304d\u3087","\u3081\u3093\u305b\u304d","\u3081\u3093\u3068\u3099\u3046","\u3082\u3046\u3057\u3042\u3051\u3099\u308b","\u3082\u3046\u3068\u3099\u3046\u3051\u3093","\u3082\u3048\u308b","\u3082\u304f\u3057","\u3082\u304f\u3066\u304d","\u3082\u304f\u3088\u3046\u3072\u3099","\u3082\u3061\u308d\u3093","\u3082\u3068\u3099\u308b","\u3082\u3089\u3046","\u3082\u3093\u304f","\u3082\u3093\u305f\u3099\u3044","\u3084\u304a\u3084","\u3084\u3051\u308b","\u3084\u3055\u3044","\u3084\u3055\u3057\u3044","\u3084\u3059\u3044","\u3084\u3059\u305f\u308d\u3046","\u3084\u3059\u307f","\u3084\u305b\u308b","\u3084\u305d\u3046","\u3084\u305f\u3044","\u3084\u3061\u3093","\u3084\u3063\u3068","\u3084\u3063\u306f\u309a\u308a","\u3084\u3075\u3099\u308b","\u3084\u3081\u308b","\u3084\u3084\u3053\u3057\u3044","\u3084\u3088\u3044","\u3084\u308f\u3089\u304b\u3044","\u3086\u3046\u304d","\u3086\u3046\u3072\u3099\u3093\u304d\u3087\u304f","\u3086\u3046\u3078\u3099","\u3086\u3046\u3081\u3044","\u3086\u3051\u3064","\u3086\u3057\u3085\u3064","\u3086\u305b\u3093","\u3086\u305d\u3046","\u3086\u305f\u304b","\u3086\u3061\u3083\u304f","\u3086\u3066\u3099\u308b","\u3086\u306b\u3085\u3046","\u3086\u3072\u3099\u308f","\u3086\u3089\u3044","\u3086\u308c\u308b","\u3088\u3046\u3044","\u3088\u3046\u304b","\u3088\u3046\u304d\u3085\u3046","\u3088\u3046\u3057\u3099","\u3088\u3046\u3059","\u3088\u3046\u3061\u3048\u3093","\u3088\u304b\u305b\u3099","\u3088\u304b\u3093","\u3088\u304d\u3093","\u3088\u304f\u305b\u3044","\u3088\u304f\u307b\u3099\u3046","\u3088\u3051\u3044","\u3088\u3053\u3099\u308c\u308b","\u3088\u3055\u3093","\u3088\u3057\u3085\u3046","\u3088\u305d\u3046","\u3088\u305d\u304f","\u3088\u3063\u304b","\u3088\u3066\u3044","\u3088\u3068\u3099\u304b\u3099\u308f\u304f","\u3088\u306d\u3064","\u3088\u3084\u304f","\u3088\u3086\u3046","\u3088\u308d\u3053\u3075\u3099","\u3088\u308d\u3057\u3044","\u3089\u3044\u3046","\u3089\u304f\u304b\u3099\u304d","\u3089\u304f\u3053\u3099","\u3089\u304f\u3055\u3064","\u3089\u304f\u305f\u3099","\u3089\u3057\u3093\u306f\u3099\u3093","\u3089\u305b\u3093","\u3089\u305d\u3099\u304f","\u3089\u305f\u3044","\u3089\u3063\u304b","\u3089\u308c\u3064","\u308a\u3048\u304d","\u308a\u304b\u3044","\u308a\u304d\u3055\u304f","\u308a\u304d\u305b\u3064","\u308a\u304f\u304f\u3099\u3093","\u308a\u304f\u3064","\u308a\u3051\u3093","\u308a\u3053\u3046","\u308a\u305b\u3044","\u308a\u305d\u3046","\u308a\u305d\u304f","\u308a\u3066\u3093","\u308a\u306d\u3093","\u308a\u3086\u3046","\u308a\u3085\u3046\u304b\u3099\u304f","\u308a\u3088\u3046","\u308a\u3087\u3046\u308a","\u308a\u3087\u304b\u3093","\u308a\u3087\u304f\u3061\u3083","\u308a\u3087\u3053\u3046","\u308a\u308a\u304f","\u308a\u308c\u304d","\u308a\u308d\u3093","\u308a\u3093\u3053\u3099","\u308b\u3044\u3051\u3044","\u308b\u3044\u3055\u3044","\u308b\u3044\u3057\u3099","\u308b\u3044\u305b\u304d","\u308b\u3059\u306f\u3099\u3093","\u308b\u308a\u304b\u3099\u308f\u3089","\u308c\u3044\u304b\u3093","\u308c\u3044\u304d\u3099","\u308c\u3044\u305b\u3044","\u308c\u3044\u305d\u3099\u3046\u3053","\u308c\u3044\u3068\u3046","\u308c\u3044\u307b\u3099\u3046","\u308c\u304d\u3057","\u308c\u304d\u305f\u3099\u3044","\u308c\u3093\u3042\u3044","\u308c\u3093\u3051\u3044","\u308c\u3093\u3053\u3093","\u308c\u3093\u3055\u3044","\u308c\u3093\u3057\u3085\u3046","\u308c\u3093\u305d\u3099\u304f","\u308c\u3093\u3089\u304f","\u308d\u3046\u304b","\u308d\u3046\u3053\u3099","\u308d\u3046\u3057\u3099\u3093","\u308d\u3046\u305d\u304f","\u308d\u304f\u304b\u3099","\u308d\u3053\u3064","\u308d\u3057\u3099\u3046\u3089","\u308d\u3057\u3085\u3064","\u308d\u305b\u3093","\u308d\u3066\u3093","\u308d\u3081\u3093","\u308d\u308c\u3064","\u308d\u3093\u304d\u3099","\u308d\u3093\u306f\u309a","\u308d\u3093\u3075\u3099\u3093","\u308d\u3093\u308a","\u308f\u304b\u3059","\u308f\u304b\u3081","\u308f\u304b\u3084\u307e","\u308f\u304b\u308c\u308b","\u308f\u3057\u3064","\u308f\u3057\u3099\u307e\u3057","\u308f\u3059\u308c\u3082\u306e","\u308f\u3089\u3046","\u308f\u308c\u308b"]')},5428:e=>{"use strict";e.exports=JSON.parse('["\u1100\u1161\u1100\u1167\u11a8","\u1100\u1161\u1101\u1173\u11b7","\u1100\u1161\u1102\u1161\u11ab","\u1100\u1161\u1102\u1173\u11bc","\u1100\u1161\u1103\u1173\u11a8","\u1100\u1161\u1105\u1173\u110e\u1175\u11b7","\u1100\u1161\u1106\u116e\u11b7","\u1100\u1161\u1107\u1161\u11bc","\u1100\u1161\u1109\u1161\u11bc","\u1100\u1161\u1109\u1173\u11b7","\u1100\u1161\u110b\u116e\u11ab\u1103\u1166","\u1100\u1161\u110b\u1173\u11af","\u1100\u1161\u110b\u1175\u1103\u1173","\u1100\u1161\u110b\u1175\u11b8","\u1100\u1161\u110c\u1161\u11bc","\u1100\u1161\u110c\u1165\u11bc","\u1100\u1161\u110c\u1169\u11a8","\u1100\u1161\u110c\u116e\u11a8","\u1100\u1161\u11a8\u110b\u1169","\u1100\u1161\u11a8\u110c\u1161","\u1100\u1161\u11ab\u1100\u1167\u11a8","\u1100\u1161\u11ab\u1107\u116e","\u1100\u1161\u11ab\u1109\u1165\u11b8","\u1100\u1161\u11ab\u110c\u1161\u11bc","\u1100\u1161\u11ab\u110c\u1165\u11b8","\u1100\u1161\u11ab\u1111\u1161\u11ab","\u1100\u1161\u11af\u1103\u1173\u11bc","\u1100\u1161\u11af\u1107\u1175","\u1100\u1161\u11af\u1109\u1162\u11a8","\u1100\u1161\u11af\u110c\u1173\u11bc","\u1100\u1161\u11b7\u1100\u1161\u11a8","\u1100\u1161\u11b7\u1100\u1175","\u1100\u1161\u11b7\u1109\u1169","\u1100\u1161\u11b7\u1109\u116e\u1109\u1165\u11bc","\u1100\u1161\u11b7\u110c\u1161","\u1100\u1161\u11b7\u110c\u1165\u11bc","\u1100\u1161\u11b8\u110c\u1161\u1100\u1175","\u1100\u1161\u11bc\u1102\u1161\u11b7","\u1100\u1161\u11bc\u1103\u1161\u11bc","\u1100\u1161\u11bc\u1103\u1169","\u1100\u1161\u11bc\u1105\u1167\u11a8\u1112\u1175","\u1100\u1161\u11bc\u1107\u1167\u11ab","\u1100\u1161\u11bc\u1107\u116e\u11a8","\u1100\u1161\u11bc\u1109\u1161","\u1100\u1161\u11bc\u1109\u116e\u1105\u1163\u11bc","\u1100\u1161\u11bc\u110b\u1161\u110c\u1175","\u1100\u1161\u11bc\u110b\u116f\u11ab\u1103\u1169","\u1100\u1161\u11bc\u110b\u1174","\u1100\u1161\u11bc\u110c\u1166","\u1100\u1161\u11bc\u110c\u1169","\u1100\u1161\u11c0\u110b\u1175","\u1100\u1162\u1100\u116e\u1105\u1175","\u1100\u1162\u1102\u1161\u1105\u1175","\u1100\u1162\u1107\u1161\u11bc","\u1100\u1162\u1107\u1167\u11af","\u1100\u1162\u1109\u1165\u11ab","\u1100\u1162\u1109\u1165\u11bc","\u1100\u1162\u110b\u1175\u11ab","\u1100\u1162\u11a8\u1100\u116a\u11ab\u110c\u1165\u11a8","\u1100\u1165\u1109\u1175\u11af","\u1100\u1165\u110b\u1162\u11a8","\u1100\u1165\u110b\u116e\u11af","\u1100\u1165\u110c\u1175\u11ba","\u1100\u1165\u1111\u116e\u11b7","\u1100\u1165\u11a8\u110c\u1165\u11bc","\u1100\u1165\u11ab\u1100\u1161\u11bc","\u1100\u1165\u11ab\u1106\u116e\u11af","\u1100\u1165\u11ab\u1109\u1165\u11af","\u1100\u1165\u11ab\u110c\u1169","\u1100\u1165\u11ab\u110e\u116e\u11a8","\u1100\u1165\u11af\u110b\u1173\u11b7","\u1100\u1165\u11b7\u1109\u1161","\u1100\u1165\u11b7\u1110\u1169","\u1100\u1166\u1109\u1175\u1111\u1161\u11ab","\u1100\u1166\u110b\u1175\u11b7","\u1100\u1167\u110b\u116e\u11af","\u1100\u1167\u11ab\u1112\u1162","\u1100\u1167\u11af\u1100\u116a","\u1100\u1167\u11af\u1100\u116e\u11a8","\u1100\u1167\u11af\u1105\u1169\u11ab","\u1100\u1167\u11af\u1109\u1165\u11a8","\u1100\u1167\u11af\u1109\u1173\u11bc","\u1100\u1167\u11af\u1109\u1175\u11b7","\u1100\u1167\u11af\u110c\u1165\u11bc","\u1100\u1167\u11af\u1112\u1169\u11ab","\u1100\u1167\u11bc\u1100\u1168","\u1100\u1167\u11bc\u1100\u1169","\u1100\u1167\u11bc\u1100\u1175","\u1100\u1167\u11bc\u1105\u1167\u11a8","\u1100\u1167\u11bc\u1107\u1169\u11a8\u1100\u116e\u11bc","\u1100\u1167\u11bc\u1107\u1175","\u1100\u1167\u11bc\u1109\u1161\u11bc\u1103\u1169","\u1100\u1167\u11bc\u110b\u1167\u11bc","\u1100\u1167\u11bc\u110b\u116e","\u1100\u1167\u11bc\u110c\u1162\u11bc","\u1100\u1167\u11bc\u110c\u1166","\u1100\u1167\u11bc\u110c\u116e","\u1100\u1167\u11bc\u110e\u1161\u11af","\u1100\u1167\u11bc\u110e\u1175","\u1100\u1167\u11bc\u1112\u1163\u11bc","\u1100\u1167\u11bc\u1112\u1165\u11b7","\u1100\u1168\u1100\u1169\u11a8","\u1100\u1168\u1103\u1161\u11ab","\u1100\u1168\u1105\u1161\u11ab","\u1100\u1168\u1109\u1161\u11ab","\u1100\u1168\u1109\u1169\u11a8","\u1100\u1168\u110b\u1163\u11a8","\u1100\u1168\u110c\u1165\u11af","\u1100\u1168\u110e\u1173\u11bc","\u1100\u1168\u1112\u116c\u11a8","\u1100\u1169\u1100\u1162\u11a8","\u1100\u1169\u1100\u116e\u1105\u1167","\u1100\u1169\u1100\u116e\u11bc","\u1100\u1169\u1100\u1173\u11b8","\u1100\u1169\u1103\u1173\u11bc\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1100\u1169\u1106\u116e\u1109\u1175\u11ab","\u1100\u1169\u1106\u1175\u11ab","\u1100\u1169\u110b\u1163\u11bc\u110b\u1175","\u1100\u1169\u110c\u1161\u11bc","\u1100\u1169\u110c\u1165\u11ab","\u1100\u1169\u110c\u1175\u11b8","\u1100\u1169\u110e\u116e\u11ba\u1100\u1161\u1105\u116e","\u1100\u1169\u1110\u1169\u11bc","\u1100\u1169\u1112\u1163\u11bc","\u1100\u1169\u11a8\u1109\u1175\u11a8","\u1100\u1169\u11af\u1106\u1169\u11a8","\u1100\u1169\u11af\u110d\u1161\u1100\u1175","\u1100\u1169\u11af\u1111\u1173","\u1100\u1169\u11bc\u1100\u1161\u11ab","\u1100\u1169\u11bc\u1100\u1162","\u1100\u1169\u11bc\u1100\u1167\u11a8","\u1100\u1169\u11bc\u1100\u116e\u11ab","\u1100\u1169\u11bc\u1100\u1173\u11b8","\u1100\u1169\u11bc\u1100\u1175","\u1100\u1169\u11bc\u1103\u1169\u11bc","\u1100\u1169\u11bc\u1106\u116e\u110b\u116f\u11ab","\u1100\u1169\u11bc\u1107\u116e","\u1100\u1169\u11bc\u1109\u1161","\u1100\u1169\u11bc\u1109\u1175\u11a8","\u1100\u1169\u11bc\u110b\u1165\u11b8","\u1100\u1169\u11bc\u110b\u1167\u11ab","\u1100\u1169\u11bc\u110b\u116f\u11ab","\u1100\u1169\u11bc\u110c\u1161\u11bc","\u1100\u1169\u11bc\u110d\u1161","\u1100\u1169\u11bc\u110e\u1162\u11a8","\u1100\u1169\u11bc\u1110\u1169\u11bc","\u1100\u1169\u11bc\u1111\u1169","\u1100\u1169\u11bc\u1112\u1161\u11bc","\u1100\u1169\u11bc\u1112\u1172\u110b\u1175\u11af","\u1100\u116a\u1106\u1169\u11a8","\u1100\u116a\u110b\u1175\u11af","\u1100\u116a\u110c\u1161\u11bc","\u1100\u116a\u110c\u1165\u11bc","\u1100\u116a\u1112\u1161\u11a8","\u1100\u116a\u11ab\u1100\u1162\u11a8","\u1100\u116a\u11ab\u1100\u1168","\u1100\u116a\u11ab\u1100\u116a\u11bc","\u1100\u116a\u11ab\u1102\u1167\u11b7","\u1100\u116a\u11ab\u1105\u1161\u11b7","\u1100\u116a\u11ab\u1105\u1167\u11ab","\u1100\u116a\u11ab\u1105\u1175","\u1100\u116a\u11ab\u1109\u1173\u11b8","\u1100\u116a\u11ab\u1109\u1175\u11b7","\u1100\u116a\u11ab\u110c\u1165\u11b7","\u1100\u116a\u11ab\u110e\u1161\u11af","\u1100\u116a\u11bc\u1100\u1167\u11bc","\u1100\u116a\u11bc\u1100\u1169","\u1100\u116a\u11bc\u110c\u1161\u11bc","\u1100\u116a\u11bc\u110c\u116e","\u1100\u116c\u1105\u1169\u110b\u116e\u11b7","\u1100\u116c\u11bc\u110c\u1161\u11bc\u1112\u1175","\u1100\u116d\u1100\u116a\u1109\u1165","\u1100\u116d\u1106\u116e\u11ab","\u1100\u116d\u1107\u1169\u11a8","\u1100\u116d\u1109\u1175\u11af","\u1100\u116d\u110b\u1163\u11bc","\u1100\u116d\u110b\u1172\u11a8","\u1100\u116d\u110c\u1161\u11bc","\u1100\u116d\u110c\u1175\u11a8","\u1100\u116d\u1110\u1169\u11bc","\u1100\u116d\u1112\u116a\u11ab","\u1100\u116d\u1112\u116e\u11ab","\u1100\u116e\u1100\u1167\u11bc","\u1100\u116e\u1105\u1173\u11b7","\u1100\u116e\u1106\u1165\u11bc","\u1100\u116e\u1107\u1167\u11af","\u1100\u116e\u1107\u116e\u11ab","\u1100\u116e\u1109\u1165\u11a8","\u1100\u116e\u1109\u1165\u11bc","\u1100\u116e\u1109\u1169\u11a8","\u1100\u116e\u110b\u1167\u11a8","\u1100\u116e\u110b\u1175\u11b8","\u1100\u116e\u110e\u1165\u11bc","\u1100\u116e\u110e\u1166\u110c\u1165\u11a8","\u1100\u116e\u11a8\u1100\u1161","\u1100\u116e\u11a8\u1100\u1175","\u1100\u116e\u11a8\u1102\u1162","\u1100\u116e\u11a8\u1105\u1175\u11b8","\u1100\u116e\u11a8\u1106\u116e\u11af","\u1100\u116e\u11a8\u1106\u1175\u11ab","\u1100\u116e\u11a8\u1109\u116e","\u1100\u116e\u11a8\u110b\u1165","\u1100\u116e\u11a8\u110b\u116a\u11bc","\u1100\u116e\u11a8\u110c\u1165\u11a8","\u1100\u116e\u11a8\u110c\u1166","\u1100\u116e\u11a8\u1112\u116c","\u1100\u116e\u11ab\u1103\u1162","\u1100\u116e\u11ab\u1109\u1161","\u1100\u116e\u11ab\u110b\u1175\u11ab","\u1100\u116e\u11bc\u1100\u1173\u11a8\u110c\u1165\u11a8","\u1100\u116f\u11ab\u1105\u1175","\u1100\u116f\u11ab\u110b\u1171","\u1100\u116f\u11ab\u1110\u116e","\u1100\u1171\u1100\u116e\u11a8","\u1100\u1171\u1109\u1175\u11ab","\u1100\u1172\u110c\u1165\u11bc","\u1100\u1172\u110e\u1175\u11a8","\u1100\u1172\u11ab\u1112\u1167\u11bc","\u1100\u1173\u1102\u1161\u11af","\u1100\u1173\u1102\u1163\u11bc","\u1100\u1173\u1102\u1173\u11af","\u1100\u1173\u1105\u1165\u1102\u1161","\u1100\u1173\u1105\u116e\u11b8","\u1100\u1173\u1105\u1173\u11ba","\u1100\u1173\u1105\u1175\u11b7","\u1100\u1173\u110c\u1166\u1109\u1165\u110b\u1163","\u1100\u1173\u1110\u1169\u1105\u1169\u11a8","\u1100\u1173\u11a8\u1107\u1169\u11a8","\u1100\u1173\u11a8\u1112\u1175","\u1100\u1173\u11ab\u1100\u1165","\u1100\u1173\u11ab\u1100\u116d","\u1100\u1173\u11ab\u1105\u1162","\u1100\u1173\u11ab\u1105\u1169","\u1100\u1173\u11ab\u1106\u116e","\u1100\u1173\u11ab\u1107\u1169\u11ab","\u1100\u1173\u11ab\u110b\u116f\u11ab","\u1100\u1173\u11ab\u110b\u1172\u11a8","\u1100\u1173\u11ab\u110e\u1165","\u1100\u1173\u11af\u110a\u1175","\u1100\u1173\u11af\u110c\u1161","\u1100\u1173\u11b7\u1100\u1161\u11bc\u1109\u1161\u11ab","\u1100\u1173\u11b7\u1100\u1169","\u1100\u1173\u11b7\u1102\u1167\u11ab","\u1100\u1173\u11b7\u1106\u1166\u1103\u1161\u11af","\u1100\u1173\u11b7\u110b\u1162\u11a8","\u1100\u1173\u11b7\u110b\u1167\u11ab","\u1100\u1173\u11b7\u110b\u116d\u110b\u1175\u11af","\u1100\u1173\u11b7\u110c\u1175","\u1100\u1173\u11bc\u110c\u1165\u11bc\u110c\u1165\u11a8","\u1100\u1175\u1100\u1161\u11ab","\u1100\u1175\u1100\u116a\u11ab","\u1100\u1175\u1102\u1167\u11b7","\u1100\u1175\u1102\u1173\u11bc","\u1100\u1175\u1103\u1169\u11a8\u1100\u116d","\u1100\u1175\u1103\u116e\u11bc","\u1100\u1175\u1105\u1169\u11a8","\u1100\u1175\u1105\u1173\u11b7","\u1100\u1175\u1107\u1165\u11b8","\u1100\u1175\u1107\u1169\u11ab","\u1100\u1175\u1107\u116e\u11ab","\u1100\u1175\u1108\u1173\u11b7","\u1100\u1175\u1109\u116e\u11a8\u1109\u1161","\u1100\u1175\u1109\u116e\u11af","\u1100\u1175\u110b\u1165\u11a8","\u1100\u1175\u110b\u1165\u11b8","\u1100\u1175\u110b\u1169\u11ab","\u1100\u1175\u110b\u116e\u11ab","\u1100\u1175\u110b\u116f\u11ab","\u1100\u1175\u110c\u1165\u11a8","\u1100\u1175\u110c\u116e\u11ab","\u1100\u1175\u110e\u1175\u11b7","\u1100\u1175\u1112\u1169\u11ab","\u1100\u1175\u1112\u116c\u11a8","\u1100\u1175\u11ab\u1100\u1173\u11b8","\u1100\u1175\u11ab\u110c\u1161\u11bc","\u1100\u1175\u11af\u110b\u1175","\u1100\u1175\u11b7\u1107\u1161\u11b8","\u1100\u1175\u11b7\u110e\u1175","\u1100\u1175\u11b7\u1111\u1169\u1100\u1169\u11bc\u1112\u1161\u11bc","\u1101\u1161\u11a8\u1103\u116e\u1100\u1175","\u1101\u1161\u11b7\u1108\u1161\u11a8","\u1101\u1162\u1103\u1161\u11af\u110b\u1173\u11b7","\u1101\u1162\u1109\u1169\u1100\u1173\u11b7","\u1101\u1165\u11b8\u110c\u1175\u11af","\u1101\u1169\u11a8\u1103\u1162\u1100\u1175","\u1101\u1169\u11be\u110b\u1175\u11c1","\u1102\u1161\u1103\u1173\u11af\u110b\u1175","\u1102\u1161\u1105\u1161\u11ab\u1112\u1175","\u1102\u1161\u1106\u1165\u110c\u1175","\u1102\u1161\u1106\u116e\u11af","\u1102\u1161\u110e\u1175\u11b7\u1107\u1161\u11ab","\u1102\u1161\u1112\u1173\u11af","\u1102\u1161\u11a8\u110b\u1167\u11b8","\u1102\u1161\u11ab\u1107\u1161\u11bc","\u1102\u1161\u11af\u1100\u1162","\u1102\u1161\u11af\u110a\u1175","\u1102\u1161\u11af\u110d\u1161","\u1102\u1161\u11b7\u1102\u1167","\u1102\u1161\u11b7\u1103\u1162\u1106\u116e\u11ab","\u1102\u1161\u11b7\u1106\u1162","\u1102\u1161\u11b7\u1109\u1161\u11ab","\u1102\u1161\u11b7\u110c\u1161","\u1102\u1161\u11b7\u1111\u1167\u11ab","\u1102\u1161\u11b7\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1102\u1161\u11bc\u1107\u1175","\u1102\u1161\u11c0\u1106\u1161\u11af","\u1102\u1162\u1102\u1167\u11ab","\u1102\u1162\u110b\u116d\u11bc","\u1102\u1162\u110b\u1175\u11af","\u1102\u1162\u11b7\u1107\u1175","\u1102\u1162\u11b7\u1109\u1162","\u1102\u1162\u11ba\u1106\u116e\u11af","\u1102\u1162\u11bc\u1103\u1169\u11bc","\u1102\u1162\u11bc\u1106\u1167\u11ab","\u1102\u1162\u11bc\u1107\u1161\u11bc","\u1102\u1162\u11bc\u110c\u1161\u11bc\u1100\u1169","\u1102\u1166\u11a8\u1110\u1161\u110b\u1175","\u1102\u1166\u11ba\u110d\u1162","\u1102\u1169\u1103\u1169\u11bc","\u1102\u1169\u1105\u1161\u11ab\u1109\u1162\u11a8","\u1102\u1169\u1105\u1167\u11a8","\u1102\u1169\u110b\u1175\u11ab","\u1102\u1169\u11a8\u110b\u1173\u11b7","\u1102\u1169\u11a8\u110e\u1161","\u1102\u1169\u11a8\u1112\u116a","\u1102\u1169\u11ab\u1105\u1175","\u1102\u1169\u11ab\u1106\u116e\u11ab","\u1102\u1169\u11ab\u110c\u1162\u11bc","\u1102\u1169\u11af\u110b\u1175","\u1102\u1169\u11bc\u1100\u116e","\u1102\u1169\u11bc\u1103\u1161\u11b7","\u1102\u1169\u11bc\u1106\u1175\u11ab","\u1102\u1169\u11bc\u1107\u116e","\u1102\u1169\u11bc\u110b\u1165\u11b8","\u1102\u1169\u11bc\u110c\u1161\u11bc","\u1102\u1169\u11bc\u110e\u1169\u11ab","\u1102\u1169\u11c1\u110b\u1175","\u1102\u116e\u11ab\u1103\u1169\u11bc\u110c\u1161","\u1102\u116e\u11ab\u1106\u116e\u11af","\u1102\u116e\u11ab\u110a\u1165\u11b8","\u1102\u1172\u110b\u116d\u11a8","\u1102\u1173\u1101\u1175\u11b7","\u1102\u1173\u11a8\u1103\u1162","\u1102\u1173\u11bc\u1103\u1169\u11bc\u110c\u1165\u11a8","\u1102\u1173\u11bc\u1105\u1167\u11a8","\u1103\u1161\u1107\u1161\u11bc","\u1103\u1161\u110b\u1163\u11bc\u1109\u1165\u11bc","\u1103\u1161\u110b\u1173\u11b7","\u1103\u1161\u110b\u1175\u110b\u1165\u1110\u1173","\u1103\u1161\u1112\u1162\u11bc","\u1103\u1161\u11ab\u1100\u1168","\u1103\u1161\u11ab\u1100\u1169\u11af","\u1103\u1161\u11ab\u1103\u1169\u11a8","\u1103\u1161\u11ab\u1106\u1161\u11ba","\u1103\u1161\u11ab\u1109\u116e\u11ab","\u1103\u1161\u11ab\u110b\u1165","\u1103\u1161\u11ab\u110b\u1171","\u1103\u1161\u11ab\u110c\u1165\u11b7","\u1103\u1161\u11ab\u110e\u1166","\u1103\u1161\u11ab\u110e\u116e","\u1103\u1161\u11ab\u1111\u1167\u11ab","\u1103\u1161\u11ab\u1111\u116e\u11bc","\u1103\u1161\u11af\u1100\u1163\u11af","\u1103\u1161\u11af\u1105\u1165","\u1103\u1161\u11af\u1105\u1167\u11a8","\u1103\u1161\u11af\u1105\u1175","\u1103\u1161\u11b0\u1100\u1169\u1100\u1175","\u1103\u1161\u11b7\u1103\u1161\u11bc","\u1103\u1161\u11b7\u1107\u1162","\u1103\u1161\u11b7\u110b\u116d","\u1103\u1161\u11b7\u110b\u1175\u11b7","\u1103\u1161\u11b8\u1107\u1167\u11ab","\u1103\u1161\u11b8\u110c\u1161\u11bc","\u1103\u1161\u11bc\u1100\u1173\u11ab","\u1103\u1161\u11bc\u1107\u116e\u11ab\u1100\u1161\u11ab","\u1103\u1161\u11bc\u110b\u1167\u11ab\u1112\u1175","\u1103\u1161\u11bc\u110c\u1161\u11bc","\u1103\u1162\u1100\u1172\u1106\u1169","\u1103\u1162\u1102\u1161\u11bd","\u1103\u1162\u1103\u1161\u11ab\u1112\u1175","\u1103\u1162\u1103\u1161\u11b8","\u1103\u1162\u1103\u1169\u1109\u1175","\u1103\u1162\u1105\u1163\u11a8","\u1103\u1162\u1105\u1163\u11bc","\u1103\u1162\u1105\u1172\u11a8","\u1103\u1162\u1106\u116e\u11ab","\u1103\u1162\u1107\u116e\u1107\u116e\u11ab","\u1103\u1162\u1109\u1175\u11ab","\u1103\u1162\u110b\u1173\u11bc","\u1103\u1162\u110c\u1161\u11bc","\u1103\u1162\u110c\u1165\u11ab","\u1103\u1162\u110c\u1165\u11b8","\u1103\u1162\u110c\u116e\u11bc","\u1103\u1162\u110e\u1162\u11a8","\u1103\u1162\u110e\u116e\u11af","\u1103\u1162\u110e\u116e\u11bc","\u1103\u1162\u1110\u1169\u11bc\u1105\u1167\u11bc","\u1103\u1162\u1112\u1161\u11a8","\u1103\u1162\u1112\u1161\u11ab\u1106\u1175\u11ab\u1100\u116e\u11a8","\u1103\u1162\u1112\u1161\u11b8\u1109\u1175\u11af","\u1103\u1162\u1112\u1167\u11bc","\u1103\u1165\u11bc\u110b\u1165\u1105\u1175","\u1103\u1166\u110b\u1175\u1110\u1173","\u1103\u1169\u1103\u1162\u110e\u1166","\u1103\u1169\u1103\u1165\u11a8","\u1103\u1169\u1103\u116e\u11a8","\u1103\u1169\u1106\u1161\u11bc","\u1103\u1169\u1109\u1165\u1100\u116a\u11ab","\u1103\u1169\u1109\u1175\u11b7","\u1103\u1169\u110b\u116e\u11b7","\u1103\u1169\u110b\u1175\u11b8","\u1103\u1169\u110c\u1161\u1100\u1175","\u1103\u1169\u110c\u1165\u1112\u1175","\u1103\u1169\u110c\u1165\u11ab","\u1103\u1169\u110c\u116e\u11bc","\u1103\u1169\u110e\u1161\u11a8","\u1103\u1169\u11a8\u1100\u1161\u11b7","\u1103\u1169\u11a8\u1105\u1175\u11b8","\u1103\u1169\u11a8\u1109\u1165","\u1103\u1169\u11a8\u110b\u1175\u11af","\u1103\u1169\u11a8\u110e\u1161\u11bc\u110c\u1165\u11a8","\u1103\u1169\u11bc\u1112\u116a\u110e\u1162\u11a8","\u1103\u1171\u11ba\u1106\u1169\u1109\u1173\u11b8","\u1103\u1171\u11ba\u1109\u1161\u11ab","\u1104\u1161\u11af\u110b\u1161\u110b\u1175","\u1106\u1161\u1102\u116e\u1105\u1161","\u1106\u1161\u1102\u1173\u11af","\u1106\u1161\u1103\u1161\u11bc","\u1106\u1161\u1105\u1161\u1110\u1169\u11ab","\u1106\u1161\u1105\u1167\u11ab","\u1106\u1161\u1106\u116e\u1105\u1175","\u1106\u1161\u1109\u1161\u110c\u1175","\u1106\u1161\u110b\u1163\u11a8","\u1106\u1161\u110b\u116d\u1102\u1166\u110c\u1173","\u1106\u1161\u110b\u1173\u11af","\u1106\u1161\u110b\u1173\u11b7","\u1106\u1161\u110b\u1175\u110f\u1173","\u1106\u1161\u110c\u116e\u11bc","\u1106\u1161\u110c\u1175\u1106\u1161\u11a8","\u1106\u1161\u110e\u1161\u11ab\u1100\u1161\u110c\u1175","\u1106\u1161\u110e\u1161\u11af","\u1106\u1161\u1112\u1173\u11ab","\u1106\u1161\u11a8\u1100\u1165\u11af\u1105\u1175","\u1106\u1161\u11a8\u1102\u1162","\u1106\u1161\u11a8\u1109\u1161\u11bc","\u1106\u1161\u11ab\u1102\u1161\u11b7","\u1106\u1161\u11ab\u1103\u116e","\u1106\u1161\u11ab\u1109\u1166","\u1106\u1161\u11ab\u110b\u1163\u11a8","\u1106\u1161\u11ab\u110b\u1175\u11af","\u1106\u1161\u11ab\u110c\u1165\u11b7","\u1106\u1161\u11ab\u110c\u1169\u11a8","\u1106\u1161\u11ab\u1112\u116a","\u1106\u1161\u11ad\u110b\u1175","\u1106\u1161\u11af\u1100\u1175","\u1106\u1161\u11af\u110a\u1173\u11b7","\u1106\u1161\u11af\u1110\u116e","\u1106\u1161\u11b7\u1103\u1162\u1105\u1169","\u1106\u1161\u11bc\u110b\u116f\u11ab\u1100\u1167\u11bc","\u1106\u1162\u1102\u1167\u11ab","\u1106\u1162\u1103\u1161\u11af","\u1106\u1162\u1105\u1167\u11a8","\u1106\u1162\u1107\u1165\u11ab","\u1106\u1162\u1109\u1173\u110f\u1165\u11b7","\u1106\u1162\u110b\u1175\u11af","\u1106\u1162\u110c\u1161\u11bc","\u1106\u1162\u11a8\u110c\u116e","\u1106\u1165\u11a8\u110b\u1175","\u1106\u1165\u11ab\u110c\u1165","\u1106\u1165\u11ab\u110c\u1175","\u1106\u1165\u11af\u1105\u1175","\u1106\u1166\u110b\u1175\u11af","\u1106\u1167\u1102\u1173\u1105\u1175","\u1106\u1167\u110e\u1175\u11af","\u1106\u1167\u11ab\u1103\u1161\u11b7","\u1106\u1167\u11af\u110e\u1175","\u1106\u1167\u11bc\u1103\u1161\u11ab","\u1106\u1167\u11bc\u1105\u1167\u11bc","\u1106\u1167\u11bc\u110b\u1168","\u1106\u1167\u11bc\u110b\u1174","\u1106\u1167\u11bc\u110c\u1165\u11af","\u1106\u1167\u11bc\u110e\u1175\u11bc","\u1106\u1167\u11bc\u1112\u1161\u11b7","\u1106\u1169\u1100\u1173\u11b7","\u1106\u1169\u1102\u1175\u1110\u1165","\u1106\u1169\u1103\u1166\u11af","\u1106\u1169\u1103\u1173\u11ab","\u1106\u1169\u1107\u1165\u11b7","\u1106\u1169\u1109\u1173\u11b8","\u1106\u1169\u110b\u1163\u11bc","\u1106\u1169\u110b\u1175\u11b7","\u1106\u1169\u110c\u1169\u1105\u1175","\u1106\u1169\u110c\u1175\u11b8","\u1106\u1169\u1110\u116e\u11bc\u110b\u1175","\u1106\u1169\u11a8\u1100\u1165\u11af\u110b\u1175","\u1106\u1169\u11a8\u1105\u1169\u11a8","\u1106\u1169\u11a8\u1109\u1161","\u1106\u1169\u11a8\u1109\u1169\u1105\u1175","\u1106\u1169\u11a8\u1109\u116e\u11b7","\u1106\u1169\u11a8\u110c\u1165\u11a8","\u1106\u1169\u11a8\u1111\u116d","\u1106\u1169\u11af\u1105\u1162","\u1106\u1169\u11b7\u1106\u1162","\u1106\u1169\u11b7\u1106\u116e\u1100\u1166","\u1106\u1169\u11b7\u1109\u1161\u11af","\u1106\u1169\u11b7\u1109\u1169\u11a8","\u1106\u1169\u11b7\u110c\u1175\u11ba","\u1106\u1169\u11b7\u1110\u1169\u11bc","\u1106\u1169\u11b8\u1109\u1175","\u1106\u116e\u1100\u116a\u11ab\u1109\u1175\u11b7","\u1106\u116e\u1100\u116e\u11bc\u1112\u116a","\u1106\u116e\u1103\u1165\u110b\u1171","\u1106\u116e\u1103\u1165\u11b7","\u1106\u116e\u1105\u1173\u11c1","\u1106\u116e\u1109\u1173\u11ab","\u1106\u116e\u110b\u1165\u11ba","\u1106\u116e\u110b\u1167\u11a8","\u1106\u116e\u110b\u116d\u11bc","\u1106\u116e\u110c\u1169\u1100\u1165\u11ab","\u1106\u116e\u110c\u1175\u1100\u1162","\u1106\u116e\u110e\u1165\u11a8","\u1106\u116e\u11ab\u1100\u116e","\u1106\u116e\u11ab\u1103\u1173\u11a8","\u1106\u116e\u11ab\u1107\u1165\u11b8","\u1106\u116e\u11ab\u1109\u1165","\u1106\u116e\u11ab\u110c\u1166","\u1106\u116e\u11ab\u1112\u1161\u11a8","\u1106\u116e\u11ab\u1112\u116a","\u1106\u116e\u11af\u1100\u1161","\u1106\u116e\u11af\u1100\u1165\u11ab","\u1106\u116e\u11af\u1100\u1167\u11af","\u1106\u116e\u11af\u1100\u1169\u1100\u1175","\u1106\u116e\u11af\u1105\u1169\u11ab","\u1106\u116e\u11af\u1105\u1175\u1112\u1161\u11a8","\u1106\u116e\u11af\u110b\u1173\u11b7","\u1106\u116e\u11af\u110c\u1175\u11af","\u1106\u116e\u11af\u110e\u1166","\u1106\u1175\u1100\u116e\u11a8","\u1106\u1175\u1103\u1175\u110b\u1165","\u1106\u1175\u1109\u1161\u110b\u1175\u11af","\u1106\u1175\u1109\u116e\u11af","\u1106\u1175\u110b\u1167\u11a8","\u1106\u1175\u110b\u116d\u11bc\u1109\u1175\u11af","\u1106\u1175\u110b\u116e\u11b7","\u1106\u1175\u110b\u1175\u11ab","\u1106\u1175\u1110\u1175\u11bc","\u1106\u1175\u1112\u1169\u11ab","\u1106\u1175\u11ab\u1100\u1161\u11ab","\u1106\u1175\u11ab\u110c\u1169\u11a8","\u1106\u1175\u11ab\u110c\u116e","\u1106\u1175\u11ae\u110b\u1173\u11b7","\u1106\u1175\u11af\u1100\u1161\u1105\u116e","\u1106\u1175\u11af\u1105\u1175\u1106\u1175\u1110\u1165","\u1106\u1175\u11c0\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u1100\u1161\u110c\u1175","\u1107\u1161\u1100\u116e\u1102\u1175","\u1107\u1161\u1102\u1161\u1102\u1161","\u1107\u1161\u1102\u1173\u11af","\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u1103\u1161\u11ba\u1100\u1161","\u1107\u1161\u1105\u1161\u11b7","\u1107\u1161\u110b\u1175\u1105\u1165\u1109\u1173","\u1107\u1161\u1110\u1161\u11bc","\u1107\u1161\u11a8\u1106\u116e\u11af\u1100\u116a\u11ab","\u1107\u1161\u11a8\u1109\u1161","\u1107\u1161\u11a8\u1109\u116e","\u1107\u1161\u11ab\u1103\u1162","\u1107\u1161\u11ab\u1103\u1173\u1109\u1175","\u1107\u1161\u11ab\u1106\u1161\u11af","\u1107\u1161\u11ab\u1107\u1161\u11af","\u1107\u1161\u11ab\u1109\u1165\u11bc","\u1107\u1161\u11ab\u110b\u1173\u11bc","\u1107\u1161\u11ab\u110c\u1161\u11bc","\u1107\u1161\u11ab\u110c\u116e\u11a8","\u1107\u1161\u11ab\u110c\u1175","\u1107\u1161\u11ab\u110e\u1161\u11ab","\u1107\u1161\u11ae\u110e\u1175\u11b7","\u1107\u1161\u11af\u1100\u1161\u1105\u1161\u11a8","\u1107\u1161\u11af\u1100\u1165\u11af\u110b\u1173\u11b7","\u1107\u1161\u11af\u1100\u1167\u11ab","\u1107\u1161\u11af\u1103\u1161\u11af","\u1107\u1161\u11af\u1105\u1166","\u1107\u1161\u11af\u1106\u1169\u11a8","\u1107\u1161\u11af\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u11af\u1109\u1162\u11bc","\u1107\u1161\u11af\u110b\u1173\u11b7","\u1107\u1161\u11af\u110c\u1161\u1100\u116e\u11a8","\u1107\u1161\u11af\u110c\u1165\u11ab","\u1107\u1161\u11af\u1110\u1169\u11b8","\u1107\u1161\u11af\u1111\u116d","\u1107\u1161\u11b7\u1112\u1161\u1102\u1173\u11af","\u1107\u1161\u11b8\u1100\u1173\u1105\u1173\u11ba","\u1107\u1161\u11b8\u1106\u1161\u11ba","\u1107\u1161\u11b8\u1109\u1161\u11bc","\u1107\u1161\u11b8\u1109\u1169\u11c0","\u1107\u1161\u11bc\u1100\u1173\u11b7","\u1107\u1161\u11bc\u1106\u1167\u11ab","\u1107\u1161\u11bc\u1106\u116e\u11ab","\u1107\u1161\u11bc\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u11bc\u1107\u1165\u11b8","\u1107\u1161\u11bc\u1109\u1169\u11bc","\u1107\u1161\u11bc\u1109\u1175\u11a8","\u1107\u1161\u11bc\u110b\u1161\u11ab","\u1107\u1161\u11bc\u110b\u116e\u11af","\u1107\u1161\u11bc\u110c\u1175","\u1107\u1161\u11bc\u1112\u1161\u11a8","\u1107\u1161\u11bc\u1112\u1162","\u1107\u1161\u11bc\u1112\u1163\u11bc","\u1107\u1162\u1100\u1167\u11bc","\u1107\u1162\u1101\u1169\u11b8","\u1107\u1162\u1103\u1161\u11af","\u1107\u1162\u1103\u1173\u1106\u1175\u11ab\u1110\u1165\u11ab","\u1107\u1162\u11a8\u1103\u116e\u1109\u1161\u11ab","\u1107\u1162\u11a8\u1109\u1162\u11a8","\u1107\u1162\u11a8\u1109\u1165\u11bc","\u1107\u1162\u11a8\u110b\u1175\u11ab","\u1107\u1162\u11a8\u110c\u1166","\u1107\u1162\u11a8\u1112\u116a\u110c\u1165\u11b7","\u1107\u1165\u1105\u1173\u11ba","\u1107\u1165\u1109\u1165\u11ba","\u1107\u1165\u1110\u1173\u11ab","\u1107\u1165\u11ab\u1100\u1162","\u1107\u1165\u11ab\u110b\u1167\u11a8","\u1107\u1165\u11ab\u110c\u1175","\u1107\u1165\u11ab\u1112\u1169","\u1107\u1165\u11af\u1100\u1173\u11b7","\u1107\u1165\u11af\u1105\u1166","\u1107\u1165\u11af\u110a\u1165","\u1107\u1165\u11b7\u110b\u1171","\u1107\u1165\u11b7\u110b\u1175\u11ab","\u1107\u1165\u11b7\u110c\u116c","\u1107\u1165\u11b8\u1105\u1172\u11af","\u1107\u1165\u11b8\u110b\u116f\u11ab","\u1107\u1165\u11b8\u110c\u1165\u11a8","\u1107\u1165\u11b8\u110e\u1175\u11a8","\u1107\u1166\u110b\u1175\u110c\u1175\u11bc","\u1107\u1166\u11af\u1110\u1173","\u1107\u1167\u11ab\u1100\u1167\u11bc","\u1107\u1167\u11ab\u1103\u1169\u11bc","\u1107\u1167\u11ab\u1106\u1167\u11bc","\u1107\u1167\u11ab\u1109\u1175\u11ab","\u1107\u1167\u11ab\u1112\u1169\u1109\u1161","\u1107\u1167\u11ab\u1112\u116a","\u1107\u1167\u11af\u1103\u1169","\u1107\u1167\u11af\u1106\u1167\u11bc","\u1107\u1167\u11af\u110b\u1175\u11af","\u1107\u1167\u11bc\u1109\u1175\u11af","\u1107\u1167\u11bc\u110b\u1161\u1105\u1175","\u1107\u1167\u11bc\u110b\u116f\u11ab","\u1107\u1169\u1100\u116a\u11ab","\u1107\u1169\u1102\u1165\u1109\u1173","\u1107\u1169\u1105\u1161\u1109\u1162\u11a8","\u1107\u1169\u1105\u1161\u11b7","\u1107\u1169\u1105\u1173\u11b7","\u1107\u1169\u1109\u1161\u11bc","\u1107\u1169\u110b\u1161\u11ab","\u1107\u1169\u110c\u1161\u1100\u1175","\u1107\u1169\u110c\u1161\u11bc","\u1107\u1169\u110c\u1165\u11ab","\u1107\u1169\u110c\u1169\u11ab","\u1107\u1169\u1110\u1169\u11bc","\u1107\u1169\u1111\u1167\u11ab\u110c\u1165\u11a8","\u1107\u1169\u1112\u1165\u11b7","\u1107\u1169\u11a8\u1103\u1169","\u1107\u1169\u11a8\u1109\u1161","\u1107\u1169\u11a8\u1109\u116e\u11bc\u110b\u1161","\u1107\u1169\u11a8\u1109\u1173\u11b8","\u1107\u1169\u11a9\u110b\u1173\u11b7","\u1107\u1169\u11ab\u1100\u1167\u11a8\u110c\u1165\u11a8","\u1107\u1169\u11ab\u1105\u1162","\u1107\u1169\u11ab\u1107\u116e","\u1107\u1169\u11ab\u1109\u1161","\u1107\u1169\u11ab\u1109\u1165\u11bc","\u1107\u1169\u11ab\u110b\u1175\u11ab","\u1107\u1169\u11ab\u110c\u1175\u11af","\u1107\u1169\u11af\u1111\u1166\u11ab","\u1107\u1169\u11bc\u1109\u1161","\u1107\u1169\u11bc\u110c\u1175","\u1107\u1169\u11bc\u1110\u116e","\u1107\u116e\u1100\u1173\u11ab","\u1107\u116e\u1101\u1173\u1105\u1165\u110b\u116e\u11b7","\u1107\u116e\u1103\u1161\u11b7","\u1107\u116e\u1103\u1169\u11bc\u1109\u1161\u11ab","\u1107\u116e\u1106\u116e\u11ab","\u1107\u116e\u1107\u116e\u11ab","\u1107\u116e\u1109\u1161\u11ab","\u1107\u116e\u1109\u1161\u11bc","\u1107\u116e\u110b\u1165\u11bf","\u1107\u116e\u110b\u1175\u11ab","\u1107\u116e\u110c\u1161\u11a8\u110b\u116d\u11bc","\u1107\u116e\u110c\u1161\u11bc","\u1107\u116e\u110c\u1165\u11bc","\u1107\u116e\u110c\u1169\u11a8","\u1107\u116e\u110c\u1175\u1105\u1165\u11ab\u1112\u1175","\u1107\u116e\u110e\u1175\u11ab","\u1107\u116e\u1110\u1161\u11a8","\u1107\u116e\u1111\u116e\u11b7","\u1107\u116e\u1112\u116c\u110c\u1161\u11bc","\u1107\u116e\u11a8\u1107\u116e","\u1107\u116e\u11a8\u1112\u1161\u11ab","\u1107\u116e\u11ab\u1102\u1169","\u1107\u116e\u11ab\u1105\u1163\u11bc","\u1107\u116e\u11ab\u1105\u1175","\u1107\u116e\u11ab\u1106\u1167\u11bc","\u1107\u116e\u11ab\u1109\u1165\u11a8","\u1107\u116e\u11ab\u110b\u1163","\u1107\u116e\u11ab\u110b\u1171\u1100\u1175","\u1107\u116e\u11ab\u1111\u1175\u11af","\u1107\u116e\u11ab\u1112\u1169\u11bc\u1109\u1162\u11a8","\u1107\u116e\u11af\u1100\u1169\u1100\u1175","\u1107\u116e\u11af\u1100\u116a","\u1107\u116e\u11af\u1100\u116d","\u1107\u116e\u11af\u1101\u1169\u11be","\u1107\u116e\u11af\u1106\u1161\u11ab","\u1107\u116e\u11af\u1107\u1165\u11b8","\u1107\u116e\u11af\u1107\u1175\u11be","\u1107\u116e\u11af\u110b\u1161\u11ab","\u1107\u116e\u11af\u110b\u1175\u110b\u1175\u11a8","\u1107\u116e\u11af\u1112\u1162\u11bc","\u1107\u1173\u1105\u1162\u11ab\u1103\u1173","\u1107\u1175\u1100\u1173\u11a8","\u1107\u1175\u1102\u1161\u11ab","\u1107\u1175\u1102\u1175\u11af","\u1107\u1175\u1103\u116e\u11af\u1100\u1175","\u1107\u1175\u1103\u1175\u110b\u1169","\u1107\u1175\u1105\u1169\u1109\u1169","\u1107\u1175\u1106\u1161\u11ab","\u1107\u1175\u1106\u1167\u11bc","\u1107\u1175\u1106\u1175\u11af","\u1107\u1175\u1107\u1161\u1105\u1161\u11b7","\u1107\u1175\u1107\u1175\u11b7\u1107\u1161\u11b8","\u1107\u1175\u1109\u1161\u11bc","\u1107\u1175\u110b\u116d\u11bc","\u1107\u1175\u110b\u1172\u11af","\u1107\u1175\u110c\u116e\u11bc","\u1107\u1175\u1110\u1161\u1106\u1175\u11ab","\u1107\u1175\u1111\u1161\u11ab","\u1107\u1175\u11af\u1103\u1175\u11bc","\u1107\u1175\u11ba\u1106\u116e\u11af","\u1107\u1175\u11ba\u1107\u1161\u11bc\u110b\u116e\u11af","\u1107\u1175\u11ba\u110c\u116e\u11af\u1100\u1175","\u1107\u1175\u11be\u1101\u1161\u11af","\u1108\u1161\u11af\u1100\u1161\u11ab\u1109\u1162\u11a8","\u1108\u1161\u11af\u1105\u1162","\u1108\u1161\u11af\u1105\u1175","\u1109\u1161\u1100\u1165\u11ab","\u1109\u1161\u1100\u1168\u110c\u1165\u11af","\u1109\u1161\u1102\u1161\u110b\u1175","\u1109\u1161\u1102\u1163\u11bc","\u1109\u1161\u1105\u1161\u11b7","\u1109\u1161\u1105\u1161\u11bc","\u1109\u1161\u1105\u1175\u11b8","\u1109\u1161\u1106\u1169\u1102\u1175\u11b7","\u1109\u1161\u1106\u116e\u11af","\u1109\u1161\u1107\u1161\u11bc","\u1109\u1161\u1109\u1161\u11bc","\u1109\u1161\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1161\u1109\u1165\u11af","\u1109\u1161\u1109\u1173\u11b7","\u1109\u1161\u1109\u1175\u11af","\u1109\u1161\u110b\u1165\u11b8","\u1109\u1161\u110b\u116d\u11bc","\u1109\u1161\u110b\u116f\u11af","\u1109\u1161\u110c\u1161\u11bc","\u1109\u1161\u110c\u1165\u11ab","\u1109\u1161\u110c\u1175\u11ab","\u1109\u1161\u110e\u1169\u11ab","\u1109\u1161\u110e\u116e\u11ab\u1100\u1175","\u1109\u1161\u1110\u1161\u11bc","\u1109\u1161\u1110\u116e\u1105\u1175","\u1109\u1161\u1112\u1173\u11af","\u1109\u1161\u11ab\u1100\u1175\u11af","\u1109\u1161\u11ab\u1107\u116e\u110b\u1175\u11ab\u1100\u116a","\u1109\u1161\u11ab\u110b\u1165\u11b8","\u1109\u1161\u11ab\u110e\u1162\u11a8","\u1109\u1161\u11af\u1105\u1175\u11b7","\u1109\u1161\u11af\u110b\u1175\u11ab","\u1109\u1161\u11af\u110d\u1161\u11a8","\u1109\u1161\u11b7\u1100\u1168\u1110\u1161\u11bc","\u1109\u1161\u11b7\u1100\u116e\u11a8","\u1109\u1161\u11b7\u1109\u1175\u11b8","\u1109\u1161\u11b7\u110b\u116f\u11af","\u1109\u1161\u11b7\u110e\u1169\u11ab","\u1109\u1161\u11bc\u1100\u116a\u11ab","\u1109\u1161\u11bc\u1100\u1173\u11b7","\u1109\u1161\u11bc\u1103\u1162","\u1109\u1161\u11bc\u1105\u1172","\u1109\u1161\u11bc\u1107\u1161\u11ab\u1100\u1175","\u1109\u1161\u11bc\u1109\u1161\u11bc","\u1109\u1161\u11bc\u1109\u1175\u11a8","\u1109\u1161\u11bc\u110b\u1165\u11b8","\u1109\u1161\u11bc\u110b\u1175\u11ab","\u1109\u1161\u11bc\u110c\u1161","\u1109\u1161\u11bc\u110c\u1165\u11b7","\u1109\u1161\u11bc\u110e\u1165","\u1109\u1161\u11bc\u110e\u116e","\u1109\u1161\u11bc\u1110\u1162","\u1109\u1161\u11bc\u1111\u116d","\u1109\u1161\u11bc\u1111\u116e\u11b7","\u1109\u1161\u11bc\u1112\u116a\u11bc","\u1109\u1162\u1107\u1167\u11a8","\u1109\u1162\u11a8\u1101\u1161\u11af","\u1109\u1162\u11a8\u110b\u1167\u11ab\u1111\u1175\u11af","\u1109\u1162\u11bc\u1100\u1161\u11a8","\u1109\u1162\u11bc\u1106\u1167\u11bc","\u1109\u1162\u11bc\u1106\u116e\u11af","\u1109\u1162\u11bc\u1107\u1161\u11bc\u1109\u1169\u11bc","\u1109\u1162\u11bc\u1109\u1161\u11ab","\u1109\u1162\u11bc\u1109\u1165\u11ab","\u1109\u1162\u11bc\u1109\u1175\u11ab","\u1109\u1162\u11bc\u110b\u1175\u11af","\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1165\u1105\u1161\u11b8","\u1109\u1165\u1105\u1173\u11ab","\u1109\u1165\u1106\u1167\u11bc","\u1109\u1165\u1106\u1175\u11ab","\u1109\u1165\u1107\u1175\u1109\u1173","\u1109\u1165\u110b\u1163\u11bc","\u1109\u1165\u110b\u116e\u11af","\u1109\u1165\u110c\u1165\u11a8","\u1109\u1165\u110c\u1165\u11b7","\u1109\u1165\u110d\u1169\u11a8","\u1109\u1165\u110f\u1173\u11af","\u1109\u1165\u11a8\u1109\u1161","\u1109\u1165\u11a8\u110b\u1172","\u1109\u1165\u11ab\u1100\u1165","\u1109\u1165\u11ab\u1106\u116e\u11af","\u1109\u1165\u11ab\u1107\u1162","\u1109\u1165\u11ab\u1109\u1162\u11bc","\u1109\u1165\u11ab\u1109\u116e","\u1109\u1165\u11ab\u110b\u116f\u11ab","\u1109\u1165\u11ab\u110c\u1161\u11bc","\u1109\u1165\u11ab\u110c\u1165\u11ab","\u1109\u1165\u11ab\u1110\u1162\u11a8","\u1109\u1165\u11ab\u1111\u116e\u11bc\u1100\u1175","\u1109\u1165\u11af\u1100\u1165\u110c\u1175","\u1109\u1165\u11af\u1102\u1161\u11af","\u1109\u1165\u11af\u1105\u1165\u11bc\u1110\u1161\u11bc","\u1109\u1165\u11af\u1106\u1167\u11bc","\u1109\u1165\u11af\u1106\u116e\u11ab","\u1109\u1165\u11af\u1109\u1161","\u1109\u1165\u11af\u110b\u1161\u11a8\u1109\u1161\u11ab","\u1109\u1165\u11af\u110e\u1175","\u1109\u1165\u11af\u1110\u1161\u11bc","\u1109\u1165\u11b8\u110a\u1175","\u1109\u1165\u11bc\u1100\u1169\u11bc","\u1109\u1165\u11bc\u1103\u1161\u11bc","\u1109\u1165\u11bc\u1106\u1167\u11bc","\u1109\u1165\u11bc\u1107\u1167\u11af","\u1109\u1165\u11bc\u110b\u1175\u11ab","\u1109\u1165\u11bc\u110c\u1161\u11bc","\u1109\u1165\u11bc\u110c\u1165\u11a8","\u1109\u1165\u11bc\u110c\u1175\u11af","\u1109\u1165\u11bc\u1112\u1161\u11b7","\u1109\u1166\u1100\u1173\u11b7","\u1109\u1166\u1106\u1175\u1102\u1161","\u1109\u1166\u1109\u1161\u11bc","\u1109\u1166\u110b\u116f\u11af","\u1109\u1166\u110c\u1169\u11bc\u1103\u1162\u110b\u116a\u11bc","\u1109\u1166\u1110\u1161\u11a8","\u1109\u1166\u11ab\u1110\u1165","\u1109\u1166\u11ab\u1110\u1175\u1106\u1175\u1110\u1165","\u1109\u1166\u11ba\u110d\u1162","\u1109\u1169\u1100\u1172\u1106\u1169","\u1109\u1169\u1100\u1173\u11a8\u110c\u1165\u11a8","\u1109\u1169\u1100\u1173\u11b7","\u1109\u1169\u1102\u1161\u1100\u1175","\u1109\u1169\u1102\u1167\u11ab","\u1109\u1169\u1103\u1173\u11a8","\u1109\u1169\u1106\u1161\u11bc","\u1109\u1169\u1106\u116e\u11ab","\u1109\u1169\u1109\u1165\u11af","\u1109\u1169\u1109\u1169\u11a8","\u1109\u1169\u110b\u1161\u1100\u116a","\u1109\u1169\u110b\u116d\u11bc","\u1109\u1169\u110b\u116f\u11ab","\u1109\u1169\u110b\u1173\u11b7","\u1109\u1169\u110c\u116e\u11bc\u1112\u1175","\u1109\u1169\u110c\u1175\u1111\u116e\u11b7","\u1109\u1169\u110c\u1175\u11af","\u1109\u1169\u1111\u116e\u11bc","\u1109\u1169\u1112\u1167\u11bc","\u1109\u1169\u11a8\u1103\u1161\u11b7","\u1109\u1169\u11a8\u1103\u1169","\u1109\u1169\u11a8\u110b\u1169\u11ba","\u1109\u1169\u11ab\u1100\u1161\u1105\u1161\u11a8","\u1109\u1169\u11ab\u1100\u1175\u11af","\u1109\u1169\u11ab\u1102\u1167","\u1109\u1169\u11ab\u1102\u1175\u11b7","\u1109\u1169\u11ab\u1103\u1173\u11bc","\u1109\u1169\u11ab\u1106\u1169\u11a8","\u1109\u1169\u11ab\u1108\u1167\u11a8","\u1109\u1169\u11ab\u1109\u1175\u11af","\u1109\u1169\u11ab\u110c\u1175\u11af","\u1109\u1169\u11ab\u1110\u1169\u11b8","\u1109\u1169\u11ab\u1112\u1162","\u1109\u1169\u11af\u110c\u1175\u11a8\u1112\u1175","\u1109\u1169\u11b7\u110a\u1175","\u1109\u1169\u11bc\u110b\u1161\u110c\u1175","\u1109\u1169\u11bc\u110b\u1175","\u1109\u1169\u11bc\u1111\u1167\u11ab","\u1109\u116c\u1100\u1169\u1100\u1175","\u1109\u116d\u1111\u1175\u11bc","\u1109\u116e\u1100\u1165\u11ab","\u1109\u116e\u1102\u1167\u11ab","\u1109\u116e\u1103\u1161\u11ab","\u1109\u116e\u1103\u1169\u11ba\u1106\u116e\u11af","\u1109\u116e\u1103\u1169\u11bc\u110c\u1165\u11a8","\u1109\u116e\u1106\u1167\u11ab","\u1109\u116e\u1106\u1167\u11bc","\u1109\u116e\u1107\u1161\u11a8","\u1109\u116e\u1109\u1161\u11bc","\u1109\u116e\u1109\u1165\u11a8","\u1109\u116e\u1109\u116e\u11af","\u1109\u116e\u1109\u1175\u1105\u1169","\u1109\u116e\u110b\u1165\u11b8","\u1109\u116e\u110b\u1167\u11b7","\u1109\u116e\u110b\u1167\u11bc","\u1109\u116e\u110b\u1175\u11b8","\u1109\u116e\u110c\u116e\u11ab","\u1109\u116e\u110c\u1175\u11b8","\u1109\u116e\u110e\u116e\u11af","\u1109\u116e\u110f\u1165\u11ba","\u1109\u116e\u1111\u1175\u11af","\u1109\u116e\u1112\u1161\u11a8","\u1109\u116e\u1112\u1165\u11b7\u1109\u1162\u11bc","\u1109\u116e\u1112\u116a\u1100\u1175","\u1109\u116e\u11a8\u1102\u1167","\u1109\u116e\u11a8\u1109\u1169","\u1109\u116e\u11a8\u110c\u1166","\u1109\u116e\u11ab\u1100\u1161\u11ab","\u1109\u116e\u11ab\u1109\u1165","\u1109\u116e\u11ab\u1109\u116e","\u1109\u116e\u11ab\u1109\u1175\u11a8\u1100\u1161\u11ab","\u1109\u116e\u11ab\u110b\u1171","\u1109\u116e\u11ae\u1100\u1161\u1105\u1161\u11a8","\u1109\u116e\u11af\u1107\u1167\u11bc","\u1109\u116e\u11af\u110c\u1175\u11b8","\u1109\u116e\u11ba\u110c\u1161","\u1109\u1173\u1102\u1175\u11b7","\u1109\u1173\u1106\u116e\u11af","\u1109\u1173\u1109\u1173\u1105\u1169","\u1109\u1173\u1109\u1173\u11bc","\u1109\u1173\u110b\u1170\u1110\u1165","\u1109\u1173\u110b\u1171\u110e\u1175","\u1109\u1173\u110f\u1166\u110b\u1175\u1110\u1173","\u1109\u1173\u1110\u1172\u1103\u1175\u110b\u1169","\u1109\u1173\u1110\u1173\u1105\u1166\u1109\u1173","\u1109\u1173\u1111\u1169\u110e\u1173","\u1109\u1173\u11af\u110d\u1165\u11a8","\u1109\u1173\u11af\u1111\u1173\u11b7","\u1109\u1173\u11b8\u1100\u116a\u11ab","\u1109\u1173\u11b8\u1100\u1175","\u1109\u1173\u11bc\u1100\u1162\u11a8","\u1109\u1173\u11bc\u1105\u1175","\u1109\u1173\u11bc\u1107\u116e","\u1109\u1173\u11bc\u110b\u116d\u11bc\u110e\u1161","\u1109\u1173\u11bc\u110c\u1175\u11ab","\u1109\u1175\u1100\u1161\u11a8","\u1109\u1175\u1100\u1161\u11ab","\u1109\u1175\u1100\u1169\u11af","\u1109\u1175\u1100\u1173\u11b7\u110e\u1175","\u1109\u1175\u1102\u1161\u1105\u1175\u110b\u1169","\u1109\u1175\u1103\u1162\u11a8","\u1109\u1175\u1105\u1175\u110c\u1173","\u1109\u1175\u1106\u1166\u11ab\u1110\u1173","\u1109\u1175\u1106\u1175\u11ab","\u1109\u1175\u1107\u116e\u1106\u1169","\u1109\u1175\u1109\u1165\u11ab","\u1109\u1175\u1109\u1165\u11af","\u1109\u1175\u1109\u1173\u1110\u1166\u11b7","\u1109\u1175\u110b\u1161\u1107\u1165\u110c\u1175","\u1109\u1175\u110b\u1165\u1106\u1165\u1102\u1175","\u1109\u1175\u110b\u116f\u11af","\u1109\u1175\u110b\u1175\u11ab","\u1109\u1175\u110b\u1175\u11af","\u1109\u1175\u110c\u1161\u11a8","\u1109\u1175\u110c\u1161\u11bc","\u1109\u1175\u110c\u1165\u11af","\u1109\u1175\u110c\u1165\u11b7","\u1109\u1175\u110c\u116e\u11bc","\u1109\u1175\u110c\u1173\u11ab","\u1109\u1175\u110c\u1175\u11b8","\u1109\u1175\u110e\u1165\u11bc","\u1109\u1175\u1112\u1161\u11b8","\u1109\u1175\u1112\u1165\u11b7","\u1109\u1175\u11a8\u1100\u116e","\u1109\u1175\u11a8\u1100\u1175","\u1109\u1175\u11a8\u1103\u1161\u11bc","\u1109\u1175\u11a8\u1105\u1163\u11bc","\u1109\u1175\u11a8\u1105\u116d\u1111\u116e\u11b7","\u1109\u1175\u11a8\u1106\u116e\u11af","\u1109\u1175\u11a8\u1108\u1161\u11bc","\u1109\u1175\u11a8\u1109\u1161","\u1109\u1175\u11a8\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1175\u11a8\u110e\u1169","\u1109\u1175\u11a8\u1110\u1161\u11a8","\u1109\u1175\u11a8\u1111\u116e\u11b7","\u1109\u1175\u11ab\u1100\u1169","\u1109\u1175\u11ab\u1100\u1172","\u1109\u1175\u11ab\u1102\u1167\u11b7","\u1109\u1175\u11ab\u1106\u116e\u11ab","\u1109\u1175\u11ab\u1107\u1161\u11af","\u1109\u1175\u11ab\u1107\u1175","\u1109\u1175\u11ab\u1109\u1161","\u1109\u1175\u11ab\u1109\u1166","\u1109\u1175\u11ab\u110b\u116d\u11bc","\u1109\u1175\u11ab\u110c\u1166\u1111\u116e\u11b7","\u1109\u1175\u11ab\u110e\u1165\u11bc","\u1109\u1175\u11ab\u110e\u1166","\u1109\u1175\u11ab\u1112\u116a","\u1109\u1175\u11af\u1100\u1161\u11b7","\u1109\u1175\u11af\u1102\u1162","\u1109\u1175\u11af\u1105\u1167\u11a8","\u1109\u1175\u11af\u1105\u1168","\u1109\u1175\u11af\u1106\u1161\u11bc","\u1109\u1175\u11af\u1109\u116e","\u1109\u1175\u11af\u1109\u1173\u11b8","\u1109\u1175\u11af\u1109\u1175","\u1109\u1175\u11af\u110c\u1161\u11bc","\u1109\u1175\u11af\u110c\u1165\u11bc","\u1109\u1175\u11af\u110c\u1175\u11af\u110c\u1165\u11a8","\u1109\u1175\u11af\u110e\u1165\u11ab","\u1109\u1175\u11af\u110e\u1166","\u1109\u1175\u11af\u110f\u1165\u11ba","\u1109\u1175\u11af\u1110\u1162","\u1109\u1175\u11af\u1111\u1162","\u1109\u1175\u11af\u1112\u1165\u11b7","\u1109\u1175\u11af\u1112\u1167\u11ab","\u1109\u1175\u11b7\u1105\u1175","\u1109\u1175\u11b7\u1107\u116e\u1105\u1173\u11b7","\u1109\u1175\u11b7\u1109\u1161","\u1109\u1175\u11b7\u110c\u1161\u11bc","\u1109\u1175\u11b7\u110c\u1165\u11bc","\u1109\u1175\u11b7\u1111\u1161\u11ab","\u110a\u1161\u11bc\u1103\u116e\u11bc\u110b\u1175","\u110a\u1175\u1105\u1173\u11b7","\u110a\u1175\u110b\u1161\u11ba","\u110b\u1161\u1100\u1161\u110a\u1175","\u110b\u1161\u1102\u1161\u110b\u116e\u11ab\u1109\u1165","\u110b\u1161\u1103\u1173\u1102\u1175\u11b7","\u110b\u1161\u1103\u1173\u11af","\u110b\u1161\u1109\u1171\u110b\u116e\u11b7","\u110b\u1161\u1109\u1173\u1111\u1161\u11af\u1110\u1173","\u110b\u1161\u1109\u1175\u110b\u1161","\u110b\u1161\u110b\u116e\u11af\u1105\u1165","\u110b\u1161\u110c\u1165\u110a\u1175","\u110b\u1161\u110c\u116e\u11b7\u1106\u1161","\u110b\u1161\u110c\u1175\u11a8","\u110b\u1161\u110e\u1175\u11b7","\u110b\u1161\u1111\u1161\u1110\u1173","\u110b\u1161\u1111\u1173\u1105\u1175\u110f\u1161","\u110b\u1161\u1111\u1173\u11b7","\u110b\u1161\u1112\u1169\u11b8","\u110b\u1161\u1112\u1173\u11ab","\u110b\u1161\u11a8\u1100\u1175","\u110b\u1161\u11a8\u1106\u1169\u11bc","\u110b\u1161\u11a8\u1109\u116e","\u110b\u1161\u11ab\u1100\u1162","\u110b\u1161\u11ab\u1100\u1167\u11bc","\u110b\u1161\u11ab\u1100\u116a","\u110b\u1161\u11ab\u1102\u1162","\u110b\u1161\u11ab\u1102\u1167\u11bc","\u110b\u1161\u11ab\u1103\u1169\u11bc","\u110b\u1161\u11ab\u1107\u1161\u11bc","\u110b\u1161\u11ab\u1107\u116e","\u110b\u1161\u11ab\u110c\u116e","\u110b\u1161\u11af\u1105\u116e\u1106\u1175\u1102\u1172\u11b7","\u110b\u1161\u11af\u110f\u1169\u110b\u1169\u11af","\u110b\u1161\u11b7\u1109\u1175","\u110b\u1161\u11b7\u110f\u1165\u11ba","\u110b\u1161\u11b8\u1105\u1167\u11a8","\u110b\u1161\u11c1\u1102\u1161\u11af","\u110b\u1161\u11c1\u1106\u116e\u11ab","\u110b\u1162\u110b\u1175\u11ab","\u110b\u1162\u110c\u1165\u11bc","\u110b\u1162\u11a8\u1109\u116e","\u110b\u1162\u11af\u1107\u1165\u11b7","\u110b\u1163\u1100\u1161\u11ab","\u110b\u1163\u1103\u1161\u11ab","\u110b\u1163\u110b\u1169\u11bc","\u110b\u1163\u11a8\u1100\u1161\u11ab","\u110b\u1163\u11a8\u1100\u116e\u11a8","\u110b\u1163\u11a8\u1109\u1169\u11a8","\u110b\u1163\u11a8\u1109\u116e","\u110b\u1163\u11a8\u110c\u1165\u11b7","\u110b\u1163\u11a8\u1111\u116e\u11b7","\u110b\u1163\u11a8\u1112\u1169\u11ab\u1102\u1167","\u110b\u1163\u11bc\u1102\u1167\u11b7","\u110b\u1163\u11bc\u1105\u1167\u11a8","\u110b\u1163\u11bc\u1106\u1161\u11af","\u110b\u1163\u11bc\u1107\u1162\u110e\u116e","\u110b\u1163\u11bc\u110c\u116e","\u110b\u1163\u11bc\u1111\u1161","\u110b\u1165\u1103\u116e\u11b7","\u110b\u1165\u1105\u1167\u110b\u116e\u11b7","\u110b\u1165\u1105\u1173\u11ab","\u110b\u1165\u110c\u1166\u11ba\u1107\u1161\u11b7","\u110b\u1165\u110d\u1162\u11bb\u1103\u1173\u11ab","\u110b\u1165\u110d\u1165\u1103\u1161\u1100\u1161","\u110b\u1165\u110d\u1165\u11ab\u110c\u1175","\u110b\u1165\u11ab\u1102\u1175","\u110b\u1165\u11ab\u1103\u1165\u11a8","\u110b\u1165\u11ab\u1105\u1169\u11ab","\u110b\u1165\u11ab\u110b\u1165","\u110b\u1165\u11af\u1100\u116e\u11af","\u110b\u1165\u11af\u1105\u1173\u11ab","\u110b\u1165\u11af\u110b\u1173\u11b7","\u110b\u1165\u11af\u1111\u1175\u11ba","\u110b\u1165\u11b7\u1106\u1161","\u110b\u1165\u11b8\u1106\u116e","\u110b\u1165\u11b8\u110c\u1169\u11bc","\u110b\u1165\u11b8\u110e\u1166","\u110b\u1165\u11bc\u1103\u1165\u11bc\u110b\u1175","\u110b\u1165\u11bc\u1106\u1161\u11bc","\u110b\u1165\u11bc\u1110\u1165\u1105\u1175","\u110b\u1165\u11bd\u1100\u1173\u110c\u1166","\u110b\u1166\u1102\u1165\u110c\u1175","\u110b\u1166\u110b\u1165\u110f\u1165\u11ab","\u110b\u1166\u11ab\u110c\u1175\u11ab","\u110b\u1167\u1100\u1165\u11ab","\u110b\u1167\u1100\u1169\u1109\u1162\u11bc","\u110b\u1167\u1100\u116a\u11ab","\u110b\u1167\u1100\u116e\u11ab","\u110b\u1167\u1100\u116f\u11ab","\u110b\u1167\u1103\u1162\u1109\u1162\u11bc","\u110b\u1167\u1103\u1165\u11b2","\u110b\u1167\u1103\u1169\u11bc\u1109\u1162\u11bc","\u110b\u1167\u1103\u1173\u11ab","\u110b\u1167\u1105\u1169\u11ab","\u110b\u1167\u1105\u1173\u11b7","\u110b\u1167\u1109\u1165\u11ba","\u110b\u1167\u1109\u1165\u11bc","\u110b\u1167\u110b\u116a\u11bc","\u110b\u1167\u110b\u1175\u11ab","\u110b\u1167\u110c\u1165\u11ab\u1112\u1175","\u110b\u1167\u110c\u1175\u11a8\u110b\u116f\u11ab","\u110b\u1167\u1112\u1161\u11a8\u1109\u1162\u11bc","\u110b\u1167\u1112\u1162\u11bc","\u110b\u1167\u11a8\u1109\u1161","\u110b\u1167\u11a8\u1109\u1175","\u110b\u1167\u11a8\u1112\u1161\u11af","\u110b\u1167\u11ab\u1100\u1167\u11af","\u110b\u1167\u11ab\u1100\u116e","\u110b\u1167\u11ab\u1100\u1173\u11a8","\u110b\u1167\u11ab\u1100\u1175","\u110b\u1167\u11ab\u1105\u1161\u11a8","\u110b\u1167\u11ab\u1109\u1165\u11af","\u110b\u1167\u11ab\u1109\u1166","\u110b\u1167\u11ab\u1109\u1169\u11a8","\u110b\u1167\u11ab\u1109\u1173\u11b8","\u110b\u1167\u11ab\u110b\u1162","\u110b\u1167\u11ab\u110b\u1168\u110b\u1175\u11ab","\u110b\u1167\u11ab\u110b\u1175\u11ab","\u110b\u1167\u11ab\u110c\u1161\u11bc","\u110b\u1167\u11ab\u110c\u116e","\u110b\u1167\u11ab\u110e\u116e\u11af","\u110b\u1167\u11ab\u1111\u1175\u11af","\u110b\u1167\u11ab\u1112\u1161\u11b8","\u110b\u1167\u11ab\u1112\u1172","\u110b\u1167\u11af\u1100\u1175","\u110b\u1167\u11af\u1106\u1162","\u110b\u1167\u11af\u1109\u116c","\u110b\u1167\u11af\u1109\u1175\u11b7\u1112\u1175","\u110b\u1167\u11af\u110c\u1165\u11bc","\u110b\u1167\u11af\u110e\u1161","\u110b\u1167\u11af\u1112\u1173\u11af","\u110b\u1167\u11b7\u1105\u1167","\u110b\u1167\u11b8\u1109\u1165","\u110b\u1167\u11bc\u1100\u116e\u11a8","\u110b\u1167\u11bc\u1102\u1161\u11b7","\u110b\u1167\u11bc\u1109\u1161\u11bc","\u110b\u1167\u11bc\u110b\u1163\u11bc","\u110b\u1167\u11bc\u110b\u1167\u11a8","\u110b\u1167\u11bc\u110b\u116e\u11bc","\u110b\u1167\u11bc\u110b\u116f\u11ab\u1112\u1175","\u110b\u1167\u11bc\u1112\u1161","\u110b\u1167\u11bc\u1112\u1163\u11bc","\u110b\u1167\u11bc\u1112\u1169\u11ab","\u110b\u1167\u11bc\u1112\u116a","\u110b\u1167\u11c1\u1100\u116e\u1105\u1175","\u110b\u1167\u11c1\u1107\u1161\u11bc","\u110b\u1167\u11c1\u110c\u1175\u11b8","\u110b\u1168\u1100\u1161\u11b7","\u110b\u1168\u1100\u1173\u11b7","\u110b\u1168\u1107\u1161\u11bc","\u110b\u1168\u1109\u1161\u11ab","\u110b\u1168\u1109\u1161\u11bc","\u110b\u1168\u1109\u1165\u11ab","\u110b\u1168\u1109\u116e\u11af","\u110b\u1168\u1109\u1173\u11b8","\u110b\u1168\u1109\u1175\u11a8\u110c\u1161\u11bc","\u110b\u1168\u110b\u1163\u11a8","\u110b\u1168\u110c\u1165\u11ab","\u110b\u1168\u110c\u1165\u11af","\u110b\u1168\u110c\u1165\u11bc","\u110b\u1168\u110f\u1165\u11ab\u1103\u1162","\u110b\u1168\u11ba\u1102\u1161\u11af","\u110b\u1169\u1102\u1173\u11af","\u110b\u1169\u1105\u1161\u11a8","\u110b\u1169\u1105\u1162\u11ba\u1103\u1169\u11bc\u110b\u1161\u11ab","\u110b\u1169\u1105\u1166\u11ab\u110c\u1175","\u110b\u1169\u1105\u1169\u110c\u1175","\u110b\u1169\u1105\u1173\u11ab\u1107\u1161\u11af","\u110b\u1169\u1107\u1173\u11ab","\u110b\u1169\u1109\u1175\u11b8","\u110b\u1169\u110b\u1167\u11b7","\u110b\u1169\u110b\u116f\u11af","\u110b\u1169\u110c\u1165\u11ab","\u110b\u1169\u110c\u1175\u11a8","\u110b\u1169\u110c\u1175\u11bc\u110b\u1165","\u110b\u1169\u1111\u1166\u1105\u1161","\u110b\u1169\u1111\u1175\u1109\u1173\u1110\u1166\u11af","\u110b\u1169\u1112\u1175\u1105\u1167","\u110b\u1169\u11a8\u1109\u1161\u11bc","\u110b\u1169\u11a8\u1109\u116e\u1109\u116e","\u110b\u1169\u11ab\u1100\u1161\u11bd","\u110b\u1169\u11ab\u1105\u1161\u110b\u1175\u11ab","\u110b\u1169\u11ab\u1106\u1169\u11b7","\u110b\u1169\u11ab\u110c\u1169\u11bc\u110b\u1175\u11af","\u110b\u1169\u11ab\u1110\u1169\u11bc","\u110b\u1169\u11af\u1100\u1161\u110b\u1173\u11af","\u110b\u1169\u11af\u1105\u1175\u11b7\u1111\u1175\u11a8","\u110b\u1169\u11af\u1112\u1162","\u110b\u1169\u11ba\u110e\u1161\u1105\u1175\u11b7","\u110b\u116a\u110b\u1175\u1109\u1167\u110e\u1173","\u110b\u116a\u110b\u1175\u11ab","\u110b\u116a\u11ab\u1109\u1165\u11bc","\u110b\u116a\u11ab\u110c\u1165\u11ab","\u110b\u116a\u11bc\u1107\u1175","\u110b\u116a\u11bc\u110c\u1161","\u110b\u116b\u1102\u1163\u1112\u1161\u1106\u1167\u11ab","\u110b\u116b\u11ab\u110c\u1175","\u110b\u116c\u1100\u1161\u11ba\u110c\u1175\u11b8","\u110b\u116c\u1100\u116e\u11a8","\u110b\u116c\u1105\u1169\u110b\u116e\u11b7","\u110b\u116c\u1109\u1161\u11b7\u110e\u1169\u11ab","\u110b\u116c\u110e\u116e\u11af","\u110b\u116c\u110e\u1175\u11b7","\u110b\u116c\u1112\u1161\u11af\u1106\u1165\u1102\u1175","\u110b\u116c\u11ab\u1107\u1161\u11af","\u110b\u116c\u11ab\u1109\u1169\u11ab","\u110b\u116c\u11ab\u110d\u1169\u11a8","\u110b\u116d\u1100\u1173\u11b7","\u110b\u116d\u110b\u1175\u11af","\u110b\u116d\u110c\u1173\u11b7","\u110b\u116d\u110e\u1165\u11bc","\u110b\u116d\u11bc\u1100\u1175","\u110b\u116d\u11bc\u1109\u1165","\u110b\u116d\u11bc\u110b\u1165","\u110b\u116e\u1109\u1161\u11ab","\u110b\u116e\u1109\u1165\u11ab","\u110b\u116e\u1109\u1173\u11bc","\u110b\u116e\u110b\u1167\u11ab\u1112\u1175","\u110b\u116e\u110c\u1165\u11bc","\u110b\u116e\u110e\u1166\u1100\u116e\u11a8","\u110b\u116e\u1111\u1167\u11ab","\u110b\u116e\u11ab\u1103\u1169\u11bc","\u110b\u116e\u11ab\u1106\u1167\u11bc","\u110b\u116e\u11ab\u1107\u1161\u11ab","\u110b\u116e\u11ab\u110c\u1165\u11ab","\u110b\u116e\u11ab\u1112\u1162\u11bc","\u110b\u116e\u11af\u1109\u1161\u11ab","\u110b\u116e\u11af\u110b\u1173\u11b7","\u110b\u116e\u11b7\u110c\u1175\u11a8\u110b\u1175\u11b7","\u110b\u116e\u11ba\u110b\u1165\u1105\u1173\u11ab","\u110b\u116e\u11ba\u110b\u1173\u11b7","\u110b\u116f\u1102\u1161\u11a8","\u110b\u116f\u11ab\u1100\u1169","\u110b\u116f\u11ab\u1105\u1162","\u110b\u116f\u11ab\u1109\u1165","\u110b\u116f\u11ab\u1109\u116e\u11bc\u110b\u1175","\u110b\u116f\u11ab\u110b\u1175\u11ab","\u110b\u116f\u11ab\u110c\u1161\u11bc","\u110b\u116f\u11ab\u1111\u1175\u1109\u1173","\u110b\u116f\u11af\u1100\u1173\u11b8","\u110b\u116f\u11af\u1103\u1173\u110f\u1165\u11b8","\u110b\u116f\u11af\u1109\u1166","\u110b\u116f\u11af\u110b\u116d\u110b\u1175\u11af","\u110b\u1170\u110b\u1175\u1110\u1165","\u110b\u1171\u1107\u1161\u11ab","\u110b\u1171\u1107\u1165\u11b8","\u110b\u1171\u1109\u1165\u11bc","\u110b\u1171\u110b\u116f\u11ab","\u110b\u1171\u1112\u1165\u11b7","\u110b\u1171\u1112\u1167\u11b8","\u110b\u1171\u11ba\u1109\u1161\u1105\u1161\u11b7","\u110b\u1172\u1102\u1161\u11ab\u1112\u1175","\u110b\u1172\u1105\u1165\u11b8","\u110b\u1172\u1106\u1167\u11bc","\u110b\u1172\u1106\u116e\u11af","\u110b\u1172\u1109\u1161\u11ab","\u110b\u1172\u110c\u1165\u11a8","\u110b\u1172\u110e\u1175\u110b\u116f\u11ab","\u110b\u1172\u1112\u1161\u11a8","\u110b\u1172\u1112\u1162\u11bc","\u110b\u1172\u1112\u1167\u11bc","\u110b\u1172\u11a8\u1100\u116e\u11ab","\u110b\u1172\u11a8\u1109\u1161\u11bc","\u110b\u1172\u11a8\u1109\u1175\u11b8","\u110b\u1172\u11a8\u110e\u1166","\u110b\u1173\u11ab\u1112\u1162\u11bc","\u110b\u1173\u11b7\u1105\u1167\u11a8","\u110b\u1173\u11b7\u1105\u116d","\u110b\u1173\u11b7\u1107\u1161\u11ab","\u110b\u1173\u11b7\u1109\u1165\u11bc","\u110b\u1173\u11b7\u1109\u1175\u11a8","\u110b\u1173\u11b7\u110b\u1161\u11a8","\u110b\u1173\u11b7\u110c\u116e","\u110b\u1174\u1100\u1167\u11ab","\u110b\u1174\u1102\u1169\u11ab","\u110b\u1174\u1106\u116e\u11ab","\u110b\u1174\u1107\u1169\u11a8","\u110b\u1174\u1109\u1175\u11a8","\u110b\u1174\u1109\u1175\u11b7","\u110b\u1174\u110b\u116c\u1105\u1169","\u110b\u1174\u110b\u116d\u11a8","\u110b\u1174\u110b\u116f\u11ab","\u110b\u1174\u1112\u1161\u11a8","\u110b\u1175\u1100\u1165\u11ba","\u110b\u1175\u1100\u1169\u11ba","\u110b\u1175\u1102\u1167\u11b7","\u110b\u1175\u1102\u1169\u11b7","\u110b\u1175\u1103\u1161\u11af","\u110b\u1175\u1103\u1162\u1105\u1169","\u110b\u1175\u1103\u1169\u11bc","\u110b\u1175\u1105\u1165\u11c2\u1100\u1166","\u110b\u1175\u1105\u1167\u11a8\u1109\u1165","\u110b\u1175\u1105\u1169\u11ab\u110c\u1165\u11a8","\u110b\u1175\u1105\u1173\u11b7","\u110b\u1175\u1106\u1175\u11ab","\u110b\u1175\u1107\u1161\u11af\u1109\u1169","\u110b\u1175\u1107\u1167\u11af","\u110b\u1175\u1107\u116e\u11af","\u110b\u1175\u1108\u1161\u11af","\u110b\u1175\u1109\u1161\u11bc","\u110b\u1175\u1109\u1165\u11bc","\u110b\u1175\u1109\u1173\u11af","\u110b\u1175\u110b\u1163\u1100\u1175","\u110b\u1175\u110b\u116d\u11bc","\u110b\u1175\u110b\u116e\u11ba","\u110b\u1175\u110b\u116f\u11af","\u110b\u1175\u110b\u1173\u11a8\u1100\u1169","\u110b\u1175\u110b\u1175\u11a8","\u110b\u1175\u110c\u1165\u11ab","\u110b\u1175\u110c\u116e\u11bc","\u110b\u1175\u1110\u1173\u11ae\u1102\u1161\u11af","\u110b\u1175\u1110\u1173\u11af","\u110b\u1175\u1112\u1169\u11ab","\u110b\u1175\u11ab\u1100\u1161\u11ab","\u110b\u1175\u11ab\u1100\u1167\u11a8","\u110b\u1175\u11ab\u1100\u1169\u11bc","\u110b\u1175\u11ab\u1100\u116e","\u110b\u1175\u11ab\u1100\u1173\u11ab","\u110b\u1175\u11ab\u1100\u1175","\u110b\u1175\u11ab\u1103\u1169","\u110b\u1175\u11ab\u1105\u1172","\u110b\u1175\u11ab\u1106\u116e\u11af","\u110b\u1175\u11ab\u1109\u1162\u11bc","\u110b\u1175\u11ab\u1109\u116b","\u110b\u1175\u11ab\u110b\u1167\u11ab","\u110b\u1175\u11ab\u110b\u116f\u11ab","\u110b\u1175\u11ab\u110c\u1162","\u110b\u1175\u11ab\u110c\u1169\u11bc","\u110b\u1175\u11ab\u110e\u1165\u11ab","\u110b\u1175\u11ab\u110e\u1166","\u110b\u1175\u11ab\u1110\u1165\u1102\u1166\u11ba","\u110b\u1175\u11ab\u1112\u1161","\u110b\u1175\u11ab\u1112\u1167\u11bc","\u110b\u1175\u11af\u1100\u1169\u11b8","\u110b\u1175\u11af\u1100\u1175","\u110b\u1175\u11af\u1103\u1161\u11ab","\u110b\u1175\u11af\u1103\u1162","\u110b\u1175\u11af\u1103\u1173\u11bc","\u110b\u1175\u11af\u1107\u1161\u11ab","\u110b\u1175\u11af\u1107\u1169\u11ab","\u110b\u1175\u11af\u1107\u116e","\u110b\u1175\u11af\u1109\u1161\u11bc","\u110b\u1175\u11af\u1109\u1162\u11bc","\u110b\u1175\u11af\u1109\u1169\u11ab","\u110b\u1175\u11af\u110b\u116d\u110b\u1175\u11af","\u110b\u1175\u11af\u110b\u116f\u11af","\u110b\u1175\u11af\u110c\u1165\u11bc","\u110b\u1175\u11af\u110c\u1169\u11bc","\u110b\u1175\u11af\u110c\u116e\u110b\u1175\u11af","\u110b\u1175\u11af\u110d\u1175\u11a8","\u110b\u1175\u11af\u110e\u1166","\u110b\u1175\u11af\u110e\u1175","\u110b\u1175\u11af\u1112\u1162\u11bc","\u110b\u1175\u11af\u1112\u116c\u110b\u116d\u11bc","\u110b\u1175\u11b7\u1100\u1173\u11b7","\u110b\u1175\u11b7\u1106\u116e","\u110b\u1175\u11b8\u1103\u1162","\u110b\u1175\u11b8\u1105\u1167\u11a8","\u110b\u1175\u11b8\u1106\u1161\u11ba","\u110b\u1175\u11b8\u1109\u1161","\u110b\u1175\u11b8\u1109\u116e\u11af","\u110b\u1175\u11b8\u1109\u1175","\u110b\u1175\u11b8\u110b\u116f\u11ab","\u110b\u1175\u11b8\u110c\u1161\u11bc","\u110b\u1175\u11b8\u1112\u1161\u11a8","\u110c\u1161\u1100\u1161\u110b\u116d\u11bc","\u110c\u1161\u1100\u1167\u11a8","\u110c\u1161\u1100\u1173\u11a8","\u110c\u1161\u1103\u1169\u11bc","\u110c\u1161\u1105\u1161\u11bc","\u110c\u1161\u1107\u116e\u1109\u1175\u11b7","\u110c\u1161\u1109\u1175\u11a8","\u110c\u1161\u1109\u1175\u11ab","\u110c\u1161\u110b\u1167\u11ab","\u110c\u1161\u110b\u116f\u11ab","\u110c\u1161\u110b\u1172\u11af","\u110c\u1161\u110c\u1165\u11ab\u1100\u1165","\u110c\u1161\u110c\u1165\u11bc","\u110c\u1161\u110c\u1169\u11ab\u1109\u1175\u11b7","\u110c\u1161\u1111\u1161\u11ab","\u110c\u1161\u11a8\u1100\u1161","\u110c\u1161\u11a8\u1102\u1167\u11ab","\u110c\u1161\u11a8\u1109\u1165\u11bc","\u110c\u1161\u11a8\u110b\u1165\u11b8","\u110c\u1161\u11a8\u110b\u116d\u11bc","\u110c\u1161\u11a8\u110b\u1173\u11ab\u1104\u1161\u11af","\u110c\u1161\u11a8\u1111\u116e\u11b7","\u110c\u1161\u11ab\u1103\u1175","\u110c\u1161\u11ab\u1104\u1173\u11a8","\u110c\u1161\u11ab\u110e\u1175","\u110c\u1161\u11af\u1106\u1169\u11ba","\u110c\u1161\u11b7\u1101\u1161\u11ab","\u110c\u1161\u11b7\u1109\u116e\u1112\u1161\u11b7","\u110c\u1161\u11b7\u1109\u1175","\u110c\u1161\u11b7\u110b\u1169\u11ba","\u110c\u1161\u11b7\u110c\u1161\u1105\u1175","\u110c\u1161\u11b8\u110c\u1175","\u110c\u1161\u11bc\u1100\u116a\u11ab","\u110c\u1161\u11bc\u1100\u116e\u11ab","\u110c\u1161\u11bc\u1100\u1175\u1100\u1161\u11ab","\u110c\u1161\u11bc\u1105\u1162","\u110c\u1161\u11bc\u1105\u1168","\u110c\u1161\u11bc\u1105\u1173","\u110c\u1161\u11bc\u1106\u1161","\u110c\u1161\u11bc\u1106\u1167\u11ab","\u110c\u1161\u11bc\u1106\u1169","\u110c\u1161\u11bc\u1106\u1175","\u110c\u1161\u11bc\u1107\u1175","\u110c\u1161\u11bc\u1109\u1161","\u110c\u1161\u11bc\u1109\u1169","\u110c\u1161\u11bc\u1109\u1175\u11a8","\u110c\u1161\u11bc\u110b\u1162\u110b\u1175\u11ab","\u110c\u1161\u11bc\u110b\u1175\u11ab","\u110c\u1161\u11bc\u110c\u1165\u11b7","\u110c\u1161\u11bc\u110e\u1161","\u110c\u1161\u11bc\u1112\u1161\u11a8\u1100\u1173\u11b7","\u110c\u1162\u1102\u1173\u11bc","\u110c\u1162\u1108\u1161\u11af\u1105\u1175","\u110c\u1162\u1109\u1161\u11ab","\u110c\u1162\u1109\u1162\u11bc","\u110c\u1162\u110c\u1161\u11a8\u1102\u1167\u11ab","\u110c\u1162\u110c\u1165\u11bc","\u110c\u1162\u110e\u1162\u1100\u1175","\u110c\u1162\u1111\u1161\u11ab","\u110c\u1162\u1112\u1161\u11a8","\u110c\u1162\u1112\u116a\u11af\u110b\u116d\u11bc","\u110c\u1165\u1100\u1165\u11ba","\u110c\u1165\u1100\u1169\u1105\u1175","\u110c\u1165\u1100\u1169\u11ba","\u110c\u1165\u1102\u1167\u11a8","\u110c\u1165\u1105\u1165\u11ab","\u110c\u1165\u1105\u1165\u11c2\u1100\u1166","\u110c\u1165\u1107\u1165\u11ab","\u110c\u1165\u110b\u116e\u11af","\u110c\u1165\u110c\u1165\u11af\u1105\u1169","\u110c\u1165\u110e\u116e\u11a8","\u110c\u1165\u11a8\u1100\u1173\u11a8","\u110c\u1165\u11a8\u1103\u1161\u11bc\u1112\u1175","\u110c\u1165\u11a8\u1109\u1165\u11bc","\u110c\u1165\u11a8\u110b\u116d\u11bc","\u110c\u1165\u11a8\u110b\u1173\u11bc","\u110c\u1165\u11ab\u1100\u1162","\u110c\u1165\u11ab\u1100\u1169\u11bc","\u110c\u1165\u11ab\u1100\u1175","\u110c\u1165\u11ab\u1103\u1161\u11af","\u110c\u1165\u11ab\u1105\u1161\u1103\u1169","\u110c\u1165\u11ab\u1106\u1161\u11bc","\u110c\u1165\u11ab\u1106\u116e\u11ab","\u110c\u1165\u11ab\u1107\u1161\u11ab","\u110c\u1165\u11ab\u1107\u116e","\u110c\u1165\u11ab\u1109\u1166","\u110c\u1165\u11ab\u1109\u1175","\u110c\u1165\u11ab\u110b\u116d\u11bc","\u110c\u1165\u11ab\u110c\u1161","\u110c\u1165\u11ab\u110c\u1162\u11bc","\u110c\u1165\u11ab\u110c\u116e","\u110c\u1165\u11ab\u110e\u1165\u11af","\u110c\u1165\u11ab\u110e\u1166","\u110c\u1165\u11ab\u1110\u1169\u11bc","\u110c\u1165\u11ab\u1112\u1167","\u110c\u1165\u11ab\u1112\u116e","\u110c\u1165\u11af\u1103\u1162","\u110c\u1165\u11af\u1106\u1161\u11bc","\u110c\u1165\u11af\u1107\u1161\u11ab","\u110c\u1165\u11af\u110b\u1163\u11a8","\u110c\u1165\u11af\u110e\u1161","\u110c\u1165\u11b7\u1100\u1165\u11b7","\u110c\u1165\u11b7\u1109\u116e","\u110c\u1165\u11b7\u1109\u1175\u11b7","\u110c\u1165\u11b7\u110b\u116f\u11ab","\u110c\u1165\u11b7\u110c\u1165\u11b7","\u110c\u1165\u11b7\u110e\u1161","\u110c\u1165\u11b8\u1100\u1173\u11ab","\u110c\u1165\u11b8\u1109\u1175","\u110c\u1165\u11b8\u110e\u1169\u11a8","\u110c\u1165\u11ba\u1100\u1161\u1105\u1161\u11a8","\u110c\u1165\u11bc\u1100\u1165\u110c\u1161\u11bc","\u110c\u1165\u11bc\u1103\u1169","\u110c\u1165\u11bc\u1105\u1172\u110c\u1161\u11bc","\u110c\u1165\u11bc\u1105\u1175","\u110c\u1165\u11bc\u1106\u1161\u11af","\u110c\u1165\u11bc\u1106\u1167\u11ab","\u110c\u1165\u11bc\u1106\u116e\u11ab","\u110c\u1165\u11bc\u1107\u1161\u11ab\u1103\u1162","\u110c\u1165\u11bc\u1107\u1169","\u110c\u1165\u11bc\u1107\u116e","\u110c\u1165\u11bc\u1107\u1175","\u110c\u1165\u11bc\u1109\u1161\u11bc","\u110c\u1165\u11bc\u1109\u1165\u11bc","\u110c\u1165\u11bc\u110b\u1169","\u110c\u1165\u11bc\u110b\u116f\u11ab","\u110c\u1165\u11bc\u110c\u1161\u11bc","\u110c\u1165\u11bc\u110c\u1175","\u110c\u1165\u11bc\u110e\u1175","\u110c\u1165\u11bc\u1112\u116a\u11a8\u1112\u1175","\u110c\u1166\u1100\u1169\u11bc","\u110c\u1166\u1100\u116a\u110c\u1165\u11b7","\u110c\u1166\u1103\u1162\u1105\u1169","\u110c\u1166\u1106\u1169\u11a8","\u110c\u1166\u1107\u1161\u11af","\u110c\u1166\u1107\u1165\u11b8","\u110c\u1166\u1109\u1161\u11ba\u1102\u1161\u11af","\u110c\u1166\u110b\u1161\u11ab","\u110c\u1166\u110b\u1175\u11af","\u110c\u1166\u110c\u1161\u11a8","\u110c\u1166\u110c\u116e\u1103\u1169","\u110c\u1166\u110e\u116e\u11af","\u110c\u1166\u1111\u116e\u11b7","\u110c\u1166\u1112\u1161\u11ab","\u110c\u1169\u1100\u1161\u11a8","\u110c\u1169\u1100\u1165\u11ab","\u110c\u1169\u1100\u1173\u11b7","\u110c\u1169\u1100\u1175\u11bc","\u110c\u1169\u1106\u1167\u11bc","\u110c\u1169\u1106\u1175\u1105\u116d","\u110c\u1169\u1109\u1161\u11bc","\u110c\u1169\u1109\u1165\u11ab","\u110c\u1169\u110b\u116d\u11bc\u1112\u1175","\u110c\u1169\u110c\u1165\u11af","\u110c\u1169\u110c\u1165\u11bc","\u110c\u1169\u110c\u1175\u11a8","\u110c\u1169\u11ab\u1103\u1162\u11ba\u1106\u1161\u11af","\u110c\u1169\u11ab\u110c\u1162","\u110c\u1169\u11af\u110b\u1165\u11b8","\u110c\u1169\u11af\u110b\u1173\u11b7","\u110c\u1169\u11bc\u1100\u116d","\u110c\u1169\u11bc\u1105\u1169","\u110c\u1169\u11bc\u1105\u1172","\u110c\u1169\u11bc\u1109\u1169\u1105\u1175","\u110c\u1169\u11bc\u110b\u1165\u11b8\u110b\u116f\u11ab","\u110c\u1169\u11bc\u110c\u1169\u11bc","\u110c\u1169\u11bc\u1112\u1161\u11b8","\u110c\u116a\u1109\u1165\u11a8","\u110c\u116c\u110b\u1175\u11ab","\u110c\u116e\u1100\u116a\u11ab\u110c\u1165\u11a8","\u110c\u116e\u1105\u1173\u11b7","\u110c\u116e\u1106\u1161\u11af","\u110c\u116e\u1106\u1165\u1102\u1175","\u110c\u116e\u1106\u1165\u11a8","\u110c\u116e\u1106\u116e\u11ab","\u110c\u116e\u1106\u1175\u11ab","\u110c\u116e\u1107\u1161\u11bc","\u110c\u116e\u1107\u1167\u11ab","\u110c\u116e\u1109\u1175\u11a8","\u110c\u116e\u110b\u1175\u11ab","\u110c\u116e\u110b\u1175\u11af","\u110c\u116e\u110c\u1161\u11bc","\u110c\u116e\u110c\u1165\u11ab\u110c\u1161","\u110c\u116e\u1110\u1162\u11a8","\u110c\u116e\u11ab\u1107\u1175","\u110c\u116e\u11af\u1100\u1165\u1105\u1175","\u110c\u116e\u11af\u1100\u1175","\u110c\u116e\u11af\u1106\u116e\u1102\u1174","\u110c\u116e\u11bc\u1100\u1161\u11ab","\u110c\u116e\u11bc\u1100\u1168\u1107\u1161\u11bc\u1109\u1169\u11bc","\u110c\u116e\u11bc\u1100\u116e\u11a8","\u110c\u116e\u11bc\u1102\u1167\u11ab","\u110c\u116e\u11bc\u1103\u1161\u11ab","\u110c\u116e\u11bc\u1103\u1169\u11a8","\u110c\u116e\u11bc\u1107\u1161\u11ab","\u110c\u116e\u11bc\u1107\u116e","\u110c\u116e\u11bc\u1109\u1166","\u110c\u116e\u11bc\u1109\u1169\u1100\u1175\u110b\u1165\u11b8","\u110c\u116e\u11bc\u1109\u116e\u11ab","\u110c\u116e\u11bc\u110b\u1161\u11bc","\u110c\u116e\u11bc\u110b\u116d","\u110c\u116e\u11bc\u1112\u1161\u11a8\u1100\u116d","\u110c\u1173\u11a8\u1109\u1165\u11a8","\u110c\u1173\u11a8\u1109\u1175","\u110c\u1173\u11af\u1100\u1165\u110b\u116e\u11b7","\u110c\u1173\u11bc\u1100\u1161","\u110c\u1173\u11bc\u1100\u1165","\u110c\u1173\u11bc\u1100\u116f\u11ab","\u110c\u1173\u11bc\u1109\u1161\u11bc","\u110c\u1173\u11bc\u1109\u1166","\u110c\u1175\u1100\u1161\u11a8","\u110c\u1175\u1100\u1161\u11b8","\u110c\u1175\u1100\u1167\u11bc","\u110c\u1175\u1100\u1173\u11a8\u1112\u1175","\u110c\u1175\u1100\u1173\u11b7","\u110c\u1175\u1100\u1173\u11b8","\u110c\u1175\u1102\u1173\u11bc","\u110c\u1175\u1105\u1173\u11b7\u1100\u1175\u11af","\u110c\u1175\u1105\u1175\u1109\u1161\u11ab","\u110c\u1175\u1107\u1161\u11bc","\u110c\u1175\u1107\u116e\u11bc","\u110c\u1175\u1109\u1175\u11a8","\u110c\u1175\u110b\u1167\u11a8","\u110c\u1175\u110b\u116e\u1100\u1162","\u110c\u1175\u110b\u116f\u11ab","\u110c\u1175\u110c\u1165\u11a8","\u110c\u1175\u110c\u1165\u11b7","\u110c\u1175\u110c\u1175\u11ab","\u110c\u1175\u110e\u116e\u11af","\u110c\u1175\u11a8\u1109\u1165\u11ab","\u110c\u1175\u11a8\u110b\u1165\u11b8","\u110c\u1175\u11a8\u110b\u116f\u11ab","\u110c\u1175\u11a8\u110c\u1161\u11bc","\u110c\u1175\u11ab\u1100\u1173\u11b8","\u110c\u1175\u11ab\u1103\u1169\u11bc","\u110c\u1175\u11ab\u1105\u1169","\u110c\u1175\u11ab\u1105\u116d","\u110c\u1175\u11ab\u1105\u1175","\u110c\u1175\u11ab\u110d\u1161","\u110c\u1175\u11ab\u110e\u1161\u11af","\u110c\u1175\u11ab\u110e\u116e\u11af","\u110c\u1175\u11ab\u1110\u1169\u11bc","\u110c\u1175\u11ab\u1112\u1162\u11bc","\u110c\u1175\u11af\u1106\u116e\u11ab","\u110c\u1175\u11af\u1107\u1167\u11bc","\u110c\u1175\u11af\u1109\u1165","\u110c\u1175\u11b7\u110c\u1161\u11a8","\u110c\u1175\u11b8\u1103\u1161\u11ab","\u110c\u1175\u11b8\u110b\u1161\u11ab","\u110c\u1175\u11b8\u110c\u116e\u11bc","\u110d\u1161\u110c\u1173\u11bc","\u110d\u1175\u1101\u1165\u1100\u1175","\u110e\u1161\u1102\u1161\u11b7","\u110e\u1161\u1105\u1161\u1105\u1175","\u110e\u1161\u1105\u1163\u11bc","\u110e\u1161\u1105\u1175\u11b7","\u110e\u1161\u1107\u1167\u11af","\u110e\u1161\u1109\u1165\u11ab","\u110e\u1161\u110e\u1173\u11b7","\u110e\u1161\u11a8\u1100\u1161\u11a8","\u110e\u1161\u11ab\u1106\u116e\u11af","\u110e\u1161\u11ab\u1109\u1165\u11bc","\u110e\u1161\u11b7\u1100\u1161","\u110e\u1161\u11b7\u1100\u1175\u1105\u1173\u11b7","\u110e\u1161\u11b7\u1109\u1162","\u110e\u1161\u11b7\u1109\u1165\u11a8","\u110e\u1161\u11b7\u110b\u1167","\u110e\u1161\u11b7\u110b\u116c","\u110e\u1161\u11b7\u110c\u1169","\u110e\u1161\u11ba\u110c\u1161\u11ab","\u110e\u1161\u11bc\u1100\u1161","\u110e\u1161\u11bc\u1100\u1169","\u110e\u1161\u11bc\u1100\u116e","\u110e\u1161\u11bc\u1106\u116e\u11ab","\u110e\u1161\u11bc\u1107\u1161\u11a9","\u110e\u1161\u11bc\u110c\u1161\u11a8","\u110e\u1161\u11bc\u110c\u1169","\u110e\u1162\u1102\u1165\u11af","\u110e\u1162\u110c\u1165\u11b7","\u110e\u1162\u11a8\u1100\u1161\u1107\u1161\u11bc","\u110e\u1162\u11a8\u1107\u1161\u11bc","\u110e\u1162\u11a8\u1109\u1161\u11bc","\u110e\u1162\u11a8\u110b\u1175\u11b7","\u110e\u1162\u11b7\u1111\u1175\u110b\u1165\u11ab","\u110e\u1165\u1107\u1165\u11af","\u110e\u1165\u110b\u1173\u11b7","\u110e\u1165\u11ab\u1100\u116e\u11a8","\u110e\u1165\u11ab\u1103\u116e\u11bc","\u110e\u1165\u11ab\u110c\u1161\u11bc","\u110e\u1165\u11ab\u110c\u1162","\u110e\u1165\u11ab\u110e\u1165\u11ab\u1112\u1175","\u110e\u1165\u11af\u1103\u1169","\u110e\u1165\u11af\u110c\u1165\u1112\u1175","\u110e\u1165\u11af\u1112\u1161\u11a8","\u110e\u1165\u11ba\u1102\u1161\u11af","\u110e\u1165\u11ba\u110d\u1162","\u110e\u1165\u11bc\u1102\u1167\u11ab","\u110e\u1165\u11bc\u1107\u1161\u110c\u1175","\u110e\u1165\u11bc\u1109\u1169","\u110e\u1165\u11bc\u110e\u116e\u11ab","\u110e\u1166\u1100\u1168","\u110e\u1166\u1105\u1167\u11a8","\u110e\u1166\u110b\u1169\u11ab","\u110e\u1166\u110b\u1172\u11a8","\u110e\u1166\u110c\u116e\u11bc","\u110e\u1166\u1112\u1165\u11b7","\u110e\u1169\u1103\u1173\u11bc\u1112\u1161\u11a8\u1109\u1162\u11bc","\u110e\u1169\u1107\u1161\u11ab","\u110e\u1169\u1107\u1161\u11b8","\u110e\u1169\u1109\u1161\u11bc\u1112\u116a","\u110e\u1169\u1109\u116e\u11ab","\u110e\u1169\u110b\u1167\u1105\u1173\u11b7","\u110e\u1169\u110b\u116f\u11ab","\u110e\u1169\u110c\u1165\u1102\u1167\u11a8","\u110e\u1169\u110c\u1165\u11b7","\u110e\u1169\u110e\u1165\u11bc","\u110e\u1169\u110f\u1169\u11af\u1105\u1175\u11ba","\u110e\u1169\u11ba\u1107\u116e\u11af","\u110e\u1169\u11bc\u1100\u1161\u11a8","\u110e\u1169\u11bc\u1105\u1175","\u110e\u1169\u11bc\u110c\u1161\u11bc","\u110e\u116a\u11af\u110b\u1167\u11bc","\u110e\u116c\u1100\u1173\u11ab","\u110e\u116c\u1109\u1161\u11bc","\u110e\u116c\u1109\u1165\u11ab","\u110e\u116c\u1109\u1175\u11ab","\u110e\u116c\u110b\u1161\u11a8","\u110e\u116c\u110c\u1169\u11bc","\u110e\u116e\u1109\u1165\u11a8","\u110e\u116e\u110b\u1165\u11a8","\u110e\u116e\u110c\u1175\u11ab","\u110e\u116e\u110e\u1165\u11ab","\u110e\u116e\u110e\u1173\u11a8","\u110e\u116e\u11a8\u1100\u116e","\u110e\u116e\u11a8\u1109\u1169","\u110e\u116e\u11a8\u110c\u1166","\u110e\u116e\u11a8\u1112\u1161","\u110e\u116e\u11af\u1100\u1173\u11ab","\u110e\u116e\u11af\u1107\u1161\u11af","\u110e\u116e\u11af\u1109\u1161\u11ab","\u110e\u116e\u11af\u1109\u1175\u11ab","\u110e\u116e\u11af\u110b\u1167\u11ab","\u110e\u116e\u11af\u110b\u1175\u11b8","\u110e\u116e\u11af\u110c\u1161\u11bc","\u110e\u116e\u11af\u1111\u1161\u11ab","\u110e\u116e\u11bc\u1100\u1167\u11a8","\u110e\u116e\u11bc\u1100\u1169","\u110e\u116e\u11bc\u1103\u1169\u11af","\u110e\u116e\u11bc\u1107\u116e\u11ab\u1112\u1175","\u110e\u116e\u11bc\u110e\u1165\u11bc\u1103\u1169","\u110e\u1171\u110b\u1165\u11b8","\u110e\u1171\u110c\u1175\u11a8","\u110e\u1171\u1112\u1163\u11bc","\u110e\u1175\u110b\u1163\u11a8","\u110e\u1175\u11ab\u1100\u116e","\u110e\u1175\u11ab\u110e\u1165\u11a8","\u110e\u1175\u11af\u1109\u1175\u11b8","\u110e\u1175\u11af\u110b\u116f\u11af","\u110e\u1175\u11af\u1111\u1161\u11ab","\u110e\u1175\u11b7\u1103\u1162","\u110e\u1175\u11b7\u1106\u116e\u11a8","\u110e\u1175\u11b7\u1109\u1175\u11af","\u110e\u1175\u11ba\u1109\u1169\u11af","\u110e\u1175\u11bc\u110e\u1161\u11ab","\u110f\u1161\u1106\u1166\u1105\u1161","\u110f\u1161\u110b\u116e\u11ab\u1110\u1165","\u110f\u1161\u11af\u1100\u116e\u11a8\u1109\u116e","\u110f\u1162\u1105\u1175\u11a8\u1110\u1165","\u110f\u1162\u11b7\u1111\u1165\u1109\u1173","\u110f\u1162\u11b7\u1111\u1166\u110b\u1175\u11ab","\u110f\u1165\u1110\u1173\u11ab","\u110f\u1165\u11ab\u1103\u1175\u1109\u1167\u11ab","\u110f\u1165\u11af\u1105\u1165","\u110f\u1165\u11b7\u1111\u1172\u1110\u1165","\u110f\u1169\u1101\u1175\u1105\u1175","\u110f\u1169\u1106\u1175\u1103\u1175","\u110f\u1169\u11ab\u1109\u1165\u1110\u1173","\u110f\u1169\u11af\u1105\u1161","\u110f\u1169\u11b7\u1111\u1173\u11af\u1105\u1166\u11a8\u1109\u1173","\u110f\u1169\u11bc\u1102\u1161\u1106\u116e\u11af","\u110f\u116b\u1100\u1161\u11b7","\u110f\u116e\u1103\u1166\u1110\u1161","\u110f\u1173\u1105\u1175\u11b7","\u110f\u1173\u11ab\u1100\u1175\u11af","\u110f\u1173\u11ab\u1104\u1161\u11af","\u110f\u1173\u11ab\u1109\u1169\u1105\u1175","\u110f\u1173\u11ab\u110b\u1161\u1103\u1173\u11af","\u110f\u1173\u11ab\u110b\u1165\u1106\u1165\u1102\u1175","\u110f\u1173\u11ab\u110b\u1175\u11af","\u110f\u1173\u11ab\u110c\u1165\u11af","\u110f\u1173\u11af\u1105\u1162\u1109\u1175\u11a8","\u110f\u1173\u11af\u1105\u1165\u11b8","\u110f\u1175\u11af\u1105\u1169","\u1110\u1161\u110b\u1175\u11b8","\u1110\u1161\u110c\u1161\u1100\u1175","\u1110\u1161\u11a8\u1100\u116e","\u1110\u1161\u11a8\u110c\u1161","\u1110\u1161\u11ab\u1109\u1162\u11bc","\u1110\u1162\u1100\u116f\u11ab\u1103\u1169","\u1110\u1162\u110b\u1163\u11bc","\u1110\u1162\u1111\u116e\u11bc","\u1110\u1162\u11a8\u1109\u1175","\u1110\u1162\u11af\u1105\u1165\u11ab\u1110\u1173","\u1110\u1165\u1102\u1165\u11af","\u1110\u1165\u1106\u1175\u1102\u1165\u11af","\u1110\u1166\u1102\u1175\u1109\u1173","\u1110\u1166\u1109\u1173\u1110\u1173","\u1110\u1166\u110b\u1175\u1107\u1173\u11af","\u1110\u1166\u11af\u1105\u1166\u1107\u1175\u110c\u1165\u11ab","\u1110\u1169\u1105\u1169\u11ab","\u1110\u1169\u1106\u1161\u1110\u1169","\u1110\u1169\u110b\u116d\u110b\u1175\u11af","\u1110\u1169\u11bc\u1100\u1168","\u1110\u1169\u11bc\u1100\u116a","\u1110\u1169\u11bc\u1105\u1169","\u1110\u1169\u11bc\u1109\u1175\u11ab","\u1110\u1169\u11bc\u110b\u1167\u11a8","\u1110\u1169\u11bc\u110b\u1175\u11af","\u1110\u1169\u11bc\u110c\u1161\u11bc","\u1110\u1169\u11bc\u110c\u1166","\u1110\u1169\u11bc\u110c\u1173\u11bc","\u1110\u1169\u11bc\u1112\u1161\u11b8","\u1110\u1169\u11bc\u1112\u116a","\u1110\u116c\u1100\u1173\u11ab","\u1110\u116c\u110b\u116f\u11ab","\u1110\u116c\u110c\u1175\u11a8\u1100\u1173\u11b7","\u1110\u1171\u1100\u1175\u11b7","\u1110\u1173\u1105\u1165\u11a8","\u1110\u1173\u11a8\u1100\u1173\u11b8","\u1110\u1173\u11a8\u1107\u1167\u11af","\u1110\u1173\u11a8\u1109\u1165\u11bc","\u1110\u1173\u11a8\u1109\u116e","\u1110\u1173\u11a8\u110c\u1175\u11bc","\u1110\u1173\u11a8\u1112\u1175","\u1110\u1173\u11ab\u1110\u1173\u11ab\u1112\u1175","\u1110\u1175\u1109\u1167\u110e\u1173","\u1111\u1161\u1105\u1161\u11ab\u1109\u1162\u11a8","\u1111\u1161\u110b\u1175\u11af","\u1111\u1161\u110e\u116e\u11af\u1109\u1169","\u1111\u1161\u11ab\u1100\u1167\u11af","\u1111\u1161\u11ab\u1103\u1161\u11ab","\u1111\u1161\u11ab\u1106\u1162","\u1111\u1161\u11ab\u1109\u1161","\u1111\u1161\u11af\u1109\u1175\u11b8","\u1111\u1161\u11af\u110b\u116f\u11af","\u1111\u1161\u11b8\u1109\u1169\u11bc","\u1111\u1162\u1109\u1167\u11ab","\u1111\u1162\u11a8\u1109\u1173","\u1111\u1162\u11a8\u1109\u1175\u1106\u1175\u11af\u1105\u1175","\u1111\u1162\u11ab\u1110\u1175","\u1111\u1165\u1109\u1166\u11ab\u1110\u1173","\u1111\u1166\u110b\u1175\u11ab\u1110\u1173","\u1111\u1167\u11ab\u1100\u1167\u11ab","\u1111\u1167\u11ab\u110b\u1174","\u1111\u1167\u11ab\u110c\u1175","\u1111\u1167\u11ab\u1112\u1175","\u1111\u1167\u11bc\u1100\u1161","\u1111\u1167\u11bc\u1100\u1172\u11ab","\u1111\u1167\u11bc\u1109\u1162\u11bc","\u1111\u1167\u11bc\u1109\u1169","\u1111\u1167\u11bc\u110b\u1163\u11bc","\u1111\u1167\u11bc\u110b\u1175\u11af","\u1111\u1167\u11bc\u1112\u116a","\u1111\u1169\u1109\u1173\u1110\u1165","\u1111\u1169\u110b\u1175\u11ab\u1110\u1173","\u1111\u1169\u110c\u1161\u11bc","\u1111\u1169\u1112\u1161\u11b7","\u1111\u116d\u1106\u1167\u11ab","\u1111\u116d\u110c\u1165\u11bc","\u1111\u116d\u110c\u116e\u11ab","\u1111\u116d\u1112\u1167\u11ab","\u1111\u116e\u11b7\u1106\u1169\u11a8","\u1111\u116e\u11b7\u110c\u1175\u11af","\u1111\u116e\u11bc\u1100\u1167\u11bc","\u1111\u116e\u11bc\u1109\u1169\u11a8","\u1111\u116e\u11bc\u1109\u1173\u11b8","\u1111\u1173\u1105\u1161\u11bc\u1109\u1173","\u1111\u1173\u1105\u1175\u11ab\u1110\u1165","\u1111\u1173\u11af\u1105\u1161\u1109\u1173\u1110\u1175\u11a8","\u1111\u1175\u1100\u1169\u11ab","\u1111\u1175\u1106\u1161\u11bc","\u1111\u1175\u110b\u1161\u1102\u1169","\u1111\u1175\u11af\u1105\u1173\u11b7","\u1111\u1175\u11af\u1109\u116e","\u1111\u1175\u11af\u110b\u116d","\u1111\u1175\u11af\u110c\u1161","\u1111\u1175\u11af\u1110\u1169\u11bc","\u1111\u1175\u11bc\u1100\u1168","\u1112\u1161\u1102\u1173\u1102\u1175\u11b7","\u1112\u1161\u1102\u1173\u11af","\u1112\u1161\u1103\u1173\u110b\u1170\u110b\u1165","\u1112\u1161\u1105\u116e\u11ba\u1107\u1161\u11b7","\u1112\u1161\u1107\u1161\u11ab\u1100\u1175","\u1112\u1161\u1109\u116e\u11a8\u110c\u1175\u11b8","\u1112\u1161\u1109\u116e\u11ab","\u1112\u1161\u110b\u1167\u1110\u1173\u11ab","\u1112\u1161\u110c\u1175\u1106\u1161\u11ab","\u1112\u1161\u110e\u1165\u11ab","\u1112\u1161\u1111\u116e\u11b7","\u1112\u1161\u1111\u1175\u11af","\u1112\u1161\u11a8\u1100\u116a","\u1112\u1161\u11a8\u1100\u116d","\u1112\u1161\u11a8\u1100\u1173\u11b8","\u1112\u1161\u11a8\u1100\u1175","\u1112\u1161\u11a8\u1102\u1167\u11ab","\u1112\u1161\u11a8\u1105\u1167\u11a8","\u1112\u1161\u11a8\u1107\u1165\u11ab","\u1112\u1161\u11a8\u1107\u116e\u1106\u1169","\u1112\u1161\u11a8\u1107\u1175","\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1112\u1161\u11a8\u1109\u116e\u11af","\u1112\u1161\u11a8\u1109\u1173\u11b8","\u1112\u1161\u11a8\u110b\u116d\u11bc\u1111\u116e\u11b7","\u1112\u1161\u11a8\u110b\u116f\u11ab","\u1112\u1161\u11a8\u110b\u1171","\u1112\u1161\u11a8\u110c\u1161","\u1112\u1161\u11a8\u110c\u1165\u11b7","\u1112\u1161\u11ab\u1100\u1168","\u1112\u1161\u11ab\u1100\u1173\u11af","\u1112\u1161\u11ab\u1101\u1165\u1107\u1165\u11ab\u110b\u1166","\u1112\u1161\u11ab\u1102\u1161\u11bd","\u1112\u1161\u11ab\u1102\u116e\u11ab","\u1112\u1161\u11ab\u1103\u1169\u11bc\u110b\u1161\u11ab","\u1112\u1161\u11ab\u1104\u1162","\u1112\u1161\u11ab\u1105\u1161\u1109\u1161\u11ab","\u1112\u1161\u11ab\u1106\u1161\u1103\u1175","\u1112\u1161\u11ab\u1106\u116e\u11ab","\u1112\u1161\u11ab\u1107\u1165\u11ab","\u1112\u1161\u11ab\u1107\u1169\u11a8","\u1112\u1161\u11ab\u1109\u1175\u11a8","\u1112\u1161\u11ab\u110b\u1167\u1105\u1173\u11b7","\u1112\u1161\u11ab\u110d\u1169\u11a8","\u1112\u1161\u11af\u1106\u1165\u1102\u1175","\u1112\u1161\u11af\u110b\u1161\u1107\u1165\u110c\u1175","\u1112\u1161\u11af\u110b\u1175\u11ab","\u1112\u1161\u11b7\u1101\u1166","\u1112\u1161\u11b7\u1107\u116e\u1105\u1169","\u1112\u1161\u11b8\u1100\u1167\u11a8","\u1112\u1161\u11b8\u1105\u1175\u110c\u1165\u11a8","\u1112\u1161\u11bc\u1100\u1169\u11bc","\u1112\u1161\u11bc\u1100\u116e","\u1112\u1161\u11bc\u1109\u1161\u11bc","\u1112\u1161\u11bc\u110b\u1174","\u1112\u1162\u1100\u1167\u11af","\u1112\u1162\u1100\u116e\u11ab","\u1112\u1162\u1103\u1161\u11b8","\u1112\u1162\u1103\u1161\u11bc","\u1112\u1162\u1106\u116e\u11af","\u1112\u1162\u1109\u1165\u11a8","\u1112\u1162\u1109\u1165\u11af","\u1112\u1162\u1109\u116e\u110b\u116d\u11a8\u110c\u1161\u11bc","\u1112\u1162\u110b\u1161\u11ab","\u1112\u1162\u11a8\u1109\u1175\u11b7","\u1112\u1162\u11ab\u1103\u1173\u1107\u1162\u11a8","\u1112\u1162\u11b7\u1107\u1165\u1100\u1165","\u1112\u1162\u11ba\u1107\u1167\u11c0","\u1112\u1162\u11ba\u1109\u1161\u11af","\u1112\u1162\u11bc\u1103\u1169\u11bc","\u1112\u1162\u11bc\u1107\u1169\u11a8","\u1112\u1162\u11bc\u1109\u1161","\u1112\u1162\u11bc\u110b\u116e\u11ab","\u1112\u1162\u11bc\u110b\u1171","\u1112\u1163\u11bc\u1100\u1175","\u1112\u1163\u11bc\u1109\u1161\u11bc","\u1112\u1163\u11bc\u1109\u116e","\u1112\u1165\u1105\u1161\u11a8","\u1112\u1165\u110b\u116d\u11bc","\u1112\u1166\u11af\u1100\u1175","\u1112\u1167\u11ab\u1100\u116a\u11ab","\u1112\u1167\u11ab\u1100\u1173\u11b7","\u1112\u1167\u11ab\u1103\u1162","\u1112\u1167\u11ab\u1109\u1161\u11bc","\u1112\u1167\u11ab\u1109\u1175\u11af","\u1112\u1167\u11ab\u110c\u1161\u11bc","\u1112\u1167\u11ab\u110c\u1162","\u1112\u1167\u11ab\u110c\u1175","\u1112\u1167\u11af\u110b\u1162\u11a8","\u1112\u1167\u11b8\u1105\u1167\u11a8","\u1112\u1167\u11bc\u1107\u116e","\u1112\u1167\u11bc\u1109\u1161","\u1112\u1167\u11bc\u1109\u116e","\u1112\u1167\u11bc\u1109\u1175\u11a8","\u1112\u1167\u11bc\u110c\u1166","\u1112\u1167\u11bc\u1110\u1162","\u1112\u1167\u11bc\u1111\u1167\u11ab","\u1112\u1168\u1110\u1162\u11a8","\u1112\u1169\u1100\u1175\u1109\u1175\u11b7","\u1112\u1169\u1102\u1161\u11b7","\u1112\u1169\u1105\u1161\u11bc\u110b\u1175","\u1112\u1169\u1107\u1161\u11a8","\u1112\u1169\u1110\u1166\u11af","\u1112\u1169\u1112\u1173\u11b8","\u1112\u1169\u11a8\u1109\u1175","\u1112\u1169\u11af\u1105\u1169","\u1112\u1169\u11b7\u1111\u1166\u110b\u1175\u110c\u1175","\u1112\u1169\u11bc\u1107\u1169","\u1112\u1169\u11bc\u1109\u116e","\u1112\u1169\u11bc\u110e\u1161","\u1112\u116a\u1106\u1167\u11ab","\u1112\u116a\u1107\u116e\u11ab","\u1112\u116a\u1109\u1161\u11af","\u1112\u116a\u110b\u116d\u110b\u1175\u11af","\u1112\u116a\u110c\u1161\u11bc","\u1112\u116a\u1112\u1161\u11a8","\u1112\u116a\u11a8\u1107\u1169","\u1112\u116a\u11a8\u110b\u1175\u11ab","\u1112\u116a\u11a8\u110c\u1161\u11bc","\u1112\u116a\u11a8\u110c\u1165\u11bc","\u1112\u116a\u11ab\u1100\u1161\u11b8","\u1112\u116a\u11ab\u1100\u1167\u11bc","\u1112\u116a\u11ab\u110b\u1167\u11bc","\u1112\u116a\u11ab\u110b\u1172\u11af","\u1112\u116a\u11ab\u110c\u1161","\u1112\u116a\u11af\u1100\u1175","\u1112\u116a\u11af\u1103\u1169\u11bc","\u1112\u116a\u11af\u1107\u1161\u11af\u1112\u1175","\u1112\u116a\u11af\u110b\u116d\u11bc","\u1112\u116a\u11af\u110d\u1161\u11a8","\u1112\u116c\u1100\u1167\u11ab","\u1112\u116c\u1100\u116a\u11ab","\u1112\u116c\u1107\u1169\u11a8","\u1112\u116c\u1109\u1162\u11a8","\u1112\u116c\u110b\u116f\u11ab","\u1112\u116c\u110c\u1161\u11bc","\u1112\u116c\u110c\u1165\u11ab","\u1112\u116c\u11ba\u1109\u116e","\u1112\u116c\u11bc\u1103\u1161\u11ab\u1107\u1169\u1103\u1169","\u1112\u116d\u110b\u1172\u11af\u110c\u1165\u11a8","\u1112\u116e\u1107\u1161\u11ab","\u1112\u116e\u110e\u116e\u11ba\u1100\u1161\u1105\u116e","\u1112\u116e\u11ab\u1105\u1167\u11ab","\u1112\u116f\u11af\u110a\u1175\u11ab","\u1112\u1172\u1109\u1175\u11a8","\u1112\u1172\u110b\u1175\u11af","\u1112\u1172\u11bc\u1102\u1162","\u1112\u1173\u1105\u1173\u11b7","\u1112\u1173\u11a8\u1107\u1162\u11a8","\u1112\u1173\u11a8\u110b\u1175\u11ab","\u1112\u1173\u11ab\u110c\u1165\u11a8","\u1112\u1173\u11ab\u1112\u1175","\u1112\u1173\u11bc\u1106\u1175","\u1112\u1173\u11bc\u1107\u116e\u11ab","\u1112\u1174\u1100\u1169\u11a8","\u1112\u1174\u1106\u1161\u11bc","\u1112\u1174\u1109\u1162\u11bc","\u1112\u1174\u11ab\u1109\u1162\u11a8","\u1112\u1175\u11b7\u1101\u1165\u11ba"]')},7357:e=>{"use strict";e.exports=JSON.parse('["abacate","abaixo","abalar","abater","abduzir","abelha","aberto","abismo","abotoar","abranger","abreviar","abrigar","abrupto","absinto","absoluto","absurdo","abutre","acabado","acalmar","acampar","acanhar","acaso","aceitar","acelerar","acenar","acervo","acessar","acetona","achatar","acidez","acima","acionado","acirrar","aclamar","aclive","acolhida","acomodar","acoplar","acordar","acumular","acusador","adaptar","adega","adentro","adepto","adequar","aderente","adesivo","adeus","adiante","aditivo","adjetivo","adjunto","admirar","adorar","adquirir","adubo","adverso","advogado","aeronave","afastar","aferir","afetivo","afinador","afivelar","aflito","afluente","afrontar","agachar","agarrar","agasalho","agenciar","agilizar","agiota","agitado","agora","agradar","agreste","agrupar","aguardar","agulha","ajoelhar","ajudar","ajustar","alameda","alarme","alastrar","alavanca","albergue","albino","alcatra","aldeia","alecrim","alegria","alertar","alface","alfinete","algum","alheio","aliar","alicate","alienar","alinhar","aliviar","almofada","alocar","alpiste","alterar","altitude","alucinar","alugar","aluno","alusivo","alvo","amaciar","amador","amarelo","amassar","ambas","ambiente","ameixa","amenizar","amido","amistoso","amizade","amolador","amontoar","amoroso","amostra","amparar","ampliar","ampola","anagrama","analisar","anarquia","anatomia","andaime","anel","anexo","angular","animar","anjo","anomalia","anotado","ansioso","anterior","anuidade","anunciar","anzol","apagador","apalpar","apanhado","apego","apelido","apertada","apesar","apetite","apito","aplauso","aplicada","apoio","apontar","aposta","aprendiz","aprovar","aquecer","arame","aranha","arara","arcada","ardente","areia","arejar","arenito","aresta","argiloso","argola","arma","arquivo","arraial","arrebate","arriscar","arroba","arrumar","arsenal","arterial","artigo","arvoredo","asfaltar","asilado","aspirar","assador","assinar","assoalho","assunto","astral","atacado","atadura","atalho","atarefar","atear","atender","aterro","ateu","atingir","atirador","ativo","atoleiro","atracar","atrevido","atriz","atual","atum","auditor","aumentar","aura","aurora","autismo","autoria","autuar","avaliar","avante","avaria","avental","avesso","aviador","avisar","avulso","axila","azarar","azedo","azeite","azulejo","babar","babosa","bacalhau","bacharel","bacia","bagagem","baiano","bailar","baioneta","bairro","baixista","bajular","baleia","baliza","balsa","banal","bandeira","banho","banir","banquete","barato","barbado","baronesa","barraca","barulho","baseado","bastante","batata","batedor","batida","batom","batucar","baunilha","beber","beijo","beirada","beisebol","beldade","beleza","belga","beliscar","bendito","bengala","benzer","berimbau","berlinda","berro","besouro","bexiga","bezerro","bico","bicudo","bienal","bifocal","bifurcar","bigorna","bilhete","bimestre","bimotor","biologia","biombo","biosfera","bipolar","birrento","biscoito","bisneto","bispo","bissexto","bitola","bizarro","blindado","bloco","bloquear","boato","bobagem","bocado","bocejo","bochecha","boicotar","bolada","boletim","bolha","bolo","bombeiro","bonde","boneco","bonita","borbulha","borda","boreal","borracha","bovino","boxeador","branco","brasa","braveza","breu","briga","brilho","brincar","broa","brochura","bronzear","broto","bruxo","bucha","budismo","bufar","bule","buraco","busca","busto","buzina","cabana","cabelo","cabide","cabo","cabrito","cacau","cacetada","cachorro","cacique","cadastro","cadeado","cafezal","caiaque","caipira","caixote","cajado","caju","calafrio","calcular","caldeira","calibrar","calmante","calota","camada","cambista","camisa","camomila","campanha","camuflar","canavial","cancelar","caneta","canguru","canhoto","canivete","canoa","cansado","cantar","canudo","capacho","capela","capinar","capotar","capricho","captador","capuz","caracol","carbono","cardeal","careca","carimbar","carneiro","carpete","carreira","cartaz","carvalho","casaco","casca","casebre","castelo","casulo","catarata","cativar","caule","causador","cautelar","cavalo","caverna","cebola","cedilha","cegonha","celebrar","celular","cenoura","censo","centeio","cercar","cerrado","certeiro","cerveja","cetim","cevada","chacota","chaleira","chamado","chapada","charme","chatice","chave","chefe","chegada","cheiro","cheque","chicote","chifre","chinelo","chocalho","chover","chumbo","chutar","chuva","cicatriz","ciclone","cidade","cidreira","ciente","cigana","cimento","cinto","cinza","ciranda","circuito","cirurgia","citar","clareza","clero","clicar","clone","clube","coado","coagir","cobaia","cobertor","cobrar","cocada","coelho","coentro","coeso","cogumelo","coibir","coifa","coiote","colar","coleira","colher","colidir","colmeia","colono","coluna","comando","combinar","comentar","comitiva","comover","complexo","comum","concha","condor","conectar","confuso","congelar","conhecer","conjugar","consumir","contrato","convite","cooperar","copeiro","copiador","copo","coquetel","coragem","cordial","corneta","coronha","corporal","correio","cortejo","coruja","corvo","cosseno","costela","cotonete","couro","couve","covil","cozinha","cratera","cravo","creche","credor","creme","crer","crespo","criada","criminal","crioulo","crise","criticar","crosta","crua","cruzeiro","cubano","cueca","cuidado","cujo","culatra","culminar","culpar","cultura","cumprir","cunhado","cupido","curativo","curral","cursar","curto","cuspir","custear","cutelo","damasco","datar","debater","debitar","deboche","debulhar","decalque","decimal","declive","decote","decretar","dedal","dedicado","deduzir","defesa","defumar","degelo","degrau","degustar","deitado","deixar","delator","delegado","delinear","delonga","demanda","demitir","demolido","dentista","depenado","depilar","depois","depressa","depurar","deriva","derramar","desafio","desbotar","descanso","desenho","desfiado","desgaste","desigual","deslize","desmamar","desova","despesa","destaque","desviar","detalhar","detentor","detonar","detrito","deusa","dever","devido","devotado","dezena","diagrama","dialeto","didata","difuso","digitar","dilatado","diluente","diminuir","dinastia","dinheiro","diocese","direto","discreta","disfarce","disparo","disquete","dissipar","distante","ditador","diurno","diverso","divisor","divulgar","dizer","dobrador","dolorido","domador","dominado","donativo","donzela","dormente","dorsal","dosagem","dourado","doutor","drenagem","drible","drogaria","duelar","duende","dueto","duplo","duquesa","durante","duvidoso","eclodir","ecoar","ecologia","edificar","edital","educado","efeito","efetivar","ejetar","elaborar","eleger","eleitor","elenco","elevador","eliminar","elogiar","embargo","embolado","embrulho","embutido","emenda","emergir","emissor","empatia","empenho","empinado","empolgar","emprego","empurrar","emulador","encaixe","encenado","enchente","encontro","endeusar","endossar","enfaixar","enfeite","enfim","engajado","engenho","englobar","engomado","engraxar","enguia","enjoar","enlatar","enquanto","enraizar","enrolado","enrugar","ensaio","enseada","ensino","ensopado","entanto","enteado","entidade","entortar","entrada","entulho","envergar","enviado","envolver","enxame","enxerto","enxofre","enxuto","epiderme","equipar","ereto","erguido","errata","erva","ervilha","esbanjar","esbelto","escama","escola","escrita","escuta","esfinge","esfolar","esfregar","esfumado","esgrima","esmalte","espanto","espelho","espiga","esponja","espreita","espumar","esquerda","estaca","esteira","esticar","estofado","estrela","estudo","esvaziar","etanol","etiqueta","euforia","europeu","evacuar","evaporar","evasivo","eventual","evidente","evoluir","exagero","exalar","examinar","exato","exausto","excesso","excitar","exclamar","executar","exemplo","exibir","exigente","exonerar","expandir","expelir","expirar","explanar","exposto","expresso","expulsar","externo","extinto","extrato","fabricar","fabuloso","faceta","facial","fada","fadiga","faixa","falar","falta","familiar","fandango","fanfarra","fantoche","fardado","farelo","farinha","farofa","farpa","fartura","fatia","fator","favorita","faxina","fazenda","fechado","feijoada","feirante","felino","feminino","fenda","feno","fera","feriado","ferrugem","ferver","festejar","fetal","feudal","fiapo","fibrose","ficar","ficheiro","figurado","fileira","filho","filme","filtrar","firmeza","fisgada","fissura","fita","fivela","fixador","fixo","flacidez","flamingo","flanela","flechada","flora","flutuar","fluxo","focal","focinho","fofocar","fogo","foguete","foice","folgado","folheto","forjar","formiga","forno","forte","fosco","fossa","fragata","fralda","frango","frasco","fraterno","freira","frente","fretar","frieza","friso","fritura","fronha","frustrar","fruteira","fugir","fulano","fuligem","fundar","fungo","funil","furador","furioso","futebol","gabarito","gabinete","gado","gaiato","gaiola","gaivota","galega","galho","galinha","galocha","ganhar","garagem","garfo","gargalo","garimpo","garoupa","garrafa","gasoduto","gasto","gata","gatilho","gaveta","gazela","gelado","geleia","gelo","gemada","gemer","gemido","generoso","gengiva","genial","genoma","genro","geologia","gerador","germinar","gesso","gestor","ginasta","gincana","gingado","girafa","girino","glacial","glicose","global","glorioso","goela","goiaba","golfe","golpear","gordura","gorjeta","gorro","gostoso","goteira","governar","gracejo","gradual","grafite","gralha","grampo","granada","gratuito","graveto","graxa","grego","grelhar","greve","grilo","grisalho","gritaria","grosso","grotesco","grudado","grunhido","gruta","guache","guarani","guaxinim","guerrear","guiar","guincho","guisado","gula","guloso","guru","habitar","harmonia","haste","haver","hectare","herdar","heresia","hesitar","hiato","hibernar","hidratar","hiena","hino","hipismo","hipnose","hipoteca","hoje","holofote","homem","honesto","honrado","hormonal","hospedar","humorado","iate","ideia","idoso","ignorado","igreja","iguana","ileso","ilha","iludido","iluminar","ilustrar","imagem","imediato","imenso","imersivo","iminente","imitador","imortal","impacto","impedir","implante","impor","imprensa","impune","imunizar","inalador","inapto","inativo","incenso","inchar","incidir","incluir","incolor","indeciso","indireto","indutor","ineficaz","inerente","infantil","infestar","infinito","inflamar","informal","infrator","ingerir","inibido","inicial","inimigo","injetar","inocente","inodoro","inovador","inox","inquieto","inscrito","inseto","insistir","inspetor","instalar","insulto","intacto","integral","intimar","intocado","intriga","invasor","inverno","invicto","invocar","iogurte","iraniano","ironizar","irreal","irritado","isca","isento","isolado","isqueiro","italiano","janeiro","jangada","janta","jararaca","jardim","jarro","jasmim","jato","javali","jazida","jejum","joaninha","joelhada","jogador","joia","jornal","jorrar","jovem","juba","judeu","judoca","juiz","julgador","julho","jurado","jurista","juro","justa","labareda","laboral","lacre","lactante","ladrilho","lagarta","lagoa","laje","lamber","lamentar","laminar","lampejo","lanche","lapidar","lapso","laranja","lareira","largura","lasanha","lastro","lateral","latido","lavanda","lavoura","lavrador","laxante","lazer","lealdade","lebre","legado","legendar","legista","leigo","leiloar","leitura","lembrete","leme","lenhador","lentilha","leoa","lesma","leste","letivo","letreiro","levar","leveza","levitar","liberal","libido","liderar","ligar","ligeiro","limitar","limoeiro","limpador","linda","linear","linhagem","liquidez","listagem","lisura","litoral","livro","lixa","lixeira","locador","locutor","lojista","lombo","lona","longe","lontra","lorde","lotado","loteria","loucura","lousa","louvar","luar","lucidez","lucro","luneta","lustre","lutador","luva","macaco","macete","machado","macio","madeira","madrinha","magnata","magreza","maior","mais","malandro","malha","malote","maluco","mamilo","mamoeiro","mamute","manada","mancha","mandato","manequim","manhoso","manivela","manobrar","mansa","manter","manusear","mapeado","maquinar","marcador","maresia","marfim","margem","marinho","marmita","maroto","marquise","marreco","martelo","marujo","mascote","masmorra","massagem","mastigar","matagal","materno","matinal","matutar","maxilar","medalha","medida","medusa","megafone","meiga","melancia","melhor","membro","memorial","menino","menos","mensagem","mental","merecer","mergulho","mesada","mesclar","mesmo","mesquita","mestre","metade","meteoro","metragem","mexer","mexicano","micro","migalha","migrar","milagre","milenar","milhar","mimado","minerar","minhoca","ministro","minoria","miolo","mirante","mirtilo","misturar","mocidade","moderno","modular","moeda","moer","moinho","moita","moldura","moleza","molho","molinete","molusco","montanha","moqueca","morango","morcego","mordomo","morena","mosaico","mosquete","mostarda","motel","motim","moto","motriz","muda","muito","mulata","mulher","multar","mundial","munido","muralha","murcho","muscular","museu","musical","nacional","nadador","naja","namoro","narina","narrado","nascer","nativa","natureza","navalha","navegar","navio","neblina","nebuloso","negativa","negociar","negrito","nervoso","neta","neural","nevasca","nevoeiro","ninar","ninho","nitidez","nivelar","nobreza","noite","noiva","nomear","nominal","nordeste","nortear","notar","noticiar","noturno","novelo","novilho","novo","nublado","nudez","numeral","nupcial","nutrir","nuvem","obcecado","obedecer","objetivo","obrigado","obscuro","obstetra","obter","obturar","ocidente","ocioso","ocorrer","oculista","ocupado","ofegante","ofensiva","oferenda","oficina","ofuscado","ogiva","olaria","oleoso","olhar","oliveira","ombro","omelete","omisso","omitir","ondulado","oneroso","ontem","opcional","operador","oponente","oportuno","oposto","orar","orbitar","ordem","ordinal","orfanato","orgasmo","orgulho","oriental","origem","oriundo","orla","ortodoxo","orvalho","oscilar","ossada","osso","ostentar","otimismo","ousadia","outono","outubro","ouvido","ovelha","ovular","oxidar","oxigenar","pacato","paciente","pacote","pactuar","padaria","padrinho","pagar","pagode","painel","pairar","paisagem","palavra","palestra","palheta","palito","palmada","palpitar","pancada","panela","panfleto","panqueca","pantanal","papagaio","papelada","papiro","parafina","parcial","pardal","parede","partida","pasmo","passado","pastel","patamar","patente","patinar","patrono","paulada","pausar","peculiar","pedalar","pedestre","pediatra","pedra","pegada","peitoral","peixe","pele","pelicano","penca","pendurar","peneira","penhasco","pensador","pente","perceber","perfeito","pergunta","perito","permitir","perna","perplexo","persiana","pertence","peruca","pescado","pesquisa","pessoa","petiscar","piada","picado","piedade","pigmento","pilastra","pilhado","pilotar","pimenta","pincel","pinguim","pinha","pinote","pintar","pioneiro","pipoca","piquete","piranha","pires","pirueta","piscar","pistola","pitanga","pivete","planta","plaqueta","platina","plebeu","plumagem","pluvial","pneu","poda","poeira","poetisa","polegada","policiar","poluente","polvilho","pomar","pomba","ponderar","pontaria","populoso","porta","possuir","postal","pote","poupar","pouso","povoar","praia","prancha","prato","praxe","prece","predador","prefeito","premiar","prensar","preparar","presilha","pretexto","prevenir","prezar","primata","princesa","prisma","privado","processo","produto","profeta","proibido","projeto","prometer","propagar","prosa","protetor","provador","publicar","pudim","pular","pulmonar","pulseira","punhal","punir","pupilo","pureza","puxador","quadra","quantia","quarto","quase","quebrar","queda","queijo","quente","querido","quimono","quina","quiosque","rabanada","rabisco","rachar","racionar","radial","raiar","rainha","raio","raiva","rajada","ralado","ramal","ranger","ranhura","rapadura","rapel","rapidez","raposa","raquete","raridade","rasante","rascunho","rasgar","raspador","rasteira","rasurar","ratazana","ratoeira","realeza","reanimar","reaver","rebaixar","rebelde","rebolar","recado","recente","recheio","recibo","recordar","recrutar","recuar","rede","redimir","redonda","reduzida","reenvio","refinar","refletir","refogar","refresco","refugiar","regalia","regime","regra","reinado","reitor","rejeitar","relativo","remador","remendo","remorso","renovado","reparo","repelir","repleto","repolho","represa","repudiar","requerer","resenha","resfriar","resgatar","residir","resolver","respeito","ressaca","restante","resumir","retalho","reter","retirar","retomada","retratar","revelar","revisor","revolta","riacho","rica","rigidez","rigoroso","rimar","ringue","risada","risco","risonho","robalo","rochedo","rodada","rodeio","rodovia","roedor","roleta","romano","roncar","rosado","roseira","rosto","rota","roteiro","rotina","rotular","rouco","roupa","roxo","rubro","rugido","rugoso","ruivo","rumo","rupestre","russo","sabor","saciar","sacola","sacudir","sadio","safira","saga","sagrada","saibro","salada","saleiro","salgado","saliva","salpicar","salsicha","saltar","salvador","sambar","samurai","sanar","sanfona","sangue","sanidade","sapato","sarda","sargento","sarjeta","saturar","saudade","saxofone","sazonal","secar","secular","seda","sedento","sediado","sedoso","sedutor","segmento","segredo","segundo","seiva","seleto","selvagem","semanal","semente","senador","senhor","sensual","sentado","separado","sereia","seringa","serra","servo","setembro","setor","sigilo","silhueta","silicone","simetria","simpatia","simular","sinal","sincero","singular","sinopse","sintonia","sirene","siri","situado","soberano","sobra","socorro","sogro","soja","solda","soletrar","solteiro","sombrio","sonata","sondar","sonegar","sonhador","sono","soprano","soquete","sorrir","sorteio","sossego","sotaque","soterrar","sovado","sozinho","suavizar","subida","submerso","subsolo","subtrair","sucata","sucesso","suco","sudeste","sufixo","sugador","sugerir","sujeito","sulfato","sumir","suor","superior","suplicar","suposto","suprimir","surdina","surfista","surpresa","surreal","surtir","suspiro","sustento","tabela","tablete","tabuada","tacho","tagarela","talher","talo","talvez","tamanho","tamborim","tampa","tangente","tanto","tapar","tapioca","tardio","tarefa","tarja","tarraxa","tatuagem","taurino","taxativo","taxista","teatral","tecer","tecido","teclado","tedioso","teia","teimar","telefone","telhado","tempero","tenente","tensor","tentar","termal","terno","terreno","tese","tesoura","testado","teto","textura","texugo","tiara","tigela","tijolo","timbrar","timidez","tingido","tinteiro","tiragem","titular","toalha","tocha","tolerar","tolice","tomada","tomilho","tonel","tontura","topete","tora","torcido","torneio","torque","torrada","torto","tostar","touca","toupeira","toxina","trabalho","tracejar","tradutor","trafegar","trajeto","trama","trancar","trapo","traseiro","tratador","travar","treino","tremer","trepidar","trevo","triagem","tribo","triciclo","tridente","trilogia","trindade","triplo","triturar","triunfal","trocar","trombeta","trova","trunfo","truque","tubular","tucano","tudo","tulipa","tupi","turbo","turma","turquesa","tutelar","tutorial","uivar","umbigo","unha","unidade","uniforme","urologia","urso","urtiga","urubu","usado","usina","usufruir","vacina","vadiar","vagaroso","vaidoso","vala","valente","validade","valores","vantagem","vaqueiro","varanda","vareta","varrer","vascular","vasilha","vassoura","vazar","vazio","veado","vedar","vegetar","veicular","veleiro","velhice","veludo","vencedor","vendaval","venerar","ventre","verbal","verdade","vereador","vergonha","vermelho","verniz","versar","vertente","vespa","vestido","vetorial","viaduto","viagem","viajar","viatura","vibrador","videira","vidraria","viela","viga","vigente","vigiar","vigorar","vilarejo","vinco","vinheta","vinil","violeta","virada","virtude","visitar","visto","vitral","viveiro","vizinho","voador","voar","vogal","volante","voleibol","voltagem","volumoso","vontade","vulto","vuvuzela","xadrez","xarope","xeque","xeretar","xerife","xingar","zangado","zarpar","zebu","zelador","zombar","zoologia","zumbido"]')},5376:e=>{"use strict";e.exports=JSON.parse('["a\u0301baco","abdomen","abeja","abierto","abogado","abono","aborto","abrazo","abrir","abuelo","abuso","acabar","academia","acceso","accio\u0301n","aceite","acelga","acento","aceptar","a\u0301cido","aclarar","acne\u0301","acoger","acoso","activo","acto","actriz","actuar","acudir","acuerdo","acusar","adicto","admitir","adoptar","adorno","aduana","adulto","ae\u0301reo","afectar","aficio\u0301n","afinar","afirmar","a\u0301gil","agitar","agoni\u0301a","agosto","agotar","agregar","agrio","agua","agudo","a\u0301guila","aguja","ahogo","ahorro","aire","aislar","ajedrez","ajeno","ajuste","alacra\u0301n","alambre","alarma","alba","a\u0301lbum","alcalde","aldea","alegre","alejar","alerta","aleta","alfiler","alga","algodo\u0301n","aliado","aliento","alivio","alma","almeja","almi\u0301bar","altar","alteza","altivo","alto","altura","alumno","alzar","amable","amante","amapola","amargo","amasar","a\u0301mbar","a\u0301mbito","ameno","amigo","amistad","amor","amparo","amplio","ancho","anciano","ancla","andar","ande\u0301n","anemia","a\u0301ngulo","anillo","a\u0301nimo","ani\u0301s","anotar","antena","antiguo","antojo","anual","anular","anuncio","an\u0303adir","an\u0303ejo","an\u0303o","apagar","aparato","apetito","apio","aplicar","apodo","aporte","apoyo","aprender","aprobar","apuesta","apuro","arado","aran\u0303a","arar","a\u0301rbitro","a\u0301rbol","arbusto","archivo","arco","arder","ardilla","arduo","a\u0301rea","a\u0301rido","aries","armoni\u0301a","arne\u0301s","aroma","arpa","arpo\u0301n","arreglo","arroz","arruga","arte","artista","asa","asado","asalto","ascenso","asegurar","aseo","asesor","asiento","asilo","asistir","asno","asombro","a\u0301spero","astilla","astro","astuto","asumir","asunto","atajo","ataque","atar","atento","ateo","a\u0301tico","atleta","a\u0301tomo","atraer","atroz","atu\u0301n","audaz","audio","auge","aula","aumento","ausente","autor","aval","avance","avaro","ave","avellana","avena","avestruz","avio\u0301n","aviso","ayer","ayuda","ayuno","azafra\u0301n","azar","azote","azu\u0301car","azufre","azul","baba","babor","bache","bahi\u0301a","baile","bajar","balanza","balco\u0301n","balde","bambu\u0301","banco","banda","ban\u0303o","barba","barco","barniz","barro","ba\u0301scula","basto\u0301n","basura","batalla","bateri\u0301a","batir","batuta","bau\u0301l","bazar","bebe\u0301","bebida","bello","besar","beso","bestia","bicho","bien","bingo","blanco","bloque","blusa","boa","bobina","bobo","boca","bocina","boda","bodega","boina","bola","bolero","bolsa","bomba","bondad","bonito","bono","bonsa\u0301i","borde","borrar","bosque","bote","boti\u0301n","bo\u0301veda","bozal","bravo","brazo","brecha","breve","brillo","brinco","brisa","broca","broma","bronce","brote","bruja","brusco","bruto","buceo","bucle","bueno","buey","bufanda","bufo\u0301n","bu\u0301ho","buitre","bulto","burbuja","burla","burro","buscar","butaca","buzo\u0301n","caballo","cabeza","cabina","cabra","cacao","cada\u0301ver","cadena","caer","cafe\u0301","cai\u0301da","caima\u0301n","caja","cajo\u0301n","cal","calamar","calcio","caldo","calidad","calle","calma","calor","calvo","cama","cambio","camello","camino","campo","ca\u0301ncer","candil","canela","canguro","canica","canto","can\u0303a","can\u0303o\u0301n","caoba","caos","capaz","capita\u0301n","capote","captar","capucha","cara","carbo\u0301n","ca\u0301rcel","careta","carga","carin\u0303o","carne","carpeta","carro","carta","casa","casco","casero","caspa","castor","catorce","catre","caudal","causa","cazo","cebolla","ceder","cedro","celda","ce\u0301lebre","celoso","ce\u0301lula","cemento","ceniza","centro","cerca","cerdo","cereza","cero","cerrar","certeza","ce\u0301sped","cetro","chacal","chaleco","champu\u0301","chancla","chapa","charla","chico","chiste","chivo","choque","choza","chuleta","chupar","ciclo\u0301n","ciego","cielo","cien","cierto","cifra","cigarro","cima","cinco","cine","cinta","cipre\u0301s","circo","ciruela","cisne","cita","ciudad","clamor","clan","claro","clase","clave","cliente","clima","cli\u0301nica","cobre","coccio\u0301n","cochino","cocina","coco","co\u0301digo","codo","cofre","coger","cohete","coji\u0301n","cojo","cola","colcha","colegio","colgar","colina","collar","colmo","columna","combate","comer","comida","co\u0301modo","compra","conde","conejo","conga","conocer","consejo","contar","copa","copia","corazo\u0301n","corbata","corcho","cordo\u0301n","corona","correr","coser","cosmos","costa","cra\u0301neo","cra\u0301ter","crear","crecer","crei\u0301do","crema","cri\u0301a","crimen","cripta","crisis","cromo","cro\u0301nica","croqueta","crudo","cruz","cuadro","cuarto","cuatro","cubo","cubrir","cuchara","cuello","cuento","cuerda","cuesta","cueva","cuidar","culebra","culpa","culto","cumbre","cumplir","cuna","cuneta","cuota","cupo\u0301n","cu\u0301pula","curar","curioso","curso","curva","cutis","dama","danza","dar","dardo","da\u0301til","deber","de\u0301bil","de\u0301cada","decir","dedo","defensa","definir","dejar","delfi\u0301n","delgado","delito","demora","denso","dental","deporte","derecho","derrota","desayuno","deseo","desfile","desnudo","destino","desvi\u0301o","detalle","detener","deuda","di\u0301a","diablo","diadema","diamante","diana","diario","dibujo","dictar","diente","dieta","diez","difi\u0301cil","digno","dilema","diluir","dinero","directo","dirigir","disco","disen\u0303o","disfraz","diva","divino","doble","doce","dolor","domingo","don","donar","dorado","dormir","dorso","dos","dosis","drago\u0301n","droga","ducha","duda","duelo","duen\u0303o","dulce","du\u0301o","duque","durar","dureza","duro","e\u0301bano","ebrio","echar","eco","ecuador","edad","edicio\u0301n","edificio","editor","educar","efecto","eficaz","eje","ejemplo","elefante","elegir","elemento","elevar","elipse","e\u0301lite","elixir","elogio","eludir","embudo","emitir","emocio\u0301n","empate","empen\u0303o","empleo","empresa","enano","encargo","enchufe","enci\u0301a","enemigo","enero","enfado","enfermo","engan\u0303o","enigma","enlace","enorme","enredo","ensayo","ensen\u0303ar","entero","entrar","envase","envi\u0301o","e\u0301poca","equipo","erizo","escala","escena","escolar","escribir","escudo","esencia","esfera","esfuerzo","espada","espejo","espi\u0301a","esposa","espuma","esqui\u0301","estar","este","estilo","estufa","etapa","eterno","e\u0301tica","etnia","evadir","evaluar","evento","evitar","exacto","examen","exceso","excusa","exento","exigir","exilio","existir","e\u0301xito","experto","explicar","exponer","extremo","fa\u0301brica","fa\u0301bula","fachada","fa\u0301cil","factor","faena","faja","falda","fallo","falso","faltar","fama","familia","famoso","farao\u0301n","farmacia","farol","farsa","fase","fatiga","fauna","favor","fax","febrero","fecha","feliz","feo","feria","feroz","fe\u0301rtil","fervor","festi\u0301n","fiable","fianza","fiar","fibra","ficcio\u0301n","ficha","fideo","fiebre","fiel","fiera","fiesta","figura","fijar","fijo","fila","filete","filial","filtro","fin","finca","fingir","finito","firma","flaco","flauta","flecha","flor","flota","fluir","flujo","flu\u0301or","fobia","foca","fogata","fogo\u0301n","folio","folleto","fondo","forma","forro","fortuna","forzar","fosa","foto","fracaso","fra\u0301gil","franja","frase","fraude","frei\u0301r","freno","fresa","fri\u0301o","frito","fruta","fuego","fuente","fuerza","fuga","fumar","funcio\u0301n","funda","furgo\u0301n","furia","fusil","fu\u0301tbol","futuro","gacela","gafas","gaita","gajo","gala","galeri\u0301a","gallo","gamba","ganar","gancho","ganga","ganso","garaje","garza","gasolina","gastar","gato","gavila\u0301n","gemelo","gemir","gen","ge\u0301nero","genio","gente","geranio","gerente","germen","gesto","gigante","gimnasio","girar","giro","glaciar","globo","gloria","gol","golfo","goloso","golpe","goma","gordo","gorila","gorra","gota","goteo","gozar","grada","gra\u0301fico","grano","grasa","gratis","grave","grieta","grillo","gripe","gris","grito","grosor","gru\u0301a","grueso","grumo","grupo","guante","guapo","guardia","guerra","gui\u0301a","guin\u0303o","guion","guiso","guitarra","gusano","gustar","haber","ha\u0301bil","hablar","hacer","hacha","hada","hallar","hamaca","harina","haz","hazan\u0303a","hebilla","hebra","hecho","helado","helio","hembra","herir","hermano","he\u0301roe","hervir","hielo","hierro","hi\u0301gado","higiene","hijo","himno","historia","hocico","hogar","hoguera","hoja","hombre","hongo","honor","honra","hora","hormiga","horno","hostil","hoyo","hueco","huelga","huerta","hueso","huevo","huida","huir","humano","hu\u0301medo","humilde","humo","hundir","huraca\u0301n","hurto","icono","ideal","idioma","i\u0301dolo","iglesia","iglu\u0301","igual","ilegal","ilusio\u0301n","imagen","ima\u0301n","imitar","impar","imperio","imponer","impulso","incapaz","i\u0301ndice","inerte","infiel","informe","ingenio","inicio","inmenso","inmune","innato","insecto","instante","intere\u0301s","i\u0301ntimo","intuir","inu\u0301til","invierno","ira","iris","ironi\u0301a","isla","islote","jabali\u0301","jabo\u0301n","jamo\u0301n","jarabe","jardi\u0301n","jarra","jaula","jazmi\u0301n","jefe","jeringa","jinete","jornada","joroba","joven","joya","juerga","jueves","juez","jugador","jugo","juguete","juicio","junco","jungla","junio","juntar","ju\u0301piter","jurar","justo","juvenil","juzgar","kilo","koala","labio","lacio","lacra","lado","ladro\u0301n","lagarto","la\u0301grima","laguna","laico","lamer","la\u0301mina","la\u0301mpara","lana","lancha","langosta","lanza","la\u0301piz","largo","larva","la\u0301stima","lata","la\u0301tex","latir","laurel","lavar","lazo","leal","leccio\u0301n","leche","lector","leer","legio\u0301n","legumbre","lejano","lengua","lento","len\u0303a","leo\u0301n","leopardo","lesio\u0301n","letal","letra","leve","leyenda","libertad","libro","licor","li\u0301der","lidiar","lienzo","liga","ligero","lima","li\u0301mite","limo\u0301n","limpio","lince","lindo","li\u0301nea","lingote","lino","linterna","li\u0301quido","liso","lista","litera","litio","litro","llaga","llama","llanto","llave","llegar","llenar","llevar","llorar","llover","lluvia","lobo","locio\u0301n","loco","locura","lo\u0301gica","logro","lombriz","lomo","lonja","lote","lucha","lucir","lugar","lujo","luna","lunes","lupa","lustro","luto","luz","maceta","macho","madera","madre","maduro","maestro","mafia","magia","mago","mai\u0301z","maldad","maleta","malla","malo","mama\u0301","mambo","mamut","manco","mando","manejar","manga","maniqui\u0301","manjar","mano","manso","manta","man\u0303ana","mapa","ma\u0301quina","mar","marco","marea","marfil","margen","marido","ma\u0301rmol","marro\u0301n","martes","marzo","masa","ma\u0301scara","masivo","matar","materia","matiz","matriz","ma\u0301ximo","mayor","mazorca","mecha","medalla","medio","me\u0301dula","mejilla","mejor","melena","melo\u0301n","memoria","menor","mensaje","mente","menu\u0301","mercado","merengue","me\u0301rito","mes","meso\u0301n","meta","meter","me\u0301todo","metro","mezcla","miedo","miel","miembro","miga","mil","milagro","militar","millo\u0301n","mimo","mina","minero","mi\u0301nimo","minuto","miope","mirar","misa","miseria","misil","mismo","mitad","mito","mochila","mocio\u0301n","moda","modelo","moho","mojar","molde","moler","molino","momento","momia","monarca","moneda","monja","monto","mon\u0303o","morada","morder","moreno","morir","morro","morsa","mortal","mosca","mostrar","motivo","mover","mo\u0301vil","mozo","mucho","mudar","mueble","muela","muerte","muestra","mugre","mujer","mula","muleta","multa","mundo","mun\u0303eca","mural","muro","mu\u0301sculo","museo","musgo","mu\u0301sica","muslo","na\u0301car","nacio\u0301n","nadar","naipe","naranja","nariz","narrar","nasal","natal","nativo","natural","na\u0301usea","naval","nave","navidad","necio","ne\u0301ctar","negar","negocio","negro","neo\u0301n","nervio","neto","neutro","nevar","nevera","nicho","nido","niebla","nieto","nin\u0303ez","nin\u0303o","ni\u0301tido","nivel","nobleza","noche","no\u0301mina","noria","norma","norte","nota","noticia","novato","novela","novio","nube","nuca","nu\u0301cleo","nudillo","nudo","nuera","nueve","nuez","nulo","nu\u0301mero","nutria","oasis","obeso","obispo","objeto","obra","obrero","observar","obtener","obvio","oca","ocaso","oce\u0301ano","ochenta","ocho","ocio","ocre","octavo","octubre","oculto","ocupar","ocurrir","odiar","odio","odisea","oeste","ofensa","oferta","oficio","ofrecer","ogro","oi\u0301do","oi\u0301r","ojo","ola","oleada","olfato","olivo","olla","olmo","olor","olvido","ombligo","onda","onza","opaco","opcio\u0301n","o\u0301pera","opinar","oponer","optar","o\u0301ptica","opuesto","oracio\u0301n","orador","oral","o\u0301rbita","orca","orden","oreja","o\u0301rgano","orgi\u0301a","orgullo","oriente","origen","orilla","oro","orquesta","oruga","osadi\u0301a","oscuro","osezno","oso","ostra","oton\u0303o","otro","oveja","o\u0301vulo","o\u0301xido","oxi\u0301geno","oyente","ozono","pacto","padre","paella","pa\u0301gina","pago","pai\u0301s","pa\u0301jaro","palabra","palco","paleta","pa\u0301lido","palma","paloma","palpar","pan","panal","pa\u0301nico","pantera","pan\u0303uelo","papa\u0301","papel","papilla","paquete","parar","parcela","pared","parir","paro","pa\u0301rpado","parque","pa\u0301rrafo","parte","pasar","paseo","pasio\u0301n","paso","pasta","pata","patio","patria","pausa","pauta","pavo","payaso","peato\u0301n","pecado","pecera","pecho","pedal","pedir","pegar","peine","pelar","peldan\u0303o","pelea","peligro","pellejo","pelo","peluca","pena","pensar","pen\u0303o\u0301n","peo\u0301n","peor","pepino","pequen\u0303o","pera","percha","perder","pereza","perfil","perico","perla","permiso","perro","persona","pesa","pesca","pe\u0301simo","pestan\u0303a","pe\u0301talo","petro\u0301leo","pez","pezun\u0303a","picar","picho\u0301n","pie","piedra","pierna","pieza","pijama","pilar","piloto","pimienta","pino","pintor","pinza","pin\u0303a","piojo","pipa","pirata","pisar","piscina","piso","pista","pito\u0301n","pizca","placa","plan","plata","playa","plaza","pleito","pleno","plomo","pluma","plural","pobre","poco","poder","podio","poema","poesi\u0301a","poeta","polen","polici\u0301a","pollo","polvo","pomada","pomelo","pomo","pompa","poner","porcio\u0301n","portal","posada","poseer","posible","poste","potencia","potro","pozo","prado","precoz","pregunta","premio","prensa","preso","previo","primo","pri\u0301ncipe","prisio\u0301n","privar","proa","probar","proceso","producto","proeza","profesor","programa","prole","promesa","pronto","propio","pro\u0301ximo","prueba","pu\u0301blico","puchero","pudor","pueblo","puerta","puesto","pulga","pulir","pulmo\u0301n","pulpo","pulso","puma","punto","pun\u0303al","pun\u0303o","pupa","pupila","pure\u0301","quedar","queja","quemar","querer","queso","quieto","qui\u0301mica","quince","quitar","ra\u0301bano","rabia","rabo","racio\u0301n","radical","rai\u0301z","rama","rampa","rancho","rango","rapaz","ra\u0301pido","rapto","rasgo","raspa","rato","rayo","raza","razo\u0301n","reaccio\u0301n","realidad","reban\u0303o","rebote","recaer","receta","rechazo","recoger","recreo","recto","recurso","red","redondo","reducir","reflejo","reforma","refra\u0301n","refugio","regalo","regir","regla","regreso","rehe\u0301n","reino","rei\u0301r","reja","relato","relevo","relieve","relleno","reloj","remar","remedio","remo","rencor","rendir","renta","reparto","repetir","reposo","reptil","res","rescate","resina","respeto","resto","resumen","retiro","retorno","retrato","reunir","reve\u0301s","revista","rey","rezar","rico","riego","rienda","riesgo","rifa","ri\u0301gido","rigor","rinco\u0301n","rin\u0303o\u0301n","ri\u0301o","riqueza","risa","ritmo","rito","rizo","roble","roce","rociar","rodar","rodeo","rodilla","roer","rojizo","rojo","romero","romper","ron","ronco","ronda","ropa","ropero","rosa","rosca","rostro","rotar","rubi\u0301","rubor","rudo","rueda","rugir","ruido","ruina","ruleta","rulo","rumbo","rumor","ruptura","ruta","rutina","sa\u0301bado","saber","sabio","sable","sacar","sagaz","sagrado","sala","saldo","salero","salir","salmo\u0301n","salo\u0301n","salsa","salto","salud","salvar","samba","sancio\u0301n","sandi\u0301a","sanear","sangre","sanidad","sano","santo","sapo","saque","sardina","sarte\u0301n","sastre","sata\u0301n","sauna","saxofo\u0301n","seccio\u0301n","seco","secreto","secta","sed","seguir","seis","sello","selva","semana","semilla","senda","sensor","sen\u0303al","sen\u0303or","separar","sepia","sequi\u0301a","ser","serie","sermo\u0301n","servir","sesenta","sesio\u0301n","seta","setenta","severo","sexo","sexto","sidra","siesta","siete","siglo","signo","si\u0301laba","silbar","silencio","silla","si\u0301mbolo","simio","sirena","sistema","sitio","situar","sobre","socio","sodio","sol","solapa","soldado","soledad","so\u0301lido","soltar","solucio\u0301n","sombra","sondeo","sonido","sonoro","sonrisa","sopa","soplar","soporte","sordo","sorpresa","sorteo","soste\u0301n","so\u0301tano","suave","subir","suceso","sudor","suegra","suelo","suen\u0303o","suerte","sufrir","sujeto","sulta\u0301n","sumar","superar","suplir","suponer","supremo","sur","surco","suren\u0303o","surgir","susto","sutil","tabaco","tabique","tabla","tabu\u0301","taco","tacto","tajo","talar","talco","talento","talla","talo\u0301n","taman\u0303o","tambor","tango","tanque","tapa","tapete","tapia","tapo\u0301n","taquilla","tarde","tarea","tarifa","tarjeta","tarot","tarro","tarta","tatuaje","tauro","taza","tazo\u0301n","teatro","techo","tecla","te\u0301cnica","tejado","tejer","tejido","tela","tele\u0301fono","tema","temor","templo","tenaz","tender","tener","tenis","tenso","teori\u0301a","terapia","terco","te\u0301rmino","ternura","terror","tesis","tesoro","testigo","tetera","texto","tez","tibio","tiburo\u0301n","tiempo","tienda","tierra","tieso","tigre","tijera","tilde","timbre","ti\u0301mido","timo","tinta","ti\u0301o","ti\u0301pico","tipo","tira","tiro\u0301n","tita\u0301n","ti\u0301tere","ti\u0301tulo","tiza","toalla","tobillo","tocar","tocino","todo","toga","toldo","tomar","tono","tonto","topar","tope","toque","to\u0301rax","torero","tormenta","torneo","toro","torpedo","torre","torso","tortuga","tos","tosco","toser","to\u0301xico","trabajo","tractor","traer","tra\u0301fico","trago","traje","tramo","trance","trato","trauma","trazar","tre\u0301bol","tregua","treinta","tren","trepar","tres","tribu","trigo","tripa","triste","triunfo","trofeo","trompa","tronco","tropa","trote","trozo","truco","trueno","trufa","tuberi\u0301a","tubo","tuerto","tumba","tumor","tu\u0301nel","tu\u0301nica","turbina","turismo","turno","tutor","ubicar","u\u0301lcera","umbral","unidad","unir","universo","uno","untar","un\u0303a","urbano","urbe","urgente","urna","usar","usuario","u\u0301til","utopi\u0301a","uva","vaca","vaci\u0301o","vacuna","vagar","vago","vaina","vajilla","vale","va\u0301lido","valle","valor","va\u0301lvula","vampiro","vara","variar","varo\u0301n","vaso","vecino","vector","vehi\u0301culo","veinte","vejez","vela","velero","veloz","vena","vencer","venda","veneno","vengar","venir","venta","venus","ver","verano","verbo","verde","vereda","verja","verso","verter","vi\u0301a","viaje","vibrar","vicio","vi\u0301ctima","vida","vi\u0301deo","vidrio","viejo","viernes","vigor","vil","villa","vinagre","vino","vin\u0303edo","violi\u0301n","viral","virgo","virtud","visor","vi\u0301spera","vista","vitamina","viudo","vivaz","vivero","vivir","vivo","volca\u0301n","volumen","volver","voraz","votar","voto","voz","vuelo","vulgar","yacer","yate","yegua","yema","yerno","yeso","yodo","yoga","yogur","zafiro","zanja","zapato","zarza","zona","zorro","zumo","zurdo"]')},1636:e=>{"use strict";e.exports={rE:"6.5.4"}}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var o=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}r.m=e,r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},(()=>{var e,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;r.t=function(n,i){if(1&i&&(n=this(n)),8&i)return n;if("object"===typeof n&&n){if(4&i&&n.__esModule)return n;if(16&i&&"function"===typeof n.then)return n}var o=Object.create(null);r.r(o);var a={};e=e||[null,t({}),t([]),t(t)];for(var s=2&i&&n;"object"==typeof s&&!~e.indexOf(s);s=t(s))Object.getOwnPropertyNames(s).forEach((e=>a[e]=()=>n[e]));return a.default=()=>n,r.d(o,a),o}})(),r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,n)=>(r.f[n](e,t),t)),[])),r.u=e=>"static/js/"+{42:"reactPlayerTwitch",173:"reactPlayerVimeo",328:"reactPlayerDailyMotion",340:"reactPlayerWistia",353:"reactPlayerPreview",392:"reactPlayerVidyard",446:"reactPlayerYouTube",458:"reactPlayerFilePlayer",463:"reactPlayerKaltura",570:"reactPlayerMixcloud",627:"reactPlayerStreamable",723:"reactPlayerMux",887:"reactPlayerFacebook",979:"reactPlayerSoundCloud"}[e]+"."+{42:"20a64de5",173:"e403c288",328:"141330e7",340:"e46ee45f",353:"ae77c75e",392:"c13e88aa",446:"de047225",458:"82c993af",463:"1c0fb203",570:"f6bc528b",627:"962271bf",723:"244822da",887:"5311619d",979:"fca705a3"}[e]+".chunk.js",r.miniCssF=e=>{},r.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={},t="umami:";r.l=(n,i,o,a)=>{if(e[n])e[n].push(i);else{var s,c;if(void 0!==o)for(var l=document.getElementsByTagName("script"),u=0;u{s.onerror=s.onload=null,clearTimeout(f);var i=e[n];if(delete e[n],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(r))),t)return t(r)},f=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}}})(),r.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="./",(()=>{var e={792:0};r.f.j=(t,n)=>{var i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{var o=new Promise(((r,n)=>i=e[t]=[r,n]));n.push(i[2]=o);var a=r.p+r.u(t),s=new Error;r.l(a,(n=>{if(r.o(e,t)&&(0!==(i=e[t])&&(e[t]=void 0),i)){var o=n&&("load"===n.type?"missing":n.type),a=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,i[1](s)}}),"chunk-"+t,t)}};var t=(t,n)=>{var i,o,[a,s,c]=n,l=0;if(a.some((t=>0!==e[t]))){for(i in s)r.o(s,i)&&(r.m[i]=s[i]);if(c)c(r)}for(t&&t(n);l{"use strict";var e={};r.r(e),r.d(e,{hasBrowserEnv:()=>xB,hasStandardBrowserEnv:()=>_B,hasStandardBrowserWebWorkerEnv:()=>SB});var t={};r.r(t),r.d(t,{hasBrowserEnv:()=>y2,hasStandardBrowserEnv:()=>b2,hasStandardBrowserWebWorkerEnv:()=>w2});var n={};r.r(n),r.d(n,{Decoder:()=>k7,Encoder:()=>x7,PacketType:()=>w7,protocol:()=>b7});var i=r(4082),o=r.t(i,2),a=r(8236);const s=(0,i.createContext)(null),c={didCatch:!1,error:null};class l extends i.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=c}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(null!==e){for(var t,r,n=arguments.length,i=new Array(n),o=0;o0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e.length!==t.length||e.some(((e,r)=>!Object.is(e,t[r])))}(e.resetKeys,n)&&(null===(i=(o=this.props).onReset)||void 0===i||i.call(o,{next:n,prev:e.resetKeys,reason:"keys"}),this.setState(c))}render(){const{children:e,fallbackRender:t,FallbackComponent:r,fallback:n}=this.props,{didCatch:o,error:a}=this.state;let c=e;if(o){const e={error:a,resetErrorBoundary:this.resetErrorBoundary};if("function"===typeof t)c=t(e);else if(r)c=(0,i.createElement)(r,e);else{if(null!==n&&!(0,i.isValidElement)(n))throw a;c=n}}return(0,i.createElement)(s.Provider,{value:{didCatch:o,error:a,resetErrorBoundary:this.resetErrorBoundary}},c)}}function u(e){return u="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function d(e,t){for(var r=0;re.filter(Boolean).join(" ");function y(e){const t=typeof e;return null!=e&&("object"===t||"function"===t)&&!Array.isArray(e)}var b=e=>{const{condition:t,message:r}=e};function w(e,...t){return x(e)?e(...t):e}var x=e=>"function"===typeof e,_=e=>e?"":void 0,k=e=>!!e||void 0;function S(...e){return function(t){e.some((e=>(null==e||e(t),null==t?void 0:t.defaultPrevented)))}}function E(...e){return function(t){e.forEach((e=>{null==e||e(t)}))}}var A=r(2844),P=e=>"string"===typeof e?e.replace(/!(important)?$/,"").trim():e,O=(e,t)=>r=>{const n=String(t),i=(e=>/!(important)?$/.test(e))(n),o=P(n),a=e?`${e}.${o}`:o;let s=y(r.__cssMap)&&a in r.__cssMap?r.__cssMap[a].varRef:t;return s=P(s),i?`${s} !important`:s};function T(e){const{scale:t,transform:r,compose:n}=e;return(e,i)=>{var o;const a=O(t,e)(i);let s=null!=(o=null==r?void 0:r(a,i))?o:a;return n&&(s=n(s,i)),s}}var C=(...e)=>t=>e.reduce(((e,t)=>t(e)),t);function j(e,t){return r=>{const n={property:r,scale:e};return n.transform=T({scale:e,transform:t}),n}}var R=({rtl:e,ltr:t})=>r=>"rtl"===r.direction?e:t;var I=["rotate(var(--chakra-rotate, 0))","scaleX(var(--chakra-scale-x, 1))","scaleY(var(--chakra-scale-y, 1))","skewX(var(--chakra-skew-x, 0))","skewY(var(--chakra-skew-y, 0))"];var M={"--chakra-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-sepia":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-drop-shadow":"var(--chakra-empty,/*!*/ /*!*/)",filter:["var(--chakra-blur)","var(--chakra-brightness)","var(--chakra-contrast)","var(--chakra-grayscale)","var(--chakra-hue-rotate)","var(--chakra-invert)","var(--chakra-saturate)","var(--chakra-sepia)","var(--chakra-drop-shadow)"].join(" ")},L={backdropFilter:["var(--chakra-backdrop-blur)","var(--chakra-backdrop-brightness)","var(--chakra-backdrop-contrast)","var(--chakra-backdrop-grayscale)","var(--chakra-backdrop-hue-rotate)","var(--chakra-backdrop-invert)","var(--chakra-backdrop-opacity)","var(--chakra-backdrop-saturate)","var(--chakra-backdrop-sepia)"].join(" "),"--chakra-backdrop-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-opacity":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-sepia":"var(--chakra-empty,/*!*/ /*!*/)"};var N={"row-reverse":{space:"--chakra-space-x-reverse",divide:"--chakra-divide-x-reverse"},"column-reverse":{space:"--chakra-space-y-reverse",divide:"--chakra-divide-y-reverse"}},D={"to-t":"to top","to-tr":"to top right","to-r":"to right","to-br":"to bottom right","to-b":"to bottom","to-bl":"to bottom left","to-l":"to left","to-tl":"to top left"},z=new Set(Object.values(D)),B=new Set(["none","-moz-initial","inherit","initial","revert","unset"]),F=e=>e.trim();var U=e=>"string"===typeof e&&e.includes("(")&&e.includes(")");var $=e=>t=>`${e}(${t})`,H={filter:e=>"auto"!==e?e:M,backdropFilter:e=>"auto"!==e?e:L,ring:e=>function(e){return{"--chakra-ring-offset-shadow":"var(--chakra-ring-inset) 0 0 0 var(--chakra-ring-offset-width) var(--chakra-ring-offset-color)","--chakra-ring-shadow":"var(--chakra-ring-inset) 0 0 0 calc(var(--chakra-ring-width) + var(--chakra-ring-offset-width)) var(--chakra-ring-color)","--chakra-ring-width":e,boxShadow:["var(--chakra-ring-offset-shadow)","var(--chakra-ring-shadow)","var(--chakra-shadow, 0 0 #0000)"].join(", ")}}(H.px(e)),bgClip:e=>"text"===e?{color:"transparent",backgroundClip:"text"}:{backgroundClip:e},transform:e=>"auto"===e?["translateX(var(--chakra-translate-x, 0))","translateY(var(--chakra-translate-y, 0))",...I].join(" "):"auto-gpu"===e?["translate3d(var(--chakra-translate-x, 0), var(--chakra-translate-y, 0), 0)",...I].join(" "):e,vh:e=>"$100vh"===e?"var(--chakra-vh)":e,px(e){if(null==e)return e;const{unitless:t}=(e=>{const t=parseFloat(e.toString()),r=e.toString().replace(String(t),"");return{unitless:!r,value:t,unit:r}})(e);return t||"number"===typeof e?`${e}px`:e},fraction:e=>"number"!==typeof e||e>1?e:100*e+"%",float:(e,t)=>"rtl"===t.direction?{left:"right",right:"left"}[e]:e,degree(e){if(function(e){return/^var\(--.+\)$/.test(e)}(e)||null==e)return e;const t="string"===typeof e&&!e.endsWith("deg");return"number"===typeof e||t?`${e}deg`:e},gradient:(e,t)=>function(e,t){if(null==e||B.has(e))return e;if(!U(e)&&!B.has(e))return`url('${e}')`;const r=/(^[a-z-A-Z]+)\((.*)\)/g.exec(e),n=null==r?void 0:r[1],i=null==r?void 0:r[2];if(!n||!i)return e;const o=n.includes("-gradient")?n:`${n}-gradient`,[a,...s]=i.split(",").map(F).filter(Boolean);if(0===(null==s?void 0:s.length))return e;const c=a in D?D[a]:a;return s.unshift(c),`${o}(${s.map((e=>{if(z.has(e))return e;const r=e.indexOf(" "),[n,i]=-1!==r?[e.substr(0,r),e.substr(r+1)]:[e],o=U(i)?i:i&&i.split(" "),a=`colors.${n}`,s=a in t.__cssMap?t.__cssMap[a].varRef:n;return o?[s,...Array.isArray(o)?o:[o]].join(" "):s})).join(", ")})`}(e,null!=t?t:{}),blur:$("blur"),opacity:$("opacity"),brightness:$("brightness"),contrast:$("contrast"),dropShadow:$("drop-shadow"),grayscale:$("grayscale"),hueRotate:e=>$("hue-rotate")(H.degree(e)),invert:$("invert"),saturate:$("saturate"),sepia:$("sepia"),bgImage(e){if(null==e)return e;return U(e)||B.has(e)?e:`url(${e})`},outline(e){const t="0"===String(e)||"none"===String(e);return null!==e&&t?{outline:"2px solid transparent",outlineOffset:"2px"}:{outline:e}},flexDirection(e){var t;const{space:r,divide:n}=null!=(t=N[e])?t:{},i={flexDirection:e};return r&&(i[r]=1),n&&(i[n]=1),i}},V={borderWidths:j("borderWidths"),borderStyles:j("borderStyles"),colors:j("colors"),borders:j("borders"),gradients:j("gradients",H.gradient),radii:j("radii",H.px),space:j("space",C(H.vh,H.px)),spaceT:j("space",C(H.vh,H.px)),degreeT:e=>({property:e,transform:H.degree}),prop:(e,t,r)=>({property:e,scale:t,...t&&{transform:T({scale:t,transform:r})}}),propT:(e,t)=>({property:e,transform:t}),sizes:j("sizes",C(H.vh,H.px)),sizesT:j("sizes",C(H.vh,H.fraction)),shadows:j("shadows"),logical:function(e){const{property:t,scale:r,transform:n}=e;return{scale:r,property:R(t),transform:r?T({scale:r,compose:n}):n}},blur:j("blur",H.blur)},q={background:V.colors("background"),backgroundColor:V.colors("backgroundColor"),backgroundImage:V.gradients("backgroundImage"),backgroundSize:!0,backgroundPosition:!0,backgroundRepeat:!0,backgroundAttachment:!0,backgroundClip:{transform:H.bgClip},bgSize:V.prop("backgroundSize"),bgPosition:V.prop("backgroundPosition"),bg:V.colors("background"),bgColor:V.colors("backgroundColor"),bgPos:V.prop("backgroundPosition"),bgRepeat:V.prop("backgroundRepeat"),bgAttachment:V.prop("backgroundAttachment"),bgGradient:V.gradients("backgroundImage"),bgClip:{transform:H.bgClip}};Object.assign(q,{bgImage:q.backgroundImage,bgImg:q.backgroundImage});var K={border:V.borders("border"),borderWidth:V.borderWidths("borderWidth"),borderStyle:V.borderStyles("borderStyle"),borderColor:V.colors("borderColor"),borderRadius:V.radii("borderRadius"),borderTop:V.borders("borderTop"),borderBlockStart:V.borders("borderBlockStart"),borderTopLeftRadius:V.radii("borderTopLeftRadius"),borderStartStartRadius:V.logical({scale:"radii",property:{ltr:"borderTopLeftRadius",rtl:"borderTopRightRadius"}}),borderEndStartRadius:V.logical({scale:"radii",property:{ltr:"borderBottomLeftRadius",rtl:"borderBottomRightRadius"}}),borderTopRightRadius:V.radii("borderTopRightRadius"),borderStartEndRadius:V.logical({scale:"radii",property:{ltr:"borderTopRightRadius",rtl:"borderTopLeftRadius"}}),borderEndEndRadius:V.logical({scale:"radii",property:{ltr:"borderBottomRightRadius",rtl:"borderBottomLeftRadius"}}),borderRight:V.borders("borderRight"),borderInlineEnd:V.borders("borderInlineEnd"),borderBottom:V.borders("borderBottom"),borderBlockEnd:V.borders("borderBlockEnd"),borderBottomLeftRadius:V.radii("borderBottomLeftRadius"),borderBottomRightRadius:V.radii("borderBottomRightRadius"),borderLeft:V.borders("borderLeft"),borderInlineStart:{property:"borderInlineStart",scale:"borders"},borderInlineStartRadius:V.logical({scale:"radii",property:{ltr:["borderTopLeftRadius","borderBottomLeftRadius"],rtl:["borderTopRightRadius","borderBottomRightRadius"]}}),borderInlineEndRadius:V.logical({scale:"radii",property:{ltr:["borderTopRightRadius","borderBottomRightRadius"],rtl:["borderTopLeftRadius","borderBottomLeftRadius"]}}),borderX:V.borders(["borderLeft","borderRight"]),borderInline:V.borders("borderInline"),borderY:V.borders(["borderTop","borderBottom"]),borderBlock:V.borders("borderBlock"),borderTopWidth:V.borderWidths("borderTopWidth"),borderBlockStartWidth:V.borderWidths("borderBlockStartWidth"),borderTopColor:V.colors("borderTopColor"),borderBlockStartColor:V.colors("borderBlockStartColor"),borderTopStyle:V.borderStyles("borderTopStyle"),borderBlockStartStyle:V.borderStyles("borderBlockStartStyle"),borderBottomWidth:V.borderWidths("borderBottomWidth"),borderBlockEndWidth:V.borderWidths("borderBlockEndWidth"),borderBottomColor:V.colors("borderBottomColor"),borderBlockEndColor:V.colors("borderBlockEndColor"),borderBottomStyle:V.borderStyles("borderBottomStyle"),borderBlockEndStyle:V.borderStyles("borderBlockEndStyle"),borderLeftWidth:V.borderWidths("borderLeftWidth"),borderInlineStartWidth:V.borderWidths("borderInlineStartWidth"),borderLeftColor:V.colors("borderLeftColor"),borderInlineStartColor:V.colors("borderInlineStartColor"),borderLeftStyle:V.borderStyles("borderLeftStyle"),borderInlineStartStyle:V.borderStyles("borderInlineStartStyle"),borderRightWidth:V.borderWidths("borderRightWidth"),borderInlineEndWidth:V.borderWidths("borderInlineEndWidth"),borderRightColor:V.colors("borderRightColor"),borderInlineEndColor:V.colors("borderInlineEndColor"),borderRightStyle:V.borderStyles("borderRightStyle"),borderInlineEndStyle:V.borderStyles("borderInlineEndStyle"),borderTopRadius:V.radii(["borderTopLeftRadius","borderTopRightRadius"]),borderBottomRadius:V.radii(["borderBottomLeftRadius","borderBottomRightRadius"]),borderLeftRadius:V.radii(["borderTopLeftRadius","borderBottomLeftRadius"]),borderRightRadius:V.radii(["borderTopRightRadius","borderBottomRightRadius"])};Object.assign(K,{rounded:K.borderRadius,roundedTop:K.borderTopRadius,roundedTopLeft:K.borderTopLeftRadius,roundedTopRight:K.borderTopRightRadius,roundedTopStart:K.borderStartStartRadius,roundedTopEnd:K.borderStartEndRadius,roundedBottom:K.borderBottomRadius,roundedBottomLeft:K.borderBottomLeftRadius,roundedBottomRight:K.borderBottomRightRadius,roundedBottomStart:K.borderEndStartRadius,roundedBottomEnd:K.borderEndEndRadius,roundedLeft:K.borderLeftRadius,roundedRight:K.borderRightRadius,roundedStart:K.borderInlineStartRadius,roundedEnd:K.borderInlineEndRadius,borderStart:K.borderInlineStart,borderEnd:K.borderInlineEnd,borderTopStartRadius:K.borderStartStartRadius,borderTopEndRadius:K.borderStartEndRadius,borderBottomStartRadius:K.borderEndStartRadius,borderBottomEndRadius:K.borderEndEndRadius,borderStartRadius:K.borderInlineStartRadius,borderEndRadius:K.borderInlineEndRadius,borderStartWidth:K.borderInlineStartWidth,borderEndWidth:K.borderInlineEndWidth,borderStartColor:K.borderInlineStartColor,borderEndColor:K.borderInlineEndColor,borderStartStyle:K.borderInlineStartStyle,borderEndStyle:K.borderInlineEndStyle});var W={color:V.colors("color"),textColor:V.colors("color"),fill:V.colors("fill"),stroke:V.colors("stroke")},G={boxShadow:V.shadows("boxShadow"),mixBlendMode:!0,blendMode:V.prop("mixBlendMode"),backgroundBlendMode:!0,bgBlendMode:V.prop("backgroundBlendMode"),opacity:!0};Object.assign(G,{shadow:G.boxShadow});var Z={filter:{transform:H.filter},blur:V.blur("--chakra-blur"),brightness:V.propT("--chakra-brightness",H.brightness),contrast:V.propT("--chakra-contrast",H.contrast),hueRotate:V.propT("--chakra-hue-rotate",H.hueRotate),invert:V.propT("--chakra-invert",H.invert),saturate:V.propT("--chakra-saturate",H.saturate),dropShadow:V.propT("--chakra-drop-shadow",H.dropShadow),backdropFilter:{transform:H.backdropFilter},backdropBlur:V.blur("--chakra-backdrop-blur"),backdropBrightness:V.propT("--chakra-backdrop-brightness",H.brightness),backdropContrast:V.propT("--chakra-backdrop-contrast",H.contrast),backdropHueRotate:V.propT("--chakra-backdrop-hue-rotate",H.hueRotate),backdropInvert:V.propT("--chakra-backdrop-invert",H.invert),backdropSaturate:V.propT("--chakra-backdrop-saturate",H.saturate)},Y={alignItems:!0,alignContent:!0,justifyItems:!0,justifyContent:!0,flexWrap:!0,flexDirection:{transform:H.flexDirection},flex:!0,flexFlow:!0,flexGrow:!0,flexShrink:!0,flexBasis:V.sizes("flexBasis"),justifySelf:!0,alignSelf:!0,order:!0,placeItems:!0,placeContent:!0,placeSelf:!0,gap:V.space("gap"),rowGap:V.space("rowGap"),columnGap:V.space("columnGap")};Object.assign(Y,{flexDir:Y.flexDirection});var X={gridGap:V.space("gridGap"),gridColumnGap:V.space("gridColumnGap"),gridRowGap:V.space("gridRowGap"),gridColumn:!0,gridRow:!0,gridAutoFlow:!0,gridAutoColumns:!0,gridColumnStart:!0,gridColumnEnd:!0,gridRowStart:!0,gridRowEnd:!0,gridAutoRows:!0,gridTemplate:!0,gridTemplateColumns:!0,gridTemplateRows:!0,gridTemplateAreas:!0,gridArea:!0},J={appearance:!0,cursor:!0,resize:!0,userSelect:!0,pointerEvents:!0,outline:{transform:H.outline},outlineOffset:!0,outlineColor:V.colors("outlineColor")},Q={width:V.sizesT("width"),inlineSize:V.sizesT("inlineSize"),height:V.sizes("height"),blockSize:V.sizes("blockSize"),boxSize:V.sizes(["width","height"]),minWidth:V.sizes("minWidth"),minInlineSize:V.sizes("minInlineSize"),minHeight:V.sizes("minHeight"),minBlockSize:V.sizes("minBlockSize"),maxWidth:V.sizes("maxWidth"),maxInlineSize:V.sizes("maxInlineSize"),maxHeight:V.sizes("maxHeight"),maxBlockSize:V.sizes("maxBlockSize"),overflow:!0,overflowX:!0,overflowY:!0,overscrollBehavior:!0,overscrollBehaviorX:!0,overscrollBehaviorY:!0,display:!0,aspectRatio:!0,hideFrom:{scale:"breakpoints",transform:(e,t)=>{var r,n,i;return{[`@media screen and (min-width: ${null!=(i=null==(n=null==(r=t.__breakpoints)?void 0:r.get(e))?void 0:n.minW)?i:e})`]:{display:"none"}}}},hideBelow:{scale:"breakpoints",transform:(e,t)=>{var r,n,i;return{[`@media screen and (max-width: ${null!=(i=null==(n=null==(r=t.__breakpoints)?void 0:r.get(e))?void 0:n._minW)?i:e})`]:{display:"none"}}}},verticalAlign:!0,boxSizing:!0,boxDecorationBreak:!0,float:V.propT("float",H.float),objectFit:!0,objectPosition:!0,visibility:!0,isolation:!0};Object.assign(Q,{w:Q.width,h:Q.height,minW:Q.minWidth,maxW:Q.maxWidth,minH:Q.minHeight,maxH:Q.maxHeight,overscroll:Q.overscrollBehavior,overscrollX:Q.overscrollBehaviorX,overscrollY:Q.overscrollBehaviorY});var ee={listStyleType:!0,listStylePosition:!0,listStylePos:V.prop("listStylePosition"),listStyleImage:!0,listStyleImg:V.prop("listStyleImage")};var te=(e=>{const t=new WeakMap;return(r,n,i,o)=>{if("undefined"===typeof r)return e(r,n,i);t.has(r)||t.set(r,new Map);const a=t.get(r);if(a.has(n))return a.get(n);const s=e(r,n,i,o);return a.set(n,s),s}})((function(e,t,r,n){const i="string"===typeof t?t.split("."):[t];for(n=0;n{const n={},i=te(e,t,{});for(const o in i){o in r&&null!=r[o]||(n[o]=i[o])}return n},oe={srOnly:{transform:e=>!0===e?re:"focusable"===e?ne:{}},layerStyle:{processResult:!0,transform:(e,t,r)=>ie(t,`layerStyles.${e}`,r)},textStyle:{processResult:!0,transform:(e,t,r)=>ie(t,`textStyles.${e}`,r)},apply:{processResult:!0,transform:(e,t,r)=>ie(t,e,r)}},ae={position:!0,pos:V.prop("position"),zIndex:V.prop("zIndex","zIndices"),inset:V.spaceT("inset"),insetX:V.spaceT(["left","right"]),insetInline:V.spaceT("insetInline"),insetY:V.spaceT(["top","bottom"]),insetBlock:V.spaceT("insetBlock"),top:V.spaceT("top"),insetBlockStart:V.spaceT("insetBlockStart"),bottom:V.spaceT("bottom"),insetBlockEnd:V.spaceT("insetBlockEnd"),left:V.spaceT("left"),insetInlineStart:V.logical({scale:"space",property:{ltr:"left",rtl:"right"}}),right:V.spaceT("right"),insetInlineEnd:V.logical({scale:"space",property:{ltr:"right",rtl:"left"}})};Object.assign(ae,{insetStart:ae.insetInlineStart,insetEnd:ae.insetInlineEnd});var se={ring:{transform:H.ring},ringColor:V.colors("--chakra-ring-color"),ringOffset:V.prop("--chakra-ring-offset-width"),ringOffsetColor:V.colors("--chakra-ring-offset-color"),ringInset:V.prop("--chakra-ring-inset")},ce={margin:V.spaceT("margin"),marginTop:V.spaceT("marginTop"),marginBlockStart:V.spaceT("marginBlockStart"),marginRight:V.spaceT("marginRight"),marginInlineEnd:V.spaceT("marginInlineEnd"),marginBottom:V.spaceT("marginBottom"),marginBlockEnd:V.spaceT("marginBlockEnd"),marginLeft:V.spaceT("marginLeft"),marginInlineStart:V.spaceT("marginInlineStart"),marginX:V.spaceT(["marginInlineStart","marginInlineEnd"]),marginInline:V.spaceT("marginInline"),marginY:V.spaceT(["marginTop","marginBottom"]),marginBlock:V.spaceT("marginBlock"),padding:V.space("padding"),paddingTop:V.space("paddingTop"),paddingBlockStart:V.space("paddingBlockStart"),paddingRight:V.space("paddingRight"),paddingBottom:V.space("paddingBottom"),paddingBlockEnd:V.space("paddingBlockEnd"),paddingLeft:V.space("paddingLeft"),paddingInlineStart:V.space("paddingInlineStart"),paddingInlineEnd:V.space("paddingInlineEnd"),paddingX:V.space(["paddingInlineStart","paddingInlineEnd"]),paddingInline:V.space("paddingInline"),paddingY:V.space(["paddingTop","paddingBottom"]),paddingBlock:V.space("paddingBlock")};Object.assign(ce,{m:ce.margin,mt:ce.marginTop,mr:ce.marginRight,me:ce.marginInlineEnd,marginEnd:ce.marginInlineEnd,mb:ce.marginBottom,ml:ce.marginLeft,ms:ce.marginInlineStart,marginStart:ce.marginInlineStart,mx:ce.marginX,my:ce.marginY,p:ce.padding,pt:ce.paddingTop,py:ce.paddingY,px:ce.paddingX,pb:ce.paddingBottom,pl:ce.paddingLeft,ps:ce.paddingInlineStart,paddingStart:ce.paddingInlineStart,pr:ce.paddingRight,pe:ce.paddingInlineEnd,paddingEnd:ce.paddingInlineEnd});var le={textDecorationColor:V.colors("textDecorationColor"),textDecoration:!0,textDecor:{property:"textDecoration"},textDecorationLine:!0,textDecorationStyle:!0,textDecorationThickness:!0,textUnderlineOffset:!0,textShadow:V.shadows("textShadow")},ue={clipPath:!0,transform:V.propT("transform",H.transform),transformOrigin:!0,translateX:V.spaceT("--chakra-translate-x"),translateY:V.spaceT("--chakra-translate-y"),skewX:V.degreeT("--chakra-skew-x"),skewY:V.degreeT("--chakra-skew-y"),scaleX:V.prop("--chakra-scale-x"),scaleY:V.prop("--chakra-scale-y"),scale:V.prop(["--chakra-scale-x","--chakra-scale-y"]),rotate:V.degreeT("--chakra-rotate")},de={transition:!0,transitionDelay:!0,animation:!0,willChange:!0,transitionDuration:V.prop("transitionDuration","transition.duration"),transitionProperty:V.prop("transitionProperty","transition.property"),transitionTimingFunction:V.prop("transitionTimingFunction","transition.easing")},he={fontFamily:V.prop("fontFamily","fonts"),fontSize:V.prop("fontSize","fontSizes",H.px),fontWeight:V.prop("fontWeight","fontWeights"),lineHeight:V.prop("lineHeight","lineHeights"),letterSpacing:V.prop("letterSpacing","letterSpacings"),textAlign:!0,fontStyle:!0,textIndent:!0,wordBreak:!0,overflowWrap:!0,textOverflow:!0,textTransform:!0,whiteSpace:!0,isTruncated:{transform(e){if(!0===e)return{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}}},noOfLines:{static:{overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:"var(--chakra-line-clamp)"},property:"--chakra-line-clamp"}},fe={scrollBehavior:!0,scrollSnapAlign:!0,scrollSnapStop:!0,scrollSnapType:!0,scrollMargin:V.spaceT("scrollMargin"),scrollMarginTop:V.spaceT("scrollMarginTop"),scrollMarginBottom:V.spaceT("scrollMarginBottom"),scrollMarginLeft:V.spaceT("scrollMarginLeft"),scrollMarginRight:V.spaceT("scrollMarginRight"),scrollMarginX:V.spaceT(["scrollMarginLeft","scrollMarginRight"]),scrollMarginY:V.spaceT(["scrollMarginTop","scrollMarginBottom"]),scrollPadding:V.spaceT("scrollPadding"),scrollPaddingTop:V.spaceT("scrollPaddingTop"),scrollPaddingBottom:V.spaceT("scrollPaddingBottom"),scrollPaddingLeft:V.spaceT("scrollPaddingLeft"),scrollPaddingRight:V.spaceT("scrollPaddingRight"),scrollPaddingX:V.spaceT(["scrollPaddingLeft","scrollPaddingRight"]),scrollPaddingY:V.spaceT(["scrollPaddingTop","scrollPaddingBottom"])};function pe(e){return y(e)&&e.reference?e.reference:String(e)}var me=(e,...t)=>t.map(pe).join(` ${e} `).replace(/calc/g,""),ge=(...e)=>`calc(${me("+",...e)})`,ve=(...e)=>`calc(${me("-",...e)})`,ye=(...e)=>`calc(${me("*",...e)})`,be=(...e)=>`calc(${me("/",...e)})`,we=e=>{const t=pe(e);return null==t||Number.isNaN(parseFloat(t))?ye(t,-1):String(t).startsWith("-")?String(t).slice(1):`-${t}`},xe=Object.assign((e=>({add:(...t)=>xe(ge(e,...t)),subtract:(...t)=>xe(ve(e,...t)),multiply:(...t)=>xe(ye(e,...t)),divide:(...t)=>xe(be(e,...t)),negate:()=>xe(we(e)),toString:()=>e.toString()})),{add:ge,subtract:ve,multiply:ye,divide:be,negate:we});function _e(e){return function(e){return e.replace(/[!-,/:-@[-^`{-~]/g,"\\$&")}(function(e){if(e.includes("\\."))return e;const t=!Number.isInteger(parseFloat(e.toString()));return t?e.replace(".","\\."):e}(function(e,t="-"){return e.replace(/\s+/g,t)}(e.toString())))}function ke(e,t){return`var(${e}${t?`, ${t}`:""})`}function Se(e,t=""){return _e(`--${function(e,t=""){return[t,e].filter(Boolean).join("-")}(e,t)}`)}function Ee(e,t,r){const n=Se(e,r);return{variable:n,reference:ke(n,t)}}function Ae(e){const t=null==e?0:e.length;return t?e[t-1]:void 0}function Pe(e){if(null==e)return e;const{unitless:t}=function(e){const t=parseFloat(e.toString()),r=e.toString().replace(String(t),"");return{unitless:!r,value:t,unit:r}}(e);return t||"number"===typeof e?`${e}px`:e}var Oe=(e,t)=>parseInt(e[1],10)>parseInt(t[1],10)?1:-1,Te=e=>Object.fromEntries(Object.entries(e).sort(Oe));function Ce(e){const t=Te(e);return Object.assign(Object.values(t),t)}function je(e){var t;if(!e)return e;e=null!=(t=Pe(e))?t:e;return"number"===typeof e?`${e+-.02}`:e.replace(/(\d+\.?\d*)/u,(e=>`${parseFloat(e)+-.02}`))}function Re(e,t){const r=["@media screen"];return e&&r.push("and",`(min-width: ${Pe(e)})`),t&&r.push("and",`(max-width: ${Pe(t)})`),r.join(" ")}function Ie(e){var t;if(!e)return null;e.base=null!=(t=e.base)?t:"0px";const r=Ce(e),n=Object.entries(e).sort(Oe).map((([e,t],r,n)=>{var i;let[,o]=null!=(i=n[r+1])?i:[];return o=parseFloat(o)>0?je(o):void 0,{_minW:je(t),breakpoint:e,minW:t,maxW:o,maxWQuery:Re(null,o),minWQuery:Re(t),minMaxQuery:Re(t,o)}})),i=function(e){const t=Object.keys(Te(e));return new Set(t)}(e),o=Array.from(i.values());return{keys:i,normalized:r,isResponsive(e){const t=Object.keys(e);return t.length>0&&t.every((e=>i.has(e)))},asObject:Te(e),asArray:Ce(e),details:n,get:e=>n.find((t=>t.breakpoint===e)),media:[null,...r.map((e=>Re(e))).slice(1)],toArrayValue(e){if(!y(e))throw new Error("toArrayValue: value must be an object");const t=o.map((t=>{var r;return null!=(r=e[t])?r:null}));for(;null===Ae(t);)t.pop();return t},toObjectValue(e){if(!Array.isArray(e))throw new Error("toObjectValue: value must be an array");return e.reduce(((e,t,r)=>{const n=o[r];return null!=n&&null!=t&&(e[n]=t),e}),{})}}}var Me=(e,t)=>`${e}:hover ${t}, ${e}[data-hover] ${t}`,Le=(e,t)=>`${e}:focus ${t}, ${e}[data-focus] ${t}`,Ne=(e,t)=>`${e}:focus-visible ${t}`,De=(e,t)=>`${e}:focus-within ${t}`,ze=(e,t)=>`${e}:active ${t}, ${e}[data-active] ${t}`,Be=(e,t)=>`${e}:disabled ${t}, ${e}[data-disabled] ${t}`,Fe=(e,t)=>`${e}:invalid ${t}, ${e}[data-invalid] ${t}`,Ue=(e,t)=>`${e}:checked ${t}, ${e}[data-checked] ${t}`,$e=(e,t)=>`${e}:placeholder-shown ${t}`,He=e=>qe((t=>e(t,"&")),"[role=group]","[data-group]",".group"),Ve=e=>qe((t=>e(t,"~ &")),"[data-peer]",".peer"),qe=(e,...t)=>t.map(e).join(", "),Ke={_hover:"&:hover, &[data-hover]",_active:"&:active, &[data-active]",_focus:"&:focus, &[data-focus]",_highlighted:"&[data-highlighted]",_focusWithin:"&:focus-within",_focusVisible:"&:focus-visible, &[data-focus-visible]",_disabled:"&:disabled, &[disabled], &[aria-disabled=true], &[data-disabled]",_readOnly:"&[aria-readonly=true], &[readonly], &[data-readonly]",_before:"&::before",_after:"&::after",_empty:"&:empty",_expanded:"&[aria-expanded=true], &[data-expanded]",_checked:"&[aria-checked=true], &[data-checked]",_grabbed:"&[aria-grabbed=true], &[data-grabbed]",_pressed:"&[aria-pressed=true], &[data-pressed]",_invalid:"&[aria-invalid=true], &[data-invalid]",_valid:"&[data-valid], &[data-state=valid]",_loading:"&[data-loading], &[aria-busy=true]",_selected:"&[aria-selected=true], &[data-selected]",_hidden:"&[hidden], &[data-hidden]",_autofill:"&:-webkit-autofill",_even:"&:nth-of-type(even)",_odd:"&:nth-of-type(odd)",_first:"&:first-of-type",_firstLetter:"&::first-letter",_last:"&:last-of-type",_notFirst:"&:not(:first-of-type)",_notLast:"&:not(:last-of-type)",_visited:"&:visited",_activeLink:"&[aria-current=page]",_activeStep:"&[aria-current=step]",_indeterminate:"&:indeterminate, &[aria-checked=mixed], &[data-indeterminate]",_groupHover:He(Me),_peerHover:Ve(Me),_groupFocus:He(Le),_peerFocus:Ve(Le),_groupFocusVisible:He(Ne),_peerFocusVisible:Ve(Ne),_groupActive:He(ze),_peerActive:Ve(ze),_groupDisabled:He(Be),_peerDisabled:Ve(Be),_groupInvalid:He(Fe),_peerInvalid:Ve(Fe),_groupChecked:He(Ue),_peerChecked:Ve(Ue),_groupFocusWithin:He(De),_peerFocusWithin:Ve(De),_peerPlaceholderShown:Ve($e),_placeholder:"&::placeholder",_placeholderShown:"&:placeholder-shown",_fullScreen:"&:fullscreen",_selection:"&::selection",_rtl:"[dir=rtl] &, &[dir=rtl]",_ltr:"[dir=ltr] &, &[dir=ltr]",_mediaDark:"@media (prefers-color-scheme: dark)",_mediaReduceMotion:"@media (prefers-reduced-motion: reduce)",_dark:".chakra-ui-dark &:not([data-theme]),[data-theme=dark] &:not([data-theme]),&[data-theme=dark]",_light:".chakra-ui-light &:not([data-theme]),[data-theme=light] &:not([data-theme]),&[data-theme=light]",_horizontal:"&[data-orientation=horizontal]",_vertical:"&[data-orientation=vertical]"},We=Object.keys(Ke);function Ge(e,t){return Ee(String(e).replace(/\./g,"-"),void 0,t)}function Ze(e,t,r={}){const{stop:n,getKey:i}=r;return function e(r,o=[]){var a;if(function(e){return"object"===typeof e&&null!=e&&!Array.isArray(e)}(r)||Array.isArray(r)){const s={};for(const[c,l]of Object.entries(r)){const u=null!=(a=null==i?void 0:i(c))?a:c,d=[...o,u];if(null==n?void 0:n(r,d))return t(r,o);s[u]=e(l,d)}return s}return t(r,o)}(e)}var Ye=["colors","borders","borderWidths","borderStyles","fonts","fontSizes","fontWeights","gradients","letterSpacings","lineHeights","radii","space","shadows","sizes","zIndices","transition","blur","breakpoints"];var Xe=e=>We.includes(e)||"default"===e;function Je(e){var t;const r=function(e){const{__cssMap:t,__cssVars:r,__breakpoints:n,...i}=e;return i}(e),n=function(e){return function(e,t){const r={};for(const n of t)n in e&&(r[n]=e[n]);return r}(e,Ye)}(r),i=function(e){return e.semanticTokens}(r),o=function({tokens:e,semanticTokens:t}){const r={};return Ze(e,((e,t)=>{null!=e&&(r[t.join(".")]={isSemantic:!1,value:e})})),Ze(t,((e,t)=>{null!=e&&(r[t.join(".")]={isSemantic:!0,value:e})}),{stop:e=>Object.keys(e).every(Xe)}),r}({tokens:n,semanticTokens:i}),a=null==(t=r.config)?void 0:t.cssVarPrefix,{cssMap:s,cssVars:c}=function(e,t){let r={};const n={};for(const[i,o]of Object.entries(e)){const{isSemantic:a,value:s}=o,{variable:c,reference:l}=Ge(i,null==t?void 0:t.cssVarPrefix);if(!a){if(i.startsWith("space")){const e=i.split("."),[t,...r]=e,o=`${t}.-${r.join(".")}`,a=xe.negate(s),u=xe.negate(l);n[o]={value:a,var:c,varRef:u}}r[c]=s,n[i]={value:s,var:c,varRef:l};continue}const u=r=>{const n=[String(i).split(".")[0],r].join(".");if(!e[n])return r;const{reference:o}=Ge(n,null==t?void 0:t.cssVarPrefix);return o},d=y(s)?s:{default:s};r=A(r,Object.entries(d).reduce(((e,[t,r])=>{var n,i;if(!r)return e;const o=u(`${r}`);return"default"===t?(e[c]=o,e):(e[null!=(i=null==(n=Ke)?void 0:n[t])?i:t]={[c]:o},e)}),{})),n[i]={value:l,var:c,varRef:l}}return{cssVars:r,cssMap:n}}(o,{cssVarPrefix:a});return Object.assign(r,{__cssVars:{"--chakra-ring-inset":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-ring-offset-width":"0px","--chakra-ring-offset-color":"#fff","--chakra-ring-color":"rgba(66, 153, 225, 0.6)","--chakra-ring-offset-shadow":"0 0 #0000","--chakra-ring-shadow":"0 0 #0000","--chakra-space-x-reverse":"0","--chakra-space-y-reverse":"0",...c},__cssMap:s,__breakpoints:Ie(r.breakpoints)}),r}var Qe=A({},q,K,W,Y,Q,Z,se,J,X,oe,ae,G,ce,fe,he,le,ue,ee,de),et=Object.assign({},ce,Q,Y,X,ae),tt=Object.keys(et),rt=[...Object.keys(Qe),...We],nt={...Qe,...Ke},it=e=>e in nt;var ot=(e,t)=>e.startsWith("--")&&"string"===typeof t&&!function(e){return/^var\(--.+\)$/.test(e)}(t),at=(e,t)=>{var r,n;if(null==t)return t;const i=t=>{var r,n;return null==(n=null==(r=e.__cssMap)?void 0:r[t])?void 0:n.varRef},o=e=>{var t;return null!=(t=i(e))?t:e},[a,s]=function(e){const t=[];let r="",n=!1;for(let i=0;i{var a,s,c;const l=w(e,n),u=(e=>t=>{if(!t.__breakpoints)return e;const{isResponsive:r,toArrayValue:n,media:i}=t.__breakpoints,o={};for(const a in e){let s=w(e[a],t);if(null==s)continue;if(s=y(s)&&r(s)?n(s):s,!Array.isArray(s)){o[a]=s;continue}const c=s.slice(0,i.length).length;for(let e=0;et=>st({theme:t,pseudos:Ke,configs:Qe})(e);function lt(e){return{definePartsStyle:e=>e,defineMultiStyleConfig:t=>({parts:e,...t})}}function ut(e,t){for(let r=t+1;r{A(s,{[e]:u?p[e]:{[f]:p[e]}})})):d?s[f]=p:u?A(s,p):s[f]=p)}return s}}function ht(e){return function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(e,["styleConfig","size","variant","colorScheme"])}var ft=new Set([...rt,"textStyle","layerStyle","apply","noOfLines","focusBorderColor","errorBorderColor","as","__css","css","sx"]),pt=new Set(["htmlWidth","htmlHeight","htmlSize","htmlTranslate"]);function mt(e){return pt.has(e)||!ft.has(e)}var gt=(0,i.createContext)({});function vt(){const e=(0,i.useContext)(gt);if(void 0===e)throw new Error("useColorMode must be used within a ColorModeProvider");return e}gt.displayName="ColorModeContext";var yt=(e=>{const t=new WeakMap;return(r,n,i,o)=>{if("undefined"===typeof r)return e(r,n,i);t.has(r)||t.set(r,new Map);const a=t.get(r);if(a.has(n))return a.get(n);const s=e(r,n,i,o);return a.set(n,s),s}})((function(e,t,r,n){const i="string"===typeof t?t.split("."):[t];for(n=0;n{const i=e[n];t(i,n,e)&&(r[n]=i)})),r}var wt=e=>bt(e,(e=>null!==e&&void 0!==e));function xt(e,...t){return function(e){return"function"===typeof e}(e)?e(...t):e}function _t(...e){return function(t){e.some((e=>(null==e||e(t),null==t?void 0:t.defaultPrevented)))}}function kt(){return kt=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?Mt(Vt,--$t):0,Ft--,10===Ht&&(Ft=1,Bt--),Ht}function Gt(){return Ht=$t2||Jt(Ht)>3?"":" "}function nr(e,t){for(;--t&&Gt()&&!(Ht<48||Ht>102||Ht>57&&Ht<65||Ht>70&&Ht<97););return Xt(e,Yt()+(t<6&&32==Zt()&&32==Gt()))}function ir(e){for(;Gt();)switch(Ht){case e:return $t;case 34:case 39:34!==e&&39!==e&&ir(Ht);break;case 40:41===e&&ir(e);break;case 92:Gt()}return $t}function or(e,t){for(;Gt()&&e+Ht!==57&&(e+Ht!==84||47!==Zt()););return"/*"+Xt(t,$t-1)+"*"+Tt(47===e?e:Gt())}function ar(e){for(;!Jt(Zt());)Gt();return Xt(e,$t)}var sr="-ms-",cr="-moz-",lr="-webkit-",ur="comm",dr="rule",hr="decl",fr="@keyframes";function pr(e,t){for(var r="",n=Dt(e),i=0;i0&&Nt(k)-d&&zt(f>32?wr(k+";",n,r,d-1):wr(Rt(k," ","")+";",n,r,d-2),c);break;case 59:k+=";";default:if(zt(_=yr(k,t,r,l,u,i,s,b,w=[],x=[],d),o),123===y)if(0===u)vr(k,t,_,_,w,o,d,s,x);else switch(99===h&&110===Mt(k,3)?100:h){case 100:case 108:case 109:case 115:vr(e,_,_,n&&zt(yr(e,_,_,0,0,i,s,b,i,w=[],d),x),i,x,d,s,n?w:x);break;default:vr(k,_,_,_,[""],x,0,s,x)}}l=u=f=0,m=v=1,b=k="",d=a;break;case 58:d=1+Nt(k),f=p;default:if(m<1)if(123==y)--m;else if(125==y&&0==m++&&125==Wt())continue;switch(k+=Tt(y),y*m){case 38:v=u>0?1:(k+="\f",-1);break;case 44:s[l++]=(Nt(k)-1)*v,v=1;break;case 64:45===Zt()&&(k+=tr(Gt())),h=Zt(),u=d=Nt(b=k+=ar(Yt())),y++;break;case 45:45===p&&2==Nt(k)&&(m=0)}}return o}function yr(e,t,r,n,i,o,a,s,c,l,u){for(var d=i-1,h=0===i?o:[""],f=Dt(h),p=0,m=0,g=0;p0?h[v]+" "+y:Rt(y,/&\f/g,h[v])))&&(c[g++]=b);return qt(e,t,r,0===i?dr:s,c,l,u)}function br(e,t,r){return qt(e,t,r,ur,Tt(Ht),Lt(e,2,-2),0)}function wr(e,t,r,n){return qt(e,t,r,hr,Lt(e,0,n),Lt(e,n+1,-1),n)}var xr=function(e,t,r){for(var n=0,i=0;n=i,i=Zt(),38===n&&12===i&&(t[r]=1),!Jt(i);)Gt();return Xt(e,$t)},_r=function(e,t){return er(function(e,t){var r=-1,n=44;do{switch(Jt(n)){case 0:38===n&&12===Zt()&&(t[r]=1),e[r]+=xr($t-1,t,r);break;case 2:e[r]+=tr(n);break;case 4:if(44===n){e[++r]=58===Zt()?"&\f":"",t[r]=e[r].length;break}default:e[r]+=Tt(n)}}while(n=Gt());return e}(Qt(e),t))},kr=new WeakMap,Sr=function(e){if("rule"===e.type&&e.parent&&!(e.length<1)){for(var t=e.value,r=e.parent,n=e.column===r.column&&e.line===r.line;"rule"!==r.type;)if(!(r=r.parent))return;if((1!==e.props.length||58===t.charCodeAt(0)||kr.get(r))&&!n){kr.set(e,!0);for(var i=[],o=_r(t,i),a=r.props,s=0,c=0;s6)switch(Mt(e,t+1)){case 109:if(45!==Mt(e,t+4))break;case 102:return Rt(e,/(.+:)(.+)-([^]+)/,"$1"+lr+"$2-$3$1"+cr+(108==Mt(e,t+3)?"$3":"$2-$3"))+e;case 115:return~It(e,"stretch")?Ar(Rt(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==Mt(e,t+1))break;case 6444:switch(Mt(e,Nt(e)-3-(~It(e,"!important")&&10))){case 107:return Rt(e,":",":"+lr)+e;case 101:return Rt(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+lr+(45===Mt(e,14)?"inline-":"")+"box$3$1"+lr+"$2$3$1"+sr+"$2box$3")+e}break;case 5936:switch(Mt(e,t+11)){case 114:return lr+e+sr+Rt(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return lr+e+sr+Rt(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return lr+e+sr+Rt(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return lr+e+sr+e+e}return e}var Pr=[function(e,t,r,n){if(e.length>-1&&!e.return)switch(e.type){case hr:e.return=Ar(e.value,e.length);break;case fr:return pr([Kt(e,{value:Rt(e.value,"@","@"+lr)})],n);case dr:if(e.length)return function(e,t){return e.map(t).join("")}(e.props,(function(t){switch(function(e,t){return(e=t.exec(e))?e[0]:e}(t,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return pr([Kt(e,{props:[Rt(t,/:(read-\w+)/,":-moz-$1")]})],n);case"::placeholder":return pr([Kt(e,{props:[Rt(t,/:(plac\w+)/,":"+lr+"input-$1")]}),Kt(e,{props:[Rt(t,/:(plac\w+)/,":-moz-$1")]}),Kt(e,{props:[Rt(t,/:(plac\w+)/,sr+"input-$1")]})],n)}return""}))}}],Or=function(e){var t=e.key;if("css"===t){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(r,(function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""))}))}var n=e.stylisPlugins||Pr;var i,o,a={},s=[];i=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),(function(e){for(var t=e.getAttribute("data-emotion").split(" "),r=1;r=4;++n,i-=4)t=1540483477*(65535&(t=255&e.charCodeAt(n)|(255&e.charCodeAt(++n))<<8|(255&e.charCodeAt(++n))<<16|(255&e.charCodeAt(++n))<<24))+(59797*(t>>>16)<<16),r=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&r)+(59797*(r>>>16)<<16);switch(i){case 3:r^=(255&e.charCodeAt(n+2))<<16;case 2:r^=(255&e.charCodeAt(n+1))<<8;case 1:r=1540483477*(65535&(r^=255&e.charCodeAt(n)))+(59797*(r>>>16)<<16)}return(((r=1540483477*(65535&(r^=r>>>13))+(59797*(r>>>16)<<16))^r>>>15)>>>0).toString(36)}var Rr={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},Ir=/[A-Z]|^ms/g,Mr=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Lr=function(e){return 45===e.charCodeAt(1)},Nr=function(e){return null!=e&&"boolean"!==typeof e},Dr=St((function(e){return Lr(e)?e:e.replace(Ir,"-$&").toLowerCase()})),zr=function(e,t){switch(e){case"animation":case"animationName":if("string"===typeof t)return t.replace(Mr,(function(e,t,r){return Fr={name:t,styles:r,next:Fr},t}))}return 1===Rr[e]||Lr(e)||"number"!==typeof t||0===t?t:t+"px"};function Br(e,t,r){if(null==r)return"";if(void 0!==r.__emotion_styles)return r;switch(typeof r){case"boolean":return"";case"object":if(1===r.anim)return Fr={name:r.name,styles:r.styles,next:Fr},r.name;if(void 0!==r.styles){var n=r.next;if(void 0!==n)for(;void 0!==n;)Fr={name:n.name,styles:n.styles,next:Fr},n=n.next;return r.styles+";"}return function(e,t,r){var n="";if(Array.isArray(r))for(var i=0;i96?un:dn},fn=function(e,t,r){var n;if(t){var i=t.shouldForwardProp;n=e.__emotion_forwardProp&&i?function(t){return e.__emotion_forwardProp(t)&&i(t)}:i}return"function"!==typeof n&&r&&(n=e.__emotion_forwardProp),n},pn=function(e){var t=e.cache,r=e.serialized,n=e.isStringTag;return Xr(t,r,n),Vr((function(){return Jr(t,r,n)})),null},mn=function e(t,r){var n,o,a=t.__emotion_real===t,s=a&&t.__emotion_base||t;void 0!==r&&(n=r.label,o=r.target);var c=fn(t,r,a),l=c||hn(s),u=!l("as");return function(){var d=arguments,h=a&&void 0!==t.__emotion_styles?t.__emotion_styles.slice(0):[];if(void 0!==n&&h.push("label:"+n+";"),null==d[0]||void 0===d[0].raw)h.push.apply(h,d);else{0,h.push(d[0][0]);for(var f=d.length,p=1;pt=>{const{theme:r,css:n,__css:i,sx:o,...a}=t,s=bt(a,((e,t)=>it(t))),c=function(e,...t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");const r={...e};for(const n of t)if(null!=n)for(const e in n)Object.prototype.hasOwnProperty.call(n,e)&&(e in r&&delete r[e],r[e]=n[e]);return r}({},i,xt(e,t),wt(s),o),l=ct(c)(t.theme);return n?[l,n]:l};function yn(e,t){const{baseStyle:r,...n}=null!=t?t:{};n.shouldForwardProp||(n.shouldForwardProp=mt);const o=vn({baseStyle:r}),a=gn(e,n)(o);return i.forwardRef((function(e,t){const{colorMode:r,forced:n}=vt();return i.createElement(a,{ref:t,"data-theme":n?r:void 0,...e})}))}var bn=function(){const e=new Map;return new Proxy(yn,{apply:(e,t,r)=>yn(...r),get:(t,r)=>(e.has(r)||e.set(r,yn(r)),e.get(r))})}();function wn(e){return(0,i.forwardRef)(e)}var xn=r(8826),_n=bn("div",{baseStyle:{display:"flex",alignItems:"center",justifyContent:"center"}});_n.displayName="Center";var kn={horizontal:{insetStart:"50%",transform:"translateX(-50%)"},vertical:{top:"50%",transform:"translateY(-50%)"},both:{insetStart:"50%",top:"50%",transform:"translate(-50%, -50%)"}},Sn=(wn((function(e,t){const{axis:r="both",...n}=e;return(0,xn.jsx)(bn.div,{ref:t,__css:kn[r],...n,position:"absolute"})})),bn("div"));Sn.displayName="Box";var En=wn((function(e,t){const{size:r,centerContent:n=!0,...i}=e,o=n?{display:"flex",alignItems:"center",justifyContent:"center"}:{};return(0,xn.jsx)(Sn,{ref:t,boxSize:r,__css:{...o,flexShrink:0,flexGrow:0},...i})}));En.displayName="Square";var An=wn((function(e,t){const{size:r,...n}=e;return(0,xn.jsx)(En,{size:r,ref:t,borderRadius:"9999px",...n})}));An.displayName="Circle";var Pn=e=>(0,xn.jsx)(bn.div,{className:"chakra-stack__item",...e,__css:{display:"inline-block",flex:"0 0 auto",minWidth:0,...e.__css}});Pn.displayName="StackItem";Object.freeze(["base","sm","md","lg","xl","2xl"]);function On(e,t){return Array.isArray(e)?e.map((e=>null===e?null:t(e))):y(e)?Object.keys(e).reduce(((r,n)=>(r[n]=t(e[n]),r)),{}):null!=e?t(e):null}function Tn(e){return i.Children.toArray(e).filter((e=>(0,i.isValidElement)(e)))}var Cn=wn(((e,t)=>{const{isInline:r,direction:n,align:o,justify:a,spacing:s="0.5rem",wrap:c,children:l,divider:u,className:d,shouldWrapChildren:h,...f}=e,p=r?"row":null!=n?n:"column",m=(0,i.useMemo)((()=>function(e){const{spacing:t,direction:r}=e,n={column:{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},"column-reverse":{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},row:{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0},"row-reverse":{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0}};return{"&":On(r,(e=>n[e]))}}({spacing:s,direction:p})),[s,p]),g=!!u,y=!h&&!g,b=(0,i.useMemo)((()=>{const e=Tn(l);return y?e:e.map(((t,r)=>{const n="undefined"!==typeof t.key?t.key:r,o=r+1===e.length,a=h?(0,xn.jsx)(Pn,{children:t},n):t;if(!g)return a;const s=(0,i.cloneElement)(u,{__css:m}),c=o?null:s;return(0,xn.jsxs)(i.Fragment,{children:[a,c]},n)}))}),[u,m,g,y,h,l]),w=v("chakra-stack",d);return(0,xn.jsx)(bn.div,{ref:t,display:"flex",alignItems:o,justifyContent:a,flexDirection:p,flexWrap:c,gap:g?void 0:s,className:w,...f,children:b})}));Cn.displayName="Stack";var jn=wn(((e,t)=>(0,xn.jsx)(Cn,{align:"center",...e,direction:"column",ref:t})));function Rn(e={}){const{name:t,strict:r=!0,hookName:n="useContext",providerName:o="Provider",errorMessage:a,defaultValue:s}=e,c=(0,i.createContext)(s);return c.displayName=t,[c.Provider,function e(){var t;const s=(0,i.useContext)(c);if(!s&&r){const r=new Error(null!=a?a:`${n} returned \`undefined\`. Seems you forgot to wrap component within ${o}`);throw r.name="ContextError",null==(t=Error.captureStackTrace)||t.call(Error,r,e),r}return s},c]}jn.displayName="VStack";var[In,Mn]=Rn({strict:!1,name:"ButtonGroupContext"});function Ln(e){const{children:t,className:r,...n}=e,o=(0,i.isValidElement)(t)?(0,i.cloneElement)(t,{"aria-hidden":!0,focusable:!1}):t,a=v("chakra-button__icon",r);return(0,xn.jsx)(bn.span,{display:"inline-flex",alignSelf:"center",flexShrink:0,...n,className:a,children:o})}Ln.displayName="ButtonIcon";r(5304);var Nn=Wr((function(e,t){var r=e.styles,n=$r([r],void 0,i.useContext(Gr)),o=i.useRef();return qr((function(){var e=t.key+"-global",r=new t.sheet.constructor({key:e,nonce:t.sheet.nonce,container:t.sheet.container,speedy:t.sheet.isSpeedy}),i=!1,a=document.querySelector('style[data-emotion="'+e+" "+n.name+'"]');return t.sheet.tags.length&&(r.before=t.sheet.tags[0]),null!==a&&(i=!0,a.setAttribute("data-emotion",e),r.hydrate([a])),o.current=[r,i],function(){r.flush()}}),[t]),qr((function(){var e=o.current,r=e[0];if(e[1])e[1]=!1;else{if(void 0!==n.next&&Jr(t,n.next,!0),r.tags.length){var i=r.tags[r.tags.length-1].nextElementSibling;r.before=i,r.flush()}t.insert("",n,r,!1)}}),[t,n.name]),null}));function Dn(){for(var e=arguments.length,t=new Array(e),r=0;r` or ``");return e}function Fn(){return{...vt(),theme:Bn()}}function Un(e,t,r){const n=Array.isArray(t)?t:[t],i=Array.isArray(r)?r:[r];return r=>{const o=i.filter(Boolean),a=n.map(((t,n)=>{var i,a;if("breakpoints"===e)return function(e,t,r){var n,i;if(null==t)return t;const o=t=>{var r,n;return null==(n=null==(r=e.__breakpoints)?void 0:r.asArray)?void 0:n[t]};return null!=(i=null!=(n=o(t))?n:o(r))?i:r}(r,t,null!=(i=o[n])?i:t);return function(e,t,r){var n,i;if(null==t)return t;const o=t=>{var r,n;return null==(n=null==(r=e.__cssMap)?void 0:r[t])?void 0:n.value};return null!=(i=null!=(n=o(t))?n:o(r))?i:r}(r,`${e}.${t}`,null!=(a=o[n])?a:t)}));return Array.isArray(t)?a:a[0]}}var $n=r(2249);function Hn(e,t={}){var r;const{styleConfig:n,...o}=t,{theme:a,colorMode:s}=Fn(),c=e?yt(a,`components.${e}`):void 0,l=n||c,u=A({theme:a,colorMode:s},null!=(r=null==l?void 0:l.defaultProps)?r:{},wt(function(e,t){const r={};return Object.keys(e).forEach((n=>{t.includes(n)||(r[n]=e[n])})),r}(o,["children"]))),d=(0,i.useRef)({});if(l){const e=function(e){return t=>{var r;const{variant:n,size:i,theme:o}=t,a=dt(o);return A({},w(null!=(r=e.baseStyle)?r:{},t),a(e,"sizes",i,t),a(e,"variants",n,t))}}(l),t=e(u);$n(d.current,t)||(d.current=t)}return d.current}function Vn(e,t={}){return Hn(e,t)}function qn(e,t={}){return Hn(e,t)}var Kn=zn({"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}}),Wn=wn(((e,t)=>{const r=Vn("Spinner",e),{label:n="Loading...",thickness:i="2px",speed:o="0.45s",emptyColor:a="transparent",className:s,...c}=ht(e),l=v("chakra-spinner",s),u={display:"inline-block",borderColor:"currentColor",borderStyle:"solid",borderRadius:"99999px",borderWidth:i,borderBottomColor:a,borderLeftColor:a,animation:`${Kn} ${o} linear infinite`,...r};return(0,xn.jsx)(bn.div,{ref:t,__css:u,className:l,...c,children:n&&(0,xn.jsx)(bn.span,{srOnly:!0,children:n})})}));function Gn(e){const{label:t,placement:r,spacing:n="0.5rem",children:o=(0,xn.jsx)(Wn,{color:"currentColor",width:"1em",height:"1em"}),className:a,__css:s,...c}=e,l=v("chakra-button__spinner",a),u="start"===r?"marginEnd":"marginStart",d=(0,i.useMemo)((()=>({display:"flex",alignItems:"center",position:t?"relative":"absolute",[u]:t?n:0,fontSize:"1em",lineHeight:"normal",...s})),[s,t,u,n]);return(0,xn.jsx)(bn.div,{className:l,...c,__css:d,children:o})}function Zn(...e){return t=>{e.forEach((e=>{!function(e,t){if(null!=e)if("function"!==typeof e)try{e.current=t}catch(r){throw new Error(`Cannot assign value '${t}' to ref '${e}'`)}else e(t)}(e,t)}))}}function Yn(...e){return(0,i.useMemo)((()=>Zn(...e)),e)}Wn.displayName="Spinner",Gn.displayName="ButtonSpinner";var Xn=wn(((e,t)=>{const r=Mn(),n=Vn("Button",{...r,...e}),{isDisabled:o=(null==r?void 0:r.isDisabled),isLoading:a,isActive:s,children:c,leftIcon:l,rightIcon:u,loadingText:d,iconSpacing:h="0.5rem",type:f,spinner:p,spinnerPlacement:m="start",className:g,as:y,...b}=ht(e),w=(0,i.useMemo)((()=>{const e={...null==n?void 0:n._focus,zIndex:1};return{display:"inline-flex",appearance:"none",alignItems:"center",justifyContent:"center",userSelect:"none",position:"relative",whiteSpace:"nowrap",verticalAlign:"middle",outline:"none",...n,...!!r&&{_focus:e}}}),[n,r]),{ref:x,type:k}=function(e){const[t,r]=(0,i.useState)(!e),n=(0,i.useCallback)((e=>{e&&r("BUTTON"===e.tagName)}),[]);return{ref:n,type:t?"button":void 0}}(y),S={rightIcon:u,leftIcon:l,iconSpacing:h,children:c};return(0,xn.jsxs)(bn.button,{ref:Yn(t,x),as:y,type:null!=f?f:k,"data-active":_(s),"data-loading":_(a),__css:w,className:v("chakra-button",g),...b,disabled:o||a,children:[a&&"start"===m&&(0,xn.jsx)(Gn,{className:"chakra-button__spinner--start",label:d,placement:"start",spacing:h,children:p}),a?d||(0,xn.jsx)(bn.span,{opacity:0,children:(0,xn.jsx)(Jn,{...S})}):(0,xn.jsx)(Jn,{...S}),a&&"end"===m&&(0,xn.jsx)(Gn,{className:"chakra-button__spinner--end",label:d,placement:"end",spacing:h,children:p})]})}));function Jn(e){const{leftIcon:t,rightIcon:r,children:n,iconSpacing:i}=e;return(0,xn.jsxs)(xn.Fragment,{children:[t&&(0,xn.jsx)(Ln,{marginEnd:i,children:t}),n,r&&(0,xn.jsx)(Ln,{marginStart:i,children:r})]})}Xn.displayName="Button";var Qn=wn((function(e,t){const r=Vn("Link",e),{className:n,isExternal:i,...o}=ht(e);return(0,xn.jsx)(bn.a,{target:i?"_blank":void 0,rel:i?"noopener":void 0,ref:t,className:v("chakra-link",n),...o,__css:r})}));Qn.displayName="Link";var ei=wn((function(e,t){const r=Vn("Heading",e),{className:n,...i}=ht(e);return(0,xn.jsx)(bn.h2,{ref:t,className:v("chakra-heading",e.className),...i,__css:r})}));function ti(e,t){const r=(0,i.useId)();return(0,i.useMemo)((()=>e||[t,r].filter(Boolean).join("-")),[e,t,r])}function ri(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function ni(e){var t;return ri(e)&&null!=(t=e.ownerDocument)?t:document}function ii(){return!("undefined"===typeof window||!window.document||!window.document.createElement)}ei.displayName="Heading";var oi=ii()?i.useLayoutEffect:i.useEffect;function ai(e,t=[]){const r=(0,i.useRef)(e);return oi((()=>{r.current=e})),(0,i.useCallback)(((...e)=>{var t;return null==(t=r.current)?void 0:t.call(r,...e)}),t)}function si(e={}){const{onClose:t,onOpen:r,isOpen:n,id:o}=e,a=ai(r),s=ai(t),[c,l]=(0,i.useState)(e.defaultIsOpen||!1),[u,d]=function(e,t){const r=void 0!==e;return[r,r&&"undefined"!==typeof e?e:t]}(n,c),h=ti(o,"disclosure"),f=(0,i.useCallback)((()=>{u||l(!1),null==s||s()}),[u,s]),p=(0,i.useCallback)((()=>{u||l(!0),null==a||a()}),[u,a]),m=(0,i.useCallback)((()=>{(d?f:p)()}),[d,p,f]);return{isOpen:!!d,onOpen:p,onClose:f,onToggle:m,isControlled:u,getButtonProps:(e={})=>({...e,"aria-expanded":d,"aria-controls":h,onClick:_t(e.onClick,m)}),getDisclosureProps:(e={})=>({...e,hidden:!d,id:h})}}var ci=Object.defineProperty,li=(e,t,r)=>(((e,t,r)=>{t in e?ci(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),ui=new class{constructor(){li(this,"modals"),this.modals=new Map}add(e){return this.modals.set(e,this.modals.size+1),this.modals.size}remove(e){this.modals.delete(e)}isTopModal(e){return!!e&&this.modals.get(e)===this.modals.size}};function di(e,t){const[r,n]=(0,i.useState)(0);return(0,i.useEffect)((()=>{const r=e.current;if(r){if(t){const e=ui.add(r);n(e)}return()=>{ui.remove(r),n(0)}}}),[t,e]),r}var hi=function(e){return"undefined"===typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},fi=new WeakMap,pi=new WeakMap,mi={},gi=0,vi=function(e){return e&&(e.host||vi(e.parentNode))},yi=function(e,t,r,n){var i=function(e,t){return t.map((function(t){if(e.contains(t))return t;var r=vi(t);return r&&e.contains(r)?r:(console.error("aria-hidden",t,"in not contained inside",e,". Doing nothing"),null)})).filter((function(e){return Boolean(e)}))}(t,Array.isArray(e)?e:[e]);mi[r]||(mi[r]=new WeakMap);var o=mi[r],a=[],s=new Set,c=new Set(i),l=function(e){e&&!s.has(e)&&(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){e&&!c.has(e)&&Array.prototype.forEach.call(e.children,(function(e){if(s.has(e))u(e);else{var t=e.getAttribute(n),i=null!==t&&"false"!==t,c=(fi.get(e)||0)+1,l=(o.get(e)||0)+1;fi.set(e,c),o.set(e,l),a.push(e),1===c&&i&&pi.set(e,!0),1===l&&e.setAttribute(r,"true"),i||e.setAttribute(n,"true")}}))};return u(t),s.clear(),gi++,function(){a.forEach((function(e){var t=fi.get(e)-1,i=o.get(e)-1;fi.set(e,t),o.set(e,i),t||(pi.has(e)||e.removeAttribute(n),pi.delete(e)),i||e.removeAttribute(r)})),--gi||(fi=new WeakMap,fi=new WeakMap,pi=new WeakMap,mi={})}},bi=function(e,t,r){void 0===r&&(r="data-aria-hidden");var n=Array.from(Array.isArray(e)?e:[e]),i=t||hi(e);return i?(n.push.apply(n,Array.from(i.querySelectorAll("[aria-live]"))),yi(n,i,r,"aria-hidden")):function(){return null}};function wi(e){const{isOpen:t,onClose:r,id:n,closeOnOverlayClick:o=!0,closeOnEsc:a=!0,useInert:s=!0,onOverlayClick:c,onEsc:l}=e,u=(0,i.useRef)(null),d=(0,i.useRef)(null),[h,f,p]=function(e,...t){const r=(0,i.useId)(),n=e||r;return(0,i.useMemo)((()=>t.map((e=>`${e}-${n}`))),[n,t])}(n,"chakra-modal","chakra-modal--header","chakra-modal--body");!function(e,t){const r=e.current;(0,i.useEffect)((()=>{if(e.current&&t)return bi(e.current)}),[t,e,r])}(u,t&&s);const m=di(u,t),g=(0,i.useRef)(null),v=(0,i.useCallback)((e=>{g.current=e.target}),[]),y=(0,i.useCallback)((e=>{"Escape"===e.key&&(e.stopPropagation(),a&&(null==r||r()),null==l||l())}),[a,r,l]),[b,w]=(0,i.useState)(!1),[x,_]=(0,i.useState)(!1),k=(0,i.useCallback)(((e={},t=null)=>({role:"dialog",...e,ref:Zn(t,u),id:h,tabIndex:-1,"aria-modal":!0,"aria-labelledby":b?f:void 0,"aria-describedby":x?p:void 0,onClick:S(e.onClick,(e=>e.stopPropagation()))})),[p,x,h,f,b]),E=(0,i.useCallback)((e=>{e.stopPropagation(),g.current===e.target&&ui.isTopModal(u.current)&&(o&&(null==r||r()),null==c||c())}),[r,o,c]),A=(0,i.useCallback)(((e={},t=null)=>({...e,ref:Zn(t,d),onClick:S(e.onClick,E),onKeyDown:S(e.onKeyDown,y),onMouseDown:S(e.onMouseDown,v)})),[y,v,E]);return{isOpen:t,onClose:r,headerId:f,bodyId:p,setBodyMounted:_,setHeaderMounted:w,dialogRef:u,overlayRef:d,getDialogProps:k,getDialogContainerProps:A,index:m}}var[xi,_i]=Rn({strict:!1,name:"PortalManagerContext"});function ki(e){const{children:t,zIndex:r}=e;return(0,xn.jsx)(xi,{value:{zIndex:r},children:t})}ki.displayName="PortalManager";var Si=Boolean(null==globalThis?void 0:globalThis.document)?i.useLayoutEffect:i.useEffect,Ei=r(2515),Ai=r.t(Ei,2),[Pi,Oi]=Rn({strict:!1,name:"PortalContext"}),Ti="chakra-portal",Ci=e=>(0,xn.jsx)("div",{className:"chakra-portal-zIndex",style:{position:"absolute",zIndex:e.zIndex,top:0,left:0,right:0},children:e.children}),ji=e=>{const{appendToParentPortal:t,children:r}=e,[n,o]=(0,i.useState)(null),a=(0,i.useRef)(null),[,s]=(0,i.useState)({});(0,i.useEffect)((()=>s({})),[]);const c=Oi(),l=_i();Si((()=>{if(!n)return;const e=n.ownerDocument,r=t&&null!=c?c:e.body;if(!r)return;a.current=e.createElement("div"),a.current.className=Ti,r.appendChild(a.current),s({});const i=a.current;return()=>{r.contains(i)&&r.removeChild(i)}}),[n]);const u=(null==l?void 0:l.zIndex)?(0,xn.jsx)(Ci,{zIndex:null==l?void 0:l.zIndex,children:r}):r;return a.current?(0,Ei.createPortal)((0,xn.jsx)(Pi,{value:a.current,children:u}),a.current):(0,xn.jsx)("span",{ref:e=>{e&&o(e)}})},Ri=e=>{const{children:t,containerRef:r,appendToParentPortal:n}=e,o=r.current,a=null!=o?o:"undefined"!==typeof window?document.body:void 0,s=(0,i.useMemo)((()=>{const e=null==o?void 0:o.ownerDocument.createElement("div");return e&&(e.className=Ti),e}),[o]),[,c]=(0,i.useState)({});return Si((()=>c({})),[]),Si((()=>{if(s&&a)return a.appendChild(s),()=>{a.removeChild(s)}}),[s,a]),a&&s?(0,Ei.createPortal)((0,xn.jsx)(Pi,{value:n?s:null,children:t}),s):null};function Ii(e){const t={appendToParentPortal:!0,...e},{containerRef:r,...n}=t;return r?(0,xn.jsx)(Ri,{containerRef:r,...n}):(0,xn.jsx)(ji,{...n})}Ii.className=Ti,Ii.selector=".chakra-portal",Ii.displayName="Portal";const Mi="undefined"!==typeof document,Li=Mi?i.useLayoutEffect:i.useEffect;function Ni(){const e=(0,i.useRef)(!1);return Li((()=>(e.current=!0,()=>{e.current=!1})),[]),e}const Di=e=>e,zi=!1,Bi=!1;class Fi{constructor(){this.order=[],this.scheduled=new Set}add(e){if(!this.scheduled.has(e))return this.scheduled.add(e),this.order.push(e),!0}remove(e){const t=this.order.indexOf(e);-1!==t&&(this.order.splice(t,1),this.scheduled.delete(e))}clear(){this.order.length=0,this.scheduled.clear()}}const Ui=["read","resolveKeyframes","update","preRender","render","postRender"];function $i(e,t){let r=!1,n=!0;const i={delta:0,timestamp:0,isProcessing:!1},o=Ui.reduce(((e,t)=>(e[t]=function(e){let t=new Fi,r=new Fi,n=0,i=!1,o=!1;const a=new WeakSet,s={schedule:(e,o=!1,s=!1)=>{const c=s&&i,l=c?t:r;return o&&a.add(e),l.add(e)&&c&&i&&(n=t.order.length),e},cancel:e=>{r.remove(e),a.delete(e)},process:c=>{if(i)o=!0;else{if(i=!0,[t,r]=[r,t],r.clear(),n=t.order.length,n)for(let r=0;rr=!0)),e)),{}),a=e=>{o[e].process(i)},s=()=>{const o=Bi?i.timestamp:performance.now();r=!1,i.delta=n?1e3/60:Math.max(Math.min(o-i.timestamp,40),1),i.timestamp=o,i.isProcessing=!0,Ui.forEach(a),i.isProcessing=!1,r&&t&&(n=!1,e(s))},c=Ui.reduce(((t,a)=>{const c=o[a];return t[a]=(t,o=!1,a=!1)=>(r||(r=!0,n=!0,i.isProcessing||e(s)),c.schedule(t,o,a)),t}),{});return{schedule:c,cancel:e=>Ui.forEach((t=>o[t].cancel(e))),state:i,steps:o}}const{schedule:Hi,cancel:Vi,state:qi,steps:Ki}=$i("undefined"!==typeof requestAnimationFrame?requestAnimationFrame:Di,!0);const Wi=(0,i.createContext)(null);function Gi(e){const t=(0,i.useRef)(null);return null===t.current&&(t.current=e()),t.current}const Zi=(0,i.createContext)({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});class Yi extends i.Component{getSnapshotBeforeUpdate(e){const t=this.props.childRef.current;if(t&&e.isPresent&&!this.props.isPresent){const e=this.props.sizeRef.current;e.height=t.offsetHeight||0,e.width=t.offsetWidth||0,e.top=t.offsetTop,e.left=t.offsetLeft}return null}componentDidUpdate(){}render(){return this.props.children}}function Xi({children:e,isPresent:t}){const r=(0,i.useId)(),n=(0,i.useRef)(null),o=(0,i.useRef)({width:0,height:0,top:0,left:0}),{nonce:a}=(0,i.useContext)(Zi);return(0,i.useInsertionEffect)((()=>{const{width:e,height:i,top:s,left:c}=o.current;if(t||!n.current||!e||!i)return;n.current.dataset.motionPopId=r;const l=document.createElement("style");return a&&(l.nonce=a),document.head.appendChild(l),l.sheet&&l.sheet.insertRule(`\n [data-motion-pop-id="${r}"] {\n position: absolute !important;\n width: ${e}px !important;\n height: ${i}px !important;\n top: ${s}px !important;\n left: ${c}px !important;\n }\n `),()=>{document.head.removeChild(l)}}),[t]),i.createElement(Yi,{isPresent:t,childRef:n,sizeRef:o},i.cloneElement(e,{ref:n}))}const Ji=({children:e,initial:t,isPresent:r,onExitComplete:n,custom:o,presenceAffectsLayout:a,mode:s})=>{const c=Gi(Qi),l=(0,i.useId)(),u=(0,i.useMemo)((()=>({id:l,initial:t,isPresent:r,custom:o,onExitComplete:e=>{c.set(e,!0);for(const t of c.values())if(!t)return;n&&n()},register:e=>(c.set(e,!1),()=>c.delete(e))})),a?void 0:[r]);return(0,i.useMemo)((()=>{c.forEach(((e,t)=>c.set(t,!1)))}),[r]),i.useEffect((()=>{!r&&!c.size&&n&&n()}),[r]),"popLayout"===s&&(e=i.createElement(Xi,{isPresent:r},e)),i.createElement(Wi.Provider,{value:u},e)};function Qi(){return new Map}const eo=(0,i.createContext)({});let to=Di,ro=Di;const no=e=>e.key||"";const io=({children:e,custom:t,initial:r=!0,onExitComplete:n,exitBeforeEnter:o,presenceAffectsLayout:a=!0,mode:s="sync"})=>{ro(!o,"Replace exitBeforeEnter with mode='wait'");const c=(0,i.useContext)(eo).forceRender||function(){const e=Ni(),[t,r]=(0,i.useState)(0),n=(0,i.useCallback)((()=>{e.current&&r(t+1)}),[t]);return[(0,i.useCallback)((()=>Hi.postRender(n)),[n]),t]}()[0],l=Ni(),u=function(e){const t=[];return i.Children.forEach(e,(e=>{(0,i.isValidElement)(e)&&t.push(e)})),t}(e);let d=u;const h=(0,i.useRef)(new Map).current,f=(0,i.useRef)(d),p=(0,i.useRef)(new Map).current,m=(0,i.useRef)(!0);var g;if(Li((()=>{m.current=!1,function(e,t){e.forEach((e=>{const r=no(e);t.set(r,e)}))}(u,p),f.current=d})),g=()=>{m.current=!0,p.clear(),h.clear()},(0,i.useEffect)((()=>()=>g()),[]),m.current)return i.createElement(i.Fragment,null,d.map((e=>i.createElement(Ji,{key:no(e),isPresent:!0,initial:!!r&&void 0,presenceAffectsLayout:a,mode:s},e))));d=[...d];const v=f.current.map(no),y=u.map(no),b=v.length;for(let i=0;i{if(-1!==y.indexOf(r))return;const o=p.get(r);if(!o)return;const m=v.indexOf(r);let g=e;if(!g){const e=()=>{h.delete(r);const e=Array.from(p.keys()).filter((e=>!y.includes(e)));if(e.forEach((e=>p.delete(e))),f.current=u.filter((t=>{const n=no(t);return n===r||e.includes(n)})),!h.size){if(!1===l.current)return;c(),n&&n()}};g=i.createElement(Ji,{key:no(o),isPresent:!1,onExitComplete:e,custom:t,presenceAffectsLayout:a,mode:s},o),h.set(r,g)}d.splice(m,0,g)})),d=d.map((e=>{const t=e.key;return h.has(t)?e:i.createElement(Ji,{key:no(e),isPresent:!0,presenceAffectsLayout:a,mode:s},e)})),i.createElement(i.Fragment,null,h.size?d:d.map((e=>(0,i.cloneElement)(e))))};var[oo,ao]=Rn({name:"ModalStylesContext",errorMessage:"useModalStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),[so,co]=Rn({strict:!0,name:"ModalContext",errorMessage:"useModalContext: `context` is undefined. Seems you forgot to wrap modal components in ``"}),lo=e=>{const t={scrollBehavior:"outside",autoFocus:!0,trapFocus:!0,returnFocusOnClose:!0,blockScrollOnMount:!0,allowPinchZoom:!1,motionPreset:"scale",lockFocusAcrossFrames:!0,...e},{portalProps:r,children:n,autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:c,blockScrollOnMount:l,allowPinchZoom:u,preserveScrollBarGap:d,motionPreset:h,lockFocusAcrossFrames:f,onCloseComplete:p}=t,m=qn("Modal",t),g={...wi(t),autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:c,blockScrollOnMount:l,allowPinchZoom:u,preserveScrollBarGap:d,motionPreset:h,lockFocusAcrossFrames:f};return(0,xn.jsx)(so,{value:g,children:(0,xn.jsx)(oo,{value:m,children:(0,xn.jsx)(io,{onExitComplete:p,children:g.isOpen&&(0,xn.jsx)(Ii,{...r,children:n})})})})};lo.displayName="Modal";var uo={ease:[.25,.1,.25,1],easeIn:[.4,0,1,1],easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1]},ho={position:{left:0,top:0,bottom:0,width:"100%"},enter:{x:0,y:0},exit:{x:"-100%",y:0}},fo={position:{right:0,top:0,bottom:0,width:"100%"},enter:{x:0,y:0},exit:{x:"100%",y:0}},po={position:{top:0,left:0,right:0,maxWidth:"100vw"},enter:{x:0,y:0},exit:{x:0,y:"-100%"}},mo={position:{bottom:0,left:0,right:0,maxWidth:"100vw"},enter:{x:0,y:0},exit:{x:0,y:"100%"}};function go(e){var t;switch(null!=(t=null==e?void 0:e.direction)?t:"right"){case"right":default:return fo;case"left":return ho;case"bottom":return mo;case"top":return po}}var vo={enter:{duration:.2,ease:uo.easeOut},exit:{duration:.1,ease:uo.easeIn}},yo=(e,t)=>({...e,delay:"number"===typeof t?t:null==t?void 0:t.enter}),bo=(e,t)=>({...e,delay:"number"===typeof t?t:null==t?void 0:t.exit});const wo=(0,i.createContext)({}),xo=(0,i.createContext)({strict:!1}),_o=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),ko="data-"+_o("framerAppearId"),{schedule:So,cancel:Eo}=$i(queueMicrotask,!1);function Ao(e){return e&&"object"===typeof e&&Object.prototype.hasOwnProperty.call(e,"current")}function Po(e){return"string"===typeof e||Array.isArray(e)}function Oo(e){return null!==e&&"object"===typeof e&&"function"===typeof e.start}const To=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Co=["initial",...To];function jo(e){return Oo(e.animate)||Co.some((t=>Po(e[t])))}function Ro(e){return Boolean(jo(e)||e.variants)}function Io(e){const{initial:t,animate:r}=function(e,t){if(jo(e)){const{initial:t,animate:r}=e;return{initial:!1===t||Po(t)?t:void 0,animate:Po(r)?r:void 0}}return!1!==e.inherit?t:{}}(e,(0,i.useContext)(wo));return(0,i.useMemo)((()=>({initial:t,animate:r})),[Mo(t),Mo(r)])}function Mo(e){return Array.isArray(e)?e.join(" "):e}const Lo={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},No={};for(const r in Lo)No[r]={isEnabled:e=>Lo[r].some((t=>!!e[t]))};const Do=(0,i.createContext)({}),zo=Symbol.for("motionComponentSymbol");function Bo({preloadedFeatures:e,createVisualElement:t,useRender:r,useVisualState:n,Component:o}){e&&function(e){for(const t in e)No[t]={...No[t],...e[t]}}(e);const a=(0,i.forwardRef)((function(a,s){let c;const l={...(0,i.useContext)(Zi),...a,layoutId:Fo(a)},{isStatic:u}=l,d=Io(a),h=n(a,u);if(!u&&Mi){d.visualElement=function(e,t,r,n){const{visualElement:o}=(0,i.useContext)(wo),a=(0,i.useContext)(xo),s=(0,i.useContext)(Wi),c=(0,i.useContext)(Zi).reducedMotion,l=(0,i.useRef)();n=n||a.renderer,!l.current&&n&&(l.current=n(e,{visualState:t,parent:o,props:r,presenceContext:s,blockInitialAnimation:!!s&&!1===s.initial,reducedMotionConfig:c}));const u=l.current;(0,i.useInsertionEffect)((()=>{u&&u.update(r,s)}));const d=(0,i.useRef)(Boolean(r[ko]&&!window.HandoffComplete));return Li((()=>{u&&(So.postRender(u.render),d.current&&u.animationState&&u.animationState.animateChanges())})),(0,i.useEffect)((()=>{u&&(u.updateFeatures(),!d.current&&u.animationState&&u.animationState.animateChanges(),d.current&&(d.current=!1,window.HandoffComplete=!0))})),u}(o,h,l,t);const r=(0,i.useContext)(Do),n=(0,i.useContext)(xo).strict;d.visualElement&&(c=d.visualElement.loadFeatures(l,n,e,r))}return i.createElement(wo.Provider,{value:d},c&&d.visualElement?i.createElement(c,{visualElement:d.visualElement,...l}):null,r(o,a,function(e,t,r){return(0,i.useCallback)((n=>{n&&e.mount&&e.mount(n),t&&(n?t.mount(n):t.unmount()),r&&("function"===typeof r?r(n):Ao(r)&&(r.current=n))}),[t])}(h,d.visualElement,s),h,u,d.visualElement))}));return a[zo]=o,a}function Fo({layoutId:e}){const t=(0,i.useContext)(eo).id;return t&&void 0!==e?t+"-"+e:e}function Uo(e){function t(t,r={}){return Bo(e(t,r))}if("undefined"===typeof Proxy)return t;const r=new Map;return new Proxy(t,{get:(e,n)=>(r.has(n)||r.set(n,t(n)),r.get(n))})}const $o=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function Ho(e){return"string"===typeof e&&!e.includes("-")&&!!($o.indexOf(e)>-1||/[A-Z]/u.test(e))}const Vo={};const qo=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Ko=new Set(qo);function Wo(e,{layout:t,layoutId:r}){return Ko.has(e)||e.startsWith("origin")||(t||void 0!==r)&&(!!Vo[e]||"opacity"===e)}const Go=e=>Boolean(e&&e.getVelocity),Zo={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},Yo=qo.length;const Xo=e=>t=>"string"===typeof t&&t.startsWith(e),Jo=Xo("--"),Qo=Xo("var(--"),ea=e=>!!Qo(e)&&ta.test(e.split("/*")[0].trim()),ta=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,ra=(e,t)=>t&&"number"===typeof e?t.transform(e):e,na=(e,t,r)=>r>t?t:r"number"===typeof e,parse:parseFloat,transform:e=>e},oa={...ia,transform:e=>na(0,1,e)},aa={...ia,default:1},sa=e=>Math.round(1e5*e)/1e5,ca=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu,la=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu,ua=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu;function da(e){return"string"===typeof e}const ha=e=>({test:t=>da(t)&&t.endsWith(e)&&1===t.split(" ").length,parse:parseFloat,transform:t=>`${t}${e}`}),fa=ha("deg"),pa=ha("%"),ma=ha("px"),ga=ha("vh"),va=ha("vw"),ya={...pa,parse:e=>pa.parse(e)/100,transform:e=>pa.transform(100*e)},ba={...ia,transform:Math.round},wa={borderWidth:ma,borderTopWidth:ma,borderRightWidth:ma,borderBottomWidth:ma,borderLeftWidth:ma,borderRadius:ma,radius:ma,borderTopLeftRadius:ma,borderTopRightRadius:ma,borderBottomRightRadius:ma,borderBottomLeftRadius:ma,width:ma,maxWidth:ma,height:ma,maxHeight:ma,size:ma,top:ma,right:ma,bottom:ma,left:ma,padding:ma,paddingTop:ma,paddingRight:ma,paddingBottom:ma,paddingLeft:ma,margin:ma,marginTop:ma,marginRight:ma,marginBottom:ma,marginLeft:ma,rotate:fa,rotateX:fa,rotateY:fa,rotateZ:fa,scale:aa,scaleX:aa,scaleY:aa,scaleZ:aa,skew:fa,skewX:fa,skewY:fa,distance:ma,translateX:ma,translateY:ma,translateZ:ma,x:ma,y:ma,z:ma,perspective:ma,transformPerspective:ma,opacity:oa,originX:ya,originY:ya,originZ:ma,zIndex:ba,fillOpacity:oa,strokeOpacity:oa,numOctaves:ba};function xa(e,t,r,n){const{style:i,vars:o,transform:a,transformOrigin:s}=e;let c=!1,l=!1,u=!0;for(const d in t){const e=t[d];if(Jo(d)){o[d]=e;continue}const r=wa[d],n=ra(e,r);if(Ko.has(d)){if(c=!0,a[d]=n,!u)continue;e!==(r.default||0)&&(u=!1)}else d.startsWith("origin")?(l=!0,s[d]=n):i[d]=n}if(t.transform||(c||n?i.transform=function(e,{enableHardwareAcceleration:t=!0,allowTransformNone:r=!0},n,i){let o="";for(let a=0;a({style:{},transform:{},transformOrigin:{},vars:{}});function ka(e,t,r){for(const n in t)Go(t[n])||Wo(n,r)||(e[n]=t[n])}function Sa(e,t,r){const n={};return ka(n,e.style||{},e),Object.assign(n,function({transformTemplate:e},t,r){return(0,i.useMemo)((()=>{const n=_a();return xa(n,t,{enableHardwareAcceleration:!r},e),Object.assign({},n.vars,n.style)}),[t])}(e,t,r)),n}function Ea(e,t,r){const n={},i=Sa(e,t,r);return e.drag&&!1!==e.dragListener&&(n.draggable=!1,i.userSelect=i.WebkitUserSelect=i.WebkitTouchCallout="none",i.touchAction=!0===e.drag?"none":"pan-"+("x"===e.drag?"y":"x")),void 0===e.tabIndex&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=i,n}const Aa=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function Pa(e){return e.startsWith("while")||e.startsWith("drag")&&"draggable"!==e||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||Aa.has(e)}let Oa=e=>!Pa(e);try{(Ta=require("@emotion/is-prop-valid").default)&&(Oa=e=>e.startsWith("on")?!Pa(e):Ta(e))}catch(ln){}var Ta;function Ca(e,t,r){return"string"===typeof e?e:ma.transform(t+r*e)}const ja={offset:"stroke-dashoffset",array:"stroke-dasharray"},Ra={offset:"strokeDashoffset",array:"strokeDasharray"};function Ia(e,{attrX:t,attrY:r,attrScale:n,originX:i,originY:o,pathLength:a,pathSpacing:s=1,pathOffset:c=0,...l},u,d,h){if(xa(e,l,u,h),d)return void(e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox));e.attrs=e.style,e.style={};const{attrs:f,style:p,dimensions:m}=e;f.transform&&(m&&(p.transform=f.transform),delete f.transform),m&&(void 0!==i||void 0!==o||p.transform)&&(p.transformOrigin=function(e,t,r){return`${Ca(t,e.x,e.width)} ${Ca(r,e.y,e.height)}`}(m,void 0!==i?i:.5,void 0!==o?o:.5)),void 0!==t&&(f.x=t),void 0!==r&&(f.y=r),void 0!==n&&(f.scale=n),void 0!==a&&function(e,t,r=1,n=0,i=!0){e.pathLength=1;const o=i?ja:Ra;e[o.offset]=ma.transform(-n);const a=ma.transform(t),s=ma.transform(r);e[o.array]=`${a} ${s}`}(f,a,s,c,!1)}const Ma=()=>({..._a(),attrs:{}}),La=e=>"string"===typeof e&&"svg"===e.toLowerCase();function Na(e,t,r,n){const o=(0,i.useMemo)((()=>{const r=Ma();return Ia(r,t,{enableHardwareAcceleration:!1},La(n),e.transformTemplate),{...r.attrs,style:{...r.style}}}),[t]);if(e.style){const t={};ka(t,e.style,e),o.style={...t,...o.style}}return o}function Da(e=!1){return(t,r,n,{latestValues:o},a)=>{const s=(Ho(t)?Na:Ea)(r,o,a,t),c=function(e,t,r){const n={};for(const i in e)"values"===i&&"object"===typeof e.values||(Oa(i)||!0===r&&Pa(i)||!t&&!Pa(i)||e.draggable&&i.startsWith("onDrag"))&&(n[i]=e[i]);return n}(r,"string"===typeof t,e),l=t!==i.Fragment?{...c,...s,ref:n}:{},{children:u}=r,d=(0,i.useMemo)((()=>Go(u)?u.get():u),[u]);return(0,i.createElement)(t,{...l,children:d})}}function za(e,{style:t,vars:r},n,i){Object.assign(e.style,t,i&&i.getProjectionStyles(n));for(const o in r)e.style.setProperty(o,r[o])}const Ba=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function Fa(e,t,r,n){za(e,t,void 0,n);for(const i in t.attrs)e.setAttribute(Ba.has(i)?i:_o(i),t.attrs[i])}function Ua(e,t){const{style:r}=e,n={};for(const i in r)(Go(r[i])||t.style&&Go(t.style[i])||Wo(i,e))&&(n[i]=r[i]);return n}function $a(e,t){const r=Ua(e,t);for(const n in e)if(Go(e[n])||Go(t[n])){r[-1!==qo.indexOf(n)?"attr"+n.charAt(0).toUpperCase()+n.substring(1):n]=e[n]}return r}function Ha(e,t,r,n={},i={}){return"function"===typeof t&&(t=t(void 0!==r?r:e.custom,n,i)),"string"===typeof t&&(t=e.variants&&e.variants[t]),"function"===typeof t&&(t=t(void 0!==r?r:e.custom,n,i)),t}const Va=e=>Array.isArray(e),qa=e=>Boolean(e&&"object"===typeof e&&e.mix&&e.toValue),Ka=e=>Va(e)?e[e.length-1]||0:e;function Wa(e){const t=Go(e)?e.get():e;return qa(t)?t.toValue():t}const Ga=e=>(t,r)=>{const n=(0,i.useContext)(wo),o=(0,i.useContext)(Wi),a=()=>function({scrapeMotionValuesFromProps:e,createRenderState:t,onMount:r},n,i,o){const a={latestValues:Za(n,i,o,e),renderState:t()};return r&&(a.mount=e=>r(n,e,a)),a}(e,t,n,o);return r?a():Gi(a)};function Za(e,t,r,n){const i={},o=n(e,{});for(const h in o)i[h]=Wa(o[h]);let{initial:a,animate:s}=e;const c=jo(e),l=Ro(e);t&&l&&!c&&!1!==e.inherit&&(void 0===a&&(a=t.initial),void 0===s&&(s=t.animate));let u=!!r&&!1===r.initial;u=u||!1===a;const d=u?s:a;if(d&&"boolean"!==typeof d&&!Oo(d)){(Array.isArray(d)?d:[d]).forEach((t=>{const r=Ha(e,t);if(!r)return;const{transitionEnd:n,transition:o,...a}=r;for(const e in a){let t=a[e];if(Array.isArray(t)){t=t[u?t.length-1:0]}null!==t&&(i[e]=t)}for(const e in n)i[e]=n[e]}))}return i}const Ya={useVisualState:Ga({scrapeMotionValuesFromProps:$a,createRenderState:Ma,onMount:(e,t,{renderState:r,latestValues:n})=>{Hi.read((()=>{try{r.dimensions="function"===typeof t.getBBox?t.getBBox():t.getBoundingClientRect()}catch(e){r.dimensions={x:0,y:0,width:0,height:0}}})),Hi.render((()=>{Ia(r,n,{enableHardwareAcceleration:!1},La(t.tagName),e.transformTemplate),Fa(t,r)}))}})},Xa={useVisualState:Ga({scrapeMotionValuesFromProps:Ua,createRenderState:_a})};function Ja(e,t,r,n={passive:!0}){return e.addEventListener(t,r,n),()=>e.removeEventListener(t,r)}const Qa=e=>"mouse"===e.pointerType?"number"!==typeof e.button||e.button<=0:!1!==e.isPrimary;function es(e,t="page"){return{point:{x:e[t+"X"],y:e[t+"Y"]}}}const ts=e=>t=>Qa(t)&&e(t,es(t));function rs(e,t,r,n){return Ja(e,t,ts(r),n)}const ns=(e,t)=>r=>t(e(r)),is=(...e)=>e.reduce(ns);function os(e){let t=null;return()=>{const r=()=>{t=null};return null===t&&(t=e,r)}}const as=os("dragHorizontal"),ss=os("dragVertical");function cs(e){let t=!1;if("y"===e)t=ss();else if("x"===e)t=as();else{const e=as(),r=ss();e&&r?t=()=>{e(),r()}:(e&&e(),r&&r())}return t}function ls(){const e=cs(!0);return!e||(e(),!1)}class us{constructor(e){this.isMounted=!1,this.node=e}update(){}}function ds(e,t){const r="pointer"+(t?"enter":"leave"),n="onHover"+(t?"Start":"End");return rs(e.current,r,((r,i)=>{if("touch"===r.pointerType||ls())return;const o=e.getProps();e.animationState&&o.whileHover&&e.animationState.setActive("whileHover",t),o[n]&&o[n](r,i)}),{passive:!e.getProps()[n]})}const hs=(e,t)=>!!t&&(e===t||hs(e,t.parentElement));function fs(e,t){if(!t)return;const r=new PointerEvent("pointer"+e);t(r,es(r))}const ps=new WeakMap,ms=new WeakMap,gs=e=>{const t=ps.get(e.target);t&&t(e)},vs=e=>{e.forEach(gs)};function ys(e,t,r){const n=function({root:e,...t}){const r=e||document;ms.has(r)||ms.set(r,{});const n=ms.get(r),i=JSON.stringify(t);return n[i]||(n[i]=new IntersectionObserver(vs,{root:e,...t})),n[i]}(t);return ps.set(e,r),n.observe(e),()=>{ps.delete(e),n.unobserve(e)}}const bs={some:0,all:1};const ws={inView:{Feature:class extends us{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:t,margin:r,amount:n="some",once:i}=e,o={root:t?t.current:void 0,rootMargin:r,threshold:"number"===typeof n?n:bs[n]};return ys(this.node.current,o,(e=>{const{isIntersecting:t}=e;if(this.isInView===t)return;if(this.isInView=t,i&&!t&&this.hasEnteredView)return;t&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",t);const{onViewportEnter:r,onViewportLeave:n}=this.node.getProps(),o=t?r:n;o&&o(e)}))}mount(){this.startObserver()}update(){if("undefined"===typeof IntersectionObserver)return;const{props:e,prevProps:t}=this.node,r=["amount","margin","root"].some(function({viewport:e={}},{viewport:t={}}={}){return r=>e[r]!==t[r]}(e,t));r&&this.startObserver()}unmount(){}}},tap:{Feature:class extends us{constructor(){super(...arguments),this.removeStartListeners=Di,this.removeEndListeners=Di,this.removeAccessibleListeners=Di,this.startPointerPress=(e,t)=>{if(this.isPressing)return;this.removeEndListeners();const r=this.node.getProps(),n=rs(window,"pointerup",((e,t)=>{if(!this.checkPressEnd())return;const{onTap:r,onTapCancel:n,globalTapTarget:i}=this.node.getProps();i||hs(this.node.current,e.target)?r&&r(e,t):n&&n(e,t)}),{passive:!(r.onTap||r.onPointerUp)}),i=rs(window,"pointercancel",((e,t)=>this.cancelPress(e,t)),{passive:!(r.onTapCancel||r.onPointerCancel)});this.removeEndListeners=is(n,i),this.startPress(e,t)},this.startAccessiblePress=()=>{const e=Ja(this.node.current,"keydown",(e=>{if("Enter"!==e.key||this.isPressing)return;this.removeEndListeners(),this.removeEndListeners=Ja(this.node.current,"keyup",(e=>{"Enter"===e.key&&this.checkPressEnd()&&fs("up",((e,t)=>{const{onTap:r}=this.node.getProps();r&&r(e,t)}))})),fs("down",((e,t)=>{this.startPress(e,t)}))})),t=Ja(this.node.current,"blur",(()=>{this.isPressing&&fs("cancel",((e,t)=>this.cancelPress(e,t)))}));this.removeAccessibleListeners=is(e,t)}}startPress(e,t){this.isPressing=!0;const{onTapStart:r,whileTap:n}=this.node.getProps();n&&this.node.animationState&&this.node.animationState.setActive("whileTap",!0),r&&r(e,t)}checkPressEnd(){this.removeEndListeners(),this.isPressing=!1;return this.node.getProps().whileTap&&this.node.animationState&&this.node.animationState.setActive("whileTap",!1),!ls()}cancelPress(e,t){if(!this.checkPressEnd())return;const{onTapCancel:r}=this.node.getProps();r&&r(e,t)}mount(){const e=this.node.getProps(),t=rs(e.globalTapTarget?window:this.node.current,"pointerdown",this.startPointerPress,{passive:!(e.onTapStart||e.onPointerStart)}),r=Ja(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=is(t,r)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}},focus:{Feature:class extends us{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch(t){e=!0}e&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){this.isActive&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=is(Ja(this.node.current,"focus",(()=>this.onFocus())),Ja(this.node.current,"blur",(()=>this.onBlur())))}unmount(){}}},hover:{Feature:class extends us{mount(){this.unmount=is(ds(this.node,!0),ds(this.node,!1))}unmount(){}}}};function xs(e,t){if(!Array.isArray(t))return!1;const r=t.length;if(r!==e.length)return!1;for(let n=0;nt[r]=e.get())),t}(e),function(e){const t={};return e.values.forEach(((e,r)=>t[r]=e.getVelocity())),t}(e))}const ks=e=>1e3*e,Ss=e=>e/1e3,Es={type:"spring",stiffness:500,damping:25,restSpeed:10},As={type:"keyframes",duration:.8},Ps={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},Os=(e,{keyframes:t})=>t.length>2?As:Ko.has(e)?e.startsWith("scale")?{type:"spring",stiffness:550,damping:0===t[1]?2*Math.sqrt(550):30,restSpeed:10}:Es:Ps;function Ts(e,t){return e[t]||e.default||e}const Cs=!1,js=e=>null!==e;function Rs(e,{repeat:t,repeatType:r="loop"}){const n=e.filter(js);return n[t&&"loop"!==r&&t%2===1?0:n.length-1]}let Is;function Ms(){Is=void 0}const Ls={now:()=>(void 0===Is&&Ls.set(qi.isProcessing||Bi?qi.timestamp:performance.now()),Is),set:e=>{Is=e,queueMicrotask(Ms)}},Ns=e=>/^0[^.\s]+$/u.test(e);function Ds(e){return"number"===typeof e?0===e:null===e||("none"===e||"0"===e||Ns(e))}const zs=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e),Bs=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function Fs(e,t,r=1){ro(r<=4,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`);const[n,i]=function(e){const t=Bs.exec(e);if(!t)return[,];const[,r,n,i]=t;return[`--${null!==r&&void 0!==r?r:n}`,i]}(e);if(!n)return;const o=window.getComputedStyle(t).getPropertyValue(n);if(o){const e=o.trim();return zs(e)?parseFloat(e):e}return ea(i)?Fs(i,t,r+1):i}const Us=new Set(["width","height","top","left","right","bottom","x","y","translateX","translateY"]),$s=e=>e===ia||e===ma,Hs=(e,t)=>parseFloat(e.split(", ")[t]),Vs=(e,t)=>(r,{transform:n})=>{if("none"===n||!n)return 0;const i=n.match(/^matrix3d\((.+)\)$/u);if(i)return Hs(i[1],t);{const t=n.match(/^matrix\((.+)\)$/u);return t?Hs(t[1],e):0}},qs=new Set(["x","y","z"]),Ks=qo.filter((e=>!qs.has(e)));const Ws={width:({x:e},{paddingLeft:t="0",paddingRight:r="0"})=>e.max-e.min-parseFloat(t)-parseFloat(r),height:({y:e},{paddingTop:t="0",paddingBottom:r="0"})=>e.max-e.min-parseFloat(t)-parseFloat(r),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:Vs(4,13),y:Vs(5,14)};Ws.translateX=Ws.x,Ws.translateY=Ws.y;const Gs=e=>t=>t.test(e),Zs=[ia,ma,pa,fa,va,ga,{test:e=>"auto"===e,parse:e=>e}],Ys=e=>Zs.find(Gs(e)),Xs=new Set;let Js=!1,Qs=!1;function ec(){Qs&&(Xs.forEach((e=>{e.needsMeasurement&&e.unsetTransforms()})),Xs.forEach((e=>{e.needsMeasurement&&e.measureInitialState()})),Xs.forEach((e=>{e.needsMeasurement&&e.renderEndStyles()})),Xs.forEach((e=>{e.needsMeasurement&&e.measureEndState()}))),Qs=!1,Js=!1,Xs.forEach((e=>e.complete())),Xs.clear()}function tc(){Xs.forEach((e=>{e.readKeyframes(),e.needsMeasurement&&(Qs=!0)})),Hi.resolveKeyframes(ec)}class rc{constructor(e,t,r,n,i,o=!1){this.isComplete=!1,this.isAsync=!1,this.needsMeasurement=!1,this.isScheduled=!1,this.unresolvedKeyframes=[...e],this.onComplete=t,this.name=r,this.motionValue=n,this.element=i,this.isAsync=o}scheduleResolve(){this.isScheduled=!0,this.isAsync?(Xs.add(this),Js||(Js=!0,Hi.read(tc))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:t,element:r,motionValue:n}=this;for(let i=0;ir=>Boolean(da(r)&&ua.test(r)&&r.startsWith(e)||t&&Object.prototype.hasOwnProperty.call(r,t)),ic=(e,t,r)=>n=>{if(!da(n))return n;const[i,o,a,s]=n.match(ca);return{[e]:parseFloat(i),[t]:parseFloat(o),[r]:parseFloat(a),alpha:void 0!==s?parseFloat(s):1}},oc={...ia,transform:e=>Math.round((e=>na(0,255,e))(e))},ac={test:nc("rgb","red"),parse:ic("red","green","blue"),transform:({red:e,green:t,blue:r,alpha:n=1})=>"rgba("+oc.transform(e)+", "+oc.transform(t)+", "+oc.transform(r)+", "+sa(oa.transform(n))+")"};const sc={test:nc("#"),parse:function(e){let t="",r="",n="",i="";return e.length>5?(t=e.substring(1,3),r=e.substring(3,5),n=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),r=e.substring(2,3),n=e.substring(3,4),i=e.substring(4,5),t+=t,r+=r,n+=n,i+=i),{red:parseInt(t,16),green:parseInt(r,16),blue:parseInt(n,16),alpha:i?parseInt(i,16)/255:1}},transform:ac.transform},cc={test:nc("hsl","hue"),parse:ic("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:r,alpha:n=1})=>"hsla("+Math.round(e)+", "+pa.transform(sa(t))+", "+pa.transform(sa(r))+", "+sa(oa.transform(n))+")"},lc={test:e=>ac.test(e)||sc.test(e)||cc.test(e),parse:e=>ac.test(e)?ac.parse(e):cc.test(e)?cc.parse(e):sc.parse(e),transform:e=>da(e)?e:e.hasOwnProperty("red")?ac.transform(e):cc.transform(e)};const uc="number",dc="color",hc="var",fc="var(",pc="${}",mc=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function gc(e){const t=e.toString(),r=[],n={color:[],number:[],var:[]},i=[];let o=0;const a=t.replace(mc,(e=>(lc.test(e)?(n.color.push(o),i.push(dc),r.push(lc.parse(e))):e.startsWith(fc)?(n.var.push(o),i.push(hc),r.push(e)):(n.number.push(o),i.push(uc),r.push(parseFloat(e))),++o,pc))).split(pc);return{values:r,split:a,indexes:n,types:i}}function vc(e){return gc(e).values}function yc(e){const{split:t,types:r}=gc(e),n=t.length;return e=>{let i="";for(let o=0;o"number"===typeof e?0:e;const wc={test:function(e){var t,r;return isNaN(e)&&da(e)&&((null===(t=e.match(ca))||void 0===t?void 0:t.length)||0)+((null===(r=e.match(la))||void 0===r?void 0:r.length)||0)>0},parse:vc,createTransformer:yc,getAnimatableNone:function(e){const t=vc(e);return yc(e)(t.map(bc))}},xc=new Set(["brightness","contrast","saturate","opacity"]);function _c(e){const[t,r]=e.slice(0,-1).split("(");if("drop-shadow"===t)return e;const[n]=r.match(ca)||[];if(!n)return e;const i=r.replace(n,"");let o=xc.has(t)?1:0;return n!==r&&(o*=100),t+"("+o+i+")"}const kc=/\b([a-z-]*)\(.*?\)/gu,Sc={...wc,getAnimatableNone:e=>{const t=e.match(kc);return t?t.map(_c).join(" "):e}},Ec={...wa,color:lc,backgroundColor:lc,outlineColor:lc,fill:lc,stroke:lc,borderColor:lc,borderTopColor:lc,borderRightColor:lc,borderBottomColor:lc,borderLeftColor:lc,filter:Sc,WebkitFilter:Sc},Ac=e=>Ec[e];function Pc(e,t){let r=Ac(e);return r!==Sc&&(r=wc),r.getAnimatableNone?r.getAnimatableNone(t):void 0}class Oc extends rc{constructor(e,t,r,n){super(e,t,r,n,null===n||void 0===n?void 0:n.owner,!0)}readKeyframes(){const{unresolvedKeyframes:e,element:t,name:r}=this;if(!t.current)return;const n=[];super.readKeyframes();for(let c=0;c{const n=e.getValue(r);void 0!==n&&(t.push([r,n.get()]),n.set(r.startsWith("scale")?1:0))})),t.length&&e.render(),t}(e);const n=r[r.length-1];e.getValue(t,n).jump(n,!1)}measureInitialState(){const{element:e,unresolvedKeyframes:t,name:r}=this;e.current&&("height"===r&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=Ws[r](e.measureViewportBox(),window.getComputedStyle(e.current)),t[0]=this.measuredOrigin)}renderEndStyles(){this.element.render()}measureEndState(){var e;const{element:t,name:r,unresolvedKeyframes:n}=this;if(!t.current)return;const i=t.getValue(r);i&&i.jump(this.measuredOrigin,!1),n[n.length-1]=Ws[r](t.measureViewportBox(),window.getComputedStyle(t.current)),"height"===r&&void 0!==this.suspendedScrollY&&window.scrollTo(0,this.suspendedScrollY),(null===(e=this.removedTransforms)||void 0===e?void 0:e.length)&&this.removedTransforms.forEach((([e,r])=>{t.getValue(e).set(r)}))}}const Tc=(e,t)=>"zIndex"!==t&&(!("number"!==typeof e&&!Array.isArray(e))||!("string"!==typeof e||!wc.test(e)&&"0"!==e||e.startsWith("url(")));class Cc{constructor({autoplay:e=!0,delay:t=0,type:r="keyframes",repeat:n=0,repeatDelay:i=0,repeatType:o="loop",...a}){this.isStopped=!1,this.options={autoplay:e,delay:t,type:r,repeat:n,repeatDelay:i,repeatType:o,...a},this.updateFinishedPromise()}get resolved(){return this._resolved||(tc(),ec(),Vi(tc),Vi(ec)),this._resolved}onKeyframesResolved(e){const{name:t,type:r,velocity:n,delay:i,onComplete:o,onUpdate:a}=this.options;if(!function(e,t,r,n){const i=e[0];if(null===i)return!1;const o=e[e.length-1],a=Tc(i,t),s=Tc(o,t);return to(a===s,`You are trying to animate ${t} from "${i}" to "${o}". ${i} is not an animatable value - to enable this animation set ${i} to a value animatable to ${o} via the \`style\` property.`),!(!a||!s)&&(function(e){const t=e[0];if(1===e.length)return!0;for(let r=0;r{this.resolveFinishedPromise=()=>{e(),this.updateFinishedPromise()}}))}}function jc(e,t){return t?e*(1e3/t):0}const Rc=5;function Ic(e,t,r){const n=Math.max(t-Rc,0);return jc(r-e(n),t-n)}const Mc=.001,Lc=.01,Nc=10,Dc=.05,zc=1;function Bc({duration:e=800,bounce:t=.25,velocity:r=0,mass:n=1}){let i,o;to(e<=ks(Nc),"Spring duration must be 10 seconds or less");let a=1-t;a=na(Dc,zc,a),e=na(Lc,Nc,Ss(e)),a<1?(i=t=>{const n=t*a,i=n*e,o=n-r,s=Uc(t,a),c=Math.exp(-i);return Mc-o/s*c},o=t=>{const n=t*a*e,o=n*r+r,s=Math.pow(a,2)*Math.pow(t,2)*e,c=Math.exp(-n),l=Uc(Math.pow(t,2),a);return(-i(t)+Mc>0?-1:1)*((o-s)*c)/l}):(i=t=>Math.exp(-t*e)*((t-r)*e+1)-Mc,o=t=>Math.exp(-t*e)*(e*e*(r-t)));const s=function(e,t,r){let n=r;for(let i=1;ivoid 0!==e[t]))}function qc({keyframes:e,restDelta:t,restSpeed:r,...n}){const i=e[0],o=e[e.length-1],a={done:!1,value:i},{stiffness:s,damping:c,mass:l,duration:u,velocity:d,isResolvedFromDuration:h}=function(e){let t={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...e};if(!Vc(e,Hc)&&Vc(e,$c)){const r=Bc(e);t={...t,...r,mass:1},t.isResolvedFromDuration=!0}return t}({...n,velocity:-Ss(n.velocity||0)}),f=d||0,p=c/(2*Math.sqrt(s*l)),m=o-i,g=Ss(Math.sqrt(s/l)),v=Math.abs(m)<5;let y;if(r||(r=v?.01:2),t||(t=v?.005:.5),p<1){const e=Uc(g,p);y=t=>{const r=Math.exp(-p*g*t);return o-r*((f+p*g*m)/e*Math.sin(e*t)+m*Math.cos(e*t))}}else if(1===p)y=e=>o-Math.exp(-g*e)*(m+(f+g*m)*e);else{const e=g*Math.sqrt(p*p-1);y=t=>{const r=Math.exp(-p*g*t),n=Math.min(e*t,300);return o-r*((f+p*g*m)*Math.sinh(n)+e*m*Math.cosh(n))/e}}return{calculatedDuration:h&&u||null,next:e=>{const n=y(e);if(h)a.done=e>=u;else{let i=f;0!==e&&(i=p<1?Ic(y,e,n):0);const s=Math.abs(i)<=r,c=Math.abs(o-n)<=t;a.done=s&&c}return a.value=a.done?o:n,a}}}function Kc({keyframes:e,velocity:t=0,power:r=.8,timeConstant:n=325,bounceDamping:i=10,bounceStiffness:o=500,modifyTarget:a,min:s,max:c,restDelta:l=.5,restSpeed:u}){const d=e[0],h={done:!1,value:d},f=e=>void 0===s?c:void 0===c||Math.abs(s-e)-p*Math.exp(-e/n),y=e=>g+v(e),b=e=>{const t=v(e),r=y(e);h.done=Math.abs(t)<=l,h.value=h.done?g:r};let w,x;const _=e=>{(e=>void 0!==s&&ec)(h.value)&&(w=e,x=qc({keyframes:[h.value,f(h.value)],velocity:Ic(y,e,h.value),damping:i,stiffness:o,restDelta:l,restSpeed:u}))};return _(0),{calculatedDuration:null,next:e=>{let t=!1;return x||void 0!==w||(t=!0,b(e),_(e)),void 0!==w&&e>=w?x.next(e-w):(!t&&b(e),h)}}}const Wc=(e,t,r)=>(((1-3*r+3*t)*e+(3*r-6*t))*e+3*t)*e,Gc=1e-7,Zc=12;function Yc(e,t,r,n){if(e===t&&r===n)return Di;const i=t=>function(e,t,r,n,i){let o,a,s=0;do{a=t+(r-t)/2,o=Wc(a,n,i)-e,o>0?r=a:t=a}while(Math.abs(o)>Gc&&++s0===e||1===e?e:Wc(i(e),t,n)}const Xc=Yc(.42,0,1,1),Jc=Yc(0,0,.58,1),Qc=Yc(.42,0,.58,1),el=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,tl=e=>t=>1-e(1-t),rl=e=>1-Math.sin(Math.acos(e)),nl=tl(rl),il=el(rl),ol=Yc(.33,1.53,.69,.99),al=tl(ol),sl=el(al),cl={linear:Di,easeIn:Xc,easeInOut:Qc,easeOut:Jc,circIn:rl,circInOut:il,circOut:nl,backIn:al,backInOut:sl,backOut:ol,anticipate:e=>(e*=2)<1?.5*al(e):.5*(2-Math.pow(2,-10*(e-1)))},ll=e=>{if(Array.isArray(e)){ro(4===e.length,"Cubic bezier arrays must contain four numerical values.");const[t,r,n,i]=e;return Yc(t,r,n,i)}return"string"===typeof e?(ro(void 0!==cl[e],`Invalid easing type '${e}'`),cl[e]):e},ul=(e,t,r)=>{const n=t-e;return 0===n?1:(r-e)/n},dl=(e,t,r)=>e+(t-e)*r;function hl(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+6*(t-e)*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e}const fl=(e,t,r)=>{const n=e*e,i=r*(t*t-n)+n;return i<0?0:Math.sqrt(i)},pl=[sc,ac,cc];function ml(e){const t=(e=>pl.find((t=>t.test(e))))(e);ro(Boolean(t),`'${e}' is not an animatable color. Use the equivalent color code instead.`);let r=t.parse(e);return t===cc&&(r=function({hue:e,saturation:t,lightness:r,alpha:n}){e/=360,r/=100;let i=0,o=0,a=0;if(t/=100){const n=r<.5?r*(1+t):r+t-r*t,s=2*r-n;i=hl(s,n,e+1/3),o=hl(s,n,e),a=hl(s,n,e-1/3)}else i=o=a=r;return{red:Math.round(255*i),green:Math.round(255*o),blue:Math.round(255*a),alpha:n}}(r)),r}const gl=(e,t)=>{const r=ml(e),n=ml(t),i={...r};return e=>(i.red=fl(r.red,n.red,e),i.green=fl(r.green,n.green,e),i.blue=fl(r.blue,n.blue,e),i.alpha=dl(r.alpha,n.alpha,e),ac.transform(i))};function vl(e,t){return r=>r>0?t:e}function yl(e,t){return r=>dl(e,t,r)}function bl(e){return"number"===typeof e?yl:"string"===typeof e?ea(e)?vl:lc.test(e)?gl:_l:Array.isArray(e)?wl:"object"===typeof e?lc.test(e)?gl:xl:vl}function wl(e,t){const r=[...e],n=r.length,i=e.map(((e,r)=>bl(e)(e,t[r])));return e=>{for(let t=0;t{for(const t in n)r[t]=n[t](e);return r}}const _l=(e,t)=>{const r=wc.createTransformer(t),n=gc(e),i=gc(t);return n.indexes.var.length===i.indexes.var.length&&n.indexes.color.length===i.indexes.color.length&&n.indexes.number.length>=i.indexes.number.length?is(wl(function(e,t){var r;const n=[],i={color:0,var:0,number:0};for(let o=0;ot[0];if(2===o&&e[0]===e[1])return()=>t[1];e[0]>e[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const a=function(e,t,r){const n=[],i=r||kl,o=e.length-1;for(let a=0;a{let r=0;if(s>1)for(;rc(na(e[0],e[o-1],t)):c}function El(e){const t=[0];return function(e,t){const r=e[e.length-1];for(let n=1;n<=t;n++){const i=ul(0,t,n);e.push(dl(r,1,i))}}(t,e.length-1),t}function Al({duration:e=300,keyframes:t,times:r,ease:n="easeInOut"}){const i=(e=>Array.isArray(e)&&"number"!==typeof e[0])(n)?n.map(ll):ll(n),o={done:!1,value:t[0]},a=function(e,t){return e.map((e=>e*t))}(r&&r.length===t.length?r:El(t),e),s=Sl(a,t,{ease:Array.isArray(i)?i:(c=t,l=i,c.map((()=>l||Qc)).splice(0,c.length-1))});var c,l;return{calculatedDuration:e,next:t=>(o.value=s(t),o.done=t>=e,o)}}const Pl=e=>{const t=({timestamp:t})=>e(t);return{start:()=>Hi.update(t,!0),stop:()=>Vi(t),now:()=>qi.isProcessing?qi.timestamp:Ls.now()}},Ol={decay:Kc,inertia:Kc,tween:Al,keyframes:Al,spring:qc},Tl=e=>e/100;class Cl extends Cc{constructor({KeyframeResolver:e=rc,...t}){super(t),this.holdTime=null,this.startTime=null,this.cancelTime=null,this.currentTime=0,this.playbackSpeed=1,this.pendingPlayState="running",this.state="idle";const{name:r,motionValue:n,keyframes:i}=this.options,o=e=>this.onKeyframesResolved(e);r&&n&&n.owner?this.resolver=n.owner.resolveKeyframes(i,o,r,n):this.resolver=new e(i,o,r,n),this.resolver.scheduleResolve()}initPlayback(e){const{type:t="keyframes",repeat:r=0,repeatDelay:n=0,repeatType:i,velocity:o=0}=this.options,a=Ol[t]||Al;let s,c;a!==Al&&"number"!==typeof e[0]&&(s=is(Tl,kl(e[0],e[1])),e=[0,100]);const l=a({...this.options,keyframes:e});"mirror"===i&&(c=a({...this.options,keyframes:[...e].reverse(),velocity:-o})),null===l.calculatedDuration&&(l.calculatedDuration=function(e){let t=0,r=e.next(t);for(;!r.done&&t<2e4;)t+=50,r=e.next(t);return t>=2e4?1/0:t}(l));const{calculatedDuration:u}=l,d=u+n;return{generator:l,mirroredGenerator:c,mapPercentToKeyframes:s,calculatedDuration:u,resolvedDuration:d,totalDuration:d*(r+1)-n}}onPostResolved(){const{autoplay:e=!0}=this.options;this.play(),"paused"!==this.pendingPlayState&&e?this.state=this.pendingPlayState:this.pause()}tick(e,t=!1){const{generator:r,mirroredGenerator:n,mapPercentToKeyframes:i,keyframes:o,calculatedDuration:a,totalDuration:s,resolvedDuration:c}=this.resolved;if(null===this.startTime)return r.next(0);const{delay:l,repeat:u,repeatType:d,repeatDelay:h,onUpdate:f}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,e):this.speed<0&&(this.startTime=Math.min(e-s/this.speed,this.startTime)),t?this.currentTime=e:null!==this.holdTime?this.currentTime=this.holdTime:this.currentTime=Math.round(e-this.startTime)*this.speed;const p=this.currentTime-l*(this.speed>=0?1:-1),m=this.speed>=0?p<0:p>s;this.currentTime=Math.max(p,0),"finished"===this.state&&null===this.holdTime&&(this.currentTime=s);let g=this.currentTime,v=r;if(u){const e=Math.min(this.currentTime,s)/c;let t=Math.floor(e),r=e%1;!r&&e>=1&&(r=1),1===r&&t--,t=Math.min(t,u+1);Boolean(t%2)&&("reverse"===d?(r=1-r,h&&(r-=h/c)):"mirror"===d&&(v=n)),g=na(0,1,r)*c}const y=m?{done:!1,value:o[0]}:v.next(g);i&&(y.value=i(y.value));let{done:b}=y;m||null===a||(b=this.speed>=0?this.currentTime>=s:this.currentTime<=0);const w=null===this.holdTime&&("finished"===this.state||"running"===this.state&&b);return f&&f(y.value),w&&this.finish(),y}get duration(){return Ss(this.resolved.calculatedDuration)}get time(){return Ss(this.currentTime)}set time(e){e=ks(e),this.currentTime=e,null!==this.holdTime||0===this.speed?this.holdTime=e:this.driver&&(this.startTime=this.driver.now()-e/this.speed)}get speed(){return this.playbackSpeed}set speed(e){const t=this.playbackSpeed!==e;this.playbackSpeed=e,t&&(this.time=Ss(this.currentTime))}play(){if(this.resolver.isScheduled||this.resolver.resume(),!this._resolved)return void(this.pendingPlayState="running");if(this.isStopped)return;const{driver:e=Pl,onPlay:t}=this.options;this.driver||(this.driver=e((e=>this.tick(e)))),t&&t();const r=this.driver.now();null!==this.holdTime?this.startTime=r-this.holdTime:this.startTime&&"finished"!==this.state||(this.startTime=r),"finished"===this.state&&this.updateFinishedPromise(),this.cancelTime=this.startTime,this.holdTime=null,this.state="running",this.driver.start()}pause(){var e;this._resolved?(this.state="paused",this.holdTime=null!==(e=this.currentTime)&&void 0!==e?e:0):this.pendingPlayState="paused"}stop(){if(this.isStopped=!0,"idle"===this.state)return;this.state="idle";const{onStop:e}=this.options;e&&e(),this.teardown()}complete(){"running"!==this.state&&this.play(),this.pendingPlayState=this.state="finished",this.holdTime=null}finish(){this.teardown(),this.state="finished";const{onComplete:e}=this.options;e&&e()}cancel(){null!==this.cancelTime&&this.tick(this.cancelTime),this.teardown()}teardown(){this.state="idle",this.stopDriver(),this.resolveFinishedPromise(),this.updateFinishedPromise(),this.startTime=this.cancelTime=null,this.resolver.cancel()}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(e){return this.startTime=0,this.tick(e,!0)}}const jl=e=>Array.isArray(e)&&"number"===typeof e[0];function Rl(e){return Boolean(!e||"string"===typeof e&&Ml[e]||jl(e)||Array.isArray(e)&&e.every(Rl))}const Il=([e,t,r,n])=>`cubic-bezier(${e}, ${t}, ${r}, ${n})`,Ml={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Il([0,.65,.55,1]),circOut:Il([.55,0,1,.45]),backIn:Il([.31,.01,.66,-.59]),backOut:Il([.33,1.53,.69,.99])};function Ll(e){if(e)return jl(e)?Il(e):Array.isArray(e)?e.map(Ll):Ml[e]}const Nl=function(e){let t;return()=>(void 0===t&&(t=e()),t)}((()=>Object.hasOwnProperty.call(Element.prototype,"animate"))),Dl=new Set(["opacity","clipPath","filter","transform"]);class zl extends Cc{constructor(e){super(e);const{name:t,motionValue:r,keyframes:n}=this.options;this.resolver=new Oc(n,(e=>this.onKeyframesResolved(e)),t,r),this.resolver.scheduleResolve()}initPlayback(e){let t=this.options.duration||300;if(function(e){return"spring"===e.type||"backgroundColor"===e.name||!Rl(e.ease)}(this.options)){const{onComplete:r,onUpdate:n,motionValue:i,...o}=this.options,a=function(e,t){const r=new Cl({...t,keyframes:e,repeat:0,delay:0});let n={done:!1,value:e[0]};const i=[];let o=0;for(;!n.done&&o<2e4;)n=r.sample(o),i.push(n.value),o+=10;return{times:void 0,keyframes:i,duration:o-10,ease:"linear"}}(e,o);e=a.keyframes,t=a.duration,this.options.times=a.times,this.options.ease=a.ease}const{motionValue:r,name:n}=this.options,i=function(e,t,r,{delay:n=0,duration:i=300,repeat:o=0,repeatType:a="loop",ease:s,times:c}={}){const l={[t]:r};c&&(l.offset=c);const u=Ll(s);return Array.isArray(u)&&(l.easing=u),e.animate(l,{delay:n,duration:i,easing:Array.isArray(u)?"linear":u,fill:"both",iterations:o+1,direction:"reverse"===a?"alternate":"normal"})}(r.owner.current,n,e,{...this.options,duration:t});return i.startTime=Ls.now(),this.pendingTimeline?(i.timeline=this.pendingTimeline,this.pendingTimeline=void 0):i.onfinish=()=>{const{onComplete:t}=this.options;r.set(Rs(e,this.options)),t&&t(),this.cancel(),this.resolveFinishedPromise(),this.updateFinishedPromise()},{animation:i,duration:t,keyframes:e}}get duration(){const{duration:e}=this.resolved;return Ss(e)}get time(){const{animation:e}=this.resolved;return Ss(e.currentTime||0)}set time(e){const{animation:t}=this.resolved;t.currentTime=ks(e)}get speed(){const{animation:e}=this.resolved;return e.playbackRate}set speed(e){const{animation:t}=this.resolved;t.playbackRate=e}get state(){const{animation:e}=this.resolved;return e.playState}attachTimeline(e){if(this._resolved){const{animation:t}=this.resolved;t.timeline=e,t.onfinish=null}else this.pendingTimeline=e;return Di}play(){if(this.isStopped)return;const{animation:e}=this.resolved;e.play()}pause(){const{animation:e}=this.resolved;e.pause()}stop(){this.isStopped=!0;const{animation:e,keyframes:t}=this.resolved;if("idle"!==e.playState&&"finished"!==e.playState){if(this.time){const{motionValue:e,onUpdate:r,onComplete:n,...i}=this.options,o=new Cl({...i,keyframes:t});e.setWithVelocity(o.sample(this.time-10).value,o.sample(this.time).value,10)}this.cancel()}}complete(){this.resolved.animation.finish()}cancel(){this.resolved.animation.cancel()}static supports(e){const{motionValue:t,name:r,repeatDelay:n,repeatType:i,damping:o,type:a}=e;return Nl()&&r&&Dl.has(r)&&t&&t.owner&&t.owner.current instanceof HTMLElement&&!t.owner.getProps().onUpdate&&!n&&"mirror"!==i&&0!==o&&"inertia"!==a}}const Bl=(e,t,r,n={},i,o)=>a=>{const s=Ts(n,e)||{},c=s.delay||n.delay||0;let{elapsed:l=0}=n;l-=ks(c);let u={keyframes:Array.isArray(r)?r:[null,r],ease:"easeOut",velocity:t.getVelocity(),...s,delay:-l,onUpdate:e=>{t.set(e),s.onUpdate&&s.onUpdate(e)},onComplete:()=>{a(),s.onComplete&&s.onComplete()},name:e,motionValue:t,element:o?void 0:i};(function({when:e,delay:t,delayChildren:r,staggerChildren:n,staggerDirection:i,repeat:o,repeatType:a,repeatDelay:s,from:c,elapsed:l,...u}){return!!Object.keys(u).length})(s)||(u={...u,...Os(e,u)}),u.duration&&(u.duration=ks(u.duration)),u.repeatDelay&&(u.repeatDelay=ks(u.repeatDelay)),void 0!==u.from&&(u.keyframes[0]=u.from);let d=!1;if(!1===u.type&&(u.duration=0,0===u.delay&&(d=!0)),(Cs||zi)&&(d=!0,u.duration=0,u.delay=0),d&&!o&&void 0!==t.get()){const e=Rs(u.keyframes,s);if(void 0!==e)return void Hi.update((()=>{u.onUpdate(e),u.onComplete()}))}return!o&&zl.supports(u)?new zl(u):new Cl(u)};function Fl(e){return Boolean(Go(e)&&e.add)}function Ul(e,t){-1===e.indexOf(t)&&e.push(t)}function $l(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}class Hl{constructor(){this.subscriptions=[]}add(e){return Ul(this.subscriptions,e),()=>$l(this.subscriptions,e)}notify(e,t,r){const n=this.subscriptions.length;if(n)if(1===n)this.subscriptions[0](e,t,r);else for(let i=0;i{const r=Ls.now();this.updatedAt!==r&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(e),this.current!==this.prev&&this.events.change&&this.events.change.notify(this.current),t&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.hasAnimated=!1,this.setCurrent(e),this.canTrackVelocity=(e=>!isNaN(parseFloat(e)))(this.current),this.owner=t.owner}setCurrent(e){this.current=e,this.updatedAt=Ls.now()}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,t){this.events[e]||(this.events[e]=new Hl);const r=this.events[e].add(t);return"change"===e?()=>{r(),Hi.read((()=>{this.events.change.getSize()||this.stop()}))}:r}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,t){this.passiveEffect=e,this.stopPassiveEffect=t}set(e,t=!0){t&&this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e,t)}setWithVelocity(e,t,r){this.set(t),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-r}jump(e,t=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,t&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return Vl.current&&Vl.current.push(this),this.current}getPrevious(){return this.prev}getVelocity(){const e=Ls.now();if(!this.canTrackVelocity||void 0===this.prevFrameValue||e-this.updatedAt>30)return 0;const t=Math.min(this.updatedAt-this.prevUpdatedAt,30);return jc(parseFloat(this.current)-parseFloat(this.prevFrameValue),t)}start(e){return this.stop(),new Promise((t=>{this.hasAnimated=!0,this.animation=e(t),this.events.animationStart&&this.events.animationStart.notify()})).then((()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()}))}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Kl(e,t){return new ql(e,t)}function Wl(e,t,r){e.hasValue(t)?e.getValue(t).set(r):e.addValue(t,Kl(r))}function Gl({protectedKeys:e,needsAnimating:t},r){const n=e.hasOwnProperty(r)&&!0!==t[r];return t[r]=!1,n}function Zl(e,t,{delay:r=0,transitionOverride:n,type:i}={}){var o;let{transition:a=e.getDefaultTransition(),transitionEnd:s,...c}=t;const l=e.getValue("willChange");n&&(a=n);const u=[],d=i&&e.animationState&&e.animationState.getState()[i];for(const h in c){const t=e.getValue(h,null!==(o=e.latestValues[h])&&void 0!==o?o:null),n=c[h];if(void 0===n||d&&Gl(d,h))continue;const i={delay:r,elapsed:0,...Ts(a||{},h)};let s=!1;if(window.HandoffAppearAnimations){const t=e.getProps()[ko];if(t){const e=window.HandoffAppearAnimations(t,h);null!==e&&(i.elapsed=e,s=!0)}}t.start(Bl(h,t,n,e.shouldReduceMotion&&Ko.has(h)?{type:!1}:i,e,s));const f=t.animation;f&&(Fl(l)&&(l.add(h),f.then((()=>l.remove(h)))),u.push(f))}return s&&Promise.all(u).then((()=>{Hi.update((()=>{s&&function(e,t){const r=_s(e,t);let{transitionEnd:n={},transition:i={},...o}=r||{};o={...o,...n};for(const a in o)Wl(e,a,Ka(o[a]))}(e,s)}))})),u}function Yl(e,t,r={}){var n;const i=_s(e,t,"exit"===r.type?null===(n=e.presenceContext)||void 0===n?void 0:n.custom:void 0);let{transition:o=e.getDefaultTransition()||{}}=i||{};r.transitionOverride&&(o=r.transitionOverride);const a=i?()=>Promise.all(Zl(e,i,r)):()=>Promise.resolve(),s=e.variantChildren&&e.variantChildren.size?(n=0)=>{const{delayChildren:i=0,staggerChildren:a,staggerDirection:s}=o;return function(e,t,r=0,n=0,i=1,o){const a=[],s=(e.variantChildren.size-1)*n,c=1===i?(e=0)=>e*n:(e=0)=>s-e*n;return Array.from(e.variantChildren).sort(Xl).forEach(((e,n)=>{e.notify("AnimationStart",t),a.push(Yl(e,t,{...o,delay:r+c(n)}).then((()=>e.notify("AnimationComplete",t))))})),Promise.all(a)}(e,t,i+n,a,s,r)}:()=>Promise.resolve(),{when:c}=o;if(c){const[e,t]="beforeChildren"===c?[a,s]:[s,a];return e().then((()=>t()))}return Promise.all([a(),s(r.delay)])}function Xl(e,t){return e.sortNodePosition(t)}const Jl=[...To].reverse(),Ql=To.length;function eu(e){return t=>Promise.all(t.map((({animation:t,options:r})=>function(e,t,r={}){let n;if(e.notify("AnimationStart",t),Array.isArray(t)){const i=t.map((t=>Yl(e,t,r)));n=Promise.all(i)}else if("string"===typeof t)n=Yl(e,t,r);else{const i="function"===typeof t?_s(e,t,r.custom):t;n=Promise.all(Zl(e,i,r))}return n.then((()=>{Hi.postRender((()=>{e.notify("AnimationComplete",t)}))}))}(e,t,r))))}function tu(e){let t=eu(e);const r={animate:nu(!0),whileInView:nu(),whileHover:nu(),whileTap:nu(),whileDrag:nu(),whileFocus:nu(),exit:nu()};let n=!0;const i=t=>(r,n)=>{var i;const o=_s(e,n,"exit"===t?null===(i=e.presenceContext)||void 0===i?void 0:i.custom:void 0);if(o){const{transition:e,transitionEnd:t,...n}=o;r={...r,...n,...t}}return r};function o(o){const a=e.getProps(),s=e.getVariantContext(!0)||{},c=[],l=new Set;let u={},d=1/0;for(let t=0;td&&m,b=!1;const w=Array.isArray(p)?p:[p];let x=w.reduce(i(h),{});!1===g&&(x={});const{prevResolvedValues:_={}}=f,k={..._,...x},S=e=>{y=!0,l.has(e)&&(b=!0,l.delete(e)),f.needsAnimating[e]=!0};for(const e in k){const t=x[e],r=_[e];if(u.hasOwnProperty(e))continue;let n=!1;n=Va(t)&&Va(r)?!xs(t,r):t!==r,n?void 0!==t&&null!==t?S(e):l.add(e):void 0!==t&&l.has(e)?S(e):f.protectedKeys[e]=!0}f.prevProp=p,f.prevResolvedValues=x,f.isActive&&(u={...u,...x}),n&&e.blockInitialAnimation&&(y=!1),!y||v&&!b||c.push(...w.map((e=>({animation:e,options:{type:h}}))))}if(l.size){const t={};l.forEach((r=>{const n=e.getBaseTarget(r);t[r]=void 0===n?null:n})),c.push({animation:t})}let h=Boolean(c.length);return!n||!1!==a.initial&&a.initial!==a.animate||e.manuallyAnimateOnMount||(h=!1),n=!1,h?t(c):Promise.resolve()}return{animateChanges:o,setActive:function(t,n){var i;if(r[t].isActive===n)return Promise.resolve();null===(i=e.variantChildren)||void 0===i||i.forEach((e=>{var r;return null===(r=e.animationState)||void 0===r?void 0:r.setActive(t,n)})),r[t].isActive=n;const a=o(t);for(const e in r)r[e].protectedKeys={};return a},setAnimateFunction:function(r){t=r(e)},getState:()=>r}}function ru(e,t){return"string"===typeof t?t!==e:!!Array.isArray(t)&&!xs(t,e)}function nu(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}let iu=0;const ou={animation:{Feature:class extends us{constructor(e){super(e),e.animationState||(e.animationState=tu(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();this.unmount(),Oo(e)&&(this.unmount=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:t}=this.node.prevProps||{};e!==t&&this.updateAnimationControlsSubscription()}unmount(){}}},exit:{Feature:class extends us{constructor(){super(...arguments),this.id=iu++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:t}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===r)return;const n=this.node.animationState.setActive("exit",!e);t&&!e&&n.then((()=>t(this.id)))}mount(){const{register:e}=this.node.presenceContext||{};e&&(this.unmount=e(this.id))}unmount(){}}}},au=(e,t)=>Math.abs(e-t);class su{constructor(e,t,{transformPagePoint:r,contextWindow:n,dragSnapToOrigin:i=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!this.lastMoveEvent||!this.lastMoveEventInfo)return;const e=uu(this.lastMoveEventInfo,this.history),t=null!==this.startEvent,r=function(e,t){const r=au(e.x,t.x),n=au(e.y,t.y);return Math.sqrt(r**2+n**2)}(e.offset,{x:0,y:0})>=3;if(!t&&!r)return;const{point:n}=e,{timestamp:i}=qi;this.history.push({...n,timestamp:i});const{onStart:o,onMove:a}=this.handlers;t||(o&&o(this.lastMoveEvent,e),this.startEvent=this.lastMoveEvent),a&&a(this.lastMoveEvent,e)},this.handlePointerMove=(e,t)=>{this.lastMoveEvent=e,this.lastMoveEventInfo=cu(t,this.transformPagePoint),Hi.update(this.updatePoint,!0)},this.handlePointerUp=(e,t)=>{this.end();const{onEnd:r,onSessionEnd:n,resumeAnimation:i}=this.handlers;if(this.dragSnapToOrigin&&i&&i(),!this.lastMoveEvent||!this.lastMoveEventInfo)return;const o=uu("pointercancel"===e.type?this.lastMoveEventInfo:cu(t,this.transformPagePoint),this.history);this.startEvent&&r&&r(e,o),n&&n(e,o)},!Qa(e))return;this.dragSnapToOrigin=i,this.handlers=t,this.transformPagePoint=r,this.contextWindow=n||window;const o=cu(es(e),this.transformPagePoint),{point:a}=o,{timestamp:s}=qi;this.history=[{...a,timestamp:s}];const{onSessionStart:c}=t;c&&c(e,uu(o,this.history)),this.removeListeners=is(rs(this.contextWindow,"pointermove",this.handlePointerMove),rs(this.contextWindow,"pointerup",this.handlePointerUp),rs(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),Vi(this.updatePoint)}}function cu(e,t){return t?{point:t(e.point)}:e}function lu(e,t){return{x:e.x-t.x,y:e.y-t.y}}function uu({point:e},t){return{point:e,delta:lu(e,hu(t)),offset:lu(e,du(t)),velocity:fu(t,.1)}}function du(e){return e[0]}function hu(e){return e[e.length-1]}function fu(e,t){if(e.length<2)return{x:0,y:0};let r=e.length-1,n=null;const i=hu(e);for(;r>=0&&(n=e[r],!(i.timestamp-n.timestamp>ks(t)));)r--;if(!n)return{x:0,y:0};const o=Ss(i.timestamp-n.timestamp);if(0===o)return{x:0,y:0};const a={x:(i.x-n.x)/o,y:(i.y-n.y)/o};return a.x===1/0&&(a.x=0),a.y===1/0&&(a.y=0),a}function pu(e){return e.max-e.min}function mu(e,t=0,r=.01){return Math.abs(e-t)<=r}function gu(e,t,r,n=.5){e.origin=n,e.originPoint=dl(t.min,t.max,e.origin),e.scale=pu(r)/pu(t),(mu(e.scale,1,1e-4)||isNaN(e.scale))&&(e.scale=1),e.translate=dl(r.min,r.max,e.origin)-e.originPoint,(mu(e.translate)||isNaN(e.translate))&&(e.translate=0)}function vu(e,t,r,n){gu(e.x,t.x,r.x,n?n.originX:void 0),gu(e.y,t.y,r.y,n?n.originY:void 0)}function yu(e,t,r){e.min=r.min+t.min,e.max=e.min+pu(t)}function bu(e,t,r){e.min=t.min-r.min,e.max=e.min+pu(t)}function wu(e,t,r){bu(e.x,t.x,r.x),bu(e.y,t.y,r.y)}function xu(e,t,r){return{min:void 0!==t?e.min+t:void 0,max:void 0!==r?e.max+r-(e.max-e.min):void 0}}function _u(e,t){let r=t.min-e.min,n=t.max-e.max;return t.max-t.min({x:{translate:0,scale:1,origin:0,originPoint:0},y:{translate:0,scale:1,origin:0,originPoint:0}}),Pu=()=>({x:{min:0,max:0},y:{min:0,max:0}});function Ou(e){return[e("x"),e("y")]}function Tu({top:e,left:t,right:r,bottom:n}){return{x:{min:t,max:r},y:{min:e,max:n}}}function Cu(e){return void 0===e||1===e}function ju({scale:e,scaleX:t,scaleY:r}){return!Cu(e)||!Cu(t)||!Cu(r)}function Ru(e){return ju(e)||Iu(e)||e.z||e.rotate||e.rotateX||e.rotateY}function Iu(e){return Mu(e.x)||Mu(e.y)}function Mu(e){return e&&"0%"!==e}function Lu(e,t,r){return r+t*(e-r)}function Nu(e,t,r,n,i){return void 0!==i&&(e=Lu(e,i,n)),Lu(e,r,n)+t}function Du(e,t=0,r=1,n,i){e.min=Nu(e.min,t,r,n,i),e.max=Nu(e.max,t,r,n,i)}function zu(e,{x:t,y:r}){Du(e.x,t.translate,t.scale,t.originPoint),Du(e.y,r.translate,r.scale,r.originPoint)}function Bu(e){return Number.isInteger(e)||e>1.0000000000001||e<.999999999999?e:1}function Fu(e,t){e.min=e.min+t,e.max=e.max+t}function Uu(e,t,[r,n,i]){const o=void 0!==t[i]?t[i]:.5,a=dl(e.min,e.max,o);Du(e,t[r],t[n],a,t.scale)}const $u=["x","scaleX","originX"],Hu=["y","scaleY","originY"];function Vu(e,t){Uu(e.x,t,$u),Uu(e.y,t,Hu)}function qu(e,t){return Tu(function(e,t){if(!t)return e;const r=t({x:e.left,y:e.top}),n=t({x:e.right,y:e.bottom});return{top:r.y,left:r.x,bottom:n.y,right:n.x}}(e.getBoundingClientRect(),t))}const Ku=({current:e})=>e?e.ownerDocument.defaultView:null,Wu=new WeakMap;class Gu{constructor(e){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=Pu(),this.visualElement=e}start(e,{snapToCursor:t=!1}={}){const{presenceContext:r}=this.visualElement;if(r&&!1===r.isPresent)return;const{dragSnapToOrigin:n}=this.getProps();this.panSession=new su(e,{onSessionStart:e=>{const{dragSnapToOrigin:r}=this.getProps();r?this.pauseAnimation():this.stopAnimation(),t&&this.snapToCursor(es(e,"page").point)},onStart:(e,t)=>{const{drag:r,dragPropagation:n,onDragStart:i}=this.getProps();if(r&&!n&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=cs(r),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Ou((e=>{let t=this.getAxisMotionValue(e).get()||0;if(pa.test(t)){const{projection:r}=this.visualElement;if(r&&r.layout){const n=r.layout.layoutBox[e];if(n){t=pu(n)*(parseFloat(t)/100)}}}this.originPoint[e]=t})),i&&i(e,t);const{animationState:o}=this.visualElement;o&&o.setActive("whileDrag",!0)},onMove:(e,t)=>{const{dragPropagation:r,dragDirectionLock:n,onDirectionLock:i,onDrag:o}=this.getProps();if(!r&&!this.openGlobalLock)return;const{offset:a}=t;if(n&&null===this.currentDirection)return this.currentDirection=function(e,t=10){let r=null;Math.abs(e.y)>t?r="y":Math.abs(e.x)>t&&(r="x");return r}(a),void(null!==this.currentDirection&&i&&i(this.currentDirection));this.updateAxis("x",t.point,a),this.updateAxis("y",t.point,a),this.visualElement.render(),o&&o(e,t)},onSessionEnd:(e,t)=>this.stop(e,t),resumeAnimation:()=>Ou((e=>{var t;return"paused"===this.getAnimationState(e)&&(null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.play())}))},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:n,contextWindow:Ku(this.visualElement)})}stop(e,t){const r=this.isDragging;if(this.cancel(),!r)return;const{velocity:n}=t;this.startAnimation(n);const{onDragEnd:i}=this.getProps();i&&i(e,t)}cancel(){this.isDragging=!1;const{projection:e,animationState:t}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:r}=this.getProps();!r&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),t&&t.setActive("whileDrag",!1)}updateAxis(e,t,r){const{drag:n}=this.getProps();if(!r||!Zu(e,n,this.currentDirection))return;const i=this.getAxisMotionValue(e);let o=this.originPoint[e]+r[e];this.constraints&&this.constraints[e]&&(o=function(e,{min:t,max:r},n){return void 0!==t&&er&&(e=n?dl(r,e,n.max):Math.min(e,r)),e}(o,this.constraints[e],this.elastic[e])),i.set(o)}resolveConstraints(){var e;const{dragConstraints:t,dragElastic:r}=this.getProps(),n=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):null===(e=this.visualElement.projection)||void 0===e?void 0:e.layout,i=this.constraints;t&&Ao(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):this.constraints=!(!t||!n)&&function(e,{top:t,left:r,bottom:n,right:i}){return{x:xu(e.x,r,i),y:xu(e.y,t,n)}}(n.layoutBox,t),this.elastic=function(e=ku){return!1===e?e=0:!0===e&&(e=ku),{x:Su(e,"left","right"),y:Su(e,"top","bottom")}}(r),i!==this.constraints&&n&&this.constraints&&!this.hasMutatedConstraints&&Ou((e=>{this.getAxisMotionValue(e)&&(this.constraints[e]=function(e,t){const r={};return void 0!==t.min&&(r.min=t.min-e.min),void 0!==t.max&&(r.max=t.max-e.min),r}(n.layoutBox[e],this.constraints[e]))}))}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:t}=this.getProps();if(!e||!Ao(e))return!1;const r=e.current;ro(null!==r,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");const{projection:n}=this.visualElement;if(!n||!n.layout)return!1;const i=function(e,t,r){const n=qu(e,r),{scroll:i}=t;return i&&(Fu(n.x,i.offset.x),Fu(n.y,i.offset.y)),n}(r,n.root,this.visualElement.getTransformPagePoint());let o=function(e,t){return{x:_u(e.x,t.x),y:_u(e.y,t.y)}}(n.layout.layoutBox,i);if(t){const e=t(function({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}(o));this.hasMutatedConstraints=!!e,e&&(o=Tu(e))}return o}startAnimation(e){const{drag:t,dragMomentum:r,dragElastic:n,dragTransition:i,dragSnapToOrigin:o,onDragTransitionEnd:a}=this.getProps(),s=this.constraints||{},c=Ou((a=>{if(!Zu(a,t,this.currentDirection))return;let c=s&&s[a]||{};o&&(c={min:0,max:0});const l=n?200:1e6,u=n?40:1e7,d={type:"inertia",velocity:r?e[a]:0,bounceStiffness:l,bounceDamping:u,timeConstant:750,restDelta:1,restSpeed:10,...i,...c};return this.startAxisValueAnimation(a,d)}));return Promise.all(c).then(a)}startAxisValueAnimation(e,t){const r=this.getAxisMotionValue(e);return r.start(Bl(e,r,0,t,this.visualElement))}stopAnimation(){Ou((e=>this.getAxisMotionValue(e).stop()))}pauseAnimation(){Ou((e=>{var t;return null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.pause()}))}getAnimationState(e){var t;return null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.state}getAxisMotionValue(e){const t="_drag"+e.toUpperCase(),r=this.visualElement.getProps(),n=r[t];return n||this.visualElement.getValue(e,(r.initial?r.initial[e]:void 0)||0)}snapToCursor(e){Ou((t=>{const{drag:r}=this.getProps();if(!Zu(t,r,this.currentDirection))return;const{projection:n}=this.visualElement,i=this.getAxisMotionValue(t);if(n&&n.layout){const{min:r,max:o}=n.layout.layoutBox[t];i.set(e[t]-dl(r,o,.5))}}))}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:t}=this.getProps(),{projection:r}=this.visualElement;if(!Ao(t)||!r||!this.constraints)return;this.stopAnimation();const n={x:0,y:0};Ou((e=>{const t=this.getAxisMotionValue(e);if(t){const r=t.get();n[e]=function(e,t){let r=.5;const n=pu(e),i=pu(t);return i>n?r=ul(t.min,t.max-n,e.min):n>i&&(r=ul(e.min,e.max-i,t.min)),na(0,1,r)}({min:r,max:r},this.constraints[e])}}));const{transformTemplate:i}=this.visualElement.getProps();this.visualElement.current.style.transform=i?i({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.resolveConstraints(),Ou((t=>{if(!Zu(t,e,null))return;const r=this.getAxisMotionValue(t),{min:i,max:o}=this.constraints[t];r.set(dl(i,o,n[t]))}))}addListeners(){if(!this.visualElement.current)return;Wu.set(this.visualElement,this);const e=rs(this.visualElement.current,"pointerdown",(e=>{const{drag:t,dragListener:r=!0}=this.getProps();t&&r&&this.start(e)})),t=()=>{const{dragConstraints:e}=this.getProps();Ao(e)&&(this.constraints=this.resolveRefConstraints())},{projection:r}=this.visualElement,n=r.addEventListener("measure",t);r&&!r.layout&&(r.root&&r.root.updateScroll(),r.updateLayout()),t();const i=Ja(window,"resize",(()=>this.scalePositionWithinConstraints())),o=r.addEventListener("didUpdate",(({delta:e,hasLayoutChanged:t})=>{this.isDragging&&t&&(Ou((t=>{const r=this.getAxisMotionValue(t);r&&(this.originPoint[t]+=e[t].translate,r.set(r.get()+e[t].translate))})),this.visualElement.render())}));return()=>{i(),e(),n(),o&&o()}}getProps(){const e=this.visualElement.getProps(),{drag:t=!1,dragDirectionLock:r=!1,dragPropagation:n=!1,dragConstraints:i=!1,dragElastic:o=ku,dragMomentum:a=!0}=e;return{...e,drag:t,dragDirectionLock:r,dragPropagation:n,dragConstraints:i,dragElastic:o,dragMomentum:a}}}function Zu(e,t,r){return(!0===t||t===e)&&(null===r||r===e)}const Yu=e=>(t,r)=>{e&&e(t,r)};function Xu(){const e=(0,i.useContext)(Wi);if(null===e)return[!0,null];const{isPresent:t,onExitComplete:r,register:n}=e,o=(0,i.useId)();(0,i.useEffect)((()=>n(o)),[]);return!t&&r?[!1,()=>r&&r(o)]:[!0]}function Ju(){return function(e){return null===e||e.isPresent}((0,i.useContext)(Wi))}const Qu={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function ed(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const td={correct:(e,t)=>{if(!t.target)return e;if("string"===typeof e){if(!ma.test(e))return e;e=parseFloat(e)}return`${ed(e,t.target.x)}% ${ed(e,t.target.y)}%`}},rd={correct:(e,{treeScale:t,projectionDelta:r})=>{const n=e,i=wc.parse(e);if(i.length>5)return n;const o=wc.createTransformer(e),a="number"!==typeof i[0]?1:0,s=r.x.scale*t.x,c=r.y.scale*t.y;i[0+a]/=s,i[1+a]/=c;const l=dl(s,c,.5);return"number"===typeof i[2+a]&&(i[2+a]/=l),"number"===typeof i[3+a]&&(i[3+a]/=l),o(i)}};class nd extends i.Component{componentDidMount(){const{visualElement:e,layoutGroup:t,switchLayoutGroup:r,layoutId:n}=this.props,{projection:i}=e;var o;o=od,Object.assign(Vo,o),i&&(t.group&&t.group.add(i),r&&r.register&&n&&r.register(i),i.root.didUpdate(),i.addEventListener("animationComplete",(()=>{this.safeToRemove()})),i.setOptions({...i.options,onExitComplete:()=>this.safeToRemove()})),Qu.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:t,visualElement:r,drag:n,isPresent:i}=this.props,o=r.projection;return o?(o.isPresent=i,n||e.layoutDependency!==t||void 0===t?o.willUpdate():this.safeToRemove(),e.isPresent!==i&&(i?o.promote():o.relegate()||Hi.postRender((()=>{const e=o.getStack();e&&e.members.length||this.safeToRemove()}))),null):null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),So.postRender((()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()})))}componentWillUnmount(){const{visualElement:e,layoutGroup:t,switchLayoutGroup:r}=this.props,{projection:n}=e;n&&(n.scheduleCheckAfterUnmount(),t&&t.group&&t.group.remove(n),r&&r.deregister&&r.deregister(n))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function id(e){const[t,r]=Xu(),n=(0,i.useContext)(eo);return i.createElement(nd,{...e,layoutGroup:n,switchLayoutGroup:(0,i.useContext)(Do),isPresent:t,safeToRemove:r})}const od={borderRadius:{...td,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:td,borderTopRightRadius:td,borderBottomLeftRadius:td,borderBottomRightRadius:td,boxShadow:rd},ad=["TopLeft","TopRight","BottomLeft","BottomRight"],sd=ad.length,cd=e=>"string"===typeof e?parseFloat(e):e,ld=e=>"number"===typeof e||ma.test(e);function ud(e,t){return void 0!==e[t]?e[t]:e.borderRadius}const dd=fd(0,.5,nl),hd=fd(.5,.95,Di);function fd(e,t,r){return n=>nt?1:r(ul(e,t,n))}function pd(e,t){e.min=t.min,e.max=t.max}function md(e,t){pd(e.x,t.x),pd(e.y,t.y)}function gd(e,t,r,n,i){return e=Lu(e-=t,1/r,n),void 0!==i&&(e=Lu(e,1/i,n)),e}function vd(e,t,[r,n,i],o,a){!function(e,t=0,r=1,n=.5,i,o=e,a=e){pa.test(t)&&(t=parseFloat(t),t=dl(a.min,a.max,t/100)-a.min);if("number"!==typeof t)return;let s=dl(o.min,o.max,n);e===o&&(s-=t),e.min=gd(e.min,t,r,s,i),e.max=gd(e.max,t,r,s,i)}(e,t[r],t[n],t[i],t.scale,o,a)}const yd=["x","scaleX","originX"],bd=["y","scaleY","originY"];function wd(e,t,r,n){vd(e.x,t,yd,r?r.x:void 0,n?n.x:void 0),vd(e.y,t,bd,r?r.y:void 0,n?n.y:void 0)}function xd(e){return 0===e.translate&&1===e.scale}function _d(e){return xd(e.x)&&xd(e.y)}function kd(e,t){return Math.round(e.x.min)===Math.round(t.x.min)&&Math.round(e.x.max)===Math.round(t.x.max)&&Math.round(e.y.min)===Math.round(t.y.min)&&Math.round(e.y.max)===Math.round(t.y.max)}function Sd(e){return pu(e.x)/pu(e.y)}class Ed{constructor(){this.members=[]}add(e){Ul(this.members,e),e.scheduleRender()}remove(e){if($l(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const e=this.members[this.members.length-1];e&&this.promote(e)}}relegate(e){const t=this.members.findIndex((t=>e===t));if(0===t)return!1;let r;for(let n=t;n>=0;n--){const e=this.members[n];if(!1!==e.isPresent){r=e;break}}return!!r&&(this.promote(r),!0)}promote(e,t){const r=this.lead;if(e!==r&&(this.prevLead=r,this.lead=e,e.show(),r)){r.instance&&r.scheduleRender(),e.scheduleRender(),e.resumeFrom=r,t&&(e.resumeFrom.preserveOpacity=!0),r.snapshot&&(e.snapshot=r.snapshot,e.snapshot.latestValues=r.animationValues||r.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:n}=e.options;!1===n&&r.hide()}}exitAnimationComplete(){this.members.forEach((e=>{const{options:t,resumingFrom:r}=e;t.onExitComplete&&t.onExitComplete(),r&&r.options.onExitComplete&&r.options.onExitComplete()}))}scheduleRender(){this.members.forEach((e=>{e.instance&&e.scheduleRender(!1)}))}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function Ad(e,t,r){let n="";const i=e.x.translate/t.x,o=e.y.translate/t.y;if((i||o)&&(n=`translate3d(${i}px, ${o}px, 0) `),1===t.x&&1===t.y||(n+=`scale(${1/t.x}, ${1/t.y}) `),r){const{rotate:e,rotateX:t,rotateY:i}=r;e&&(n+=`rotate(${e}deg) `),t&&(n+=`rotateX(${t}deg) `),i&&(n+=`rotateY(${i}deg) `)}const a=e.x.scale*t.x,s=e.y.scale*t.y;return 1===a&&1===s||(n+=`scale(${a}, ${s})`),n||"none"}const Pd=(e,t)=>e.depth-t.depth;class Od{constructor(){this.children=[],this.isDirty=!1}add(e){Ul(this.children,e),this.isDirty=!0}remove(e){$l(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(Pd),this.isDirty=!1,this.children.forEach(e)}}const Td=["","X","Y","Z"],Cd={visibility:"hidden"};let jd=0;const Rd={type:"projectionFrame",totalNodes:0,resolvedTargetDeltas:0,recalculatedProjection:0};function Id({attachResizeListener:e,defaultParent:t,measureScroll:r,checkIsScrollRoot:n,resetTransform:i}){return class{constructor(e={},r=(null===t||void 0===t?void 0:t())){this.id=jd++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{var e;this.projectionUpdateScheduled=!1,Rd.totalNodes=Rd.resolvedTargetDeltas=Rd.recalculatedProjection=0,this.nodes.forEach(Nd),this.nodes.forEach(Hd),this.nodes.forEach(Vd),this.nodes.forEach(Dd),e=Rd,window.MotionDebug&&window.MotionDebug.record(e)},this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=e,this.root=r?r.root||r:this,this.path=r?[...r.path,r]:[],this.parent=r,this.depth=r?r.depth+1:0;for(let t=0;tthis.root.updateBlockedByResize=!1;e(t,(()=>{this.root.updateBlockedByResize=!0,r&&r(),r=function(e,t){const r=Ls.now(),n=({timestamp:i})=>{const o=i-r;o>=t&&(Vi(n),e(o-t))};return Hi.read(n,!0),()=>Vi(n)}(n,250),Qu.hasAnimatedSinceResize&&(Qu.hasAnimatedSinceResize=!1,this.nodes.forEach($d))}))}i&&this.root.registerSharedNode(i,this),!1!==this.options.animate&&a&&(i||o)&&this.addEventListener("didUpdate",(({delta:e,hasLayoutChanged:t,hasRelativeTargetChanged:r,layout:n})=>{if(this.isTreeAnimationBlocked())return this.target=void 0,void(this.relativeTarget=void 0);const i=this.options.transition||a.getDefaultTransition()||Yd,{onLayoutAnimationStart:o,onLayoutAnimationComplete:s}=a.getProps(),c=!this.targetLayout||!kd(this.targetLayout,n)||r,l=!t&&r;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||l||t&&(c||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(e,l);const t={...Ts(i,"layout"),onPlay:o,onComplete:s};(a.shouldReduceMotion||this.options.layoutRoot)&&(t.delay=0,t.type=!1),this.startAnimation(t)}else t||$d(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=n}))}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const e=this.getStack();e&&e.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,Vi(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(qd),this.animationId++)}getTransformTemplate(){const{visualElement:e}=this.options;return e&&e.getProps().transformTemplate}willUpdate(e=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked())return void(this.options.onExitComplete&&this.options.onExitComplete());if(!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let i=0;ithis.update())))}clearAllSnapshots(){this.nodes.forEach(zd),this.sharedNodes.forEach(Kd)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,Hi.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){Hi.postRender((()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()}))}updateSnapshot(){!this.snapshot&&this.instance&&(this.snapshot=this.measure())}updateLayout(){if(!this.instance)return;if(this.updateScroll(),(!this.options.alwaysMeasureLayout||!this.isLead())&&!this.isLayoutDirty)return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let r=0;r{const r=t/1e3;Wd(o.x,e.x,r),Wd(o.y,e.y,r),this.setTargetDelta(o),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(wu(a,this.layout.layoutBox,this.relativeParent.layout.layoutBox),function(e,t,r,n){Gd(e.x,t.x,r.x,n),Gd(e.y,t.y,r.y,n)}(this.relativeTarget,this.relativeTargetOrigin,a,r),d&&function(e,t){return e.x.min===t.x.min&&e.x.max===t.x.max&&e.y.min===t.y.min&&e.y.max===t.y.max}(this.relativeTarget,d)&&(this.isProjectionDirty=!1),d||(d=Pu()),md(d,this.relativeTarget)),s&&(this.animationValues=i,function(e,t,r,n,i,o){i?(e.opacity=dl(0,void 0!==r.opacity?r.opacity:1,dd(n)),e.opacityExit=dl(void 0!==t.opacity?t.opacity:1,0,hd(n))):o&&(e.opacity=dl(void 0!==t.opacity?t.opacity:1,void 0!==r.opacity?r.opacity:1,n));for(let a=0;a{Qu.hasAnimatedSinceResize=!0,this.currentAnimation=function(e,t,r){const n=Go(e)?e:Kl(e);return n.start(Bl("",n,t,r)),n.animation}(0,1e3,{...e,onUpdate:t=>{this.mixTargetDelta(t),e.onUpdate&&e.onUpdate(t)},onComplete:()=>{e.onComplete&&e.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0}))}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const e=this.getStack();e&&e.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(1e3),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const e=this.getLead();let{targetWithTransforms:t,target:r,layout:n,latestValues:i}=e;if(t&&r&&n){if(this!==e&&this.layout&&n&&eh(this.options.animationType,this.layout.layoutBox,n.layoutBox)){r=this.target||Pu();const t=pu(this.layout.layoutBox.x);r.x.min=e.target.x.min,r.x.max=r.x.min+t;const n=pu(this.layout.layoutBox.y);r.y.min=e.target.y.min,r.y.max=r.y.min+n}md(t,r),Vu(t,i),vu(this.projectionDeltaWithTransform,this.layoutCorrected,t,i)}}registerSharedNode(e,t){this.sharedNodes.has(e)||this.sharedNodes.set(e,new Ed);this.sharedNodes.get(e).add(t);const r=t.options.initialPromotionConfig;t.promote({transition:r?r.transition:void 0,preserveFollowOpacity:r&&r.shouldPreserveFollowOpacity?r.shouldPreserveFollowOpacity(t):void 0})}isLead(){const e=this.getStack();return!e||e.lead===this}getLead(){var e;const{layoutId:t}=this.options;return t&&(null===(e=this.getStack())||void 0===e?void 0:e.lead)||this}getPrevLead(){var e;const{layoutId:t}=this.options;return t?null===(e=this.getStack())||void 0===e?void 0:e.prevLead:void 0}getStack(){const{layoutId:e}=this.options;if(e)return this.root.sharedNodes.get(e)}promote({needsReset:e,transition:t,preserveFollowOpacity:r}={}){const n=this.getStack();n&&n.promote(this,r),e&&(this.projectionDelta=void 0,this.needsReset=!0),t&&this.setOptions({transition:t})}relegate(){const e=this.getStack();return!!e&&e.relegate(this)}resetRotation(){const{visualElement:e}=this.options;if(!e)return;let t=!1;const{latestValues:r}=e;if((r.rotate||r.rotateX||r.rotateY||r.rotateZ)&&(t=!0),!t)return;const n={};for(let i=0;i{var t;return null===(t=e.currentAnimation)||void 0===t?void 0:t.stop()})),this.root.nodes.forEach(Bd),this.root.sharedNodes.clear()}}}function Md(e){e.updateLayout()}function Ld(e){var t;const r=(null===(t=e.resumeFrom)||void 0===t?void 0:t.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&r&&e.hasListeners("didUpdate")){const{layoutBox:t,measuredBox:n}=e.layout,{animationType:i}=e.options,o=r.source!==e.layout.source;"size"===i?Ou((e=>{const n=o?r.measuredBox[e]:r.layoutBox[e],i=pu(n);n.min=t[e].min,n.max=n.min+i})):eh(i,r.layoutBox,t)&&Ou((n=>{const i=o?r.measuredBox[n]:r.layoutBox[n],a=pu(t[n]);i.max=i.min+a,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[n].max=e.relativeTarget[n].min+a)}));const a=Au();vu(a,t,r.layoutBox);const s=Au();o?vu(s,e.applyTransform(n,!0),r.measuredBox):vu(s,t,r.layoutBox);const c=!_d(a);let l=!1;if(!e.resumeFrom){const n=e.getClosestProjectingParent();if(n&&!n.resumeFrom){const{snapshot:i,layout:o}=n;if(i&&o){const a=Pu();wu(a,r.layoutBox,i.layoutBox);const s=Pu();wu(s,t,o.layoutBox),kd(a,s)||(l=!0),n.options.layoutRoot&&(e.relativeTarget=s,e.relativeTargetOrigin=a,e.relativeParent=n)}}}e.notifyListeners("didUpdate",{layout:t,snapshot:r,delta:s,layoutDelta:a,hasLayoutChanged:c,hasRelativeTargetChanged:l})}else if(e.isLead()){const{onExitComplete:t}=e.options;t&&t()}e.options.transition=void 0}function Nd(e){Rd.totalNodes++,e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=Boolean(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function Dd(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function zd(e){e.clearSnapshot()}function Bd(e){e.clearMeasurements()}function Fd(e){e.isLayoutDirty=!1}function Ud(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function $d(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function Hd(e){e.resolveTargetDelta()}function Vd(e){e.calcProjection()}function qd(e){e.resetRotation()}function Kd(e){e.removeLeadSnapshot()}function Wd(e,t,r){e.translate=dl(t.translate,0,r),e.scale=dl(t.scale,1,r),e.origin=t.origin,e.originPoint=t.originPoint}function Gd(e,t,r,n){e.min=dl(t.min,r.min,n),e.max=dl(t.max,r.max,n)}function Zd(e){return e.animationValues&&void 0!==e.animationValues.opacityExit}const Yd={duration:.45,ease:[.4,0,.1,1]},Xd=e=>"undefined"!==typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),Jd=Xd("applewebkit/")&&!Xd("chrome/")?Math.round:Di;function Qd(e){e.min=Jd(e.min),e.max=Jd(e.max)}function eh(e,t,r){return"position"===e||"preserve-aspect"===e&&!mu(Sd(t),Sd(r),.2)}const th=Id({attachResizeListener:(e,t)=>Ja(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),rh={current:void 0},nh=Id({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!rh.current){const e=new th({});e.mount(window),e.setOptions({layoutScroll:!0}),rh.current=e}return rh.current},resetTransform:(e,t)=>{e.style.transform=void 0!==t?t:"none"},checkIsScrollRoot:e=>Boolean("fixed"===window.getComputedStyle(e).position)}),ih={pan:{Feature:class extends us{constructor(){super(...arguments),this.removePointerDownListener=Di}onPointerDown(e){this.session=new su(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Ku(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:t,onPan:r,onPanEnd:n}=this.node.getProps();return{onSessionStart:Yu(e),onStart:Yu(t),onMove:r,onEnd:(e,t)=>{delete this.session,n&&n(e,t)}}}mount(){this.removePointerDownListener=rs(this.node.current,"pointerdown",(e=>this.onPointerDown(e)))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}},drag:{Feature:class extends us{constructor(e){super(e),this.removeGroupControls=Di,this.removeListeners=Di,this.controls=new Gu(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Di}unmount(){this.removeGroupControls(),this.removeListeners()}},ProjectionNode:nh,MeasureLayout:id}},oh={current:null},ah={current:!1};const sh=new WeakMap,ch=[...Zs,lc,wc],lh=Object.keys(No),uh=lh.length,dh=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"],hh=Co.length;class fh{constructor({parent:e,props:t,presenceContext:r,reducedMotionConfig:n,blockInitialAnimation:i,visualState:o},a={}){this.resolveKeyframes=(e,t,r,n)=>new this.KeyframeResolver(e,t,r,n,this),this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=rc,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.scheduleRender=()=>Hi.render(this.render,!1,!0);const{latestValues:s,renderState:c}=o;this.latestValues=s,this.baseTarget={...s},this.initialValues=t.initial?{...s}:{},this.renderState=c,this.parent=e,this.props=t,this.presenceContext=r,this.depth=e?e.depth+1:0,this.reducedMotionConfig=n,this.options=a,this.blockInitialAnimation=Boolean(i),this.isControllingVariants=jo(t),this.isVariantNode=Ro(t),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=Boolean(e&&e.current);const{willChange:l,...u}=this.scrapeMotionValuesFromProps(t,{});for(const d in u){const e=u[d];void 0!==s[d]&&Go(e)&&(e.set(s[d],!1),Fl(l)&&l.add(d))}}scrapeMotionValuesFromProps(e,t){return{}}mount(e){this.current=e,sh.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach(((e,t)=>this.bindToMotionValue(t,e))),ah.current||function(){if(ah.current=!0,Mi)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>oh.current=e.matches;e.addListener(t),t()}else oh.current=!1}(),this.shouldReduceMotion="never"!==this.reducedMotionConfig&&("always"===this.reducedMotionConfig||oh.current),this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){sh.delete(this.current),this.projection&&this.projection.unmount(),Vi(this.notifyUpdate),Vi(this.render),this.valueSubscriptions.forEach((e=>e())),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const e in this.events)this.events[e].clear();for(const e in this.features)this.features[e].unmount();this.current=null}bindToMotionValue(e,t){const r=Ko.has(e),n=t.on("change",(t=>{this.latestValues[e]=t,this.props.onUpdate&&Hi.preRender(this.notifyUpdate),r&&this.projection&&(this.projection.isTransformDirty=!0)})),i=t.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(e,(()=>{n(),i()}))}sortNodePosition(e){return this.current&&this.sortInstanceNodePosition&&this.type===e.type?this.sortInstanceNodePosition(this.current,e.current):0}loadFeatures({children:e,...t},r,n,i){let o,a;for(let s=0;sthis.scheduleRender(),animationType:"string"===typeof r?r:"both",initialPromotionConfig:i,layoutScroll:s,layoutRoot:c})}return a}updateFeatures(){for(const e in this.features){const t=this.features[e];t.isMounted?t.update():(t.mount(),t.isMounted=!0)}}triggerBuild(){this.build(this.renderState,this.latestValues,this.options,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):Pu()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,t){this.latestValues[e]=t}update(e,t){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=t;for(let r=0;rt.variantChildren.delete(e)}addValue(e,t){t!==this.values.get(e)&&(this.removeValue(e),this.bindToMotionValue(e,t)),this.values.set(e,t),this.latestValues[e]=t.get()}removeValue(e){this.values.delete(e);const t=this.valueSubscriptions.get(e);t&&(t(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,t){if(this.props.values&&this.props.values[e])return this.props.values[e];let r=this.values.get(e);return void 0===r&&void 0!==t&&(r=Kl(null===t?void 0:t,{owner:this}),this.addValue(e,r)),r}readValue(e,t){var r;let n=void 0===this.latestValues[e]&&this.current?null!==(r=this.getBaseTargetFromProps(this.props,e))&&void 0!==r?r:this.readValueFromInstance(this.current,e,this.options):this.latestValues[e];return void 0!==n&&null!==n&&("string"===typeof n&&(zs(n)||Ns(n))?n=parseFloat(n):!(e=>ch.find(Gs(e)))(n)&&wc.test(t)&&(n=Pc(e,t)),this.setBaseTarget(e,Go(n)?n.get():n)),Go(n)?n.get():n}setBaseTarget(e,t){this.baseTarget[e]=t}getBaseTarget(e){var t,r;const{initial:n}=this.props,i="string"===typeof n||"object"===typeof n?null===(r=Ha(this.props,n,null===(t=this.presenceContext)||void 0===t?void 0:t.custom))||void 0===r?void 0:r[e]:void 0;if(n&&void 0!==i)return i;const o=this.getBaseTargetFromProps(this.props,e);return void 0===o||Go(o)?void 0!==this.initialValues[e]&&void 0===i?void 0:this.baseTarget[e]:o}on(e,t){return this.events[e]||(this.events[e]=new Hl),this.events[e].add(t)}notify(e,...t){this.events[e]&&this.events[e].notify(...t)}}class ph extends fh{constructor(){super(...arguments),this.KeyframeResolver=Oc}sortInstanceNodePosition(e,t){return 2&e.compareDocumentPosition(t)?1:-1}getBaseTargetFromProps(e,t){return e.style?e.style[t]:void 0}removeValueFromRenderState(e,{vars:t,style:r}){delete t[e],delete r[e]}}class mh extends ph{constructor(){super(...arguments),this.type="html"}readValueFromInstance(e,t){if(Ko.has(t)){const e=Ac(t);return e&&e.default||0}{const n=(r=e,window.getComputedStyle(r)),i=(Jo(t)?n.getPropertyValue(t):n[t])||0;return"string"===typeof i?i.trim():i}var r}measureInstanceViewportBox(e,{transformPagePoint:t}){return qu(e,t)}build(e,t,r,n){xa(e,t,r,n.transformTemplate)}scrapeMotionValuesFromProps(e,t){return Ua(e,t)}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:e}=this.props;Go(e)&&(this.childSubscription=e.on("change",(e=>{this.current&&(this.current.textContent=`${e}`)})))}renderInstance(e,t,r,n){za(e,t,r,n)}}class gh extends ph{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1}getBaseTargetFromProps(e,t){return e[t]}readValueFromInstance(e,t){if(Ko.has(t)){const e=Ac(t);return e&&e.default||0}return t=Ba.has(t)?t:_o(t),e.getAttribute(t)}measureInstanceViewportBox(){return Pu()}scrapeMotionValuesFromProps(e,t){return $a(e,t)}build(e,t,r,n){Ia(e,t,r,this.isSVGTag,n.transformTemplate)}renderInstance(e,t,r,n){Fa(e,t,0,n)}mount(e){this.isSVGTag=La(e.tagName),super.mount(e)}}const vh=(e,t)=>Ho(e)?new gh(t,{enableHardwareAcceleration:!1}):new mh(t,{enableHardwareAcceleration:!0}),yh={...ou,...ws,...ih,...{layout:{ProjectionNode:nh,MeasureLayout:id}}},bh=Uo(((e,t)=>function(e,{forwardMotionProps:t=!1},r,n){return{...Ho(e)?Ya:Xa,preloadedFeatures:r,useRender:Da(t),createVisualElement:n,Component:e}}(e,t,yh,vh)));var wh={enter:({transition:e,transitionEnd:t,delay:r}={})=>{var n;return{opacity:1,transition:null!=(n=null==e?void 0:e.enter)?n:yo(vo.enter,r),transitionEnd:null==t?void 0:t.enter}},exit:({transition:e,transitionEnd:t,delay:r}={})=>{var n;return{opacity:0,transition:null!=(n=null==e?void 0:e.exit)?n:bo(vo.exit,r),transitionEnd:null==t?void 0:t.exit}}},xh={initial:"exit",animate:"enter",exit:"exit",variants:wh},_h=(0,i.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,className:i,transition:o,transitionEnd:a,delay:s,...c}=e,l=n||r?"enter":"exit",u=!r||n&&r,d={transition:o,transitionEnd:a,delay:s};return(0,xn.jsx)(io,{custom:d,children:u&&(0,xn.jsx)(bh.div,{ref:t,className:v("chakra-fade",i),custom:d,...xh,animate:l,...c})})}));_h.displayName="Fade";var kh=bn(bh.div),Sh=wn(((e,t)=>{const{className:r,transition:n,motionProps:i,...o}=e,a=v("chakra-modal__overlay",r),s={pos:"fixed",left:"0",top:"0",w:"100vw",h:"100vh",...ao().overlay},{motionPreset:c}=co(),l=i||("none"===c?{}:xh);return(0,xn.jsx)(kh,{...l,__css:s,ref:t,className:a,...o})}));Sh.displayName="ModalOverlay";var Eh={initial:({offsetX:e,offsetY:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{opacity:0,x:e,y:t,transition:null!=(o=null==r?void 0:r.exit)?o:bo(vo.exit,i),transitionEnd:null==n?void 0:n.exit}},enter:({transition:e,transitionEnd:t,delay:r})=>{var n;return{opacity:1,x:0,y:0,transition:null!=(n=null==e?void 0:e.enter)?n:yo(vo.enter,r),transitionEnd:null==t?void 0:t.enter}},exit:({offsetY:e,offsetX:t,transition:r,transitionEnd:n,reverse:i,delay:o})=>{var a;const s={x:t,y:e};return{opacity:0,transition:null!=(a=null==r?void 0:r.exit)?a:bo(vo.exit,o),...i?{...s,transitionEnd:null==n?void 0:n.exit}:{transitionEnd:{...s,...null==n?void 0:n.exit}}}}},Ah={initial:"initial",animate:"enter",exit:"exit",variants:Eh},Ph=(0,i.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,reverse:i=!0,className:o,offsetX:a=0,offsetY:s=8,transition:c,transitionEnd:l,delay:u,...d}=e,h=!r||n&&r,f=n||r?"enter":"exit",p={offsetX:a,offsetY:s,reverse:i,transition:c,transitionEnd:l,delay:u};return(0,xn.jsx)(io,{custom:p,children:h&&(0,xn.jsx)(bh.div,{ref:t,className:v("chakra-offset-slide",o),custom:p,...Ah,animate:f,...d})})}));Ph.displayName="SlideFade";var Oh={exit:({reverse:e,initialScale:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{opacity:0,...e?{scale:t,transitionEnd:null==n?void 0:n.exit}:{transitionEnd:{scale:t,...null==n?void 0:n.exit}},transition:null!=(o=null==r?void 0:r.exit)?o:bo(vo.exit,i)}},enter:({transitionEnd:e,transition:t,delay:r})=>{var n;return{opacity:1,scale:1,transition:null!=(n=null==t?void 0:t.enter)?n:yo(vo.enter,r),transitionEnd:null==e?void 0:e.enter}}},Th={initial:"exit",animate:"enter",exit:"exit",variants:Oh},Ch=(0,i.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,reverse:i=!0,initialScale:o=.95,className:a,transition:s,transitionEnd:c,delay:l,...u}=e,d=!r||n&&r,h=n||r?"enter":"exit",f={initialScale:o,reverse:i,transition:s,transitionEnd:c,delay:l};return(0,xn.jsx)(io,{custom:f,children:d&&(0,xn.jsx)(bh.div,{ref:t,className:v("chakra-offset-slide",a),...Th,animate:h,custom:f,...u})})}));Ch.displayName="ScaleFade";var jh={slideInBottom:{...Ah,custom:{offsetY:16,reverse:!0}},slideInRight:{...Ah,custom:{offsetX:16,reverse:!0}},slideInTop:{...Ah,custom:{offsetY:-16,reverse:!0}},slideInLeft:{...Ah,custom:{offsetX:-16,reverse:!0}},scale:{...Th,custom:{initialScale:.95,reverse:!0}},none:{}},Rh=bn(bh.section),Ih=e=>jh[e||"none"],Mh=(0,i.forwardRef)(((e,t)=>{const{preset:r,motionProps:n=Ih(r),...i}=e;return(0,xn.jsx)(Rh,{ref:t,...n,...i})}));function Lh(){return Lh=Object.assign?Object.assign.bind():function(e){for(var t=1;t0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Gh(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,o=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(s){i={error:s}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a}function Zh(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i1||s(e,t)}))})}function s(e,t){try{!function(e){e.value instanceof Yh?Promise.resolve(e.value.v).then(c,l):u(o[0][2],e)}(i[e](t))}catch(r){u(o[0][3],r)}}function c(e){s("next",e)}function l(e){s("throw",e)}function u(e,t){e(t),o.shift(),o.length&&s(o[0][0],o[0][1])}}function Jh(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=Wh(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,i){(function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)})(n,i,(t=e[r](t)).done,t.value)}))}}}Object.create;"function"===typeof SuppressedError&&SuppressedError;function Qh(e){return e}function ef(e,t){void 0===t&&(t=Qh);var r=[],n=!1,i={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:e},useMedium:function(e){var i=t(e,n);return r.push(i),function(){r=r.filter((function(e){return e!==i}))}},assignSyncMedium:function(e){for(n=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){n=!0;var t=[];if(r.length){var i=r;r=[],i.forEach(e),t=r}var o=function(){var r=t;t=[],r.forEach(e)},a=function(){return Promise.resolve().then(o)};a(),r={push:function(e){t.push(e),a()},filter:function(e){return t=t.filter(e),r}}}};return i}function tf(e,t){return void 0===t&&(t=Qh),ef(e,t)}function rf(e){void 0===e&&(e={});var t=ef(null);return t.options=Hh({async:!0,ssr:!1},e),t}var nf=tf({},(function(e){return{target:e.target,currentTarget:e.currentTarget}})),of=tf(),af=tf(),sf=rf({async:!0}),cf=[],lf=i.forwardRef((function(e,t){var r,n=i.useState(),o=n[0],a=n[1],s=i.useRef(),c=i.useRef(!1),l=i.useRef(null),u=e.children,d=e.disabled,h=e.noFocusGuards,f=e.persistentFocus,p=e.crossFrame,m=e.autoFocus,g=(e.allowTextSelection,e.group),v=e.className,y=e.whiteList,b=e.hasPositiveIndices,w=e.shards,x=void 0===w?cf:w,_=e.as,k=void 0===_?"div":_,S=e.lockProps,E=void 0===S?{}:S,A=e.sideCar,P=e.returnFocus,O=e.focusOptions,T=e.onActivation,C=e.onDeactivation,j=i.useState({})[0],R=i.useCallback((function(){l.current=l.current||document&&document.activeElement,s.current&&T&&T(s.current),c.current=!0}),[T]),I=i.useCallback((function(){c.current=!1,C&&C(s.current)}),[C]);(0,i.useEffect)((function(){d||(l.current=null)}),[]);var M=i.useCallback((function(e){var t=l.current;if(t&&t.focus){var r="function"===typeof P?P(t):P;if(r){var n="object"===typeof r?r:void 0;l.current=null,e?Promise.resolve().then((function(){return t.focus(n)})):t.focus(n)}}}),[P]),L=i.useCallback((function(e){c.current&&nf.useMedium(e)}),[]),N=of.useMedium,D=i.useCallback((function(e){s.current!==e&&(s.current=e,a(e))}),[]);var z=Lh(((r={})[Dh]=d&&"disabled",r[Nh]=g,r),E),B=!0!==h,F=B&&"tail"!==h,U=zh([t,D]);return i.createElement(i.Fragment,null,B&&[i.createElement("div",{key:"guard-first","data-focus-guard":!0,tabIndex:d?-1:0,style:Bh}),b?i.createElement("div",{key:"guard-nearest","data-focus-guard":!0,tabIndex:d?-1:1,style:Bh}):null],!d&&i.createElement(A,{id:j,sideCar:sf,observed:o,disabled:d,persistentFocus:f,crossFrame:p,autoFocus:m,whiteList:y,shards:x,onActivation:R,onDeactivation:I,returnFocus:M,focusOptions:O}),i.createElement(k,Lh({ref:U},z,{className:v,onBlur:N,onFocus:L}),u),F&&i.createElement("div",{"data-focus-guard":!0,tabIndex:d?-1:0,style:Bh}))}));lf.propTypes={},lf.defaultProps={children:void 0,disabled:!1,returnFocus:!1,focusOptions:void 0,noFocusGuards:!1,autoFocus:!0,persistentFocus:!1,crossFrame:!0,hasPositiveIndices:void 0,allowTextSelection:void 0,group:void 0,className:void 0,whiteList:void 0,shards:void 0,as:"div",lockProps:{},onActivation:void 0,onDeactivation:void 0};const uf=lf;function df(e,t){return df=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},df(e,t)}function hf(e){return hf="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},hf(e)}function ff(e){var t=function(e,t){if("object"!==hf(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==hf(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===hf(t)?t:String(t)}const pf=function(e,t){return function(r){var n,o=[];function a(){n=e(o.map((function(e){return e.props}))),t(n)}var s=function(e){var t,s;function c(){return e.apply(this,arguments)||this}s=e,(t=c).prototype=Object.create(s.prototype),t.prototype.constructor=t,df(t,s),c.peek=function(){return n};var l=c.prototype;return l.componentDidMount=function(){o.push(this),a()},l.componentDidUpdate=function(){a()},l.componentWillUnmount=function(){var e=o.indexOf(this);o.splice(e,1),a()},l.render=function(){return i.createElement(r,this.props)},c}(i.PureComponent);return function(e,t,r){(t=ff(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}(s,"displayName","SideEffect("+function(e){return e.displayName||e.name||"Component"}(r)+")"),s}};var mf=function(e){for(var t=Array(e.length),r=0;r=0})).sort(Cf)},Rf=["button:enabled","select:enabled","textarea:enabled","input:enabled","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[tabindex]","[contenteditable]","[autofocus]"].join(","),If="".concat(Rf,", [data-focus-guard]"),Mf=function(e,t){return mf((e.shadowRoot||e).children).reduce((function(e,r){return e.concat(r.matches(t?If:Rf)?[r]:[],Mf(r))}),[])},Lf=function(e,t){return e.reduce((function(e,r){var n,i=Mf(r,t),o=(n=[]).concat.apply(n,i.map((function(e){return function(e,t){var r;return e instanceof HTMLIFrameElement&&(null===(r=e.contentDocument)||void 0===r?void 0:r.body)?Lf([e.contentDocument.body],t):[e]}(e,t)})));return e.concat(o,r.parentNode?mf(r.parentNode.querySelectorAll(Rf)).filter((function(e){return e===r})):[])}),[])},Nf=function(e,t){return mf(e).filter((function(e){return xf(t,e)})).filter((function(e){return function(e){return!((Sf(e)||function(e){return"BUTTON"===e.tagName}(e))&&("hidden"===e.type||e.disabled))}(e)}))},Df=function(e,t){return void 0===t&&(t=new Map),mf(e).filter((function(e){return _f(t,e)}))},zf=function(e,t,r){return jf(Nf(Lf(e,r),t),!0,r)},Bf=function(e,t){return jf(Nf(Lf(e),t),!1)},Ff=function(e,t){return Nf(function(e){var t=e.querySelectorAll("[".concat("data-autofocus-inside","]"));return mf(t).map((function(e){return Lf([e])})).reduce((function(e,t){return e.concat(t)}),[])}(e),t)},Uf=function(e,t){return e.shadowRoot?Uf(e.shadowRoot,t):!(void 0===Object.getPrototypeOf(e).contains||!Object.getPrototypeOf(e).contains.call(e,t))||mf(e.children).some((function(e){var r;if(e instanceof HTMLIFrameElement){var n=null===(r=e.contentDocument)||void 0===r?void 0:r.body;return!!n&&Uf(n,t)}return Uf(e,t)}))},$f=function(e){if(void 0===e&&(e=document),e&&e.activeElement){var t=e.activeElement;return t.shadowRoot?$f(t.shadowRoot):t instanceof HTMLIFrameElement&&function(e){try{return e()}catch(t){return}}((function(){return t.contentWindow.document}))?$f(t.contentWindow.document):t}},Hf=function(e){return e.parentNode?Hf(e.parentNode):e},Vf=function(e){return gf(e).filter(Boolean).reduce((function(e,t){var r=t.getAttribute(Nh);return e.push.apply(e,r?function(e){for(var t=new Set,r=e.length,n=0;n0&&t.add(i),(o&Node.DOCUMENT_POSITION_CONTAINS)>0&&t.add(n)}return e.filter((function(e,r){return!t.has(r)}))}(mf(Hf(t).querySelectorAll("[".concat(Nh,'="').concat(r,'"]:not([').concat(Dh,'="disabled"])')))):[t]),e}),[])},qf=function(e,t){return void 0===t&&(t=$f(vf(e).ownerDocument)),!(!t||t.dataset&&t.dataset.focusGuard)&&Vf(e).some((function(e){return Uf(e,t)||function(e,t){return Boolean(mf(e.querySelectorAll("iframe")).some((function(e){return function(e,t){return e===t}(e,t)})))}(e,t)}))},Kf=function(e,t){return Ef(e)&&e.name?function(e,t){return t.filter(Ef).filter((function(t){return t.name===e.name})).filter((function(e){return e.checked}))[0]||e}(e,t):e},Wf=function(e){return e[0]&&e.length>1?Kf(e[0],e):e[0]},Gf=function(e,t){return e.length>1?e.indexOf(Kf(e[t],e)):t},Zf="NEW_FOCUS",Yf=function(e,t,r,n){var i=e.length,o=e[0],a=e[i-1],s=Pf(r);if(!(r&&e.indexOf(r)>=0)){var c=void 0!==r?t.indexOf(r):-1,l=n?t.indexOf(n):c,u=n?e.indexOf(n):-1,d=c-l,h=t.indexOf(o),f=t.indexOf(a),p=function(e){var t=new Set;return e.forEach((function(r){return t.add(Kf(r,e))})),e.filter((function(e){return t.has(e)}))}(t),m=(void 0!==r?p.indexOf(r):-1)-(n?p.indexOf(n):c),g=Gf(e,0),v=Gf(e,i-1);return-1===c||-1===u?Zf:!d&&u>=0?u:c<=h&&s&&Math.abs(d)>1?v:c>=f&&s&&Math.abs(d)>1?g:d&&Math.abs(m)>1?u:c<=h?v:c>f?g:d?Math.abs(d)>1?u:(i+u+d)%i:void 0}},Xf=function(e,t,r){var n,i=e.map((function(e){return e.node})),o=Df(i.filter((n=r,function(e){var t,r=null===(t=kf(e))||void 0===t?void 0:t.autofocus;return e.autofocus||void 0!==r&&"false"!==r||n.indexOf(e)>=0})));return o&&o.length?Wf(o):Wf(Df(t))},Jf=function(e,t){return void 0===t&&(t=[]),t.push(e),e.parentNode&&Jf(e.parentNode.host||e.parentNode,t),t},Qf=function(e,t){for(var r=Jf(e),n=Jf(t),i=0;i=0)return o}return!1},ep=function(e,t,r){var n=gf(e),i=gf(t),o=n[0],a=!1;return i.filter(Boolean).forEach((function(e){a=Qf(a||e,e)||a,r.filter(Boolean).forEach((function(e){var t=Qf(o,e);t&&(a=!a||Uf(t,a)?t:Qf(t,a))}))})),a},tp=function(e,t){var r=$f(gf(e).length>0?document:vf(e).ownerDocument),n=Vf(e).filter(Of),i=ep(r||e,e,n),o=new Map,a=Bf(n,o),s=zf(n,o).filter((function(e){var t=e.node;return Of(t)}));if(s[0]||(s=a)[0]){var c=Bf([i],o).map((function(e){return e.node})),l=function(e,t){var r=new Map;return t.forEach((function(e){return r.set(e.node,e)})),e.map((function(e){return r.get(e)})).filter(Tf)}(c,s),u=l.map((function(e){return e.node})),d=Yf(u,c,r,t);if(d===Zf){var h=Xf(a,u,function(e,t){return e.reduce((function(e,r){return e.concat(Ff(r,t))}),[])}(n,o));return h?{node:h}:void console.warn("focus-lock: cannot find any node to move focus into")}return void 0===d?d:l[d]}},rp=0,np=!1,ip=function(e,t,r){void 0===r&&(r={});var n,i,o=tp(e,t);if(!np&&o){if(rp>2)return console.error("FocusLock: focus-fighting detected. Only one focus management system could be active. See https://github.com/theKashey/focus-lock/#focus-fighting"),np=!0,void setTimeout((function(){np=!1}),1);rp++,n=o.node,i=r.focusOptions,"focus"in n&&n.focus(i),"contentWindow"in n&&n.contentWindow&&n.contentWindow.focus(),rp--}};function op(e){setTimeout(e,1)}var ap=function(){return document&&document.activeElement===document.body||function(e){void 0===e&&(e=document);var t=$f(e);return!!t&&mf(e.querySelectorAll("[".concat("data-no-focus-lock","]"))).some((function(e){return Uf(e,t)}))}()},sp=null,cp=null,lp=null,up=!1,dp=function(){return!0};function hp(e,t,r,n){var i=null,o=e;do{var a=n[o];if(a.guard)a.node.dataset.focusAutoGuard&&(i=a);else{if(!a.lockItem)break;if(o!==e)return;i=null}}while((o+=r)!==t);i&&(i.node.tabIndex=0)}var fp=function(e){return e&&"current"in e?e.current:e},pp=function e(t,r,n){return r&&(r.host===t&&(!r.activeElement||n.contains(r.activeElement))||r.parentNode&&e(t,r.parentNode,n))},mp=function(){var e,t=!1;if(sp){var r=sp,n=r.observed,i=r.persistentFocus,o=r.autoFocus,a=r.shards,s=r.crossFrame,c=r.focusOptions,l=n||lp&&lp.portaledElement,u=document&&document.activeElement;if(l){var d=[l].concat(a.map(fp).filter(Boolean));if(u&&!function(e){return(sp.whiteList||dp)(e)}(u)||(i||(s?Boolean(up):"meanwhile"===up)||!ap()||!cp&&o)&&(l&&!(qf(d)||u&&function(e,t){return t.some((function(t){return pp(e,t,t)}))}(u,d)||(e=u,lp&&lp.portaledElement===e))&&(document&&!cp&&u&&!o?(u.blur&&u.blur(),document.body.focus()):(t=ip(d,cp,{focusOptions:c}),lp={})),up=!1,cp=document&&document.activeElement),document){var h=document&&document.activeElement,f=function(e){var t=Vf(e).filter(Of),r=ep(e,e,t),n=new Map,i=zf([r],n,!0),o=zf(t,n).filter((function(e){var t=e.node;return Of(t)})).map((function(e){return e.node}));return i.map((function(e){var t=e.node;return{node:t,index:e.index,lockItem:o.indexOf(t)>=0,guard:Pf(t)}}))}(d),p=f.map((function(e){return e.node})).indexOf(h);p>-1&&(f.filter((function(e){var t=e.guard,r=e.node;return t&&r.dataset.focusAutoGuard})).forEach((function(e){return e.node.removeAttribute("tabIndex")})),hp(p,f.length,1,f),hp(p,-1,-1,f))}}}return t},gp=function(e){mp()&&e&&(e.stopPropagation(),e.preventDefault())},vp=function(){return op(mp)},yp=function(e){var t=e.target,r=e.currentTarget;r.contains(t)||(lp={observerNode:r,portaledElement:t})},bp=function(){up="just",op((function(){up="meanwhile"}))};nf.assignSyncMedium(yp),of.assignMedium(vp),af.assignMedium((function(e){return e({moveFocusInside:ip,focusInside:qf})}));const wp=pf((function(e){return e.filter((function(e){return!e.disabled}))}),(function(e){var t=e.slice(-1)[0];t&&!sp&&(document.addEventListener("focusin",gp),document.addEventListener("focusout",vp),window.addEventListener("blur",bp));var r=sp,n=r&&t&&t.id===r.id;sp=t,r&&!n&&(r.onDeactivation(),e.filter((function(e){return e.id===r.id})).length||r.returnFocus(!t)),t?(cp=null,n&&r.observed===t.observed||t.onActivation(),mp(),op(mp)):(document.removeEventListener("focusin",gp),document.removeEventListener("focusout",vp),window.removeEventListener("blur",bp),cp=null)}))((function(){return null}));var xp=i.forwardRef((function(e,t){return i.createElement(uf,Lh({sideCar:wp,ref:t},e))})),_p=uf.propTypes||{};_p.sideCar,function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n=0||(i[r]=e[r])}(_p,["sideCar"]);xp.propTypes={};const kp=xp;function Sp(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function Ep(e){var t;if(!Sp(e))return!1;return e instanceof(null!=(t=e.ownerDocument.defaultView)?t:window).HTMLElement}function Ap(e){return Sp(e)?e.ownerDocument:document}var Pp=e=>e.hasAttribute("tabindex"),Op=e=>Pp(e)&&-1===e.tabIndex;function Tp(e){return!(!e.parentElement||!Tp(e.parentElement))||e.hidden}function Cp(e){if(!Ep(e)||Tp(e)||function(e){return!0===Boolean(e.getAttribute("disabled"))||!0===Boolean(e.getAttribute("aria-disabled"))}(e))return!1;const{localName:t}=e;if(["input","select","textarea","button"].indexOf(t)>=0)return!0;const r={a:()=>e.hasAttribute("href"),audio:()=>e.hasAttribute("controls"),video:()=>e.hasAttribute("controls")};return t in r?r[t]():!!function(e){const t=e.getAttribute("contenteditable");return"false"!==t&&null!=t}(e)||Pp(e)}var jp,Rp=["input:not(:disabled):not([disabled])","select:not(:disabled):not([disabled])","textarea:not(:disabled):not([disabled])","embed","iframe","object","a[href]","area[href]","button:not(:disabled):not([disabled])","[tabindex]","audio[controls]","video[controls]","*[tabindex]:not([aria-disabled])","*[contenteditable]"].join(),Ip=e=>e.offsetWidth>0&&e.offsetHeight>0;function Mp(e){const t=Array.from(e.querySelectorAll(Rp));return t.unshift(e),t.filter((e=>Cp(e)&&Ip(e)))}var Lp=null!=(jp=kp.default)?jp:kp,Np=e=>{const{initialFocusRef:t,finalFocusRef:r,contentRef:n,restoreFocus:o,children:a,isDisabled:s,autoFocus:c,persistentFocus:l,lockFocusAcrossFrames:u}=e,d=(0,i.useCallback)((()=>{if(null==t?void 0:t.current)t.current.focus();else if(null==n?void 0:n.current){0===Mp(n.current).length&&requestAnimationFrame((()=>{var e;null==(e=n.current)||e.focus()}))}}),[t,n]),h=(0,i.useCallback)((()=>{var e;null==(e=null==r?void 0:r.current)||e.focus()}),[r]),f=o&&!r;return(0,xn.jsx)(Lp,{crossFrame:u,persistentFocus:l,autoFocus:c,disabled:s,onActivation:d,onDeactivation:h,returnFocus:f,children:a})};Np.displayName="FocusLock";var Dp="right-scroll-bar-position",zp="width-before-scroll-bar",Bp=rf(),Fp=function(){},Up=i.forwardRef((function(e,t){var r=i.useRef(null),n=i.useState({onScrollCapture:Fp,onWheelCapture:Fp,onTouchMoveCapture:Fp}),o=n[0],a=n[1],s=e.forwardProps,c=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,h=e.shards,f=e.sideCar,p=e.noIsolation,m=e.inert,g=e.allowPinchZoom,v=e.as,y=void 0===v?"div":v,b=e.gapMode,w=Vh(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),x=f,_=zh([r,t]),k=Hh(Hh({},w),o);return i.createElement(i.Fragment,null,d&&i.createElement(x,{sideCar:Bp,removeScrollBar:u,shards:h,noIsolation:p,inert:m,setCallbacks:a,allowPinchZoom:!!g,lockRef:r,gapMode:b}),s?i.cloneElement(i.Children.only(c),Hh(Hh({},k),{ref:_})):i.createElement(y,Hh({},k,{className:l,ref:_}),c))}));Up.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},Up.classNames={fullWidth:zp,zeroRight:Dp};var $p,Hp=function(e){var t=e.sideCar,r=Vh(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var n=t.read();if(!n)throw new Error("Sidecar medium not found");return i.createElement(n,Hh({},r))};Hp.isSideCarExport=!0;function Vp(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=$p||r.nc;return t&&e.setAttribute("nonce",t),e}var qp=function(){var e=0,t=null;return{add:function(r){var n;0==e&&(t=Vp())&&(!function(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}(t,r),n=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(n)),e++},remove:function(){! --e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},Kp=function(){var e=function(){var e=qp();return function(t,r){i.useEffect((function(){return e.add(t),function(){e.remove()}}),[t&&r])}}();return function(t){var r=t.styles,n=t.dynamic;return e(r,n),null}},Wp={left:0,top:0,right:0,gap:0},Gp=function(e){return parseInt(e||"",10)||0},Zp=function(e){if(void 0===e&&(e="margin"),"undefined"===typeof window)return Wp;var t=function(e){var t=window.getComputedStyle(document.body),r=t["padding"===e?"paddingLeft":"marginLeft"],n=t["padding"===e?"paddingTop":"marginTop"],i=t["padding"===e?"paddingRight":"marginRight"];return[Gp(r),Gp(n),Gp(i)]}(e),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,n-r+t[2]-t[0])}},Yp=Kp(),Xp=function(e,t,r,n){var i=e.left,o=e.top,a=e.right,s=e.gap;return void 0===r&&(r="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(n,";\n padding-right: ").concat(s,"px ").concat(n,";\n }\n body {\n overflow: hidden ").concat(n,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(n,";"),"margin"===r&&"\n padding-left: ".concat(i,"px;\n padding-top: ").concat(o,"px;\n padding-right: ").concat(a,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(s,"px ").concat(n,";\n "),"padding"===r&&"padding-right: ".concat(s,"px ").concat(n,";")].filter(Boolean).join(""),"\n }\n \n .").concat(Dp," {\n right: ").concat(s,"px ").concat(n,";\n }\n \n .").concat(zp," {\n margin-right: ").concat(s,"px ").concat(n,";\n }\n \n .").concat(Dp," .").concat(Dp," {\n right: 0 ").concat(n,";\n }\n \n .").concat(zp," .").concat(zp," {\n margin-right: 0 ").concat(n,";\n }\n \n body {\n ").concat("--removed-body-scroll-bar-size",": ").concat(s,"px;\n }\n")},Jp=function(e){var t=e.noRelative,r=e.noImportant,n=e.gapMode,o=void 0===n?"margin":n,a=i.useMemo((function(){return Zp(o)}),[o]);return i.createElement(Yp,{styles:Xp(a,!t,o,r?"":"!important")})},Qp=!1;if("undefined"!==typeof window)try{var em=Object.defineProperty({},"passive",{get:function(){return Qp=!0,!0}});window.addEventListener("test",em,em),window.removeEventListener("test",em,em)}catch(Tie){Qp=!1}var tm=!!Qp&&{passive:!1},rm=function(e,t){var r=window.getComputedStyle(e);return"hidden"!==r[t]&&!(r.overflowY===r.overflowX&&!function(e){return"TEXTAREA"===e.tagName}(e)&&"visible"===r[t])},nm=function(e,t){var r=t.ownerDocument,n=t;do{if("undefined"!==typeof ShadowRoot&&n instanceof ShadowRoot&&(n=n.host),im(e,n)){var i=om(e,n);if(i[1]>i[2])return!0}n=n.parentNode}while(n&&n!==r.body);return!1},im=function(e,t){return"v"===e?function(e){return rm(e,"overflowY")}(t):function(e){return rm(e,"overflowX")}(t)},om=function(e,t){return"v"===e?function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]}(t):function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]}(t)},am=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},sm=function(e){return[e.deltaX,e.deltaY]},cm=function(e){return e&&"current"in e?e.current:e},lm=function(e){return"\n .block-interactivity-".concat(e," {pointer-events: none;}\n .allow-interactivity-").concat(e," {pointer-events: all;}\n")},um=0,dm=[];function hm(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const fm=(pm=function(e){var t=i.useRef([]),r=i.useRef([0,0]),n=i.useRef(),o=i.useState(um++)[0],a=i.useState(Kp)[0],s=i.useRef(e);i.useEffect((function(){s.current=e}),[e]),i.useEffect((function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var t=Zh([e.lockRef.current],(e.shards||[]).map(cm),!0).filter(Boolean);return t.forEach((function(e){return e.classList.add("allow-interactivity-".concat(o))})),function(){document.body.classList.remove("block-interactivity-".concat(o)),t.forEach((function(e){return e.classList.remove("allow-interactivity-".concat(o))}))}}}),[e.inert,e.lockRef.current,e.shards]);var c=i.useCallback((function(e,t){if("touches"in e&&2===e.touches.length)return!s.current.allowPinchZoom;var i,o=am(e),a=r.current,c="deltaX"in e?e.deltaX:a[0]-o[0],l="deltaY"in e?e.deltaY:a[1]-o[1],u=e.target,d=Math.abs(c)>Math.abs(l)?"h":"v";if("touches"in e&&"h"===d&&"range"===u.type)return!1;var h=nm(d,u);if(!h)return!0;if(h?i=d:(i="v"===d?"h":"v",h=nm(d,u)),!h)return!1;if(!n.current&&"changedTouches"in e&&(c||l)&&(n.current=i),!i)return!0;var f=n.current||i;return function(e,t,r,n,i){var o=function(e,t){return"h"===e&&"rtl"===t?-1:1}(e,window.getComputedStyle(t).direction),a=o*n,s=r.target,c=t.contains(s),l=!1,u=a>0,d=0,h=0;do{var f=om(e,s),p=f[0],m=f[1]-f[2]-o*p;(p||m)&&im(e,s)&&(d+=m,h+=p),s=s instanceof ShadowRoot?s.host:s.parentNode}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&a>d)||!u&&(i&&Math.abs(h)<1||!i&&-a>h))&&(l=!0),l}(f,t,e,"h"===f?c:l,!0)}),[]),l=i.useCallback((function(e){var r=e;if(dm.length&&dm[dm.length-1]===a){var n="deltaY"in r?sm(r):am(r),i=t.current.filter((function(e){return e.name===r.type&&(e.target===r.target||r.target===e.shadowParent)&&function(e,t){return e[0]===t[0]&&e[1]===t[1]}(e.delta,n)}))[0];if(i&&i.should)r.cancelable&&r.preventDefault();else if(!i){var o=(s.current.shards||[]).map(cm).filter(Boolean).filter((function(e){return e.contains(r.target)}));(o.length>0?c(r,o[0]):!s.current.noIsolation)&&r.cancelable&&r.preventDefault()}}}),[]),u=i.useCallback((function(e,r,n,i){var o={name:e,delta:r,target:n,should:i,shadowParent:hm(n)};t.current.push(o),setTimeout((function(){t.current=t.current.filter((function(e){return e!==o}))}),1)}),[]),d=i.useCallback((function(e){r.current=am(e),n.current=void 0}),[]),h=i.useCallback((function(t){u(t.type,sm(t),t.target,c(t,e.lockRef.current))}),[]),f=i.useCallback((function(t){u(t.type,am(t),t.target,c(t,e.lockRef.current))}),[]);i.useEffect((function(){return dm.push(a),e.setCallbacks({onScrollCapture:h,onWheelCapture:h,onTouchMoveCapture:f}),document.addEventListener("wheel",l,tm),document.addEventListener("touchmove",l,tm),document.addEventListener("touchstart",d,tm),function(){dm=dm.filter((function(e){return e!==a})),document.removeEventListener("wheel",l,tm),document.removeEventListener("touchmove",l,tm),document.removeEventListener("touchstart",d,tm)}}),[]);var p=e.removeScrollBar,m=e.inert;return i.createElement(i.Fragment,null,m?i.createElement(a,{styles:lm(o)}):null,p?i.createElement(Jp,{gapMode:e.gapMode}):null)},Bp.useMedium(pm),Hp);var pm,mm=i.forwardRef((function(e,t){return i.createElement(Up,Hh({},e,{ref:t,sideCar:fm}))}));mm.classNames=Up.classNames;const gm=mm;function vm(e){const{autoFocus:t,trapFocus:r,dialogRef:n,initialFocusRef:o,blockScrollOnMount:a,allowPinchZoom:s,finalFocusRef:c,returnFocusOnClose:l,preserveScrollBarGap:u,lockFocusAcrossFrames:d,isOpen:h}=co(),[f,p]=Xu();(0,i.useEffect)((()=>{!f&&p&&setTimeout(p)}),[f,p]);const m=di(n,h);return(0,xn.jsx)(Np,{autoFocus:t,isDisabled:!r,initialFocusRef:o,finalFocusRef:c,restoreFocus:l,contentRef:n,lockFocusAcrossFrames:d,children:(0,xn.jsx)(gm,{removeScrollBar:!u,allowPinchZoom:s,enabled:1===m&&a,forwardProps:!0,children:e.children})})}var ym=wn(((e,t)=>{const{className:r,children:n,containerProps:i,motionProps:o,...a}=e,{getDialogProps:s,getDialogContainerProps:c}=co(),l=s(a,t),u=c(i),d=v("chakra-modal__content",r),h=ao(),f={display:"flex",flexDirection:"column",position:"relative",width:"100%",outline:0,...h.dialog},p={display:"flex",width:"100vw",height:"$100vh",position:"fixed",left:0,top:0,...h.dialogContainer},{motionPreset:m}=co();return(0,xn.jsx)(vm,{children:(0,xn.jsx)(bn.div,{...u,className:"chakra-modal__content-container",tabIndex:-1,__css:p,children:(0,xn.jsx)(Mh,{preset:m,motionProps:o,className:d,...l,__css:f,children:n})})})}));ym.displayName="ModalContent";var bm={path:(0,xn.jsxs)("g",{stroke:"currentColor",strokeWidth:"1.5",children:[(0,xn.jsx)("path",{strokeLinecap:"round",fill:"none",d:"M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"}),(0,xn.jsx)("path",{fill:"currentColor",strokeLinecap:"round",d:"M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"}),(0,xn.jsx)("circle",{fill:"none",strokeMiterlimit:"10",cx:"12",cy:"12",r:"11.25"})]}),viewBox:"0 0 24 24"},wm=wn(((e,t)=>{const{as:r,viewBox:n,color:i="currentColor",focusable:o=!1,children:a,className:s,__css:c,...l}=e,u={ref:t,focusable:o,className:v("chakra-icon",s),__css:{w:"1em",h:"1em",display:"inline-block",lineHeight:"1em",flexShrink:0,color:i,...c,...Vn("Icon",e)}},d=null!=n?n:bm.viewBox;if(r&&"string"!==typeof r)return(0,xn.jsx)(bn.svg,{as:r,...u,...l});const h=null!=a?a:bm.path;return(0,xn.jsx)(bn.svg,{verticalAlign:"middle",viewBox:d,...u,...l,children:h})}));wm.displayName="Icon";function xm(e){return(0,xn.jsx)(wm,{focusable:"false","aria-hidden":!0,...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M.439,21.44a1.5,1.5,0,0,0,2.122,2.121L11.823,14.3a.25.25,0,0,1,.354,0l9.262,9.263a1.5,1.5,0,1,0,2.122-2.121L14.3,12.177a.25.25,0,0,1,0-.354l9.263-9.262A1.5,1.5,0,0,0,21.439.44L12.177,9.7a.25.25,0,0,1-.354,0L2.561.44A1.5,1.5,0,0,0,.439,2.561L9.7,11.823a.25.25,0,0,1,0,.354Z"})})}var _m=wn((function(e,t){const r=Vn("CloseButton",e),{children:n,isDisabled:i,__css:o,...a}=ht(e);return(0,xn.jsx)(bn.button,{type:"button","aria-label":"Close",ref:t,disabled:i,__css:{outline:0,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,...r,...o},...a,children:n||(0,xn.jsx)(xm,{width:"1em",height:"1em"})})}));_m.displayName="CloseButton";var km=wn(((e,t)=>{const{onClick:r,className:n,...i}=e,{onClose:o}=co(),a=v("chakra-modal__close-btn",n),s=ao();return(0,xn.jsx)(_m,{ref:t,__css:s.closeButton,className:a,onClick:S(r,(e=>{e.stopPropagation(),o()})),...i})}));km.displayName="ModalCloseButton";var Sm=wn(((e,t)=>{const{className:r,...n}=e,{headerId:o,setHeaderMounted:a}=co();(0,i.useEffect)((()=>(a(!0),()=>a(!1))),[a]);const s=v("chakra-modal__header",r),c={flex:0,...ao().header};return(0,xn.jsx)(bn.header,{ref:t,className:s,id:o,...n,__css:c})}));function Em(e){const t=Object.assign({},e);for(let r in t)void 0===t[r]&&delete t[r];return t}Sm.displayName="ModalHeader";var Am=wn((function(e,t){const r=Vn("Text",e),{className:n,align:i,decoration:o,casing:a,...s}=ht(e),c=Em({textAlign:e.align,textDecoration:e.decoration,textTransform:e.casing});return(0,xn.jsx)(bn.p,{ref:t,className:v("chakra-text",e.className),...c,...s,__css:r})}));Am.displayName="Text";var Pm=wn(((e,t)=>{const{className:r,...n}=e,{bodyId:o,setBodyMounted:a}=co();(0,i.useEffect)((()=>(a(!0),()=>a(!1))),[a]);const s=v("chakra-modal__body",r),c=ao();return(0,xn.jsx)(bn.div,{ref:t,className:s,id:o,...n,__css:c.body})}));Pm.displayName="ModalBody";var Om=wn((function(e,t){const{borderLeftWidth:r,borderBottomWidth:n,borderTopWidth:i,borderRightWidth:o,borderWidth:a,borderStyle:s,borderColor:c,...l}=Vn("Divider",e),{className:u,orientation:d="horizontal",__css:h,...f}=ht(e),p={vertical:{borderLeftWidth:r||o||a||"1px",height:"100%"},horizontal:{borderBottomWidth:n||i||a||"1px",width:"100%"}};return(0,xn.jsx)(bn.hr,{ref:t,"aria-orientation":d,...f,__css:{...l,border:"0",borderColor:c,borderStyle:s,...p[d],...h},className:v("chakra-divider",u)})}));Om.displayName="Divider";var[Tm,Cm]=Rn({name:"FormControlStylesContext",errorMessage:"useFormControlStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),[jm,Rm]=Rn({strict:!1,name:"FormControlContext"});var Im=wn((function(e,t){const r=qn("Form",e),n=ht(e),{getRootProps:o,htmlProps:a,...s}=function(e){const{id:t,isRequired:r,isInvalid:n,isDisabled:o,isReadOnly:a,...s}=e,c=(0,i.useId)(),l=t||`field-${c}`,u=`${l}-label`,d=`${l}-feedback`,h=`${l}-helptext`,[f,p]=(0,i.useState)(!1),[m,g]=(0,i.useState)(!1),[v,y]=(0,i.useState)(!1),b=(0,i.useCallback)(((e={},t=null)=>({id:h,...e,ref:Zn(t,(e=>{e&&g(!0)}))})),[h]),w=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,"data-focus":_(v),"data-disabled":_(o),"data-invalid":_(n),"data-readonly":_(a),id:void 0!==e.id?e.id:u,htmlFor:void 0!==e.htmlFor?e.htmlFor:l})),[l,o,v,n,a,u]),x=(0,i.useCallback)(((e={},t=null)=>({id:d,...e,ref:Zn(t,(e=>{e&&p(!0)})),"aria-live":"polite"})),[d]),k=(0,i.useCallback)(((e={},t=null)=>({...e,...s,ref:t,role:"group","data-focus":_(v),"data-disabled":_(o),"data-invalid":_(n),"data-readonly":_(a)})),[s,o,v,n,a]),S=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,role:"presentation","aria-hidden":!0,children:e.children||"*"})),[]);return{isRequired:!!r,isInvalid:!!n,isReadOnly:!!a,isDisabled:!!o,isFocused:!!v,onFocus:()=>y(!0),onBlur:()=>y(!1),hasFeedbackText:f,setHasFeedbackText:p,hasHelpText:m,setHasHelpText:g,id:l,labelId:u,feedbackId:d,helpTextId:h,htmlProps:s,getHelpTextProps:b,getErrorMessageProps:x,getRootProps:k,getLabelProps:w,getRequiredIndicatorProps:S}}(n),c=v("chakra-form-control",e.className);return(0,xn.jsx)(jm,{value:s,children:(0,xn.jsx)(Tm,{value:r,children:(0,xn.jsx)(bn.div,{...o({},t),className:c,__css:r.container})})})}));Im.displayName="FormControl";var Mm=wn((function(e,t){const r=Rm(),n=Cm(),i=v("chakra-form__helper-text",e.className);return(0,xn.jsx)(bn.div,{...null==r?void 0:r.getHelpTextProps(e,t),__css:n.helperText,className:i})}));Mm.displayName="FormHelperText";var[Lm,Nm]=Rn({name:"CheckboxGroupContext",strict:!1});function Dm(e){return(0,xn.jsx)(bn.svg,{width:"1.2em",viewBox:"0 0 12 10",style:{fill:"none",strokeWidth:2,stroke:"currentColor",strokeDasharray:16},...e,children:(0,xn.jsx)("polyline",{points:"1.5 6 4.5 9 10.5 1"})})}function zm(e){return(0,xn.jsx)(bn.svg,{width:"1.2em",viewBox:"0 0 24 24",style:{stroke:"currentColor",strokeWidth:4},...e,children:(0,xn.jsx)("line",{x1:"21",x2:"3",y1:"12",y2:"12"})})}function Bm(e){const{isIndeterminate:t,isChecked:r,...n}=e,i=t?zm:Dm;return r||t?(0,xn.jsx)(bn.div,{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%"},children:(0,xn.jsx)(i,{...n})}):null}function Fm(e){const{isDisabled:t,isInvalid:r,isReadOnly:n,isRequired:i,...o}=Um(e);return{...o,disabled:t,readOnly:n,required:i,"aria-invalid":k(r),"aria-required":k(i),"aria-readonly":k(n)}}function Um(e){var t,r,n;const i=Rm(),{id:o,disabled:a,readOnly:s,required:c,isRequired:l,isInvalid:u,isReadOnly:d,isDisabled:h,onFocus:f,onBlur:p,...m}=e,g=e["aria-describedby"]?[e["aria-describedby"]]:[];return(null==i?void 0:i.hasFeedbackText)&&(null==i?void 0:i.isInvalid)&&g.push(i.feedbackId),(null==i?void 0:i.hasHelpText)&&g.push(i.helpTextId),{...m,"aria-describedby":g.join(" ")||void 0,id:null!=o?o:null==i?void 0:i.id,isDisabled:null!=(t=null!=a?a:h)?t:null==i?void 0:i.isDisabled,isReadOnly:null!=(r=null!=s?s:d)?r:null==i?void 0:i.isReadOnly,isRequired:null!=(n=null!=c?c:l)?n:null==i?void 0:i.isRequired,isInvalid:null!=u?u:null==i?void 0:i.isInvalid,onFocus:S(null==i?void 0:i.onFocus,f),onBlur:S(null==i?void 0:i.onBlur,p)}}function $m(e,t){const r=(0,i.useRef)(!1),n=(0,i.useRef)(!1);(0,i.useEffect)((()=>{if(r.current&&n.current)return e();n.current=!0}),t),(0,i.useEffect)((()=>(r.current=!0,()=>{r.current=!1})),[])}function Hm(e,t=[]){const r=(0,i.useRef)(e);return(0,i.useEffect)((()=>{r.current=e})),(0,i.useCallback)(((...e)=>{var t;return null==(t=r.current)?void 0:t.call(r,...e)}),t)}var Vm={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"};var qm=()=>"undefined"!==typeof document;var Km=!1,Wm=null,Gm=!1,Zm=!1,Ym=new Set;function Xm(e,t){Ym.forEach((r=>r(e,t)))}var Jm="undefined"!==typeof window&&null!=window.navigator&&/^Mac/.test(window.navigator.platform);function Qm(e){Gm=!0,function(e){return!(e.metaKey||!Jm&&e.altKey||e.ctrlKey||"Control"===e.key||"Shift"===e.key||"Meta"===e.key)}(e)&&(Wm="keyboard",Xm("keyboard",e))}function eg(e){if(Wm="pointer","mousedown"===e.type||"pointerdown"===e.type){Gm=!0;const t=e.composedPath?e.composedPath()[0]:e.target;let r=!1;try{r=t.matches(":focus-visible")}catch{}if(r)return;Xm("pointer",e)}}function tg(e){var t;(0===(t=e).mozInputSource&&t.isTrusted||0===t.detail&&!t.pointerType)&&(Gm=!0,Wm="virtual")}function rg(e){e.target!==window&&e.target!==document&&(Gm||Zm||(Wm="virtual",Xm("virtual",e)),Gm=!1,Zm=!1)}function ng(){Gm=!1,Zm=!0}function ig(){return"pointer"!==Wm}function og(){if(!qm()||Km)return;const{focus:e}=HTMLElement.prototype;HTMLElement.prototype.focus=function(...t){Gm=!0,e.apply(this,t)},document.addEventListener("keydown",Qm,!0),document.addEventListener("keyup",Qm,!0),document.addEventListener("click",tg,!0),window.addEventListener("focus",rg,!0),window.addEventListener("blur",ng,!1),"undefined"!==typeof PointerEvent?(document.addEventListener("pointerdown",eg,!0),document.addEventListener("pointermove",eg,!0),document.addEventListener("pointerup",eg,!0)):(document.addEventListener("mousedown",eg,!0),document.addEventListener("mousemove",eg,!0),document.addEventListener("mouseup",eg,!0)),Km=!0}function ag(e){og(),e(ig());const t=()=>e(ig());return Ym.add(t),()=>{Ym.delete(t)}}function sg(e={}){const t=Um(e),{isDisabled:r,isReadOnly:n,isRequired:o,isInvalid:a,id:s,onBlur:c,onFocus:l,"aria-describedby":u}=t,{defaultChecked:d,isChecked:h,isFocusable:f,onChange:p,isIndeterminate:m,name:g,value:v,tabIndex:y,"aria-label":b,"aria-labelledby":w,"aria-invalid":x,...k}=e,E=function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(k,["isDisabled","isReadOnly","isRequired","isInvalid","id","onBlur","onFocus","aria-describedby"]),A=Hm(p),P=Hm(c),O=Hm(l),[T,C]=(0,i.useState)(!1),[j,R]=(0,i.useState)(!1),[I,M]=(0,i.useState)(!1),[L,N]=(0,i.useState)(!1);(0,i.useEffect)((()=>ag(C)),[]);const D=(0,i.useRef)(null),[z,B]=(0,i.useState)(!0),[F,U]=(0,i.useState)(!!d),$=void 0!==h,H=$?h:F,V=(0,i.useCallback)((e=>{n||r?e.preventDefault():($||U(H?e.target.checked:!!m||e.target.checked),null==A||A(e))}),[n,r,H,$,m,A]);Si((()=>{D.current&&(D.current.indeterminate=Boolean(m))}),[m]),$m((()=>{r&&R(!1)}),[r,R]),Si((()=>{const e=D.current;if(!(null==e?void 0:e.form))return;const t=()=>{U(!!d)};return e.form.addEventListener("reset",t),()=>{var r;return null==(r=e.form)?void 0:r.removeEventListener("reset",t)}}),[]);const q=r&&!f,K=(0,i.useCallback)((e=>{" "===e.key&&N(!0)}),[N]),W=(0,i.useCallback)((e=>{" "===e.key&&N(!1)}),[N]);Si((()=>{if(!D.current)return;D.current.checked!==H&&U(D.current.checked)}),[D.current]);const G=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":_(L),"data-hover":_(I),"data-checked":_(H),"data-focus":_(j),"data-focus-visible":_(j&&T),"data-indeterminate":_(m),"data-disabled":_(r),"data-invalid":_(a),"data-readonly":_(n),"aria-hidden":!0,onMouseDown:S(e.onMouseDown,(e=>{j&&e.preventDefault(),N(!0)})),onMouseUp:S(e.onMouseUp,(()=>N(!1))),onMouseEnter:S(e.onMouseEnter,(()=>M(!0))),onMouseLeave:S(e.onMouseLeave,(()=>M(!1)))})),[L,H,r,j,T,I,m,a,n]),Z=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":_(L),"data-hover":_(I),"data-checked":_(H),"data-focus":_(j),"data-focus-visible":_(j&&T),"data-indeterminate":_(m),"data-disabled":_(r),"data-invalid":_(a),"data-readonly":_(n)})),[L,H,r,j,T,I,m,a,n]),Y=(0,i.useCallback)(((e={},t=null)=>({...E,...e,ref:Zn(t,(e=>{e&&B("LABEL"===e.tagName)})),onClick:S(e.onClick,(()=>{var e;z||(null==(e=D.current)||e.click(),requestAnimationFrame((()=>{var e;null==(e=D.current)||e.focus({preventScroll:!0})})))})),"data-disabled":_(r),"data-checked":_(H),"data-invalid":_(a)})),[E,r,H,a,z]),X=(0,i.useCallback)(((e={},t=null)=>({...e,ref:Zn(D,t),type:"checkbox",name:g,value:v,id:s,tabIndex:y,onChange:S(e.onChange,V),onBlur:S(e.onBlur,P,(()=>R(!1))),onFocus:S(e.onFocus,O,(()=>R(!0))),onKeyDown:S(e.onKeyDown,K),onKeyUp:S(e.onKeyUp,W),required:o,checked:H,disabled:q,readOnly:n,"aria-label":b,"aria-labelledby":w,"aria-invalid":x?Boolean(x):a,"aria-describedby":u,"aria-disabled":r,style:Vm})),[g,v,s,V,P,O,K,W,o,H,q,n,b,w,x,a,u,r,y]),J=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,onMouseDown:S(e.onMouseDown,cg),"data-disabled":_(r),"data-checked":_(H),"data-invalid":_(a)})),[H,r,a]);return{state:{isInvalid:a,isFocused:j,isChecked:H,isActive:L,isHovered:I,isIndeterminate:m,isDisabled:r,isReadOnly:n,isRequired:o},getRootProps:Y,getCheckboxProps:G,getIndicatorProps:Z,getInputProps:X,getLabelProps:J,htmlProps:E}}function cg(e){e.preventDefault(),e.stopPropagation()}var lg={display:"inline-flex",alignItems:"center",justifyContent:"center",verticalAlign:"top",userSelect:"none",flexShrink:0},ug={cursor:"pointer",display:"inline-flex",alignItems:"center",verticalAlign:"top",position:"relative"},dg=zn({from:{opacity:0,strokeDashoffset:16,transform:"scale(0.95)"},to:{opacity:1,strokeDashoffset:0,transform:"scale(1)"}}),hg=zn({from:{opacity:0},to:{opacity:1}}),fg=zn({from:{transform:"scaleX(0.65)"},to:{transform:"scaleX(1)"}}),pg=wn((function(e,t){const r=Nm(),n=qn("Checkbox",{...r,...e}),o=ht(e),{spacing:a="0.5rem",className:s,children:c,iconColor:l,iconSize:u,icon:d=(0,xn.jsx)(Bm,{}),isChecked:h,isDisabled:f=(null==r?void 0:r.isDisabled),onChange:p,inputProps:m,...g}=o;let y=h;(null==r?void 0:r.value)&&o.value&&(y=r.value.includes(o.value));let b=p;(null==r?void 0:r.onChange)&&o.value&&(b=E(r.onChange,p));const{state:w,getInputProps:x,getCheckboxProps:_,getLabelProps:k,getRootProps:S}=sg({...g,isDisabled:f,isChecked:y,onChange:b}),A=function(e){const[t,r]=(0,i.useState)(e),[n,o]=(0,i.useState)(!1);return e!==t&&(o(!0),r(e)),n}(w.isChecked),P=(0,i.useMemo)((()=>({animation:A?w.isIndeterminate?`${hg} 20ms linear, ${fg} 200ms linear`:`${dg} 200ms linear`:void 0,fontSize:u,color:l,...n.icon})),[l,u,A,w.isIndeterminate,n.icon]),O=(0,i.cloneElement)(d,{__css:P,isIndeterminate:w.isIndeterminate,isChecked:w.isChecked});return(0,xn.jsxs)(bn.label,{__css:{...ug,...n.container},className:v("chakra-checkbox",s),...S(),children:[(0,xn.jsx)("input",{className:"chakra-checkbox__input",...x(m,t)}),(0,xn.jsx)(bn.span,{__css:{...lg,...n.control},className:"chakra-checkbox__control",..._(),children:O}),c&&(0,xn.jsx)(bn.span,{className:"chakra-checkbox__label",...k(),__css:{marginStart:a,...n.label},children:c})]})}));pg.displayName="Checkbox";var mg=wn((function(e,t){const{htmlSize:r,...n}=e,i=qn("Input",n),o=Fm(ht(n)),a=v("chakra-input",e.className);return(0,xn.jsx)(bn.input,{size:r,...o,__css:i.field,ref:t,className:a})}));mg.displayName="Input",mg.id="Input";var gg=wn(((e,t)=>{const{className:r,...n}=e,i=v("chakra-modal__footer",r),o={display:"flex",alignItems:"center",justifyContent:"flex-end",...ao().footer};return(0,xn.jsx)(bn.footer,{ref:t,...n,__css:o,className:i})}));gg.displayName="ModalFooter";var vg=e=>"checkbox"===e.type,yg=e=>e instanceof Date,bg=e=>null==e;const wg=e=>"object"===typeof e;var xg=e=>!bg(e)&&!Array.isArray(e)&&wg(e)&&!yg(e),_g=e=>xg(e)&&e.target?vg(e.target)?e.target.checked:e.target.value:e,kg=(e,t)=>e.has((e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e)(t)),Sg=e=>{const t=e.constructor&&e.constructor.prototype;return xg(t)&&t.hasOwnProperty("isPrototypeOf")},Eg="undefined"!==typeof window&&"undefined"!==typeof window.HTMLElement&&"undefined"!==typeof document;function Ag(e){let t;const r=Array.isArray(e);if(e instanceof Date)t=new Date(e);else if(e instanceof Set)t=new Set(e);else{if(Eg&&(e instanceof Blob||e instanceof FileList)||!r&&!xg(e))return e;if(t=r?[]:{},r||Sg(e))for(const r in e)e.hasOwnProperty(r)&&(t[r]=Ag(e[r]));else t=e}return t}var Pg=e=>Array.isArray(e)?e.filter(Boolean):[],Og=e=>void 0===e,Tg=(e,t,r)=>{if(!t||!xg(e))return r;const n=Pg(t.split(/[,[\].]+?/)).reduce(((e,t)=>bg(e)?e:e[t]),e);return Og(n)||n===e?Og(e[t])?r:e[t]:n},Cg=e=>"boolean"===typeof e;const jg={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},Rg={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},Ig="max",Mg="min",Lg="maxLength",Ng="minLength",Dg="pattern",zg="required",Bg="validate",Fg=i.createContext(null),Ug=()=>i.useContext(Fg),$g=e=>{const{children:t,...r}=e;return i.createElement(Fg.Provider,{value:r},t)};var Hg=(e,t,r,n=!0)=>{const i={defaultValues:t._defaultValues};for(const o in e)Object.defineProperty(i,o,{get:()=>{const i=o;return t._proxyFormState[i]!==Rg.all&&(t._proxyFormState[i]=!n||Rg.all),r&&(r[i]=!0),e[i]}});return i},Vg=e=>xg(e)&&!Object.keys(e).length,qg=(e,t,r,n)=>{r(e);const{name:i,...o}=e;return Vg(o)||Object.keys(o).length>=Object.keys(t).length||Object.keys(o).find((e=>t[e]===(!n||Rg.all)))},Kg=e=>Array.isArray(e)?e:[e];function Wg(e){const t=i.useRef(e);t.current=e,i.useEffect((()=>{const r=!e.disabled&&t.current.subject&&t.current.subject.subscribe({next:t.current.next});return()=>{r&&r.unsubscribe()}}),[e.disabled])}var Gg=e=>"string"===typeof e,Zg=(e,t,r,n,i)=>Gg(e)?(n&&t.watch.add(e),Tg(r,e,i)):Array.isArray(e)?e.map((e=>(n&&t.watch.add(e),Tg(r,e)))):(n&&(t.watchAll=!0),r);var Yg=e=>/^\w*$/.test(e),Xg=e=>Pg(e.replace(/["|']|\]/g,"").split(/\.|\[/)),Jg=(e,t,r)=>{let n=-1;const i=Yg(t)?[t]:Xg(t),o=i.length,a=o-1;for(;++nt?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[n]:i||!0}}:{},ev=()=>{const e="undefined"===typeof performance?Date.now():1e3*performance.now();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{const r=(16*Math.random()+e)%16|0;return("x"==t?r:3&r|8).toString(16)}))},tv=(e,t,r={})=>r.shouldFocus||Og(r.shouldFocus)?r.focusName||`${e}.${Og(r.focusIndex)?t:r.focusIndex}.`:"",rv=e=>({isOnSubmit:!e||e===Rg.onSubmit,isOnBlur:e===Rg.onBlur,isOnChange:e===Rg.onChange,isOnAll:e===Rg.all,isOnTouch:e===Rg.onTouched}),nv=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some((t=>e.startsWith(t)&&/^\.\w+/.test(e.slice(t.length)))));const iv=(e,t,r,n)=>{for(const i of r||Object.keys(e)){const r=Tg(e,i);if(r){const{_f:e,...o}=r;if(e){if(e.refs&&e.refs[0]&&t(e.refs[0],i)&&!n)break;if(e.ref&&t(e.ref,e.name)&&!n)break;iv(o,t)}else xg(o)&&iv(o,t)}}};var ov=(e,t,r)=>{const n=Pg(Tg(e,r));return Jg(n,"root",t[r]),Jg(e,r,n),e},av=e=>"file"===e.type,sv=e=>"function"===typeof e,cv=e=>{if(!Eg)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},lv=e=>Gg(e),uv=e=>"radio"===e.type,dv=e=>e instanceof RegExp;const hv={value:!1,isValid:!1},fv={value:!0,isValid:!0};var pv=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter((e=>e&&e.checked&&!e.disabled)).map((e=>e.value));return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!Og(e[0].attributes.value)?Og(e[0].value)||""===e[0].value?fv:{value:e[0].value,isValid:!0}:fv:hv}return hv};const mv={isValid:!1,value:null};var gv=e=>Array.isArray(e)?e.reduce(((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e),mv):mv;function vv(e,t,r="validate"){if(lv(e)||Array.isArray(e)&&e.every(lv)||Cg(e)&&!e)return{type:r,message:lv(e)?e:"",ref:t}}var yv=e=>xg(e)&&!dv(e)?e:{value:e,message:""},bv=async(e,t,r,n,i)=>{const{ref:o,refs:a,required:s,maxLength:c,minLength:l,min:u,max:d,pattern:h,validate:f,name:p,valueAsNumber:m,mount:g,disabled:v}=e._f,y=Tg(t,p);if(!g||v)return{};const b=a?a[0]:o,w=e=>{n&&b.reportValidity&&(b.setCustomValidity(Cg(e)?"":e||""),b.reportValidity())},x={},_=uv(o),k=vg(o),S=_||k,E=(m||av(o))&&Og(o.value)&&Og(y)||cv(o)&&""===o.value||""===y||Array.isArray(y)&&!y.length,A=Qg.bind(null,p,r,x),P=(e,t,r,n=Lg,i=Ng)=>{const a=e?t:r;x[p]={type:e?n:i,message:a,ref:o,...A(e?n:i,a)}};if(i?!Array.isArray(y)||!y.length:s&&(!S&&(E||bg(y))||Cg(y)&&!y||k&&!pv(a).isValid||_&&!gv(a).isValid)){const{value:e,message:t}=lv(s)?{value:!!s,message:s}:yv(s);if(e&&(x[p]={type:zg,message:t,ref:b,...A(zg,t)},!r))return w(t),x}if(!E&&(!bg(u)||!bg(d))){let e,t;const n=yv(d),i=yv(u);if(bg(y)||isNaN(y)){const r=o.valueAsDate||new Date(y),a=e=>new Date((new Date).toDateString()+" "+e),s="time"==o.type,c="week"==o.type;Gg(n.value)&&y&&(e=s?a(y)>a(n.value):c?y>n.value:r>new Date(n.value)),Gg(i.value)&&y&&(t=s?a(y)n.value),bg(i.value)||(t=r+e.value,i=!bg(t.value)&&y.length<+t.value;if((n||i)&&(P(n,e.message,t.message),!r))return w(x[p].message),x}if(h&&!E&&Gg(y)){const{value:e,message:t}=yv(h);if(dv(e)&&!y.match(e)&&(x[p]={type:Dg,message:t,ref:o,...A(Dg,t)},!r))return w(t),x}if(f)if(sv(f)){const e=vv(await f(y,t),b);if(e&&(x[p]={...e,...A(Bg,e.message)},!r))return w(e.message),x}else if(xg(f)){let e={};for(const n in f){if(!Vg(e)&&!r)break;const i=vv(await f[n](y,t),b,n);i&&(e={...i,...A(n,i.message)},w(i.message),r&&(x[p]=e))}if(!Vg(e)&&(x[p]={ref:b,...e},!r))return x}return w(!0),x},wv=(e,t)=>[...e,...Kg(t)],xv=e=>Array.isArray(e)?e.map((()=>{})):void 0;function _v(e,t,r){return[...e.slice(0,t),...Kg(r),...e.slice(t)]}var kv=(e,t,r)=>Array.isArray(e)?(Og(e[r])&&(e[r]=void 0),e.splice(r,0,e.splice(t,1)[0]),e):[],Sv=(e,t)=>[...Kg(t),...Kg(e)];var Ev=(e,t)=>Og(t)?[]:function(e,t){let r=0;const n=[...e];for(const i of t)n.splice(i-r,1),r++;return Pg(n).length?n:[]}(e,Kg(t).sort(((e,t)=>e-t))),Av=(e,t,r)=>{[e[t],e[r]]=[e[r],e[t]]};function Pv(e,t){const r=Array.isArray(t)?t:Yg(t)?[t]:Xg(t),n=1===r.length?e:function(e,t){const r=t.slice(0,-1).length;let n=0;for(;n(e[t]=r,e);var Tv=()=>{let e=[];return{get observers(){return e},next:t=>{for(const r of e)r.next&&r.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter((e=>e!==t))}}),unsubscribe:()=>{e=[]}}},Cv=e=>bg(e)||!wg(e);function jv(e,t){if(Cv(e)||Cv(t))return e===t;if(yg(e)&&yg(t))return e.getTime()===t.getTime();const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(const i of r){const r=e[i];if(!n.includes(i))return!1;if("ref"!==i){const e=t[i];if(yg(r)&&yg(e)||xg(r)&&xg(e)||Array.isArray(r)&&Array.isArray(e)?!jv(r,e):r!==e)return!1}}return!0}var Rv=e=>"select-multiple"===e.type,Iv=e=>uv(e)||vg(e),Mv=e=>cv(e)&&e.isConnected,Lv=e=>xg(e)&&Object.values(e).some((e=>e)),Nv=e=>{for(const t in e)if(sv(e[t]))return!0;return!1};function Dv(e,t={}){const r=Array.isArray(e);if(xg(e)||r)for(const n in e)Array.isArray(e[n])||xg(e[n])&&!Nv(e[n])?(t[n]=Array.isArray(e[n])?[]:{},Dv(e[n],t[n])):bg(e[n])||(t[n]=!0);return t}function zv(e,t,r){const n=Array.isArray(e);if(xg(e)||n)for(const i in e)Array.isArray(e[i])||xg(e[i])&&!Nv(e[i])?Og(t)||Cv(r[i])?r[i]=Array.isArray(e[i])?Dv(e[i],[]):{...Dv(e[i])}:zv(e[i],bg(t)?{}:t[i],r[i]):r[i]=!jv(e[i],t[i]);return r}var Bv=(e,t)=>zv(e,t,Dv(t)),Fv=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:n})=>Og(e)?e:t?""===e?NaN:e?+e:e:r&&Gg(e)?new Date(e):n?n(e):e;function Uv(e){const t=e.ref;if(!(e.refs?e.refs.every((e=>e.disabled)):t.disabled))return av(t)?t.files:uv(t)?gv(e.refs).value:Rv(t)?[...t.selectedOptions].map((({value:e})=>e)):vg(t)?pv(e.refs).value:Fv(Og(t.value)?e.ref.value:t.value,e)}var $v=(e,t,r,n)=>{const i={};for(const o of e){const e=Tg(t,o);e&&Jg(i,o,e._f)}return{criteriaMode:r,names:[...e],fields:i,shouldUseNativeValidation:n}},Hv=e=>Og(e)?e:dv(e)?e.source:xg(e)?dv(e.value)?e.value.source:e.value:e,Vv=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function qv(e,t,r){const n=Tg(e,r);if(n||Yg(r))return{error:n,name:r};const i=r.split(".");for(;i.length;){const n=i.join("."),o=Tg(t,n),a=Tg(e,n);if(o&&!Array.isArray(o)&&r!==n)return{name:r};if(a&&a.type)return{name:n,error:a};i.pop()}return{name:r}}var Kv=(e,t,r,n,i)=>!i.isOnAll&&(!r&&i.isOnTouch?!(t||e):(r?n.isOnBlur:i.isOnBlur)?!e:!(r?n.isOnChange:i.isOnChange)||e),Wv=(e,t)=>!Pg(Tg(e,t)).length&&Pv(e,t);const Gv={mode:Rg.onSubmit,reValidateMode:Rg.onChange,shouldFocusError:!0};function Zv(e={}){let t,r={...Gv,...e},n={submitCount:0,isDirty:!1,isLoading:sv(r.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:r.errors||{},disabled:r.disabled||!1},i={},o=(xg(r.defaultValues)||xg(r.values))&&Ag(r.defaultValues||r.values)||{},a=r.shouldUnregister?{}:Ag(o),s={action:!1,mount:!1,watch:!1},c={mount:new Set,unMount:new Set,array:new Set,watch:new Set},l=0;const u={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},d={values:Tv(),array:Tv(),state:Tv()},h=rv(r.mode),f=rv(r.reValidateMode),p=r.criteriaMode===Rg.all,m=async e=>{if(u.isValid||e){const e=r.resolver?Vg((await w()).errors):await x(i,!0);e!==n.isValid&&d.state.next({isValid:e})}},g=(e,t)=>{(u.isValidating||u.validatingFields)&&(t.forEach((t=>{Jg(n.validatingFields,t,e)})),n.isValidating=Lv(n.validatingFields),d.state.next({validatingFields:n.validatingFields,isValidating:n.isValidating}))},v=(e,t,r,n)=>{const c=Tg(i,e);if(c){const i=Tg(a,e,Og(r)?Tg(o,e):r);Og(i)||n&&n.defaultChecked||t?Jg(a,e,t?i:Uv(c._f)):S(e,i),s.mount&&m()}},y=(e,t,r,a,s)=>{let c=!1,l=!1;const h={name:e},f=!(!Tg(i,e)||!Tg(i,e)._f.disabled);if(!r||a){u.isDirty&&(l=n.isDirty,n.isDirty=h.isDirty=_(),c=l!==h.isDirty);const r=f||jv(Tg(o,e),t);l=!(f||!Tg(n.dirtyFields,e)),r||f?Pv(n.dirtyFields,e):Jg(n.dirtyFields,e,!0),h.dirtyFields=n.dirtyFields,c=c||u.dirtyFields&&l!==!r}if(r){const t=Tg(n.touchedFields,e);t||(Jg(n.touchedFields,e,r),h.touchedFields=n.touchedFields,c=c||u.touchedFields&&t!==r)}return c&&s&&d.state.next(h),c?h:{}},b=(r,i,o,a)=>{const s=Tg(n.errors,r),c=u.isValid&&Cg(i)&&n.isValid!==i;var h;if(e.delayError&&o?(h=()=>((e,t)=>{Jg(n.errors,e,t),d.state.next({errors:n.errors})})(r,o),t=e=>{clearTimeout(l),l=setTimeout(h,e)},t(e.delayError)):(clearTimeout(l),t=null,o?Jg(n.errors,r,o):Pv(n.errors,r)),(o?!jv(s,o):s)||!Vg(a)||c){const e={...a,...c&&Cg(i)?{isValid:i}:{},errors:n.errors,name:r};n={...n,...e},d.state.next(e)}g(!1,Object.keys(n.validatingFields).filter((e=>e===r)))},w=async e=>r.resolver(a,r.context,$v(e||c.mount,i,r.criteriaMode,r.shouldUseNativeValidation)),x=async(e,t,i={valid:!0})=>{for(const o in e){const s=e[o];if(s){const{_f:e,...o}=s;if(e){const o=c.array.has(e.name),l=await bv(s,a,p,r.shouldUseNativeValidation&&!t,o);if(l[e.name]&&(i.valid=!1,t))break;!t&&(Tg(l,e.name)?o?ov(n.errors,l,e.name):Jg(n.errors,e.name,l[e.name]):Pv(n.errors,e.name))}o&&await x(o,t,i)}}return i.valid},_=(e,t)=>(e&&t&&Jg(a,e,t),!jv(C(),o)),k=(e,t,r)=>Zg(e,c,{...s.mount?a:Og(t)?o:Gg(e)?{[e]:t}:t},r,t),S=(e,t,r={})=>{const n=Tg(i,e);let o=t;if(n){const r=n._f;r&&(!r.disabled&&Jg(a,e,Fv(t,r)),o=cv(r.ref)&&bg(t)?"":t,Rv(r.ref)?[...r.ref.options].forEach((e=>e.selected=o.includes(e.value))):r.refs?vg(r.ref)?r.refs.length>1?r.refs.forEach((e=>(!e.defaultChecked||!e.disabled)&&(e.checked=Array.isArray(o)?!!o.find((t=>t===e.value)):o===e.value))):r.refs[0]&&(r.refs[0].checked=!!o):r.refs.forEach((e=>e.checked=e.value===o)):av(r.ref)?r.ref.value="":(r.ref.value=o,r.ref.type||d.values.next({name:e,values:{...a}})))}(r.shouldDirty||r.shouldTouch)&&y(e,o,r.shouldTouch,r.shouldDirty,!0),r.shouldValidate&&T(e)},E=(e,t,r)=>{for(const n in t){const o=t[n],a=`${e}.${n}`,s=Tg(i,a);!c.array.has(e)&&Cv(o)&&(!s||s._f)||yg(o)?S(a,o,r):E(a,o,r)}},A=(e,t,r={})=>{const l=Tg(i,e),h=c.array.has(e),f=Ag(t);Jg(a,e,f),h?(d.array.next({name:e,values:{...a}}),(u.isDirty||u.dirtyFields)&&r.shouldDirty&&d.state.next({name:e,dirtyFields:Bv(o,a),isDirty:_(e,f)})):!l||l._f||bg(f)?S(e,f,r):E(e,f,r),nv(e,c)&&d.state.next({...n}),d.values.next({name:s.mount?e:void 0,values:{...a}})},P=async e=>{const o=e.target;let s=o.name,l=!0;const v=Tg(i,s),_=e=>{l=Number.isNaN(e)||e===Tg(a,s,e)};if(v){let k,S;const E=o.type?Uv(v._f):_g(e),A=e.type===jg.BLUR||e.type===jg.FOCUS_OUT,P=!Vv(v._f)&&!r.resolver&&!Tg(n.errors,s)&&!v._f.deps||Kv(A,Tg(n.touchedFields,s),n.isSubmitted,f,h),O=nv(s,c,A);Jg(a,s,E),A?(v._f.onBlur&&v._f.onBlur(e),t&&t(0)):v._f.onChange&&v._f.onChange(e);const C=y(s,E,A,!1),j=!Vg(C)||O;if(!A&&d.values.next({name:s,type:e.type,values:{...a}}),P)return u.isValid&&m(),j&&d.state.next({name:s,...O?{}:C});if(!A&&O&&d.state.next({...n}),g(!0,[s]),r.resolver){const{errors:e}=await w([s]);if(_(E),l){const t=qv(n.errors,i,s),r=qv(e,i,t.name||s);k=r.error,s=r.name,S=Vg(e)}}else k=(await bv(v,a,p,r.shouldUseNativeValidation))[s],_(E),l&&(k?S=!1:u.isValid&&(S=await x(i,!0)));l&&(v._f.deps&&T(v._f.deps),b(s,S,k,C))}},O=(e,t)=>{if(Tg(n.errors,t)&&e.focus)return e.focus(),1},T=async(e,t={})=>{let o,a;const s=Kg(e);if(g(!0,s),r.resolver){const t=await(async e=>{const{errors:t}=await w(e);if(e)for(const r of e){const e=Tg(t,r);e?Jg(n.errors,r,e):Pv(n.errors,r)}else n.errors=t;return t})(Og(e)?e:s);o=Vg(t),a=e?!s.some((e=>Tg(t,e))):o}else e?(a=(await Promise.all(s.map((async e=>{const t=Tg(i,e);return await x(t&&t._f?{[e]:t}:t)})))).every(Boolean),(a||n.isValid)&&m()):a=o=await x(i);return d.state.next({...!Gg(e)||u.isValid&&o!==n.isValid?{}:{name:e},...r.resolver||!e?{isValid:o}:{},errors:n.errors,isValidating:!1}),t.shouldFocus&&!a&&iv(i,O,e?s:c.mount),a},C=e=>{const t={...o,...s.mount?a:{}};return Og(e)?t:Gg(e)?Tg(t,e):e.map((e=>Tg(t,e)))},j=(e,t)=>({invalid:!!Tg((t||n).errors,e),isDirty:!!Tg((t||n).dirtyFields,e),isTouched:!!Tg((t||n).touchedFields,e),isValidating:!!Tg((t||n).validatingFields,e),error:Tg((t||n).errors,e)}),R=(e,t,r)=>{const o=(Tg(i,e,{_f:{}})._f||{}).ref;Jg(n.errors,e,{...t,ref:o}),d.state.next({name:e,errors:n.errors,isValid:!1}),r&&r.shouldFocus&&o&&o.focus&&o.focus()},I=(e,t={})=>{for(const s of e?Kg(e):c.mount)c.mount.delete(s),c.array.delete(s),t.keepValue||(Pv(i,s),Pv(a,s)),!t.keepError&&Pv(n.errors,s),!t.keepDirty&&Pv(n.dirtyFields,s),!t.keepTouched&&Pv(n.touchedFields,s),!t.keepIsValidating&&Pv(n.validatingFields,s),!r.shouldUnregister&&!t.keepDefaultValue&&Pv(o,s);d.values.next({values:{...a}}),d.state.next({...n,...t.keepDirty?{isDirty:_()}:{}}),!t.keepIsValid&&m()},M=({disabled:e,name:t,field:r,fields:n,value:i})=>{if(Cg(e)){const o=e?void 0:Og(i)?Uv(r?r._f:Tg(n,t)._f):i;Jg(a,t,o),y(t,o,!1,!1,!0)}},L=(e,t={})=>{let n=Tg(i,e);const a=Cg(t.disabled);return Jg(i,e,{...n||{},_f:{...n&&n._f?n._f:{ref:{name:e}},name:e,mount:!0,...t}}),c.mount.add(e),n?M({field:n,disabled:t.disabled,name:e,value:t.value}):v(e,!0,t.value),{...a?{disabled:t.disabled}:{},...r.progressive?{required:!!t.required,min:Hv(t.min),max:Hv(t.max),minLength:Hv(t.minLength),maxLength:Hv(t.maxLength),pattern:Hv(t.pattern)}:{},name:e,onChange:P,onBlur:P,ref:a=>{if(a){L(e,t),n=Tg(i,e);const r=Og(a.value)&&a.querySelectorAll&&a.querySelectorAll("input,select,textarea")[0]||a,s=Iv(r),c=n._f.refs||[];if(s?c.find((e=>e===r)):r===n._f.ref)return;Jg(i,e,{_f:{...n._f,...s?{refs:[...c.filter(Mv),r,...Array.isArray(Tg(o,e))?[{}]:[]],ref:{type:r.type,name:e}}:{ref:r}}}),v(e,!1,void 0,r)}else n=Tg(i,e,{}),n._f&&(n._f.mount=!1),(r.shouldUnregister||t.shouldUnregister)&&(!kg(c.array,e)||!s.action)&&c.unMount.add(e)}}},N=()=>r.shouldFocusError&&iv(i,O,c.mount),D=(e,t)=>async o=>{let s;o&&(o.preventDefault&&o.preventDefault(),o.persist&&o.persist());let c=Ag(a);if(d.state.next({isSubmitting:!0}),r.resolver){const{errors:e,values:t}=await w();n.errors=e,c=t}else await x(i);if(Pv(n.errors,"root"),Vg(n.errors)){d.state.next({errors:{}});try{await e(c,o)}catch(l){s=l}}else t&&await t({...n.errors},o),N(),setTimeout(N);if(d.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:Vg(n.errors)&&!s,submitCount:n.submitCount+1,errors:n.errors}),s)throw s},z=(t,r={})=>{const l=t?Ag(t):o,h=Ag(l),f=Vg(t),p=f?o:h;if(r.keepDefaultValues||(o=l),!r.keepValues){if(r.keepDirtyValues)for(const e of c.mount)Tg(n.dirtyFields,e)?Jg(p,e,Tg(a,e)):A(e,Tg(p,e));else{if(Eg&&Og(t))for(const e of c.mount){const t=Tg(i,e);if(t&&t._f){const e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(cv(e)){const t=e.closest("form");if(t){t.reset();break}}}}i={}}a=e.shouldUnregister?r.keepDefaultValues?Ag(o):{}:Ag(p),d.array.next({values:{...p}}),d.values.next({values:{...p}})}c={mount:r.keepDirtyValues?c.mount:new Set,unMount:new Set,array:new Set,watch:new Set,watchAll:!1,focus:""},s.mount=!u.isValid||!!r.keepIsValid||!!r.keepDirtyValues,s.watch=!!e.shouldUnregister,d.state.next({submitCount:r.keepSubmitCount?n.submitCount:0,isDirty:!f&&(r.keepDirty?n.isDirty:!(!r.keepDefaultValues||jv(t,o))),isSubmitted:!!r.keepIsSubmitted&&n.isSubmitted,dirtyFields:f?[]:r.keepDirtyValues?r.keepDefaultValues&&a?Bv(o,a):n.dirtyFields:r.keepDefaultValues&&t?Bv(o,t):{},touchedFields:r.keepTouched?n.touchedFields:{},errors:r.keepErrors?n.errors:{},isSubmitSuccessful:!!r.keepIsSubmitSuccessful&&n.isSubmitSuccessful,isSubmitting:!1})},B=(e,t)=>z(sv(e)?e(a):e,t);return{control:{register:L,unregister:I,getFieldState:j,handleSubmit:D,setError:R,_executeSchema:w,_getWatch:k,_getDirty:_,_updateValid:m,_removeUnmounted:()=>{for(const e of c.unMount){const t=Tg(i,e);t&&(t._f.refs?t._f.refs.every((e=>!Mv(e))):!Mv(t._f.ref))&&I(e)}c.unMount=new Set},_updateFieldArray:(e,t=[],r,c,l=!0,h=!0)=>{if(c&&r){if(s.action=!0,h&&Array.isArray(Tg(i,e))){const t=r(Tg(i,e),c.argA,c.argB);l&&Jg(i,e,t)}if(h&&Array.isArray(Tg(n.errors,e))){const t=r(Tg(n.errors,e),c.argA,c.argB);l&&Jg(n.errors,e,t),Wv(n.errors,e)}if(u.touchedFields&&h&&Array.isArray(Tg(n.touchedFields,e))){const t=r(Tg(n.touchedFields,e),c.argA,c.argB);l&&Jg(n.touchedFields,e,t)}u.dirtyFields&&(n.dirtyFields=Bv(o,a)),d.state.next({name:e,isDirty:_(e,t),dirtyFields:n.dirtyFields,errors:n.errors,isValid:n.isValid})}else Jg(a,e,t)},_updateDisabledField:M,_getFieldArray:t=>Pg(Tg(s.mount?a:o,t,e.shouldUnregister?Tg(o,t,[]):[])),_reset:z,_resetDefaultValues:()=>sv(r.defaultValues)&&r.defaultValues().then((e=>{B(e,r.resetOptions),d.state.next({isLoading:!1})})),_updateFormState:e=>{n={...n,...e}},_disableForm:e=>{Cg(e)&&(d.state.next({disabled:e}),iv(i,((t,r)=>{let n=e;const o=Tg(i,r);o&&Cg(o._f.disabled)&&(n||(n=o._f.disabled)),t.disabled=n}),0,!1))},_subjects:d,_proxyFormState:u,_setErrors:e=>{n.errors=e,d.state.next({errors:n.errors,isValid:!1})},get _fields(){return i},get _formValues(){return a},get _state(){return s},set _state(e){s=e},get _defaultValues(){return o},get _names(){return c},set _names(e){c=e},get _formState(){return n},set _formState(e){n=e},get _options(){return r},set _options(e){r={...r,...e}}},trigger:T,register:L,handleSubmit:D,watch:(e,t)=>sv(e)?d.values.subscribe({next:r=>e(k(void 0,t),r)}):k(e,t,!0),setValue:A,getValues:C,reset:B,resetField:(e,t={})=>{Tg(i,e)&&(Og(t.defaultValue)?A(e,Ag(Tg(o,e))):(A(e,t.defaultValue),Jg(o,e,Ag(t.defaultValue))),t.keepTouched||Pv(n.touchedFields,e),t.keepDirty||(Pv(n.dirtyFields,e),n.isDirty=t.defaultValue?_(e,Ag(Tg(o,e))):_()),t.keepError||(Pv(n.errors,e),u.isValid&&m()),d.state.next({...n}))},clearErrors:e=>{e&&Kg(e).forEach((e=>Pv(n.errors,e))),d.state.next({errors:e?n.errors:{}})},unregister:I,setError:R,setFocus:(e,t={})=>{const r=Tg(i,e),n=r&&r._f;if(n){const e=n.refs?n.refs[0]:n.ref;e.focus&&(e.focus(),t.shouldSelect&&e.select())}},getFieldState:j}}function Yv(e={}){const t=i.useRef(),r=i.useRef(),[n,o]=i.useState({isDirty:!1,isValidating:!1,isLoading:sv(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,defaultValues:sv(e.defaultValues)?void 0:e.defaultValues});t.current||(t.current={...Zv(e),formState:n});const a=t.current.control;return a._options=e,Wg({subject:a._subjects.state,next:e=>{qg(e,a._proxyFormState,a._updateFormState,!0)&&o({...a._formState})}}),i.useEffect((()=>a._disableForm(e.disabled)),[a,e.disabled]),i.useEffect((()=>{if(a._proxyFormState.isDirty){const e=a._getDirty();e!==n.isDirty&&a._subjects.state.next({isDirty:e})}}),[a,n.isDirty]),i.useEffect((()=>{e.values&&!jv(e.values,r.current)?(a._reset(e.values,a._options.resetOptions),r.current=e.values,o((e=>({...e})))):a._resetDefaultValues()}),[e.values,a]),i.useEffect((()=>{e.errors&&a._setErrors(e.errors)}),[e.errors,a]),i.useEffect((()=>{a._state.mount||(a._updateValid(),a._state.mount=!0),a._state.watch&&(a._state.watch=!1,a._subjects.state.next({...a._formState})),a._removeUnmounted()})),i.useEffect((()=>{e.shouldUnregister&&a._subjects.values.next({values:a._getWatch()})}),[e.shouldUnregister,a]),t.current.formState=Hg(n,a),t.current}const Xv={orange:"#FB4F57",orangeL:"#FC7884",blue:"#0D99FF",blueL:"#4FA2FF",green:"#00C39A",greenL:"#00E7B6",black:"#000000",white:"#FFFFFF",gray:{900:"#121212",800:"#181818",700:"#282828",600:"#2C2B2B",500:"#414141",450:"#707070",400:"#C2C2C2",300:"#D6D6D6",200:"#EBEBEB",100:"#F0F0F0",50:"#F5F5F5"}},Jv=e=>(0,xn.jsxs)(wm,{width:"24px",height:"24px",fill:"none",textAlign:"center",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,xn.jsx)("path",{d:"M14 5.6C14 5.03995 14 4.75992 14.109 4.54601C14.2049 4.35785 14.3578 4.20487 14.546 4.10899C14.7599 4 15.0399 4 15.6 4H18.4C18.9601 4 19.2401 4 19.454 4.10899C19.6422 4.20487 19.7951 4.35785 19.891 4.54601C20 4.75992 20 5.03995 20 5.6V8.4C20 8.96005 20 9.24008 19.891 9.45399C19.7951 9.64215 19.6422 9.79513 19.454 9.89101C19.2401 10 18.9601 10 18.4 10H15.6C15.0399 10 14.7599 10 14.546 9.89101C14.3578 9.79513 14.2049 9.64215 14.109 9.45399C14 9.24008 14 8.96005 14 8.4V5.6Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,xn.jsx)("path",{d:"M4 5.6C4 5.03995 4 4.75992 4.10899 4.54601C4.20487 4.35785 4.35785 4.20487 4.54601 4.10899C4.75992 4 5.03995 4 5.6 4H8.4C8.96005 4 9.24008 4 9.45399 4.10899C9.64215 4.20487 9.79513 4.35785 9.89101 4.54601C10 4.75992 10 5.03995 10 5.6V8.4C10 8.96005 10 9.24008 9.89101 9.45399C9.79513 9.64215 9.64215 9.79513 9.45399 9.89101C9.24008 10 8.96005 10 8.4 10H5.6C5.03995 10 4.75992 10 4.54601 9.89101C4.35785 9.79513 4.20487 9.64215 4.10899 9.45399C4 9.24008 4 8.96005 4 8.4V5.6Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,xn.jsx)("path",{d:"M4 15.6C4 15.0399 4 14.7599 4.10899 14.546C4.20487 14.3578 4.35785 14.2049 4.54601 14.109C4.75992 14 5.03995 14 5.6 14H8.4C8.96005 14 9.24008 14 9.45399 14.109C9.64215 14.2049 9.79513 14.3578 9.89101 14.546C10 14.7599 10 15.0399 10 15.6V18.4C10 18.9601 10 19.2401 9.89101 19.454C9.79513 19.6422 9.64215 19.7951 9.45399 19.891C9.24008 20 8.96005 20 8.4 20H5.6C5.03995 20 4.75992 20 4.54601 19.891C4.35785 19.7951 4.20487 19.6422 4.10899 19.454C4 19.2401 4 18.9601 4 18.4V15.6Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,xn.jsx)("path",{d:"M14 15.6C14 15.0399 14 14.7599 14.109 14.546C14.2049 14.3578 14.3578 14.2049 14.546 14.109C14.7599 14 15.0399 14 15.6 14H18.4C18.9601 14 19.2401 14 19.454 14.109C19.6422 14.2049 19.7951 14.3578 19.891 14.546C20 14.7599 20 15.0399 20 15.6V18.4C20 18.9601 20 19.2401 19.891 19.454C19.7951 19.6422 19.6422 19.7951 19.454 19.891C19.2401 20 18.9601 20 18.4 20H15.6C15.0399 20 14.7599 20 14.546 19.891C14.3578 19.7951 14.2049 19.6422 14.109 19.454C14 19.2401 14 18.9601 14 18.4V15.6Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),Qv=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M8.25 13.5H4.65C3.80992 13.5 3.38988 13.5 3.06901 13.3365C2.78677 13.1927 2.5573 12.9632 2.41349 12.681C2.25 12.3601 2.25 11.9401 2.25 11.1V5.4C2.25 4.55992 2.25 4.13988 2.41349 3.81901C2.5573 3.53677 2.78677 3.3073 3.06901 3.16349C3.38988 3 3.80992 3 4.65 3H13.35C14.1901 3 14.6101 3 14.931 3.16349C15.2132 3.3073 15.4427 3.53677 15.5865 3.81901C15.75 4.13988 15.75 4.55992 15.75 5.4V8.25M2.25 6H15.75M13.5 15V10.5M15.75 12.7506L11.25 12.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ey=e=>(0,xn.jsx)(wm,{fill:"none",viewBox:"0 0 13 17",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M13 12.5L10.75 12.5M10.75 12.5L8.5 12.5M10.75 12.5V10.25M10.75 12.5V14.75M6.25 14.75H1C1 11.8505 3.35051 9.5 6.25 9.5C6.77123 9.5 7.27472 9.57596 7.75 9.71741M9.25 4.25C9.25 5.90685 7.90685 7.25 6.25 7.25C4.59315 7.25 3.25 5.90685 3.25 4.25C3.25 2.59315 4.59315 1.25 6.25 1.25C7.90685 1.25 9.25 2.59315 9.25 4.25Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ty=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M13.5 15.5C13.2164 14.3589 11.981 13.5 10.5 13.5C9.019 13.5 7.78364 14.3589 7.5 15.5M21 5V7M21 11V13M21 17V19M6.2 21H14.8C15.9201 21 16.4802 21 16.908 20.782C17.2843 20.5903 17.5903 20.2843 17.782 19.908C18 19.4802 18 18.9201 18 17.8V6.2C18 5.0799 18 4.51984 17.782 4.09202C17.5903 3.71569 17.2843 3.40973 16.908 3.21799C16.4802 3 15.9201 3 14.8 3H6.2C5.0799 3 4.51984 3 4.09202 3.21799C3.71569 3.40973 3.40973 3.71569 3.21799 4.09202C3 4.51984 3 5.07989 3 6.2V17.8C3 18.9201 3 19.4802 3.21799 19.908C3.40973 20.2843 3.71569 20.5903 4.09202 20.782C4.51984 21 5.07989 21 6.2 21ZM11.5 9.5C11.5 10.0523 11.0523 10.5 10.5 10.5C9.94772 10.5 9.5 10.0523 9.5 9.5C9.5 8.94772 9.94772 8.5 10.5 8.5C11.0523 8.5 11.5 8.94772 11.5 9.5Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ry=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],"data-testid":"baker-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3.74946 5.25V8.25M7.49946 1.5V4.5M13.4995 12V15M2.24946 6.75H5.24946M5.99946 3H8.99946M11.9995 13.5H14.9995M10.4995 5.25L12.6208 7.37132M14.6369 2.80959L15.0612 3.23385C15.3582 3.53086 15.5067 3.67937 15.5624 3.85062C15.6113 4.00125 15.6113 4.16351 15.5624 4.31414C15.5067 4.48539 15.3582 4.6339 15.0612 4.93091L4.89356 15.0985C4.59655 15.3955 4.44804 15.5441 4.2768 15.5997C4.12617 15.6486 3.9639 15.6486 3.81327 15.5997C3.64203 15.5441 3.49352 15.3955 3.19651 15.0985L2.77224 14.6743C2.47523 14.3773 2.32672 14.2288 2.27108 14.0575C2.22214 13.9069 2.22214 13.7446 2.27108 13.594C2.32672 13.4227 2.47523 13.2742 2.77224 12.9772L12.9399 2.80959C13.2369 2.51258 13.3854 2.36407 13.5566 2.30843C13.7073 2.25948 13.8695 2.25948 14.0202 2.30843C14.1914 2.36407 14.3399 2.51258 14.6369 2.80959Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ny=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",strokeWidth:"1.2",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M10 4V20M14 4V20M4 8C4 8.92997 4 9.39496 4.10222 9.77646C4.37962 10.8117 5.18827 11.6204 6.22354 11.8978C6.60504 12 7.07003 12 8 12H16C16.93 12 17.395 12 17.7765 11.8978C18.8117 11.6204 19.6204 10.8117 19.8978 9.77646C20 9.39496 20 8.92997 20 8M4 8C4 7.07003 4 6.60504 4.10222 6.22354C4.37962 5.18827 5.18827 4.37962 6.22354 4.10222C6.60504 4 7.07003 4 8 4H16C16.93 4 17.395 4 17.7765 4.10222C18.8117 4.37962 19.6204 5.18827 19.8978 6.22354C20 6.60504 20 7.07003 20 8M4 8V16C4 16.93 4 17.395 4.10222 17.7765C4.37962 18.8117 5.18827 19.6204 6.22354 19.8978C6.60504 20 7.07003 20 8 20H16C16.93 20 17.395 20 17.7765 19.8978C18.8117 19.6204 19.6204 18.8117 19.8978 17.7765C20 17.395 20 16.93 20 16V8M10 16H8C7.07003 16 6.60504 16 6.22354 15.8978C5.18827 15.6204 4.37962 14.8117 4.10222 13.7765C4 13.395 4 12.93 4 12M14 16H16C16.93 16 17.395 16 17.7765 15.8978C18.8117 15.6204 19.6204 14.8117 19.8978 13.7765C20 13.395 20 12.93 20 12M7 8H7.01M17 8H17.01",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round"})}),iy=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],textAlign:"center",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4 6H20M4 12H20M4 18H20",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),oy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M6 9.25L7.84615 11.25L12 6.75M15.75 9C15.75 12.7279 12.7279 15.75 9 15.75C5.27208 15.75 2.25 12.7279 2.25 9C2.25 5.27208 5.27208 2.25 9 2.25C12.7279 2.25 15.75 5.27208 15.75 9Z",stroke:"#00C39A",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ay=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4.5 6.75L9 11.25L13.5 6.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),sy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M7 14L11.5 9.5L7 5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),cy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4.5 11.25L9 6.75L13.5 11.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ly=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M12 10V14M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12ZM17 12C17 14.7614 14.7614 17 12 17C9.23858 17 7 14.7614 7 12C7 9.23858 9.23858 7 12 7C14.7614 7 17 9.23858 17 12Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),uy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none","data-testid":"contact-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3.75 15.75C3.75 12.8505 6.10051 10.5 9 10.5C11.8995 10.5 14.25 12.8505 14.25 15.75M12 5.25C12 6.90685 10.6569 8.25 9 8.25C7.34315 8.25 6 6.90685 6 5.25C6 3.59315 7.34315 2.25 9 2.25C10.6569 2.25 12 3.59315 12 5.25Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),dy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M7.5 12.75L6 11.25L7.5 9.75M10.5 9.75L12 11.25L10.5 12.75M9.75 2.25H6.15C5.30992 2.25 4.88988 2.25 4.56901 2.41349C4.28677 2.5573 4.0573 2.78677 3.91349 3.06901C3.75 3.38988 3.75 3.80992 3.75 4.65V13.35C3.75 14.1901 3.75 14.6101 3.91349 14.931C4.0573 15.2132 4.28677 15.4427 4.56901 15.5865C4.88988 15.75 5.30992 15.75 6.15 15.75H11.85C12.6901 15.75 13.1101 15.75 13.431 15.5865C13.7132 15.4427 13.9427 15.2132 14.0865 14.931C14.25 14.6101 14.25 14.1901 14.25 13.35V6.75M9.75 2.25L14.25 6.75M9.75 2.25V6C9.75 6.41421 10.0858 6.75 10.5 6.75H14.25",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),hy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M13.773 13.773C14.9945 12.5515 15.75 10.864 15.75 9C15.75 5.27208 12.7279 2.25 9 2.25C7.13604 2.25 5.44854 3.00552 4.22703 4.22703M13.773 13.773C12.5515 14.9945 10.864 15.75 9 15.75C5.27208 15.75 2.25 12.7279 2.25 9C2.25 7.13604 3.00552 5.44854 4.22703 4.22703M13.773 13.773L4.22703 4.22703",stroke:"#FB4F57",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),fy=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3.125 9H20.875M12 3L8 9L12 20.6667L16 9L12 3ZM12.64 20.1467L20.64 9.48C20.7691 9.30787 20.8336 9.22181 20.8585 9.12728C20.8805 9.04385 20.8805 8.95615 20.8585 8.87272C20.8336 8.77819 20.7691 8.69213 20.64 8.52L16.74 3.32C16.652 3.20267 16.608 3.144 16.5522 3.10169C16.5028 3.06421 16.4469 3.03625 16.3873 3.01922C16.32 3 16.2467 3 16.1 3H7.9C7.75333 3 7.68 3 7.61269 3.01922C7.55308 3.03625 7.49715 3.06421 7.44776 3.10169C7.392 3.144 7.348 3.20267 7.26 3.32L3.36 8.52C3.2309 8.69213 3.16635 8.77819 3.14147 8.87271C3.11951 8.95615 3.11951 9.04385 3.14147 9.12728C3.16635 9.2218 3.2309 9.30787 3.36 9.48L11.36 20.1467C11.5771 20.4362 11.6857 20.5809 11.8188 20.6327C11.9353 20.678 12.0647 20.678 12.1812 20.6327C12.3143 20.5809 12.4229 20.4362 12.64 20.1467Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),py=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M9 17H13M9 13H13M9 9H10M17 18V21M17 15H17.01M13 3H8.2C7.0799 3 6.51984 3 6.09202 3.21799C5.71569 3.40973 5.40973 3.71569 5.21799 4.09202C5 4.51984 5 5.0799 5 6.2V17.8C5 18.9201 5 19.4802 5.21799 19.908C5.40973 20.2843 5.71569 20.5903 6.09202 20.782C6.51984 21 7.0799 21 8.2 21H13M13 3L19 9M13 3V7.4C13 7.96005 13 8.24008 13.109 8.45399C13.2049 8.64215 13.3578 8.79513 13.546 8.89101C13.7599 9 14.0399 9 14.6 9H19M19 9V11.5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),my=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4 14L9 19L20 8M6 8.88889L9.07692 12L16 5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),gy=e=>(0,xn.jsx)(wm,{width:"16px",height:"16px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M5 7.25L8 10.25M8 10.25L11 7.25M8 10.25V1.25M14.75 7.25V12.3494C14.75 13.1895 14.75 13.6095 14.5865 13.9304C14.4427 14.2126 14.2132 14.4421 13.931 14.5859C13.6101 14.7494 13.1901 14.7494 12.35 14.7494H3.65C2.80992 14.7494 2.38988 14.7494 2.06901 14.5859C1.78677 14.4421 1.5573 14.2126 1.41349 13.9304C1.25 13.6095 1.25 13.1895 1.25 12.3494V7.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),vy=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M8.5 21H4C4 17.134 7.13401 14 11 14C11.1681 14 11.3348 14.0059 11.5 14.0176M15 7C15 9.20914 13.2091 11 11 11C8.79086 11 7 9.20914 7 7C7 4.79086 8.79086 3 11 3C13.2091 3 15 4.79086 15 7ZM12.5898 21L14.6148 20.595C14.7914 20.5597 14.8797 20.542 14.962 20.5097C15.0351 20.4811 15.1045 20.4439 15.1689 20.399C15.2414 20.3484 15.3051 20.2848 15.4324 20.1574L19.5898 16C20.1421 15.4477 20.1421 14.5523 19.5898 14C19.0376 13.4477 18.1421 13.4477 17.5898 14L13.4324 18.1574C13.3051 18.2848 13.2414 18.3484 13.1908 18.421C13.1459 18.4853 13.1088 18.5548 13.0801 18.6279C13.0478 18.7102 13.0302 18.7985 12.9948 18.975L12.5898 21Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),yy=e=>(0,xn.jsx)(wm,{width:"12px",height:"12px",fill:"none",stroke:Xv.orange,viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M6 3.66667V6.58333M6 8.33333H6.00583M11.25 6C11.25 8.89949 8.89949 11.25 6 11.25C3.1005 11.25 0.75 8.89949 0.75 6C0.75 3.1005 3.1005 0.75 6 0.75C8.89949 0.75 11.25 3.1005 11.25 6Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),by=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M15 3V15M3 9H12M12 9L9 6M12 9L9 12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),wy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M15 3L9 9M15 3V6.375M15 3H11.625M14.25 9.375V12.6C14.25 13.4401 14.25 13.8601 14.0865 14.181C13.9427 14.4632 13.7132 14.6927 13.431 14.8365C13.1101 15 12.6901 15 11.85 15H5.4C4.55992 15 4.13988 15 3.81901 14.8365C3.53677 14.6927 3.3073 14.4632 3.16349 14.181C3 13.8601 3 13.4401 3 12.6V6.15C3 5.30992 3 4.88988 3.16349 4.56901C3.3073 4.28677 3.53677 4.0573 3.81901 3.91349C4.13988 3.75 4.55992 3.75 5.4 3.75H8.625",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),xy=e=>(0,xn.jsxs)(wm,{width:"16px",height:"12px",fill:"none",viewBox:"0 0 16 12",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,xn.jsx)("path",{d:"M10.2501 6C10.2501 7.24264 9.2427 8.25 8.00006 8.25C6.75742 8.25 5.75006 7.24264 5.75006 6C5.75006 4.75736 6.75742 3.75 8.00006 3.75C9.2427 3.75 10.2501 4.75736 10.2501 6Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,xn.jsx)("path",{d:"M8.00039 0.75C4.64217 0.75 1.79946 2.95716 0.84375 5.99997C1.79944 9.04282 4.64217 11.25 8.00041 11.25C11.3586 11.25 14.2013 9.04284 15.157 6.00003C14.2014 2.95719 11.3586 0.75 8.00039 0.75Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),_y=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M2.25024 2.25L15.7502 15.75M7.38345 7.43523C6.99147 7.84016 6.75024 8.39191 6.75024 9C6.75024 10.2426 7.7576 11.25 9.00024 11.25C9.6171 11.25 10.176 11.0018 10.5824 10.5997M4.87524 4.98536C3.45076 5.92525 2.36577 7.33796 1.84375 8.99997C2.79944 12.0428 5.64217 14.25 9.00041 14.25C10.4921 14.25 11.882 13.8145 13.0501 13.0638M8.25024 3.78705C8.49697 3.76254 8.74722 3.75 9.00039 3.75C12.3586 3.75 15.2014 5.95719 16.157 9.00003C15.9465 9.67048 15.6443 10.3004 15.2651 10.875",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ky=e=>(0,xn.jsx)(wm,{width:"30px",height:"15px",fill:Xv.gray[450],viewBox:"1 1 30 15",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M1.2429 13V4.27273H7.02131V5.79403H3.08807V7.87358H6.63778V9.39489H3.08807V13H1.2429ZM8.67685 13H6.69957L9.71236 4.27273H12.0902L15.0987 13H13.1214L10.9354 6.26705H10.8672L8.67685 13ZM8.55327 9.5696H13.2237V11.0099H8.55327V9.5696ZM19.4847 4.27273V13H17.6396V6.02415H17.5884L15.5898 7.27699V5.64062L17.7504 4.27273H19.4847ZM22.1683 13.1108C21.8871 13.1108 21.6456 13.0114 21.4439 12.8125C21.245 12.6108 21.1456 12.3693 21.1456 12.0881C21.1456 11.8097 21.245 11.571 21.4439 11.3722C21.6456 11.1733 21.8871 11.0739 22.1683 11.0739C22.4411 11.0739 22.6797 11.1733 22.8842 11.3722C23.0888 11.571 23.1911 11.8097 23.1911 12.0881C23.1911 12.2756 23.1428 12.4474 23.0462 12.6037C22.9524 12.7571 22.8288 12.8807 22.6754 12.9744C22.522 13.0653 22.353 13.1108 22.1683 13.1108ZM24.6644 13V11.6705L27.771 8.79403C28.0352 8.53835 28.2567 8.30824 28.4357 8.10369C28.6175 7.89915 28.7553 7.69886 28.8491 7.50284C28.9428 7.30398 28.9897 7.08949 28.9897 6.85938C28.9897 6.60369 28.9315 6.38352 28.815 6.19886C28.6985 6.01136 28.5394 5.8679 28.3377 5.76847C28.136 5.66619 27.9073 5.61506 27.6516 5.61506C27.3846 5.61506 27.1516 5.66903 26.9528 5.77699C26.7539 5.88494 26.6005 6.03977 26.4925 6.24148C26.3846 6.44318 26.3306 6.68324 26.3306 6.96165H24.5792C24.5792 6.39062 24.7085 5.89489 24.967 5.47443C25.2255 5.05398 25.5877 4.72869 26.0536 4.49858C26.5195 4.26847 27.0565 4.15341 27.6644 4.15341C28.2894 4.15341 28.8335 4.2642 29.2965 4.4858C29.7624 4.70455 30.1246 5.00852 30.3832 5.39773C30.6417 5.78693 30.771 6.23295 30.771 6.7358C30.771 7.06534 30.7056 7.39062 30.5749 7.71165C30.4471 8.03267 30.2184 8.3892 29.8888 8.78125C29.5593 9.17045 29.0948 9.63778 28.4954 10.1832L27.2212 11.4318V11.4915H30.886V13H24.6644Z"})}),Sy=e=>(0,xn.jsx)(wm,{width:"23px",height:"18px",fill:Xv.gray[450],viewBox:"0 0 23 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M1.0261 13V4.27273H6.80451V5.79403H2.87127V7.87358H6.42099V9.39489H2.87127V13H1.0261ZM8.46005 13H6.48278L9.49556 4.27273H11.8734L14.8819 13H12.9047L10.7186 6.26705H10.6504L8.46005 13ZM8.33647 9.5696H13.0069V11.0099H8.33647V9.5696ZM15.8812 13V11.6705L18.9877 8.79403C19.252 8.53835 19.4735 8.30824 19.6525 8.10369C19.8343 7.89915 19.9721 7.69886 20.0659 7.50284C20.1596 7.30398 20.2065 7.08949 20.2065 6.85938C20.2065 6.60369 20.1483 6.38352 20.0318 6.19886C19.9153 6.01136 19.7562 5.8679 19.5545 5.76847C19.3528 5.66619 19.1241 5.61506 18.8684 5.61506C18.6014 5.61506 18.3684 5.66903 18.1696 5.77699C17.9707 5.88494 17.8173 6.03977 17.7093 6.24148C17.6014 6.44318 17.5474 6.68324 17.5474 6.96165H15.796C15.796 6.39062 15.9252 5.89489 16.1838 5.47443C16.4423 5.05398 16.8045 4.72869 17.2704 4.49858C17.7363 4.26847 18.2733 4.15341 18.8812 4.15341C19.5062 4.15341 20.0502 4.2642 20.5133 4.4858C20.9792 4.70455 21.3414 5.00852 21.6 5.39773C21.8585 5.78693 21.9877 6.23295 21.9877 6.7358C21.9877 7.06534 21.9224 7.39062 21.7917 7.71165C21.6639 8.03267 21.4352 8.3892 21.1056 8.78125C20.7761 9.17045 20.3116 9.63778 19.7122 10.1832L18.438 11.4318V11.4915H22.1028V13H15.8812Z"})}),Ey=e=>(0,xn.jsx)(wm,{width:"19px",height:"19px",fill:"none",stroke:Xv.gray[400],viewBox:"0 0 19 19",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M15.7842 10.2916C15.8165 10.0323 15.8332 9.76807 15.8332 9.49996C15.8332 6.00216 12.9976 3.16663 9.49984 3.16663C7.52021 3.16663 5.75273 4.07488 4.59135 5.49742M3.2155 8.70829C3.18316 8.96764 3.1665 9.23185 3.1665 9.49996C3.1665 12.9978 6.00203 15.8333 9.49984 15.8333C11.3914 15.8333 13.0893 15.004 14.2498 13.6892M11.8748 13.4583H14.2498V13.6892M4.59135 3.16663V5.49742M4.59135 5.49742V5.54157L6.96635 5.54163M14.2498 15.8333V13.6892",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Ay=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M9 8.25V12.75M9 12.75L7.5 11.25M9 12.75L10.5 11.25M9.75 2.25H6.15C5.30992 2.25 4.88988 2.25 4.56901 2.41349C4.28677 2.5573 4.0573 2.78677 3.91349 3.06901C3.75 3.38988 3.75 3.80992 3.75 4.65V13.35C3.75 14.1901 3.75 14.6101 3.91349 14.931C4.0573 15.2132 4.28677 15.4427 4.56901 15.5865C4.88988 15.75 5.30992 15.75 6.15 15.75H11.85C12.6901 15.75 13.1101 15.75 13.431 15.5865C13.7132 15.4427 13.9427 15.2132 14.0865 14.931C14.25 14.6101 14.25 14.1901 14.25 13.35V6.75M9.75 2.25L14.25 6.75M9.75 2.25V5.55C9.75 5.97004 9.75 6.18006 9.83175 6.34049C9.90365 6.48161 10.0184 6.59635 10.1595 6.66825C10.3199 6.75 10.53 6.75 10.95 6.75H14.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Py=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M11.25 2.25V4.8C11.25 5.22004 11.25 5.43006 11.3317 5.59049C11.4037 5.73161 11.5184 5.84635 11.6595 5.91825C11.8199 6 12.03 6 12.45 6H15M7.5 6H4.5C3.67157 6 3 6.67157 3 7.5V14.25C3 15.0784 3.67157 15.75 4.5 15.75H9C9.82843 15.75 10.5 15.0784 10.5 14.25V12M12 2.25H9.9C9.05992 2.25 8.63988 2.25 8.31901 2.41349C8.03677 2.5573 7.8073 2.78677 7.66349 3.06901C7.5 3.38988 7.5 3.80992 7.5 4.65V9.6C7.5 10.4401 7.5 10.8601 7.66349 11.181C7.8073 11.4632 8.03677 11.6927 8.31901 11.8365C8.63988 12 9.05992 12 9.9 12H12.6C13.4401 12 13.8601 12 14.181 11.8365C14.4632 11.6927 14.6927 11.4632 14.8365 11.181C15 10.8601 15 10.4401 15 9.6V5.25L12 2.25Z",strokeLinejoin:"round",strokeWidth:"1.2"})}),Oy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:"black",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M2.95314 5.997C4.05824 3.77605 6.35091 2.25 9 2.25C12.4718 2.25 15.3314 4.87105 15.708 8.24231M2.2912 9.74998C2.66427 13.125 5.52558 15.75 9 15.75C11.6496 15.75 13.9427 14.2234 15.0475 12.0017M2.25 3V6.375H5.625M15.75 15.375V12H12.375M8.625 6.75L7.5 9H10.5L9.375 11.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Ty=e=>(0,xn.jsxs)(wm,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,xn.jsx)("path",{d:"M15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3431 10.3431 9 12 9C13.6569 9 15 10.3431 15 12Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,xn.jsx)("path",{d:"M12.9046 3.06005C12.6988 3 12.4659 3 12 3C11.5341 3 11.3012 3 11.0954 3.06005C10.7942 3.14794 10.5281 3.32808 10.3346 3.57511C10.2024 3.74388 10.1159 3.96016 9.94291 4.39272C9.69419 5.01452 9.00393 5.33471 8.36857 5.123L7.79779 4.93281C7.3929 4.79785 7.19045 4.73036 6.99196 4.7188C6.70039 4.70181 6.4102 4.77032 6.15701 4.9159C5.98465 5.01501 5.83376 5.16591 5.53197 5.4677C5.21122 5.78845 5.05084 5.94882 4.94896 6.13189C4.79927 6.40084 4.73595 6.70934 4.76759 7.01551C4.78912 7.2239 4.87335 7.43449 5.04182 7.85566C5.30565 8.51523 5.05184 9.26878 4.44272 9.63433L4.16521 9.80087C3.74031 10.0558 3.52786 10.1833 3.37354 10.3588C3.23698 10.5141 3.13401 10.696 3.07109 10.893C3 11.1156 3 11.3658 3 11.8663C3 12.4589 3 12.7551 3.09462 13.0088C3.17823 13.2329 3.31422 13.4337 3.49124 13.5946C3.69158 13.7766 3.96395 13.8856 4.50866 14.1035C5.06534 14.3261 5.35196 14.9441 5.16236 15.5129L4.94721 16.1584C4.79819 16.6054 4.72367 16.829 4.7169 17.0486C4.70875 17.3127 4.77049 17.5742 4.89587 17.8067C5.00015 18.0002 5.16678 18.1668 5.5 18.5C5.83323 18.8332 5.99985 18.9998 6.19325 19.1041C6.4258 19.2295 6.68733 19.2913 6.9514 19.2831C7.17102 19.2763 7.39456 19.2018 7.84164 19.0528L8.36862 18.8771C9.00393 18.6654 9.6942 18.9855 9.94291 19.6073C10.1159 20.0398 10.2024 20.2561 10.3346 20.4249C10.5281 20.6719 10.7942 20.8521 11.0954 20.94C11.3012 21 11.5341 21 12 21C12.4659 21 12.6988 21 12.9046 20.94C13.2058 20.8521 13.4719 20.6719 13.6654 20.4249C13.7976 20.2561 13.8841 20.0398 14.0571 19.6073C14.3058 18.9855 14.9961 18.6654 15.6313 18.8773L16.1579 19.0529C16.605 19.2019 16.8286 19.2764 17.0482 19.2832C17.3123 19.2913 17.5738 19.2296 17.8063 19.1042C17.9997 18.9999 18.1664 18.8333 18.4996 18.5001C18.8328 18.1669 18.9994 18.0002 19.1037 17.8068C19.2291 17.5743 19.2908 17.3127 19.2827 17.0487C19.2759 16.8291 19.2014 16.6055 19.0524 16.1584L18.8374 15.5134C18.6477 14.9444 18.9344 14.3262 19.4913 14.1035C20.036 13.8856 20.3084 13.7766 20.5088 13.5946C20.6858 13.4337 20.8218 13.2329 20.9054 13.0088C21 12.7551 21 12.4589 21 11.8663C21 11.3658 21 11.1156 20.9289 10.893C20.866 10.696 20.763 10.5141 20.6265 10.3588C20.4721 10.1833 20.2597 10.0558 19.8348 9.80087L19.5569 9.63416C18.9478 9.26867 18.6939 8.51514 18.9578 7.85558C19.1262 7.43443 19.2105 7.22383 19.232 7.01543C19.2636 6.70926 19.2003 6.40077 19.0506 6.13181C18.9487 5.94875 18.7884 5.78837 18.4676 5.46762C18.1658 5.16584 18.0149 5.01494 17.8426 4.91583C17.5894 4.77024 17.2992 4.70174 17.0076 4.71872C16.8091 4.73029 16.6067 4.79777 16.2018 4.93273L15.6314 5.12287C14.9961 5.33464 14.3058 5.0145 14.0571 4.39272C13.8841 3.96016 13.7976 3.74388 13.6654 3.57511C13.4719 3.32808 13.2058 3.14794 12.9046 3.06005Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),Cy=e=>(0,xn.jsxs)(wm,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,xn.jsx)("path",{d:"M23.5198 12.2729C23.5198 11.422 23.4435 10.6038 23.3016 9.81836H12V14.4601H18.4581C18.1799 15.9601 17.3345 17.231 16.0636 18.0819V21.0927H19.9417C22.2107 19.0037 23.5198 15.9274 23.5198 12.2729Z",fill:"#4285F4",clipRule:"evenodd",fillRule:"evenodd"}),(0,xn.jsx)("path",{d:"M12.0008 24.0011C15.2408 24.0011 17.9571 22.9266 19.9425 21.0939L16.0644 18.083C14.9899 18.803 13.6153 19.2284 12.0008 19.2284C8.8754 19.2284 6.22999 17.1176 5.28637 14.2812H1.27734V17.3903C3.25186 21.312 7.30997 24.0011 12.0008 24.0011Z",fill:"#34A853",clipRule:"evenodd",fillRule:"evenodd"}),(0,xn.jsx)("path",{d:"M5.28537 14.2803C5.04537 13.5603 4.90901 12.7912 4.90901 12.0003C4.90901 11.2094 5.04537 10.4404 5.28537 9.72037V6.61133H1.27634C0.463629 8.2313 0 10.064 0 12.0003C0 13.9367 0.463629 15.7694 1.27634 17.3893L5.28537 14.2803Z",fill:"#FBBC05",clipRule:"evenodd",fillRule:"evenodd"}),(0,xn.jsx)("path",{d:"M12.0008 4.77265C13.7626 4.77265 15.3444 5.3781 16.588 6.56717L20.0298 3.1254C17.9516 1.18907 15.2353 0 12.0008 0C7.30997 0 3.25186 2.68905 1.27734 6.6108L5.28637 9.71984C6.22999 6.88353 8.8754 4.77265 12.0008 4.77265Z",fill:"#EA4335",clipRule:"evenodd",fillRule:"evenodd"})]}),jy=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M18.3795 5.65166L14.1055 9.86303M9.89445 14.137L5.63994 18.3679M5.63408 5.63799L9.89445 9.86303M14.1056 14.137L18.364 18.364M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12ZM15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3431 10.3431 9 12 9C13.6569 9 15 10.3431 15 12Z",stroke:Xv.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Ry=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M15 2.25H3M15 15.75H3M3.75 2.25C3.75 4.13267 4.65921 5.89944 6.1912 6.99371L11.8088 11.0063C13.3408 12.1006 14.25 13.8673 14.25 15.75M14.25 2.25C14.25 4.13267 13.3408 5.89944 11.8088 6.99371L6.1912 11.0063C4.65921 12.1006 3.75 13.8673 3.75 15.75",stroke:"#FB4F57",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Iy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],"data-testid":"outgoing-arrow-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M5.25 12.75L12.75 5.25M12.75 5.25H6M12.75 5.25V12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),My=e=>(0,xn.jsx)(Iy,{css:{rotate:"180deg"},...e}),Ly=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none","data-testid":"key-icon",strokeWidth:"1.2",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M9.24092 8.01389L3 14.25L4.5 15.75M5.25 12L6.75 13.5M15 5.625C15 7.48896 13.489 9 11.625 9C9.76104 9 8.25 7.48896 8.25 5.625C8.25 3.76104 9.76104 2.25 11.625 2.25C13.489 2.25 15 3.76104 15 5.625Z",strokeLinecap:"round",strokeLinejoin:"round"})}),Ny=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:Xv.gray[400],"data-testid":"ledger-icon",strokeWidth:"0",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M11.666 7.29183H12.3952V8.75016H9.47852V4.37516H10.9368L8.74935 1.4585L6.56185 4.37516H8.02018V10.2085H5.10352V8.54818C5.5381 8.29516 5.83268 7.82995 5.83268 7.29183C5.83268 6.90506 5.67904 6.53412 5.40555 6.26063C5.13206 5.98714 4.76112 5.8335 4.37435 5.8335C3.98757 5.8335 3.61664 5.98714 3.34315 6.26063C3.06966 6.53412 2.91602 6.90506 2.91602 7.29183C2.91602 7.82995 3.2106 8.29516 3.64518 8.54818V10.2085C3.64518 11.0128 4.29924 11.6668 5.10352 11.6668H8.02018V13.3271C7.79896 13.454 7.61508 13.6369 7.48707 13.8575C7.35906 14.0781 7.29143 14.3285 7.29102 14.5835C7.29102 14.9703 7.44466 15.3412 7.71815 15.6147C7.99164 15.8882 8.36257 16.0418 8.74935 16.0418C9.13612 16.0418 9.50706 15.8882 9.78055 15.6147C10.054 15.3412 10.2077 14.9703 10.2077 14.5835C10.2077 14.0454 9.9131 13.5802 9.47852 13.3271V10.2085H12.3952C13.1995 10.2085 13.8535 9.55443 13.8535 8.75016V7.29183H14.5827V4.37516H11.666V7.29183Z"})}),Dy=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M9.16586 17.6508C8.9261 17.8747 8.74055 18.0245 8.55093 18.134C7.62273 18.6699 6.47914 18.6699 5.55093 18.134C5.20889 17.9365 4.88009 17.6077 4.22251 16.9501C3.56492 16.2925 3.23612 15.9637 3.03864 15.6217C2.50274 14.6935 2.50274 13.5499 3.03864 12.6217C3.23612 12.2797 3.56492 11.9509 4.2225 11.2933L7.05093 8.46484C7.70852 7.80725 8.03732 7.47846 8.37936 7.28098C9.30756 6.74508 10.4512 6.74508 11.3794 7.28098C11.7214 7.47846 12.0502 7.80725 12.7078 8.46484C13.3654 9.12243 13.6942 9.45123 13.8916 9.79327C14.4275 10.7215 14.4275 11.8651 13.8916 12.7933C13.7822 12.9829 13.6323 13.1684 13.4085 13.4082M10.5929 10.5926C10.369 10.8323 10.2192 11.0179 10.1097 11.2075C9.57381 12.1357 9.57381 13.2793 10.1097 14.2075C10.3072 14.5495 10.636 14.8783 11.2936 15.5359C11.9512 16.1935 12.28 16.5223 12.622 16.7198C13.5502 17.2557 14.6938 17.2557 15.622 16.7198C15.964 16.5223 16.2928 16.1935 16.9504 15.5359L19.7789 12.7075C20.4364 12.0499 20.7652 11.7211 20.9627 11.3791C21.4986 10.4509 21.4986 9.30726 20.9627 8.37906C20.7652 8.03701 20.4364 7.70822 19.7789 7.05063C19.1213 6.39304 18.7925 6.06425 18.4504 5.86677C17.5222 5.33087 16.3786 5.33087 15.4504 5.86677C15.2608 5.97625 15.0753 6.12608 14.8355 6.34992",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),zy=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M12 14.5V16.5M7 10.0288C7.47142 10 8.05259 10 8.8 10H15.2C15.9474 10 16.5286 10 17 10.0288M7 10.0288C6.41168 10.0647 5.99429 10.1455 5.63803 10.327C5.07354 10.6146 4.6146 11.0735 4.32698 11.638C4 12.2798 4 13.1198 4 14.8V16.2C4 17.8802 4 18.7202 4.32698 19.362C4.6146 19.9265 5.07354 20.3854 5.63803 20.673C6.27976 21 7.11984 21 8.8 21H15.2C16.8802 21 17.7202 21 18.362 20.673C18.9265 20.3854 19.3854 19.9265 19.673 19.362C20 18.7202 20 17.8802 20 16.2V14.8C20 13.1198 20 12.2798 19.673 11.638C19.3854 11.0735 18.9265 10.6146 18.362 10.327C18.0057 10.1455 17.5883 10.0647 17 10.0288M7 10.0288V8C7 5.23858 9.23858 3 12 3C14.7614 3 17 5.23858 17 8V10.0288",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),By=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:"black",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M12.182 5.81859C13.9393 7.57595 13.9393 10.4252 12.182 12.1825M5.81802 12.1825C4.06066 10.4252 4.06066 7.57592 5.81802 5.81856M3.6967 14.3039C0.767767 11.3749 0.767767 6.6262 3.6967 3.69727M14.3033 3.6973C17.2322 6.62623 17.2322 11.375 14.3033 14.3039M10.5 9.00057C10.5 9.82899 9.82843 10.5006 9 10.5006C8.17157 10.5006 7.5 9.82899 7.5 9.00057C7.5 8.17214 8.17157 7.50057 9 7.50057C9.82843 7.50057 10.5 8.17214 10.5 9.00057Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Fy=({fishColor:e,...t})=>(0,xn.jsxs)(wm,{width:"38px",height:"38px",fill:"none",viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",...t,children:[(0,xn.jsx)("path",{d:"M34.9985 26.2751C34.6599 26.8629 34.2436 27.4106 33.7512 27.9032C32.2815 29.3727 30.3277 30.1819 28.2496 30.1819H24.8477V34.9996H26.8032H28.2497C30.0524 34.9996 31.7472 34.2976 33.022 33.0229C34.2967 31.7481 34.9986 30.0533 34.9985 28.2507V26.2751Z",fill:"black"}),(0,xn.jsx)("path",{d:"M34.9989 20.9441C34.6603 21.5318 34.2439 22.0796 33.7514 22.572C32.2819 24.0416 30.328 24.8509 28.2499 24.8509H18.9983C17.8104 24.8511 16.8477 25.814 16.8477 27.0019C16.8477 28.1898 17.8104 29.1528 18.9983 29.153H28.25C30.0526 29.153 31.7474 28.4511 33.0222 27.1763C34.2965 25.902 34.9986 24.2076 34.9989 22.4054V20.9441ZM18.9988 27.8361C18.5381 27.8361 18.1645 27.4626 18.1645 27.0018C18.1645 26.5412 18.5381 26.1675 18.9988 26.1675C19.4596 26.1675 19.8331 26.5412 19.8331 27.0018C19.8331 27.4626 19.4596 27.8361 18.9988 27.8361Z",fill:"black"}),(0,xn.jsx)("path",{d:"M35 9.74895C35 6.02751 31.9724 3 28.2509 3H9.74908C6.02761 3 3 6.02751 3 9.74895V28.2511C3 31.9725 6.02761 35 9.74899 35H23.8176V30.1824H18.9995C17.2418 30.1824 15.8171 28.7576 15.8171 27.0001C15.8171 25.2426 17.2418 23.8179 18.9995 23.8179H23.8176V18.9998H9.74899C6.5911 18.9998 4.03113 16.4402 4.03113 13.2824V9.74905C4.03113 6.59127 6.5911 4.03131 9.74899 4.03131H28.2508C31.4087 4.03131 33.9686 6.59127 33.9686 9.74905V13.2824C33.9686 16.4403 31.4089 19.0001 28.251 19.0001L24.8491 18.9998V23.8179H28.2511C30.0539 23.8179 31.7487 23.1159 33.0233 21.8411C34.2977 20.5668 34.9997 18.8725 35 17.0703V9.74895Z",fill:"black"}),(0,xn.jsx)("path",{d:"M28.251 4.03174C31.4088 4.03174 33.9687 6.59167 33.9687 9.74952V13.2828C33.9687 16.4406 31.4089 19.0005 28.2511 19.0005L9.74908 19.0003C6.59124 19.0003 4.03125 16.4406 4.03125 13.2829V9.74954C4.03125 6.59167 6.5912 4.03174 9.74908 4.03174H28.251Z",fill:"white"}),(0,xn.jsx)("path",{d:"M28.2511 6.73267C29.611 6.73267 30.7641 7.6364 31.1394 8.87525C31.1926 9.05118 31.0527 9.22558 30.869 9.21814C28.2867 9.11348 25.877 8.32896 23.8154 7.038C23.6751 6.95014 23.739 6.73267 23.9045 6.73267H28.2511Z",fill:e}),(0,xn.jsx)("path",{d:"M21.9973 7.02488C24.4283 8.9081 27.4326 10.0842 30.7 10.2428C31.0172 10.2581 31.2679 10.5166 31.2679 10.8342V12.8702C31.2674 12.9124 31.2661 13.0446 31.2638 13.1857C31.2603 13.4148 31.069 13.5949 30.8401 13.5876C25.3913 13.4117 20.5215 10.9067 17.1937 7.03888C17.0905 6.91878 17.175 6.73267 17.3334 6.73267H21.1443C21.4533 6.73267 21.753 6.83569 21.9973 7.02488Z",fill:e}),(0,xn.jsx)("path",{d:"M15.9653 7.17305C19.4649 11.5395 24.7681 14.4013 30.735 14.6156C30.8376 14.6193 30.9004 14.7309 30.8481 14.8191C30.3219 15.7056 29.3544 16.3012 28.2505 16.3012H23.1255C22.9317 16.3012 22.7392 16.2646 22.5603 16.1899C18.0848 14.3242 14.3146 11.0926 11.7745 7.01866C11.6968 6.89417 11.7878 6.73267 11.9345 6.73267H15.0503C15.4065 6.73267 15.7426 6.89513 15.9653 7.17305Z",fill:e}),(0,xn.jsx)("path",{d:"M9.75058 6.73267H10.1145C10.294 6.73267 10.4589 6.82889 10.5496 6.98379C12.776 10.7844 16.0081 13.9276 19.8791 16.0439C20.0039 16.1122 19.9556 16.3012 19.8134 16.3012H15.1194C14.5651 16.3012 14.0261 16.1087 13.6043 15.7491C11.1433 13.6507 9.05479 11.1267 7.45371 8.29236C7.34983 8.10846 7.3762 7.87733 7.51835 7.72112C8.07107 7.11383 8.86658 6.73267 9.75058 6.73267Z",fill:e}),(0,xn.jsx)("path",{d:"M12.3071 15.9829C12.4313 16.0951 12.3514 16.3013 12.184 16.3013H9.71437C8.06547 16.2829 6.73047 14.9363 6.73047 13.2836V9.7504L6.73065 9.54576C6.73077 9.42446 6.89048 9.37962 6.95305 9.48354C8.41152 11.9061 10.2194 14.096 12.3071 15.9829Z",fill:e})]}),Uy=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M12 8H12.01M12 11V16M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),$y=e=>(0,xn.jsx)(wm,{width:"16px",height:"16px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M8 5V8.75M8 11H8.0075M14.75 8C14.75 11.7279 11.7279 14.75 8 14.75C4.27208 14.75 1.25 11.7279 1.25 8C1.25 4.27208 4.27208 1.25 8 1.25C11.7279 1.25 14.75 4.27208 14.75 8Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Hy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M11.3348 4.66483L13.2208 6.55082M3 15L3.03164 14.7785C3.1436 13.9948 3.19958 13.6029 3.32692 13.2371C3.43992 12.9124 3.59428 12.6037 3.78619 12.3185C4.00247 11.9971 4.28237 11.7172 4.84218 11.1574L12.609 3.3906C13.1298 2.8698 13.9742 2.8698 14.495 3.3906C15.0158 3.9114 15.0158 4.75578 14.495 5.27658L6.58565 13.1859C6.07779 13.6938 5.82386 13.9477 5.53462 14.1497C5.27789 14.3289 5.001 14.4774 4.70965 14.5921C4.3814 14.7213 4.02937 14.7923 3.32535 14.9344L3 15Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Vy=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[300],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4 12H20M12 4V20",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),qy=e=>(0,xn.jsx)(wm,{width:"18",height:"18",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3 9C3 12.3137 5.68629 15 9 15C12.3137 15 15 12.3137 15 9C15 5.68629 12.3137 3 9 3C7.20796 3 5.59942 3.78563 4.5 5.03126C4.43696 5.10268 4.3756 5.17562 4.31597 5.25M9 6V9L10.875 10.875M4.31543 3.00293V5.25293H6.56543",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Ky=e=>(0,xn.jsx)(wm,{width:"22px",height:"22px",strokeWidth:"0",viewBox:"0 0 22 22",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M16.1791 5.82018C15.5007 5.13713 14.6938 4.59511 13.8049 4.22539C12.916 3.85568 11.9627 3.66556 10.9999 3.66602C6.94828 3.66602 3.67578 6.94768 3.67578 10.9993C3.67578 15.051 6.94828 18.3327 10.9999 18.3327C14.4191 18.3327 17.2699 15.9952 18.0858 12.8327H16.1791C15.8015 13.9047 15.1005 14.8332 14.1728 15.4899C13.2452 16.1467 12.1366 16.4994 10.9999 16.4993C7.96578 16.4993 5.49995 14.0335 5.49995 10.9993C5.49995 7.96518 7.96578 5.49935 10.9999 5.49935C12.5216 5.49935 13.8783 6.13185 14.8683 7.13102L11.9166 10.0827H18.3333V3.66602L16.1791 5.82018Z"})}),Wy=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],"data-testid":"rotate-icon",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M12.5 18.5C17.1944 18.5 21 14.6944 21 10C21 5.30558 17.1944 1.5 12.5 1.5C7.80558 1.5 4 5.30558 4 10C4 11.5433 4.41128 12.9905 5.13022 14.238M1.5 13L5.13022 14.238M6.82531 10.3832L5.47107 14.3542L5.13022 14.238",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Gy=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M16 3L8 21",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Zy=e=>(0,xn.jsx)(wm,{width:"32px",height:"32px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M16 7.33333C16 9.17428 14.5076 10.6667 12.6667 10.6667C10.8257 10.6667 9.33333 9.17428 9.33333 7.33333M16 7.33333C16 5.49238 14.5076 4 12.6667 4C10.8257 4 9.33333 5.49238 9.33333 7.33333M16 7.33333H28M9.33333 7.33333H4M25.3333 16C25.3333 17.8409 23.8409 19.3333 22 19.3333C20.1591 19.3333 18.6667 17.8409 18.6667 16M25.3333 16C25.3333 14.1591 23.8409 12.6667 22 12.6667C20.1591 12.6667 18.6667 14.1591 18.6667 16M25.3333 16H28M18.6667 16H4M13.3333 24.6667C13.3333 26.5076 11.8409 28 10 28C8.15905 28 6.66667 26.5076 6.66667 24.6667M13.3333 24.6667C13.3333 22.8257 11.8409 21.3333 10 21.3333C8.15905 21.3333 6.66667 22.8257 6.66667 24.6667M13.3333 24.6667H28M6.66667 24.6667H4",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Yy=e=>(0,xn.jsx)(wm,{width:"28px",height:"28px",fill:"none",stroke:"transparent","data-testid":"social-icon",viewBox:"0 0 28 28",...e,children:(0,xn.jsx)("g",{id:"Group 40429",children:(0,xn.jsx)("g",{id:"Group 40428",children:(0,xn.jsxs)("g",{id:"Group 39769",children:[(0,xn.jsx)("path",{d:"M27.4398 14.3177C27.4398 13.325 27.3507 12.3705 27.1852 11.4541H14V16.8695H21.5344C21.2099 18.6194 20.2235 20.1021 18.7408 21.0949V24.6075H23.2653C25.9125 22.1703 27.4398 18.5813 27.4398 14.3177Z",fill:"#4285F4",clipRule:"evenodd",fillRule:"evenodd",id:"Shape"}),(0,xn.jsx)("path",{d:"M14.0009 28C17.7809 28 20.9499 26.7464 23.2663 24.6082L18.7418 21.0955C17.4882 21.9355 15.8846 22.4319 14.0009 22.4319C10.3546 22.4319 7.26832 19.9692 6.16743 16.6602H1.49023V20.2874C3.79383 24.8628 8.5283 28 14.0009 28Z",fill:"#34A853",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_2"}),(0,xn.jsx)("path",{d:"M6.16627 16.66C5.88627 15.82 5.72718 14.9228 5.72718 14.0001C5.72718 13.0774 5.88627 12.1801 6.16627 11.3401V7.71289H1.48907C0.5409 9.60286 0 11.741 0 14.0001C0 16.2591 0.5409 18.3973 1.48907 20.2872L6.16627 16.66Z",fill:"#FBBC05",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_3"}),(0,xn.jsx)("path",{d:"M14.0009 5.56809C16.0564 5.56809 17.9018 6.27445 19.3527 7.6617L23.3681 3.64631C20.9436 1.38725 17.7745 0 14.0009 0C8.5283 0 3.79383 3.13722 1.49023 7.7126L6.16743 11.3398C7.26832 8.03078 10.3546 5.56809 14.0009 5.56809Z",fill:"#EA4335",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_4"})]})})})}),Xy=e=>(0,xn.jsxs)(wm,{width:"30px",height:"30px",fill:"none","data-testid":"tez-icon",viewBox:"0 0 30 30",...e,children:[(0,xn.jsx)("rect",{width:"30",height:"30",fill:"white",rx:"4"}),(0,xn.jsx)("rect",{width:"30",height:"30",fill:"url(#pattern0)",rx:"4"}),(0,xn.jsxs)("defs",{children:[(0,xn.jsx)("pattern",{width:"1",height:"1",id:"pattern0",patternContentUnits:"objectBoundingBox",children:(0,xn.jsx)("use",{transform:"translate(0.1753 0.101557) scale(0.00532296)",xlinkHref:"#image0_2912_38337"})}),(0,xn.jsx)("image",{width:"122",height:"150",id:"image0_2912_38337",xlinkHref:"data:image/png;base64,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"})]})]}),Jy=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[300],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M13.5 9H13.5075M9 9H9.0075M4.5 9H4.5075M9.75 9C9.75 9.41421 9.41421 9.75 9 9.75C8.58579 9.75 8.25 9.41421 8.25 9C8.25 8.58579 8.58579 8.25 9 8.25C9.41421 8.25 9.75 8.58579 9.75 9ZM14.25 9C14.25 9.41421 13.9142 9.75 13.5 9.75C13.0858 9.75 12.75 9.41421 12.75 9C12.75 8.58579 13.0858 8.25 13.5 8.25C13.9142 8.25 14.25 8.58579 14.25 9ZM5.25 9C5.25 9.41421 4.91421 9.75 4.5 9.75C4.08579 9.75 3.75 9.41421 3.75 9C3.75 8.58579 4.08579 8.25 4.5 8.25C4.91421 8.25 5.25 8.58579 5.25 9Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2"})});var Qy=wn((function(e,t){const{htmlWidth:r,htmlHeight:n,alt:i,...o}=e;return(0,xn.jsx)("img",{width:r,height:n,ref:t,alt:i,...o})}));Qy.displayName="NativeImage";function eb(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}var tb=wn((function(e,t){const{fallbackSrc:r,fallback:n,src:o,srcSet:a,align:s,fit:c,loading:l,ignoreFallback:u,crossOrigin:d,fallbackStrategy:h="beforeLoadOrError",referrerPolicy:f,...p}=e,m=null!=l||u||!(void 0!==r||void 0!==n),g=function(e){const{loading:t,src:r,srcSet:n,onLoad:o,onError:a,crossOrigin:s,sizes:c,ignoreFallback:l}=e,[u,d]=(0,i.useState)("pending");(0,i.useEffect)((()=>{d(r?"loading":"pending")}),[r]);const h=(0,i.useRef)(),f=(0,i.useCallback)((()=>{if(!r)return;p();const e=new Image;e.src=r,s&&(e.crossOrigin=s),n&&(e.srcset=n),c&&(e.sizes=c),t&&(e.loading=t),e.onload=e=>{p(),d("loaded"),null==o||o(e)},e.onerror=e=>{p(),d("failed"),null==a||a(e)},h.current=e}),[r,s,n,c,o,a,t]),p=()=>{h.current&&(h.current.onload=null,h.current.onerror=null,h.current=null)};return Si((()=>{if(!l)return"loading"===u&&f(),()=>{p()}}),[u,f,l]),l?"loaded":u}({...e,crossOrigin:d,ignoreFallback:m}),v=((e,t)=>"loaded"!==e&&"beforeLoadOrError"===t||"failed"===e&&"onError"===t)(g,h),y={ref:t,objectFit:c,objectPosition:s,...m?p:eb(p,["onError","onLoad"])};return v?n||(0,xn.jsx)(bn.img,{as:Qy,className:"chakra-image__placeholder",src:r,...y}):(0,xn.jsx)(bn.img,{as:Qy,src:o,srcSet:a,crossOrigin:d,loading:l,referrerPolicy:f,className:"chakra-image",...y})}));tb.displayName="Image";const rb=({contract:e,...t})=>{const r=`https://services.tzkt.io/v1/avatars/${e}`;return(0,xn.jsx)(tb,{fallbackSrc:"/static/media/coin-front.svg",src:r,...t})},nb=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3 4.5H15M12 4.5L11.797 3.89105C11.6003 3.30094 11.502 3.00588 11.3195 2.78774C11.1584 2.5951 10.9516 2.44599 10.7179 2.35408C10.4532 2.25 10.1422 2.25 9.52018 2.25H8.47982C7.85779 2.25 7.54677 2.25 7.28213 2.35408C7.04844 2.44599 6.84156 2.5951 6.68047 2.78774C6.49804 3.00588 6.39969 3.30094 6.20298 3.89105L6 4.5M13.5 4.5V12.15C13.5 13.4101 13.5 14.0402 13.2548 14.5215C13.039 14.9448 12.6948 15.289 12.2715 15.5048C11.7902 15.75 11.1601 15.75 9.9 15.75H8.1C6.83988 15.75 6.20982 15.75 5.72852 15.5048C5.30516 15.289 4.96095 14.9448 4.74524 14.5215C4.5 14.0402 4.5 13.4101 4.5 12.15V4.5M10.5 7.5V12.75M7.5 7.5V12.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ib=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none","data-testid":"unknown-contact-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3.16602 15.5625C3.16602 12.7435 5.45123 10.4583 8.27018 10.4583C8.51775 10.4583 8.7612 10.476 8.99935 10.51M13.3722 13.375C14.1014 12.6458 14.8305 12.3575 14.8305 11.5521C14.8305 10.7467 14.1776 10.0938 13.3722 10.0938C12.6927 10.0938 12.1217 10.5585 11.9598 11.1875M13.3722 15.5625H13.3795M11.1868 5.35417C11.1868 6.965 9.88101 8.27083 8.27018 8.27083C6.65935 8.27083 5.35352 6.965 5.35352 5.35417C5.35352 3.74334 6.65935 2.4375 8.27018 2.4375C9.88101 2.4375 11.1868 3.74334 11.1868 5.35417Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ob=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M20.5 11L18.7396 7.60473C18.253 6.65855 18.0097 6.18545 17.6514 5.84012C17.3346 5.5347 16.9544 5.30272 16.5379 5.16065C16.067 5 15.535 5 14.471 5H9.52901C8.46503 5 7.93304 5 7.46209 5.16065C7.04558 5.30272 6.66542 5.5347 6.34859 5.84012C5.99034 6.18545 5.74703 6.65855 5.26042 7.60473L3.5 11M20.5 11C20.6981 11.3853 20.7658 11.5446 20.8357 11.747C20.8977 11.9267 20.9426 12.1119 20.9696 12.3002C21 12.5121 21 12.7287 21 13.162V14.2C21 15.8802 21 16.7202 20.673 17.362C20.3854 17.9265 19.9265 18.3854 19.362 18.673C18.7202 19 17.8802 19 16.2 19H7.8C6.11984 19 5.27976 19 4.63803 18.673C4.07354 18.3854 3.6146 17.9265 3.32698 17.362C3 16.7202 3 15.8802 3 14.2V13.162C3 12.7287 3 12.5121 3.03041 12.3002C3.05741 12.1119 3.10225 11.9267 3.16432 11.747C3.23421 11.5446 3.30186 11.3853 3.5 11M20.5 11H3.5M15 15H17",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})});var ab=wn((function(e,t){const{direction:r,align:n,justify:i,wrap:o,basis:a,grow:s,shrink:c,...l}=e,u={display:"flex",flexDirection:r,alignItems:n,justifyContent:i,flexWrap:o,flexBasis:a,flexGrow:s,flexShrink:c};return(0,xn.jsx)(bn.div,{ref:t,__css:u,...l})}));ab.displayName="Flex";const sb=()=>(0,xn.jsxs)(ab,{position:"relative",alignItems:"center",justifyContent:"center","data-testid":"verified-icon",children:[(0,xn.jsx)(cb,{}),(0,xn.jsx)(ab,{position:"absolute",alignItems:"center",justifyContent:"center",children:(0,xn.jsx)(lb,{})})]}),cb=e=>(0,xn.jsx)(wm,{width:"14px",height:"14px",fill:Xv.gray[450],viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M6.51019 0.479749C6.78233 0.213196 7.21767 0.213195 7.48981 0.479749L8.86158 1.82333C8.99061 1.94972 9.16351 2.02134 9.34412 2.02321L11.2642 2.04314C11.6451 2.04709 11.9529 2.35492 11.9569 2.73584L11.9768 4.65588C11.9787 4.83649 12.0503 5.00939 12.1767 5.13842L13.5203 6.51019C13.7868 6.78233 13.7868 7.21767 13.5203 7.48981L12.1767 8.86158C12.0503 8.99061 11.9787 9.16351 11.9768 9.34412L11.9569 11.2642C11.9529 11.6451 11.6451 11.9529 11.2642 11.9569L9.34412 11.9768C9.16351 11.9787 8.99061 12.0503 8.86158 12.1767L7.48981 13.5203C7.21767 13.7868 6.78233 13.7868 6.51019 13.5203L5.13842 12.1767C5.00939 12.0503 4.83649 11.9787 4.65588 11.9768L2.73584 11.9569C2.35492 11.9529 2.04709 11.6451 2.04314 11.2642L2.02321 9.34412C2.02134 9.16351 1.94972 8.99061 1.82333 8.86158L0.479749 7.48981C0.213196 7.21767 0.213195 6.78233 0.479749 6.51019L1.82333 5.13842C1.94972 5.00939 2.02134 4.83649 2.02321 4.65588L2.04314 2.73584C2.04709 2.35492 2.35492 2.04709 2.73584 2.04314L4.65588 2.02321C4.83649 2.02134 5.00939 1.94972 5.13842 1.82333L6.51019 0.479749Z",strokeLinecap:"square",strokeLinejoin:"round"})}),lb=e=>(0,xn.jsx)(wm,{width:"7px",height:"5px",fill:"none",stroke:"white",viewBox:"0 0 7 5",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M1.66699 2.19314L3.0281 3.55425L5.75033 0.832031",strokeLinecap:"square",strokeLinejoin:"round"})}),ub=e=>(0,xn.jsx)(wm,{width:"24px",height:"24px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M10 16V14.0003M10 14.0003V12M10 14.0003L12 14.0005M10 14.0003L8 14M21 12V11.2C21 10.0799 21 9.51984 20.782 9.09202C20.5903 8.7157 20.2843 8.40973 19.908 8.21799C19.4802 8 18.9201 8 17.8 8H3M21 12V16M21 12H19C17.8954 12 17 12.8954 17 14C17 15.1046 17.8954 16 19 16H21M21 16V16.8C21 17.9201 21 18.4802 20.782 18.908C20.5903 19.2843 20.2843 19.5903 19.908 19.782C19.4802 20 18.9201 20 17.8 20H6.2C5.0799 20 4.51984 20 4.09202 19.782C3.71569 19.5903 3.40973 19.2843 3.21799 18.908C3 18.4802 3 17.9201 3 16.8V8M18 8V7.2C18 6.0799 18 5.51984 17.782 5.09202C17.5903 4.71569 17.2843 4.40973 16.908 4.21799C16.4802 4 15.9201 4 14.8 4H6.2C5.07989 4 4.51984 4 4.09202 4.21799C3.71569 4.40973 3.40973 4.71569 3.21799 5.09202C3 5.51984 3 6.0799 3 7.2V8",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),db=e=>(0,xn.jsx)(wm,{width:"36px",height:"32px",fill:"none",stroke:Xv.orangeL,viewBox:"0 0 36 32",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M18.0004 24.3332H18.0171M18.0004 12.6665V19.3332M8.68719 30.9999H27.3136C30.2831 30.9999 31.7678 30.9999 32.6386 30.3754C33.3985 29.8305 33.8946 28.9915 34.0058 28.0631C34.1333 26.9991 33.4178 25.6982 31.9868 23.0963L22.6736 6.16318C21.1499 3.39292 20.3881 2.00779 19.3814 1.54954C18.5041 1.15015 17.4968 1.15015 16.6194 1.54954C15.6127 2.00779 14.8509 3.39292 13.3273 6.16317L4.01404 23.0963C2.58301 25.6982 1.8675 26.9991 1.99498 28.0631C2.10622 28.9915 2.6023 29.8305 3.36219 30.3754C4.23304 30.9999 5.71776 30.9999 8.68719 30.9999Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2"})}),hb=e=>(0,xn.jsx)(wm,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4.5 4.5L13.5 13.5M13.5 4.5L4.5 13.5","data-testid":"xmark-icon-path",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})});var fb=r(9494),pb=r(9304);let mb=function(e){e()};const gb=()=>mb,vb=Symbol.for("react-redux-context"),yb="undefined"!==typeof globalThis?globalThis:{};function bb(){var e;if(!i.createContext)return{};const t=null!=(e=yb[vb])?e:yb[vb]=new Map;let r=t.get(i.createContext);return r||(r=i.createContext(null),t.set(i.createContext,r)),r}const wb=bb();function xb(e=wb){return function(){return(0,i.useContext)(e)}}const _b=xb();let kb=()=>{throw new Error("uSES not initialized!")};const Sb=(e,t)=>e===t;function Eb(e=wb){const t=e===wb?_b:xb(e);return function(e,r={}){const{equalityFn:n=Sb,stabilityCheck:o,noopCheck:a}="function"===typeof r?{equalityFn:r}:r;const{store:s,subscription:c,getServerState:l,stabilityCheck:u,noopCheck:d}=t(),h=((0,i.useRef)(!0),(0,i.useCallback)({[e.name]:t=>e(t)}[e.name],[e,u,o])),f=kb(c.addNestedSub,s.getState,l||s.getState,h,n);return(0,i.useDebugValue)(f),f}}const Ab=Eb();r(9185);const Pb={notify(){},get:()=>[]};function Ob(e,t){let r,n=Pb,i=0,o=!1;function a(){l.onStateChange&&l.onStateChange()}function s(){i++,r||(r=t?t.addNestedSub(a):e.subscribe(a),n=function(){const e=gb();let t=null,r=null;return{clear(){t=null,r=null},notify(){e((()=>{let e=t;for(;e;)e.callback(),e=e.next}))},get(){let e=[],r=t;for(;r;)e.push(r),r=r.next;return e},subscribe(e){let n=!0,i=r={callback:e,next:null,prev:r};return i.prev?i.prev.next=i:t=i,function(){n&&null!==t&&(n=!1,i.next?i.next.prev=i.prev:r=i.prev,i.prev?i.prev.next=i.next:t=i.next)}}}}())}function c(){i--,r&&0===i&&(r(),r=void 0,n.clear(),n=Pb)}const l={addNestedSub:function(e){s();const t=n.subscribe(e);let r=!1;return()=>{r||(r=!0,t(),c())}},notifyNestedSubs:function(){n.notify()},handleChangeWrapper:a,isSubscribed:function(){return o},trySubscribe:function(){o||(o=!0,s())},tryUnsubscribe:function(){o&&(o=!1,c())},getListeners:()=>n};return l}const Tb=!("undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement)?i.useLayoutEffect:i.useEffect;let Cb=null;const jb=function({store:e,context:t,children:r,serverState:n,stabilityCheck:o="once",noopCheck:a="once"}){const s=i.useMemo((()=>{const t=Ob(e);return{store:e,subscription:t,getServerState:n?()=>n:void 0,stabilityCheck:o,noopCheck:a}}),[e,n,o,a]),c=i.useMemo((()=>e.getState()),[e]);Tb((()=>{const{subscription:t}=s;return t.onStateChange=t.notifyNestedSubs,t.trySubscribe(),c!==e.getState()&&t.notifyNestedSubs(),()=>{t.tryUnsubscribe(),t.onStateChange=void 0}}),[s,c]);const l=t||wb;return i.createElement(l.Provider,{value:s},r)};function Rb(e=wb){const t=e===wb?_b:xb(e);return function(){const{store:e}=t();return e}}const Ib=Rb();function Mb(e=wb){const t=e===wb?Ib:Rb(e);return function(){return t().dispatch}}const Lb=Mb();var Nb;(e=>{kb=e})(pb.useSyncExternalStoreWithSelector),(e=>{Cb=e})(fb.useSyncExternalStore),Nb=Ei.unstable_batchedUpdates,mb=Nb;var Db=r(1841),zb=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,Bb=Math.ceil,Fb=Math.floor,Ub="[BigNumber Error] ",$b=Ub+"Number primitive has more than 15 significant digits: ",Hb=1e14,Vb=14,qb=9007199254740991,Kb=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],Wb=1e7,Gb=1e9;function Zb(e){var t=0|e;return e>0||e===t?t:t-1}function Yb(e){for(var t,r,n=1,i=e.length,o=e[0]+"";nl^r?1:-1;for(s=(c=i.length)<(l=o.length)?c:l,a=0;ao[a]^r?1:-1;return c==l?0:c>l^r?1:-1}function Jb(e,t,r,n){if(er||e!==Fb(e))throw Error(Ub+(n||"Argument")+("number"==typeof e?er?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function Qb(e){var t=e.c.length-1;return Zb(e.e/Vb)==t&&e.c[t]%2!=0}function ew(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function tw(e,t,r){var n,i;if(t<0){for(i=r+".";++t;i+=r);e=i+e}else if(++t>(n=e.length)){for(i=r,t-=n;--t;i+=r);e+=i}else th?g.c=g.e=null:e.e=10;u/=10,l++);return void(l>h?g.c=g.e=null:(g.e=l,g.c=[e]))}m=String(e)}else{if(!zb.test(m=String(e)))return i(g,m,f);g.s=45==m.charCodeAt(0)?(m=m.slice(1),-1):1}(l=m.indexOf("."))>-1&&(m=m.replace(".","")),(u=m.search(/e/i))>0?(l<0&&(l=u),l+=+m.slice(u+1),m=m.substring(0,u)):l<0&&(l=m.length)}else{if(Jb(t,2,v.length,"Base"),10==t&&y)return k(g=new b(e),s+g.e+1,c);if(m=String(e),f="number"==typeof e){if(0*e!=0)return i(g,m,f,t);if(g.s=1/e<0?(m=m.slice(1),-1):1,b.DEBUG&&m.replace(/^0\.0*|\./,"").length>15)throw Error($b+e)}else g.s=45===m.charCodeAt(0)?(m=m.slice(1),-1):1;for(r=v.slice(0,t),l=u=0,p=m.length;ul){l=p;continue}}else if(!a&&(m==m.toUpperCase()&&(m=m.toLowerCase())||m==m.toLowerCase()&&(m=m.toUpperCase()))){a=!0,u=-1,l=0;continue}return i(g,String(e),f,t)}f=!1,(l=(m=n(m,t,10,g.s)).indexOf("."))>-1?m=m.replace(".",""):l=m.length}for(u=0;48===m.charCodeAt(u);u++);for(p=m.length;48===m.charCodeAt(--p););if(m=m.slice(u,++p)){if(p-=u,f&&b.DEBUG&&p>15&&(e>qb||e!==Fb(e)))throw Error($b+g.s*e);if((l=l-u-1)>h)g.c=g.e=null;else if(l=u)?ew(d,a):tw(d,a,"0");else if(o=(e=k(new b(e),t,r)).e,s=(d=Yb(e.c)).length,1==n||2==n&&(t<=o||o<=l)){for(;ss){if(--t>0)for(d+=".";t--;d+="0");}else if((t+=o-s)>0)for(o+1==s&&(d+=".");t--;d+="0");return e.s<0&&i?"-"+d:d}function x(e,t){for(var r,n,i=1,o=new b(e[0]);i=10;i/=10,n++);return(r=n+r*Vb-1)>h?e.c=e.e=null:r=10;s/=10,i++);if((o=t-i)<0)o+=Vb,a=t,c=f[l=0],u=Fb(c/p[i-a-1]%10);else if((l=Bb((o+1)/Vb))>=f.length){if(!n)break e;for(;f.length<=l;f.push(0));c=u=0,i=1,a=(o%=Vb)-Vb+1}else{for(c=s=f[l],i=1;s>=10;s/=10,i++);u=(a=(o%=Vb)-Vb+i)<0?0:Fb(c/p[i-a-1]%10)}if(n=n||t<0||null!=f[l+1]||(a<0?c:c%p[i-a-1]),n=r<4?(u||n)&&(0==r||r==(e.s<0?3:2)):u>5||5==u&&(4==r||n||6==r&&(o>0?a>0?c/p[i-a]:0:f[l-1])%10&1||r==(e.s<0?8:7)),t<1||!f[0])return f.length=0,n?(t-=e.e+1,f[0]=p[(Vb-t%Vb)%Vb],e.e=-t||0):f[0]=e.e=0,e;if(0==o?(f.length=l,s=1,l--):(f.length=l+1,s=p[Vb-o],f[l]=a>0?Fb(c/p[i-a]%p[a])*s:0),n)for(;;){if(0==l){for(o=1,a=f[0];a>=10;a/=10,o++);for(a=f[0]+=s,s=1;a>=10;a/=10,s++);o!=s&&(e.e++,f[0]==Hb&&(f[0]=1));break}if(f[l]+=s,f[l]!=Hb)break;f[l--]=0,s=1}for(o=f.length;0===f[--o];f.pop());}e.e>h?e.c=e.e=null:e.e=u?ew(t,r):tw(t,r,"0"),e.s<0?"-"+t:t)}return b.clone=e,b.ROUND_UP=0,b.ROUND_DOWN=1,b.ROUND_CEIL=2,b.ROUND_FLOOR=3,b.ROUND_HALF_UP=4,b.ROUND_HALF_DOWN=5,b.ROUND_HALF_EVEN=6,b.ROUND_HALF_CEIL=7,b.ROUND_HALF_FLOOR=8,b.EUCLID=9,b.config=b.set=function(e){var t,r;if(null!=e){if("object"!=typeof e)throw Error(Ub+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(Jb(r=e[t],0,Gb,t),s=r),e.hasOwnProperty(t="ROUNDING_MODE")&&(Jb(r=e[t],0,8,t),c=r),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((r=e[t])&&r.pop?(Jb(r[0],-Gb,0,t),Jb(r[1],0,Gb,t),l=r[0],u=r[1]):(Jb(r,-Gb,Gb,t),l=-(u=r<0?-r:r))),e.hasOwnProperty(t="RANGE"))if((r=e[t])&&r.pop)Jb(r[0],-Gb,-1,t),Jb(r[1],1,Gb,t),d=r[0],h=r[1];else{if(Jb(r,-Gb,Gb,t),!r)throw Error(Ub+t+" cannot be zero: "+r);d=-(h=r<0?-r:r)}if(e.hasOwnProperty(t="CRYPTO")){if((r=e[t])!==!!r)throw Error(Ub+t+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw f=!r,Error(Ub+"crypto unavailable");f=r}else f=r}if(e.hasOwnProperty(t="MODULO_MODE")&&(Jb(r=e[t],0,9,t),p=r),e.hasOwnProperty(t="POW_PRECISION")&&(Jb(r=e[t],0,Gb,t),m=r),e.hasOwnProperty(t="FORMAT")){if("object"!=typeof(r=e[t]))throw Error(Ub+t+" not an object: "+r);g=r}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(r=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(Ub+t+" invalid: "+r);y="0123456789"==r.slice(0,10),v=r}}return{DECIMAL_PLACES:s,ROUNDING_MODE:c,EXPONENTIAL_AT:[l,u],RANGE:[d,h],CRYPTO:f,MODULO_MODE:p,POW_PRECISION:m,FORMAT:g,ALPHABET:v}},b.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!b.DEBUG)return!0;var t,r,n=e.c,i=e.e,o=e.s;e:if("[object Array]"=={}.toString.call(n)){if((1===o||-1===o)&&i>=-Gb&&i<=Gb&&i===Fb(i)){if(0===n[0]){if(0===i&&1===n.length)return!0;break e}if((t=(i+1)%Vb)<1&&(t+=Vb),String(n[0]).length==t){for(t=0;t=Hb||r!==Fb(r))break e;if(0!==r)return!0}}}else if(null===n&&null===i&&(null===o||1===o||-1===o))return!0;throw Error(Ub+"Invalid BigNumber: "+e)},b.maximum=b.max=function(){return x(arguments,-1)},b.minimum=b.min=function(){return x(arguments,1)},b.random=function(){var e=9007199254740992,t=Math.random()*e&2097151?function(){return Fb(Math.random()*e)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)};return function(e){var r,n,i,o,c,l=0,u=[],d=new b(a);if(null==e?e=s:Jb(e,0,Gb),o=Bb(e/Vb),f)if(crypto.getRandomValues){for(r=crypto.getRandomValues(new Uint32Array(o*=2));l>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),r[l]=n[0],r[l+1]=n[1]):(u.push(c%1e14),l+=2);l=o/2}else{if(!crypto.randomBytes)throw f=!1,Error(Ub+"crypto unavailable");for(r=crypto.randomBytes(o*=7);l=9e15?crypto.randomBytes(7).copy(r,l):(u.push(c%1e14),l+=7);l=o/7}if(!f)for(;l=10;c/=10,l++);lr-1&&(null==a[i+1]&&(a[i+1]=0),a[i+1]+=a[i]/r|0,a[i]%=r)}return a.reverse()}return function(n,i,o,a,l){var u,d,h,f,p,g,y,w,x=n.indexOf("."),_=s,k=c;for(x>=0&&(f=m,m=0,n=n.replace(".",""),g=(w=new b(i)).pow(n.length-x),m=f,w.c=t(tw(Yb(g.c),g.e,"0"),10,o,e),w.e=w.c.length),h=f=(y=t(n,i,o,l?(u=v,e):(u=e,v))).length;0==y[--f];y.pop());if(!y[0])return u.charAt(0);if(x<0?--h:(g.c=y,g.e=h,g.s=a,y=(g=r(g,w,_,k,o)).c,p=g.r,h=g.e),x=y[d=h+_+1],f=o/2,p=p||d<0||null!=y[d+1],p=k<4?(null!=x||p)&&(0==k||k==(g.s<0?3:2)):x>f||x==f&&(4==k||p||6==k&&1&y[d-1]||k==(g.s<0?8:7)),d<1||!y[0])n=p?tw(u.charAt(1),-_,u.charAt(0)):u.charAt(0);else{if(y.length=d,p)for(--o;++y[--d]>o;)y[d]=0,d||(++h,y=[1].concat(y));for(f=y.length;!y[--f];);for(x=0,n="";x<=f;n+=u.charAt(y[x++]));n=tw(n,h,u.charAt(0))}return n}}(),r=function(){function e(e,t,r){var n,i,o,a,s=0,c=e.length,l=t%Wb,u=t/Wb|0;for(e=e.slice();c--;)s=((i=l*(o=e[c]%Wb)+(n=u*o+(a=e[c]/Wb|0)*l)%Wb*Wb+s)/r|0)+(n/Wb|0)+u*a,e[c]=i%r;return s&&(e=[s].concat(e)),e}function t(e,t,r,n){var i,o;if(r!=n)o=r>n?1:-1;else for(i=o=0;it[i]?1:-1;break}return o}function r(e,t,r,n){for(var i=0;r--;)e[r]-=i,i=e[r]1;e.splice(0,1));}return function(n,i,o,a,s){var c,l,u,d,h,f,p,m,g,v,y,w,x,_,S,E,A,P=n.s==i.s?1:-1,O=n.c,T=i.c;if(!O||!O[0]||!T||!T[0])return new b(n.s&&i.s&&(O?!T||O[0]!=T[0]:T)?O&&0==O[0]||!T?0*P:P/0:NaN);for(g=(m=new b(P)).c=[],P=o+(l=n.e-i.e)+1,s||(s=Hb,l=Zb(n.e/Vb)-Zb(i.e/Vb),P=P/Vb|0),u=0;T[u]==(O[u]||0);u++);if(T[u]>(O[u]||0)&&l--,P<0)g.push(1),d=!0;else{for(_=O.length,E=T.length,u=0,P+=2,(h=Fb(s/(T[0]+1)))>1&&(T=e(T,h,s),O=e(O,h,s),E=T.length,_=O.length),x=E,y=(v=O.slice(0,E)).length;y=s/2&&S++;do{if(h=0,(c=t(T,v,E,y))<0){if(w=v[0],E!=y&&(w=w*s+(v[1]||0)),(h=Fb(w/S))>1)for(h>=s&&(h=s-1),p=(f=e(T,h,s)).length,y=v.length;1==t(f,v,p,y);)h--,r(f,E=10;P/=10,u++);k(m,o+(m.e=u+l*Vb-1)+1,a,d)}else m.e=l,m.r=+d;return m}}(),i=function(){var e=/^(-?)0([xbo])(?=\w[\w.]*$)/i,t=/^([^.]+)\.$/,r=/^\.([^.]+)$/,n=/^-?(Infinity|NaN)$/,i=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(o,a,s,c){var l,u=s?a:a.replace(i,"");if(n.test(u))o.s=isNaN(u)?null:u<0?-1:1;else{if(!s&&(u=u.replace(e,(function(e,t,r){return l="x"==(r=r.toLowerCase())?16:"b"==r?2:8,c&&c!=l?e:t})),c&&(l=c,u=u.replace(t,"$1").replace(r,"0.$1")),a!=u))return new b(u,l);if(b.DEBUG)throw Error(Ub+"Not a"+(c?" base "+c:"")+" number: "+a);o.s=null}o.c=o.e=null}}(),o.absoluteValue=o.abs=function(){var e=new b(this);return e.s<0&&(e.s=1),e},o.comparedTo=function(e,t){return Xb(this,new b(e,t))},o.decimalPlaces=o.dp=function(e,t){var r,n,i,o=this;if(null!=e)return Jb(e,0,Gb),null==t?t=c:Jb(t,0,8),k(new b(o),e+o.e+1,t);if(!(r=o.c))return null;if(n=((i=r.length-1)-Zb(this.e/Vb))*Vb,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},o.dividedBy=o.div=function(e,t){return r(this,new b(e,t),s,c)},o.dividedToIntegerBy=o.idiv=function(e,t){return r(this,new b(e,t),0,1)},o.exponentiatedBy=o.pow=function(e,t){var r,n,i,o,s,l,u,d,h=this;if((e=new b(e)).c&&!e.isInteger())throw Error(Ub+"Exponent not an integer: "+S(e));if(null!=t&&(t=new b(t)),s=e.e>14,!h.c||!h.c[0]||1==h.c[0]&&!h.e&&1==h.c.length||!e.c||!e.c[0])return d=new b(Math.pow(+S(h),s?e.s*(2-Qb(e)):+S(e))),t?d.mod(t):d;if(l=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new b(NaN);(n=!l&&h.isInteger()&&t.isInteger())&&(h=h.mod(t))}else{if(e.e>9&&(h.e>0||h.e<-1||(0==h.e?h.c[0]>1||s&&h.c[1]>=24e7:h.c[0]<8e13||s&&h.c[0]<=9999975e7)))return o=h.s<0&&Qb(e)?-0:0,h.e>-1&&(o=1/o),new b(l?1/o:o);m&&(o=Bb(m/Vb+2))}for(s?(r=new b(.5),l&&(e.s=1),u=Qb(e)):u=(i=Math.abs(+S(e)))%2,d=new b(a);;){if(u){if(!(d=d.times(h)).c)break;o?d.c.length>o&&(d.c.length=o):n&&(d=d.mod(t))}if(i){if(0===(i=Fb(i/2)))break;u=i%2}else if(k(e=e.times(r),e.e+1,1),e.e>14)u=Qb(e);else{if(0===(i=+S(e)))break;u=i%2}h=h.times(h),o?h.c&&h.c.length>o&&(h.c.length=o):n&&(h=h.mod(t))}return n?d:(l&&(d=a.div(d)),t?d.mod(t):o?k(d,m,c,undefined):d)},o.integerValue=function(e){var t=new b(this);return null==e?e=c:Jb(e,0,8),k(t,t.e+1,e)},o.isEqualTo=o.eq=function(e,t){return 0===Xb(this,new b(e,t))},o.isFinite=function(){return!!this.c},o.isGreaterThan=o.gt=function(e,t){return Xb(this,new b(e,t))>0},o.isGreaterThanOrEqualTo=o.gte=function(e,t){return 1===(t=Xb(this,new b(e,t)))||0===t},o.isInteger=function(){return!!this.c&&Zb(this.e/Vb)>this.c.length-2},o.isLessThan=o.lt=function(e,t){return Xb(this,new b(e,t))<0},o.isLessThanOrEqualTo=o.lte=function(e,t){return-1===(t=Xb(this,new b(e,t)))||0===t},o.isNaN=function(){return!this.s},o.isNegative=function(){return this.s<0},o.isPositive=function(){return this.s>0},o.isZero=function(){return!!this.c&&0==this.c[0]},o.minus=function(e,t){var r,n,i,o,a=this,s=a.s;if(t=(e=new b(e,t)).s,!s||!t)return new b(NaN);if(s!=t)return e.s=-t,a.plus(e);var l=a.e/Vb,u=e.e/Vb,d=a.c,h=e.c;if(!l||!u){if(!d||!h)return d?(e.s=-t,e):new b(h?a:NaN);if(!d[0]||!h[0])return h[0]?(e.s=-t,e):new b(d[0]?a:3==c?-0:0)}if(l=Zb(l),u=Zb(u),d=d.slice(),s=l-u){for((o=s<0)?(s=-s,i=d):(u=l,i=h),i.reverse(),t=s;t--;i.push(0));i.reverse()}else for(n=(o=(s=d.length)<(t=h.length))?s:t,s=t=0;t0)for(;t--;d[r++]=0);for(t=Hb-1;n>s;){if(d[--n]=0;){for(r=0,h=w[i]%g,f=w[i]/g|0,o=i+(a=c);o>i;)r=((l=h*(l=y[--a]%g)+(s=f*l+(u=y[a]/g|0)*h)%g*g+p[o]+r)/m|0)+(s/g|0)+f*u,p[o--]=l%m;p[o]=r}return r?++n:p.splice(0,1),_(e,p,n)},o.negated=function(){var e=new b(this);return e.s=-e.s||null,e},o.plus=function(e,t){var r,n=this,i=n.s;if(t=(e=new b(e,t)).s,!i||!t)return new b(NaN);if(i!=t)return e.s=-t,n.minus(e);var o=n.e/Vb,a=e.e/Vb,s=n.c,c=e.c;if(!o||!a){if(!s||!c)return new b(i/0);if(!s[0]||!c[0])return c[0]?e:new b(s[0]?n:0*i)}if(o=Zb(o),a=Zb(a),s=s.slice(),i=o-a){for(i>0?(a=o,r=c):(i=-i,r=s),r.reverse();i--;r.push(0));r.reverse()}for((i=s.length)-(t=c.length)<0&&(r=c,c=s,s=r,t=i),i=0;t;)i=(s[--t]=s[t]+c[t]+i)/Hb|0,s[t]=Hb===s[t]?0:s[t]%Hb;return i&&(s=[i].concat(s),++a),_(e,s,a)},o.precision=o.sd=function(e,t){var r,n,i,o=this;if(null!=e&&e!==!!e)return Jb(e,1,Gb),null==t?t=c:Jb(t,0,8),k(new b(o),e,t);if(!(r=o.c))return null;if(n=(i=r.length-1)*Vb+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return e&&o.e+1>n&&(n=o.e+1),n},o.shiftedBy=function(e){return Jb(e,-9007199254740991,qb),this.times("1e"+e)},o.squareRoot=o.sqrt=function(){var e,t,n,i,o,a=this,l=a.c,u=a.s,d=a.e,h=s+4,f=new b("0.5");if(1!==u||!l||!l[0])return new b(!u||u<0&&(!l||l[0])?NaN:l?a:1/0);if(0==(u=Math.sqrt(+S(a)))||u==1/0?(((t=Yb(l)).length+d)%2==0&&(t+="0"),u=Math.sqrt(+t),d=Zb((d+1)/2)-(d<0||d%2),n=new b(t=u==1/0?"5e"+d:(t=u.toExponential()).slice(0,t.indexOf("e")+1)+d)):n=new b(u+""),n.c[0])for((u=(d=n.e)+h)<3&&(u=0);;)if(o=n,n=f.times(o.plus(r(a,o,h,1))),Yb(o.c).slice(0,u)===(t=Yb(n.c)).slice(0,u)){if(n.e0&&p>0){for(o=p%s||s,u=f.substr(0,o);o0&&(u+=l+f.slice(o)),h&&(u="-"+u)}n=d?u+(r.decimalSeparator||"")+((c=+r.fractionGroupSize)?d.replace(new RegExp("\\d{"+c+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):d):u}return(r.prefix||"")+n+(r.suffix||"")},o.toFraction=function(e){var t,n,i,o,s,l,u,d,f,p,m,g,v=this,y=v.c;if(null!=e&&(!(u=new b(e)).isInteger()&&(u.c||1!==u.s)||u.lt(a)))throw Error(Ub+"Argument "+(u.isInteger()?"out of range: ":"not an integer: ")+S(u));if(!y)return new b(v);for(t=new b(a),f=n=new b(a),i=d=new b(a),g=Yb(y),s=t.e=g.length-v.e-1,t.c[0]=Kb[(l=s%Vb)<0?Vb+l:l],e=!e||u.comparedTo(t)>0?s>0?t:f:u,l=h,h=1/0,u=new b(g),d.c[0]=0;p=r(u,t,0,1),1!=(o=n.plus(p.times(i))).comparedTo(e);)n=i,i=o,f=d.plus(p.times(o=f)),d=o,t=u.minus(p.times(o=t)),u=o;return o=r(e.minus(n),i,0,1),d=d.plus(o.times(f)),n=n.plus(o.times(i)),d.s=f.s=v.s,m=r(f,i,s*=2,c).minus(v).abs().comparedTo(r(d,n,s,c).minus(v).abs())<1?[f,i]:[d,n],h=l,m},o.toNumber=function(){return+S(this)},o.toPrecision=function(e,t){return null!=e&&Jb(e,1,Gb),w(this,e,t,2)},o.toString=function(e){var t,r=this,i=r.s,o=r.e;return null===o?i?(t="Infinity",i<0&&(t="-"+t)):t="NaN":(null==e?t=o<=l||o>=u?ew(Yb(r.c),o):tw(Yb(r.c),o,"0"):10===e&&y?t=tw(Yb((r=k(new b(r),s+o+1,c)).c),r.e,"0"):(Jb(e,2,v.length,"Base"),t=n(tw(Yb(r.c),o,"0"),10,e,i,!0)),i<0&&r.c[0]&&(t="-"+t)),t},o.valueOf=o.toJSON=function(){return S(this)},o._isBigNumber=!0,o[Symbol.toStringTag]="BigNumber",o[Symbol.for("nodejs.util.inspect.custom")]=o.valueOf,null!=t&&b.set(t),b}();const nw=rw,iw=Lb,ow=Ab;function aw(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n3?t.i-4:t.i:Array.isArray(e)?1:mw(e)?2:gw(e)?3:0}function dw(e,t){return 2===uw(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function hw(e,t){return 2===uw(e)?e.get(t):e[t]}function fw(e,t,r){var n=uw(e);2===n?e.set(t,r):3===n?e.add(r):e[t]=r}function pw(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function mw(e){return qw&&e instanceof Map}function gw(e){return Kw&&e instanceof Set}function vw(e){return e.o||e.t}function yw(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=Qw(e);delete t[Yw];for(var r=Jw(t),n=0;n1&&(e.set=e.add=e.clear=e.delete=ww),Object.freeze(e),t&&lw(e,(function(e,t){return bw(t,!0)}),!0)),e}function ww(){aw(2)}function xw(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function _w(e){var t=ex[e];return t||aw(18,e),t}function kw(e,t){ex[e]||(ex[e]=t)}function Sw(){return Hw}function Ew(e,t){t&&(_w("Patches"),e.u=[],e.s=[],e.v=t)}function Aw(e){Pw(e),e.p.forEach(Tw),e.p=null}function Pw(e){e===Hw&&(Hw=e.l)}function Ow(e){return Hw={p:[],l:Hw,h:e,m:!0,_:0}}function Tw(e){var t=e[Yw];0===t.i||1===t.i?t.j():t.g=!0}function Cw(e,t){t._=t.p.length;var r=t.p[0],n=void 0!==e&&e!==r;return t.h.O||_w("ES5").S(t,e,n),n?(r[Yw].P&&(Aw(t),aw(4)),cw(e)&&(e=jw(t,e),t.l||Iw(t,e)),t.u&&_w("Patches").M(r[Yw].t,e,t.u,t.s)):e=jw(t,r,[]),Aw(t),t.u&&t.v(t.u,t.s),e!==Gw?e:void 0}function jw(e,t,r){if(xw(t))return t;var n=t[Yw];if(!n)return lw(t,(function(i,o){return Rw(e,n,t,i,o,r)}),!0),t;if(n.A!==e)return t;if(!n.P)return Iw(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var i=4===n.i||5===n.i?n.o=yw(n.k):n.o,o=i,a=!1;3===n.i&&(o=new Set(i),i.clear(),a=!0),lw(o,(function(t,o){return Rw(e,n,i,t,o,r,a)})),Iw(e,i,!1),r&&e.u&&_w("Patches").N(n,r,e.u,e.s)}return n.o}function Rw(e,t,r,n,i,o,a){if(sw(i)){var s=jw(e,i,o&&t&&3!==t.i&&!dw(t.R,n)?o.concat(n):void 0);if(fw(r,n,s),!sw(s))return;e.m=!1}else a&&r.add(i);if(cw(i)&&!xw(i)){if(!e.h.D&&e._<1)return;jw(e,i),t&&t.A.l||Iw(e,i)}}function Iw(e,t,r){void 0===r&&(r=!1),!e.l&&e.h.D&&e.m&&bw(t,r)}function Mw(e,t){var r=e[Yw];return(r?vw(r):e)[t]}function Lw(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function Nw(e){e.P||(e.P=!0,e.l&&Nw(e.l))}function Dw(e){e.o||(e.o=yw(e.t))}function zw(e,t,r){var n=mw(t)?_w("MapSet").F(t,r):gw(t)?_w("MapSet").T(t,r):e.O?function(e,t){var r=Array.isArray(e),n={i:r?1:0,A:t?t.A:Sw(),P:!1,I:!1,R:{},l:t,t:e,k:null,o:null,j:null,C:!1},i=n,o=tx;r&&(i=[n],o=rx);var a=Proxy.revocable(i,o),s=a.revoke,c=a.proxy;return n.k=c,n.j=s,c}(t,r):_w("ES5").J(t,r);return(r?r.A:Sw()).p.push(n),n}function Bw(e){return sw(e)||aw(22,e),function e(t){if(!cw(t))return t;var r,n=t[Yw],i=uw(t);if(n){if(!n.P&&(n.i<4||!_w("ES5").K(n)))return n.t;n.I=!0,r=Fw(t,i),n.I=!1}else r=Fw(t,i);return lw(r,(function(t,i){n&&hw(n.t,t)===i||fw(r,t,e(i))})),3===i?new Set(r):r}(e)}function Fw(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return yw(e)}function Uw(){function e(e,t){var r=i[e];return r?r.enumerable=t:i[e]=r={configurable:!0,enumerable:t,get:function(){var t=this[Yw];return tx.get(t,e)},set:function(t){var r=this[Yw];tx.set(r,e,t)}},r}function t(e){for(var t=e.length-1;t>=0;t--){var i=e[t][Yw];if(!i.P)switch(i.i){case 5:n(i)&&Nw(i);break;case 4:r(i)&&Nw(i)}}}function r(e){for(var t=e.t,r=e.k,n=Jw(r),i=n.length-1;i>=0;i--){var o=n[i];if(o!==Yw){var a=t[o];if(void 0===a&&!dw(t,o))return!0;var s=r[o],c=s&&s[Yw];if(c?c.t!==a:!pw(s,a))return!0}}var l=!!t[Yw];return n.length!==Jw(t).length+(l?0:1)}function n(e){var t=e.k;if(t.length!==e.t.length)return!0;var r=Object.getOwnPropertyDescriptor(t,t.length-1);if(r&&!r.get)return!0;for(var n=0;n1?n-1:0),s=1;s1?n-1:0),o=1;o=0;r--){var n=t[r];if(0===n.path.length&&"replace"===n.op){e=n.value;break}}r>-1&&(t=t.slice(r+1));var i=_w("Patches").$;return sw(e)?i(e,t):this.produce(e,(function(e){return i(e,t)}))},e}(),ix=new nx,ox=ix.produce;ix.produceWithPatches.bind(ix),ix.setAutoFreeze.bind(ix),ix.setUseProxies.bind(ix),ix.applyPatches.bind(ix),ix.createDraft.bind(ix),ix.finishDraft.bind(ix);const ax=ox;function sx(e){return sx="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},sx(e)}function cx(e){var t=function(e,t){if("object"!==sx(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==sx(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===sx(t)?t:String(t)}function lx(e,t,r){return(t=cx(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ux(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function dx(e){for(var t=1;t0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]i_.map((e=>e.name)).includes(e.name),i_=[r_,{name:"ghostnet",rpcUrl:"https://ghostnet.ecadinfra.com",tzktApiUrl:"https://api.ghostnet.tzkt.io",tzktExplorerUrl:"https://ghostnet.tzkt.io",buyTezUrl:"https://faucet.ghostnet.teztnets.xyz/"}],o_={available:i_,current:r_},a_=qx({name:"networks",initialState:o_,reducers:{reset:()=>o_,setCurrent:(e,{payload:t})=>{e.current=t},upsertNetwork:(e,{payload:t})=>{if(n_(t))return;const r=e.available.findIndex((e=>e.name===t.name));e.current.name===t.name&&(e.current=t),-1===r?e.available.push(t):e.available[r]=t},removeNetwork:(e,{payload:t})=>{n_(t)||(0,Db.remove)(e.available,(e=>e.name===t.name))}}}),s_=a_.actions,c_=()=>ow((e=>e.networks.current)),l_=()=>ow((e=>e.networks.available)),u_=()=>{const e=l_(),t=Lb();return r=>{const n=e.find((e=>e.name===r));n&&t(s_.setCurrent(n))}},d_=()=>{const e=c_(),t=ow((t=>t.tokens[e.name]));return(e,r)=>(0,Db.get)(t,[e,r])};var h_,f_;!function(e){e.assertEqual=e=>e,e.assertIs=function(e){},e.assertNever=function(e){throw new Error},e.arrayToEnum=e=>{const t={};for(const r of e)t[r]=r;return t},e.getValidEnumValues=t=>{const r=e.objectKeys(t).filter((e=>"number"!==typeof t[t[e]])),n={};for(const e of r)n[e]=t[e];return e.objectValues(n)},e.objectValues=t=>e.objectKeys(t).map((function(e){return t[e]})),e.objectKeys="function"===typeof Object.keys?e=>Object.keys(e):e=>{const t=[];for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.push(r);return t},e.find=(e,t)=>{for(const r of e)if(t(r))return r},e.isInteger="function"===typeof Number.isInteger?e=>Number.isInteger(e):e=>"number"===typeof e&&isFinite(e)&&Math.floor(e)===e,e.joinValues=function(e,t=" | "){return e.map((e=>"string"===typeof e?`'${e}'`:e)).join(t)},e.jsonStringifyReplacer=(e,t)=>"bigint"===typeof t?t.toString():t}(h_||(h_={})),function(e){e.mergeShapes=(e,t)=>({...e,...t})}(f_||(f_={}));const p_=h_.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),m_=e=>{switch(typeof e){case"undefined":return p_.undefined;case"string":return p_.string;case"number":return isNaN(e)?p_.nan:p_.number;case"boolean":return p_.boolean;case"function":return p_.function;case"bigint":return p_.bigint;case"symbol":return p_.symbol;case"object":return Array.isArray(e)?p_.array:null===e?p_.null:e.then&&"function"===typeof e.then&&e.catch&&"function"===typeof e.catch?p_.promise:"undefined"!==typeof Map&&e instanceof Map?p_.map:"undefined"!==typeof Set&&e instanceof Set?p_.set:"undefined"!==typeof Date&&e instanceof Date?p_.date:p_.object;default:return p_.unknown}},g_=h_.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class v_ extends Error{constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(e){return e.message},r={_errors:[]},n=e=>{for(const i of e.issues)if("invalid_union"===i.code)i.unionErrors.map(n);else if("invalid_return_type"===i.code)n(i.returnTypeError);else if("invalid_arguments"===i.code)n(i.argumentsError);else if(0===i.path.length)r._errors.push(t(i));else{let e=r,n=0;for(;ne.message)){const t={},r=[];for(const n of this.issues)n.path.length>0?(t[n.path[0]]=t[n.path[0]]||[],t[n.path[0]].push(e(n))):r.push(e(n));return{formErrors:r,fieldErrors:t}}get formErrors(){return this.flatten()}}v_.create=e=>new v_(e);const y_=(e,t)=>{let r;switch(e.code){case g_.invalid_type:r=e.received===p_.undefined?"Required":`Expected ${e.expected}, received ${e.received}`;break;case g_.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,h_.jsonStringifyReplacer)}`;break;case g_.unrecognized_keys:r=`Unrecognized key(s) in object: ${h_.joinValues(e.keys,", ")}`;break;case g_.invalid_union:r="Invalid input";break;case g_.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${h_.joinValues(e.options)}`;break;case g_.invalid_enum_value:r=`Invalid enum value. Expected ${h_.joinValues(e.options)}, received '${e.received}'`;break;case g_.invalid_arguments:r="Invalid function arguments";break;case g_.invalid_return_type:r="Invalid function return type";break;case g_.invalid_date:r="Invalid date";break;case g_.invalid_string:"object"===typeof e.validation?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,"number"===typeof e.validation.position&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:h_.assertNever(e.validation):r="regex"!==e.validation?`Invalid ${e.validation}`:"Invalid";break;case g_.too_small:r="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:"date"===e.type?`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:"Invalid input";break;case g_.too_big:r="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"bigint"===e.type?`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"date"===e.type?`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:"Invalid input";break;case g_.custom:r="Invalid input";break;case g_.invalid_intersection_types:r="Intersection results could not be merged";break;case g_.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case g_.not_finite:r="Number must be finite";break;default:r=t.defaultError,h_.assertNever(e)}return{message:r}};let b_=y_;function w_(){return b_}const x_=e=>{const{data:t,path:r,errorMaps:n,issueData:i}=e,o=[...r,...i.path||[]],a={...i,path:o};let s="";const c=n.filter((e=>!!e)).slice().reverse();for(const l of c)s=l(a,{data:t,defaultError:s}).message;return{...i,path:o,message:i.message||s}};function __(e,t){const r=x_({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,w_(),y_].filter((e=>!!e))});e.common.issues.push(r)}class k_{constructor(){this.value="valid"}dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(e,t){const r=[];for(const n of t){if("aborted"===n.status)return S_;"dirty"===n.status&&e.dirty(),r.push(n.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,t){const r=[];for(const n of t)r.push({key:await n.key,value:await n.value});return k_.mergeObjectSync(e,r)}static mergeObjectSync(e,t){const r={};for(const n of t){const{key:t,value:i}=n;if("aborted"===t.status)return S_;if("aborted"===i.status)return S_;"dirty"===t.status&&e.dirty(),"dirty"===i.status&&e.dirty(),"__proto__"===t.value||"undefined"===typeof i.value&&!n.alwaysSet||(r[t.value]=i.value)}return{status:e.value,value:r}}}const S_=Object.freeze({status:"aborted"}),E_=e=>({status:"dirty",value:e}),A_=e=>({status:"valid",value:e}),P_=e=>"aborted"===e.status,O_=e=>"dirty"===e.status,T_=e=>"valid"===e.status,C_=e=>"undefined"!==typeof Promise&&e instanceof Promise;var j_;!function(e){e.errToObj=e=>"string"===typeof e?{message:e}:e||{},e.toString=e=>"string"===typeof e?e:null===e||void 0===e?void 0:e.message}(j_||(j_={}));class R_{constructor(e,t,r,n){this._cachedPath=[],this.parent=e,this.data=t,this._path=r,this._key=n}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const I_=(e,t)=>{if(T_(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new v_(e.common.issues);return this._error=t,this._error}}};function M_(e){if(!e)return{};const{errorMap:t,invalid_type_error:r,required_error:n,description:i}=e;if(t&&(r||n))throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');if(t)return{errorMap:t,description:i};return{errorMap:(e,t)=>"invalid_type"!==e.code?{message:t.defaultError}:"undefined"===typeof t.data?{message:null!==n&&void 0!==n?n:t.defaultError}:{message:null!==r&&void 0!==r?r:t.defaultError},description:i}}class L_{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return m_(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:m_(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new k_,ctx:{common:e.parent.common,data:e.data,parsedType:m_(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(C_(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const r=this.safeParse(e,t);if(r.success)return r.data;throw r.error}safeParse(e,t){var r;const n={common:{issues:[],async:null!==(r=null===t||void 0===t?void 0:t.async)&&void 0!==r&&r,contextualErrorMap:null===t||void 0===t?void 0:t.errorMap},path:(null===t||void 0===t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:m_(e)},i=this._parseSync({data:e,path:n.path,parent:n});return I_(n,i)}async parseAsync(e,t){const r=await this.safeParseAsync(e,t);if(r.success)return r.data;throw r.error}async safeParseAsync(e,t){const r={common:{issues:[],contextualErrorMap:null===t||void 0===t?void 0:t.errorMap,async:!0},path:(null===t||void 0===t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:m_(e)},n=this._parse({data:e,path:r.path,parent:r}),i=await(C_(n)?n:Promise.resolve(n));return I_(r,i)}refine(e,t){const r=e=>"string"===typeof t||"undefined"===typeof t?{message:t}:"function"===typeof t?t(e):t;return this._refinement(((t,n)=>{const i=e(t),o=()=>n.addIssue({code:g_.custom,...r(t)});return"undefined"!==typeof Promise&&i instanceof Promise?i.then((e=>!!e||(o(),!1))):!!i||(o(),!1)}))}refinement(e,t){return this._refinement(((r,n)=>!!e(r)||(n.addIssue("function"===typeof t?t(r,n):t),!1)))}_refinement(e){return new kk({schema:this,typeName:Lk.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return Sk.create(this,this._def)}nullable(){return Ek.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return ik.create(this,this._def)}promise(){return _k.create(this,this._def)}or(e){return sk.create([this,e],this._def)}and(e){return dk.create(this,e,this._def)}transform(e){return new kk({...M_(this._def),schema:this,typeName:Lk.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t="function"===typeof e?e:()=>e;return new Ak({...M_(this._def),innerType:this,defaultValue:t,typeName:Lk.ZodDefault})}brand(){return new Ck({typeName:Lk.ZodBranded,type:this,...M_(this._def)})}catch(e){const t="function"===typeof e?e:()=>e;return new Pk({...M_(this._def),innerType:this,catchValue:t,typeName:Lk.ZodCatch})}describe(e){return new(0,this.constructor)({...this._def,description:e})}pipe(e){return jk.create(this,e)}readonly(){return Rk.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const N_=/^c[^\s-]{8,}$/i,D_=/^[a-z][a-z0-9]*$/,z_=/^[0-9A-HJKMNP-TV-Z]{26}$/,B_=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,F_=/^(?!\.)(?!.*\.\.)([A-Z0-9_+-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i;let U_;const $_=/^(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))$/,H_=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/;function V_(e,t){return!("v4"!==t&&t||!$_.test(e))||!("v6"!==t&&t||!H_.test(e))}class q_ extends L_{_parse(e){this._def.coerce&&(e.data=String(e.data));if(this._getType(e)!==p_.string){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.string,received:t.parsedType}),S_}const t=new k_;let r;for(const i of this._def.checks)if("min"===i.kind)e.data.lengthi.value&&(r=this._getOrReturnCtx(e,r),__(r,{code:g_.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),t.dirty());else if("length"===i.kind){const n=e.data.length>i.value,o=e.data.lengthe.test(t)),{validation:t,code:g_.invalid_string,...j_.errToObj(r)})}_addCheck(e){return new q_({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...j_.errToObj(e)})}url(e){return this._addCheck({kind:"url",...j_.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...j_.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...j_.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...j_.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...j_.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...j_.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...j_.errToObj(e)})}datetime(e){var t;return"string"===typeof e?this._addCheck({kind:"datetime",precision:null,offset:!1,message:e}):this._addCheck({kind:"datetime",precision:"undefined"===typeof(null===e||void 0===e?void 0:e.precision)?null:null===e||void 0===e?void 0:e.precision,offset:null!==(t=null===e||void 0===e?void 0:e.offset)&&void 0!==t&&t,...j_.errToObj(null===e||void 0===e?void 0:e.message)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...j_.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:null===t||void 0===t?void 0:t.position,...j_.errToObj(null===t||void 0===t?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...j_.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...j_.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...j_.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...j_.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...j_.errToObj(t)})}nonempty(e){return this.min(1,j_.errToObj(e))}trim(){return new q_({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new q_({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new q_({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((e=>"datetime"===e.kind))}get isEmail(){return!!this._def.checks.find((e=>"email"===e.kind))}get isURL(){return!!this._def.checks.find((e=>"url"===e.kind))}get isEmoji(){return!!this._def.checks.find((e=>"emoji"===e.kind))}get isUUID(){return!!this._def.checks.find((e=>"uuid"===e.kind))}get isCUID(){return!!this._def.checks.find((e=>"cuid"===e.kind))}get isCUID2(){return!!this._def.checks.find((e=>"cuid2"===e.kind))}get isULID(){return!!this._def.checks.find((e=>"ulid"===e.kind))}get isIP(){return!!this._def.checks.find((e=>"ip"===e.kind))}get minLength(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.valuen?r:n;return parseInt(e.toFixed(i).replace(".",""))%parseInt(t.toFixed(i).replace(".",""))/Math.pow(10,i)}q_.create=e=>{var t;return new q_({checks:[],typeName:Lk.ZodString,coerce:null!==(t=null===e||void 0===e?void 0:e.coerce)&&void 0!==t&&t,...M_(e)})};class W_ extends L_{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){this._def.coerce&&(e.data=Number(e.data));if(this._getType(e)!==p_.number){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.number,received:t.parsedType}),S_}let t;const r=new k_;for(const n of this._def.checks)if("int"===n.kind)h_.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),__(t,{code:g_.invalid_type,expected:"integer",received:"float",message:n.message}),r.dirty());else if("min"===n.kind){(n.inclusive?e.datan.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),__(t,{code:g_.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),r.dirty())}else"multipleOf"===n.kind?0!==K_(e.data,n.value)&&(t=this._getOrReturnCtx(e,t),__(t,{code:g_.not_multiple_of,multipleOf:n.value,message:n.message}),r.dirty()):"finite"===n.kind?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),__(t,{code:g_.not_finite,message:n.message}),r.dirty()):h_.assertNever(n);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,j_.toString(t))}gt(e,t){return this.setLimit("min",e,!1,j_.toString(t))}lte(e,t){return this.setLimit("max",e,!0,j_.toString(t))}lt(e,t){return this.setLimit("max",e,!1,j_.toString(t))}setLimit(e,t,r,n){return new W_({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:j_.toString(n)}]})}_addCheck(e){return new W_({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:j_.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:j_.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:j_.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:j_.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:j_.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:j_.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:j_.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:j_.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:j_.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value"int"===e.kind||"multipleOf"===e.kind&&h_.isInteger(e.value)))}get isFinite(){let e=null,t=null;for(const r of this._def.checks){if("finite"===r.kind||"int"===r.kind||"multipleOf"===r.kind)return!0;"min"===r.kind?(null===t||r.value>t)&&(t=r.value):"max"===r.kind&&(null===e||r.valuenew W_({checks:[],typeName:Lk.ZodNumber,coerce:(null===e||void 0===e?void 0:e.coerce)||!1,...M_(e)});class G_ extends L_{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){this._def.coerce&&(e.data=BigInt(e.data));if(this._getType(e)!==p_.bigint){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.bigint,received:t.parsedType}),S_}let t;const r=new k_;for(const n of this._def.checks)if("min"===n.kind){(n.inclusive?e.datan.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),__(t,{code:g_.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),r.dirty())}else"multipleOf"===n.kind?e.data%n.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),__(t,{code:g_.not_multiple_of,multipleOf:n.value,message:n.message}),r.dirty()):h_.assertNever(n);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,j_.toString(t))}gt(e,t){return this.setLimit("min",e,!1,j_.toString(t))}lte(e,t){return this.setLimit("max",e,!0,j_.toString(t))}lt(e,t){return this.setLimit("max",e,!1,j_.toString(t))}setLimit(e,t,r,n){return new G_({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:j_.toString(n)}]})}_addCheck(e){return new G_({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:j_.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:j_.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:j_.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:j_.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:j_.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value{var t;return new G_({checks:[],typeName:Lk.ZodBigInt,coerce:null!==(t=null===e||void 0===e?void 0:e.coerce)&&void 0!==t&&t,...M_(e)})};class Z_ extends L_{_parse(e){this._def.coerce&&(e.data=Boolean(e.data));if(this._getType(e)!==p_.boolean){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.boolean,received:t.parsedType}),S_}return A_(e.data)}}Z_.create=e=>new Z_({typeName:Lk.ZodBoolean,coerce:(null===e||void 0===e?void 0:e.coerce)||!1,...M_(e)});class Y_ extends L_{_parse(e){this._def.coerce&&(e.data=new Date(e.data));if(this._getType(e)!==p_.date){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.date,received:t.parsedType}),S_}if(isNaN(e.data.getTime())){return __(this._getOrReturnCtx(e),{code:g_.invalid_date}),S_}const t=new k_;let r;for(const n of this._def.checks)"min"===n.kind?e.data.getTime()n.value&&(r=this._getOrReturnCtx(e,r),__(r,{code:g_.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),t.dirty()):h_.assertNever(n);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new Y_({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:j_.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:j_.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return null!=e?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.valuenew Y_({checks:[],coerce:(null===e||void 0===e?void 0:e.coerce)||!1,typeName:Lk.ZodDate,...M_(e)});class X_ extends L_{_parse(e){if(this._getType(e)!==p_.symbol){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.symbol,received:t.parsedType}),S_}return A_(e.data)}}X_.create=e=>new X_({typeName:Lk.ZodSymbol,...M_(e)});class J_ extends L_{_parse(e){if(this._getType(e)!==p_.undefined){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.undefined,received:t.parsedType}),S_}return A_(e.data)}}J_.create=e=>new J_({typeName:Lk.ZodUndefined,...M_(e)});class Q_ extends L_{_parse(e){if(this._getType(e)!==p_.null){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.null,received:t.parsedType}),S_}return A_(e.data)}}Q_.create=e=>new Q_({typeName:Lk.ZodNull,...M_(e)});class ek extends L_{constructor(){super(...arguments),this._any=!0}_parse(e){return A_(e.data)}}ek.create=e=>new ek({typeName:Lk.ZodAny,...M_(e)});class tk extends L_{constructor(){super(...arguments),this._unknown=!0}_parse(e){return A_(e.data)}}tk.create=e=>new tk({typeName:Lk.ZodUnknown,...M_(e)});class rk extends L_{_parse(e){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.never,received:t.parsedType}),S_}}rk.create=e=>new rk({typeName:Lk.ZodNever,...M_(e)});class nk extends L_{_parse(e){if(this._getType(e)!==p_.undefined){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.void,received:t.parsedType}),S_}return A_(e.data)}}nk.create=e=>new nk({typeName:Lk.ZodVoid,...M_(e)});class ik extends L_{_parse(e){const{ctx:t,status:r}=this._processInputParams(e),n=this._def;if(t.parsedType!==p_.array)return __(t,{code:g_.invalid_type,expected:p_.array,received:t.parsedType}),S_;if(null!==n.exactLength){const e=t.data.length>n.exactLength.value,i=t.data.lengthn.maxLength.value&&(__(t,{code:g_.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),r.dirty()),t.common.async)return Promise.all([...t.data].map(((e,r)=>n.type._parseAsync(new R_(t,e,t.path,r))))).then((e=>k_.mergeArray(r,e)));const i=[...t.data].map(((e,r)=>n.type._parseSync(new R_(t,e,t.path,r))));return k_.mergeArray(r,i)}get element(){return this._def.type}min(e,t){return new ik({...this._def,minLength:{value:e,message:j_.toString(t)}})}max(e,t){return new ik({...this._def,maxLength:{value:e,message:j_.toString(t)}})}length(e,t){return new ik({...this._def,exactLength:{value:e,message:j_.toString(t)}})}nonempty(e){return this.min(1,e)}}function ok(e){if(e instanceof ak){const t={};for(const r in e.shape){const n=e.shape[r];t[r]=Sk.create(ok(n))}return new ak({...e._def,shape:()=>t})}return e instanceof ik?new ik({...e._def,type:ok(e.element)}):e instanceof Sk?Sk.create(ok(e.unwrap())):e instanceof Ek?Ek.create(ok(e.unwrap())):e instanceof hk?hk.create(e.items.map((e=>ok(e)))):e}ik.create=(e,t)=>new ik({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Lk.ZodArray,...M_(t)});class ak extends L_{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(null!==this._cached)return this._cached;const e=this._def.shape(),t=h_.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==p_.object){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.object,received:t.parsedType}),S_}const{status:t,ctx:r}=this._processInputParams(e),{shape:n,keys:i}=this._getCached(),o=[];if(!(this._def.catchall instanceof rk&&"strip"===this._def.unknownKeys))for(const s in r.data)i.includes(s)||o.push(s);const a=[];for(const s of i){const e=n[s],t=r.data[s];a.push({key:{status:"valid",value:s},value:e._parse(new R_(r,t,r.path,s)),alwaysSet:s in r.data})}if(this._def.catchall instanceof rk){const e=this._def.unknownKeys;if("passthrough"===e)for(const t of o)a.push({key:{status:"valid",value:t},value:{status:"valid",value:r.data[t]}});else if("strict"===e)o.length>0&&(__(r,{code:g_.unrecognized_keys,keys:o}),t.dirty());else if("strip"!==e)throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const e=this._def.catchall;for(const t of o){const n=r.data[t];a.push({key:{status:"valid",value:t},value:e._parse(new R_(r,n,r.path,t)),alwaysSet:t in r.data})}}return r.common.async?Promise.resolve().then((async()=>{const e=[];for(const t of a){const r=await t.key;e.push({key:r,value:await t.value,alwaysSet:t.alwaysSet})}return e})).then((e=>k_.mergeObjectSync(t,e))):k_.mergeObjectSync(t,a)}get shape(){return this._def.shape()}strict(e){return j_.errToObj,new ak({...this._def,unknownKeys:"strict",...void 0!==e?{errorMap:(t,r)=>{var n,i,o,a;const s=null!==(o=null===(i=(n=this._def).errorMap)||void 0===i?void 0:i.call(n,t,r).message)&&void 0!==o?o:r.defaultError;return"unrecognized_keys"===t.code?{message:null!==(a=j_.errToObj(e).message)&&void 0!==a?a:s}:{message:s}}}:{}})}strip(){return new ak({...this._def,unknownKeys:"strip"})}passthrough(){return new ak({...this._def,unknownKeys:"passthrough"})}extend(e){return new ak({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new ak({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:Lk.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new ak({...this._def,catchall:e})}pick(e){const t={};return h_.objectKeys(e).forEach((r=>{e[r]&&this.shape[r]&&(t[r]=this.shape[r])})),new ak({...this._def,shape:()=>t})}omit(e){const t={};return h_.objectKeys(this.shape).forEach((r=>{e[r]||(t[r]=this.shape[r])})),new ak({...this._def,shape:()=>t})}deepPartial(){return ok(this)}partial(e){const t={};return h_.objectKeys(this.shape).forEach((r=>{const n=this.shape[r];e&&!e[r]?t[r]=n:t[r]=n.optional()})),new ak({...this._def,shape:()=>t})}required(e){const t={};return h_.objectKeys(this.shape).forEach((r=>{if(e&&!e[r])t[r]=this.shape[r];else{let e=this.shape[r];for(;e instanceof Sk;)e=e._def.innerType;t[r]=e}})),new ak({...this._def,shape:()=>t})}keyof(){return bk(h_.objectKeys(this.shape))}}ak.create=(e,t)=>new ak({shape:()=>e,unknownKeys:"strip",catchall:rk.create(),typeName:Lk.ZodObject,...M_(t)}),ak.strictCreate=(e,t)=>new ak({shape:()=>e,unknownKeys:"strict",catchall:rk.create(),typeName:Lk.ZodObject,...M_(t)}),ak.lazycreate=(e,t)=>new ak({shape:e,unknownKeys:"strip",catchall:rk.create(),typeName:Lk.ZodObject,...M_(t)});class sk extends L_{_parse(e){const{ctx:t}=this._processInputParams(e),r=this._def.options;if(t.common.async)return Promise.all(r.map((async e=>{const r={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:r}),ctx:r}}))).then((function(e){for(const t of e)if("valid"===t.result.status)return t.result;for(const n of e)if("dirty"===n.result.status)return t.common.issues.push(...n.ctx.common.issues),n.result;const r=e.map((e=>new v_(e.ctx.common.issues)));return __(t,{code:g_.invalid_union,unionErrors:r}),S_}));{let e;const n=[];for(const o of r){const r={...t,common:{...t.common,issues:[]},parent:null},i=o._parseSync({data:t.data,path:t.path,parent:r});if("valid"===i.status)return i;"dirty"!==i.status||e||(e={result:i,ctx:r}),r.common.issues.length&&n.push(r.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;const i=n.map((e=>new v_(e)));return __(t,{code:g_.invalid_union,unionErrors:i}),S_}}get options(){return this._def.options}}sk.create=(e,t)=>new sk({options:e,typeName:Lk.ZodUnion,...M_(t)});const ck=e=>e instanceof vk?ck(e.schema):e instanceof kk?ck(e.innerType()):e instanceof yk?[e.value]:e instanceof wk?e.options:e instanceof xk?Object.keys(e.enum):e instanceof Ak?ck(e._def.innerType):e instanceof J_?[void 0]:e instanceof Q_?[null]:null;class lk extends L_{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==p_.object)return __(t,{code:g_.invalid_type,expected:p_.object,received:t.parsedType}),S_;const r=this.discriminator,n=t.data[r],i=this.optionsMap.get(n);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(__(t,{code:g_.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),S_)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,r){const n=new Map;for(const i of t){const t=ck(i.shape[e]);if(!t)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const r of t){if(n.has(r))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(r)}`);n.set(r,i)}}return new lk({typeName:Lk.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:n,...M_(r)})}}function uk(e,t){const r=m_(e),n=m_(t);if(e===t)return{valid:!0,data:e};if(r===p_.object&&n===p_.object){const r=h_.objectKeys(t),n=h_.objectKeys(e).filter((e=>-1!==r.indexOf(e))),i={...e,...t};for(const o of n){const r=uk(e[o],t[o]);if(!r.valid)return{valid:!1};i[o]=r.data}return{valid:!0,data:i}}if(r===p_.array&&n===p_.array){if(e.length!==t.length)return{valid:!1};const r=[];for(let n=0;n{if(P_(e)||P_(n))return S_;const i=uk(e.value,n.value);return i.valid?((O_(e)||O_(n))&&t.dirty(),{status:t.value,value:i.data}):(__(r,{code:g_.invalid_intersection_types}),S_)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then((([e,t])=>n(e,t))):n(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}dk.create=(e,t,r)=>new dk({left:e,right:t,typeName:Lk.ZodIntersection,...M_(r)});class hk extends L_{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==p_.array)return __(r,{code:g_.invalid_type,expected:p_.array,received:r.parsedType}),S_;if(r.data.lengththis._def.items.length&&(__(r,{code:g_.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const n=[...r.data].map(((e,t)=>{const n=this._def.items[t]||this._def.rest;return n?n._parse(new R_(r,e,r.path,t)):null})).filter((e=>!!e));return r.common.async?Promise.all(n).then((e=>k_.mergeArray(t,e))):k_.mergeArray(t,n)}get items(){return this._def.items}rest(e){return new hk({...this._def,rest:e})}}hk.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new hk({items:e,typeName:Lk.ZodTuple,rest:null,...M_(t)})};class fk extends L_{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==p_.object)return __(r,{code:g_.invalid_type,expected:p_.object,received:r.parsedType}),S_;const n=[],i=this._def.keyType,o=this._def.valueType;for(const a in r.data)n.push({key:i._parse(new R_(r,a,r.path,a)),value:o._parse(new R_(r,r.data[a],r.path,a))});return r.common.async?k_.mergeObjectAsync(t,n):k_.mergeObjectSync(t,n)}get element(){return this._def.valueType}static create(e,t,r){return new fk(t instanceof L_?{keyType:e,valueType:t,typeName:Lk.ZodRecord,...M_(r)}:{keyType:q_.create(),valueType:e,typeName:Lk.ZodRecord,...M_(t)})}}class pk extends L_{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==p_.map)return __(r,{code:g_.invalid_type,expected:p_.map,received:r.parsedType}),S_;const n=this._def.keyType,i=this._def.valueType,o=[...r.data.entries()].map((([e,t],o)=>({key:n._parse(new R_(r,e,r.path,[o,"key"])),value:i._parse(new R_(r,t,r.path,[o,"value"]))})));if(r.common.async){const e=new Map;return Promise.resolve().then((async()=>{for(const r of o){const n=await r.key,i=await r.value;if("aborted"===n.status||"aborted"===i.status)return S_;"dirty"!==n.status&&"dirty"!==i.status||t.dirty(),e.set(n.value,i.value)}return{status:t.value,value:e}}))}{const e=new Map;for(const r of o){const n=r.key,i=r.value;if("aborted"===n.status||"aborted"===i.status)return S_;"dirty"!==n.status&&"dirty"!==i.status||t.dirty(),e.set(n.value,i.value)}return{status:t.value,value:e}}}}pk.create=(e,t,r)=>new pk({valueType:t,keyType:e,typeName:Lk.ZodMap,...M_(r)});class mk extends L_{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==p_.set)return __(r,{code:g_.invalid_type,expected:p_.set,received:r.parsedType}),S_;const n=this._def;null!==n.minSize&&r.data.sizen.maxSize.value&&(__(r,{code:g_.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),t.dirty());const i=this._def.valueType;function o(e){const r=new Set;for(const n of e){if("aborted"===n.status)return S_;"dirty"===n.status&&t.dirty(),r.add(n.value)}return{status:t.value,value:r}}const a=[...r.data.values()].map(((e,t)=>i._parse(new R_(r,e,r.path,t))));return r.common.async?Promise.all(a).then((e=>o(e))):o(a)}min(e,t){return new mk({...this._def,minSize:{value:e,message:j_.toString(t)}})}max(e,t){return new mk({...this._def,maxSize:{value:e,message:j_.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}mk.create=(e,t)=>new mk({valueType:e,minSize:null,maxSize:null,typeName:Lk.ZodSet,...M_(t)});class gk extends L_{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==p_.function)return __(t,{code:g_.invalid_type,expected:p_.function,received:t.parsedType}),S_;function r(e,r){return x_({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,w_(),y_].filter((e=>!!e)),issueData:{code:g_.invalid_arguments,argumentsError:r}})}function n(e,r){return x_({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,w_(),y_].filter((e=>!!e)),issueData:{code:g_.invalid_return_type,returnTypeError:r}})}const i={errorMap:t.common.contextualErrorMap},o=t.data;if(this._def.returns instanceof _k){const e=this;return A_((async function(...t){const a=new v_([]),s=await e._def.args.parseAsync(t,i).catch((e=>{throw a.addIssue(r(t,e)),a})),c=await Reflect.apply(o,this,s),l=await e._def.returns._def.type.parseAsync(c,i).catch((e=>{throw a.addIssue(n(c,e)),a}));return l}))}{const e=this;return A_((function(...t){const a=e._def.args.safeParse(t,i);if(!a.success)throw new v_([r(t,a.error)]);const s=Reflect.apply(o,this,a.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new v_([n(s,c.error)]);return c.data}))}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new gk({...this._def,args:hk.create(e).rest(tk.create())})}returns(e){return new gk({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,r){return new gk({args:e||hk.create([]).rest(tk.create()),returns:t||tk.create(),typeName:Lk.ZodFunction,...M_(r)})}}class vk extends L_{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}vk.create=(e,t)=>new vk({getter:e,typeName:Lk.ZodLazy,...M_(t)});class yk extends L_{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return __(t,{received:t.data,code:g_.invalid_literal,expected:this._def.value}),S_}return{status:"valid",value:e.data}}get value(){return this._def.value}}function bk(e,t){return new wk({values:e,typeName:Lk.ZodEnum,...M_(t)})}yk.create=(e,t)=>new yk({value:e,typeName:Lk.ZodLiteral,...M_(t)});class wk extends L_{_parse(e){if("string"!==typeof e.data){const t=this._getOrReturnCtx(e),r=this._def.values;return __(t,{expected:h_.joinValues(r),received:t.parsedType,code:g_.invalid_type}),S_}if(-1===this._def.values.indexOf(e.data)){const t=this._getOrReturnCtx(e),r=this._def.values;return __(t,{received:t.data,code:g_.invalid_enum_value,options:r}),S_}return A_(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e){return wk.create(e)}exclude(e){return wk.create(this.options.filter((t=>!e.includes(t))))}}wk.create=bk;class xk extends L_{_parse(e){const t=h_.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==p_.string&&r.parsedType!==p_.number){const e=h_.objectValues(t);return __(r,{expected:h_.joinValues(e),received:r.parsedType,code:g_.invalid_type}),S_}if(-1===t.indexOf(e.data)){const e=h_.objectValues(t);return __(r,{received:r.data,code:g_.invalid_enum_value,options:e}),S_}return A_(e.data)}get enum(){return this._def.values}}xk.create=(e,t)=>new xk({values:e,typeName:Lk.ZodNativeEnum,...M_(t)});class _k extends L_{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==p_.promise&&!1===t.common.async)return __(t,{code:g_.invalid_type,expected:p_.promise,received:t.parsedType}),S_;const r=t.parsedType===p_.promise?t.data:Promise.resolve(t.data);return A_(r.then((e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap}))))}}_k.create=(e,t)=>new _k({type:e,typeName:Lk.ZodPromise,...M_(t)});class kk extends L_{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Lk.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:r}=this._processInputParams(e),n=this._def.effect||null,i={addIssue:e=>{__(r,e),e.fatal?t.abort():t.dirty()},get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),"preprocess"===n.type){const e=n.transform(r.data,i);return r.common.issues.length?{status:"dirty",value:r.data}:r.common.async?Promise.resolve(e).then((e=>this._def.schema._parseAsync({data:e,path:r.path,parent:r}))):this._def.schema._parseSync({data:e,path:r.path,parent:r})}if("refinement"===n.type){const e=e=>{const t=n.refinement(e,i);if(r.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1===r.common.async){const n=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return"aborted"===n.status?S_:("dirty"===n.status&&t.dirty(),e(n.value),{status:t.value,value:n.value})}return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then((r=>"aborted"===r.status?S_:("dirty"===r.status&&t.dirty(),e(r.value).then((()=>({status:t.value,value:r.value}))))))}if("transform"===n.type){if(!1===r.common.async){const e=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!T_(e))return e;const o=n.transform(e.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then((e=>T_(e)?Promise.resolve(n.transform(e.value,i)).then((e=>({status:t.value,value:e}))):e))}h_.assertNever(n)}}kk.create=(e,t,r)=>new kk({schema:e,typeName:Lk.ZodEffects,effect:t,...M_(r)}),kk.createWithPreprocess=(e,t,r)=>new kk({schema:t,effect:{type:"preprocess",transform:e},typeName:Lk.ZodEffects,...M_(r)});class Sk extends L_{_parse(e){return this._getType(e)===p_.undefined?A_(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Sk.create=(e,t)=>new Sk({innerType:e,typeName:Lk.ZodOptional,...M_(t)});class Ek extends L_{_parse(e){return this._getType(e)===p_.null?A_(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Ek.create=(e,t)=>new Ek({innerType:e,typeName:Lk.ZodNullable,...M_(t)});class Ak extends L_{_parse(e){const{ctx:t}=this._processInputParams(e);let r=t.data;return t.parsedType===p_.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}Ak.create=(e,t)=>new Ak({innerType:e,typeName:Lk.ZodDefault,defaultValue:"function"===typeof t.default?t.default:()=>t.default,...M_(t)});class Pk extends L_{_parse(e){const{ctx:t}=this._processInputParams(e),r={...t,common:{...t.common,issues:[]}},n=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return C_(n)?n.then((e=>({status:"valid",value:"valid"===e.status?e.value:this._def.catchValue({get error(){return new v_(r.common.issues)},input:r.data})}))):{status:"valid",value:"valid"===n.status?n.value:this._def.catchValue({get error(){return new v_(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}Pk.create=(e,t)=>new Pk({innerType:e,typeName:Lk.ZodCatch,catchValue:"function"===typeof t.catch?t.catch:()=>t.catch,...M_(t)});class Ok extends L_{_parse(e){if(this._getType(e)!==p_.nan){const t=this._getOrReturnCtx(e);return __(t,{code:g_.invalid_type,expected:p_.nan,received:t.parsedType}),S_}return{status:"valid",value:e.data}}}Ok.create=e=>new Ok({typeName:Lk.ZodNaN,...M_(e)});const Tk=Symbol("zod_brand");class Ck extends L_{_parse(e){const{ctx:t}=this._processInputParams(e),r=t.data;return this._def.type._parse({data:r,path:t.path,parent:t})}unwrap(){return this._def.type}}class jk extends L_{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.common.async){return(async()=>{const e=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return"aborted"===e.status?S_:"dirty"===e.status?(t.dirty(),E_(e.value)):this._def.out._parseAsync({data:e.value,path:r.path,parent:r})})()}{const e=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return"aborted"===e.status?S_:"dirty"===e.status?(t.dirty(),{status:"dirty",value:e.value}):this._def.out._parseSync({data:e.value,path:r.path,parent:r})}}static create(e,t){return new jk({in:e,out:t,typeName:Lk.ZodPipeline})}}class Rk extends L_{_parse(e){const t=this._def.innerType._parse(e);return T_(t)&&(t.value=Object.freeze(t.value)),t}}Rk.create=(e,t)=>new Rk({innerType:e,typeName:Lk.ZodReadonly,...M_(t)});const Ik=(e,t={},r)=>e?ek.create().superRefine(((n,i)=>{var o,a;if(!e(n)){const e="function"===typeof t?t(n):"string"===typeof t?{message:t}:t,s=null===(a=null!==(o=e.fatal)&&void 0!==o?o:r)||void 0===a||a,c="string"===typeof e?{message:e}:e;i.addIssue({code:"custom",...c,fatal:s})}})):ek.create(),Mk={object:ak.lazycreate};var Lk;!function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"}(Lk||(Lk={}));const Nk=q_.create,Dk=W_.create,zk=Ok.create,Bk=G_.create,Fk=Z_.create,Uk=Y_.create,$k=X_.create,Hk=J_.create,Vk=Q_.create,qk=ek.create,Kk=tk.create,Wk=rk.create,Gk=nk.create,Zk=ik.create,Yk=ak.create,Xk=ak.strictCreate,Jk=sk.create,Qk=lk.create,eS=dk.create,tS=hk.create,rS=fk.create,nS=pk.create,iS=mk.create,oS=gk.create,aS=vk.create,sS=yk.create,cS=wk.create,lS=xk.create,uS=_k.create,dS=kk.create,hS=Sk.create,fS=Ek.create,pS=kk.createWithPreprocess,mS=jk.create,gS={string:e=>q_.create({...e,coerce:!0}),number:e=>W_.create({...e,coerce:!0}),boolean:e=>Z_.create({...e,coerce:!0}),bigint:e=>G_.create({...e,coerce:!0}),date:e=>Y_.create({...e,coerce:!0})},vS=S_;var yS=Object.freeze({__proto__:null,defaultErrorMap:y_,setErrorMap:function(e){b_=e},getErrorMap:w_,makeIssue:x_,EMPTY_PATH:[],addIssueToContext:__,ParseStatus:k_,INVALID:S_,DIRTY:E_,OK:A_,isAborted:P_,isDirty:O_,isValid:T_,isAsync:C_,get util(){return h_},get objectUtil(){return f_},ZodParsedType:p_,getParsedType:m_,ZodType:L_,ZodString:q_,ZodNumber:W_,ZodBigInt:G_,ZodBoolean:Z_,ZodDate:Y_,ZodSymbol:X_,ZodUndefined:J_,ZodNull:Q_,ZodAny:ek,ZodUnknown:tk,ZodNever:rk,ZodVoid:nk,ZodArray:ik,ZodObject:ak,ZodUnion:sk,ZodDiscriminatedUnion:lk,ZodIntersection:dk,ZodTuple:hk,ZodRecord:fk,ZodMap:pk,ZodSet:mk,ZodFunction:gk,ZodLazy:vk,ZodLiteral:yk,ZodEnum:wk,ZodNativeEnum:xk,ZodPromise:_k,ZodEffects:kk,ZodTransformer:kk,ZodOptional:Sk,ZodNullable:Ek,ZodDefault:Ak,ZodCatch:Pk,ZodNaN:Ok,BRAND:Tk,ZodBranded:Ck,ZodPipeline:jk,ZodReadonly:Rk,custom:Ik,Schema:L_,ZodSchema:L_,late:Mk,get ZodFirstPartyTypeKind(){return Lk},coerce:gS,any:qk,array:Zk,bigint:Bk,boolean:Fk,date:Uk,discriminatedUnion:Qk,effect:dS,enum:cS,function:oS,instanceof:(e,t={message:`Input not instance of ${e.name}`})=>Ik((t=>t instanceof e),t),intersection:eS,lazy:aS,literal:sS,map:nS,nan:zk,nativeEnum:lS,never:Wk,null:Vk,nullable:fS,number:Dk,object:Yk,oboolean:()=>Fk().optional(),onumber:()=>Dk().optional(),optional:hS,ostring:()=>Nk().optional(),pipeline:mS,preprocess:pS,promise:uS,record:rS,set:iS,strictObject:Xk,string:Nk,symbol:$k,transformer:dS,tuple:tS,undefined:Hk,union:Jk,unknown:Kk,void:Gk,NEVER:vS,ZodIssueCode:g_,quotelessJson:e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),ZodError:v_}),bS=r(9673),wS=r(5166),xS=r(1442),_S=r(7283),kS=r.n(_S),SS=r(2946),ES=r.n(SS);class AS extends Error{}class PS extends AS{}class OS extends AS{}class TS extends AS{}class CS extends AS{}class jS extends AS{}class RS extends PS{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidAddressError",this.message=`Invalid address "${e}"`,this.message+=t?` ${t}.`:"."}}class IS extends PS{constructor(e,t){super(),this.blockHash=e,this.errorDetail=t,this.name="InvalidBlockHashError",this.message=`Invalid block hash "${e}"`,this.message+=t?` ${t}.`:"."}}class MS extends PS{constructor(e){super(),this.amount=e,this.name="InvalidAmountError",this.message=`Invalid amount "${e}"`}}class LS extends PS{constructor(e,t){super(),this.derivationPath=e,this.errorDetail=t,this.name="InvalidDerivationPathError",this.message=`Invalid derivation path "${e}"`,this.message+=t?` ${t}.`:"."}}class NS extends PS{constructor(e,t){super(),this.hexString=e,this.errorDetail=t,this.name="InvalidHexStringError",this.message=`Invalid hex string "${e}"`,this.message+=t?` ${t}.`:"."}}class DS extends PS{constructor(e,t){super(),this.msg=e,this.errorDetail=t,this.name="InvalidMessageError",this.message=`Invalid message "${e}"`,this.message+=t?` ${t}.`:"."}}class zS extends PS{constructor(e,t,r,n){super(),this.viewName=e,this.sigs=t,this.args=r,this.cause=n,this.name="InvalidViewParameterError",this.message=`Invalid view arguments ${JSON.stringify(r)} received for name "${e}" expecting one of the following signatures ${JSON.stringify(t)}.`}}class BS extends PS{constructor(e){super(),this.errorDetail=e,this.name="InvalidKeyError",this.message="Invalid private key",this.message+=e?` ${e}.`:"."}}class FS extends PS{constructor(e,t){super(),this.publicKey=e,this.errorDetail=t,this.name="InvalidPublicKeyError",this.message=`Invalid public key "${e}"`,this.message+=t?` ${t}.`:"."}}class US extends PS{constructor(e,t){super(),this.contractAddress=e,this.errorDetail=t,this.name="InvalidContractAddressError",this.message=`Invalid contract address "${e}"`,this.message+=t?` ${t}.`:"."}}class $S extends PS{constructor(e,t){super(),this.chainId=e,this.errorDetail=t,this.name="InvalidChainIdError",this.message=`Invalid chain id "${e}"`,this.message+=t?` ${t}.`:"."}}class HS extends PS{constructor(e,t){super(),this.keyHash=e,this.errorDetail=t,this.name="InvalidKeyHashError",this.message=`Invalid public key hash "${e}"`,this.message+=t?` ${t}.`:"."}}class VS extends PS{constructor(e,t){super(),this.operationHash=e,this.errorDetail=t,this.name="InvalidOperationHashError",this.message=`Invalid operation hash "${e}"`,this.message+=t?` ${t}.`:"."}}class qS extends PS{constructor(e,t){super(),this.operationKind=e,this.errorDetail=t,this.name="InvalidOperationKindError",this.message=`Invalid operation kind "${e}"`,this.message+=t?` ${t}.`:"."}}class KS extends CS{constructor(e){super(),this.message=e,this.name="DeprecationError"}}class WS extends CS{constructor(e){super(),this.message=e,this.name="ProhibitedActionError"}}class GS extends AS{constructor(e,t){super(),this.pkh=e,this.cause=t,this.name="PublicKeyNotFoundError",this.message=`Public key not found of this address "${e}" in either wallet or contract API.`}}var ZS,YS=r(6435),XS=r.n(YS),JS=r(5269),QS=r.n(JS);!function(e){e.TZ1="tz1",e.TZ2="tz2",e.TZ3="tz3",e.TZ4="tz4",e.KT="KT",e.KT1="KT1",e.EDSK2="edsk2",e.SPSK="spsk",e.P2SK="p2sk",e.EDPK="edpk",e.SPPK="sppk",e.P2PK="p2pk",e.BLPK="BLpk",e.EDESK="edesk",e.SPESK="spesk",e.P2ESK="p2esk",e.EDSK="edsk",e.EDSIG="edsig",e.SPSIG="spsig",e.P2SIG="p2sig",e.SIG="sig",e.NET="Net",e.NCE="nce",e.B="B",e.O="o",e.LO="Lo",e.LLO="LLo",e.P="P",e.CO="Co",e.ID="id",e.EXPR="expr",e.TZ="TZ",e.VH="vh",e.SASK="sask",e.ZET1="zet1",e.SR1="sr1",e.SRC1="src1"}(ZS||(ZS={}));const eE={[ZS.TZ1]:new Uint8Array([6,161,159]),[ZS.TZ2]:new Uint8Array([6,161,161]),[ZS.TZ3]:new Uint8Array([6,161,164]),[ZS.TZ4]:new Uint8Array([6,161,166]),[ZS.KT]:new Uint8Array([2,90,121]),[ZS.KT1]:new Uint8Array([2,90,121]),[ZS.EDSK]:new Uint8Array([43,246,78,7]),[ZS.EDSK2]:new Uint8Array([13,15,58,7]),[ZS.SPSK]:new Uint8Array([17,162,224,201]),[ZS.P2SK]:new Uint8Array([16,81,238,189]),[ZS.EDPK]:new Uint8Array([13,15,37,217]),[ZS.SPPK]:new Uint8Array([3,254,226,86]),[ZS.P2PK]:new Uint8Array([3,178,139,127]),[ZS.BLPK]:new Uint8Array([6,149,135,204]),[ZS.EDESK]:new Uint8Array([7,90,60,179,41]),[ZS.SPESK]:new Uint8Array([9,237,241,174,150]),[ZS.P2ESK]:new Uint8Array([9,48,57,115,171]),[ZS.EDSIG]:new Uint8Array([9,245,205,134,18]),[ZS.SPSIG]:new Uint8Array([13,115,101,19,63]),[ZS.P2SIG]:new Uint8Array([54,240,44,52]),[ZS.SIG]:new Uint8Array([4,130,43]),[ZS.NET]:new Uint8Array([87,82,0]),[ZS.NCE]:new Uint8Array([69,220,169]),[ZS.B]:new Uint8Array([1,52]),[ZS.O]:new Uint8Array([5,116]),[ZS.LO]:new Uint8Array([133,233]),[ZS.LLO]:new Uint8Array([29,159,109]),[ZS.P]:new Uint8Array([2,170]),[ZS.CO]:new Uint8Array([79,179]),[ZS.ID]:new Uint8Array([153,103]),[ZS.EXPR]:new Uint8Array([13,44,64,27]),[ZS.TZ]:new Uint8Array([2,90,121]),[ZS.VH]:new Uint8Array([1,106,242]),[ZS.SASK]:new Uint8Array([11,237,20,92]),[ZS.ZET1]:new Uint8Array([18,71,40,223]),[ZS.SR1]:new Uint8Array([6,124,117]),[ZS.SRC1]:new Uint8Array([17,165,134,138])},tE={[ZS.TZ1]:20,[ZS.TZ2]:20,[ZS.TZ3]:20,[ZS.TZ4]:20,[ZS.KT]:20,[ZS.KT1]:20,[ZS.EDPK]:32,[ZS.SPPK]:33,[ZS.P2PK]:33,[ZS.BLPK]:48,[ZS.EDSIG]:64,[ZS.SPSIG]:64,[ZS.P2SIG]:64,[ZS.SIG]:64,[ZS.NET]:4,[ZS.B]:32,[ZS.P]:32,[ZS.O]:32,[ZS.VH]:32,[ZS.SASK]:169,[ZS.ZET1]:43,[ZS.SR1]:20,[ZS.SRC1]:32};class rE extends CS{constructor(e,t){super(),this.value=e,this.desiredType=t,this.name="ValueConversionError",this.message=`Unable to convert ${e} to a ${t}`}}var nE;function iE(e){return"string"===typeof e&&e in eE}function oE(e,t){const r=new RegExp(`^(${t.join("|")})`).exec(e);if(!r||0===r.length)return nE.NO_PREFIX_MATCHED;const n=r[0];if(!iE(n))return nE.NO_PREFIX_MATCHED;e.includes("%")&&(e=e.split("%")[0]);if(!/^(KT1\w{33})$/.test(e)&&"KT1"===n)return nE.INVALID_CHECKSUM;let i=ES().decodeUnsafe(e);return i?(i=i.slice(eE[n].length),i.length!==tE[n]?nE.INVALID_LENGTH:nE.VALID):nE.INVALID_CHECKSUM}!function(e){e[e.NO_PREFIX_MATCHED=0]="NO_PREFIX_MATCHED",e[e.INVALID_CHECKSUM=1]="INVALID_CHECKSUM",e[e.INVALID_LENGTH=2]="INVALID_LENGTH",e[e.VALID=3]="VALID"}(nE||(nE={}));const aE=[ZS.TZ1,ZS.TZ2,ZS.TZ3,ZS.TZ4],sE=[ZS.KT1],cE=[ZS.EDSIG,ZS.P2SIG,ZS.SPSIG,ZS.SIG],lE=[ZS.EDPK,ZS.SPPK,ZS.P2PK,ZS.BLPK],uE=[ZS.O],dE=(ZS.P,[ZS.B]),hE=[ZS.SR1];function fE(e){return oE(e,[...aE,...sE,...hE])}function pE(e){return oE(e,[ZS.NET])}function mE(e){return oE(e,sE)}function gE(e){return oE(e,aE)}function vE(e){return oE(e,cE)}function yE(e){return oE(e,lE)}function bE(e){return oE(e,uE)}function wE(e){switch(e){case nE.NO_PREFIX_MATCHED:return"with unsupported prefix";case nE.INVALID_CHECKSUM:return"failed checksum";case nE.INVALID_LENGTH:return"with incorrect length";default:return""}}const xE=6,_E=3;function kE(e){switch(e){case"tz":return xE;case"mtz":return _E;default:return 0}}function SE(e="mutez",t="mutez",r){const n=new nw(r);return n.isNaN()?r:n.multipliedBy(Math.pow(10,kE(e))).dividedBy(Math.pow(10,kE(t)))}function EE(e,t){const r="string"===typeof e?Uint8Array.from(bS.Buffer.from(e,"hex")):e,n=new Uint8Array(t.length+r.length);return n.set(t),n.set(r,t.length),ES().encode(bS.Buffer.from(n.buffer))}const AE=(e,t)=>ES().decode(e).slice(t.length);function PE(e){if("0x"===e.substring(0,2)&&(e=e.slice(2)),"00"===e.substring(0,2)){const t={"0000":eE.tz1,"0001":eE.tz2,"0002":eE.tz3};return EE(e.substring(4),t[e.substring(0,4)])}return EE(e.substring(2,42),eE.KT)}function OE(e){if("0"===e[0]){const t={"00":new Uint8Array([6,161,159]),"01":new Uint8Array([6,161,161]),"02":new Uint8Array([6,161,164])};return EE(e.substring(2),t[e.substring(0,2)])}}const TE=e=>{if(e.length%2!==0)throw new NS(e,": Expecting even number of characters");const t=IE(e);if(!t.match(/^([\da-f]{2})*$/gi))throw new NS(e,": Only characters 0-9, a-f and A-F are expected. Optionally, it can be prefixed with '0x'");const r=new Uint8Array(t.length/2);let n=0;for(let i=0;i{const r=new Uint8Array(e.length+t.length);return r.set(e),r.set(t,e.length),r},jE=e=>{const t=[];return e.forEach((e=>{const r=`00${e.toString(16)}`.slice(-2);t.push(r)})),t.join("")};function RE(e){const t=IE(e);if(!t.match(/^(0x)?([\da-f]{2})*$/gi))throw new NS(e,": Expecting even number of characters: 0-9, a-z, A-Z, optionally prefixed with 0x");return bS.Buffer.from(t,"hex")}function IE(e){return e.startsWith("0x")?e.slice(2):e}const ME=yS.object({address:yS.string()}),LE=e=>{if(DE(e))return BE(e);if(zE(e))return FE(e);throw new Error(`Cannot parse address type: ${e}`)},NE=e=>fE(e)===nE.VALID,DE=e=>NE(e)&&e.match(/^KT1\w+/),zE=e=>NE(e)&&e.match(/^tz[1234]\w+/),BE=e=>{if(DE(e))return{type:"contract",pkh:e};throw new Error(`Invalid contract address: ${e}`)},FE=e=>{if(zE(e))return{type:"implicit",pkh:e};throw new Error(`Invalid implicit address: ${e}`)},UE=yS.object({standard:yS.string().regex(/^fa1\.2$/i),contract:ME}),$E=yS.object({standard:yS.string().regex(/^fa2$/i),tokenId:yS.string(),contract:ME}),HE=yS.object({id:yS.number(),standard:yS.string().regex(/^fa2$/i),tokenId:yS.string(),contract:ME,totalSupply:yS.string().optional(),metadata:yS.object({displayUri:yS.string(),decimals:yS.void().or(yS.string().regex(/^0$/))})}),VE=e=>{const t=e.metadata;if("fa1.2"===e.standard){const r=UE.safeParse(e);return r.success?{type:"fa1.2",metadata:t,contract:r.data.contract.address,tokenId:"0"}:(console.warn("Invalid FA1 token: "+JSON.stringify(e)),null)}const r=HE.safeParse(e);if(r.success)return{metadata:t,type:"nft",id:r.data.id,contract:r.data.contract.address,tokenId:r.data.tokenId,displayUri:r.data.metadata.displayUri,totalSupply:r.data.totalSupply};const n=$E.safeParse(e);return n.success?{type:"fa2",metadata:t,contract:n.data.contract.address,tokenId:n.data.tokenId}:(console.warn("Invalid FA2 token: "+JSON.stringify(e)),null)},qE=e=>`${e.contract}:${e.tokenId}`,KE=e=>WE(e)||(e=>{switch(e.type){case"fa1.2":return oA;case"fa2":return aA;case"nft":return sA}})(e),WE=e=>{var t;return null===(t=e.metadata)||void 0===t?void 0:t.name},GE=e=>ZE(e)||(e=>{switch(e.type){case"fa1.2":return cA;case"fa2":return lA;case"nft":return uA}})(e),ZE=e=>{var t;return null===(t=e.metadata)||void 0===t?void 0:t.symbol},YE=e=>{var t,r;return null!==(t=null===(r=e.metadata)||void 0===r?void 0:r.decimals)&&void 0!==t?t:dA},XE=(e,t)=>{const r=new nw(t),n=YE(e);return r.multipliedBy(new nw(10).exponentiatedBy(n)).toFixed()},JE=(e,t=dA)=>{const r=nw(e).dividedBy(nw(10).pow(t));try{return new Intl.NumberFormat("en-US",{minimumFractionDigits:Number(t),maximumFractionDigits:Number(t)}).format(r.toNumber())}catch(n){return console.warn(`Can't format token amount with decimals = ${t}`),JE(e,"0")}},QE=(e,t,r)=>{var n;if("nft"===t.type)return e;const i=GE(t),o=null===(n=t.metadata)||void 0===n?void 0:n.decimals,a=null!==r&&void 0!==r&&r.showSymbol?` ${i}`:"";return`${JE(e,o)}${a}`},eA=e=>e.metadata.artifactUri||e.displayUri,tA=e=>e.metadata.thumbnailUri||e.displayUri,rA=e=>{var t,r;return null===(t=e.metadata.formats)||void 0===t||null===(r=t.find((t=>t.uri===eA(e))))||void 0===r?void 0:r.mimeType},nA=(e,t)=>`${iA(e,t)}/metadata`,iA=({contract:e,tokenId:t},r)=>`${r.tzktExplorerUrl}/${e}/tokens/${t}`,oA="FA1.2 token",aA="FA2 token",sA="NFT",cA="FA1.2",lA="FA2",uA="NFT",dA="0",hA=e=>{const t=VE(e.token);return t&&e.balance?{balance:e.balance,lastLevel:e.lastLevel,...t}:null};var fA=r(8449),pA=r.n(fA);const mA={},gA={},vA=(e,t)=>{gA[e]=t},yA=e=>{class t extends Error{constructor(r,n,i){if(super(r||e,i),Object.setPrototypeOf(this,t.prototype),this.name=e,n)for(const e in n)this[e]=n[e];if(i&&function(e){return"object"===typeof e}(i)&&"cause"in i&&!("cause"in this)){const e=i.cause;this.cause=e,"stack"in e&&(this.stack=this.stack+"\nCAUSE: "+e.stack)}}}return mA[e]=t,t};yA("AccountNameRequired"),yA("AccountNotSupported"),yA("AmountRequired"),yA("BluetoothRequired"),yA("BtcUnmatchedApp"),yA("CantOpenDevice"),yA("CashAddrNotSupported"),yA("ClaimRewardsFeesWarning"),yA("CurrencyNotSupported"),yA("DeviceAppVerifyNotSupported"),yA("DeviceGenuineSocketEarlyClose"),yA("DeviceNotGenuine"),yA("DeviceOnDashboardExpected"),yA("DeviceOnDashboardUnexpected"),yA("DeviceInOSUExpected"),yA("DeviceHalted"),yA("DeviceNameInvalid"),yA("DeviceSocketFail"),yA("DeviceSocketNoBulkStatus"),yA("DeviceSocketNoBulkStatus"),yA("UnresponsiveDeviceError");const bA=yA("DisconnectedDevice"),wA=yA("DisconnectedDeviceDuringOperation"),xA=(yA("DeviceExtractOnboardingStateError"),yA("DeviceOnboardingStatePollingError"),yA("EnpointConfig"),yA("EthAppPleaseEnableContractData"),yA("FeeEstimationFailed"),yA("FirmwareNotRecognized"),yA("HardResetFail"),yA("InvalidXRPTag"),yA("InvalidAddress"),yA("InvalidNonce"),yA("InvalidAddressBecauseDestinationIsAlsoSource"),yA("LatestMCUInstalledError"),yA("UnknownMCU"),yA("LedgerAPIError"),yA("LedgerAPIErrorWithMessage"),yA("LedgerAPINotAvailable"),yA("ManagerAppAlreadyInstalled"),yA("ManagerAppRelyOnBTC"),yA("ManagerAppDepInstallRequired"),yA("ManagerAppDepUninstallRequired"),yA("ManagerDeviceLocked"),yA("ManagerFirmwareNotEnoughSpace"),yA("ManagerNotEnoughSpace"),yA("ManagerUninstallBTCDep"),yA("NetworkDown"),yA("NetworkError"),yA("NoAddressesFound"),yA("NotEnoughBalance"),yA("NotEnoughBalanceToDelegate"),yA("NotEnoughBalanceInParentAccount"),yA("NotEnoughSpendableBalance"),yA("NotEnoughBalanceBecauseDestinationNotCreated"),yA("NoAccessToCamera"),yA("NotEnoughGas"),yA("NotEnoughGasSwap"),yA("NotSupportedLegacyAddress"),yA("GasLessThanEstimate"),yA("PriorityFeeTooLow"),yA("PriorityFeeTooHigh"),yA("PriorityFeeHigherThanMaxFee"),yA("MaxFeeTooLow"),yA("PasswordsDontMatch"),yA("PasswordIncorrect"),yA("RecommendSubAccountsToEmpty"),yA("RecommendUndelegation"),yA("TimeoutTagged"),yA("UnexpectedBootloader"),yA("MCUNotGenuineToDashboard"),yA("RecipientRequired"),yA("UnavailableTezosOriginatedAccountReceive"),yA("UnavailableTezosOriginatedAccountSend"),yA("UpdateFetchFileFail"),yA("UpdateIncorrectHash"),yA("UpdateIncorrectSig"),yA("UpdateYourApp"),yA("UserRefusedDeviceNameChange"),yA("UserRefusedAddress"),yA("UserRefusedFirmwareUpdate"),yA("UserRefusedAllowManager"),yA("UserRefusedOnDevice"),yA("ExpertModeRequired"),yA("TransportOpenUserCancelled")),_A=yA("TransportInterfaceNotAvailable"),kA=yA("TransportRaceCondition"),SA=yA("TransportWebUSBGestureRequired");yA("TransactionHasBeenValidatedError"),yA("TransportExchangeTimeoutError"),yA("DeviceShouldStayInApp"),yA("WebsocketConnectionError"),yA("WebsocketConnectionFailed"),yA("WrongDeviceForAccount"),yA("WrongAppForCurrency"),yA("ETHAddressNonEIP"),yA("CantScanQRCode"),yA("FeeNotLoaded"),yA("FeeNotLoadedSwap"),yA("FeeRequired"),yA("FeeTooHigh"),yA("PendingOperation"),yA("SyncError"),yA("PairingFailed"),yA("PeerRemovedPairing"),yA("GenuineCheckFailed"),yA("LedgerAPI4xx"),yA("LedgerAPI5xx"),yA("FirmwareOrAppUpdateRequired"),yA("ReplacementTransactionUnderpriced"),yA("OpReturnSizeLimit"),yA("DustLimit"),yA("LanguageNotFound"),yA("NoDBPathGiven"),yA("DBWrongPassword"),yA("DBNotReset");var EA;!function(e){e.Unknown="Unknown",e.LocationServicesDisabled="LocationServicesDisabled",e.LocationServicesUnauthorized="LocationServicesUnauthorized",e.BluetoothScanStartFailed="BluetoothScanStartFailed"}(EA||(EA={}));Error;class AA extends Error{constructor(e,t){const r="TransportError";super(e||r),this.name=r,this.message=e,this.stack=new Error(e).stack,this.id=t}}vA("TransportError",(e=>new AA(e.message,e.id)));const PA={ACCESS_CONDITION_NOT_FULFILLED:38916,ALGORITHM_NOT_SUPPORTED:38020,CLA_NOT_SUPPORTED:28160,CODE_BLOCKED:38976,CODE_NOT_INITIALIZED:38914,COMMAND_INCOMPATIBLE_FILE_STRUCTURE:27009,CONDITIONS_OF_USE_NOT_SATISFIED:27013,CONTRADICTION_INVALIDATION:38928,CONTRADICTION_SECRET_CODE_STATUS:38920,CUSTOM_IMAGE_BOOTLOADER:26159,CUSTOM_IMAGE_EMPTY:26158,FILE_ALREADY_EXISTS:27273,FILE_NOT_FOUND:37892,GP_AUTH_FAILED:25344,HALTED:28586,INCONSISTENT_FILE:37896,INCORRECT_DATA:27264,INCORRECT_LENGTH:26368,INCORRECT_P1_P2:27392,INS_NOT_SUPPORTED:27904,DEVICE_NOT_ONBOARDED:27911,DEVICE_NOT_ONBOARDED_2:26129,INVALID_KCV:38021,INVALID_OFFSET:37890,LICENSING:28482,LOCKED_DEVICE:21781,MAX_VALUE_REACHED:38992,MEMORY_PROBLEM:37440,MISSING_CRITICAL_PARAMETER:26624,NO_EF_SELECTED:37888,NOT_ENOUGH_MEMORY_SPACE:27268,OK:36864,PIN_REMAINING_ATTEMPTS:25536,REFERENCED_DATA_NOT_FOUND:27272,SECURITY_STATUS_NOT_SATISFIED:27010,TECHNICAL_PROBLEM:28416,UNKNOWN_APDU:27906,USER_REFUSED_ON_DEVICE:21761,NOT_ENOUGH_SPACE:20738};class OA extends Error{constructor(e,{canBeMappedToChildError:t=!0}={}){const r=Object.keys(PA).find((t=>PA[t]===e))||"UNKNOWN_ERROR",n=function(e){switch(e){case 26368:return"Incorrect length";case 26624:return"Missing critical parameter";case 27010:return"Security not satisfied (dongle locked or have invalid access rights)";case 27013:return"Condition of use not satisfied (denied by the user?)";case 27264:return"Invalid data received";case 27392:return"Invalid parameter received";case 21781:return"Locked device"}if(28416<=e&&e<=28671)return"Internal error, please report"}(e)||r,i=`Ledger device: ${n} (0x${e.toString(16)})`;if(super(i),this.name="TransportStatusError",this.statusCode=e,this.statusText=r,Object.setPrototypeOf(this,OA.prototype),t&&e===PA.LOCKED_DEVICE)return new TA(i)}}class TA extends OA{constructor(e){super(PA.LOCKED_DEVICE,{canBeMappedToChildError:!1}),e&&(this.message=e),this.name="LockedDeviceError",Object.setPrototypeOf(this,TA.prototype)}}vA("TransportStatusError",(e=>new OA(e.statusCode)));let CA=0;const jA=[],RA=(e,t,r)=>{const n={type:e,id:String(++CA),date:new Date};t&&(n.message=t),r&&(n.data=r),LA(n)};class IA{constructor(e,t){this.type=e,this.context=t}trace(e,t){(({type:e,message:t,data:r,context:n})=>{const i={type:e,id:String(++CA),date:new Date};t&&(i.message=t),r&&(i.data=r),n&&(i.context=n),LA(i)})({type:this.type,message:e,data:t,context:this.context})}getContext(){return this.context}setContext(e){this.context=e}updateContext(e){this.context=Object.assign(Object.assign({},this.context),e)}getType(){return this.type}setType(e){this.type=e}withType(e){return new IA(e,this.context)}withContext(e){return new IA(this.type,e)}withUpdatedContext(e){return new IA(this.type,Object.assign(Object.assign({},this.context),e))}}const MA=e=>(jA.push(e),()=>{const t=jA.indexOf(e);-1!==t&&(jA[t]=jA[jA.length-1],jA.pop())});function LA(e){for(let r=0;rDA(this,void 0,void 0,(function*(){const s=this.tracer.withUpdatedContext({function:"send"});if(i.length>=256)throw s.trace("data.length exceeded 256 bytes limit",{dataLength:i.length}),new AA("data.length exceed 256 bytes limit. Got: "+i.length,"DataLengthTooBig");s.trace("Starting an exchange",{abortTimeoutMs:a});const c=yield this.exchange(NA.concat([NA.from([e,t,r,n]),NA.from([i.length]),i]),{abortTimeoutMs:a});s.trace("Received response from exchange");const l=c.readUInt16BE(c.length-2);if(!o.some((e=>e===l)))throw new OA(l);return c})),this._appAPIlock=null,this.tracer=new IA(null!==t&&void 0!==t?t:"transport",e)}exchange(e,{abortTimeoutMs:t}={}){throw new Error("exchange not implemented")}exchangeBulk(e,t){let r=!1;return(()=>DA(this,void 0,void 0,(function*(){if(!r)for(const n of e){const e=yield this.exchange(n);if(r)return;const i=e.readUInt16BE(e.length-2);if(i!==PA.OK)throw new OA(i);t.next(e)}})))().then((()=>!r&&t.complete()),(e=>!r&&t.error(e))),{unsubscribe:()=>{r=!0}}}setScrambleKey(e){}close(){return Promise.resolve()}on(e,t){this._events.on(e,t)}off(e,t){this._events.removeListener(e,t)}emit(e,...t){this._events.emit(e,...t)}setDebugMode(){console.warn("setDebugMode is deprecated. use @ledgerhq/logs instead. No logs are emitted in this anymore.")}setExchangeTimeout(e){this.exchangeTimeout=e}setExchangeUnresponsiveTimeout(e){this.unresponsiveTimeout=e}static create(e=3e3,t){return new Promise(((r,n)=>{let i=!1;const o=this.listen({next:t=>{i=!0,o&&o.unsubscribe(),a&&clearTimeout(a),this.open(t.descriptor,e).then(r,n)},error:e=>{a&&clearTimeout(a),n(e)},complete:()=>{a&&clearTimeout(a),i||n(new AA(this.ErrorMessage_NoDeviceFound,"NoDeviceFound"))}}),a=t?setTimeout((()=>{o.unsubscribe(),n(new AA(this.ErrorMessage_ListenTimeout,"ListenTimeout"))}),t):null}))}exchangeAtomicImpl(e){return DA(this,void 0,void 0,(function*(){const t=this.tracer.withUpdatedContext({function:"exchangeAtomicImpl",unresponsiveTimeout:this.unresponsiveTimeout});if(this.exchangeBusyPromise)throw t.trace("Atomic exchange is already busy"),new kA("An action was already pending on the Ledger device. Please deny or reconnect.");let r;const n=new Promise((e=>{r=e}));this.exchangeBusyPromise=n;let i=!1;const o=setTimeout((()=>{t.trace('Timeout reached, emitting Transport event "unresponsive"',{unresponsiveTimeout:this.unresponsiveTimeout}),i=!0,this.emit("unresponsive")}),this.unresponsiveTimeout);try{const r=yield e();return i&&(t.trace("Device was unresponsive, emitting responsive"),this.emit("responsive")),r}finally{t.trace("Finalize, clearing busy guard"),clearTimeout(o),r&&r(),this.exchangeBusyPromise=null}}))}decorateAppAPIMethods(e,t,r){for(const n of t)e[n]=this.decorateAppAPIMethod(n,e[n],e,r)}decorateAppAPIMethod(e,t,r,n){return(...i)=>DA(this,void 0,void 0,(function*(){const{_appAPIlock:o}=this;if(o)return Promise.reject(new AA("Ledger Device is busy (lock "+o+")","TransportLocked"));try{return this._appAPIlock=e,this.setScrambleKey(n),yield t.apply(r,i)}finally{this._appAPIlock=null}}))}setTraceContext(e){this.tracer=this.tracer.withContext(e)}updateTraceContext(e){this.tracer.updateContext(e)}getTraceContext(){return this.tracer.getContext()}}zA.ErrorMessage_ListenTimeout="No Ledger device found (timeout)",zA.ErrorMessage_NoDeviceFound="No Ledger device found";const BA=zA;var FA=r(9673).Buffer;function UA(e){const t=FA.alloc(2);return t.writeUInt16BE(e,0),t}const $A={data:FA.alloc(0),dataLength:0,sequence:0},HA=(e,t)=>({makeBlocks(r){let n=FA.concat([UA(r.length),r]);const i=t-5,o=Math.ceil(n.length/i);n=FA.concat([n,FA.alloc(o*i-n.length+1).fill(0)]);const a=[];for(let t=0;ti&&(n=n.slice(0,i)),{data:n,dataLength:i,sequence:o}},getReducedResult(e){if(e&&e.dataLength===e.data.length)return e.data}});var VA=r(1187),qA=r.n(VA);var KA;!function(e){e.blue="blue",e.nanoS="nanoS",e.nanoSP="nanoSP",e.nanoX="nanoX",e.stax="stax"}(KA||(KA={}));const WA={[KA.blue]:{id:KA.blue,productName:"Ledger\xa0Blue",productIdMM:0,legacyUsbProductId:0,usbOnly:!0,memorySize:491520,masks:[822083584,822149120],getBlockSize:e=>4096},[KA.nanoS]:{id:KA.nanoS,productName:"Ledger\xa0Nano\xa0S",productIdMM:16,legacyUsbProductId:1,usbOnly:!0,memorySize:327680,masks:[823132160],getBlockSize:e=>{var t;return qA().lt(null!==(t=qA().coerce(e))&&void 0!==t?t:"","2.0.0")?4096:2048}},[KA.nanoSP]:{id:KA.nanoSP,productName:"Ledger Nano S Plus",productIdMM:80,legacyUsbProductId:5,usbOnly:!0,memorySize:1569792,masks:[856686592],getBlockSize:e=>32},[KA.nanoX]:{id:KA.nanoX,productName:"Ledger\xa0Nano\xa0X",productIdMM:64,legacyUsbProductId:4,usbOnly:!1,memorySize:2097152,masks:[855638016],getBlockSize:e=>4096,bluetoothSpec:[{serviceUuid:"13d63400-2c97-0004-0000-4c6564676572",notifyUuid:"13d63400-2c97-0004-0001-4c6564676572",writeUuid:"13d63400-2c97-0004-0002-4c6564676572",writeCmdUuid:"13d63400-2c97-0004-0003-4c6564676572"}]},[KA.stax]:{id:KA.stax,productName:"Ledger\xa0Stax",productIdMM:96,legacyUsbProductId:6,usbOnly:!1,memorySize:1569792,masks:[857735168],getBlockSize:e=>32,bluetoothSpec:[{serviceUuid:"13d63400-2c97-6004-0000-4c6564676572",notifyUuid:"13d63400-2c97-6004-0001-4c6564676572",writeUuid:"13d63400-2c97-6004-0002-4c6564676572",writeCmdUuid:"13d63400-2c97-6004-0003-4c6564676572"}]}},GA=(KA.blue,KA.nanoS,KA.nanoSP,KA.nanoX,KA.stax,Object.values(WA)),ZA=11415,YA=e=>{const t=GA.find((t=>t.legacyUsbProductId===e));if(t)return t;const r=e>>8,n=GA.find((e=>e.productIdMM===r));return n},XA=[],JA={};for(const r in WA){const e=WA[r],{bluetoothSpec:t}=e;if(t)for(let r=0;re.vendorId===ZA))}))}var nP=r(9673).Buffer,iP=function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(t){o(t)}}function s(e){try{c(n.throw(e))}catch(t){o(t)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))};class oP extends BA{constructor(e,t){super(),this.channel=Math.floor(65535*Math.random()),this.packetSize=64,this._disconnectEmitted=!1,this._emitDisconnect=e=>{this._disconnectEmitted||(this._disconnectEmitted=!0,this.emit("disconnect",e))},this.device=e,this.interfaceNumber=t,this.deviceModel=YA(e.productId)}static request(){return iP(this,void 0,void 0,(function*(){const e=yield tP();return oP.open(e)}))}static openConnected(){return iP(this,void 0,void 0,(function*(){const e=yield rP();return 0===e.length?null:oP.open(e[0])}))}static open(e){return iP(this,void 0,void 0,(function*(){yield e.open(),null===e.configuration&&(yield e.selectConfiguration(1)),yield sP(e);const t=e.configurations[0].interfaces.find((({alternates:e})=>e.some((e=>255===e.interfaceClass))));if(!t)throw new _A("No WebUSB interface found for your Ledger device. Please upgrade firmware or contact techsupport.");const r=t.interfaceNumber;try{yield e.claimInterface(r)}catch(o){throw yield e.close(),new _A(o.message)}const n=new oP(e,r),i=t=>{e===t.device&&(navigator.usb.removeEventListener("disconnect",i),n._emitDisconnect(new bA))};return navigator.usb.addEventListener("disconnect",i),n}))}close(){return iP(this,void 0,void 0,(function*(){yield this.exchangeBusyPromise,yield this.device.releaseInterface(this.interfaceNumber),yield sP(this.device),yield this.device.close()}))}exchange(e){return iP(this,void 0,void 0,(function*(){const t=yield this.exchangeAtomicImpl((()=>iP(this,void 0,void 0,(function*(){const{channel:t,packetSize:r}=this;RA("apdu","=> "+e.toString("hex"));const n=HA(t,r),i=n.makeBlocks(e);for(let e=0;e{if(e&&e.message&&e.message.includes("disconnected"))throw this._emitDisconnect(e),new wA(e.message);throw e}));return t}))}setScrambleKey(){}}oP.isSupported=()=>Promise.resolve(!!navigator&&!!navigator.usb&&"function"===typeof navigator.usb.getDevices),oP.list=rP,oP.listen=e=>{let t=!1;return function(){return QA(this,void 0,void 0,(function*(){const e=yield rP();return e.length>0?e[0]:tP()}))}().then((r=>{if(!t){const t=YA(r.productId);e.next({type:"add",descriptor:r,deviceModel:t}),e.complete()}}),(t=>{window.DOMException&&t instanceof window.DOMException&&18===t.code?e.error(new SA(t.message)):e.error(new xA(t.message))})),{unsubscribe:function(){t=!0}}};const aP=oP;function sP(e){return iP(this,void 0,void 0,(function*(){try{yield e.reset()}catch(Tie){console.warn(Tie)}}))}var cP=r(9673).Buffer;function lP(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(t){o(t)}}function s(e){try{c(n.throw(e))}catch(t){o(t)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))}"function"===typeof SuppressedError&&SuppressedError;function uP(e){const t=[];e.split("/").forEach((e=>{let r=parseInt(e,10);Number.isNaN(r)||(e.length>1&&"'"===e[e.length-1]&&(r+=2147483648),t.push(r))}));const r=cP.alloc(1+4*t.length);return r[0]=t.length,t.forEach(((e,t)=>{r.writeUInt32BE(e,1+4*t)})),r}function dP(e,t){const r=cP.alloc(32);r.fill(0);let n=t[e],i=e+1;return n>32&&(i+=n-32,n=32),t.copy(r,32-n,i,i+n),{buffer:r,idxValueStart:i,length:n}}class hP extends AS{constructor(e){super(),this.message=e,this.name="InvalidLedgerResponseError"}}class fP extends AS{constructor(e){super(),this.cause=e,this.name="PublicKeyRetrievalError",this.message="Unable to retrieve Public Key from Ledger"}}class pP extends AS{constructor(){super(),this.name="PublicKeyHashRetrievalError",this.message="Unable to retrieve Public Key Hash from Ledger"}}class mP extends PS{constructor(e){super(),this.derivationType=e,this.name="InvalidDerivationTypeError",this.message=`Invalid derivation type ${e} expecting one of the following: DerivationType.ED25519, DerivationType.SECP256K1, DerivationType.P256 or DerivationType.BIP32_ED25519`}}var gP;!function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256",e[e.BIP32_ED25519=3]="BIP32_ED25519"}(gP||(gP={}));class vP{constructor(e,t="44'/1729'/0'/0'",r=!0,n=gP.ED25519){if(this.transport=e,this.path=t,this.prompt=r,this.derivationType=n,this.CLA=128,this.INS_GET_PUBLIC_KEY=2,this.INS_PROMPT_PUBLIC_KEY=3,this.INS_SIGN=4,this.FIRST_MESSAGE_SEQUENCE=0,this.LAST_MESSAGE_SEQUENCE=129,this.OTHER_MESSAGE_SEQUENCE=1,this.transport.setScrambleKey("XTZ"),!t.startsWith("44'/1729'"))throw new LS(t,`${wE(nE.NO_PREFIX_MATCHED)} expecting prefix "44'/1729'".`);if(!Object.values(gP).includes(n))throw new mP(n.toString())}publicKeyHash(){return lP(this,void 0,void 0,(function*(){if(this._publicKeyHash||(yield this.publicKey()),this._publicKeyHash)return this._publicKeyHash;throw new pP}))}publicKey(){return lP(this,void 0,void 0,(function*(){if(this._publicKey)return this._publicKey;const e=yield this.getLedgerPublicKey(),t=e[0],r=function(e,t){return 0===t||3===t?e=e.slice(1):(e[0]=2+(1&e[64]),e=e.slice(0,33)),e}(e.slice(1,1+t),this.derivationType),n=this.getPrefixes(),i=EE(r,n.prefPk),o=EE((0,xS.hash)(r,20),n.prefPkh);return this._publicKey=i,this._publicKeyHash=o,i}))}getLedgerPublicKey(){return lP(this,void 0,void 0,(function*(){try{let e=this.INS_PROMPT_PUBLIC_KEY;!1===this.prompt&&(e=this.INS_GET_PUBLIC_KEY);return yield this.transport.send(this.CLA,e,this.FIRST_MESSAGE_SEQUENCE,this.derivationType,uP(this.path))}catch(e){throw new fP(e)}}))}secretKey(){return lP(this,void 0,void 0,(function*(){throw new WS("Secret key cannot be exposed")}))}sign(e,t){return lP(this,void 0,void 0,(function*(){const r=function(e,t){let r=e;"undefined"!==typeof t&&(r=cP.from(t).toString("hex").concat(e));return r}(e,t),n=cP.from(r,"hex");let i=[];i.push(uP(this.path)),i=function(e,t){let r=0;for(;r!==t.length;){const n=r+230>=t.length?t.length-r:230,i=cP.alloc(n);t.copy(i,0,r,r+n),e.push(i),r+=n}return e}(i,n);const o=yield this.signWithLedger(i);let a;if(this.derivationType===gP.ED25519||this.derivationType===gP.BIP32_ED25519)a=o.slice(0,o.length-2).toString("hex");else{if(!function(e){let t=!0;49!==e[0]&&48!==e[0]&&(t=!1),e[1]+4!==e.length&&(t=!1),2!==e[2]&&(t=!1);const r=e[3];2!==e[4+r]&&(t=!1);const n=5+r;return n+1+e[n]+2!==e.length&&(t=!1),t}(o))throw new hP("Invalid signature return by ledger unable to parse the response");const e=dP(3,o),t=dP(e.idxValueStart+e.length+1,o);a=cP.concat([e.buffer,t.buffer]).toString("hex")}return{bytes:e,sig:EE(a,eE[ZS.SIG]),prefixSig:EE(a,this.getPrefixes().prefSig),sbytes:e+a}}))}signWithLedger(e){return lP(this,void 0,void 0,(function*(){let t=yield this.transport.send(this.CLA,this.INS_SIGN,this.FIRST_MESSAGE_SEQUENCE,this.derivationType,e[0]);for(let r=1;r{t.push(encodeURIComponent(n)+"="+encodeURIComponent(e))}));continue}t.push(encodeURIComponent(n)+"="+encodeURIComponent(r))}const r=t.join("&");return r?`?${r}`:""}createRequest({url:e,method:t,timeout:r=this.timeout,query:n,headers:i={},json:o=!0},a){return wP(this,void 0,void 0,(function*(){const s=e+this.serialize(n);i["Content-Type"]||(i["Content-Type"]="application/json");const c=new AbortController,l=setTimeout((()=>c.abort()),r);try{const e=yield EP(s,{method:t,headers:i,body:JSON.stringify(a),signal:c.signal});if("undefined"===typeof e)throw new Error("Response is undefined");if(e.status>=400){const t=yield e.text();throw new _P(`Http error response: (${e.status}) ${t}`,e.status,e.statusText,t,s)}return o?e.json():e.text()}catch(u){throw u instanceof Error&&"AbortError"===u.name?new kP(r,s):u instanceof _P?u:new xP(String(t),s,u)}finally{clearTimeout(l)}}))}}function PP(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i{const r=e[t];let i;if("undefined"!==typeof r){if(Array.isArray(r))return i=jP(r),void(n[t]=i);i=new nw(r),n[t]=i}})),n}!function(e){e.GET_BAKING_RIGHTS="getBakingRights",e.GET_BALLOTS="getBallots",e.GET_BALLOT_LIST="getBallotList",e.GET_BIG_MAP_KEY="getBigMapKey",e.GET_BIG_MAP_EXPR="getBigMapExpr",e.GET_BLOCK_HASH="getBlockHash",e.GET_BLOCK="getBlock",e.GET_BLOCK_HEADER="getBlockHeader",e.GET_BLOCK_METADATA="getBlockMetadata",e.GET_BALANCE="getBalance",e.GET_CHAIN_ID="getChainId",e.GET_CONSTANTS="getConstants",e.GET_CONTRACT="getContract",e.GET_CURRENT_PERIOD="getCurrentPeriod",e.GET_CURRENT_PROPOSAL="getCurrentProposal",e.GET_CURRENT_QUORUM="getCurrentQuorum",e.GET_DELEGATE="getDelegate",e.GET_DELEGATES="getDelegates",e.GET_VOTING_INFO="getVotingInfo",e.GET_ATTESTATION_RIGHTS="getAttestationRights",e.GET_ENDORSING_RIGHTS="getEndorsingRights",e.GET_ENTRYPOINTS="getEntrypoints",e.GET_LIVE_BLOCKS="getLiveBlocks",e.GET_MANAGER_KEY="getManagerKey",e.GET_NORMALIZED_SCRIPT="getNormalizedScript",e.GET_PROPOSALS="getProposals",e.GET_PROTOCOLS="getProtocols",e.GET_SAPLING_DIFF_BY_CONTRACT="getSaplingDiffByContract",e.GET_SAPLING_DIFF_BY_ID="getSaplingDiffById",e.GET_SCRIPT="getScript",e.GET_STORAGE="getStorage",e.GET_SUCCESSOR_PERIOD="getSuccessorPeriod",e.GET_VOTES_LISTINGS="getVotesListings",e.PACK_DATA="packData",e.GET_STORAGE_USED_SPACE="getStorageUsedSpace",e.GET_STORAGE_PAID_SPACE="getStoragePaidSpace",e.GET_TICKET_BALANCE="getTicketBalance",e.GET_ALL_TICKET_BALANCES="getAllTicketBalances",e.GET_PENDING_OPERATIONS="getPendingOperations"}(CP||(CP={}));var RP,IP,MP,LP,NP,DP,zP,BP,FP,UP;!function(e){e.TOO_LARGE="too large"}(RP||(RP={})),function(e){e.BAKING_BONUSES="baking bonuses",e.BAKING_REWARDS="baking rewards",e.BLOCK_FEES="block fees",e.BONDS="bonds",e.BOOTSTRAP="bootstrap",e.BURNED="burned",e.COMMITMENT="commitment",e.DELEGATE_DENOMINATOR="delegate_denominator",e.DELEGATOR_NUMERATOR="delegator_numerator",e.DEPOSITS="deposits",e.ENDORSING_REWARDS="endorsing rewards",e.INVOICE="invoice",e.LOST_ENDORSING_REWARDS="lost endorsing rewards",e.MINTED="minted",e.NONCE_REVELATION_REWARDS="nonce revelation rewards",e.PUNISHMENTS="punishments",e.SMART_ROLLUP_REFUTATION_PUNISHMENTS="smart_rollup_refutation_punishments",e.SMART_ROLLUP_REFUTATION_REWARDS="smart_rollup_refutation_rewards",e.STORAGE_FEES="storage fees",e.SUBSIDY="subsidy",e.UNSTAKED_DEPOSITS="unstaked_deposits"}(IP||(IP={})),function(e){e.WASM2="wasm_2_0_0",e.ARITH="arith",e.RISCV="riscv"}(MP||(MP={})),function(e){e.START="start",e.MOVE="move"}(LP||(LP={})),function(e){e.INBOX_PROOF="inbox_proof",e.REVEAL_PROOF="reveal_proof",e.FIRST_INPUT="first_input"}(NP||(NP={})),function(e){e.RAW_DATA_PROOF="raw_data_proof",e.METADATA_PROOF="metadata_proof",e.DAL_PAGE_PROOF="dal_page_proof"}(DP||(DP={})),function(e){e.ONGOING="ongoing",e.ENDED="ended"}(zP||(zP={})),function(e){e.LOSER="loser",e.DRAW="draw"}(BP||(BP={})),function(e){e.CONFLICT_RESOLVED="conflict_resolved",e.TIMEOUT="timeout"}(FP||(FP={})),function(e){e.ORIGINATION="origination",e.DELEGATION="delegation",e.REVEAL="reveal",e.TRANSACTION="transaction",e.ACTIVATION="activate_account",e.ATTESTATION="attestation",e.ENDORSEMENT="endorsement",e.PREATTESTATION="preattestation",e.PREENDORSEMENT="preendorsement",e.SET_DEPOSITS_LIMIT="set_deposits_limit",e.DOUBLE_PREATTESTATION_EVIDENCE="double_preattestation_evidence",e.DOUBLE_PREENDORSEMENT_EVIDENCE="double_preendorsement_evidence",e.ATTESTATION_WITH_SLOT="attestation_with_slot",e.ENDORSEMENT_WITH_SLOT="endorsement_with_slot",e.SEED_NONCE_REVELATION="seed_nonce_revelation",e.DOUBLE_ATTESTATION_EVIDENCE="double_attestation_evidence",e.DOUBLE_ENDORSEMENT_EVIDENCE="double_endorsement_evidence",e.DOUBLE_BAKING_EVIDENCE="double_baking_evidence",e.PROPOSALS="proposals",e.BALLOT="ballot",e.FAILING_NOOP="failing_noop",e.REGISTER_GLOBAL_CONSTANT="register_global_constant",e.TRANSFER_TICKET="transfer_ticket",e.INCREASE_PAID_STORAGE="increase_paid_storage",e.UPDATE_CONSENSUS_KEY="update_consensus_key",e.DRAIN_DELEGATE="drain_delegate",e.VDF_REVELATION="vdf_revelation",e.EVENT="event",e.TICKET_UPDATES="ticket_updates",e.SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message",e.SMART_ROLLUP_PUBLISH="smart_rollup_publish",e.SMART_ROLLUP_CEMENT="smart_rollup_cement",e.SMART_ROLLUP_RECOVER_BOND="smart_rollup_recover_bond",e.SMART_ROLLUP_REFUTE="smart_rollup_refute",e.SMART_ROLLUP_TIMEOUT="smart_rollup_timeout"}(UP||(UP={}));class $P{constructor(e,t="main",r=new AP){this.url=e,this.chain=t,this.httpBackend=r}createURL(e){let t=this.url;for(;t.endsWith("/");)t=t.slice(0,-1);return`${t}${e}`}validateAddress(e){const t=fE(e);if(t!==nE.VALID)throw new RS(e,wE(t))}validateContract(e){const t=mE(e);if(t!==nE.VALID)throw new US(e,wE(t))}getBlockHash({block:e}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/hash`),method:"GET"})}))}getLiveBlocks({block:e}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/live_blocks`),method:"GET"})}))}getBalance(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/balance`),method:"GET"});return new nw(r)}))}getStorage(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage`),method:"GET"})}))}getScript(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/script`),method:"GET"})}))}getNormalizedScript(e,t={unparsing_mode:"Readable"},{block:r}=TP){return OP(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/script/normalized`),method:"POST"},t)}))}getContract(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}`),method:"GET"});return Object.assign(Object.assign({},r),{balance:new nw(r.balance)})}))}getManagerKey(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return this.validateAddress(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/manager_key`),method:"GET"})}))}getDelegate(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){let r;this.validateAddress(e);try{r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/delegate`),method:"GET"})}catch(n){if(!(n instanceof _P&&n.status===yP.NOT_FOUND))throw n;r=null}return r}))}getBigMapKey(e,t,{block:r}=TP){return OP(this,void 0,void 0,(function*(){return this.validateAddress(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/big_map_get`),method:"POST"},t)}))}getBigMapExpr(e,t,{block:r}=TP){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/big_maps/${e}/${t}`),method:"GET"})}))}getDelegates(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates/${e}`),method:"GET"}),n=jP(r,["balance","full_balance","current_frozen_deposits","frozen_deposits","frozen_balance","frozen_deposits_limit","staking_balance","delegated_balance","voting_power","total_delegated_stake","staking_denominator"]);return Object.assign(Object.assign(Object.assign({},r),n),{frozen_balance_by_cycle:r.frozen_balance_by_cycle?r.frozen_balance_by_cycle.map((e=>{var{deposit:t,deposits:r,fees:n,rewards:i}=e,o=PP(e,["deposit","deposits","fees","rewards"]);const a=jP({deposit:t,deposits:r,fees:n,rewards:i},["deposit","deposits","fees","rewards"]);return Object.assign(Object.assign({},o),{deposit:a.deposit,deposits:a.deposits,fees:a.fees,rewards:a.rewards})})):void 0})}))}getVotingInfo(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return this.validateAddress(e),yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates/${e}/voting_info`),method:"GET"})}))}getConstants({block:e}=TP){return OP(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/context/constants`),method:"GET"}),r=jP(t,["time_between_blocks","hard_gas_limit_per_operation","hard_gas_limit_per_block","proof_of_work_threshold","tokens_per_roll","seed_nonce_revelation_tip","block_security_deposit","endorsement_security_deposit","block_reward","endorsement_reward","cost_per_byte","hard_storage_limit_per_operation","test_chain_duration","baking_reward_per_endorsement","delay_per_missing_endorsement","minimal_block_delay","liquidity_baking_subsidy","cache_layout","baking_reward_fixed_portion","baking_reward_bonus_per_slot","endorsing_reward_per_slot","double_baking_punishment","delay_increment_per_round","tx_rollup_commitment_bond","vdf_difficulty","sc_rollup_stake_amount","minimal_stake"]);return Object.assign(Object.assign({},t),r)}))}getBlock({block:e,version:t}=TP){return OP(this,void 0,void 0,(function*(){const r={url:this.createURL(`/chains/${this.chain}/blocks/${e}`),method:"GET"};return void 0!==t&&(r.query={version:t}),yield this.httpBackend.createRequest(r)}))}getBlockHeader({block:e}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/header`),method:"GET"})}))}getBlockMetadata({block:e,version:t}=TP){return OP(this,void 0,void 0,(function*(){const r={url:this.createURL(`/chains/${this.chain}/blocks/${e}/metadata`),method:"GET"};return void 0!==t&&(r.query={version:t}),yield this.httpBackend.createRequest(r)}))}getBakingRights(e={},{block:t}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/baking_rights`),method:"GET",query:e})}))}getAttestationRights(e={},{block:t}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/attestation_rights`),method:"GET",query:e})}))}getEndorsingRights(e={},{block:t}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/endorsing_rights`),method:"GET",query:e})}))}getBallotList({block:e}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/ballot_list`),method:"GET"})}))}getBallots({block:e}=TP){return OP(this,void 0,void 0,(function*(){return jP(yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/ballots`),method:"GET"}),["yay","nay","pass"])}))}getCurrentProposal({block:e}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_proposal`),method:"GET"})}))}getCurrentQuorum({block:e}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_quorum`),method:"GET"})}))}getVotesListings({block:e}=TP){return OP(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/listings`),method:"GET"});return t.map((e=>(e.voting_power&&(e.voting_power=new nw(e.voting_power)),e))),t}))}getProposals({block:e}=TP){return OP(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/proposals`),method:"GET"});return t.map((e=>e[1]=new nw(e[1]))),t}))}forgeOperations(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/forge/operations`),method:"POST"},e)}))}injectOperation(e){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL("/injection/operation"),method:"POST"},e)}))}preapplyOperations(e,{block:t,version:r}=TP){return OP(this,void 0,void 0,(function*(){const n={url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/preapply/operations`),method:"POST"};return void 0!==r&&(n.query={version:r}),yield this.httpBackend.createRequest(n,e)}))}getEntrypoints(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){this.validateContract(e);return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/entrypoints`),method:"GET"})}))}runOperation(e,{block:t,version:r}=TP){return OP(this,void 0,void 0,(function*(){const n={url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/run_operation`),method:"POST"};return void 0!==r&&(n.query={version:r}),yield this.httpBackend.createRequest(n,e)}))}simulateOperation(e,{block:t,version:r}=TP){return OP(this,void 0,void 0,(function*(){const n={url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/simulate_operation`),method:"POST"};return void 0!==r&&(n.query={version:r}),yield this.httpBackend.createRequest(n,e)}))}runCode(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/run_code`),method:"POST"},e)}))}runScriptView(e,t){var{unparsing_mode:r="Readable"}=e,n=PP(e,["unparsing_mode"]),i=(void 0===t?TP:t).block;return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${i}/helpers/scripts/run_script_view`),method:"POST"},Object.assign({unparsing_mode:r},n))}))}runView(e,t){var{unparsing_mode:r="Readable"}=e,n=PP(e,["unparsing_mode"]),i=(void 0===t?TP:t).block;return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${i}/helpers/scripts/run_view`),method:"POST"},Object.assign({unparsing_mode:r},n))}))}getChainId(){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/chain_id`),method:"GET"})}))}packData(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/pack_data`),method:"POST"},e),{gas:n}=r,i=PP(r,["gas"]);let o=n;const a=new nw(n||"");return a.isNaN()||(o=a),Object.assign({gas:o},i)}))}getRpcUrl(){return this.url}getCurrentPeriod({block:e}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_period`),method:"GET"})}))}getSuccessorPeriod({block:e}=TP){return OP(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/successor_period`),method:"GET"})}))}getSaplingDiffById(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/sapling/${e}/get_diff`),method:"GET"})}))}getSaplingDiffByContract(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/single_sapling_get_diff`),method:"GET"})}))}getProtocols({block:e}=TP){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/protocols`),method:"GET"})}))}getStorageUsedSpace(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage/used_space`),method:"GET"})}))}getStoragePaidSpace(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage/paid_space`),method:"GET"})}))}getTicketBalance(e,t,{block:r}=TP){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/ticket_balance`),method:"POST"},t)}))}getAllTicketBalances(e,{block:t}=TP){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/all_ticket_balances`),method:"GET"})}))}getPendingOperations(e={}){return OP(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/mempool/pending_operations`),method:"GET",query:e})}))}}var HP=r(5784),VP=r(7610),qP=r(9331),KP=r(1514),WP=r(2564),GP=r(3614),ZP=r.n(GP);function YP(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(t){o(t)}}function s(e){try{c(n.throw(e))}catch(t){o(t)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))}"function"===typeof SuppressedError&&SuppressedError;class XP{constructor(e,t,r){this.key=e;const n=e.substring(0,t?5:4);if(!iE(n))throw new BS(`${wE(nE.NO_PREFIX_MATCHED)} expecting either '${ZS.EDESK}' or '${ZS.EDSK}'.`);if(this._key=r(AE(this.key,eE[n])),this._publicKey=this._key.slice(32),!this._key)throw new BS("unable to decode");this.isInit=this.init()}init(){return YP(this,void 0,void 0,(function*(){if(64!==this._key.length){const{publicKey:e,secretKey:t}=(0,wS.K)(new Uint8Array(this._key));this._publicKey=e,this._key=t}return!0}))}sign(e,t){return YP(this,void 0,void 0,(function*(){yield this.isInit;const r=(0,wS._S)(new Uint8Array(this._key),new Uint8Array(t)),n=QS()(r),i=e+jE(n);return{bytes:e,sig:EE(r,eE.sig),prefixSig:EE(r,eE.edsig),sbytes:i}}))}publicKey(){return YP(this,void 0,void 0,(function*(){return yield this.isInit,EE(this._publicKey,eE.edpk)}))}publicKeyHash(){return YP(this,void 0,void 0,(function*(){return yield this.isInit,EE((0,xS.hash)(new Uint8Array(this._publicKey),20),eE.tz1)}))}secretKey(){return YP(this,void 0,void 0,(function*(){yield this.isInit;let e=this._key;const{secretKey:t}=(0,wS.K)(new Uint8Array(e).slice(0,32));return e=QS()(t),EE(e,eE.edsk)}))}}const JP={p256:{pk:eE.p2pk,sk:eE.p2sk,pkh:eE.tz3,sig:eE.p2sig},secp256k1:{pk:eE.sppk,sk:eE.spsk,pkh:eE.tz2,sig:eE.spsig}};class QP{constructor(e,t,r,n){this.curve=e,this.key=t;const i=t.substring(0,r?5:4);if(!iE(i))throw new BS(wE(nE.NO_PREFIX_MATCHED)+` expecting one of the following prefix '${ZS.SPSK}', '${ZS.SPESK}', '${ZS.P2SK}' or '${ZS.P2ESK}'.`);this._key=n(AE(this.key,eE[i]));const o=new(XS().ec)(this.curve).keyFromPrivate(this._key),a=o.getPublic().getY().toArray(),s=(a.length<32?a[a.length-1]:a[31])%2?3:2,c=new Array(32).fill(0);this._publicKey=QS()(new Uint8Array([s].concat(c.concat(o.getPublic().getX().toArray()).slice(-32))))}sign(e,t){return YP(this,void 0,void 0,(function*(){const r=new(XS().ec)(this.curve).keyFromPrivate(this._key).sign(t,{canonical:!0}),n=r.r.toString("hex",64)+r.s.toString("hex",64),i=e+n;return{bytes:e,sig:EE(n,eE.sig),prefixSig:EE(n,JP[this.curve].sig),sbytes:i}}))}publicKey(){return YP(this,void 0,void 0,(function*(){return EE(this._publicKey,JP[this.curve].pk)}))}publicKeyHash(){return YP(this,void 0,void 0,(function*(){return EE((0,xS.hash)(new Uint8Array(this._publicKey),20),JP[this.curve].pkh)}))}secretKey(){return YP(this,void 0,void 0,(function*(){return EE(this._key,JP[this.curve].sk)}))}}const eO=QP.bind(null,"p256"),tO=QP.bind(null,"secp256k1");function rO(e){const t=[];for(let r=0;r64)throw new aO(o.length);if(!Object.prototype.hasOwnProperty.call(lO,r))throw new oO(`Unsupported curve "${r}" expecting either "p256" or "secp256k1"`);const a=new YS.ec(r);if(256!==(null===(n=a.n)||void 0===n?void 0:n.bitLength()))throw new iO(`Invalid curve "${r}" with bit size "${null===(i=a.n)||void 0===i?void 0:i.bitLength()}" expecting bit size "256"`);const s=(new TextEncoder).encode(lO[r]);let c=null,l=new Uint8Array,u=0;for(;0===u;){const e=new KP.yj(WP.SHA512,s).update(o).digest();c=new(ZP())(e.subarray(0,32)),l=e.subarray(32),c.isZero()||c.cmp(a.n)>=0?o=e:u++}const d=a.keyPair({});return d.priv=c,new e(d,l)}derive(t){const r=new Uint8Array(37);0!==(t&dO)?r.set(this.keyPair.getPrivate().toArray(),1):r.set(this.keyPair.getPublic().encodeCompressed(),0),new DataView(r.buffer).setUint32(33,t);let n=new(ZP())(0),i=new Uint8Array,o=0;for(;0===o;){const e=new KP.yj(WP.SHA512,this.chainCode).update(r).digest();n=new(ZP())(e.subarray(0,32)),i=e.subarray(32),this.keyPair.ec.n&&n.cmp(this.keyPair.ec.n)<0&&(n=n.add(this.keyPair.getPrivate()).mod(this.keyPair.ec.n),n.isZero()||o++),r.set(i,1),r[0]=1}const a=this.keyPair.ec.keyPair({});return a.priv=n,new e(a,i)}derivePath(e){let t=this;for(const r of e)t=t.derive(r);return t}bytes(){if(!this.keyPair.priv)throw new BS("missing private key");const e=this.keyPair.priv.toArray(),t=new Uint8Array(32);return t.set(e,t.length-e.length),t}};const dO=2147483648;class hO extends Array{static from(e){return super.from(e).map((e=>e>>>0))}static fromString(e){if(0===e.length)return new hO;let t=e.split("/");const r=[];"m"===t[0]&&(t=t.slice(1));for(let n of t){if(0===n.length)throw new LS(e,": Invalid BIP32 path");let t=0;const i=n[n.length-1];"'"!==i&&"h"!==i&&"H"!==i||(t=dO,n=n.slice(0,n.length-1));const o=(parseInt(n,10)|t)>>>0;r.push(o)}return hO.from(r)}}class fO{constructor(e,t){this.priv=e,this.chainCode=t}static fromSeed(e){const t="string"===typeof e?rO(e):e;if(t.length<16||t.length>64)throw new aO(t.length);const r=(new TextEncoder).encode("ed25519 seed"),n=new KP.yj(WP.SHA512,r).update(t).digest();return new fO((0,wS.K)(n.subarray(0,32)).secretKey,n.subarray(32))}seed(){return this.priv.subarray(0,32)}derive(e){if(0===(e&dO))throw new LS(e.toString(),": Non-hardened derivation path.");const t=new Uint8Array(37);t.set(this.seed(),1),new DataView(t.buffer).setUint32(33,e);const r=new KP.yj(WP.SHA512,this.chainCode).update(t).digest();return new fO((0,wS.K)(r.subarray(0,32)).secretKey,r.subarray(32))}derivePath(e){let t=this;for(const r of e)t=t.derive(r);return t}}class pO{static fromFundraiser(e,t,r){if(!qP.JB(r))throw new nO(r);const n=EE(qP.kw(r,`${e}${t}`).slice(0,32),eE.edsk2);return new pO(n)}static fromSecretKey(e,t){return YP(this,void 0,void 0,(function*(){return new pO(e,t)}))}static fromMnemonic({mnemonic:e,password:t="",derivationPath:r="44'/1729'/0'/0'",curve:n="ed25519"}){if(!qP.JB(e))throw new nO(e);const i=((e,t,r)=>{const n=hO.fromString(t);let i;switch(r){case"ed25519":return i=fO.fromSeed(e).derivePath(n),EE(i.seed().slice(0,32),eE.edsk2);case"secp256k1":case"p256":{const t="secp256k1"===r?eE.spsk:eE.p2sk;let i=uO.fromSeed(e,r);return i=i.derivePath(n),EE(new Uint8Array(i.keyPair.getPrivate().toArray()),t)}case"bip25519":throw new sO;default:throw new oO(`Unsupported curve "${r}" expecting one of the following "ed25519", "secp256k1", "p256"`)}})(qP.kw(e,t),r,n);return new pO(i)}constructor(e,t){const r="e"===e.substring(2,3);let n=e=>e;if(r){if(!t)throw new cO("No passphrase provided to decrypt encrypted key");n=e=>{const r=QS()(e.slice(0,8)),n=e.slice(8),i=VP.pbkdf2Sync(t,r,32768,32,"sha512");return(0,HP.openSecretBox)(new Uint8Array(i),new Uint8Array(24),new Uint8Array(n))}}switch(e.substring(0,4)){case"edes":case"edsk":this._key=new XP(e,r,n);break;case"spsk":case"spes":this._key=new tO(e,r,n);break;case"p2sk":case"p2es":this._key=new eO(e,r,n);break;default:throw new BS(`${wE(nE.NO_PREFIX_MATCHED)} expecting one of the following '${ZS.EDESK}', '${ZS.EDSK}', '${ZS.SPSK}', '${ZS.SPESK}', '${ZS.P2SK}' or '${ZS.P2ESK}'.`)}}sign(e,t){return YP(this,void 0,void 0,(function*(){let r=TE(e);"undefined"!==typeof t&&(r=CE(t,r));const n=(0,xS.hash)(r,32);return this._key.sign(e,n)}))}publicKey(){return YP(this,void 0,void 0,(function*(){return this._key.publicKey()}))}publicKeyHash(){return YP(this,void 0,void 0,(function*(){return this._key.publicKeyHash()}))}secretKey(){return YP(this,void 0,void 0,(function*(){return this._key.secretKey()}))}}function mO(e){return"function"===typeof e}function gO(e){var t=e((function(e){Error.call(e),e.stack=(new Error).stack}));return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var vO=gO((function(e){return function(t){e(this),this.message=t?t.length+" errors occurred during unsubscription:\n"+t.map((function(e,t){return t+1+") "+e.toString()})).join("\n "):"",this.name="UnsubscriptionError",this.errors=t}}));function yO(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var bO=function(){function e(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var e,t,r,n,i;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var a=Wh(o),s=a.next();!s.done;s=a.next()){s.value.remove(this)}}catch(f){e={error:f}}finally{try{s&&!s.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}else o.remove(this);var c=this.initialTeardown;if(mO(c))try{c()}catch(p){i=p instanceof vO?p.errors:[p]}var l=this._finalizers;if(l){this._finalizers=null;try{for(var u=Wh(l),d=u.next();!d.done;d=u.next()){var h=d.value;try{_O(h)}catch(Tie){i=null!==i&&void 0!==i?i:[],Tie instanceof vO?i=Zh(Zh([],Gh(i)),Gh(Tie.errors)):i.push(Tie)}}}catch(m){r={error:m}}finally{try{d&&!d.done&&(n=u.return)&&n.call(u)}finally{if(r)throw r.error}}}if(i)throw new vO(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)_O(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=null!==(r=this._finalizers)&&void 0!==r?r:[]).push(t)}},e.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},e.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},e.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&yO(t,e)},e.prototype.remove=function(t){var r=this._finalizers;r&&yO(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}(),wO=bO.EMPTY;function xO(e){return e instanceof bO||e&&"closed"in e&&mO(e.remove)&&mO(e.add)&&mO(e.unsubscribe)}function _O(e){mO(e)?e():e.unsubscribe()}var kO={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},SO={setTimeout:function(e,t){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(t){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,t)},t.prototype._subscribe=function(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)},t.prototype._innerSubscribe=function(e){var t=this,r=this,n=r.hasError,i=r.isStopped,o=r.observers;return n||i?wO:(this.currentObservers=null,o.push(e),new bO((function(){t.currentObservers=null,yO(o,e)})))},t.prototype._checkFinalizedStatuses=function(e){var t=this,r=t.hasError,n=t.thrownError,i=t.isStopped;r?e.error(n):i&&e.complete()},t.prototype.asObservable=function(){var e=new $O;return e.source=this,e},t.create=function(e,t){return new KO(e,t)},t}($O),KO=function(e){function t(t,r){var n=e.call(this)||this;return n.destination=t,n.source=r,n}return $h(t,e),t.prototype.next=function(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,e)},t.prototype.error=function(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,e)},t.prototype.complete=function(){var e,t;null===(t=null===(e=this.destination)||void 0===e?void 0:e.complete)||void 0===t||t.call(e)},t.prototype._subscribe=function(e){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(e))&&void 0!==r?r:wO},t}(qO),WO={now:function(){return(WO.delegate||Date).now()},delegate:void 0},GO=function(e){function t(t,r,n){void 0===t&&(t=1/0),void 0===r&&(r=1/0),void 0===n&&(n=WO);var i=e.call(this)||this;return i._bufferSize=t,i._windowTime=r,i._timestampProvider=n,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=r===1/0,i._bufferSize=Math.max(1,t),i._windowTime=Math.max(1,r),i}return $h(t,e),t.prototype.next=function(t){var r=this,n=r.isStopped,i=r._buffer,o=r._infiniteTimeWindow,a=r._timestampProvider,s=r._windowTime;n||(i.push(t),!o&&i.push(a.now()+s)),this._trimBuffer(),e.prototype.next.call(this,t)},t.prototype._subscribe=function(e){this._throwIfClosed(),this._trimBuffer();for(var t=this._innerSubscribe(e),r=this._infiniteTimeWindow,n=this._buffer.slice(),i=0;i0&&d(i)}),void 0,void 0,(function(){(null===o||void 0===o?void 0:o.closed)||null===o||void 0===o||o.unsubscribe(),s=null}))),!l&&d(null!=n?"number"===typeof n?n:+n-c.now():i)}))}function XT(e){throw new ZT(e)}function JT(e,t){return mO(t)?LT(e,t,1):LT(e,1)}function QT(){for(var e=[],t=0;t0&&(t=new LO({next:function(e){return m.next(e)},error:function(e){u=!0,d(),n=rC(h,i,e),m.error(e)},complete:function(){l=!0,d(),n=rC(h,a),m.complete()}}),aT(e).subscribe(t))}))(e)}}function rC(e,t){for(var r=[],n=2;n=2;return function(n){return n.pipe(e?iC((function(t,r){return e(t,r,n)})):FO,(o=1)<=0?function(){return lT}:gT((function(e,t){var r=0;e.subscribe(vT(t,(function(e){++r<=o&&(t.next(e),o<=r&&t.complete())})))})),r?function(e){return gT((function(t,r){var n=!1;t.subscribe(vT(r,(function(e){n=!0,r.next(e)}),(function(){n||r.next(e),r.complete()})))}))}(t):(void 0===(i=function(){return new oC})&&(i=aC),gT((function(e,t){var r=!1;e.subscribe(vT(t,(function(e){r=!0,t.next(e)}),(function(){return r?t.complete():t.error(i())})))}))));var i,o}}function cC(e){return gT((function(t,r){var n,i=null,o=!1;i=t.subscribe(vT(r,void 0,void 0,(function(a){n=aT(e(a,cC(e)(t))),i?(i.unsubscribe(),i=null,n.subscribe(r)):o=!0}))),o&&(i.unsubscribe(),i=null,n.subscribe(r))}))}function lC(e,t){return void 0===t&&(t=FO),e=null!==e&&void 0!==e?e:uC,gT((function(r,n){var i,o=!0;r.subscribe(vT(n,(function(r){var a=t(r);!o&&e(i,a)||(o=!1,i=a,n.next(r))})))}))}function uC(e,t){return e===t}function dC(e){var t;void 0===e&&(e=1/0);var r=(t=e&&"object"===typeof e?e:{count:e}).count,n=void 0===r?1/0:r,i=t.delay,o=t.resetOnSuccess,a=void 0!==o&&o;return n<=0?FO:gT((function(e,t){var r,o=0,s=function(){var c=!1;r=e.subscribe(vT(t,(function(e){a&&(o=0),t.next(e)}),void 0,(function(e){if(o++{r.set(t,e[t])})),r}typecheckKey(e){this.keySchema&&this.keySchema.Typecheck(e)}typecheckValue(e){this.valueSchema&&this.valueSchema.Typecheck(e)}assertTypecheckValue(e){try{this.typecheckValue(e)}catch(t){throw new SC(e,this.valueSchema,"value",t)}}assertTypecheckKey(e){try{this.typecheckKey(e)}catch(t){throw new SC(e,this.keySchema,"key",t)}}serializeDeterministically(e){return wC()(e)}*keys(){for(const[e]of this.entries())yield e}*values(){for(const[,e]of this.entries())yield e}*entries(){for(const e of this.valueMap.keys())yield[this.keyMap.get(e),this.valueMap.get(e)]}get(e){this.assertTypecheckKey(e);const t=this.serializeDeterministically(e);return this.valueMap.get(t)}set(e,t){this.assertTypecheckKey(e),this.assertTypecheckValue(t);const r=this.serializeDeterministically(e);this.keyMap.set(r,e),this.valueMap.set(r,t)}delete(e){this.assertTypecheckKey(e),this.keyMap.delete(this.serializeDeterministically(e)),this.valueMap.delete(this.serializeDeterministically(e))}has(e){this.assertTypecheckKey(e);const t=this.serializeDeterministically(e);return this.keyMap.has(t)&&this.valueMap.has(t)}clear(){this.keyMap.clear(),this.valueMap.clear()}get size(){return this.keyMap.size}forEach(e){for(const[t,r]of this.entries())e(r,t,this)}}yC=kC;class AC extends AS{constructor(e,t,r){super(),this.value=e,this.token=t,this.name="TokenValidationError";const n=this.token.annot(),i=n?`[${n}] `:"";this.message=`${i}${r}`}}class PC{constructor(e,t,r){this.val=e,this.idx=t,this.fac=r,this.createToken=this.fac}typeWithoutAnnotations(){const e=t=>{if("object"===typeof t){if(Array.isArray(t)){return t.map((t=>e(t)))}const r=t;return r.args?{prim:r.prim,args:r.args.map((t=>e(t)))}:{prim:r.prim}}return t};return(t=this.val).args?{prim:t.prim,args:t.args.map((t=>e(t)))}:{prim:t.prim};var t}annot(){return(Array.isArray(this.val.annots)&&this.val.annots.length>0?this.val.annots[0]:String(this.idx)).replace(/(%|:)(_Liq_entry_)?/,"")}hasAnnotations(){return Array.isArray(this.val.annots)&&this.val.annots.length}get tokenVal(){return this.val}ExtractSignature(){return[[this.ExtractSchema()]]}}class OC extends PC{compare(e,t){return e===t?0:ethis.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(t.get(e))]})))}EncodeObject(e,t){const r=this.objLitToMichelsonMap(e);return this.validate(r),t&&t[CC.prim]?t[CC.prim](r,this.val):Array.from(r.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(r.get(e))]})))}Execute(e,t){if(t&&t[CC.prim])return t[CC.prim](e,this.val);if(Array.isArray(e)){const t=new EC(this.val);return e.forEach((e=>{t.set(this.KeySchema.ToKey(e.args[0]),this.ValueSchema.Execute(e.args[1]))})),t}if("int"in e)return e.int;throw new TC(e,this,`Big map is expecting either an array (Athens) or an object with an int property (Babylon). Got ${JSON.stringify(e)}`)}findAndReturnTokens(e,t){return CC.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),this.ValueSchema.findAndReturnTokens(e,t),t}}CC.prim="big_map";class jC extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="OrValidationError"}}class RC extends OC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Encode(e){const t=e[e.length-1],r=this.createToken(this.val.args[0],this.idx);let n=1;r instanceof RC&&(n=Object.keys(r.ExtractSchema()).length);const i=this.createToken(this.val.args[1],this.idx+n);if(String(r.annot())!==String(t)||r instanceof RC){if(String(i.annot())!==String(t)||i instanceof RC){if(r instanceof RC){const t=r.Encode(e);if(t)return{prim:"Left",args:[t]}}if(i instanceof RC){const t=i.Encode(e);if(t)return{prim:"Right",args:[t]}}return null}return e.pop(),{prim:"Right",args:[i.Encode(e)]}}return e.pop(),{prim:"Left",args:[r.Encode(e)]}}ExtractSignature(){const e=this.createToken(this.val.args[0],this.idx);let t=1;e instanceof RC&&(t=Object.keys(e.ExtractSchema()).length);const r=this.createToken(this.val.args[1],this.idx+t),n=[];if(e instanceof RC)n.push(...e.ExtractSignature());else for(const i of e.ExtractSignature())n.push([e.annot(),...i]);if(r instanceof RC)n.push(...r.ExtractSignature());else for(const i of r.ExtractSignature())n.push([r.annot(),...i]);return n}EncodeObject(e,t){this.validateJavascriptObject(e);const r=Object.keys(e)[0],n=this.createToken(this.val.args[0],this.idx);let i=1;n instanceof RC&&(i=Object.keys(n.ExtractSchema()).length);const o=this.createToken(this.val.args[1],this.idx+i);if(String(n.annot())!==String(r)||n instanceof RC){if(String(o.annot())!==String(r)||o instanceof RC){if(n instanceof RC){const r=n.EncodeObject(e,t);if(r)return{prim:"Left",args:[r]}}if(o instanceof RC){const r=o.EncodeObject(e,t);if(r)return{prim:"Right",args:[r]}}return null}return{prim:"Right",args:[o.EncodeObject(e[r],t)]}}return{prim:"Left",args:[n.EncodeObject(e[r],t)]}}validateJavascriptObject(e){if("object"!==typeof e||Array.isArray(e)||null===e||1!==Object.keys(e).length)throw new jC(e,this,`EncodeObject expects an object with a single key but got: ${JSON.stringify(e)}`)}Execute(e,t){const r=this.createToken(this.val.args[0],this.idx);let n=1;r instanceof RC&&(n=Object.keys(r.ExtractSchema()).length);const i=this.createToken(this.val.args[1],this.idx+n);if("Right"===e.prim)return i instanceof RC?i.Execute(e.args[0],t):{[i.annot()]:i.Execute(e.args[0],t)};if("Left"===e.prim)return r instanceof RC?r.Execute(e.args[0],t):{[r.annot()]:r.Execute(e.args[0],t)};throw new jC(e,this,`Was expecting Left or Right prim but got: ${JSON.stringify(e.prim)}`)}traversal(e,t,r){const n=this.createToken(this.val.args[0],this.idx);let i,o=1;n instanceof RC?(i=e(n),o=Object.keys(n.ExtractSchema()).length):i={[n.annot()]:e(n)};const a=this.createToken(this.val.args[1],this.idx+o);let s;s=a instanceof RC?t(a):{[a.annot()]:t(a)};return r(i,s)}ExtractSchema(){return this.traversal((e=>e.ExtractSchema()),(e=>e.ExtractSchema()),((e,t)=>Object.assign(Object.assign({},e),t)))}generateSchema(){return{__michelsonType:RC.prim,schema:this.traversal((e=>e instanceof RC?e.generateSchema().schema:e.generateSchema()),(e=>e instanceof RC?e.generateSchema().schema:e.generateSchema()),((e,t)=>Object.assign(Object.assign({},e),t)))}}findToken(e){const t=this.createToken(this.val.args[0],this.idx);let r=1;t instanceof RC&&(r=Object.keys(t.ExtractSchema()).length);const n=this.createToken(this.val.args[1],this.idx+r);if(String(t.annot())===String(e)&&!(t instanceof RC)&&t instanceof OC)return t;if(String(n.annot())===String(e)&&!(n instanceof RC)&&n instanceof OC)return n;if(t instanceof RC){const r=t.findToken(e);if(r)return r}if(n instanceof RC){const t=n.findToken(e);if(t)return t}return null}compare(e,t){const r=Object.keys(e)[0];if(r!==Object.keys(t)[0]){return JSON.stringify(this.EncodeObject(e))r.findAndReturnTokens(e,t)),(r=>r.findAndReturnTokens(e,t)),((e,t)=>Object.assign(Object.assign({},e),t))),t}}RC.prim="or";class IC extends AS{constructor(e){super(e),this.message=e,this.name="TokenArgumentValidationError"}}class MC extends AS{constructor(e,t){super(),this.val1=e,this.val2=t,this.name="TokenComparisonError",this.message=`Tokens ${JSON.stringify(e)} and ${JSON.stringify(t)} are not comparable`}}function LC(e,t=NC.prim){if(Array.isArray(e))return LC({prim:t,args:e},t);if(void 0===e.args)throw new IC(`The value ${JSON.stringify(e)} is an invalid PairToken with no arguments, a pair must have two or more arguments.`);return e.args.length>2?[e.args[0],{prim:t,args:e.args.slice(1)}]:[e.args[0],e.args[1]]}class NC extends OC{constructor(e,t,r){super(Array.isArray(e)?{prim:NC.prim,args:e}:e.prim?e:{prim:NC.prim,args:e},t,r)}args(){return LC(this.val)}tokens(){let e=0;return this.args().map((t=>{const r=this.createToken(t,this.idx+e);return r instanceof NC?e+=Object.keys(r.ExtractSchema()).length:e++,r}))}Encode(e){return{prim:"Pair",args:this.tokens().map((t=>t.Encode(e)))}}ExtractSignature(){const e=this.args(),t=this.createToken(e[0],this.idx);let r=1;t instanceof RC&&(r=Object.keys(t.ExtractSchema()).length);const n=this.createToken(e[1],this.idx+r),i=[];for(const o of t.ExtractSignature())for(const e of n.ExtractSignature())i.push([...o,...e]);return i}ToBigMapKey(e){return{key:this.EncodeObject(e),type:this.typeWithoutAnnotations()}}ToKey(e){return this.Execute(e)}EncodeObject(e,t){const[r,n]=this.tokens();let i,o;return i=r instanceof NC&&!r.hasAnnotations()?e:e[r.annot()],o=n instanceof NC&&!n.hasAnnotations()?e:e[n.annot()],{prim:"Pair",args:[r.EncodeObject(i,t),n.EncodeObject(o,t)]}}traversal(e,t){const r=this.args(),n=this.createToken(r[0],this.idx);let i,o=1;n instanceof NC&&!n.hasAnnotations()?(i=e(n),n instanceof NC&&(o=Object.keys(n.ExtractSchema()).length)):i={[n.annot()]:e(n)};const a=this.createToken(r[1],this.idx+o);let s;s=a instanceof NC&&!a.hasAnnotations()?t(a):{[a.annot()]:t(a)};return Object.assign(Object.assign({},i),s)}Execute(e,t){const r=LC(e,"Pair");return this.traversal((e=>e.Execute(r[0],t)),(e=>e.Execute(r[1],t)))}ExtractSchema(){return this.traversal((e=>e.ExtractSchema()),(e=>e.ExtractSchema()))}generateSchema(){return{__michelsonType:NC.prim,schema:this.traversal((e=>e instanceof NC&&!e.hasAnnotations()?e.generateSchema().schema:e.generateSchema()),(e=>e instanceof NC&&!e.hasAnnotations()?e.generateSchema().schema:e.generateSchema()))}}compare(e,t){const[r,n]=this.tokens(),i=(e,t)=>e instanceof NC&&!e.hasAnnotations()?t:t[e.annot()];if(r instanceof OC&&n instanceof OC){const o=r.compare(i(r,e),i(r,t));return 0===o?n.compare(i(n,e),i(n,t)):o}throw new MC(e,t)}findAndReturnTokens(e,t){return NC.prim===e&&t.push(this),this.tokens().map((r=>r.findAndReturnTokens(e,t))),t}}NC.prim="pair";class DC extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="NatValidationError"}}class zC extends OC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return new nw(e[Object.keys(e)[0]])}Encode(e){const t=e.pop();return this.validate(t),{int:new nw(t).toFixed()}}validate(e){const t=new nw(e);if(t.isNaN())throw new DC(e,this,`Value is not a number: ${JSON.stringify(e)}`);if(t.isNegative())throw new DC(e,this,`Value cannot be negative: ${JSON.stringify(e)}`)}EncodeObject(e,t){return this.validate(e),t&&t[zC.prim]?t[zC.prim](e):{int:new nw(e).toFixed()}}ExtractSchema(){return zC.prim}generateSchema(){return{__michelsonType:zC.prim,schema:zC.prim}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:zC.prim}}}ToKey({int:e}){return new nw(e)}compare(e,t){const r=Number(e),n=Number(t);return r===n?0:re.startsWith("tz"),n=r(e),i=r(t);return n&&!i?-1:i&&!n?1:super.compare(e,t)}findAndReturnTokens(e,t){return UC.prim===e&&t.push(this),t}}UC.prim="address";class $C extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="MapValidationError"}}class HC extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get ValueSchema(){return this.createToken(this.val.args[1],0)}get KeySchema(){return this.createToken(this.val.args[0],0)}validate(e){if(!EC.isMichelsonMap(e))throw new $C(e,this,`Value ${JSON.stringify(e)} is not a valid MichelsonMap`)}Execute(e,t){const r=new EC(this.val);return e.forEach((e=>{r.set(this.KeySchema.ToKey(e.args[0]),this.ValueSchema.Execute(e.args[1],t))})),r}objLitToMichelsonMap(e){return e instanceof EC?e:"object"===typeof e?0===Object.keys(e).length?new EC:EC.fromLiteral(e):e}Encode(e){const t=this.objLitToMichelsonMap(e.pop());return this.validate(t),Array.from(t.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(t.get(e))]})))}EncodeObject(e,t){const r=this.objLitToMichelsonMap(e);return this.validate(r),t&&t[HC.prim]?t[HC.prim](r):Array.from(r.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(r.get(e))]})))}ExtractSchema(){return{map:{key:this.KeySchema.ExtractSchema(),value:this.ValueSchema.ExtractSchema()}}}generateSchema(){return{__michelsonType:HC.prim,schema:{key:this.KeySchema.generateSchema(),value:this.ValueSchema.generateSchema()}}}findAndReturnTokens(e,t){return HC.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),this.ValueSchema.findAndReturnTokens(e,t),t}}HC.prim="map";class VC extends OC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return"true"===String(e.prim).toLowerCase()}Encode(e){return{prim:e.pop()?"True":"False"}}EncodeObject(e,t){return t&&t[VC.prim]?t[VC.prim](e):{prim:e?"True":"False"}}ExtractSchema(){return VC.prim}generateSchema(){return{__michelsonType:VC.prim,schema:VC.prim}}ToBigMapKey(e){return{key:this.EncodeObject(e),type:{prim:VC.prim}}}ToKey(e){return this.EncodeObject(e)}compare(e,t){return e&&t||!e&&!t?0:e?1:-1}findAndReturnTokens(e,t){return VC.prim===e&&t.push(this),t}}VC.prim="bool";class qC extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ContractValidationError"}}class KC extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(fE(e)!==nE.VALID)throw new qC(e,this,`Value ${JSON.stringify(e)} is not a valid contract address.`);return null}Execute(e){if(e.string)return e.string;if(!e.bytes)throw new qC(e,this,`Value ${JSON.stringify(e)} is not a valid contract address. must contain bytes or string.`);return PE(e.bytes)}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[KC.prim]?t[KC.prim](e):{string:e}}ExtractSchema(){return KC.prim}generateSchema(){const e=this.createToken(this.val.args[0],0);return{__michelsonType:KC.prim,schema:{parameter:this.val.args[0]?e.generateSchema():{}}}}findAndReturnTokens(e,t){return KC.prim===e&&t.push(this),t}}KC.prim="contract";class WC extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ListValidationError"}}class GC extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueSchema(){return this.createToken(this.val.args[0],this.idx)}validate(e){if(!Array.isArray(e))throw new WC(e,this,`Value ${JSON.stringify(e)} is not a valid array`)}Encode(e){const t=e.pop();this.validate(t);const r=this.createToken(this.val.args[0],0);return t.reduce(((e,t)=>[...e,r.EncodeObject(t)]),[])}Execute(e,t){const r=this.createToken(this.val.args[0],0);return this.validate(e),e.reduce(((e,n)=>[...e,r.Execute(n,t)]),[])}EncodeObject(e,t){const r=this.createToken(this.val.args[0],0);return this.validate(e),t&&t[GC.prim]?t[GC.prim](e):e.reduce(((e,t)=>[...e,r.EncodeObject(t)]),[])}ExtractSchema(){return{[GC.prim]:this.valueSchema.ExtractSchema()}}generateSchema(){return{__michelsonType:GC.prim,schema:this.valueSchema.generateSchema()}}findAndReturnTokens(e,t){return GC.prim===e&&t.push(this),this.createToken(this.val.args[0],this.idx).findAndReturnTokens(e,t),t}}GC.prim="list";class ZC extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="MutezValidationError"}}class YC extends OC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return new nw(e[Object.keys(e)[0]])}ExtractSchema(){return YC.prim}generateSchema(){return{__michelsonType:YC.prim,schema:YC.prim}}validate(e){if(new nw(e).isNaN())throw new ZC(e,this,`Value is not a number: ${e}`)}Encode(e){const t=e.pop();return this.validate(t),{int:String(t).toString()}}EncodeObject(e,t){return this.validate(e),t&&t[YC.prim]?t[YC.prim](e):{int:String(e).toString()}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:YC.prim}}}ToKey({int:e}){return e}compare(e,t){const r=Number(e),n=Number(t);return r===n?0:rthis.KeySchema.compare(e,t))).reduce(((e,t)=>[...e,this.KeySchema.EncodeObject(t)]),[])}Execute(e,t){return e.reduce(((e,r)=>[...e,this.KeySchema.Execute(r,t)]),[])}EncodeObject(e,t){return this.validate(e),t&&t[fj.prim]?t[fj.prim](e):e.sort(((e,t)=>this.KeySchema.compare(e,t))).reduce(((e,t)=>[...e,this.KeySchema.EncodeObject(t)]),[])}ExtractSchema(){return fj.prim}generateSchema(){return{__michelsonType:fj.prim,schema:this.KeySchema.generateSchema()}}findAndReturnTokens(e,t){return fj.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),t}}fj.prim="set";class pj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChainIDValidationError"}}class mj extends OC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(pE(e)!==nE.VALID)throw new pj(e,this,`Value ${JSON.stringify(e)} is not a valid ChainID`)}Execute(e){return e[Object.keys(e)[0]]}ExtractSchema(){return mj.prim}generateSchema(){return{__michelsonType:mj.prim,schema:mj.prim}}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[mj.prim]?t[mj.prim](e):{string:e}}ToKey({string:e}){return e}ToBigMapKey(e){return{key:{string:e},type:{prim:mj.prim}}}findAndReturnTokens(e,t){return mj.prim===e&&t.push(this),t}}mj.prim="chain_id";class gj extends AS{constructor(){super(),this.name="TicketEncodeError",this.message="Tickets cannot be sent to the blockchain; they are created on-chain"}}const vj={prim:"contract"},yj={prim:"int"};class bj extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueToken(){return this.createToken(this.val.args[0],this.idx)}Encode(e){throw new gj}EncodeObject(e,t){if(t&&t[bj.prim])return t[bj.prim](e,this.val);throw new gj}Execute(e,t){if(t&&t[bj.prim])return t[bj.prim](e,this.val);const r=this.createToken(vj,this.idx),n=this.valueToken,i=this.createToken(yj,this.idx);return void 0===e.args[2]&&void 0!==e.args[1].args?{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1].args[0],t),amount:i.Execute(e.args[1].args[1],t)}:{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1],t),amount:i.Execute(e.args[2],t)}}ExtractSchema(){return{ticketer:KC.prim,value:this.valueToken.ExtractSchema(),amount:rj.prim}}generateSchema(){return{__michelsonType:bj.prim,schema:{value:this.valueToken.generateSchema(),ticketer:{__michelsonType:KC.prim,schema:KC.prim},amount:{__michelsonType:rj.prim,schema:rj.prim}}}}findAndReturnTokens(e,t){return bj.prim===e&&t.push(this),this.valueToken.findAndReturnTokens(e,t),t}}bj.prim="ticket";class wj extends AS{constructor(){super(),this.name="TicketDeprecatedEncodeError",this.message="Ticket_deprecated cannot be sent to the blockchain; they are created on-chain"}}const xj={prim:"contract"},_j={prim:"int"};class kj extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueToken(){return this.createToken(this.val.args[0],this.idx)}Encode(e){throw new wj}EncodeObject(e,t){if(t&&t[kj.prim])return t[kj.prim](e,this.val);throw new wj}Execute(e,t){if(t&&t[kj.prim])return t[kj.prim](e,this.val);const r=this.createToken(xj,this.idx),n=this.valueToken,i=this.createToken(_j,this.idx);return void 0===e.args[2]&&void 0!==e.args[1].args?{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1].args[0],t),amount:i.Execute(e.args[1].args[1],t)}:{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1],t),amount:i.Execute(e.args[2],t)}}ExtractSchema(){return{ticketer:KC.prim,value:this.valueToken.ExtractSchema(),amount:rj.prim}}generateSchema(){return{__michelsonType:kj.prim,schema:{value:this.valueToken.generateSchema(),ticketer:{__michelsonType:KC.prim,schema:KC.prim},amount:{__michelsonType:rj.prim,schema:rj.prim}}}}findAndReturnTokens(e,t){return kj.prim===e&&t.push(this),this.valueToken.findAndReturnTokens(e,t),t}}kj.prim="ticket_deprecated";class Sj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="NeverTokenError"}}class Ej extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Encode(e){const t=e.pop();throw new Sj(t,this,`Assigning a value to the type never is forbidden. Trying to assign ${JSON.stringify(t)}.`)}EncodeObject(e,t){if(t&&t[Ej.prim])return t[Ej.prim](e);throw new Sj(e,this,`Assigning a value to the type never is forbidden. Trying to assign ${JSON.stringify(e)}.`)}Execute(e){throw new Sj(e,this,`There is no literal value for the type never. Trying to execute ${JSON.stringify(e)}.`)}ExtractSchema(){return Ej.prim}generateSchema(){return{__michelsonType:Ej.prim,schema:Ej.prim}}findAndReturnTokens(e,t){return Ej.prim===e&&t.push(this),t}}Ej.prim="never";class Aj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingStateValidationError"}}class Pj extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}isValid(e){return"object"===typeof e&&0===Object.keys(e).length}Execute(e,t){if(t&&t[Pj.prim])return t[Pj.prim](e,this.val);if("int"in e)return e.int;throw new Aj(e,this,`Sapling state is expecting an object with an int property. Got ${JSON.stringify(e)}`)}Encode(e){const t=e.pop();if(this.isValid(t))return[];throw new Aj(t,this,`Invalid sapling_state. Received: ${JSON.stringify(t)} while expecting: {}`)}EncodeObject(e,t){if(t&&t[Pj.prim])return t[Pj.prim](e);if(this.isValid(e))return[];throw new Aj(e,this,`Invalid sapling_state. Received: ${JSON.stringify(e)} while expecting: {}`)}ExtractSchema(){return{[Pj.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:Pj.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return Pj.prim===e&&t.push(this),t}}Pj.prim="sapling_state";class Oj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingTransactionValidationError"}}class Tj extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){throw new Oj(e,this,`There is no literal value for the sapling_transaction type. Got: ${JSON.stringify(e)}.`)}validateBytes(e){const t=/^(0x|0X)?([0-9a-fA-F]*$)/.exec(e);if(t&&t[2].length%2===0)return t[2];throw new Oj(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?xC.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.validateBytes(this.convertUint8ArrayToHexString(t)),{bytes:String(t).toString()}}EncodeObject(e,t){return e=this.validateBytes(this.convertUint8ArrayToHexString(e)),t&&t[Tj.prim]?t[Tj.prim](e):{bytes:String(e).toString()}}ExtractSchema(){return{[Tj.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:Tj.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return Tj.prim===e&&t.push(this),t}}Tj.prim="sapling_transaction";class Cj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingTransactionDeprecatedValidationError"}}class jj extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){throw new Cj(e,this,`There is no literal value for the sapling_transaction_deprecated type. Got: ${JSON.stringify(e)}.`)}validateBytes(e){const t=/^(0x|0X)?([0-9a-fA-F]*$)/.exec(e);if(t&&t[2].length%2===0)return t[2];throw new Cj(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?xC.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.validateBytes(this.convertUint8ArrayToHexString(t)),{bytes:String(t).toString()}}EncodeObject(e,t){return e=this.validateBytes(this.convertUint8ArrayToHexString(e)),t&&t[jj.prim]?t[jj.prim](e):{bytes:String(e).toString()}}ExtractSchema(){return{[jj.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:jj.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return jj.prim===e&&t.push(this),t}}jj.prim="sapling_transaction_deprecated";class Rj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381frValidationError"}}class Ij extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new Rj(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?xC.from(e).toString("hex"):e}Encode(e){let t=e.pop();return"number"===typeof t?{int:t.toString()}:(t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t})}EncodeObject(e,t){return t&&t[Ij.prim]?t[Ij.prim](e):"number"===typeof e?{int:e.toString()}:(e=this.convertUint8ArrayToHexString(e),this.validate(e),{bytes:e})}Execute(e){return e.bytes}ExtractSchema(){return Ij.prim}generateSchema(){return{__michelsonType:Ij.prim,schema:Ij.prim}}findAndReturnTokens(e,t){return Ij.prim===e&&t.push(this),t}}Ij.prim="bls12_381_fr";class Mj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381g1ValidationError"}}class Lj extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new Mj(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?xC.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[Lj.prim]?t[Lj.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return Lj.prim}generateSchema(){return{__michelsonType:Lj.prim,schema:Lj.prim}}findAndReturnTokens(e,t){return Lj.prim===e&&t.push(this),t}}Lj.prim="bls12_381_g1";class Nj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381g2ValidationError"}}class Dj extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new Nj(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?xC.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[Dj.prim]?t[Dj.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return Dj.prim}generateSchema(){return{__michelsonType:Dj.prim,schema:Dj.prim}}findAndReturnTokens(e,t){return Dj.prim===e&&t.push(this),t}}Dj.prim="bls12_381_g2";class zj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChestValidationError"}}class Bj extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!=0)throw new zj(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?xC.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[Bj.prim]?t[Bj.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return Bj.prim}generateSchema(){return{__michelsonType:Bj.prim,schema:Bj.prim}}findAndReturnTokens(e,t){return Bj.prim===e&&t.push(this),t}}Bj.prim="chest";class Fj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChestKeyValidationError"}}class Uj extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new Fj(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?xC.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[Uj.prim]?t[Uj.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return Uj.prim}generateSchema(){return{__michelsonType:Uj.prim,schema:Uj.prim}}findAndReturnTokens(e,t){return Uj.prim===e&&t.push(this),t}}Uj.prim="chest_key";class $j extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="GlobalConstantEncodingError"}}class Hj extends AC{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="GlobalConstantDecodingError"}}class Vj extends PC{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e,t){if(t&&t[Vj.prim])return t[Vj.prim](e,this.val);throw new Hj(e,this,`Unable to decode a value represented by a global constants. Please provide an expanded script to the Michelson-Encoder or semantics for the decoding. The following global constant hash was encountered: ${this.val.args[0].string}.`)}Encode(e){throw new $j(e,this,`Unable to encode a script containing global constants. Please provide an expanded script to the Michelson-Encoder. The following global constant hash was encountered: ${this.val.args[0].string}.`)}EncodeObject(e,t){if(t&&t[Vj.prim])return t[Vj.prim](e);throw new $j(e,this,`Unable to encode a script containing global constants. Please provide an expanded script to the Michelson-Encoder. The following global constant hash was encountered: ${this.val.args[0].string}.`)}ExtractSchema(){return Vj.prim}generateSchema(){return{__michelsonType:Vj.prim,schema:{hash:this.val.args[0].string}}}findAndReturnTokens(e,t){return Vj.prim===e&&t.push(this),t}}Vj.prim="constant";const qj=[NC,zC,BC,CC,UC,HC,VC,RC,KC,GC,YC,JC,QC,ej,rj,nj,oj,sj,lj,uj,dj,fj,mj,bj,kj,Ej,Pj,Tj,jj,Ij,Lj,Dj,Bj,Uj,Vj];class Kj extends AS{constructor(e,t){super(e),this.message=e,this.data=t,this.name="Invalid token error"}}function Wj(e,t){if(Array.isArray(e))return new NC(e,t,Wj);const r=qj.find((t=>t.prim===e.prim));if(!r)throw new Kj(`Malformed data: ${JSON.stringify(e)}. Expected a value with a valid prim property`,e);return new r(e,t,Wj)}class Gj extends zS{constructor(e,t,r,n){super(e,t,r,n),this.viewName=e,this.sigs=t,this.args=r,this.cause=n,this.name="ParameterEncodingError",this.message=`Could not encode parameter ${JSON.stringify(r)} received for name "${e}" expecting one of the following signatures ${JSON.stringify(t)}`}}class Zj extends AS{constructor(e,t){super(),this.script=e,this.reason=t,this.name="InvalidScriptError";let r="Invalid on-chain view found in the following script.";t&&(r+=` Reason: ${t}.`),r+=`Script: ${JSON.stringify(e)}`,this.message=r}}class Yj extends AS{constructor(e,t){super(),this.script=e,this.reason=t,this.name="InvalidRpcResponseError";let r="Invalid RPC response passed as argument(s).";t&&(r+=` Reason: ${t}.`),r+=` Received: ${JSON.stringify(e)}`,this.message=r}}class Xj extends AS{constructor(e){super(e),this.message=e,this.name="InvalidBigMapSchemaError"}}class Jj extends AS{constructor(e,t){super(e),this.message=e,this.value=t,this.name="InvalidBigMapDiffError"}}class Qj extends AS{constructor(e,t,r,n){super(),this.details=t,this.schema=r,this.value=n,this.name="BigMapEncodingError",this.message=`Unable to encode the big map ${e}. Schema is: ${JSON.stringify(r)}. The ${e} is: ${JSON.stringify(n)}. Error details: ${t}`}}class eR extends AS{constructor(e,t,r,n,i){super(),this.details=t,this.schema=r,this.value=n,this.semantics=i,this.name="StorageEncodingError",this.message=`Unable to encode ${e}. The schema is: ${JSON.stringify(r)}, the value is: ${JSON.stringify(n)}.${i?`And the semantic is: ${JSON.stringify(i)}`:""}. Error details: ${t}`}}class tR extends AS{constructor(e){super(e),this.message=e,this.name="MissingArgumentError"}}var rR;const nR=Symbol.for("taquito-schema-type-symbol");function iR(e,t=NC.prim){var r,n;if(Array.isArray(e))return iR({prim:t,args:e},t);const i=e;return i.prim===t&&i.args&&i.args.length>2?Object.assign(Object.assign({},i),{args:[null===(r=i.args)||void 0===r?void 0:r[0],{prim:t,args:null===(n=i.args)||void 0===n?void 0:n.slice(1)}]}):i}function oR(e,t){if(void 0===e||void 0===t)return e===t;const r=iR(e),n=iR(t);return r.prim===n.prim&&(void 0===r.args&&void 0===n.args||void 0!==r.args&&void 0!==n.args&&r.args.length===n.args.length&&r.args.every(((e,t)=>{var r,i;return oR(e,null!==(i=null===(r=n.args)||void 0===r?void 0:r[t])&&void 0!==i?i:{})})))&&(void 0===r.annots&&void 0===n.annots||void 0!==r.annots&&void 0!==n.annots&&r.annots.length===n.annots.length&&r.annots.every(((e,t)=>{var r;return e===(null===(r=n.annots)||void 0===r?void 0:r[t])})))}class aR{static isSchema(e){return e&&!0===e[nR]}static fromRPCResponse(e){if(!e)throw new Yj(e,"the RPC response is empty");if(!e.script)throw new Yj(e,"the RPC response has no script");if(!Array.isArray(e.script.code))throw new Yj(e,"The response.script.code should be an array");let t=e.script.code;for(;1===t.length&&Array.isArray(t[0]);)t=t[0];const r=t.find((e=>"prim"in e&&"storage"===e.prim));if(!r||!Array.isArray(r.args))throw new Yj(e,'The response.script.code has an element of type {prim: "storage"}, but its args is not an array');return new aR(r.args[0])}isExpressionExtended(e){return"prim"in e&&Array.isArray(e.args)}constructor(e){if(this.val=e,this[rR]=!0,this.root=Wj(e,0),this.root instanceof CC)this.bigMap=this.root;else if(this.isExpressionExtended(e)&&"pair"===e.prim){const t=e.args[0];this.isExpressionExtended(t)&&"big_map"===t.prim&&(this.bigMap=new CC(t,0,Wj))}}removeTopLevelAnnotation(e){return(this.root instanceof NC||this.root instanceof RC)&&this.root.hasAnnotations()&&"object"===typeof e&&1===Object.keys(e).length?e[Object.keys(e)[0]]:e}Execute(e,t){const r=this.root.Execute(e,t);return this.removeTopLevelAnnotation(r)}Typecheck(e){this.root instanceof CC&&Number.isInteger(Number(e))||this.root instanceof bj&&e.ticketer&&e.value&&e.amount||this.root instanceof kj&&e.ticketer&&e.value&&e.amount||this.root instanceof HC&&this.root.ValueSchema instanceof CC||this.root.EncodeObject(e)}ExecuteOnBigMapDiff(e,t){if(!this.bigMap)throw new Xj("Big map schema is undefined");if(!Array.isArray(e))throw new Jj(`Big map diff must be an array, got: ${JSON.stringify(e)}`,e);const r=e.map((({key:e,value:t})=>({args:[e,t]})));return this.bigMap.Execute(r,t)}ExecuteOnBigMapValue(e,t){if(!this.bigMap)throw new Xj("Big map schema is undefined");return this.bigMap.ValueSchema.Execute(e,t)}EncodeBigMapKey(e){if(!this.bigMap)throw new Xj("Big map schema is undefined");try{return this.bigMap.KeySchema.ToBigMapKey(e)}catch(t){throw new Qj("key",t,this.bigMap.KeySchema,e)}}Encode(e,t){try{return this.root.EncodeObject(e,t)}catch(r){if(r instanceof AC)throw r;throw new eR("storage object",r,this.root,e,t)}}ExtractSchema(){return this.removeTopLevelAnnotation(this.root.ExtractSchema())}generateSchema(){return this.removeTopLevelAnnotation(this.root.generateSchema())}ComputeState(e,t){if(!this.bigMap)throw new Xj("Big map schema is undefined");const r=e.reduce(((e,t)=>Object.assign(Object.assign({},e),this.ExecuteOnBigMapDiff(t.contents[0].metadata.operation_result.big_map_diff))),{});return Object.assign(Object.assign({},this.Execute(t)),{[this.bigMap.annot()]:r})}FindFirstInTopLevelPair(e,t){return this.findValue(this.root.val,e,t)}findValue(e,t,r){if(oR(r,e))return t;if(Array.isArray(e)||"pair"===e.prim){const n=iR(e),i=iR(t,"Pair");if(void 0===n.args||void 0===i.args)throw new tR("Tokens have no arguments");if(n.args[0])return this.findValue(n.args[0],i.args[0],r)||this.findValue(n.args[1],i.args[1],r)}}findToken(e){return this.root.findAndReturnTokens(e,[])}}rR=nR;class sR{static fromRPCResponse(e){if(!e)throw new Yj(e,"the RPC response is empty");if(!e.script)throw new Yj(e,"the RPC response has no script");if(!Array.isArray(e.script.code))throw new Yj(e,"The response.script.code should be an array");const t=e.script.code.find((e=>"prim"in e&&"parameter"===e.prim));if(!t)throw new Yj(e,'The response.script.code should have an element of type {prim: "parameter"}');if(!Array.isArray(t.args))throw new Yj(e,'The response.script.code has an element of type {prim: "parameter"}, but its args is not an array');return new sR(t.args[0])}get isMultipleEntryPoint(){return this.root instanceof RC||this.root instanceof QC&&this.root.subToken()instanceof RC}get hasAnnotation(){return!this.isMultipleEntryPoint||"0"!==Object.keys(this.ExtractSchema())[0]}constructor(e){this.root=Wj(e,0)}Execute(e,t){return this.root.Execute(e,t)}Encode(...e){try{return this.root.Encode(e.reverse())}catch(t){if(t instanceof AC)throw t;throw new Gj("Unable to encode parameter",this.root,e,t)}}EncodeObject(e,t){try{return this.root.EncodeObject(e,t)}catch(r){if(r instanceof AC)throw r;throw new Gj("Unable to encode parameter object",this.root,e,r)}}ExtractSchema(){return this.root.ExtractSchema()}generateSchema(){return this.root.generateSchema()}ExtractSignatures(){return this.root.ExtractSignature()}}class cR{static fromRPCResponse(e){const t=[],r=e&&e.script&&Array.isArray(e.script.code)&&e.script.code.filter((e=>"view"===e.prim));return r&&r.forEach((e=>{t.push(new cR(e.args))})),t}constructor(e){if(!e)throw new Zj(e,"the args are not defined");if(4!==e.length)throw new Zj(e,"there should be exactly 4 arguments");if(!("string"in e[0])||!e[0].string)throw new Zj(e,"The first argument should be a string, representing the view name. It should be in the form: { string: 'viewName' }");this.viewName=e[0].string,this.viewArgsType=e[1],this.viewReturnType=e[2],this.instructions=e[3],this.rootArgsType=Wj(this.viewArgsType,0),this.rootReturnType=Wj(this.viewReturnType,0)}encodeViewArgs(e){try{return this.rootArgsType.EncodeObject(e)}catch(t){throw new Gj(this.viewName,void 0,e,t)}}decodeViewResult(e,t){return this.rootReturnType.Execute(e,t)}extractArgsSchema(){return this.rootArgsType.ExtractSchema()}extractResultSchema(){return this.rootReturnType.ExtractSchema()}}class lR{constructor(e,t){this.tag=e,this.type=t}static fromMichelineValue(e){var t,r;return new lR(null===(t=e.annots)||void 0===t?void 0:t[0],null===(r=e.args)||void 0===r?void 0:r[0])}static fromRPCResponse(e){const t=[];return e.script.code.forEach((e=>{"prim"in e&&"code"===e.prim&&"args"in e&&e.args&&t.push(...lR.extractEventsRecursively(e.args))})),lR.removeDuplicates(t)}static removeDuplicates(e){const t=[];return e.forEach((e=>{const r=t.findIndex((t=>t.tag===e.tag&&oR(t.type,e.type)));-1===r&&t.push(e)})),t}static extractEventsRecursively(e){return Array.isArray(e)?e.flatMap((e=>lR.extractEventsRecursively(e))):"prim"in e?"EMIT"===e.prim?[lR.fromMichelineValue(e)]:"args"in e&&e.args?e.args.flatMap((e=>lR.extractEventsRecursively(e))):[]:[]}}const uR=Symbol(),dR=Symbol("source_reference");class hR extends AS{constructor(e,t,r){super(),this.src=e,this.idx=t,this.message=r,this.name="ScanError"}}var fR;!function(e){e[e.Comment=0]="Comment",e[e.Number=1]="Number",e[e.String=2]="String",e[e.Bytes=3]="Bytes",e[e.Ident=4]="Ident"}(fR||(fR={}));const pR=new RegExp("\\s"),mR=new RegExp("[:@%_A-Za-z]"),gR=new RegExp("[@%_\\.A-Za-z0-9]"),vR=new RegExp("[0-9]"),yR=new RegExp("[0-9a-fA-F]");function*bR(e,t=!1){let r=0;for(;r1&&"0x"===e.substring(r,r+2)){for(r+=2;r1&&"/*"===e.substring(r,r+2)){for(r+=2;r1&&"*/"===e.substring(r,r+2));)r++;if(r===e.length)throw new hR(e,r,"Unterminated C style comment");r+=2,t&&(yield{t:fR.Comment,v:e.slice(i,r),first:i,last:r})}else{if("("!==n&&")"!==n&&"{"!==n&&"}"!==n&&";"!==n)throw new hR(e,r,`Invalid character at offset ${r}: \`${n}'`);r++,yield{t:n,v:n,first:i,last:r}}}}const wR=Symbol("ref_contract");var xR;!function(e){e.Ps9mPmXa="Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P",e.PtCJ7pwo="PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY",e.PsYLVpVv="PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt",e.PsddFKi3="PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP",e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdoTez="PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangzH="PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.PsiThaCa="PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakarta="PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProxfordY="ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(xR||(xR={}));const _R=xR.Psithaca2,kR={Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P:0,PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY:1,PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt:2,PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP:3,Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd:4,PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU:5,PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS:5,PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb:6,PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo:7,PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq:8,PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA:8,PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i:9,PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV:10,PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r:11,PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx:11,PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP:12,Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A:12,PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw:13,PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY:13,PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg:14,PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW:15,PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc:16,PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1:16,PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf:17,ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH:19,ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK:20};function SR(e,t){return kR[e][e+1,t])),i+=s,o+=l;break}case"I":o!==r.length&&(a[1]=r[o++]);break;default:throw new ER(e,`${e.prim}: unexpected character: ${l}`)}return{r:n(s,c,[0,a]),n:i,an:o}}function CR(e,t,r,n){const i=t[0];switch(i){case"A":return t.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CAR",annots:["@%%"]},CR(e,t.slice(1),[],n)]]},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%@","%@",...r]}]:n.a;case"D":return t.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CDR",annots:["@%%"]},CR(e,t.slice(1),[],n)]]},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%@",...r]}]:n.d;default:throw new ER(e,`${e.prim}: unexpected character: ${i}`)}}function jR(e,t){let r=e.length;for(;r>0&&e[r-1]===t;)r--;return e.slice(0,r)}function RR(e){const t=[],r=[];if(void 0!==e)for(const n of e)(0!==n.length&&"%"===n[0]?t:r).push(n);return{fields:t,rest:r}}function IR({prim:e,annots:t,args:r}){return Object.assign(Object.assign({prim:e},t&&{annots:t}),r&&{args:r})}const MR=/^P[PAI]{3,}R$/,LR=/^UNP[PAI]{2,}R$/,NR=/^C[AD]{2,}R$/,DR=/^SET_C[AD]+R$/,zR=/^MAP_C[AD]+R$/,BR=/^DI{2,}P$/,FR=/^DU+P$/;class UR extends AS{constructor(e,t){super(),this.token=e,this.message=t,this.name="MichelineParseError"}}class $R extends AS{constructor(e,t){super(),this.node=e,this.message=t,this.name="JSONParseError"}}const HR=new UR(null,"Unexpected EOF");function VR(e){return e.t===fR.Ident&&("@"===e.v[0]||"%"===e.v[0]||":"===e.v[0])}const qR=new RegExp("^-?[0-9]+$"),KR=new RegExp("^([0-9a-fA-F]{2})*$");class WR{constructor(e){this.opt=e}expand(e){var t,r,n;if(void 0!==(null===(t=this.opt)||void 0===t?void 0:t.expandGlobalConstant)&&"constant"===e.prim){const t=function(e,t){return void 0!==e.args&&1===e.args.length&&"string"in e.args[0]&&e.args[0].string in t?t[e.args[0].string]:e}(e,this.opt.expandGlobalConstant);return t!==e&&(t[dR]=Object.assign(Object.assign({},e[dR]||{first:0,last:0}),{globalConstant:e})),t}if(void 0===(null===(r=this.opt)||void 0===r?void 0:r.expandMacros)||(null===(n=this.opt)||void 0===n?void 0:n.expandMacros)){const t=function(e,t){const r=(null===t||void 0===t?void 0:t.protocol)||_R;function n(e){return void 0!==e?[{prim:"RENAME",annots:e}]:[]}switch(e.prim){case"CMPEQ":case"CMPNEQ":case"CMPLT":case"CMPGT":case"CMPLE":case"CMPGE":if(AR(e,0))return[{prim:"COMPARE"},IR({prim:e.prim.slice(3),annots:e.annots})];break;case"IFEQ":case"IFNEQ":case"IFLT":case"IFGT":case"IFLE":case"IFGE":if(AR(e,2))return[{prim:e.prim.slice(2)},IR({prim:"IF",annots:e.annots,args:e.args})];break;case"IFCMPEQ":case"IFCMPNEQ":case"IFCMPLT":case"IFCMPGT":case"IFCMPLE":case"IFCMPGE":if(AR(e,2))return[{prim:"COMPARE"},{prim:e.prim.slice(5)},IR({prim:"IF",annots:e.annots,args:e.args})];break;case"FAIL":if(AR(e,0)&&PR(e))return[{prim:"UNIT"},{prim:"FAILWITH"}];break;case"ASSERT":if(AR(e,0)&&PR(e))return[{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_EQ":case"ASSERT_NEQ":case"ASSERT_LT":case"ASSERT_GT":case"ASSERT_LE":case"ASSERT_GE":if(AR(e,0)&&PR(e))return[{prim:e.prim.slice(7)},{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_CMPEQ":case"ASSERT_CMPNEQ":case"ASSERT_CMPLT":case"ASSERT_CMPGT":case"ASSERT_CMPLE":case"ASSERT_CMPGE":if(AR(e,0)&&PR(e))return[[{prim:"COMPARE"},{prim:e.prim.slice(10)}],{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_NONE":if(AR(e,0)&&PR(e))return[{prim:"IF_NONE",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_SOME":if(AR(e,0))return[{prim:"IF_NONE",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],n(e.annots)]}];break;case"ASSERT_LEFT":if(AR(e,0))return[{prim:"IF_LEFT",args:[n(e.annots),[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_RIGHT":if(AR(e,0))return[{prim:"IF_LEFT",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],n(e.annots)]}];break;case"IF_SOME":if(AR(e,2))return[IR({prim:"IF_NONE",annots:e.annots,args:[e.args[1],e.args[0]]})];break;case"IF_RIGHT":if(AR(e,2))return[IR({prim:"IF_LEFT",annots:e.annots,args:[e.args[1],e.args[0]]})];break;case"CAR":case"CDR":if(void 0===e.args)return e;if(AR(e,1)&&OR(e,e.args[0])){const t=parseInt(e.args[0].int,10);return IR({prim:"GET",args:[{int:"CAR"===e.prim?String(2*t+1):String(2*t)}],annots:e.annots})}}if(MR.test(e.prim)&&AR(e,0)){const{fields:t,rest:r}=RR(e.annots),{r:n}=TR(e,e.prim.slice(1),t,((e,t,r)=>[...e||[],...t||[],r]));return n.map((([e,t],i)=>{const o=[...jR(t,null).map((e=>null===e?"%":e)),...0===e&&i===n.length-1?r:[]],a=IR({prim:"PAIR",annots:0!==o.length?o:void 0});return 0===e?a:{prim:"DIP",args:1===e?[[a]]:[{int:String(e)},[a]]}}))}if(LR.test(e.prim)){if(SR(r,xR.PtEdo2Zk)&&AR(e,0)){const{r:t}=TR(e,e.prim.slice(3),e.annots||[],((e,t,r)=>[r,...t||[],...e||[]]));return t.map((([e,t])=>{const r=[{prim:"DUP"},IR({prim:"CAR",annots:null!==t[0]?[t[0]]:void 0}),{prim:"DIP",args:[[IR({prim:"CDR",annots:null!==t[1]?[t[1]]:void 0})]]}];return 0===e?r:{prim:"DIP",args:1===e?[[r]]:[{int:String(e)},[r]]}}))}if("UNPAIR"===e.prim)return e;if(AR(e,0)){const{r:t}=TR(e,e.prim.slice(3),[],((e,t,r)=>[r,...t||[],...e||[]]));return t.map((([e])=>{const t=IR({prim:"UNPAIR"});return 0===e?t:{prim:"DIP",args:1===e?[[t]]:[{int:String(e)},[t]]}}))}}if(NR.test(e.prim)&&AR(e,0)){const t=[...e.prim.slice(1,e.prim.length-1)];return t.map(((r,n)=>{const i=n===t.length-1?e.annots:void 0;switch(r){case"A":return IR({prim:"CAR",annots:i});case"D":return IR({prim:"CDR",annots:i});default:throw new ER(e,`unexpected character: ${r}`)}}))}if(DR.test(e.prim)&&AR(e,0)){const{fields:t,rest:r}=RR(e.annots);if(t.length>1)throw new ER(e,`unexpected annotation on macro ${e.prim}: ${t}`);const n=0!==t.length?{a:[{prim:"DUP"},{prim:"CAR",annots:t},{prim:"DROP"},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:[t[0],"%@"]}],d:[{prim:"DUP"},{prim:"CDR",annots:t},{prim:"DROP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",t[0]]}]}:{a:[{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%","%@"]}],d:[{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%"]}]};return CR(e,e.prim.slice(5,e.prim.length-1),r,n)}if(zR.test(e.prim)&&AR(e,1)){const{fields:t}=RR(e.annots);if(t.length>1)throw new ER(e,`unexpected annotation on macro ${e.prim}: ${t}`);const r={a:[{prim:"DUP"},{prim:"CDR",annots:["@%%"]},{prim:"DIP",args:[[IR({prim:"CAR",annots:0!==t.length?["@"+t[0].slice(1)]:void 0}),e.args[0]]]},{prim:"SWAP"},{prim:"PAIR",annots:[0!==t.length?t[0]:"%","%@"]}],d:[{prim:"DUP"},IR({prim:"CDR",annots:0!==t.length?["@"+t[0].slice(1)]:void 0}),e.args[0],{prim:"SWAP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",0!==t.length?t[0]:"%"]}]};return CR(e,e.prim.slice(5,e.prim.length-1),[],r)}if(BR.test(e.prim)&&AR(e,1)){let t=0;for(;"I"===e.prim[1+t];)t++;return IR({prim:"DIP",args:[{int:String(t)},e.args[0]]})}if(FR.test(e.prim)){let t=0;for(;"U"===e.prim[1+t];)t++;if(SR(r,xR.PtEdo2Zk)){if(1===t){if(void 0===e.args)return e;AR(e,1)&&OR(e,e.args[0])&&(t=parseInt(e.args[0].int,10))}else AR(e,0);return 1===t?[IR({prim:"DUP",annots:e.annots})]:2===t?[{prim:"DIP",args:[[IR({prim:"DUP",annots:e.annots})]]},{prim:"SWAP"}]:[{prim:"DIP",args:[{int:String(t-1)},[IR({prim:"DUP",annots:e.annots})]]},{prim:"DIG",args:[{int:String(t)}]}]}if(1===t)return e;if(AR(e,0))return IR({prim:"DUP",args:[{int:String(t)}],annots:e.annots})}return e}(e,this.opt);return t!==e&&(t[dR]=Object.assign(Object.assign({},e[dR]||{first:0,last:0}),{macro:e})),t}return e}parseListExpr(e,t){var r;const n={first:t.first,last:t.last},i="("===t.t;let o;if(i){if(o=e.next(),o.done)throw HR;n.last=o.value.last}else o={value:t};if(o.value.t!==fR.Ident)throw new UR(o.value,`not an identifier: ${o.value.v}`);const a={prim:o.value.v,[dR]:n};for(;;){const t=e.next();if(t.done){if(i)throw HR;break}if(")"===t.value.t){if(!i)throw new UR(t.value,"unexpected closing bracket");n.last=t.value.last;break}if(VR(t.value))a.annots=a.annots||[],a.annots.push(t.value.v),n.last=t.value.last;else{a.args=a.args||[];const i=this.parseExpr(e,t.value);n.last=(null===(r=i[dR])||void 0===r?void 0:r.last)||n.last,a.args.push(i)}}return this.expand(a)}parseArgs(e,t){var r;const n={first:t.first,last:t.last},i={prim:t.v,[dR]:n};for(;;){const t=e.next();if(t.done||"}"===t.value.t||";"===t.value.t)return[i,t];if(VR(t.value))n.last=t.value.last,i.annots=i.annots||[],i.annots.push(t.value.v);else{const o=this.parseExpr(e,t.value);n.last=(null===(r=o[dR])||void 0===r?void 0:r.last)||n.last,i.args=i.args||[],i.args.push(o)}}}parseSequenceExpr(e,t){var r,n;const i={first:t.first,last:t.last},o=[];o[dR]=i;const a="{"===t.t;let s="{"===t.t?null:{value:t};for(;;){if(null===s&&(s=e.next(),s.done||(i.last=s.value.last)),s.done){if(a)throw HR;return o}if("}"===s.value.t){if(a)return o;throw new UR(s.value,"unexpected closing bracket")}if(s.value.t===fR.Ident){const[t,n]=this.parseArgs(e,s.value);i.last=(null===(r=t[dR])||void 0===r?void 0:r.last)||i.last,o.push(this.expand(t)),s=n}else{const t=this.parseExpr(e,s.value);i.last=(null===(n=t[dR])||void 0===n?void 0:n.last)||i.last,o.push(t),s=null}null===s&&(s=e.next(),s.done||(i.last=s.value.last)),s.done||";"!==s.value.t||(s=null)}}parseExpr(e,t){switch(t.t){case fR.Ident:return this.expand({prim:t.v,[dR]:{first:t.first,last:t.last}});case fR.Number:return{int:t.v,[dR]:{first:t.first,last:t.last}};case fR.String:return{string:JSON.parse(t.v),[dR]:{first:t.first,last:t.last}};case fR.Bytes:return{bytes:t.v.slice(2),[dR]:{first:t.first,last:t.last}};case"{":return this.parseSequenceExpr(e,t);default:return this.parseListExpr(e,t)}}parseSequence(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=bR(e),r=t.next();return r.done?null:this.parseSequenceExpr(t,r.value)}parseList(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=bR(e),r=t.next();return r.done?null:this.parseListExpr(t,r.value)}parseMichelineExpression(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=bR(e),r=t.next();return r.done?null:this.parseExpr(t,r.value)}parseScript(e){return this.parseSequence(e)}parseData(e){return this.parseList(e)}parseJSON(e){if("object"!==typeof e)throw new TypeError(`object type was expected, got ${typeof e} instead`);if(Array.isArray(e)){const t=[];for(const r of e){if(null===r||"object"!==typeof r)throw new $R(r,`unexpected sequence element: ${r}`);t.push(this.parseJSON(r))}return t}if("prim"in e){const t=e;if("string"===typeof t.prim&&(void 0===t.annots||Array.isArray(t.annots))&&(void 0===t.args||Array.isArray(t.args))){const e={prim:t.prim};if(void 0!==t.annots){for(const e of t.annots)if("string"!==typeof e)throw new $R(e,`string expected: ${e}`);e.annots=t.annots}if(void 0!==t.args){e.args=[];for(const r of t.args){if(null===r||"object"!==typeof r)throw new $R(r,`unexpected argument: ${r}`);e.args.push(this.parseJSON(r))}}return this.expand(e)}throw new $R(e,`malformed prim expression: ${e}`)}if("string"in e){if("string"===typeof e.string)return{string:e.string};throw new $R(e,`malformed string literal: ${e}`)}if("int"in e){if("string"===typeof e.int&&qR.test(e.int))return{int:e.int};throw new $R(e,`malformed int literal: ${e}`)}if("bytes"in e){if("string"===typeof e.bytes&&KR.test(e.bytes))return{bytes:e.bytes};throw new $R(e,`malformed bytes literal: ${e}`)}throw new $R(e,`unexpected object: ${e}`)}}const GR=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],ZR=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998];class YR extends AS{constructor(e){super(),this.message=e,this.name="Base58DecodingError"}}function XR(e){const t=(e.length+9)%64,r=0===t?0:64-t;if(e.length>268435455)throw new DS("",`: Invalid length ${e.length} is too big -- SHA-256.`);const n=e.length<<3,i=[...e,128,...new Array(r).fill(0),0,0,0,0,n>>24&255,n>>16&255,n>>8&255,255&n];function o(e,t){return e>>>t|e<<32-t}const a=[...GR],s=new Array(64),c=new Array(8);for(let u=0;u>>3,r=o(s[t-2],17)^o(s[t-2],19)^s[t-2]>>>10;s[t]=(0|r)+s[t-7]+e+s[t-16]|0,t++}for(let r=0;r<8;r++)c[r]=a[r];for(let r=0;r<64;r++){const e=o(c[0],2)^o(c[0],13)^o(c[0],22),t=o(c[4],6)^o(c[4],11)^o(c[4],25),n=c[7]+t+(c[4]&c[5]^~c[4]&c[6])+ZR[r]+s[r]|0,i=e+(c[0]&c[1]^c[0]&c[2]^c[1]&c[2])|0;c[7]=c[6],c[6]=c[5],c[5]=c[4],c[4]=c[3]+n|0,c[3]=c[2],c[2]=c[1],c[1]=c[0],c[0]=n+i|0}for(let r=0;r<8;r++)a[r]=a[r]+c[r]|0}const l=[];for(const u of a)l.push(u>>24&255),l.push(u>>16&255),l.push(u>>8&255),l.push(255&u);return l}const JR=[0,1,2,3,4,5,6,7,8,-1,-1,-1,-1,-1,-1,-1,9,10,11,12,13,14,15,16,-1,17,18,19,20,21,-1,22,23,24,25,26,27,28,29,30,31,32,-1,-1,-1,-1,-1,-1,33,34,35,36,37,38,39,40,41,42,43,-1,44,45,46,47,48,49,50,51,52,53,54,55,56,57];function QR(e,t){const r=e.charCodeAt(t)-49;if(r>=JR.length||-1===JR[r])throw new YR(`Unexpected character at position ${t}: ${e[t]}`);return JR[r]}function eI(e){const t=function(e){const t=[];let r=0;for(;r0;)t.push(0);return t.reverse()}(e);if(t.length<4)throw new YR(`Data is too short ${t.length}`);const r=t.slice(0,t.length-4),n=t.slice(t.length-4),i=XR(XR(r));if(n[0]!==i[0]||n[1]!==i[1]||n[2]!==i[2]||n[3]!==i[3])throw new YR("Invalid checksum");return r}class tI extends PS{constructor(e){super(),this.message=e,this.name="InvalidMichelsonError"}}class rI extends PS{constructor(e){super(),this.message=e,this.name="InvalidTypeExpressionError"}}class nI extends PS{constructor(e){super(),this.message=e,this.name="InvalidDataExpressionError"}}class iI extends PS{constructor(e){super(),this.entrypoint=e,this.name="InvalidEntrypointError",this.message=`Contract has no entrypoint named: "${e}"`}}class oI extends AS{constructor(e){super(),this.message=e,this.name="LongIntegerError"}}class aI extends AS{constructor(e,t){super(),this.val=e,this.message=t,this.name="MichelsonError"}}class sI extends aI{constructor(e,t,r){super(e,t),this.val=e,this.message=t,this.name="MichelsonTypeError",void 0!==r&&(this.data=r)}}class cI{append(e){let t=0;for(;0!==e||t57)throw new oI(`unexpected character in integer constant "${e[t]}"`);this.append(r-48)}}else e<0?(this.neg=!0,this.append(-e)):this.append(e)}cmp(e){if(this.neg!==e.neg)return(e.neg?1:0)-(this.neg?1:0);{let t=0;if(this.buf.length!==e.buf.length)t=this.buf.length=0&&this.buf[r]===e.buf[r];)r--;t=r<0?0:this.buf[r]=0}catch(ln){return!1}}const hI=/^(@%|@%%|%@|[@:%]([_0-9a-zA-Z][_0-9a-zA-Z.%@]*)?)$/;function fI(e,t){if(Array.isArray(e))return{};let r,n,i;if(void 0!==e.annots)for(const o of e.annots)if(0!==o.length){if(!hI.test(o)||!(null===t||void 0===t?void 0:t.specialVar)&&("@%"===o||"@%%"===o)||!(null===t||void 0===t?void 0:t.specialFields)&&"%@"===o)throw new aI(e,`${e.prim}: unexpected annotation: ${o}`);switch(o[0]){case"%":((null===t||void 0===t?void 0:t.emptyFields)||o.length>1)&&(r=r||[],r.push(o));break;case":":o.length>1&&(n=n||[],n.push(o));break;case"@":((null===t||void 0===t?void 0:t.emptyVar)||o.length>1)&&(i=i||[],i.push(o))}}return{f:r,t:n,v:i}}const pI={BlockHash:[32,[1,52]],OperationHash:[32,[5,116]],OperationListHash:[32,[133,233]],OperationListListHash:[32,[29,159,109]],ProtocolHash:[32,[2,170]],ContextHash:[32,[79,199]],ED25519PublicKeyHash:[20,[6,161,159]],SECP256K1PublicKeyHash:[20,[6,161,161]],P256PublicKeyHash:[20,[6,161,164]],ContractHash:[20,[2,90,121]],CryptoboxPublicKeyHash:[16,[153,103]],ED25519Seed:[32,[13,15,58,7]],ED25519PublicKey:[32,[13,15,37,217]],SECP256K1SecretKey:[32,[17,162,224,201]],P256SecretKey:[32,[16,81,238,189]],ED25519EncryptedSeed:[56,[7,90,60,179,41]],SECP256K1EncryptedSecretKey:[56,[9,237,241,174,150]],P256EncryptedSecretKey:[56,[9,48,57,115,171]],SECP256K1PublicKey:[33,[3,254,226,86]],P256PublicKey:[33,[3,178,139,127]],SECP256K1Scalar:[33,[38,248,136]],SECP256K1Element:[33,[5,92,0]],ED25519SecretKey:[64,[43,246,78,7]],ED25519Signature:[64,[9,245,205,134,18]],SECP256K1Signature:[64,[13,115,101,19,63]],P256Signature:[64,[54,240,44,52]],GenericSignature:[64,[4,130,43]],ChainID:[4,[87,82,0]],RollupAddress:[20,[1,128,120,31]]};function mI(e,...t){const r=eI(e);for(const n of t){const[e,t]=pI[n];if(r.length===e+t.length){let e=0;for(;e0?MI(e,1):MI(e,0);break;default:throw new AI(e,"instruction expected")}}return!0}function NI(e){if(CI(e))if(Array.isArray(e)||"pair"===e.prim||"or"===e.prim||"option"===e.prim)qI(e,(e=>NI(e)));else if(!Object.prototype.hasOwnProperty.call(SI,e.prim))throw new AI(e,`${e.prim}: type is not comparable`);return!0}function DI(e){if(CI(e)&&PI(e)){if(!Object.prototype.hasOwnProperty.call(EI,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim||"ticket"===e.prim)throw new AI(e,`${e.prim}: type can't be used inside PACK/UNPACK instructions`);qI(e,(e=>DI(e)))}return!0}function zI(e){if(CI(e)&&PI(e)){if(!Object.prototype.hasOwnProperty.call(EI,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim||"ticket"===e.prim||"contract"===e.prim)throw new AI(e,`${e.prim}: type can't be pushed`);qI(e,(e=>zI(e)))}return!0}function BI(e){if(CI(e)&&PI(e)){if(!Object.prototype.hasOwnProperty.call(EI,e.prim)||"operation"===e.prim||"contract"===e.prim)throw new AI(e,`${e.prim}: type can't be used as part of a storage`);qI(e,(e=>BI(e)))}return!0}function FI(e){if(CI(e)&&PI(e)){if(!Object.prototype.hasOwnProperty.call(EI,e.prim)||"operation"===e.prim)throw new AI(e,`${e.prim}: type can't be used as part of a parameter`);qI(e,(e=>FI(e)))}return!0}function UI(e){if(CI(e)&&PI(e)){if(!Object.prototype.hasOwnProperty.call(EI,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim)throw new AI(e,`${e.prim}: type can't be used inside a big_map`);qI(e,(e=>UI(e)))}return!0}const $I=new RegExp("^[a-zA-Z0-9_.%@]*$");function HI(e){if(e.string.length>xI)throw new AI(e,`view name too long: ${e.string}`);if(!$I.test(e.string))throw new AI(e,`invalid character(s) in view name: ${e.string}`)}function VI(e){if(CI(e)&&PI(e)){if(!Object.prototype.hasOwnProperty.call(EI,e.prim))throw new AI(e,"type expected");qI(e,(e=>VI(e)))}return!0}function qI(e,t){if(Array.isArray(e)||"pair"===e.prim){const r=Array.isArray(e)?e:e.args;if(void 0===r||r.length<2)throw new AI(e,"at least 2 arguments expected");return r.forEach((e=>{CI(e)&&t(e)})),!0}switch(e.prim){case"option":case"list":MI(e,1)&&CI(e.args[0])&&t(e.args[0]);break;case"contract":MI(e,1)&&FI(e.args[0]);break;case"or":MI(e,2)&&CI(e.args[0])&&CI(e.args[1])&&(t(e.args[0]),t(e.args[1]));break;case"lambda":MI(e,2)&&(VI(e.args[0]),VI(e.args[1]));break;case"set":MI(e,1)&&NI(e.args[0]);break;case"map":MI(e,2)&&CI(e.args[0])&&CI(e.args[1])&&(NI(e.args[0]),t(e.args[1]));break;case"big_map":MI(e,2)&&CI(e.args[0])&&CI(e.args[1])&&(NI(e.args[0]),UI(e.args[1]),t(e.args[1]));break;case"ticket":MI(e,1)&&CI(e.args[0])&&NI(e.args[0]);break;case"sapling_state":case"sapling_transaction":MI(e,1)&&RI(e.args[0]);break;default:MI(e,0)}return!0}function KI(e){if("int"in e||"string"in e||"bytes"in e)return!0;if(Array.isArray(e)){let t=0;for(const r of e)PI(r)&&"Elt"===r.prim?(MI(r,2)&&(KI(r.args[0]),KI(r.args[1])),t++):KI(r);if(0!==t&&t!==e.length)throw new AI(e,"data entries and map elements can't be intermixed");return!0}if(!PI(e))throw new AI(e,"data entry expected");switch(e.prim){case"Unit":case"True":case"False":case"None":MI(e,0);break;case"Pair":if(void 0===e.args||e.args.length<2)throw new AI(e,"at least 2 arguments expected");for(const t of e.args)KI(t);break;case"Left":case"Right":case"Some":MI(e,1)&&KI(e.args[0]);break;case"Lambda_rec":e.args&&LI(e.args);break;default:if(!Object.prototype.hasOwnProperty.call(kI,e.prim))throw new AI(e,"data entry or instruction expected");LI(e)}return!0}function WI(e){if(TI(e)){const t={},r={};for(const n of e)if(OI(n)){if("view"!==n.prim){if(n.prim in t)throw new AI(e,`duplicate contract section: ${n.prim}`);t[n.prim]=!0}switch(n.prim){case"code":MI(n,1)&&TI(n.args[0])&&LI(n.args[0]);break;case"parameter":if(MI(n,1)&&FI(n.args[0]),n.annots)throw new AI(n,"Annotation must be part of the parameter type");break;case"storage":MI(n,1)&&BI(n.args[0]);break;case"view":if(MI(n,4)){if(II(n.args[0])){const t=n.args[0];if(t.string in r)throw new AI(e,`duplicate view name: ${t.string}`);r[t.string]=!0,HI(t)}zI(n.args[1]),zI(n.args[2]),TI(n.args[3])&&LI(n.args[3])}break;default:throw new AI(e,`unexpected contract section: ${n.prim}`)}}}return!0}function GI(e){return Object.prototype.hasOwnProperty.call(kI,e.prim)}function ZI(e){if(!Array.isArray(e))return!1;for(const t of e)if("prim"in t){if(GI(t))throw new aI(e,`Instruction outside of a lambda: ${JSON.stringify(e)}`);if("Elt"===t.prim)throw new aI(e,`Elt item outside of a map literal: ${JSON.stringify(e)}`)}return!0}"function"===typeof SuppressedError&&SuppressedError;const YI=["parameter","storage","code","False","Elt","Left","None","Pair","Right","Some","True","Unit","PACK","UNPACK","BLAKE2B","SHA256","SHA512","ABS","ADD","AMOUNT","AND","BALANCE","CAR","CDR","CHECK_SIGNATURE","COMPARE","CONCAT","CONS","CREATE_ACCOUNT","CREATE_CONTRACT","IMPLICIT_ACCOUNT","DIP","DROP","DUP","EDIV","EMPTY_MAP","EMPTY_SET","EQ","EXEC","FAILWITH","GE","GET","GT","HASH_KEY","IF","IF_CONS","IF_LEFT","IF_NONE","INT","LAMBDA","LE","LEFT","LOOP","LSL","LSR","LT","MAP","MEM","MUL","NEG","NEQ","NIL","NONE","NOT","NOW","OR","PAIR","PUSH","RIGHT","SIZE","SOME","SOURCE","SENDER","SELF","STEPS_TO_QUOTA","SUB","SWAP","TRANSFER_TOKENS","SET_DELEGATE","UNIT","UPDATE","XOR","ITER","LOOP_LEFT","ADDRESS","CONTRACT","ISNAT","CAST","RENAME","bool","contract","int","key","key_hash","lambda","list","map","big_map","nat","option","or","pair","set","signature","string","bytes","mutez","timestamp","unit","operation","address","SLICE","DIG","DUG","EMPTY_BIG_MAP","APPLY","chain_id","CHAIN_ID","LEVEL","SELF_ADDRESS","never","NEVER","UNPAIR","VOTING_POWER","TOTAL_VOTING_POWER","KECCAK","SHA3","PAIRING_CHECK","bls12_381_g1","bls12_381_g2","bls12_381_fr","sapling_state","sapling_transaction_deprecated","SAPLING_EMPTY_STATE","SAPLING_VERIFY_UPDATE","ticket","TICKET_DEPRECATED","READ_TICKET","SPLIT_TICKET","JOIN_TICKETS","GET_AND_UPDATE","chest","chest_key","OPEN_CHEST","VIEW","view","constant","SUB_MUTEZ","tx_rollup_l2_address","MIN_BLOCK_TIME","sapling_transaction","EMIT","Lambda_rec","LAMBDA_REC","TICKET","BYTES","NAT"];Object.assign({},...YI.map(((e,t)=>({[e]:t}))));var XI;!function(e){e[e.Int=0]="Int",e[e.String=1]="String",e[e.Sequence=2]="Sequence",e[e.Prim0=3]="Prim0",e[e.Prim0Annot=4]="Prim0Annot",e[e.Prim1=5]="Prim1",e[e.Prim1Annot=6]="Prim1Annot",e[e.Prim2=7]="Prim2",e[e.Prim2Annot=8]="Prim2Annot",e[e.Prim=9]="Prim",e[e.Bytes=10]="Bytes"}(XI||(XI={}));const JI=new Error("bounds out of range");class QI{constructor(e,t=0,r=e.length){this.buffer=e,this.idx=t,this.cap=r}get length(){return this.cap-this.idx}readBytes(e){if(this.cap-this.idx>>0}readUint16(){if(this.cap-this.idx<2)throw JI;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0}readUint32(){if(this.cap-this.idx<4)throw JI;return(this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0}readInt8(){if(this.cap-this.idx<1)throw JI;return this.buffer[this.idx++]<<24>>24}readInt16(){if(this.cap-this.idx<2)throw JI;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])<<16>>16}readInt32(){if(this.cap-this.idx<4)throw JI;return this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++]}}var eM,tM,rM;function nM(e){let t;const r=e.readUint8();switch(r){case tM.ED25519:t="ED25519PublicKeyHash";break;case tM.SECP256K1:t="SECP256K1PublicKeyHash";break;case tM.P256:t="P256PublicKeyHash";break;default:throw new Error(`unknown public key hash tag: ${r}`)}return{type:t,hash:e.readBytes(20)}}function iM(e){let t;const r=e.readUint8();switch(r){case eM.Implicit:t=nM(e);break;case eM.Originated:t={type:"ContractHash",hash:e.readBytes(20)},e.readBytes(1);break;default:throw new Error(`unknown address tag: ${r}`)}if(0!==e.length){const r=new TextDecoder;t.entryPoint=r.decode(new Uint8Array(e.readBytes(e.length)))}return t}function oM(e){let t,r;const n=e.readUint8();switch(n){case rM.ED25519:r="ED25519PublicKey",t=32;break;case rM.SECP256K1:r="SECP256K1PublicKey",t=33;break;case rM.P256:r="P256PublicKey",t=33;break;default:throw new Error(`unknown public key tag: ${n}`)}return{type:r,publicKey:e.readBytes(t)}}!function(e){e[e.Implicit=0]="Implicit",e[e.Originated=1]="Originated"}(eM||(eM={})),function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256"}(tM||(tM={})),function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256"}(rM||(rM={}));class aM extends aI{constructor(e,t,r){super(e,r),this.val=e,this.stackState=t,this.message=r,this.name="MichelsonInstructionError"}}function sM(e){return Array.isArray(e)?"pair":e.prim}function cM(e){return"prim"in e?e.args:e}function lM(e,t,r=!1){if(sM(e)!==sM(t))throw new sI(e,`types mismatch: ${sM(e)} != ${sM(t)}`,void 0);const n=[fI(e),fI(t)];if(n[0].t&&n[1].t&&n[0].t[0]!==n[1].t[0])throw new sI(e,`${sM(e)}: type names mismatch: ${n[0].t[0]} != ${n[1].t[0]}`,void 0);if(r&&n[0].f&&n[1].f&&n[0].f[0]!==n[1].f[0])throw new sI(e,`${sM(e)}: field names mismatch: ${n[0].f[0]} != ${n[1].f}`,void 0);if(vI(e)){const r=gI("pair",e),n=gI("pair",t);return lM(r.args[0],n.args[0],!0),void lM(r.args[1],n.args[1],!0)}switch(e.prim){case"option":case"list":case"contract":case"set":case"ticket":lM(e.args[0],t.args[0]);break;case"or":lM(e.args[0],t.args[0],!0),lM(e.args[1],t.args[1],!0);break;case"lambda":case"map":case"big_map":lM(e.args[0],t.args[0]),lM(e.args[1],t.args[1]);break;case"sapling_state":case"sapling_transaction":if(parseInt(e.args[0].int,10)!==parseInt(t.args[0].int,10))throw new sI(e,`${sM(e)}: type argument mismatch: ${e.args[0].int} != ${t.args[0].int}`,void 0)}}function uM(e,t){if(e.length!==t.length)throw new sI(e,`stack length mismatch: ${e.length} != ${t.length}`,void 0);for(let r=0;r1)throw new sI(e,`${e.prim}: at most one type annotation allowed: ${e.annots}`,void 0);if(t){if(((null===(n=o.f)||void 0===n?void 0:n.length)||0)>1)throw new sI(e,`${e.prim}: at most one field annotation allowed: ${e.annots}`,void 0)}else if(((null===(i=o.f)||void 0===i?void 0:i.length)||0)>0)throw new sI(e,`${e.prim}: field annotations aren't allowed: ${e.annots}`,void 0)}if(vI(e)){const t=cM(e);for(const e of t)dM(e,!0)}else switch(e.prim){case"option":case"list":case"contract":case"set":dM(e.args[0]);break;case"or":for(const t of e.args)dM(t,!0);break;case"lambda":case"map":case"big_map":dM(e.args[0]),dM(e.args[1])}}function hM(e){if(!Array.isArray(e))return!1;for(const t of e)if(!(Array.isArray(t)&&hM(t)||"prim"in t&&GI(t)))return!1;return!0}function fM(e,t,r){if(vI(t)){if(yI(e)){ZI(e);const n=gI("Pair",e),i=gI("pair",t);return fM(n.args[0],i.args[0],r),void fM(n.args[1],i.args[1],r)}throw new sI(t,`pair expected: ${JSON.stringify(e)}`,e)}switch(t.prim){case"int":if("int"in e&&uI(e.int))return;throw new sI(t,`integer value expected: ${JSON.stringify(e)}`,e);case"nat":case"mutez":if("int"in e&&dI(e.int))return;throw new sI(t,`natural value expected: ${JSON.stringify(e)}`,e);case"string":if("string"in e)return;throw new sI(t,`string value expected: ${JSON.stringify(e)}`,e);case"bytes":case"bls12_381_g1":case"bls12_381_g2":if("bytes"in e&&null!==lI(e.bytes))return;throw new sI(t,`bytes value expected: ${JSON.stringify(e)}`,e);case"bool":if("prim"in e&&("True"===e.prim||"False"===e.prim))return;throw new sI(t,`boolean value expected: ${JSON.stringify(e)}`,e);case"key_hash":if("string"in e&&null!==mI(e.string,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash"))return;if("bytes"in e)try{return void function(e){const t=lI(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);nM(new QI(new Uint8Array(t)))}(e)}catch(Tie){}throw new sI(t,`key hash expected: ${JSON.stringify(e)}`,e);case"timestamp":if(("string"in e||"int"in e)&&null!==wI(e))return;throw new sI(t,`timestamp expected: ${JSON.stringify(e)}`,e);case"address":if("string"in e){let t=e.string;const r=e.string.indexOf("%");if(r>=0&&(t=e.string.slice(0,r)),null!==mI(t,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash","ContractHash","RollupAddress"))return}else if("bytes"in e)try{return void function(e){const t=lI(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);iM(new QI(new Uint8Array(t)))}(e)}catch(Tie){}throw new sI(t,`address expected: ${JSON.stringify(e)}`,e);case"key":if("string"in e&&null!==mI(e.string,"ED25519PublicKey","SECP256K1PublicKey","P256PublicKey"))return;if("bytes"in e)try{return void function(e){const t=lI(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);oM(new QI(new Uint8Array(t)))}(e)}catch(Tie){}throw new sI(t,`public key expected: ${JSON.stringify(e)}`,e);case"unit":if("prim"in e&&"Unit"===e.prim)return;throw new sI(t,`unit value expected: ${JSON.stringify(e)}`,e);case"signature":if("bytes"in e||"string"in e&&null!==mI(e.string,"ED25519Signature","SECP256K1Signature","P256Signature","GenericSignature"))return;throw new sI(t,`signature expected: ${JSON.stringify(e)}`,e);case"chain_id":if("bytes"in e||"string"in e){if(null!==("string"in e?eI(e.string):lI(e.bytes)))return}throw new sI(t,`chain id expected: ${JSON.stringify(e)}`,e);case"option":if("prim"in e){if("None"===e.prim)return;if("Some"===e.prim)return void fM(e.args[0],t.args[0],r)}throw new sI(t,`option expected: ${JSON.stringify(e)}`,e);case"list":case"set":if(ZI(e)){for(const n of e)fM(n,t.args[0],r);return}throw new sI(t,`${t.prim} expected: ${JSON.stringify(e)}`,e);case"or":if("prim"in e){if("Left"===e.prim)return void fM(e.args[0],t.args[0],r);if("Right"===e.prim)return void fM(e.args[0],t.args[1],r)}throw new sI(t,`union (or) expected: ${JSON.stringify(e)}`,e);case"lambda":if(hM(e)){const n=pM(e,[t.args[0]],r);if("failed"in n)throw new sI(t,`function is failed with error type: ${n.failed}`,e);if(1!==n.length)throw new sI(t,"function must return a value",e);return void lM(t.args[1],n[0])}throw new sI(t,`function expected: ${JSON.stringify(e)}`,e);case"map":case"big_map":if(Array.isArray(e)){for(const n of e){if(!("prim"in n)||"Elt"!==n.prim)throw new sI(t,`map elements expected: ${JSON.stringify(e)}`,e);fM(n.args[0],t.args[0],r),fM(n.args[1],t.args[1],r)}return}throw new sI(t,`${t.prim} expected: ${JSON.stringify(e)}`,e);case"bls12_381_fr":if("int"in e&&uI(e.int)||"bytes"in e&&null!==lI(e.bytes))return;throw new sI(t,`BLS12-381 element expected: ${JSON.stringify(e)}`,e);case"sapling_state":if(Array.isArray(e))return;throw new sI(t,`sapling state expected: ${JSON.stringify(e)}`,e);case"ticket":return void fM(e,{prim:"pair",args:[{prim:"address"},t.args[0],{prim:"nat"}]},r);default:throw new sI(t,`type ${sM(t)} don't have Michelson literal representation`,e)}}function pM(e,t,r){const n=(null===r||void 0===r?void 0:r.protocol)||_R;if(Array.isArray(e))return function(e,t,r){let n=t,i=t,o=0;for(const a of e){const e=pM(a,i,r);if(n=e,"failed"in e)break;i=e,o++}if("failed"in n&&0==n.level&&(!("prim"in n.failed)||"never"!==n.failed.prim)&&o!==e.length-1)throw new aM(e,n,"FAIL must appear in a tail position");if(void 0!==(null===r||void 0===r?void 0:r.traceCallback)){const i={op:e,in:t,out:n};r.traceCallback(i)}return"failed"in n?{failed:n.failed,level:n.level+1}:n}(e,t,r);const i=e;function o(e,...r){if(t.length{try{return e(...r)}catch(Tie){throw Tie instanceof aI?new aM(i,t,Tie.message):Tie}}}function s(e){return r=>{try{return e(r)}catch(Tie){throw Tie instanceof aI?new aM(i,t,Tie.message):Tie}}}const c=a(fI),l=a(uM),u=a(lM),d=s(NI),h=s(DI),f=s(BI),p=s(zI),m=s(UI);function g(e,r){const n=c(i,Object.assign(Object.assign({},r),{emptyFields:void 0!==e.f&&e.f>1,emptyVar:void 0!==e.v&&e.v>1})),o=(e,r,n)=>{if(e&&e.length>(r||0))throw new aM(i,t,`${i.prim}: at most ${r||0} ${n} annotations allowed`)};return o(n.f,e.f,"field"),o(n.t,e.t,"type"),o(n.v,e.v,"variable"),n}function v(e,t){const r=e,n=Array.isArray(r)?{prim:"pair",args:r}:r,i=c(n),o=void 0!==t.v||void 0!==t.t||void 0!==t.f?[...(null===t.v?i.v:t.v)||[],...(null===t.t?i.t:t.t)||[],...(null===t.f?i.f:t.f)||[]]:void 0,a=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i["@"+(e.v?e.v[0].slice(1)+".":"")+t];function S(e,t){return"failed"in e||"failed"in t?"failed"in e?t:e:(l(e,t),e)}const E=(e=>{var i,a,s,E,A;switch(e.prim){case"DUP":{const r=e.args?parseInt(e.args[0].int,10):1;if(0===r)throw new aM(e,t,"DUP 0 is forbidden");const n=o(r-1,null)[0];if("ticket"===sM(n))throw new aM(e,t,"ticket can't be DUPed");return[n,...t]}case"SWAP":{const e=o(0,null,null);return g({}),[e[1],e[0],...t.slice(2)]}case"SOME":return[v({prim:"option",args:[o(0,null)[0]]},g({t:1,v:1})),...t.slice(1)];case"UNIT":return[v({prim:"unit"},g({v:1,t:1})),...t];case"PAIR":{const r=e.args?parseInt(e.args[0].int,10):2;if(r<2)throw new aM(e,t,`PAIR ${r} is forbidden`);const n=o(0,...new Array(r).fill(null)),i=g({f:r,t:1,v:1},{specialFields:!0}),a=e=>{const t=e.lastIndexOf(".");return e.slice(t>0?t+1:1)},s=n.map(((e,t)=>{var r;const n=c(e);return v(e,{v:null,t:null,f:i.f&&i.f.length>t&&"%"!==i.f[t]?"%@"===i.f[t]?n.v?["%"+a((null===(r=n.v)||void 0===r?void 0:r[0])||"")]:void 0:[i.f[t]]:void 0})}));return[v({prim:"pair",args:s},{t:i.t,v:i.v}),...t.slice(r)]}case"UNPAIR":{const r=e.args?parseInt(e.args[0].int,10):2;if(r<2)throw new aM(e,t,`UNPAIR ${r} is forbidden`);const n=o(0,["pair"])[0],i=g({f:2,v:2},{specialVar:!0});return[...w(n,r).map(((e,t)=>b(n,e,i,t,0===t?"car":"cdr"))),...t.slice(1)]}case"CAR":case"CDR":{const r=gI("pair",o(0,["pair"])[0]);return[b(r,r.args["CAR"===e.prim?0:1],g({f:1,v:1},{specialVar:!0}),0,e.prim.toLocaleLowerCase()),...t.slice(1)]}case"CONS":{const e=o(0,null,["list"]);return u(e[0],e[1].args[0]),[y({prim:"list",args:[e[1].args[0]]}),...t.slice(2)]}case"SIZE":return o(0,["string","list","set","map","bytes"]),[y({prim:"nat"}),...t.slice(1)];case"MEM":{const e=o(0,null,["set","map","big_map"]);return d(e[0]),u(e[0],e[1].args[0]),[y({prim:"bool"}),...t.slice(2)]}case"GET":if(e.args){const r=parseInt(e.args[0].int,10);return[y(x(o(0,["pair"])[0],r)),...t.slice(1)]}{const e=o(0,null,["map","big_map"]);return d(e[0]),u(e[0],e[1].args[0]),[y({prim:"option",args:[e[1].args[1]]}),...t.slice(2)]}case"UPDATE":if(e.args){const r=parseInt(e.args[0].int,10),n=o(0,null,["pair"]);return[y(_(n[1],n[0],r)),...t.slice(2)]}{const e=o(0,null,["bool","option"]);if(d(e[0]),"bool"===e[1].prim){const r=o(2,["set"]);return u(e[0],r[0].args[0]),[y({prim:"set",args:[v(e[0],{t:null})]}),...t.slice(3)]}const r=o(2,["map","big_map"]);return u(e[0],r[0].args[0]),"map"===r[0].prim?[y({prim:"map",args:[v(e[0],{t:null}),v(e[1].args[0],{t:null})]}),...t.slice(3)]:(m(e[1].args[0]),[y({prim:"big_map",args:[v(e[0],{t:null}),v(e[1].args[0],{t:null})]}),...t.slice(3)])}case"GET_AND_UPDATE":{const e=g({v:2}),r=o(0,null,["option"],["map","big_map"]);d(r[0]),u(r[0],r[2].args[0]),u(r[1].args[0],r[2].args[1]);const n=null===(i=e.v)||void 0===i?void 0:i.map((e=>"@"!==e?[e]:void 0));return"map"===r[2].prim?[v({prim:"option",args:[r[2].args[1]]},{v:null===n||void 0===n?void 0:n[0]}),v({prim:"map",args:[v(r[0],{t:null}),v(r[1].args[0],{t:null})]},{v:null===n||void 0===n?void 0:n[1]}),...t.slice(3)]:(m(r[1].args[0]),[v({prim:"option",args:[r[2].args[1]]},{v:null===n||void 0===n?void 0:n[0]}),v({prim:"big_map",args:[v(r[0],{t:null}),v(r[1].args[0],{t:null})]},{v:null===n||void 0===n?void 0:n[1]}),...t.slice(3)])}case"EXEC":{const e=o(0,null,["lambda"]);return u(e[0],e[1].args[0]),[y(e[1].args[1]),...t.slice(2)]}case"APPLY":{const r=o(0,null,["lambda"]);if(f(r[0]),p(r[0]),!vI(r[1].args[0]))throw new aM(e,t,`${e.prim}: function's argument must be a pair: ${sM(r[1].args[0])}`);const n=r[1].args[0];return u(r[0],cM(n)[0]),[y({prim:"lambda",args:[cM(n)[1],r[1].args[1]]}),...t.slice(2)]}case"FAILWITH":{const e=o(0,null)[0];return SR(n,xR.PtEdo2Zk)||h(e),{failed:e,level:0}}case"NEVER":return o(0,["never"]),{failed:{prim:"never"},level:0};case"RENAME":return[y(o(0,null)[0]),...t.slice(1)];case"CONCAT":{const r=o(0,["string","list","bytes"]);if("list"===r[0].prim){if("string"!==sM(r[0].args[0])&&"bytes"!==sM(r[0].args[0]))throw new aM(e,t,`${e.prim}: can't concatenate list of ${sM(r[0].args[0])}'s`);return[y(r[0].args[0]),...t.slice(1)]}const n=o(1,["string","bytes"]);if(r[0].prim!==n[0].prim)throw new aM(e,t,`${e.prim}: can't concatenate ${r[0].prim} with ${n[0].prim}`);return[y(n[0]),...t.slice(2)]}case"SLICE":return[y({prim:"option",args:[o(0,["nat"],["nat"],["string","bytes"])[2]]},"@slice"),...t.slice(3)];case"PACK":{const e=o(0,null)[0];return h(e),[y({prim:"bytes"},"@packed"),...t.slice(1)]}case"ADD":{const r=o(0,["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===r[0].prim&&"int"===r[1].prim||"int"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("int"===r[0].prim&&"timestamp"===r[1].prim||"timestamp"===r[0].prim&&"int"===r[1].prim)return[y({prim:"timestamp"}),...t.slice(2)];if(("int"===r[0].prim||"nat"===r[0].prim||"mutez"===r[0].prim||"bls12_381_g1"===r[0].prim||"bls12_381_g2"===r[0].prim||"bls12_381_fr"===r[0].prim)&&r[0].prim===r[1].prim)return[y(r[0]),...t.slice(2)];throw new aM(e,t,`${e.prim}: can't add ${r[0].prim} to ${r[1].prim}`)}case"SUB":{const r=SR(n,xR.PsiThaCa)?o(0,["nat","int","timestamp","mutez"],["nat","int","timestamp","mutez"]):o(0,["nat","int","timestamp"],["nat","int","timestamp"]);if(("nat"===r[0].prim||"int"===r[0].prim)&&("nat"===r[1].prim||"int"===r[1].prim)||"timestamp"===r[0].prim&&"timestamp"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("timestamp"===r[0].prim&&"int"===r[1].prim)return[y({prim:"timestamp"}),...t.slice(2)];if("mutez"===r[0].prim&&"mutez"===r[1].prim)return[y({prim:"mutez"}),...t.slice(2)];throw new aM(e,t,`${e.prim}: can't subtract ${r[0].prim} from ${r[1].prim}`)}case"SUB_MUTEZ":return o(0,["mutez"],["mutez"]),[y({prim:"option",args:[{prim:"mutez"}]}),...t.slice(2)];case"MUL":{const r=o(0,["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===r[0].prim&&"int"===r[1].prim||"int"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("nat"===r[0].prim&&"mutez"===r[1].prim||"mutez"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"mutez"}),...t.slice(2)];if(("bls12_381_g1"===r[0].prim||"bls12_381_g2"===r[0].prim||"bls12_381_fr"===r[0].prim)&&"bls12_381_fr"===r[1].prim||("nat"===r[0].prim||"int"===r[0].prim)&&r[0].prim===r[1].prim)return[y(r[0]),...t.slice(2)];if(("nat"===r[0].prim||"int"===r[0].prim)&&"bls12_381_fr"===r[1].prim||("nat"===r[1].prim||"int"===r[1].prim)&&"bls12_381_fr"===r[0].prim)return[y({prim:"bls12_381_fr"}),...t.slice(2)];throw new aM(e,t,`${e.prim}: can't multiply ${r[0].prim} by ${r[1].prim}`)}case"EDIV":{const r=(e,t)=>({prim:"option",args:[{prim:"pair",args:[{prim:e},{prim:t}]}]}),n=o(0,["nat","int","mutez"],["nat","int","mutez"]);if("nat"===n[0].prim&&"nat"===n[1].prim)return[y(r("nat","nat")),...t.slice(2)];if(!("nat"!==n[0].prim&&"int"!==n[0].prim||"nat"!==n[1].prim&&"int"!==n[1].prim))return[y(r("int","nat")),...t.slice(2)];if("mutez"===n[0].prim&&"nat"===n[1].prim)return[y(r("mutez","mutez")),...t.slice(2)];if("mutez"===n[0].prim&&"mutez"===n[1].prim)return[y(r("nat","mutez")),...t.slice(2)];throw new aM(e,t,`${e.prim}: can't euclideally divide ${n[0].prim} by ${n[1].prim}`)}case"ABS":return o(0,["int"]),[y({prim:"nat"}),...t.slice(1)];case"ISNAT":return o(0,["int"]),[y({prim:"option",args:[{prim:"nat"}]}),...t.slice(1)];case"INT":return o(0,["nat","bls12_381_fr","bytes"]),[y({prim:"int"}),...t.slice(1)];case"BYTES":return o(0,["nat","int"]),[y({prim:"bytes"}),...t.slice(1)];case"NAT":return o(0,["bytes"]),[y({prim:"nat"}),...t.slice(1)];case"NEG":{const e=o(0,["nat","int","bls12_381_g1","bls12_381_g2","bls12_381_fr"])[0];return"nat"===e.prim||"int"===e.prim?[y({prim:"int"}),...t.slice(1)]:[y(e),...t.slice(1)]}case"LSL":case"LSR":return o(0,["nat","bytes"],["nat","bytes"]),[y({prim:"nat"}),...t.slice(2)];case"OR":case"XOR":{const r=o(0,["nat","bytes","bool"],["nat","bytes","bool"]);if(r[0].prim!==r[1].prim)throw new aM(e,t,`${e.prim}: both arguments must be of the same type: ${r[0].prim}, ${r[1].prim}`);return[y(r[1]),...t.slice(2)]}case"AND":{const r=o(0,["nat","bytes","bool","int"],["nat","bytes","bool"]);if(("int"!==r[0].prim||"nat"!==r[1].prim)&&r[0].prim!==r[1].prim)throw new aM(e,t,`${e.prim}: both arguments must be of the same type: ${r[0].prim}, ${r[1].prim}`);return[y(r[1]),...t.slice(2)]}case"NOT":return"bool"===o(0,["nat","bytes","bool","int"])[0].prim?[y({prim:"bool"}),...t.slice(1)]:[y({prim:"int"}),...t.slice(1)];case"COMPARE":{const e=o(0,null,null);return d(e[0]),d(e[1]),[y({prim:"int"}),...t.slice(2)]}case"EQ":case"NEQ":case"LT":case"GT":case"LE":case"GE":return o(0,["int"]),[y({prim:"bool"}),...t.slice(1)];case"SELF":{if(void 0===(null===r||void 0===r?void 0:r.contract))throw new aM(e,t,`${e.prim}: contract required`);const n=g({f:1,v:1}),i=vM(r.contract,null===(a=n.f)||void 0===a?void 0:a[0]);if(null===i)throw new aM(e,t,`${e.prim}: contract has no entrypoint ${i}`);return[v({prim:"contract",args:[i]},{v:n.v?n.v:["@self"]}),...t]}case"TRANSFER_TOKENS":{const e=o(0,null,["mutez"],["contract"]);return u(e[0],e[2].args[0]),[y({prim:"operation"}),...t.slice(3)]}case"SET_DELEGATE":{const r=o(0,["option"])[0];if("key_hash"!==sM(r.args[0]))throw new aM(e,t,`${e.prim}: key hash expected: ${sM(r.args[0])}`);return[y({prim:"operation"}),...t.slice(1)]}case"IMPLICIT_ACCOUNT":return o(0,["key_hash"]),[y({prim:"contract",args:[{prim:"unit"}]}),...t.slice(1)];case"NOW":return[y({prim:"timestamp"},"@now"),...t];case"AMOUNT":return[y({prim:"mutez"},"@amount"),...t];case"BALANCE":return[y({prim:"mutez"},"@balance"),...t];case"CHECK_SIGNATURE":return o(0,["key"],["signature"],["bytes"]),[y({prim:"bool"}),...t.slice(3)];case"BLAKE2B":case"SHA256":case"SHA512":case"KECCAK":case"SHA3":return o(0,["bytes"]),[y({prim:"bytes"}),...t.slice(1)];case"HASH_KEY":return o(0,["key"]),[y({prim:"key_hash"}),...t.slice(1)];case"SOURCE":return[y({prim:"address"},"@source"),...t];case"SENDER":return[y({prim:"address"},"@sender"),...t];case"ADDRESS":{const e=o(0,["contract"])[0],r=g({v:1});return[v({prim:"address",[wR]:e},{v:r.v?r.v:k(c(e),"address")}),...t.slice(1)]}case"SELF_ADDRESS":{const e={prim:"address"};return void 0!==(null===r||void 0===r?void 0:r.contract)&&(e[wR]={prim:"contract",args:[mM(r.contract,"parameter").args[0]]}),[y(e,"@address"),...t]}case"CHAIN_ID":return[y({prim:"chain_id"}),...t];case"DROP":{g({});const r=void 0!==e.args?parseInt(e.args[0].int,10):1;return o(r-1,null),t.slice(r)}case"DIG":{g({});const r=parseInt(e.args[0].int,10);return[o(r,null)[0],...t.slice(0,r),...t.slice(r+1)]}case"DUG":{g({});const r=parseInt(e.args[0].int,10);return[...t.slice(1,r+1),o(0,null)[0],...t.slice(r+1)]}case"NONE":return dM(e.args[0]),[v({prim:"option",args:[e.args[0]]},g({t:1,v:1})),...t];case"LEFT":case"RIGHT":{const r=o(0,null)[0],n=g({f:2,t:1,v:1},{specialFields:!0}),i=c(r),a=[v(r,{t:null,v:null,f:n.f&&n.f.length>0&&"%"!==n.f[0]?"%@"===n.f[0]?i.v?["%"+i.v[0].slice(1)]:void 0:n.f:void 0}),v(e.args[0],{t:null,f:n.f&&n.f.length>1&&"%"!==n.f[1]?n.f:void 0})];return[v({prim:"or",args:"LEFT"===e.prim?a:[a[1],a[0]]},{t:n.t,v:n.v}),...t.slice(1)]}case"NIL":return dM(e.args[0]),[v({prim:"list",args:[e.args[0]]},g({t:1,v:1})),...t];case"UNPACK":return o(0,["bytes"]),dM(e.args[0]),[y({prim:"option",args:[e.args[0]]},"@unpacked"),...t.slice(1)];case"CONTRACT":{const r=o(0,["address"])[0];dM(e.args[0]);const n=g({v:1,f:1}),i=r[wR];if(void 0!==i){const r=vM(i,null===(s=n.f)||void 0===s?void 0:s[0]);if(null===r)throw new aM(e,t,`${e.prim}: contract has no entrypoint ${r}`);u(r,e.args[0])}return[v({prim:"option",args:[{prim:"contract",args:[e.args[0]]}]},{v:n.v?n.v:k(c(r),"contract")}),...t.slice(1)]}case"CAST":{g({});const r=o(0,null)[0];return dM(e.args[0]),u(e.args[0],r),[e.args[0],...t.slice(1)]}case"IF_NONE":{g({});const n=o(0,["option"])[0],i=t.slice(1);return S(pM(e.args[0],i,r),pM(e.args[1],[v(n.args[0],{t:null,v:k(c(n),"some")}),...i],r))}case"IF_LEFT":{g({});const n=o(0,["or"])[0],i=c(n),a=c(n.args[0]),s=c(n.args[1]),l=t.slice(1);return S(pM(e.args[0],[v(n.args[0],{t:null,v:k(i,a.f?a.f[0].slice(1):"left")}),...l],r),pM(e.args[1],[v(n.args[1],{t:null,v:k(i,s.f?s.f[0].slice(1):"right")}),...l],r))}case"IF_CONS":{g({});const n=o(0,["list"])[0],i=c(n),a=t.slice(1);return S(pM(e.args[0],[v(n.args[0],{t:null,v:k(i,"hd")}),v(n,{t:null,v:k(i,"tl")}),...a],r),pM(e.args[1],a,r))}case"IF":{g({}),o(0,["bool"]);const n=t.slice(1);return S(pM(e.args[0],n,r),pM(e.args[1],n,r))}case"MAP":{const n=o(0,["list","map","option"])[0],i=t.slice(1),a="map"===n.prim?{prim:"pair",args:n.args}:n.args[0],s=pM(e.args[0],[v(a,{t:null,v:k(c(n),"elt")}),...i],r);if("failed"in s){if(!("prim"in s.failed)||"never"!==s.failed.prim)throw new aM(e,t,`${e.prim}: FAIL is not allowed in MAP`);return{failed:s.failed,level:s.level+1}}if(s.length<1)throw new aM(e,t,`${e.prim}: function must return a value`);return l(s.slice(1),i),"list"===n.prim?[y({prim:"list",args:[s[0]]}),...i]:"map"===n.prim?[y({prim:"map",args:[n.args[0],s[0]]}),...i]:[y({prim:"option",args:[s[0]]}),...i]}case"ITER":{g({});const n=o(0,["set","list","map"])[0],i=t.slice(1),a="map"===n.prim?{prim:"pair",args:n.args}:n.args[0],s=pM(e.args[0],[v(a,{t:null,v:k(c(n),"elt")}),...i],r);return"failed"in s?{failed:s.failed,level:s.level+1}:(l(s,i),i)}case"LOOP":{g({}),o(0,["bool"]);const n=t.slice(1),i=pM(e.args[0],n,r);return"failed"in i?{failed:i.failed,level:i.level+1}:(l(i,[{prim:"bool"},...n]),n)}case"LOOP_LEFT":{g({});const n=o(0,["or"])[0],i=t.slice(1),a=pM(e.args[0],[v(n.args[0],{t:null,v:k(c(n),"left")}),...i],r);return"failed"in a?{failed:a.failed,level:a.level+1}:(l(a,[n,...i]),[v(n.args[1],{t:null,v:g({v:1}).v}),...i])}case"DIP":{g({});const n=2===e.args.length?parseInt(e.args[0].int,10):1;o(n-1,null);const i=t.slice(0,n),a=t.slice(n),s=2===e.args.length?pM(e.args[1],a,r):pM(e.args[0],a,r);return"failed"in s?{failed:s.failed,level:s.level+1}:[...i,...s]}case"CREATE_CONTRACT":{const r=g({v:2}),n=o(0,["option"],["mutez"],null);if("key_hash"!==sM(n[0].args[0]))throw new aM(e,t,`${e.prim}: key hash expected: ${sM(n[0].args[0])}`);f(n[2])&&(bM(e.args[0]),lM(mM(e.args[0],"storage").args[0],n[2]));const i=null===(E=r.v)||void 0===E?void 0:E.map((e=>"@"!==e?[e]:void 0));return[v({prim:"operation"},{v:null===i||void 0===i?void 0:i[0]}),v({prim:"address",[wR]:{prim:"contract",args:[mM(e.args[0],"parameter").args[0]]}},{v:null===i||void 0===i?void 0:i[1]}),...t.slice(3)]}case"PUSH":return dM(e.args[0]),fM(e.args[1],e.args[0],Object.assign(Object.assign({},r),{contract:void 0})),[y(e.args[0]),...t];case"EMPTY_SET":return dM(e.args[0]),d(e.args[0]),[v({prim:"set",args:e.args},g({t:1,v:1})),...t];case"EMPTY_MAP":return dM(e.args[0]),d(e.args[0]),dM(e.args[1]),[v({prim:"map",args:e.args},g({t:1,v:1})),...t];case"EMPTY_BIG_MAP":return dM(e.args[0]),d(e.args[0]),dM(e.args[1]),m(e.args[0]),[v({prim:"big_map",args:e.args},g({t:1,v:1})),...t];case"LAMBDA_REC":case"LAMBDA":{dM(e.args[0]),dM(e.args[1]);const n=[e.args[0]];"LAMBDA_REC"===e.prim&&n.push({prim:"lambda",args:[e.args[0],e.args[1]]});const i=pM(e.args[2],n,Object.assign(Object.assign({},r),{contract:void 0}));if("failed"in i)return{failed:i.failed,level:i.level+1};if(1!==i.length)throw new aM(e,t,`${e.prim}: function must return a value`);return u(e.args[1],i[0]),[y({prim:"lambda",args:[e.args[0],e.args[1]]}),...t]}case"LEVEL":return[y({prim:"nat"},"@level"),...t];case"TOTAL_VOTING_POWER":case"MIN_BLOCK_TIME":return[y({prim:"nat"}),...t];case"VOTING_POWER":return o(0,["key_hash"]),[y({prim:"nat"}),...t.slice(1)];case"TICKET":{const e=o(0,null,["nat"])[0];return d(e),SR(n,xR.PtLimaPtL)?[v({prim:"ticket",args:[e]},g({t:1,v:1})),...t.slice(2)]:[y({prim:"option",args:[v({prim:"ticket",args:[e]},g({t:1,v:1}))]}),...t.slice(2)]}case"JOIN_TICKETS":{const r=gI("pair",o(0,["pair"])[0]);if("ticket"!==sM(r.args[0]))throw new aM(e,t,`${e.prim}: ticket expected: ${sM(r.args[0])}`);return u(r.args[0],r.args[1]),[y({prim:"option",args:[v(r.args[0],{t:null})]}),...t.slice(1)]}case"SPLIT_TICKET":{const r=o(0,["ticket"],["pair"]),n=gI("pair",r[1]);if("nat"!==sM(n.args[0]))throw new aM(e,t,`${e.prim}: nat expected: ${sM(n.args[0])}`);return u(n.args[0],n.args[1]),[y({prim:"option",args:[{prim:"pair",args:[v(r[0],{t:null}),v(r[0],{t:null})]}]}),...t.slice(2)]}case"READ_TICKET":{const e=g({v:2}),r=o(0,["ticket"])[0],n=null===(A=e.v)||void 0===A?void 0:A.map((e=>"@"!==e?[e]:void 0));return[v({prim:"pair",args:[{prim:"address"},v(r.args[0],{t:null}),{prim:"nat"}]},{v:null===n||void 0===n?void 0:n[0]}),v(r,{v:null===n||void 0===n?void 0:n[1],t:null}),...t.slice(1)]}case"PAIRING_CHECK":{const r=o(0,["list"])[0].args[0];if(!vI(r))throw new aM(e,t,`${e.prim}: pair expected: ${sM(r)}`);const n=gI("pair",r);if("bls12_381_g1"!==sM(n.args[0]))throw new aM(e,t,`${e.prim}: bls12_381_g1 expected: ${sM(n.args[0])}`);if("bls12_381_g2"!==sM(n.args[1]))throw new aM(e,t,`${e.prim}: bls12_381_g2 expected: ${sM(n.args[1])}`);return[y({prim:"bool"}),...t.slice(1)]}case"SAPLING_EMPTY_STATE":return[v({prim:"sapling_state",args:[e.args[0]]},g({v:1,t:1})),...t];case"SAPLING_VERIFY_UPDATE":{const r=o(0,["sapling_transaction"],["sapling_state"]);if(parseInt(r[0].args[0].int,10)!==parseInt(r[1].args[0].int,10))throw new aM(e,t,`${e.prim}: sapling memo size mismatch: ${r[0].args[0].int} != ${r[1].args[0].int}`);return SR(n,xR.PtJakarta)?[y({prim:"option",args:[{prim:"pair",args:[{prim:"int"},v(r[1],{t:null})]}]}),...t.slice(2)]:[y({prim:"option",args:[{prim:"pair",args:[{prim:"bytes"},{prim:"pair",args:[{prim:"int"},v(r[1],{t:null})]}]}]}),...t.slice(2)]}case"OPEN_CHEST":return o(0,["chest_key"],["chest"],["nat"]),[y({prim:"or",args:[{prim:"bytes"},{prim:"bool"}]}),...t.slice(3)];case"VIEW":{const r=o(0,null,["address"]);return p(r[0]),[y({prim:"option",args:[e.args[1]]}),...t.slice(2)]}case"EMIT":{const r=g({f:1,t:1});if(e.args){const n=o(0,null);return u(n[0],e.args[0]),[v({prim:"operation"},r),...t.slice(1)]}return[v({prim:"operation"},r),...t.slice(1)]}default:throw new aI(e,`unexpected instruction: ${e.prim}`)}})(i);if(void 0!==(null===r||void 0===r?void 0:r.traceCallback)){const e={op:i,in:t,out:E};r.traceCallback(e)}return E}function mM(e,t){for(const r of e)if(r.prim===t)return r;throw new aI(e,`missing contract section: ${t}`)}function gM(e){if(Array.isArray(e))for(const t of e)if("prim"in t&&("parameter"===t.prim||"storage"===t.prim||"code"===t.prim))return!0;return!1}function vM(e,t){t=t||"%default";const r=yM(e).find((e=>e[0]===t));return void 0!==r?r[1]:"%default"===t?gM(e)?mM(e,"parameter").args[0]:e:null}function yM(e){if(gM(e)){const t=mM(e,"parameter"),r=yM(t.args[0]),n=fI(t);return n.f?[[n.f[0],t.args[0]],...r]:r}if(function(e){return Array.isArray(e)||"or"===e.prim}(e)){const t=cM(e),r=e=>{const r=fI(t[e]);if("or"===sM(t[e])){const n=yM(t[e]);return r.f?[[r.f[0],t[e]],...n]:n}return r.f?[[r.f[0],t[e]]]:[]};return[...r(0),...r(1)]}return[]}function bM(e,t){const r=(r,n,i,o)=>{dM(r,!0),dM(n);const a=pM(o,[{prim:"pair",args:[Object.assign(Object.assign({},r),{annots:["@parameter"]}),Object.assign(Object.assign({},n),{annots:["@storage"]})]}],Object.assign(Object.assign({},t),{contract:e}));if("failed"in a)return a;try{uM(a,[i])}catch(Tie){throw Tie instanceof aI?new aM(o,a,Tie.message):Tie}return a},n=mM(e,"parameter").args[0],i=mM(e,"storage").args[0],o=r(n,i,{prim:"pair",args:[{prim:"list",args:[{prim:"operation"}]},i]},mM(e,"code").args[0]);for(const a of Object.values(function(e){const t={};for(const r of e)"view"===r.prim&&(t[r.args[0].string]=r);return t}(e)))r(a.args[1],i,a.args[2],a.args[3]);return o}function wM(e,t,r){dM(t),fM(e,t,r||null)}class xM{constructor(e,t){this.contract=e,this.ctx=Object.assign({contract:e},t),this.output=bM(e,this.ctx)}static parse(e,t){const r=new WR(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new tI("empty Michelson");if(WI(n))return new xM(n,t)}static parseTypeExpression(e,t){const r=new WR(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new rI("empty type expression");if(VI(n))return dM(n),n}static parseDataExpression(e,t){const r=new WR(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new nI("empty data expression");if(KI(n))return n;throw void 0}section(e){return mM(this.contract,e)}entryPoints(){return yM(this.contract)}entryPoint(e){return vM(this.contract,e)}assertDataValid(e,t){wM(e,t,this.ctx)}isDataValid(e,t){return function(e,t,r){try{return wM(e,t,r),!0}catch(ln){return!1}}(e,t,this.ctx)}assertParameterValid(e,t){const r=this.entryPoint(e||void 0);if(null===r)throw new iI(null===e||void 0===e?void 0:e.toString());this.assertDataValid(t,r)}isParameterValid(e,t){try{return this.assertParameterValid(e,t),!0}catch(ln){return!1}}functionType(e,t){return function(e,t,r){for(const n of t)dM(n);if(void 0!==(null===r||void 0===r?void 0:r.contract))for(const n of["parameter","storage"])dM(mM(r.contract,n).args[0]);return pM(e,t,r||null)}(e,t,this.ctx)}}new xM([{prim:"parameter",args:[{prim:"unit"}]},{prim:"storage",args:[{prim:"unit"}]},{prim:"code",args:[[{prim:"CAR"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PAIR"}]]}]);var _M=r(9673).Buffer;const kM=e=>e.reduce(((e,t)=>e+t.toString(16).padStart(2,"0")),""),SM=(e,t=8)=>e.toString(16).padStart(t,"0");var EM;!function(e){e.SECRET="secret",e.RAW="raw",e.TZ1="tz1",e.BRANCH="branch",e.ZARITH="zarith",e.PUBLIC_KEY="public_key",e.PKH="pkh",e.PKH_ARR="pkhArr",e.DELEGATE="delegate",e.SCRIPT="script",e.BALLOT_STATEMENT="ballotStmt",e.PROPOSAL="proposal",e.PROPOSAL_ARR="proposalArr",e.INT32="int32",e.INT16="int16",e.PARAMETERS="parameters",e.ADDRESS="address",e.SMART_CONTRACT_ADDRESS="smart_contract_address",e.SMART_ROLLUP_ADDRESS="smart_rollup_address",e.SMART_ROLLUP_COMMITMENT_HASH="smart_rollup_commitment_hash",e.VALUE="value",e.PADDED_BYTES="padded_bytes",e.SMART_ROLLUP_MESSAGE="smart_rollup_message",e.MANAGER="manager",e.BLOCK_PAYLOAD_HASH="blockPayloadHash",e.ENTRYPOINT="entrypoint",e.OPERATION="operation",e.OP_ACTIVATE_ACCOUNT="activate_account",e.OP_DELEGATION="delegation",e.OP_TRANSACTION="transaction",e.OP_ORIGINATION="origination",e.OP_BALLOT="ballot",e.OP_FAILING_NOOP="failing_noop",e.OP_ATTESTATION="attestation",e.OP_ENDORSEMENT="endorsement",e.OP_SEED_NONCE_REVELATION="seed_nonce_revelation",e.OP_REVEAL="reveal",e.OP_PROPOSALS="proposals",e.OP_REGISTER_GLOBAL_CONSTANT="register_global_constant",e.OP_TRANSFER_TICKET="transfer_ticket",e.BURN_LIMIT="burn_limit",e.OP_INCREASE_PAID_STORAGE="increase_paid_storage",e.OP_UPDATE_CONSENSUS_KEY="update_consensus_key",e.OP_DRAIN_DELEGATE="drain_delegate",e.DEPOSITS_LIMIT="deposits_limit",e.OP_SET_DEPOSITS_LIMIT="set_deposits_limit",e.OP_SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.PVM_KIND="pvm_kind",e.OP_SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message"}(EM||(EM={}));const AM={"00":"parameter","01":"storage","02":"code","03":"False","04":"Elt","05":"Left","06":"None","07":"Pair","08":"Right","09":"Some","0a":"True","0b":"Unit","0c":"PACK","0d":"UNPACK","0e":"BLAKE2B","0f":"SHA256",10:"SHA512",11:"ABS",12:"ADD",13:"AMOUNT",14:"AND",15:"BALANCE",16:"CAR",17:"CDR",18:"CHECK_SIGNATURE",19:"COMPARE","1a":"CONCAT","1b":"CONS","1c":"CREATE_ACCOUNT","1d":"CREATE_CONTRACT","1e":"IMPLICIT_ACCOUNT","1f":"DIP",20:"DROP",21:"DUP",22:"EDIV",23:"EMPTY_MAP",24:"EMPTY_SET",25:"EQ",26:"EXEC",27:"FAILWITH",28:"GE",29:"GET","2a":"GT","2b":"HASH_KEY","2c":"IF","2d":"IF_CONS","2e":"IF_LEFT","2f":"IF_NONE",30:"INT",31:"LAMBDA",32:"LE",33:"LEFT",34:"LOOP",35:"LSL",36:"LSR",37:"LT",38:"MAP",39:"MEM","3a":"MUL","3b":"NEG","3c":"NEQ","3d":"NIL","3e":"NONE","3f":"NOT",40:"NOW",41:"OR",42:"PAIR",43:"PUSH",44:"RIGHT",45:"SIZE",46:"SOME",47:"SOURCE",48:"SENDER",49:"SELF","4a":"STEPS_TO_QUOTA","4b":"SUB","4c":"SWAP","4d":"TRANSFER_TOKENS","4e":"SET_DELEGATE","4f":"UNIT",50:"UPDATE",51:"XOR",52:"ITER",53:"LOOP_LEFT",54:"ADDRESS",55:"CONTRACT",56:"ISNAT",57:"CAST",58:"RENAME",59:"bool","5a":"contract","5b":"int","5c":"key","5d":"key_hash","5e":"lambda","5f":"list",60:"map",61:"big_map",62:"nat",63:"option",64:"or",65:"pair",66:"set",67:"signature",68:"string",69:"bytes","6a":"mutez","6b":"timestamp","6c":"unit","6d":"operation","6e":"address","6f":"SLICE",70:"DIG",71:"DUG",72:"EMPTY_BIG_MAP",73:"APPLY",74:"chain_id",75:"CHAIN_ID",76:"LEVEL",77:"SELF_ADDRESS",78:"never",79:"NEVER","7a":"UNPAIR","7b":"VOTING_POWER","7c":"TOTAL_VOTING_POWER","7d":"KECCAK","7e":"SHA3","7f":"PAIRING_CHECK",80:"bls12_381_g1",81:"bls12_381_g2",82:"bls12_381_fr",83:"sapling_state",84:"sapling_transaction_deprecated",85:"SAPLING_EMPTY_STATE",86:"SAPLING_VERIFY_UPDATE",87:"ticket",88:"TICKET_DEPRECATED",89:"READ_TICKET","8a":"SPLIT_TICKET","8b":"JOIN_TICKETS","8c":"GET_AND_UPDATE","8d":"chest","8e":"chest_key","8f":"OPEN_CHEST",90:"VIEW",91:"view",92:"constant",93:"SUB_MUTEZ",94:"tx_rollup_l2_address",95:"MIN_BLOCK_TIME",96:"sapling_transaction",97:"EMIT",98:"Lambda_rec",99:"LAMBDA_REC","9a":"TICKET","9b":"BYTES","9c":"NAT"},PM=(()=>{const e={};return Object.keys(AM).forEach((t=>{e[AM[t]]=t})),e})(),OM={4:"activate_account",107:"reveal",110:"delegation",108:"transaction",109:"origination",6:"ballot",21:"attestation",1:"seed_nonce_revelation",5:"proposals",111:"register_global_constant",158:"transfer_ticket",112:"set_deposits_limit",113:"increase_paid_storage",114:"update_consensus_key",9:"drain_delegate",200:"smart_rollup_originate",201:"smart_rollup_add_messages",206:"smart_rollup_execute_outbox_message",17:"failing_noop"},TM=(()=>{const e={};return Object.keys(OM).forEach((t=>{const r="string"===typeof t?parseInt(t,10):t;e[OM[r]]=SM(r,2)})),e})(),CM={"00":"default","01":"root","02":"do","03":"set_delegate","04":"remove_delegate","05":"deposit","06":"stake","07":"unstake","08":"finalize_unstake","09":"set_delegate_parameters"},jM=(()=>{const e={};return Object.keys(CM).forEach((t=>{e[CM[t]]=t})),e})();class RM extends PS{constructor(e,t){super(),this.operation=e,this.errorDetail=t,this.name="InvalidOperationSchemaError",this.message="Invalid operation content recevied",t&&(this.message+=` ${t}.`)}}class IM extends PS{constructor(e){super(),this.entrypoint=e,this.name="OversizedEntryPointError",this.message=`Invalid entrypoint length "${e.length}", maximum length is "31".`}}class MM extends PS{constructor(e){super(),this.ballotValue=e,this.name="InvalidBallotValueError",this.message=`Invalid ballot value "${e}" expecting one of the following: "yay", "nay", "pass".`}}class LM extends PS{constructor(e){super(),this.ballotValue=e,this.name="DecodeBallotValueError",this.message=`Invalid ballot value "${e}", cannot be decoded.`}}class NM extends PS{constructor(e){super(),this.value=e,this.name="UnexpectedMichelsonValueError",this.message=`Invalid Michelson value "${e}", unalbe to encode.`}}class DM extends PS{constructor(e){super(),this.message=e,this.name="OperationDecodingError"}}class zM extends PS{constructor(e){super(),this.message=e,this.name="OperationEncodingError"}}class BM extends PS{constructor(e){super(),this.op=e,this.name="UnsupportedOperationError",this.message=`Unsupported operation "${e}", can submit an issue on our github for feature request.`}}class FM extends PS{constructor(e){super(),this.pvm=e,this.name="UnsupportedPvmKindError",this.message=`Invalid Pvm kind "${e}" expecting either "arith" or "wasm_2_0_0".`}}class UM extends PS{constructor(e){super(),this.pvm=e,this.name="DecodePvmKindError",this.message=`Invalid Pvm kind "${e}", cannot be decoded.`}}class $M extends PS{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidSmartRollupAddress",this.message=`Invalid smart rollup address "${e}"`,t&&(this.message+=` ${t}.`)}}class HM extends PS{constructor(e,t){super(),this.hash=e,this.errorDetail=t,this.name="InvalidSmartRollupCommitmentHashError",this.message=`Invalid smart rollup commitment hash "${e}"`,t&&(this.message+=` ${t}.`)}}class VM{static fromHexString(e){const t=e.toLowerCase();if(/^(([a-f]|\d){2})*$/.test(t)){const e=new Uint8Array((t.match(/([a-z]|\d){2}/g)||[]).map((e=>parseInt(e,16))));return new VM(e)}throw new NS(t)}constructor(e,t=0){this.arr=e,this.offset=t}consume(e){const t=this.arr.subarray(this.offset,this.offset+e);return this.offset+=e,t}get(e){return this.arr[this.offset+e]}length(){return this.arr.length-this.offset}slice(e,t){return new VM(this.arr.slice(e,t))}}const qM=e=>{if(Array.isArray(e)){const t=e.map((e=>qM(e))).join(""),r=t.length/2;return`02${SM(r)}${t}`}if((e=>"prim"in e)(e))return eL(e);if((e=>"bytes"in e&&"string"===typeof e.bytes)(e))return GM(e);if((e=>"string"in e&&"string"===typeof e.string)(e))return YM(e);if((e=>"int"in e&&"string"===typeof e.int)(e))return JM(e);throw new NM(JSON.stringify(e))},KM=e=>{const t=e.consume(1);switch(t[0]){case 10:return ZM(e);case 1:return XM(e);case 0:return QM(e);case 2:{const t=new VM(WM(e)),r=[];for(;t.length()>0;)r.push(KM(t));return r}default:return tL(e,t)}},WM=(e,t=4)=>{const r=e.consume(t),n=parseInt(_M.from(r).toString("hex"),16);return e.consume(n)},GM=e=>{if(!/^([A-Fa-f0-9]{2})*$/.test(e.bytes))throw new NS(e.bytes);const t=e.bytes.length/2;return`0a${SM(t)}${e.bytes}`},ZM=e=>{const t=WM(e);return{bytes:_M.from(t).toString("hex")}},YM=e=>{const t=_M.from(e.string,"utf8").toString("hex"),r=t.length/2;return`01${SM(r)}${t}`},XM=e=>{const t=WM(e);return{string:_M.from(t).toString("utf8")}},JM=({int:e})=>{const t=new rw(e,10),r="-"===t.toString(2)[0]?"1":"0",n=t.toString(2).replace(/-/g,""),i=n.length<=6?6:(n.length-6)%7?n.length+7-(n.length-6)%7:n.length,o=n.padStart(i,"0").match(/\d{6,7}/g).reverse();o[0]=r+o[0];const a=o.map(((e,t)=>parseInt((t===o.length-1?"0":"1")+e,2).toString(16).padStart(2,"0")));return`00${a.join("")}`},QM=e=>{let t=e.consume(1)[0];const r=[];for(;128&t;)r.push(t),t=e.consume(1)[0];r.push(t);const n=!!(64&r[0]);r[0]=127&r[0];const i=r.map(((e,t)=>e.toString(2).slice(0===t?-6:-7).padStart(0===t?6:7,"0"))).reverse();let o=new rw(i.join(""),2);return n&&(o=o.times(-1)),{int:o.toFixed()}},eL=e=>{const t=+Array.isArray(e.annots),r=Array.isArray(e.args)?e.args.length:0,n=SM(Math.min(2*r+t+3,9),2),i=PM[e.prim];let o=(e.args||[]).map((e=>qM(e))).join("");const a=Array.isArray(e.annots)?iL(e.annots):"";return"LAMBDA"!==e.prim&&"LAMBDA_REC"!==e.prim||!r||(o=SM(o.length/2)+o+SM(0)),("pair"===e.prim||"Pair"===e.prim)&&r>2&&(o=""===a?SM(o.length/2)+o+SM(0):SM(o.length/2)+o),"view"===e.prim&&e.args&&(o=SM(o.length/2)+o+SM(0)),`${n}${i}${o}${a}`},tL=(e,t)=>{const r=(t[0]-3)%2===1;let n=Math.floor((t[0]-3)/2);const i=e.consume(1)[0].toString(16).padStart(2,"0"),o={prim:AM[i]};if("LAMBDA"!==AM[i]&&"LAMBDA_REC"!==AM[i]||e.consume(4),"view"===AM[i])return 0!=n?rL(e,o):o;let a,s;("pair"===AM[i]||"Pair"===AM[i])&&n>2&&(a=nL(e),n=0,s=oL(e));const c=new Array(n).fill(0).map((()=>KM(e)));return"LAMBDA"!==AM[i]&&"LAMBDA_REC"!==AM[i]||e.consume(4),a?o.args=a:c.length&&(o.args=c),s&&""!==s[0]?o.annots=s:r&&(o.annots=oL(e)),o},rL=(e,t)=>(e.consume(4),t.args=new Array(4).fill(0).map((()=>KM(e))),e.consume(4),t),nL=e=>{const t=new VM(WM(e)),r=[];for(;t.length()>0;)r.push(KM(t));return r},iL=e=>{const t=e.map((e=>_M.from(e,"utf8").toString("hex"))).join("20"),r=t.length/2;return`${SM(r)}${t}`},oL=e=>{const t=e.consume(4),r=parseInt(_M.from(t).toString("hex"),16),n=e.consume(r);return _M.from(n).toString("hex").split("20").map((e=>_M.from(e,"hex").toString("utf8")))},aL=e=>t=>jE(_M.from(AE(t,eE[e]))),sL=e=>t=>EE(t.consume(tE[e]),eE[e]),cL=sL(ZS.TZ1),lL=sL(ZS.B),uL=e=>{const t=e.consume(1);return 0===t[0]?sL(ZS.TZ1)(e):1===t[0]?sL(ZS.TZ2)(e):2===t[0]?sL(ZS.TZ3)(e):void 0},dL=aL(ZS.B),hL=aL(ZS.TZ1),fL=e=>e?"ff":"00",pL=e=>aL(ZS.P)(e),mL=e=>sL(ZS.P)(e),gL=e=>255===e.consume(1)[0],vL=e=>{switch(e.substring(0,3)){case ZS.TZ1:return"00"+aL(ZS.TZ1)(e);case ZS.TZ2:return"01"+aL(ZS.TZ2)(e);case ZS.TZ3:return"02"+aL(ZS.TZ3)(e);case ZS.TZ4:return"03"+aL(ZS.TZ4)(e);default:throw new HS(e,wE(nE.NO_PREFIX_MATCHED)+` expecting one for the following "${ZS.TZ1}", "${ZS.TZ2}", "${ZS.TZ3}" or "${ZS.TZ4}".`)}},yL=e=>{const t=[];let r=new nw(e,10);if(r.isNaN())throw new TypeError(`Invalid zarith number ${e}`);for(;;){if(r.lt(128)){r.lt(16)&&t.push("0"),t.push(r.toString(16));break}{let e=r.mod(128);r=r.minus(e),r=r.dividedBy(128),e=e.plus(128),t.push(e.toString(16))}}return t.join("")},bL=e=>{let t=0;for(;t=0;n-=1){const t=127&e.get(n);r=r.multipliedBy(128),r=r.plus(t)}return e.consume(t+1),new nw(r).toString()},wL=aL(ZS.VH),xL=sL(ZS.VH),_L={branch:EM.BRANCH,contents:[EM.OPERATION]},kL={pkh:EM.TZ1,secret:EM.SECRET},SL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,public_key:EM.PUBLIC_KEY},EL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,delegate:EM.DELEGATE},AL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,amount:EM.ZARITH,destination:EM.ADDRESS,parameters:EM.PARAMETERS},PL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,balance:EM.ZARITH,delegate:EM.DELEGATE,script:EM.SCRIPT},OL={source:EM.PKH,period:EM.INT32,proposal:EM.PROPOSAL,ballot:EM.BALLOT_STATEMENT},TL={slot:EM.INT16,level:EM.INT32,round:EM.INT32,block_payload_hash:EM.BLOCK_PAYLOAD_HASH},CL={slot:EM.INT16,level:EM.INT32,round:EM.INT32,block_payload_hash:EM.BLOCK_PAYLOAD_HASH},jL={level:EM.INT32,nonce:EM.RAW},RL={source:EM.PKH,period:EM.INT32,proposals:EM.PROPOSAL_ARR},IL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,value:EM.VALUE},ML={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,ticket_contents:EM.VALUE,ticket_ty:EM.VALUE,ticket_ticketer:EM.ADDRESS,ticket_amount:EM.ZARITH,destination:EM.ADDRESS,entrypoint:EM.ENTRYPOINT},LL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,amount:EM.ZARITH,destination:EM.SMART_CONTRACT_ADDRESS},NL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,pk:EM.PUBLIC_KEY},DL={consensus_key:EM.PKH,delegate:EM.PKH,destination:EM.PKH},zL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,limit:EM.DEPOSITS_LIMIT},BL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,pvm_kind:EM.PVM_KIND,kernel:EM.PADDED_BYTES,parameters_ty:EM.VALUE,whitelist:EM.PKH_ARR},FL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,message:EM.SMART_ROLLUP_MESSAGE},UL={source:EM.PKH,fee:EM.ZARITH,counter:EM.ZARITH,gas_limit:EM.ZARITH,storage_limit:EM.ZARITH,rollup:EM.SMART_ROLLUP_ADDRESS,cemented_commitment:EM.SMART_ROLLUP_COMMITMENT_HASH,output_proof:EM.PADDED_BYTES},$L={arbitrary:EM.PADDED_BYTES},HL=e=>t=>r=>Object.keys(t).reduce(((n,i)=>{const o=t[i];if(r&&Array.isArray(o)){const t=e[o[0]],a=r[i];if(!Array.isArray(a))throw new zM(`Invalid operation value "${JSON.stringify(a)}" of key "${i}, expected value to be Array.`);return n+a.reduce(((e,r)=>e+t(r)),"")}return n+(0,e[o])(r[i])}),""),VL=e=>t=>r=>Object.keys(t).reduce(((n,i)=>{const o=t[i];if(Array.isArray(o)){const t=e[o[0]],a=[],s=r.length();for(;r.length()>0;)if(a.push(t(r)),s===r.length())throw new DM("Unable to decode value");return Object.assign(Object.assign({},n),{[i]:a})}{const t=(0,e[o])(r);return"undefined"!==typeof t?Object.assign(Object.assign({},n),{[i]:t}):Object.assign({},n)}}),{}),qL={[EM.SECRET]:e=>kM(e.consume(20)),[EM.RAW]:e=>kM(e.consume(32)),[EM.TZ1]:cL,[EM.BRANCH]:lL,[EM.ZARITH]:bL,[EM.PUBLIC_KEY]:e=>{switch(e.consume(1)[0]){case 0:return sL(ZS.EDPK)(e);case 1:return sL(ZS.SPPK)(e);case 2:return sL(ZS.P2PK)(e);default:throw new FS(e.toString(),wE(nE.NO_PREFIX_MATCHED))}},[EM.PKH]:uL,[EM.PKH_ARR]:e=>{if(!gL(e))return;const t=[];for(e.consume(4);e.length()>0;)t.push(uL(e));return t},[EM.DELEGATE]:e=>{if(gL(e))return uL(e)},[EM.INT32]:e=>{const t=e.consume(4);let r=0;for(let n=0;n{const t=WM(e),r=WM(e);return{code:KM(new VM(t)),storage:KM(new VM(r))}},[EM.BALLOT_STATEMENT]:e=>{const t=e.consume(1);switch(t[0]){case 0:return"yay";case 1:return"nay";case 2:return"pass";default:throw new LM(t[0].toString())}},[EM.PROPOSAL]:mL,[EM.PROPOSAL_ARR]:e=>{const t=[];for(e.consume(4);e.length()>0;)t.push(mL(e));return t},[EM.PARAMETERS]:e=>{if(0!==e.consume(1)[0]){const t=(e=>{const t=SM(e.consume(1)[0],2);if(t in CM)return CM[t];{const t=WM(e,1),r=_M.from(t).toString("utf8");if(r.length>31)throw new IM(r);return r}})(e),r=WM(e);return{entrypoint:t,value:KM(new VM(r))}}},[EM.ADDRESS]:e=>{switch(e.consume(1)[0]){case 0:return uL(e);case 1:{const t=sL(ZS.KT1)(e);return e.consume(1),t}default:throw new RS(e.toString(),": Unable to decode.")}},[EM.SMART_ROLLUP_ADDRESS]:e=>{const t=sL(ZS.SR1)(e);if(t.substring(0,3)!==ZS.SR1)throw new $M(t,wE(nE.NO_PREFIX_MATCHED)+` expecting prefix '${ZS.SR1}'.`);return t},[EM.SMART_CONTRACT_ADDRESS]:e=>{if(1===e.consume(1)[0]){const t=sL(ZS.KT1)(e);return e.consume(1),t}throw new US(e.toString(),wE(nE.NO_PREFIX_MATCHED))},[EM.SMART_ROLLUP_COMMITMENT_HASH]:e=>{const t=sL(ZS.SRC1)(e);if(t.substring(0,4)!==ZS.SRC1)throw new HM(t,wE(nE.NO_PREFIX_MATCHED)+` expecting prefix '${ZS.SRC1}'`);return t},[EM.VALUE]:e=>{const t=WM(e);return KM(new VM(t))},[EM.INT16]:e=>{const t=e.consume(2);let r=0;for(let n=0;n{const t=WM(e);return _M.from(t).toString("utf8")},[EM.BURN_LIMIT]:e=>{const t=e.consume(1);if("00"!==_M.from(t).toString("hex"))return bL(e)},[EM.DEPOSITS_LIMIT]:e=>{const t=e.consume(1);if("00"!==_M.from(t).toString("hex"))return bL(e)},[EM.PVM_KIND]:e=>{const t=e.consume(1);switch(t[0]){case 0:return"arith";case 1:return"wasm_2_0_0";case 2:return"riscv";default:throw new UM(t[0].toString())}},[EM.PADDED_BYTES]:e=>{const t=WM(e);return _M.from(t).toString("hex")},[EM.SMART_ROLLUP_MESSAGE]:e=>{const t=WM(e),r=((e,t=4)=>{const r=[];let n=e;for(;n.length();){const e=n.consume(t),i=parseInt(_M.from(e).toString("hex"),16);r.push(n.consume(i)),n=n.slice(i+t)}return r})(new VM(t));return r.map((e=>_M.from(e).toString("hex")))}};qL[EM.OPERATION]=(e=>t=>{const r=t.consume(1),n=OM[r[0]];if(void 0===n)throw new BM(r[0].toString());const i=e[n](t);if("object"!==typeof i)throw new DM("Invalid operation, cannot be decoded.");return Object.assign({kind:n},i)})(qL),qL[EM.OP_ACTIVATE_ACCOUNT]=e=>VL(qL)(kL)(e),qL[EM.OP_FAILING_NOOP]=e=>VL(qL)($L)(e),qL[EM.OP_DELEGATION]=e=>VL(qL)(EL)(e),qL[EM.OP_TRANSACTION]=e=>VL(qL)(AL)(e),qL[EM.OP_ORIGINATION]=e=>VL(qL)(PL)(e),qL[EM.OP_BALLOT]=e=>VL(qL)(OL)(e),qL[EM.OP_ATTESTATION]=e=>VL(qL)(TL)(e),qL[EM.OP_ENDORSEMENT]=e=>VL(qL)(CL)(e),qL[EM.OP_SEED_NONCE_REVELATION]=e=>VL(qL)(jL)(e),qL[EM.OP_PROPOSALS]=e=>VL(qL)(RL)(e),qL[EM.OP_REVEAL]=e=>VL(qL)(SL)(e),qL[EM.OP_REGISTER_GLOBAL_CONSTANT]=e=>VL(qL)(IL)(e),qL[EM.OP_TRANSFER_TICKET]=e=>VL(qL)(ML)(e),qL[EM.OP_INCREASE_PAID_STORAGE]=e=>VL(qL)(LL)(e),qL[EM.OP_UPDATE_CONSENSUS_KEY]=e=>VL(qL)(NL)(e),qL[EM.OP_DRAIN_DELEGATE]=e=>VL(qL)(DL)(e),qL[EM.OP_SMART_ROLLUP_ORIGINATE]=e=>VL(qL)(BL)(e),qL[EM.OP_SMART_ROLLUP_ADD_MESSAGES]=e=>VL(qL)(FL)(e),qL[EM.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE]=e=>VL(qL)(UL)(e),qL[EM.MANAGER]=VL(qL)(_L),qL[EM.OP_SET_DEPOSITS_LIMIT]=e=>VL(qL)(zL)(e);const KL={[EM.SECRET]:e=>e,[EM.RAW]:e=>e,[EM.TZ1]:hL,[EM.BRANCH]:dL,[EM.ZARITH]:yL,[EM.PUBLIC_KEY]:e=>{switch(e.substring(0,4)){case ZS.EDPK:return"00"+aL(ZS.EDPK)(e);case ZS.SPPK:return"01"+aL(ZS.SPPK)(e);case ZS.P2PK:return"02"+aL(ZS.P2PK)(e);default:throw new FS(e,wE(nE.NO_PREFIX_MATCHED)+` expecting one of the following '${ZS.EDPK}', '${ZS.SPPK}', '${ZS.P2PK}' or '${ZS.BLPK}'.`)}},[EM.PKH]:vL,[EM.PKH_ARR]:e=>{if(!e)return fL(!1);if(0===e.length)return fL(!0)+SM(0);const t=e.reduce(((e,t)=>e+vL(t)),"");return fL(!0)+SM(t.length/2)+t},[EM.DELEGATE]:e=>e?fL(!0)+vL(e):fL(!1),[EM.SCRIPT]:e=>{const t=qM(e.code),r=qM(e.storage);return`${SM(t.length/2,8)}${t}${SM(r.length/2,8)}${r}`},[EM.BALLOT_STATEMENT]:e=>{switch(e){case"yay":return"00";case"nay":return"01";case"pass":return"02";default:throw new MM(e)}},[EM.PROPOSAL]:pL,[EM.PROPOSAL_ARR]:e=>SM(32*e.length)+e.map((e=>pL(e))).join(""),[EM.INT32]:e=>{const t=parseInt(String(e),10),r=[];for(let n=0;n<4;n++){const e=8*(4-(n+1));r.push((t&255<>e)}return _M.from(r).toString("hex")},[EM.PARAMETERS]:e=>{if(!e||"default"===e.entrypoint&&"prim"in e.value&&"Unit"===e.value.prim)return"00";const t=(e=>{if(e in jM)return`${jM[e]}`;if(e.length>31)throw new IM(e);return`ff${qM({string:e}).slice(8)}`})(e.entrypoint),r=qM(e.value);return`ff${t}${(r.length/2).toString(16).padStart(8,"0")}${r}`},[EM.ADDRESS]:e=>{switch(e.substring(0,3)){case ZS.TZ1:case ZS.TZ2:case ZS.TZ3:case ZS.TZ4:return"00"+vL(e);case ZS.KT1:return"01"+aL(ZS.KT1)(e)+"00";default:throw new RS(e,wE(nE.NO_PREFIX_MATCHED)+` expecting one of the following prefix '${ZS.TZ1}', ${ZS.TZ2}', '${ZS.TZ3}', '${ZS.TZ4}' or '${ZS.KT1}'.`)}},[EM.SMART_ROLLUP_ADDRESS]:e=>{if(e.substring(0,3)!==ZS.SR1)throw new $M(e,wE(nE.NO_PREFIX_MATCHED)+` expecting prefix '${ZS.SR1}'.`);return aL(ZS.SR1)(e)},[EM.SMART_CONTRACT_ADDRESS]:e=>{if(e.substring(0,3)===ZS.KT1)return"01"+aL(ZS.KT1)(e)+"00";throw new US(e,wE(nE.NO_PREFIX_MATCHED)+` expecting prefix '${ZS.KT1}'.`)},[EM.SMART_ROLLUP_COMMITMENT_HASH]:e=>{if(e.substring(0,4)===ZS.SRC1)return aL(ZS.SRC1)(e);throw new HM(e,wE(nE.NO_PREFIX_MATCHED)+` expecting prefix '${ZS.SRC1}'`)},[EM.VALUE]:e=>{const t=qM(e);return`${SM(t.length/2)}${t}`},[EM.INT16]:e=>{const t=parseInt(String(e),10),r=[];for(let n=0;n<2;n++){const e=8*(2-(n+1));r.push((t&255<>e)}return _M.from(r).toString("hex")},[EM.BLOCK_PAYLOAD_HASH]:wL,[EM.ENTRYPOINT]:e=>`${qM({string:e}).slice(2)}`,[EM.BURN_LIMIT]:e=>e?`ff${yL(e)}`:"00",[EM.DEPOSITS_LIMIT]:e=>e?`ff${yL(e)}`:"00",[EM.PVM_KIND]:e=>{switch(e){case"arith":return"00";case"wasm_2_0_0":return"01";case"riscv":return"02";default:throw new FM(e)}},[EM.PADDED_BYTES]:(e,t=8)=>`${SM(e.length/2,t)}${e}`,[EM.SMART_ROLLUP_MESSAGE]:e=>{const t=e.reduce(((e,t)=>e+`${SM(t.length/2)}${t}`),"");return`${SM(t.length/2)}${t}`}};KL[EM.OPERATION]=(e=>t=>{if(!(t.kind in e)||!(t.kind in TM))throw new qS(t.kind);return TM[t.kind]+e[t.kind](t)})(KL),KL[EM.OP_ACTIVATE_ACCOUNT]=e=>HL(KL)(kL)(e),KL[EM.OP_DELEGATION]=e=>HL(KL)(EL)(e),KL[EM.OP_TRANSACTION]=e=>HL(KL)(AL)(e),KL[EM.OP_ORIGINATION]=e=>HL(KL)(PL)(e),KL[EM.OP_BALLOT]=e=>HL(KL)(OL)(e),KL[EM.OP_ATTESTATION]=e=>HL(KL)(TL)(e),KL[EM.OP_ENDORSEMENT]=e=>HL(KL)(CL)(e),KL[EM.OP_SEED_NONCE_REVELATION]=e=>HL(KL)(jL)(e),KL[EM.OP_PROPOSALS]=e=>HL(KL)(RL)(e),KL[EM.OP_REVEAL]=e=>HL(KL)(SL)(e),KL[EM.OP_REGISTER_GLOBAL_CONSTANT]=e=>HL(KL)(IL)(e),KL[EM.OP_TRANSFER_TICKET]=e=>HL(KL)(ML)(e),KL[EM.OP_INCREASE_PAID_STORAGE]=e=>HL(KL)(LL)(e),KL[EM.OP_UPDATE_CONSENSUS_KEY]=e=>HL(KL)(NL)(e),KL[EM.OP_DRAIN_DELEGATE]=e=>HL(KL)(DL)(e),KL[EM.OP_SMART_ROLLUP_ORIGINATE]=e=>HL(KL)(BL)(e),KL[EM.OP_SMART_ROLLUP_ADD_MESSAGES]=e=>HL(KL)(FL)(e),KL[EM.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE]=e=>HL(KL)(UL)(e),KL[EM.MANAGER]=HL(KL)(_L),KL[EM.OP_SET_DEPOSITS_LIMIT]=e=>HL(KL)(zL)(e),KL[EM.OP_FAILING_NOOP]=e=>HL(KL)($L)(e);const WL={activate_account:kL,reveal:SL,delegation:EL,transaction:AL,origination:PL,ballot:OL,attestation:TL,endorsement:CL,seed_nonce_revelation:jL,proposals:RL,register_global_constant:IL,transfer_ticket:ML,increase_paid_storage:LL,update_consensus_key:NL,drain_delegate:DL,set_deposits_limit:zL,smart_rollup_originate:BL,smart_rollup_add_messages:FL,smart_rollup_execute_outbox_message:UL,failing_noop:$L},GL=e=>{const t=e.kind,r=Object.keys(e),n=(i="kind",r.filter((e=>e!==i)));var i;const o=Object.keys(WL[t]);return a=n,o.filter((e=>!a.includes(e)));var a};var ZL;!function(e){e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProxfordY="ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(ZL||(ZL={}));const YL=ZL.ProxfordY;class XL{constructor(e=YL){var t;this.protocolHash=e,this.codec=(t=EM.MANAGER,this.protocolHash,{encoder:KL[t],decoder:e=>{const r=VM.fromHexString(e);return qL[t](r)}})}forge(e){const t=function(e){return oE(e,dE)}(e.branch);if(t!==nE.VALID)throw new IS(e.branch,wE(t));for(const i of e.contents){if(r=i.kind,!Object.keys(WL).includes(r))throw new qS(i.kind);const e=GL(i);if(1===e.length){if("delegation"===i.kind&&"delegate"===e[0])continue;if("origination"===i.kind&&"delegate"===e[0])continue;if("transaction"===i.kind&&"parameters"===e[0])continue;if("set_deposits_limit"===i.kind&&"limit"===e[0])continue;if("smart_rollup_originate"===i.kind&&"whitelist"===e[0])continue;throw new RM(i,`missing properties "${e.join(", ")}"`)}if(e.length>1)throw new RM(i,`missing properties "${e.join(", ")}"`)}var r;const n=this.codec.encoder(e).toLowerCase();return Promise.resolve(n)}parse(e){return Promise.resolve(this.codec.decoder(e))}}new XL;function JL(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i(e.on("data",(e=>{t.next(e)})),e.on("error",(e=>{t.error(e)})),e.on("close",(()=>{t.complete()})),()=>{e.close()})))}const aN=169,sN=155,cN=445,lN=1674,uN=276,dN=276,hN=305,fN=477;var pN;!function(e){e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.PsiThaCa="PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProxfordY="ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(pN||(pN={}));pN.Pt24m4xi,pN.PsBABY5H,pN.PsBabyM1,pN.PsCARTHA,pN.PsDELPH1,pN.PtEdo2Zk,pN.PsFLorena,pN.PtGRANADs,pN.PtHangz2,pN.PsiThaCa,pN.Psithaca2,pN.PtJakart2,pN.PtKathman,pN.PtLimaPtL,pN.PtMumbai2,pN.PtNairobi,pN.ProxfordY,pN.ProtoALpha;var mN;!function(e){e.MAINNET="NetXdQprcVkpaWU",e.CARTHAGENET="NetXjD3HPJJjmcd",e.DELPHINET="NetXm8tYqnMWky1",e.EDONET="NetXSgo1ZT2DRUG",e.FLORENCENET="NetXxkAx4woPLyu",e.GRANADANET="NetXz969SFaFn8k",e.HANGZHOUNET="NetXZSsxBpMQeAT",e.ITHACANET="NetXbhmtAbMukLc",e.ITHACANET2="NetXnHfVqm9iesp",e.JAKARTANET2="NetXLH1uAxK7CCh",e.KATHMANDUNET="NetXazhm4yetmff",e.LIMANET="NetXizpkH94bocH",e.MUMBAINET="NetXQw6nWSnrJ5t",e.MUMBAINET2="NetXgbcrNtXD2yA",e.NAIROBINET="NetXyuzvDo2Ugzb",e.OXFORDNET2="NetXxWsskGahzQB"}(mN||(mN={}));const gN=e=>Math.round(37*vN(e)/10),vN=e=>{switch(e.substring(0,3)){case"tz1":return aN;case"tz2":return sN;case"tz3":return cN;case"tz4":return lN;default:throw new Error(`Cannot estimate reveal gas limit for ${e}`)}},yN=e=>Math.round(12*bN(e)/10),bN=e=>{switch(e.substring(0,3)){case"tz1":return uN;case"tz2":return dN;case"tz3":return hN;case"tz4":return fN;default:throw new Error(`Cannot estimate reveal fee for ${e}`)}};class wN extends PS{constructor(e,t,r){super(),this.smartContractMethodName=e,this.sigs=t,this.invalidParams=r,this.name="InvalidParameterError",this.message=`${e} Received ${r.length} arguments while expecting one of the following signatures (${JSON.stringify(t)})`}}class xN extends PS{constructor(e){super(),this.source=e,this.name="InvalidDelegationSource",this.message=`Since Babylon delegation source can no longer be a contract address ${e}. Please use the smart contract abstraction to set your delegate.`}}class _N extends PS{constructor(e,t){super(),this.message=e,this.data=t,this.name="InvalidCodeParameter"}}class kN extends PS{constructor(e,t){super(),this.message=e,this.data=t,this.name="InvalidInitParameter"}}class SN extends OS{constructor(e,t,r,n){super(),this.message=e,this.viewName=t,this.failWith=r,this.cause=n,this.name="ViewSimulationError"}}const EN=e=>{try{JSON.parse(e)}catch(t){return!1}return!0};class AN extends PS{constructor(e){super(),this.info=e,this.name="InvalidViewSimulationContext",this.message=`${e} Please configure the context of the view execution in the executeView method.`}}class PN extends OS{constructor(e){super(),this.message=e,this.name="RevealOperationError"}}class ON extends PS{constructor(e){super(),this.message=e,this.name}}class TN extends PS{constructor(e){super(),this.message=e,this.name="InvalidBalanceError"}}const CN=({code:e,init:t,balance:r="0",delegate:n,storage:i,fee:o,gasLimit:a,storageLimit:s,mutez:c=!1})=>QL(void 0,void 0,void 0,(function*(){if(void 0!==i&&void 0!==t)throw new ON("Storage and Init cannot be set a the same time. Please either use storage or init but not both.");if(!Array.isArray(e))throw new _N("Wrong code parameter type, expected an array",e);let l;if(void 0!==i){const t=e.find((e=>"prim"in e&&"storage"===e.prim));if(void 0===(null===t||void 0===t?void 0:t.args))throw new _N("The storage section is missing from the script",e);l=new aR(t.args[0]).Encode(i)}else{if(void 0===t||"object"!==typeof t)throw new kN("Wrong init parameter type, expected JSON Michelson",t);l=t}const u={code:e,storage:l};if(isNaN(Number(r)))throw new TN(`Invalid Balance "${r}", cannot be converted to a number`);const d={kind:UP.ORIGINATION,fee:o,gas_limit:a,storage_limit:s,balance:c?r.toString():SE("tz","mutez",r).toString(),script:u};return n&&(d.delegate=n),d})),jN=({to:e,amount:t,parameter:r,fee:n,gasLimit:i,storageLimit:o,mutez:a=!1})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.TRANSACTION,fee:n,gas_limit:i,storage_limit:o,amount:a?t.toString():SE("tz","mutez",t).toString(),destination:e,parameters:r}})),RN=({delegate:e,source:t,fee:r,gasLimit:n,storageLimit:i})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.DELEGATION,source:t,fee:r,gas_limit:n,storage_limit:i,delegate:e}})),IN=({fee:e,gasLimit:t,storageLimit:r},n,i)=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.REVEAL,fee:e,public_key:i,source:n,gas_limit:null!==t&&void 0!==t?t:gN(n),storage_limit:r}})),MN=({value:e,source:t,fee:r,gasLimit:n,storageLimit:i})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.REGISTER_GLOBAL_CONSTANT,value:e,fee:r,gas_limit:n,storage_limit:i,source:t}})),LN=({ticketContents:e,ticketTy:t,ticketTicketer:r,ticketAmount:n,destination:i,entrypoint:o,source:a,fee:s,gasLimit:c,storageLimit:l})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.TRANSFER_TICKET,fee:s,gas_limit:c,storage_limit:l,source:a,ticket_contents:e,ticket_ty:t,ticket_ticketer:r,ticket_amount:n,destination:i,entrypoint:o}})),NN=({source:e,fee:t,gasLimit:r,storageLimit:n,amount:i,destination:o})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.INCREASE_PAID_STORAGE,source:e,fee:t,gas_limit:r,storage_limit:n,amount:i,destination:o}})),DN=({source:e,fee:t,gasLimit:r,storageLimit:n,message:i})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.SMART_ROLLUP_ADD_MESSAGES,source:e,fee:t,gas_limit:r,storage_limit:n,message:i}})),zN=({source:e,fee:t,gasLimit:r,storageLimit:n,pvmKind:i,kernel:o,parametersType:a})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.SMART_ROLLUP_ORIGINATE,source:e,fee:t,gas_limit:r,storage_limit:n,pvm_kind:i,kernel:o,parameters_ty:a}})),BN=({source:e,fee:t,gasLimit:r,storageLimit:n,rollup:i,cementedCommitment:o,outputProof:a})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE,source:e,fee:t,gas_limit:r,storage_limit:n,rollup:i,cemented_commitment:o,output_proof:a}})),FN=(e,t)=>Object.assign(Object.assign({},e),{kind:t}),UN=(e,t)=>{if(Array.isArray(e)){const r=e.find((e=>e.kind===t));if(r&&$N(r,t))return r}},$N=(e,t)=>e.kind===t,HN=e=>-1!==["transaction","delegation","origination","reveal","register_global_constant","increase_paid_storage","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate","smart_rollup_execute_outbox_message"].indexOf(e.kind),VN=e=>-1!==["transaction","delegation","origination","register_global_constant","increase_paid_storage","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate","smart_rollup_execute_outbox_message"].indexOf(e.kind),qN=e=>"metadata"in e,KN=e=>qN(e)&&"operation_result"in e.metadata;class WN extends OS{constructor(e,t,r){super(),this.errors=e,this.errorDetails=t,this.operationsWithResults=r,this.name="TezosOperationError",this.lastError=e[e.length-1],this.message=`(${this.kind}) ${this.id}`,(e=>"with"in e)(this.lastError)&&(this.lastError.with.string?this.message=this.lastError.with.string:this.lastError.with.int?this.message=this.lastError.with.int:this.message=JSON.stringify(this.lastError.with))}get id(){return this.lastError.id}get kind(){return this.lastError.kind}}class GN extends Error{constructor(e){super(),this.result=e,this.name="TezosPreapplyFailureError",this.message="Preapply returned an unexpected result"}}const ZN=e=>{const t=Array.isArray(e)?e:[e],r=[];for(let n=0;nr.push(e.result))))}return r},YN=(e,t="failed")=>{const r=Array.isArray(e)?e:[e];let n=[];for(let o=0;onew ZO(e).pipe(YT({each:1e3*e.timeout,with:()=>YO((()=>new eD("Confirmation polling timed out")))})))),GT((()=>cT((()=>oN(this.context.stream.subscribeBlock("head")))).pipe(GT((e=>{var t,r;const n=null!==(r=null===(t=this.lastHead)||void 0===t?void 0:t.header.level)&&void 0!==r?r:e.header.level-1;return uT(n+1,e.header.level-n-1).pipe(JT((e=>this.context.readProvider.getBlock(e))),QT(e))})),eC((e=>this.lastHead=e))))),nC({refCount:!0})),this.confirmed$=this.currentHead$.pipe(CT((e=>{for(let t=3;t>=0;t--)e.operations[t].forEach((t=>{t.hash===this.hash&&(this._foundAt=e.header.level)}));if(e.header.level-this._foundAt>=0)return this._foundAt})),iC((e=>void 0!==e)),sC(),nC()),this._foundAt=Number.POSITIVE_INFINITY,bE(this.hash)!==nE.VALID)throw new VS(this.hash);this.confirmed$.pipe(sC(),cC((()=>ST(lT)))).subscribe()}get revealOperation(){return Array.isArray(this.results)&&this.results.find((e=>"reveal"===e.kind))}get revealStatus(){return this.revealOperation?this.revealOperation.metadata.operation_result.status:"unknown"}get status(){return this.results.map((e=>KN(e)?e.metadata.operation_result.status:"unknown"))[0]||"unknown"}confirmation(e,t){return QL(this,void 0,void 0,(function*(){if("undefined"!==typeof e&&e<1)throw new QN(e);const{defaultConfirmationCount:r,confirmationPollingTimeoutSecond:n}=this.context.config;this._pollingConfig$.next({timeout:t||n});const i=void 0!==e?e:r;return new Promise(((e,t)=>{this.confirmed$.pipe(GT((()=>this.currentHead$)),iC((e=>e.header.level-this._foundAt>=i-1)),sC()).subscribe({error:e=>t(e),complete:()=>e(this._foundAt+(i-1))})}))}))}}class nD extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}getOriginatedContractAddresses(){const e=this.results.filter((e=>"origination"===e.kind));let t=[];for(const r of e)r.metadata.operation_result.originated_contracts&&(t=[...t,...r.metadata.operation_result.originated_contracts]);return t}get status(){return this.results.filter((e=>-1!==jD.indexOf(e.kind))).map((e=>{if(KN(e)){return e.metadata.operation_result.status}return"unknown"}))[0]||"unknown"}get fee(){return this.sumProp(this.params,"fee")}get gasLimit(){return this.sumProp(this.params,"gas_limit")}get storageLimit(){return this.sumProp(this.params,"storage_limit")}get consumedGas(){return nw.config({DECIMAL_PLACES:0,ROUNDING_MODE:nw.ROUND_UP}),new nw(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(ZN({contents:this.results}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(ZN({contents:this.results}),"paid_storage_size_diff"))}get errors(){return YN({contents:this.results})}}class iD{get rpc(){return this.context.rpc}get signer(){return this.context.signer}constructor(e){this.context=e}forge({opOb:{branch:e,contents:t,protocol:r},counter:n}){return QL(this,void 0,void 0,(function*(){return{opbytes:yield this.context.forger.forge({branch:e,contents:t}),opOb:{branch:e,contents:t,protocol:r},counter:n}}))}estimate(e,t){var{fee:r,gasLimit:n,storageLimit:i}=e,o=JL(e,["fee","gasLimit","storageLimit"]);return QL(this,void 0,void 0,(function*(){let e=r,a=n,s=i;if(e&&e%1!==0)throw new JN(`Fee value must not be a decimal: ${e}`);if(a&&a%1!==0)throw new JN(`Gas Limit value must not be a decimal: ${a}`);if(s&&s%1!==0)throw new JN(`Storage Limit value must not be a decimal: ${s}`);if(void 0===r||void 0===n||void 0===i){const c=yield t(Object.assign({fee:r,gasLimit:n,storageLimit:i},o));null!==e&&void 0!==e||(e=c.suggestedFeeMutez),null!==a&&void 0!==a||(a=c.gasLimit),null!==s&&void 0!==s||(s=c.storageLimit)}return{fee:e,gasLimit:a,storageLimit:s}}))}getRPCOp(e){return QL(this,void 0,void 0,(function*(){switch(e.kind){case UP.TRANSACTION:return jN(Object.assign({},e));case UP.ORIGINATION:return CN(yield this.context.parser.prepareCodeOrigination(Object.assign({},e)));case UP.DELEGATION:return RN(Object.assign({},e));case UP.REGISTER_GLOBAL_CONSTANT:return MN(Object.assign({},e));case UP.INCREASE_PAID_STORAGE:return NN(Object.assign({},e));case UP.TRANSFER_TICKET:return LN(Object.assign({},e));case UP.SMART_ROLLUP_ADD_MESSAGES:return DN(Object.assign({},e));case UP.SMART_ROLLUP_ORIGINATE:return zN(Object.assign({},e));case UP.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:return BN(Object.assign({},e));default:throw new qS(e.kind)}}))}runOperation(e){return QL(this,void 0,void 0,(function*(){return{opResponse:yield this.rpc.runOperation(e),op:e,context:this.context.clone()}}))}simulate(e){return QL(this,void 0,void 0,(function*(){return{opResponse:yield this.rpc.simulateOperation(e),op:e,context:this.context.clone()}}))}isRevealOpNeeded(e,t){return QL(this,void 0,void 0,(function*(){return!(!(yield this.isAccountRevealRequired(t))||!this.isRevealRequiredForOpType(e))}))}isAccountRevealRequired(e){return QL(this,void 0,void 0,(function*(){return!(yield this.context.readProvider.isAccountRevealed(e,"head"))}))}isRevealRequiredForOpType(e){let t=!1;for(const r of e)VN(r)&&(t=!0);return t}signAndInject(e){return QL(this,void 0,void 0,(function*(){const t=yield this.signer.sign(e.opbytes,new Uint8Array([3]));e.opbytes=t.sbytes,e.opOb.signature=t.prefixSig;const r=[],n=yield this.rpc.preapplyOperations([e.opOb]);if(!Array.isArray(n))throw new GN(n);for(let e=0;eQL(this,void 0,void 0,(function*(){return e}))));case UP.ORIGINATION:return this.walletProvider.mapOriginateParamsToWalletParams((()=>QL(this,void 0,void 0,(function*(){return this.context.parser.prepareCodeOrigination(Object.assign({},e))}))));case UP.DELEGATION:return this.walletProvider.mapDelegateParamsToWalletParams((()=>QL(this,void 0,void 0,(function*(){return e}))));case UP.INCREASE_PAID_STORAGE:return this.walletProvider.mapIncreasePaidStorageWalletParams((()=>QL(this,void 0,void 0,(function*(){return e}))));default:throw new qS(JSON.stringify(e.kind))}}))}with(e){for(const t of e)switch(t.kind){case UP.TRANSACTION:this.withTransfer(t);break;case UP.ORIGINATION:this.withOrigination(t);break;case UP.DELEGATION:this.withDelegation(t);break;case UP.INCREASE_PAID_STORAGE:this.withIncreasePaidStorage(t);break;default:throw new qS(JSON.stringify(t.kind))}return this}send(){return QL(this,void 0,void 0,(function*(){const e=[];for(const r of this.operations)e.push(yield this.mapOperation(r));const t=yield this.walletProvider.sendOperations(e);return this.context.operationFactory.createBatchOperation(t)}))}}class aD{constructor(e){this.context=e,this.walletCommand=e=>({send:e})}get walletProvider(){return this.context.walletProvider}pkh({forceRefetch:e}={}){return QL(this,void 0,void 0,(function*(){return this._pkh&&!e||(this._pkh=yield this.walletProvider.getPKH()),this._pkh}))}pk({forceRefetch:e}={}){return QL(this,void 0,void 0,(function*(){return this._pk&&!e||(this._pk=yield this.walletProvider.getPK()),this._pk}))}originate(e){return this.walletCommand((()=>QL(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapOriginateParamsToWalletParams((()=>this.context.parser.prepareCodeOrigination(Object.assign({},e)))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createOriginationOperation(r)}))))}setDelegate(e){var t;const r=fE(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&r!==nE.VALID)throw new RS(e.delegate,wE(r));return this.walletCommand((()=>QL(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapDelegateParamsToWalletParams((()=>QL(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createDelegationOperation(r)}))))}signFailingNoop(e){return QL(this,void 0,void 0,(function*(){const t={kind:UP.FAILING_NOOP,arbitrary:e.arbitrary},r=yield this.context.readProvider.getBlockHash(e.basedOnBlock),n=yield this.context.forger.forge({branch:r,contents:[t]});return{signature:yield this.walletProvider.sign(n,Uint8Array.from([3])),bytes:n,signedContent:{branch:r,contents:[{kind:UP.FAILING_NOOP,arbitrary:e.arbitrary}]}}}))}registerDelegate(){return this.walletCommand((()=>QL(this,void 0,void 0,(function*(){const e=yield this.walletProvider.mapDelegateParamsToWalletParams((()=>QL(this,void 0,void 0,(function*(){return{delegate:yield this.pkh()}})))),t=yield this.walletProvider.sendOperations([e]);return this.context.operationFactory.createDelegationOperation(t)}))))}transfer(e){const t=fE(e.to);if(t!==nE.VALID)throw new RS(e.to,wE(t));return this.walletCommand((()=>QL(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapTransferParamsToWalletParams((()=>QL(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createTransactionOperation(r)}))))}increasePaidStorage(e){const t=fE(e.destination);if(t!==nE.VALID)throw new RS(e.destination,wE(t));return this.walletCommand((()=>QL(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapIncreasePaidStorageWalletParams((()=>QL(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createIncreasePaidStorageOperation(r)}))))}batch(e){const t=new oD(this.walletProvider,this.context);return Array.isArray(e)&&t.with(e),t}at(e,t=(e=>e)){return QL(this,void 0,void 0,(function*(){const r=mE(e);if(r!==nE.VALID)throw new US(e,wE(r));const n=this.context.withExtensions().rpc,i=this.context.withExtensions().readProvider,o=yield i.getScript(e,"head"),a=yield i.getEntrypoints(e),s=new wD(e,o,this,this.context.contract,a,n,i);return t(s,this.context)}))}getPK(){return QL(this,void 0,void 0,(function*(){return yield this.pk()}))}}class sD extends TS{constructor(){super(),this.name="ConfirmationUndefinedError",this.message="Default confirmation count can not be undefined"}}class cD extends jS{constructor(e){super(),this.message=e,this.name="ObservableError"}}class lD{operationResults(){return QL(this,void 0,void 0,(function*(){return this._operationResult.pipe(sC()).toPromise()}))}receipt(){return QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new cD("Unable to get operation results");return((e,{ALLOCATION_BURN:t,ORIGINATION_BURN:r}={ALLOCATION_BURN:257,ORIGINATION_BURN:257})=>{nw.config({DECIMAL_PLACES:0,ROUNDING_MODE:nw.ROUND_UP});const n=ZN({contents:e});let i=new nw(0),o=new nw(0),a=new nw(0),s=new nw(0),c=new nw(0),l=new nw(0);return n.forEach((e=>{a=a.plus(e.fee||0),s=s.plus(Array.isArray(e.originated_contracts)?e.originated_contracts.length*r:0),c=c.plus("allocated_destination_contract"in e?t:0),i=i.plus(e.consumed_milligas||0),l=l.plus("paid_storage_size_diff"in e&&Number(e.paid_storage_size_diff)||0)})),o=o.plus(c).plus(s).plus(l),{totalFee:a,totalMilliGas:i,totalGas:i.dividedBy(1e3),totalStorage:o,totalAllocationBurn:c,totalOriginationBurn:s,totalPaidStorageDiff:l,totalStorageBurn:new nw(o.multipliedBy(250))}})(e)}))}constructor(e,t,r){if(this.opHash=e,this.context=t,this._newHead$=r,this._operationResult=new GO(1),this._includedInBlock=new GO(1),this._included=!1,this.newHead$=this._newHead$.pipe(GT((e=>{var t,r;const n=null!==(r=null===(t=this.lastHead)||void 0===t?void 0:t.header.level)&&void 0!==r?r:e.header.level-1;return uT(n+1,e.header.level-n-1).pipe(JT((e=>this.context.readProvider.getBlock(e))),QT(e))})),eC((e=>this.lastHead=e)),tC({connector:()=>new GO(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1})),this.confirmed$=this.newHead$.pipe(CT((e=>{for(const t of e.operations)for(const r of t)if(r.hash===this.opHash)return this._included=!0,this._includedInBlock.next(e),this._operationResult.next(r.contents),e})),iC((e=>"undefined"!==typeof e)),sC(),tC({connector:()=>new GO(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1})),bE(this.opHash)!==nE.VALID)throw new VS(this.opHash);this.confirmed$.pipe(sC(),cC((()=>ST(void 0)))).subscribe()}getCurrentConfirmation(){return QL(this,void 0,void 0,(function*(){return this._included?IT([this._includedInBlock,kT(this.context.readProvider.getBlock("head"))]).pipe(CT((([e,t])=>t.header.level-e.header.level+1)),sC()).toPromise():0}))}isInCurrentBranch(e="head"){return QL(this,void 0,void 0,(function*(){if(!this._included)return!0;const t=yield this.context.readProvider.getBlockLevel(e),r=yield this._includedInBlock.pipe(sC()).toPromise();if(!r)throw new cD("Inclusion block is undefined");const n=t-r.header.level;if(n<=0)return!0;const i=Math.min(r.header.level+n,r.header.level+60);return new Set(yield this.context.readProvider.getLiveBlocks(i)).has(r.hash)}))}confirmationObservable(e){if("undefined"!==typeof e&&e<1)throw new QN(e);const{defaultConfirmationCount:t}=this.context.config,r=void 0!==e?e:t;if(void 0===r)throw new sD;return IT([this._includedInBlock,this.newHead$]).pipe(lC((([,e],[,t])=>e.hash===t.hash)),CT((([e,t])=>({block:t,expectedConfirmation:r,currentConfirmation:t.header.level-e.header.level+1,completed:t.header.level-e.header.level>=r-1,isInCurrentBranch:()=>this.isInCurrentBranch(t.hash)}))),(n=({completed:e})=>!e,void 0===(i=!0)&&(i=!1),gT((function(e,t){var r=0;e.subscribe(vT(t,(function(e){var o=n(e,r++);(o||i)&&t.next(e),!o&&t.complete()})))}))));var n,i}confirmation(e){return this.confirmationObservable(e).toPromise()}}class uD extends lD{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new cD("operationResult returned undefined");return e.find((e=>e.kind===UP.REVEAL))}))}transactionOperation(){return QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new cD("operationResult returned undefined");return e.find((e=>e.kind===UP.TRANSACTION))}))}status(){return QL(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.transactionOperation();return e?e.metadata.operation_result.status:"unknown"}))}}class dD extends lD{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}originationOperation(){return QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return UN(e,UP.ORIGINATION);throw new cD("Unable to fetch operation result")}))}revealOperation(){return QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return UN(e,UP.REVEAL);throw new cD("Unable to fetch operation result")}))}status(){return QL(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.originationOperation();return e?e.metadata.operation_result.status:"unknown"}))}contract(){return QL(this,void 0,void 0,(function*(){const e=yield this.originationOperation(),t=((null===e||void 0===e?void 0:e.metadata.operation_result.originated_contracts)||[])[0];return this.context.wallet.at(t)}))}}class hD extends lD{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===UP.REVEAL));throw new cD("Unable to fetch operation result")}))}delegationOperation(){return QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===UP.DELEGATION));throw new cD("Unable to fetch operation result")}))}status(){return QL(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.delegationOperation();return e?e.metadata.operation_result.status:"unknown"}))}}class fD{constructor(e){this.context=e}getPKH(){return QL(this,void 0,void 0,(function*(){return this.context.signer.publicKeyHash()}))}getPK(){return QL(this,void 0,void 0,(function*(){return this.context.signer.publicKey()}))}mapTransferParamsToWalletParams(e){return QL(this,void 0,void 0,(function*(){return FN(yield e(),UP.TRANSACTION)}))}mapOriginateParamsToWalletParams(e){return QL(this,void 0,void 0,(function*(){return FN(yield e(),UP.ORIGINATION)}))}mapDelegateParamsToWalletParams(e){return QL(this,void 0,void 0,(function*(){return FN(yield e(),UP.DELEGATION)}))}mapIncreasePaidStorageWalletParams(e){return QL(this,void 0,void 0,(function*(){return FN(yield e(),UP.INCREASE_PAID_STORAGE)}))}sendOperations(e){return QL(this,void 0,void 0,(function*(){return(yield this.context.batch.batch(e).send()).hash}))}sign(e,t){return QL(this,void 0,void 0,(function*(){const{prefixSig:r}=yield this.context.signer.sign(e,t);return r}))}}class pD{constructor(e,t,r,n,i="unit",o=!0,a=!1){this.provider=e,this.address=t,this.parameterSchema=r,this.name=n,this.args=i,this.isMultipleEntrypoint=o,this.isAnonymous=a}getSignature(){return this.isAnonymous?this.parameterSchema.ExtractSchema()[this.name]:this.parameterSchema.ExtractSchema()}send(e={}){return this.provider instanceof aD?this.provider.transfer(this.toTransferParams(e)).send():this.provider.transfer(this.toTransferParams(e))}toTransferParams({fee:e,gasLimit:t,storageLimit:r,source:n,amount:i=0,mutez:o=!1}={}){return{to:this.address,amount:i,fee:e,mutez:o,source:n,gasLimit:t,storageLimit:r,parameter:{entrypoint:this.isMultipleEntrypoint?this.name:yD,value:this.isAnonymous?this.parameterSchema.EncodeObject({[this.name]:this.args}):this.parameterSchema.EncodeObject(this.args)}}}}class mD{constructor(e,t,r,n,i,o=!0,a=!1){this.provider=e,this.address=t,this.parameterSchema=r,this.name=n,this.args=i,this.isMultipleEntrypoint=o,this.isAnonymous=a}validateArgs(e,t,r){const n=t.ExtractSignatures();if(!n.find((t=>t.length===e.length)))throw new wN(r,n,e)}get schema(){return this.isAnonymous?this.parameterSchema.ExtractSchema()[this.name]:this.parameterSchema.ExtractSchema()}getSignature(){if(!this.isAnonymous){const e=this.parameterSchema.ExtractSignatures();return 1==e.length?e[0]:e}{const e=this.parameterSchema.ExtractSignatures().find((e=>e[0]===this.name));if(e)return e.shift(),e}}send(e={}){return this.provider instanceof aD?this.provider.transfer(this.toTransferParams(e)).send():this.provider.transfer(this.toTransferParams(e))}toTransferParams({fee:e,gasLimit:t,storageLimit:r,source:n,amount:i=0,mutez:o=!1}={}){return{to:this.address,amount:i,fee:e,mutez:o,source:n,gasLimit:t,storageLimit:r,parameter:{entrypoint:this.isMultipleEntrypoint?this.name:yD,value:this.isAnonymous?this.parameterSchema.Encode(this.name,...this.args):this.parameterSchema.Encode(...this.args)}}}}class gD{constructor(e,t,r,n,i,o="Unit"){this._rpc=e,this._readProvider=t,this._contractAddress=r,this._smartContractViewSchema=n,this._contractStorageType=i,this._args=o}getSignature(){return{parameter:this._smartContractViewSchema.extractArgsSchema(),result:this._smartContractViewSchema.extractResultSchema()}}executeView(e){return QL(this,void 0,void 0,(function*(){this.verifyContextExecution(e);const t=yield this._readProvider.getChainId(),r=this.transformArgsToMichelson(),n={contract:this._contractAddress,view:this._smartContractViewSchema.viewName,input:r,chain_id:t,source:e.viewCaller};return e.source&&(n.payer=e.source),this.executeViewAndDecodeResult(n)}))}verifyContextExecution(e){if(e.source&&fE(e.source)!==nE.VALID)throw new AN(`The source account who initialized the view execution is invalid: ${e.source}.`);if(!e.viewCaller||fE(e.viewCaller)!==nE.VALID)throw new AN(`The contract which is the caller of view is invalid: ${e.viewCaller}.`)}transformArgsToMichelson(){try{return this._smartContractViewSchema.encodeViewArgs(this._args)}catch(e){throw new zS(this._smartContractViewSchema.viewName,this.getSignature(),this._args,e)}}adaptViewCodeToContext(e,t,r){const n={BALANCE:[{prim:"PUSH",args:[{prim:"mutez"},{int:r}]}],SENDER:[{prim:"PUSH",args:[{prim:"address"},{string:t}]}],SELF_ADDRESS:[{prim:"PUSH",args:[{prim:"address"},{string:this._contractAddress}]}],AMOUNT:[{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]}]};return e.forEach(((i,o)=>{i.prim in n&&(e[o]=Object(n)[i.prim]),i.args&&0!==i.args.length?this.adaptViewCodeToContext(i.args,t,r):Array.isArray(i)&&this.adaptViewCodeToContext(i,t,r)})),e}executeViewAndDecodeResult(e){return QL(this,void 0,void 0,(function*(){let t;try{t=(yield this._rpc.runScriptView(e)).data}catch(r){const e=(e=>{if(EN(e.body)){const t=JSON.parse(e.body);if(Array.isArray(t)&&"with"in t[t.length-1])return t[t.length-1].with}})(r);throw e?new SN(`The simulation of the on-chain view named ${this._smartContractViewSchema.viewName} failed with: ${JSON.stringify(e)}`,this._smartContractViewSchema.viewName,e,r):r}return this._smartContractViewSchema.decodeViewResult(t)}))}}class vD{constructor(e,t){this.provider=e,this.contractAddress=t}createContractMethodFlatParams(e,t,r,n=!0,i=!1){return new mD(this.provider,this.contractAddress,e,t,r,n,i)}createContractMethodObjectParam(e,t,r,n=!0,i=!1){return new pD(this.provider,this.contractAddress,e,t,r,n,i)}createContractViewObjectParam(e,t,r,n,i){return new gD(e,t,this.contractAddress,r,n,i)}}const yD="default";class bD{constructor(e,t,r,n,i,o,a){this.currentContract=e,this.name=t,this.callbackParametersSchema=r,this.parameterSchema=n,this.args=i,this.rpc=o,this.readProvider=a}read(e){return QL(this,void 0,void 0,(function*(){const t=pE(null!==e&&void 0!==e?e:"");if(mE(null!==e&&void 0!==e?e:"")==nE.VALID)throw new KS("Since version 12, the lambda view no longer depends on a lambda contract. The read method no longer accepts a contract address as a parameter.");if(e&&t!==nE.VALID)throw new $S(e,wE(t));const r=this.parameterSchema.Encode(...this.args),n=yield this.rpc.runView({contract:this.currentContract.address,entrypoint:this.name,input:r,chain_id:e||(yield this.readProvider.getChainId())});return this.callbackParametersSchema.Execute(n.data)}))}}class wD{constructor(e,t,r,n,i,o,a){this.address=e,this.script=t,this.storageProvider=n,this.entrypoints=i,this.rpc=o,this.readProvider=a,this.methods={},this.methodsObject={},this.views={},this.contractViews={},this.contractMethodFactory=new vD(r,e),this.schema=aR.fromRPCResponse({script:this.script}),this.parameterSchema=sR.fromRPCResponse({script:this.script}),this.viewSchema=cR.fromRPCResponse({script:this.script}),0!==this.viewSchema.length&&this._initializeOnChainViews(this,o,this.readProvider,this.viewSchema),this.eventSchema=lR.fromRPCResponse({script:this.script}),this._initializeMethods(this,this.entrypoints.entrypoints,this.rpc,this.readProvider)}_initializeMethods(e,t,r,n){const i=this.parameterSchema,o=Object.keys(t);if(i.isMultipleEntryPoint){o.forEach((i=>{const o=new sR(t[i]);if(this.methods[i]=function(...t){return e.contractMethodFactory.createContractMethodFlatParams(o,i,t)},this.methodsObject[i]=function(t){return e.contractMethodFactory.createContractMethodObjectParam(o,i,t)},(e=>{let t=!1;if("prim"in e&&"pair"===e.prim&&e.args){const r=e.args[e.args.length-1];"prim"in r&&"contract"===r.prim&&(t=!0)}return t})(t[i])){const o=function(...o){const a=t[i].args[0],s=new sR(a),c=t[i].args[1].args[0],l=new sR(c);return((e,t,r)=>{const n=t.ExtractSignatures();if(!n.find((t=>t.length===e.length)))throw new wN(r,n,e)})(o,s,i),new bD(e,i,l,s,o,r,n)};this.views[i]=o}}));Object.keys(i.ExtractSchema()).filter((e=>-1===Object.keys(t).indexOf(e))).forEach((t=>{this.methods[t]=function(...r){return e.contractMethodFactory.createContractMethodFlatParams(i,t,r,!1,!0)},this.methodsObject[t]=function(r){return e.contractMethodFactory.createContractMethodObjectParam(i,t,r,!1,!0)}}))}else{const t=this.parameterSchema;this.methods[yD]=function(...r){return e.contractMethodFactory.createContractMethodFlatParams(t,yD,r,!1)},this.methodsObject[yD]=function(r){return e.contractMethodFactory.createContractMethodObjectParam(t,yD,r,!1)}}}_initializeOnChainViews(e,t,r,n){const i=this.schema.val;n.forEach((n=>{this.contractViews[n.viewName]=function(o){return e.contractMethodFactory.createContractViewObjectParam(t,r,n,i,o)}}))}storage(){return this.storageProvider.getStorage(this.address,this.schema)}bigMap(e){return this.storageProvider.getBigMapKey(this.address,e,this.schema)}}const xD=e=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:e}]},{prim:"SOME"},{prim:"SET_DELEGATE"},{prim:"CONS"}],_D=()=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"NONE",args:[{prim:"key_hash"}]},{prim:"SET_DELEGATE"},{prim:"CONS"}],kD=(e,t)=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:e}]},{prim:"IMPLICIT_ACCOUNT"},{prim:"PUSH",args:[{prim:"mutez"},{int:`${t}`}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}],SD=(e,t)=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"address"},{string:e}]},{prim:"CONTRACT",args:[{prim:"unit"}]},{prim:"IF_NONE",args:[[{prim:"UNIT"},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:`${t}`}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}];class ED{constructor(e,t){this.id=e,this.provider=t}getSaplingDiff(e){return QL(this,void 0,void 0,(function*(){return this.provider.getSaplingDiffByID(this.id.toString(),e)}))}getId(){return this.id.toString()}}class AD{constructor(e,t,r){this.id=e,this.schema=t,this.provider=r}get(e,t){return QL(this,void 0,void 0,(function*(){try{return yield this.provider.getBigMapKeyByID(this.id.toString(),e,this.schema,t)}catch(r){if(r instanceof _P&&r.status===yP.NOT_FOUND)return;throw r}}))}getMultipleValues(e,t,r=5){return QL(this,void 0,void 0,(function*(){return this.provider.getBigMapKeysByID(this.id.toString(),e,this.schema,t,r)}))}toJSON(){return this.id.toString()}toString(){return this.id.toString()}}const PD=e=>({big_map:(t,r)=>{if(t&&"int"in t&&void 0!==t.int){const n=new aR(r);return new AD(new nw(t.int),n,e)}return{}},sapling_state:t=>t&&"int"in t&&void 0!==t.int?new ED(new nw(t.int),e):{}});var OD;const TD=(e,t)=>{var r,n,i;return{fee:null!==(r=e.fee)&&void 0!==r?r:t.fee,gasLimit:null!==(n=e.gasLimit)&&void 0!==n?n:t.gasLimit,storageLimit:null!==(i=e.storageLimit)&&void 0!==i?i:t.storageLimit}};class CD extends iD{constructor(e){super(e),this.context=e,OD.set(this,void 0),tN(this,OD,{},"f")}getBlockHash(e){return QL(this,void 0,void 0,(function*(){return this.context.readProvider.getBlockHash(null!==e&&void 0!==e?e:"head~2")}))}getProtocolHash(){return QL(this,void 0,void 0,(function*(){return this.context.readProvider.getNextProtocol("head")}))}getHeadCounter(e){var t;return QL(this,void 0,void 0,(function*(){return null!==(t=this.context.readProvider.getCounter(e,"head"))&&void 0!==t?t:"0"}))}adjustGasForBatchOperation(e,t,r){return nw.min(t,e.div(r+1))}getOperationLimits(e,t){return QL(this,void 0,void 0,(function*(){const{hard_gas_limit_per_operation:r,hard_gas_limit_per_block:n,hard_storage_limit_per_operation:i}=e;return{fee:0,gasLimit:t?Math.floor(this.adjustGasForBatchOperation(n,r,t).toNumber()):r.toNumber(),storageLimit:i.toNumber()}}))}getFee(e,t,r){(!eN(this,OD,"f")[t]||eN(this,OD,"f")[t]{switch(e.kind){case UP.ACTIVATION:case UP.DRAIN_DELEGATE:return Object.assign({},e);case UP.ORIGINATION:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{balance:"undefined"!==typeof e.balance?`${e.balance}`:"0"}),this.getSource(e,r,n)),this.getFee(e,r,t));case UP.TRANSACTION:{const i=Object.assign(Object.assign(Object.assign(Object.assign({},e),{amount:"undefined"!==typeof e.amount?`${e.amount}`:"0"}),this.getSource(e,r,n)),this.getFee(e,r,t));if(i.source.toLowerCase().startsWith("kt1"))throw new KS(`KT1 addresses are not supported as source since ${pN.PsBabyM1}`);return i}case UP.REVEAL:case UP.DELEGATION:case UP.REGISTER_GLOBAL_CONSTANT:case UP.UPDATE_CONSENSUS_KEY:case UP.SMART_ROLLUP_ADD_MESSAGES:case UP.SMART_ROLLUP_ORIGINATE:case UP.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:return Object.assign(Object.assign(Object.assign({},e),this.getSource(e,r,n)),this.getFee(e,r,t));case UP.TRANSFER_TICKET:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{ticket_amount:`${e.ticket_amount}`}),this.getSource(e,r,n)),this.getFee(e,r,t));case UP.INCREASE_PAID_STORAGE:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{amount:`${e.amount}`}),this.getSource(e,r,n)),this.getFee(e,r,t));case UP.BALLOT:case UP.PROPOSALS:if(void 0===i)throw new tD("Failed to get the current voting period index");return Object.assign(Object.assign({},e),{period:null===i||void 0===i?void 0:i.voting_period.index});default:throw new qS(e.kind)}}))}activate({pkh:e,secret:t}){return QL(this,void 0,void 0,(function*(){const r=yield(({pkh:e,secret:t})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.ACTIVATION,pkh:e,secret:t}})))({pkh:e,secret:t}),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();tN(this,OD,{},"f");const a=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:i,contents:this.constructOpContents(n,a,e),protocol:o},counter:a}}))}reveal({fee:e,gasLimit:t,storageLimit:r}){return QL(this,void 0,void 0,(function*(){const{pkh:n,publicKey:i}=yield this.getKeys();if(!i)throw new GS(n);const o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=TD({fee:e,storageLimit:r,gasLimit:t},a),c=yield IN({fee:s.fee,gasLimit:s.gasLimit,storageLimit:s.storageLimit},n,i),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();tN(this,OD,{},"f");const h=parseInt(yield this.getHeadCounter(n),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,n),protocol:d},counter:h}}))}originate(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),a=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(a),c=yield CN(yield this.context.parser.prepareCodeOrigination(Object.assign(Object.assign({},o),TD({fee:r,storageLimit:n,gasLimit:i},s)))),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();tN(this,OD,{},"f");const f=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,e,t),protocol:h},counter:f}}))}transaction(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield jN(Object.assign(Object.assign({},i),TD({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();tN(this,OD,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}delegation(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield RN(Object.assign(Object.assign({},i),TD({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();tN(this,OD,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}registerDelegate({fee:e,storageLimit:t,gasLimit:r},n){return QL(this,void 0,void 0,(function*(){const{pkh:i}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=TD({fee:e,storageLimit:t,gasLimit:r},a),c=yield(({fee:e,gasLimit:t,storageLimit:r},n)=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.DELEGATION,fee:e,gas_limit:t,storage_limit:r,delegate:n}})))({fee:s.fee,storageLimit:s.storageLimit,gasLimit:s.gasLimit},i),l=yield this.addRevealOperationIfNeeded(c,i),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();tN(this,OD,{},"f");const f=parseInt(yield this.getHeadCounter(i),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,i,n),protocol:h},counter:f}}))}registerGlobalConstant(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield MN(Object.assign(Object.assign({},i),TD({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();tN(this,OD,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}updateConsensusKey(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),a=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(a),c=yield(({source:e,fee:t,gasLimit:r,storageLimit:n,pk:i})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.UPDATE_CONSENSUS_KEY,source:e,fee:t,gas_limit:r,storage_limit:n,pk:i}})))(Object.assign(Object.assign({},o),TD({fee:r,storageLimit:n,gasLimit:i},s))),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();tN(this,OD,{},"f");const f=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,e,t),protocol:h},counter:f}}))}increasePaidStorage(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield NN(Object.assign(Object.assign({},i),TD({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();tN(this,OD,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}ballot(e){return QL(this,void 0,void 0,(function*(){const{pkh:t}=yield this.getKeys(),r=yield(({source:e,proposal:t,ballot:r})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.BALLOT,source:e,proposal:t,ballot:r}})))(Object.assign({},e)),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();tN(this,OD,{},"f");const a=parseInt(yield this.getHeadCounter(t),10);let s;try{s=yield this.rpc.getCurrentPeriod()}catch(c){throw new tD("Failed to get the current voting period index")}return{opOb:{branch:i,contents:this.constructOpContents(n,a,t,void 0,s),protocol:o},counter:a}}))}proposals(e){return QL(this,void 0,void 0,(function*(){const{pkh:t}=yield this.getKeys(),r=yield(({source:e,proposals:t})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.PROPOSALS,source:e,proposals:t}})))(Object.assign({},e)),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();tN(this,OD,{},"f");const a=parseInt(yield this.getHeadCounter(t),10);let s;try{s=yield this.rpc.getCurrentPeriod()}catch(c){throw new tD("Failed to get the current voting period index")}return{opOb:{branch:i,contents:this.constructOpContents(n,a,t,void 0,s),protocol:o},counter:a}}))}drainDelegate(e,t){return QL(this,void 0,void 0,(function*(){const{pkh:r}=yield this.getKeys(),n=yield(({consensus_key:e,delegate:t,destination:r})=>QL(void 0,void 0,void 0,(function*(){return{kind:UP.DRAIN_DELEGATE,consensus_key:e,delegate:t,destination:r}})))(Object.assign({},e)),i=this.convertIntoArray(n),o=yield this.getBlockHash(),a=yield this.getProtocolHash();tN(this,OD,{},"f");const s=parseInt(yield this.getHeadCounter(r),10);return{opOb:{branch:o,contents:this.constructOpContents(i,s,r,t),protocol:a},counter:s}}))}transferTicket(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield LN(Object.assign(Object.assign({},i),TD({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();tN(this,OD,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}smartRollupAddMessages(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield DN(Object.assign(Object.assign({},i),TD({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();tN(this,OD,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}smartRollupOriginate(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield zN(Object.assign(Object.assign({},TD({fee:t,storageLimit:r,gasLimit:n},a)),i)),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();tN(this,OD,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}smartRollupExecuteOutboxMessage(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield BN(Object.assign(Object.assign({},i),TD({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();tN(this,OD,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}batch(e,t){return QL(this,void 0,void 0,(function*(){const{pkh:r,publicKey:n}=yield this.getKeys(),i=yield this.context.readProvider.getProtocolConstants("head"),o=yield this.getOperationLimits(i,e.length),a=yield this.isRevealOpNeeded(e,r),s=[];if(t)for(const d of e)if(HN(d)){const e=t.shift(),r=TD(d,{fee:e.suggestedFeeMutez,storageLimit:e.storageLimit,gasLimit:e.gasLimit});s.push(yield this.getRPCOp(Object.assign(Object.assign({},d),r)))}else s.push(Object.assign({},d));else for(const t of e)if(HN(t)){const e=TD(t,o);s.push(yield this.getRPCOp(Object.assign(Object.assign({},t),e)))}else s.push(Object.assign({},t));if(a){if(!n)throw new GS(r);s.unshift(yield IN({fee:yN(r),storageLimit:0,gasLimit:gN(r)},r,n))}const c=yield this.getBlockHash(),l=yield this.getProtocolHash();tN(this,OD,{},"f");const u=parseInt(yield this.getHeadCounter(r),10);return{opOb:{branch:c,contents:this.constructOpContents(s,u,r),protocol:l},counter:u}}))}contractCall(e){var t,r,n;return QL(this,void 0,void 0,(function*(){const i=yield this.getBlockHash(),o=yield this.getProtocolHash(),{pkh:a}=yield this.getKeys();tN(this,OD,{},"f");const s=parseInt(yield this.getHeadCounter(a),10),c=e.toTransferParams(),l=yield this.context.readProvider.getProtocolConstants("head"),u=yield this.getOperationLimits(l),d=TD({fee:c.fee,storageLimit:c.storageLimit,gasLimit:c.gasLimit},u),h={kind:UP.TRANSACTION,fee:null!==(t=c.fee)&&void 0!==t?t:d.fee,gas_limit:null!==(r=c.gasLimit)&&void 0!==r?r:d.gasLimit,storage_limit:null!==(n=c.storageLimit)&&void 0!==n?n:d.storageLimit,amount:String(c.amount),destination:c.to,parameters:c.parameter},f=yield this.addRevealOperationIfNeeded(h,a),p=this.convertIntoArray(f);return{opOb:{branch:i,contents:this.constructOpContents(p,s,a),protocol:o},counter:s}}))}toPreapply(e){return QL(this,void 0,void 0,(function*(){const{opOb:{contents:t,branch:r,protocol:n}}=e,i=this.toForge(e),o=yield this.context.forger.forge(i);return[{contents:t,branch:r,protocol:n,signature:(yield this.context.signer.sign(o,new Uint8Array([3]))).prefixSig}]}))}toForge({opOb:{contents:e,branch:t}}){return{branch:t,contents:e}}}OD=new WeakMap;const jD=[UP.ACTIVATION,UP.ORIGINATION,UP.TRANSACTION,UP.DELEGATION];class RD extends iD{constructor(e,t){super(e),this.estimator=t,this.operations=[],this.prepare=new CD(this.context)}withTransfer(e){const t=fE(e.to);if(e.amount<0)throw new MS(e.amount.toString());if(t!==nE.VALID)throw new RS(e.to,wE(t));return this.operations.push(Object.assign({kind:UP.TRANSACTION},e)),this}withTransferTicket(e){const t=fE(e.destination);if(t!==nE.VALID)throw new RS(e.destination,wE(t));return this.operations.push(Object.assign({kind:UP.TRANSFER_TICKET},e)),this}withContractCall(e,t={}){return this.withTransfer(e.toTransferParams(t))}withDelegation(e){var t;const r=fE(e.source);if(e.source&&r!==nE.VALID)throw new RS(e.source,wE(r));const n=fE(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&n!==nE.VALID)throw new RS(e.delegate,wE(n));return this.operations.push(Object.assign({kind:UP.DELEGATION},e)),this}withActivation({pkh:e,secret:t}){const r=gE(e);if(r!==nE.VALID)throw new HS(e,wE(r));return this.operations.push({kind:UP.ACTIVATION,pkh:e,secret:t}),this}withOrigination(e){return this.operations.push(Object.assign({kind:UP.ORIGINATION},e)),this}withRegisterGlobalConstant(e){return this.operations.push(Object.assign({kind:UP.REGISTER_GLOBAL_CONSTANT},e)),this}withIncreasePaidStorage(e){return this.operations.push(Object.assign({kind:UP.INCREASE_PAID_STORAGE},e)),this}withSmartRollupAddMessages(e){return this.operations.push(Object.assign({kind:UP.SMART_ROLLUP_ADD_MESSAGES},e)),this}withSmartRollupOriginate(e){return this.operations.push(Object.assign({kind:UP.SMART_ROLLUP_ORIGINATE},e)),this}withSmartRollupExecuteOutboxMessage(e){return this.operations.push(Object.assign({kind:UP.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE},e)),this}getRPCOp(e){return QL(this,void 0,void 0,(function*(){switch(e.kind){case UP.TRANSACTION:return jN(Object.assign({},e));case UP.ORIGINATION:return CN(yield this.context.parser.prepareCodeOrigination(Object.assign({},e)));case UP.DELEGATION:return RN(Object.assign({},e));case UP.REGISTER_GLOBAL_CONSTANT:return MN(Object.assign({},e));case UP.INCREASE_PAID_STORAGE:return NN(Object.assign({},e));case UP.TRANSFER_TICKET:return LN(Object.assign({},e));case UP.SMART_ROLLUP_ADD_MESSAGES:return DN(Object.assign({},e));case UP.SMART_ROLLUP_ORIGINATE:return zN(Object.assign({},e));case UP.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:return BN(Object.assign({},e));default:throw new qS(JSON.stringify(e.kind))}}))}with(e){for(const t of e)switch(t.kind){case UP.TRANSACTION:this.withTransfer(t);break;case UP.ORIGINATION:this.withOrigination(t);break;case UP.DELEGATION:this.withDelegation(t);break;case UP.ACTIVATION:this.withActivation(t);break;case UP.REGISTER_GLOBAL_CONSTANT:this.withRegisterGlobalConstant(t);break;case UP.INCREASE_PAID_STORAGE:this.withIncreasePaidStorage(t);break;case UP.TRANSFER_TICKET:this.withTransferTicket(t);break;case UP.SMART_ROLLUP_ADD_MESSAGES:this.withSmartRollupAddMessages(t);break;case UP.SMART_ROLLUP_ORIGINATE:this.withSmartRollupOriginate(t);break;case UP.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:this.withSmartRollupExecuteOutboxMessage(t);break;default:throw new qS(JSON.stringify(t.kind))}return this}send(e){return QL(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=e&&e.source||t,n=yield this.estimator.batch(this.operations);n.length!==this.operations.length&&n.shift();const i=yield this.prepare.batch(this.operations,n),o=yield this.forge(i),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new nD(a,i.opOb.contents,r,c,l,s)}))}}class ID{constructor(e,t){this.context=e,this.estimator=t}batch(e){const t=new RD(this.context,this.estimator);return Array.isArray(e)&&t.with(e),t}}class MD extends lD{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t,this.getOriginatedContractAddresses=()=>QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e){const t=e.filter((e=>"origination"===e.kind));let r=[];for(const e of t)e.metadata.operation_result.originated_contracts&&(r=[...r,...e.metadata.operation_result.originated_contracts]);return r}throw new cD("Unable to fetch operation results")}))}revealOperation(){return QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===UP.REVEAL));throw new cD("Unable to fetch operation results")}))}status(){return QL(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.operationResults();if(e)return e.filter((e=>-1!==jD.indexOf(e.kind))).map((e=>{if(KN(e)){return e.metadata.operation_result.status}return"unknown"}))[0]||"unknown";throw new cD("Unable to fetch operation results")}))}}class LD extends lD{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===UP.REVEAL));throw new cD("Unable to fetch operation result")}))}increasePaidStorageOperation(){return QL(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===UP.INCREASE_PAID_STORAGE));throw new cD("Unable to fetch operation result")}))}status(){return QL(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.increasePaidStorageOperation();return e?e.metadata.operation_result.status:"unknown"}))}}const ND=(e,t,r)=>{return e.pipe((n=1e3*t.config.confirmationPollingTimeoutSecond,function(e){return new ZO(null).pipe(YT({each:n,with:()=>YO((()=>new eD("Confirmation polling timed out")))}),LT((()=>e)))}),tC({connector:()=>new GO(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1}));var n};class DD{constructor(e){this.context=e,this.sharedHeadObs=cT((()=>oN(this.context.stream.subscribeBlock("head"))))}createNewHeadObservable(){return QL(this,void 0,void 0,(function*(){return ND(this.sharedHeadObs,this.context)}))}createPastBlockWalker(e,t=1){return kT(this.context.readProvider.getBlock(e)).pipe(GT((e=>1===t?ST(e):uT(e.header.level,t-1).pipe(function(){for(var e=[],t=0;tQL(this,void 0,void 0,(function*(){return this.context.readProvider.getBlock("number"===typeof e?e:e.header.level)}))))))))}createHeadObservableFromConfig({blockIdentifier:e}){return QL(this,void 0,void 0,(function*(){const t=[];return e&&t.push(this.createPastBlockWalker(e)),t.push(yield this.createNewHeadObservable()),DT(...t)}))}createOperation(e,t={}){return QL(this,void 0,void 0,(function*(){return new lD(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createBatchOperation(e,t={}){return QL(this,void 0,void 0,(function*(){return new MD(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createTransactionOperation(e,t={}){return QL(this,void 0,void 0,(function*(){return new uD(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createDelegationOperation(e,t={}){return QL(this,void 0,void 0,(function*(){return new hD(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createOriginationOperation(e,t={}){return QL(this,void 0,void 0,(function*(){return new dD(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createIncreasePaidStorageOperation(e,t={}){return QL(this,void 0,void 0,(function*(){return new LD(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}}class zD extends iD{constructor(e){super(e),this.prepare=new CD(this.context)}getBalance(e){return QL(this,void 0,void 0,(function*(){const t=fE(e);if(t!==nE.VALID)throw new RS(e,wE(t));return this.context.readProvider.getBalance(e,"head")}))}getDelegate(e){return QL(this,void 0,void 0,(function*(){const t=fE(e);if(t!==nE.VALID)throw new RS(e,wE(t));return this.context.readProvider.getDelegate(e,"head")}))}activate(e,t){return QL(this,void 0,void 0,(function*(){const r=gE(e);if(r!==nE.VALID)throw new HS(e,wE(r));const n=yield this.prepare.activate({pkh:e,secret:t}),i=yield this.forge(n),o=`${i.opbytes}00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000`;return new rD(yield this.rpc.injectOperation(o),Object.assign(Object.assign({},i),{opbytes:o}),[],this.context.clone())}))}}const BD=100;class FD{constructor(e,t,r,n,i=100){this._milligasLimit=e,this._storageLimit=t,this.opSize=r,this.minimalFeePerStorageByteMutez=n,this.baseFeeMutez=i}get burnFeeMutez(){return this.roundUp(Number(this.storageLimit)*Number(this.minimalFeePerStorageByteMutez))}get storageLimit(){return Math.max(Number(this._storageLimit),0)}get gasLimit(){return this.roundUp(Number(this._milligasLimit)/1e3)}get operationFeeMutez(){return.1*this.gasLimit+1*Number(this.opSize)}roundUp(e){return Math.ceil(Number(e))}get minimalFeeMutez(){return this.roundUp(this.operationFeeMutez+BD)}get suggestedFeeMutez(){return this.roundUp(this.operationFeeMutez+120)}get usingBaseFeeMutez(){return Math.max(Number(this.baseFeeMutez),BD)+this.roundUp(this.operationFeeMutez)}get totalCost(){return this.minimalFeeMutez+this.burnFeeMutez}get consumedMilligas(){return Number(this._milligasLimit)}static createEstimateInstanceFromProperties(e){let t,r=0,n=0,i=0,o=0;return e.forEach((e=>{r+=e.milligasLimit,n+=e.storageLimit,i+=e.opSize,o=Math.max(e.minimalFeePerStorageByteMutez,o),e.baseFeeMutez&&(t=t?t+e.baseFeeMutez:e.baseFeeMutez)})),new FD(r,n,i,o,t)}static createArrayEstimateInstancesFromProperties(e){return e.map((e=>new FD(e.milligasLimit,e.storageLimit,e.opSize,e.minimalFeePerStorageByteMutez,e.baseFeeMutez)))}}class UD extends AS{constructor(){super(),this.name="RevealEstimateError",this.message="Public key is unknown, unable to estimate the reveal operation in Wallet API."}}class $D extends iD{constructor(){super(...arguments),this.OP_SIZE_REVEAL=324,this.MILLIGAS_BUFFER=1e5,this.STORAGE_BUFFER=20,this.prepare=new CD(this.context)}getKeys(){return QL(this,void 0,void 0,(function*(){const e=this.context.isAnySignerConfigured();return{publicKeyHash:e?yield this.signer.publicKeyHash():yield this.context.walletProvider.getPKH(),publicKey:e?yield this.signer.publicKey():void 0}}))}getEstimationPropertiesFromOperationContent(e,t,r,n){const i=ZN({contents:[e]});let o=0,a=0;return i.forEach((e=>{o+=Number(e.consumed_milligas)||0,a+="allocated_destination_contract"in e?n:0,a+="originated_contracts"in e&&Array.isArray(e.originated_contracts)?e.originated_contracts.length*n:0,a+="storage_size"in e&&"global_address"in e&&Number(e.storage_size)||0,a+="paid_storage_size_diff"in e&&Number(e.paid_storage_size_diff)||0,a+="genesis_commitment_hash"in e&&Number(e.size)||0})),HN(e)?{milligasLimit:(s=e,s.kind===UP.TRANSACTION&&s.parameters||-1!==["origination","register_global_constant","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate"].indexOf(s.kind)?o+Number(this.MILLIGAS_BUFFER):o),storageLimit:a>0?a+this.STORAGE_BUFFER:0,opSize:t,minimalFeePerStorageByteMutez:r.toNumber()}:{milligasLimit:0,storageLimit:0,opSize:t,minimalFeePerStorageByteMutez:r.toNumber(),baseFeeMutez:0};var s}calculateEstimates(e,t){return QL(this,void 0,void 0,(function*(){const{opbytes:r,opOb:{branch:n,contents:i}}=yield this.forge(e),o={operation:{branch:n,contents:i,signature:"edsigtkpiSSschcaCt9pUVrpNPf7TTcgvgDEDD6NCEHMy8NNQJCGnMfLZzYoQj74yLjo9wx6MPVV29CvVzgi7qEcEUok3k7AuMg"},chain_id:yield this.context.readProvider.getChainId()},{opResponse:a}=yield this.simulate(o),{cost_per_byte:s,origination_size:c}=t,l=[...YN(a,"backtracked"),...YN(a)];if(l.length)throw new WN(l,"Error occurred during estimation",a.contents);let u=1;return Array.isArray(e.opOb.contents)&&e.opOb.contents.length>1&&(u="reveal"===a.contents[0].kind?e.opOb.contents.length-1:e.opOb.contents.length),a.contents.map((e=>this.getEstimationPropertiesFromOperationContent(e,"reveal"===e.kind?this.OP_SIZE_REVEAL/2:(r.length+130)/2/u,s,null!==c&&void 0!==c?c:257)))}))}originate(e){return QL(this,void 0,void 0,(function*(){const t=yield this.prepare.originate(e),r=yield this.context.readProvider.getProtocolConstants("head"),n=yield this.calculateEstimates(t,r);return"reveal"===t.opOb.contents[0].kind&&(n.shift(),n[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(n)}))}transfer(e){var t,{fee:r,storageLimit:n,gasLimit:i}=e,o=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const e=fE(o.to);if(e!==nE.VALID)throw new RS(o.to,wE(e));const a=fE(null!==(t=o.source)&&void 0!==t?t:"");if(o.source&&a!==nE.VALID)throw new RS(o.source,wE(a));if(o.amount<0)throw new MS(o.amount.toString());const s=yield this.prepare.transaction(Object.assign({fee:r,storageLimit:n,gasLimit:i},o)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(s,c);return"reveal"===s.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(l)}))}transferTicket(e){var t,{fee:r,storageLimit:n,gasLimit:i}=e,o=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const e=fE(o.destination);if(e!==nE.VALID)throw new RS(o.destination,wE(e));const a=fE(null!==(t=o.source)&&void 0!==t?t:"");if(o.source&&a!==nE.VALID)throw new RS(o.source,wE(a));const s=yield this.context.readProvider.getProtocolConstants("head"),c=yield this.prepare.transferTicket(Object.assign({fee:r,storageLimit:n,gasLimit:i},o)),l=yield this.calculateEstimates(c,s);return"reveal"===c.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(l)}))}setDelegate(e){var t,{fee:r,gasLimit:n,storageLimit:i}=e,o=JL(e,["fee","gasLimit","storageLimit"]);return QL(this,void 0,void 0,(function*(){const e=fE(o.source);if(o.source&&e!==nE.VALID)throw new RS(o.source,wE(e));const a=fE(null!==(t=o.delegate)&&void 0!==t?t:"");if(o.delegate&&a!==nE.VALID)throw new RS(o.delegate,wE(a));const s=yield this.prepare.delegation(Object.assign({fee:r,storageLimit:i,gasLimit:n},o)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(s,c);return"reveal"===s.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(l)}))}batch(e){return QL(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.batch(e),n=yield this.calculateEstimates(r,t);return FD.createArrayEstimateInstancesFromProperties(n)}))}registerDelegate(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const e=(yield this.getKeys()).publicKeyHash,a=yield this.context.readProvider.getProtocolConstants("head"),s=t||e,c=yield this.prepare.registerDelegate(Object.assign({fee:r,storageLimit:n,gasLimit:i},o),s),l=yield this.calculateEstimates(c,a);return"reveal"===c.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(l)}))}reveal(e){return QL(this,void 0,void 0,(function*(){const{publicKeyHash:t,publicKey:r}=yield this.getKeys();if(!r)throw new UD;if(yield this.isAccountRevealRequired(t)){const t=yield this.context.readProvider.getProtocolConstants("head"),r=e?yield this.prepare.reveal(e):yield this.prepare.reveal({}),n=yield this.calculateEstimates(r,t);return FD.createEstimateInstanceFromProperties(n)}}))}registerGlobalConstant(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){const e=yield this.prepare.registerGlobalConstant(Object.assign({fee:t,storageLimit:r,gasLimit:n},i)),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.calculateEstimates(e,o);return"reveal"===e.opOb.contents[0].kind&&(a.shift(),a[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(a)}))}increasePaidStorage(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=JL(e,["fee","storageLimit","gasLimit"]);return QL(this,void 0,void 0,(function*(){if(i.amount<0)throw new MS(i.amount.toString());const e=yield this.context.readProvider.getProtocolConstants("head"),o=yield this.prepare.increasePaidStorage(Object.assign({fee:t,storageLimit:r,gasLimit:n},i)),a=yield this.calculateEstimates(o,e);return"reveal"===o.opOb.contents[0].kind&&(a.shift(),a[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(a)}))}updateConsensusKey(e){return QL(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.updateConsensusKey(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&(n.shift(),n[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(n)}))}smartRollupAddMessages(e){return QL(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.smartRollupAddMessages(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&(n.shift(),n[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(n)}))}smartRollupOriginate(e){return QL(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.smartRollupOriginate(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&(n.shift(),n[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(n)}))}smartRollupExecuteOutboxMessage(e){return QL(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.smartRollupExecuteOutboxMessage(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&n.shift(),FD.createEstimateInstanceFromProperties(n)}))}contractCall(e){return QL(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.contractCall(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&(n.shift(),n[0].opSize-=this.OP_SIZE_REVEAL/2),FD.createEstimateInstanceFromProperties(n)}))}}class HD extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"delegation"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get delegate(){return this.params.delegate}get isRegisterOperation(){return this.delegate===this.source}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return rw.config({DECIMAL_PLACES:0,ROUNDING_MODE:rw.ROUND_UP}),this.consumedMilliGas?new rw(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class VD extends rD{constructor(e,t,r,n,i,o){super(e,r,n,i),this.params=t,this.contractProvider=o;const a=this.operationResults&&this.operationResults.originated_contracts;Array.isArray(a)&&(this.contractAddress=a[0])}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"origination"===e.kind)),t=e&&KN(e)&&e.metadata.operation_result;return t||void 0}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return rw.config({DECIMAL_PLACES:0,ROUNDING_MODE:rw.ROUND_UP}),this.consumedMilliGas?new rw(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get storageDiff(){const e=this.operationResults&&this.operationResults.paid_storage_size_diff;return e||void 0}get storageSize(){const e=this.operationResults&&this.operationResults.storage_size;return e||void 0}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}contract(e,t){return QL(this,void 0,void 0,(function*(){if(!this.contractAddress)throw new XN("No contract was originated in this operation");return yield this.confirmation(e,t),this.contractProvider.at(this.contractAddress)}))}}class qD extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r,this.globalConstantHash=this.operationResults&&this.operationResults.global_address}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"register_global_constant"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get registeredExpression(){return this.params.value}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}get consumedGas(){return rw.config({DECIMAL_PLACES:0,ROUNDING_MODE:rw.ROUND_UP}),this.consumedMilliGas?new rw(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}}class KD extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"reveal"===e.kind));return e?[e]:[]}get status(){const e=this.operationResults[0];return e?e.metadata.operation_result.status:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get publicKey(){return this.params.public_key}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}get consumedGas(){return rw.config({DECIMAL_PLACES:0,ROUNDING_MODE:rw.ROUND_UP}),new rw(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(ZN({contents:this.operationResults}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(ZN({contents:this.operationResults}),"paid_storage_size_diff"))}get storageSize(){return String(this.sumProp(ZN({contents:this.operationResults}),"storage_size"))}get errors(){return YN({contents:this.operationResults})}}class WD extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"transaction"===e.kind));return e?[e]:[]}get status(){const e=this.operationResults[0];return e?e.metadata.operation_result.status:"unknown"}get amount(){return new nw(this.params.amount)}get destination(){return this.params.destination}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}get consumedGas(){return nw.config({DECIMAL_PLACES:0,ROUNDING_MODE:nw.ROUND_UP}),new nw(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(ZN({contents:this.operationResults}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(ZN({contents:this.operationResults}),"paid_storage_size_diff"))}get storageSize(){return String(this.sumProp(ZN({contents:this.operationResults}),"storage_size"))}get errors(){return YN({contents:this.operationResults})}}class GD extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"increase_paid_storage"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get amount(){return this.params.amount}get destination(){return this.params.destination}}class ZD extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"update_consensus_key"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get pk(){return this.params.pk}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class YD extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"smart_rollup_add_messages"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get message(){return this.params.message}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class XD extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===UP.SMART_ROLLUP_ORIGINATE)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get pvmKind(){return this.params.pvm_kind}get kernel(){return this.params.kernel}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class JD extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"ballot"===e.kind));return e||void 0}get period(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.period}get proposal(){return this.params.proposal}get ballot(){return this.params.ballot}}class QD extends rD{constructor(e,t,r,n,i){super(e,r,n,i),this.params=t}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"drain_delegate"===e.kind)),t=e&&e.metadata&&e.metadata.balance_updates;return t||void 0}get consensusKey(){return this.params.consensus_key}get delegate(){return this.params.delegate}get destination(){return this.params.destination}}class ez extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"proposals"===e.kind));return e||void 0}get proposals(){return this.params.proposals}get period(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.period}}class tz extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===UP.TRANSFER_TICKET)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return rw.config({DECIMAL_PLACES:0,ROUNDING_MODE:rw.ROUND_UP}),this.consumedMilliGas?new rw(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}}class rz extends rD{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===UP.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get rollup(){return this.params.rollup}get cementedCommitment(){return this.params.cemented_commitment}get outputProof(){return this.params.output_proof}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class nz extends iD{constructor(e,t){super(e),this.estimator=t,this.contractProviderTypeSymbol=Symbol.for("taquito-contract-provider-type-symbol"),this.prepare=new CD(this.context)}getStorage(e,t){return QL(this,void 0,void 0,(function*(){const r=mE(e);if(r!==nE.VALID)throw new US(e,wE(r));const n=yield this.context.readProvider.getScript(e,"head");let i;return t||(t=n),i=aR.isSchema(t)?t:aR.fromRPCResponse({script:t}),i.Execute(n.storage,PD(this))}))}getBigMapKey(e,t,r){return QL(this,void 0,void 0,(function*(){const n=mE(e);if(n!==nE.VALID)throw new US(e,wE(n));let i;r||(r=(yield this.rpc.getContract(e)).script),i=aR.isSchema(r)?r:aR.fromRPCResponse({script:r});const o=i.EncodeBigMapKey(t),a=yield this.rpc.getBigMapKey(e,o);return i.ExecuteOnBigMapValue(a)}))}getBigMapKeyByID(e,t,r,n){return QL(this,void 0,void 0,(function*(){const{key:i,type:o}=r.EncodeBigMapKey(t),{packed:a}=yield this.context.packer.packData({data:i,type:o}),s=function(e){return EE(kS().blake2b(TE(e),void 0,32),eE.expr)}(a),c=n?yield this.context.readProvider.getBigMapValue({id:e.toString(),expr:s},n):yield this.context.readProvider.getBigMapValue({id:e.toString(),expr:s},"head");return r.ExecuteOnBigMapValue(c,PD(this))}))}getBigMapKeysByID(e,t,r,n,i=5){return QL(this,void 0,void 0,(function*(){const o=yield this.getBlockForRequest(t,n),a=new EC;let s=0,c=[];for(;sthis.getBigMapValueOrUndefined(t,e,r,o)));c=[...c,...yield Promise.all(n)],s+=i}for(let e=0;ee.kind===UP.ORIGINATION)),i=yield this.forge(r),{hash:o,context:a,forgedBytes:s,opResponse:c}=yield this.signAndInject(i);return new VD(o,n,s,c,a,this)}))}setDelegate(e){var t;return QL(this,void 0,void 0,(function*(){const r=fE(e.source);if(e.source&&r!==nE.VALID)throw new RS(e.source,wE(r));const n=fE(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&n!==nE.VALID)throw new RS(e.delegate,wE(n));if(/kt1/i.test(e.source))throw new xN(e.source);const i=yield this.signer.publicKeyHash(),o=e.source||i,a=yield this.estimate(e,this.estimator.setDelegate.bind(this.estimator)),s=yield this.prepare.delegation(Object.assign(Object.assign({},e),a)),c=s.opOb.contents.find((e=>e.kind===UP.DELEGATION)),l=yield this.forge(s),{hash:u,context:d,forgedBytes:h,opResponse:f}=yield this.signAndInject(l);return new HD(u,c,o,h,f,d)}))}registerDelegate(e){return QL(this,void 0,void 0,(function*(){const t=yield this.estimate(e,this.estimator.registerDelegate.bind(this.estimator)),r=yield this.signer.publicKeyHash(),n=yield this.prepare.registerDelegate(Object.assign(Object.assign({},e),t)),i=n.opOb.contents.find((e=>e.kind===UP.DELEGATION)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new HD(a,i,r,c,l,s)}))}transfer(e){var t;return QL(this,void 0,void 0,(function*(){const r=fE(e.to);if(r!==nE.VALID)throw new RS(e.to,wE(r));const n=fE(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&n!==nE.VALID)throw new RS(e.source,wE(n));if(e.amount<0)throw new MS(e.amount.toString());const i=yield this.signer.publicKeyHash(),o=yield this.estimate(e,this.estimator.transfer.bind(this.estimator)),a=e.source||i,s=yield this.prepare.transaction(Object.assign(Object.assign({},e),o)),c=s.opOb.contents.find((e=>e.kind===UP.TRANSACTION)),l=yield this.forge(s),{hash:u,context:d,forgedBytes:h,opResponse:f}=yield this.signAndInject(l);return new WD(u,c,a,h,f,d)}))}transferTicket(e){var t,r;return QL(this,void 0,void 0,(function*(){const n=fE(e.destination);if(n!==nE.VALID)throw new RS(e.destination,wE(n));const i=fE(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==nE.VALID)throw new RS(e.source,wE(i));const o=yield this.signer.publicKeyHash(),a=null!==(r=e.source)&&void 0!==r?r:o,s=yield this.estimate(e,this.estimator.transferTicket.bind(this.estimator)),c=yield this.prepare.transferTicket(Object.assign(Object.assign({},e),s)),l=c.opOb.contents.find((e=>e.kind===UP.TRANSFER_TICKET)),u=yield this.forge(c),{hash:d,context:h,forgedBytes:f,opResponse:p}=yield this.signAndInject(u);return new tz(d,l,a,f,p,h)}))}reveal(e){return QL(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimator.reveal(e);if(r){const n=yield this.estimate(e,(()=>QL(this,void 0,void 0,(function*(){return r})))),i=yield this.prepare.reveal(Object.assign(Object.assign({},e),n)),o=i.opOb.contents.find((e=>e.kind===UP.REVEAL)),a=yield this.forge(i),{hash:s,context:c,forgedBytes:l,opResponse:u}=yield this.signAndInject(a);return new KD(s,o,t,l,u,c)}throw new PN(`The publicKeyHash '${t}' has already been revealed.`)}))}registerGlobalConstant(e){return QL(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.registerGlobalConstant.bind(this.estimator)),n=yield this.prepare.registerGlobalConstant(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===UP.REGISTER_GLOBAL_CONSTANT)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new qD(a,i,t,c,l,s)}))}increasePaidStorage(e){return QL(this,void 0,void 0,(function*(){if(e.amount<0)throw new MS(e.amount.toString());const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.increasePaidStorage.bind(this.estimator)),n=yield this.prepare.increasePaidStorage(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===UP.INCREASE_PAID_STORAGE)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new GD(a,i,t,c,l,s)}))}drainDelegate(e){return QL(this,void 0,void 0,(function*(){const t=yield this.prepare.drainDelegate(e),r=t.opOb.contents.find((e=>e.kind===UP.DRAIN_DELEGATE)),n=yield this.forge(t),{hash:i,context:o,forgedBytes:a,opResponse:s}=yield this.signAndInject(n);return new QD(i,r,a,s,o)}))}ballot(e){var t,r;return QL(this,void 0,void 0,(function*(){const n=yield this.signer.publicKeyHash(),i=fE(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==nE.VALID)throw new RS(e.source,wE(i));const o=null!==(r=e.source)&&void 0!==r?r:n,a=yield this.prepare.ballot(Object.assign(Object.assign({},e),{source:o})),s=a.opOb.contents.find((e=>e.kind===UP.BALLOT)),c=yield this.forge(a),{hash:l,context:u,forgedBytes:d,opResponse:h}=yield this.signAndInject(c);return new JD(l,s,n,d,h,u)}))}proposals(e){var t,r;return QL(this,void 0,void 0,(function*(){const n=yield this.signer.publicKeyHash(),i=fE(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==nE.VALID)throw new RS(e.source,wE(i));const o=null!==(r=e.source)&&void 0!==r?r:n,a=yield this.prepare.proposals(Object.assign(Object.assign({},e),{source:o})),s=a.opOb.contents.find((e=>e.kind===UP.PROPOSALS)),c=yield this.forge(a),{hash:l,context:u,forgedBytes:d,opResponse:h}=yield this.signAndInject(c);return new ez(l,s,n,d,h,u)}))}updateConsensusKey(e){return QL(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.updateConsensusKey.bind(this.estimator)),n=yield this.prepare.updateConsensusKey(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===UP.UPDATE_CONSENSUS_KEY)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new ZD(a,i,t,c,l,s)}))}smartRollupAddMessages(e){return QL(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.smartRollupAddMessages.bind(this.estimator)),n=yield this.prepare.smartRollupAddMessages(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===UP.SMART_ROLLUP_ADD_MESSAGES)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new YD(a,i,t,c,l,s)}))}smartRollupOriginate(e){return QL(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.smartRollupOriginate.bind(this.estimator)),n=yield this.prepare.smartRollupOriginate(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===UP.SMART_ROLLUP_ORIGINATE)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new XD(a,i,t,c,l,s)}))}smartRollupExecuteOutboxMessage(e){return QL(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.smartRollupExecuteOutboxMessage.bind(this.estimator)),n=yield this.prepare.smartRollupExecuteOutboxMessage(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===UP.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new rz(a,i,t,c,l,s)}))}failingNoop(e){return QL(this,void 0,void 0,(function*(){const t={kind:UP.FAILING_NOOP,arbitrary:e.arbitrary},r=yield this.context.readProvider.getBlockHash(e.basedOnBlock),n=yield this.context.forger.forge({branch:r,contents:[t]}),{prefixSig:i}=yield this.signer.sign(n,new Uint8Array([3]));return{signature:i,bytes:n,signedContent:{branch:r,contents:[{kind:UP.FAILING_NOOP,arbitrary:e.arbitrary}]}}}))}at(e,t=(e=>e)){return QL(this,void 0,void 0,(function*(){const r=mE(e);if(r!==nE.VALID)throw new US(e,wE(r));const n=this.context.withExtensions().rpc,i=this.context.withExtensions().readProvider,o=yield i.getScript(e,"head"),a=yield i.getEntrypoints(e),s=new wD(e,o,this,this,a,n,i);return t(s,this.context)}))}batch(e){const t=new RD(this.context,this.estimator);return Array.isArray(e)&&t.with(e),t}}class iz{constructor(e){this.context=e}getNextProto(){return QL(this,void 0,void 0,(function*(){if(!this.context.proto){const e=yield this.context.readProvider.getNextProtocol("head");this.context.proto=e}return this.context.proto}))}parseScript(e){return QL(this,void 0,void 0,(function*(){return new WR({protocol:yield this.getNextProto()}).parseScript(e)}))}parseMichelineExpression(e){return QL(this,void 0,void 0,(function*(){return new WR({protocol:yield this.getNextProto()}).parseMichelineExpression(e)}))}parseJSON(e){return QL(this,void 0,void 0,(function*(){return new WR({protocol:yield this.getNextProto()}).parseJSON(e)}))}prepareCodeOrigination(e){return QL(this,void 0,void 0,(function*(){const t=e;if(t.code=yield this.formatCodeParam(e.code),e.init)t.init=yield this.formatInitParam(e.init);else if(e.storage){const r=t.code.find((e=>"prim"in e&&"storage"===e.prim));if(!(null===r||void 0===r?void 0:r.args))throw new _N("The storage section is missing from the script",e.code);const n=new aR(r.args[0]),i=yield this.findGlobalConstantsHashAndValue(n);if(0!==Object.keys(i).length){const n=new WR({expandGlobalConstant:i}).parseJSON(r.args[0]),o=new aR(n);t.init=o.Encode(e.storage)}else t.init=n.Encode(e.storage);delete t.storage}return t}))}formatCodeParam(e){return QL(this,void 0,void 0,(function*(){let t;if("string"===typeof e){const r=yield this.parseScript(e);if(null===r)throw new _N("Unable to parse",e);t=r}else{const r=yield this.parseJSON(e),n=["parameter","storage","code"];t=r.sort(((e,t)=>n.indexOf(e.prim)-n.indexOf(t.prim)))}return t}))}formatInitParam(e){return QL(this,void 0,void 0,(function*(){let t;if("string"===typeof e){const r=yield this.parseMichelineExpression(e);if(null===r)throw new kN("Invalid init parameter",e);t=r}else t=yield this.parseJSON(e);return t}))}findGlobalConstantsHashAndValue(e){return QL(this,void 0,void 0,(function*(){const t=e.findToken("constant"),r={};if(0!==t.length)for(const e of t){const t=e.tokenVal.args;if(t){const e=t[0];if(e.string){const t=e.string,n=yield this.context.globalConstantsProvider.getGlobalConstantByHash(t);Object.assign(r,{[t]:n})}}}return r}))}}class oz{constructor(e){this.context=e}packData(e){return QL(this,void 0,void 0,(function*(){return this.context.rpc.packData(e)}))}}class az extends TS{constructor(){super(),this.name="UnconfiguredGlobalConstantsProviderError",this.message="No global constants provider has been configured. Please configure one by calling setGlobalConstantsProvider({globalConstantsProvider}) on your TezosToolkit instance."}}class sz{getGlobalConstantByHash(e){return QL(this,void 0,void 0,(function*(){throw new az}))}}class cz{constructor(e){this.rpc=e}getBalance(e,t){return QL(this,void 0,void 0,(function*(){return this.rpc.getBalance(e,{block:String(t)})}))}getDelegate(e,t){return QL(this,void 0,void 0,(function*(){return this.rpc.getDelegate(e,{block:String(t)})}))}getNextProtocol(e){return QL(this,void 0,void 0,(function*(){return(yield this.rpc.getProtocols({block:String(e)})).next_protocol}))}getProtocolConstants(e){return QL(this,void 0,void 0,(function*(){const{time_between_blocks:t,minimal_block_delay:r,hard_gas_limit_per_operation:n,hard_gas_limit_per_block:i,hard_storage_limit_per_operation:o,cost_per_byte:a,smart_rollup_origination_size:s}=yield this.rpc.getConstants({block:String(e)});return{time_between_blocks:t,minimal_block_delay:r,hard_gas_limit_per_operation:n,hard_gas_limit_per_block:i,hard_storage_limit_per_operation:o,cost_per_byte:a,smart_rollup_origination_size:s}}))}getScript(e,t){return QL(this,void 0,void 0,(function*(){const{script:r}=yield this.rpc.getContract(e,{block:String(t)});return r}))}getStorage(e,t){return QL(this,void 0,void 0,(function*(){return this.rpc.getStorage(e,{block:String(t)})}))}getBlockHash(e){return QL(this,void 0,void 0,(function*(){const{hash:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getBlockLevel(e){return QL(this,void 0,void 0,(function*(){const{level:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getCounter(e,t){return QL(this,void 0,void 0,(function*(){const{counter:r}=yield this.rpc.getContract(e,{block:String(t)});return r||"0"}))}getBlockTimestamp(e){return QL(this,void 0,void 0,(function*(){const{timestamp:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getBigMapValue(e,t){return QL(this,void 0,void 0,(function*(){return this.rpc.getBigMapExpr(e.id,e.expr,{block:String(t)})}))}getSaplingDiffById(e,t){return QL(this,void 0,void 0,(function*(){return this.rpc.getSaplingDiffById(e.id,{block:String(t)})}))}getSaplingDiffByContract(e,t){return QL(this,void 0,void 0,(function*(){return this.rpc.getSaplingDiffByContract(e,{block:String(t)})}))}getEntrypoints(e){return QL(this,void 0,void 0,(function*(){return this.rpc.getEntrypoints(e)}))}getChainId(){return QL(this,void 0,void 0,(function*(){return this.rpc.getChainId()}))}isAccountRevealed(e,t){return QL(this,void 0,void 0,(function*(){const r=yield this.rpc.getManagerKey(e,{block:String(t)});return r&&"object"===typeof r?!!r.key:!!r}))}getBlock(e){return QL(this,void 0,void 0,(function*(){return this.rpc.getBlock({block:String(e)})}))}getLiveBlocks(e){return this.rpc.getLiveBlocks({block:String(e)})}}class lz extends PS{constructor(e){super(),this.type=e,this.name="UnsupportedEventError",this.message=`Unsupported event type "${e}" expecting one of the "data", "error", or "close".`}}class uz extends PS{constructor(e){super(),this.invalidExpression=e,this.name="InvalidFilterExpressionError",this.message="Invalid filter expression expecting the object to contain either and/or property"}}const dz=(e,t)=>"opHash"in t?((e,t)=>e.hash===t.opHash)(e,t):"source"in t?((e,t)=>{switch(e.kind){case"attestation":case"endorsement":return"metadata"in e&&e.metadata.delegate===t.source;case"activate_account":return"metadata"in e&&e.pkh===t.source;default:return"source"in e&&e.source===t.source}})(e,t):"kind"in t?((e,t)=>"kind"in e&&e.kind===t.kind)(e,t):"destination"in t&&((e,t)=>{switch(e.kind){case"delegation":return e.delegate===t.destination;case"origination":if("metadata"in e&&"operation_result"in e.metadata&&"originated_contracts"in e.metadata.operation_result&&Array.isArray(e.metadata.operation_result.originated_contracts))return e.metadata.operation_result.originated_contracts.some((e=>e===t.destination));break;case"transaction":return e.destination===t.destination;default:return!1}})(e,t),hz=(e,t)=>{const r=[];return Array.isArray(t)?r.push(...t):r.push(t),r.every((t=>"and"in t||"or"in t?((e,t)=>{if(Array.isArray(t.and))return t.and.every((t=>hz(e,t)));if(Array.isArray(t.or))return t.or.some((t=>hz(e,t)));throw new uz(t)})(e,t):dz(e,t)))};class fz{constructor(e,t=!1,r=dC()){var n;this.shouldRetry=t,this.operatorFunction=r,this.errorListeners=[],this.messageListeners=[],this.closeListeners=[],this.completed$=new qO,e.pipe((n=this.completed$,gT((function(e,t){aT(n).subscribe(vT(t,(function(){return t.complete()}),AO)),!t.closed&&e.subscribe(t)}))),eC((e=>{this.call(this.messageListeners,e)}),(e=>{this.call(this.errorListeners,e)}),(()=>{this.call(this.closeListeners)})),this.shouldRetry?r:eC(),cC((()=>zT))).subscribe()}call(e,t){for(const n of e)try{n(t)}catch(r){console.error(r)}}remove(e,t){const r=e.indexOf(t);-1!==r&&e.splice(r,1)}on(e,t){switch(e){case"data":this.messageListeners.push(t);break;case"error":this.errorListeners.push(t);break;case"close":this.closeListeners.push(t);break;default:throw new lz(e)}}off(e,t){switch(e){case"data":this.remove(this.messageListeners,t);break;case"error":this.remove(this.errorListeners,t);break;case"close":this.remove(this.closeListeners,t);break;default:throw new lz(e)}}close(){this.completed$.next()}}const pz={shouldObservableSubscriptionRetry:!1,observableSubscriptionRetryFunction:dC()},mz=e=>JT((t=>new $O((r=>{for(const s of t.operations)for(const c of s)for(const s of c.contents){const l=s.metadata.internal_operation_results;if(l)for(const s of l)n=s,i=null===e||void 0===e?void 0:e.address,o=null===e||void 0===e?void 0:e.tag,a=null===e||void 0===e?void 0:e.excludeFailedOperations,"event"!==n.kind||o&&n.tag!==o||i&&n.source!==i||a&&"applied"!==n.result.status||r.next(Object.assign({opHash:c.hash,blockHash:t.hash,level:t.header.level},s))}var n,i,o,a;r.complete()}))));class gz{constructor(e,t={}){this.context=e,this._config$=new ZO(Object.assign(Object.assign({},pz),t)),this.timer$=this._config$.pipe(hC("pollingIntervalMilliseconds"),GT((e=>e?WT(0,e):kT(this.getConfirmationPollingInterval()).pipe(GT((e=>WT(0,e))))))),this.newBlock$=this.timer$.pipe(GT((()=>(e=>kT(e.rpc.getBlock()).pipe(sC()))(this.context))),function(e,t){return lC((function(r,n){return t?t(r[e],n[e]):r[e]===n[e]}))}("hash"),vC(),fC())}get config(){return this._config$.getValue()}getConfirmationPollingInterval(){return QL(this,void 0,void 0,(function*(){if(!this.config.pollingIntervalMilliseconds){const t=5e3,r=1e3;try{const e=yield this.context.readProvider.getProtocolConstants("head"),n=(e.minimal_block_delay?e.minimal_block_delay.multipliedBy(1e3):e.time_between_blocks?e.time_between_blocks[0].multipliedBy(1e3):new nw(t)).dividedBy(3);this.config.pollingIntervalMilliseconds=0===n.toNumber()?r:n.toNumber()}catch(e){return t}}return this.config.pollingIntervalMilliseconds}))}subscribeBlock(e){return new fz(this.newBlock$,this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribe(e){return new fz(this.newBlock$.pipe(hC("hash")),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribeOperation(e){return new fz(this.newBlock$.pipe((e=>JT((t=>new $O((r=>{for(const n of t.operations)for(const t of n)for(const n of t.contents)hz(Object.assign({hash:t.hash},n),e)&&r.next(Object.assign({hash:t.hash},n));r.complete()})))))(e)),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribeEvent(e){return new fz(this.newBlock$.pipe(mz(e)),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}}class vz{constructor(e){this.context=e}getNextProto(){return QL(this,void 0,void 0,(function*(){if(!this.context.proto){const e=yield this.context.readProvider.getNextProtocol("head");this.context.proto=e}return this.context.proto}))}forge({branch:e,contents:t}){return QL(this,void 0,void 0,(function*(){return new XL(yield this.getNextProto()).forge({branch:e,contents:t})}))}}const yz={defaultConfirmationCount:1,confirmationPollingTimeoutSecond:180};class bz{constructor(e,t=new iN,r,n=new ZO(Object.assign({},yz)),i,o,a,s,c,l,u,d){this._rpc=e,this._signer=t,this._proto=r,this._config=n,this.providerDecorator=[],this.tz=new zD(this),this.estimate=new $D(this),this.contract=new nz(this,this.estimate),this.prepare=new CD(this),this.batch=new ID(this,this.estimate),this.wallet=new aD(this),this.withExtensions=()=>{let e=this.clone();return this.providerDecorator.forEach((t=>{e=t(e)})),e},"string"===typeof this._rpc?this._rpcClient=new $P(this._rpc):this._rpcClient=this._rpc,this._forger=i||new vz(this),this._injector=o||new rN(this),this.operationFactory=new DD(this),this._walletProvider=s||new fD(this),this._parser=c||new iz(this),this._packer=a||new oz(this),this._globalConstantsProvider=l||new sz,this._readProvider=u||new cz(this._rpcClient),this._stream=d||new gz(this)}get config(){return this._config.getValue()}set config(e){this._config.next(Object.assign({},e))}setPartialConfig(e){this._config.next(Object.assign(Object.assign({},this._config.getValue()),e))}get rpc(){return this._rpcClient}set rpc(e){this._rpcClient=e}get injector(){return this._injector}set injector(e){this._injector=e}get forger(){return this._forger}set forger(e){this._forger=e}get signer(){return this._signer}set signer(e){this._signer=e}get walletProvider(){return this._walletProvider}set walletProvider(e){this._walletProvider=e}set proto(e){this._proto=e}get proto(){return this._proto}get parser(){return this._parser}set parser(e){this._parser=e}get packer(){return this._packer}set packer(e){this._packer=e}get globalConstantsProvider(){return this._globalConstantsProvider}set globalConstantsProvider(e){this._globalConstantsProvider=e}get readProvider(){return this._readProvider}set readProvider(e){this._readProvider=e}get stream(){return this._stream}set stream(e){this._stream=e}isAnyProtocolActive(e=[]){return QL(this,void 0,void 0,(function*(){if(this._proto)return e.includes(this._proto);{const t=yield this.readProvider.getNextProtocol("head");return e.includes(t)}}))}isAnySignerConfigured(){return!(this.signer instanceof iN)}clone(){return new bz(this.rpc,this.signer,this.proto,this._config,this.forger,this._injector,this.packer,this._walletProvider,this._parser,this._globalConstantsProvider,this._readProvider,this._stream)}registerProviderDecorator(e){this.providerDecorator.push(e)}}const wz={commitHash:"bb48f61207e1806442b0874365e98c7283ba1f68",version:"19.1.0"};class xz{constructor(e){this._rpc=e,this._options={},this.format=SE,"string"===typeof this._rpc?this._rpcClient=new $P(this._rpc):this._rpcClient=this._rpc,this._context=new bz(e),this._wallet=new aD(this._context),this.setProvider({rpc:this._rpcClient}),this.batch=this._context.batch.batch.bind(this._context.batch)}setProvider({rpc:e,stream:t,signer:r,protocol:n,config:i,forger:o,wallet:a,packer:s,globalConstantsProvider:c,readProvider:l,parserProvider:u,injectorProvider:d}){this.setRpcProvider(e),this.setStreamProvider(t),this.setSignerProvider(r),this.setForgerProvider(o),this.setWalletProvider(a),this.setPackerProvider(s),this.setGlobalConstantsProvider(c),this.setReadProvider(l),this.setParserProvider(u),this.setInjectorProvider(d),this._context.proto=n,i&&this._context.setPartialConfig(i)}setSignerProvider(e){this._options.signer||"undefined"!==typeof e?"undefined"!==typeof e&&(this._context.signer=e,this._options.signer=e):(this._context.signer=new iN,this._options.signer=e)}setRpcProvider(e){"string"===typeof e?this._rpcClient=new $P(e):void 0===e||(this._rpcClient=e),this._options.rpc=this._rpcClient,this._context.rpc=this._rpcClient}setForgerProvider(e){if("undefined"!==typeof e)this._options.forger=e,this._context.forger=e;else if(void 0===this._options.forger){const e=this.getFactory(vz)();this._options.forger=e,this._context.forger=e}}setStreamProvider(e){if("string"===typeof e){const t=new gz(new bz(new $P(e)));this._options.stream=t,this._context.stream=t}else if("undefined"!==typeof e)this._options.stream=e,this._context.stream=e;else if(void 0===this._options.stream){const e=this.getFactory(gz)();this._options.stream=e,this._context.stream=e}}setWalletProvider(e){if(this._options.wallet||"undefined"!==typeof e)"undefined"!==typeof e&&(this._options.wallet=e,this._context.walletProvider=e);else{const e=this.getFactory(fD)();this._options.wallet=e,this._context.walletProvider=e}}setPackerProvider(e){if(this._options.packer||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.packer=e,this._options.packer=e);else{const e=this.getFactory(oz)();this._context.packer=e,this._options.packer=e}}setGlobalConstantsProvider(e){if(this._options.globalConstantsProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.globalConstantsProvider=e,this._options.globalConstantsProvider=e);else{const e=new sz;this._context.globalConstantsProvider=e,this._options.globalConstantsProvider=e}}setReadProvider(e){const t=e||new cz(this._context.rpc);this._options.readProvider=t,this._context.readProvider=t}setParserProvider(e){if(this._options.parserProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.parser=e,this._options.parserProvider=e);else{const e=new iz(this._context);this._context.parser=e,this._options.parserProvider=e}}setInjectorProvider(e){if(this._options.injectorProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.injector=e,this._options.injectorProvider=e);else{const e=new rN(this._context);this._context.injector=e,this._options.injectorProvider=e}}get tz(){return this._context.tz}get contract(){return this._context.contract}get prepare(){return this._context.prepare}get wallet(){return this._wallet}get operation(){return this._context.operationFactory}get estimate(){return this._context.estimate}get stream(){return this._context.stream}get rpc(){return this._context.rpc}get signer(){return this._context.signer}get globalConstants(){return this._context.globalConstantsProvider}addExtension(e){Array.isArray(e)?e.forEach((e=>e.configureContext(this._context))):e.configureContext(this._context)}getFactory(e){return(...t)=>new e(this._context,...t)}getVersionInfo(){return wz}}function _z(e,t){return function(){return e.apply(t,arguments)}}const{toString:kz}=Object.prototype,{getPrototypeOf:Sz}=Object,Ez=(e=>t=>{const r=kz.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Az=e=>(e=e.toLowerCase(),t=>Ez(t)===e),Pz=e=>t=>typeof t===e,{isArray:Oz}=Array,Tz=Pz("undefined");const Cz=Az("ArrayBuffer");const jz=Pz("string"),Rz=Pz("function"),Iz=Pz("number"),Mz=e=>null!==e&&"object"===typeof e,Lz=e=>{if("object"!==Ez(e))return!1;const t=Sz(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Nz=Az("Date"),Dz=Az("File"),zz=Az("Blob"),Bz=Az("FileList"),Fz=Az("URLSearchParams");function Uz(e,t,{allOwnKeys:r=!1}={}){if(null===e||"undefined"===typeof e)return;let n,i;if("object"!==typeof e&&(e=[e]),Oz(e))for(n=0,i=e.length;n0;)if(n=r[i],t===n.toLowerCase())return n;return null}const Hz="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:global,Vz=e=>!Tz(e)&&e!==Hz;const qz=(Kz="undefined"!==typeof Uint8Array&&Sz(Uint8Array),e=>Kz&&e instanceof Kz);var Kz;const Wz=Az("HTMLFormElement"),Gz=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),Zz=Az("RegExp"),Yz=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};Uz(r,((r,i)=>{let o;!1!==(o=t(r,i,e))&&(n[i]=o||r)})),Object.defineProperties(e,n)},Xz="abcdefghijklmnopqrstuvwxyz",Jz="0123456789",Qz={DIGIT:Jz,ALPHA:Xz,ALPHA_DIGIT:Xz+Xz.toUpperCase()+Jz};const eB=Az("AsyncFunction"),tB={isArray:Oz,isArrayBuffer:Cz,isBuffer:function(e){return null!==e&&!Tz(e)&&null!==e.constructor&&!Tz(e.constructor)&&Rz(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"===typeof FormData&&e instanceof FormData||Rz(e.append)&&("formdata"===(t=Ez(e))||"object"===t&&Rz(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&Cz(e.buffer),t},isString:jz,isNumber:Iz,isBoolean:e=>!0===e||!1===e,isObject:Mz,isPlainObject:Lz,isUndefined:Tz,isDate:Nz,isFile:Dz,isBlob:zz,isRegExp:Zz,isFunction:Rz,isStream:e=>Mz(e)&&Rz(e.pipe),isURLSearchParams:Fz,isTypedArray:qz,isFileList:Bz,forEach:Uz,merge:function e(){const{caseless:t}=Vz(this)&&this||{},r={},n=(n,i)=>{const o=t&&$z(r,i)||i;Lz(r[o])&&Lz(n)?r[o]=e(r[o],n):Lz(n)?r[o]=e({},n):Oz(n)?r[o]=n.slice():r[o]=n};for(let i=0,o=arguments.length;i(Uz(t,((t,n)=>{r&&Rz(t)?e[n]=_z(t,r):e[n]=t}),{allOwnKeys:n}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},toFlatObject:(e,t,r,n)=>{let i,o,a;const s={};if(t=t||{},null==e)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)a=i[o],n&&!n(a,e,t)||s[a]||(t[a]=e[a],s[a]=!0);e=!1!==r&&Sz(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},kindOf:Ez,kindOfTest:Az,endsWith:(e,t,r)=>{e=String(e),(void 0===r||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return-1!==n&&n===r},toArray:e=>{if(!e)return null;if(Oz(e))return e;let t=e.length;if(!Iz(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},forEachEntry:(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let n;for(;(n=r.next())&&!n.done;){const r=n.value;t.call(e,r[0],r[1])}},matchAll:(e,t)=>{let r;const n=[];for(;null!==(r=e.exec(t));)n.push(r);return n},isHTMLForm:Wz,hasOwnProperty:Gz,hasOwnProp:Gz,reduceDescriptors:Yz,freezeMethods:e=>{Yz(e,((t,r)=>{if(Rz(e)&&-1!==["arguments","caller","callee"].indexOf(r))return!1;const n=e[r];Rz(n)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")}))}))},toObjectSet:(e,t)=>{const r={},n=e=>{e.forEach((e=>{r[e]=!0}))};return Oz(e)?n(e):n(String(e).split(t)),r},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,r){return t.toUpperCase()+r})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:$z,global:Hz,isContextDefined:Vz,ALPHABET:Qz,generateString:(e=16,t=Qz.ALPHA_DIGIT)=>{let r="";const{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r},isSpecCompliantForm:function(e){return!!(e&&Rz(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),r=(e,n)=>{if(Mz(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[n]=e;const i=Oz(e)?[]:{};return Uz(e,((e,t)=>{const o=r(e,n+1);!Tz(o)&&(i[t]=o)})),t[n]=void 0,i}}return e};return r(e,0)},isAsyncFn:eB,isThenable:e=>e&&(Mz(e)||Rz(e))&&Rz(e.then)&&Rz(e.catch)};function rB(e,t,r,n,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),i&&(this.response=i)}tB.inherits(rB,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:tB.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const nB=rB.prototype,iB={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{iB[e]={value:e}})),Object.defineProperties(rB,iB),Object.defineProperty(nB,"isAxiosError",{value:!0}),rB.from=(e,t,r,n,i,o)=>{const a=Object.create(nB);return tB.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),rB.call(a,e.message,t,r,n,i),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};const oB=rB;var aB=r(9673).Buffer;function sB(e){return tB.isPlainObject(e)||tB.isArray(e)}function cB(e){return tB.endsWith(e,"[]")?e.slice(0,-2):e}function lB(e,t,r){return e?e.concat(t).map((function(e,t){return e=cB(e),!r&&t?"["+e+"]":e})).join(r?".":""):t}const uB=tB.toFlatObject(tB,{},null,(function(e){return/^is[A-Z]/.test(e)}));const dB=function(e,t,r){if(!tB.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const n=(r=tB.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!tB.isUndefined(t[e])}))).metaTokens,i=r.visitor||l,o=r.dots,a=r.indexes,s=(r.Blob||"undefined"!==typeof Blob&&Blob)&&tB.isSpecCompliantForm(t);if(!tB.isFunction(i))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(tB.isDate(e))return e.toISOString();if(!s&&tB.isBlob(e))throw new oB("Blob is not supported. Use a Buffer instead.");return tB.isArrayBuffer(e)||tB.isTypedArray(e)?s&&"function"===typeof Blob?new Blob([e]):aB.from(e):e}function l(e,r,i){let s=e;if(e&&!i&&"object"===typeof e)if(tB.endsWith(r,"{}"))r=n?r:r.slice(0,-2),e=JSON.stringify(e);else if(tB.isArray(e)&&function(e){return tB.isArray(e)&&!e.some(sB)}(e)||(tB.isFileList(e)||tB.endsWith(r,"[]"))&&(s=tB.toArray(e)))return r=cB(r),s.forEach((function(e,n){!tB.isUndefined(e)&&null!==e&&t.append(!0===a?lB([r],n,o):null===a?r:r+"[]",c(e))})),!1;return!!sB(e)||(t.append(lB(i,r,o),c(e)),!1)}const u=[],d=Object.assign(uB,{defaultVisitor:l,convertValue:c,isVisitable:sB});if(!tB.isObject(e))throw new TypeError("data must be an object");return function e(r,n){if(!tB.isUndefined(r)){if(-1!==u.indexOf(r))throw Error("Circular reference detected in "+n.join("."));u.push(r),tB.forEach(r,(function(r,o){!0===(!(tB.isUndefined(r)||null===r)&&i.call(t,r,tB.isString(o)?o.trim():o,n,d))&&e(r,n?n.concat(o):[o])})),u.pop()}}(e),t};function hB(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function fB(e,t){this._pairs=[],e&&dB(e,this,t)}const pB=fB.prototype;pB.append=function(e,t){this._pairs.push([e,t])},pB.toString=function(e){const t=e?function(t){return e.call(this,t,hB)}:hB;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const mB=fB;function gB(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function vB(e,t,r){if(!t)return e;const n=r&&r.encode||gB,i=r&&r.serialize;let o;if(o=i?i(t,r):tB.isURLSearchParams(t)?t.toString():new mB(t,r).toString(n),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}const yB=class{constructor(){this.handlers=[]}use(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){tB.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},bB={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},wB={isBrowser:!0,classes:{URLSearchParams:"undefined"!==typeof URLSearchParams?URLSearchParams:mB,FormData:"undefined"!==typeof FormData?FormData:null,Blob:"undefined"!==typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},xB="undefined"!==typeof window&&"undefined"!==typeof document,_B=(kB="undefined"!==typeof navigator&&navigator.product,xB&&["ReactNative","NativeScript","NS"].indexOf(kB)<0);var kB;const SB="undefined"!==typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"===typeof self.importScripts,EB={...e,...wB};const AB=function(e){function t(e,r,n,i){let o=e[i++];if("__proto__"===o)return!0;const a=Number.isFinite(+o),s=i>=e.length;if(o=!o&&tB.isArray(n)?n.length:o,s)return tB.hasOwnProp(n,o)?n[o]=[n[o],r]:n[o]=r,!a;n[o]&&tB.isObject(n[o])||(n[o]=[]);return t(e,r,n[o],i)&&tB.isArray(n[o])&&(n[o]=function(e){const t={},r=Object.keys(e);let n;const i=r.length;let o;for(n=0;n{t(function(e){return tB.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),n,r,0)})),r}return null};const PB={transitional:bB,adapter:["xhr","http"],transformRequest:[function(e,t){const r=t.getContentType()||"",n=r.indexOf("application/json")>-1,i=tB.isObject(e);i&&tB.isHTMLForm(e)&&(e=new FormData(e));if(tB.isFormData(e))return n?JSON.stringify(AB(e)):e;if(tB.isArrayBuffer(e)||tB.isBuffer(e)||tB.isStream(e)||tB.isFile(e)||tB.isBlob(e))return e;if(tB.isArrayBufferView(e))return e.buffer;if(tB.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return dB(e,new EB.classes.URLSearchParams,Object.assign({visitor:function(e,t,r,n){return EB.isNode&&tB.isBuffer(e)?(this.append(t,e.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((o=tB.isFileList(e))||r.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return dB(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return i||n?(t.setContentType("application/json",!1),function(e,t,r){if(tB.isString(e))try{return(t||JSON.parse)(e),tB.trim(e)}catch(n){if("SyntaxError"!==n.name)throw n}return(r||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||PB.transitional,r=t&&t.forcedJSONParsing,n="json"===this.responseType;if(e&&tB.isString(e)&&(r&&!this.responseType||n)){const r=!(t&&t.silentJSONParsing)&&n;try{return JSON.parse(e)}catch(i){if(r){if("SyntaxError"===i.name)throw oB.from(i,oB.ERR_BAD_RESPONSE,this,null,this.response);throw i}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:EB.classes.FormData,Blob:EB.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};tB.forEach(["delete","get","head","post","put","patch"],(e=>{PB.headers[e]={}}));const OB=PB,TB=tB.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),CB=Symbol("internals");function jB(e){return e&&String(e).trim().toLowerCase()}function RB(e){return!1===e||null==e?e:tB.isArray(e)?e.map(RB):String(e)}function IB(e,t,r,n,i){return tB.isFunction(n)?n.call(this,t,r):(i&&(t=r),tB.isString(t)?tB.isString(n)?-1!==t.indexOf(n):tB.isRegExp(n)?n.test(t):void 0:void 0)}class MB{constructor(e){e&&this.set(e)}set(e,t,r){const n=this;function i(e,t,r){const i=jB(t);if(!i)throw new Error("header name must be a non-empty string");const o=tB.findKey(n,i);(!o||void 0===n[o]||!0===r||void 0===r&&!1!==n[o])&&(n[o||t]=RB(e))}const o=(e,t)=>tB.forEach(e,((e,r)=>i(e,r,t)));return tB.isPlainObject(e)||e instanceof this.constructor?o(e,t):tB.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?o((e=>{const t={};let r,n,i;return e&&e.split("\n").forEach((function(e){i=e.indexOf(":"),r=e.substring(0,i).trim().toLowerCase(),n=e.substring(i+1).trim(),!r||t[r]&&TB[r]||("set-cookie"===r?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)})),t})(e),t):null!=e&&i(t,e,r),this}get(e,t){if(e=jB(e)){const r=tB.findKey(this,e);if(r){const e=this[r];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}(e);if(tB.isFunction(t))return t.call(this,e,r);if(tB.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=jB(e)){const r=tB.findKey(this,e);return!(!r||void 0===this[r]||t&&!IB(0,this[r],r,t))}return!1}delete(e,t){const r=this;let n=!1;function i(e){if(e=jB(e)){const i=tB.findKey(r,e);!i||t&&!IB(0,r[i],i,t)||(delete r[i],n=!0)}}return tB.isArray(e)?e.forEach(i):i(e),n}clear(e){const t=Object.keys(this);let r=t.length,n=!1;for(;r--;){const i=t[r];e&&!IB(0,this[i],i,e,!0)||(delete this[i],n=!0)}return n}normalize(e){const t=this,r={};return tB.forEach(this,((n,i)=>{const o=tB.findKey(r,i);if(o)return t[o]=RB(n),void delete t[i];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,r)=>t.toUpperCase()+r))}(i):String(i).trim();a!==i&&delete t[i],t[a]=RB(n),r[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return tB.forEach(this,((r,n)=>{null!=r&&!1!==r&&(t[n]=e&&tB.isArray(r)?r.join(", "):r)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const r=new this(e);return t.forEach((e=>r.set(e))),r}static accessor(e){const t=(this[CB]=this[CB]={accessors:{}}).accessors,r=this.prototype;function n(e){const n=jB(e);t[n]||(!function(e,t){const r=tB.toCamelCase(" "+t);["get","set","has"].forEach((n=>{Object.defineProperty(e,n+r,{value:function(e,r,i){return this[n].call(this,t,e,r,i)},configurable:!0})}))}(r,e),t[n]=!0)}return tB.isArray(e)?e.forEach(n):n(e),this}}MB.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),tB.reduceDescriptors(MB.prototype,(({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[r]=e}}})),tB.freezeMethods(MB);const LB=MB;function NB(e,t){const r=this||OB,n=t||r,i=LB.from(n.headers);let o=n.data;return tB.forEach(e,(function(e){o=e.call(r,o,i.normalize(),t?t.status:void 0)})),i.normalize(),o}function DB(e){return!(!e||!e.__CANCEL__)}function zB(e,t,r){oB.call(this,null==e?"canceled":e,oB.ERR_CANCELED,t,r),this.name="CanceledError"}tB.inherits(zB,oB,{__CANCEL__:!0});const BB=zB;const FB=EB.hasStandardBrowserEnv?{write(e,t,r,n,i,o){const a=[e+"="+encodeURIComponent(t)];tB.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),tB.isString(n)&&a.push("path="+n),tB.isString(i)&&a.push("domain="+i),!0===o&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function UB(e,t){return e&&!function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const $B=EB.hasStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let r;function n(r){let n=r;return e&&(t.setAttribute("href",n),n=t.href),t.setAttribute("href",n),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return r=n(window.location.href),function(e){const t=tB.isString(e)?n(e):e;return t.protocol===r.protocol&&t.host===r.host}}():function(){return!0};const HB=function(e,t){e=e||10;const r=new Array(e),n=new Array(e);let i,o=0,a=0;return t=void 0!==t?t:1e3,function(s){const c=Date.now(),l=n[a];i||(i=c),r[o]=s,n[o]=c;let u=a,d=0;for(;u!==o;)d+=r[u++],u%=e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),c-i{const o=i.loaded,a=i.lengthComputable?i.total:void 0,s=o-r,c=n(s);r=o;const l={loaded:o,total:a,progress:a?o/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&o<=a?(a-o)/c:void 0,event:i};l[t?"download":"upload"]=!0,e(l)}}const qB="undefined"!==typeof XMLHttpRequest&&function(e){return new Promise((function(t,r){let n=e.data;const i=LB.from(e.headers).normalize();let o,a,{responseType:s,withXSRFToken:c}=e;function l(){e.cancelToken&&e.cancelToken.unsubscribe(o),e.signal&&e.signal.removeEventListener("abort",o)}if(tB.isFormData(n))if(EB.hasStandardBrowserEnv||EB.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if(!1!==(a=i.getContentType())){const[e,...t]=a?a.split(";").map((e=>e.trim())).filter(Boolean):[];i.setContentType([e||"multipart/form-data",...t].join("; "))}let u=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",r=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(t+":"+r))}const d=UB(e.baseURL,e.url);function h(){if(!u)return;const n=LB.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders());!function(e,t,r){const n=r.config.validateStatus;r.status&&n&&!n(r.status)?t(new oB("Request failed with status code "+r.status,[oB.ERR_BAD_REQUEST,oB.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):e(r)}((function(e){t(e),l()}),(function(e){r(e),l()}),{data:s&&"text"!==s&&"json"!==s?u.response:u.responseText,status:u.status,statusText:u.statusText,headers:n,config:e,request:u}),u=null}if(u.open(e.method.toUpperCase(),vB(d,e.params,e.paramsSerializer),!0),u.timeout=e.timeout,"onloadend"in u?u.onloadend=h:u.onreadystatechange=function(){u&&4===u.readyState&&(0!==u.status||u.responseURL&&0===u.responseURL.indexOf("file:"))&&setTimeout(h)},u.onabort=function(){u&&(r(new oB("Request aborted",oB.ECONNABORTED,e,u)),u=null)},u.onerror=function(){r(new oB("Network Error",oB.ERR_NETWORK,e,u)),u=null},u.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const n=e.transitional||bB;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),r(new oB(t,n.clarifyTimeoutError?oB.ETIMEDOUT:oB.ECONNABORTED,e,u)),u=null},EB.hasStandardBrowserEnv&&(c&&tB.isFunction(c)&&(c=c(e)),c||!1!==c&&$B(d))){const t=e.xsrfHeaderName&&e.xsrfCookieName&&FB.read(e.xsrfCookieName);t&&i.set(e.xsrfHeaderName,t)}void 0===n&&i.setContentType(null),"setRequestHeader"in u&&tB.forEach(i.toJSON(),(function(e,t){u.setRequestHeader(t,e)})),tB.isUndefined(e.withCredentials)||(u.withCredentials=!!e.withCredentials),s&&"json"!==s&&(u.responseType=e.responseType),"function"===typeof e.onDownloadProgress&&u.addEventListener("progress",VB(e.onDownloadProgress,!0)),"function"===typeof e.onUploadProgress&&u.upload&&u.upload.addEventListener("progress",VB(e.onUploadProgress)),(e.cancelToken||e.signal)&&(o=t=>{u&&(r(!t||t.type?new BB(null,e,u):t),u.abort(),u=null)},e.cancelToken&&e.cancelToken.subscribe(o),e.signal&&(e.signal.aborted?o():e.signal.addEventListener("abort",o)));const f=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(d);f&&-1===EB.protocols.indexOf(f)?r(new oB("Unsupported protocol "+f+":",oB.ERR_BAD_REQUEST,e)):u.send(n||null)}))},KB={http:null,xhr:qB};tB.forEach(KB,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(r){}Object.defineProperty(e,"adapterName",{value:t})}}));const WB=e=>`- ${e}`,GB=e=>tB.isFunction(e)||null===e||!1===e,ZB=e=>{e=tB.isArray(e)?e:[e];const{length:t}=e;let r,n;const i={};for(let o=0;o`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let r=t?e.length>1?"since :\n"+e.map(WB).join("\n"):" "+WB(e[0]):"as no adapter specified";throw new oB("There is no suitable adapter to dispatch the request "+r,"ERR_NOT_SUPPORT")}return n};function YB(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new BB(null,e)}function XB(e){YB(e),e.headers=LB.from(e.headers),e.data=NB.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return ZB(e.adapter||OB.adapter)(e).then((function(t){return YB(e),t.data=NB.call(e,e.transformResponse,t),t.headers=LB.from(t.headers),t}),(function(t){return DB(t)||(YB(e),t&&t.response&&(t.response.data=NB.call(e,e.transformResponse,t.response),t.response.headers=LB.from(t.response.headers))),Promise.reject(t)}))}const JB=e=>e instanceof LB?e.toJSON():e;function QB(e,t){t=t||{};const r={};function n(e,t,r){return tB.isPlainObject(e)&&tB.isPlainObject(t)?tB.merge.call({caseless:r},e,t):tB.isPlainObject(t)?tB.merge({},t):tB.isArray(t)?t.slice():t}function i(e,t,r){return tB.isUndefined(t)?tB.isUndefined(e)?void 0:n(void 0,e,r):n(e,t,r)}function o(e,t){if(!tB.isUndefined(t))return n(void 0,t)}function a(e,t){return tB.isUndefined(t)?tB.isUndefined(e)?void 0:n(void 0,e):n(void 0,t)}function s(r,i,o){return o in t?n(r,i):o in e?n(void 0,r):void 0}const c={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(e,t)=>i(JB(e),JB(t),!0)};return tB.forEach(Object.keys(Object.assign({},e,t)),(function(n){const o=c[n]||i,a=o(e[n],t[n],n);tB.isUndefined(a)&&o!==s||(r[n]=a)})),r}const eF="1.6.7",tF={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{tF[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}}));const rF={};tF.transitional=function(e,t,r){function n(e,t){return"[Axios v1.6.7] Transitional option '"+e+"'"+t+(r?". "+r:"")}return(r,i,o)=>{if(!1===e)throw new oB(n(i," has been removed"+(t?" in "+t:"")),oB.ERR_DEPRECATED);return t&&!rF[i]&&(rF[i]=!0,console.warn(n(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,i,o)}};const nF={assertOptions:function(e,t,r){if("object"!==typeof e)throw new oB("options must be an object",oB.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let i=n.length;for(;i-- >0;){const o=n[i],a=t[o];if(a){const t=e[o],r=void 0===t||a(t,o,e);if(!0!==r)throw new oB("option "+o+" must be "+r,oB.ERR_BAD_OPTION_VALUE)}else if(!0!==r)throw new oB("Unknown option "+o,oB.ERR_BAD_OPTION)}},validators:tF},iF=nF.validators;class oF{constructor(e){this.defaults=e,this.interceptors={request:new yB,response:new yB}}async request(e,t){try{return await this._request(e,t)}catch(Tie){if(Tie instanceof Error){let t;Error.captureStackTrace?Error.captureStackTrace(t={}):t=new Error;const r=t.stack?t.stack.replace(/^.+\n/,""):"";Tie.stack?r&&!String(Tie.stack).endsWith(r.replace(/^.+\n.+\n/,""))&&(Tie.stack+="\n"+r):Tie.stack=r}throw Tie}}_request(e,t){"string"===typeof e?(t=t||{}).url=e:t=e||{},t=QB(this.defaults,t);const{transitional:r,paramsSerializer:n,headers:i}=t;void 0!==r&&nF.assertOptions(r,{silentJSONParsing:iF.transitional(iF.boolean),forcedJSONParsing:iF.transitional(iF.boolean),clarifyTimeoutError:iF.transitional(iF.boolean)},!1),null!=n&&(tB.isFunction(n)?t.paramsSerializer={serialize:n}:nF.assertOptions(n,{encode:iF.function,serialize:iF.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&tB.merge(i.common,i[t.method]);i&&tB.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete i[e]})),t.headers=LB.concat(o,i);const a=[];let s=!0;this.interceptors.request.forEach((function(e){"function"===typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const c=[];let l;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let u,d=0;if(!s){const e=[XB.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,c),u=e.length,l=Promise.resolve(t);d{if(!r._listeners)return;let t=r._listeners.length;for(;t-- >0;)r._listeners[t](e);r._listeners=null})),this.promise.then=e=>{let t;const n=new Promise((e=>{r.subscribe(e),t=e})).then(e);return n.cancel=function(){r.unsubscribe(t)},n},e((function(e,n,i){r.reason||(r.reason=new BB(e,n,i),t(r.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;const t=new sF((function(t){e=t}));return{token:t,cancel:e}}}const cF=sF;const lF={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(lF).forEach((([e,t])=>{lF[t]=e}));const uF=lF;const dF=function e(t){const r=new aF(t),n=_z(aF.prototype.request,r);return tB.extend(n,aF.prototype,r,{allOwnKeys:!0}),tB.extend(n,r,null,{allOwnKeys:!0}),n.create=function(r){return e(QB(t,r))},n}(OB);dF.Axios=aF,dF.CanceledError=BB,dF.CancelToken=cF,dF.isCancel=DB,dF.VERSION=eF,dF.toFormData=dB,dF.AxiosError=oB,dF.Cancel=dF.CanceledError,dF.all=function(e){return Promise.all(e)},dF.spread=function(e){return function(t){return e.apply(null,t)}},dF.isAxiosError=function(e){return tB.isObject(e)&&!0===e.isAxiosError},dF.mergeConfig=QB,dF.AxiosHeaders=LB,dF.formToJSON=e=>AB(tB.isHTMLForm(e)?new FormData(e):e),dF.getAdapter=ZB,dF.HttpStatusCode=uF,dF.default=dF;const hF=dF;class fF{constructor(e,t){this.pk=void 0,this.pkh=void 0,this.pk=e,this.pkh=t}async publicKey(){return Promise.resolve(this.pk)}async publicKeyHash(){return Promise.resolve(this.pkh)}async sign(){return Promise.reject(new Error("`sign` method not available"))}async secretKey(){return Promise.reject(new Error("empty secret key"))}}const pF=[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]}],mF=(e,t,r)=>vF(e,t,{int:r}),gF=(e,t)=>{const r=bF(t);return vF(e,"propose",r)},vF=(e,t,r,n="0")=>({type:"contract_call",contract:e,entrypoint:t,args:r,amount:n}),yF=e=>(0,Db.isEqual)(e.slice(0,2),pF)?e.slice(2):e,bF=e=>{const t=e.map((e=>(e=>{switch(e.type){case"tez":switch(e.recipient.type){case"implicit":return kD(e.recipient.pkh,Number(e.amount));case"contract":return SD(e.recipient.pkh,Number(e.amount))}case"fa1.2":return _F(e,xF,kF(e));case"fa2":return _F(e,wF,SF(e));case"delegation":return xD(e.recipient.pkh);case"undelegation":return _D();case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}})(e))).flatMap(yF);return[...pF,...t]},wF={args:[{args:[{annots:["%from_"],prim:"address"},{annots:["%txs"],args:[{args:[{annots:["%to_"],prim:"address"},{args:[{annots:["%token_id"],prim:"nat"},{annots:["%amount"],prim:"nat"}],prim:"pair"}],prim:"pair"}],prim:"list"}],prim:"pair"}],prim:"list"},xF={args:[{annots:[":from"],prim:"address"},{args:[{annots:[":to"],prim:"address"},{annots:[":value"],prim:"nat"}],prim:"pair"}],prim:"pair"},_F=(e,t,r)=>[...pF,{prim:"PUSH",args:[{prim:"address"},{string:e.contract.pkh+"%"+r.entrypoint}]},{prim:"CONTRACT",args:[t]},[{prim:"IF_NONE",args:[[{prim:"UNIT"},{prim:"FAILWITH"}],[]]}],{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"PUSH",args:[t,r.value]},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}],kF=({sender:e,recipient:t,amount:r})=>({entrypoint:"transfer",value:{prim:"Pair",args:[{string:e.pkh},{prim:"Pair",args:[{string:t.pkh},{int:r}]}]}}),SF=({sender:e,recipient:t,tokenId:r,amount:n})=>({entrypoint:"transfer",value:[{prim:"Pair",args:[{string:e.pkh},[{prim:"Pair",args:[{string:t.pkh},{prim:"Pair",args:[{int:r},{int:n}]}]}]]}]}),EF=async(e,t)=>{try{const r=`${t.tzktApiUrl}/v1/accounts/${e}`,{data:{type:n}}=await hF.get(r);return"empty"!==n}catch(r){throw new Error(`Error fetching account from tzkt ${r.message}`)}},AF=async e=>{const t=(new TextEncoder).encode(e),r=await crypto.subtle.digest("SHA-256",t),n=Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("").slice(0,8);return n},PF=async e=>{switch(e.type){case"social":case"mnemonic":case"secret_key":return new pO(e.secretKey);case"ledger":{const t=await aP.list();for(let e=0;e{switch(e){case"ed25519":return gP.ED25519;case"secp256k1":return gP.SECP256K1;case"p256":return gP.P256;case"bip25519":throw new Error("bip25519 is not supported in Tezos")}})(e.account.curve))}case"fake":return new fF(e.signer.pk,e.signer.address.pkh)}},OF=async e=>{const t=new xz(e.network.rpcUrl),r=await PF(e);return t.setSignerProvider(r),t},TF=async e=>{const t=new pO(e);return{pk:await t.publicKey(),pkh:await t.publicKeyHash()}},CF=async(e,t,r="ed25519")=>jF(e,t,r).then(TF),jF=(e,t,r)=>pO.fromMnemonic({mnemonic:e,derivationPath:t,curve:r}).secretKey(),RF=e=>{switch(e.type){case"tez":return{kind:UP.TRANSACTION,to:e.recipient.pkh,amount:parseInt(e.amount),mutez:!0};case"contract_call":return{kind:UP.TRANSACTION,to:e.contract.pkh,amount:parseInt(e.amount),mutez:!0,parameter:{entrypoint:e.entrypoint,value:e.args}};case"delegation":return{kind:UP.DELEGATION,source:e.sender.pkh,delegate:e.recipient.pkh};case"undelegation":return{kind:UP.DELEGATION,source:e.sender.pkh,delegate:void 0};case"fa1.2":return{kind:UP.TRANSACTION,amount:0,to:e.contract.pkh,parameter:kF(e)};case"fa2":return{kind:UP.TRANSACTION,amount:0,to:e.contract.pkh,parameter:SF(e)};case"contract_origination":return{kind:UP.ORIGINATION,...e}}},IF=({type:e,operations:t,sender:r})=>("implicit"===e?t:[gF(r.address,t)]).map(RF),MF=IF,LF=async(e,t)=>{const r=await OF({type:"fake",signer:e.signer,network:t});try{const t=await r.estimate.batch(IF(e));return n=t.map((e=>Math.max(e.suggestedFeeMutez,e.totalCost).toString())),n.reduce(((e,t)=>e.plus(t)),new nw(0))}catch(Tie){if(!await EF(e.signer.address.pkh,t))throw new Error(`Signer address is not revealed on the ${t.name}.`);throw Tie instanceof Error&&(Tie.message=NF(Tie)),Tie}var n},NF=e=>e.message.includes("subtraction_underflow")?"Insufficient balance, please make sure you have enough funds.":e.message.includes("contract.non_existing_contract")?"Contract does not exist, please check if the correct network is selected.":e.message;class DF{constructor(e){this.queue=void 0,this.maxConcurrent=void 0,this.count=void 0,this.queue=[],this.maxConcurrent=e,this.count=0}get canAcquire(){return this.countthis.queue.push(e)))}release(){const e=this.queue.shift();e?setTimeout(e,0):this.count--}}const zF="_default";const BF=[encodeURIComponent,encodeURIComponent];encodeURIComponent,encodeURI;function FF(e,t=","){return(r,...n)=>r.reduce(((r,i,o)=>`${r}${i}${((r,n)=>{const i=e[n%e.length];if("undefined"===typeof r)return"";if("object"===typeof r)return Array.isArray(r)?r.map(i).join(t):Object.entries(r).reduce(((e,t)=>[...e,...t]),[]).map(i).join(t);return i(String(r))})(n[o],o)}`),"")}function UF(e=","){return(t,r=BF)=>Object.entries(t).filter((([,e])=>void 0!==e)).map((([t,n])=>FF(r,e)`${t}=${n}`)).join("&")}function $F(...e){const t=e.filter(Boolean).join("&");return t&&`?${t}`}function HF(e,t=BF){const r=FF(t);return Object.entries(e).filter((([,e])=>void 0!==e)).map((([e,n])=>Array.isArray(n)?n.map((t=>r`${e}=${t}`)).join("&"):"object"===typeof n?HF(n,t):r`${e}=${n}`)).join("&")}const VF=UF();UF("|"),UF("%20");const qF=[200,201,202,204];async function KF(e){const t=await e;if(qF.some((e=>e==t.status)))return t.data;throw new WF(t.status,t.data)}class WF extends Error{status;data;constructor(e,t){super(`Error: ${e}`),this.status=e,this.data=t}}const GF={jsonParameter:(e,t)=>{if(!t)return{};const r={};return Object.entries(t).forEach((([t,n])=>{if(!(n instanceof Object))throw new Error(`Expected ${e} value to be object, received ${typeof n}`);const{jsonPath:i,jsonValue:o}=n;if(void 0===o||null===o)throw new Error(`Expected jsonValue in ${e} -> ${t}, found: ${o}`);const a=[e,i,t].filter((e=>void 0!==e)).join(".");r[a]=o})),r},queryParameter:(e,t)=>{if(!t)return{};const r={};return Object.entries(t).forEach((([t,n])=>{r[`${e}.${t}`]=n})),r},anyofParameter:(e,t)=>{if(!t)return{};const{fields:r}=t;if(!(t=>{if(!Array.isArray(t))throw new Error(`Expected ${e} fields to be Array. Received ${typeof t}.`);return t.forEach((t=>{if("string"!==typeof t)throw new Error(`Expected ${e} fields to be strings. Received ${typeof t}`)})),!0})(r))return{};const n={},i=r.join(".");if(t.value){n[`${e}.${i}`]=t.value}for(const o of["in","eq","null"])if(t[o]){return n[`${e}.${i}.${o}`]=Array.isArray(t[o])?t[o].join(","):t[o],n}return n}},ZF=GF,YF=function(e){async function t(e,t){const n=await r(e,t);let i;try{i=await n.text()}catch(Tie){}return{status:n.status,headers:n.headers,contentType:n.headers.get("content-type"),data:i}}async function r(t,r={}){const{baseUrl:n,headers:i,fetch:o,...a}={...e,...r},s=function(...e){return e.filter(Boolean).map(((e,t)=>0===t?e:e.replace(/^\/+/,""))).map(((e,t,r)=>t===r.length-1?e:e.replace(/\/+$/,""))).join("/")}(n,t);var c;return await(o||fetch)(s,{...a,headers:(c={...e.headers,...i},c&&JSON.parse(JSON.stringify(c)))})}return{ok:KF,fetchText:t,fetchJson:async function(e,r={}){const{status:n,headers:i,contentType:o,data:a}=await t(e,{...r,headers:{Accept:"application/json",...r.headers}});return!!o&&o.includes("json")?{status:n,headers:i,data:a?JSON.parse(a):null}:{status:n,headers:i,data:a}},fetchBlob:async function(e,t={}){const n=await r(e,t);let i;try{i=await n.blob()}catch(Tie){}return{status:n.status,headers:n.headers,data:i}},json:({body:e,headers:t,...r})=>({...r,...null!=e&&{body:JSON.stringify(e)},headers:{...t,"Content-Type":"application/json"}}),form:({body:e,headers:t,...r})=>({...r,...null!=e&&{body:VF(e)},headers:{...t,"Content-Type":"application/x-www-form-urlencoded"}}),multipart({body:t,...r}){if(null==t)return r;const n=new(e.formDataConstructor||r.formDataConstructor||FormData);return Object.entries(t).forEach((([e,t])=>{n.append(e,t)})),{...r,body:n}}}}({baseUrl:"https://api.tzkt.io"});function XF({id:e,level:t,timestamp:r,tokenId:n,tokenContract:i,tokenTokenId:o,tokenStandard:a,tokenMetadata:s,tokenHasFilters:c,anyof:l,$from:u,to:d,amount:h,transactionId:f,originationId:p,migrationId:m,indexedAt:g,sort:v,offset:y,limit:b,select:w}={},x){return YF.ok(YF.fetchJson(`/v1/tokens/transfers${$F(HF({"token.HasFilters":c,limit:b,...ZF.queryParameter("id",e),...ZF.queryParameter("level",t),...ZF.queryParameter("timestamp",r),...ZF.queryParameter("token.id",n),...ZF.queryParameter("token.contract",i),...ZF.queryParameter("token.tokenId",o),...ZF.queryParameter("token.standard",a),...ZF.jsonParameter("token.metadata",s),...ZF.anyofParameter("anyof",l),...ZF.queryParameter("from",u),...ZF.queryParameter("to",d),...ZF.queryParameter("amount",h),...ZF.queryParameter("transactionId",f),...ZF.queryParameter("originationId",p),...ZF.queryParameter("migrationId",m),...ZF.queryParameter("indexedAt",g),...ZF.queryParameter("sort",v),...ZF.queryParameter("offset",y),...ZF.queryParameter("select",w)}))}`,{...x}))}var JF=r(6811),QF=r.n(JF);const eU=new class{constructor(e=1){this.semaphoreInstances=void 0,this.maxConcurrent=void 0,this.semaphoreInstances={},this.maxConcurrent=e}hasSemaphoreInstance(e=zF){return Boolean(this.semaphoreInstances[e])}getSemaphoreInstance(e=zF){return this.hasSemaphoreInstance(e)||(this.semaphoreInstances[e]=new DF(this.maxConcurrent)),this.semaphoreInstances[e]}tidy(e=zF){this.hasSemaphoreInstance(e)&&0===this.getSemaphoreInstance(e).count&&delete this.semaphoreInstances[e]}canAcquire(e=zF){return this.getSemaphoreInstance(e).canAcquire}acquire(e=zF){return this.getSemaphoreInstance(e).acquire()}release(e=zF){this.getSemaphoreInstance(e).release(),this.tidy(e)}count(e=zF){return this.hasSemaphoreInstance(e)?this.getSemaphoreInstance(e).count:0}hasTasks(e=zF){return this.count(e)>0}async request(e,t=zF){try{return await this.acquire(t),await e()}finally{this.release(t)}}async requestIfAvailable(e,t=zF){return this.canAcquire(t)?this.request(e,t):null}}(10),tU=e=>eU.acquire().then((()=>QF()((t=>e().catch(t)),{retries:3,minTimeout:100}))).catch((e=>{if("status"in e&&"data"in e)throw new Error(`Fetching data from tzkt failed with: ${e.status}, ${e.data}`);throw e})).finally((()=>eU.release())),rU=async(e,t)=>tU((()=>function({id:e,address:t,$type:r,kind:n,delegate:i,balance:o,staked:a,lastActivity:s,select:c,sort:l,offset:u,limit:d}={},h){return YF.ok(YF.fetchJson(`/v1/accounts${$F(HF({limit:d,...ZF.queryParameter("id",e),...ZF.queryParameter("address",t),...ZF.queryParameter("type",r),...ZF.queryParameter("kind",n),...ZF.queryParameter("delegate",i),...ZF.queryParameter("balance",o),...ZF.queryParameter("staked",a),...ZF.queryParameter("lastActivity",s),...ZF.queryParameter("select",c),...ZF.queryParameter("sort",l),...ZF.queryParameter("offset",u)}))}`,{...h}))}({address:{in:[e.join(",")]},select:{fields:["address,balance,delegationLevel"]}},{baseUrl:t.tzktApiUrl}))),nU=async(e,t)=>tU((()=>function({id:e,account:t,tokenId:r,tokenContract:n,tokenTokenId:i,tokenStandard:o,tokenMetadata:a,tokenHasFilters:s,balance:c,firstLevel:l,firstTime:u,lastLevel:d,lastTime:h,indexedAt:f,sort:p,offset:m,limit:g,select:v}={},y){return YF.ok(YF.fetchJson(`/v1/tokens/balances${$F(HF({"token.HasFilters":s,limit:g,...ZF.queryParameter("id",e),...ZF.queryParameter("account",t),...ZF.queryParameter("token.id",r),...ZF.queryParameter("token.contract",n),...ZF.queryParameter("token.tokenId",i),...ZF.queryParameter("token.standard",o),...ZF.jsonParameter("token.metadata",a),...ZF.queryParameter("balance",c),...ZF.queryParameter("firstLevel",l),...ZF.queryParameter("firstTime",u),...ZF.queryParameter("lastLevel",d),...ZF.queryParameter("lastTime",h),...ZF.queryParameter("indexedAt",f),...ZF.queryParameter("sort",p),...ZF.queryParameter("offset",m),...ZF.queryParameter("select",v)}))}`,{...y}))}({account:{in:[e.join(",")]},balance:{gt:"0"},limit:1e4},{baseUrl:t.tzktApiUrl}))),iU=async(e,t,r)=>tU((()=>function({anyof:e,initiator:t,sender:r,prevDelegate:n,newDelegate:i,level:o,timestamp:a,senderCodeHash:s,status:c,select:l,sort:u,offset:d,limit:h,quote:f}={},p){return YF.ok(YF.fetchJson(`/v1/operations/delegations${$F(HF({limit:h,quote:f,...ZF.anyofParameter("anyof",e),...ZF.queryParameter("initiator",t),...ZF.queryParameter("sender",r),...ZF.queryParameter("prevDelegate",n),...ZF.queryParameter("newDelegate",i),...ZF.queryParameter("level",o),...ZF.queryParameter("timestamp",a),...ZF.queryParameter("senderCodeHash",s),...ZF.queryParameter("status",c),...ZF.queryParameter("select",l),...ZF.queryParameter("sort",u),...ZF.queryParameter("offset",d)}))}`,{...p}))}({sender:{in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),oU=async(e,t,r)=>tU((()=>function({anyof:e,initiator:t,sender:r,target:n,amount:i,id:o,level:a,timestamp:s,senderCodeHash:c,targetCodeHash:l,codeHash:u,entrypoint:d,parameter:h,hasInternals:f,status:p,select:m,sort:g,offset:v,limit:y,micheline:b,quote:w}={},x){return YF.ok(YF.fetchJson(`/v1/operations/transactions${$F(HF({limit:y,micheline:b,quote:w,...ZF.anyofParameter("anyof",e),...ZF.queryParameter("initiator",t),...ZF.queryParameter("sender",r),...ZF.queryParameter("target",n),...ZF.queryParameter("amount",i),...ZF.queryParameter("id",o),...ZF.queryParameter("level",a),...ZF.queryParameter("timestamp",s),...ZF.queryParameter("senderCodeHash",c),...ZF.queryParameter("targetCodeHash",l),...ZF.queryParameter("codeHash",u),...ZF.queryParameter("entrypoint",d),...ZF.jsonParameter("parameter",h),...ZF.queryParameter("hasInternals",f),...ZF.queryParameter("status",p),...ZF.queryParameter("select",m),...ZF.queryParameter("sort",g),...ZF.queryParameter("offset",v)}))}`,{...x}))}({anyof:{fields:["sender","target","initiator"],in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),aU=async(e,t,r)=>tU((()=>function({anyof:e,initiator:t,sender:r,contractManager:n,contractDelegate:i,originatedContract:o,id:a,typeHash:s,codeHash:c,level:l,timestamp:u,senderCodeHash:d,anyCodeHash:h,status:f,select:p,sort:m,offset:g,limit:v,micheline:y,quote:b}={},w){return YF.ok(YF.fetchJson(`/v1/operations/originations${$F(HF({limit:v,micheline:y,quote:b,...ZF.anyofParameter("anyof",e),...ZF.queryParameter("initiator",t),...ZF.queryParameter("sender",r),...ZF.queryParameter("contractManager",n),...ZF.queryParameter("contractDelegate",i),...ZF.queryParameter("originatedContract",o),...ZF.queryParameter("id",a),...ZF.queryParameter("typeHash",s),...ZF.queryParameter("codeHash",c),...ZF.queryParameter("level",l),...ZF.queryParameter("timestamp",u),...ZF.queryParameter("senderCodeHash",d),...ZF.queryParameter("anyCodeHash",h),...ZF.queryParameter("status",f),...ZF.queryParameter("select",p),...ZF.queryParameter("sort",m),...ZF.queryParameter("offset",g)}))}`,{...w}))}({sender:{in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),sU=async(e,t,r)=>tU((async()=>(await XF({anyof:{fields:["from","to"],in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl})).map((e=>({...e,type:"token_transfer"}))))),cU=async e=>tU((async()=>{return await(t={baseUrl:e.tzktApiUrl},YF.ok(YF.fetchJson("/v1/blocks/count",{...t})));var t})),lU=async e=>tU((()=>function({active:e,lastActivity:t,select:r,sort:n,offset:i,limit:o}={},a){return YF.ok(YF.fetchJson(`/v1/delegates${$F(HF({limit:o,...ZF.queryParameter("active",e),...ZF.queryParameter("lastActivity",t),...ZF.queryParameter("select",r),...ZF.queryParameter("sort",n),...ZF.queryParameter("offset",i)}))}`,{...a}))}({sort:{desc:"stakingBalance"},active:{eq:!0},limit:1e4,select:{fields:["address,alias,stakingBalance"]}},{baseUrl:e.tzktApiUrl}))),uU=async(e,t)=>{const r=MF(e);return t.wallet.batch(r).send()},dU=(e,t)=>e.length>t?e.slice(0,t-3)+"...":e,hU=e=>SE("tz","mutez",e),fU=e=>SE("mutez","tz",e),pU=e=>{const t=nw(fU(e)).toNumber();return`${new Intl.NumberFormat("en-US",{minimumFractionDigits:6,maximumFractionDigits:6}).format(t)} \ua729`},mU=e=>`${e.slice(0,5)}...${e.slice(-5)}`,gU=e=>{const t=ow((e=>e.assets.blockLevel));return null!==t?t-e>=2:null},vU=()=>{const e=wU(),t=ow((e=>e.assets.balances.tokens)),r=Object.keys(t);return(0,Db.fromPairs)(r.map((t=>[t,e(t)])))},yU=()=>{const e=d_(),t=ow((e=>e.assets.balances.tokens));return r=>{const n=t[r]||[];return(0,Db.compact)(n.map((({contract:t,tokenId:r,...n})=>{const i=e(t,r);return i&&{...i,...n}})))}},bU=()=>{const e=(()=>{const e=yU();return t=>e(t).filter((e=>"fa1.2"===e.type))})(),t=(()=>{const e=yU();return t=>e(t).filter((e=>"fa2"===e.type))})();return r=>[...e(r),...t(r)]},wU=()=>{const e=yU();return t=>e(t).filter((e=>"nft"===e.type))},xU=()=>{const e=ow((e=>e.assets.conversionRate));return t=>null===e?null:new rw(t).multipliedBy(e).decimalPlaces(2,rw.ROUND_UP)},_U=()=>{const e=ow((e=>e.assets.balances.mutez));return t=>e[t]},kU=()=>ow((e=>e.assets.bakers)),SU=(e,t)=>Object.values(e).map((e=>e.name)).includes(t),EU=()=>ow((e=>e.contacts)),AU=()=>{const e=EU();return{addressExistsInContacts:t=>t in e,nameExistsInContacts:t=>SU(e,t)}},PU=()=>{const e=EU();return t=>t in e?e[t].name:void 0},OU=()=>{const e=ow((e=>e.multisigs.pendingOperations));return t=>{var r;return[...null!==(r=e[t.pendingOperationsBigmapId])&&void 0!==r?r:[]].sort(((e,t)=>Number(t.id)-Number(e.id)))}},TU="AES-GCM";var CU=r(9673).Buffer;const jU=async(e,t)=>RU(CU.from(e,"utf-8"),t,6e5),RU=async(e,t,r)=>{const n={name:"PBKDF2",salt:t,iterations:r,hash:"SHA-256"},i=await crypto.subtle.importKey("raw",e,n.name,!1,["deriveKey"]);return await crypto.subtle.deriveKey(n,i,{name:TU,length:256},!1,["encrypt","decrypt"])};var IU=r(9673).Buffer;const MU=async(e,t)=>{const r=crypto.getRandomValues(new Uint8Array(32)),n=await jU(t,r),i=crypto.getRandomValues(new Uint8Array(12)),o=await crypto.subtle.encrypt({name:TU,iv:i},n,IU.from(e,"utf-8"));return{iv:jE(IU.from(i)),salt:jE(IU.from(r)),data:jE(IU.from(o))}},LU=async(e,t,r="V2")=>{const{iv:n,salt:i,data:o}=e;try{const e="V2"===r?await jU(t,RE(i)):await(async(e,t)=>RU(CU.alloc(32,e,"utf-8"),t,1e4))(t,RE(i)),a=await crypto.subtle.decrypt({name:TU,iv:RE(n)},e,RE(o));return IU.from(a).toString("utf-8")}catch(a){throw new Error("Error decrypting data: Invalid password")}},NU=()=>ow((e=>e.accounts.seedPhrases)),DU=()=>ow((e=>e.accounts.secretKeys)),zU=()=>ow((e=>e.accounts.items)),BU=()=>{const e=zU();return t=>e.find((e=>e.address.pkh===t))},FU=()=>{const e=BU();return t=>{const r=e(t);if(!r)throw new Error(`Unknown account: ${t}`);return r}},UU=()=>{const e=zU(),t=ow((e=>e.multisigs.items));return[...e,...t]},$U=()=>{const e=UU().map((e=>e.label)),t=Object.values(EU()).map((e=>e.name));return r=>![...e,...t].includes(r)},HU=()=>{const e=$U();return(t,r=1)=>{const n=[];for(let i=1;n.length{const e=UU();return t=>e.find((e=>e.address.pkh===t))},qU=()=>{const e=VU();return t=>{const r=e(t);if(!r)throw new Error(`Unknown account: ${t}`);return r}},KU=e=>UU().map((e=>e.address.pkh)).includes(e),WU=()=>{const e=(()=>{const e=zU();return t=>{const r=e.filter((e=>t.signers.some((t=>t.pkh===e.address.pkh))));return 0===r.length&&console.warn("Wallet doesn't own any signers for multisig contract "+t.address.pkh),r}})();return t=>{switch(t.type){case"ledger":case"mnemonic":case"social":case"secret_key":return[t];case"multisig":return e(t)}}},GU=()=>{const e=WU(),t=ZU();return r=>t(e(r))},ZU=()=>{const e=_U();return t=>(0,Db.maxBy)(t,(t=>Number(e(t.address.pkh)||"0")))},YU="44'/1729'/?'/0'",XU={label:"Default - m/44'/1729'/?'/0'",value:YU},JU=[XU,{label:"m/44'/1729'/0'/?'",value:"44'/1729'/0'/?'"},{label:"m/44'/1729'/?'/0'/0'",value:"44'/1729'/?'/0'/0'"},{label:"m/44'/1729'/0'/0'/?'",value:"44'/1729'/0'/0'/?'"}],QU=(e,t)=>e.replace("?",t.toString()),e$=(e,t,r,n,i,o)=>({curve:"ed25519",derivationPath:r,derivationPathPattern:n,pk:e,address:FE(t),seedFingerPrint:i,label:o,type:"mnemonic"}),t$=()=>{const e=HU();return async(t,r,n,i)=>{const o=await(async(e,t,r)=>{const n=[];let i=0,o=await CF(e,QU(t,i));do{n.push(o),i+=1,o=await CF(e,QU(t,i))}while(await EF(o.pkh,r));return n})(t,n,r),a=await AF(t),s=e(i,o.length);return o.map((({pk:e,pkh:t},r)=>e$(e,t,QU(n,r),n,a,s[r])))}},r$=Xx("accounts/changeMnemonicPassword",(async({currentPassword:e,newPassword:t},{getState:r})=>{if(e===t)throw new Error("New password must be different from the current password");const{items:n,seedPhrases:i}=r().accounts;if(0===n.filter((e=>"mnemonic"===e.type)).length)throw new Error("No mnemonic accounts found");const o=await Promise.all(Object.entries(i).map((async([r,n])=>{if(!n)throw new Error("No encrypted mnemonic found");try{const i=await LU(n,e);return[r,await MU(i,t)]}catch(Tie){throw new Error(Tie.message)}})));return{newEncryptedMnemonics:(0,Db.fromPairs)(o)}})),n$={items:[],seedPhrases:{},secretKeys:{}},i$=qx({name:"accounts",initialState:n$,extraReducers:e=>{e.addCase(r$.fulfilled,((e,t)=>{const{newEncryptedMnemonics:r}=t.payload;e.seedPhrases=r}))},reducers:{reset:()=>n$,removeMnemonicAndAccounts:(e,{payload:t})=>{const{fingerPrint:r}=t,n=e.items.filter((e=>!("mnemonic"===e.type&&e.seedFingerPrint===r)));e.items=n,delete e.seedPhrases[r]},removeNonMnemonicAccounts:(e,{payload:t})=>{e.items=(0,Db.remove)(e.items,(e=>"mnemonic"===e.type||e.type!==t.accountType))},removeAccount:(e,{payload:t})=>{(0,Db.remove)(e.items,(e=>e.address.pkh===t.address.pkh))},renameAccount:(e,{payload:t})=>{const{account:r,newName:n}=t;if(0===n.length)throw new Error("Cannot rename account to an empty name.");if(e.items.find((e=>e.label===n)))throw new Error(`Cannot rename account ${r.address.pkh} to ${n} since the name already exists.`);const i=e.items.find((e=>e.address.pkh===r.address.pkh&&e.label===r.label));i&&(i.label=n)},addAccount:(e,{payload:t})=>{e.items=o$(e.items,[t])},addMnemonicAccounts:(e,{payload:{encryptedMnemonic:t,accounts:r,seedFingerprint:n}})=>{e.items=o$(e.items,r),e.seedPhrases[n]=t},addMockMnemonicAccounts:(e,{payload:t})=>{e.items=o$(e.items,t)},addSecretKey:(e,{payload:{pkh:t,encryptedSecretKey:r}})=>{e.secretKeys[t]=r},removeSecretKey:(e,{payload:t})=>{delete e.secretKeys[t.address.pkh]}}}),o$=(e,t)=>(t.forEach((t=>{if(e.some((e=>e.address.pkh===t.address.pkh)))throw new Error(`Can't add account ${t.address.pkh} in store since it already exists.`)})),[...e,...t]),a$=(i$.actions,e=>{if(e.startsWith(ZS.EDESK)||e.startsWith(ZS.EDSK))return"ed25519";if(e.startsWith(ZS.SPESK)||e.startsWith(ZS.SPSK))return"secp256k1";if(e.startsWith(ZS.P2ESK)||e.startsWith(ZS.P2SK))return"p256";throw new Error("Invalid secret key")}),s$=({secretKey:e,label:t,password:r})=>async n=>{const{account:i,encryptedSecretKey:o}=await(async({secretKey:e,label:t,password:r})=>{const{pk:n,pkh:i}=await TF(e),o=await MU(e,r);return{account:{type:"secret_key",pk:n,label:t,curve:a$(e),address:FE(i)},encryptedSecretKey:o}})({secretKey:e,label:t,password:r});n(i$.actions.addAccount(i)),n(i$.actions.addSecretKey({pkh:i.address.pkh,encryptedSecretKey:o}))},c$=e=>t=>{t(i$.actions.removeSecretKey(e)),t(i$.actions.removeAccount(e))},{addAccount:l$,removeMnemonicAndAccounts:u$,removeNonMnemonicAccounts:d$}=i$.actions,h$=()=>{const e=c_(),t=t$(),r=Lb();return async({mnemonic:n,password:i,derivationPath:o,label:a})=>{const s=await AF(n),c=await t(n,e,o,a),l=await MU(n,i);r(i$.actions.addMnemonicAccounts({seedFingerprint:s,accounts:c,encryptedMnemonic:l}))}},f$=()=>{const e=iw();return(t,r,n,i)=>{e(l$({derivationPath:t,curve:"ed25519",type:"ledger",pk:r,address:{type:"implicit",pkh:n},label:i}))}};var[p$,m$]=Rn({name:"FormErrorStylesContext",errorMessage:"useFormErrorStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),g$=wn(((e,t)=>{const r=qn("FormError",e),n=ht(e),i=Rm();return(null==i?void 0:i.isInvalid)?(0,xn.jsx)(p$,{value:r,children:(0,xn.jsx)(bn.div,{...null==i?void 0:i.getErrorMessageProps(n,t),className:v("chakra-form__error-message",e.className),__css:{display:"flex",alignItems:"center",...r.text}})}):null}));g$.displayName="FormErrorMessage";var v$=wn(((e,t)=>{const r=m$(),n=Rm();if(!(null==n?void 0:n.isInvalid))return null;const i=v("chakra-form__error-icon",e.className);return(0,xn.jsx)(wm,{ref:t,"aria-hidden":!0,...e,__css:r.icon,className:i,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})}));v$.displayName="FormErrorIcon";const y$=({children:e,...t})=>(0,xn.jsxs)(g$,{color:Xv.orange,fontSize:"12px",...t,children:[(0,xn.jsx)(wm,{as:yy,marginRight:"6px"}),e]}),b$="wasabi",w$=()=>{const e=()=>{localStorage.clear(),window.location.reload()},t=Yv({mode:"onBlur"}),{register:r,handleSubmit:n,formState:{isValid:i,errors:o},getValues:a}=t;return(0,xn.jsx)($g,{...t,children:(0,xn.jsxs)("form",{onSubmit:n((()=>{a("check")&&a("confirmationCode")===b$&&e()})),children:[(0,xn.jsx)(km,{}),(0,xn.jsx)(Sm,{marginBottom:"10px",textAlign:"center",children:(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(db,{width:10,height:10,marginBottom:5}),(0,xn.jsx)(ei,{children:"Off-board Wallet"})]})}),(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(Am,{marginBottom:2,color:Xv.gray[400],fontWeight:"bold",textAlign:"center",size:"sm",children:"This will permanently remove any data from this computer."}),(0,xn.jsxs)(Am,{color:Xv.gray[400],textAlign:"center",size:"sm",children:["Please enter \xab ",b$," \xbb to confirm. The accounts are still available to be imported in the future; in order to regain access to your accounts, please make sure that you keep the recovery phrase."]}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(Om,{borderColor:Xv.gray[700],marginY:5}),(0,xn.jsx)(Im,{isInvalid:!!o.check,children:(0,xn.jsx)(pg,{...r("check",{required:!0}),children:(0,xn.jsx)(Am,{marginLeft:2,fontWeight:"bold",children:"I have read the warning and I am certain I want to remove my private keys locally. I also made sure to keep my recovery phrase."})})}),(0,xn.jsx)(Om,{borderColor:Xv.gray[700],marginY:5}),(0,xn.jsxs)(Im,{isInvalid:!!o.confirmationCode,paddingY:5,children:[(0,xn.jsx)(mg,{type:"text",...r("confirmationCode",{required:"Confirmation is required",validate:e=>e===b$||"Confirmation code does not match"}),placeholder:"Enter code word to confirm"}),o.confirmationCode&&(0,xn.jsx)(y$,{children:o.confirmationCode.message})]})]})]}),(0,xn.jsx)(gg,{padding:0,children:(0,xn.jsx)(Xn,{width:"100%",marginBottom:2,isDisabled:!i,size:"lg",type:"submit",variant:"warning",children:"Confirm"})})]})})},x$=()=>{const{isOpen:e,onOpen:t,onClose:r}=si();return{modalElement:(0,xn.jsxs)(lo,{isCentered:!0,isOpen:e,onClose:r,children:[(0,xn.jsx)(Sh,{}),(0,xn.jsx)(ym,{background:Xv.gray[900],children:(0,xn.jsx)(w$,{})})]}),onOpen:t}},_$=({icon:e,size:t,onClick:r=(()=>{})})=>(0,xn.jsx)(Sn,{width:t,height:t,margin:"auto",background:Xv.gray[700],borderRadius:"full",onClick:r,children:(0,xn.jsx)(_n,{height:"100%",children:e})}),k$=({children:e,icon:t,title:r,subtitle:n})=>(0,xn.jsxs)(jn,{maxHeight:"83vh",spacing:0,children:[(0,xn.jsx)(Sn,{marginBottom:"16px",children:(0,xn.jsx)(_$,{icon:t,size:"48px"})}),(0,xn.jsxs)(_n,{flexDirection:"column",width:"340px",marginBottom:"32px",children:[(0,xn.jsx)(ei,{lineHeight:"26px",size:"xl",children:r}),n&&(0,xn.jsx)(Am,{marginTop:"10px",color:Xv.gray[400],lineHeight:"18px",textAlign:"center",size:"sm",children:n})]}),e]}),S$="2.0.3";var E$="persist:",A$="persist/FLUSH",P$="persist/REHYDRATE",O$="persist/PAUSE",T$="persist/PERSIST",C$="persist/PURGE",j$="persist/REGISTER";function R$(e){return R$="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},R$(e)}function I$(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function M$(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function L$(e,t,r,n){n.debug;var i=function(e){for(var t=1;t=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function q$(e,t){var r=void 0!==e.version?e.version:-1,n=(e.debug,void 0===e.stateReconciler?L$:e.stateReconciler),i=e.getStoredState||z$,o=void 0!==e.timeout?e.timeout:5e3,a=null,s=!1,c=!0,l=function(e){return e._persist.rehydrated&&a&&!c&&a.update(e),e};return function(u,d){var h=u||{},f=h._persist,p=V$(h,["_persist"]);if(d.type===T$){var m=!1,g=function(t,r){m||(d.rehydrate(e.key,t,r),m=!0)};if(o&&setTimeout((function(){!m&&g(void 0,new Error('redux-persist: persist timed out for persist key "'.concat(e.key,'"')))}),o),c=!1,a||(a=N$(e)),f)return $$({},t(p,d),{_persist:f});if("function"!==typeof d.rehydrate||"function"!==typeof d.register)throw new Error("redux-persist: either rehydrate or register is not a function on the PERSIST action. This can happen if the action is being replayed. This is an unexplored use case, please open an issue and we will figure out a resolution.");return d.register(e.key),i(e).then((function(t){var n=e.migrate||function(e,t){return Promise.resolve(e)};n(t,r).then((function(e){g(e)}),(function(e){g(void 0,e)}))}),(function(e){g(void 0,e)})),$$({},t(p,d),{_persist:{version:r,rehydrated:!1}})}if(d.type===C$)return s=!0,d.result(function(e){var t=e.storage,r="".concat(void 0!==e.keyPrefix?e.keyPrefix:E$).concat(e.key);return t.removeItem(r,F$)}(e)),$$({},t(p,d),{_persist:f});if(d.type===A$)return d.result(a&&a.flush()),$$({},t(p,d),{_persist:f});if(d.type===O$)c=!0;else if(d.type===P$){if(s)return $$({},p,{_persist:$$({},f,{rehydrated:!0})});if(d.key===e.key){var v=t(p,d),y=d.payload,b=$$({},!1!==n&&void 0!==y?n(y,u,v,e):v,{_persist:$$({},f,{rehydrated:!0})});return l(b)}}if(!f)return t(u,d);var w=t(p,d);return w===p?u:l($$({},w,{_persist:f}))}}function K$(e){return function(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:Y$,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case j$:return G$({},e,{registry:[].concat(K$(e.registry),[t.key])});case P$:var r=e.registry.indexOf(t.key),n=K$(e.registry);return n.splice(r,1),G$({},e,{registry:n,bootstrapped:0===n.length});default:return e}};function J$(e,t){(t||{}).debug;return function(t,r){if(!t)return Promise.resolve(void 0);var n=t._persist&&void 0!==t._persist.version?t._persist.version:-1;if(n===r)return Promise.resolve(t);if(n>r)return Promise.resolve(t);var i=Object.keys(e).map((function(e){return parseInt(e)})).filter((function(e){return r>=e&&e>n})).sort((function(e,t){return e-t}));try{var o=i.reduce((function(t,r){return e[r](t)}),t);return Promise.resolve(o)}catch(Tie){return Promise.reject(Tie)}}}var Q$=r(364);const eH={html:"",seen:!0},tH=qx({name:"announcements",initialState:eH,reducers:{reset:()=>eH,setCurrent:(e,{payload:t})=>{t!==e.html&&(e.seen=!1),e.html=t},setSeen:e=>{e.seen=!0}}}),rH={0:e=>ox(e,(e=>{e.multisigs.labelsMap={}})),1:e=>ox(e,(e=>{e.announcement=eH})),2:Db.identity},nH={0:Db.identity,1:Db.identity,2:e=>ox(e,(e=>{e.items.forEach((e=>{"secret_key"===e.type&&(e.curve="ed25519")}))}))},iH={blockLevel:null,balances:{mutez:{},tokens:{}},transfers:{tez:{},tokens:{}},delegationLevels:{},bakers:[],conversionRate:null,refetchTrigger:0,isLoading:!1,lastTimeUpdated:null},oH=qx({name:"assets",initialState:iH,extraReducers:e=>e.addCase(i$.actions.reset,(()=>iH)),reducers:{reset:()=>iH,updateBlockLevel:(e,{payload:t})=>{e.blockLevel=t},updateTokenTransfers:(e,{payload:t})=>{t.forEach((t=>{e.transfers.tokens[t.transactionId]=t}))},updateTezBalance:(e,{payload:t})=>{e.balances.mutez=t.reduce(((e,t)=>({...e,[t.address]:String(t.balance)})),{}),e.delegationLevels=t.reduce(((e,t)=>({...e,[t.address]:t.delegationLevel})),{})},updateTokenBalance:(e,{payload:t})=>{const r=(0,Db.groupBy)(t,(e=>e.account.address));e.balances.tokens=(0,Db.mapValues)(r,(e=>(0,Db.compact)(e.map(hA)).map((({balance:e,contract:t,tokenId:r,lastLevel:n})=>({balance:e,contract:t,tokenId:r,lastLevel:n})))))},updateBakers:(e,{payload:t})=>{e.bakers=t},updateConversionRate:(e,{payload:t})=>{e.conversionRate=t},refetch:e=>{e.refetchTrigger+=1},setIsLoading:(e,{payload:t})=>{e.isLoading=t},setLastTimeUpdated:(e,{payload:t})=>{e.lastTimeUpdated=t}}}),aH=oH.actions,sH=(0,Db.fromPairs)(i_.map((e=>[e.name,[]]))),cH=qx({name:"batches",initialState:sH,reducers:{reset:()=>sH,add:(e,{payload:{operations:t,network:r}})=>{r.name in e||(e[r.name]=[]);const n=e[r.name],i=n.find((e=>e.sender.address.pkh===t.sender.address.pkh));i?i.operations.push(...t.operations):n.push(t)},clear:(e,{payload:{pkh:t,network:r}})=>{const n=e[r.name]||[],i=(0,Db.findIndex)(n,(e=>e.sender.address.pkh===t));-1!==i&&n.splice(i,1)},removeItem:(e,{payload:{pkh:t,index:r,network:n}})=>{const i=e[n.name]||[],o=(0,Db.findIndex)(i,(e=>e.sender.address.pkh===t));if(-1===o)return;const a=i[o];ruH,addConnection:(e,{payload:t})=>{e[t.dAppId]={accountPkh:t.accountPkh,networkType:t.networkType}},removeConnection:(e,{payload:t})=>{delete e[t.dAppId]}}}),hH=(dH.actions,{}),fH=qx({name:"contacts",initialState:hH,reducers:{reset:()=>hH,upsert:(e,{payload:t})=>{SU(e,t.name)||(e[t.pkh]=t)},remove:(e,{payload:t})=>{delete e[t]}}}),pH=fH.actions,mH=[],gH=qx({name:"errors",initialState:mH,reducers:{reset:()=>mH,add(e,{payload:t}){100===e.length&&e.shift(),e.push(t)}}}),vH={items:[],pendingOperations:{},labelsMap:{}},yH=qx({name:"multisigs",initialState:vH,reducers:{reset:()=>vH,setMultisigs:(e,{payload:t})=>{const r=(0,Db.fromPairs)(e.items.map((e=>[e.address.pkh,e.label])));e.items=t.map(((t,n)=>({...t,label:r[t.address.pkh]||e.labelsMap[t.address.pkh]||`Multisig Account ${n}`,type:"multisig"})))},addMultisigLabel:(e,{payload:{pkh:t,label:r}})=>{e.labelsMap[t]=r},setPendingOperations:(e,{payload:t})=>{e.pendingOperations=(0,Db.groupBy)(t,(e=>e.bigmapId))},setName:(e,{payload:t})=>{const{account:{address:{pkh:r}},newName:n}=t,i=e.items.find((e=>e.address.pkh===r));i&&(i.label=n)}}}),bH=yH.actions,wH=(0,Db.fromPairs)(i_.map((e=>[e.name,{}]))),xH=qx({name:"tokens",initialState:wH,reducers:{reset:()=>wH,addTokens:(e,{payload:{network:t,tokens:r}})=>{(0,Db.compact)(r.map(VE)).forEach((r=>{(0,Db.setWith)(e,[t.name,r.contract,r.tokenId],r,Object)}))}}}),_H=xH.actions,kH={key:"root",version:2,storage:Q$.A,blacklist:["accounts"],migrate:J$(rH,{debug:!1})},SH=yx({accounts:q$({key:"accounts",version:2,storage:Q$.A,migrate:J$(nH,{debug:!1})},i$.reducer),announcement:tH.reducer,assets:oH.reducer,batches:cH.reducer,beacon:dH.reducer,contacts:fH.reducer,errors:gH.reducer,multisigs:yH.reducer,networks:a_.reducer,tokens:xH.reducer}),EH=function(e){var t,r=Hx(),n=e||{},i=n.reducer,o=void 0===i?void 0:i,a=n.middleware,s=void 0===a?r():a,c=n.devTools,l=void 0===c||c,u=n.preloadedState,d=void 0===u?void 0:u,h=n.enhancers,f=void 0===h?void 0:h;if("function"===typeof o)t=o;else{if(!zx(o))throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');t=yx(o)}var p=s;"function"===typeof p&&(p=p(r));var m=wx.apply(void 0,p),g=bx;l&&(g=Dx(Mx({trace:!1},"object"===typeof l&&l)));var v=new Ux(m),y=v;return Array.isArray(f)?y=Ax([m],f):"function"===typeof f&&(y=f(v)),vx(t,d,g.apply(void 0,y))}({reducer:q$(kH,SH),middleware:e=>e({serializableCheck:{ignoredActions:[A$,P$,O$,T$,C$,j$]}})}),AH=function(e,t,r){var n=r||!1,i=vx(X$,Y$,t&&t.enhancer?t.enhancer:void 0),o=function(e){i.dispatch({type:j$,key:e})},a=function(t,r,o){var a={type:P$,payload:r,err:o,key:t};e.dispatch(a),i.dispatch(a),n&&s.getState().bootstrapped&&(n(),n=!1)},s=G$({},i,{purge:function(){var t=[];return e.dispatch({type:C$,result:function(e){t.push(e)}}),Promise.all(t)},flush:function(){var t=[];return e.dispatch({type:A$,result:function(e){t.push(e)}}),Promise.all(t)},pause:function(){e.dispatch({type:O$})},persist:function(){e.dispatch({type:T$,register:o,rehydrate:a})}});return t&&t.manualPersist||s.persist(),s}(EH);var PH=wn((function(e,t){var r;const n=Vn("FormLabel",e),i=ht(e),{className:o,children:a,requiredIndicator:s=(0,xn.jsx)(OH,{}),optionalIndicator:c=null,...l}=i,u=Rm(),d=null!=(r=null==u?void 0:u.getLabelProps(l,t))?r:{ref:t,...l};return(0,xn.jsxs)(bn.label,{...d,className:v("chakra-form__label",i.className),__css:{display:"block",textAlign:"start",...n},children:[a,(null==u?void 0:u.isRequired)?s:c]})}));PH.displayName="FormLabel";var OH=wn((function(e,t){const r=Rm(),n=Cm();if(!(null==r?void 0:r.isRequired))return null;const i=v("chakra-form__required-indicator",e.className);return(0,xn.jsx)(bn.span,{...null==r?void 0:r.getRequiredIndicatorProps(e,t),__css:n.requiredIndicator,className:i})}));OH.displayName="RequiredIndicator";const TH=({onSubmit:e,title:t="Name Your Account",subtitle:r})=>{const{register:n,handleSubmit:i}=Yv({mode:"onChange"});return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(vy,{}),subtitle:r,title:t,children:(0,xn.jsxs)("form",{onSubmit:i(e),style:{width:"100%"},children:[(0,xn.jsxs)(Im,{children:[(0,xn.jsx)(PH,{children:"Account name"}),(0,xn.jsx)(mg,{"data-testid":"name",type:"text",...n("accountName",{required:!1}),placeholder:"Optional"})]}),(0,xn.jsx)(Xn,{width:"100%",marginTop:"32px",size:"lg",type:"submit",children:"Continue"})]})})},CH="Account",jH=({goToStep:e,account:t})=>{const r=HU();return(0,xn.jsx)(TH,{onSubmit:n=>{const i=n.accountName.trim()||CH,o=r(i)[0];switch(t.type){case"secret_key":return e({type:"masterPassword",account:{...t,label:o}});case"ledger":return e({type:"derivationPath",account:{...t,label:o}});case"mnemonic":return e({type:"derivationPath",account:{...t,label:i}})}},subtitle:"Please choose a name for your first account. You can edit your account name later."})},RH=()=>{const e={version:S$,"persist:accounts":localStorage.getItem("persist:accounts"),"persist:root":localStorage.getItem("persist:root")},t=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(e))}`,r=document.createElement("a");r.href=t,r.download="UmamiV2Backup.json",r.click()},IH=r.p+"static/media/background_image.a833e862a22ad4910526.png",MH=()=>{const{modalElement:e,onOpen:t}=x$();return(0,xn.jsxs)(_n,{height:"100vh",padding:"60px",backgroundImage:IH,backgroundSize:"cover",children:[(0,xn.jsx)(Sn,{width:"480px",padding:"40px",background:Xv.gray[900],border:"1px",borderColor:Xv.gray[700],borderRadius:"8px",boxShadow:"0px 0px 30px rgba(0, 0, 0, 0.30)",children:(0,xn.jsx)(k$,{icon:(0,xn.jsx)(Uy,{}),subtitle:"Please refresh the app or use one of the following options:",title:"Oops! Something went wrong!",children:(0,xn.jsxs)(jn,{width:"100%",spacing:"16px",children:[(0,xn.jsx)(Xn,{width:"100%",borderRadius:"4px",onClick:RH,size:"lg",children:"Save Backup"}),(0,xn.jsx)(Xn,{width:"100%",borderRadius:"4px",onClick:t,size:"lg",variant:"warning",children:"Off-board Wallet"}),(0,xn.jsx)(Xn,{width:"100%",borderColor:Xv.gray[600],borderRadius:"4px",size:"lg",variant:"tertiary",children:(0,xn.jsx)(Qn,{width:"100%",_hover:{textDecoration:"none"},href:"mailto:umami-support@trili.tech?subject=Umami V2 feedback&body=What is it about? (if a bug report please consider including your account address) %0A PLEASE FILL %0A%0A What is the feedback? %0A PLEASE FILL",rel:"noopener noreferrer",target:"_blank",children:"Report Error"})}),(0,xn.jsx)(Qn,{display:"block",marginTop:"14px",color:Xv.blue,fill:Xv.blue,_hover:{color:Xv.blueL,fill:Xv.blueL},onClick:()=>{window.location.reload()},children:(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(Ky,{marginRight:"7px"}),(0,xn.jsx)(ei,{display:"inline",lineHeight:"22px",size:"md",children:"Refresh"})]})})]})})}),e]})};var LH="undefined"===typeof window||"Deno"in globalThis;function NH(){}function DH(e){return"number"===typeof e&&e>=0&&e!==1/0}function zH(e,t){return Math.max(e+(t||0)-Date.now(),0)}function BH(e,t){const{type:r="all",exact:n,fetchStatus:i,predicate:o,queryKey:a,stale:s}=e;if(a)if(n){if(t.queryHash!==UH(a,t.options))return!1}else if(!HH(t.queryKey,a))return!1;if("all"!==r){const e=t.isActive();if("active"===r&&!e)return!1;if("inactive"===r&&e)return!1}return("boolean"!==typeof s||t.isStale()===s)&&((!i||i===t.state.fetchStatus)&&!(o&&!o(t)))}function FH(e,t){const{exact:r,status:n,predicate:i,mutationKey:o}=e;if(o){if(!t.options.mutationKey)return!1;if(r){if($H(t.options.mutationKey)!==$H(o))return!1}else if(!HH(t.options.mutationKey,o))return!1}return(!n||t.state.status===n)&&!(i&&!i(t))}function UH(e,t){return(t?.queryKeyHashFn||$H)(e)}function $H(e){return JSON.stringify(e,((e,t)=>WH(t)?Object.keys(t).sort().reduce(((e,r)=>(e[r]=t[r],e)),{}):t))}function HH(e,t){return e===t||typeof e===typeof t&&(!(!e||!t||"object"!==typeof e||"object"!==typeof t)&&!Object.keys(t).some((r=>!HH(e[r],t[r]))))}function VH(e,t){if(e===t)return e;const r=KH(e)&&KH(t);if(r||WH(e)&&WH(t)){const n=r?e:Object.keys(e),i=n.length,o=r?t:Object.keys(t),a=o.length,s=r?[]:{};let c=0;for(let l=0;lr?n.slice(1):n}function XH(e,t,r=0){const n=[t,...e];return r&&n.length>r?n.slice(0,-1):n}var JH=Symbol();var QH=function(){let e=[],t=0,r=e=>{e()},n=e=>{e()},i=e=>setTimeout(e,0);const o=n=>{t?e.push(n):i((()=>{r(n)}))},a=()=>{const t=e;e=[],t.length&&i((()=>{n((()=>{t.forEach((e=>{r(e)}))}))}))};return{batch:e=>{let r;t++;try{r=e()}finally{t--,t||a()}return r},batchCalls:e=>(...t)=>{o((()=>{e(...t)}))},schedule:o,setNotifyFunction:e=>{r=e},setBatchNotifyFunction:e=>{n=e},setScheduler:e=>{i=e}}}(),eV=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},tV=new class extends eV{#e;#t;#r;constructor(){super(),this.#r=e=>{if(!LH&&window.addEventListener){const t=()=>e();return window.addEventListener("visibilitychange",t,!1),()=>{window.removeEventListener("visibilitychange",t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#r)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#r=e,this.#t?.(),this.#t=e((e=>{"boolean"===typeof e?this.setFocused(e):this.onFocus()}))}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){const e=this.isFocused();this.listeners.forEach((t=>{t(e)}))}isFocused(){return"boolean"===typeof this.#e?this.#e:"hidden"!==globalThis.document?.visibilityState}},rV=new class extends eV{#n=!0;#t;#r;constructor(){super(),this.#r=e=>{if(!LH&&window.addEventListener){const t=()=>e(!0),r=()=>e(!1);return window.addEventListener("online",t,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",t),window.removeEventListener("offline",r)}}}}onSubscribe(){this.#t||this.setEventListener(this.#r)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#r=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#n!==e&&(this.#n=e,this.listeners.forEach((t=>{t(e)})))}isOnline(){return this.#n}};function nV(e){return Math.min(1e3*2**e,3e4)}function iV(e){return"online"!==(e??"online")||rV.isOnline()}var oV=class{constructor(e){this.revert=e?.revert,this.silent=e?.silent}};function aV(e){return e instanceof oV}function sV(e){let t,r,n,i=!1,o=0,a=!1;const s=new Promise(((e,t)=>{r=e,n=t})),c=()=>!tV.isFocused()||"always"!==e.networkMode&&!rV.isOnline(),l=n=>{a||(a=!0,e.onSuccess?.(n),t?.(),r(n))},u=r=>{a||(a=!0,e.onError?.(r),t?.(),n(r))},d=()=>new Promise((r=>{t=e=>{const t=a||!c();return t&&r(e),t},e.onPause?.()})).then((()=>{t=void 0,a||e.onContinue?.()})),h=()=>{if(a)return;let t;try{t=e.fn()}catch(r){t=Promise.reject(r)}Promise.resolve(t).then(l).catch((t=>{if(a)return;const r=e.retry??(LH?0:3),n=e.retryDelay??nV,s="function"===typeof n?n(o,t):n,l=!0===r||"number"===typeof r&&o{setTimeout(e,f)}))).then((()=>{if(c())return d()})).then((()=>{i?u(t):h()}))):u(t)}))};return iV(e.networkMode)?h():d().then(h),{promise:s,cancel:t=>{a||(u(new oV(t)),e.abort?.())},continue:()=>{const e=t?.();return e?s:Promise.resolve()},cancelRetry:()=>{i=!0},continueRetry:()=>{i=!1}}}var cV=class{#i;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),DH(this.gcTime)&&(this.#i=setTimeout((()=>{this.optionalRemove()}),this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(LH?1/0:3e5))}clearGcTimeout(){this.#i&&(clearTimeout(this.#i),this.#i=void 0)}},lV=class extends cV{#o;#a;#s;#c;#l;#u;#d;constructor(e){super(),this.#d=!1,this.#u=e.defaultOptions,this.setOptions(e.options),this.#l=[],this.#s=e.cache,this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#o=e.state||function(e){const t="function"===typeof e.initialData?e.initialData():e.initialData,r=void 0!==t,n=r?"function"===typeof e.initialDataUpdatedAt?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:r?n??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:r?"success":"pending",fetchStatus:"idle"}}(this.options),this.state=this.#o,this.scheduleGc()}get meta(){return this.options.meta}setOptions(e){this.options={...this.#u,...e},this.updateGcTime(this.options.gcTime)}optionalRemove(){this.#l.length||"idle"!==this.state.fetchStatus||this.#s.remove(this)}setData(e,t){const r=ZH(this.state.data,e,this.options);return this.#h({data:r,type:"success",dataUpdatedAt:t?.updatedAt,manual:t?.manual}),r}setState(e,t){this.#h({type:"setState",state:e,setStateOptions:t})}cancel(e){const t=this.#c?.promise;return this.#c?.cancel(e),t?t.then(NH).catch(NH):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(this.#o)}isActive(){return this.#l.some((e=>!1!==e.options.enabled))}isDisabled(){return this.getObserversCount()>0&&!this.isActive()}isStale(){return!!this.state.isInvalidated||(this.getObserversCount()>0?this.#l.some((e=>e.getCurrentResult().isStale)):void 0===this.state.data)}isStaleByTime(e=0){return this.state.isInvalidated||void 0===this.state.data||!zH(this.state.dataUpdatedAt,e)}onFocus(){const e=this.#l.find((e=>e.shouldFetchOnWindowFocus()));e?.refetch({cancelRefetch:!1}),this.#c?.continue()}onOnline(){const e=this.#l.find((e=>e.shouldFetchOnReconnect()));e?.refetch({cancelRefetch:!1}),this.#c?.continue()}addObserver(e){this.#l.includes(e)||(this.#l.push(e),this.clearGcTimeout(),this.#s.notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){this.#l.includes(e)&&(this.#l=this.#l.filter((t=>t!==e)),this.#l.length||(this.#c&&(this.#d?this.#c.cancel({revert:!0}):this.#c.cancelRetry()),this.scheduleGc()),this.#s.notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return this.#l.length}invalidate(){this.state.isInvalidated||this.#h({type:"invalidate"})}fetch(e,t){if("idle"!==this.state.fetchStatus)if(void 0!==this.state.data&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#c)return this.#c.continueRetry(),this.#c.promise;if(e&&this.setOptions(e),!this.options.queryFn){const e=this.#l.find((e=>e.options.queryFn));e&&this.setOptions(e.options)}const r=new AbortController,n={queryKey:this.queryKey,meta:this.meta},i=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#d=!0,r.signal)})};i(n);const o={fetchOptions:t,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:()=>this.options.queryFn&&this.options.queryFn!==JH?(this.#d=!1,this.options.persister?this.options.persister(this.options.queryFn,n,this):this.options.queryFn(n)):Promise.reject(new Error(`Missing queryFn: '${this.options.queryHash}'`))};i(o),this.options.behavior?.onFetch(o,this),this.#a=this.state,"idle"!==this.state.fetchStatus&&this.state.fetchMeta===o.fetchOptions?.meta||this.#h({type:"fetch",meta:o.fetchOptions?.meta});const a=e=>{aV(e)&&e.silent||this.#h({type:"error",error:e}),aV(e)||(this.#s.config.onError?.(e,this),this.#s.config.onSettled?.(this.state.data,e,this)),this.isFetchingOptimistic||this.scheduleGc(),this.isFetchingOptimistic=!1};return this.#c=sV({fn:o.fetchFn,abort:r.abort.bind(r),onSuccess:e=>{void 0!==e?(this.setData(e),this.#s.config.onSuccess?.(e,this),this.#s.config.onSettled?.(e,this.state.error,this),this.isFetchingOptimistic||this.scheduleGc(),this.isFetchingOptimistic=!1):a(new Error(`${this.queryHash} data is undefined`))},onError:a,onFail:(e,t)=>{this.#h({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#h({type:"pause"})},onContinue:()=>{this.#h({type:"continue"})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode}),this.#c.promise}#h(e){this.state=(t=>{switch(e.type){case"failed":return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...t,fetchStatus:"paused"};case"continue":return{...t,fetchStatus:"fetching"};case"fetch":return{...t,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:e.meta??null,fetchStatus:iV(this.options.networkMode)?"fetching":"paused",...void 0===t.data&&{error:null,status:"pending"}};case"success":return{...t,data:e.data,dataUpdateCount:t.dataUpdateCount+1,dataUpdatedAt:e.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const r=e.error;return aV(r)&&r.revert&&this.#a?{...this.#a,fetchStatus:"idle"}:{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error"};case"invalidate":return{...t,isInvalidated:!0};case"setState":return{...t,...e.state}}})(this.state),QH.batch((()=>{this.#l.forEach((e=>{e.onQueryUpdate()})),this.#s.notify({query:this,type:"updated",action:e})}))}};var uV=class extends eV{constructor(e={}){super(),this.config=e,this.#f=new Map}#f;build(e,t,r){const n=t.queryKey,i=t.queryHash??UH(n,t);let o=this.get(i);return o||(o=new lV({cache:this,queryKey:n,queryHash:i,options:e.defaultQueryOptions(t),state:r,defaultOptions:e.getQueryDefaults(n)}),this.add(o)),o}add(e){this.#f.has(e.queryHash)||(this.#f.set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){const t=this.#f.get(e.queryHash);t&&(e.destroy(),t===e&&this.#f.delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){QH.batch((()=>{this.getAll().forEach((e=>{this.remove(e)}))}))}get(e){return this.#f.get(e)}getAll(){return[...this.#f.values()]}find(e){const t={exact:!0,...e};return this.getAll().find((e=>BH(t,e)))}findAll(e={}){const t=this.getAll();return Object.keys(e).length>0?t.filter((t=>BH(e,t))):t}notify(e){QH.batch((()=>{this.listeners.forEach((t=>{t(e)}))}))}onFocus(){QH.batch((()=>{this.getAll().forEach((e=>{e.onFocus()}))}))}onOnline(){QH.batch((()=>{this.getAll().forEach((e=>{e.onOnline()}))}))}},dV=class extends cV{#l;#u;#p;#c;constructor(e){super(),this.mutationId=e.mutationId,this.#u=e.defaultOptions,this.#p=e.mutationCache,this.#l=[],this.state=e.state||{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0},this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options={...this.#u,...e},this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#l.includes(e)||(this.#l.push(e),this.clearGcTimeout(),this.#p.notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){this.#l=this.#l.filter((t=>t!==e)),this.scheduleGc(),this.#p.notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){this.#l.length||("pending"===this.state.status?this.scheduleGc():this.#p.remove(this))}continue(){return this.#c?.continue()??this.execute(this.state.variables)}async execute(e){const t=()=>(this.#c=sV({fn:()=>this.options.mutationFn?this.options.mutationFn(e):Promise.reject(new Error("No mutationFn found")),onFail:(e,t)=>{this.#h({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#h({type:"pause"})},onContinue:()=>{this.#h({type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode}),this.#c.promise),r="pending"===this.state.status;try{if(!r){this.#h({type:"pending",variables:e}),await(this.#p.config.onMutate?.(e,this));const t=await(this.options.onMutate?.(e));t!==this.state.context&&this.#h({type:"pending",context:t,variables:e})}const n=await t();return await(this.#p.config.onSuccess?.(n,e,this.state.context,this)),await(this.options.onSuccess?.(n,e,this.state.context)),await(this.#p.config.onSettled?.(n,null,this.state.variables,this.state.context,this)),await(this.options.onSettled?.(n,null,e,this.state.context)),this.#h({type:"success",data:n}),n}catch(n){try{throw await(this.#p.config.onError?.(n,e,this.state.context,this)),await(this.options.onError?.(n,e,this.state.context)),await(this.#p.config.onSettled?.(void 0,n,this.state.variables,this.state.context,this)),await(this.options.onSettled?.(void 0,n,e,this.state.context)),n}finally{this.#h({type:"error",error:n})}}}#h(e){this.state=(t=>{switch(e.type){case"failed":return{...t,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...t,isPaused:!0};case"continue":return{...t,isPaused:!1};case"pending":return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:!iV(this.options.networkMode),status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"}}})(this.state),QH.batch((()=>{this.#l.forEach((t=>{t.onMutationUpdate(e)})),this.#p.notify({mutation:this,type:"updated",action:e})}))}};var hV=class extends eV{constructor(e={}){super(),this.config=e,this.#m=[],this.#g=0}#m;#g;#v;build(e,t,r){const n=new dV({mutationCache:this,mutationId:++this.#g,options:e.defaultMutationOptions(t),state:r});return this.add(n),n}add(e){this.#m.push(e),this.notify({type:"added",mutation:e})}remove(e){this.#m=this.#m.filter((t=>t!==e)),this.notify({type:"removed",mutation:e})}clear(){QH.batch((()=>{this.#m.forEach((e=>{this.remove(e)}))}))}getAll(){return this.#m}find(e){const t={exact:!0,...e};return this.#m.find((e=>FH(t,e)))}findAll(e={}){return this.#m.filter((t=>FH(e,t)))}notify(e){QH.batch((()=>{this.listeners.forEach((t=>{t(e)}))}))}resumePausedMutations(){return this.#v=(this.#v??Promise.resolve()).then((()=>{const e=this.#m.filter((e=>e.state.isPaused));return QH.batch((()=>e.reduce(((e,t)=>e.then((()=>t.continue().catch(NH)))),Promise.resolve())))})).then((()=>{this.#v=void 0})),this.#v}};function fV(e){return{onFetch:(t,r)=>{const n=async()=>{const r=t.options,n=t.fetchOptions?.meta?.fetchMore?.direction,i=t.state.data?.pages||[],o=t.state.data?.pageParams||[],a={pages:[],pageParams:[]};let s=!1;const c=t.options.queryFn&&t.options.queryFn!==JH?t.options.queryFn:()=>Promise.reject(new Error(`Missing queryFn: '${t.options.queryHash}'`)),l=async(e,r,n)=>{if(s)return Promise.reject();if(null==r&&e.pages.length)return Promise.resolve(e);const i={queryKey:t.queryKey,pageParam:r,direction:n?"backward":"forward",meta:t.options.meta};var o;o=i,Object.defineProperty(o,"signal",{enumerable:!0,get:()=>(t.signal.aborted?s=!0:t.signal.addEventListener("abort",(()=>{s=!0})),t.signal)});const a=await c(i),{maxPages:l}=t.options,u=n?XH:YH;return{pages:u(e.pages,a,l),pageParams:u(e.pageParams,r,l)}};let u;if(n&&i.length){const e="backward"===n,t={pages:i,pageParams:o},a=(e?mV:pV)(r,t);u=await l(t,a,e)}else{u=await l(a,o[0]??r.initialPageParam);const t=e??i.length;for(let e=1;et.options.persister?.(n,{queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},r):t.fetchFn=n}}}function pV(e,{pages:t,pageParams:r}){const n=t.length-1;return e.getNextPageParam(t[n],t,r[n],r)}function mV(e,{pages:t,pageParams:r}){return e.getPreviousPageParam?.(t[0],t,r[0],r)}var gV=i.createContext(void 0),vV=e=>{const t=i.useContext(gV);if(e)return e;if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},yV=({client:e,children:t})=>(i.useEffect((()=>(e.mount(),()=>{e.unmount()})),[e]),(0,xn.jsx)(gV.Provider,{value:e,children:t}));const bV=new class{#y;#p;#u;#b;#w;#x;#_;#k;constructor(e={}){this.#y=e.queryCache||new uV,this.#p=e.mutationCache||new hV,this.#u=e.defaultOptions||{},this.#b=new Map,this.#w=new Map,this.#x=0}mount(){this.#x++,1===this.#x&&(this.#_=tV.subscribe((async e=>{e&&(await this.resumePausedMutations(),this.#y.onFocus())})),this.#k=rV.subscribe((async e=>{e&&(await this.resumePausedMutations(),this.#y.onOnline())})))}unmount(){this.#x--,0===this.#x&&(this.#_?.(),this.#_=void 0,this.#k?.(),this.#k=void 0)}isFetching(e){return this.#y.findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return this.#p.findAll({...e,status:"pending"}).length}getQueryData(e){const t=this.defaultQueryOptions({queryKey:e});return this.#y.get(t.queryHash)?.state.data}ensureQueryData(e){const t=this.getQueryData(e.queryKey);return void 0!==t?Promise.resolve(t):this.fetchQuery(e)}getQueriesData(e){return this.getQueryCache().findAll(e).map((({queryKey:e,state:t})=>[e,t.data]))}setQueryData(e,t,r){const n=this.defaultQueryOptions({queryKey:e}),i=this.#y.get(n.queryHash),o=i?.state.data,a=function(e,t){return"function"===typeof e?e(t):e}(t,o);if(void 0!==a)return this.#y.build(this,n).setData(a,{...r,manual:!0})}setQueriesData(e,t,r){return QH.batch((()=>this.getQueryCache().findAll(e).map((({queryKey:e})=>[e,this.setQueryData(e,t,r)]))))}getQueryState(e){const t=this.defaultQueryOptions({queryKey:e});return this.#y.get(t.queryHash)?.state}removeQueries(e){const t=this.#y;QH.batch((()=>{t.findAll(e).forEach((e=>{t.remove(e)}))}))}resetQueries(e,t){const r=this.#y,n={type:"active",...e};return QH.batch((()=>(r.findAll(e).forEach((e=>{e.reset()})),this.refetchQueries(n,t))))}cancelQueries(e={},t={}){const r={revert:!0,...t},n=QH.batch((()=>this.#y.findAll(e).map((e=>e.cancel(r)))));return Promise.all(n).then(NH).catch(NH)}invalidateQueries(e={},t={}){return QH.batch((()=>{if(this.#y.findAll(e).forEach((e=>{e.invalidate()})),"none"===e.refetchType)return Promise.resolve();const r={...e,type:e.refetchType??e.type??"active"};return this.refetchQueries(r,t)}))}refetchQueries(e={},t){const r={...t,cancelRefetch:t?.cancelRefetch??!0},n=QH.batch((()=>this.#y.findAll(e).filter((e=>!e.isDisabled())).map((e=>{let t=e.fetch(void 0,r);return r.throwOnError||(t=t.catch(NH)),"paused"===e.state.fetchStatus?Promise.resolve():t}))));return Promise.all(n).then(NH)}fetchQuery(e){const t=this.defaultQueryOptions(e);void 0===t.retry&&(t.retry=!1);const r=this.#y.build(this,t);return r.isStaleByTime(t.staleTime)?r.fetch(t):Promise.resolve(r.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(NH).catch(NH)}fetchInfiniteQuery(e){return e.behavior=fV(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(NH).catch(NH)}resumePausedMutations(){return rV.isOnline()?this.#p.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#y}getMutationCache(){return this.#p}getDefaultOptions(){return this.#u}setDefaultOptions(e){this.#u=e}setQueryDefaults(e,t){this.#b.set($H(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...this.#b.values()];let r={};return t.forEach((t=>{HH(e,t.queryKey)&&(r={...r,...t.defaultOptions})})),r}setMutationDefaults(e,t){this.#w.set($H(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...this.#w.values()];let r={};return t.forEach((t=>{HH(e,t.mutationKey)&&(r={...r,...t.defaultOptions})})),r}defaultQueryOptions(e){if(e._defaulted)return e;const t={...this.#u.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=UH(t.queryKey,t)),void 0===t.refetchOnReconnect&&(t.refetchOnReconnect="always"!==t.networkMode),void 0===t.throwOnError&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),!0!==t.enabled&&t.queryFn===JH&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#u.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#y.clear(),this.#p.clear()}},wV=({children:e})=>(0,xn.jsx)(yV,{client:bV,children:e}),xV=e=>(0,xn.jsx)(jb,{store:EH,children:e.children});var _V=String.raw,kV=_V` :root, :host { --chakra-vh: 100vh; @@ -25,7 +25,7 @@ --chakra-vh: 100dvh; } } -`,Xh=()=>(0,xn.jsx)(Un,{styles:Yh}),Jh=({scope:e=""})=>(0,xn.jsx)(Un,{styles:Zh` +`,SV=()=>(0,xn.jsx)(Nn,{styles:kV}),EV=({scope:e=""})=>(0,xn.jsx)(Nn,{styles:_V` html { line-height: 1.5; -webkit-text-size-adjust: 100%; @@ -277,6 +277,6 @@ display: none; } - ${Yh} - `}),[Qh,ef]=Nn({strict:!1,name:"PortalManagerContext"});function tf(e){const{children:t,zIndex:r}=e;return(0,xn.jsx)(Qh,{value:{zIndex:r},children:t})}function rf(e={}){const{strict:t=!0,errorMessage:r="useContext: `context` is undefined. Seems you forgot to wrap component within the Provider",name:n}=e,o=(0,i.createContext)(void 0);return o.displayName=n,[o.Provider,function e(){var n;const a=(0,i.useContext)(o);if(!a&&t){const t=new Error(r);throw t.name="ContextError",null==(n=Error.captureStackTrace)||n.call(Error,t,e),t}return a},o]}function nf(e){const{cssVarsRoot:t,theme:r,children:n}=e,o=(0,i.useMemo)((()=>Qe(r)),[r]);return(0,xn.jsxs)(Xr,{theme:o,children:[(0,xn.jsx)(of,{root:t}),n]})}function of({root:e=":host, :root"}){const t=[e,"[data-theme]"].join(",");return(0,xn.jsx)(Un,{styles:e=>({[t]:e.__cssVars})})}tf.displayName="PortalManager";var[af,sf]=rf({name:"StylesContext",errorMessage:"useStyles: `styles` is undefined. Seems you forgot to wrap the components in `` "});function cf(){const{colorMode:e}=yt();return(0,xn.jsx)(Un,{styles:t=>{const r=_t(bt(t,"styles.global"),{theme:t,colorMode:e});if(!r)return;return lt(r)(t)}})}var lf={light:"chakra-ui-light",dark:"chakra-ui-dark"};var uf="chakra-ui-color-mode";var df,hf=(df=uf,{ssr:!1,type:"localStorage",get(e){if(!(null==globalThis?void 0:globalThis.document))return e;let t;try{t=localStorage.getItem(df)||e}catch(r){}return t||e},set(e){try{localStorage.setItem(df,e)}catch(t){}}});function ff(e,t){const r=e.match(new RegExp(`(^| )${t}=([^;]+)`));return null==r?void 0:r[2]}function pf(e,t){return{ssr:!!t,type:"cookie",get:r=>t?ff(t,e):(null==globalThis?void 0:globalThis.document)&&ff(document.cookie,e)||r,set(t){document.cookie=`${e}=${t}; max-age=31536000; path=/`}}}pf(uf);var mf=Boolean(null==globalThis?void 0:globalThis.document)?i.useLayoutEffect:i.useEffect,gf=()=>{};function vf(e,t){return"cookie"===e.type&&e.ssr?e.get(t):t}function yf(e){const{value:t,children:r,options:{useSystemColorMode:n,initialColorMode:o,disableTransitionOnChange:a}={},colorModeManager:s=hf}=e,c="dark"===o?"dark":"light",[l,u]=(0,i.useState)((()=>vf(s,c))),[d,h]=(0,i.useState)((()=>vf(s))),{getSystemTheme:f,setClassName:p,setDataset:m,addListener:g}=(0,i.useMemo)((()=>function(e={}){const{preventTransition:t=!0}=e,r={setDataset:e=>{const n=t?r.preventTransition():void 0;document.documentElement.dataset.theme=e,document.documentElement.style.colorScheme=e,null==n||n()},setClassName(e){document.body.classList.add(e?lf.dark:lf.light),document.body.classList.remove(e?lf.light:lf.dark)},query:()=>window.matchMedia("(prefers-color-scheme: dark)"),getSystemTheme(e){var t;return(null!=(t=r.query().matches)?t:"dark"===e)?"dark":"light"},addListener(e){const t=r.query(),n=t=>{e(t.matches?"dark":"light")};return"function"===typeof t.addListener?t.addListener(n):t.addEventListener("change",n),()=>{"function"===typeof t.removeListener?t.removeListener(n):t.removeEventListener("change",n)}},preventTransition(){const e=document.createElement("style");return e.appendChild(document.createTextNode("*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(e),()=>{window.getComputedStyle(document.body),requestAnimationFrame((()=>{requestAnimationFrame((()=>{document.head.removeChild(e)}))}))}}};return r}({preventTransition:a})),[a]),v="system"!==o||l?l:d,y=(0,i.useCallback)((e=>{const t="system"===e?f():e;u(t),p("dark"===t),m(t),s.set(t)}),[s,f,p,m]);mf((()=>{"system"===o&&h(f())}),[]),(0,i.useEffect)((()=>{const e=s.get();y(e||("system"!==o?c:"system"))}),[s,c,o,y]);const b=(0,i.useCallback)((()=>{y("dark"===v?"light":"dark")}),[v,y]);(0,i.useEffect)((()=>{if(n)return g(y)}),[n,g,y]);const w=(0,i.useMemo)((()=>({colorMode:null!=t?t:v,toggleColorMode:t?gf:b,setColorMode:t?gf:y,forced:void 0!==t})),[v,b,y,t]);return(0,xn.jsx)(vt.Provider,{value:w,children:r})}yf.displayName="ColorModeProvider";var bf=(0,i.createContext)({getDocument:()=>document,getWindow:()=>window});function wf(e){const{children:t,environment:r,disabled:n}=e,o=(0,i.useRef)(null),a=(0,i.useMemo)((()=>r||{getDocument:()=>{var e,t;return null!=(t=null==(e=o.current)?void 0:e.ownerDocument)?t:document},getWindow:()=>{var e,t;return null!=(t=null==(e=o.current)?void 0:e.ownerDocument.defaultView)?t:window}}),[r]),s=!n||!r;return(0,xn.jsxs)(bf.Provider,{value:a,children:[t,s&&(0,xn.jsx)("span",{id:"__chakra_env",hidden:!0,ref:o})]})}bf.displayName="EnvironmentContext",wf.displayName="EnvironmentProvider";var xf=e=>{const{children:t,colorModeManager:r,portalZIndex:n,resetScope:i,resetCSS:o=!0,theme:a={},environment:s,cssVarsRoot:c,disableEnvironment:l,disableGlobalStyle:u}=e,d=(0,xn.jsx)(wf,{environment:s,disabled:l,children:t});return(0,xn.jsx)(nf,{theme:a,cssVarsRoot:c,children:(0,xn.jsxs)(yf,{colorModeManager:r,options:a.config,children:[o?(0,xn.jsx)(Jh,{scope:i}):(0,xn.jsx)(Xh,{}),!u&&(0,xn.jsx)(cf,{}),n?(0,xn.jsx)(tf,{zIndex:n,children:d}):d]})})},_f={property:{common:"background-color, border-color, color, fill, stroke, opacity, box-shadow, transform",colors:"background-color, border-color, color, fill, stroke",dimensions:"width, height",position:"left, right, top, bottom",background:"background-color, background-image, background-position"},easing:{"ease-in":"cubic-bezier(0.4, 0, 1, 1)","ease-out":"cubic-bezier(0, 0, 0.2, 1)","ease-in-out":"cubic-bezier(0.4, 0, 0.2, 1)"},duration:{"ultra-fast":"50ms",faster:"100ms",fast:"150ms",normal:"200ms",slow:"300ms",slower:"400ms","ultra-slow":"500ms"}},kf={hide:-1,auto:"auto",base:0,docked:10,dropdown:1e3,sticky:1100,banner:1200,overlay:1300,modal:1400,popover:1500,skipLink:1600,toast:1700,tooltip:1800},Sf={none:0,"1px":"1px solid","2px":"2px solid","4px":"4px solid","8px":"8px solid"},Ef={base:"0em",sm:"30em",md:"48em",lg:"62em",xl:"80em","2xl":"96em"},Af={transparent:"transparent",current:"currentColor",black:"#000000",white:"#FFFFFF",whiteAlpha:{50:"rgba(255, 255, 255, 0.04)",100:"rgba(255, 255, 255, 0.06)",200:"rgba(255, 255, 255, 0.08)",300:"rgba(255, 255, 255, 0.16)",400:"rgba(255, 255, 255, 0.24)",500:"rgba(255, 255, 255, 0.36)",600:"rgba(255, 255, 255, 0.48)",700:"rgba(255, 255, 255, 0.64)",800:"rgba(255, 255, 255, 0.80)",900:"rgba(255, 255, 255, 0.92)"},blackAlpha:{50:"rgba(0, 0, 0, 0.04)",100:"rgba(0, 0, 0, 0.06)",200:"rgba(0, 0, 0, 0.08)",300:"rgba(0, 0, 0, 0.16)",400:"rgba(0, 0, 0, 0.24)",500:"rgba(0, 0, 0, 0.36)",600:"rgba(0, 0, 0, 0.48)",700:"rgba(0, 0, 0, 0.64)",800:"rgba(0, 0, 0, 0.80)",900:"rgba(0, 0, 0, 0.92)"},gray:{50:"#F7FAFC",100:"#EDF2F7",200:"#E2E8F0",300:"#CBD5E0",400:"#A0AEC0",500:"#718096",600:"#4A5568",700:"#2D3748",800:"#1A202C",900:"#171923"},red:{50:"#FFF5F5",100:"#FED7D7",200:"#FEB2B2",300:"#FC8181",400:"#F56565",500:"#E53E3E",600:"#C53030",700:"#9B2C2C",800:"#822727",900:"#63171B"},orange:{50:"#FFFAF0",100:"#FEEBC8",200:"#FBD38D",300:"#F6AD55",400:"#ED8936",500:"#DD6B20",600:"#C05621",700:"#9C4221",800:"#7B341E",900:"#652B19"},yellow:{50:"#FFFFF0",100:"#FEFCBF",200:"#FAF089",300:"#F6E05E",400:"#ECC94B",500:"#D69E2E",600:"#B7791F",700:"#975A16",800:"#744210",900:"#5F370E"},green:{50:"#F0FFF4",100:"#C6F6D5",200:"#9AE6B4",300:"#68D391",400:"#48BB78",500:"#38A169",600:"#2F855A",700:"#276749",800:"#22543D",900:"#1C4532"},teal:{50:"#E6FFFA",100:"#B2F5EA",200:"#81E6D9",300:"#4FD1C5",400:"#38B2AC",500:"#319795",600:"#2C7A7B",700:"#285E61",800:"#234E52",900:"#1D4044"},blue:{50:"#ebf8ff",100:"#bee3f8",200:"#90cdf4",300:"#63b3ed",400:"#4299e1",500:"#3182ce",600:"#2b6cb0",700:"#2c5282",800:"#2a4365",900:"#1A365D"},cyan:{50:"#EDFDFD",100:"#C4F1F9",200:"#9DECF9",300:"#76E4F7",400:"#0BC5EA",500:"#00B5D8",600:"#00A3C4",700:"#0987A0",800:"#086F83",900:"#065666"},purple:{50:"#FAF5FF",100:"#E9D8FD",200:"#D6BCFA",300:"#B794F4",400:"#9F7AEA",500:"#805AD5",600:"#6B46C1",700:"#553C9A",800:"#44337A",900:"#322659"},pink:{50:"#FFF5F7",100:"#FED7E2",200:"#FBB6CE",300:"#F687B3",400:"#ED64A6",500:"#D53F8C",600:"#B83280",700:"#97266D",800:"#702459",900:"#521B41"},linkedin:{50:"#E8F4F9",100:"#CFEDFB",200:"#9BDAF3",300:"#68C7EC",400:"#34B3E4",500:"#00A0DC",600:"#008CC9",700:"#0077B5",800:"#005E93",900:"#004471"},facebook:{50:"#E8F4F9",100:"#D9DEE9",200:"#B7C2DA",300:"#6482C0",400:"#4267B2",500:"#385898",600:"#314E89",700:"#29487D",800:"#223B67",900:"#1E355B"},messenger:{50:"#D0E6FF",100:"#B9DAFF",200:"#A2CDFF",300:"#7AB8FF",400:"#2E90FF",500:"#0078FF",600:"#0063D1",700:"#0052AC",800:"#003C7E",900:"#002C5C"},whatsapp:{50:"#dffeec",100:"#b9f5d0",200:"#90edb3",300:"#65e495",400:"#3cdd78",500:"#22c35e",600:"#179848",700:"#0c6c33",800:"#01421c",900:"#001803"},twitter:{50:"#E5F4FD",100:"#C8E9FB",200:"#A8DCFA",300:"#83CDF7",400:"#57BBF5",500:"#1DA1F2",600:"#1A94DA",700:"#1681BF",800:"#136B9E",900:"#0D4D71"},telegram:{50:"#E3F2F9",100:"#C5E4F3",200:"#A2D4EC",300:"#7AC1E4",400:"#47A9DA",500:"#0088CC",600:"#007AB8",700:"#006BA1",800:"#005885",900:"#003F5E"}},Pf={none:"0",sm:"0.125rem",base:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem",full:"9999px"},Of={xs:"0 0 0 1px rgba(0, 0, 0, 0.05)",sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",base:"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",xl:"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)","2xl":"0 25px 50px -12px rgba(0, 0, 0, 0.25)",outline:"0 0 0 3px rgba(66, 153, 225, 0.6)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.06)",none:"none","dark-lg":"rgba(0, 0, 0, 0.1) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 5px 10px, rgba(0, 0, 0, 0.4) 0px 15px 40px"},Tf={none:0,sm:"4px",base:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},jf={letterSpacings:{tighter:"-0.05em",tight:"-0.025em",normal:"0",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeights:{normal:"normal",none:1,shorter:1.25,short:1.375,base:1.5,tall:1.625,taller:"2",3:".75rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem"},fontWeights:{hairline:100,thin:200,light:300,normal:400,medium:500,semibold:600,bold:700,extrabold:800,black:900},fonts:{heading:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',body:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',mono:'SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'},fontSizes:{"3xs":"0.45rem","2xs":"0.625rem",xs:"0.75rem",sm:"0.875rem",md:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem","5xl":"3rem","6xl":"3.75rem","7xl":"4.5rem","8xl":"6rem","9xl":"8rem"}},Cf={px:"1px",.5:"0.125rem",1:"0.25rem",1.5:"0.375rem",2:"0.5rem",2.5:"0.625rem",3:"0.75rem",3.5:"0.875rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem",12:"3rem",14:"3.5rem",16:"4rem",20:"5rem",24:"6rem",28:"7rem",32:"8rem",36:"9rem",40:"10rem",44:"11rem",48:"12rem",52:"13rem",56:"14rem",60:"15rem",64:"16rem",72:"18rem",80:"20rem",96:"24rem"},Rf={...Cf,max:"max-content",min:"min-content",full:"100%","3xs":"14rem","2xs":"16rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem","8xl":"90rem",prose:"60ch",container:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px"}},If={breakpoints:Ef,zIndices:kf,radii:Pf,blur:Tf,colors:Af,...jf,sizes:Rf,shadows:Of,space:Cf,borders:Sf,transition:_f},{defineMultiStyleConfig:Mf,definePartsStyle:Lf}=ut(["stepper","step","title","description","indicator","separator","icon","number"]),Nf=Ae("stepper-indicator-size"),Df=Ae("stepper-icon-size"),zf=Ae("stepper-title-font-size"),Bf=Ae("stepper-description-font-size"),Uf=Ae("stepper-accent-color"),Ff=Lf((({colorScheme:e})=>({stepper:{display:"flex",justifyContent:"space-between",gap:"4","&[data-orientation=vertical]":{flexDirection:"column",alignItems:"flex-start"},"&[data-orientation=horizontal]":{flexDirection:"row",alignItems:"center"},[Uf.variable]:`colors.${e}.500`,_dark:{[Uf.variable]:`colors.${e}.200`}},title:{fontSize:zf.reference,fontWeight:"medium"},description:{fontSize:Bf.reference,color:"chakra-subtle-text"},number:{fontSize:zf.reference},step:{flexShrink:0,position:"relative",display:"flex",gap:"2","&[data-orientation=horizontal]":{alignItems:"center"},flex:"1","&:last-of-type:not([data-stretch])":{flex:"initial"}},icon:{flexShrink:0,width:Df.reference,height:Df.reference},indicator:{flexShrink:0,borderRadius:"full",width:Nf.reference,height:Nf.reference,display:"flex",justifyContent:"center",alignItems:"center","&[data-status=active]":{borderWidth:"2px",borderColor:Uf.reference},"&[data-status=complete]":{bg:Uf.reference,color:"chakra-inverse-text"},"&[data-status=incomplete]":{borderWidth:"2px"}},separator:{bg:"chakra-border-color",flex:"1","&[data-status=complete]":{bg:Uf.reference},"&[data-orientation=horizontal]":{width:"100%",height:"2px",marginStart:"2"},"&[data-orientation=vertical]":{width:"2px",position:"absolute",height:"100%",maxHeight:`calc(100% - ${Nf.reference} - 8px)`,top:`calc(${Nf.reference} + 4px)`,insetStart:`calc(${Nf.reference} / 2 - 1px)`}}}))),$f=Mf({baseStyle:Ff,sizes:{xs:Lf({stepper:{[Nf.variable]:"sizes.4",[Df.variable]:"sizes.3",[zf.variable]:"fontSizes.xs",[Bf.variable]:"fontSizes.xs"}}),sm:Lf({stepper:{[Nf.variable]:"sizes.6",[Df.variable]:"sizes.4",[zf.variable]:"fontSizes.sm",[Bf.variable]:"fontSizes.xs"}}),md:Lf({stepper:{[Nf.variable]:"sizes.8",[Df.variable]:"sizes.5",[zf.variable]:"fontSizes.md",[Bf.variable]:"fontSizes.sm"}}),lg:Lf({stepper:{[Nf.variable]:"sizes.10",[Df.variable]:"sizes.6",[zf.variable]:"fontSizes.lg",[Bf.variable]:"fontSizes.md"}})},defaultProps:{size:"md",colorScheme:"blue"}});function Hf(e,t={}){let r=!1;function n(t){const r=`chakra-${(["container","root"].includes(null!=t?t:"")?[e]:[e,t]).filter(Boolean).join("__")}`;return{className:r,selector:`.${r}`,toString:()=>t}}return{parts:function(...i){!function(){if(r)throw new Error("[anatomy] .part(...) should only be called once. Did you mean to use .extend(...) ?");r=!0}();for(const e of i)t[e]=n(e);return Hf(e,t)},toPart:n,extend:function(...r){for(const e of r)e in t||(t[e]=n(e));return Hf(e,t)},selectors:function(){const e=Object.fromEntries(Object.entries(t).map((([e,t])=>[e,t.selector])));return e},classnames:function(){const e=Object.fromEntries(Object.entries(t).map((([e,t])=>[e,t.className])));return e},get keys(){return Object.keys(t)},__type:{}}}var Vf=Hf("accordion").parts("root","container","button","panel").extend("icon"),qf=Hf("alert").parts("title","description","container").extend("icon","spinner"),Kf=Hf("avatar").parts("label","badge","container").extend("excessLabel","group"),Wf=Hf("breadcrumb").parts("link","item","container").extend("separator"),Gf=(Hf("button").parts(),Hf("checkbox").parts("control","icon","container").extend("label")),Zf=(Hf("progress").parts("track","filledTrack").extend("label"),Hf("drawer").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer")),Yf=Hf("editable").parts("preview","input","textarea"),Xf=Hf("form").parts("container","requiredIndicator","helperText"),Jf=Hf("formError").parts("text","icon"),Qf=Hf("input").parts("addon","field","element","group"),ep=Hf("list").parts("container","item","icon"),tp=Hf("menu").parts("button","list","item").extend("groupTitle","icon","command","divider"),rp=Hf("modal").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer"),np=Hf("numberinput").parts("root","field","stepperGroup","stepper"),ip=(Hf("pininput").parts("field"),Hf("popover").parts("content","header","body","footer").extend("popper","arrow","closeButton")),op=Hf("progress").parts("label","filledTrack","track"),ap=Hf("radio").parts("container","control","label"),sp=Hf("select").parts("field","icon"),cp=Hf("slider").parts("container","track","thumb","filledTrack","mark"),lp=Hf("stat").parts("container","label","helpText","number","icon"),up=Hf("switch").parts("container","track","thumb","label"),dp=Hf("table").parts("table","thead","tbody","tr","th","td","tfoot","caption"),hp=Hf("tabs").parts("root","tab","tablist","tabpanel","tabpanels","indicator"),fp=Hf("tag").parts("container","label","closeButton"),pp=Hf("card").parts("container","header","body","footer");Hf("stepper").parts("stepper","step","title","description","indicator","separator","icon","number");function mp(e){const t=function(e,t="-"){return e.replace(/\s+/g,t)}(e.toString());return t.includes("\\.")?e:function(e){return!Number.isInteger(parseFloat(e.toString()))}(e)?t.replace(".","\\."):e}function gp(e,t){return`var(${mp(e)}${t?`, ${t}`:""})`}function vp(e,t=""){return`--${function(e,t=""){return[t,mp(e)].filter(Boolean).join("-")}(e,t)}`}function yp(e,t){const r=vp(e,null==t?void 0:t.prefix);return{variable:r,reference:gp(r,bp(null==t?void 0:t.fallback))}}function bp(e){return"string"===typeof e?e:null==e?void 0:e.reference}function wp(e){return b(e)&&e.reference?e.reference:String(e)}var xp=(e,...t)=>t.map(wp).join(` ${e} `).replace(/calc/g,""),_p=(...e)=>`calc(${xp("+",...e)})`,kp=(...e)=>`calc(${xp("-",...e)})`,Sp=(...e)=>`calc(${xp("*",...e)})`,Ep=(...e)=>`calc(${xp("/",...e)})`,Ap=e=>{const t=wp(e);return null==t||Number.isNaN(parseFloat(t))?Sp(t,-1):String(t).startsWith("-")?String(t).slice(1):`-${t}`},Pp=Object.assign((e=>({add:(...t)=>Pp(_p(e,...t)),subtract:(...t)=>Pp(kp(e,...t)),multiply:(...t)=>Pp(Sp(e,...t)),divide:(...t)=>Pp(Ep(e,...t)),negate:()=>Pp(Ap(e)),toString:()=>e.toString()})),{add:_p,subtract:kp,multiply:Sp,divide:Ep,negate:Ap}),{defineMultiStyleConfig:Op,definePartsStyle:Tp}=ut(up.keys),jp=yp("switch-track-width"),Cp=yp("switch-track-height"),Rp=yp("switch-track-diff"),Ip=Pp.subtract(jp,Cp),Mp=yp("switch-thumb-x"),Lp=yp("switch-bg"),Np=e=>{const{colorScheme:t}=e;return{borderRadius:"full",p:"0.5",width:[jp.reference],height:[Cp.reference],transitionProperty:"common",transitionDuration:"fast",[Lp.variable]:"colors.gray.300",_dark:{[Lp.variable]:"colors.whiteAlpha.400"},_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed"},_checked:{[Lp.variable]:`colors.${t}.500`,_dark:{[Lp.variable]:`colors.${t}.200`}},bg:Lp.reference}},Dp={bg:"white",transitionProperty:"transform",transitionDuration:"normal",borderRadius:"inherit",width:[Cp.reference],height:[Cp.reference],_checked:{transform:`translateX(${Mp.reference})`}},zp=Op({baseStyle:Tp((e=>({container:{[Rp.variable]:Ip,[Mp.variable]:Rp.reference,_rtl:{[Mp.variable]:Pp(Rp).negate().toString()}},track:Np(e),thumb:Dp}))),sizes:{sm:Tp({container:{[jp.variable]:"1.375rem",[Cp.variable]:"sizes.3"}}),md:Tp({container:{[jp.variable]:"1.875rem",[Cp.variable]:"sizes.4"}}),lg:Tp({container:{[jp.variable]:"2.875rem",[Cp.variable]:"sizes.6"}})},defaultProps:{size:"md",colorScheme:"blue"}});function Bp(e,t){return r=>"dark"===r.colorMode?t:e}function Up(e){const{orientation:t,vertical:r,horizontal:n}=e;return t?"vertical"===t?r:n:{}}var{defineMultiStyleConfig:Fp,definePartsStyle:$p}=ut(dp.keys),Hp=$p({table:{fontVariantNumeric:"lining-nums tabular-nums",borderCollapse:"collapse",width:"full"},th:{fontFamily:"heading",fontWeight:"bold",textTransform:"uppercase",letterSpacing:"wider",textAlign:"start"},td:{textAlign:"start"},caption:{mt:4,fontFamily:"heading",textAlign:"center",fontWeight:"medium"}}),Vp={"&[data-is-numeric=true]":{textAlign:"end"}},qp=$p((e=>{const{colorScheme:t}=e;return{th:{color:Bp("gray.600","gray.400")(e),borderBottom:"1px",borderColor:Bp(`${t}.100`,`${t}.700`)(e),...Vp},td:{borderBottom:"1px",borderColor:Bp(`${t}.100`,`${t}.700`)(e),...Vp},caption:{color:Bp("gray.600","gray.100")(e)},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}})),Kp=$p((e=>{const{colorScheme:t}=e;return{th:{color:Bp("gray.600","gray.400")(e),borderBottom:"1px",borderColor:Bp(`${t}.100`,`${t}.700`)(e),...Vp},td:{borderBottom:"1px",borderColor:Bp(`${t}.100`,`${t}.700`)(e),...Vp},caption:{color:Bp("gray.600","gray.100")(e)},tbody:{tr:{"&:nth-of-type(odd)":{"th, td":{borderBottomWidth:"1px",borderColor:Bp(`${t}.100`,`${t}.700`)(e)},td:{background:Bp(`${t}.100`,`${t}.700`)(e)}}}},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}})),Wp=Fp({baseStyle:Hp,variants:{simple:qp,striped:Kp,unstyled:{}},sizes:{sm:$p({th:{px:"4",py:"1",lineHeight:"4",fontSize:"xs"},td:{px:"4",py:"2",fontSize:"sm",lineHeight:"4"},caption:{px:"4",py:"2",fontSize:"xs"}}),md:$p({th:{px:"6",py:"3",lineHeight:"4",fontSize:"xs"},td:{px:"6",py:"4",lineHeight:"5"},caption:{px:"6",py:"2",fontSize:"sm"}}),lg:$p({th:{px:"8",py:"4",lineHeight:"5",fontSize:"sm"},td:{px:"8",py:"5",lineHeight:"6"},caption:{px:"6",py:"2",fontSize:"md"}})},defaultProps:{variant:"simple",size:"md",colorScheme:"gray"}});function Gp(e,t,r){return Math.min(Math.max(e,r),t)}class Zp extends Error{constructor(e){super(`Failed to parse color: "${e}"`)}}var Yp=Zp;function Xp(e){if("string"!==typeof e)throw new Yp(e);if("transparent"===e.trim().toLowerCase())return[0,0,0,0];let t=e.trim();t=om.test(e)?function(e){const t=e.toLowerCase().trim(),r=Qp[function(e){let t=5381,r=e.length;for(;r;)t=33*t^e.charCodeAt(--r);return(t>>>0)%2341}(t)];if(!r)throw new Yp(e);return`#${r}`}(e):e;const r=tm.exec(t);if(r){const e=Array.from(r).slice(1);return[...e.slice(0,3).map((e=>parseInt(em(e,2),16))),parseInt(em(e[3]||"f",2),16)/255]}const n=rm.exec(t);if(n){const e=Array.from(n).slice(1);return[...e.slice(0,3).map((e=>parseInt(e,16))),parseInt(e[3]||"ff",16)/255]}const i=nm.exec(t);if(i){const e=Array.from(i).slice(1);return[...e.slice(0,3).map((e=>parseInt(e,10))),parseFloat(e[3]||"1")]}const o=im.exec(t);if(o){const[t,r,n,i]=Array.from(o).slice(1).map(parseFloat);if(Gp(0,100,r)!==r)throw new Yp(e);if(Gp(0,100,n)!==n)throw new Yp(e);return[...sm(t,r,n),Number.isNaN(i)?1:i]}throw new Yp(e)}const Jp=e=>parseInt(e.replace(/_/g,""),36),Qp="1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce(((e,t)=>{const r=Jp(t.substring(0,3)),n=Jp(t.substring(3)).toString(16);let i="";for(let o=0;o<6-n.length;o++)i+="0";return e[r]=`${i}${n}`,e}),{});const em=(e,t)=>Array.from(Array(t)).map((()=>e)).join(""),tm=new RegExp(`^#${em("([a-f0-9])",3)}([a-f0-9])?$`,"i"),rm=new RegExp(`^#${em("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),nm=new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${em(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),im=/^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i,om=/^[a-z]+$/i,am=e=>Math.round(255*e),sm=(e,t,r)=>{let n=r/100;if(0===t)return[n,n,n].map(am);const i=(e%360+360)%360/60,o=(1-Math.abs(2*n-1))*(t/100),a=o*(1-Math.abs(i%2-1));let s=0,c=0,l=0;i>=0&&i<1?(s=o,c=a):i>=1&&i<2?(s=a,c=o):i>=2&&i<3?(c=o,l=a):i>=3&&i<4?(c=a,l=o):i>=4&&i<5?(s=a,l=o):i>=5&&i<6&&(s=o,l=a);const u=n-o/2;return[s+u,c+u,l+u].map(am)};function cm(e,t,r,n){return`rgba(${Gp(0,255,e).toFixed()}, ${Gp(0,255,t).toFixed()}, ${Gp(0,255,r).toFixed()}, ${parseFloat(Gp(0,1,n).toFixed(3))})`}function lm(e,t){const[r,n,i,o]=Xp(e);return cm(r,n,i,o-t)}var um=(e,t,r)=>{const n=function(e,t,r,n,i){for(t=t.split?t.split("."):t,n=0;n{const t=Gp(0,255,e).toString(16);return 1===t.length?`0${t}`:t};o(t),o(r),o(n),i<1&&o(Math.round(255*i))}(n),n}catch{return null!=r?r:"#000000"}},dm=e=>t=>{const r=(e=>{const[t,r,n]=Xp(e);return(299*t+587*r+114*n)/1e3})(um(t,e));return r<128?"dark":"light"},hm=(e,t)=>r=>lm(um(r,e),1-t);function fm(e="1rem",t="rgba(255, 255, 255, 0.15)"){return{backgroundImage:`linear-gradient(\n 45deg,\n ${t} 25%,\n transparent 25%,\n transparent 50%,\n ${t} 50%,\n ${t} 75%,\n transparent 75%,\n transparent\n )`,backgroundSize:`${e} ${e}`}}function pm(e){const t=`#${Math.floor(16777215*Math.random()).toString(16).padEnd(6,"0")}`;return e&&(r=e,0!==Object.keys(r).length)?e.string&&e.colors?function(e,t){let r=0;if(0===e.length)return t[0];for(let n=0;n>8*n&255).toString(16)}`.substr(-2)}return r}(e.string):e.colors&&!e.string?function(e){return e[Math.floor(Math.random()*e.length)]}(e.colors):t:t;var r}var mm=Ae("tabs-color"),gm=Ae("tabs-bg"),vm=Ae("tabs-border-color"),{defineMultiStyleConfig:ym,definePartsStyle:bm}=ut(hp.keys),wm=e=>{const{orientation:t}=e;return{display:"vertical"===t?"flex":"block"}},xm=e=>{const{isFitted:t}=e;return{flex:t?1:void 0,transitionProperty:"common",transitionDuration:"normal",_focusVisible:{zIndex:1,boxShadow:"outline"},_disabled:{cursor:"not-allowed",opacity:.4}}},_m=e=>{const{align:t="start",orientation:r}=e;return{justifyContent:{end:"flex-end",center:"center",start:"flex-start"}[t],flexDirection:"vertical"===r?"column":"row"}},km={p:4},Sm=bm((e=>({root:wm(e),tab:xm(e),tablist:_m(e),tabpanel:km}))),Em={sm:bm({tab:{py:1,px:4,fontSize:"sm"}}),md:bm({tab:{fontSize:"md",py:2,px:4}}),lg:bm({tab:{fontSize:"lg",py:3,px:4}})},Am=bm((e=>{const{colorScheme:t,orientation:r}=e,n="vertical"===r,i=n?"borderStart":"borderBottom";return{tablist:{[i]:"2px solid",borderColor:"inherit"},tab:{[i]:"2px solid",borderColor:"transparent",[n?"marginStart":"marginBottom"]:"-2px",_selected:{[mm.variable]:`colors.${t}.600`,_dark:{[mm.variable]:`colors.${t}.300`},borderColor:"currentColor"},_active:{[gm.variable]:"colors.gray.200",_dark:{[gm.variable]:"colors.whiteAlpha.300"}},_disabled:{_active:{bg:"none"}},color:mm.reference,bg:gm.reference}}})),Pm=bm((e=>{const{colorScheme:t}=e;return{tab:{borderTopRadius:"md",border:"1px solid",borderColor:"transparent",mb:"-1px",[vm.variable]:"transparent",_selected:{[mm.variable]:`colors.${t}.600`,[vm.variable]:"colors.white",_dark:{[mm.variable]:`colors.${t}.300`,[vm.variable]:"colors.gray.800"},borderColor:"inherit",borderBottomColor:vm.reference},color:mm.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}})),Om=bm((e=>{const{colorScheme:t}=e;return{tab:{border:"1px solid",borderColor:"inherit",[gm.variable]:"colors.gray.50",_dark:{[gm.variable]:"colors.whiteAlpha.50"},mb:"-1px",_notLast:{marginEnd:"-1px"},_selected:{[gm.variable]:"colors.white",[mm.variable]:`colors.${t}.600`,_dark:{[gm.variable]:"colors.gray.800",[mm.variable]:`colors.${t}.300`},borderColor:"inherit",borderTopColor:"currentColor",borderBottomColor:"transparent"},color:mm.reference,bg:gm.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}})),Tm=bm((e=>{const{colorScheme:t,theme:r}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",color:"gray.600",_selected:{color:um(r,`${t}.700`),bg:um(r,`${t}.100`)}}}})),jm=bm((e=>{const{colorScheme:t}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",[mm.variable]:"colors.gray.600",_dark:{[mm.variable]:"inherit"},_selected:{[mm.variable]:"colors.white",[gm.variable]:`colors.${t}.600`,_dark:{[mm.variable]:"colors.gray.800",[gm.variable]:`colors.${t}.300`}},color:mm.reference,bg:gm.reference}}})),Cm=ym({baseStyle:Sm,sizes:Em,variants:{line:Am,enclosed:Pm,"enclosed-colored":Om,"soft-rounded":Tm,"solid-rounded":jm,unstyled:bm({})},defaultProps:{size:"md",variant:"line",colorScheme:"blue"}}),Rm=function(e,t){const r={};for(const n of t)if(Array.isArray(n)){const[t,i]=n;r[t]=Ae(`${e}-${t}`,i)}else r[n]=Ae(`${e}-${n}`);return r}("badge",["bg","color","shadow"]),Im=e=>{const{colorScheme:t,theme:r}=e,n=hm(`${t}.500`,.6)(r);return{[Rm.bg.variable]:`colors.${t}.500`,[Rm.color.variable]:"colors.white",_dark:{[Rm.bg.variable]:n,[Rm.color.variable]:"colors.whiteAlpha.800"}}},Mm=e=>{const{colorScheme:t,theme:r}=e,n=hm(`${t}.200`,.16)(r);return{[Rm.bg.variable]:`colors.${t}.100`,[Rm.color.variable]:`colors.${t}.800`,_dark:{[Rm.bg.variable]:n,[Rm.color.variable]:`colors.${t}.200`}}},Lm=e=>{const{colorScheme:t,theme:r}=e,n=hm(`${t}.200`,.8)(r);return{[Rm.color.variable]:`colors.${t}.500`,_dark:{[Rm.color.variable]:n},[Rm.shadow.variable]:`inset 0 0 0px 1px ${Rm.color.reference}`}},Nm={baseStyle:{px:1,textTransform:"uppercase",fontSize:"xs",borderRadius:"sm",fontWeight:"bold",bg:Rm.bg.reference,color:Rm.color.reference,boxShadow:Rm.shadow.reference},variants:{solid:Im,subtle:Mm,outline:Lm},defaultProps:{variant:"subtle",colorScheme:"gray"}},{defineMultiStyleConfig:Dm,definePartsStyle:zm}=ut(fp.keys),Bm=Ae("tag-bg"),Um=Ae("tag-color"),Fm=Ae("tag-shadow"),$m=Ae("tag-min-height"),Hm=Ae("tag-min-width"),Vm=Ae("tag-font-size"),qm=Ae("tag-padding-inline"),Km=zm({container:{fontWeight:"medium",lineHeight:1.2,outline:0,[Um.variable]:Rm.color.reference,[Bm.variable]:Rm.bg.reference,[Fm.variable]:Rm.shadow.reference,color:Um.reference,bg:Bm.reference,boxShadow:Fm.reference,borderRadius:"md",minH:$m.reference,minW:Hm.reference,fontSize:Vm.reference,px:qm.reference,_focusVisible:{[Fm.variable]:"shadows.outline"}},label:{lineHeight:1.2,overflow:"visible"},closeButton:{fontSize:"lg",w:"5",h:"5",transitionProperty:"common",transitionDuration:"normal",borderRadius:"full",marginStart:"1.5",marginEnd:"-1",opacity:.5,_disabled:{opacity:.4},_focusVisible:{boxShadow:"outline",bg:"rgba(0, 0, 0, 0.14)"},_hover:{opacity:.8},_active:{opacity:1}}}),Wm={sm:zm({container:{[$m.variable]:"sizes.5",[Hm.variable]:"sizes.5",[Vm.variable]:"fontSizes.xs",[qm.variable]:"space.2"},closeButton:{marginEnd:"-2px",marginStart:"0.35rem"}}),md:zm({container:{[$m.variable]:"sizes.6",[Hm.variable]:"sizes.6",[Vm.variable]:"fontSizes.sm",[qm.variable]:"space.2"}}),lg:zm({container:{[$m.variable]:"sizes.8",[Hm.variable]:"sizes.8",[Vm.variable]:"fontSizes.md",[qm.variable]:"space.3"}})},Gm={subtle:zm((e=>{var t;return{container:null==(t=Nm.variants)?void 0:t.subtle(e)}})),solid:zm((e=>{var t;return{container:null==(t=Nm.variants)?void 0:t.solid(e)}})),outline:zm((e=>{var t;return{container:null==(t=Nm.variants)?void 0:t.outline(e)}}))},Zm=Dm({variants:Gm,baseStyle:Km,sizes:Wm,defaultProps:{size:"md",variant:"subtle",colorScheme:"gray"}}),{definePartsStyle:Ym,defineMultiStyleConfig:Xm}=ut(Qf.keys),Jm=Ae("input-height"),Qm=Ae("input-font-size"),eg=Ae("input-padding"),tg=Ae("input-border-radius"),rg=Ym({addon:{height:Jm.reference,fontSize:Qm.reference,px:eg.reference,borderRadius:tg.reference},field:{width:"100%",height:Jm.reference,fontSize:Qm.reference,px:eg.reference,borderRadius:tg.reference,minWidth:0,outline:0,position:"relative",appearance:"none",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed"}}}),ng={lg:{[Qm.variable]:"fontSizes.lg",[eg.variable]:"space.4",[tg.variable]:"radii.md",[Jm.variable]:"sizes.12"},md:{[Qm.variable]:"fontSizes.md",[eg.variable]:"space.4",[tg.variable]:"radii.md",[Jm.variable]:"sizes.10"},sm:{[Qm.variable]:"fontSizes.sm",[eg.variable]:"space.3",[tg.variable]:"radii.sm",[Jm.variable]:"sizes.8"},xs:{[Qm.variable]:"fontSizes.xs",[eg.variable]:"space.2",[tg.variable]:"radii.sm",[Jm.variable]:"sizes.6"}},ig={lg:Ym({field:ng.lg,group:ng.lg}),md:Ym({field:ng.md,group:ng.md}),sm:Ym({field:ng.sm,group:ng.sm}),xs:Ym({field:ng.xs,group:ng.xs})};function og(e){const{focusBorderColor:t,errorBorderColor:r}=e;return{focusBorderColor:t||Bp("blue.500","blue.300")(e),errorBorderColor:r||Bp("red.500","red.300")(e)}}var ag,sg,cg,lg,ug,dg,hg,fg,pg,mg,gg,vg=Ym((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=og(e);return{field:{border:"1px solid",borderColor:"inherit",bg:"inherit",_hover:{borderColor:Bp("gray.300","whiteAlpha.400")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:um(t,n),boxShadow:`0 0 0 1px ${um(t,n)}`},_focusVisible:{zIndex:1,borderColor:um(t,r),boxShadow:`0 0 0 1px ${um(t,r)}`}},addon:{border:"1px solid",borderColor:Bp("inherit","whiteAlpha.50")(e),bg:Bp("gray.100","whiteAlpha.300")(e)}}})),yg=Ym((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=og(e);return{field:{border:"2px solid",borderColor:"transparent",bg:Bp("gray.100","whiteAlpha.50")(e),_hover:{bg:Bp("gray.200","whiteAlpha.100")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:um(t,n)},_focusVisible:{bg:"transparent",borderColor:um(t,r)}},addon:{border:"2px solid",borderColor:"transparent",bg:Bp("gray.100","whiteAlpha.50")(e)}}})),bg=Ym((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=og(e);return{field:{borderBottom:"1px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent",_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:um(t,n),boxShadow:`0px 1px 0px 0px ${um(t,n)}`},_focusVisible:{borderColor:um(t,r),boxShadow:`0px 1px 0px 0px ${um(t,r)}`}},addon:{borderBottom:"2px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent"}}})),wg=Xm({baseStyle:rg,sizes:ig,variants:{outline:vg,filled:yg,flushed:bg,unstyled:Ym({field:{bg:"transparent",px:"0",height:"auto"},addon:{bg:"transparent",px:"0",height:"auto"}})},defaultProps:{size:"md",variant:"outline"}}),xg={...null==(ag=wg.baseStyle)?void 0:ag.field,paddingY:"2",minHeight:"20",lineHeight:"short",verticalAlign:"top"},_g={outline:e=>{var t,r;return null!=(r=null==(t=wg.variants)?void 0:t.outline(e).field)?r:{}},flushed:e=>{var t,r;return null!=(r=null==(t=wg.variants)?void 0:t.flushed(e).field)?r:{}},filled:e=>{var t,r;return null!=(r=null==(t=wg.variants)?void 0:t.filled(e).field)?r:{}},unstyled:null!=(cg=null==(sg=wg.variants)?void 0:sg.unstyled.field)?cg:{}},kg={baseStyle:xg,sizes:{xs:null!=(ug=null==(lg=wg.sizes)?void 0:lg.xs.field)?ug:{},sm:null!=(hg=null==(dg=wg.sizes)?void 0:dg.sm.field)?hg:{},md:null!=(pg=null==(fg=wg.sizes)?void 0:fg.md.field)?pg:{},lg:null!=(gg=null==(mg=wg.sizes)?void 0:mg.lg.field)?gg:{}},variants:_g,defaultProps:{size:"md",variant:"outline"}},Sg=yp("tooltip-bg"),Eg=yp("tooltip-fg"),Ag=yp("popper-arrow-bg"),Pg={baseStyle:{bg:Sg.reference,color:Eg.reference,[Sg.variable]:"colors.gray.700",[Eg.variable]:"colors.whiteAlpha.900",_dark:{[Sg.variable]:"colors.gray.300",[Eg.variable]:"colors.gray.900"},[Ag.variable]:Sg.reference,px:"2",py:"0.5",borderRadius:"sm",fontWeight:"medium",fontSize:"sm",boxShadow:"md",maxW:"xs",zIndex:"tooltip"}},{defineMultiStyleConfig:Og,definePartsStyle:Tg}=ut(op.keys),jg=e=>{const{colorScheme:t,theme:r,isIndeterminate:n,hasStripe:i}=e,o=Bp(fm(),fm("1rem","rgba(0,0,0,0.1)"))(e),a=Bp(`${t}.500`,`${t}.200`)(e),s=`linear-gradient(\n to right,\n transparent 0%,\n ${um(r,a)} 50%,\n transparent 100%\n )`;return{...!n&&i&&o,...n?{bgImage:s}:{bgColor:a}}},Cg={lineHeight:"1",fontSize:"0.25em",fontWeight:"bold",color:"white"},Rg=e=>({bg:Bp("gray.100","whiteAlpha.300")(e)}),Ig=e=>({transitionProperty:"common",transitionDuration:"slow",...jg(e)}),Mg=Tg((e=>({label:Cg,filledTrack:Ig(e),track:Rg(e)}))),Lg=Og({sizes:{xs:Tg({track:{h:"1"}}),sm:Tg({track:{h:"2"}}),md:Tg({track:{h:"3"}}),lg:Tg({track:{h:"4"}})},baseStyle:Mg,defaultProps:{size:"md",colorScheme:"blue"}});function Ng(e,...t){return(e=>"function"===typeof e)(e)?e(...t):e}var Dg,zg,Bg,Ug,Fg,$g,Hg,Vg,qg,{definePartsStyle:Kg,defineMultiStyleConfig:Wg}=ut(Gf.keys),Gg=Ae("checkbox-size"),Zg=e=>{const{colorScheme:t}=e;return{w:Gg.reference,h:Gg.reference,transitionProperty:"box-shadow",transitionDuration:"normal",border:"2px solid",borderRadius:"sm",borderColor:"inherit",color:"white",_checked:{bg:Bp(`${t}.500`,`${t}.200`)(e),borderColor:Bp(`${t}.500`,`${t}.200`)(e),color:Bp("white","gray.900")(e),_hover:{bg:Bp(`${t}.600`,`${t}.300`)(e),borderColor:Bp(`${t}.600`,`${t}.300`)(e)},_disabled:{borderColor:Bp("gray.200","transparent")(e),bg:Bp("gray.200","whiteAlpha.300")(e),color:Bp("gray.500","whiteAlpha.500")(e)}},_indeterminate:{bg:Bp(`${t}.500`,`${t}.200`)(e),borderColor:Bp(`${t}.500`,`${t}.200`)(e),color:Bp("white","gray.900")(e)},_disabled:{bg:Bp("gray.100","whiteAlpha.100")(e),borderColor:Bp("gray.100","transparent")(e)},_focusVisible:{boxShadow:"outline"},_invalid:{borderColor:Bp("red.500","red.300")(e)}}},Yg={_disabled:{cursor:"not-allowed"}},Xg={userSelect:"none",_disabled:{opacity:.4}},Jg={transitionProperty:"transform",transitionDuration:"normal"},Qg=Wg({baseStyle:Kg((e=>({icon:Jg,container:Yg,control:Ng(Zg,e),label:Xg}))),sizes:{sm:Kg({control:{[Gg.variable]:"sizes.3"},label:{fontSize:"sm"},icon:{fontSize:"3xs"}}),md:Kg({control:{[Gg.variable]:"sizes.4"},label:{fontSize:"md"},icon:{fontSize:"2xs"}}),lg:Kg({control:{[Gg.variable]:"sizes.5"},label:{fontSize:"lg"},icon:{fontSize:"2xs"}})},defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:ev,definePartsStyle:tv}=ut(ap.keys),rv=e=>{var t;const r=null==(t=Ng(Qg.baseStyle,e))?void 0:t.control;return{...r,borderRadius:"full",_checked:{...null==r?void 0:r._checked,_before:{content:'""',display:"inline-block",pos:"relative",w:"50%",h:"50%",borderRadius:"50%",bg:"currentColor"}}}},nv=tv((e=>{var t,r,n,i;return{label:null==(r=(t=Qg).baseStyle)?void 0:r.call(t,e).label,container:null==(i=(n=Qg).baseStyle)?void 0:i.call(n,e).container,control:rv(e)}})),iv=ev({baseStyle:nv,sizes:{md:tv({control:{w:"4",h:"4"},label:{fontSize:"md"}}),lg:tv({control:{w:"5",h:"5"},label:{fontSize:"lg"}}),sm:tv({control:{width:"3",height:"3"},label:{fontSize:"sm"}})},defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:ov,definePartsStyle:av}=ut(sp.keys),sv=Ae("select-bg"),cv={paddingInlineEnd:"8"},lv=ov({baseStyle:av({field:{...null==(Dg=wg.baseStyle)?void 0:Dg.field,appearance:"none",paddingBottom:"1px",lineHeight:"normal",bg:sv.reference,[sv.variable]:"colors.white",_dark:{[sv.variable]:"colors.gray.700"},"> option, > optgroup":{bg:sv.reference}},icon:{width:"6",height:"100%",insetEnd:"2",position:"relative",color:"currentColor",fontSize:"xl",_disabled:{opacity:.5}}}),sizes:{lg:{...null==(zg=wg.sizes)?void 0:zg.lg,field:{...null==(Bg=wg.sizes)?void 0:Bg.lg.field,...cv}},md:{...null==(Ug=wg.sizes)?void 0:Ug.md,field:{...null==(Fg=wg.sizes)?void 0:Fg.md.field,...cv}},sm:{...null==($g=wg.sizes)?void 0:$g.sm,field:{...null==(Hg=wg.sizes)?void 0:Hg.sm.field,...cv}},xs:{...null==(Vg=wg.sizes)?void 0:Vg.xs,field:{...null==(qg=wg.sizes)?void 0:qg.xs.field,...cv},icon:{insetEnd:"1"}}},variants:wg.variants,defaultProps:wg.defaultProps}),uv=Ae("skeleton-start-color"),dv=Ae("skeleton-end-color"),hv={baseStyle:{[uv.variable]:"colors.gray.100",[dv.variable]:"colors.gray.400",_dark:{[uv.variable]:"colors.gray.800",[dv.variable]:"colors.gray.600"},background:uv.reference,borderColor:dv.reference,opacity:.7,borderRadius:"sm"}},fv=Ae("skip-link-bg"),pv={baseStyle:{borderRadius:"md",fontWeight:"semibold",_focusVisible:{boxShadow:"outline",padding:"4",position:"fixed",top:"6",insetStart:"6",[fv.variable]:"colors.white",_dark:{[fv.variable]:"colors.gray.700"},bg:fv.reference}}},{defineMultiStyleConfig:mv,definePartsStyle:gv}=ut(cp.keys),vv=Ae("slider-thumb-size"),yv=Ae("slider-track-size"),bv=Ae("slider-bg"),wv=e=>{const{orientation:t}=e;return{display:"inline-block",position:"relative",cursor:"pointer",_disabled:{opacity:.6,cursor:"default",pointerEvents:"none"},...Up({orientation:t,vertical:{h:"100%"},horizontal:{w:"100%"}})}},xv=e=>({...Up({orientation:e.orientation,horizontal:{h:yv.reference},vertical:{w:yv.reference}}),overflow:"hidden",borderRadius:"sm",[bv.variable]:"colors.gray.200",_dark:{[bv.variable]:"colors.whiteAlpha.200"},_disabled:{[bv.variable]:"colors.gray.300",_dark:{[bv.variable]:"colors.whiteAlpha.300"}},bg:bv.reference}),_v=e=>{const{orientation:t}=e;return{...Up({orientation:t,vertical:{left:"50%",transform:"translateX(-50%)",_active:{transform:"translateX(-50%) scale(1.15)"}},horizontal:{top:"50%",transform:"translateY(-50%)",_active:{transform:"translateY(-50%) scale(1.15)"}}}),w:vv.reference,h:vv.reference,display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",outline:0,zIndex:1,borderRadius:"full",bg:"white",boxShadow:"base",border:"1px solid",borderColor:"transparent",transitionProperty:"transform",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{bg:"gray.300"}}},kv=e=>{const{colorScheme:t}=e;return{width:"inherit",height:"inherit",[bv.variable]:`colors.${t}.500`,_dark:{[bv.variable]:`colors.${t}.200`},bg:bv.reference}},Sv=mv({baseStyle:gv((e=>({container:wv(e),track:xv(e),thumb:_v(e),filledTrack:kv(e)}))),sizes:{lg:gv({container:{[vv.variable]:"sizes.4",[yv.variable]:"sizes.1"}}),md:gv({container:{[vv.variable]:"sizes.3.5",[yv.variable]:"sizes.1"}}),sm:gv({container:{[vv.variable]:"sizes.2.5",[yv.variable]:"sizes.0.5"}})},defaultProps:{size:"md",colorScheme:"blue"}}),Ev=yp("spinner-size"),Av={baseStyle:{width:[Ev.reference],height:[Ev.reference]},sizes:{xs:{[Ev.variable]:"sizes.3"},sm:{[Ev.variable]:"sizes.4"},md:{[Ev.variable]:"sizes.6"},lg:{[Ev.variable]:"sizes.8"},xl:{[Ev.variable]:"sizes.12"}},defaultProps:{size:"md"}},{defineMultiStyleConfig:Pv,definePartsStyle:Ov}=ut(lp.keys),Tv=Pv({baseStyle:Ov({container:{},label:{fontWeight:"medium"},helpText:{opacity:.8,marginBottom:"2"},number:{verticalAlign:"baseline",fontWeight:"semibold"},icon:{marginEnd:1,w:"3.5",h:"3.5",verticalAlign:"middle"}}),sizes:{md:Ov({label:{fontSize:"sm"},helpText:{fontSize:"sm"},number:{fontSize:"2xl"}})},defaultProps:{size:"md"}}),jv=Ae("kbd-bg"),Cv={baseStyle:{[jv.variable]:"colors.gray.100",_dark:{[jv.variable]:"colors.whiteAlpha.100"},bg:jv.reference,borderRadius:"md",borderWidth:"1px",borderBottomWidth:"3px",fontSize:"0.8em",fontWeight:"bold",lineHeight:"normal",px:"0.4em",whiteSpace:"nowrap"}},Rv={baseStyle:{transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",cursor:"pointer",textDecoration:"none",outline:"none",color:"inherit",_hover:{textDecoration:"underline"},_focusVisible:{boxShadow:"outline"}}},{defineMultiStyleConfig:Iv,definePartsStyle:Mv}=ut(ep.keys),Lv=Iv({baseStyle:Mv({icon:{marginEnd:"2",display:"inline",verticalAlign:"text-bottom"}})}),{defineMultiStyleConfig:Nv,definePartsStyle:Dv}=ut(tp.keys),zv=Ae("menu-bg"),Bv=Ae("menu-shadow"),Uv=Nv({baseStyle:Dv({button:{transitionProperty:"common",transitionDuration:"normal"},list:{[zv.variable]:"#fff",[Bv.variable]:"shadows.sm",_dark:{[zv.variable]:"colors.gray.700",[Bv.variable]:"shadows.dark-lg"},color:"inherit",minW:"3xs",py:"2",zIndex:1,borderRadius:"md",borderWidth:"1px",bg:zv.reference,boxShadow:Bv.reference},item:{py:"1.5",px:"3",transitionProperty:"background",transitionDuration:"ultra-fast",transitionTimingFunction:"ease-in",_focus:{[zv.variable]:"colors.gray.100",_dark:{[zv.variable]:"colors.whiteAlpha.100"}},_active:{[zv.variable]:"colors.gray.200",_dark:{[zv.variable]:"colors.whiteAlpha.200"}},_expanded:{[zv.variable]:"colors.gray.100",_dark:{[zv.variable]:"colors.whiteAlpha.100"}},_disabled:{opacity:.4,cursor:"not-allowed"},bg:zv.reference},groupTitle:{mx:4,my:2,fontWeight:"semibold",fontSize:"sm"},icon:{display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0},command:{opacity:.6},divider:{border:0,borderBottom:"1px solid",borderColor:"inherit",my:"2",opacity:.6}})}),{defineMultiStyleConfig:Fv,definePartsStyle:$v}=ut(rp.keys),Hv=Ae("modal-bg"),Vv=Ae("modal-shadow"),qv={bg:"blackAlpha.600",zIndex:"modal"},Kv=e=>{const{isCentered:t,scrollBehavior:r}=e;return{display:"flex",zIndex:"modal",justifyContent:"center",alignItems:t?"center":"flex-start",overflow:"inside"===r?"hidden":"auto",overscrollBehaviorY:"none"}},Wv=e=>{const{isCentered:t,scrollBehavior:r}=e;return{borderRadius:"md",color:"inherit",my:t?"auto":"16",mx:t?"auto":void 0,zIndex:"modal",maxH:"inside"===r?"calc(100% - 7.5rem)":void 0,[Hv.variable]:"colors.white",[Vv.variable]:"shadows.lg",_dark:{[Hv.variable]:"colors.gray.700",[Vv.variable]:"shadows.dark-lg"},bg:Hv.reference,boxShadow:Vv.reference}},Gv={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},Zv={position:"absolute",top:"2",insetEnd:"3"},Yv=e=>{const{scrollBehavior:t}=e;return{px:"6",py:"2",flex:"1",overflow:"inside"===t?"auto":void 0}},Xv={px:"6",py:"4"};function Jv(e){return $v("full"===e?{dialog:{maxW:"100vw",minH:"$100vh",my:"0",borderRadius:"0"}}:{dialog:{maxW:e}})}var Qv=Fv({baseStyle:$v((e=>({overlay:qv,dialogContainer:Ng(Kv,e),dialog:Ng(Wv,e),header:Gv,closeButton:Zv,body:Ng(Yv,e),footer:Xv}))),sizes:{xs:Jv("xs"),sm:Jv("sm"),md:Jv("md"),lg:Jv("lg"),xl:Jv("xl"),"2xl":Jv("2xl"),"3xl":Jv("3xl"),"4xl":Jv("4xl"),"5xl":Jv("5xl"),"6xl":Jv("6xl"),full:Jv("full")},defaultProps:{size:"md"}}),{defineMultiStyleConfig:ey,definePartsStyle:ty}=ut(np.keys),ry=yp("number-input-stepper-width"),ny=yp("number-input-input-padding"),iy=Pp(ry).add("0.5rem").toString(),oy=yp("number-input-bg"),ay=yp("number-input-color"),sy=yp("number-input-border-color"),cy={[ry.variable]:"sizes.6",[ny.variable]:iy},ly=e=>{var t,r;return null!=(r=null==(t=Ng(wg.baseStyle,e))?void 0:t.field)?r:{}},uy={width:ry.reference},dy={borderStart:"1px solid",borderStartColor:sy.reference,color:ay.reference,bg:oy.reference,[ay.variable]:"colors.chakra-body-text",[sy.variable]:"colors.chakra-border-color",_dark:{[ay.variable]:"colors.whiteAlpha.800",[sy.variable]:"colors.whiteAlpha.300"},_active:{[oy.variable]:"colors.gray.200",_dark:{[oy.variable]:"colors.whiteAlpha.300"}},_disabled:{opacity:.4,cursor:"not-allowed"}},hy=ty((e=>{var t;return{root:cy,field:null!=(t=Ng(ly,e))?t:{},stepperGroup:uy,stepper:dy}}));function fy(e){var t,r,n;const i=null==(t=wg.sizes)?void 0:t[e],o={lg:"md",md:"md",sm:"sm",xs:"sm"},a=null!=(n=null==(r=i.field)?void 0:r.fontSize)?n:"md",s=jf.fontSizes[a];return ty({field:{...i.field,paddingInlineEnd:ny.reference,verticalAlign:"top"},stepper:{fontSize:Pp(s).multiply(.75).toString(),_first:{borderTopEndRadius:o[e]},_last:{borderBottomEndRadius:o[e],mt:"-1px",borderTopWidth:1}}})}var py,my,gy,vy=ey({baseStyle:hy,sizes:{xs:fy("xs"),sm:fy("sm"),md:fy("md"),lg:fy("lg")},variants:wg.variants,defaultProps:wg.defaultProps}),yy={...null==(py=wg.baseStyle)?void 0:py.field,textAlign:"center"},by={lg:{fontSize:"lg",w:12,h:12,borderRadius:"md"},md:{fontSize:"md",w:10,h:10,borderRadius:"md"},sm:{fontSize:"sm",w:8,h:8,borderRadius:"sm"},xs:{fontSize:"xs",w:6,h:6,borderRadius:"sm"}},wy={outline:e=>{var t,r,n;return null!=(n=null==(r=Ng(null==(t=wg.variants)?void 0:t.outline,e))?void 0:r.field)?n:{}},flushed:e=>{var t,r,n;return null!=(n=null==(r=Ng(null==(t=wg.variants)?void 0:t.flushed,e))?void 0:r.field)?n:{}},filled:e=>{var t,r,n;return null!=(n=null==(r=Ng(null==(t=wg.variants)?void 0:t.filled,e))?void 0:r.field)?n:{}},unstyled:null!=(gy=null==(my=wg.variants)?void 0:my.unstyled.field)?gy:{}},xy={baseStyle:yy,sizes:by,variants:wy,defaultProps:wg.defaultProps},{defineMultiStyleConfig:_y,definePartsStyle:ky}=ut(ip.keys),Sy=yp("popper-bg"),Ey=yp("popper-arrow-bg"),Ay=yp("popper-arrow-shadow-color"),Py=_y({baseStyle:ky({popper:{zIndex:10},content:{[Sy.variable]:"colors.white",bg:Sy.reference,[Ey.variable]:Sy.reference,[Ay.variable]:"colors.gray.200",_dark:{[Sy.variable]:"colors.gray.700",[Ay.variable]:"colors.whiteAlpha.300"},width:"xs",border:"1px solid",borderColor:"inherit",borderRadius:"md",boxShadow:"sm",zIndex:"inherit",_focusVisible:{outline:0,boxShadow:"outline"}},header:{px:3,py:2,borderBottomWidth:"1px"},body:{px:3,py:2},footer:{px:3,py:2,borderTopWidth:"1px"},closeButton:{position:"absolute",borderRadius:"md",top:1,insetEnd:2,padding:2}})}),{definePartsStyle:Oy,defineMultiStyleConfig:Ty}=ut(Zf.keys),jy=Ae("drawer-bg"),Cy=Ae("drawer-box-shadow");function Ry(e){return Oy("full"===e?{dialog:{maxW:"100vw",h:"100vh"}}:{dialog:{maxW:e}})}var Iy={bg:"blackAlpha.600",zIndex:"modal"},My={display:"flex",zIndex:"modal",justifyContent:"center"},Ly=e=>{const{isFullHeight:t}=e;return{...t&&{height:"100vh"},zIndex:"modal",maxH:"100vh",color:"inherit",[jy.variable]:"colors.white",[Cy.variable]:"shadows.lg",_dark:{[jy.variable]:"colors.gray.700",[Cy.variable]:"shadows.dark-lg"},bg:jy.reference,boxShadow:Cy.reference}},Ny={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},Dy={position:"absolute",top:"2",insetEnd:"3"},zy={px:"6",py:"2",flex:"1",overflow:"auto"},By={px:"6",py:"4"},Uy=Ty({baseStyle:Oy((e=>({overlay:Iy,dialogContainer:My,dialog:Ng(Ly,e),header:Ny,closeButton:Dy,body:zy,footer:By}))),sizes:{xs:Ry("xs"),sm:Ry("md"),md:Ry("lg"),lg:Ry("2xl"),xl:Ry("4xl"),full:Ry("full")},defaultProps:{size:"xs"}}),{definePartsStyle:Fy,defineMultiStyleConfig:$y}=ut(Yf.keys),Hy=$y({baseStyle:Fy({preview:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal"},input:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}},textarea:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}}})}),{definePartsStyle:Vy,defineMultiStyleConfig:qy}=ut(Xf.keys),Ky=Ae("form-control-color"),Wy=qy({baseStyle:Vy({container:{width:"100%",position:"relative"},requiredIndicator:{marginStart:"1",[Ky.variable]:"colors.red.500",_dark:{[Ky.variable]:"colors.red.300"},color:Ky.reference},helperText:{mt:"2",[Ky.variable]:"colors.gray.600",_dark:{[Ky.variable]:"colors.whiteAlpha.600"},color:Ky.reference,lineHeight:"normal",fontSize:"sm"}})}),{definePartsStyle:Gy,defineMultiStyleConfig:Zy}=ut(Jf.keys),Yy=Ae("form-error-color"),Xy=Zy({baseStyle:Gy({text:{[Yy.variable]:"colors.red.500",_dark:{[Yy.variable]:"colors.red.300"},color:Yy.reference,mt:"2",fontSize:"sm",lineHeight:"normal"},icon:{marginEnd:"0.5em",[Yy.variable]:"colors.red.500",_dark:{[Yy.variable]:"colors.red.300"},color:Yy.reference}})}),Jy={baseStyle:{fontSize:"md",marginEnd:"3",mb:"2",fontWeight:"medium",transitionProperty:"common",transitionDuration:"normal",opacity:1,_disabled:{opacity:.4}}},Qy={baseStyle:{fontFamily:"heading",fontWeight:"bold"},sizes:{"4xl":{fontSize:["6xl",null,"7xl"],lineHeight:1},"3xl":{fontSize:["5xl",null,"6xl"],lineHeight:1},"2xl":{fontSize:["4xl",null,"5xl"],lineHeight:[1.2,null,1]},xl:{fontSize:["3xl",null,"4xl"],lineHeight:[1.33,null,1.2]},lg:{fontSize:["2xl",null,"3xl"],lineHeight:[1.33,null,1.2]},md:{fontSize:"xl",lineHeight:1.2},sm:{fontSize:"md",lineHeight:1.2},xs:{fontSize:"sm",lineHeight:1.2}},defaultProps:{size:"xl"}},{defineMultiStyleConfig:eb,definePartsStyle:tb}=ut(Wf.keys),rb=Ae("breadcrumb-link-decor"),nb=eb({baseStyle:tb({link:{transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",outline:"none",color:"inherit",textDecoration:rb.reference,[rb.variable]:"none","&:not([aria-current=page])":{cursor:"pointer",_hover:{[rb.variable]:"underline"},_focusVisible:{boxShadow:"outline"}}}})}),ib=e=>{const{colorScheme:t,theme:r}=e;if("gray"===t)return{color:Bp("gray.800","whiteAlpha.900")(e),_hover:{bg:Bp("gray.100","whiteAlpha.200")(e)},_active:{bg:Bp("gray.200","whiteAlpha.300")(e)}};const n=hm(`${t}.200`,.12)(r),i=hm(`${t}.200`,.24)(r);return{color:Bp(`${t}.600`,`${t}.200`)(e),bg:"transparent",_hover:{bg:Bp(`${t}.50`,n)(e)},_active:{bg:Bp(`${t}.100`,i)(e)}}},ob=e=>{const{colorScheme:t}=e,r=Bp("gray.200","whiteAlpha.300")(e);return{border:"1px solid",borderColor:"gray"===t?r:"currentColor",".chakra-button__group[data-attached][data-orientation=horizontal] > &:not(:last-of-type)":{marginEnd:"-1px"},".chakra-button__group[data-attached][data-orientation=vertical] > &:not(:last-of-type)":{marginBottom:"-1px"},...Ng(ib,e)}},ab={yellow:{bg:"yellow.400",color:"black",hoverBg:"yellow.500",activeBg:"yellow.600"},cyan:{bg:"cyan.400",color:"black",hoverBg:"cyan.500",activeBg:"cyan.600"}},sb=e=>{var t;const{colorScheme:r}=e;if("gray"===r){const t=Bp("gray.100","whiteAlpha.200")(e);return{bg:t,color:Bp("gray.800","whiteAlpha.900")(e),_hover:{bg:Bp("gray.200","whiteAlpha.300")(e),_disabled:{bg:t}},_active:{bg:Bp("gray.300","whiteAlpha.400")(e)}}}const{bg:n=`${r}.500`,color:i="white",hoverBg:o=`${r}.600`,activeBg:a=`${r}.700`}=null!=(t=ab[r])?t:{},s=Bp(n,`${r}.200`)(e);return{bg:s,color:Bp(i,"gray.800")(e),_hover:{bg:Bp(o,`${r}.300`)(e),_disabled:{bg:s}},_active:{bg:Bp(a,`${r}.400`)(e)}}},cb=e=>{const{colorScheme:t}=e;return{padding:0,height:"auto",lineHeight:"normal",verticalAlign:"baseline",color:Bp(`${t}.500`,`${t}.200`)(e),_hover:{textDecoration:"underline",_disabled:{textDecoration:"none"}},_active:{color:Bp(`${t}.700`,`${t}.500`)(e)}}},lb={baseStyle:{lineHeight:"1.2",borderRadius:"md",fontWeight:"semibold",transitionProperty:"common",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{_disabled:{bg:"initial"}}},variants:{ghost:ib,outline:ob,solid:sb,link:cb,unstyled:{bg:"none",color:"inherit",display:"inline",lineHeight:"inherit",m:"0",p:"0"}},sizes:{lg:{h:"12",minW:"12",fontSize:"lg",px:"6"},md:{h:"10",minW:"10",fontSize:"md",px:"4"},sm:{h:"8",minW:"8",fontSize:"sm",px:"3"},xs:{h:"6",minW:"6",fontSize:"xs",px:"2"}},defaultProps:{variant:"solid",size:"md",colorScheme:"gray"}},{definePartsStyle:ub,defineMultiStyleConfig:db}=ut(pp.keys),hb=Ae("card-bg"),fb=Ae("card-padding"),pb=Ae("card-shadow"),mb=Ae("card-radius"),gb=Ae("card-border-width","0"),vb=Ae("card-border-color"),yb=ub({container:{[hb.variable]:"colors.chakra-body-bg",backgroundColor:hb.reference,boxShadow:pb.reference,borderRadius:mb.reference,color:"chakra-body-text",borderWidth:gb.reference,borderColor:vb.reference},body:{padding:fb.reference,flex:"1 1 0%"},header:{padding:fb.reference},footer:{padding:fb.reference}}),bb={sm:ub({container:{[mb.variable]:"radii.base",[fb.variable]:"space.3"}}),md:ub({container:{[mb.variable]:"radii.md",[fb.variable]:"space.5"}}),lg:ub({container:{[mb.variable]:"radii.xl",[fb.variable]:"space.7"}})},wb=db({baseStyle:yb,variants:{elevated:ub({container:{[pb.variable]:"shadows.base",_dark:{[hb.variable]:"colors.gray.700"}}}),outline:ub({container:{[gb.variable]:"1px",[vb.variable]:"colors.chakra-border-color"}}),filled:ub({container:{[hb.variable]:"colors.chakra-subtle-bg"}}),unstyled:{body:{[fb.variable]:0},header:{[fb.variable]:0},footer:{[fb.variable]:0}}},sizes:bb,defaultProps:{variant:"elevated",size:"md"}}),xb=yp("close-button-size"),_b=yp("close-button-bg"),kb={baseStyle:{w:[xb.reference],h:[xb.reference],borderRadius:"md",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{[_b.variable]:"colors.blackAlpha.100",_dark:{[_b.variable]:"colors.whiteAlpha.100"}},_active:{[_b.variable]:"colors.blackAlpha.200",_dark:{[_b.variable]:"colors.whiteAlpha.200"}},_focusVisible:{boxShadow:"outline"},bg:_b.reference},sizes:{lg:{[xb.variable]:"sizes.10",fontSize:"md"},md:{[xb.variable]:"sizes.8",fontSize:"xs"},sm:{[xb.variable]:"sizes.6",fontSize:"2xs"}},defaultProps:{size:"md"}},{variants:Sb,defaultProps:Eb}=Nm,Ab={baseStyle:{fontFamily:"mono",fontSize:"sm",px:"0.2em",borderRadius:"sm",bg:Rm.bg.reference,color:Rm.color.reference,boxShadow:Rm.shadow.reference},variants:Sb,defaultProps:Eb},Pb={baseStyle:{w:"100%",mx:"auto",maxW:"prose",px:"4"}},Ob={baseStyle:{opacity:.6,borderColor:"inherit"},variants:{solid:{borderStyle:"solid"},dashed:{borderStyle:"dashed"}},defaultProps:{variant:"solid"}},{definePartsStyle:Tb,defineMultiStyleConfig:jb}=ut(Vf.keys),Cb=jb({baseStyle:Tb({container:{borderTopWidth:"1px",borderColor:"inherit",_last:{borderBottomWidth:"1px"}},button:{transitionProperty:"common",transitionDuration:"normal",fontSize:"md",_focusVisible:{boxShadow:"outline"},_hover:{bg:"blackAlpha.50"},_disabled:{opacity:.4,cursor:"not-allowed"},px:"4",py:"2"},panel:{pt:"2",px:"4",pb:"5"},icon:{fontSize:"1.25em"}})}),{definePartsStyle:Rb,defineMultiStyleConfig:Ib}=ut(qf.keys),Mb=Ae("alert-fg"),Lb=Ae("alert-bg"),Nb=Rb({container:{bg:Lb.reference,px:"4",py:"3"},title:{fontWeight:"bold",lineHeight:"6",marginEnd:"2"},description:{lineHeight:"6"},icon:{color:Mb.reference,flexShrink:0,marginEnd:"3",w:"5",h:"6"},spinner:{color:Mb.reference,flexShrink:0,marginEnd:"3",w:"5",h:"5"}});function Db(e){const{theme:t,colorScheme:r}=e;return{light:`colors.${r}.100`,dark:hm(`${r}.200`,.16)(t)}}var zb=Rb((e=>{const{colorScheme:t}=e,r=Db(e);return{container:{[Mb.variable]:`colors.${t}.600`,[Lb.variable]:r.light,_dark:{[Mb.variable]:`colors.${t}.200`,[Lb.variable]:r.dark}}}})),Bb=Rb((e=>{const{colorScheme:t}=e,r=Db(e);return{container:{[Mb.variable]:`colors.${t}.600`,[Lb.variable]:r.light,_dark:{[Mb.variable]:`colors.${t}.200`,[Lb.variable]:r.dark},paddingStart:"3",borderStartWidth:"4px",borderStartColor:Mb.reference}}})),Ub=Rb((e=>{const{colorScheme:t}=e,r=Db(e);return{container:{[Mb.variable]:`colors.${t}.600`,[Lb.variable]:r.light,_dark:{[Mb.variable]:`colors.${t}.200`,[Lb.variable]:r.dark},pt:"2",borderTopWidth:"4px",borderTopColor:Mb.reference}}})),Fb=Rb((e=>{const{colorScheme:t}=e;return{container:{[Mb.variable]:"colors.white",[Lb.variable]:`colors.${t}.600`,_dark:{[Mb.variable]:"colors.gray.900",[Lb.variable]:`colors.${t}.200`},color:Mb.reference}}})),$b=Ib({baseStyle:Nb,variants:{subtle:zb,"left-accent":Bb,"top-accent":Ub,solid:Fb},defaultProps:{variant:"subtle",colorScheme:"blue"}}),{definePartsStyle:Hb,defineMultiStyleConfig:Vb}=ut(Kf.keys),qb=Ae("avatar-border-color"),Kb=Ae("avatar-bg"),Wb=Ae("avatar-font-size"),Gb=Ae("avatar-size"),Zb={borderRadius:"full",border:"0.2em solid",borderColor:qb.reference,[qb.variable]:"white",_dark:{[qb.variable]:"colors.gray.800"}},Yb={bg:Kb.reference,fontSize:Wb.reference,width:Gb.reference,height:Gb.reference,lineHeight:"1",[Kb.variable]:"colors.gray.200",_dark:{[Kb.variable]:"colors.whiteAlpha.400"}},Xb=e=>{const{name:t,theme:r}=e,n=t?pm({string:t}):"colors.gray.400",i=(e=>t=>"dark"===dm(e)(t))(n)(r);let o="white";return i||(o="gray.800"),{bg:Kb.reference,fontSize:Wb.reference,color:o,borderColor:qb.reference,verticalAlign:"top",width:Gb.reference,height:Gb.reference,"&:not([data-loaded])":{[Kb.variable]:n},[qb.variable]:"colors.white",_dark:{[qb.variable]:"colors.gray.800"}}},Jb={fontSize:Wb.reference,lineHeight:"1"};function Qb(e){const t="100%"!==e?Rf[e]:void 0;return Hb({container:{[Gb.variable]:null!=t?t:e,[Wb.variable]:`calc(${null!=t?t:e} / 2.5)`},excessLabel:{[Gb.variable]:null!=t?t:e,[Wb.variable]:`calc(${null!=t?t:e} / 2.5)`}})}var ew={Accordion:Cb,Alert:$b,Avatar:Vb({baseStyle:Hb((e=>({badge:Ng(Zb,e),excessLabel:Ng(Yb,e),container:Ng(Xb,e),label:Jb}))),sizes:{"2xs":Qb(4),xs:Qb(6),sm:Qb(8),md:Qb(12),lg:Qb(16),xl:Qb(24),"2xl":Qb(32),full:Qb("100%")},defaultProps:{size:"md"}}),Badge:Nm,Breadcrumb:nb,Button:lb,Checkbox:Qg,CloseButton:kb,Code:Ab,Container:Pb,Divider:Ob,Drawer:Uy,Editable:Hy,Form:Wy,FormError:Xy,FormLabel:Jy,Heading:Qy,Input:wg,Kbd:Cv,Link:Rv,List:Lv,Menu:Uv,Modal:Qv,NumberInput:vy,PinInput:xy,Popover:Py,Progress:Lg,Radio:iv,Select:lv,Skeleton:hv,SkipLink:pv,Slider:Sv,Spinner:Av,Stat:Tv,Switch:zp,Table:Wp,Tabs:Cm,Tag:Zm,Textarea:kg,Tooltip:Pg,Card:wb,Stepper:$f},tw={colors:{"chakra-body-text":{_light:"gray.800",_dark:"whiteAlpha.900"},"chakra-body-bg":{_light:"white",_dark:"gray.800"},"chakra-border-color":{_light:"gray.200",_dark:"whiteAlpha.300"},"chakra-inverse-text":{_light:"white",_dark:"gray.800"},"chakra-subtle-bg":{_light:"gray.100",_dark:"gray.700"},"chakra-subtle-text":{_light:"gray.600",_dark:"gray.400"},"chakra-placeholder-color":{_light:"gray.500",_dark:"whiteAlpha.400"}}},rw={global:{body:{fontFamily:"body",color:"chakra-body-text",bg:"chakra-body-bg",transitionProperty:"background-color",transitionDuration:"normal",lineHeight:"base"},"*::placeholder":{color:"chakra-placeholder-color"},"*, *::before, &::after":{borderColor:"chakra-border-color"}}},nw={useSystemColorMode:!1,initialColorMode:"light",cssVarPrefix:"chakra"},iw={semanticTokens:tw,direction:"ltr",...If,components:ew,styles:rw,config:nw},ow={semanticTokens:tw,direction:"ltr",components:{},...If,styles:rw,config:nw},aw=(e,t)=>e.find((e=>e.id===t));function sw(e,t){const r=cw(e,t);return{position:r,index:r?e[r].findIndex((e=>e.id===t)):-1}}function cw(e,t){for(const[r,n]of Object.entries(e))if(aw(n,t))return r}function lw(e){return{position:"fixed",zIndex:"var(--toast-z-index, 5500)",pointerEvents:"none",display:"flex",flexDirection:"column",margin:"top"===e||"bottom"===e?"0 auto":void 0,top:e.includes("top")?"env(safe-area-inset-top, 0px)":void 0,bottom:e.includes("bottom")?"env(safe-area-inset-bottom, 0px)":void 0,right:e.includes("left")?void 0:"env(safe-area-inset-right, 0px)",left:e.includes("right")?void 0:"env(safe-area-inset-left, 0px)"}}function uw(e,t=[]){const r=(0,i.useRef)(e);return(0,i.useEffect)((()=>{r.current=e})),(0,i.useCallback)(((...e)=>{var t;return null==(t=r.current)?void 0:t.call(r,...e)}),t)}function dw(e,t){const r=(0,i.useRef)(!1),n=(0,i.useRef)(!1);(0,i.useEffect)((()=>{if(r.current&&n.current)return e();n.current=!0}),t),(0,i.useEffect)((()=>(r.current=!0,()=>{r.current=!1})),[])}const hw=(0,i.createContext)(null);function fw(){const e=(0,i.useContext)(hw);if(null===e)return[!0,null];const{isPresent:t,onExitComplete:r,register:n}=e,o=(0,i.useId)();(0,i.useEffect)((()=>n(o)),[]);return!t&&r?[!1,()=>r&&r(o)]:[!0]}function pw(){return function(e){return null===e||e.isPresent}((0,i.useContext)(hw))}const mw=(0,i.createContext)({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"}),gw=(0,i.createContext)({}),vw="undefined"!==typeof document,yw=vw?i.useLayoutEffect:i.useEffect,bw=(0,i.createContext)({strict:!1}),ww=e=>e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),xw="data-"+ww("framerAppearId"),_w=!1,kw=!1;class Sw{constructor(){this.order=[],this.scheduled=new Set}add(e){if(!this.scheduled.has(e))return this.scheduled.add(e),this.order.push(e),!0}remove(e){const t=this.order.indexOf(e);-1!==t&&(this.order.splice(t,1),this.scheduled.delete(e))}clear(){this.order.length=0,this.scheduled.clear()}}const Ew=["prepare","read","update","preRender","render","postRender"];function Aw(e,t){let r=!1,n=!0;const i={delta:0,timestamp:0,isProcessing:!1},o=Ew.reduce(((e,t)=>(e[t]=function(e){let t=new Sw,r=new Sw,n=0,i=!1,o=!1;const a=new WeakSet,s={schedule:(e,o=!1,s=!1)=>{const c=s&&i,l=c?t:r;return o&&a.add(e),l.add(e)&&c&&i&&(n=t.order.length),e},cancel:e=>{r.remove(e),a.delete(e)},process:c=>{if(i)o=!0;else{if(i=!0,[t,r]=[r,t],r.clear(),n=t.order.length,n)for(let r=0;rr=!0)),e)),{}),a=e=>{o[e].process(i)},s=()=>{const o=kw?i.timestamp:performance.now();r=!1,i.delta=n?1e3/60:Math.max(Math.min(o-i.timestamp,40),1),i.timestamp=o,i.isProcessing=!0,Ew.forEach(a),i.isProcessing=!1,r&&t&&(n=!1,e(s))},c=Ew.reduce(((t,a)=>{const c=o[a];return t[a]=(t,o=!1,a=!1)=>(r||(r=!0,n=!0,i.isProcessing||e(s)),c.schedule(t,o,a)),t}),{});return{schedule:c,cancel:e=>Ew.forEach((t=>o[t].cancel(e))),state:i,steps:o}}const{schedule:Pw,cancel:Ow}=Aw(queueMicrotask,!1);function Tw(e){return e&&"object"===typeof e&&Object.prototype.hasOwnProperty.call(e,"current")}function jw(e){return"string"===typeof e||Array.isArray(e)}function Cw(e){return null!==e&&"object"===typeof e&&"function"===typeof e.start}const Rw=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Iw=["initial",...Rw];function Mw(e){return Cw(e.animate)||Iw.some((t=>jw(e[t])))}function Lw(e){return Boolean(Mw(e)||e.variants)}function Nw(e){const{initial:t,animate:r}=function(e,t){if(Mw(e)){const{initial:t,animate:r}=e;return{initial:!1===t||jw(t)?t:void 0,animate:jw(r)?r:void 0}}return!1!==e.inherit?t:{}}(e,(0,i.useContext)(gw));return(0,i.useMemo)((()=>({initial:t,animate:r})),[Dw(t),Dw(r)])}function Dw(e){return Array.isArray(e)?e.join(" "):e}const zw={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},Bw={};for(const r in zw)Bw[r]={isEnabled:e=>zw[r].some((t=>!!e[t]))};const Uw=(0,i.createContext)({}),Fw=(0,i.createContext)({}),$w=Symbol.for("motionComponentSymbol");function Hw({preloadedFeatures:e,createVisualElement:t,useRender:r,useVisualState:n,Component:o}){e&&function(e){for(const t in e)Bw[t]={...Bw[t],...e[t]}}(e);const a=(0,i.forwardRef)((function(a,s){let c;const l={...(0,i.useContext)(mw),...a,layoutId:Vw(a)},{isStatic:u}=l,d=Nw(a),h=n(a,u);if(!u&&vw){d.visualElement=function(e,t,r,n){const{visualElement:o}=(0,i.useContext)(gw),a=(0,i.useContext)(bw),s=(0,i.useContext)(hw),c=(0,i.useContext)(mw).reducedMotion,l=(0,i.useRef)();n=n||a.renderer,!l.current&&n&&(l.current=n(e,{visualState:t,parent:o,props:r,presenceContext:s,blockInitialAnimation:!!s&&!1===s.initial,reducedMotionConfig:c}));const u=l.current;(0,i.useInsertionEffect)((()=>{u&&u.update(r,s)}));const d=(0,i.useRef)(Boolean(r[xw]&&!window.HandoffComplete));return yw((()=>{u&&(Pw.postRender(u.render),d.current&&u.animationState&&u.animationState.animateChanges())})),(0,i.useEffect)((()=>{u&&(u.updateFeatures(),!d.current&&u.animationState&&u.animationState.animateChanges(),d.current&&(d.current=!1,window.HandoffComplete=!0))})),u}(o,h,l,t);const r=(0,i.useContext)(Fw),n=(0,i.useContext)(bw).strict;d.visualElement&&(c=d.visualElement.loadFeatures(l,n,e,r))}return i.createElement(gw.Provider,{value:d},c&&d.visualElement?i.createElement(c,{visualElement:d.visualElement,...l}):null,r(o,a,function(e,t,r){return(0,i.useCallback)((n=>{n&&e.mount&&e.mount(n),t&&(n?t.mount(n):t.unmount()),r&&("function"===typeof r?r(n):Tw(r)&&(r.current=n))}),[t])}(h,d.visualElement,s),h,u,d.visualElement))}));return a[$w]=o,a}function Vw({layoutId:e}){const t=(0,i.useContext)(Uw).id;return t&&void 0!==e?t+"-"+e:e}function qw(e){function t(t,r={}){return Hw(e(t,r))}if("undefined"===typeof Proxy)return t;const r=new Map;return new Proxy(t,{get:(e,n)=>(r.has(n)||r.set(n,t(n)),r.get(n))})}const Kw=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function Ww(e){return"string"===typeof e&&!e.includes("-")&&!!(Kw.indexOf(e)>-1||/[A-Z]/.test(e))}const Gw={};const Zw=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Yw=new Set(Zw);function Xw(e,{layout:t,layoutId:r}){return Yw.has(e)||e.startsWith("origin")||(t||void 0!==r)&&(!!Gw[e]||"opacity"===e)}const Jw=e=>Boolean(e&&e.getVelocity),Qw={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},ex=Zw.length;const tx=e=>t=>"string"===typeof t&&t.startsWith(e),rx=tx("--"),nx=tx("var(--"),ix=e=>!!nx(e)&&ox.test(e.split("/*")[0].trim()),ox=/var\s*\(\s*--[\w-]+(\s*,\s*(?:(?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)+)?\s*\)$/i,ax=(e,t)=>t&&"number"===typeof e?t.transform(e):e,sx=(e,t,r)=>r>t?t:r"number"===typeof e,parse:parseFloat,transform:e=>e},lx={...cx,transform:e=>sx(0,1,e)},ux={...cx,default:1},dx=e=>Math.round(1e5*e)/1e5,hx=/(-)?([\d]*\.?[\d])+/g,fx=/(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,px=/^(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function mx(e){return"string"===typeof e}const gx=e=>({test:t=>mx(t)&&t.endsWith(e)&&1===t.split(" ").length,parse:parseFloat,transform:t=>`${t}${e}`}),vx=gx("deg"),yx=gx("%"),bx=gx("px"),wx=gx("vh"),xx=gx("vw"),_x={...yx,parse:e=>yx.parse(e)/100,transform:e=>yx.transform(100*e)},kx={...cx,transform:Math.round},Sx={borderWidth:bx,borderTopWidth:bx,borderRightWidth:bx,borderBottomWidth:bx,borderLeftWidth:bx,borderRadius:bx,radius:bx,borderTopLeftRadius:bx,borderTopRightRadius:bx,borderBottomRightRadius:bx,borderBottomLeftRadius:bx,width:bx,maxWidth:bx,height:bx,maxHeight:bx,size:bx,top:bx,right:bx,bottom:bx,left:bx,padding:bx,paddingTop:bx,paddingRight:bx,paddingBottom:bx,paddingLeft:bx,margin:bx,marginTop:bx,marginRight:bx,marginBottom:bx,marginLeft:bx,rotate:vx,rotateX:vx,rotateY:vx,rotateZ:vx,scale:ux,scaleX:ux,scaleY:ux,scaleZ:ux,skew:vx,skewX:vx,skewY:vx,distance:bx,translateX:bx,translateY:bx,translateZ:bx,x:bx,y:bx,z:bx,perspective:bx,transformPerspective:bx,opacity:lx,originX:_x,originY:_x,originZ:bx,zIndex:kx,fillOpacity:lx,strokeOpacity:lx,numOctaves:kx};function Ex(e,t,r,n){const{style:i,vars:o,transform:a,transformOrigin:s}=e;let c=!1,l=!1,u=!0;for(const d in t){const e=t[d];if(rx(d)){o[d]=e;continue}const r=Sx[d],n=ax(e,r);if(Yw.has(d)){if(c=!0,a[d]=n,!u)continue;e!==(r.default||0)&&(u=!1)}else d.startsWith("origin")?(l=!0,s[d]=n):i[d]=n}if(t.transform||(c||n?i.transform=function(e,{enableHardwareAcceleration:t=!0,allowTransformNone:r=!0},n,i){let o="";for(let a=0;a({style:{},transform:{},transformOrigin:{},vars:{}});function Px(e,t,r){for(const n in t)Jw(t[n])||Xw(n,r)||(e[n]=t[n])}function Ox(e,t,r){const n={};return Px(n,e.style||{},e),Object.assign(n,function({transformTemplate:e},t,r){return(0,i.useMemo)((()=>{const n=Ax();return Ex(n,t,{enableHardwareAcceleration:!r},e),Object.assign({},n.vars,n.style)}),[t])}(e,t,r)),n}function Tx(e,t,r){const n={},i=Ox(e,t,r);return e.drag&&!1!==e.dragListener&&(n.draggable=!1,i.userSelect=i.WebkitUserSelect=i.WebkitTouchCallout="none",i.touchAction=!0===e.drag?"none":"pan-"+("x"===e.drag?"y":"x")),void 0===e.tabIndex&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=i,n}const jx=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function Cx(e){return e.startsWith("while")||e.startsWith("drag")&&"draggable"!==e||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||jx.has(e)}let Rx=e=>!Cx(e);try{(Ix=require("@emotion/is-prop-valid").default)&&(Rx=e=>e.startsWith("on")?!Cx(e):Ix(e))}catch(un){}var Ix;function Mx(e,t,r){return"string"===typeof e?e:bx.transform(t+r*e)}const Lx={offset:"stroke-dashoffset",array:"stroke-dasharray"},Nx={offset:"strokeDashoffset",array:"strokeDasharray"};function Dx(e,{attrX:t,attrY:r,attrScale:n,originX:i,originY:o,pathLength:a,pathSpacing:s=1,pathOffset:c=0,...l},u,d,h){if(Ex(e,l,u,h),d)return void(e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox));e.attrs=e.style,e.style={};const{attrs:f,style:p,dimensions:m}=e;f.transform&&(m&&(p.transform=f.transform),delete f.transform),m&&(void 0!==i||void 0!==o||p.transform)&&(p.transformOrigin=function(e,t,r){return`${Mx(t,e.x,e.width)} ${Mx(r,e.y,e.height)}`}(m,void 0!==i?i:.5,void 0!==o?o:.5)),void 0!==t&&(f.x=t),void 0!==r&&(f.y=r),void 0!==n&&(f.scale=n),void 0!==a&&function(e,t,r=1,n=0,i=!0){e.pathLength=1;const o=i?Lx:Nx;e[o.offset]=bx.transform(-n);const a=bx.transform(t),s=bx.transform(r);e[o.array]=`${a} ${s}`}(f,a,s,c,!1)}const zx=()=>({...Ax(),attrs:{}}),Bx=e=>"string"===typeof e&&"svg"===e.toLowerCase();function Ux(e,t,r,n){const o=(0,i.useMemo)((()=>{const r=zx();return Dx(r,t,{enableHardwareAcceleration:!1},Bx(n),e.transformTemplate),{...r.attrs,style:{...r.style}}}),[t]);if(e.style){const t={};Px(t,e.style,e),o.style={...t,...o.style}}return o}function Fx(e=!1){return(t,r,n,{latestValues:o},a)=>{const s=(Ww(t)?Ux:Tx)(r,o,a,t),c=function(e,t,r){const n={};for(const i in e)"values"===i&&"object"===typeof e.values||(Rx(i)||!0===r&&Cx(i)||!t&&!Cx(i)||e.draggable&&i.startsWith("onDrag"))&&(n[i]=e[i]);return n}(r,"string"===typeof t,e),l=t!==i.Fragment?{...c,...s,ref:n}:{},{children:u}=r,d=(0,i.useMemo)((()=>Jw(u)?u.get():u),[u]);return(0,i.createElement)(t,{...l,children:d})}}function $x(e,{style:t,vars:r},n,i){Object.assign(e.style,t,i&&i.getProjectionStyles(n));for(const o in r)e.style.setProperty(o,r[o])}const Hx=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function Vx(e,t,r,n){$x(e,t,void 0,n);for(const i in t.attrs)e.setAttribute(Hx.has(i)?i:ww(i),t.attrs[i])}function qx(e,t){const{style:r}=e,n={};for(const i in r)(Jw(r[i])||t.style&&Jw(t.style[i])||Xw(i,e))&&(n[i]=r[i]);return n}function Kx(e,t){const r=qx(e,t);for(const n in e)if(Jw(e[n])||Jw(t[n])){r[-1!==Zw.indexOf(n)?"attr"+n.charAt(0).toUpperCase()+n.substring(1):n]=e[n]}return r}function Wx(e,t,r,n={},i={}){return"function"===typeof t&&(t=t(void 0!==r?r:e.custom,n,i)),"string"===typeof t&&(t=e.variants&&e.variants[t]),"function"===typeof t&&(t=t(void 0!==r?r:e.custom,n,i)),t}function Gx(e){const t=(0,i.useRef)(null);return null===t.current&&(t.current=e()),t.current}const Zx=e=>Array.isArray(e),Yx=e=>Boolean(e&&"object"===typeof e&&e.mix&&e.toValue),Xx=e=>Zx(e)?e[e.length-1]||0:e;function Jx(e){const t=Jw(e)?e.get():e;return Yx(t)?t.toValue():t}const Qx=e=>(t,r)=>{const n=(0,i.useContext)(gw),o=(0,i.useContext)(hw),a=()=>function({scrapeMotionValuesFromProps:e,createRenderState:t,onMount:r},n,i,o){const a={latestValues:e_(n,i,o,e),renderState:t()};return r&&(a.mount=e=>r(n,e,a)),a}(e,t,n,o);return r?a():Gx(a)};function e_(e,t,r,n){const i={},o=n(e,{});for(const h in o)i[h]=Jx(o[h]);let{initial:a,animate:s}=e;const c=Mw(e),l=Lw(e);t&&l&&!c&&!1!==e.inherit&&(void 0===a&&(a=t.initial),void 0===s&&(s=t.animate));let u=!!r&&!1===r.initial;u=u||!1===a;const d=u?s:a;if(d&&"boolean"!==typeof d&&!Cw(d)){(Array.isArray(d)?d:[d]).forEach((t=>{const r=Wx(e,t);if(!r)return;const{transitionEnd:n,transition:o,...a}=r;for(const e in a){let t=a[e];if(Array.isArray(t)){t=t[u?t.length-1:0]}null!==t&&(i[e]=t)}for(const e in n)i[e]=n[e]}))}return i}const t_=e=>e,{schedule:r_,cancel:n_,state:i_,steps:o_}=Aw("undefined"!==typeof requestAnimationFrame?requestAnimationFrame:t_,!0),a_={useVisualState:Qx({scrapeMotionValuesFromProps:Kx,createRenderState:zx,onMount:(e,t,{renderState:r,latestValues:n})=>{r_.read((()=>{try{r.dimensions="function"===typeof t.getBBox?t.getBBox():t.getBoundingClientRect()}catch(e){r.dimensions={x:0,y:0,width:0,height:0}}})),r_.render((()=>{Dx(r,n,{enableHardwareAcceleration:!1},Bx(t.tagName),e.transformTemplate),Vx(t,r)}))}})},s_={useVisualState:Qx({scrapeMotionValuesFromProps:qx,createRenderState:Ax})};function c_(e,t,r,n={passive:!0}){return e.addEventListener(t,r,n),()=>e.removeEventListener(t,r)}const l_=e=>"mouse"===e.pointerType?"number"!==typeof e.button||e.button<=0:!1!==e.isPrimary;function u_(e,t="page"){return{point:{x:e[t+"X"],y:e[t+"Y"]}}}const d_=e=>t=>l_(t)&&e(t,u_(t));function h_(e,t,r,n){return c_(e,t,d_(r),n)}const f_=(e,t)=>r=>t(e(r)),p_=(...e)=>e.reduce(f_);function m_(e){let t=null;return()=>{const r=()=>{t=null};return null===t&&(t=e,r)}}const g_=m_("dragHorizontal"),v_=m_("dragVertical");function y_(e){let t=!1;if("y"===e)t=v_();else if("x"===e)t=g_();else{const e=g_(),r=v_();e&&r?t=()=>{e(),r()}:(e&&e(),r&&r())}return t}function b_(){const e=y_(!0);return!e||(e(),!1)}class w_{constructor(e){this.isMounted=!1,this.node=e}update(){}}function x_(e,t){const r="pointer"+(t?"enter":"leave"),n="onHover"+(t?"Start":"End");return h_(e.current,r,((r,i)=>{if("touch"===r.pointerType||b_())return;const o=e.getProps();e.animationState&&o.whileHover&&e.animationState.setActive("whileHover",t),o[n]&&r_.update((()=>o[n](r,i)))}),{passive:!e.getProps()[n]})}const __=(e,t)=>!!t&&(e===t||__(e,t.parentElement));function k_(e,t){if(!t)return;const r=new PointerEvent("pointer"+e);t(r,u_(r))}const S_=new WeakMap,E_=new WeakMap,A_=e=>{const t=S_.get(e.target);t&&t(e)},P_=e=>{e.forEach(A_)};function O_(e,t,r){const n=function({root:e,...t}){const r=e||document;E_.has(r)||E_.set(r,{});const n=E_.get(r),i=JSON.stringify(t);return n[i]||(n[i]=new IntersectionObserver(P_,{root:e,...t})),n[i]}(t);return S_.set(e,r),n.observe(e),()=>{S_.delete(e),n.unobserve(e)}}const T_={some:0,all:1};const j_={inView:{Feature:class extends w_{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:t,margin:r,amount:n="some",once:i}=e,o={root:t?t.current:void 0,rootMargin:r,threshold:"number"===typeof n?n:T_[n]};return O_(this.node.current,o,(e=>{const{isIntersecting:t}=e;if(this.isInView===t)return;if(this.isInView=t,i&&!t&&this.hasEnteredView)return;t&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",t);const{onViewportEnter:r,onViewportLeave:n}=this.node.getProps(),o=t?r:n;o&&o(e)}))}mount(){this.startObserver()}update(){if("undefined"===typeof IntersectionObserver)return;const{props:e,prevProps:t}=this.node,r=["amount","margin","root"].some(function({viewport:e={}},{viewport:t={}}={}){return r=>e[r]!==t[r]}(e,t));r&&this.startObserver()}unmount(){}}},tap:{Feature:class extends w_{constructor(){super(...arguments),this.removeStartListeners=t_,this.removeEndListeners=t_,this.removeAccessibleListeners=t_,this.startPointerPress=(e,t)=>{if(this.isPressing)return;this.removeEndListeners();const r=this.node.getProps(),n=h_(window,"pointerup",((e,t)=>{if(!this.checkPressEnd())return;const{onTap:r,onTapCancel:n,globalTapTarget:i}=this.node.getProps();r_.update((()=>{i||__(this.node.current,e.target)?r&&r(e,t):n&&n(e,t)}))}),{passive:!(r.onTap||r.onPointerUp)}),i=h_(window,"pointercancel",((e,t)=>this.cancelPress(e,t)),{passive:!(r.onTapCancel||r.onPointerCancel)});this.removeEndListeners=p_(n,i),this.startPress(e,t)},this.startAccessiblePress=()=>{const e=c_(this.node.current,"keydown",(e=>{if("Enter"!==e.key||this.isPressing)return;this.removeEndListeners(),this.removeEndListeners=c_(this.node.current,"keyup",(e=>{"Enter"===e.key&&this.checkPressEnd()&&k_("up",((e,t)=>{const{onTap:r}=this.node.getProps();r&&r_.update((()=>r(e,t)))}))})),k_("down",((e,t)=>{this.startPress(e,t)}))})),t=c_(this.node.current,"blur",(()=>{this.isPressing&&k_("cancel",((e,t)=>this.cancelPress(e,t)))}));this.removeAccessibleListeners=p_(e,t)}}startPress(e,t){this.isPressing=!0;const{onTapStart:r,whileTap:n}=this.node.getProps();n&&this.node.animationState&&this.node.animationState.setActive("whileTap",!0),r&&r_.update((()=>r(e,t)))}checkPressEnd(){this.removeEndListeners(),this.isPressing=!1;return this.node.getProps().whileTap&&this.node.animationState&&this.node.animationState.setActive("whileTap",!1),!b_()}cancelPress(e,t){if(!this.checkPressEnd())return;const{onTapCancel:r}=this.node.getProps();r&&r_.update((()=>r(e,t)))}mount(){const e=this.node.getProps(),t=h_(e.globalTapTarget?window:this.node.current,"pointerdown",this.startPointerPress,{passive:!(e.onTapStart||e.onPointerStart)}),r=c_(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=p_(t,r)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}},focus:{Feature:class extends w_{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch(t){e=!0}e&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){this.isActive&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=p_(c_(this.node.current,"focus",(()=>this.onFocus())),c_(this.node.current,"blur",(()=>this.onBlur())))}unmount(){}}},hover:{Feature:class extends w_{mount(){this.unmount=p_(x_(this.node,!0),x_(this.node,!1))}unmount(){}}}};function C_(e,t){if(!Array.isArray(t))return!1;const r=t.length;if(r!==e.length)return!1;for(let n=0;nt[r]=e.get())),t}(e),function(e){const t={};return e.values.forEach(((e,r)=>t[r]=e.getVelocity())),t}(e))}let I_=t_,M_=t_;const L_=e=>1e3*e,N_=e=>e/1e3,D_=!1,z_=e=>Array.isArray(e)&&"number"===typeof e[0];function B_(e){return Boolean(!e||"string"===typeof e&&F_[e]||z_(e)||Array.isArray(e)&&e.every(B_))}const U_=([e,t,r,n])=>`cubic-bezier(${e}, ${t}, ${r}, ${n})`,F_={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:U_([0,.65,.55,1]),circOut:U_([.55,0,1,.45]),backIn:U_([.31,.01,.66,-.59]),backOut:U_([.33,1.53,.69,.99])};function $_(e){if(e)return z_(e)?U_(e):Array.isArray(e)?e.map($_):F_[e]}const H_=(e,t,r)=>(((1-3*r+3*t)*e+(3*r-6*t))*e+3*t)*e,V_=1e-7,q_=12;function K_(e,t,r,n){if(e===t&&r===n)return t_;const i=t=>function(e,t,r,n,i){let o,a,s=0;do{a=t+(r-t)/2,o=H_(a,n,i)-e,o>0?r=a:t=a}while(Math.abs(o)>V_&&++s0===e||1===e?e:H_(i(e),t,n)}const W_=K_(.42,0,1,1),G_=K_(0,0,.58,1),Z_=K_(.42,0,.58,1),Y_=e=>Array.isArray(e)&&"number"!==typeof e[0],X_=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,J_=e=>t=>1-e(1-t),Q_=e=>1-Math.sin(Math.acos(e)),ek=J_(Q_),tk=X_(Q_),rk=K_(.33,1.53,.69,.99),nk=J_(rk),ik=X_(nk),ok={linear:t_,easeIn:W_,easeInOut:Z_,easeOut:G_,circIn:Q_,circInOut:tk,circOut:ek,backIn:nk,backInOut:ik,backOut:rk,anticipate:e=>(e*=2)<1?.5*nk(e):.5*(2-Math.pow(2,-10*(e-1)))},ak=e=>{if(Array.isArray(e)){M_(4===e.length,"Cubic bezier arrays must contain four numerical values.");const[t,r,n,i]=e;return K_(t,r,n,i)}return"string"===typeof e?(M_(void 0!==ok[e],`Invalid easing type '${e}'`),ok[e]):e},sk=(e,t,r)=>{const n=t-e;return 0===n?1:(r-e)/n},ck=(e,t,r)=>e+(t-e)*r;function lk(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+6*(t-e)*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e}const uk=(e,t)=>r=>Boolean(mx(r)&&px.test(r)&&r.startsWith(e)||t&&Object.prototype.hasOwnProperty.call(r,t)),dk=(e,t,r)=>n=>{if(!mx(n))return n;const[i,o,a,s]=n.match(hx);return{[e]:parseFloat(i),[t]:parseFloat(o),[r]:parseFloat(a),alpha:void 0!==s?parseFloat(s):1}},hk={...cx,transform:e=>Math.round((e=>sx(0,255,e))(e))},fk={test:uk("rgb","red"),parse:dk("red","green","blue"),transform:({red:e,green:t,blue:r,alpha:n=1})=>"rgba("+hk.transform(e)+", "+hk.transform(t)+", "+hk.transform(r)+", "+dx(lx.transform(n))+")"};const pk={test:uk("#"),parse:function(e){let t="",r="",n="",i="";return e.length>5?(t=e.substring(1,3),r=e.substring(3,5),n=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),r=e.substring(2,3),n=e.substring(3,4),i=e.substring(4,5),t+=t,r+=r,n+=n,i+=i),{red:parseInt(t,16),green:parseInt(r,16),blue:parseInt(n,16),alpha:i?parseInt(i,16)/255:1}},transform:fk.transform},mk={test:uk("hsl","hue"),parse:dk("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:r,alpha:n=1})=>"hsla("+Math.round(e)+", "+yx.transform(dx(t))+", "+yx.transform(dx(r))+", "+dx(lx.transform(n))+")"},gk=(e,t,r)=>{const n=e*e,i=r*(t*t-n)+n;return i<0?0:Math.sqrt(i)},vk=[pk,fk,mk];function yk(e){const t=(e=>vk.find((t=>t.test(e))))(e);M_(Boolean(t),`'${e}' is not an animatable color. Use the equivalent color code instead.`);let r=t.parse(e);return t===mk&&(r=function({hue:e,saturation:t,lightness:r,alpha:n}){e/=360,r/=100;let i=0,o=0,a=0;if(t/=100){const n=r<.5?r*(1+t):r+t-r*t,s=2*r-n;i=lk(s,n,e+1/3),o=lk(s,n,e),a=lk(s,n,e-1/3)}else i=o=a=r;return{red:Math.round(255*i),green:Math.round(255*o),blue:Math.round(255*a),alpha:n}}(r)),r}const bk=(e,t)=>{const r=yk(e),n=yk(t),i={...r};return e=>(i.red=gk(r.red,n.red,e),i.green=gk(r.green,n.green,e),i.blue=gk(r.blue,n.blue,e),i.alpha=ck(r.alpha,n.alpha,e),fk.transform(i))},wk={test:e=>fk.test(e)||pk.test(e)||mk.test(e),parse:e=>fk.test(e)?fk.parse(e):mk.test(e)?mk.parse(e):pk.parse(e),transform:e=>mx(e)?e:e.hasOwnProperty("red")?fk.transform(e):mk.transform(e)};const xk="number",_k="color",kk="var",Sk="var(",Ek="${}",Ak=/(var\s*\(\s*--[\w-]+(\s*,\s*(?:(?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)+)?\s*\))|(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))|((-)?([\d]*\.?[\d])+)/gi;function Pk(e){const t=e.toString(),r=t.match(Ak)||[],n=[],i={color:[],number:[],var:[]},o=[];for(let a=0;a{let i="";for(let o=0;o"number"===typeof e?0:e;const Ck={test:function(e){var t,r;return isNaN(e)&&mx(e)&&((null===(t=e.match(hx))||void 0===t?void 0:t.length)||0)+((null===(r=e.match(fx))||void 0===r?void 0:r.length)||0)>0},parse:Ok,createTransformer:Tk,getAnimatableNone:function(e){const t=Ok(e);return Tk(e)(t.map(jk))}};function Rk(e,t){return r=>r>0?t:e}function Ik(e,t){return r=>ck(e,t,r)}function Mk(e){return"number"===typeof e?Ik:"string"===typeof e?ix(e)?Rk:wk.test(e)?bk:Dk:Array.isArray(e)?Lk:"object"===typeof e?wk.test(e)?bk:Nk:Rk}function Lk(e,t){const r=[...e],n=r.length,i=e.map(((e,r)=>Mk(e)(e,t[r])));return e=>{for(let t=0;t{for(const t in n)r[t]=n[t](e);return r}}const Dk=(e,t)=>{const r=Ck.createTransformer(t),n=Pk(e),i=Pk(t);return n.indexes.var.length===i.indexes.var.length&&n.indexes.color.length===i.indexes.color.length&&n.indexes.number.length>=i.indexes.number.length?p_(Lk(function(e,t){var r;const n=[],i={color:0,var:0,number:0};for(let o=0;ot[0];e[0]>e[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const a=function(e,t,r){const n=[],i=r||zk,o=e.length-1;for(let a=0;a{let r=0;if(s>1)for(;rc(sx(e[0],e[o-1],t)):c}function Uk(e){const t=[0];return function(e,t){const r=e[e.length-1];for(let n=1;n<=t;n++){const i=sk(0,t,n);e.push(ck(r,1,i))}}(t,e.length-1),t}function Fk({duration:e=300,keyframes:t,times:r,ease:n="easeInOut"}){const i=Y_(n)?n.map(ak):ak(n),o={done:!1,value:t[0]},a=function(e,t){return e.map((e=>e*t))}(r&&r.length===t.length?r:Uk(t),e),s=Bk(a,t,{ease:Array.isArray(i)?i:(c=t,l=i,c.map((()=>l||Z_)).splice(0,c.length-1))});var c,l;return{calculatedDuration:e,next:t=>(o.value=s(t),o.done=t>=e,o)}}function $k(e,t){return t?e*(1e3/t):0}const Hk=5;function Vk(e,t,r){const n=Math.max(t-Hk,0);return $k(r-e(n),t-n)}const qk=.001,Kk=.01,Wk=10,Gk=.05,Zk=1;function Yk({duration:e=800,bounce:t=.25,velocity:r=0,mass:n=1}){let i,o;I_(e<=L_(Wk),"Spring duration must be 10 seconds or less");let a=1-t;a=sx(Gk,Zk,a),e=sx(Kk,Wk,N_(e)),a<1?(i=t=>{const n=t*a,i=n*e,o=n-r,s=Jk(t,a),c=Math.exp(-i);return qk-o/s*c},o=t=>{const n=t*a*e,o=n*r+r,s=Math.pow(a,2)*Math.pow(t,2)*e,c=Math.exp(-n),l=Jk(Math.pow(t,2),a);return(-i(t)+qk>0?-1:1)*((o-s)*c)/l}):(i=t=>Math.exp(-t*e)*((t-r)*e+1)-qk,o=t=>Math.exp(-t*e)*(e*e*(r-t)));const s=function(e,t,r){let n=r;for(let i=1;ivoid 0!==e[t]))}function rS({keyframes:e,restDelta:t,restSpeed:r,...n}){const i=e[0],o=e[e.length-1],a={done:!1,value:i},{stiffness:s,damping:c,mass:l,duration:u,velocity:d,isResolvedFromDuration:h}=function(e){let t={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...e};if(!tS(e,eS)&&tS(e,Qk)){const r=Yk(e);t={...t,...r,mass:1},t.isResolvedFromDuration=!0}return t}({...n,velocity:-N_(n.velocity||0)}),f=d||0,p=c/(2*Math.sqrt(s*l)),m=o-i,g=N_(Math.sqrt(s/l)),v=Math.abs(m)<5;let y;if(r||(r=v?.01:2),t||(t=v?.005:.5),p<1){const e=Jk(g,p);y=t=>{const r=Math.exp(-p*g*t);return o-r*((f+p*g*m)/e*Math.sin(e*t)+m*Math.cos(e*t))}}else if(1===p)y=e=>o-Math.exp(-g*e)*(m+(f+g*m)*e);else{const e=g*Math.sqrt(p*p-1);y=t=>{const r=Math.exp(-p*g*t),n=Math.min(e*t,300);return o-r*((f+p*g*m)*Math.sinh(n)+e*m*Math.cosh(n))/e}}return{calculatedDuration:h&&u||null,next:e=>{const n=y(e);if(h)a.done=e>=u;else{let i=f;0!==e&&(i=p<1?Vk(y,e,n):0);const s=Math.abs(i)<=r,c=Math.abs(o-n)<=t;a.done=s&&c}return a.value=a.done?o:n,a}}}function nS({keyframes:e,velocity:t=0,power:r=.8,timeConstant:n=325,bounceDamping:i=10,bounceStiffness:o=500,modifyTarget:a,min:s,max:c,restDelta:l=.5,restSpeed:u}){const d=e[0],h={done:!1,value:d},f=e=>void 0===s?c:void 0===c||Math.abs(s-e)-p*Math.exp(-e/n),y=e=>g+v(e),b=e=>{const t=v(e),r=y(e);h.done=Math.abs(t)<=l,h.value=h.done?g:r};let w,x;const _=e=>{(e=>void 0!==s&&ec)(h.value)&&(w=e,x=rS({keyframes:[h.value,f(h.value)],velocity:Vk(y,e,h.value),damping:i,stiffness:o,restDelta:l,restSpeed:u}))};return _(0),{calculatedDuration:null,next:e=>{let t=!1;return x||void 0!==w||(t=!0,b(e),_(e)),void 0!==w&&e>w?x.next(e-w):(!t&&b(e),h)}}}let iS;function oS(){iS=void 0}const aS={now:()=>(void 0===iS&&aS.set(i_.isProcessing||kw?i_.timestamp:performance.now()),iS),set:e=>{iS=e,queueMicrotask(oS)}},sS=e=>{const t=({timestamp:t})=>e(t);return{start:()=>r_.update(t,!0),stop:()=>n_(t),now:()=>i_.isProcessing?i_.timestamp:aS.now()}},cS=2e4;function lS(e){let t=0;let r=e.next(t);for(;!r.done&&t=cS?1/0:t}const uS={decay:nS,inertia:nS,tween:Fk,keyframes:Fk,spring:rS},dS=e=>e/100;function hS({autoplay:e=!0,delay:t=0,driver:r=sS,keyframes:n,type:i="keyframes",repeat:o=0,repeatDelay:a=0,repeatType:s="loop",onPlay:c,onStop:l,onComplete:u,onUpdate:d,...h}){let f,p,m=1,g=!1;const v=()=>{p=new Promise((e=>{f=e}))};let y;v();const b=uS[i]||Fk;let w;b!==Fk&&"number"!==typeof n[0]&&(w=p_(dS,zk(n[0],n[1])),n=[0,100]);const x=b({...h,keyframes:n});let _;"mirror"===s&&(_=b({...h,keyframes:[...n].reverse(),velocity:-(h.velocity||0)}));let k="idle",S=null,E=null,A=null;null===x.calculatedDuration&&o&&(x.calculatedDuration=lS(x));const{calculatedDuration:P}=x;let O=1/0,T=1/0;null!==P&&(O=P+a,T=O*(o+1)-a);let j=0;const C=e=>{if(null===E)return;m>0&&(E=Math.min(E,e)),m<0&&(E=Math.min(e-T/m,E)),j=null!==S?S:Math.round(e-E)*m;const r=j-t*(m>=0?1:-1),i=m>=0?r<0:r>T;j=Math.max(r,0),"finished"===k&&null===S&&(j=T);let c=j,l=x;if(o){const e=Math.min(j,T)/O;let t=Math.floor(e),r=e%1;!r&&e>=1&&(r=1),1===r&&t--,t=Math.min(t,o+1);Boolean(t%2)&&("reverse"===s?(r=1-r,a&&(r-=a/O)):"mirror"===s&&(l=_)),c=sx(0,1,r)*O}const u=i?{done:!1,value:n[0]}:l.next(c);w&&(u.value=w(u.value));let{done:h}=u;i||null===P||(h=m>=0?j>=T:j<=0);const f=null===S&&("finished"===k||"running"===k&&h);return d&&d(u.value),f&&M(),u},R=()=>{y&&y.stop(),y=void 0},I=()=>{k="idle",R(),f(),v(),E=A=null},M=()=>{k="finished",u&&u(),R(),f()},L=()=>{if(g)return;y||(y=r(C));const e=y.now();c&&c(),null!==S?E=e-S:E&&"finished"!==k||(E=e),"finished"===k&&v(),A=E,S=null,k="running",y.start()};e&&L();const N={then:(e,t)=>p.then(e,t),get time(){return N_(j)},set time(e){e=L_(e),j=e,null===S&&y&&0!==m?E=y.now()-e/m:S=e},get duration(){const e=null===x.calculatedDuration?lS(x):x.calculatedDuration;return N_(e)},get speed(){return m},set speed(e){e!==m&&y&&(m=e,N.time=N_(j))},get state(){return k},play:L,pause:()=>{k="paused",S=j},stop:()=>{g=!0,"idle"!==k&&(k="idle",l&&l(),I())},cancel:()=>{null!==A&&C(A),I()},complete:()=>{k="finished"},sample:e=>(E=0,C(e))};return N}const fS=function(e){let t;return()=>(void 0===t&&(t=e()),t)}((()=>Object.hasOwnProperty.call(Element.prototype,"animate"))),pS=new Set(["opacity","clipPath","filter","transform"]);function mS(e,t,{onUpdate:r,onComplete:n,...i}){if(!(fS()&&pS.has(t)&&!i.repeatDelay&&"mirror"!==i.repeatType&&0!==i.damping&&"inertia"!==i.type))return!1;let o,a,s=!1,c=!1;const l=()=>{a=new Promise((e=>{o=e}))};l();let{keyframes:u,duration:d=300,ease:h,times:f}=i;if(((e,t)=>"spring"===t.type||"backgroundColor"===e||!B_(t.ease))(t,i)){const e=hS({...i,repeat:0,delay:0});let t={done:!1,value:u[0]};const r=[];let n=0;for(;!t.done&&n<2e4;)t=e.sample(n),r.push(t.value),n+=10;f=void 0,u=r,d=n-10,h="linear"}const p=function(e,t,r,{delay:n=0,duration:i,repeat:o=0,repeatType:a="loop",ease:s,times:c}={}){const l={[t]:r};c&&(l.offset=c);const u=$_(s);return Array.isArray(u)&&(l.easing=u),e.animate(l,{delay:n,duration:i,easing:Array.isArray(u)?"linear":u,fill:"both",iterations:o+1,direction:"reverse"===a?"alternate":"normal"})}(e.owner.current,t,u,{...i,duration:d,ease:h,times:f}),m=()=>{c=!1,p.cancel()},g=()=>{c=!0,r_.update(m),o(),l()};p.onfinish=()=>{c||(e.set(function(e,{repeat:t,repeatType:r="loop"}){return e[t&&"loop"!==r&&t%2===1?0:e.length-1]}(u,i)),n&&n(),g())};return{then:(e,t)=>a.then(e,t),attachTimeline:e=>(p.timeline=e,p.onfinish=null,t_),get time(){return N_(p.currentTime||0)},set time(e){p.currentTime=L_(e)},get speed(){return p.playbackRate},set speed(e){p.playbackRate=e},get duration(){return N_(d)},play:()=>{s||(p.play(),n_(m))},pause:()=>p.pause(),stop:()=>{if(s=!0,"idle"===p.playState)return;const{currentTime:t}=p;if(t){const r=hS({...i,autoplay:!1});e.setWithVelocity(r.sample(t-10).value,r.sample(t).value,10)}g()},complete:()=>{c||p.finish()},cancel:g}}const gS={type:"spring",stiffness:500,damping:25,restSpeed:10},vS={type:"keyframes",duration:.8},yS={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},bS=(e,{keyframes:t})=>t.length>2?vS:Yw.has(e)?e.startsWith("scale")?{type:"spring",stiffness:550,damping:0===t[1]?2*Math.sqrt(550):30,restSpeed:10}:gS:yS,wS=(e,t)=>"zIndex"!==e&&(!("number"!==typeof t&&!Array.isArray(t))||!("string"!==typeof t||!Ck.test(t)&&"0"!==t||t.startsWith("url("))),xS=new Set(["brightness","contrast","saturate","opacity"]);function _S(e){const[t,r]=e.slice(0,-1).split("(");if("drop-shadow"===t)return e;const[n]=r.match(hx)||[];if(!n)return e;const i=r.replace(n,"");let o=xS.has(t)?1:0;return n!==r&&(o*=100),t+"("+o+i+")"}const kS=/([a-z-]*)\(.*?\)/g,SS={...Ck,getAnimatableNone:e=>{const t=e.match(kS);return t?t.map(_S).join(" "):e}},ES={...Sx,color:wk,backgroundColor:wk,outlineColor:wk,fill:wk,stroke:wk,borderColor:wk,borderTopColor:wk,borderRightColor:wk,borderBottomColor:wk,borderLeftColor:wk,filter:SS,WebkitFilter:SS},AS=e=>ES[e];function PS(e,t){let r=AS(e);return r!==SS&&(r=Ck),r.getAnimatableNone?r.getAnimatableNone(t):void 0}const OS=e=>/^0[^.\s]+$/.test(e);function TS(e){return"number"===typeof e?0===e:null!==e?"none"===e||"0"===e||OS(e):void 0}function jS(e,t){return e[t]||e.default||e}const CS=(e,t,r,n={})=>i=>{const o=jS(n,e)||{},a=o.delay||n.delay||0;let{elapsed:s=0}=n;s-=L_(a);const c=function(e,t,r,n){const i=wS(t,r);let o;o=Array.isArray(r)?[...r]:[null,r];const a=void 0!==n.from?n.from:e.get();let s;const c=[];for(let l=0;l{t.set(e),o.onUpdate&&o.onUpdate(e)},onComplete:()=>{i(),o.onComplete&&o.onComplete()}};if(function({when:e,delay:t,delayChildren:r,staggerChildren:n,staggerDirection:i,repeat:o,repeatType:a,repeatDelay:s,from:c,elapsed:l,...u}){return!!Object.keys(u).length}(o)||(f={...f,...bS(e,f)}),f.duration&&(f.duration=L_(f.duration)),f.repeatDelay&&(f.repeatDelay=L_(f.repeatDelay)),!d||!h||D_||!1===o.type||_w)return function({keyframes:e,delay:t,onUpdate:r,onComplete:n}){const i=()=>(r&&r(e[e.length-1]),n&&n(),{time:0,speed:1,duration:0,play:t_,pause:t_,stop:t_,then:e=>(e(),Promise.resolve()),cancel:t_,complete:t_});return t?hS({keyframes:[0,1],duration:0,delay:t,onComplete:i}):i()}(D_?{...f,delay:0}:f);if(!n.isHandoff&&t.owner&&t.owner.current instanceof HTMLElement&&!t.owner.getProps().onUpdate){const r=mS(t,e,f);if(r)return r}return hS(f)};function RS(e){return Boolean(Jw(e)&&e.add)}const IS=e=>/^\-?\d*\.?\d+$/.test(e);function MS(e,t){-1===e.indexOf(t)&&e.push(t)}function LS(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}class NS{constructor(){this.subscriptions=[]}add(e){return MS(this.subscriptions,e),()=>LS(this.subscriptions,e)}notify(e,t,r){const n=this.subscriptions.length;if(n)if(1===n)this.subscriptions[0](e,t,r);else for(let i=0;i{const r=aS.now();this.updatedAt!==r&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(e),this.current!==this.prev&&this.events.change&&this.events.change.notify(this.current),t&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.hasAnimated=!1,this.setCurrent(e),this.canTrackVelocity=(e=>!isNaN(parseFloat(e)))(this.current),this.owner=t.owner}setCurrent(e){this.current=e,this.updatedAt=aS.now()}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,t){this.events[e]||(this.events[e]=new NS);const r=this.events[e].add(t);return"change"===e?()=>{r(),r_.read((()=>{this.events.change.getSize()||this.stop()}))}:r}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,t){this.passiveEffect=e,this.stopPassiveEffect=t}set(e,t=!0){t&&this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e,t)}setWithVelocity(e,t,r){this.set(t),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-r}jump(e){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return DS.current&&DS.current.push(this),this.current}getPrevious(){return this.prev}getVelocity(){const e=aS.now();if(!this.canTrackVelocity||void 0===this.prevFrameValue||e-this.updatedAt>30)return 0;const t=Math.min(this.updatedAt-this.prevUpdatedAt,30);return $k(parseFloat(this.current)-parseFloat(this.prevFrameValue),t)}start(e){return this.stop(),new Promise((t=>{this.hasAnimated=!0,this.animation=e(t),this.events.animationStart&&this.events.animationStart.notify()})).then((()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()}))}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function BS(e,t){return new zS(e,t)}const US=e=>t=>t.test(e),FS=[cx,bx,yx,vx,xx,wx,{test:e=>"auto"===e,parse:e=>e}],$S=e=>FS.find(US(e)),HS=[...FS,wk,Ck],VS=e=>HS.find(US(e));function qS(e,t,r){e.hasValue(t)?e.getValue(t).set(r):e.addValue(t,BS(r))}function KS(e,t){const r=R_(e,t);let{transitionEnd:n={},transition:i={},...o}=r?e.makeTargetAnimatable(r,!1):{};o={...o,...n};for(const a in o){qS(e,a,Xx(o[a]))}}function WS(e,t){if(!t)return;return(t[e]||t.default||t).from}function GS({protectedKeys:e,needsAnimating:t},r){const n=e.hasOwnProperty(r)&&!0!==t[r];return t[r]=!1,n}function ZS(e,t){const r=e.get();if(!Array.isArray(t))return r!==t;for(let n=0;nc.remove(d)))),l.push(h)}return a&&Promise.all(l).then((()=>{a&&KS(e,a)})),l}function XS(e,t,r={}){const n=R_(e,t,r.custom);let{transition:i=e.getDefaultTransition()||{}}=n||{};r.transitionOverride&&(i=r.transitionOverride);const o=n?()=>Promise.all(YS(e,n,r)):()=>Promise.resolve(),a=e.variantChildren&&e.variantChildren.size?(n=0)=>{const{delayChildren:o=0,staggerChildren:a,staggerDirection:s}=i;return function(e,t,r=0,n=0,i=1,o){const a=[],s=(e.variantChildren.size-1)*n,c=1===i?(e=0)=>e*n:(e=0)=>s-e*n;return Array.from(e.variantChildren).sort(JS).forEach(((e,n)=>{e.notify("AnimationStart",t),a.push(XS(e,t,{...o,delay:r+c(n)}).then((()=>e.notify("AnimationComplete",t))))})),Promise.all(a)}(e,t,o+n,a,s,r)}:()=>Promise.resolve(),{when:s}=i;if(s){const[e,t]="beforeChildren"===s?[o,a]:[a,o];return e().then((()=>t()))}return Promise.all([o(),a(r.delay)])}function JS(e,t){return e.sortNodePosition(t)}const QS=[...Rw].reverse(),eE=Rw.length;function tE(e){return t=>Promise.all(t.map((({animation:t,options:r})=>function(e,t,r={}){let n;if(e.notify("AnimationStart",t),Array.isArray(t)){const i=t.map((t=>XS(e,t,r)));n=Promise.all(i)}else if("string"===typeof t)n=XS(e,t,r);else{const i="function"===typeof t?R_(e,t,r.custom):t;n=Promise.all(YS(e,i,r))}return n.then((()=>e.notify("AnimationComplete",t)))}(e,t,r))))}function rE(e){let t=tE(e);const r={animate:iE(!0),whileInView:iE(),whileHover:iE(),whileTap:iE(),whileDrag:iE(),whileFocus:iE(),exit:iE()};let n=!0;const i=(t,r)=>{const n=R_(e,r);if(n){const{transition:e,transitionEnd:r,...i}=n;t={...t,...i,...r}}return t};function o(o,a){const s=e.getProps(),c=e.getVariantContext(!0)||{},l=[],u=new Set;let d={},h=1/0;for(let t=0;th&&g,w=!1;const x=Array.isArray(m)?m:[m];let _=x.reduce(i,{});!1===v&&(_={});const{prevResolvedValues:k={}}=p,S={...k,..._},E=e=>{b=!0,u.has(e)&&(w=!0,u.delete(e)),p.needsAnimating[e]=!0};for(const e in S){const t=_[e],r=k[e];if(d.hasOwnProperty(e))continue;let n=!1;n=Zx(t)&&Zx(r)?!C_(t,r):t!==r,n?void 0!==t?E(e):u.add(e):void 0!==t&&u.has(e)?E(e):p.protectedKeys[e]=!0}p.prevProp=m,p.prevResolvedValues=_,p.isActive&&(d={...d,..._}),n&&e.blockInitialAnimation&&(b=!1),!b||y&&!w||l.push(...x.map((e=>({animation:e,options:{type:f,...o}}))))}if(u.size){const t={};u.forEach((r=>{const n=e.getBaseTarget(r);void 0!==n&&(t[r]=n)})),l.push({animation:t})}let f=Boolean(l.length);return!n||!1!==s.initial&&s.initial!==s.animate||e.manuallyAnimateOnMount||(f=!1),n=!1,f?t(l):Promise.resolve()}return{animateChanges:o,setActive:function(t,n,i){var a;if(r[t].isActive===n)return Promise.resolve();null===(a=e.variantChildren)||void 0===a||a.forEach((e=>{var r;return null===(r=e.animationState)||void 0===r?void 0:r.setActive(t,n)})),r[t].isActive=n;const s=o(i,t);for(const e in r)r[e].protectedKeys={};return s},setAnimateFunction:function(r){t=r(e)},getState:()=>r}}function nE(e,t){return"string"===typeof t?t!==e:!!Array.isArray(t)&&!C_(t,e)}function iE(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}let oE=0;const aE={animation:{Feature:class extends w_{constructor(e){super(e),e.animationState||(e.animationState=rE(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();this.unmount(),Cw(e)&&(this.unmount=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:t}=this.node.prevProps||{};e!==t&&this.updateAnimationControlsSubscription()}unmount(){}}},exit:{Feature:class extends w_{constructor(){super(...arguments),this.id=oE++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:t,custom:r}=this.node.presenceContext,{isPresent:n}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===n)return;const i=this.node.animationState.setActive("exit",!e,{custom:null!==r&&void 0!==r?r:this.node.getProps().custom});t&&!e&&i.then((()=>t(this.id)))}mount(){const{register:e}=this.node.presenceContext||{};e&&(this.unmount=e(this.id))}unmount(){}}}},sE=(e,t)=>Math.abs(e-t);class cE{constructor(e,t,{transformPagePoint:r,contextWindow:n,dragSnapToOrigin:i=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!this.lastMoveEvent||!this.lastMoveEventInfo)return;const e=dE(this.lastMoveEventInfo,this.history),t=null!==this.startEvent,r=function(e,t){const r=sE(e.x,t.x),n=sE(e.y,t.y);return Math.sqrt(r**2+n**2)}(e.offset,{x:0,y:0})>=3;if(!t&&!r)return;const{point:n}=e,{timestamp:i}=i_;this.history.push({...n,timestamp:i});const{onStart:o,onMove:a}=this.handlers;t||(o&&o(this.lastMoveEvent,e),this.startEvent=this.lastMoveEvent),a&&a(this.lastMoveEvent,e)},this.handlePointerMove=(e,t)=>{this.lastMoveEvent=e,this.lastMoveEventInfo=lE(t,this.transformPagePoint),r_.update(this.updatePoint,!0)},this.handlePointerUp=(e,t)=>{this.end();const{onEnd:r,onSessionEnd:n,resumeAnimation:i}=this.handlers;if(this.dragSnapToOrigin&&i&&i(),!this.lastMoveEvent||!this.lastMoveEventInfo)return;const o=dE("pointercancel"===e.type?this.lastMoveEventInfo:lE(t,this.transformPagePoint),this.history);this.startEvent&&r&&r(e,o),n&&n(e,o)},!l_(e))return;this.dragSnapToOrigin=i,this.handlers=t,this.transformPagePoint=r,this.contextWindow=n||window;const o=lE(u_(e),this.transformPagePoint),{point:a}=o,{timestamp:s}=i_;this.history=[{...a,timestamp:s}];const{onSessionStart:c}=t;c&&c(e,dE(o,this.history)),this.removeListeners=p_(h_(this.contextWindow,"pointermove",this.handlePointerMove),h_(this.contextWindow,"pointerup",this.handlePointerUp),h_(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),n_(this.updatePoint)}}function lE(e,t){return t?{point:t(e.point)}:e}function uE(e,t){return{x:e.x-t.x,y:e.y-t.y}}function dE({point:e},t){return{point:e,delta:uE(e,fE(t)),offset:uE(e,hE(t)),velocity:pE(t,.1)}}function hE(e){return e[0]}function fE(e){return e[e.length-1]}function pE(e,t){if(e.length<2)return{x:0,y:0};let r=e.length-1,n=null;const i=fE(e);for(;r>=0&&(n=e[r],!(i.timestamp-n.timestamp>L_(t)));)r--;if(!n)return{x:0,y:0};const o=N_(i.timestamp-n.timestamp);if(0===o)return{x:0,y:0};const a={x:(i.x-n.x)/o,y:(i.y-n.y)/o};return a.x===1/0&&(a.x=0),a.y===1/0&&(a.y=0),a}function mE(e){return e.max-e.min}function gE(e,t=0,r=.01){return Math.abs(e-t)<=r}function vE(e,t,r,n=.5){e.origin=n,e.originPoint=ck(t.min,t.max,e.origin),e.scale=mE(r)/mE(t),(gE(e.scale,1,1e-4)||isNaN(e.scale))&&(e.scale=1),e.translate=ck(r.min,r.max,e.origin)-e.originPoint,(gE(e.translate)||isNaN(e.translate))&&(e.translate=0)}function yE(e,t,r,n){vE(e.x,t.x,r.x,n?n.originX:void 0),vE(e.y,t.y,r.y,n?n.originY:void 0)}function bE(e,t,r){e.min=r.min+t.min,e.max=e.min+mE(t)}function wE(e,t,r){e.min=t.min-r.min,e.max=e.min+mE(t)}function xE(e,t,r){wE(e.x,t.x,r.x),wE(e.y,t.y,r.y)}function _E(e,t,r){return{min:void 0!==t?e.min+t:void 0,max:void 0!==r?e.max+r-(e.max-e.min):void 0}}function kE(e,t){let r=t.min-e.min,n=t.max-e.max;return t.max-t.min({x:{translate:0,scale:1,origin:0,originPoint:0},y:{translate:0,scale:1,origin:0,originPoint:0}}),OE=()=>({x:{min:0,max:0},y:{min:0,max:0}});function TE(e){return[e("x"),e("y")]}function jE({top:e,left:t,right:r,bottom:n}){return{x:{min:t,max:r},y:{min:e,max:n}}}function CE(e){return void 0===e||1===e}function RE({scale:e,scaleX:t,scaleY:r}){return!CE(e)||!CE(t)||!CE(r)}function IE(e){return RE(e)||ME(e)||e.z||e.rotate||e.rotateX||e.rotateY}function ME(e){return LE(e.x)||LE(e.y)}function LE(e){return e&&"0%"!==e}function NE(e,t,r){return r+t*(e-r)}function DE(e,t,r,n,i){return void 0!==i&&(e=NE(e,i,n)),NE(e,r,n)+t}function zE(e,t=0,r=1,n,i){e.min=DE(e.min,t,r,n,i),e.max=DE(e.max,t,r,n,i)}function BE(e,{x:t,y:r}){zE(e.x,t.translate,t.scale,t.originPoint),zE(e.y,r.translate,r.scale,r.originPoint)}function UE(e){return Number.isInteger(e)||e>1.0000000000001||e<.999999999999?e:1}function FE(e,t){e.min=e.min+t,e.max=e.max+t}function $E(e,t,[r,n,i]){const o=void 0!==t[i]?t[i]:.5,a=ck(e.min,e.max,o);zE(e,t[r],t[n],a,t.scale)}const HE=["x","scaleX","originX"],VE=["y","scaleY","originY"];function qE(e,t){$E(e.x,t,HE),$E(e.y,t,VE)}function KE(e,t){return jE(function(e,t){if(!t)return e;const r=t({x:e.left,y:e.top}),n=t({x:e.right,y:e.bottom});return{top:r.y,left:r.x,bottom:n.y,right:n.x}}(e.getBoundingClientRect(),t))}const WE=({current:e})=>e?e.ownerDocument.defaultView:null,GE=new WeakMap;class ZE{constructor(e){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=OE(),this.visualElement=e}start(e,{snapToCursor:t=!1}={}){const{presenceContext:r}=this.visualElement;if(r&&!1===r.isPresent)return;const{dragSnapToOrigin:n}=this.getProps();this.panSession=new cE(e,{onSessionStart:e=>{const{dragSnapToOrigin:r}=this.getProps();r?this.pauseAnimation():this.stopAnimation(),t&&this.snapToCursor(u_(e,"page").point)},onStart:(e,t)=>{const{drag:r,dragPropagation:n,onDragStart:i}=this.getProps();if(r&&!n&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=y_(r),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),TE((e=>{let t=this.getAxisMotionValue(e).get()||0;if(yx.test(t)){const{projection:r}=this.visualElement;if(r&&r.layout){const n=r.layout.layoutBox[e];if(n){t=mE(n)*(parseFloat(t)/100)}}}this.originPoint[e]=t})),i&&r_.update((()=>i(e,t)),!1,!0);const{animationState:o}=this.visualElement;o&&o.setActive("whileDrag",!0)},onMove:(e,t)=>{const{dragPropagation:r,dragDirectionLock:n,onDirectionLock:i,onDrag:o}=this.getProps();if(!r&&!this.openGlobalLock)return;const{offset:a}=t;if(n&&null===this.currentDirection)return this.currentDirection=function(e,t=10){let r=null;Math.abs(e.y)>t?r="y":Math.abs(e.x)>t&&(r="x");return r}(a),void(null!==this.currentDirection&&i&&i(this.currentDirection));this.updateAxis("x",t.point,a),this.updateAxis("y",t.point,a),this.visualElement.render(),o&&o(e,t)},onSessionEnd:(e,t)=>this.stop(e,t),resumeAnimation:()=>TE((e=>{var t;return"paused"===this.getAnimationState(e)&&(null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.play())}))},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:n,contextWindow:WE(this.visualElement)})}stop(e,t){const r=this.isDragging;if(this.cancel(),!r)return;const{velocity:n}=t;this.startAnimation(n);const{onDragEnd:i}=this.getProps();i&&r_.update((()=>i(e,t)))}cancel(){this.isDragging=!1;const{projection:e,animationState:t}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:r}=this.getProps();!r&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),t&&t.setActive("whileDrag",!1)}updateAxis(e,t,r){const{drag:n}=this.getProps();if(!r||!YE(e,n,this.currentDirection))return;const i=this.getAxisMotionValue(e);let o=this.originPoint[e]+r[e];this.constraints&&this.constraints[e]&&(o=function(e,{min:t,max:r},n){return void 0!==t&&er&&(e=n?ck(r,e,n.max):Math.min(e,r)),e}(o,this.constraints[e],this.elastic[e])),i.set(o)}resolveConstraints(){var e;const{dragConstraints:t,dragElastic:r}=this.getProps(),n=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):null===(e=this.visualElement.projection)||void 0===e?void 0:e.layout,i=this.constraints;t&&Tw(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):this.constraints=!(!t||!n)&&function(e,{top:t,left:r,bottom:n,right:i}){return{x:_E(e.x,r,i),y:_E(e.y,t,n)}}(n.layoutBox,t),this.elastic=function(e=SE){return!1===e?e=0:!0===e&&(e=SE),{x:EE(e,"left","right"),y:EE(e,"top","bottom")}}(r),i!==this.constraints&&n&&this.constraints&&!this.hasMutatedConstraints&&TE((e=>{this.getAxisMotionValue(e)&&(this.constraints[e]=function(e,t){const r={};return void 0!==t.min&&(r.min=t.min-e.min),void 0!==t.max&&(r.max=t.max-e.min),r}(n.layoutBox[e],this.constraints[e]))}))}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:t}=this.getProps();if(!e||!Tw(e))return!1;const r=e.current;M_(null!==r,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");const{projection:n}=this.visualElement;if(!n||!n.layout)return!1;const i=function(e,t,r){const n=KE(e,r),{scroll:i}=t;return i&&(FE(n.x,i.offset.x),FE(n.y,i.offset.y)),n}(r,n.root,this.visualElement.getTransformPagePoint());let o=function(e,t){return{x:kE(e.x,t.x),y:kE(e.y,t.y)}}(n.layout.layoutBox,i);if(t){const e=t(function({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}(o));this.hasMutatedConstraints=!!e,e&&(o=jE(e))}return o}startAnimation(e){const{drag:t,dragMomentum:r,dragElastic:n,dragTransition:i,dragSnapToOrigin:o,onDragTransitionEnd:a}=this.getProps(),s=this.constraints||{},c=TE((a=>{if(!YE(a,t,this.currentDirection))return;let c=s&&s[a]||{};o&&(c={min:0,max:0});const l=n?200:1e6,u=n?40:1e7,d={type:"inertia",velocity:r?e[a]:0,bounceStiffness:l,bounceDamping:u,timeConstant:750,restDelta:1,restSpeed:10,...i,...c};return this.startAxisValueAnimation(a,d)}));return Promise.all(c).then(a)}startAxisValueAnimation(e,t){const r=this.getAxisMotionValue(e);return r.start(CS(e,r,0,t))}stopAnimation(){TE((e=>this.getAxisMotionValue(e).stop()))}pauseAnimation(){TE((e=>{var t;return null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.pause()}))}getAnimationState(e){var t;return null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.state}getAxisMotionValue(e){const t="_drag"+e.toUpperCase(),r=this.visualElement.getProps(),n=r[t];return n||this.visualElement.getValue(e,(r.initial?r.initial[e]:void 0)||0)}snapToCursor(e){TE((t=>{const{drag:r}=this.getProps();if(!YE(t,r,this.currentDirection))return;const{projection:n}=this.visualElement,i=this.getAxisMotionValue(t);if(n&&n.layout){const{min:r,max:o}=n.layout.layoutBox[t];i.set(e[t]-ck(r,o,.5))}}))}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:t}=this.getProps(),{projection:r}=this.visualElement;if(!Tw(t)||!r||!this.constraints)return;this.stopAnimation();const n={x:0,y:0};TE((e=>{const t=this.getAxisMotionValue(e);if(t){const r=t.get();n[e]=function(e,t){let r=.5;const n=mE(e),i=mE(t);return i>n?r=sk(t.min,t.max-n,e.min):n>i&&(r=sk(e.min,e.max-i,t.min)),sx(0,1,r)}({min:r,max:r},this.constraints[e])}}));const{transformTemplate:i}=this.visualElement.getProps();this.visualElement.current.style.transform=i?i({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.resolveConstraints(),TE((t=>{if(!YE(t,e,null))return;const r=this.getAxisMotionValue(t),{min:i,max:o}=this.constraints[t];r.set(ck(i,o,n[t]))}))}addListeners(){if(!this.visualElement.current)return;GE.set(this.visualElement,this);const e=h_(this.visualElement.current,"pointerdown",(e=>{const{drag:t,dragListener:r=!0}=this.getProps();t&&r&&this.start(e)})),t=()=>{const{dragConstraints:e}=this.getProps();Tw(e)&&(this.constraints=this.resolveRefConstraints())},{projection:r}=this.visualElement,n=r.addEventListener("measure",t);r&&!r.layout&&(r.root&&r.root.updateScroll(),r.updateLayout()),t();const i=c_(window,"resize",(()=>this.scalePositionWithinConstraints())),o=r.addEventListener("didUpdate",(({delta:e,hasLayoutChanged:t})=>{this.isDragging&&t&&(TE((t=>{const r=this.getAxisMotionValue(t);r&&(this.originPoint[t]+=e[t].translate,r.set(r.get()+e[t].translate))})),this.visualElement.render())}));return()=>{i(),e(),n(),o&&o()}}getProps(){const e=this.visualElement.getProps(),{drag:t=!1,dragDirectionLock:r=!1,dragPropagation:n=!1,dragConstraints:i=!1,dragElastic:o=SE,dragMomentum:a=!0}=e;return{...e,drag:t,dragDirectionLock:r,dragPropagation:n,dragConstraints:i,dragElastic:o,dragMomentum:a}}}function YE(e,t,r){return(!0===t||t===e)&&(null===r||r===e)}const XE=e=>(t,r)=>{e&&r_.update((()=>e(t,r)))};const JE={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function QE(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const eA={correct:(e,t)=>{if(!t.target)return e;if("string"===typeof e){if(!bx.test(e))return e;e=parseFloat(e)}return`${QE(e,t.target.x)}% ${QE(e,t.target.y)}%`}},tA={correct:(e,{treeScale:t,projectionDelta:r})=>{const n=e,i=Ck.parse(e);if(i.length>5)return n;const o=Ck.createTransformer(e),a="number"!==typeof i[0]?1:0,s=r.x.scale*t.x,c=r.y.scale*t.y;i[0+a]/=s,i[1+a]/=c;const l=ck(s,c,.5);return"number"===typeof i[2+a]&&(i[2+a]/=l),"number"===typeof i[3+a]&&(i[3+a]/=l),o(i)}};class rA extends i.Component{componentDidMount(){const{visualElement:e,layoutGroup:t,switchLayoutGroup:r,layoutId:n}=this.props,{projection:i}=e;var o;o=iA,Object.assign(Gw,o),i&&(t.group&&t.group.add(i),r&&r.register&&n&&r.register(i),i.root.didUpdate(),i.addEventListener("animationComplete",(()=>{this.safeToRemove()})),i.setOptions({...i.options,onExitComplete:()=>this.safeToRemove()})),JE.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:t,visualElement:r,drag:n,isPresent:i}=this.props,o=r.projection;return o?(o.isPresent=i,n||e.layoutDependency!==t||void 0===t?o.willUpdate():this.safeToRemove(),e.isPresent!==i&&(i?o.promote():o.relegate()||r_.postRender((()=>{const e=o.getStack();e&&e.members.length||this.safeToRemove()}))),null):null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),Pw.postRender((()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()})))}componentWillUnmount(){const{visualElement:e,layoutGroup:t,switchLayoutGroup:r}=this.props,{projection:n}=e;n&&(n.scheduleCheckAfterUnmount(),t&&t.group&&t.group.remove(n),r&&r.deregister&&r.deregister(n))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function nA(e){const[t,r]=fw(),n=(0,i.useContext)(Uw);return i.createElement(rA,{...e,layoutGroup:n,switchLayoutGroup:(0,i.useContext)(Fw),isPresent:t,safeToRemove:r})}const iA={borderRadius:{...eA,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:eA,borderTopRightRadius:eA,borderBottomLeftRadius:eA,borderBottomRightRadius:eA,boxShadow:tA},oA=["TopLeft","TopRight","BottomLeft","BottomRight"],aA=oA.length,sA=e=>"string"===typeof e?parseFloat(e):e,cA=e=>"number"===typeof e||bx.test(e);function lA(e,t){return void 0!==e[t]?e[t]:e.borderRadius}const uA=hA(0,.5,ek),dA=hA(.5,.95,t_);function hA(e,t,r){return n=>nt?1:r(sk(e,t,n))}function fA(e,t){e.min=t.min,e.max=t.max}function pA(e,t){fA(e.x,t.x),fA(e.y,t.y)}function mA(e,t,r,n,i){return e=NE(e-=t,1/r,n),void 0!==i&&(e=NE(e,1/i,n)),e}function gA(e,t,[r,n,i],o,a){!function(e,t=0,r=1,n=.5,i,o=e,a=e){yx.test(t)&&(t=parseFloat(t),t=ck(a.min,a.max,t/100)-a.min);if("number"!==typeof t)return;let s=ck(o.min,o.max,n);e===o&&(s-=t),e.min=mA(e.min,t,r,s,i),e.max=mA(e.max,t,r,s,i)}(e,t[r],t[n],t[i],t.scale,o,a)}const vA=["x","scaleX","originX"],yA=["y","scaleY","originY"];function bA(e,t,r,n){gA(e.x,t,vA,r?r.x:void 0,n?n.x:void 0),gA(e.y,t,yA,r?r.y:void 0,n?n.y:void 0)}function wA(e){return 0===e.translate&&1===e.scale}function xA(e){return wA(e.x)&&wA(e.y)}function _A(e,t){return Math.round(e.x.min)===Math.round(t.x.min)&&Math.round(e.x.max)===Math.round(t.x.max)&&Math.round(e.y.min)===Math.round(t.y.min)&&Math.round(e.y.max)===Math.round(t.y.max)}function kA(e){return mE(e.x)/mE(e.y)}class SA{constructor(){this.members=[]}add(e){MS(this.members,e),e.scheduleRender()}remove(e){if(LS(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const e=this.members[this.members.length-1];e&&this.promote(e)}}relegate(e){const t=this.members.findIndex((t=>e===t));if(0===t)return!1;let r;for(let n=t;n>=0;n--){const e=this.members[n];if(!1!==e.isPresent){r=e;break}}return!!r&&(this.promote(r),!0)}promote(e,t){const r=this.lead;if(e!==r&&(this.prevLead=r,this.lead=e,e.show(),r)){r.instance&&r.scheduleRender(),e.scheduleRender(),e.resumeFrom=r,t&&(e.resumeFrom.preserveOpacity=!0),r.snapshot&&(e.snapshot=r.snapshot,e.snapshot.latestValues=r.animationValues||r.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:n}=e.options;!1===n&&r.hide()}}exitAnimationComplete(){this.members.forEach((e=>{const{options:t,resumingFrom:r}=e;t.onExitComplete&&t.onExitComplete(),r&&r.options.onExitComplete&&r.options.onExitComplete()}))}scheduleRender(){this.members.forEach((e=>{e.instance&&e.scheduleRender(!1)}))}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function EA(e,t,r){let n="";const i=e.x.translate/t.x,o=e.y.translate/t.y;if((i||o)&&(n=`translate3d(${i}px, ${o}px, 0) `),1===t.x&&1===t.y||(n+=`scale(${1/t.x}, ${1/t.y}) `),r){const{rotate:e,rotateX:t,rotateY:i}=r;e&&(n+=`rotate(${e}deg) `),t&&(n+=`rotateX(${t}deg) `),i&&(n+=`rotateY(${i}deg) `)}const a=e.x.scale*t.x,s=e.y.scale*t.y;return 1===a&&1===s||(n+=`scale(${a}, ${s})`),n||"none"}const AA=(e,t)=>e.depth-t.depth;class PA{constructor(){this.children=[],this.isDirty=!1}add(e){MS(this.children,e),this.isDirty=!0}remove(e){LS(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(AA),this.isDirty=!1,this.children.forEach(e)}}const OA=["","X","Y","Z"],TA={visibility:"hidden"};let jA=0;const CA={type:"projectionFrame",totalNodes:0,resolvedTargetDeltas:0,recalculatedProjection:0};function RA({attachResizeListener:e,defaultParent:t,measureScroll:r,checkIsScrollRoot:n,resetTransform:i}){return class{constructor(e={},r=(null===t||void 0===t?void 0:t())){this.id=jA++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{var e;this.projectionUpdateScheduled=!1,CA.totalNodes=CA.resolvedTargetDeltas=CA.recalculatedProjection=0,this.nodes.forEach(LA),this.nodes.forEach($A),this.nodes.forEach(HA),this.nodes.forEach(NA),e=CA,window.MotionDebug&&window.MotionDebug.record(e)},this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=e,this.root=r?r.root||r:this,this.path=r?[...r.path,r]:[],this.parent=r,this.depth=r?r.depth+1:0;for(let t=0;tthis.root.updateBlockedByResize=!1;e(t,(()=>{this.root.updateBlockedByResize=!0,r&&r(),r=function(e,t){const r=aS.now(),n=({timestamp:i})=>{const o=i-r;o>=t&&(n_(n),e(o-t))};return r_.read(n,!0),()=>n_(n)}(n,250),JE.hasAnimatedSinceResize&&(JE.hasAnimatedSinceResize=!1,this.nodes.forEach(FA))}))}i&&this.root.registerSharedNode(i,this),!1!==this.options.animate&&a&&(i||o)&&this.addEventListener("didUpdate",(({delta:e,hasLayoutChanged:t,hasRelativeTargetChanged:r,layout:n})=>{if(this.isTreeAnimationBlocked())return this.target=void 0,void(this.relativeTarget=void 0);const i=this.options.transition||a.getDefaultTransition()||ZA,{onLayoutAnimationStart:o,onLayoutAnimationComplete:s}=a.getProps(),c=!this.targetLayout||!_A(this.targetLayout,n)||r,l=!t&&r;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||l||t&&(c||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(e,l);const t={...jS(i,"layout"),onPlay:o,onComplete:s};(a.shouldReduceMotion||this.options.layoutRoot)&&(t.delay=0,t.type=!1),this.startAnimation(t)}else t||FA(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=n}))}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const e=this.getStack();e&&e.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,n_(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(VA),this.animationId++)}getTransformTemplate(){const{visualElement:e}=this.options;return e&&e.getProps().transformTemplate}willUpdate(e=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked())return void(this.options.onExitComplete&&this.options.onExitComplete());if(!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let i=0;ithis.update())))}clearAllSnapshots(){this.nodes.forEach(DA),this.sharedNodes.forEach(qA)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,r_.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){r_.postRender((()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()}))}updateSnapshot(){!this.snapshot&&this.instance&&(this.snapshot=this.measure())}updateLayout(){if(!this.instance)return;if(this.updateScroll(),(!this.options.alwaysMeasureLayout||!this.isLead())&&!this.isLayoutDirty)return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let r=0;r{const r=t/1e3;KA(o.x,e.x,r),KA(o.y,e.y,r),this.setTargetDelta(o),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(xE(a,this.layout.layoutBox,this.relativeParent.layout.layoutBox),function(e,t,r,n){WA(e.x,t.x,r.x,n),WA(e.y,t.y,r.y,n)}(this.relativeTarget,this.relativeTargetOrigin,a,r),d&&function(e,t){return e.x.min===t.x.min&&e.x.max===t.x.max&&e.y.min===t.y.min&&e.y.max===t.y.max}(this.relativeTarget,d)&&(this.isProjectionDirty=!1),d||(d=OE()),pA(d,this.relativeTarget)),s&&(this.animationValues=i,function(e,t,r,n,i,o){i?(e.opacity=ck(0,void 0!==r.opacity?r.opacity:1,uA(n)),e.opacityExit=ck(void 0!==t.opacity?t.opacity:1,0,dA(n))):o&&(e.opacity=ck(void 0!==t.opacity?t.opacity:1,void 0!==r.opacity?r.opacity:1,n));for(let a=0;a{JE.hasAnimatedSinceResize=!0,this.currentAnimation=function(e,t,r){const n=Jw(e)?e:BS(e);return n.start(CS("",n,t,r)),n.animation}(0,1e3,{...e,onUpdate:t=>{this.mixTargetDelta(t),e.onUpdate&&e.onUpdate(t)},onComplete:()=>{e.onComplete&&e.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0}))}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const e=this.getStack();e&&e.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(1e3),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const e=this.getLead();let{targetWithTransforms:t,target:r,layout:n,latestValues:i}=e;if(t&&r&&n){if(this!==e&&this.layout&&n&&QA(this.options.animationType,this.layout.layoutBox,n.layoutBox)){r=this.target||OE();const t=mE(this.layout.layoutBox.x);r.x.min=e.target.x.min,r.x.max=r.x.min+t;const n=mE(this.layout.layoutBox.y);r.y.min=e.target.y.min,r.y.max=r.y.min+n}pA(t,r),qE(t,i),yE(this.projectionDeltaWithTransform,this.layoutCorrected,t,i)}}registerSharedNode(e,t){this.sharedNodes.has(e)||this.sharedNodes.set(e,new SA);this.sharedNodes.get(e).add(t);const r=t.options.initialPromotionConfig;t.promote({transition:r?r.transition:void 0,preserveFollowOpacity:r&&r.shouldPreserveFollowOpacity?r.shouldPreserveFollowOpacity(t):void 0})}isLead(){const e=this.getStack();return!e||e.lead===this}getLead(){var e;const{layoutId:t}=this.options;return t&&(null===(e=this.getStack())||void 0===e?void 0:e.lead)||this}getPrevLead(){var e;const{layoutId:t}=this.options;return t?null===(e=this.getStack())||void 0===e?void 0:e.prevLead:void 0}getStack(){const{layoutId:e}=this.options;if(e)return this.root.sharedNodes.get(e)}promote({needsReset:e,transition:t,preserveFollowOpacity:r}={}){const n=this.getStack();n&&n.promote(this,r),e&&(this.projectionDelta=void 0,this.needsReset=!0),t&&this.setOptions({transition:t})}relegate(){const e=this.getStack();return!!e&&e.relegate(this)}resetRotation(){const{visualElement:e}=this.options;if(!e)return;let t=!1;const{latestValues:r}=e;if((r.rotate||r.rotateX||r.rotateY||r.rotateZ)&&(t=!0),!t)return;const n={};for(let i=0;i{var t;return null===(t=e.currentAnimation)||void 0===t?void 0:t.stop()})),this.root.nodes.forEach(zA),this.root.sharedNodes.clear()}}}function IA(e){e.updateLayout()}function MA(e){var t;const r=(null===(t=e.resumeFrom)||void 0===t?void 0:t.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&r&&e.hasListeners("didUpdate")){const{layoutBox:t,measuredBox:n}=e.layout,{animationType:i}=e.options,o=r.source!==e.layout.source;"size"===i?TE((e=>{const n=o?r.measuredBox[e]:r.layoutBox[e],i=mE(n);n.min=t[e].min,n.max=n.min+i})):QA(i,r.layoutBox,t)&&TE((n=>{const i=o?r.measuredBox[n]:r.layoutBox[n],a=mE(t[n]);i.max=i.min+a,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[n].max=e.relativeTarget[n].min+a)}));const a=PE();yE(a,t,r.layoutBox);const s=PE();o?yE(s,e.applyTransform(n,!0),r.measuredBox):yE(s,t,r.layoutBox);const c=!xA(a);let l=!1;if(!e.resumeFrom){const n=e.getClosestProjectingParent();if(n&&!n.resumeFrom){const{snapshot:i,layout:o}=n;if(i&&o){const a=OE();xE(a,r.layoutBox,i.layoutBox);const s=OE();xE(s,t,o.layoutBox),_A(a,s)||(l=!0),n.options.layoutRoot&&(e.relativeTarget=s,e.relativeTargetOrigin=a,e.relativeParent=n)}}}e.notifyListeners("didUpdate",{layout:t,snapshot:r,delta:s,layoutDelta:a,hasLayoutChanged:c,hasRelativeTargetChanged:l})}else if(e.isLead()){const{onExitComplete:t}=e.options;t&&t()}e.options.transition=void 0}function LA(e){CA.totalNodes++,e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=Boolean(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function NA(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function DA(e){e.clearSnapshot()}function zA(e){e.clearMeasurements()}function BA(e){e.isLayoutDirty=!1}function UA(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function FA(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function $A(e){e.resolveTargetDelta()}function HA(e){e.calcProjection()}function VA(e){e.resetRotation()}function qA(e){e.removeLeadSnapshot()}function KA(e,t,r){e.translate=ck(t.translate,0,r),e.scale=ck(t.scale,1,r),e.origin=t.origin,e.originPoint=t.originPoint}function WA(e,t,r,n){e.min=ck(t.min,r.min,n),e.max=ck(t.max,r.max,n)}function GA(e){return e.animationValues&&void 0!==e.animationValues.opacityExit}const ZA={duration:.45,ease:[.4,0,.1,1]},YA=e=>"undefined"!==typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),XA=YA("applewebkit/")&&!YA("chrome/")?Math.round:t_;function JA(e){e.min=XA(e.min),e.max=XA(e.max)}function QA(e,t,r){return"position"===e||"preserve-aspect"===e&&!gE(kA(t),kA(r),.2)}const eP=RA({attachResizeListener:(e,t)=>c_(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),tP={current:void 0},rP=RA({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!tP.current){const e=new eP({});e.mount(window),e.setOptions({layoutScroll:!0}),tP.current=e}return tP.current},resetTransform:(e,t)=>{e.style.transform=void 0!==t?t:"none"},checkIsScrollRoot:e=>Boolean("fixed"===window.getComputedStyle(e).position)}),nP={pan:{Feature:class extends w_{constructor(){super(...arguments),this.removePointerDownListener=t_}onPointerDown(e){this.session=new cE(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:WE(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:t,onPan:r,onPanEnd:n}=this.node.getProps();return{onSessionStart:XE(e),onStart:XE(t),onMove:r,onEnd:(e,t)=>{delete this.session,n&&r_.update((()=>n(e,t)))}}}mount(){this.removePointerDownListener=h_(this.node.current,"pointerdown",(e=>this.onPointerDown(e)))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}},drag:{Feature:class extends w_{constructor(e){super(e),this.removeGroupControls=t_,this.removeListeners=t_,this.controls=new ZE(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||t_}unmount(){this.removeGroupControls(),this.removeListeners()}},ProjectionNode:rP,MeasureLayout:nA}},iP=/var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/;const oP=4;function aP(e,t,r=1){M_(r<=oP,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`);const[n,i]=function(e){const t=iP.exec(e);if(!t)return[,];const[,r,n]=t;return[r,n]}(e);if(!n)return;const o=window.getComputedStyle(t).getPropertyValue(n);if(o){const e=o.trim();return IS(e)?parseFloat(e):e}return ix(i)?aP(i,t,r+1):i}const sP=new Set(["width","height","top","left","right","bottom","x","y","translateX","translateY"]),cP=e=>sP.has(e),lP=e=>e===cx||e===bx,uP=(e,t)=>parseFloat(e.split(", ")[t]),dP=(e,t)=>(r,{transform:n})=>{if("none"===n||!n)return 0;const i=n.match(/^matrix3d\((.+)\)$/);if(i)return uP(i[1],t);{const t=n.match(/^matrix\((.+)\)$/);return t?uP(t[1],e):0}},hP=new Set(["x","y","z"]),fP=Zw.filter((e=>!hP.has(e)));const pP={width:({x:e},{paddingLeft:t="0",paddingRight:r="0"})=>e.max-e.min-parseFloat(t)-parseFloat(r),height:({y:e},{paddingTop:t="0",paddingBottom:r="0"})=>e.max-e.min-parseFloat(t)-parseFloat(r),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:dP(4,13),y:dP(5,14)};pP.translateX=pP.x,pP.translateY=pP.y;const mP=(e,t,r={},n={})=>{t={...t},n={...n};const i=Object.keys(t).filter(cP);let o=[],a=!1;const s=[];if(i.forEach((i=>{const c=e.getValue(i);if(!e.hasValue(i))return;let l=r[i],u=$S(l);const d=t[i];let h;if(Zx(d)){const e=d.length,t=null===d[0]?1:0;l=d[t],u=$S(l);for(let r=t;r{const n=e.getValue(r);void 0!==n&&(t.push([r,n.get()]),n.set(r.startsWith("scale")?1:0))})),t.length&&e.render(),t}(e),a=!0),s.push(i),n[i]=void 0!==n[i]?n[i]:t[i],c.jump(d))})),s.length){const r=s.indexOf("height")>=0?window.pageYOffset:null,i=((e,t,r)=>{const n=t.measureViewportBox(),i=t.current,o=getComputedStyle(i),{display:a}=o,s={};"none"===a&&t.setStaticValue("display",e.display||"block"),r.forEach((e=>{s[e]=pP[e](n,o)})),t.render();const c=t.measureViewportBox();return r.forEach((r=>{const n=t.getValue(r);n&&n.jump(s[r]),e[r]=pP[r](c,o)})),e})(t,e,s);return o.length&&o.forEach((([t,r])=>{e.getValue(t).set(r)})),e.render(),vw&&null!==r&&window.scrollTo({top:r}),{target:i,transitionEnd:n}}return{target:t,transitionEnd:n}};function gP(e,t,r,n){return(e=>Object.keys(e).some(cP))(t)?mP(e,t,r,n):{target:t,transitionEnd:n}}const vP=(e,t,r,n)=>{const i=function(e,{...t},r){const n=e.current;if(!(n instanceof Element))return{target:t,transitionEnd:r};r&&(r={...r}),e.values.forEach((e=>{const t=e.get();if(!ix(t))return;const r=aP(t,n);r&&e.set(r)}));for(const i in t){const e=t[i];if(!ix(e))continue;const o=aP(e,n);o&&(t[i]=o,r||(r={}),void 0===r[i]&&(r[i]=e))}return{target:t,transitionEnd:r}}(e,t,n);return gP(e,t=i.target,r,n=i.transitionEnd)},yP={current:null},bP={current:!1};const wP=new WeakMap,xP=Object.keys(Bw),_P=xP.length,kP=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"],SP=Iw.length;class EP{constructor({parent:e,props:t,presenceContext:r,reducedMotionConfig:n,visualState:i},o={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.scheduleRender=()=>r_.render(this.render,!1,!0);const{latestValues:a,renderState:s}=i;this.latestValues=a,this.baseTarget={...a},this.initialValues=t.initial?{...a}:{},this.renderState=s,this.parent=e,this.props=t,this.presenceContext=r,this.depth=e?e.depth+1:0,this.reducedMotionConfig=n,this.options=o,this.isControllingVariants=Mw(t),this.isVariantNode=Lw(t),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=Boolean(e&&e.current);const{willChange:c,...l}=this.scrapeMotionValuesFromProps(t,{});for(const u in l){const e=l[u];void 0!==a[u]&&Jw(e)&&(e.set(a[u],!1),RS(c)&&c.add(u))}}scrapeMotionValuesFromProps(e,t){return{}}mount(e){this.current=e,wP.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach(((e,t)=>this.bindToMotionValue(t,e))),bP.current||function(){if(bP.current=!0,vw)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>yP.current=e.matches;e.addListener(t),t()}else yP.current=!1}(),this.shouldReduceMotion="never"!==this.reducedMotionConfig&&("always"===this.reducedMotionConfig||yP.current),this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){wP.delete(this.current),this.projection&&this.projection.unmount(),n_(this.notifyUpdate),n_(this.render),this.valueSubscriptions.forEach((e=>e())),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const e in this.events)this.events[e].clear();for(const e in this.features)this.features[e].unmount();this.current=null}bindToMotionValue(e,t){const r=Yw.has(e),n=t.on("change",(t=>{this.latestValues[e]=t,this.props.onUpdate&&r_.update(this.notifyUpdate,!1,!0),r&&this.projection&&(this.projection.isTransformDirty=!0)})),i=t.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(e,(()=>{n(),i()}))}sortNodePosition(e){return this.current&&this.sortInstanceNodePosition&&this.type===e.type?this.sortInstanceNodePosition(this.current,e.current):0}loadFeatures({children:e,...t},r,n,i){let o,a;for(let s=0;s<_P;s++){const e=xP[s],{isEnabled:r,Feature:n,ProjectionNode:i,MeasureLayout:c}=Bw[e];i&&(o=i),r(t)&&(!this.features[e]&&n&&(this.features[e]=new n(this)),c&&(a=c))}if(("html"===this.type||"svg"===this.type)&&!this.projection&&o){this.projection=new o(this.latestValues,this.parent&&this.parent.projection);const{layoutId:e,layout:r,drag:n,dragConstraints:a,layoutScroll:s,layoutRoot:c}=t;this.projection.setOptions({layoutId:e,layout:r,alwaysMeasureLayout:Boolean(n)||a&&Tw(a),visualElement:this,scheduleRender:()=>this.scheduleRender(),animationType:"string"===typeof r?r:"both",initialPromotionConfig:i,layoutScroll:s,layoutRoot:c})}return a}updateFeatures(){for(const e in this.features){const t=this.features[e];t.isMounted?t.update():(t.mount(),t.isMounted=!0)}}triggerBuild(){this.build(this.renderState,this.latestValues,this.options,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):OE()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,t){this.latestValues[e]=t}makeTargetAnimatable(e,t=!0){return this.makeTargetAnimatableFromInstance(e,t)}update(e,t){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=t;for(let r=0;rt.variantChildren.delete(e)}addValue(e,t){t!==this.values.get(e)&&(this.removeValue(e),this.bindToMotionValue(e,t)),this.values.set(e,t),this.latestValues[e]=t.get()}removeValue(e){this.values.delete(e);const t=this.valueSubscriptions.get(e);t&&(t(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,t){if(this.props.values&&this.props.values[e])return this.props.values[e];let r=this.values.get(e);return void 0===r&&void 0!==t&&(r=BS(t,{owner:this}),this.addValue(e,r)),r}readValue(e){var t;return void 0===this.latestValues[e]&&this.current?null!==(t=this.getBaseTargetFromProps(this.props,e))&&void 0!==t?t:this.readValueFromInstance(this.current,e,this.options):this.latestValues[e]}setBaseTarget(e,t){this.baseTarget[e]=t}getBaseTarget(e){var t;const{initial:r}=this.props,n="string"===typeof r||"object"===typeof r?null===(t=Wx(this.props,r))||void 0===t?void 0:t[e]:void 0;if(r&&void 0!==n)return n;const i=this.getBaseTargetFromProps(this.props,e);return void 0===i||Jw(i)?void 0!==this.initialValues[e]&&void 0===n?void 0:this.baseTarget[e]:i}on(e,t){return this.events[e]||(this.events[e]=new NS),this.events[e].add(t)}notify(e,...t){this.events[e]&&this.events[e].notify(...t)}}class AP extends EP{sortInstanceNodePosition(e,t){return 2&e.compareDocumentPosition(t)?1:-1}getBaseTargetFromProps(e,t){return e.style?e.style[t]:void 0}removeValueFromRenderState(e,{vars:t,style:r}){delete t[e],delete r[e]}makeTargetAnimatableFromInstance({transition:e,transitionEnd:t,...r},n){const i=function(e,t,r){const n={};for(const i in e){const e=WS(i,t);if(void 0!==e)n[i]=e;else{const e=r.getValue(i);e&&(n[i]=e.get())}}return n}(r,e||{},this);if(n){!function(e,t,r){var n,i;const o=Object.keys(t).filter((t=>!e.hasValue(t))),a=o.length;if(a)for(let s=0;s{this.current&&(this.current.textContent=`${e}`)})))}renderInstance(e,t,r,n){$x(e,t,r,n)}}class OP extends AP{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1}getBaseTargetFromProps(e,t){return e[t]}readValueFromInstance(e,t){if(Yw.has(t)){const e=AS(t);return e&&e.default||0}return t=Hx.has(t)?t:ww(t),e.getAttribute(t)}measureInstanceViewportBox(){return OE()}scrapeMotionValuesFromProps(e,t){return Kx(e,t)}build(e,t,r,n){Dx(e,t,r,this.isSVGTag,n.transformTemplate)}renderInstance(e,t,r,n){Vx(e,t,0,n)}mount(e){this.isSVGTag=Bx(e.tagName),super.mount(e)}}const TP=(e,t)=>Ww(e)?new OP(t,{enableHardwareAcceleration:!1}):new PP(t,{enableHardwareAcceleration:!0}),jP={...aE,...j_,...nP,...{layout:{ProjectionNode:rP,MeasureLayout:nA}}},CP=qw(((e,t)=>function(e,{forwardMotionProps:t=!1},r,n){return{...Ww(e)?a_:s_,preloadedFeatures:r,useRender:Fx(t),createVisualElement:n,Component:e}}(e,t,jP,TP)));var RP={initial:e=>{const{position:t}=e,r=["top","bottom"].includes(t)?"y":"x";let n=["top-right","bottom-right"].includes(t)?1:-1;return"bottom"===t&&(n=1),{opacity:0,[r]:24*n}},animate:{opacity:1,y:0,x:0,scale:1,transition:{duration:.4,ease:[.4,0,.2,1]}},exit:{opacity:0,scale:.85,transition:{duration:.2,ease:[.4,0,1,1]}}},IP=(0,i.memo)((e=>{const{id:t,message:r,onCloseComplete:n,onRequestRemove:o,requestClose:a=!1,position:s="bottom",duration:c=5e3,containerStyle:l,motionVariants:u=RP,toastSpacing:d="0.5rem"}=e,[h,f]=(0,i.useState)(c),p=pw();dw((()=>{p||null==n||n()}),[p]),dw((()=>{f(c)}),[c]);const m=()=>{p&&o()};(0,i.useEffect)((()=>{p&&a&&o()}),[p,a,o]),function(e,t){const r=uw(e);(0,i.useEffect)((()=>{if(null==t)return;let e=null;return e=window.setTimeout((()=>{r()}),t),()=>{e&&window.clearTimeout(e)}}),[t,r])}(m,h);const g=(0,i.useMemo)((()=>({pointerEvents:"auto",maxWidth:560,minWidth:300,margin:d,...l})),[l,d]),v=(0,i.useMemo)((()=>function(e){let t="center";return e.includes("right")&&(t="flex-end"),e.includes("left")&&(t="flex-start"),{display:"flex",flexDirection:"column",alignItems:t}}(s)),[s]);return(0,xn.jsx)(CP.div,{layout:!0,className:"chakra-toast",variants:u,initial:"initial",animate:"animate",exit:"exit",onHoverStart:()=>f(null),onHoverEnd:()=>f(c),custom:{position:s},style:v,children:(0,xn.jsx)(wn.div,{role:"status","aria-atomic":"true",className:"chakra-toast__inner",__css:g,children:x(r,{id:t,onClose:m})})})}));function MP(e,t){var r;const n=null!=e?e:"bottom",i={"top-start":{ltr:"top-left",rtl:"top-right"},"top-end":{ltr:"top-right",rtl:"top-left"},"bottom-start":{ltr:"bottom-left",rtl:"bottom-right"},"bottom-end":{ltr:"bottom-right",rtl:"bottom-left"}}[n];return null!=(r=null==i?void 0:i[t])?r:n}IP.displayName="ToastComponent";var LP={path:(0,xn.jsxs)("g",{stroke:"currentColor",strokeWidth:"1.5",children:[(0,xn.jsx)("path",{strokeLinecap:"round",fill:"none",d:"M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"}),(0,xn.jsx)("path",{fill:"currentColor",strokeLinecap:"round",d:"M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"}),(0,xn.jsx)("circle",{fill:"none",strokeMiterlimit:"10",cx:"12",cy:"12",r:"11.25"})]}),viewBox:"0 0 24 24"},NP=v(((e,t)=>{const{as:r,viewBox:n,color:i="currentColor",focusable:o=!1,children:a,className:s,__css:c,...l}=e,u={ref:t,focusable:o,className:y("chakra-icon",s),__css:{w:"1em",h:"1em",display:"inline-block",lineHeight:"1em",flexShrink:0,color:i,...c,...In("Icon",e)}},d=null!=n?n:LP.viewBox;if(r&&"string"!==typeof r)return(0,xn.jsx)(wn.svg,{as:r,...u,...l});const h=null!=a?a:LP.path;return(0,xn.jsx)(wn.svg,{verticalAlign:"middle",viewBox:d,...u,...l,children:h})}));NP.displayName="Icon";function DP(e){return(0,xn.jsx)(NP,{viewBox:"0 0 24 24",...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})}var[zP,BP]=Nn({name:"AlertContext",hookName:"useAlertContext",providerName:""}),[UP,FP]=Nn({name:"AlertStylesContext",hookName:"useAlertStyles",providerName:""}),$P={info:{icon:function(e){return(0,xn.jsx)(NP,{viewBox:"0 0 24 24",...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.013,12.013,0,0,0,12,0Zm.25,5a1.5,1.5,0,1,1-1.5,1.5A1.5,1.5,0,0,1,12.25,5ZM14.5,18.5h-4a1,1,0,0,1,0-2h.75a.25.25,0,0,0,.25-.25v-4.5a.25.25,0,0,0-.25-.25H10.5a1,1,0,0,1,0-2h1a2,2,0,0,1,2,2v4.75a.25.25,0,0,0,.25.25h.75a1,1,0,1,1,0,2Z"})})},colorScheme:"blue"},warning:{icon:DP,colorScheme:"orange"},success:{icon:function(e){return(0,xn.jsx)(NP,{viewBox:"0 0 24 24",...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.014,12.014,0,0,0,12,0Zm6.927,8.2-6.845,9.289a1.011,1.011,0,0,1-1.43.188L5.764,13.769a1,1,0,1,1,1.25-1.562l4.076,3.261,6.227-8.451A1,1,0,1,1,18.927,8.2Z"})})},colorScheme:"green"},error:{icon:DP,colorScheme:"red"},loading:{icon:Vn,colorScheme:"blue"}};var HP=v((function(e,t){var r;const{status:n="info",addRole:i=!0,...o}=ft(e),a=null!=(r=e.colorScheme)?r:function(e){return $P[e].colorScheme}(n),s=Mn("Alert",{...e,colorScheme:a}),c={width:"100%",display:"flex",alignItems:"center",position:"relative",overflow:"hidden",...s.container};return(0,xn.jsx)(zP,{value:{status:n},children:(0,xn.jsx)(UP,{value:s,children:(0,xn.jsx)(wn.div,{"data-status":n,role:i?"alert":void 0,ref:t,...o,className:y("chakra-alert",e.className),__css:c})})})}));function VP(e){const{status:t}=BP(),r=function(e){return $P[e].icon}(t),n=FP(),i="loading"===t?n.spinner:n.icon;return(0,xn.jsx)(wn.span,{display:"inherit","data-status":t,...e,className:y("chakra-alert__icon",e.className),__css:i,children:e.children||(0,xn.jsx)(r,{h:"100%",w:"100%"})})}HP.displayName="Alert",VP.displayName="AlertIcon";var qP=v((function(e,t){const r=FP(),{status:n}=BP();return(0,xn.jsx)(wn.div,{ref:t,"data-status":n,...e,className:y("chakra-alert__title",e.className),__css:r.title})}));qP.displayName="AlertTitle";var KP=v((function(e,t){const r=FP(),{status:n}=BP(),i={display:"inline",...r.description};return(0,xn.jsx)(wn.div,{ref:t,"data-status":n,...e,className:y("chakra-alert__desc",e.className),__css:i})}));function WP(e){return(0,xn.jsx)(NP,{focusable:"false","aria-hidden":!0,...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M.439,21.44a1.5,1.5,0,0,0,2.122,2.121L11.823,14.3a.25.25,0,0,1,.354,0l9.262,9.263a1.5,1.5,0,1,0,2.122-2.121L14.3,12.177a.25.25,0,0,1,0-.354l9.263-9.262A1.5,1.5,0,0,0,21.439.44L12.177,9.7a.25.25,0,0,1-.354,0L2.561.44A1.5,1.5,0,0,0,.439,2.561L9.7,11.823a.25.25,0,0,1,0,.354Z"})})}KP.displayName="AlertDescription";var GP=v((function(e,t){const r=In("CloseButton",e),{children:n,isDisabled:i,__css:o,...a}=ft(e);return(0,xn.jsx)(wn.button,{type:"button","aria-label":"Close",ref:t,disabled:i,__css:{outline:0,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,...r,...o},...a,children:n||(0,xn.jsx)(WP,{width:"1em",height:"1em"})})}));GP.displayName="CloseButton";var ZP=function(e){let t=e;const r=new Set,n=e=>{t=e(t),r.forEach((e=>e()))};return{getState:()=>t,subscribe:t=>(r.add(t),()=>{n((()=>e)),r.delete(t)}),removeToast:(e,t)=>{n((r=>({...r,[t]:r[t].filter((t=>t.id!=e))})))},notify:(e,t)=>{const r=function(e,t={}){var r,n;YP+=1;const i=null!=(r=t.id)?r:YP,o=null!=(n=t.position)?n:"bottom";return{id:i,message:e,position:o,duration:t.duration,onCloseComplete:t.onCloseComplete,onRequestRemove:()=>ZP.removeToast(String(i),o),status:t.status,requestClose:!1,containerStyle:t.containerStyle}}(e,t),{position:i,id:o}=r;return n((e=>{var t,n;const o=i.includes("top")?[r,...null!=(t=e[i])?t:[]]:[...null!=(n=e[i])?n:[],r];return{...e,[i]:o}})),o},update:(e,t)=>{e&&n((r=>{const n={...r},{position:i,index:o}=sw(n,e);return i&&-1!==o&&(n[i][o]={...n[i][o],...t,message:JP(t)}),n}))},closeAll:({positions:e}={})=>{n((t=>(null!=e?e:["bottom","bottom-right","bottom-left","top","top-left","top-right"]).reduce(((e,r)=>(e[r]=t[r].map((e=>({...e,requestClose:!0}))),e)),{...t})))},close:e=>{n((t=>{const r=cw(t,e);return r?{...t,[r]:t[r].map((t=>t.id==e?{...t,requestClose:!0}:t))}:t}))},isActive:e=>Boolean(sw(ZP.getState(),e).position)}}({top:[],"top-left":[],"top-right":[],"bottom-left":[],bottom:[],"bottom-right":[]});var YP=0;var XP=e=>{const{status:t,variant:r="solid",id:n,title:i,isClosable:o,onClose:a,description:s,colorScheme:c,icon:l}=e,u=n?{root:`toast-${n}`,title:`toast-${n}-title`,description:`toast-${n}-description`}:void 0;return(0,xn.jsxs)(HP,{addRole:!1,status:t,variant:r,id:null==u?void 0:u.root,alignItems:"start",borderRadius:"md",boxShadow:"lg",paddingEnd:8,textAlign:"start",width:"auto",colorScheme:c,children:[(0,xn.jsx)(VP,{children:l}),(0,xn.jsxs)(wn.div,{flex:"1",maxWidth:"100%",children:[i&&(0,xn.jsx)(qP,{id:null==u?void 0:u.title,children:i}),s&&(0,xn.jsx)(KP,{id:null==u?void 0:u.description,display:"block",children:s})]}),o&&(0,xn.jsx)(GP,{size:"sm",onClick:a,position:"absolute",insetEnd:1,top:1})]})};function JP(e={}){const{render:t,toastComponent:r=XP}=e;return n=>"function"===typeof t?t({...n,...e}):(0,xn.jsx)(r,{...n,...e})}function QP(){const e=(0,i.useRef)(!1);return yw((()=>(e.current=!0,()=>{e.current=!1})),[]),e}class eO extends i.Component{getSnapshotBeforeUpdate(e){const t=this.props.childRef.current;if(t&&e.isPresent&&!this.props.isPresent){const e=this.props.sizeRef.current;e.height=t.offsetHeight||0,e.width=t.offsetWidth||0,e.top=t.offsetTop,e.left=t.offsetLeft}return null}componentDidUpdate(){}render(){return this.props.children}}function tO({children:e,isPresent:t}){const r=(0,i.useId)(),n=(0,i.useRef)(null),o=(0,i.useRef)({width:0,height:0,top:0,left:0});return(0,i.useInsertionEffect)((()=>{const{width:e,height:i,top:a,left:s}=o.current;if(t||!n.current||!e||!i)return;n.current.dataset.motionPopId=r;const c=document.createElement("style");return document.head.appendChild(c),c.sheet&&c.sheet.insertRule(`\n [data-motion-pop-id="${r}"] {\n position: absolute !important;\n width: ${e}px !important;\n height: ${i}px !important;\n top: ${a}px !important;\n left: ${s}px !important;\n }\n `),()=>{document.head.removeChild(c)}}),[t]),i.createElement(eO,{isPresent:t,childRef:n,sizeRef:o},i.cloneElement(e,{ref:n}))}const rO=({children:e,initial:t,isPresent:r,onExitComplete:n,custom:o,presenceAffectsLayout:a,mode:s})=>{const c=Gx(nO),l=(0,i.useId)(),u=(0,i.useMemo)((()=>({id:l,initial:t,isPresent:r,custom:o,onExitComplete:e=>{c.set(e,!0);for(const t of c.values())if(!t)return;n&&n()},register:e=>(c.set(e,!1),()=>c.delete(e))})),a?void 0:[r]);return(0,i.useMemo)((()=>{c.forEach(((e,t)=>c.set(t,!1)))}),[r]),i.useEffect((()=>{!r&&!c.size&&n&&n()}),[r]),"popLayout"===s&&(e=i.createElement(tO,{isPresent:r},e)),i.createElement(hw.Provider,{value:u},e)};function nO(){return new Map}const iO=e=>e.key||"";const oO=({children:e,custom:t,initial:r=!0,onExitComplete:n,exitBeforeEnter:o,presenceAffectsLayout:a=!0,mode:s="sync"})=>{M_(!o,"Replace exitBeforeEnter with mode='wait'");const c=(0,i.useContext)(Uw).forceRender||function(){const e=QP(),[t,r]=(0,i.useState)(0),n=(0,i.useCallback)((()=>{e.current&&r(t+1)}),[t]);return[(0,i.useCallback)((()=>r_.postRender(n)),[n]),t]}()[0],l=QP(),u=function(e){const t=[];return i.Children.forEach(e,(e=>{(0,i.isValidElement)(e)&&t.push(e)})),t}(e);let d=u;const h=(0,i.useRef)(new Map).current,f=(0,i.useRef)(d),p=(0,i.useRef)(new Map).current,m=(0,i.useRef)(!0);var g;if(yw((()=>{m.current=!1,function(e,t){e.forEach((e=>{const r=iO(e);t.set(r,e)}))}(u,p),f.current=d})),g=()=>{m.current=!0,p.clear(),h.clear()},(0,i.useEffect)((()=>()=>g()),[]),m.current)return i.createElement(i.Fragment,null,d.map((e=>i.createElement(rO,{key:iO(e),isPresent:!0,initial:!!r&&void 0,presenceAffectsLayout:a,mode:s},e))));d=[...d];const v=f.current.map(iO),y=u.map(iO),b=v.length;for(let i=0;i{if(-1!==y.indexOf(r))return;const o=p.get(r);if(!o)return;const m=v.indexOf(r);let g=e;if(!g){const e=()=>{h.delete(r);const e=Array.from(p.keys()).filter((e=>!y.includes(e)));if(e.forEach((e=>p.delete(e))),f.current=u.filter((t=>{const n=iO(t);return n===r||e.includes(n)})),!h.size){if(!1===l.current)return;c(),n&&n()}};g=i.createElement(rO,{key:iO(o),isPresent:!1,onExitComplete:e,custom:t,presenceAffectsLayout:a,mode:s},o),h.set(r,g)}d.splice(m,0,g)})),d=d.map((e=>{const t=e.key;return h.has(t)?e:i.createElement(rO,{key:iO(e),isPresent:!0,presenceAffectsLayout:a,mode:s},e)})),i.createElement(i.Fragment,null,h.size?d:d.map((e=>(0,i.cloneElement)(e))))};var[aO,sO]=Nn({strict:!1,name:"PortalContext"}),cO="chakra-portal",lO=e=>(0,xn.jsx)("div",{className:"chakra-portal-zIndex",style:{position:"absolute",zIndex:e.zIndex,top:0,left:0,right:0},children:e.children}),uO=e=>{const{appendToParentPortal:t,children:r}=e,[n,o]=(0,i.useState)(null),a=(0,i.useRef)(null),[,s]=(0,i.useState)({});(0,i.useEffect)((()=>s({})),[]);const c=sO(),l=ef();mf((()=>{if(!n)return;const e=n.ownerDocument,r=t&&null!=c?c:e.body;if(!r)return;a.current=e.createElement("div"),a.current.className=cO,r.appendChild(a.current),s({});const i=a.current;return()=>{r.contains(i)&&r.removeChild(i)}}),[n]);const u=(null==l?void 0:l.zIndex)?(0,xn.jsx)(lO,{zIndex:null==l?void 0:l.zIndex,children:r}):r;return a.current?(0,Ui.createPortal)((0,xn.jsx)(aO,{value:a.current,children:u}),a.current):(0,xn.jsx)("span",{ref:e=>{e&&o(e)}})},dO=e=>{const{children:t,containerRef:r,appendToParentPortal:n}=e,o=r.current,a=null!=o?o:"undefined"!==typeof window?document.body:void 0,s=(0,i.useMemo)((()=>{const e=null==o?void 0:o.ownerDocument.createElement("div");return e&&(e.className=cO),e}),[o]),[,c]=(0,i.useState)({});return mf((()=>c({})),[]),mf((()=>{if(s&&a)return a.appendChild(s),()=>{a.removeChild(s)}}),[s,a]),a&&s?(0,Ui.createPortal)((0,xn.jsx)(aO,{value:n?s:null,children:t}),s):null};function hO(e){const t={appendToParentPortal:!0,...e},{containerRef:r,...n}=t;return r?(0,xn.jsx)(dO,{containerRef:r,...n}):(0,xn.jsx)(uO,{...n})}hO.className=cO,hO.selector=".chakra-portal",hO.displayName="Portal";var[fO,pO]=Nn({name:"ToastOptionsContext",strict:!1}),mO=e=>{const t=(0,i.useSyncExternalStore)(ZP.subscribe,ZP.getState,ZP.getState),{motionVariants:r,component:n=IP,portalProps:o}=e,a=Object.keys(t).map((e=>{const i=t[e];return(0,xn.jsx)("div",{role:"region","aria-live":"polite","aria-label":`Notifications-${e}`,id:`chakra-toast-manager-${e}`,style:lw(e),children:(0,xn.jsx)(oO,{initial:!1,children:i.map((e=>(0,xn.jsx)(n,{motionVariants:r,...e},e.id)))})},e)}));return(0,xn.jsx)(hO,{...o,children:a})},gO=e=>function({children:t,theme:r=e,toastOptions:n,...i}){return(0,xn.jsxs)(xf,{theme:r,...i,children:[(0,xn.jsx)(fO,{value:null==n?void 0:n.defaultOptions,children:t}),(0,xn.jsx)(mO,{...n})]})},vO=gO(iw),yO=(gO(ow),new Set(["dark","light","system"]));function bO(e={}){const{initialColorMode:t="light",type:r="localStorage",storageKey:n="chakra-ui-color-mode"}=e,i=function(e){let t=e;return yO.has(t)||(t="light"),t}(t);return`!${"cookie"===r?`(function(){try{var a=function(o){var l="(prefers-color-scheme: dark)",v=window.matchMedia(l).matches?"dark":"light",e=o==="system"?v:o,d=document.documentElement,m=document.body,i="chakra-ui-light",n="chakra-ui-dark",s=e==="dark";return m.classList.add(s?n:i),m.classList.remove(s?i:n),d.style.colorScheme=e,d.dataset.theme=e,e},u=a,h="${i}",r="${n}",t=document.cookie.match(new RegExp("(^| )".concat(r,"=([^;]+)"))),c=t?t[2]:null;c?a(c):document.cookie="".concat(r,"=").concat(a(h),"; max-age=31536000; path=/")}catch(a){}})();\n `:`(function(){try{var a=function(c){var v="(prefers-color-scheme: dark)",h=window.matchMedia(v).matches?"dark":"light",r=c==="system"?h:c,o=document.documentElement,s=document.body,l="chakra-ui-light",d="chakra-ui-dark",i=r==="dark";return s.classList.add(i?d:l),s.classList.remove(i?l:d),o.style.colorScheme=r,o.dataset.theme=r,r},n=a,m="${i}",e="${n}",t=localStorage.getItem(e);t?a(t):localStorage.setItem(e,a(m))}catch(a){}})();\n `}`.trim()}function wO(e={}){const{nonce:t}=e;return(0,xn.jsx)("script",{id:"chakra-script",nonce:t,dangerouslySetInnerHTML:{__html:bO(e)}})}var xO=["borders","breakpoints","colors","components","config","direction","fonts","fontSizes","fontWeights","letterSpacings","lineHeights","radii","shadows","sizes","space","styles","transition","zIndices"];function _O(e){return"function"===typeof e}var kO=e=>function(...t){let r=[...t],n=t[t.length-1];var i;return b(i=n)&&xO.every((e=>Object.prototype.hasOwnProperty.call(i,e)))&&r.length>1?r=r.slice(0,r.length-1):n=e,function(...e){return t=>e.reduce(((e,t)=>t(e)),t)}(...r.map((e=>t=>_O(e)?e(t):function(...e){return P({},...e,EO)}(t,e))))(n)},SO=kO(iw);kO(ow);function EO(e,t,r,n){if((_O(e)||_O(t))&&Object.prototype.hasOwnProperty.call(n,r))return(...r)=>{const n=_O(e)?e(...r):e,i=_O(t)?t(...r):t;return P({},n,i,EO)}}const AO={orange:"#FB4F57",orangeL:"#FC7884",blue:"#0D99FF",blueL:"#4FA2FF",green:"#00C39A",greenL:"#00E7B6",black:"#000000",white:"#FFFFFF",gray:{900:"#121212",800:"#181818",700:"#282828",600:"#2C2B2B",500:"#414141",450:"#707070",400:"#C2C2C2",300:"#D6D6D6",200:"#EBEBEB",100:"#F0F0F0",50:"#F5F5F5"}},PO={borderRadius:"full",bg:AO.gray[600],_disabled:{bg:AO.gray[700],color:AO.gray[450]},_hover:{color:AO.green,bg:AO.gray[500],_disabled:{bg:AO.gray[700],color:AO.gray[450]}}},OO={sizes:{md:{height:"38px",fontSize:"14px",minWidth:"38px"},lg:{height:"48px",fontSize:"16px",minWidth:"48px"}},variants:{primary:{bg:AO.blue,_disabled:{bg:AO.gray[500],color:AO.gray[450],opacity:1},_hover:{_disabled:{bg:AO.gray[500],color:AO.gray[450],opacity:1},bg:AO.blueL}},secondary:{border:"1px solid",borderColor:AO.green,_disabled:{color:AO.gray[450],borderColor:AO.gray[500],opacity:1},_hover:{bg:AO.green,_disabled:{color:AO.gray[450],borderColor:AO.gray[500],opacity:1}}},tertiary:{bg:"transparent",border:"1px solid",borderColor:AO.gray[500],_disabled:{color:AO.gray[450],opacity:1},_hover:{border:"1px solid",borderColor:AO.gray[600],bg:AO.gray[600],_disabled:{borderColor:AO.gray[500],color:AO.gray[450],opacity:1}}},warning:{bg:AO.orange,_disabled:{bg:AO.gray[500],color:AO.gray[450],opacity:1},_hover:{bg:AO.orangeL,_disabled:{bg:AO.gray[500],color:AO.gray[450],opacity:1}}},circle_without_hover_color:{...PO,_hover:{color:AO.green,_disabled:{bg:AO.gray[700],color:AO.gray[450]}}},circle_without_color:PO,circle:{...PO,color:AO.gray[300]},specialCTA:{color:AO.greenL,_hover:{color:AO.green}},CTAWithIcon:{padding:"8px 7px",color:AO.gray[300],_hover:{color:AO.green},_disabled:{color:AO.gray[450]}},popover:{color:AO.gray[300],stroke:AO.gray[450],width:"100%",padding:0,height:"24px",justifyContent:"end",_hover:{color:AO.green,stroke:AO.green}}},defaultProps:{variant:"primary",size:"md"}},{definePartsStyle:TO,defineMultiStyleConfig:jO}=ut(Gf.keys),CO=jO({baseStyle:TO({icon:{color:"white"},control:{marginTop:"-20px",width:"20px",height:"20px",borderWidth:"2px",borderColor:AO.gray[400],borderRadius:"2px",_checked:{borderColor:AO.green,bg:AO.green,color:AO.white,_hover:{bg:AO.green,borderColor:AO.green}}}})}),{definePartsStyle:RO,defineMultiStyleConfig:IO}=ut(Zf.keys),MO=IO({baseStyle:RO((e=>({body:{padding:"18px 30px 30px 30px",borderLeft:`1px solid ${AO.gray[800]}`},dialog:{bg:AO.gray[900]}}))),sizes:{md:{dialog:{maxW:"594px"}}},defaultProps:{size:"md"}}),{definePartsStyle:LO,defineMultiStyleConfig:NO}=ut(ep.keys),DO=NO({variants:{onboardingNotice:LO({item:{"&::marker":{color:AO.gray[400]}}}),suggestions:LO({item:{_hover:{background:AO.gray[500]},background:AO.gray[700],borderRadius:"4px",cursor:"pointer",height:"28px",listStyleType:"none"},container:{background:AO.gray[700],border:"1px solid",borderColor:AO.gray[500],borderRadius:"8px",listStyleType:"none",marginLeft:"0 !important",overflowX:"hidden",padding:"10px",position:"absolute",width:"100%",zIndex:2,maxHeight:"130px"}})}}),{definePartsStyle:zO,defineMultiStyleConfig:BO}=ut(rp.keys),UO={top:"10px",position:"absolute",color:AO.gray[400],borderRadius:"18px"},FO={...UO,insetEnd:"10px"},$O={...UO,insetStart:"10px"},HO=BO({baseStyle:zO({dialog:{padding:"40px",_dark:{bg:AO.gray[900],border:"1px solid",borderColor:AO.gray[700],borderRadius:"8px"}},overlay:{_dark:{bg:"rgba(0, 0, 0, 0.85)"}},closeButton:FO,body:{padding:0},footer:{padding:"32px 0 0 0"},header:{padding:0}}),sizes:{md:{dialog:{maxW:"482px"}}}}),{definePartsStyle:VO,defineMultiStyleConfig:qO}=ut(ap.keys),KO=qO({variants:{primary:VO({control:{height:"16px",width:"16px",_dark:{borderColor:AO.gray[400]},_checked:{backgroundColor:AO.green,borderColor:AO.green,border:"none",color:"white"}}})}}),{definePartsStyle:WO,defineMultiStyleConfig:GO}=ut(hp.keys),ZO={xs:{fontSize:"12px"},sm:{fontSize:"14px"},md:{fontSize:"16px"},lg:{fontSize:"18px"},xl:{fontSize:"20px"},"2xl":{fontSize:"24px"},"3xl":{fontSize:"30px"},"4xl":{fontSize:"36px"},"5xl":{fontSize:"48px"},"6xl":{fontSize:"69px"}},YO=SO({components:{Tabs:GO({baseStyle:WO({tab:{_selected:{fontWeight:600,color:AO.white,borderColor:AO.orange,borderBottom:`2px solid ${AO.orange}`}}})}),Text:{baseStyle:{fontWeight:"400",fontFamily:"Inter"},sizes:ZO},Heading:{baseStyle:{fontWeight:"600",fontFamily:"Inter"},sizes:ZO},Checkbox:CO,Input:{sizes:{md:{field:{height:"48px"}}},defaultProps:{variant:"filled"},variants:{filled:{field:{bg:AO.gray[800],border:"1px solid",borderColor:AO.gray[500],_invalid:{borderColor:AO.orange},_hover:{bg:AO.gray[800]},_focusVisible:{bg:AO.gray[800],borderColor:AO.gray[450]}}}}},Button:OO,FormLabel:{baseStyle:{fontWeight:"600",marginBottom:"12px",size:"md"},sizes:ZO},Modal:HO,Drawer:MO,Radio:KO,List:DO},config:{initialColorMode:"dark",useSystemColorMode:!1},colors:{umami:AO,text:{dark:AO.gray[400]}},styles:{global:{body:{bg:AO.black,color:AO.white,fontFamily:"Inter"}}}}),XO=e=>(0,xn.jsxs)(vO,{theme:YO,children:[(0,xn.jsx)(wO,{initialColorMode:YO.config.initialColorMode}),e.children]});function JO(){return JO=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0&&(t.hash=e.substr(r),e=e.substr(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substr(n),e=e.substr(0,n)),e&&(t.pathname=e)}return t}function sT(e,t,r,n){void 0===n&&(n={});let{window:i=document.defaultView,v5Compat:o=!1}=n,a=i.history,s=QO.Pop,c=null,l=u();function u(){return(a.state||{idx:null}).idx}function d(){s=QO.Pop;let e=u(),t=null==e?null:e-l;l=e,c&&c({action:s,location:f.location,delta:t})}function h(e){let t="null"!==i.location.origin?i.location.origin:i.location.href,r="string"===typeof e?e:oT(e);return r=r.replace(/ $/,"%20"),tT(t,"No window.location.(origin|href) available to create URL for href: "+r),new URL(r,t)}null==l&&(l=0,a.replaceState(JO({},a.state,{idx:l}),""));let f={get action(){return s},get location(){return e(i,a)},listen(e){if(c)throw new Error("A history only accepts one active listener");return i.addEventListener(eT,d),c=e,()=>{i.removeEventListener(eT,d),c=null}},createHref:e=>t(i,e),createURL:h,encodeLocation(e){let t=h(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){s=QO.Push;let n=iT(f.location,e,t);r&&r(n,e),l=u()+1;let d=nT(n,l),h=f.createHref(n);try{a.pushState(d,"",h)}catch(p){if(p instanceof DOMException&&"DataCloneError"===p.name)throw p;i.location.assign(h)}o&&c&&c({action:s,location:f.location,delta:1})},replace:function(e,t){s=QO.Replace;let n=iT(f.location,e,t);r&&r(n,e),l=u();let i=nT(n,l),d=f.createHref(n);a.replaceState(i,"",d),o&&c&&c({action:s,location:f.location,delta:0})},go:e=>a.go(e)};return f}var cT;!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(cT||(cT={}));new Set(["lazy","caseSensitive","path","id","index","children"]);function lT(e,t,r){void 0===r&&(r="/");let n=kT(("string"===typeof t?aT(t):t).pathname||"/",r);if(null==n)return null;let i=uT(e);!function(e){e.sort(((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){let r=e.length===t.length&&e.slice(0,-1).every(((e,r)=>e===t[r]));return r?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((e=>e.childrenIndex)),t.routesMeta.map((e=>e.childrenIndex)))))}(i);let o=null;for(let a=0;null==o&&a{let a={relativePath:void 0===o?e.path||"":o,caseSensitive:!0===e.caseSensitive,childrenIndex:i,route:e};a.relativePath.startsWith("/")&&(tT(a.relativePath.startsWith(n),'Absolute route path "'+a.relativePath+'" nested under path "'+n+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),a.relativePath=a.relativePath.slice(n.length));let s=OT([n,a.relativePath]),c=r.concat(a);e.children&&e.children.length>0&&(tT(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+s+'".'),uT(e.children,t,c,s)),(null!=e.path||e.index)&&t.push({path:s,score:bT(s,e.index),routesMeta:c})};return e.forEach(((e,t)=>{var r;if(""!==e.path&&null!=(r=e.path)&&r.includes("?"))for(let n of dT(e.path))i(e,t,n);else i(e,t)})),t}function dT(e){let t=e.split("/");if(0===t.length)return[];let[r,...n]=t,i=r.endsWith("?"),o=r.replace(/\?$/,"");if(0===n.length)return i?[o,""]:[o];let a=dT(n.join("/")),s=[];return s.push(...a.map((e=>""===e?o:[o,e].join("/")))),i&&s.push(...a),s.map((t=>e.startsWith("/")&&""===t?"/":t))}const hT=/^:[\w-]+$/,fT=3,pT=2,mT=1,gT=10,vT=-2,yT=e=>"*"===e;function bT(e,t){let r=e.split("/"),n=r.length;return r.some(yT)&&(n+=vT),t&&(n+=pT),r.filter((e=>!yT(e))).reduce(((e,t)=>e+(hT.test(t)?fT:""===t?mT:gT)),n)}function wT(e,t){let{routesMeta:r}=e,n={},i="/",o=[];for(let a=0;a(n.push({paramName:t,isOptional:null!=r}),r?"/?([^\\/]+)?":"/([^\\/]+)")));e.endsWith("*")?(n.push({paramName:"*"}),i+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?i+="\\/*$":""!==e&&"/"!==e&&(i+="(?:(?=\\/|$))");let o=new RegExp(i,t?void 0:"i");return[o,n]}(e.path,e.caseSensitive,e.end),i=t.match(r);if(!i)return null;let o=i[0],a=o.replace(/(.)\/+$/,"$1"),s=i.slice(1),c=n.reduce(((e,t,r)=>{let{paramName:n,isOptional:i}=t;if("*"===n){let e=s[r]||"";a=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}const c=s[r];return e[n]=i&&!c?void 0:(c||"").replace(/%2F/g,"/"),e}),{});return{params:c,pathname:o,pathnameBase:a,pattern:e}}function _T(e){try{return e.split("/").map((e=>decodeURIComponent(e).replace(/\//g,"%2F"))).join("/")}catch(t){return rT(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding ('+t+")."),e}}function kT(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&"/"!==n?null:e.slice(r)||"/"}function ST(e,t,r,n){return"Cannot include a '"+e+"' character in a manually specified `to."+t+"` field ["+JSON.stringify(n)+"]. Please separate it out to the `to."+r+'` field. Alternatively you may provide the full path as a string in and the router will parse it for you.'}function ET(e){return e.filter(((e,t)=>0===t||e.route.path&&e.route.path.length>0))}function AT(e,t){let r=ET(e);return t?r.map(((t,r)=>r===e.length-1?t.pathname:t.pathnameBase)):r.map((e=>e.pathnameBase))}function PT(e,t,r,n){let i;void 0===n&&(n=!1),"string"===typeof e?i=aT(e):(i=JO({},e),tT(!i.pathname||!i.pathname.includes("?"),ST("?","pathname","search",i)),tT(!i.pathname||!i.pathname.includes("#"),ST("#","pathname","hash",i)),tT(!i.search||!i.search.includes("#"),ST("#","search","hash",i)));let o,a=""===e||""===i.pathname,s=a?"/":i.pathname;if(null==s)o=r;else{let e=t.length-1;if(!n&&s.startsWith("..")){let t=s.split("/");for(;".."===t[0];)t.shift(),e-=1;i.pathname=t.join("/")}o=e>=0?t[e]:"/"}let c=function(e,t){void 0===t&&(t="/");let{pathname:r,search:n="",hash:i=""}="string"===typeof e?aT(e):e,o=r?r.startsWith("/")?r:function(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((e=>{".."===e?r.length>1&&r.pop():"."!==e&&r.push(e)})),r.length>1?r.join("/"):"/"}(r,t):t;return{pathname:o,search:jT(n),hash:CT(i)}}(i,o),l=s&&"/"!==s&&s.endsWith("/"),u=(a||"."===s)&&r.endsWith("/");return c.pathname.endsWith("/")||!l&&!u||(c.pathname+="/"),c}const OT=e=>e.join("/").replace(/\/\/+/g,"/"),TT=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),jT=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",CT=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";Error;function RT(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}const IT=["post","put","patch","delete"],MT=(new Set(IT),["get",...IT]);new Set(MT),new Set([301,302,303,307,308]),new Set([307,308]);Symbol("deferred");function LT(){return LT=Object.assign?Object.assign.bind():function(e){for(var t=1;t{r.current=!0}));let n=i.useCallback((function(n,i){void 0===i&&(i={}),r.current&&("number"===typeof n?e.navigate(n):e.navigate(n,LT({fromRouteId:t},i)))}),[e,t]);return n}():function(){$T()||tT(!1);let e=i.useContext(NT),{basename:t,future:r,navigator:n}=i.useContext(zT),{matches:o}=i.useContext(UT),{pathname:a}=HT(),s=JSON.stringify(AT(o,r.v7_relativeSplatPath)),c=i.useRef(!1);VT((()=>{c.current=!0}));let l=i.useCallback((function(r,i){if(void 0===i&&(i={}),!c.current)return;if("number"===typeof r)return void n.go(r);let o=PT(r,JSON.parse(s),a,"path"===i.relative);null==e&&"/"!==t&&(o.pathname="/"===o.pathname?t:OT([t,o.pathname])),(i.replace?n.replace:n.push)(o,i.state,i)}),[t,n,s,a,e]);return l}()}function KT(e,t){let{relative:r}=void 0===t?{}:t,{future:n}=i.useContext(zT),{matches:o}=i.useContext(UT),{pathname:a}=HT(),s=JSON.stringify(AT(o,n.v7_relativeSplatPath));return i.useMemo((()=>PT(e,JSON.parse(s),a,"path"===r)),[e,s,a,r])}function WT(e,t,r,n){$T()||tT(!1);let{navigator:o}=i.useContext(zT),{matches:a}=i.useContext(UT),s=a[a.length-1],c=s?s.params:{},l=(s&&s.pathname,s?s.pathnameBase:"/");s&&s.route;let u,d=HT();if(t){var h;let e="string"===typeof t?aT(t):t;"/"===l||(null==(h=e.pathname)?void 0:h.startsWith(l))||tT(!1),u=e}else u=d;let f=u.pathname||"/",p=f;if("/"!==l){let e=l.replace(/^\//,"").split("/");p="/"+f.replace(/^\//,"").split("/").slice(e.length).join("/")}let m=lT(e,{pathname:p});let g=JT(m&&m.map((e=>Object.assign({},e,{params:Object.assign({},c,e.params),pathname:OT([l,o.encodeLocation?o.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?l:OT([l,o.encodeLocation?o.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])}))),a,r,n);return t&&g?i.createElement(BT.Provider,{value:{location:LT({pathname:"/",search:"",hash:"",state:null,key:"default"},u),navigationType:QO.Pop}},g):g}function GT(){let e=function(){var e;let t=i.useContext(FT),r=rj(ej.UseRouteError),n=nj(ej.UseRouteError);if(void 0!==t)return t;return null==(e=r.errors)?void 0:e[n]}(),t=RT(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,n="rgba(200,200,200, 0.5)",o={padding:"0.5rem",backgroundColor:n};return i.createElement(i.Fragment,null,i.createElement("h2",null,"Unexpected Application Error!"),i.createElement("h3",{style:{fontStyle:"italic"}},t),r?i.createElement("pre",{style:o},r):null,null)}const ZT=i.createElement(GT,null);class YT extends i.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){console.error("React Router caught the following error during render",e,t)}render(){return void 0!==this.state.error?i.createElement(UT.Provider,{value:this.props.routeContext},i.createElement(FT.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function XT(e){let{routeContext:t,match:r,children:n}=e,o=i.useContext(NT);return o&&o.static&&o.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=r.route.id),i.createElement(UT.Provider,{value:t},n)}function JT(e,t,r,n){var o;if(void 0===t&&(t=[]),void 0===r&&(r=null),void 0===n&&(n=null),null==e){var a;if(null==(a=r)||!a.errors)return null;e=r.matches}let s=e,c=null==(o=r)?void 0:o.errors;if(null!=c){let e=s.findIndex((e=>e.route.id&&(null==c?void 0:c[e.route.id])));e>=0||tT(!1),s=s.slice(0,Math.min(s.length,e+1))}let l=!1,u=-1;if(r&&n&&n.v7_partialHydration)for(let i=0;i=0?s.slice(0,u+1):[s[0]];break}}}return s.reduceRight(((e,n,o)=>{let a,d=!1,h=null,f=null;r&&(a=c&&n.route.id?c[n.route.id]:void 0,h=n.route.errorElement||ZT,l&&(u<0&&0===o?(!function(e,t,r){t||ij[e]||(ij[e]=!0)}("route-fallback",!1),d=!0,f=null):u===o&&(d=!0,f=n.route.hydrateFallbackElement||null)));let p=t.concat(s.slice(0,o+1)),m=()=>{let t;return t=a?h:d?f:n.route.Component?i.createElement(n.route.Component,null):n.route.element?n.route.element:e,i.createElement(XT,{match:n,routeContext:{outlet:e,matches:p,isDataRoute:null!=r},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||0===o)?i.createElement(YT,{location:r.location,revalidation:r.revalidation,component:h,error:a,children:m(),routeContext:{outlet:null,matches:p,isDataRoute:!0}}):m()}),null)}var QT=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(QT||{}),ej=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(ej||{});function tj(e){let t=i.useContext(NT);return t||tT(!1),t}function rj(e){let t=i.useContext(DT);return t||tT(!1),t}function nj(e){let t=function(e){let t=i.useContext(UT);return t||tT(!1),t}(),r=t.matches[t.matches.length-1];return r.route.id||tT(!1),r.route.id}const ij={};o.startTransition;function oj(e){let{to:t,replace:r,state:n,relative:o}=e;$T()||tT(!1);let{future:a,static:s}=i.useContext(zT),{matches:c}=i.useContext(UT),{pathname:l}=HT(),u=qT(),d=PT(t,AT(c,a.v7_relativeSplatPath),l,"path"===o),h=JSON.stringify(d);return i.useEffect((()=>u(JSON.parse(h),{replace:r,state:n,relative:o})),[u,h,o,r,n]),null}function aj(e){tT(!1)}function sj(e){let{basename:t="/",children:r=null,location:n,navigationType:o=QO.Pop,navigator:a,static:s=!1,future:c}=e;$T()&&tT(!1);let l=t.replace(/^\/*/,"/"),u=i.useMemo((()=>({basename:l,navigator:a,static:s,future:LT({v7_relativeSplatPath:!1},c)})),[l,c,a,s]);"string"===typeof n&&(n=aT(n));let{pathname:d="/",search:h="",hash:f="",state:p=null,key:m="default"}=n,g=i.useMemo((()=>{let e=kT(d,l);return null==e?null:{location:{pathname:e,search:h,hash:f,state:p,key:m},navigationType:o}}),[l,d,h,f,p,m,o]);return null==g?null:i.createElement(zT.Provider,{value:u},i.createElement(BT.Provider,{children:r,value:g}))}function cj(e){let{children:t,location:r}=e;return WT(lj(t),r)}new Promise((()=>{}));i.Component;function lj(e,t){void 0===t&&(t=[]);let r=[];return i.Children.forEach(e,((e,n)=>{if(!i.isValidElement(e))return;let o=[...t,n];if(e.type===i.Fragment)return void r.push.apply(r,lj(e.props.children,o));e.type!==aj&&tT(!1),e.props.index&&e.props.children&&tT(!1);let a={id:e.props.id||o.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,loader:e.props.loader,action:e.props.action,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:null!=e.props.ErrorBoundary||null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=lj(e.props.children,o)),r.push(a)})),r}function uj(){return uj=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0||(i[r]=e[r]);return i}function hj(e){return void 0===e&&(e=""),new URLSearchParams("string"===typeof e||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce(((t,r)=>{let n=e[r];return t.concat(Array.isArray(n)?n.map((e=>[r,e])):[[r,n]])}),[]))}new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);const fj=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","unstable_viewTransition"];try{window.__reactRouterVersion="6"}catch(pge){}new Map;const pj=o.startTransition;Fi.flushSync,o.useId;function mj(e){let{basename:t,children:r,future:n,window:o}=e,a=i.useRef();null==a.current&&(a.current=function(e){return void 0===e&&(e={}),sT((function(e,t){let{pathname:r="/",search:n="",hash:i=""}=aT(e.location.hash.substr(1));return r.startsWith("/")||r.startsWith(".")||(r="/"+r),iT("",{pathname:r,search:n,hash:i},t.state&&t.state.usr||null,t.state&&t.state.key||"default")}),(function(e,t){let r=e.document.querySelector("base"),n="";if(r&&r.getAttribute("href")){let t=e.location.href,r=t.indexOf("#");n=-1===r?t:t.slice(0,r)}return n+"#"+("string"===typeof t?t:oT(t))}),(function(e,t){rT("/"===e.pathname.charAt(0),"relative pathnames are not supported in hash history.push("+JSON.stringify(t)+")")}),e)}({window:o,v5Compat:!0}));let s=a.current,[c,l]=i.useState({action:s.action,location:s.location}),{v7_startTransition:u}=n||{},d=i.useCallback((e=>{u&&pj?pj((()=>l(e))):l(e)}),[l,u]);return i.useLayoutEffect((()=>s.listen(d)),[s,d]),i.createElement(sj,{basename:t,children:r,location:c.location,navigationType:c.action,navigator:s,future:n})}const gj="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,vj=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,yj=i.forwardRef((function(e,t){let r,{onClick:n,relative:o,reloadDocument:a,replace:s,state:c,target:l,to:u,preventScrollReset:d,unstable_viewTransition:h}=e,f=dj(e,fj),{basename:p}=i.useContext(zT),m=!1;if("string"===typeof u&&vj.test(u)&&(r=u,gj))try{let e=new URL(window.location.href),t=u.startsWith("//")?new URL(e.protocol+u):new URL(u),r=kT(t.pathname,p);t.origin===e.origin&&null!=r?u=r+t.search+t.hash:m=!0}catch(pge){}let g=function(e,t){let{relative:r}=void 0===t?{}:t;$T()||tT(!1);let{basename:n,navigator:o}=i.useContext(zT),{hash:a,pathname:s,search:c}=KT(e,{relative:r}),l=s;return"/"!==n&&(l="/"===s?n:OT([n,s])),o.createHref({pathname:l,search:c,hash:a})}(u,{relative:o}),v=function(e,t){let{target:r,replace:n,state:o,preventScrollReset:a,relative:s,unstable_viewTransition:c}=void 0===t?{}:t,l=qT(),u=HT(),d=KT(e,{relative:s});return i.useCallback((t=>{if(function(e,t){return 0===e.button&&(!t||"_self"===t)&&!function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)}(t,r)){t.preventDefault();let r=void 0!==n?n:oT(u)===oT(d);l(e,{replace:r,state:o,preventScrollReset:a,relative:s,unstable_viewTransition:c})}}),[u,l,d,n,o,r,e,a,s,c])}(u,{replace:s,state:c,target:l,preventScrollReset:d,relative:o,unstable_viewTransition:h});return i.createElement("a",uj({},f,{href:r||g,onClick:m||a?n:function(e){n&&n(e),e.defaultPrevented||v(e)},ref:t,target:l}))}));var bj,wj;function xj(e){let t=i.useRef(hj(e)),r=i.useRef(!1),n=HT(),o=i.useMemo((()=>function(e,t){let r=hj(e);return t&&t.forEach(((e,n)=>{r.has(n)||t.getAll(n).forEach((e=>{r.append(n,e)}))})),r}(n.search,r.current?null:t.current)),[n.search]),a=qT(),s=i.useCallback(((e,t)=>{const n=hj("function"===typeof e?e(o):e);r.current=!0,a("?"+n,t)}),[a,o]);return[o,s]}(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(bj||(bj={})),function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"}(wj||(wj={}));function _j(e,t){return function(){return e.apply(t,arguments)}}const{toString:kj}=Object.prototype,{getPrototypeOf:Sj}=Object,Ej=(e=>t=>{const r=kj.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Aj=e=>(e=e.toLowerCase(),t=>Ej(t)===e),Pj=e=>t=>typeof t===e,{isArray:Oj}=Array,Tj=Pj("undefined");const jj=Aj("ArrayBuffer");const Cj=Pj("string"),Rj=Pj("function"),Ij=Pj("number"),Mj=e=>null!==e&&"object"===typeof e,Lj=e=>{if("object"!==Ej(e))return!1;const t=Sj(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Nj=Aj("Date"),Dj=Aj("File"),zj=Aj("Blob"),Bj=Aj("FileList"),Uj=Aj("URLSearchParams");function Fj(e,t,{allOwnKeys:r=!1}={}){if(null===e||"undefined"===typeof e)return;let n,i;if("object"!==typeof e&&(e=[e]),Oj(e))for(n=0,i=e.length;n0;)if(n=r[i],t===n.toLowerCase())return n;return null}const Hj="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:global,Vj=e=>!Tj(e)&&e!==Hj;const qj=(Kj="undefined"!==typeof Uint8Array&&Sj(Uint8Array),e=>Kj&&e instanceof Kj);var Kj;const Wj=Aj("HTMLFormElement"),Gj=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),Zj=Aj("RegExp"),Yj=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};Fj(r,((r,i)=>{let o;!1!==(o=t(r,i,e))&&(n[i]=o||r)})),Object.defineProperties(e,n)},Xj="abcdefghijklmnopqrstuvwxyz",Jj="0123456789",Qj={DIGIT:Jj,ALPHA:Xj,ALPHA_DIGIT:Xj+Xj.toUpperCase()+Jj};const eC=Aj("AsyncFunction"),tC={isArray:Oj,isArrayBuffer:jj,isBuffer:function(e){return null!==e&&!Tj(e)&&null!==e.constructor&&!Tj(e.constructor)&&Rj(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"===typeof FormData&&e instanceof FormData||Rj(e.append)&&("formdata"===(t=Ej(e))||"object"===t&&Rj(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&jj(e.buffer),t},isString:Cj,isNumber:Ij,isBoolean:e=>!0===e||!1===e,isObject:Mj,isPlainObject:Lj,isUndefined:Tj,isDate:Nj,isFile:Dj,isBlob:zj,isRegExp:Zj,isFunction:Rj,isStream:e=>Mj(e)&&Rj(e.pipe),isURLSearchParams:Uj,isTypedArray:qj,isFileList:Bj,forEach:Fj,merge:function e(){const{caseless:t}=Vj(this)&&this||{},r={},n=(n,i)=>{const o=t&&$j(r,i)||i;Lj(r[o])&&Lj(n)?r[o]=e(r[o],n):Lj(n)?r[o]=e({},n):Oj(n)?r[o]=n.slice():r[o]=n};for(let i=0,o=arguments.length;i(Fj(t,((t,n)=>{r&&Rj(t)?e[n]=_j(t,r):e[n]=t}),{allOwnKeys:n}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},toFlatObject:(e,t,r,n)=>{let i,o,a;const s={};if(t=t||{},null==e)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)a=i[o],n&&!n(a,e,t)||s[a]||(t[a]=e[a],s[a]=!0);e=!1!==r&&Sj(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},kindOf:Ej,kindOfTest:Aj,endsWith:(e,t,r)=>{e=String(e),(void 0===r||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return-1!==n&&n===r},toArray:e=>{if(!e)return null;if(Oj(e))return e;let t=e.length;if(!Ij(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},forEachEntry:(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let n;for(;(n=r.next())&&!n.done;){const r=n.value;t.call(e,r[0],r[1])}},matchAll:(e,t)=>{let r;const n=[];for(;null!==(r=e.exec(t));)n.push(r);return n},isHTMLForm:Wj,hasOwnProperty:Gj,hasOwnProp:Gj,reduceDescriptors:Yj,freezeMethods:e=>{Yj(e,((t,r)=>{if(Rj(e)&&-1!==["arguments","caller","callee"].indexOf(r))return!1;const n=e[r];Rj(n)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")}))}))},toObjectSet:(e,t)=>{const r={},n=e=>{e.forEach((e=>{r[e]=!0}))};return Oj(e)?n(e):n(String(e).split(t)),r},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,r){return t.toUpperCase()+r})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:$j,global:Hj,isContextDefined:Vj,ALPHABET:Qj,generateString:(e=16,t=Qj.ALPHA_DIGIT)=>{let r="";const{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r},isSpecCompliantForm:function(e){return!!(e&&Rj(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),r=(e,n)=>{if(Mj(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[n]=e;const i=Oj(e)?[]:{};return Fj(e,((e,t)=>{const o=r(e,n+1);!Tj(o)&&(i[t]=o)})),t[n]=void 0,i}}return e};return r(e,0)},isAsyncFn:eC,isThenable:e=>e&&(Mj(e)||Rj(e))&&Rj(e.then)&&Rj(e.catch)};function rC(e,t,r,n,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),i&&(this.response=i)}tC.inherits(rC,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:tC.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const nC=rC.prototype,iC={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{iC[e]={value:e}})),Object.defineProperties(rC,iC),Object.defineProperty(nC,"isAxiosError",{value:!0}),rC.from=(e,t,r,n,i,o)=>{const a=Object.create(nC);return tC.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),rC.call(a,e.message,t,r,n,i),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};const oC=rC;var aC=r(9673).Buffer;function sC(e){return tC.isPlainObject(e)||tC.isArray(e)}function cC(e){return tC.endsWith(e,"[]")?e.slice(0,-2):e}function lC(e,t,r){return e?e.concat(t).map((function(e,t){return e=cC(e),!r&&t?"["+e+"]":e})).join(r?".":""):t}const uC=tC.toFlatObject(tC,{},null,(function(e){return/^is[A-Z]/.test(e)}));const dC=function(e,t,r){if(!tC.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const n=(r=tC.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!tC.isUndefined(t[e])}))).metaTokens,i=r.visitor||l,o=r.dots,a=r.indexes,s=(r.Blob||"undefined"!==typeof Blob&&Blob)&&tC.isSpecCompliantForm(t);if(!tC.isFunction(i))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(tC.isDate(e))return e.toISOString();if(!s&&tC.isBlob(e))throw new oC("Blob is not supported. Use a Buffer instead.");return tC.isArrayBuffer(e)||tC.isTypedArray(e)?s&&"function"===typeof Blob?new Blob([e]):aC.from(e):e}function l(e,r,i){let s=e;if(e&&!i&&"object"===typeof e)if(tC.endsWith(r,"{}"))r=n?r:r.slice(0,-2),e=JSON.stringify(e);else if(tC.isArray(e)&&function(e){return tC.isArray(e)&&!e.some(sC)}(e)||(tC.isFileList(e)||tC.endsWith(r,"[]"))&&(s=tC.toArray(e)))return r=cC(r),s.forEach((function(e,n){!tC.isUndefined(e)&&null!==e&&t.append(!0===a?lC([r],n,o):null===a?r:r+"[]",c(e))})),!1;return!!sC(e)||(t.append(lC(i,r,o),c(e)),!1)}const u=[],d=Object.assign(uC,{defaultVisitor:l,convertValue:c,isVisitable:sC});if(!tC.isObject(e))throw new TypeError("data must be an object");return function e(r,n){if(!tC.isUndefined(r)){if(-1!==u.indexOf(r))throw Error("Circular reference detected in "+n.join("."));u.push(r),tC.forEach(r,(function(r,o){!0===(!(tC.isUndefined(r)||null===r)&&i.call(t,r,tC.isString(o)?o.trim():o,n,d))&&e(r,n?n.concat(o):[o])})),u.pop()}}(e),t};function hC(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function fC(e,t){this._pairs=[],e&&dC(e,this,t)}const pC=fC.prototype;pC.append=function(e,t){this._pairs.push([e,t])},pC.toString=function(e){const t=e?function(t){return e.call(this,t,hC)}:hC;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const mC=fC;function gC(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function vC(e,t,r){if(!t)return e;const n=r&&r.encode||gC,i=r&&r.serialize;let o;if(o=i?i(t,r):tC.isURLSearchParams(t)?t.toString():new mC(t,r).toString(n),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}const yC=class{constructor(){this.handlers=[]}use(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){tC.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},bC={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},wC={isBrowser:!0,classes:{URLSearchParams:"undefined"!==typeof URLSearchParams?URLSearchParams:mC,FormData:"undefined"!==typeof FormData?FormData:null,Blob:"undefined"!==typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},xC="undefined"!==typeof window&&"undefined"!==typeof document,_C=(kC="undefined"!==typeof navigator&&navigator.product,xC&&["ReactNative","NativeScript","NS"].indexOf(kC)<0);var kC;const SC="undefined"!==typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"===typeof self.importScripts,EC={...e,...wC};const AC=function(e){function t(e,r,n,i){let o=e[i++];if("__proto__"===o)return!0;const a=Number.isFinite(+o),s=i>=e.length;if(o=!o&&tC.isArray(n)?n.length:o,s)return tC.hasOwnProp(n,o)?n[o]=[n[o],r]:n[o]=r,!a;n[o]&&tC.isObject(n[o])||(n[o]=[]);return t(e,r,n[o],i)&&tC.isArray(n[o])&&(n[o]=function(e){const t={},r=Object.keys(e);let n;const i=r.length;let o;for(n=0;n{t(function(e){return tC.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),n,r,0)})),r}return null};const PC={transitional:bC,adapter:["xhr","http"],transformRequest:[function(e,t){const r=t.getContentType()||"",n=r.indexOf("application/json")>-1,i=tC.isObject(e);i&&tC.isHTMLForm(e)&&(e=new FormData(e));if(tC.isFormData(e))return n?JSON.stringify(AC(e)):e;if(tC.isArrayBuffer(e)||tC.isBuffer(e)||tC.isStream(e)||tC.isFile(e)||tC.isBlob(e))return e;if(tC.isArrayBufferView(e))return e.buffer;if(tC.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return dC(e,new EC.classes.URLSearchParams,Object.assign({visitor:function(e,t,r,n){return EC.isNode&&tC.isBuffer(e)?(this.append(t,e.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((o=tC.isFileList(e))||r.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return dC(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return i||n?(t.setContentType("application/json",!1),function(e,t,r){if(tC.isString(e))try{return(t||JSON.parse)(e),tC.trim(e)}catch(pge){if("SyntaxError"!==pge.name)throw pge}return(r||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||PC.transitional,r=t&&t.forcedJSONParsing,n="json"===this.responseType;if(e&&tC.isString(e)&&(r&&!this.responseType||n)){const r=!(t&&t.silentJSONParsing)&&n;try{return JSON.parse(e)}catch(pge){if(r){if("SyntaxError"===pge.name)throw oC.from(pge,oC.ERR_BAD_RESPONSE,this,null,this.response);throw pge}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:EC.classes.FormData,Blob:EC.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};tC.forEach(["delete","get","head","post","put","patch"],(e=>{PC.headers[e]={}}));const OC=PC,TC=tC.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),jC=Symbol("internals");function CC(e){return e&&String(e).trim().toLowerCase()}function RC(e){return!1===e||null==e?e:tC.isArray(e)?e.map(RC):String(e)}function IC(e,t,r,n,i){return tC.isFunction(n)?n.call(this,t,r):(i&&(t=r),tC.isString(t)?tC.isString(n)?-1!==t.indexOf(n):tC.isRegExp(n)?n.test(t):void 0:void 0)}class MC{constructor(e){e&&this.set(e)}set(e,t,r){const n=this;function i(e,t,r){const i=CC(t);if(!i)throw new Error("header name must be a non-empty string");const o=tC.findKey(n,i);(!o||void 0===n[o]||!0===r||void 0===r&&!1!==n[o])&&(n[o||t]=RC(e))}const o=(e,t)=>tC.forEach(e,((e,r)=>i(e,r,t)));return tC.isPlainObject(e)||e instanceof this.constructor?o(e,t):tC.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?o((e=>{const t={};let r,n,i;return e&&e.split("\n").forEach((function(e){i=e.indexOf(":"),r=e.substring(0,i).trim().toLowerCase(),n=e.substring(i+1).trim(),!r||t[r]&&TC[r]||("set-cookie"===r?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)})),t})(e),t):null!=e&&i(t,e,r),this}get(e,t){if(e=CC(e)){const r=tC.findKey(this,e);if(r){const e=this[r];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}(e);if(tC.isFunction(t))return t.call(this,e,r);if(tC.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=CC(e)){const r=tC.findKey(this,e);return!(!r||void 0===this[r]||t&&!IC(0,this[r],r,t))}return!1}delete(e,t){const r=this;let n=!1;function i(e){if(e=CC(e)){const i=tC.findKey(r,e);!i||t&&!IC(0,r[i],i,t)||(delete r[i],n=!0)}}return tC.isArray(e)?e.forEach(i):i(e),n}clear(e){const t=Object.keys(this);let r=t.length,n=!1;for(;r--;){const i=t[r];e&&!IC(0,this[i],i,e,!0)||(delete this[i],n=!0)}return n}normalize(e){const t=this,r={};return tC.forEach(this,((n,i)=>{const o=tC.findKey(r,i);if(o)return t[o]=RC(n),void delete t[i];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,r)=>t.toUpperCase()+r))}(i):String(i).trim();a!==i&&delete t[i],t[a]=RC(n),r[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return tC.forEach(this,((r,n)=>{null!=r&&!1!==r&&(t[n]=e&&tC.isArray(r)?r.join(", "):r)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const r=new this(e);return t.forEach((e=>r.set(e))),r}static accessor(e){const t=(this[jC]=this[jC]={accessors:{}}).accessors,r=this.prototype;function n(e){const n=CC(e);t[n]||(!function(e,t){const r=tC.toCamelCase(" "+t);["get","set","has"].forEach((n=>{Object.defineProperty(e,n+r,{value:function(e,r,i){return this[n].call(this,t,e,r,i)},configurable:!0})}))}(r,e),t[n]=!0)}return tC.isArray(e)?e.forEach(n):n(e),this}}MC.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),tC.reduceDescriptors(MC.prototype,(({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[r]=e}}})),tC.freezeMethods(MC);const LC=MC;function NC(e,t){const r=this||OC,n=t||r,i=LC.from(n.headers);let o=n.data;return tC.forEach(e,(function(e){o=e.call(r,o,i.normalize(),t?t.status:void 0)})),i.normalize(),o}function DC(e){return!(!e||!e.__CANCEL__)}function zC(e,t,r){oC.call(this,null==e?"canceled":e,oC.ERR_CANCELED,t,r),this.name="CanceledError"}tC.inherits(zC,oC,{__CANCEL__:!0});const BC=zC;const UC=EC.hasStandardBrowserEnv?{write(e,t,r,n,i,o){const a=[e+"="+encodeURIComponent(t)];tC.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),tC.isString(n)&&a.push("path="+n),tC.isString(i)&&a.push("domain="+i),!0===o&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function FC(e,t){return e&&!function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const $C=EC.hasStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let r;function n(r){let n=r;return e&&(t.setAttribute("href",n),n=t.href),t.setAttribute("href",n),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return r=n(window.location.href),function(e){const t=tC.isString(e)?n(e):e;return t.protocol===r.protocol&&t.host===r.host}}():function(){return!0};const HC=function(e,t){e=e||10;const r=new Array(e),n=new Array(e);let i,o=0,a=0;return t=void 0!==t?t:1e3,function(s){const c=Date.now(),l=n[a];i||(i=c),r[o]=s,n[o]=c;let u=a,d=0;for(;u!==o;)d+=r[u++],u%=e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),c-i{const o=i.loaded,a=i.lengthComputable?i.total:void 0,s=o-r,c=n(s);r=o;const l={loaded:o,total:a,progress:a?o/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&o<=a?(a-o)/c:void 0,event:i};l[t?"download":"upload"]=!0,e(l)}}const qC="undefined"!==typeof XMLHttpRequest&&function(e){return new Promise((function(t,r){let n=e.data;const i=LC.from(e.headers).normalize();let o,a,{responseType:s,withXSRFToken:c}=e;function l(){e.cancelToken&&e.cancelToken.unsubscribe(o),e.signal&&e.signal.removeEventListener("abort",o)}if(tC.isFormData(n))if(EC.hasStandardBrowserEnv||EC.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if(!1!==(a=i.getContentType())){const[e,...t]=a?a.split(";").map((e=>e.trim())).filter(Boolean):[];i.setContentType([e||"multipart/form-data",...t].join("; "))}let u=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",r=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(t+":"+r))}const d=FC(e.baseURL,e.url);function h(){if(!u)return;const n=LC.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders());!function(e,t,r){const n=r.config.validateStatus;r.status&&n&&!n(r.status)?t(new oC("Request failed with status code "+r.status,[oC.ERR_BAD_REQUEST,oC.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):e(r)}((function(e){t(e),l()}),(function(e){r(e),l()}),{data:s&&"text"!==s&&"json"!==s?u.response:u.responseText,status:u.status,statusText:u.statusText,headers:n,config:e,request:u}),u=null}if(u.open(e.method.toUpperCase(),vC(d,e.params,e.paramsSerializer),!0),u.timeout=e.timeout,"onloadend"in u?u.onloadend=h:u.onreadystatechange=function(){u&&4===u.readyState&&(0!==u.status||u.responseURL&&0===u.responseURL.indexOf("file:"))&&setTimeout(h)},u.onabort=function(){u&&(r(new oC("Request aborted",oC.ECONNABORTED,e,u)),u=null)},u.onerror=function(){r(new oC("Network Error",oC.ERR_NETWORK,e,u)),u=null},u.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const n=e.transitional||bC;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),r(new oC(t,n.clarifyTimeoutError?oC.ETIMEDOUT:oC.ECONNABORTED,e,u)),u=null},EC.hasStandardBrowserEnv&&(c&&tC.isFunction(c)&&(c=c(e)),c||!1!==c&&$C(d))){const t=e.xsrfHeaderName&&e.xsrfCookieName&&UC.read(e.xsrfCookieName);t&&i.set(e.xsrfHeaderName,t)}void 0===n&&i.setContentType(null),"setRequestHeader"in u&&tC.forEach(i.toJSON(),(function(e,t){u.setRequestHeader(t,e)})),tC.isUndefined(e.withCredentials)||(u.withCredentials=!!e.withCredentials),s&&"json"!==s&&(u.responseType=e.responseType),"function"===typeof e.onDownloadProgress&&u.addEventListener("progress",VC(e.onDownloadProgress,!0)),"function"===typeof e.onUploadProgress&&u.upload&&u.upload.addEventListener("progress",VC(e.onUploadProgress)),(e.cancelToken||e.signal)&&(o=t=>{u&&(r(!t||t.type?new BC(null,e,u):t),u.abort(),u=null)},e.cancelToken&&e.cancelToken.subscribe(o),e.signal&&(e.signal.aborted?o():e.signal.addEventListener("abort",o)));const f=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(d);f&&-1===EC.protocols.indexOf(f)?r(new oC("Unsupported protocol "+f+":",oC.ERR_BAD_REQUEST,e)):u.send(n||null)}))},KC={http:null,xhr:qC};tC.forEach(KC,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(pge){}Object.defineProperty(e,"adapterName",{value:t})}}));const WC=e=>`- ${e}`,GC=e=>tC.isFunction(e)||null===e||!1===e,ZC=e=>{e=tC.isArray(e)?e:[e];const{length:t}=e;let r,n;const i={};for(let o=0;o`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let r=t?e.length>1?"since :\n"+e.map(WC).join("\n"):" "+WC(e[0]):"as no adapter specified";throw new oC("There is no suitable adapter to dispatch the request "+r,"ERR_NOT_SUPPORT")}return n};function YC(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new BC(null,e)}function XC(e){YC(e),e.headers=LC.from(e.headers),e.data=NC.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return ZC(e.adapter||OC.adapter)(e).then((function(t){return YC(e),t.data=NC.call(e,e.transformResponse,t),t.headers=LC.from(t.headers),t}),(function(t){return DC(t)||(YC(e),t&&t.response&&(t.response.data=NC.call(e,e.transformResponse,t.response),t.response.headers=LC.from(t.response.headers))),Promise.reject(t)}))}const JC=e=>e instanceof LC?e.toJSON():e;function QC(e,t){t=t||{};const r={};function n(e,t,r){return tC.isPlainObject(e)&&tC.isPlainObject(t)?tC.merge.call({caseless:r},e,t):tC.isPlainObject(t)?tC.merge({},t):tC.isArray(t)?t.slice():t}function i(e,t,r){return tC.isUndefined(t)?tC.isUndefined(e)?void 0:n(void 0,e,r):n(e,t,r)}function o(e,t){if(!tC.isUndefined(t))return n(void 0,t)}function a(e,t){return tC.isUndefined(t)?tC.isUndefined(e)?void 0:n(void 0,e):n(void 0,t)}function s(r,i,o){return o in t?n(r,i):o in e?n(void 0,r):void 0}const c={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(e,t)=>i(JC(e),JC(t),!0)};return tC.forEach(Object.keys(Object.assign({},e,t)),(function(n){const o=c[n]||i,a=o(e[n],t[n],n);tC.isUndefined(a)&&o!==s||(r[n]=a)})),r}const eR="1.6.7",tR={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{tR[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}}));const rR={};tR.transitional=function(e,t,r){function n(e,t){return"[Axios v1.6.7] Transitional option '"+e+"'"+t+(r?". "+r:"")}return(r,i,o)=>{if(!1===e)throw new oC(n(i," has been removed"+(t?" in "+t:"")),oC.ERR_DEPRECATED);return t&&!rR[i]&&(rR[i]=!0,console.warn(n(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,i,o)}};const nR={assertOptions:function(e,t,r){if("object"!==typeof e)throw new oC("options must be an object",oC.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let i=n.length;for(;i-- >0;){const o=n[i],a=t[o];if(a){const t=e[o],r=void 0===t||a(t,o,e);if(!0!==r)throw new oC("option "+o+" must be "+r,oC.ERR_BAD_OPTION_VALUE)}else if(!0!==r)throw new oC("Unknown option "+o,oC.ERR_BAD_OPTION)}},validators:tR},iR=nR.validators;class oR{constructor(e){this.defaults=e,this.interceptors={request:new yC,response:new yC}}async request(e,t){try{return await this._request(e,t)}catch(kne){if(kne instanceof Error){let t;Error.captureStackTrace?Error.captureStackTrace(t={}):t=new Error;const r=t.stack?t.stack.replace(/^.+\n/,""):"";kne.stack?r&&!String(kne.stack).endsWith(r.replace(/^.+\n.+\n/,""))&&(kne.stack+="\n"+r):kne.stack=r}throw kne}}_request(e,t){"string"===typeof e?(t=t||{}).url=e:t=e||{},t=QC(this.defaults,t);const{transitional:r,paramsSerializer:n,headers:i}=t;void 0!==r&&nR.assertOptions(r,{silentJSONParsing:iR.transitional(iR.boolean),forcedJSONParsing:iR.transitional(iR.boolean),clarifyTimeoutError:iR.transitional(iR.boolean)},!1),null!=n&&(tC.isFunction(n)?t.paramsSerializer={serialize:n}:nR.assertOptions(n,{encode:iR.function,serialize:iR.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&tC.merge(i.common,i[t.method]);i&&tC.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete i[e]})),t.headers=LC.concat(o,i);const a=[];let s=!0;this.interceptors.request.forEach((function(e){"function"===typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const c=[];let l;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let u,d=0;if(!s){const e=[XC.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,c),u=e.length,l=Promise.resolve(t);d{if(!r._listeners)return;let t=r._listeners.length;for(;t-- >0;)r._listeners[t](e);r._listeners=null})),this.promise.then=e=>{let t;const n=new Promise((e=>{r.subscribe(e),t=e})).then(e);return n.cancel=function(){r.unsubscribe(t)},n},e((function(e,n,i){r.reason||(r.reason=new BC(e,n,i),t(r.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;const t=new sR((function(t){e=t}));return{token:t,cancel:e}}}const cR=sR;const lR={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(lR).forEach((([e,t])=>{lR[t]=e}));const uR=lR;const dR=function e(t){const r=new aR(t),n=_j(aR.prototype.request,r);return tC.extend(n,aR.prototype,r,{allOwnKeys:!0}),tC.extend(n,r,null,{allOwnKeys:!0}),n.create=function(r){return e(QC(t,r))},n}(OC);dR.Axios=aR,dR.CanceledError=BC,dR.CancelToken=cR,dR.isCancel=DC,dR.VERSION=eR,dR.toFormData=dC,dR.AxiosError=oC,dR.Cancel=dR.CanceledError,dR.all=function(e){return Promise.all(e)},dR.spread=function(e){return function(t){return e.apply(null,t)}},dR.isAxiosError=function(e){return tC.isObject(e)&&!0===e.isAxiosError},dR.mergeConfig=QC,dR.AxiosHeaders=LC,dR.formToJSON=e=>AC(tC.isHTMLForm(e)?new FormData(e):e),dR.getAdapter=ZC,dR.HttpStatusCode=uR,dR.default=dR;const hR=dR,fR=e=>(0,xn.jsxs)(NP,{width:"24px",height:"24px",fill:"none",textAlign:"center",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,xn.jsx)("path",{d:"M14 5.6C14 5.03995 14 4.75992 14.109 4.54601C14.2049 4.35785 14.3578 4.20487 14.546 4.10899C14.7599 4 15.0399 4 15.6 4H18.4C18.9601 4 19.2401 4 19.454 4.10899C19.6422 4.20487 19.7951 4.35785 19.891 4.54601C20 4.75992 20 5.03995 20 5.6V8.4C20 8.96005 20 9.24008 19.891 9.45399C19.7951 9.64215 19.6422 9.79513 19.454 9.89101C19.2401 10 18.9601 10 18.4 10H15.6C15.0399 10 14.7599 10 14.546 9.89101C14.3578 9.79513 14.2049 9.64215 14.109 9.45399C14 9.24008 14 8.96005 14 8.4V5.6Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,xn.jsx)("path",{d:"M4 5.6C4 5.03995 4 4.75992 4.10899 4.54601C4.20487 4.35785 4.35785 4.20487 4.54601 4.10899C4.75992 4 5.03995 4 5.6 4H8.4C8.96005 4 9.24008 4 9.45399 4.10899C9.64215 4.20487 9.79513 4.35785 9.89101 4.54601C10 4.75992 10 5.03995 10 5.6V8.4C10 8.96005 10 9.24008 9.89101 9.45399C9.79513 9.64215 9.64215 9.79513 9.45399 9.89101C9.24008 10 8.96005 10 8.4 10H5.6C5.03995 10 4.75992 10 4.54601 9.89101C4.35785 9.79513 4.20487 9.64215 4.10899 9.45399C4 9.24008 4 8.96005 4 8.4V5.6Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,xn.jsx)("path",{d:"M4 15.6C4 15.0399 4 14.7599 4.10899 14.546C4.20487 14.3578 4.35785 14.2049 4.54601 14.109C4.75992 14 5.03995 14 5.6 14H8.4C8.96005 14 9.24008 14 9.45399 14.109C9.64215 14.2049 9.79513 14.3578 9.89101 14.546C10 14.7599 10 15.0399 10 15.6V18.4C10 18.9601 10 19.2401 9.89101 19.454C9.79513 19.6422 9.64215 19.7951 9.45399 19.891C9.24008 20 8.96005 20 8.4 20H5.6C5.03995 20 4.75992 20 4.54601 19.891C4.35785 19.7951 4.20487 19.6422 4.10899 19.454C4 19.2401 4 18.9601 4 18.4V15.6Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,xn.jsx)("path",{d:"M14 15.6C14 15.0399 14 14.7599 14.109 14.546C14.2049 14.3578 14.3578 14.2049 14.546 14.109C14.7599 14 15.0399 14 15.6 14H18.4C18.9601 14 19.2401 14 19.454 14.109C19.6422 14.2049 19.7951 14.3578 19.891 14.546C20 14.7599 20 15.0399 20 15.6V18.4C20 18.9601 20 19.2401 19.891 19.454C19.7951 19.6422 19.6422 19.7951 19.454 19.891C19.2401 20 18.9601 20 18.4 20H15.6C15.0399 20 14.7599 20 14.546 19.891C14.3578 19.7951 14.2049 19.6422 14.109 19.454C14 19.2401 14 18.9601 14 18.4V15.6Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),pR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M8.25 13.5H4.65C3.80992 13.5 3.38988 13.5 3.06901 13.3365C2.78677 13.1927 2.5573 12.9632 2.41349 12.681C2.25 12.3601 2.25 11.9401 2.25 11.1V5.4C2.25 4.55992 2.25 4.13988 2.41349 3.81901C2.5573 3.53677 2.78677 3.3073 3.06901 3.16349C3.38988 3 3.80992 3 4.65 3H13.35C14.1901 3 14.6101 3 14.931 3.16349C15.2132 3.3073 15.4427 3.53677 15.5865 3.81901C15.75 4.13988 15.75 4.55992 15.75 5.4V8.25M2.25 6H15.75M13.5 15V10.5M15.75 12.7506L11.25 12.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),mR=e=>(0,xn.jsx)(NP,{fill:"none",viewBox:"0 0 13 17",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M13 12.5L10.75 12.5M10.75 12.5L8.5 12.5M10.75 12.5V10.25M10.75 12.5V14.75M6.25 14.75H1C1 11.8505 3.35051 9.5 6.25 9.5C6.77123 9.5 7.27472 9.57596 7.75 9.71741M9.25 4.25C9.25 5.90685 7.90685 7.25 6.25 7.25C4.59315 7.25 3.25 5.90685 3.25 4.25C3.25 2.59315 4.59315 1.25 6.25 1.25C7.90685 1.25 9.25 2.59315 9.25 4.25Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),gR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M13.5 15.5C13.2164 14.3589 11.981 13.5 10.5 13.5C9.019 13.5 7.78364 14.3589 7.5 15.5M21 5V7M21 11V13M21 17V19M6.2 21H14.8C15.9201 21 16.4802 21 16.908 20.782C17.2843 20.5903 17.5903 20.2843 17.782 19.908C18 19.4802 18 18.9201 18 17.8V6.2C18 5.0799 18 4.51984 17.782 4.09202C17.5903 3.71569 17.2843 3.40973 16.908 3.21799C16.4802 3 15.9201 3 14.8 3H6.2C5.0799 3 4.51984 3 4.09202 3.21799C3.71569 3.40973 3.40973 3.71569 3.21799 4.09202C3 4.51984 3 5.07989 3 6.2V17.8C3 18.9201 3 19.4802 3.21799 19.908C3.40973 20.2843 3.71569 20.5903 4.09202 20.782C4.51984 21 5.07989 21 6.2 21ZM11.5 9.5C11.5 10.0523 11.0523 10.5 10.5 10.5C9.94772 10.5 9.5 10.0523 9.5 9.5C9.5 8.94772 9.94772 8.5 10.5 8.5C11.0523 8.5 11.5 8.94772 11.5 9.5Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),vR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],"data-testid":"baker-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3.74946 5.25V8.25M7.49946 1.5V4.5M13.4995 12V15M2.24946 6.75H5.24946M5.99946 3H8.99946M11.9995 13.5H14.9995M10.4995 5.25L12.6208 7.37132M14.6369 2.80959L15.0612 3.23385C15.3582 3.53086 15.5067 3.67937 15.5624 3.85062C15.6113 4.00125 15.6113 4.16351 15.5624 4.31414C15.5067 4.48539 15.3582 4.6339 15.0612 4.93091L4.89356 15.0985C4.59655 15.3955 4.44804 15.5441 4.2768 15.5997C4.12617 15.6486 3.9639 15.6486 3.81327 15.5997C3.64203 15.5441 3.49352 15.3955 3.19651 15.0985L2.77224 14.6743C2.47523 14.3773 2.32672 14.2288 2.27108 14.0575C2.22214 13.9069 2.22214 13.7446 2.27108 13.594C2.32672 13.4227 2.47523 13.2742 2.77224 12.9772L12.9399 2.80959C13.2369 2.51258 13.3854 2.36407 13.5566 2.30843C13.7073 2.25948 13.8695 2.25948 14.0202 2.30843C14.1914 2.36407 14.3399 2.51258 14.6369 2.80959Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),yR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",strokeWidth:"1.2",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M10 4V20M14 4V20M4 8C4 8.92997 4 9.39496 4.10222 9.77646C4.37962 10.8117 5.18827 11.6204 6.22354 11.8978C6.60504 12 7.07003 12 8 12H16C16.93 12 17.395 12 17.7765 11.8978C18.8117 11.6204 19.6204 10.8117 19.8978 9.77646C20 9.39496 20 8.92997 20 8M4 8C4 7.07003 4 6.60504 4.10222 6.22354C4.37962 5.18827 5.18827 4.37962 6.22354 4.10222C6.60504 4 7.07003 4 8 4H16C16.93 4 17.395 4 17.7765 4.10222C18.8117 4.37962 19.6204 5.18827 19.8978 6.22354C20 6.60504 20 7.07003 20 8M4 8V16C4 16.93 4 17.395 4.10222 17.7765C4.37962 18.8117 5.18827 19.6204 6.22354 19.8978C6.60504 20 7.07003 20 8 20H16C16.93 20 17.395 20 17.7765 19.8978C18.8117 19.6204 19.6204 18.8117 19.8978 17.7765C20 17.395 20 16.93 20 16V8M10 16H8C7.07003 16 6.60504 16 6.22354 15.8978C5.18827 15.6204 4.37962 14.8117 4.10222 13.7765C4 13.395 4 12.93 4 12M14 16H16C16.93 16 17.395 16 17.7765 15.8978C18.8117 15.6204 19.6204 14.8117 19.8978 13.7765C20 13.395 20 12.93 20 12M7 8H7.01M17 8H17.01",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round"})}),bR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],textAlign:"center",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4 6H20M4 12H20M4 18H20",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),wR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M6 9.25L7.84615 11.25L12 6.75M15.75 9C15.75 12.7279 12.7279 15.75 9 15.75C5.27208 15.75 2.25 12.7279 2.25 9C2.25 5.27208 5.27208 2.25 9 2.25C12.7279 2.25 15.75 5.27208 15.75 9Z",stroke:"#00C39A",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),xR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4.5 6.75L9 11.25L13.5 6.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),_R=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M7 14L11.5 9.5L7 5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),kR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4.5 11.25L9 6.75L13.5 11.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),SR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M12 10V14M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12ZM17 12C17 14.7614 14.7614 17 12 17C9.23858 17 7 14.7614 7 12C7 9.23858 9.23858 7 12 7C14.7614 7 17 9.23858 17 12Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ER=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none","data-testid":"contact-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3.75 15.75C3.75 12.8505 6.10051 10.5 9 10.5C11.8995 10.5 14.25 12.8505 14.25 15.75M12 5.25C12 6.90685 10.6569 8.25 9 8.25C7.34315 8.25 6 6.90685 6 5.25C6 3.59315 7.34315 2.25 9 2.25C10.6569 2.25 12 3.59315 12 5.25Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),AR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M7.5 12.75L6 11.25L7.5 9.75M10.5 9.75L12 11.25L10.5 12.75M9.75 2.25H6.15C5.30992 2.25 4.88988 2.25 4.56901 2.41349C4.28677 2.5573 4.0573 2.78677 3.91349 3.06901C3.75 3.38988 3.75 3.80992 3.75 4.65V13.35C3.75 14.1901 3.75 14.6101 3.91349 14.931C4.0573 15.2132 4.28677 15.4427 4.56901 15.5865C4.88988 15.75 5.30992 15.75 6.15 15.75H11.85C12.6901 15.75 13.1101 15.75 13.431 15.5865C13.7132 15.4427 13.9427 15.2132 14.0865 14.931C14.25 14.6101 14.25 14.1901 14.25 13.35V6.75M9.75 2.25L14.25 6.75M9.75 2.25V6C9.75 6.41421 10.0858 6.75 10.5 6.75H14.25",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),PR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M13.773 13.773C14.9945 12.5515 15.75 10.864 15.75 9C15.75 5.27208 12.7279 2.25 9 2.25C7.13604 2.25 5.44854 3.00552 4.22703 4.22703M13.773 13.773C12.5515 14.9945 10.864 15.75 9 15.75C5.27208 15.75 2.25 12.7279 2.25 9C2.25 7.13604 3.00552 5.44854 4.22703 4.22703M13.773 13.773L4.22703 4.22703",stroke:"#FB4F57",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),OR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3.125 9H20.875M12 3L8 9L12 20.6667L16 9L12 3ZM12.64 20.1467L20.64 9.48C20.7691 9.30787 20.8336 9.22181 20.8585 9.12728C20.8805 9.04385 20.8805 8.95615 20.8585 8.87272C20.8336 8.77819 20.7691 8.69213 20.64 8.52L16.74 3.32C16.652 3.20267 16.608 3.144 16.5522 3.10169C16.5028 3.06421 16.4469 3.03625 16.3873 3.01922C16.32 3 16.2467 3 16.1 3H7.9C7.75333 3 7.68 3 7.61269 3.01922C7.55308 3.03625 7.49715 3.06421 7.44776 3.10169C7.392 3.144 7.348 3.20267 7.26 3.32L3.36 8.52C3.2309 8.69213 3.16635 8.77819 3.14147 8.87271C3.11951 8.95615 3.11951 9.04385 3.14147 9.12728C3.16635 9.2218 3.2309 9.30787 3.36 9.48L11.36 20.1467C11.5771 20.4362 11.6857 20.5809 11.8188 20.6327C11.9353 20.678 12.0647 20.678 12.1812 20.6327C12.3143 20.5809 12.4229 20.4362 12.64 20.1467Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),TR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M9 17H13M9 13H13M9 9H10M17 18V21M17 15H17.01M13 3H8.2C7.0799 3 6.51984 3 6.09202 3.21799C5.71569 3.40973 5.40973 3.71569 5.21799 4.09202C5 4.51984 5 5.0799 5 6.2V17.8C5 18.9201 5 19.4802 5.21799 19.908C5.40973 20.2843 5.71569 20.5903 6.09202 20.782C6.51984 21 7.0799 21 8.2 21H13M13 3L19 9M13 3V7.4C13 7.96005 13 8.24008 13.109 8.45399C13.2049 8.64215 13.3578 8.79513 13.546 8.89101C13.7599 9 14.0399 9 14.6 9H19M19 9V11.5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),jR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4 14L9 19L20 8M6 8.88889L9.07692 12L16 5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),CR=e=>(0,xn.jsx)(NP,{width:"16px",height:"16px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M5 7.25L8 10.25M8 10.25L11 7.25M8 10.25V1.25M14.75 7.25V12.3494C14.75 13.1895 14.75 13.6095 14.5865 13.9304C14.4427 14.2126 14.2132 14.4421 13.931 14.5859C13.6101 14.7494 13.1901 14.7494 12.35 14.7494H3.65C2.80992 14.7494 2.38988 14.7494 2.06901 14.5859C1.78677 14.4421 1.5573 14.2126 1.41349 13.9304C1.25 13.6095 1.25 13.1895 1.25 12.3494V7.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),RR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M8.5 21H4C4 17.134 7.13401 14 11 14C11.1681 14 11.3348 14.0059 11.5 14.0176M15 7C15 9.20914 13.2091 11 11 11C8.79086 11 7 9.20914 7 7C7 4.79086 8.79086 3 11 3C13.2091 3 15 4.79086 15 7ZM12.5898 21L14.6148 20.595C14.7914 20.5597 14.8797 20.542 14.962 20.5097C15.0351 20.4811 15.1045 20.4439 15.1689 20.399C15.2414 20.3484 15.3051 20.2848 15.4324 20.1574L19.5898 16C20.1421 15.4477 20.1421 14.5523 19.5898 14C19.0376 13.4477 18.1421 13.4477 17.5898 14L13.4324 18.1574C13.3051 18.2848 13.2414 18.3484 13.1908 18.421C13.1459 18.4853 13.1088 18.5548 13.0801 18.6279C13.0478 18.7102 13.0302 18.7985 12.9948 18.975L12.5898 21Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),IR=e=>(0,xn.jsx)(NP,{width:"12px",height:"12px",fill:"none",stroke:AO.orange,viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M6 3.66667V6.58333M6 8.33333H6.00583M11.25 6C11.25 8.89949 8.89949 11.25 6 11.25C3.1005 11.25 0.75 8.89949 0.75 6C0.75 3.1005 3.1005 0.75 6 0.75C8.89949 0.75 11.25 3.1005 11.25 6Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),MR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M15 3V15M3 9H12M12 9L9 6M12 9L9 12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),LR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M15 3L9 9M15 3V6.375M15 3H11.625M14.25 9.375V12.6C14.25 13.4401 14.25 13.8601 14.0865 14.181C13.9427 14.4632 13.7132 14.6927 13.431 14.8365C13.1101 15 12.6901 15 11.85 15H5.4C4.55992 15 4.13988 15 3.81901 14.8365C3.53677 14.6927 3.3073 14.4632 3.16349 14.181C3 13.8601 3 13.4401 3 12.6V6.15C3 5.30992 3 4.88988 3.16349 4.56901C3.3073 4.28677 3.53677 4.0573 3.81901 3.91349C4.13988 3.75 4.55992 3.75 5.4 3.75H8.625",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),NR=e=>(0,xn.jsxs)(NP,{width:"16px",height:"12px",fill:"none",viewBox:"0 0 16 12",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,xn.jsx)("path",{d:"M10.2501 6C10.2501 7.24264 9.2427 8.25 8.00006 8.25C6.75742 8.25 5.75006 7.24264 5.75006 6C5.75006 4.75736 6.75742 3.75 8.00006 3.75C9.2427 3.75 10.2501 4.75736 10.2501 6Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,xn.jsx)("path",{d:"M8.00039 0.75C4.64217 0.75 1.79946 2.95716 0.84375 5.99997C1.79944 9.04282 4.64217 11.25 8.00041 11.25C11.3586 11.25 14.2013 9.04284 15.157 6.00003C14.2014 2.95719 11.3586 0.75 8.00039 0.75Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),DR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M2.25024 2.25L15.7502 15.75M7.38345 7.43523C6.99147 7.84016 6.75024 8.39191 6.75024 9C6.75024 10.2426 7.7576 11.25 9.00024 11.25C9.6171 11.25 10.176 11.0018 10.5824 10.5997M4.87524 4.98536C3.45076 5.92525 2.36577 7.33796 1.84375 8.99997C2.79944 12.0428 5.64217 14.25 9.00041 14.25C10.4921 14.25 11.882 13.8145 13.0501 13.0638M8.25024 3.78705C8.49697 3.76254 8.74722 3.75 9.00039 3.75C12.3586 3.75 15.2014 5.95719 16.157 9.00003C15.9465 9.67048 15.6443 10.3004 15.2651 10.875",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),zR=e=>(0,xn.jsx)(NP,{width:"30px",height:"15px",fill:AO.gray[450],viewBox:"1 1 30 15",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M1.2429 13V4.27273H7.02131V5.79403H3.08807V7.87358H6.63778V9.39489H3.08807V13H1.2429ZM8.67685 13H6.69957L9.71236 4.27273H12.0902L15.0987 13H13.1214L10.9354 6.26705H10.8672L8.67685 13ZM8.55327 9.5696H13.2237V11.0099H8.55327V9.5696ZM19.4847 4.27273V13H17.6396V6.02415H17.5884L15.5898 7.27699V5.64062L17.7504 4.27273H19.4847ZM22.1683 13.1108C21.8871 13.1108 21.6456 13.0114 21.4439 12.8125C21.245 12.6108 21.1456 12.3693 21.1456 12.0881C21.1456 11.8097 21.245 11.571 21.4439 11.3722C21.6456 11.1733 21.8871 11.0739 22.1683 11.0739C22.4411 11.0739 22.6797 11.1733 22.8842 11.3722C23.0888 11.571 23.1911 11.8097 23.1911 12.0881C23.1911 12.2756 23.1428 12.4474 23.0462 12.6037C22.9524 12.7571 22.8288 12.8807 22.6754 12.9744C22.522 13.0653 22.353 13.1108 22.1683 13.1108ZM24.6644 13V11.6705L27.771 8.79403C28.0352 8.53835 28.2567 8.30824 28.4357 8.10369C28.6175 7.89915 28.7553 7.69886 28.8491 7.50284C28.9428 7.30398 28.9897 7.08949 28.9897 6.85938C28.9897 6.60369 28.9315 6.38352 28.815 6.19886C28.6985 6.01136 28.5394 5.8679 28.3377 5.76847C28.136 5.66619 27.9073 5.61506 27.6516 5.61506C27.3846 5.61506 27.1516 5.66903 26.9528 5.77699C26.7539 5.88494 26.6005 6.03977 26.4925 6.24148C26.3846 6.44318 26.3306 6.68324 26.3306 6.96165H24.5792C24.5792 6.39062 24.7085 5.89489 24.967 5.47443C25.2255 5.05398 25.5877 4.72869 26.0536 4.49858C26.5195 4.26847 27.0565 4.15341 27.6644 4.15341C28.2894 4.15341 28.8335 4.2642 29.2965 4.4858C29.7624 4.70455 30.1246 5.00852 30.3832 5.39773C30.6417 5.78693 30.771 6.23295 30.771 6.7358C30.771 7.06534 30.7056 7.39062 30.5749 7.71165C30.4471 8.03267 30.2184 8.3892 29.8888 8.78125C29.5593 9.17045 29.0948 9.63778 28.4954 10.1832L27.2212 11.4318V11.4915H30.886V13H24.6644Z"})}),BR=e=>(0,xn.jsx)(NP,{width:"23px",height:"18px",fill:AO.gray[450],viewBox:"0 0 23 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M1.0261 13V4.27273H6.80451V5.79403H2.87127V7.87358H6.42099V9.39489H2.87127V13H1.0261ZM8.46005 13H6.48278L9.49556 4.27273H11.8734L14.8819 13H12.9047L10.7186 6.26705H10.6504L8.46005 13ZM8.33647 9.5696H13.0069V11.0099H8.33647V9.5696ZM15.8812 13V11.6705L18.9877 8.79403C19.252 8.53835 19.4735 8.30824 19.6525 8.10369C19.8343 7.89915 19.9721 7.69886 20.0659 7.50284C20.1596 7.30398 20.2065 7.08949 20.2065 6.85938C20.2065 6.60369 20.1483 6.38352 20.0318 6.19886C19.9153 6.01136 19.7562 5.8679 19.5545 5.76847C19.3528 5.66619 19.1241 5.61506 18.8684 5.61506C18.6014 5.61506 18.3684 5.66903 18.1696 5.77699C17.9707 5.88494 17.8173 6.03977 17.7093 6.24148C17.6014 6.44318 17.5474 6.68324 17.5474 6.96165H15.796C15.796 6.39062 15.9252 5.89489 16.1838 5.47443C16.4423 5.05398 16.8045 4.72869 17.2704 4.49858C17.7363 4.26847 18.2733 4.15341 18.8812 4.15341C19.5062 4.15341 20.0502 4.2642 20.5133 4.4858C20.9792 4.70455 21.3414 5.00852 21.6 5.39773C21.8585 5.78693 21.9877 6.23295 21.9877 6.7358C21.9877 7.06534 21.9224 7.39062 21.7917 7.71165C21.6639 8.03267 21.4352 8.3892 21.1056 8.78125C20.7761 9.17045 20.3116 9.63778 19.7122 10.1832L18.438 11.4318V11.4915H22.1028V13H15.8812Z"})}),UR=e=>(0,xn.jsx)(NP,{width:"19px",height:"19px",fill:"none",stroke:AO.gray[400],viewBox:"0 0 19 19",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M15.7842 10.2916C15.8165 10.0323 15.8332 9.76807 15.8332 9.49996C15.8332 6.00216 12.9976 3.16663 9.49984 3.16663C7.52021 3.16663 5.75273 4.07488 4.59135 5.49742M3.2155 8.70829C3.18316 8.96764 3.1665 9.23185 3.1665 9.49996C3.1665 12.9978 6.00203 15.8333 9.49984 15.8333C11.3914 15.8333 13.0893 15.004 14.2498 13.6892M11.8748 13.4583H14.2498V13.6892M4.59135 3.16663V5.49742M4.59135 5.49742V5.54157L6.96635 5.54163M14.2498 15.8333V13.6892",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),FR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M9 8.25V12.75M9 12.75L7.5 11.25M9 12.75L10.5 11.25M9.75 2.25H6.15C5.30992 2.25 4.88988 2.25 4.56901 2.41349C4.28677 2.5573 4.0573 2.78677 3.91349 3.06901C3.75 3.38988 3.75 3.80992 3.75 4.65V13.35C3.75 14.1901 3.75 14.6101 3.91349 14.931C4.0573 15.2132 4.28677 15.4427 4.56901 15.5865C4.88988 15.75 5.30992 15.75 6.15 15.75H11.85C12.6901 15.75 13.1101 15.75 13.431 15.5865C13.7132 15.4427 13.9427 15.2132 14.0865 14.931C14.25 14.6101 14.25 14.1901 14.25 13.35V6.75M9.75 2.25L14.25 6.75M9.75 2.25V5.55C9.75 5.97004 9.75 6.18006 9.83175 6.34049C9.90365 6.48161 10.0184 6.59635 10.1595 6.66825C10.3199 6.75 10.53 6.75 10.95 6.75H14.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),$R=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M11.25 2.25V4.8C11.25 5.22004 11.25 5.43006 11.3317 5.59049C11.4037 5.73161 11.5184 5.84635 11.6595 5.91825C11.8199 6 12.03 6 12.45 6H15M7.5 6H4.5C3.67157 6 3 6.67157 3 7.5V14.25C3 15.0784 3.67157 15.75 4.5 15.75H9C9.82843 15.75 10.5 15.0784 10.5 14.25V12M12 2.25H9.9C9.05992 2.25 8.63988 2.25 8.31901 2.41349C8.03677 2.5573 7.8073 2.78677 7.66349 3.06901C7.5 3.38988 7.5 3.80992 7.5 4.65V9.6C7.5 10.4401 7.5 10.8601 7.66349 11.181C7.8073 11.4632 8.03677 11.6927 8.31901 11.8365C8.63988 12 9.05992 12 9.9 12H12.6C13.4401 12 13.8601 12 14.181 11.8365C14.4632 11.6927 14.6927 11.4632 14.8365 11.181C15 10.8601 15 10.4401 15 9.6V5.25L12 2.25Z",strokeLinejoin:"round",strokeWidth:"1.2"})}),HR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:"black",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M2.95314 5.997C4.05824 3.77605 6.35091 2.25 9 2.25C12.4718 2.25 15.3314 4.87105 15.708 8.24231M2.2912 9.74998C2.66427 13.125 5.52558 15.75 9 15.75C11.6496 15.75 13.9427 14.2234 15.0475 12.0017M2.25 3V6.375H5.625M15.75 15.375V12H12.375M8.625 6.75L7.5 9H10.5L9.375 11.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),VR=e=>(0,xn.jsxs)(NP,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,xn.jsx)("path",{d:"M15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3431 10.3431 9 12 9C13.6569 9 15 10.3431 15 12Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,xn.jsx)("path",{d:"M12.9046 3.06005C12.6988 3 12.4659 3 12 3C11.5341 3 11.3012 3 11.0954 3.06005C10.7942 3.14794 10.5281 3.32808 10.3346 3.57511C10.2024 3.74388 10.1159 3.96016 9.94291 4.39272C9.69419 5.01452 9.00393 5.33471 8.36857 5.123L7.79779 4.93281C7.3929 4.79785 7.19045 4.73036 6.99196 4.7188C6.70039 4.70181 6.4102 4.77032 6.15701 4.9159C5.98465 5.01501 5.83376 5.16591 5.53197 5.4677C5.21122 5.78845 5.05084 5.94882 4.94896 6.13189C4.79927 6.40084 4.73595 6.70934 4.76759 7.01551C4.78912 7.2239 4.87335 7.43449 5.04182 7.85566C5.30565 8.51523 5.05184 9.26878 4.44272 9.63433L4.16521 9.80087C3.74031 10.0558 3.52786 10.1833 3.37354 10.3588C3.23698 10.5141 3.13401 10.696 3.07109 10.893C3 11.1156 3 11.3658 3 11.8663C3 12.4589 3 12.7551 3.09462 13.0088C3.17823 13.2329 3.31422 13.4337 3.49124 13.5946C3.69158 13.7766 3.96395 13.8856 4.50866 14.1035C5.06534 14.3261 5.35196 14.9441 5.16236 15.5129L4.94721 16.1584C4.79819 16.6054 4.72367 16.829 4.7169 17.0486C4.70875 17.3127 4.77049 17.5742 4.89587 17.8067C5.00015 18.0002 5.16678 18.1668 5.5 18.5C5.83323 18.8332 5.99985 18.9998 6.19325 19.1041C6.4258 19.2295 6.68733 19.2913 6.9514 19.2831C7.17102 19.2763 7.39456 19.2018 7.84164 19.0528L8.36862 18.8771C9.00393 18.6654 9.6942 18.9855 9.94291 19.6073C10.1159 20.0398 10.2024 20.2561 10.3346 20.4249C10.5281 20.6719 10.7942 20.8521 11.0954 20.94C11.3012 21 11.5341 21 12 21C12.4659 21 12.6988 21 12.9046 20.94C13.2058 20.8521 13.4719 20.6719 13.6654 20.4249C13.7976 20.2561 13.8841 20.0398 14.0571 19.6073C14.3058 18.9855 14.9961 18.6654 15.6313 18.8773L16.1579 19.0529C16.605 19.2019 16.8286 19.2764 17.0482 19.2832C17.3123 19.2913 17.5738 19.2296 17.8063 19.1042C17.9997 18.9999 18.1664 18.8333 18.4996 18.5001C18.8328 18.1669 18.9994 18.0002 19.1037 17.8068C19.2291 17.5743 19.2908 17.3127 19.2827 17.0487C19.2759 16.8291 19.2014 16.6055 19.0524 16.1584L18.8374 15.5134C18.6477 14.9444 18.9344 14.3262 19.4913 14.1035C20.036 13.8856 20.3084 13.7766 20.5088 13.5946C20.6858 13.4337 20.8218 13.2329 20.9054 13.0088C21 12.7551 21 12.4589 21 11.8663C21 11.3658 21 11.1156 20.9289 10.893C20.866 10.696 20.763 10.5141 20.6265 10.3588C20.4721 10.1833 20.2597 10.0558 19.8348 9.80087L19.5569 9.63416C18.9478 9.26867 18.6939 8.51514 18.9578 7.85558C19.1262 7.43443 19.2105 7.22383 19.232 7.01543C19.2636 6.70926 19.2003 6.40077 19.0506 6.13181C18.9487 5.94875 18.7884 5.78837 18.4676 5.46762C18.1658 5.16584 18.0149 5.01494 17.8426 4.91583C17.5894 4.77024 17.2992 4.70174 17.0076 4.71872C16.8091 4.73029 16.6067 4.79777 16.2018 4.93273L15.6314 5.12287C14.9961 5.33464 14.3058 5.0145 14.0571 4.39272C13.8841 3.96016 13.7976 3.74388 13.6654 3.57511C13.4719 3.32808 13.2058 3.14794 12.9046 3.06005Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),qR=e=>(0,xn.jsxs)(NP,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,xn.jsx)("path",{d:"M23.5198 12.2729C23.5198 11.422 23.4435 10.6038 23.3016 9.81836H12V14.4601H18.4581C18.1799 15.9601 17.3345 17.231 16.0636 18.0819V21.0927H19.9417C22.2107 19.0037 23.5198 15.9274 23.5198 12.2729Z",fill:"#4285F4",clipRule:"evenodd",fillRule:"evenodd"}),(0,xn.jsx)("path",{d:"M12.0008 24.0011C15.2408 24.0011 17.9571 22.9266 19.9425 21.0939L16.0644 18.083C14.9899 18.803 13.6153 19.2284 12.0008 19.2284C8.8754 19.2284 6.22999 17.1176 5.28637 14.2812H1.27734V17.3903C3.25186 21.312 7.30997 24.0011 12.0008 24.0011Z",fill:"#34A853",clipRule:"evenodd",fillRule:"evenodd"}),(0,xn.jsx)("path",{d:"M5.28537 14.2803C5.04537 13.5603 4.90901 12.7912 4.90901 12.0003C4.90901 11.2094 5.04537 10.4404 5.28537 9.72037V6.61133H1.27634C0.463629 8.2313 0 10.064 0 12.0003C0 13.9367 0.463629 15.7694 1.27634 17.3893L5.28537 14.2803Z",fill:"#FBBC05",clipRule:"evenodd",fillRule:"evenodd"}),(0,xn.jsx)("path",{d:"M12.0008 4.77265C13.7626 4.77265 15.3444 5.3781 16.588 6.56717L20.0298 3.1254C17.9516 1.18907 15.2353 0 12.0008 0C7.30997 0 3.25186 2.68905 1.27734 6.6108L5.28637 9.71984C6.22999 6.88353 8.8754 4.77265 12.0008 4.77265Z",fill:"#EA4335",clipRule:"evenodd",fillRule:"evenodd"})]}),KR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M18.3795 5.65166L14.1055 9.86303M9.89445 14.137L5.63994 18.3679M5.63408 5.63799L9.89445 9.86303M14.1056 14.137L18.364 18.364M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12ZM15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3431 10.3431 9 12 9C13.6569 9 15 10.3431 15 12Z",stroke:AO.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),WR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M15 2.25H3M15 15.75H3M3.75 2.25C3.75 4.13267 4.65921 5.89944 6.1912 6.99371L11.8088 11.0063C13.3408 12.1006 14.25 13.8673 14.25 15.75M14.25 2.25C14.25 4.13267 13.3408 5.89944 11.8088 6.99371L6.1912 11.0063C4.65921 12.1006 3.75 13.8673 3.75 15.75",stroke:"#FB4F57",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),GR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],"data-testid":"outgoing-arrow-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M5.25 12.75L12.75 5.25M12.75 5.25H6M12.75 5.25V12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),ZR=e=>(0,xn.jsx)(GR,{css:{rotate:"180deg"},...e}),YR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none","data-testid":"key-icon",strokeWidth:"1.2",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M9.24092 8.01389L3 14.25L4.5 15.75M5.25 12L6.75 13.5M15 5.625C15 7.48896 13.489 9 11.625 9C9.76104 9 8.25 7.48896 8.25 5.625C8.25 3.76104 9.76104 2.25 11.625 2.25C13.489 2.25 15 3.76104 15 5.625Z",strokeLinecap:"round",strokeLinejoin:"round"})}),XR=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:AO.gray[400],"data-testid":"ledger-icon",strokeWidth:"0",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M11.666 7.29183H12.3952V8.75016H9.47852V4.37516H10.9368L8.74935 1.4585L6.56185 4.37516H8.02018V10.2085H5.10352V8.54818C5.5381 8.29516 5.83268 7.82995 5.83268 7.29183C5.83268 6.90506 5.67904 6.53412 5.40555 6.26063C5.13206 5.98714 4.76112 5.8335 4.37435 5.8335C3.98757 5.8335 3.61664 5.98714 3.34315 6.26063C3.06966 6.53412 2.91602 6.90506 2.91602 7.29183C2.91602 7.82995 3.2106 8.29516 3.64518 8.54818V10.2085C3.64518 11.0128 4.29924 11.6668 5.10352 11.6668H8.02018V13.3271C7.79896 13.454 7.61508 13.6369 7.48707 13.8575C7.35906 14.0781 7.29143 14.3285 7.29102 14.5835C7.29102 14.9703 7.44466 15.3412 7.71815 15.6147C7.99164 15.8882 8.36257 16.0418 8.74935 16.0418C9.13612 16.0418 9.50706 15.8882 9.78055 15.6147C10.054 15.3412 10.2077 14.9703 10.2077 14.5835C10.2077 14.0454 9.9131 13.5802 9.47852 13.3271V10.2085H12.3952C13.1995 10.2085 13.8535 9.55443 13.8535 8.75016V7.29183H14.5827V4.37516H11.666V7.29183Z"})}),JR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M9.16586 17.6508C8.9261 17.8747 8.74055 18.0245 8.55093 18.134C7.62273 18.6699 6.47914 18.6699 5.55093 18.134C5.20889 17.9365 4.88009 17.6077 4.22251 16.9501C3.56492 16.2925 3.23612 15.9637 3.03864 15.6217C2.50274 14.6935 2.50274 13.5499 3.03864 12.6217C3.23612 12.2797 3.56492 11.9509 4.2225 11.2933L7.05093 8.46484C7.70852 7.80725 8.03732 7.47846 8.37936 7.28098C9.30756 6.74508 10.4512 6.74508 11.3794 7.28098C11.7214 7.47846 12.0502 7.80725 12.7078 8.46484C13.3654 9.12243 13.6942 9.45123 13.8916 9.79327C14.4275 10.7215 14.4275 11.8651 13.8916 12.7933C13.7822 12.9829 13.6323 13.1684 13.4085 13.4082M10.5929 10.5926C10.369 10.8323 10.2192 11.0179 10.1097 11.2075C9.57381 12.1357 9.57381 13.2793 10.1097 14.2075C10.3072 14.5495 10.636 14.8783 11.2936 15.5359C11.9512 16.1935 12.28 16.5223 12.622 16.7198C13.5502 17.2557 14.6938 17.2557 15.622 16.7198C15.964 16.5223 16.2928 16.1935 16.9504 15.5359L19.7789 12.7075C20.4364 12.0499 20.7652 11.7211 20.9627 11.3791C21.4986 10.4509 21.4986 9.30726 20.9627 8.37906C20.7652 8.03701 20.4364 7.70822 19.7789 7.05063C19.1213 6.39304 18.7925 6.06425 18.4504 5.86677C17.5222 5.33087 16.3786 5.33087 15.4504 5.86677C15.2608 5.97625 15.0753 6.12608 14.8355 6.34992",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),QR=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M12 14.5V16.5M7 10.0288C7.47142 10 8.05259 10 8.8 10H15.2C15.9474 10 16.5286 10 17 10.0288M7 10.0288C6.41168 10.0647 5.99429 10.1455 5.63803 10.327C5.07354 10.6146 4.6146 11.0735 4.32698 11.638C4 12.2798 4 13.1198 4 14.8V16.2C4 17.8802 4 18.7202 4.32698 19.362C4.6146 19.9265 5.07354 20.3854 5.63803 20.673C6.27976 21 7.11984 21 8.8 21H15.2C16.8802 21 17.7202 21 18.362 20.673C18.9265 20.3854 19.3854 19.9265 19.673 19.362C20 18.7202 20 17.8802 20 16.2V14.8C20 13.1198 20 12.2798 19.673 11.638C19.3854 11.0735 18.9265 10.6146 18.362 10.327C18.0057 10.1455 17.5883 10.0647 17 10.0288M7 10.0288V8C7 5.23858 9.23858 3 12 3C14.7614 3 17 5.23858 17 8V10.0288",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),eI=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:"black",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M12.182 5.81859C13.9393 7.57595 13.9393 10.4252 12.182 12.1825M5.81802 12.1825C4.06066 10.4252 4.06066 7.57592 5.81802 5.81856M3.6967 14.3039C0.767767 11.3749 0.767767 6.6262 3.6967 3.69727M14.3033 3.6973C17.2322 6.62623 17.2322 11.375 14.3033 14.3039M10.5 9.00057C10.5 9.82899 9.82843 10.5006 9 10.5006C8.17157 10.5006 7.5 9.82899 7.5 9.00057C7.5 8.17214 8.17157 7.50057 9 7.50057C9.82843 7.50057 10.5 8.17214 10.5 9.00057Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),tI=({fishColor:e,...t})=>(0,xn.jsxs)(NP,{width:"38px",height:"38px",fill:"none",viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",...t,children:[(0,xn.jsx)("path",{d:"M34.9985 26.2751C34.6599 26.8629 34.2436 27.4106 33.7512 27.9032C32.2815 29.3727 30.3277 30.1819 28.2496 30.1819H24.8477V34.9996H26.8032H28.2497C30.0524 34.9996 31.7472 34.2976 33.022 33.0229C34.2967 31.7481 34.9986 30.0533 34.9985 28.2507V26.2751Z",fill:"black"}),(0,xn.jsx)("path",{d:"M34.9989 20.9441C34.6603 21.5318 34.2439 22.0796 33.7514 22.572C32.2819 24.0416 30.328 24.8509 28.2499 24.8509H18.9983C17.8104 24.8511 16.8477 25.814 16.8477 27.0019C16.8477 28.1898 17.8104 29.1528 18.9983 29.153H28.25C30.0526 29.153 31.7474 28.4511 33.0222 27.1763C34.2965 25.902 34.9986 24.2076 34.9989 22.4054V20.9441ZM18.9988 27.8361C18.5381 27.8361 18.1645 27.4626 18.1645 27.0018C18.1645 26.5412 18.5381 26.1675 18.9988 26.1675C19.4596 26.1675 19.8331 26.5412 19.8331 27.0018C19.8331 27.4626 19.4596 27.8361 18.9988 27.8361Z",fill:"black"}),(0,xn.jsx)("path",{d:"M35 9.74895C35 6.02751 31.9724 3 28.2509 3H9.74908C6.02761 3 3 6.02751 3 9.74895V28.2511C3 31.9725 6.02761 35 9.74899 35H23.8176V30.1824H18.9995C17.2418 30.1824 15.8171 28.7576 15.8171 27.0001C15.8171 25.2426 17.2418 23.8179 18.9995 23.8179H23.8176V18.9998H9.74899C6.5911 18.9998 4.03113 16.4402 4.03113 13.2824V9.74905C4.03113 6.59127 6.5911 4.03131 9.74899 4.03131H28.2508C31.4087 4.03131 33.9686 6.59127 33.9686 9.74905V13.2824C33.9686 16.4403 31.4089 19.0001 28.251 19.0001L24.8491 18.9998V23.8179H28.2511C30.0539 23.8179 31.7487 23.1159 33.0233 21.8411C34.2977 20.5668 34.9997 18.8725 35 17.0703V9.74895Z",fill:"black"}),(0,xn.jsx)("path",{d:"M28.251 4.03174C31.4088 4.03174 33.9687 6.59167 33.9687 9.74952V13.2828C33.9687 16.4406 31.4089 19.0005 28.2511 19.0005L9.74908 19.0003C6.59124 19.0003 4.03125 16.4406 4.03125 13.2829V9.74954C4.03125 6.59167 6.5912 4.03174 9.74908 4.03174H28.251Z",fill:"white"}),(0,xn.jsx)("path",{d:"M28.2511 6.73267C29.611 6.73267 30.7641 7.6364 31.1394 8.87525C31.1926 9.05118 31.0527 9.22558 30.869 9.21814C28.2867 9.11348 25.877 8.32896 23.8154 7.038C23.6751 6.95014 23.739 6.73267 23.9045 6.73267H28.2511Z",fill:e}),(0,xn.jsx)("path",{d:"M21.9973 7.02488C24.4283 8.9081 27.4326 10.0842 30.7 10.2428C31.0172 10.2581 31.2679 10.5166 31.2679 10.8342V12.8702C31.2674 12.9124 31.2661 13.0446 31.2638 13.1857C31.2603 13.4148 31.069 13.5949 30.8401 13.5876C25.3913 13.4117 20.5215 10.9067 17.1937 7.03888C17.0905 6.91878 17.175 6.73267 17.3334 6.73267H21.1443C21.4533 6.73267 21.753 6.83569 21.9973 7.02488Z",fill:e}),(0,xn.jsx)("path",{d:"M15.9653 7.17305C19.4649 11.5395 24.7681 14.4013 30.735 14.6156C30.8376 14.6193 30.9004 14.7309 30.8481 14.8191C30.3219 15.7056 29.3544 16.3012 28.2505 16.3012H23.1255C22.9317 16.3012 22.7392 16.2646 22.5603 16.1899C18.0848 14.3242 14.3146 11.0926 11.7745 7.01866C11.6968 6.89417 11.7878 6.73267 11.9345 6.73267H15.0503C15.4065 6.73267 15.7426 6.89513 15.9653 7.17305Z",fill:e}),(0,xn.jsx)("path",{d:"M9.75058 6.73267H10.1145C10.294 6.73267 10.4589 6.82889 10.5496 6.98379C12.776 10.7844 16.0081 13.9276 19.8791 16.0439C20.0039 16.1122 19.9556 16.3012 19.8134 16.3012H15.1194C14.5651 16.3012 14.0261 16.1087 13.6043 15.7491C11.1433 13.6507 9.05479 11.1267 7.45371 8.29236C7.34983 8.10846 7.3762 7.87733 7.51835 7.72112C8.07107 7.11383 8.86658 6.73267 9.75058 6.73267Z",fill:e}),(0,xn.jsx)("path",{d:"M12.3071 15.9829C12.4313 16.0951 12.3514 16.3013 12.184 16.3013H9.71437C8.06547 16.2829 6.73047 14.9363 6.73047 13.2836V9.7504L6.73065 9.54576C6.73077 9.42446 6.89048 9.37962 6.95305 9.48354C8.41152 11.9061 10.2194 14.096 12.3071 15.9829Z",fill:e})]}),rI=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M12 8H12.01M12 11V16M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),nI=e=>(0,xn.jsx)(NP,{width:"16px",height:"16px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M8 5V8.75M8 11H8.0075M14.75 8C14.75 11.7279 11.7279 14.75 8 14.75C4.27208 14.75 1.25 11.7279 1.25 8C1.25 4.27208 4.27208 1.25 8 1.25C11.7279 1.25 14.75 4.27208 14.75 8Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),iI=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M11.3348 4.66483L13.2208 6.55082M3 15L3.03164 14.7785C3.1436 13.9948 3.19958 13.6029 3.32692 13.2371C3.43992 12.9124 3.59428 12.6037 3.78619 12.3185C4.00247 11.9971 4.28237 11.7172 4.84218 11.1574L12.609 3.3906C13.1298 2.8698 13.9742 2.8698 14.495 3.3906C15.0158 3.9114 15.0158 4.75578 14.495 5.27658L6.58565 13.1859C6.07779 13.6938 5.82386 13.9477 5.53462 14.1497C5.27789 14.3289 5.001 14.4774 4.70965 14.5921C4.3814 14.7213 4.02937 14.7923 3.32535 14.9344L3 15Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),oI=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[300],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4 12H20M12 4V20",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),aI=e=>(0,xn.jsx)(NP,{width:"18",height:"18",fill:"none",stroke:AO.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3 9C3 12.3137 5.68629 15 9 15C12.3137 15 15 12.3137 15 9C15 5.68629 12.3137 3 9 3C7.20796 3 5.59942 3.78563 4.5 5.03126C4.43696 5.10268 4.3756 5.17562 4.31597 5.25M9 6V9L10.875 10.875M4.31543 3.00293V5.25293H6.56543",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),sI=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],"data-testid":"rotate-icon",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M12.5 18.5C17.1944 18.5 21 14.6944 21 10C21 5.30558 17.1944 1.5 12.5 1.5C7.80558 1.5 4 5.30558 4 10C4 11.5433 4.41128 12.9905 5.13022 14.238M1.5 13L5.13022 14.238M6.82531 10.3832L5.47107 14.3542L5.13022 14.238",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),cI=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M16 3L8 21",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),lI=e=>(0,xn.jsx)(NP,{width:"32px",height:"32px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M16 7.33333C16 9.17428 14.5076 10.6667 12.6667 10.6667C10.8257 10.6667 9.33333 9.17428 9.33333 7.33333M16 7.33333C16 5.49238 14.5076 4 12.6667 4C10.8257 4 9.33333 5.49238 9.33333 7.33333M16 7.33333H28M9.33333 7.33333H4M25.3333 16C25.3333 17.8409 23.8409 19.3333 22 19.3333C20.1591 19.3333 18.6667 17.8409 18.6667 16M25.3333 16C25.3333 14.1591 23.8409 12.6667 22 12.6667C20.1591 12.6667 18.6667 14.1591 18.6667 16M25.3333 16H28M18.6667 16H4M13.3333 24.6667C13.3333 26.5076 11.8409 28 10 28C8.15905 28 6.66667 26.5076 6.66667 24.6667M13.3333 24.6667C13.3333 22.8257 11.8409 21.3333 10 21.3333C8.15905 21.3333 6.66667 22.8257 6.66667 24.6667M13.3333 24.6667H28M6.66667 24.6667H4",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),uI=e=>(0,xn.jsx)(NP,{width:"28px",height:"28px",fill:"none",stroke:"transparent","data-testid":"social-icon",viewBox:"0 0 28 28",...e,children:(0,xn.jsx)("g",{id:"Group 40429",children:(0,xn.jsx)("g",{id:"Group 40428",children:(0,xn.jsxs)("g",{id:"Group 39769",children:[(0,xn.jsx)("path",{d:"M27.4398 14.3177C27.4398 13.325 27.3507 12.3705 27.1852 11.4541H14V16.8695H21.5344C21.2099 18.6194 20.2235 20.1021 18.7408 21.0949V24.6075H23.2653C25.9125 22.1703 27.4398 18.5813 27.4398 14.3177Z",fill:"#4285F4",clipRule:"evenodd",fillRule:"evenodd",id:"Shape"}),(0,xn.jsx)("path",{d:"M14.0009 28C17.7809 28 20.9499 26.7464 23.2663 24.6082L18.7418 21.0955C17.4882 21.9355 15.8846 22.4319 14.0009 22.4319C10.3546 22.4319 7.26832 19.9692 6.16743 16.6602H1.49023V20.2874C3.79383 24.8628 8.5283 28 14.0009 28Z",fill:"#34A853",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_2"}),(0,xn.jsx)("path",{d:"M6.16627 16.66C5.88627 15.82 5.72718 14.9228 5.72718 14.0001C5.72718 13.0774 5.88627 12.1801 6.16627 11.3401V7.71289H1.48907C0.5409 9.60286 0 11.741 0 14.0001C0 16.2591 0.5409 18.3973 1.48907 20.2872L6.16627 16.66Z",fill:"#FBBC05",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_3"}),(0,xn.jsx)("path",{d:"M14.0009 5.56809C16.0564 5.56809 17.9018 6.27445 19.3527 7.6617L23.3681 3.64631C20.9436 1.38725 17.7745 0 14.0009 0C8.5283 0 3.79383 3.13722 1.49023 7.7126L6.16743 11.3398C7.26832 8.03078 10.3546 5.56809 14.0009 5.56809Z",fill:"#EA4335",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_4"})]})})})}),dI=e=>(0,xn.jsxs)(NP,{width:"30px",height:"30px",fill:"none","data-testid":"tez-icon",viewBox:"0 0 30 30",...e,children:[(0,xn.jsx)("rect",{width:"30",height:"30",fill:"white",rx:"4"}),(0,xn.jsx)("rect",{width:"30",height:"30",fill:"url(#pattern0)",rx:"4"}),(0,xn.jsxs)("defs",{children:[(0,xn.jsx)("pattern",{width:"1",height:"1",id:"pattern0",patternContentUnits:"objectBoundingBox",children:(0,xn.jsx)("use",{transform:"translate(0.1753 0.101557) scale(0.00532296)",xlinkHref:"#image0_2912_38337"})}),(0,xn.jsx)("image",{width:"122",height:"150",id:"image0_2912_38337",xlinkHref:"data:image/png;base64,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"})]})]}),hI=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[300],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M13.5 9H13.5075M9 9H9.0075M4.5 9H4.5075M9.75 9C9.75 9.41421 9.41421 9.75 9 9.75C8.58579 9.75 8.25 9.41421 8.25 9C8.25 8.58579 8.58579 8.25 9 8.25C9.41421 8.25 9.75 8.58579 9.75 9ZM14.25 9C14.25 9.41421 13.9142 9.75 13.5 9.75C13.0858 9.75 12.75 9.41421 12.75 9C12.75 8.58579 13.0858 8.25 13.5 8.25C13.9142 8.25 14.25 8.58579 14.25 9ZM5.25 9C5.25 9.41421 4.91421 9.75 4.5 9.75C4.08579 9.75 3.75 9.41421 3.75 9C3.75 8.58579 4.08579 8.25 4.5 8.25C4.91421 8.25 5.25 8.58579 5.25 9Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2"})});var fI=v((function(e,t){const{htmlWidth:r,htmlHeight:n,alt:i,...o}=e;return(0,xn.jsx)("img",{width:r,height:n,ref:t,alt:i,...o})}));fI.displayName="NativeImage";function pI(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}var mI=v((function(e,t){const{fallbackSrc:r,fallback:n,src:o,srcSet:a,align:s,fit:c,loading:l,ignoreFallback:u,crossOrigin:d,fallbackStrategy:h="beforeLoadOrError",referrerPolicy:f,...p}=e,m=null!=l||u||!(void 0!==r||void 0!==n),g=function(e){const{loading:t,src:r,srcSet:n,onLoad:o,onError:a,crossOrigin:s,sizes:c,ignoreFallback:l}=e,[u,d]=(0,i.useState)("pending");(0,i.useEffect)((()=>{d(r?"loading":"pending")}),[r]);const h=(0,i.useRef)(),f=(0,i.useCallback)((()=>{if(!r)return;p();const e=new Image;e.src=r,s&&(e.crossOrigin=s),n&&(e.srcset=n),c&&(e.sizes=c),t&&(e.loading=t),e.onload=e=>{p(),d("loaded"),null==o||o(e)},e.onerror=e=>{p(),d("failed"),null==a||a(e)},h.current=e}),[r,s,n,c,o,a,t]),p=()=>{h.current&&(h.current.onload=null,h.current.onerror=null,h.current=null)};return mf((()=>{if(!l)return"loading"===u&&f(),()=>{p()}}),[u,f,l]),l?"loaded":u}({...e,crossOrigin:d,ignoreFallback:m}),v=((e,t)=>"loaded"!==e&&"beforeLoadOrError"===t||"failed"===e&&"onError"===t)(g,h),y={ref:t,objectFit:c,objectPosition:s,...m?p:pI(p,["onError","onLoad"])};return v?n||(0,xn.jsx)(wn.img,{as:fI,className:"chakra-image__placeholder",src:r,...y}):(0,xn.jsx)(wn.img,{as:fI,src:o,srcSet:a,crossOrigin:d,loading:l,referrerPolicy:f,className:"chakra-image",...y})}));mI.displayName="Image";const gI=({contract:e,...t})=>{const r=`https://services.tzkt.io/v1/avatars/${e}`;return(0,xn.jsx)(mI,{fallbackSrc:"/static/media/coin-front.svg",src:r,...t})},vI=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3 4.5H15M12 4.5L11.797 3.89105C11.6003 3.30094 11.502 3.00588 11.3195 2.78774C11.1584 2.5951 10.9516 2.44599 10.7179 2.35408C10.4532 2.25 10.1422 2.25 9.52018 2.25H8.47982C7.85779 2.25 7.54677 2.25 7.28213 2.35408C7.04844 2.44599 6.84156 2.5951 6.68047 2.78774C6.49804 3.00588 6.39969 3.30094 6.20298 3.89105L6 4.5M13.5 4.5V12.15C13.5 13.4101 13.5 14.0402 13.2548 14.5215C13.039 14.9448 12.6948 15.289 12.2715 15.5048C11.7902 15.75 11.1601 15.75 9.9 15.75H8.1C6.83988 15.75 6.20982 15.75 5.72852 15.5048C5.30516 15.289 4.96095 14.9448 4.74524 14.5215C4.5 14.0402 4.5 13.4101 4.5 12.15V4.5M10.5 7.5V12.75M7.5 7.5V12.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),yI=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none","data-testid":"unknown-contact-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M3.16602 15.5625C3.16602 12.7435 5.45123 10.4583 8.27018 10.4583C8.51775 10.4583 8.7612 10.476 8.99935 10.51M13.3722 13.375C14.1014 12.6458 14.8305 12.3575 14.8305 11.5521C14.8305 10.7467 14.1776 10.0938 13.3722 10.0938C12.6927 10.0938 12.1217 10.5585 11.9598 11.1875M13.3722 15.5625H13.3795M11.1868 5.35417C11.1868 6.965 9.88101 8.27083 8.27018 8.27083C6.65935 8.27083 5.35352 6.965 5.35352 5.35417C5.35352 3.74334 6.65935 2.4375 8.27018 2.4375C9.88101 2.4375 11.1868 3.74334 11.1868 5.35417Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),bI=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M20.5 11L18.7396 7.60473C18.253 6.65855 18.0097 6.18545 17.6514 5.84012C17.3346 5.5347 16.9544 5.30272 16.5379 5.16065C16.067 5 15.535 5 14.471 5H9.52901C8.46503 5 7.93304 5 7.46209 5.16065C7.04558 5.30272 6.66542 5.5347 6.34859 5.84012C5.99034 6.18545 5.74703 6.65855 5.26042 7.60473L3.5 11M20.5 11C20.6981 11.3853 20.7658 11.5446 20.8357 11.747C20.8977 11.9267 20.9426 12.1119 20.9696 12.3002C21 12.5121 21 12.7287 21 13.162V14.2C21 15.8802 21 16.7202 20.673 17.362C20.3854 17.9265 19.9265 18.3854 19.362 18.673C18.7202 19 17.8802 19 16.2 19H7.8C6.11984 19 5.27976 19 4.63803 18.673C4.07354 18.3854 3.6146 17.9265 3.32698 17.362C3 16.7202 3 15.8802 3 14.2V13.162C3 12.7287 3 12.5121 3.03041 12.3002C3.05741 12.1119 3.10225 11.9267 3.16432 11.747C3.23421 11.5446 3.30186 11.3853 3.5 11M20.5 11H3.5M15 15H17",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),wI=()=>(0,xn.jsxs)(_n,{position:"relative",alignItems:"center",justifyContent:"center","data-testid":"verified-icon",children:[(0,xn.jsx)(xI,{}),(0,xn.jsx)(_n,{position:"absolute",alignItems:"center",justifyContent:"center",children:(0,xn.jsx)(_I,{})})]}),xI=e=>(0,xn.jsx)(NP,{width:"14px",height:"14px",fill:AO.gray[450],viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M6.51019 0.479749C6.78233 0.213196 7.21767 0.213195 7.48981 0.479749L8.86158 1.82333C8.99061 1.94972 9.16351 2.02134 9.34412 2.02321L11.2642 2.04314C11.6451 2.04709 11.9529 2.35492 11.9569 2.73584L11.9768 4.65588C11.9787 4.83649 12.0503 5.00939 12.1767 5.13842L13.5203 6.51019C13.7868 6.78233 13.7868 7.21767 13.5203 7.48981L12.1767 8.86158C12.0503 8.99061 11.9787 9.16351 11.9768 9.34412L11.9569 11.2642C11.9529 11.6451 11.6451 11.9529 11.2642 11.9569L9.34412 11.9768C9.16351 11.9787 8.99061 12.0503 8.86158 12.1767L7.48981 13.5203C7.21767 13.7868 6.78233 13.7868 6.51019 13.5203L5.13842 12.1767C5.00939 12.0503 4.83649 11.9787 4.65588 11.9768L2.73584 11.9569C2.35492 11.9529 2.04709 11.6451 2.04314 11.2642L2.02321 9.34412C2.02134 9.16351 1.94972 8.99061 1.82333 8.86158L0.479749 7.48981C0.213196 7.21767 0.213195 6.78233 0.479749 6.51019L1.82333 5.13842C1.94972 5.00939 2.02134 4.83649 2.02321 4.65588L2.04314 2.73584C2.04709 2.35492 2.35492 2.04709 2.73584 2.04314L4.65588 2.02321C4.83649 2.02134 5.00939 1.94972 5.13842 1.82333L6.51019 0.479749Z",strokeLinecap:"square",strokeLinejoin:"round"})}),_I=e=>(0,xn.jsx)(NP,{width:"7px",height:"5px",fill:"none",stroke:"white",viewBox:"0 0 7 5",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M1.66699 2.19314L3.0281 3.55425L5.75033 0.832031",strokeLinecap:"square",strokeLinejoin:"round"})}),kI=e=>(0,xn.jsx)(NP,{width:"24px",height:"24px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M10 16V14.0003M10 14.0003V12M10 14.0003L12 14.0005M10 14.0003L8 14M21 12V11.2C21 10.0799 21 9.51984 20.782 9.09202C20.5903 8.7157 20.2843 8.40973 19.908 8.21799C19.4802 8 18.9201 8 17.8 8H3M21 12V16M21 12H19C17.8954 12 17 12.8954 17 14C17 15.1046 17.8954 16 19 16H21M21 16V16.8C21 17.9201 21 18.4802 20.782 18.908C20.5903 19.2843 20.2843 19.5903 19.908 19.782C19.4802 20 18.9201 20 17.8 20H6.2C5.0799 20 4.51984 20 4.09202 19.782C3.71569 19.5903 3.40973 19.2843 3.21799 18.908C3 18.4802 3 17.9201 3 16.8V8M18 8V7.2C18 6.0799 18 5.51984 17.782 5.09202C17.5903 4.71569 17.2843 4.40973 16.908 4.21799C16.4802 4 15.9201 4 14.8 4H6.2C5.07989 4 4.51984 4 4.09202 4.21799C3.71569 4.40973 3.40973 4.71569 3.21799 5.09202C3 5.51984 3 6.0799 3 7.2V8",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),SI=e=>(0,xn.jsx)(NP,{width:"36px",height:"32px",fill:"none",stroke:AO.orangeL,viewBox:"0 0 36 32",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M18.0004 24.3332H18.0171M18.0004 12.6665V19.3332M8.68719 30.9999H27.3136C30.2831 30.9999 31.7678 30.9999 32.6386 30.3754C33.3985 29.8305 33.8946 28.9915 34.0058 28.0631C34.1333 26.9991 33.4178 25.6982 31.9868 23.0963L22.6736 6.16318C21.1499 3.39292 20.3881 2.00779 19.3814 1.54954C18.5041 1.15015 17.4968 1.15015 16.6194 1.54954C15.6127 2.00779 14.8509 3.39292 13.3273 6.16317L4.01404 23.0963C2.58301 25.6982 1.8675 26.9991 1.99498 28.0631C2.10622 28.9915 2.6023 29.8305 3.36219 30.3754C4.23304 30.9999 5.71776 30.9999 8.68719 30.9999Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2"})}),EI=e=>(0,xn.jsx)(NP,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M4.5 4.5L13.5 13.5M13.5 4.5L4.5 13.5","data-testid":"xmark-icon-path",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),AI=co,PI=Qi,OI=()=>{const{html:e,seen:t}=PI((e=>e.announcement)),r=AI();return(0,i.useEffect)((()=>{const e=()=>{hR.get("https://storage.googleapis.com/umami-artifacts/announcement.html").then((e=>{r(zs.actions.setCurrent(e.data))})).catch((e=>{}))};e();const t=setInterval(e,36e5);return()=>clearInterval(t)}),[r]),t||!e?null:(0,xn.jsx)(HP,{className:"announcement-banner",color:"black",background:AO.orangeL,"data-testid":"announcement",paddingX:"30px",children:(0,xn.jsxs)(_n,{justifyContent:"space-between",width:"100%",children:[(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(eI,{marginRight:"4px"}),(0,xn.jsx)(KP,{fontSize:"14px",dangerouslySetInnerHTML:{__html:e}})]}),(0,xn.jsx)(GP,{"data-testid":"close",onClick:()=>r(zs.actions.setSeen())})]})})};function TI(e,t){const r=(0,i.useId)();return(0,i.useMemo)((()=>e||[t,r].filter(Boolean).join("-")),[e,t,r])}function jI(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function CI(e){var t;return jI(e)&&null!=(t=e.ownerDocument)?t:document}function RI(){return!("undefined"===typeof window||!window.document||!window.document.createElement)}var II=RI()?i.useLayoutEffect:i.useEffect;function MI(e,t=[]){const r=(0,i.useRef)(e);return II((()=>{r.current=e})),(0,i.useCallback)(((...e)=>{var t;return null==(t=r.current)?void 0:t.call(r,...e)}),t)}function LI(e={}){const{onClose:t,onOpen:r,isOpen:n,id:o}=e,a=MI(r),s=MI(t),[c,l]=(0,i.useState)(e.defaultIsOpen||!1),[u,d]=function(e,t){const r=void 0!==e;return[r,r&&"undefined"!==typeof e?e:t]}(n,c),h=TI(o,"disclosure"),f=(0,i.useCallback)((()=>{u||l(!1),null==s||s()}),[u,s]),p=(0,i.useCallback)((()=>{u||l(!0),null==a||a()}),[u,a]),m=(0,i.useCallback)((()=>{(d?f:p)()}),[d,p,f]);return{isOpen:!!d,onOpen:p,onClose:f,onToggle:m,isControlled:u,getButtonProps:(e={})=>({...e,"aria-expanded":d,"aria-controls":h,onClick:kt(e.onClick,m)}),getDisclosureProps:(e={})=>({...e,hidden:!d,id:h})}}var NI=Object.defineProperty,DI=(e,t,r)=>(((e,t,r)=>{t in e?NI(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),zI=new class{constructor(){DI(this,"modals"),this.modals=new Map}add(e){return this.modals.set(e,this.modals.size+1),this.modals.size}remove(e){this.modals.delete(e)}isTopModal(e){return!!e&&this.modals.get(e)===this.modals.size}};function BI(e,t){const[r,n]=(0,i.useState)(0);return(0,i.useEffect)((()=>{const r=e.current;if(r){if(t){const e=zI.add(r);n(e)}return()=>{zI.remove(r),n(0)}}}),[t,e]),r}var UI=function(e){return"undefined"===typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},FI=new WeakMap,$I=new WeakMap,HI={},VI=0,qI=function(e){return e&&(e.host||qI(e.parentNode))},KI=function(e,t,r,n){var i=function(e,t){return t.map((function(t){if(e.contains(t))return t;var r=qI(t);return r&&e.contains(r)?r:(console.error("aria-hidden",t,"in not contained inside",e,". Doing nothing"),null)})).filter((function(e){return Boolean(e)}))}(t,Array.isArray(e)?e:[e]);HI[r]||(HI[r]=new WeakMap);var o=HI[r],a=[],s=new Set,c=new Set(i),l=function(e){e&&!s.has(e)&&(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){e&&!c.has(e)&&Array.prototype.forEach.call(e.children,(function(e){if(s.has(e))u(e);else{var t=e.getAttribute(n),i=null!==t&&"false"!==t,c=(FI.get(e)||0)+1,l=(o.get(e)||0)+1;FI.set(e,c),o.set(e,l),a.push(e),1===c&&i&&$I.set(e,!0),1===l&&e.setAttribute(r,"true"),i||e.setAttribute(n,"true")}}))};return u(t),s.clear(),VI++,function(){a.forEach((function(e){var t=FI.get(e)-1,i=o.get(e)-1;FI.set(e,t),o.set(e,i),t||($I.has(e)||e.removeAttribute(n),$I.delete(e)),i||e.removeAttribute(r)})),--VI||(FI=new WeakMap,FI=new WeakMap,$I=new WeakMap,HI={})}},WI=function(e,t,r){void 0===r&&(r="data-aria-hidden");var n=Array.from(Array.isArray(e)?e:[e]),i=t||UI(e);return i?(n.push.apply(n,Array.from(i.querySelectorAll("[aria-live]"))),KI(n,i,r,"aria-hidden")):function(){return null}};function GI(e){const{isOpen:t,onClose:r,id:n,closeOnOverlayClick:o=!0,closeOnEsc:a=!0,useInert:s=!0,onOverlayClick:c,onEsc:l}=e,u=(0,i.useRef)(null),d=(0,i.useRef)(null),[h,f,p]=function(e,...t){const r=(0,i.useId)(),n=e||r;return(0,i.useMemo)((()=>t.map((e=>`${e}-${n}`))),[n,t])}(n,"chakra-modal","chakra-modal--header","chakra-modal--body");!function(e,t){const r=e.current;(0,i.useEffect)((()=>{if(e.current&&t)return WI(e.current)}),[t,e,r])}(u,t&&s);const m=BI(u,t),g=(0,i.useRef)(null),v=(0,i.useCallback)((e=>{g.current=e.target}),[]),y=(0,i.useCallback)((e=>{"Escape"===e.key&&(e.stopPropagation(),a&&(null==r||r()),null==l||l())}),[a,r,l]),[b,w]=(0,i.useState)(!1),[x,_]=(0,i.useState)(!1),k=(0,i.useCallback)(((e={},t=null)=>({role:"dialog",...e,ref:Kn(t,u),id:h,tabIndex:-1,"aria-modal":!0,"aria-labelledby":b?f:void 0,"aria-describedby":x?p:void 0,onClick:E(e.onClick,(e=>e.stopPropagation()))})),[p,x,h,f,b]),S=(0,i.useCallback)((e=>{e.stopPropagation(),g.current===e.target&&zI.isTopModal(u.current)&&(o&&(null==r||r()),null==c||c())}),[r,o,c]),A=(0,i.useCallback)(((e={},t=null)=>({...e,ref:Kn(t,d),onClick:E(e.onClick,S),onKeyDown:E(e.onKeyDown,y),onMouseDown:E(e.onMouseDown,v)})),[y,v,S]);return{isOpen:t,onClose:r,headerId:f,bodyId:p,setBodyMounted:_,setHeaderMounted:w,dialogRef:u,overlayRef:d,getDialogProps:k,getDialogContainerProps:A,index:m}}var[ZI,YI]=Nn({name:"ModalStylesContext",errorMessage:"useModalStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),[XI,JI]=Nn({strict:!0,name:"ModalContext",errorMessage:"useModalContext: `context` is undefined. Seems you forgot to wrap modal components in ``"}),QI=e=>{const t={scrollBehavior:"outside",autoFocus:!0,trapFocus:!0,returnFocusOnClose:!0,blockScrollOnMount:!0,allowPinchZoom:!1,motionPreset:"scale",lockFocusAcrossFrames:!0,...e},{portalProps:r,children:n,autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:c,blockScrollOnMount:l,allowPinchZoom:u,preserveScrollBarGap:d,motionPreset:h,lockFocusAcrossFrames:f,onCloseComplete:p}=t,m=Mn("Modal",t),g={...GI(t),autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:c,blockScrollOnMount:l,allowPinchZoom:u,preserveScrollBarGap:d,motionPreset:h,lockFocusAcrossFrames:f};return(0,xn.jsx)(XI,{value:g,children:(0,xn.jsx)(ZI,{value:m,children:(0,xn.jsx)(oO,{onExitComplete:p,children:g.isOpen&&(0,xn.jsx)(hO,{...r,children:n})})})})};QI.displayName="Modal";var eM={ease:[.25,.1,.25,1],easeIn:[.4,0,1,1],easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1]},tM={position:{left:0,top:0,bottom:0,width:"100%"},enter:{x:0,y:0},exit:{x:"-100%",y:0}},rM={position:{right:0,top:0,bottom:0,width:"100%"},enter:{x:0,y:0},exit:{x:"100%",y:0}},nM={position:{top:0,left:0,right:0,maxWidth:"100vw"},enter:{x:0,y:0},exit:{x:0,y:"-100%"}},iM={position:{bottom:0,left:0,right:0,maxWidth:"100vw"},enter:{x:0,y:0},exit:{x:0,y:"100%"}};function oM(e){var t;switch(null!=(t=null==e?void 0:e.direction)?t:"right"){case"right":default:return rM;case"left":return tM;case"bottom":return iM;case"top":return nM}}var aM={enter:{duration:.2,ease:eM.easeOut},exit:{duration:.1,ease:eM.easeIn}},sM=(e,t)=>({...e,delay:"number"===typeof t?t:null==t?void 0:t.enter}),cM=(e,t)=>({...e,delay:"number"===typeof t?t:null==t?void 0:t.exit}),lM={enter:({transition:e,transitionEnd:t,delay:r}={})=>{var n;return{opacity:1,transition:null!=(n=null==e?void 0:e.enter)?n:sM(aM.enter,r),transitionEnd:null==t?void 0:t.enter}},exit:({transition:e,transitionEnd:t,delay:r}={})=>{var n;return{opacity:0,transition:null!=(n=null==e?void 0:e.exit)?n:cM(aM.exit,r),transitionEnd:null==t?void 0:t.exit}}},uM={initial:"exit",animate:"enter",exit:"exit",variants:lM},dM=(0,i.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,className:i,transition:o,transitionEnd:a,delay:s,...c}=e,l=n||r?"enter":"exit",u=!r||n&&r,d={transition:o,transitionEnd:a,delay:s};return(0,xn.jsx)(oO,{custom:d,children:u&&(0,xn.jsx)(CP.div,{ref:t,className:y("chakra-fade",i),custom:d,...uM,animate:l,...c})})}));dM.displayName="Fade";var hM=wn(CP.div),fM=v(((e,t)=>{const{className:r,transition:n,motionProps:i,...o}=e,a=y("chakra-modal__overlay",r),s={pos:"fixed",left:"0",top:"0",w:"100vw",h:"100vh",...YI().overlay},{motionPreset:c}=JI(),l=i||("none"===c?{}:uM);return(0,xn.jsx)(hM,{...l,__css:s,ref:t,className:a,...o})}));fM.displayName="ModalOverlay";var pM=function(e,t){return pM=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},pM(e,t)};function mM(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}pM(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var gM=function(){return gM=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function xM(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,o=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(s){i={error:s}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a}function _M(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i1||s(e,t)}))})}function s(e,t){try{!function(e){e.value instanceof kM?Promise.resolve(e.value.v).then(c,l):u(o[0][2],e)}(i[e](t))}catch(pge){u(o[0][3],pge)}}function c(e){s("next",e)}function l(e){s("throw",e)}function u(e,t){e(t),o.shift(),o.length&&s(o[0][0],o[0][1])}}function EM(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=wM(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,i){(function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)})(n,i,(t=e[r](t)).done,t.value)}))}}}Object.create;"function"===typeof SuppressedError&&SuppressedError;var AM="right-scroll-bar-position",PM="width-before-scroll-bar";function OM(e,t){return function(e,t){var r=(0,i.useState)((function(){return{value:e,callback:t,facade:{get current(){return r.value},set current(e){var t=r.value;t!==e&&(r.value=e,r.callback(e,t))}}}}))[0];return r.callback=t,r.facade}(t||null,(function(t){return e.forEach((function(e){return function(e,t){return"function"===typeof e?e(t):e&&(e.current=t),e}(e,t)}))}))}function TM(e){return e}function jM(e,t){void 0===t&&(t=TM);var r=[],n=!1,i={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:e},useMedium:function(e){var i=t(e,n);return r.push(i),function(){r=r.filter((function(e){return e!==i}))}},assignSyncMedium:function(e){for(n=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){n=!0;var t=[];if(r.length){var i=r;r=[],i.forEach(e),t=r}var o=function(){var r=t;t=[],r.forEach(e)},a=function(){return Promise.resolve().then(o)};a(),r={push:function(e){t.push(e),a()},filter:function(e){return t=t.filter(e),r}}}};return i}function CM(e,t){return void 0===t&&(t=TM),jM(e,t)}function RM(e){void 0===e&&(e={});var t=jM(null);return t.options=gM({async:!0,ssr:!1},e),t}var IM=RM(),MM=function(){},LM=i.forwardRef((function(e,t){var r=i.useRef(null),n=i.useState({onScrollCapture:MM,onWheelCapture:MM,onTouchMoveCapture:MM}),o=n[0],a=n[1],s=e.forwardProps,c=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,h=e.shards,f=e.sideCar,p=e.noIsolation,m=e.inert,g=e.allowPinchZoom,v=e.as,y=void 0===v?"div":v,b=e.gapMode,w=vM(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),x=f,_=OM([r,t]),k=gM(gM({},w),o);return i.createElement(i.Fragment,null,d&&i.createElement(x,{sideCar:IM,removeScrollBar:u,shards:h,noIsolation:p,inert:m,setCallbacks:a,allowPinchZoom:!!g,lockRef:r,gapMode:b}),s?i.cloneElement(i.Children.only(c),gM(gM({},k),{ref:_})):i.createElement(y,gM({},k,{className:l,ref:_}),c))}));LM.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},LM.classNames={fullWidth:PM,zeroRight:AM};var NM,DM=function(e){var t=e.sideCar,r=vM(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var n=t.read();if(!n)throw new Error("Sidecar medium not found");return i.createElement(n,gM({},r))};DM.isSideCarExport=!0;function zM(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=NM||r.nc;return t&&e.setAttribute("nonce",t),e}var BM=function(){var e=0,t=null;return{add:function(r){var n;0==e&&(t=zM())&&(!function(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}(t,r),n=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(n)),e++},remove:function(){! --e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},UM=function(){var e=function(){var e=BM();return function(t,r){i.useEffect((function(){return e.add(t),function(){e.remove()}}),[t&&r])}}();return function(t){var r=t.styles,n=t.dynamic;return e(r,n),null}},FM={left:0,top:0,right:0,gap:0},$M=function(e){return parseInt(e||"",10)||0},HM=function(e){if(void 0===e&&(e="margin"),"undefined"===typeof window)return FM;var t=function(e){var t=window.getComputedStyle(document.body),r=t["padding"===e?"paddingLeft":"marginLeft"],n=t["padding"===e?"paddingTop":"marginTop"],i=t["padding"===e?"paddingRight":"marginRight"];return[$M(r),$M(n),$M(i)]}(e),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,n-r+t[2]-t[0])}},VM=UM(),qM=function(e,t,r,n){var i=e.left,o=e.top,a=e.right,s=e.gap;return void 0===r&&(r="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(n,";\n padding-right: ").concat(s,"px ").concat(n,";\n }\n body {\n overflow: hidden ").concat(n,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(n,";"),"margin"===r&&"\n padding-left: ".concat(i,"px;\n padding-top: ").concat(o,"px;\n padding-right: ").concat(a,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(s,"px ").concat(n,";\n "),"padding"===r&&"padding-right: ".concat(s,"px ").concat(n,";")].filter(Boolean).join(""),"\n }\n \n .").concat(AM," {\n right: ").concat(s,"px ").concat(n,";\n }\n \n .").concat(PM," {\n margin-right: ").concat(s,"px ").concat(n,";\n }\n \n .").concat(AM," .").concat(AM," {\n right: 0 ").concat(n,";\n }\n \n .").concat(PM," .").concat(PM," {\n margin-right: 0 ").concat(n,";\n }\n \n body {\n ").concat("--removed-body-scroll-bar-size",": ").concat(s,"px;\n }\n")},KM=function(e){var t=e.noRelative,r=e.noImportant,n=e.gapMode,o=void 0===n?"margin":n,a=i.useMemo((function(){return HM(o)}),[o]);return i.createElement(VM,{styles:qM(a,!t,o,r?"":"!important")})},WM=!1;if("undefined"!==typeof window)try{var GM=Object.defineProperty({},"passive",{get:function(){return WM=!0,!0}});window.addEventListener("test",GM,GM),window.removeEventListener("test",GM,GM)}catch(kne){WM=!1}var ZM=!!WM&&{passive:!1},YM=function(e,t){var r=window.getComputedStyle(e);return"hidden"!==r[t]&&!(r.overflowY===r.overflowX&&!function(e){return"TEXTAREA"===e.tagName}(e)&&"visible"===r[t])},XM=function(e,t){var r=t.ownerDocument,n=t;do{if("undefined"!==typeof ShadowRoot&&n instanceof ShadowRoot&&(n=n.host),JM(e,n)){var i=QM(e,n);if(i[1]>i[2])return!0}n=n.parentNode}while(n&&n!==r.body);return!1},JM=function(e,t){return"v"===e?function(e){return YM(e,"overflowY")}(t):function(e){return YM(e,"overflowX")}(t)},QM=function(e,t){return"v"===e?function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]}(t):function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]}(t)},eL=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},tL=function(e){return[e.deltaX,e.deltaY]},rL=function(e){return e&&"current"in e?e.current:e},nL=function(e){return"\n .block-interactivity-".concat(e," {pointer-events: none;}\n .allow-interactivity-").concat(e," {pointer-events: all;}\n")},iL=0,oL=[];function aL(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const sL=(cL=function(e){var t=i.useRef([]),r=i.useRef([0,0]),n=i.useRef(),o=i.useState(iL++)[0],a=i.useState(UM)[0],s=i.useRef(e);i.useEffect((function(){s.current=e}),[e]),i.useEffect((function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var t=_M([e.lockRef.current],(e.shards||[]).map(rL),!0).filter(Boolean);return t.forEach((function(e){return e.classList.add("allow-interactivity-".concat(o))})),function(){document.body.classList.remove("block-interactivity-".concat(o)),t.forEach((function(e){return e.classList.remove("allow-interactivity-".concat(o))}))}}}),[e.inert,e.lockRef.current,e.shards]);var c=i.useCallback((function(e,t){if("touches"in e&&2===e.touches.length)return!s.current.allowPinchZoom;var i,o=eL(e),a=r.current,c="deltaX"in e?e.deltaX:a[0]-o[0],l="deltaY"in e?e.deltaY:a[1]-o[1],u=e.target,d=Math.abs(c)>Math.abs(l)?"h":"v";if("touches"in e&&"h"===d&&"range"===u.type)return!1;var h=XM(d,u);if(!h)return!0;if(h?i=d:(i="v"===d?"h":"v",h=XM(d,u)),!h)return!1;if(!n.current&&"changedTouches"in e&&(c||l)&&(n.current=i),!i)return!0;var f=n.current||i;return function(e,t,r,n,i){var o=function(e,t){return"h"===e&&"rtl"===t?-1:1}(e,window.getComputedStyle(t).direction),a=o*n,s=r.target,c=t.contains(s),l=!1,u=a>0,d=0,h=0;do{var f=QM(e,s),p=f[0],m=f[1]-f[2]-o*p;(p||m)&&JM(e,s)&&(d+=m,h+=p),s=s instanceof ShadowRoot?s.host:s.parentNode}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&a>d)||!u&&(i&&Math.abs(h)<1||!i&&-a>h))&&(l=!0),l}(f,t,e,"h"===f?c:l,!0)}),[]),l=i.useCallback((function(e){var r=e;if(oL.length&&oL[oL.length-1]===a){var n="deltaY"in r?tL(r):eL(r),i=t.current.filter((function(e){return e.name===r.type&&(e.target===r.target||r.target===e.shadowParent)&&function(e,t){return e[0]===t[0]&&e[1]===t[1]}(e.delta,n)}))[0];if(i&&i.should)r.cancelable&&r.preventDefault();else if(!i){var o=(s.current.shards||[]).map(rL).filter(Boolean).filter((function(e){return e.contains(r.target)}));(o.length>0?c(r,o[0]):!s.current.noIsolation)&&r.cancelable&&r.preventDefault()}}}),[]),u=i.useCallback((function(e,r,n,i){var o={name:e,delta:r,target:n,should:i,shadowParent:aL(n)};t.current.push(o),setTimeout((function(){t.current=t.current.filter((function(e){return e!==o}))}),1)}),[]),d=i.useCallback((function(e){r.current=eL(e),n.current=void 0}),[]),h=i.useCallback((function(t){u(t.type,tL(t),t.target,c(t,e.lockRef.current))}),[]),f=i.useCallback((function(t){u(t.type,eL(t),t.target,c(t,e.lockRef.current))}),[]);i.useEffect((function(){return oL.push(a),e.setCallbacks({onScrollCapture:h,onWheelCapture:h,onTouchMoveCapture:f}),document.addEventListener("wheel",l,ZM),document.addEventListener("touchmove",l,ZM),document.addEventListener("touchstart",d,ZM),function(){oL=oL.filter((function(e){return e!==a})),document.removeEventListener("wheel",l,ZM),document.removeEventListener("touchmove",l,ZM),document.removeEventListener("touchstart",d,ZM)}}),[]);var p=e.removeScrollBar,m=e.inert;return i.createElement(i.Fragment,null,m?i.createElement(a,{styles:nL(o)}):null,p?i.createElement(KM,{gapMode:e.gapMode}):null)},IM.useMedium(cL),DM);var cL,lL=i.forwardRef((function(e,t){return i.createElement(LM,gM({},e,{ref:t,sideCar:sL}))}));lL.classNames=LM.classNames;const uL=lL,dL=(0,i.createContext)({openWith:e=>Promise.resolve(),onClose:()=>{},isOpen:!1}),hL=()=>{const{isOpen:e,onClose:t,onOpen:r}=LI(),[n,o]=(0,i.useState)(null),[a,s]=(0,i.useState)("md");return{isOpen:e,onClose:t,openWith:async(e,t="md")=>(s(t),o(e),r(),Promise.resolve()),content:(0,xn.jsxs)(QI,{autoFocus:!1,blockScrollOnMount:!1,closeOnOverlayClick:!1,isCentered:!0,isOpen:e,motionPreset:localStorage.getItem("chakra-modal-motion-preset")||void 0,onClose:t,size:a,children:[(0,xn.jsx)(fM,{}),(0,xn.jsx)(uL,{enabled:e,children:n})]})}};function fL(e){const{theme:t}=Tn(),r=pO();return(0,i.useMemo)((()=>function(e,t){const r=r=>{var n;return{...t,...r,position:MP(null!=(n=null==r?void 0:r.position)?n:null==t?void 0:t.position,e)}},n=e=>{const t=r(e),n=JP(t);return ZP.notify(n,t)};return n.update=(e,t)=>{ZP.update(e,r(t))},n.promise=(e,t)=>{const r=n({...t.loading,status:"loading",duration:null});e.then((e=>n.update(r,{status:"success",duration:5e3,...x(t.success,e)}))).catch((e=>n.update(r,{status:"error",duration:5e3,...x(t.error,e)})))},n.closeAll=ZP.closeAll,n.close=ZP.close,n.isActive=ZP.isActive,n}(t.direction,{...r,...e})),[e,t.direction,r])}var pL;function mL(e){return Object.keys(e)}!function(e){e.PENDING="pending",e.RESOLVED="resolved",e.REJECTED="rejected"}(pL||(pL={}));const gL=()=>{throw new Error("ExposedPromise not initialized yet.")};class vL{_promise;_resolve=gL;_reject=gL;_status=pL.PENDING;_promiseResult;_promiseError;get promise(){return this._promise}get resolve(){return this._resolve}get reject(){return this._reject}get status(){return this._status}get promiseResult(){return this._promiseResult}get promiseError(){return this._promiseError}constructor(){this._promise=new Promise(((e,t)=>{this._resolve=t=>{this.isSettled()||(this._promiseResult=t,e(t),this._status=pL.RESOLVED)},this._reject=e=>{this.isSettled()||(this._promiseError=e,t(e),this._status=pL.REJECTED)}}))}static resolve(e){const t=new vL;return t.resolve(e),t}static reject(e){const t=new vL;return t.reject(e),t}isPending(){return this.status===pL.PENDING}isResolved(){return this.status===pL.RESOLVED}isRejected(){return this.status===pL.REJECTED}isSettled(){return this.isResolved()||this.isRejected()}}var yL=r(7819),bL=r(5784),wL=r(4706),xL=r(6058),_L=r(9722),kL=r(9673).Buffer;function SL(e){return kL.from(e).toString("hex")}async function EL(e){return SL("string"===typeof e?(0,Hs.hash)((0,xL.lF)(e),32):(0,Hs.hash)(e,32))}async function AL(e){return(0,$s.K)((0,Hs.hash)((0,xL.lF)(e),32))}async function PL(e,t){const r=kL.from((0,wL.randomBytes)(24));return SL(kL.concat([r,kL.from((0,bL.secretBox)(t,r,kL.from(e,"utf8")))]))}async function OL(e,t){const r=e.slice(0,24),n=e.slice(24),i=(0,bL.openSecretBox)(t,r,n);if(!i)throw new Error("Decryption failed");return kL.from(i).toString("utf8")}function TL(e,t){return`@${e}:${t}`}var jL=r(9673).Buffer;async function CL(){const e=(0,wL.randomBytes)(16);return[e.slice(0,4),e.slice(4,6),e.slice(6,8),e.slice(8,10),e.slice(10,16)].map((function(e){return jL.from(e).toString("hex")})).join("-")}var RL,IL,ML,LL,NL,DL,zL,BL,UL,FL;!function(e){e.BlockchainRequest="blockchain_request",e.PermissionRequest="permission_request",e.SignPayloadRequest="sign_payload_request",e.OperationRequest="operation_request",e.BroadcastRequest="broadcast_request",e.ChangeAccountRequest="change_account_request",e.BlockchainResponse="blockchain_response",e.PermissionResponse="permission_response",e.SignPayloadResponse="sign_payload_response",e.ProofOfEventChallengeRequest="proof_of_event_challenge_request",e.ProofOfEventChallengeResponse="proof_of_event_challenge_response",e.ProofOfEventChallengeRecorded="proof_of_event_challenge_recorded",e.OperationResponse="operation_response",e.BroadcastResponse="broadcast_response",e.Acknowledge="acknowledge",e.Disconnect="disconnect",e.Error="error"}(RL||(RL={})),function(e){e.SIGN="sign",e.OPERATION_REQUEST="operation_request",e.ENCRYPT="encrypt",e.NOTIFICATION="notification",e.THRESHOLD="threshold"}(IL||(IL={})),function(e){e.MAINNET="mainnet",e.GHOSTNET="ghostnet",e.WEEKLYNET="weeklynet",e.DAILYNET="dailynet",e.DELPHINET="delphinet",e.EDONET="edonet",e.FLORENCENET="florencenet",e.GRANADANET="granadanet",e.HANGZHOUNET="hangzhounet",e.ITHACANET="ithacanet",e.JAKARTANET="jakartanet",e.KATHMANDUNET="kathmandunet",e.LIMANET="limanet",e.MUMBAINET="mumbainet",e.NAIROBINET="nairobinet",e.OXFORDNET="oxfordnet",e.CUSTOM="custom"}(ML||(ML={})),function(e){e.ENDORSEMENT="endorsement",e.SEED_NONCE_REVELATION="seed_nonce_revelation",e.DOUBLE_ENDORSEMENT_EVIDENCE="double_endorsement_evidence",e.DOUBLE_BAKING_EVIDENCE="double_baking_evidence",e.ACTIVATE_ACCOUNT="activate_account",e.PROPOSALS="proposals",e.BALLOT="ballot",e.REVEAL="reveal",e.TRANSACTION="transaction",e.ORIGINATION="origination",e.DELEGATION="delegation"}(LL||(LL={})),function(e){e.WEBSITE="website",e.EXTENSION="extension",e.P2P="p2p",e.WALLETCONNECT="walletconnect"}(NL||(NL={})),function(e){e.BACKGROUND="toBackground",e.PAGE="toPage",e.EXTENSION="toExtension"}(DL||(DL={})),function(e){e.BROADCAST_ERROR="BROADCAST_ERROR",e.NETWORK_NOT_SUPPORTED="NETWORK_NOT_SUPPORTED",e.NO_ADDRESS_ERROR="NO_ADDRESS_ERROR",e.NO_PRIVATE_KEY_FOUND_ERROR="NO_PRIVATE_KEY_FOUND_ERROR",e.NOT_GRANTED_ERROR="NOT_GRANTED_ERROR",e.PARAMETERS_INVALID_ERROR="PARAMETERS_INVALID_ERROR",e.TOO_MANY_OPERATIONS="TOO_MANY_OPERATIONS",e.TRANSACTION_INVALID_ERROR="TRANSACTION_INVALID_ERROR",e.SIGNATURE_TYPE_NOT_SUPPORTED="SIGNATURE_TYPE_NOT_SUPPORTED",e.ABORTED_ERROR="ABORTED_ERROR",e.UNKNOWN_ERROR="UNKNOWN_ERROR"}(zL||(zL={})),function(e){e.NOT_CONNECTED="NOT_CONNECTED",e.CONNECTING="CONNECTING",e.CONNECTED="CONNECTED"}(BL||(BL={})),function(e){e.CHROME_MESSAGE="chrome_message",e.WALLETCONNECT="walletconnect",e.POST_MESSAGE="post_message",e.LEDGER="ledger",e.P2P="p2p"}(UL||(UL={}));class $L{static isSupported(){return Promise.resolve(!1)}}!function(e){e.TRANSPORT_P2P_PEERS_DAPP="beacon:communication-peers-dapp",e.TRANSPORT_P2P_PEERS_WALLET="beacon:communication-peers-wallet",e.TRANSPORT_POSTMESSAGE_PEERS_DAPP="beacon:postmessage-peers-dapp",e.TRANSPORT_POSTMESSAGE_PEERS_WALLET="beacon:postmessage-peers-wallet",e.TRANSPORT_WALLETCONNECT_PEERS_DAPP="beacon:walletconnect-peers-dapp",e.LAST_SELECTED_WALLET="beacon:last-selected-wallet",e.ACCOUNTS="beacon:accounts",e.ACTIVE_ACCOUNT="beacon:active-account",e.PUSH_TOKENS="beacon:push-tokens",e.BEACON_SDK_SECRET_SEED="beacon:sdk-secret-seed",e.APP_METADATA_LIST="beacon:app-metadata-list",e.PERMISSION_LIST="beacon:permissions",e.ONGOING_PROOF_OF_EVENT_CHALLENGES="beacon:ongoing-proof-of-event-challenges",e.BEACON_SDK_VERSION="beacon:sdk_version",e.MATRIX_PRESERVED_STATE="beacon:sdk-matrix-preserved-state",e.MATRIX_PEER_ROOM_IDS="beacon:matrix-peer-rooms",e.MATRIX_SELECTED_NODE="beacon:matrix-selected-node",e.MULTI_NODE_SETUP_DONE="beacon:multi-node-setup",e.WC_2_CORE_PAIRING="wc@2:core:0.3//pairing",e.WC_2_CLIENT_SESSION="wc@2:client:0.3//session",e.WC_2_CORE_KEYCHAIN="wc@2:core:0.3//keychain",e.WC_2_CORE_MESSAGES="wc@2:core:0.3//messages",e.WC_2_CLIENT_PROPOSAL="wc@2:client:0.3//proposal",e.WC_2_CORE_SUBSCRIPTION="wc@2:core:0.3//subscription",e.WC_2_CORE_HISTORY="wc@2:core:0.3//history",e.WC_2_CORE_EXPIRER="wc@2:core:0.3//expirer"}(FL||(FL={}));const HL={[FL.TRANSPORT_P2P_PEERS_DAPP]:[],[FL.TRANSPORT_P2P_PEERS_WALLET]:[],[FL.TRANSPORT_POSTMESSAGE_PEERS_DAPP]:[],[FL.TRANSPORT_POSTMESSAGE_PEERS_WALLET]:[],[FL.TRANSPORT_WALLETCONNECT_PEERS_DAPP]:[],[FL.LAST_SELECTED_WALLET]:void 0,[FL.ACCOUNTS]:[],[FL.ACTIVE_ACCOUNT]:void 0,[FL.PUSH_TOKENS]:[],[FL.BEACON_SDK_SECRET_SEED]:void 0,[FL.APP_METADATA_LIST]:[],[FL.PERMISSION_LIST]:[],[FL.ONGOING_PROOF_OF_EVENT_CHALLENGES]:[],[FL.BEACON_SDK_VERSION]:void 0,[FL.MATRIX_PRESERVED_STATE]:{},[FL.MATRIX_PEER_ROOM_IDS]:{},[FL.MATRIX_SELECTED_NODE]:void 0,[FL.MULTI_NODE_SETUP_DONE]:void 0,[FL.WC_2_CLIENT_SESSION]:void 0,[FL.WC_2_CORE_PAIRING]:void 0,[FL.WC_2_CORE_KEYCHAIN]:void 0,[FL.WC_2_CORE_MESSAGES]:void 0,[FL.WC_2_CLIENT_PROPOSAL]:void 0,[FL.WC_2_CORE_SUBSCRIPTION]:void 0,[FL.WC_2_CORE_HISTORY]:void 0,[FL.WC_2_CORE_EXPIRER]:void 0};class VL{type="p2p-pairing-request";relayServer;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.relayServer=i}}class qL extends VL{senderId;constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,a,s),this.senderId=o}}var KL,WL,GL;!function(e){e.RAW="raw",e.OPERATION="operation",e.MICHELINE="micheline"}(KL||(KL={}));class ZL{type="p2p-pairing-request";relayServer;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.relayServer=i}}class YL{type="postmessage-pairing-request";id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o){this.id=e,this.name=t,this.icon=i,this.appUrl=o,this.publicKey=r,this.version=n}}class XL extends YL{senderId;constructor(e,t,r,n,i,o,a){super(e,t,r,n,o,a),this.senderId=i}}class JL{type="walletconnect-pairing-request";uri;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.uri=i}}class QL extends JL{senderId;constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,o,a,s),this.senderId=i}}!function(e){e.LIGHT="light",e.DARK="dark"}(WL||(WL={})),function(e){e.EUROPE_EAST="europe-east",e.EUROPE_WEST="europe-west",e.NORTH_AMERICA_EAST="north-america-east",e.NORTH_AMERICA_WEST="north-america-west",e.CENTRAL_AMERICA="central-america",e.SOUTH_AMERICA="south-america",e.ASIA_EAST="asia-east",e.ASIA_WEST="asia-west",e.AFRICA="africa",e.AUSTRALIA="australia"}(GL||(GL={}));const eN="https://beacon-notification-oracle.dev.gke.papers.tech",tN=[e=>{}];let rN={postMessage:(e,t)=>{console.log("GOT MOCK POST MESSAGE",e),tN.forEach((t=>{t({data:e})}))},addEventListener:(e,t)=>{tN.push(t)},removeEventListener:(e,t)=>{tN.splice(tN.indexOf((e=>e===t)),1)},location:{origin:"*"}};try{"undefined"!==typeof window&&(rN=window)}catch(mge){console.log(`not defined: ${mge}`)}class nN{track(e,t,r,n){}}class iN{name;iconUrl;appUrl;_beaconId=new vL;get beaconId(){return this._beaconId.promise}storage;analytics;_keyPair=new vL;get keyPair(){return this._keyPair.promise}constructor(e){if(!e.name)throw new Error("Name not set");if(!e.storage)throw new Error("Storage not set");this.name=e.name,this.iconUrl=e.iconUrl,this.appUrl=e.appUrl??rN.location.origin,this.storage=e.storage,this.analytics=e.analytics??new nN,rN.beaconCreatedClientInstance?console.error("[BEACON] It looks like you created multiple Beacon SDK Client instances. This can lead to problems. Only create one instance and re-use it everywhere."):rN.beaconCreatedClientInstance=!0,this.initSDK().catch(console.error)}async destroy(){await this.removeBeaconEntriesFromStorage(),rN.beaconCreatedClientInstance=!1}async initSDK(){return this.storage.set(FL.BEACON_SDK_VERSION,"4.1.2").catch(console.error),this.loadOrCreateBeaconSecret().catch(console.error),this.keyPair.then((e=>{this._beaconId.resolve(SL(e.publicKey))}))}async removeBeaconEntriesFromStorage(){const e=Object.values(FL);await Promise.all(e.map((e=>this.storage.delete(e))))}async loadOrCreateBeaconSecret(){const e=await this.storage.get(FL.BEACON_SDK_SECRET_SEED);if(e&&"string"===typeof e)this._keyPair.resolve(await AL(e));else{const e=await CL();await this.storage.set(FL.BEACON_SDK_SECRET_SEED,e),this._keyPair.resolve(await AL(e))}}}class oN{storage;storageKey;constructor(e,t){this.storage=e,this.storageKey=t}async getAll(){return await this.storage.get(this.storageKey)??[]}async getOne(e){return(await this.storage.get(this.storageKey)).find(e)}async addOne(e,t,r=!0){const n=await this.storage.get(this.storageKey);if(n.some(t)){if(r)for(let i=0;i!e(t)));return this.storage.set(this.storageKey,t)}async removeAll(){return this.storage.delete(this.storageKey)}}var aN=r(9673).Buffer;const sN=async(e,t)=>{const r=[e,t.type];t.name&&r.push(`name:${t.name}`),t.rpcUrl&&r.push(`rpc:${t.rpcUrl}`);const n=aN.from((0,Hs.hash)((0,xL.lF)(r.join("-")),10));return yL.encode(n)};class cN{static async hasPermission(e,t,r){switch(e.type){case RL.PermissionRequest:case RL.BroadcastRequest:return!0;case RL.OperationRequest:{const r=await sN(e.sourceAddress,e.network),n=await t(r);return!!n&&n.scopes.includes(IL.OPERATION_REQUEST)}case RL.SignPayloadRequest:{const t=(await r()).filter((t=>t.address===e.sourceAddress));return 0!==t.length&&t.some((e=>e.scopes.includes(IL.SIGN)))}default:throw new Error("Message not handled")}}}class lN{storageManager;constructor(e){this.storageManager=new oN(e,FL.ACCOUNTS)}async getAccounts(){return await this.storageManager.getAll()??[]}async getAccount(e){return this.storageManager.getOne((t=>t.accountIdentifier===e))}async addAccount(e){return this.storageManager.addOne(e,(t=>t.accountIdentifier===e.accountIdentifier))}async updateAccount(e,t){const r=await this.getAccount(e);if(!r)return;const n={...r,...t};return await this.storageManager.addOne(n,(t=>t.accountIdentifier===e),!0),n}async removeAccount(e){return this.storageManager.remove((t=>t.accountIdentifier===e))}async removeAccounts(e){return this.storageManager.remove((t=>e.includes(t.accountIdentifier)))}async removeAllAccounts(){return this.storageManager.removeAll()}async hasPermission(e){return cN.hasPermission(e,this.getAccount.bind(this),this.getAccounts.bind(this))}}var uN=r(9673).Buffer;const dN=async e=>{const t=uN.from((0,Hs.hash)(uN.from(e,"hex"),5));return yL.encode(t)};let hN=!!rN.beaconSdkDebugEnabled;hN&&console.log("[BEACON]: Debug mode is ON (turned on either by the developer or a browser extension)");class fN{name;constructor(e){this.name=e}debug(e,...t){pN.debug(this.name,e,t)}log(e,...t){pN.log(this.name,e,t)}warn(e,...t){pN.warn(this.name,e,t)}error(e,...t){pN.error(this.name,e,t)}time(e,t){pN.time(e,t)}timeLog(e,...t){pN.timeLog(e,t)}}new fN("");let pN=new class{constructor(){}debug(e,t,...r){this._log("debug",e,t,r)}log(e,t,...r){this._log("log",e,t,r)}warn(e,t,...r){this._log("warn",e,t,r)}error(e,t,...r){this._log("error",e,t,r)}time(e,t){e?console.time(t):console.timeEnd(t)}timeLog(e,t,...r){this._log("timeLog",e,t,r)}_log(e,t,r,n=[]){if(!hN)return;let i=`[BEACON] ${(new Date).toISOString()} [${t}](${r})`,o=n;switch(n[0]&&"string"===typeof n[0]&&(i+=` ${n[0]}`,o=n.slice(1)),e){case"error":console.group(i),console.error(...o);break;case"warn":console.group(i),console.warn(...o);break;case"debug":console.groupCollapsed(i),console.debug(...o);break;case"timeLog":console.group(i),console.timeLog(...o);break;default:console.group(i),console.log(...o)}console.groupEnd()}};const mN=new fN("Client");class gN extends iN{accountManager;handleResponse;rateLimit=2;rateLimitWindowInSeconds=5;requestCounter=[];matrixNodes;_transport=new vL;get transport(){return this._transport.promise}get connectionStatus(){return this._transport.promiseResult?.connectionStatus??BL.NOT_CONNECTED}get ready(){return this.transport.then((()=>{}))}constructor(e){super(e),this.accountManager=new lN(e.storage),this.matrixNodes=e.matrixNodes??{},this.handleResponse=(e,t)=>{throw new Error(`not overwritten${JSON.stringify(e)} - ${JSON.stringify(t)}`)}}async getAccounts(){return this.accountManager.getAccounts()}async getAccount(e){return this.accountManager.getAccount(e)}async removeAccount(e){return this.accountManager.removeAccount(e)}async removeAllAccounts(){return this.accountManager.removeAllAccounts()}async addRequestAndCheckIfRateLimited(){const e=(new Date).getTime();return this.requestCounter=this.requestCounter.filter((t=>t+1e3*this.rateLimitWindowInSeconds>e)),this.requestCounter.push(e),this.requestCounter.length>this.rateLimit}async init(e){return this._transport.status===pL.RESOLVED?(await this.transport).type:(await this.setTransport(e),e.type)}async getOwnAppMetadata(){return{senderId:await dN(await this.beaconId),name:this.name,icon:this.iconUrl}}async getPeers(){return(await this.transport).getPeers()}async addPeer(e){return(await this.transport).addPeer(e)}async destroy(){this._transport.status===pL.RESOLVED&&await(await this.transport).disconnect(),await super.destroy()}async setTransport(e){e?this._transport.isSettled()?this._transport=vL.resolve(e):this._transport.resolve(e):this._transport.isSettled()&&(this._transport=new vL)}async addListener(e){e.addListener((async(e,t)=>{if("string"===typeof e){const r=await(new xN).deserialize(e);this.handleResponse(r,t)}})).catch((e=>mN.error("addListener",e)))}async sendDisconnectToPeer(e,t){const r={id:await CL(),version:e.version,senderId:await dN(await this.beaconId),type:RL.Disconnect},n=await(new xN).serialize(r),i=t??await this.transport;await i.send(n,e)}}const vN=new fN("Transport");class yN{type=UL.POST_MESSAGE;name;_isConnected=BL.NOT_CONNECTED;peerManager;client;newPeerListener;setEventHandler(e,t){this.client.eventHandlers.set(e,t)}listeners=[];get connectionStatus(){return this._isConnected}constructor(e,t,r){this.name=e,this.client=t,this.peerManager=r}static async isAvailable(){return Promise.resolve(!1)}async connect(){vN.log("connect"),this._isConnected=BL.CONNECTED}async disconnect(){vN.log("disconnect"),this._isConnected=BL.NOT_CONNECTED}async send(e,t){if(t)return this.client.sendMessage(e,t);{const t=(await this.getPeers()).map((t=>this.client.sendMessage(e,t)));return(await Promise.all(t))[0]}}async addListener(e){vN.debug("addListener"),this.listeners.push(e)}async removeListener(e){vN.log("removeListener"),this.listeners=this.listeners.filter((t=>t!==e))}async getPeers(){return this.peerManager.getPeers()}async addPeer(e,t=!0){vN.log("addPeer","adding peer",e),await this.peerManager.addPeer(e),await this.listen(e.publicKey)}async removePeer(e){vN.log("removePeer","removing peer",e),await this.peerManager.removePeer(e.publicKey),this.client&&await this.client.unsubscribeFromEncryptedMessage(e.publicKey)}async removeAllPeers(){vN.log("removeAllPeers"),await this.peerManager.removeAllPeers(),this.client&&await this.client.unsubscribeFromEncryptedMessages()}async notifyListeners(e,t){0===this.listeners.length?vN.warn("notifyListeners","0 listeners notified!",this):vN.log("notifyListeners",`Notifying ${this.listeners.length} listeners`,this),this.listeners.forEach((r=>{r(e,t)}))}}class bN extends $L{prefix;constructor(e){super(),this.prefix=e}static async isSupported(){return Promise.resolve(Boolean("undefined"!==typeof window)&&Boolean(window.localStorage))}async get(e){const t=localStorage.getItem(this.getPrefixedKey(e));if(!t)return"object"===typeof HL[e]?JSON.parse(JSON.stringify(HL[e])):HL[e];try{return JSON.parse(t)}catch(r){return t}}async set(e,t){return"string"===typeof t?localStorage.setItem(this.getPrefixedKey(e),t):localStorage.setItem(this.getPrefixedKey(e),JSON.stringify(t))}async delete(e){return Promise.resolve(localStorage.removeItem(this.getPrefixedKey(e)))}async subscribeToStorageChanged(e){window.addEventListener("storage",(t=>{t.key?e({eventType:"entryModified",key:this.getPrefixedKey(t.key),oldValue:t.oldValue,newValue:t.newValue}):e({eventType:"storageCleared",key:null,oldValue:null,newValue:null})}),!1)}getPrefixedKey(e){return this.prefix?`${this.prefix}-${e}`:e}}new fN("STORAGE");var wN=r(9673).Buffer;class xN{async serialize(e){const t=JSON.stringify(e);return yL.encode(wN.from(t))}async deserialize(e){if("string"!==typeof e)throw new Error("Encoded payload needs to be a string");return JSON.parse(yL.decode(e).toString())}}class _N{storageManager;constructor(e){this.storageManager=new oN(e,FL.APP_METADATA_LIST)}async getAppMetadataList(){return await this.storageManager.getAll()??[]}async getAppMetadata(e){return this.storageManager.getOne((t=>t.senderId===e))}async addAppMetadata(e){return this.storageManager.addOne(e,(t=>t.senderId===e.senderId))}async removeAppMetadata(e){return this.storageManager.remove((t=>t.senderId===e))}async removeAppMetadatas(e){return this.storageManager.remove((t=>e.includes(t.senderId)))}async removeAllAppMetadata(){return this.storageManager.removeAll()}}class kN{storageManager;constructor(e){this.storageManager=new oN(e,FL.PERMISSION_LIST)}async getPermissions(){return await this.storageManager.getAll()??[]}async getPermission(e){return this.storageManager.getOne((t=>t.accountIdentifier===e))}async addPermission(e){return this.storageManager.addOne(e,(t=>t.accountIdentifier===e.accountIdentifier&&t.senderId===e.senderId))}async removePermission(e){return this.storageManager.remove((t=>t.accountIdentifier===e))}async removePermissions(e){return this.storageManager.remove((t=>e.includes(t.accountIdentifier)))}async removeAllPermissions(){return this.storageManager.removeAll()}async hasPermission(e){return cN.hasPermission(e,this.getPermission.bind(this),this.getPermissions.bind(this))}}class SN{storageManager;constructor(e,t){this.storageManager=new oN(e,t)}async hasPeer(e){return!!await this.getPeer(e)}async getPeers(){return await this.storageManager.getAll()??[]}async getPeer(e){return this.storageManager.getOne((t=>t.publicKey===e))}async addPeer(e){return this.storageManager.addOne(e,(t=>t.publicKey===e.publicKey))}async removePeer(e){return this.storageManager.remove((t=>t.publicKey===e))}async removePeers(e){return this.storageManager.remove((t=>e.includes(t.publicKey)))}async removeAllPeers(){return this.storageManager.removeAll()}}var EN=r(6458),AN=r(9673).Buffer;class PN{keyPair;constructor(e){this.keyPair=e}eventHandlers=new Map;async getPublicKey(){return SL(this.keyPair?.publicKey)}async getPublicKeyHash(){return EL(this.keyPair.publicKey)}async createCryptoBoxServer(e,t){return(0,EN.serverSessionKeys)({publicKey:(0,$s.J$)(t.publicKey),secretKey:(0,$s.a_)(t.secretKey)},(0,$s.J$)(AN.from(e,"hex")))}async createCryptoBoxClient(e,t){return(0,EN.clientSessionKeys)({publicKey:(0,$s.J$)(t.publicKey),secretKey:(0,$s.a_)(t.secretKey)},(0,$s.J$)(AN.from(e,"hex")))}async encryptMessageAsymmetric(e,t){return async function(e,t){const r=(0,$s.J$)(kL.from(t)),n=(0,bL.generateKeyPair)(),i=new Hs.BLAKE2b(24).update(n.publicKey,32).update(r,32).digest(),o="string"===typeof e?(0,xL.lF)(e):e,a=(0,bL.box)(r,n.secretKey,i,o);return SL((0,_L.x)(n.publicKey,a))}(t,AN.from(e,"hex"))}}r(9673).Buffer;new fN("IndexedDBStorage");function ON(e,t){return function(){return e.apply(t,arguments)}}const{toString:TN}=Object.prototype,{getPrototypeOf:jN}=Object,CN=(e=>t=>{const r=TN.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),RN=e=>(e=e.toLowerCase(),t=>CN(t)===e),IN=e=>t=>typeof t===e,{isArray:MN}=Array,LN=IN("undefined");const NN=RN("ArrayBuffer");const DN=IN("string"),zN=IN("function"),BN=IN("number"),UN=e=>null!==e&&"object"===typeof e,FN=e=>{if("object"!==CN(e))return!1;const t=jN(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},$N=RN("Date"),HN=RN("File"),VN=RN("Blob"),qN=RN("FileList"),KN=RN("URLSearchParams");function WN(e,t,{allOwnKeys:r=!1}={}){if(null===e||"undefined"===typeof e)return;let n,i;if("object"!==typeof e&&(e=[e]),MN(e))for(n=0,i=e.length;n0;)if(n=r[i],t===n.toLowerCase())return n;return null}const ZN="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:global,YN=e=>!LN(e)&&e!==ZN;const XN=(e=>t=>e&&t instanceof e)("undefined"!==typeof Uint8Array&&jN(Uint8Array)),JN=RN("HTMLFormElement"),QN=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),eD=RN("RegExp"),tD=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};WN(r,((r,i)=>{let o;!1!==(o=t(r,i,e))&&(n[i]=o||r)})),Object.defineProperties(e,n)},rD="abcdefghijklmnopqrstuvwxyz",nD="0123456789",iD={DIGIT:nD,ALPHA:rD,ALPHA_DIGIT:rD+rD.toUpperCase()+nD};const oD=RN("AsyncFunction"),aD={isArray:MN,isArrayBuffer:NN,isBuffer:function(e){return null!==e&&!LN(e)&&null!==e.constructor&&!LN(e.constructor)&&zN(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"===typeof FormData&&e instanceof FormData||zN(e.append)&&("formdata"===(t=CN(e))||"object"===t&&zN(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&NN(e.buffer),t},isString:DN,isNumber:BN,isBoolean:e=>!0===e||!1===e,isObject:UN,isPlainObject:FN,isUndefined:LN,isDate:$N,isFile:HN,isBlob:VN,isRegExp:eD,isFunction:zN,isStream:e=>UN(e)&&zN(e.pipe),isURLSearchParams:KN,isTypedArray:XN,isFileList:qN,forEach:WN,merge:function e(){const{caseless:t}=YN(this)&&this||{},r={},n=(n,i)=>{const o=t&&GN(r,i)||i;FN(r[o])&&FN(n)?r[o]=e(r[o],n):FN(n)?r[o]=e({},n):MN(n)?r[o]=n.slice():r[o]=n};for(let i=0,o=arguments.length;i(WN(t,((t,n)=>{r&&zN(t)?e[n]=ON(t,r):e[n]=t}),{allOwnKeys:n}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},toFlatObject:(e,t,r,n)=>{let i,o,a;const s={};if(t=t||{},null==e)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)a=i[o],n&&!n(a,e,t)||s[a]||(t[a]=e[a],s[a]=!0);e=!1!==r&&jN(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},kindOf:CN,kindOfTest:RN,endsWith:(e,t,r)=>{e=String(e),(void 0===r||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return-1!==n&&n===r},toArray:e=>{if(!e)return null;if(MN(e))return e;let t=e.length;if(!BN(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},forEachEntry:(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let n;for(;(n=r.next())&&!n.done;){const r=n.value;t.call(e,r[0],r[1])}},matchAll:(e,t)=>{let r;const n=[];for(;null!==(r=e.exec(t));)n.push(r);return n},isHTMLForm:JN,hasOwnProperty:QN,hasOwnProp:QN,reduceDescriptors:tD,freezeMethods:e=>{tD(e,((t,r)=>{if(zN(e)&&-1!==["arguments","caller","callee"].indexOf(r))return!1;const n=e[r];zN(n)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")}))}))},toObjectSet:(e,t)=>{const r={},n=e=>{e.forEach((e=>{r[e]=!0}))};return MN(e)?n(e):n(String(e).split(t)),r},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,r){return t.toUpperCase()+r})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:GN,global:ZN,isContextDefined:YN,ALPHABET:iD,generateString:(e=16,t=iD.ALPHA_DIGIT)=>{let r="";const{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r},isSpecCompliantForm:function(e){return!!(e&&zN(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),r=(e,n)=>{if(UN(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[n]=e;const i=MN(e)?[]:{};return WN(e,((e,t)=>{const o=r(e,n+1);!LN(o)&&(i[t]=o)})),t[n]=void 0,i}}return e};return r(e,0)},isAsyncFn:oD,isThenable:e=>e&&(UN(e)||zN(e))&&zN(e.then)&&zN(e.catch)};function sD(e,t,r,n,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),i&&(this.response=i)}aD.inherits(sD,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:aD.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const cD=sD.prototype,lD={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{lD[e]={value:e}})),Object.defineProperties(sD,lD),Object.defineProperty(cD,"isAxiosError",{value:!0}),sD.from=(e,t,r,n,i,o)=>{const a=Object.create(cD);return aD.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),sD.call(a,e.message,t,r,n,i),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};const uD=sD;var dD=r(9673).Buffer;function hD(e){return aD.isPlainObject(e)||aD.isArray(e)}function fD(e){return aD.endsWith(e,"[]")?e.slice(0,-2):e}function pD(e,t,r){return e?e.concat(t).map((function(e,t){return e=fD(e),!r&&t?"["+e+"]":e})).join(r?".":""):t}const mD=aD.toFlatObject(aD,{},null,(function(e){return/^is[A-Z]/.test(e)}));const gD=function(e,t,r){if(!aD.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const n=(r=aD.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!aD.isUndefined(t[e])}))).metaTokens,i=r.visitor||l,o=r.dots,a=r.indexes,s=(r.Blob||"undefined"!==typeof Blob&&Blob)&&aD.isSpecCompliantForm(t);if(!aD.isFunction(i))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(aD.isDate(e))return e.toISOString();if(!s&&aD.isBlob(e))throw new uD("Blob is not supported. Use a Buffer instead.");return aD.isArrayBuffer(e)||aD.isTypedArray(e)?s&&"function"===typeof Blob?new Blob([e]):dD.from(e):e}function l(e,r,i){let s=e;if(e&&!i&&"object"===typeof e)if(aD.endsWith(r,"{}"))r=n?r:r.slice(0,-2),e=JSON.stringify(e);else if(aD.isArray(e)&&function(e){return aD.isArray(e)&&!e.some(hD)}(e)||(aD.isFileList(e)||aD.endsWith(r,"[]"))&&(s=aD.toArray(e)))return r=fD(r),s.forEach((function(e,n){!aD.isUndefined(e)&&null!==e&&t.append(!0===a?pD([r],n,o):null===a?r:r+"[]",c(e))})),!1;return!!hD(e)||(t.append(pD(i,r,o),c(e)),!1)}const u=[],d=Object.assign(mD,{defaultVisitor:l,convertValue:c,isVisitable:hD});if(!aD.isObject(e))throw new TypeError("data must be an object");return function e(r,n){if(!aD.isUndefined(r)){if(-1!==u.indexOf(r))throw Error("Circular reference detected in "+n.join("."));u.push(r),aD.forEach(r,(function(r,o){!0===(!(aD.isUndefined(r)||null===r)&&i.call(t,r,aD.isString(o)?o.trim():o,n,d))&&e(r,n?n.concat(o):[o])})),u.pop()}}(e),t};function vD(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function yD(e,t){this._pairs=[],e&&gD(e,this,t)}const bD=yD.prototype;bD.append=function(e,t){this._pairs.push([e,t])},bD.toString=function(e){const t=e?function(t){return e.call(this,t,vD)}:vD;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const wD=yD;function xD(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function _D(e,t,r){if(!t)return e;const n=r&&r.encode||xD,i=r&&r.serialize;let o;if(o=i?i(t,r):aD.isURLSearchParams(t)?t.toString():new wD(t,r).toString(n),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}const kD=class{constructor(){this.handlers=[]}use(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){aD.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},SD={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},ED={isBrowser:!0,classes:{URLSearchParams:"undefined"!==typeof URLSearchParams?URLSearchParams:wD,FormData:"undefined"!==typeof FormData?FormData:null,Blob:"undefined"!==typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},AD="undefined"!==typeof window&&"undefined"!==typeof document,PD=(e=>AD&&["ReactNative","NativeScript","NS"].indexOf(e)<0)("undefined"!==typeof navigator&&navigator.product),OD="undefined"!==typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"===typeof self.importScripts,TD={...t,...ED};const jD=function(e){function t(e,r,n,i){let o=e[i++];if("__proto__"===o)return!0;const a=Number.isFinite(+o),s=i>=e.length;if(o=!o&&aD.isArray(n)?n.length:o,s)return aD.hasOwnProp(n,o)?n[o]=[n[o],r]:n[o]=r,!a;n[o]&&aD.isObject(n[o])||(n[o]=[]);return t(e,r,n[o],i)&&aD.isArray(n[o])&&(n[o]=function(e){const t={},r=Object.keys(e);let n;const i=r.length;let o;for(n=0;n{t(function(e){return aD.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),n,r,0)})),r}return null};const CD={transitional:SD,adapter:["xhr","http"],transformRequest:[function(e,t){const r=t.getContentType()||"",n=r.indexOf("application/json")>-1,i=aD.isObject(e);i&&aD.isHTMLForm(e)&&(e=new FormData(e));if(aD.isFormData(e))return n&&n?JSON.stringify(jD(e)):e;if(aD.isArrayBuffer(e)||aD.isBuffer(e)||aD.isStream(e)||aD.isFile(e)||aD.isBlob(e))return e;if(aD.isArrayBufferView(e))return e.buffer;if(aD.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return gD(e,new TD.classes.URLSearchParams,Object.assign({visitor:function(e,t,r,n){return TD.isNode&&aD.isBuffer(e)?(this.append(t,e.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((o=aD.isFileList(e))||r.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return gD(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return i||n?(t.setContentType("application/json",!1),function(e,t,r){if(aD.isString(e))try{return(t||JSON.parse)(e),aD.trim(e)}catch(pge){if("SyntaxError"!==pge.name)throw pge}return(r||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||CD.transitional,r=t&&t.forcedJSONParsing,n="json"===this.responseType;if(e&&aD.isString(e)&&(r&&!this.responseType||n)){const r=!(t&&t.silentJSONParsing)&&n;try{return JSON.parse(e)}catch(pge){if(r){if("SyntaxError"===pge.name)throw uD.from(pge,uD.ERR_BAD_RESPONSE,this,null,this.response);throw pge}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:TD.classes.FormData,Blob:TD.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};aD.forEach(["delete","get","head","post","put","patch"],(e=>{CD.headers[e]={}}));const RD=CD,ID=aD.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),MD=Symbol("internals");function LD(e){return e&&String(e).trim().toLowerCase()}function ND(e){return!1===e||null==e?e:aD.isArray(e)?e.map(ND):String(e)}function DD(e,t,r,n,i){return aD.isFunction(n)?n.call(this,t,r):(i&&(t=r),aD.isString(t)?aD.isString(n)?-1!==t.indexOf(n):aD.isRegExp(n)?n.test(t):void 0:void 0)}class zD{constructor(e){e&&this.set(e)}set(e,t,r){const n=this;function i(e,t,r){const i=LD(t);if(!i)throw new Error("header name must be a non-empty string");const o=aD.findKey(n,i);(!o||void 0===n[o]||!0===r||void 0===r&&!1!==n[o])&&(n[o||t]=ND(e))}const o=(e,t)=>aD.forEach(e,((e,r)=>i(e,r,t)));return aD.isPlainObject(e)||e instanceof this.constructor?o(e,t):aD.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?o((e=>{const t={};let r,n,i;return e&&e.split("\n").forEach((function(e){i=e.indexOf(":"),r=e.substring(0,i).trim().toLowerCase(),n=e.substring(i+1).trim(),!r||t[r]&&ID[r]||("set-cookie"===r?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)})),t})(e),t):null!=e&&i(t,e,r),this}get(e,t){if(e=LD(e)){const r=aD.findKey(this,e);if(r){const e=this[r];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}(e);if(aD.isFunction(t))return t.call(this,e,r);if(aD.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=LD(e)){const r=aD.findKey(this,e);return!(!r||void 0===this[r]||t&&!DD(0,this[r],r,t))}return!1}delete(e,t){const r=this;let n=!1;function i(e){if(e=LD(e)){const i=aD.findKey(r,e);!i||t&&!DD(0,r[i],i,t)||(delete r[i],n=!0)}}return aD.isArray(e)?e.forEach(i):i(e),n}clear(e){const t=Object.keys(this);let r=t.length,n=!1;for(;r--;){const i=t[r];e&&!DD(0,this[i],i,e,!0)||(delete this[i],n=!0)}return n}normalize(e){const t=this,r={};return aD.forEach(this,((n,i)=>{const o=aD.findKey(r,i);if(o)return t[o]=ND(n),void delete t[i];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,r)=>t.toUpperCase()+r))}(i):String(i).trim();a!==i&&delete t[i],t[a]=ND(n),r[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return aD.forEach(this,((r,n)=>{null!=r&&!1!==r&&(t[n]=e&&aD.isArray(r)?r.join(", "):r)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const r=new this(e);return t.forEach((e=>r.set(e))),r}static accessor(e){const t=(this[MD]=this[MD]={accessors:{}}).accessors,r=this.prototype;function n(e){const n=LD(e);t[n]||(!function(e,t){const r=aD.toCamelCase(" "+t);["get","set","has"].forEach((n=>{Object.defineProperty(e,n+r,{value:function(e,r,i){return this[n].call(this,t,e,r,i)},configurable:!0})}))}(r,e),t[n]=!0)}return aD.isArray(e)?e.forEach(n):n(e),this}}zD.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),aD.reduceDescriptors(zD.prototype,(({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[r]=e}}})),aD.freezeMethods(zD);const BD=zD;function UD(e,t){const r=this||RD,n=t||r,i=BD.from(n.headers);let o=n.data;return aD.forEach(e,(function(e){o=e.call(r,o,i.normalize(),t?t.status:void 0)})),i.normalize(),o}function FD(e){return!(!e||!e.__CANCEL__)}function $D(e,t,r){uD.call(this,null==e?"canceled":e,uD.ERR_CANCELED,t,r),this.name="CanceledError"}aD.inherits($D,uD,{__CANCEL__:!0});const HD=$D;const VD=TD.hasStandardBrowserEnv?{write(e,t,r,n,i,o){const a=[e+"="+encodeURIComponent(t)];aD.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),aD.isString(n)&&a.push("path="+n),aD.isString(i)&&a.push("domain="+i),!0===o&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function qD(e,t){return e&&!function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const KD=TD.hasStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let r;function n(r){let n=r;return e&&(t.setAttribute("href",n),n=t.href),t.setAttribute("href",n),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return r=n(window.location.href),function(e){const t=aD.isString(e)?n(e):e;return t.protocol===r.protocol&&t.host===r.host}}():function(){return!0};const WD=function(e,t){e=e||10;const r=new Array(e),n=new Array(e);let i,o=0,a=0;return t=void 0!==t?t:1e3,function(s){const c=Date.now(),l=n[a];i||(i=c),r[o]=s,n[o]=c;let u=a,d=0;for(;u!==o;)d+=r[u++],u%=e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),c-i{const o=i.loaded,a=i.lengthComputable?i.total:void 0,s=o-r,c=n(s);r=o;const l={loaded:o,total:a,progress:a?o/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&o<=a?(a-o)/c:void 0,event:i};l[t?"download":"upload"]=!0,e(l)}}const ZD="undefined"!==typeof XMLHttpRequest&&function(e){return new Promise((function(t,r){let n=e.data;const i=BD.from(e.headers).normalize();let o,a,{responseType:s,withXSRFToken:c}=e;function l(){e.cancelToken&&e.cancelToken.unsubscribe(o),e.signal&&e.signal.removeEventListener("abort",o)}if(aD.isFormData(n))if(TD.hasStandardBrowserEnv||TD.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if(!1!==(a=i.getContentType())){const[e,...t]=a?a.split(";").map((e=>e.trim())).filter(Boolean):[];i.setContentType([e||"multipart/form-data",...t].join("; "))}let u=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",r=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(t+":"+r))}const d=qD(e.baseURL,e.url);function h(){if(!u)return;const n=BD.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders());!function(e,t,r){const n=r.config.validateStatus;r.status&&n&&!n(r.status)?t(new uD("Request failed with status code "+r.status,[uD.ERR_BAD_REQUEST,uD.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):e(r)}((function(e){t(e),l()}),(function(e){r(e),l()}),{data:s&&"text"!==s&&"json"!==s?u.response:u.responseText,status:u.status,statusText:u.statusText,headers:n,config:e,request:u}),u=null}if(u.open(e.method.toUpperCase(),_D(d,e.params,e.paramsSerializer),!0),u.timeout=e.timeout,"onloadend"in u?u.onloadend=h:u.onreadystatechange=function(){u&&4===u.readyState&&(0!==u.status||u.responseURL&&0===u.responseURL.indexOf("file:"))&&setTimeout(h)},u.onabort=function(){u&&(r(new uD("Request aborted",uD.ECONNABORTED,e,u)),u=null)},u.onerror=function(){r(new uD("Network Error",uD.ERR_NETWORK,e,u)),u=null},u.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const n=e.transitional||SD;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),r(new uD(t,n.clarifyTimeoutError?uD.ETIMEDOUT:uD.ECONNABORTED,e,u)),u=null},TD.hasStandardBrowserEnv&&(c&&aD.isFunction(c)&&(c=c(e)),c||!1!==c&&KD(d))){const t=e.xsrfHeaderName&&e.xsrfCookieName&&VD.read(e.xsrfCookieName);t&&i.set(e.xsrfHeaderName,t)}void 0===n&&i.setContentType(null),"setRequestHeader"in u&&aD.forEach(i.toJSON(),(function(e,t){u.setRequestHeader(t,e)})),aD.isUndefined(e.withCredentials)||(u.withCredentials=!!e.withCredentials),s&&"json"!==s&&(u.responseType=e.responseType),"function"===typeof e.onDownloadProgress&&u.addEventListener("progress",GD(e.onDownloadProgress,!0)),"function"===typeof e.onUploadProgress&&u.upload&&u.upload.addEventListener("progress",GD(e.onUploadProgress)),(e.cancelToken||e.signal)&&(o=t=>{u&&(r(!t||t.type?new HD(null,e,u):t),u.abort(),u=null)},e.cancelToken&&e.cancelToken.subscribe(o),e.signal&&(e.signal.aborted?o():e.signal.addEventListener("abort",o)));const f=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(d);f&&-1===TD.protocols.indexOf(f)?r(new uD("Unsupported protocol "+f+":",uD.ERR_BAD_REQUEST,e)):u.send(n||null)}))},YD={http:null,xhr:ZD};aD.forEach(YD,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(pge){}Object.defineProperty(e,"adapterName",{value:t})}}));const XD=e=>`- ${e}`,JD=e=>aD.isFunction(e)||null===e||!1===e,QD=e=>{e=aD.isArray(e)?e:[e];const{length:t}=e;let r,n;const i={};for(let o=0;o`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let r=t?e.length>1?"since :\n"+e.map(XD).join("\n"):" "+XD(e[0]):"as no adapter specified";throw new uD("There is no suitable adapter to dispatch the request "+r,"ERR_NOT_SUPPORT")}return n};function ez(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new HD(null,e)}function tz(e){ez(e),e.headers=BD.from(e.headers),e.data=UD.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return QD(e.adapter||RD.adapter)(e).then((function(t){return ez(e),t.data=UD.call(e,e.transformResponse,t),t.headers=BD.from(t.headers),t}),(function(t){return FD(t)||(ez(e),t&&t.response&&(t.response.data=UD.call(e,e.transformResponse,t.response),t.response.headers=BD.from(t.response.headers))),Promise.reject(t)}))}const rz=e=>e instanceof BD?e.toJSON():e;function nz(e,t){t=t||{};const r={};function n(e,t,r){return aD.isPlainObject(e)&&aD.isPlainObject(t)?aD.merge.call({caseless:r},e,t):aD.isPlainObject(t)?aD.merge({},t):aD.isArray(t)?t.slice():t}function i(e,t,r){return aD.isUndefined(t)?aD.isUndefined(e)?void 0:n(void 0,e,r):n(e,t,r)}function o(e,t){if(!aD.isUndefined(t))return n(void 0,t)}function a(e,t){return aD.isUndefined(t)?aD.isUndefined(e)?void 0:n(void 0,e):n(void 0,t)}function s(r,i,o){return o in t?n(r,i):o in e?n(void 0,r):void 0}const c={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(e,t)=>i(rz(e),rz(t),!0)};return aD.forEach(Object.keys(Object.assign({},e,t)),(function(n){const o=c[n]||i,a=o(e[n],t[n],n);aD.isUndefined(a)&&o!==s||(r[n]=a)})),r}const iz="1.6.5",oz={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{oz[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}}));const az={};oz.transitional=function(e,t,r){function n(e,t){return"[Axios v1.6.5] Transitional option '"+e+"'"+t+(r?". "+r:"")}return(r,i,o)=>{if(!1===e)throw new uD(n(i," has been removed"+(t?" in "+t:"")),uD.ERR_DEPRECATED);return t&&!az[i]&&(az[i]=!0,console.warn(n(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,i,o)}};const sz={assertOptions:function(e,t,r){if("object"!==typeof e)throw new uD("options must be an object",uD.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let i=n.length;for(;i-- >0;){const o=n[i],a=t[o];if(a){const t=e[o],r=void 0===t||a(t,o,e);if(!0!==r)throw new uD("option "+o+" must be "+r,uD.ERR_BAD_OPTION_VALUE)}else if(!0!==r)throw new uD("Unknown option "+o,uD.ERR_BAD_OPTION)}},validators:oz},cz=sz.validators;class lz{constructor(e){this.defaults=e,this.interceptors={request:new kD,response:new kD}}request(e,t){"string"===typeof e?(t=t||{}).url=e:t=e||{},t=nz(this.defaults,t);const{transitional:r,paramsSerializer:n,headers:i}=t;void 0!==r&&sz.assertOptions(r,{silentJSONParsing:cz.transitional(cz.boolean),forcedJSONParsing:cz.transitional(cz.boolean),clarifyTimeoutError:cz.transitional(cz.boolean)},!1),null!=n&&(aD.isFunction(n)?t.paramsSerializer={serialize:n}:sz.assertOptions(n,{encode:cz.function,serialize:cz.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&aD.merge(i.common,i[t.method]);i&&aD.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete i[e]})),t.headers=BD.concat(o,i);const a=[];let s=!0;this.interceptors.request.forEach((function(e){"function"===typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const c=[];let l;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let u,d=0;if(!s){const e=[tz.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,c),u=e.length,l=Promise.resolve(t);d{if(!r._listeners)return;let t=r._listeners.length;for(;t-- >0;)r._listeners[t](e);r._listeners=null})),this.promise.then=e=>{let t;const n=new Promise((e=>{r.subscribe(e),t=e})).then(e);return n.cancel=function(){r.unsubscribe(t)},n},e((function(e,n,i){r.reason||(r.reason=new HD(e,n,i),t(r.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;const t=new dz((function(t){e=t}));return{token:t,cancel:e}}}const hz=dz;const fz={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(fz).forEach((([e,t])=>{fz[t]=e}));const pz=fz;const mz=function e(t){const r=new uz(t),n=ON(uz.prototype.request,r);return aD.extend(n,uz.prototype,r,{allOwnKeys:!0}),aD.extend(n,r,null,{allOwnKeys:!0}),n.create=function(r){return e(nz(t,r))},n}(RD);mz.Axios=uz,mz.CanceledError=HD,mz.CancelToken=hz,mz.isCancel=FD,mz.VERSION=iz,mz.toFormData=gD,mz.AxiosError=uD,mz.Cancel=mz.CanceledError,mz.all=function(e){return Promise.all(e)},mz.spread=function(e){return function(t){return e.apply(null,t)}},mz.isAxiosError=function(e){return aD.isObject(e)&&!0===e.isAxiosError},mz.mergeConfig=nz,mz.AxiosHeaders=BD,mz.formToJSON=e=>jD(aD.isHTMLForm(e)?new FormData(e):e),mz.getAdapter=QD,mz.HttpStatusCode=pz,mz.default=mz;const gz=mz;var vz;!function(e){e.TEXT="m.text"}(vz||(vz={}));class yz{type;sender;content;timestamp;static from(e){if(wz(e))return new yz(e.content.msgtype,e.sender,e.content.body,e.origin_server_ts)}constructor(e,t,r,n){this.type=e,this.sender=t,this.content=r,this.timestamp=n}}const bz=e=>"m.room.message"===e.type,wz=e=>bz(e)&&e.content instanceof Object&&"msgtype"in e.content&&e.content.msgtype===vz.TEXT;var xz;!function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.JOINED=1]="JOINED",e[e.INVITED=2]="INVITED",e[e.LEFT=3]="LEFT"}(xz||(xz={}));class _z{id;status;members;messages;static fromSync(e){if(!e)return[];function t(e,t){return Object.entries(e).map((([e,r])=>t(e,r)))}return[...t(e.join??{},_z.fromJoined),...t(e.invite??{},_z.fromInvited),...t(e.leave??{},_z.fromLeft)]}static from(e,t){return"string"===typeof e?new _z(e,t||xz.UNKNOWN):void 0!==t?new _z(e.id,t,e.members,e.messages):e}static merge(e,t){return t&&t.id===e.id?new _z(e.id,e.status,[...t.members,...e.members].filter(((e,t,r)=>r.indexOf(e)===t)),[...t.messages,...e.messages]):_z.from(e)}static fromJoined(e,t){const r=[...t.state.events,...t.timeline.events],n=_z.getMembersFromEvents(r),i=_z.getMessagesFromEvents(r);return new _z(e,xz.JOINED,n,i)}static fromInvited(e,t){const r=_z.getMembersFromEvents(t.invite_state.events);return new _z(e,xz.INVITED,r)}static fromLeft(e,t){const r=[...t.state.events,...t.timeline.events],n=_z.getMembersFromEvents(r),i=_z.getMessagesFromEvents(r);return new _z(e,xz.LEFT,n,i)}static getMembersFromEvents(e){return _z.getUniqueEvents(e.filter((e=>(e=>"m.room.create"===e.type&&e.content instanceof Object&&"creator"in e.content)(e)||(e=>"m.room.member"===e.type&&e.content instanceof Object&&"membership"in e.content&&"join"===e.content.membership)(e)))).map((e=>e.sender)).filter(((e,t,r)=>r.indexOf(e)===t))}static getMessagesFromEvents(e){return _z.getUniqueEvents(e.filter(bz)).map((e=>yz.from(e))).filter(Boolean)}static getUniqueEvents(e){const t={},r=[];return e.forEach(((e,n)=>{const i=e.event_id;void 0!==i&&i in t||(void 0!==i&&(t[i]=n),r.push(e))})),r}constructor(e,t=xz.UNKNOWN,r=[],n=[]){this.id=e,this.status=t,this.members=r,this.messages=n}}const kz=["syncToken","rooms"];class Sz{storage;state={isRunning:!1,userId:void 0,deviceId:void 0,txnNo:0,accessToken:void 0,syncToken:void 0,pollingTimeout:void 0,pollingRetries:0,rooms:{}};onStateChangedListeners=new Map;waitReadyPromise;constructor(e){this.storage=e,this.waitReadyPromise=new Promise((async(e,t)=>{try{await this.initFromStorage(),e()}catch(r){t(r)}}))}get(e){return this.state[e]}getRoom(e){const t=_z.from(e,xz.UNKNOWN);return this.state.rooms[t.id]||t}async update(e){await this.waitReady();const t=Object.assign({},this.state);this.setState(e),this.updateStorage(e),this.notifyListeners(t,this.state,e)}onStateChanged(e,...t){t.length>0?t.forEach((t=>{this.onStateChangedListeners.set(t,e)})):this.onStateChangedListeners.set("all",e)}async waitReady(){return this.waitReadyPromise}async initFromStorage(){const e=await this.storage.get(FL.MATRIX_PRESERVED_STATE);this.setState(e)}prepareData(e){const t=["rooms"].some((t=>void 0!==e[t]))?JSON.parse(JSON.stringify(e)):e;return Object.values(t.rooms||{}).forEach((e=>{e.messages=[]})),t}updateStorage(e){const t=Object.entries(e).filter((([e,t])=>kz.includes(e)&&Boolean(t)));if(t.length>0){const e={};kz.forEach((t=>{e[t]=this.state[t]})),this.storage.set(FL.MATRIX_PRESERVED_STATE,this.prepareData(e))}}setState(e){this.state={isRunning:e.isRunning||this.state.isRunning,userId:e.userId||this.state.userId,deviceId:e.deviceId||this.state.deviceId,txnNo:e.txnNo||this.state.txnNo,accessToken:e.accessToken||this.state.accessToken,syncToken:e.syncToken||this.state.syncToken,pollingTimeout:e.pollingTimeout||this.state.pollingTimeout,pollingRetries:e.pollingRetries||this.state.pollingRetries,rooms:this.mergeRooms(this.state.rooms,e.rooms)}}mergeRooms(e,t){if(!t)return e;const r=Array.isArray(t)?t:Object.values(t),n=Object.assign({},e);return r.forEach((t=>{n[t.id]=_z.merge(t,e[t.id])})),n}notifyListeners(e,t,r){const n=this.onStateChangedListeners.get("all");n&&n(e,t,r),mL(r).filter((e=>void 0!==r[e])).forEach((n=>{const i=this.onStateChangedListeners.get(n);i&&i(e,t,r)}))}}const Ez=new fN("MatrixHttpClient");class Az{baseUrl;cancelTokenSource;constructor(e){this.baseUrl=e,this.cancelTokenSource=gz.CancelToken.source()}async get(e,t,r){return this.send("GET",e,r,t)}async post(e,t,r,n){return this.send("POST",e,r,n,t)}async put(e,t,r,n){return this.send("PUT",e,r,n,t)}async cancelAllRequests(){return this.cancelTokenSource.cancel("Manually cancelled")}async send(e,t,r,n,i){const o=r?this.getHeaders(r):void 0,a=n?this.getParams(n):void 0;let s;try{s=await gz.request({method:e,url:t,baseURL:this.apiUrl("/_matrix/client/r0"),headers:o,data:i,params:a,cancelToken:this.cancelTokenSource.token})}catch(c){const e=c;throw Ez.error("send",e.code,e.message,e.response.data),c.response.data}return s.data}getHeaders(e){const t={},r=[];if(e.accessToken&&r.push(["Authorization",`Bearer ${e.accessToken}`]),0!==r.length){for(const[e,n]of r)t[e]=n;return t}}getParams(e){if(!e)return;const t=Object.assign(e,{});return mL(t).forEach((e=>void 0===t[e]&&delete t[e])),t}apiUrl(...e){return[this.baseUrl.endsWith("/")?this.baseUrl.substr(0,this.baseUrl.length-1):this.baseUrl,...e.map((e=>e.startsWith("/")?e.substr(1):e))].join("/")}}class Pz{httpClient;constructor(e){this.httpClient=e}async createRoom(e,t={}){return this.httpClient.post("/createRoom",t,{accessToken:e})}async inviteToRoom(e,t,r){return r.status!==xz.JOINED&&r.status!==xz.UNKNOWN?Promise.reject(`User is not a member of room ${r.id}.`):this.httpClient.post(`/rooms/${encodeURIComponent(r.id)}/invite`,{user_id:t},{accessToken:e})}async joinRoom(e,t){return t.status===xz.JOINED?Promise.resolve({room_id:t.id}):this.httpClient.post(`/rooms/${encodeURIComponent(t.id)}/join`,{},{accessToken:e})}async getJoinedRooms(e){return this.httpClient.get("/joined_rooms",void 0,{accessToken:e})}}class Oz{httpClient;constructor(e){this.httpClient=e}async login(e,t,r){return this.httpClient.post("/login",{type:"m.login.password",identifier:{type:"m.id.user",user:e},password:t,device_id:r})}}class Tz{httpClient;cachedPromises=new Map;constructor(e){this.httpClient=e}async sync(e,t){return this.withCache("sync",(()=>this.httpClient.get("/sync",{timeout:t?t.pollingTimeout:void 0,since:t?t.syncToken:void 0},{accessToken:e})))}async sendMessage(e,t,r,n){return new Promise(((i,o)=>this.scheduleEvent({accessToken:e,roomId:t,type:"m.room.message",content:r,txnId:n,onSuccess:i,onError:o})))}scheduleEvent(e){this.sendEvent(e)}async sendEvent(e){const{roomId:t,type:r,txnId:n,content:i,accessToken:o}=e;try{const a=await this.httpClient.put(`/rooms/${encodeURIComponent(t)}/send/${r}/${encodeURIComponent(n)}`,i,{accessToken:o});e.onSuccess(a)}catch(a){e.onError(a)}}withCache(e,t){let r=this.cachedPromises.get(e);return r||(r=t().finally((()=>{this.cachedPromises.delete(e)})),this.cachedPromises.set(e,r)),r}}class jz{events={};on(e,t){return"object"!==typeof this.events[e]&&(this.events[e]=[]),this.events[e].push(t),()=>this.removeListener(e,t)}removeListener(e,t){if("object"!==typeof this.events[e])return;if(!t)return void(this.events[e]=[]);const r=this.events[e].indexOf(t);r>-1&&this.events[e].splice(r,1)}removeAllListeners(){Object.keys(this.events).forEach((e=>this.events[e].splice(0,this.events[e].length)))}emit(e,...t){"object"===typeof this.events[e]&&[...this.events[e]].forEach((e=>e.apply(this,t)))}once(e,t){const r=this.on(e,((...e)=>{r(),t.apply(this,e)}));return r}}var Cz;!function(e){e.INVITE="invite",e.MESSAGE="message"}(Cz||(Cz={}));class Rz extends jz{eventEmitProviders=new Map([[Cz.INVITE,()=>[this.isInvite,this.emitInvite.bind(this)]],[Cz.MESSAGE,()=>[this.isMessage,this.emitMessage.bind(this)]]]);onStateChanged(e,t,r){for(const n of mL(Cz))this.emitIfEvent(Cz[n],r)}emitIfEvent(e,t){const r=this.eventEmitProviders.get(e);if(r){const[n,i]=r();n(t)&&i(e,t)}}emitClientEvent(e,t,r){this.emit(e,{type:e,content:t,timestamp:r})}isInvite(e){return!!e.rooms&&e.rooms.some((e=>e.status===xz.INVITED))}emitInvite(e,t){t.rooms.filter((e=>e.status===xz.INVITED)).map((e=>[e.id,e.members])).forEach((([t,r])=>{this.emitClientEvent(e,{roomId:t,members:r})}))}isMessage(e){return!!e.rooms&&e.rooms.some((e=>e.messages.length>0))}emitMessage(e,t){t.rooms.filter((e=>e.messages.length>0)).map((e=>e.messages.map((t=>[e.id,t,t.timestamp])))).reduce(((e,t)=>e.concat(t)),[]).forEach((([t,r,n])=>{this.emitClientEvent(e,{roomId:t,message:r},n)}))}}const Iz=new fN("MatrixClient");class Mz{store;eventEmitter;userService;roomService;eventService;httpClient;isActive=!0;_isReady=new vL;constructor(e,t,r,n,i,o){this.store=e,this.eventEmitter=t,this.userService=r,this.roomService=n,this.eventService=i,this.httpClient=o,this.store.onStateChanged(((e,t,r)=>{this.eventEmitter.onStateChanged(e,t,r)}),"rooms")}static create(e){const t=new Sz(e.storage),r=new Rz,n=new Az(e.baseUrl),i=new Oz(n),o=new Pz(n),a=new Tz(n);return new Mz(t,r,i,o,a,n)}get joinedRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===xz.JOINED)))}))}get invitedRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===xz.INVITED)))}))}get leftRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===xz.LEFT)))}))}async start(e){const t=await this.userService.login(e.id,e.password,e.deviceId);await this.store.update({accessToken:t.access_token});const r=new Promise((async(e,t)=>{await this.poll(0,(async t=>{this.store.get("isRunning")||e(),await this.store.update({isRunning:!0,syncToken:t.next_batch,pollingTimeout:3e4,pollingRetries:0,rooms:_z.fromSync(t.rooms)})}),(async e=>{this.store.get("isRunning")||t(e),await this.store.update({isRunning:!1,pollingRetries:this.store.get("pollingRetries")+1})}))}));return r.then((()=>{this._isReady.resolve()})).catch(console.error),r}async isConnected(){return this._isReady.promise}async stop(){return Iz.log("MATRIX CLIENT STOPPED"),this.isActive=!1,this._isReady=new vL,this.httpClient.cancelAllRequests()}subscribe(e,t){this.eventEmitter.on(e,t)}unsubscribe(e,t){t&&this.eventEmitter.removeListener(e,t)}unsubscribeAll(e){this.eventEmitter.removeListener(e)}async getRoomById(e){return await this.isConnected(),this.store.getRoom(e)}async createTrustedPrivateRoom(...e){return await this.isConnected(),this.requiresAuthorization("createRoom",(async t=>(await this.roomService.createRoom(t,{room_version:"5",invite:e,preset:"public_chat",is_direct:!0})).room_id))}async inviteToRooms(e,...t){await this.isConnected(),await this.requiresAuthorization("invite",(r=>Promise.all(t.map((t=>{const n=this.store.getRoom(t);this.roomService.inviteToRoom(r,e,n).catch((e=>Iz.warn("inviteToRooms",e)))})))))}async joinRooms(...e){await this.isConnected(),await this.requiresAuthorization("join",(t=>Promise.all(e.map((e=>{const r=this.store.getRoom(e);return this.roomService.joinRoom(t,r)})))))}async sendTextMessage(e,t){await this.isConnected(),await this.requiresAuthorization("send",(async r=>{const n=await this.createTxnId();return this.eventService.sendMessage(r,e,{msgtype:"m.text",body:t},n)}))}async poll(e,t,r){const n=this.store,i=this.sync.bind(this),o=async(a,s)=>{let c=0;try{const e=await i();t(e)}catch(l){r(l),c=n.get("pollingRetries"),this.isActive&&Iz.log(`Retry syncing... ${c} retries so far`)}finally{this.isActive?setTimeout((async()=>{await o(a,s)}),c>3?5e3+e:e):s(new Error("Syncing stopped manually."))}};return new Promise(o)}async sync(){return this.requiresAuthorization("sync",(async e=>this.eventService.sync(e,{pollingTimeout:this.store.get("pollingTimeout"),syncToken:this.store.get("syncToken")})))}async requiresAuthorization(e,t){const r=this.store.get("accessToken");return r?t(r):Promise.reject(`${e} requires authorization but no access token has been provided.`)}async createTxnId(){const e=(new Date).getTime(),t=this.store.get("txnNo");return await this.store.update({txnNo:t+1}),`m${e}.${t}`}}var Lz=r(9673).Buffer;const Nz=new fN("P2PCommunicationClient"),Dz={[GL.EUROPE_WEST]:["beacon-node-1.diamond.papers.tech","beacon-node-1.sky.papers.tech","beacon-node-2.sky.papers.tech","beacon-node-1.hope.papers.tech","beacon-node-1.hope-2.papers.tech","beacon-node-1.hope-3.papers.tech","beacon-node-1.hope-4.papers.tech","beacon-node-1.hope-5.papers.tech"],[GL.NORTH_AMERICA_EAST]:["beacon-node-1.beacon-server-1.papers.tech"],[GL.NORTH_AMERICA_WEST]:["beacon-node-1.beacon-server-2.papers.tech"],[GL.ASIA_EAST]:["beacon-node-1.beacon-server-3.papers.tech"],[GL.AUSTRALIA]:["beacon-node-1.beacon-server-4.papers.tech"]},zz=e=>new Promise((t=>setTimeout(t,e)));class Bz extends PN{name;replicationCount;storage;iconUrl;appUrl;client=new vL;initialEvent;initialListener;selectedRegion;ENABLED_RELAY_SERVERS;relayServer;activeListeners=new Map;ignoredRooms=[];loginCounter=0;constructor(e,t,r,n,i,o,a){super(t),this.name=e,this.replicationCount=r,this.storage=n,this.iconUrl=o,this.appUrl=a,Nz.log("constructor","P2PCommunicationClient created"),this.ENABLED_RELAY_SERVERS=Dz,i&&(this.ENABLED_RELAY_SERVERS={...Dz,...i})}async getPairingRequestInfo(){const e=new VL(await CL(),this.name,await this.getPublicKey(),"3",(await this.getRelayServer()).server);return this.iconUrl&&(e.icon=this.iconUrl),this.appUrl&&(e.appUrl=this.appUrl),e}async getPairingResponseInfo(e){const t=new ZL(e.id,this.name,await this.getPublicKey(),e.version,(await this.getRelayServer()).server);return this.iconUrl&&(t.icon=this.iconUrl),this.appUrl&&(t.appUrl=this.appUrl),t}async findBestRegionAndGetServer(){if(this.selectedRegion)return this.relayServer?.promiseResult;const e=Object.keys(this.ENABLED_RELAY_SERVERS),t=[],r=new vL;let n=0;const i=new vL;e.forEach((e=>{const o=this.ENABLED_RELAY_SERVERS[e]??[];if(0===o.length)return;n+=2;const a=(o=!0)=>{const c=Date.now();Promise.race([this.getBeaconInfo(s),i.promise]).then((i=>{"boolean"!==typeof i&&(t.push({time:Date.now()-c,server:s,region:e,result:i}),t.length>=n&&r.resolve(void 0),o||a(!0))}))},s=o[Math.floor(Math.random()*o.length)];a(!1)})),await Promise.race([r.promise,zz(1e3)]);let o=0;for(;t.length<=0;){if(o>=100)throw new Error("No server responded.");await zz(50),o++}i.resolve(!0);const a=t.reduce(((e,t)=>e.time0){const t=await this.getBeaconInfo(e);return this.relayServer.resolve({server:e,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:e,timestamp:t.timestamp}}const t=await this.findBestRegionAndGetServer();if(!t)throw new Error("No servers found");return this.storage.set(FL.MATRIX_SELECTED_NODE,t.server).catch((e=>Nz.log(e))),this.relayServer.resolve({server:t.server,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:t.server,timestamp:t.timestamp}}async getBeaconInfo(e){return gz.get(`https://${e}/_synapse/client/beacon/info`).then((e=>({region:e.data.region,known_servers:e.data.known_servers,timestamp:Math.floor(e.data.timestamp)})))}async tryJoinRooms(e,t=1){try{await(await this.client.promise).joinRooms(e)}catch(r){t<=10&&"M_FORBIDDEN"===r.errcode?(Nz.log("Retrying to join...",r),setTimeout((async()=>{await this.tryJoinRooms(e,t+1)}),200)):Nz.log(`Failed to join after ${t} tries.`,r)}}async start(){Nz.log("start","starting client"),Nz.log("start","connecting to server");const e=await this.getRelayServer(),t=Mz.create({baseUrl:`https://${e.server}`,storage:this.storage});if(this.initialListener=async e=>{this.initialEvent&&this.initialEvent.timestamp&&e&&e.timestamp?this.initialEvent.timestamp{let t;1===e.content.members.length&&(t=e.content.members[0]),await this.tryJoinRooms(e.content.roomId),t&&(await this.updateRelayServer(t),await this.updatePeerRoom(t,e.content.roomId))})),!e.timestamp)throw new Error("No timestamp received from relay server");const r=Math.floor(e.timestamp),n=`login:${Math.floor(r/300)}`;Nz.log("start",`login ${n}, ${await this.getPublicKeyHash()} on ${e.server}`);const i=(0,Hs.hash)((0,xL.lF)(n),32),o=this.keyPair.secretKey??this.keyPair.privateKey,a=(0,$s._S)(o,i);try{await t.start({id:await this.getPublicKeyHash(),password:`ed:${SL(a)}:${await this.getPublicKey()}`,deviceId:SL(this.keyPair.publicKey)})}catch(s){if(Nz.error("start","Could not log in, retrying"),await this.reset(),!this.selectedRegion)throw new Error("No region selected.");if(this.loginCounter<=(this.ENABLED_RELAY_SERVERS[this.selectedRegion]??[]).length)return this.loginCounter++,void this.start();throw Nz.error("start","Tried to log in to every known beacon node, but no login was successful."),new Error("Could not connect to any beacon nodes. Try again later.")}Nz.log("start","login successful, client is ready"),this.client.resolve(t)}async stop(){Nz.log("stop","stopping client"),this.client.isResolved()&&await(await this.client.promise).stop().catch((e=>Nz.error(e))),await this.reset()}async reset(){Nz.log("reset","resetting connection"),await this.storage.delete(FL.MATRIX_PEER_ROOM_IDS).catch((e=>Nz.log(e))),await this.storage.delete(FL.MATRIX_PRESERVED_STATE).catch((e=>Nz.log(e))),await this.storage.delete(FL.MATRIX_SELECTED_NODE).catch((e=>Nz.log(e))),this.relayServer=void 0,this.client=new vL,this.initialEvent=void 0,this.initialListener=void 0}async listenForEncryptedMessage(e,t){if(this.activeListeners.has(e))return;Nz.log("listenForEncryptedMessage",`start listening for encrypted messages from publicKey ${e}`);const r=await this.createCryptoBoxServer(e,this.keyPair),n=async n=>{if(this.isTextMessage(n.content)&&await this.isSender(n,e)){let o;await this.updateRelayServer(n.content.message.sender),await this.updatePeerRoom(n.content.message.sender,n.content.roomId);try{o=Lz.from(n.content.message.content,"hex")}catch{}if(o&&o.length>=40)try{const n=await OL(o,r.receive);Nz.log("listenForEncryptedMessage",`received a message from ${e}`,n),t(n)}catch(i){}}};this.activeListeners.set(e,n),(await this.client.promise).subscribe(Cz.MESSAGE,n);const i=this.initialEvent;i&&i.timestamp&&(new Date).getTime()-i.timestamp<3e5?(Nz.log("listenForEncryptedMessage","Handling previous event"),await n(i)):Nz.log("listenForEncryptedMessage","No previous event found");const o=this.initialListener;o&&(await this.client.promise).unsubscribe(Cz.MESSAGE,o),this.initialListener=void 0,this.initialEvent=void 0}async unsubscribeFromEncryptedMessage(e){const t=this.activeListeners.get(e);t&&((await this.client.promise).unsubscribe(Cz.MESSAGE,t),this.activeListeners.delete(e))}async unsubscribeFromEncryptedMessages(){(await this.client.promise).unsubscribeAll(Cz.MESSAGE),this.activeListeners.clear()}async sendMessage(e,t){const r=await this.createCryptoBoxClient(t.publicKey,this.keyPair),n=TL(await EL(Lz.from(t.publicKey,"hex")),t.relayServer),i=await this.getRelevantRoom(n);await this.waitForJoin(i);const o=await PL(e,r.send);Nz.log("sendMessage","sending encrypted message",t.publicKey,i,e),(await this.client.promise).sendTextMessage(i,o).catch((async e=>{if("M_FORBIDDEN"===e.errcode){Nz.log("sendMessage","M_FORBIDDEN",i,e),await this.deleteRoomIdFromRooms(i);const t=await this.getRelevantRoom(n);Nz.log("sendMessage","Old room deleted, new room created",t),(await this.client.promise).sendTextMessage(t,o).catch((async e=>{Nz.log("sendMessage","inner error",t,e)}))}else Nz.log("sendMessage","unexpected error",e)}))}async updatePeerRoom(e,t){Nz.log("updatePeerRoom",e,t);const r=e.split(":");if(r.length<2||!r[0].startsWith("@"))throw new Error("Invalid sender");const n=await this.storage.get(FL.MATRIX_PEER_ROOM_IDS),i=n[e];i===t&&Nz.debug("updatePeerRoom","rooms are the same, not updating"),Nz.debug("updatePeerRoom","current room",i,"new room",t),i&&i[1]&&(Nz.log("updatePeerRoom",`adding room "${i[1]}" to ignored array`),this.ignoredRooms.push(i[1])),n[e]=t,await this.storage.set(FL.MATRIX_PEER_ROOM_IDS,n)}async deleteRoomIdFromRooms(e){const t=await this.storage.get(FL.MATRIX_PEER_ROOM_IDS),r=Object.entries(t).filter((t=>t[1]!==e)).reduce(((e,t)=>({...e,[t[0]]:t[1]})),{});await this.storage.set(FL.MATRIX_PEER_ROOM_IDS,r),this.ignoredRooms.push(e)}async listenForChannelOpening(e){Nz.debug("listenForChannelOpening"),(await this.client.promise).subscribe(Cz.MESSAGE,(async t=>{if(this.isTextMessage(t.content)&&await this.isChannelOpenMessage(t.content)){Nz.log("listenForChannelOpening","channel opening received, trying to decrypt",JSON.stringify(t)),await this.updateRelayServer(t.content.message.sender),await this.updatePeerRoom(t.content.message.sender,t.content.roomId);const n=t.content.message.content.split(":"),i=Lz.from(n[n.length-1],"hex");if(i.length>=40)try{const t=JSON.parse(await async function(e,t,r){const n=(0,$s.a_)(kL.from(r)),i=(0,$s.J$)(kL.from(t)),o="string"===typeof e?(0,xL.lF)(e):e,a=o.slice(0,32),s=o.slice(32),c=new Hs.BLAKE2b(24).update(a,32).update(i,32).digest(),l=(0,bL.openBox)(a,n,c,s);if(!l)throw new Error("Decryption failed");return kL.from(l).toString()}(i,this.keyPair.publicKey,this.keyPair.secretKey));Nz.log("listenForChannelOpening","channel opening received and decrypted",JSON.stringify(t)),e({...t,senderId:await dN(t.publicKey)})}catch(r){}}}))}async waitForJoin(e,t=0){const r=await(await this.client.promise).getRoomById(e);if(Nz.log("waitForJoin",`Currently ${r.members.length} members, we need at least 2`),!(r.members.length>=2)){if(t<=200)return Nz.log(`Waiting for join... Try: ${t}`),new Promise((r=>{setTimeout((()=>{r(this.waitForJoin(e,t+1))}),100*(t>50?10:1))}));throw new Error(`No one joined after ${t} tries.`)}}async sendPairingResponse(e){Nz.log("sendPairingResponse");const t=TL(await EL(Lz.from(e.publicKey,"hex")),e.relayServer),r=await(await this.client.promise).createTrustedPrivateRoom(t);Nz.debug("sendPairingResponse",`Connecting to room "${r}"`),await this.updatePeerRoom(t,r),await this.waitForJoin(r),Nz.debug("sendPairingResponse","Successfully joined room.");const n="undefined"===typeof e.version?await this.getPublicKey():JSON.stringify(await this.getPairingResponseInfo(e));Nz.debug("sendPairingResponse","Sending pairing response",n);const i=await this.encryptMessageAsymmetric(e.publicKey,n),o=["@channel-open",t,i].join(":");(await this.client.promise).sendTextMessage(r,o).catch((async e=>{if("M_FORBIDDEN"===e.errcode){Nz.log("sendPairingResponse","M_FORBIDDEN",r,e),await this.deleteRoomIdFromRooms(r);const n=await this.getRelevantRoom(t);Nz.log("sendPairingResponse","Old room deleted, new room created",n),(await this.client.promise).sendTextMessage(n,o).catch((async e=>{Nz.log("sendPairingResponse","inner error",n,e)}))}else Nz.log("sendPairingResponse","unexpected error",e)}))}isTextMessage(e){return e.message.type===vz.TEXT}async updateRelayServer(e){Nz.log("updateRelayServer",e);const t=e.split(":");if(t.length<2||!t[0].startsWith("@"))throw new Error("Invalid sender");const r=t.shift(),n=t.join(":"),i=localStorage.getItem("beacon:communication-peers-dapp")?new SN(this.storage,FL.TRANSPORT_P2P_PEERS_DAPP):new SN(this.storage,FL.TRANSPORT_P2P_PEERS_WALLET),o=(await i.getPeers()).map((async e=>{`@${await EL(Lz.from(e.publicKey,"hex"))}`===r&&e.relayServer!==n&&(e.relayServer=n,await i.addPeer(e))}));await Promise.all(o)}async isChannelOpenMessage(e){return e.message.content.startsWith(`@channel-open:@${await EL(Lz.from(await this.getPublicKey(),"hex"))}`)}async isSender(e,t){return e.content.message.sender.startsWith(`@${await EL(Lz.from(t,"hex"))}`)}async getRelevantRoom(e){const t=await this.storage.get(FL.MATRIX_PEER_ROOM_IDS);let r=t[e];if(!r){Nz.log("getRelevantRoom",`No room found for peer ${e}, checking joined ones.`);const n=await this.getRelevantJoinedRoom(e);r=n.id,t[e]=n.id,await this.storage.set(FL.MATRIX_PEER_ROOM_IDS,t)}return Nz.log("getRelevantRoom",`Using room ${r}`),r}async getRelevantJoinedRoom(e){const t=await(await this.client.promise).joinedRooms;Nz.log("checking joined rooms",t,e);const r=t.filter((e=>!this.ignoredRooms.some((t=>e.id===t)))).filter((t=>t.members.some((t=>t===e))));let n;if(0===r.length||this.ignoredRooms.length>0){Nz.log("getRelevantJoinedRoom","no relevant rooms found, creating new one");const t=await(await this.client.promise).createTrustedPrivateRoom(e);n=await(await this.client.promise).getRoomById(t),Nz.log("getRelevantJoinedRoom",`waiting for other party to join room: ${n.id}`),await this.waitForJoin(t),Nz.log("getRelevantJoinedRoom",`new room created and peer invited: ${n.id}`)}else n=r[0],Nz.log("getRelevantJoinedRoom",`channel already open, reusing room ${n.id}`);return n}}const Uz=new fN("P2PTransport");class Fz extends yN{type=UL.P2P;constructor(e,t,r,n,i,o,a){super(e,new Bz(e,t,1,r,n,o,a),new SN(r,i))}static async isAvailable(){return Promise.resolve(!0)}async connect(){if(this._isConnected!==BL.NOT_CONNECTED)return;Uz.log("connect"),this._isConnected=BL.CONNECTING,await this.client.start();const e=await this.getPeers();if(e.length>0){Uz.log("connect",`connecting to ${e.length} peers`);const t=e.map((async e=>this.listen(e.publicKey)));Promise.all(t).catch((e=>Uz.error("connect",e)))}return await this.startOpenChannelListener(),super.connect()}async disconnect(){return await this.client.stop(),super.disconnect()}async startOpenChannelListener(){}async getPairingRequestInfo(){return this.client.getPairingRequestInfo()}async listen(e){await this.client.listenForEncryptedMessage(e,(t=>{const r={origin:NL.P2P,id:e};this.notifyListeners(t,r).catch((e=>{throw e}))})).catch((e=>{throw e}))}}class $z extends Fz{constructor(e,t,r,n,i,o){super(e,t,r,n,FL.TRANSPORT_P2P_PEERS_WALLET,i,o)}async addPeer(e,t=!0){await super.addPeer(e),t&&await this.client.sendPairingResponse(e)}}const Hz=new fN("IncomingRequestInterceptor");class Vz{static async intercept(e){Hz.log("INTERCEPTING REQUEST",e.message),"2"===e.message.version?Vz.handleV2Message(e):"3"===e.message.version&&Vz.handleV3Message(e)}static async getAppMetadata(e,t){const r=await e.getAppMetadata(t);if(!r)throw new Error("AppMetadata not found");return r}static async handleV2Message(e){const{message:t,connectionInfo:r,appMetadataManager:n,interceptorCallback:i}=e;switch(t.type){case RL.PermissionRequest:Hz.log("PERMISSION REQUEST V*",t),t.appMetadata.beaconId&&!t.appMetadata.senderId&&(t.appMetadata.senderId=t.appMetadata.beaconId,delete t.appMetadata.beaconId),await n.addAppMetadata(t.appMetadata);i(t,r);break;case RL.OperationRequest:i({appMetadata:await Vz.getAppMetadata(n,t.senderId),...t},r);break;case RL.SignPayloadRequest:i({appMetadata:await Vz.getAppMetadata(n,t.senderId),...t},r);break;case RL.BroadcastRequest:i({appMetadata:await Vz.getAppMetadata(n,t.senderId),...t},r);break;case RL.ProofOfEventChallengeRequest:i({appMetadata:await Vz.getAppMetadata(n,t.senderId),...t},r);break;case RL.ProofOfEventChallengeRecorded:i({appMetadata:await Vz.getAppMetadata(n,t.senderId),...t},r);break;default:Hz.log("intercept","Message not handled"),qz(t)}}static async handleV3Message(e){const{message:t,connectionInfo:r,appMetadataManager:n,interceptorCallback:i}=e,o=t,a=o.message;switch(a.type){case RL.PermissionRequest:await n.addAppMetadata({...a.blockchainData.appMetadata,senderId:t.senderId});i(o,r);break;case RL.BlockchainRequest:i({...o},r);break;default:Hz.log("intercept","Message not handled"),qz(a)}}}function qz(e){throw new Error("Function not implemented.")}const Kz=new fN("OutgoingResponseInterceptor");class Wz{static async intercept(e){"2"===e.request.version?Wz.handleV2Message(e):"3"===e.request.version&&Wz.handleV3Message(e)}static async handleV3Message(e){const{message:t,appMetadataManager:r,interceptorCallback:n}=e,i=t.message;Kz.log("LOGGING OUTGOING V3",i,r),n(t)}static async handleV2Message(e){const{senderId:t,request:r,message:n,ownAppMetadata:i,permissionManager:o,appMetadataManager:a,interceptorCallback:s}=e;switch(n.type){case RL.Error:{const e={type:n.type,version:"2",senderId:t,id:n.id,errorType:n.errorType};if(n.errorType===zL.TRANSACTION_INVALID_ERROR&&n.errorData){const t=n.errorData;Array.isArray(t)&&t.every((e=>Boolean(e.kind)&&Boolean(e.id)))?e.errorData=n.errorData:Kz.warn("ErrorData provided is not in correct format. It needs to be an array of RPC errors. It will not be included in the message sent to the dApp")}s(e);break}case RL.Acknowledge:s({type:n.type,version:"2",senderId:t,id:n.id});break;case RL.PermissionResponse:{const e={senderId:t,version:"2",appMetadata:i,...n};if(!e.address&&!e.publicKey)throw new Error("Address or PublicKey must be defined");const c=e.publicKey,l=e.address??await async function(e){const t={edpk:{length:54,prefix:kL.from(new Uint8Array([6,161,159]))},sppk:{length:55,prefix:kL.from(new Uint8Array([6,161,161]))},p2pk:{length:55,prefix:kL.from(new Uint8Array([6,161,164]))}};let r,n;if(64===e.length)r=t.edpk.prefix,n=e;else{const i=Object.entries(t);for(let t=0;t{if(!["tz1","tz2","tz3","tz4","KT1","txr1","sr1"].some((t=>e.toLowerCase().startsWith(t.toLowerCase()))))return!1;try{yL.decode(e)}catch(t){return!1}return!0})(l))throw new Error(`Invalid address: "${l}"`);if("abstracted_account"===n.walletType&&"KT1"!==l.substring(0,3))throw new Error(`Invalid abstracted account address "${l}", it should be a KT1 address`);const u=await a.getAppMetadata(r.senderId);if(!u)throw new Error("AppMetadata not found");const d={accountIdentifier:await sN(l,e.network),senderId:r.senderId,appMetadata:u,website:"",address:l,publicKey:c,network:e.network,scopes:e.scopes,connectedAt:(new Date).getTime()};o.addPermission(d).catch(console.error),s(e);break}case RL.OperationResponse:s({senderId:t,version:"2",...n});break;case RL.SignPayloadResponse:s({senderId:t,version:"2",...n});break;case RL.BroadcastResponse:s({senderId:t,version:"2",...n});break;case RL.ProofOfEventChallengeResponse:s({senderId:t,version:"2",...n});break;default:Kz.log("intercept","Message not handled"),function(e){throw new Error("Function not implemented.")}()}}}const Gz=new fN("WalletClient");var Zz={initial:({offsetX:e,offsetY:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{opacity:0,x:e,y:t,transition:null!=(o=null==r?void 0:r.exit)?o:cM(aM.exit,i),transitionEnd:null==n?void 0:n.exit}},enter:({transition:e,transitionEnd:t,delay:r})=>{var n;return{opacity:1,x:0,y:0,transition:null!=(n=null==e?void 0:e.enter)?n:sM(aM.enter,r),transitionEnd:null==t?void 0:t.enter}},exit:({offsetY:e,offsetX:t,transition:r,transitionEnd:n,reverse:i,delay:o})=>{var a;const s={x:t,y:e};return{opacity:0,transition:null!=(a=null==r?void 0:r.exit)?a:cM(aM.exit,o),...i?{...s,transitionEnd:null==n?void 0:n.exit}:{transitionEnd:{...s,...null==n?void 0:n.exit}}}}},Yz={initial:"initial",animate:"enter",exit:"exit",variants:Zz},Xz=(0,i.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,reverse:i=!0,className:o,offsetX:a=0,offsetY:s=8,transition:c,transitionEnd:l,delay:u,...d}=e,h=!r||n&&r,f=n||r?"enter":"exit",p={offsetX:a,offsetY:s,reverse:i,transition:c,transitionEnd:l,delay:u};return(0,xn.jsx)(oO,{custom:p,children:h&&(0,xn.jsx)(CP.div,{ref:t,className:y("chakra-offset-slide",o),custom:p,...Yz,animate:f,...d})})}));Xz.displayName="SlideFade";var Jz={exit:({reverse:e,initialScale:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{opacity:0,...e?{scale:t,transitionEnd:null==n?void 0:n.exit}:{transitionEnd:{scale:t,...null==n?void 0:n.exit}},transition:null!=(o=null==r?void 0:r.exit)?o:cM(aM.exit,i)}},enter:({transitionEnd:e,transition:t,delay:r})=>{var n;return{opacity:1,scale:1,transition:null!=(n=null==t?void 0:t.enter)?n:sM(aM.enter,r),transitionEnd:null==e?void 0:e.enter}}},Qz={initial:"exit",animate:"enter",exit:"exit",variants:Jz},eB=(0,i.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,reverse:i=!0,initialScale:o=.95,className:a,transition:s,transitionEnd:c,delay:l,...u}=e,d=!r||n&&r,h=n||r?"enter":"exit",f={initialScale:o,reverse:i,transition:s,transitionEnd:c,delay:l};return(0,xn.jsx)(oO,{custom:f,children:d&&(0,xn.jsx)(CP.div,{ref:t,className:y("chakra-offset-slide",a),...Qz,animate:h,custom:f,...u})})}));eB.displayName="ScaleFade";var tB={slideInBottom:{...Yz,custom:{offsetY:16,reverse:!0}},slideInRight:{...Yz,custom:{offsetX:16,reverse:!0}},slideInTop:{...Yz,custom:{offsetY:-16,reverse:!0}},slideInLeft:{...Yz,custom:{offsetX:-16,reverse:!0}},scale:{...Qz,custom:{initialScale:.95,reverse:!0}},none:{}},rB=wn(CP.section),nB=e=>tB[e||"none"],iB=(0,i.forwardRef)(((e,t)=>{const{preset:r,motionProps:n=nB(r),...i}=e;return(0,xn.jsx)(rB,{ref:t,...n,...i})}));function oB(){return oB=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0})).sort(NB)},zB=["button:enabled","select:enabled","textarea:enabled","input:enabled","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[tabindex]","[contenteditable]","[autofocus]"].join(","),BB="".concat(zB,", [data-focus-guard]"),UB=function(e,t){return xB((e.shadowRoot||e).children).reduce((function(e,r){return e.concat(r.matches(t?BB:zB)?[r]:[],UB(r))}),[])},FB=function(e,t){return e.reduce((function(e,r){var n,i=UB(r,t),o=(n=[]).concat.apply(n,i.map((function(e){return function(e,t){var r;return e instanceof HTMLIFrameElement&&(null===(r=e.contentDocument)||void 0===r?void 0:r.body)?FB([e.contentDocument.body],t):[e]}(e,t)})));return e.concat(o,r.parentNode?xB(r.parentNode.querySelectorAll(zB)).filter((function(e){return e===r})):[])}),[])},$B=function(e,t){return xB(e).filter((function(e){return PB(t,e)})).filter((function(e){return function(e){return!((jB(e)||function(e){return"BUTTON"===e.tagName}(e))&&("hidden"===e.type||e.disabled))}(e)}))},HB=function(e,t){return void 0===t&&(t=new Map),xB(e).filter((function(e){return OB(t,e)}))},VB=function(e,t,r){return DB($B(FB(e,r),t),!0,r)},qB=function(e,t){return DB($B(FB(e),t),!1)},KB=function(e,t){return $B(function(e){var t=e.querySelectorAll("[".concat("data-autofocus-inside","]"));return xB(t).map((function(e){return FB([e])})).reduce((function(e,t){return e.concat(t)}),[])}(e),t)},WB=function(e,t){return e.shadowRoot?WB(e.shadowRoot,t):!(void 0===Object.getPrototypeOf(e).contains||!Object.getPrototypeOf(e).contains.call(e,t))||xB(e.children).some((function(e){var r;if(e instanceof HTMLIFrameElement){var n=null===(r=e.contentDocument)||void 0===r?void 0:r.body;return!!n&&WB(n,t)}return WB(e,t)}))},GB=function(e){if(void 0===e&&(e=document),e&&e.activeElement){var t=e.activeElement;return t.shadowRoot?GB(t.shadowRoot):t instanceof HTMLIFrameElement&&function(e){try{return e()}catch(pge){return}}((function(){return t.contentWindow.document}))?GB(t.contentWindow.document):t}},ZB=function(e){return e.parentNode?ZB(e.parentNode):e},YB=function(e){return _B(e).filter(Boolean).reduce((function(e,t){var r=t.getAttribute(aB);return e.push.apply(e,r?function(e){for(var t=new Set,r=e.length,n=0;n0&&t.add(i),(o&Node.DOCUMENT_POSITION_CONTAINS)>0&&t.add(n)}return e.filter((function(e,r){return!t.has(r)}))}(xB(ZB(t).querySelectorAll("[".concat(aB,'="').concat(r,'"]:not([').concat(sB,'="disabled"])')))):[t]),e}),[])},XB=function(e,t){return void 0===t&&(t=GB(kB(e).ownerDocument)),!(!t||t.dataset&&t.dataset.focusGuard)&&YB(e).some((function(e){return WB(e,t)||function(e,t){return Boolean(xB(e.querySelectorAll("iframe")).some((function(e){return function(e,t){return e===t}(e,t)})))}(e,t)}))},JB=function(e,t){return CB(e)&&e.name?function(e,t){return t.filter(CB).filter((function(t){return t.name===e.name})).filter((function(e){return e.checked}))[0]||e}(e,t):e},QB=function(e){return e[0]&&e.length>1?JB(e[0],e):e[0]},eU=function(e,t){return e.length>1?e.indexOf(JB(e[t],e)):t},tU="NEW_FOCUS",rU=function(e,t,r,n){var i=e.length,o=e[0],a=e[i-1],s=IB(r);if(!(r&&e.indexOf(r)>=0)){var c=void 0!==r?t.indexOf(r):-1,l=n?t.indexOf(n):c,u=n?e.indexOf(n):-1,d=c-l,h=t.indexOf(o),f=t.indexOf(a),p=function(e){var t=new Set;return e.forEach((function(r){return t.add(JB(r,e))})),e.filter((function(e){return t.has(e)}))}(t),m=(void 0!==r?p.indexOf(r):-1)-(n?p.indexOf(n):c),g=eU(e,0),v=eU(e,i-1);return-1===c||-1===u?tU:!d&&u>=0?u:c<=h&&s&&Math.abs(d)>1?v:c>=f&&s&&Math.abs(d)>1?g:d&&Math.abs(m)>1?u:c<=h?v:c>f?g:d?Math.abs(d)>1?u:(i+u+d)%i:void 0}},nU=function(e,t,r){var n,i=e.map((function(e){return e.node})),o=HB(i.filter((n=r,function(e){var t,r=null===(t=TB(e))||void 0===t?void 0:t.autofocus;return e.autofocus||void 0!==r&&"false"!==r||n.indexOf(e)>=0})));return o&&o.length?QB(o):QB(HB(t))},iU=function(e,t){return void 0===t&&(t=[]),t.push(e),e.parentNode&&iU(e.parentNode.host||e.parentNode,t),t},oU=function(e,t){for(var r=iU(e),n=iU(t),i=0;i=0)return o}return!1},aU=function(e,t,r){var n=_B(e),i=_B(t),o=n[0],a=!1;return i.filter(Boolean).forEach((function(e){a=oU(a||e,e)||a,r.filter(Boolean).forEach((function(e){var t=oU(o,e);t&&(a=!a||WB(t,a)?t:oU(t,a))}))})),a},sU=function(e,t){var r=GB(_B(e).length>0?document:kB(e).ownerDocument),n=YB(e).filter(MB),i=aU(r||e,e,n),o=new Map,a=qB(n,o),s=VB(n,o).filter((function(e){var t=e.node;return MB(t)}));if(s[0]||(s=a)[0]){var c=qB([i],o).map((function(e){return e.node})),l=function(e,t){var r=new Map;return t.forEach((function(e){return r.set(e.node,e)})),e.map((function(e){return r.get(e)})).filter(LB)}(c,s),u=l.map((function(e){return e.node})),d=rU(u,c,r,t);if(d===tU){var h=nU(a,u,function(e,t){return e.reduce((function(e,r){return e.concat(KB(r,t))}),[])}(n,o));return h?{node:h}:void console.warn("focus-lock: cannot find any node to move focus into")}return void 0===d?d:l[d]}},cU=0,lU=!1,uU=function(e,t,r){void 0===r&&(r={});var n,i,o=sU(e,t);if(!lU&&o){if(cU>2)return console.error("FocusLock: focus-fighting detected. Only one focus management system could be active. See https://github.com/theKashey/focus-lock/#focus-fighting"),lU=!0,void setTimeout((function(){lU=!1}),1);cU++,n=o.node,i=r.focusOptions,"focus"in n&&n.focus(i),"contentWindow"in n&&n.contentWindow&&n.contentWindow.focus(),cU--}};function dU(e){setTimeout(e,1)}var hU=function(){return document&&document.activeElement===document.body||function(e){void 0===e&&(e=document);var t=GB(e);return!!t&&xB(e.querySelectorAll("[".concat("data-no-focus-lock","]"))).some((function(e){return WB(e,t)}))}()},fU=null,pU=null,mU=null,gU=!1,vU=function(){return!0};function yU(e,t,r,n){var i=null,o=e;do{var a=n[o];if(a.guard)a.node.dataset.focusAutoGuard&&(i=a);else{if(!a.lockItem)break;if(o!==e)return;i=null}}while((o+=r)!==t);i&&(i.node.tabIndex=0)}var bU=function(e){return e&&"current"in e?e.current:e},wU=function e(t,r,n){return r&&(r.host===t&&(!r.activeElement||n.contains(r.activeElement))||r.parentNode&&e(t,r.parentNode,n))},xU=function(){var e,t=!1;if(fU){var r=fU,n=r.observed,i=r.persistentFocus,o=r.autoFocus,a=r.shards,s=r.crossFrame,c=r.focusOptions,l=n||mU&&mU.portaledElement,u=document&&document.activeElement;if(l){var d=[l].concat(a.map(bU).filter(Boolean));if(u&&!function(e){return(fU.whiteList||vU)(e)}(u)||(i||(s?Boolean(gU):"meanwhile"===gU)||!hU()||!pU&&o)&&(l&&!(XB(d)||u&&function(e,t){return t.some((function(t){return wU(e,t,t)}))}(u,d)||(e=u,mU&&mU.portaledElement===e))&&(document&&!pU&&u&&!o?(u.blur&&u.blur(),document.body.focus()):(t=uU(d,pU,{focusOptions:c}),mU={})),gU=!1,pU=document&&document.activeElement),document){var h=document&&document.activeElement,f=function(e){var t=YB(e).filter(MB),r=aU(e,e,t),n=new Map,i=VB([r],n,!0),o=VB(t,n).filter((function(e){var t=e.node;return MB(t)})).map((function(e){return e.node}));return i.map((function(e){var t=e.node;return{node:t,index:e.index,lockItem:o.indexOf(t)>=0,guard:IB(t)}}))}(d),p=f.map((function(e){return e.node})).indexOf(h);p>-1&&(f.filter((function(e){var t=e.guard,r=e.node;return t&&r.dataset.focusAutoGuard})).forEach((function(e){return e.node.removeAttribute("tabIndex")})),yU(p,f.length,1,f),yU(p,-1,-1,f))}}}return t},_U=function(e){xU()&&e&&(e.stopPropagation(),e.preventDefault())},kU=function(){return dU(xU)},SU=function(e){var t=e.target,r=e.currentTarget;r.contains(t)||(mU={observerNode:r,portaledElement:t})},EU=function(){gU="just",dU((function(){gU="meanwhile"}))};uB.assignSyncMedium(SU),dB.assignMedium(kU),hB.assignMedium((function(e){return e({moveFocusInside:uU,focusInside:XB})}));const AU=wB((function(e){return e.filter((function(e){return!e.disabled}))}),(function(e){var t=e.slice(-1)[0];t&&!fU&&(document.addEventListener("focusin",_U),document.addEventListener("focusout",kU),window.addEventListener("blur",EU));var r=fU,n=r&&t&&t.id===r.id;fU=t,r&&!n&&(r.onDeactivation(),e.filter((function(e){return e.id===r.id})).length||r.returnFocus(!t)),t?(pU=null,n&&r.observed===t.observed||t.onActivation(),xU(),dU(xU)):(document.removeEventListener("focusin",_U),document.removeEventListener("focusout",kU),window.removeEventListener("blur",EU),pU=null)}))((function(){return null}));var PU=i.forwardRef((function(e,t){return i.createElement(gB,oB({sideCar:AU,ref:t},e))})),OU=gB.propTypes||{};OU.sideCar,function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n=0||(i[r]=e[r])}(OU,["sideCar"]);PU.propTypes={};const TU=PU;function jU(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function CU(e){var t;if(!jU(e))return!1;return e instanceof(null!=(t=e.ownerDocument.defaultView)?t:window).HTMLElement}function RU(e){return jU(e)?e.ownerDocument:document}var IU=e=>e.hasAttribute("tabindex"),MU=e=>IU(e)&&-1===e.tabIndex;function LU(e){return!(!e.parentElement||!LU(e.parentElement))||e.hidden}function NU(e){if(!CU(e)||LU(e)||function(e){return!0===Boolean(e.getAttribute("disabled"))||!0===Boolean(e.getAttribute("aria-disabled"))}(e))return!1;const{localName:t}=e;if(["input","select","textarea","button"].indexOf(t)>=0)return!0;const r={a:()=>e.hasAttribute("href"),audio:()=>e.hasAttribute("controls"),video:()=>e.hasAttribute("controls")};return t in r?r[t]():!!function(e){const t=e.getAttribute("contenteditable");return"false"!==t&&null!=t}(e)||IU(e)}var DU,zU=["input:not(:disabled):not([disabled])","select:not(:disabled):not([disabled])","textarea:not(:disabled):not([disabled])","embed","iframe","object","a[href]","area[href]","button:not(:disabled):not([disabled])","[tabindex]","audio[controls]","video[controls]","*[tabindex]:not([aria-disabled])","*[contenteditable]"].join(),BU=e=>e.offsetWidth>0&&e.offsetHeight>0;function UU(e){const t=Array.from(e.querySelectorAll(zU));return t.unshift(e),t.filter((e=>NU(e)&&BU(e)))}var FU=null!=(DU=TU.default)?DU:TU,$U=e=>{const{initialFocusRef:t,finalFocusRef:r,contentRef:n,restoreFocus:o,children:a,isDisabled:s,autoFocus:c,persistentFocus:l,lockFocusAcrossFrames:u}=e,d=(0,i.useCallback)((()=>{if(null==t?void 0:t.current)t.current.focus();else if(null==n?void 0:n.current){0===UU(n.current).length&&requestAnimationFrame((()=>{var e;null==(e=n.current)||e.focus()}))}}),[t,n]),h=(0,i.useCallback)((()=>{var e;null==(e=null==r?void 0:r.current)||e.focus()}),[r]),f=o&&!r;return(0,xn.jsx)(FU,{crossFrame:u,persistentFocus:l,autoFocus:c,disabled:s,onActivation:d,onDeactivation:h,returnFocus:f,children:a})};$U.displayName="FocusLock";function HU(e){const{autoFocus:t,trapFocus:r,dialogRef:n,initialFocusRef:o,blockScrollOnMount:a,allowPinchZoom:s,finalFocusRef:c,returnFocusOnClose:l,preserveScrollBarGap:u,lockFocusAcrossFrames:d,isOpen:h}=JI(),[f,p]=fw();(0,i.useEffect)((()=>{!f&&p&&setTimeout(p)}),[f,p]);const m=BI(n,h);return(0,xn.jsx)($U,{autoFocus:t,isDisabled:!r,initialFocusRef:o,finalFocusRef:c,restoreFocus:l,contentRef:n,lockFocusAcrossFrames:d,children:(0,xn.jsx)(uL,{removeScrollBar:!u,allowPinchZoom:s,enabled:1===m&&a,forwardProps:!0,children:e.children})})}var VU=v(((e,t)=>{const{className:r,children:n,containerProps:i,motionProps:o,...a}=e,{getDialogProps:s,getDialogContainerProps:c}=JI(),l=s(a,t),u=c(i),d=y("chakra-modal__content",r),h=YI(),f={display:"flex",flexDirection:"column",position:"relative",width:"100%",outline:0,...h.dialog},p={display:"flex",width:"100vw",height:"$100vh",position:"fixed",left:0,top:0,...h.dialogContainer},{motionPreset:m}=JI();return(0,xn.jsx)(HU,{children:(0,xn.jsx)(wn.div,{...u,className:"chakra-modal__content-container",tabIndex:-1,__css:p,children:(0,xn.jsx)(iB,{preset:m,motionProps:o,className:d,...l,__css:f,children:n})})})}));VU.displayName="ModalContent";var qU=v(((e,t)=>{const{className:r,...n}=e,{headerId:o,setHeaderMounted:a}=JI();(0,i.useEffect)((()=>(a(!0),()=>a(!1))),[a]);const s=y("chakra-modal__header",r),c={flex:0,...YI().header};return(0,xn.jsx)(wn.header,{ref:t,className:s,id:o,...n,__css:c})}));function KU(e){const t=Object.assign({},e);for(let r in t)void 0===t[r]&&delete t[r];return t}qU.displayName="ModalHeader";var WU=v((function(e,t){const r=In("Text",e),{className:n,align:i,decoration:o,casing:a,...s}=ft(e),c=KU({textAlign:e.align,textDecoration:e.decoration,textTransform:e.casing});return(0,xn.jsx)(wn.p,{ref:t,className:y("chakra-text",e.className),...c,...s,__css:r})}));WU.displayName="Text";var GU=v(((e,t)=>{const{onClick:r,className:n,...i}=e,{onClose:o}=JI(),a=y("chakra-modal__close-btn",n),s=YI();return(0,xn.jsx)(GP,{ref:t,__css:s.closeButton,className:a,onClick:E(r,(e=>{e.stopPropagation(),o()})),...i})}));GU.displayName="ModalCloseButton";var ZU=v(((e,t)=>{const{className:r,...n}=e,{bodyId:o,setBodyMounted:a}=JI();(0,i.useEffect)((()=>(a(!0),()=>a(!1))),[a]);const s=y("chakra-modal__body",r),c=YI();return(0,xn.jsx)(wn.div,{ref:t,className:s,id:o,...n,__css:c.body})}));ZU.displayName="ModalBody";Object.freeze(["base","sm","md","lg","xl","2xl"]);function YU(e,t){return Array.isArray(e)?e.map((e=>null===e?null:t(e))):b(e)?Object.keys(e).reduce(((r,n)=>(r[n]=t(e[n]),r)),{}):null!=e?t(e):null}var XU=v((function(e,t){const{ratio:r=4/3,children:n,className:o,...a}=e,s=i.Children.only(n),c=y("chakra-aspect-ratio",o);return(0,xn.jsx)(wn.div,{ref:t,position:"relative",className:c,_before:{height:0,content:'""',display:"block",paddingBottom:YU(r,(e=>1/e*100+"%"))},__css:{"& > *:not(style)":{overflow:"hidden",position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:"flex",justifyContent:"center",alignItems:"center",width:"100%",height:"100%"},"& > img, & > video":{objectFit:"cover"}},...a,children:s})}));XU.displayName="AspectRatio";var JU=Object.defineProperty,QU=(e,t,r)=>(((e,t,r)=>{t in e?JU(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r);function eF(e){return e.sort(((e,t)=>{const r=e.compareDocumentPosition(t);if(r&Node.DOCUMENT_POSITION_FOLLOWING||r&Node.DOCUMENT_POSITION_CONTAINED_BY)return-1;if(r&Node.DOCUMENT_POSITION_PRECEDING||r&Node.DOCUMENT_POSITION_CONTAINS)return 1;if(r&Node.DOCUMENT_POSITION_DISCONNECTED||r&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC)throw Error("Cannot sort the given nodes.");return 0}))}function tF(e,t,r){let n=e+1;return r&&n>=t&&(n=0),n}function rF(e,t,r){let n=e-1;return r&&n<0&&(n=t),n}var nF="undefined"!==typeof window?i.useLayoutEffect:i.useEffect,iF=e=>e,oF=class{constructor(){QU(this,"descendants",new Map),QU(this,"register",(e=>{var t;if(null!=e)return"object"==typeof(t=e)&&"nodeType"in t&&t.nodeType===Node.ELEMENT_NODE?this.registerNode(e):t=>{this.registerNode(t,e)}})),QU(this,"unregister",(e=>{this.descendants.delete(e);const t=eF(Array.from(this.descendants.keys()));this.assignIndex(t)})),QU(this,"destroy",(()=>{this.descendants.clear()})),QU(this,"assignIndex",(e=>{this.descendants.forEach((t=>{const r=e.indexOf(t.node);t.index=r,t.node.dataset.index=t.index.toString()}))})),QU(this,"count",(()=>this.descendants.size)),QU(this,"enabledCount",(()=>this.enabledValues().length)),QU(this,"values",(()=>Array.from(this.descendants.values()).sort(((e,t)=>e.index-t.index)))),QU(this,"enabledValues",(()=>this.values().filter((e=>!e.disabled)))),QU(this,"item",(e=>{if(0!==this.count())return this.values()[e]})),QU(this,"enabledItem",(e=>{if(0!==this.enabledCount())return this.enabledValues()[e]})),QU(this,"first",(()=>this.item(0))),QU(this,"firstEnabled",(()=>this.enabledItem(0))),QU(this,"last",(()=>this.item(this.descendants.size-1))),QU(this,"lastEnabled",(()=>{const e=this.enabledValues().length-1;return this.enabledItem(e)})),QU(this,"indexOf",(e=>{var t,r;return e&&null!=(r=null==(t=this.descendants.get(e))?void 0:t.index)?r:-1})),QU(this,"enabledIndexOf",(e=>null==e?-1:this.enabledValues().findIndex((t=>t.node.isSameNode(e))))),QU(this,"next",((e,t=!0)=>{const r=tF(e,this.count(),t);return this.item(r)})),QU(this,"nextEnabled",((e,t=!0)=>{const r=this.item(e);if(!r)return;const n=tF(this.enabledIndexOf(r.node),this.enabledCount(),t);return this.enabledItem(n)})),QU(this,"prev",((e,t=!0)=>{const r=rF(e,this.count()-1,t);return this.item(r)})),QU(this,"prevEnabled",((e,t=!0)=>{const r=this.item(e);if(!r)return;const n=rF(this.enabledIndexOf(r.node),this.enabledCount()-1,t);return this.enabledItem(n)})),QU(this,"registerNode",((e,t)=>{if(!e||this.descendants.has(e))return;const r=eF(Array.from(this.descendants.keys()).concat(e));(null==t?void 0:t.disabled)&&(t.disabled=!!t.disabled);const n={node:e,index:-1,...t};this.descendants.set(e,n),this.assignIndex(r)}))}};var[aF,sF]=Nn({name:"DescendantsProvider",errorMessage:"useDescendantsContext must be used within DescendantsProvider"});function cF(){return[iF(aF),()=>iF(sF()),()=>function(){const e=(0,i.useRef)(new oF);return nF((()=>()=>e.current.destroy())),e.current}(),e=>function(e){const t=sF(),[r,n]=(0,i.useState)(-1),o=(0,i.useRef)(null);nF((()=>()=>{o.current&&t.unregister(o.current)}),[]),nF((()=>{if(!o.current)return;const e=Number(o.current.dataset.index);r==e||Number.isNaN(e)||n(e)}));const a=iF(e?t.register(e):t.register);return{descendants:t,index:r,enabledIndex:t.enabledIndexOf(o.current),register:Kn(a,o)}}(e)]}var[lF,uF]=Nn({name:"AccordionStylesContext",hookName:"useAccordionStyles",providerName:""}),[dF,hF]=Nn({name:"AccordionItemContext",hookName:"useAccordionItemContext",providerName:""}),[fF,pF,mF,gF]=cF();function vF(e){const{value:t,defaultValue:r,onChange:n,shouldUpdate:o=((e,t)=>e!==t)}=e,a=uw(n),s=uw(o),[c,l]=(0,i.useState)(r),u=void 0!==t,d=u?t:c,h=uw((e=>{const t="function"===typeof e?e(d):e;s(d,t)&&(u||l(t),a(t))}),[u,a,d,s]);return[d,h]}function yF(e){const{onChange:t,defaultIndex:r,index:n,allowMultiple:o,allowToggle:a,...s}=e;!function(e){const t=e.index||e.defaultIndex,r=null!=t&&!Array.isArray(t)&&e.allowMultiple;w({condition:!!r,message:`If 'allowMultiple' is passed, then 'index' or 'defaultIndex' must be an array. You passed: ${typeof t},`})}(e),function(e){w({condition:!(!e.allowMultiple||!e.allowToggle),message:"If 'allowMultiple' is passed, 'allowToggle' will be ignored. Either remove 'allowToggle' or 'allowMultiple' depending on whether you want multiple accordions visible or not"})}(e);const c=mF(),[l,u]=(0,i.useState)(-1);(0,i.useEffect)((()=>()=>{u(-1)}),[]);const[d,h]=vF({value:n,defaultValue:()=>o?null!=r?r:[]:null!=r?r:-1,onChange:t});return{index:d,setIndex:h,htmlProps:s,getAccordionItemProps:e=>{let t=!1;null!==e&&(t=Array.isArray(d)?d.includes(e):d===e);return{isOpen:t,onChange:t=>{if(null!==e)if(o&&Array.isArray(d)){const r=t?d.concat(e):d.filter((t=>t!==e));h(r)}else t?h(e):a&&h(-1)}}},focusedIndex:l,setFocusedIndex:u,descendants:c}}var[bF,wF]=Nn({name:"AccordionContext",hookName:"useAccordionContext",providerName:"Accordion"});function xF(e){const{isDisabled:t,isFocusable:r,id:n,...o}=e,{getAccordionItemProps:a,setFocusedIndex:s}=wF(),c=(0,i.useRef)(null),l=(0,i.useId)(),u=null!=n?n:l,d=`accordion-button-${u}`,h=`accordion-panel-${u}`;!function(e){w({condition:!(!e.isFocusable||e.isDisabled),message:"Using only 'isFocusable', this prop is reserved for situations where you pass 'isDisabled' but you still want the element to receive focus (A11y). Either remove it or pass 'isDisabled' as well.\n "})}(e);const{register:f,index:p,descendants:m}=gF({disabled:t&&!r}),{isOpen:g,onChange:v}=a(-1===p?null:p);!function(e){w({condition:e.isOpen&&!!e.isDisabled,message:"Cannot open a disabled accordion item"})}({isOpen:g,isDisabled:t});const y=(0,i.useCallback)((()=>{null==v||v(!g),s(p)}),[p,s,g,v]),b=(0,i.useCallback)((e=>{const t={ArrowDown:()=>{const e=m.nextEnabled(p);null==e||e.node.focus()},ArrowUp:()=>{const e=m.prevEnabled(p);null==e||e.node.focus()},Home:()=>{const e=m.firstEnabled();null==e||e.node.focus()},End:()=>{const e=m.lastEnabled();null==e||e.node.focus()}},r=t[e.key];r&&(e.preventDefault(),r(e))}),[m,p]),x=(0,i.useCallback)((()=>{s(p)}),[s,p]),_=(0,i.useCallback)((function(e={},r=null){return{...e,type:"button",ref:Kn(f,c,r),id:d,disabled:!!t,"aria-expanded":!!g,"aria-controls":h,onClick:E(e.onClick,y),onFocus:E(e.onFocus,x),onKeyDown:E(e.onKeyDown,b)}}),[d,t,g,y,x,b,h,f]),k=(0,i.useCallback)((function(e={},t=null){return{...e,ref:t,role:"region",id:h,"aria-labelledby":d,hidden:!g}}),[d,g,h]);return{isOpen:g,isDisabled:t,isFocusable:r,onOpen:()=>{null==v||v(!0)},onClose:()=>{null==v||v(!1)},getButtonProps:_,getPanelProps:k,htmlProps:o}}var _F=v((function({children:e,reduceMotion:t,...r},n){const o=Mn("Accordion",r),a=ft(r),{htmlProps:s,descendants:c,...l}=yF(a),u=(0,i.useMemo)((()=>({...l,reduceMotion:!!t})),[l,t]);return(0,xn.jsx)(fF,{value:c,children:(0,xn.jsx)(bF,{value:u,children:(0,xn.jsx)(lF,{value:o,children:(0,xn.jsx)(wn.div,{ref:n,...s,className:y("chakra-accordion",r.className),__css:o.root,children:e})})})})}));_F.displayName="Accordion";var kF=v((function(e,t){const{children:r,className:n}=e,{htmlProps:o,...a}=xF(e),s={...uF().container,overflowAnchor:"none"},c=(0,i.useMemo)((()=>a),[a]);return(0,xn.jsx)(dF,{value:c,children:(0,xn.jsx)(wn.div,{ref:t,...o,className:y("chakra-accordion__item",n),__css:s,children:"function"===typeof r?r({isExpanded:!!a.isOpen,isDisabled:!!a.isDisabled}):r})})}));kF.displayName="AccordionItem";var SF=v((function(e,t){const{getButtonProps:r}=hF(),n=r(e,t),i={display:"flex",alignItems:"center",width:"100%",outline:0,...uF().button};return(0,xn.jsx)(wn.button,{...n,className:y("chakra-accordion__button",e.className),__css:i})}));function EF(e){const{isOpen:t,isDisabled:r}=hF(),{reduceMotion:n}=wF(),i=y("chakra-accordion__icon",e.className),o={opacity:r?.4:1,transform:t?"rotate(-180deg)":void 0,transition:n?void 0:"transform 0.2s",transformOrigin:"center",...uF().icon};return(0,xn.jsx)(NP,{viewBox:"0 0 24 24","aria-hidden":!0,className:i,__css:o,...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})})}SF.displayName="AccordionButton",EF.displayName="AccordionIcon";var AF=e=>null!=e&&parseInt(e.toString(),10)>0,PF={exit:{height:{duration:.2,ease:eM.ease},opacity:{duration:.3,ease:eM.ease}},enter:{height:{duration:.3,ease:eM.ease},opacity:{duration:.4,ease:eM.ease}}},OF={exit:({animateOpacity:e,startingHeight:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{...e&&{opacity:AF(t)?1:0},height:t,transitionEnd:null==n?void 0:n.exit,transition:null!=(o=null==r?void 0:r.exit)?o:cM(PF.exit,i)}},enter:({animateOpacity:e,endingHeight:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{...e&&{opacity:1},height:t,transitionEnd:null==n?void 0:n.enter,transition:null!=(o=null==r?void 0:r.enter)?o:sM(PF.enter,i)}}},TF=(0,i.forwardRef)(((e,t)=>{const{in:r,unmountOnExit:n,animateOpacity:o=!0,startingHeight:a=0,endingHeight:s="auto",style:c,className:l,transition:u,transitionEnd:d,...h}=e,[f,p]=(0,i.useState)(!1);(0,i.useEffect)((()=>{const e=setTimeout((()=>{p(!0)}));return()=>clearTimeout(e)}),[]),w({condition:Number(a)>0&&!!n,message:"startingHeight and unmountOnExit are mutually exclusive. You can't use them together"});const m=parseFloat(a.toString())>0,g={startingHeight:a,endingHeight:s,animateOpacity:o,transition:f?u:{enter:{duration:0}},transitionEnd:{enter:null==d?void 0:d.enter,exit:n?null==d?void 0:d.exit:{...null==d?void 0:d.exit,display:m?"block":"none"}}},v=!n||r,b=r||n?"enter":"exit";return(0,xn.jsx)(oO,{initial:!1,custom:g,children:v&&(0,xn.jsx)(CP.div,{ref:t,...h,className:y("chakra-collapse",l),style:{overflow:"hidden",display:"block",...c},custom:g,variants:OF,initial:!!n&&"exit",animate:b,exit:"exit"})})}));TF.displayName="Collapse";var jF=v((function(e,t){const{className:r,motionProps:n,...i}=e,{reduceMotion:o}=wF(),{getPanelProps:a,isOpen:s}=hF(),c=a(i,t),l=y("chakra-accordion__panel",r),u=uF();o||delete c.hidden;const d=(0,xn.jsx)(wn.div,{...c,__css:u.panel,className:l});return o?d:(0,xn.jsx)(TF,{in:s,...n,children:d})}));jF.displayName="AccordionPanel";var[CF,RF]=Nn({name:"FormControlStylesContext",errorMessage:"useFormControlStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),[IF,MF]=Nn({strict:!1,name:"FormControlContext"});var LF=v((function(e,t){const r=Mn("Form",e),n=ft(e),{getRootProps:o,htmlProps:a,...s}=function(e){const{id:t,isRequired:r,isInvalid:n,isDisabled:o,isReadOnly:a,...s}=e,c=(0,i.useId)(),l=t||`field-${c}`,u=`${l}-label`,d=`${l}-feedback`,h=`${l}-helptext`,[f,p]=(0,i.useState)(!1),[m,g]=(0,i.useState)(!1),[v,y]=(0,i.useState)(!1),b=(0,i.useCallback)(((e={},t=null)=>({id:h,...e,ref:Kn(t,(e=>{e&&g(!0)}))})),[h]),w=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,"data-focus":k(v),"data-disabled":k(o),"data-invalid":k(n),"data-readonly":k(a),id:void 0!==e.id?e.id:u,htmlFor:void 0!==e.htmlFor?e.htmlFor:l})),[l,o,v,n,a,u]),x=(0,i.useCallback)(((e={},t=null)=>({id:d,...e,ref:Kn(t,(e=>{e&&p(!0)})),"aria-live":"polite"})),[d]),_=(0,i.useCallback)(((e={},t=null)=>({...e,...s,ref:t,role:"group","data-focus":k(v),"data-disabled":k(o),"data-invalid":k(n),"data-readonly":k(a)})),[s,o,v,n,a]),S=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,role:"presentation","aria-hidden":!0,children:e.children||"*"})),[]);return{isRequired:!!r,isInvalid:!!n,isReadOnly:!!a,isDisabled:!!o,isFocused:!!v,onFocus:()=>y(!0),onBlur:()=>y(!1),hasFeedbackText:f,setHasFeedbackText:p,hasHelpText:m,setHasHelpText:g,id:l,labelId:u,feedbackId:d,helpTextId:h,htmlProps:s,getHelpTextProps:b,getErrorMessageProps:x,getRootProps:_,getLabelProps:w,getRequiredIndicatorProps:S}}(n),c=y("chakra-form-control",e.className);return(0,xn.jsx)(IF,{value:s,children:(0,xn.jsx)(CF,{value:r,children:(0,xn.jsx)(wn.div,{...o({},t),className:c,__css:r.container})})})}));LF.displayName="FormControl";var NF=v((function(e,t){const r=MF(),n=RF(),i=y("chakra-form__helper-text",e.className);return(0,xn.jsx)(wn.div,{...null==r?void 0:r.getHelpTextProps(e,t),__css:n.helperText,className:i})}));NF.displayName="FormHelperText";var[DF,zF]=Nn({name:"FormErrorStylesContext",errorMessage:"useFormErrorStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),BF=v(((e,t)=>{const r=Mn("FormError",e),n=ft(e),i=MF();return(null==i?void 0:i.isInvalid)?(0,xn.jsx)(DF,{value:r,children:(0,xn.jsx)(wn.div,{...null==i?void 0:i.getErrorMessageProps(n,t),className:y("chakra-form__error-message",e.className),__css:{display:"flex",alignItems:"center",...r.text}})}):null}));BF.displayName="FormErrorMessage";var UF=v(((e,t)=>{const r=zF(),n=MF();if(!(null==n?void 0:n.isInvalid))return null;const i=y("chakra-form__error-icon",e.className);return(0,xn.jsx)(NP,{ref:t,"aria-hidden":!0,...e,__css:r.icon,className:i,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})}));UF.displayName="FormErrorIcon";var FF=v(((e,t)=>{const{className:r,...n}=e,i=y("chakra-modal__footer",r),o={display:"flex",alignItems:"center",justifyContent:"flex-end",...YI().footer};return(0,xn.jsx)(wn.footer,{ref:t,...n,__css:o,className:i})}));FF.displayName="ModalFooter";var $F=e=>"checkbox"===e.type,HF=e=>e instanceof Date,VF=e=>null==e;const qF=e=>"object"===typeof e;var KF=e=>!VF(e)&&!Array.isArray(e)&&qF(e)&&!HF(e),WF=e=>KF(e)&&e.target?$F(e.target)?e.target.checked:e.target.value:e,GF=(e,t)=>e.has((e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e)(t)),ZF=e=>{const t=e.constructor&&e.constructor.prototype;return KF(t)&&t.hasOwnProperty("isPrototypeOf")},YF="undefined"!==typeof window&&"undefined"!==typeof window.HTMLElement&&"undefined"!==typeof document;function XF(e){let t;const r=Array.isArray(e);if(e instanceof Date)t=new Date(e);else if(e instanceof Set)t=new Set(e);else{if(YF&&(e instanceof Blob||e instanceof FileList)||!r&&!KF(e))return e;if(t=r?[]:{},r||ZF(e))for(const r in e)e.hasOwnProperty(r)&&(t[r]=XF(e[r]));else t=e}return t}var JF=e=>Array.isArray(e)?e.filter(Boolean):[],QF=e=>void 0===e,e$=(e,t,r)=>{if(!t||!KF(e))return r;const n=JF(t.split(/[,[\].]+?/)).reduce(((e,t)=>VF(e)?e:e[t]),e);return QF(n)||n===e?QF(e[t])?r:e[t]:n},t$=e=>"boolean"===typeof e;const r$={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},n$={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},i$="max",o$="min",a$="maxLength",s$="minLength",c$="pattern",l$="required",u$="validate",d$=i.createContext(null),h$=()=>i.useContext(d$),f$=e=>{const{children:t,...r}=e;return i.createElement(d$.Provider,{value:r},t)};var p$=(e,t,r,n=!0)=>{const i={defaultValues:t._defaultValues};for(const o in e)Object.defineProperty(i,o,{get:()=>{const i=o;return t._proxyFormState[i]!==n$.all&&(t._proxyFormState[i]=!n||n$.all),r&&(r[i]=!0),e[i]}});return i},m$=e=>KF(e)&&!Object.keys(e).length,g$=(e,t,r,n)=>{r(e);const{name:i,...o}=e;return m$(o)||Object.keys(o).length>=Object.keys(t).length||Object.keys(o).find((e=>t[e]===(!n||n$.all)))},v$=e=>Array.isArray(e)?e:[e];function y$(e){const t=i.useRef(e);t.current=e,i.useEffect((()=>{const r=!e.disabled&&t.current.subject&&t.current.subject.subscribe({next:t.current.next});return()=>{r&&r.unsubscribe()}}),[e.disabled])}var b$=e=>"string"===typeof e,w$=(e,t,r,n,i)=>b$(e)?(n&&t.watch.add(e),e$(r,e,i)):Array.isArray(e)?e.map((e=>(n&&t.watch.add(e),e$(r,e)))):(n&&(t.watchAll=!0),r);var x$=e=>/^\w*$/.test(e),_$=e=>JF(e.replace(/["|']|\]/g,"").split(/\.|\[/)),k$=(e,t,r)=>{let n=-1;const i=x$(t)?[t]:_$(t),o=i.length,a=o-1;for(;++nt?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[n]:i||!0}}:{},E$=()=>{const e="undefined"===typeof performance?Date.now():1e3*performance.now();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{const r=(16*Math.random()+e)%16|0;return("x"==t?r:3&r|8).toString(16)}))},A$=(e,t,r={})=>r.shouldFocus||QF(r.shouldFocus)?r.focusName||`${e}.${QF(r.focusIndex)?t:r.focusIndex}.`:"",P$=e=>({isOnSubmit:!e||e===n$.onSubmit,isOnBlur:e===n$.onBlur,isOnChange:e===n$.onChange,isOnAll:e===n$.all,isOnTouch:e===n$.onTouched}),O$=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some((t=>e.startsWith(t)&&/^\.\w+/.test(e.slice(t.length)))));const T$=(e,t,r,n)=>{for(const i of r||Object.keys(e)){const r=e$(e,i);if(r){const{_f:e,...o}=r;if(e){if(e.refs&&e.refs[0]&&t(e.refs[0],i)&&!n)break;if(e.ref&&t(e.ref,e.name)&&!n)break;T$(o,t)}else KF(o)&&T$(o,t)}}};var j$=(e,t,r)=>{const n=JF(e$(e,r));return k$(n,"root",t[r]),k$(e,r,n),e},C$=e=>"file"===e.type,R$=e=>"function"===typeof e,I$=e=>{if(!YF)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},M$=e=>b$(e),L$=e=>"radio"===e.type,N$=e=>e instanceof RegExp;const D$={value:!1,isValid:!1},z$={value:!0,isValid:!0};var B$=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter((e=>e&&e.checked&&!e.disabled)).map((e=>e.value));return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!QF(e[0].attributes.value)?QF(e[0].value)||""===e[0].value?z$:{value:e[0].value,isValid:!0}:z$:D$}return D$};const U$={isValid:!1,value:null};var F$=e=>Array.isArray(e)?e.reduce(((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e),U$):U$;function $$(e,t,r="validate"){if(M$(e)||Array.isArray(e)&&e.every(M$)||t$(e)&&!e)return{type:r,message:M$(e)?e:"",ref:t}}var H$=e=>KF(e)&&!N$(e)?e:{value:e,message:""},V$=async(e,t,r,n,i)=>{const{ref:o,refs:a,required:s,maxLength:c,minLength:l,min:u,max:d,pattern:h,validate:f,name:p,valueAsNumber:m,mount:g,disabled:v}=e._f,y=e$(t,p);if(!g||v)return{};const b=a?a[0]:o,w=e=>{n&&b.reportValidity&&(b.setCustomValidity(t$(e)?"":e||""),b.reportValidity())},x={},_=L$(o),k=$F(o),S=_||k,E=(m||C$(o))&&QF(o.value)&&QF(y)||I$(o)&&""===o.value||""===y||Array.isArray(y)&&!y.length,A=S$.bind(null,p,r,x),P=(e,t,r,n=a$,i=s$)=>{const a=e?t:r;x[p]={type:e?n:i,message:a,ref:o,...A(e?n:i,a)}};if(i?!Array.isArray(y)||!y.length:s&&(!S&&(E||VF(y))||t$(y)&&!y||k&&!B$(a).isValid||_&&!F$(a).isValid)){const{value:e,message:t}=M$(s)?{value:!!s,message:s}:H$(s);if(e&&(x[p]={type:l$,message:t,ref:b,...A(l$,t)},!r))return w(t),x}if(!E&&(!VF(u)||!VF(d))){let e,t;const n=H$(d),i=H$(u);if(VF(y)||isNaN(y)){const r=o.valueAsDate||new Date(y),a=e=>new Date((new Date).toDateString()+" "+e),s="time"==o.type,c="week"==o.type;b$(n.value)&&y&&(e=s?a(y)>a(n.value):c?y>n.value:r>new Date(n.value)),b$(i.value)&&y&&(t=s?a(y)n.value),VF(i.value)||(t=r+e.value,i=!VF(t.value)&&y.length<+t.value;if((n||i)&&(P(n,e.message,t.message),!r))return w(x[p].message),x}if(h&&!E&&b$(y)){const{value:e,message:t}=H$(h);if(N$(e)&&!y.match(e)&&(x[p]={type:c$,message:t,ref:o,...A(c$,t)},!r))return w(t),x}if(f)if(R$(f)){const e=$$(await f(y,t),b);if(e&&(x[p]={...e,...A(u$,e.message)},!r))return w(e.message),x}else if(KF(f)){let e={};for(const n in f){if(!m$(e)&&!r)break;const i=$$(await f[n](y,t),b,n);i&&(e={...i,...A(n,i.message)},w(i.message),r&&(x[p]=e))}if(!m$(e)&&(x[p]={ref:b,...e},!r))return x}return w(!0),x},q$=(e,t)=>[...e,...v$(t)],K$=e=>Array.isArray(e)?e.map((()=>{})):void 0;function W$(e,t,r){return[...e.slice(0,t),...v$(r),...e.slice(t)]}var G$=(e,t,r)=>Array.isArray(e)?(QF(e[r])&&(e[r]=void 0),e.splice(r,0,e.splice(t,1)[0]),e):[],Z$=(e,t)=>[...v$(t),...v$(e)];var Y$=(e,t)=>QF(t)?[]:function(e,t){let r=0;const n=[...e];for(const i of t)n.splice(i-r,1),r++;return JF(n).length?n:[]}(e,v$(t).sort(((e,t)=>e-t))),X$=(e,t,r)=>{[e[t],e[r]]=[e[r],e[t]]};function J$(e,t){const r=Array.isArray(t)?t:x$(t)?[t]:_$(t),n=1===r.length?e:function(e,t){const r=t.slice(0,-1).length;let n=0;for(;n(e[t]=r,e);var eH=()=>{let e=[];return{get observers(){return e},next:t=>{for(const r of e)r.next&&r.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter((e=>e!==t))}}),unsubscribe:()=>{e=[]}}},tH=e=>VF(e)||!qF(e);function rH(e,t){if(tH(e)||tH(t))return e===t;if(HF(e)&&HF(t))return e.getTime()===t.getTime();const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(const i of r){const r=e[i];if(!n.includes(i))return!1;if("ref"!==i){const e=t[i];if(HF(r)&&HF(e)||KF(r)&&KF(e)||Array.isArray(r)&&Array.isArray(e)?!rH(r,e):r!==e)return!1}}return!0}var nH=e=>"select-multiple"===e.type,iH=e=>L$(e)||$F(e),oH=e=>I$(e)&&e.isConnected,aH=e=>KF(e)&&Object.values(e).some((e=>e)),sH=e=>{for(const t in e)if(R$(e[t]))return!0;return!1};function cH(e,t={}){const r=Array.isArray(e);if(KF(e)||r)for(const n in e)Array.isArray(e[n])||KF(e[n])&&!sH(e[n])?(t[n]=Array.isArray(e[n])?[]:{},cH(e[n],t[n])):VF(e[n])||(t[n]=!0);return t}function lH(e,t,r){const n=Array.isArray(e);if(KF(e)||n)for(const i in e)Array.isArray(e[i])||KF(e[i])&&!sH(e[i])?QF(t)||tH(r[i])?r[i]=Array.isArray(e[i])?cH(e[i],[]):{...cH(e[i])}:lH(e[i],VF(t)?{}:t[i],r[i]):r[i]=!rH(e[i],t[i]);return r}var uH=(e,t)=>lH(e,t,cH(t)),dH=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:n})=>QF(e)?e:t?""===e?NaN:e?+e:e:r&&b$(e)?new Date(e):n?n(e):e;function hH(e){const t=e.ref;if(!(e.refs?e.refs.every((e=>e.disabled)):t.disabled))return C$(t)?t.files:L$(t)?F$(e.refs).value:nH(t)?[...t.selectedOptions].map((({value:e})=>e)):$F(t)?B$(e.refs).value:dH(QF(t.value)?e.ref.value:t.value,e)}var fH=(e,t,r,n)=>{const i={};for(const o of e){const e=e$(t,o);e&&k$(i,o,e._f)}return{criteriaMode:r,names:[...e],fields:i,shouldUseNativeValidation:n}},pH=e=>QF(e)?e:N$(e)?e.source:KF(e)?N$(e.value)?e.value.source:e.value:e,mH=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function gH(e,t,r){const n=e$(e,r);if(n||x$(r))return{error:n,name:r};const i=r.split(".");for(;i.length;){const n=i.join("."),o=e$(t,n),a=e$(e,n);if(o&&!Array.isArray(o)&&r!==n)return{name:r};if(a&&a.type)return{name:n,error:a};i.pop()}return{name:r}}var vH=(e,t,r,n,i)=>!i.isOnAll&&(!r&&i.isOnTouch?!(t||e):(r?n.isOnBlur:i.isOnBlur)?!e:!(r?n.isOnChange:i.isOnChange)||e),yH=(e,t)=>!JF(e$(e,t)).length&&J$(e,t);const bH={mode:n$.onSubmit,reValidateMode:n$.onChange,shouldFocusError:!0};function wH(e={}){let t,r={...bH,...e},n={submitCount:0,isDirty:!1,isLoading:R$(r.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:r.errors||{},disabled:r.disabled||!1},i={},o=(KF(r.defaultValues)||KF(r.values))&&XF(r.defaultValues||r.values)||{},a=r.shouldUnregister?{}:XF(o),s={action:!1,mount:!1,watch:!1},c={mount:new Set,unMount:new Set,array:new Set,watch:new Set},l=0;const u={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},d={values:eH(),array:eH(),state:eH()},h=P$(r.mode),f=P$(r.reValidateMode),p=r.criteriaMode===n$.all,m=async e=>{if(u.isValid||e){const e=r.resolver?m$((await w()).errors):await x(i,!0);e!==n.isValid&&d.state.next({isValid:e})}},g=(e,t)=>{(u.isValidating||u.validatingFields)&&(t.forEach((t=>{k$(n.validatingFields,t,e)})),n.isValidating=aH(n.validatingFields),d.state.next({validatingFields:n.validatingFields,isValidating:n.isValidating}))},v=(e,t,r,n)=>{const c=e$(i,e);if(c){const i=e$(a,e,QF(r)?e$(o,e):r);QF(i)||n&&n.defaultChecked||t?k$(a,e,t?i:hH(c._f)):S(e,i),s.mount&&m()}},y=(e,t,r,a,s)=>{let c=!1,l=!1;const h={name:e},f=!(!e$(i,e)||!e$(i,e)._f.disabled);if(!r||a){u.isDirty&&(l=n.isDirty,n.isDirty=h.isDirty=_(),c=l!==h.isDirty);const r=f||rH(e$(o,e),t);l=!(f||!e$(n.dirtyFields,e)),r||f?J$(n.dirtyFields,e):k$(n.dirtyFields,e,!0),h.dirtyFields=n.dirtyFields,c=c||u.dirtyFields&&l!==!r}if(r){const t=e$(n.touchedFields,e);t||(k$(n.touchedFields,e,r),h.touchedFields=n.touchedFields,c=c||u.touchedFields&&t!==r)}return c&&s&&d.state.next(h),c?h:{}},b=(r,i,o,a)=>{const s=e$(n.errors,r),c=u.isValid&&t$(i)&&n.isValid!==i;var h;if(e.delayError&&o?(h=()=>((e,t)=>{k$(n.errors,e,t),d.state.next({errors:n.errors})})(r,o),t=e=>{clearTimeout(l),l=setTimeout(h,e)},t(e.delayError)):(clearTimeout(l),t=null,o?k$(n.errors,r,o):J$(n.errors,r)),(o?!rH(s,o):s)||!m$(a)||c){const e={...a,...c&&t$(i)?{isValid:i}:{},errors:n.errors,name:r};n={...n,...e},d.state.next(e)}g(!1,Object.keys(n.validatingFields).filter((e=>e===r)))},w=async e=>r.resolver(a,r.context,fH(e||c.mount,i,r.criteriaMode,r.shouldUseNativeValidation)),x=async(e,t,i={valid:!0})=>{for(const o in e){const s=e[o];if(s){const{_f:e,...o}=s;if(e){const o=c.array.has(e.name),l=await V$(s,a,p,r.shouldUseNativeValidation&&!t,o);if(l[e.name]&&(i.valid=!1,t))break;!t&&(e$(l,e.name)?o?j$(n.errors,l,e.name):k$(n.errors,e.name,l[e.name]):J$(n.errors,e.name))}o&&await x(o,t,i)}}return i.valid},_=(e,t)=>(e&&t&&k$(a,e,t),!rH(j(),o)),k=(e,t,r)=>w$(e,c,{...s.mount?a:QF(t)?o:b$(e)?{[e]:t}:t},r,t),S=(e,t,r={})=>{const n=e$(i,e);let o=t;if(n){const r=n._f;r&&(!r.disabled&&k$(a,e,dH(t,r)),o=I$(r.ref)&&VF(t)?"":t,nH(r.ref)?[...r.ref.options].forEach((e=>e.selected=o.includes(e.value))):r.refs?$F(r.ref)?r.refs.length>1?r.refs.forEach((e=>(!e.defaultChecked||!e.disabled)&&(e.checked=Array.isArray(o)?!!o.find((t=>t===e.value)):o===e.value))):r.refs[0]&&(r.refs[0].checked=!!o):r.refs.forEach((e=>e.checked=e.value===o)):C$(r.ref)?r.ref.value="":(r.ref.value=o,r.ref.type||d.values.next({name:e,values:{...a}})))}(r.shouldDirty||r.shouldTouch)&&y(e,o,r.shouldTouch,r.shouldDirty,!0),r.shouldValidate&&T(e)},E=(e,t,r)=>{for(const n in t){const o=t[n],a=`${e}.${n}`,s=e$(i,a);!c.array.has(e)&&tH(o)&&(!s||s._f)||HF(o)?S(a,o,r):E(a,o,r)}},A=(e,t,r={})=>{const l=e$(i,e),h=c.array.has(e),f=XF(t);k$(a,e,f),h?(d.array.next({name:e,values:{...a}}),(u.isDirty||u.dirtyFields)&&r.shouldDirty&&d.state.next({name:e,dirtyFields:uH(o,a),isDirty:_(e,f)})):!l||l._f||VF(f)?S(e,f,r):E(e,f,r),O$(e,c)&&d.state.next({...n}),d.values.next({name:s.mount?e:void 0,values:{...a}})},P=async e=>{const o=e.target;let s=o.name,l=!0;const v=e$(i,s),_=e=>{l=Number.isNaN(e)||e===e$(a,s,e)};if(v){let k,S;const E=o.type?hH(v._f):WF(e),A=e.type===r$.BLUR||e.type===r$.FOCUS_OUT,P=!mH(v._f)&&!r.resolver&&!e$(n.errors,s)&&!v._f.deps||vH(A,e$(n.touchedFields,s),n.isSubmitted,f,h),O=O$(s,c,A);k$(a,s,E),A?(v._f.onBlur&&v._f.onBlur(e),t&&t(0)):v._f.onChange&&v._f.onChange(e);const j=y(s,E,A,!1),C=!m$(j)||O;if(!A&&d.values.next({name:s,type:e.type,values:{...a}}),P)return u.isValid&&m(),C&&d.state.next({name:s,...O?{}:j});if(!A&&O&&d.state.next({...n}),g(!0,[s]),r.resolver){const{errors:e}=await w([s]);if(_(E),l){const t=gH(n.errors,i,s),r=gH(e,i,t.name||s);k=r.error,s=r.name,S=m$(e)}}else k=(await V$(v,a,p,r.shouldUseNativeValidation))[s],_(E),l&&(k?S=!1:u.isValid&&(S=await x(i,!0)));l&&(v._f.deps&&T(v._f.deps),b(s,S,k,j))}},O=(e,t)=>{if(e$(n.errors,t)&&e.focus)return e.focus(),1},T=async(e,t={})=>{let o,a;const s=v$(e);if(g(!0,s),r.resolver){const t=await(async e=>{const{errors:t}=await w(e);if(e)for(const r of e){const e=e$(t,r);e?k$(n.errors,r,e):J$(n.errors,r)}else n.errors=t;return t})(QF(e)?e:s);o=m$(t),a=e?!s.some((e=>e$(t,e))):o}else e?(a=(await Promise.all(s.map((async e=>{const t=e$(i,e);return await x(t&&t._f?{[e]:t}:t)})))).every(Boolean),(a||n.isValid)&&m()):a=o=await x(i);return d.state.next({...!b$(e)||u.isValid&&o!==n.isValid?{}:{name:e},...r.resolver||!e?{isValid:o}:{},errors:n.errors,isValidating:!1}),t.shouldFocus&&!a&&T$(i,O,e?s:c.mount),a},j=e=>{const t={...o,...s.mount?a:{}};return QF(e)?t:b$(e)?e$(t,e):e.map((e=>e$(t,e)))},C=(e,t)=>({invalid:!!e$((t||n).errors,e),isDirty:!!e$((t||n).dirtyFields,e),isTouched:!!e$((t||n).touchedFields,e),isValidating:!!e$((t||n).validatingFields,e),error:e$((t||n).errors,e)}),R=(e,t,r)=>{const o=(e$(i,e,{_f:{}})._f||{}).ref;k$(n.errors,e,{...t,ref:o}),d.state.next({name:e,errors:n.errors,isValid:!1}),r&&r.shouldFocus&&o&&o.focus&&o.focus()},I=(e,t={})=>{for(const s of e?v$(e):c.mount)c.mount.delete(s),c.array.delete(s),t.keepValue||(J$(i,s),J$(a,s)),!t.keepError&&J$(n.errors,s),!t.keepDirty&&J$(n.dirtyFields,s),!t.keepTouched&&J$(n.touchedFields,s),!t.keepIsValidating&&J$(n.validatingFields,s),!r.shouldUnregister&&!t.keepDefaultValue&&J$(o,s);d.values.next({values:{...a}}),d.state.next({...n,...t.keepDirty?{isDirty:_()}:{}}),!t.keepIsValid&&m()},M=({disabled:e,name:t,field:r,fields:n,value:i})=>{if(t$(e)){const o=e?void 0:QF(i)?hH(r?r._f:e$(n,t)._f):i;k$(a,t,o),y(t,o,!1,!1,!0)}},L=(e,t={})=>{let n=e$(i,e);const a=t$(t.disabled);return k$(i,e,{...n||{},_f:{...n&&n._f?n._f:{ref:{name:e}},name:e,mount:!0,...t}}),c.mount.add(e),n?M({field:n,disabled:t.disabled,name:e,value:t.value}):v(e,!0,t.value),{...a?{disabled:t.disabled}:{},...r.progressive?{required:!!t.required,min:pH(t.min),max:pH(t.max),minLength:pH(t.minLength),maxLength:pH(t.maxLength),pattern:pH(t.pattern)}:{},name:e,onChange:P,onBlur:P,ref:a=>{if(a){L(e,t),n=e$(i,e);const r=QF(a.value)&&a.querySelectorAll&&a.querySelectorAll("input,select,textarea")[0]||a,s=iH(r),c=n._f.refs||[];if(s?c.find((e=>e===r)):r===n._f.ref)return;k$(i,e,{_f:{...n._f,...s?{refs:[...c.filter(oH),r,...Array.isArray(e$(o,e))?[{}]:[]],ref:{type:r.type,name:e}}:{ref:r}}}),v(e,!1,void 0,r)}else n=e$(i,e,{}),n._f&&(n._f.mount=!1),(r.shouldUnregister||t.shouldUnregister)&&(!GF(c.array,e)||!s.action)&&c.unMount.add(e)}}},N=()=>r.shouldFocusError&&T$(i,O,c.mount),D=(e,t)=>async o=>{let s;o&&(o.preventDefault&&o.preventDefault(),o.persist&&o.persist());let c=XF(a);if(d.state.next({isSubmitting:!0}),r.resolver){const{errors:e,values:t}=await w();n.errors=e,c=t}else await x(i);if(J$(n.errors,"root"),m$(n.errors)){d.state.next({errors:{}});try{await e(c,o)}catch(l){s=l}}else t&&await t({...n.errors},o),N(),setTimeout(N);if(d.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:m$(n.errors)&&!s,submitCount:n.submitCount+1,errors:n.errors}),s)throw s},z=(t,r={})=>{const l=t?XF(t):o,h=XF(l),f=m$(t),p=f?o:h;if(r.keepDefaultValues||(o=l),!r.keepValues){if(r.keepDirtyValues)for(const e of c.mount)e$(n.dirtyFields,e)?k$(p,e,e$(a,e)):A(e,e$(p,e));else{if(YF&&QF(t))for(const e of c.mount){const t=e$(i,e);if(t&&t._f){const e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(I$(e)){const t=e.closest("form");if(t){t.reset();break}}}}i={}}a=e.shouldUnregister?r.keepDefaultValues?XF(o):{}:XF(p),d.array.next({values:{...p}}),d.values.next({values:{...p}})}c={mount:r.keepDirtyValues?c.mount:new Set,unMount:new Set,array:new Set,watch:new Set,watchAll:!1,focus:""},s.mount=!u.isValid||!!r.keepIsValid||!!r.keepDirtyValues,s.watch=!!e.shouldUnregister,d.state.next({submitCount:r.keepSubmitCount?n.submitCount:0,isDirty:!f&&(r.keepDirty?n.isDirty:!(!r.keepDefaultValues||rH(t,o))),isSubmitted:!!r.keepIsSubmitted&&n.isSubmitted,dirtyFields:f?[]:r.keepDirtyValues?r.keepDefaultValues&&a?uH(o,a):n.dirtyFields:r.keepDefaultValues&&t?uH(o,t):{},touchedFields:r.keepTouched?n.touchedFields:{},errors:r.keepErrors?n.errors:{},isSubmitSuccessful:!!r.keepIsSubmitSuccessful&&n.isSubmitSuccessful,isSubmitting:!1})},B=(e,t)=>z(R$(e)?e(a):e,t);return{control:{register:L,unregister:I,getFieldState:C,handleSubmit:D,setError:R,_executeSchema:w,_getWatch:k,_getDirty:_,_updateValid:m,_removeUnmounted:()=>{for(const e of c.unMount){const t=e$(i,e);t&&(t._f.refs?t._f.refs.every((e=>!oH(e))):!oH(t._f.ref))&&I(e)}c.unMount=new Set},_updateFieldArray:(e,t=[],r,c,l=!0,h=!0)=>{if(c&&r){if(s.action=!0,h&&Array.isArray(e$(i,e))){const t=r(e$(i,e),c.argA,c.argB);l&&k$(i,e,t)}if(h&&Array.isArray(e$(n.errors,e))){const t=r(e$(n.errors,e),c.argA,c.argB);l&&k$(n.errors,e,t),yH(n.errors,e)}if(u.touchedFields&&h&&Array.isArray(e$(n.touchedFields,e))){const t=r(e$(n.touchedFields,e),c.argA,c.argB);l&&k$(n.touchedFields,e,t)}u.dirtyFields&&(n.dirtyFields=uH(o,a)),d.state.next({name:e,isDirty:_(e,t),dirtyFields:n.dirtyFields,errors:n.errors,isValid:n.isValid})}else k$(a,e,t)},_updateDisabledField:M,_getFieldArray:t=>JF(e$(s.mount?a:o,t,e.shouldUnregister?e$(o,t,[]):[])),_reset:z,_resetDefaultValues:()=>R$(r.defaultValues)&&r.defaultValues().then((e=>{B(e,r.resetOptions),d.state.next({isLoading:!1})})),_updateFormState:e=>{n={...n,...e}},_disableForm:e=>{t$(e)&&(d.state.next({disabled:e}),T$(i,((t,r)=>{let n=e;const o=e$(i,r);o&&t$(o._f.disabled)&&(n||(n=o._f.disabled)),t.disabled=n}),0,!1))},_subjects:d,_proxyFormState:u,_setErrors:e=>{n.errors=e,d.state.next({errors:n.errors,isValid:!1})},get _fields(){return i},get _formValues(){return a},get _state(){return s},set _state(e){s=e},get _defaultValues(){return o},get _names(){return c},set _names(e){c=e},get _formState(){return n},set _formState(e){n=e},get _options(){return r},set _options(e){r={...r,...e}}},trigger:T,register:L,handleSubmit:D,watch:(e,t)=>R$(e)?d.values.subscribe({next:r=>e(k(void 0,t),r)}):k(e,t,!0),setValue:A,getValues:j,reset:B,resetField:(e,t={})=>{e$(i,e)&&(QF(t.defaultValue)?A(e,XF(e$(o,e))):(A(e,t.defaultValue),k$(o,e,XF(t.defaultValue))),t.keepTouched||J$(n.touchedFields,e),t.keepDirty||(J$(n.dirtyFields,e),n.isDirty=t.defaultValue?_(e,XF(e$(o,e))):_()),t.keepError||(J$(n.errors,e),u.isValid&&m()),d.state.next({...n}))},clearErrors:e=>{e&&v$(e).forEach((e=>J$(n.errors,e))),d.state.next({errors:e?n.errors:{}})},unregister:I,setError:R,setFocus:(e,t={})=>{const r=e$(i,e),n=r&&r._f;if(n){const e=n.refs?n.refs[0]:n.ref;e.focus&&(e.focus(),t.shouldSelect&&e.select())}},getFieldState:C}}function xH(e={}){const t=i.useRef(),r=i.useRef(),[n,o]=i.useState({isDirty:!1,isValidating:!1,isLoading:R$(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,defaultValues:R$(e.defaultValues)?void 0:e.defaultValues});t.current||(t.current={...wH(e),formState:n});const a=t.current.control;return a._options=e,y$({subject:a._subjects.state,next:e=>{g$(e,a._proxyFormState,a._updateFormState,!0)&&o({...a._formState})}}),i.useEffect((()=>a._disableForm(e.disabled)),[a,e.disabled]),i.useEffect((()=>{if(a._proxyFormState.isDirty){const e=a._getDirty();e!==n.isDirty&&a._subjects.state.next({isDirty:e})}}),[a,n.isDirty]),i.useEffect((()=>{e.values&&!rH(e.values,r.current)?(a._reset(e.values,a._options.resetOptions),r.current=e.values,o((e=>({...e})))):a._resetDefaultValues()}),[e.values,a]),i.useEffect((()=>{e.errors&&a._setErrors(e.errors)}),[e.errors,a]),i.useEffect((()=>{a._state.mount||(a._updateValid(),a._state.mount=!0),a._state.watch&&(a._state.watch=!1,a._subjects.state.next({...a._formState})),a._removeUnmounted()})),i.useEffect((()=>{e.shouldUnregister&&a._subjects.values.next({values:a._getWatch()})}),[e.shouldUnregister,a]),t.current.formState=p$(n,a),t.current}const _H=new class extends gN{_isConnected=new vL;get isConnected(){return this._isConnected.promise}permissionManager;appMetadataManager;pendingRequests=[];constructor(e){super({storage:e&&e.storage?e.storage:new bN,...e}),this.permissionManager=new kN(this.storage),this.appMetadataManager=new _N(this.storage)}async init(){const e=await this.keyPair,t=new $z(this.name,e,this.storage,this.matrixNodes,this.iconUrl,this.appUrl);return super.init(t)}async connect(e){return this.handleResponse=async(t,r)=>{if("3"===t.version){const n=t;if(n.message.type===RL.Disconnect)return this.disconnect(n.senderId);this.pendingRequests.some((e=>e[0].id===t.id))||(this.pendingRequests.push([n,r]),await this.sendAcknowledgeResponse(n,r),await Vz.intercept({message:n,connectionInfo:r,appMetadataManager:this.appMetadataManager,interceptorCallback:e}))}else{const n=t;if(n.type===RL.Disconnect)return this.disconnect(n.senderId);this.pendingRequests.some((e=>e[0].id===t.id))||(this.pendingRequests.push([n,r]),"1"!==n.version&&await this.sendAcknowledgeResponse(n,r),await Vz.intercept({message:n,connectionInfo:r,appMetadataManager:this.appMetadataManager,interceptorCallback:e}))}},this._connect()}async getRegisterPushChallenge(e,t,r=eN){const n=(await hR.get(`${r}/challenge`)).data,i=SL(["Tezos Signed Message: ",n.id,n.timestamp,t,e].join(" "));return{challenge:n,payloadToSign:"0501"+i.length.toString(16).padStart(8,"0")+i}}async registerPush(e,t,r,n,i,o,a=eN){const s=await this.storage.get(FL.PUSH_TOKENS),c=s.find((e=>e.publicKey===n&&e.backendUrl===r));if(c)return c;const l=(await hR.post(`${a}/register`,{name:this.name,challenge:e,accountPublicKey:n,signature:t,backendUrl:r,protocolIdentifier:i,deviceId:o})).data,u={publicKey:n,backendUrl:r,accessToken:l.accessToken,managementToken:l.managementToken};return s.push(u),await this.storage.set(FL.PUSH_TOKENS,s),u}async _connect(){const e=await this.transport;e.connectionStatus===BL.NOT_CONNECTED&&(await e.connect(),e.addListener((async(e,t)=>{if("string"===typeof e){const r=await(new xN).deserialize(e);this.handleResponse(r,t)}})).catch((e=>Gz.log("_connect",e))),this._isConnected.resolve(!0))}async respond(e){Gz.log("RESPONSE",e);const t=this.pendingRequests.find((t=>t[0].id===e.id));if(!t)throw new Error("No matching request found!");this.pendingRequests=this.pendingRequests.filter((t=>t[0].id!==e.id)),await Wz.intercept({senderId:await dN(await this.beaconId),request:t[0],message:e,ownAppMetadata:await this.getOwnAppMetadata(),permissionManager:this.permissionManager,appMetadataManager:this.appMetadataManager,interceptorCallback:async e=>{await this.respondToMessage(e,t[1])}})}async getAppMetadataList(){return this.appMetadataManager.getAppMetadataList()}async getAppMetadata(e){return this.appMetadataManager.getAppMetadata(e)}async removeAppMetadata(e){return this.appMetadataManager.removeAppMetadata(e)}async removeAllAppMetadata(){return this.appMetadataManager.removeAllAppMetadata()}async getPermissions(){return this.permissionManager.getPermissions()}async getPermission(e){return this.permissionManager.getPermission(e)}async removePermission(e){return this.permissionManager.removePermission(e)}async removeAllPermissions(){return this.permissionManager.removeAllPermissions()}async getPeerInfo(e){const t=await dN(e.publicKey);return e instanceof YL?new XL(e.id,e.name,e.publicKey,e.version,t):e instanceof VL?new qL(e.id,e.name,e.publicKey,e.version,e.relayServer,t):e instanceof QL?new QL(e.id,e.name,e.publicKey,e.version,t,e.uri):{...e,senderId:t}}async addPeer(e,t=!0){return(await this.transport).addPeer(await this.getPeerInfo(e),t)}async removePeer(e,t=!1){const r=(await this.transport).removePeer(e);return await this.removePermissionsForPeers([e]),t&&await this.sendDisconnectToPeer(e),r}async removeAllPeers(e=!1){const t=await(await this.transport).getPeers(),r=(await this.transport).removeAllPeers();if(await this.removePermissionsForPeers(t),e){const e=t.map((e=>this.sendDisconnectToPeer(e)));await Promise.all(e)}return r}async removePermissionsForPeers(e){const t=await this.permissionManager.getPermissions(),r=e.map((e=>e.senderId)),n=t.filter((e=>r.includes(e.appMetadata.senderId))).map((e=>e.accountIdentifier));await this.permissionManager.removePermissions(n)}async sendAcknowledgeResponse(e,t){const r={id:e.id,type:RL.Acknowledge};await Wz.intercept({senderId:await dN(await this.beaconId),request:e,message:r,ownAppMetadata:await this.getOwnAppMetadata(),permissionManager:this.permissionManager,appMetadataManager:this.appMetadataManager,interceptorCallback:async e=>{await this.respondToMessage(e,t)}})}async respondToMessage(e,t){const r=await(new xN).serialize(e);if(t){const e=(await this.getPeers()).find((e=>e.publicKey===t.id));await(await this.transport).send(r,e)}else await(await this.transport).send(r)}async disconnect(e){const t=await this.transport,r=(await t.getPeers()).find((t=>t.senderId===e));r&&await this.removePeer(r)}}({name:"Umami",iconUrl:"",appUrl:"https://umamiwallet.com/"});var kH,[SH,EH]=rf({name:`${kH="Card"}StylesContext`,errorMessage:`useStyles: "styles" is undefined. Seems you forgot to wrap the components in "<${kH} />" `}),AH=v((function(e,t){const{className:r,children:n,direction:i="column",justify:o,align:a,...s}=ft(e),c=Mn("Card",e);return(0,xn.jsx)(wn.div,{ref:t,className:y("chakra-card",r),__css:{display:"flex",flexDirection:i,justifyContent:o,alignItems:a,position:"relative",minWidth:0,wordWrap:"break-word",...c.container},...s,children:(0,xn.jsx)(SH,{value:c,children:n})})})),PH=v((function(e,t){const{className:r,...n}=e,i=EH();return(0,xn.jsx)(wn.div,{ref:t,className:y("chakra-card__body",r),__css:i.body,...n})}));const OH=({value:e,space:t=2,...r})=>(0,xn.jsx)(AH,{background:AO.gray[700],borderRadius:"5px",...r,children:(0,xn.jsx)(PH,{children:(0,xn.jsx)("pre",{style:{whiteSpace:"pre-wrap",fontSize:"12px",lineHeight:"18px"},children:JSON.stringify(e,null,t)})})});var TH=v((function(e,t){var r;const n=In("FormLabel",e),i=ft(e),{className:o,children:a,requiredIndicator:s=(0,xn.jsx)(jH,{}),optionalIndicator:c=null,...l}=i,u=MF(),d=null!=(r=null==u?void 0:u.getLabelProps(l,t))?r:{ref:t,...l};return(0,xn.jsxs)(wn.label,{...d,className:y("chakra-form__label",i.className),__css:{display:"block",textAlign:"start",...n},children:[a,(null==u?void 0:u.isRequired)?s:c]})}));TH.displayName="FormLabel";var jH=v((function(e,t){const r=MF(),n=RF();if(!(null==r?void 0:r.isRequired))return null;const i=y("chakra-form__required-indicator",e.className);return(0,xn.jsx)(wn.span,{...null==r?void 0:r.getRequiredIndicatorProps(e,t),__css:n.requiredIndicator,className:i})}));function CH(e){return i.Children.toArray(e).filter((e=>(0,i.isValidElement)(e)))}jH.displayName="RequiredIndicator";var[RH,IH]=Nn({name:"InputGroupStylesContext",errorMessage:"useInputGroupStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),MH=v((function(e,t){const r=Mn("Input",e),{children:n,className:o,...a}=ft(e),s=y("chakra-input__group",o),c={},l=CH(n),u=r.field;l.forEach((e=>{var t,n;r&&(u&&"InputLeftElement"===e.type.id&&(c.paddingStart=null!=(t=u.height)?t:u.h),u&&"InputRightElement"===e.type.id&&(c.paddingEnd=null!=(n=u.height)?n:u.h),"InputRightAddon"===e.type.id&&(c.borderEndRadius=0),"InputLeftAddon"===e.type.id&&(c.borderStartRadius=0))}));const d=l.map((t=>{var r,n;const o=KU({size:(null==(r=t.props)?void 0:r.size)||e.size,variant:(null==(n=t.props)?void 0:n.variant)||e.variant});return"Input"!==t.type.id?(0,i.cloneElement)(t,o):(0,i.cloneElement)(t,Object.assign(o,c,t.props))}));return(0,xn.jsx)(wn.div,{className:s,ref:t,__css:{width:"100%",display:"flex",position:"relative",isolation:"isolate",...r.group},"data-group":!0,...a,children:(0,xn.jsx)(RH,{value:r,children:d})})}));function LH(e){const{isDisabled:t,isInvalid:r,isReadOnly:n,isRequired:i,...o}=NH(e);return{...o,disabled:t,readOnly:n,required:i,"aria-invalid":S(r),"aria-required":S(i),"aria-readonly":S(n)}}function NH(e){var t,r,n;const i=MF(),{id:o,disabled:a,readOnly:s,required:c,isRequired:l,isInvalid:u,isReadOnly:d,isDisabled:h,onFocus:f,onBlur:p,...m}=e,g=e["aria-describedby"]?[e["aria-describedby"]]:[];return(null==i?void 0:i.hasFeedbackText)&&(null==i?void 0:i.isInvalid)&&g.push(i.feedbackId),(null==i?void 0:i.hasHelpText)&&g.push(i.helpTextId),{...m,"aria-describedby":g.join(" ")||void 0,id:null!=o?o:null==i?void 0:i.id,isDisabled:null!=(t=null!=a?a:h)?t:null==i?void 0:i.isDisabled,isReadOnly:null!=(r=null!=s?s:d)?r:null==i?void 0:i.isReadOnly,isRequired:null!=(n=null!=c?c:l)?n:null==i?void 0:i.isRequired,isInvalid:null!=u?u:null==i?void 0:i.isInvalid,onFocus:E(null==i?void 0:i.onFocus,f),onBlur:E(null==i?void 0:i.onBlur,p)}}MH.displayName="InputGroup";var DH=v((function(e,t){const{htmlSize:r,...n}=e,i=Mn("Input",n),o=LH(ft(n)),a=y("chakra-input",e.className);return(0,xn.jsx)(wn.input,{size:r,...o,__css:i.field,ref:t,className:a})}));DH.displayName="Input",DH.id="Input";var zH=wn("div",{baseStyle:{display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",top:"0",zIndex:2}}),BH=v((function(e,t){var r,n;const{placement:i="left",...o}=e,a=IH(),s=a.field,c={["left"===i?"insetStart":"insetEnd"]:"0",width:null!=(r=null==s?void 0:s.height)?r:null==s?void 0:s.h,height:null!=(n=null==s?void 0:s.height)?n:null==s?void 0:s.h,fontSize:null==s?void 0:s.fontSize,...a.element};return(0,xn.jsx)(zH,{ref:t,__css:c,...o})}));BH.id="InputElement",BH.displayName="InputElement";var UH=v((function(e,t){const{className:r,...n}=e,i=y("chakra-input__left-element",r);return(0,xn.jsx)(BH,{ref:t,placement:"left",className:i,...n})}));UH.id="InputLeftElement",UH.displayName="InputLeftElement";var FH=v((function(e,t){const{className:r,...n}=e,i=y("chakra-input__right-element",r);return(0,xn.jsx)(BH,{ref:t,placement:"right",className:i,...n})}));FH.id="InputRightElement",FH.displayName="InputRightElement";var[$H,HH]=Nn({name:"ListStylesContext",errorMessage:"useListStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),VH=v((function(e,t){const r=Mn("List",e),{children:n,styleType:i="none",stylePosition:o,spacing:a,...s}=ft(e),c=CH(n),l=a?{"& > *:not(style) ~ *:not(style)":{mt:a}}:{};return(0,xn.jsx)($H,{value:r,children:(0,xn.jsx)(wn.ul,{ref:t,listStyleType:i,listStylePosition:o,role:"list",__css:{...r.container,...l},...s,children:c})})}));VH.displayName="List";var qH=v(((e,t)=>{const{as:r,...n}=e;return(0,xn.jsx)(VH,{ref:t,as:"ol",styleType:"decimal",marginStart:"1em",...n})}));qH.displayName="OrderedList";var KH=v((function(e,t){const{as:r,...n}=e;return(0,xn.jsx)(VH,{ref:t,as:"ul",styleType:"initial",marginStart:"1em",...n})}));KH.displayName="UnorderedList";var WH=v((function(e,t){const r=HH();return(0,xn.jsx)(wn.li,{ref:t,...e,__css:r.item})}));WH.displayName="ListItem";var GH=v((function(e,t){const r=HH();return(0,xn.jsx)(NP,{ref:t,role:"presentation",...e,__css:r.icon})}));GH.displayName="ListIcon";var ZH={exit:{scale:.85,opacity:0,transition:{opacity:{duration:.15,easings:"easeInOut"},scale:{duration:.2,easings:"easeInOut"}}},enter:{scale:1,opacity:1,transition:{opacity:{easings:"easeOut",duration:.2},scale:{duration:.2,ease:[.175,.885,.4,1.1]}}}};function YH(e){return["html","body","#document"].includes(e.localName)?e.ownerDocument.body:CU(e)&&function(e){const t=e.ownerDocument.defaultView||window,{overflow:r,overflowX:n,overflowY:i}=t.getComputedStyle(e);return/auto|scroll|overlay|hidden/.test(r+i+n)}(e)?e:YH(function(e){return"html"===e.localName?e:e.assignedSlot||e.parentElement||e.ownerDocument.documentElement}(e))}var XH=(e,t)=>({var:e,varRef:t?`var(${e}, ${t})`:`var(${e})`}),JH={arrowShadowColor:XH("--popper-arrow-shadow-color"),arrowSize:XH("--popper-arrow-size","8px"),arrowSizeHalf:XH("--popper-arrow-size-half"),arrowBg:XH("--popper-arrow-bg"),transformOrigin:XH("--popper-transform-origin"),arrowOffset:XH("--popper-arrow-offset")};var QH={top:"bottom center","top-start":"bottom left","top-end":"bottom right",bottom:"top center","bottom-start":"top left","bottom-end":"top right",left:"right center","left-start":"right top","left-end":"right bottom",right:"left center","right-start":"left top","right-end":"left bottom"},eV={scroll:!0,resize:!0};function tV(e){let t;return t="object"===typeof e?{enabled:!0,options:{...eV,...e}}:{enabled:e,options:eV},t}var rV={name:"matchWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:({state:e})=>{e.styles.popper.width=`${e.rects.reference.width}px`},effect:({state:e})=>()=>{const t=e.elements.reference;e.elements.popper.style.width=`${t.offsetWidth}px`}},nV={name:"transformOrigin",enabled:!0,phase:"write",fn:({state:e})=>{iV(e)},effect:({state:e})=>()=>{iV(e)}},iV=e=>{var t;e.elements.popper.style.setProperty(JH.transformOrigin.var,(t=e.placement,QH[t]))},oV={name:"positionArrow",enabled:!0,phase:"afterWrite",fn:({state:e})=>{aV(e)}},aV=e=>{var t;if(!e.placement)return;const r=sV(e.placement);if((null==(t=e.elements)?void 0:t.arrow)&&r){Object.assign(e.elements.arrow.style,{[r.property]:r.value,width:JH.arrowSize.varRef,height:JH.arrowSize.varRef,zIndex:-1});const t={[JH.arrowSizeHalf.var]:`calc(${JH.arrowSize.varRef} / 2 - 1px)`,[JH.arrowOffset.var]:`calc(${JH.arrowSizeHalf.varRef} * -1)`};for(const r in t)e.elements.arrow.style.setProperty(r,t[r])}},sV=e=>e.startsWith("top")?{property:"bottom",value:JH.arrowOffset.varRef}:e.startsWith("bottom")?{property:"top",value:JH.arrowOffset.varRef}:e.startsWith("left")?{property:"right",value:JH.arrowOffset.varRef}:e.startsWith("right")?{property:"left",value:JH.arrowOffset.varRef}:void 0,cV={name:"innerArrow",enabled:!0,phase:"main",requires:["arrow"],fn:({state:e})=>{lV(e)},effect:({state:e})=>()=>{lV(e)}},lV=e=>{if(!e.elements.arrow)return;const t=e.elements.arrow.querySelector("[data-popper-arrow-inner]");if(!t)return;const r=(n=e.placement).includes("top")?"1px 1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("bottom")?"-1px -1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("right")?"-1px 1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("left")?"1px -1px 0px 0 var(--popper-arrow-shadow-color)":void 0;var n;r&&t.style.setProperty("--popper-arrow-default-shadow",r),Object.assign(t.style,{transform:"rotate(45deg)",background:JH.arrowBg.varRef,top:0,left:0,width:"100%",height:"100%",position:"absolute",zIndex:"inherit",boxShadow:"var(--popper-arrow-shadow, var(--popper-arrow-default-shadow))"})},uV={"start-start":{ltr:"left-start",rtl:"right-start"},"start-end":{ltr:"left-end",rtl:"right-end"},"end-start":{ltr:"right-start",rtl:"left-start"},"end-end":{ltr:"right-end",rtl:"left-end"},start:{ltr:"left",rtl:"right"},end:{ltr:"right",rtl:"left"}},dV={"auto-start":"auto-end","auto-end":"auto-start","top-start":"top-end","top-end":"top-start","bottom-start":"bottom-end","bottom-end":"bottom-start"};function hV(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function fV(e){return e instanceof hV(e).Element||e instanceof Element}function pV(e){return e instanceof hV(e).HTMLElement||e instanceof HTMLElement}function mV(e){return"undefined"!==typeof ShadowRoot&&(e instanceof hV(e).ShadowRoot||e instanceof ShadowRoot)}var gV=Math.max,vV=Math.min,yV=Math.round;function bV(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function wV(){return!/^((?!chrome|android).)*safari/i.test(bV())}function xV(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=!1);var n=e.getBoundingClientRect(),i=1,o=1;t&&pV(e)&&(i=e.offsetWidth>0&&yV(n.width)/e.offsetWidth||1,o=e.offsetHeight>0&&yV(n.height)/e.offsetHeight||1);var a=(fV(e)?hV(e):window).visualViewport,s=!wV()&&r,c=(n.left+(s&&a?a.offsetLeft:0))/i,l=(n.top+(s&&a?a.offsetTop:0))/o,u=n.width/i,d=n.height/o;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c,x:c,y:l}}function _V(e){var t=hV(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function kV(e){return e?(e.nodeName||"").toLowerCase():null}function SV(e){return((fV(e)?e.ownerDocument:e.document)||window.document).documentElement}function EV(e){return xV(SV(e)).left+_V(e).scrollLeft}function AV(e){return hV(e).getComputedStyle(e)}function PV(e){var t=AV(e),r=t.overflow,n=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+i+n)}function OV(e,t,r){void 0===r&&(r=!1);var n=pV(t),i=pV(t)&&function(e){var t=e.getBoundingClientRect(),r=yV(t.width)/e.offsetWidth||1,n=yV(t.height)/e.offsetHeight||1;return 1!==r||1!==n}(t),o=SV(t),a=xV(e,i,r),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(n||!n&&!r)&&(("body"!==kV(t)||PV(o))&&(s=function(e){return e!==hV(e)&&pV(e)?{scrollLeft:(t=e).scrollLeft,scrollTop:t.scrollTop}:_V(e);var t}(t)),pV(t)?((c=xV(t,!0)).x+=t.clientLeft,c.y+=t.clientTop):o&&(c.x=EV(o))),{x:a.left+s.scrollLeft-c.x,y:a.top+s.scrollTop-c.y,width:a.width,height:a.height}}function TV(e){var t=xV(e),r=e.offsetWidth,n=e.offsetHeight;return Math.abs(t.width-r)<=1&&(r=t.width),Math.abs(t.height-n)<=1&&(n=t.height),{x:e.offsetLeft,y:e.offsetTop,width:r,height:n}}function jV(e){return"html"===kV(e)?e:e.assignedSlot||e.parentNode||(mV(e)?e.host:null)||SV(e)}function CV(e){return["html","body","#document"].indexOf(kV(e))>=0?e.ownerDocument.body:pV(e)&&PV(e)?e:CV(jV(e))}function RV(e,t){var r;void 0===t&&(t=[]);var n=CV(e),i=n===(null==(r=e.ownerDocument)?void 0:r.body),o=hV(n),a=i?[o].concat(o.visualViewport||[],PV(n)?n:[]):n,s=t.concat(a);return i?s:s.concat(RV(jV(a)))}function IV(e){return["table","td","th"].indexOf(kV(e))>=0}function MV(e){return pV(e)&&"fixed"!==AV(e).position?e.offsetParent:null}function LV(e){for(var t=hV(e),r=MV(e);r&&IV(r)&&"static"===AV(r).position;)r=MV(r);return r&&("html"===kV(r)||"body"===kV(r)&&"static"===AV(r).position)?t:r||function(e){var t=/firefox/i.test(bV());if(/Trident/i.test(bV())&&pV(e)&&"fixed"===AV(e).position)return null;var r=jV(e);for(mV(r)&&(r=r.host);pV(r)&&["html","body"].indexOf(kV(r))<0;){var n=AV(r);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||t&&"filter"===n.willChange||t&&n.filter&&"none"!==n.filter)return r;r=r.parentNode}return null}(e)||t}var NV="top",DV="bottom",zV="right",BV="left",UV="auto",FV=[NV,DV,zV,BV],$V="start",HV="end",VV="clippingParents",qV="viewport",KV="popper",WV="reference",GV=FV.reduce((function(e,t){return e.concat([t+"-"+$V,t+"-"+HV])}),[]),ZV=[].concat(FV,[UV]).reduce((function(e,t){return e.concat([t,t+"-"+$V,t+"-"+HV])}),[]),YV=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function XV(e){var t=new Map,r=new Set,n=[];function i(e){r.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!r.has(e)){var n=t.get(e);n&&i(n)}})),n.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){r.has(e.name)||i(e)})),n}function JV(e){var t;return function(){return t||(t=new Promise((function(r){Promise.resolve().then((function(){t=void 0,r(e())}))}))),t}}var QV={placement:"bottom",modifiers:[],strategy:"absolute"};function eq(){for(var e=arguments.length,t=new Array(e),r=0;r=0?"x":"y"}function sq(e){var t,r=e.reference,n=e.element,i=e.placement,o=i?iq(i):null,a=i?oq(i):null,s=r.x+r.width/2-n.width/2,c=r.y+r.height/2-n.height/2;switch(o){case NV:t={x:s,y:r.y-n.height};break;case DV:t={x:s,y:r.y+r.height};break;case zV:t={x:r.x+r.width,y:c};break;case BV:t={x:r.x-n.width,y:c};break;default:t={x:r.x,y:r.y}}var l=o?aq(o):null;if(null!=l){var u="y"===l?"height":"width";switch(a){case $V:t[l]=t[l]-(r[u]/2-n[u]/2);break;case HV:t[l]=t[l]+(r[u]/2-n[u]/2)}}return t}const cq={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,r=e.name;t.modifiersData[r]=sq({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};var lq={top:"auto",right:"auto",bottom:"auto",left:"auto"};function uq(e){var t,r=e.popper,n=e.popperRect,i=e.placement,o=e.variation,a=e.offsets,s=e.position,c=e.gpuAcceleration,l=e.adaptive,u=e.roundOffsets,d=e.isFixed,h=a.x,f=void 0===h?0:h,p=a.y,m=void 0===p?0:p,g="function"===typeof u?u({x:f,y:m}):{x:f,y:m};f=g.x,m=g.y;var v=a.hasOwnProperty("x"),y=a.hasOwnProperty("y"),b=BV,w=NV,x=window;if(l){var _=LV(r),k="clientHeight",S="clientWidth";if(_===hV(r)&&"static"!==AV(_=SV(r)).position&&"absolute"===s&&(k="scrollHeight",S="scrollWidth"),i===NV||(i===BV||i===zV)&&o===HV)w=DV,m-=(d&&_===x&&x.visualViewport?x.visualViewport.height:_[k])-n.height,m*=c?1:-1;if(i===BV||(i===NV||i===DV)&&o===HV)b=zV,f-=(d&&_===x&&x.visualViewport?x.visualViewport.width:_[S])-n.width,f*=c?1:-1}var E,A=Object.assign({position:s},l&&lq),P=!0===u?function(e,t){var r=e.x,n=e.y,i=t.devicePixelRatio||1;return{x:yV(r*i)/i||0,y:yV(n*i)/i||0}}({x:f,y:m},hV(r)):{x:f,y:m};return f=P.x,m=P.y,c?Object.assign({},A,((E={})[w]=y?"0":"",E[b]=v?"0":"",E.transform=(x.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",E)):Object.assign({},A,((t={})[w]=y?m+"px":"",t[b]=v?f+"px":"",t.transform="",t))}const dq={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,r=e.options,n=r.gpuAcceleration,i=void 0===n||n,o=r.adaptive,a=void 0===o||o,s=r.roundOffsets,c=void 0===s||s,l={placement:iq(t.placement),variation:oq(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,uq(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:c})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,uq(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};const hq={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var r=t.styles[e]||{},n=t.attributes[e]||{},i=t.elements[e];pV(i)&&kV(i)&&(Object.assign(i.style,r),Object.keys(n).forEach((function(e){var t=n[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,r.popper),t.styles=r,t.elements.arrow&&Object.assign(t.elements.arrow.style,r.arrow),function(){Object.keys(t.elements).forEach((function(e){var n=t.elements[e],i=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:r[e]).reduce((function(e,t){return e[t]="",e}),{});pV(n)&&kV(n)&&(Object.assign(n.style,o),Object.keys(i).forEach((function(e){n.removeAttribute(e)})))}))}},requires:["computeStyles"]};const fq={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,r=e.options,n=e.name,i=r.offset,o=void 0===i?[0,0]:i,a=ZV.reduce((function(e,r){return e[r]=function(e,t,r){var n=iq(e),i=[BV,NV].indexOf(n)>=0?-1:1,o="function"===typeof r?r(Object.assign({},t,{placement:e})):r,a=o[0],s=o[1];return a=a||0,s=(s||0)*i,[BV,zV].indexOf(n)>=0?{x:s,y:a}:{x:a,y:s}}(r,t.rects,o),e}),{}),s=a[t.placement],c=s.x,l=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[n]=a}};var pq={left:"right",right:"left",bottom:"top",top:"bottom"};function mq(e){return e.replace(/left|right|bottom|top/g,(function(e){return pq[e]}))}var gq={start:"end",end:"start"};function vq(e){return e.replace(/start|end/g,(function(e){return gq[e]}))}function yq(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&mV(r)){var n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function bq(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function wq(e,t,r){return t===qV?bq(function(e,t){var r=hV(e),n=SV(e),i=r.visualViewport,o=n.clientWidth,a=n.clientHeight,s=0,c=0;if(i){o=i.width,a=i.height;var l=wV();(l||!l&&"fixed"===t)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:o,height:a,x:s+EV(e),y:c}}(e,r)):fV(t)?function(e,t){var r=xV(e,!1,"fixed"===t);return r.top=r.top+e.clientTop,r.left=r.left+e.clientLeft,r.bottom=r.top+e.clientHeight,r.right=r.left+e.clientWidth,r.width=e.clientWidth,r.height=e.clientHeight,r.x=r.left,r.y=r.top,r}(t,r):bq(function(e){var t,r=SV(e),n=_V(e),i=null==(t=e.ownerDocument)?void 0:t.body,o=gV(r.scrollWidth,r.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=gV(r.scrollHeight,r.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),s=-n.scrollLeft+EV(e),c=-n.scrollTop;return"rtl"===AV(i||r).direction&&(s+=gV(r.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:s,y:c}}(SV(e)))}function xq(e,t,r,n){var i="clippingParents"===t?function(e){var t=RV(jV(e)),r=["absolute","fixed"].indexOf(AV(e).position)>=0&&pV(e)?LV(e):e;return fV(r)?t.filter((function(e){return fV(e)&&yq(e,r)&&"body"!==kV(e)})):[]}(e):[].concat(t),o=[].concat(i,[r]),a=o[0],s=o.reduce((function(t,r){var i=wq(e,r,n);return t.top=gV(i.top,t.top),t.right=vV(i.right,t.right),t.bottom=vV(i.bottom,t.bottom),t.left=gV(i.left,t.left),t}),wq(e,a,n));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function _q(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function kq(e,t){return t.reduce((function(t,r){return t[r]=e,t}),{})}function Sq(e,t){void 0===t&&(t={});var r=t,n=r.placement,i=void 0===n?e.placement:n,o=r.strategy,a=void 0===o?e.strategy:o,s=r.boundary,c=void 0===s?VV:s,l=r.rootBoundary,u=void 0===l?qV:l,d=r.elementContext,h=void 0===d?KV:d,f=r.altBoundary,p=void 0!==f&&f,m=r.padding,g=void 0===m?0:m,v=_q("number"!==typeof g?g:kq(g,FV)),y=h===KV?WV:KV,b=e.rects.popper,w=e.elements[p?y:h],x=xq(fV(w)?w:w.contextElement||SV(e.elements.popper),c,u,a),_=xV(e.elements.reference),k=sq({reference:_,element:b,strategy:"absolute",placement:i}),S=bq(Object.assign({},b,k)),E=h===KV?S:_,A={top:x.top-E.top+v.top,bottom:E.bottom-x.bottom+v.bottom,left:x.left-E.left+v.left,right:E.right-x.right+v.right},P=e.modifiersData.offset;if(h===KV&&P){var O=P[i];Object.keys(A).forEach((function(e){var t=[zV,DV].indexOf(e)>=0?1:-1,r=[NV,DV].indexOf(e)>=0?"y":"x";A[e]+=O[r]*t}))}return A}const Eq={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,r=e.options,n=e.name;if(!t.modifiersData[n]._skip){for(var i=r.mainAxis,o=void 0===i||i,a=r.altAxis,s=void 0===a||a,c=r.fallbackPlacements,l=r.padding,u=r.boundary,d=r.rootBoundary,h=r.altBoundary,f=r.flipVariations,p=void 0===f||f,m=r.allowedAutoPlacements,g=t.options.placement,v=iq(g),y=c||(v===g||!p?[mq(g)]:function(e){if(iq(e)===UV)return[];var t=mq(e);return[vq(e),t,vq(t)]}(g)),b=[g].concat(y).reduce((function(e,r){return e.concat(iq(r)===UV?function(e,t){void 0===t&&(t={});var r=t,n=r.placement,i=r.boundary,o=r.rootBoundary,a=r.padding,s=r.flipVariations,c=r.allowedAutoPlacements,l=void 0===c?ZV:c,u=oq(n),d=u?s?GV:GV.filter((function(e){return oq(e)===u})):FV,h=d.filter((function(e){return l.indexOf(e)>=0}));0===h.length&&(h=d);var f=h.reduce((function(t,r){return t[r]=Sq(e,{placement:r,boundary:i,rootBoundary:o,padding:a})[iq(r)],t}),{});return Object.keys(f).sort((function(e,t){return f[e]-f[t]}))}(t,{placement:r,boundary:u,rootBoundary:d,padding:l,flipVariations:p,allowedAutoPlacements:m}):r)}),[]),w=t.rects.reference,x=t.rects.popper,_=new Map,k=!0,S=b[0],E=0;E=0,j=T?"width":"height",C=Sq(t,{placement:A,boundary:u,rootBoundary:d,altBoundary:h,padding:l}),R=T?O?zV:BV:O?DV:NV;w[j]>x[j]&&(R=mq(R));var I=mq(R),M=[];if(o&&M.push(C[P]<=0),s&&M.push(C[R]<=0,C[I]<=0),M.every((function(e){return e}))){S=A,k=!1;break}_.set(A,M)}if(k)for(var L=function(e){var t=b.find((function(t){var r=_.get(t);if(r)return r.slice(0,e).every((function(e){return e}))}));if(t)return S=t,"break"},N=p?3:1;N>0;N--){if("break"===L(N))break}t.placement!==S&&(t.modifiersData[n]._skip=!0,t.placement=S,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function Aq(e,t,r){return gV(e,vV(t,r))}const Pq={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,r=e.options,n=e.name,i=r.mainAxis,o=void 0===i||i,a=r.altAxis,s=void 0!==a&&a,c=r.boundary,l=r.rootBoundary,u=r.altBoundary,d=r.padding,h=r.tether,f=void 0===h||h,p=r.tetherOffset,m=void 0===p?0:p,g=Sq(t,{boundary:c,rootBoundary:l,padding:d,altBoundary:u}),v=iq(t.placement),y=oq(t.placement),b=!y,w=aq(v),x="x"===w?"y":"x",_=t.modifiersData.popperOffsets,k=t.rects.reference,S=t.rects.popper,E="function"===typeof m?m(Object.assign({},t.rects,{placement:t.placement})):m,A="number"===typeof E?{mainAxis:E,altAxis:E}:Object.assign({mainAxis:0,altAxis:0},E),P=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,O={x:0,y:0};if(_){if(o){var T,j="y"===w?NV:BV,C="y"===w?DV:zV,R="y"===w?"height":"width",I=_[w],M=I+g[j],L=I-g[C],N=f?-S[R]/2:0,D=y===$V?k[R]:S[R],z=y===$V?-S[R]:-k[R],B=t.elements.arrow,U=f&&B?TV(B):{width:0,height:0},F=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},$=F[j],H=F[C],V=Aq(0,k[R],U[R]),q=b?k[R]/2-N-V-$-A.mainAxis:D-V-$-A.mainAxis,K=b?-k[R]/2+N+V+H+A.mainAxis:z+V+H+A.mainAxis,W=t.elements.arrow&&LV(t.elements.arrow),G=W?"y"===w?W.clientTop||0:W.clientLeft||0:0,Z=null!=(T=null==P?void 0:P[w])?T:0,Y=I+K-Z,X=Aq(f?vV(M,I+q-Z-G):M,I,f?gV(L,Y):L);_[w]=X,O[w]=X-I}if(s){var J,Q="x"===w?NV:BV,ee="x"===w?DV:zV,te=_[x],re="y"===x?"height":"width",ne=te+g[Q],ie=te-g[ee],oe=-1!==[NV,BV].indexOf(v),ae=null!=(J=null==P?void 0:P[x])?J:0,se=oe?ne:te-k[re]-S[re]-ae+A.altAxis,ce=oe?te+k[re]+S[re]-ae-A.altAxis:ie,le=f&&oe?function(e,t,r){var n=Aq(e,t,r);return n>r?r:n}(se,te,ce):Aq(f?se:ne,te,f?ce:ie);_[x]=le,O[x]=le-te}t.modifiersData[n]=O}},requiresIfExists:["offset"]};const Oq={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,r=e.state,n=e.name,i=e.options,o=r.elements.arrow,a=r.modifiersData.popperOffsets,s=iq(r.placement),c=aq(s),l=[BV,zV].indexOf(s)>=0?"height":"width";if(o&&a){var u=function(e,t){return _q("number"!==typeof(e="function"===typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:kq(e,FV))}(i.padding,r),d=TV(o),h="y"===c?NV:BV,f="y"===c?DV:zV,p=r.rects.reference[l]+r.rects.reference[c]-a[c]-r.rects.popper[l],m=a[c]-r.rects.reference[c],g=LV(o),v=g?"y"===c?g.clientHeight||0:g.clientWidth||0:0,y=p/2-m/2,b=u[h],w=v-d[l]-u[f],x=v/2-d[l]/2+y,_=Aq(b,x,w),k=c;r.modifiersData[n]=((t={})[k]=_,t.centerOffset=_-x,t)}},effect:function(e){var t=e.state,r=e.options.element,n=void 0===r?"[data-popper-arrow]":r;null!=n&&("string"!==typeof n||(n=t.elements.popper.querySelector(n)))&&yq(t.elements.popper,n)&&(t.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Tq(e,t,r){return void 0===r&&(r={x:0,y:0}),{top:e.top-t.height-r.y,right:e.right-t.width+r.x,bottom:e.bottom-t.height+r.y,left:e.left-t.width-r.x}}function jq(e){return[NV,zV,DV,BV].some((function(t){return e[t]>=0}))}const Cq={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,r=e.name,n=t.rects.reference,i=t.rects.popper,o=t.modifiersData.preventOverflow,a=Sq(t,{elementContext:"reference"}),s=Sq(t,{altBoundary:!0}),c=Tq(a,n),l=Tq(s,i,o),u=jq(c),d=jq(l);t.modifiersData[r]={referenceClippingOffsets:c,popperEscapeOffsets:l,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}};var Rq=tq({defaultModifiers:[nq,cq,dq,hq,fq,Eq,Pq,Oq,Cq]});function Iq(e={}){const{enabled:t=!0,modifiers:r,placement:n="bottom",strategy:o="absolute",arrowPadding:a=8,eventListeners:s=!0,offset:c,gutter:l=8,flip:u=!0,boundary:d="clippingParents",preventOverflow:h=!0,matchWidth:f,direction:p="ltr"}=e,m=(0,i.useRef)(null),g=(0,i.useRef)(null),v=(0,i.useRef)(null),y=function(e,t="ltr"){var r,n;const i=(null==(r=uV[e])?void 0:r[t])||e;return"ltr"===t?i:null!=(n=dV[e])?n:i}(n,p),b=(0,i.useRef)((()=>{})),w=(0,i.useCallback)((()=>{var e;t&&m.current&&g.current&&(null==(e=b.current)||e.call(b),v.current=Rq(m.current,g.current,{placement:y,modifiers:[cV,oV,nV,{...rV,enabled:!!f},{name:"eventListeners",...tV(s)},{name:"arrow",options:{padding:a}},{name:"offset",options:{offset:null!=c?c:[0,l]}},{name:"flip",enabled:!!u,options:{padding:8}},{name:"preventOverflow",enabled:!!h,options:{boundary:d}},...null!=r?r:[]],strategy:o}),v.current.forceUpdate(),b.current=v.current.destroy)}),[y,t,r,f,s,a,c,l,u,h,d,o]);(0,i.useEffect)((()=>()=>{var e;m.current||g.current||(null==(e=v.current)||e.destroy(),v.current=null)}),[]);const x=(0,i.useCallback)((e=>{m.current=e,w()}),[w]),_=(0,i.useCallback)(((e={},t=null)=>({...e,ref:Kn(x,t)})),[x]),k=(0,i.useCallback)((e=>{g.current=e,w()}),[w]),S=(0,i.useCallback)(((e={},t=null)=>({...e,ref:Kn(k,t),style:{...e.style,position:o,minWidth:f?void 0:"max-content",inset:"0 auto auto 0"}})),[o,k,f]),E=(0,i.useCallback)(((e={},t=null)=>{const{size:r,shadowColor:n,bg:i,style:o,...a}=e;return{...a,ref:t,"data-popper-arrow":"",style:Mq(e)}}),[]),A=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,"data-popper-arrow-inner":""})),[]);return{update(){var e;null==(e=v.current)||e.update()},forceUpdate(){var e;null==(e=v.current)||e.forceUpdate()},transformOrigin:JH.transformOrigin.varRef,referenceRef:x,popperRef:k,getPopperProps:S,getArrowProps:E,getArrowInnerProps:A,getReferenceProps:_}}function Mq(e){const{size:t,shadowColor:r,bg:n,style:i}=e,o={...i,position:"absolute"};return t&&(o["--popper-arrow-size"]=t),r&&(o["--popper-arrow-shadow-color"]=r),n&&(o["--popper-arrow-bg"]=n),o}function Lq(e={}){const{onClose:t,onOpen:r,isOpen:n,id:o}=e,a=uw(r),s=uw(t),[c,l]=(0,i.useState)(e.defaultIsOpen||!1),u=void 0!==n?n:c,d=void 0!==n,h=(0,i.useId)(),f=null!=o?o:`disclosure-${h}`,p=(0,i.useCallback)((()=>{d||l(!1),null==s||s()}),[d,s]),m=(0,i.useCallback)((()=>{d||l(!0),null==a||a()}),[d,a]),g=(0,i.useCallback)((()=>{u?p():m()}),[u,m,p]);return{isOpen:u,onOpen:m,onClose:p,onToggle:g,isControlled:d,getButtonProps:function(e={}){return{...e,"aria-expanded":u,"aria-controls":f,onClick(t){var r;null==(r=e.onClick)||r.call(e,t),g()}}},getDisclosureProps:function(e={}){return{...e,hidden:!u,id:f}}}}function Nq(e,t,r,n){const o=uw(r);return(0,i.useEffect)((()=>{const i="function"===typeof e?e():null!=e?e:document;if(r&&i)return i.addEventListener(t,o,n),()=>{i.removeEventListener(t,o,n)}}),[t,e,n,o,r]),()=>{const r="function"===typeof e?e():null!=e?e:document;null==r||r.removeEventListener(t,o,n)}}var Dq=e=>{var t;return(null==(t=e.current)?void 0:t.ownerDocument)||document},zq=e=>{var t,r;return(null==(r=null==(t=e.current)?void 0:t.ownerDocument)?void 0:r.defaultView)||window};function Bq(e={}){const{openDelay:t=0,closeDelay:r=0,closeOnClick:n=!0,closeOnMouseDown:o,closeOnScroll:a,closeOnPointerDown:s=o,closeOnEsc:c=!0,onOpen:l,onClose:u,placement:d,id:h,isOpen:f,defaultIsOpen:p,arrowSize:m=10,arrowShadowColor:g,arrowPadding:v,modifiers:y,isDisabled:b,gutter:w,offset:x,direction:_,...k}=e,{isOpen:S,onOpen:A,onClose:P}=Lq({isOpen:f,defaultIsOpen:p,onOpen:l,onClose:u}),{referenceRef:O,getPopperProps:T,getArrowInnerProps:j,getArrowProps:C}=Iq({enabled:S,placement:d,arrowPadding:v,modifiers:y,gutter:w,offset:x,direction:_}),R=(0,i.useId)(),I=`tooltip-${null!=h?h:R}`,M=(0,i.useRef)(null),L=(0,i.useRef)(),N=(0,i.useCallback)((()=>{L.current&&(clearTimeout(L.current),L.current=void 0)}),[]),D=(0,i.useRef)(),z=(0,i.useCallback)((()=>{D.current&&(clearTimeout(D.current),D.current=void 0)}),[]),B=(0,i.useCallback)((()=>{z(),P()}),[P,z]),U=function(e,t){return(0,i.useEffect)((()=>{const r=Dq(e);return r.addEventListener(Uq,t),()=>r.removeEventListener(Uq,t)}),[t,e]),()=>{const t=Dq(e),r=zq(e);t.dispatchEvent(new r.CustomEvent(Uq))}}(M,B),F=(0,i.useCallback)((()=>{if(!b&&!L.current){S&&U();const e=zq(M);L.current=e.setTimeout(A,t)}}),[U,b,S,A,t]),$=(0,i.useCallback)((()=>{N();const e=zq(M);D.current=e.setTimeout(B,r)}),[r,B,N]),H=(0,i.useCallback)((()=>{S&&n&&$()}),[n,$,S]),V=(0,i.useCallback)((()=>{S&&s&&$()}),[s,$,S]),q=(0,i.useCallback)((e=>{S&&"Escape"===e.key&&$()}),[S,$]);Nq((()=>Dq(M)),"keydown",c?q:void 0),Nq((()=>{if(!a)return null;const e=M.current;if(!e)return null;const t=YH(e);return"body"===t.localName?zq(M):t}),"scroll",(()=>{S&&a&&B()}),{passive:!0,capture:!0}),(0,i.useEffect)((()=>{b&&(N(),S&&P())}),[b,S,P,N]),(0,i.useEffect)((()=>()=>{N(),z()}),[N,z]),Nq((()=>M.current),"pointerleave",$);const K=(0,i.useCallback)(((e={},t=null)=>{const r={...e,ref:Kn(M,t,O),onPointerEnter:E(e.onPointerEnter,(e=>{"touch"!==e.pointerType&&F()})),onClick:E(e.onClick,H),onPointerDown:E(e.onPointerDown,V),onFocus:E(e.onFocus,F),onBlur:E(e.onBlur,$),"aria-describedby":S?I:void 0};return r}),[F,$,V,S,I,H,O]),W=(0,i.useCallback)(((e={},t=null)=>T({...e,style:{...e.style,[JH.arrowSize.var]:m?`${m}px`:void 0,[JH.arrowShadowColor.var]:g}},t)),[T,m,g]),G=(0,i.useCallback)(((e={},t=null)=>{const r={...e.style,position:"relative",transformOrigin:JH.transformOrigin.varRef};return{ref:t,...k,...e,id:I,role:"tooltip",style:r}}),[k,I]);return{isOpen:S,show:F,hide:$,getTriggerProps:K,getTooltipProps:G,getTooltipPositionerProps:W,getArrowProps:C,getArrowInnerProps:j}}var Uq="chakra-ui:close-tooltip";var Fq=wn(CP.div),$q=v(((e,t)=>{var r,n;const o=In("Tooltip",e),a=ft(e),s=On(),{children:c,label:l,shouldWrapChildren:u,"aria-label":d,hasArrow:h,bg:f,portalProps:p,background:m,backgroundColor:g,bgColor:v,motionProps:y,...b}=a,w=null!=(n=null!=(r=null!=m?m:g)?r:f)?n:v;if(w){o.bg=w;const e=function(e,t,r){var n,i,o;return null!=(o=null==(i=null==(n=e.__cssMap)?void 0:n[`${t}.${r}`])?void 0:i.varRef)?o:r}(s,"colors",w);o[JH.arrowBg.var]=e}const x=Bq({...b,direction:s.direction});let _;if("string"===typeof c||u)_=(0,xn.jsx)(wn.span,{display:"inline-block",tabIndex:0,...x.getTriggerProps(),children:c});else{const e=i.Children.only(c);_=(0,i.cloneElement)(e,x.getTriggerProps(e.props,e.ref))}const k=!!d,S=x.getTooltipProps({},t),E=k?function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(S,["role","id"]):S,A=function(e,t){const r={};for(const n of t)n in e&&(r[n]=e[n]);return r}(S,["role","id"]);return l?(0,xn.jsxs)(xn.Fragment,{children:[_,(0,xn.jsx)(oO,{children:x.isOpen&&(0,xn.jsx)(hO,{...p,children:(0,xn.jsx)(wn.div,{...x.getTooltipPositionerProps(),__css:{zIndex:o.zIndex,pointerEvents:"none"},children:(0,xn.jsxs)(Fq,{variants:ZH,initial:"exit",animate:"enter",exit:"exit",...y,...E,__css:o,children:[l,k&&(0,xn.jsx)(wn.span,{srOnly:!0,...A,children:d}),h&&(0,xn.jsx)(wn.div,{"data-popper-arrow":!0,className:"chakra-tooltip__arrow-wrapper",children:(0,xn.jsx)(wn.div,{"data-popper-arrow-inner":!0,className:"chakra-tooltip__arrow",__css:{bg:o.bg}})})]})})})})]}):(0,xn.jsx)(xn.Fragment,{children:c})}));$q.displayName="Tooltip";var Hq=r(2481),Vq=r.n(Hq),qq=r(7282),Kq=r.n(qq);const Wq="default"in Kq()?Kq().default:Kq(),Gq=({address:e,identiconSize:t,...r})=>(0,xn.jsx)(En,{sx:{canvas:{borderRadius:"4px"}},zIndex:10,background:"white",borderRadius:"4px","data-testid":"identicon",...r,children:(0,xn.jsx)(Wq,{background:"white",size:t,string:e,style:{borderRadius:4}})}),Zq={stroke:AO.gray[400],borderRadius:"4px",padding:"5px",background:AO.gray[500]},Yq=({addressKind:e,size:t="sm",identiconSize:r=20})=>{let n;switch(t){case"sm":n="30px";break;case"md":n="38.5px";break;case"lg":n="45.5px"}switch(e.type){case"secret_key":case"mnemonic":return(0,xn.jsx)(Gq,{width:n,height:n,padding:"5px",address:e.pkh,identiconSize:r});case"social":return(0,xn.jsx)(uI,{width:n,height:n,...Zq,stroke:"transparent",background:"white"});case"ledger":return(0,xn.jsx)(XR,{width:n,height:n,...Zq});case"multisig":return(0,xn.jsx)(YR,{width:n,height:n,...Zq});case"contact":return(0,xn.jsx)(ER,{width:n,height:n,...Zq});case"unknown":return(0,xn.jsx)(yI,{width:n,height:n,...Zq});case"baker":{const t=`https://services.tzkt.io/v1/avatars/${e.pkh}`;return(0,xn.jsx)(XU,{width:"30px",height:"30px",marginRight:"8px","data-testid":"baker-icon",ratio:1,children:(0,xn.jsx)(mI,{src:t})})}}},Xq=()=>PI((e=>e.networks.current)),Jq=()=>PI((e=>e.networks.available)),Qq=()=>{const e=Jq(),t=co();return r=>{const n=e.find((e=>e.name===r));n&&t(Fh.setCurrent(n))}},eK=()=>{const e=Xq(),t=PI((t=>t.tokens[e.name]));return(e,r)=>(0,Ns.get)(t,[e,r])};var tK=r(8449),rK=r.n(tK);const nK={},iK={},oK=(e,t)=>{iK[e]=t},aK=e=>{class t extends Error{constructor(r,n,i){if(super(r||e,i),Object.setPrototypeOf(this,t.prototype),this.name=e,n)for(const e in n)this[e]=n[e];if(i&&function(e){return"object"===typeof e}(i)&&"cause"in i&&!("cause"in this)){const e=i.cause;this.cause=e,"stack"in e&&(this.stack=this.stack+"\nCAUSE: "+e.stack)}}}return nK[e]=t,t};aK("AccountNameRequired"),aK("AccountNotSupported"),aK("AmountRequired"),aK("BluetoothRequired"),aK("BtcUnmatchedApp"),aK("CantOpenDevice"),aK("CashAddrNotSupported"),aK("ClaimRewardsFeesWarning"),aK("CurrencyNotSupported"),aK("DeviceAppVerifyNotSupported"),aK("DeviceGenuineSocketEarlyClose"),aK("DeviceNotGenuine"),aK("DeviceOnDashboardExpected"),aK("DeviceOnDashboardUnexpected"),aK("DeviceInOSUExpected"),aK("DeviceHalted"),aK("DeviceNameInvalid"),aK("DeviceSocketFail"),aK("DeviceSocketNoBulkStatus"),aK("DeviceSocketNoBulkStatus"),aK("UnresponsiveDeviceError");const sK=aK("DisconnectedDevice"),cK=aK("DisconnectedDeviceDuringOperation"),lK=(aK("DeviceExtractOnboardingStateError"),aK("DeviceOnboardingStatePollingError"),aK("EnpointConfig"),aK("EthAppPleaseEnableContractData"),aK("FeeEstimationFailed"),aK("FirmwareNotRecognized"),aK("HardResetFail"),aK("InvalidXRPTag"),aK("InvalidAddress"),aK("InvalidNonce"),aK("InvalidAddressBecauseDestinationIsAlsoSource"),aK("LatestMCUInstalledError"),aK("UnknownMCU"),aK("LedgerAPIError"),aK("LedgerAPIErrorWithMessage"),aK("LedgerAPINotAvailable"),aK("ManagerAppAlreadyInstalled"),aK("ManagerAppRelyOnBTC"),aK("ManagerAppDepInstallRequired"),aK("ManagerAppDepUninstallRequired"),aK("ManagerDeviceLocked"),aK("ManagerFirmwareNotEnoughSpace"),aK("ManagerNotEnoughSpace"),aK("ManagerUninstallBTCDep"),aK("NetworkDown"),aK("NetworkError"),aK("NoAddressesFound"),aK("NotEnoughBalance"),aK("NotEnoughBalanceToDelegate"),aK("NotEnoughBalanceInParentAccount"),aK("NotEnoughSpendableBalance"),aK("NotEnoughBalanceBecauseDestinationNotCreated"),aK("NoAccessToCamera"),aK("NotEnoughGas"),aK("NotEnoughGasSwap"),aK("NotSupportedLegacyAddress"),aK("GasLessThanEstimate"),aK("PriorityFeeTooLow"),aK("PriorityFeeTooHigh"),aK("PriorityFeeHigherThanMaxFee"),aK("MaxFeeTooLow"),aK("PasswordsDontMatch"),aK("PasswordIncorrect"),aK("RecommendSubAccountsToEmpty"),aK("RecommendUndelegation"),aK("TimeoutTagged"),aK("UnexpectedBootloader"),aK("MCUNotGenuineToDashboard"),aK("RecipientRequired"),aK("UnavailableTezosOriginatedAccountReceive"),aK("UnavailableTezosOriginatedAccountSend"),aK("UpdateFetchFileFail"),aK("UpdateIncorrectHash"),aK("UpdateIncorrectSig"),aK("UpdateYourApp"),aK("UserRefusedDeviceNameChange"),aK("UserRefusedAddress"),aK("UserRefusedFirmwareUpdate"),aK("UserRefusedAllowManager"),aK("UserRefusedOnDevice"),aK("ExpertModeRequired"),aK("TransportOpenUserCancelled")),uK=aK("TransportInterfaceNotAvailable"),dK=aK("TransportRaceCondition"),hK=aK("TransportWebUSBGestureRequired");aK("TransactionHasBeenValidatedError"),aK("TransportExchangeTimeoutError"),aK("DeviceShouldStayInApp"),aK("WebsocketConnectionError"),aK("WebsocketConnectionFailed"),aK("WrongDeviceForAccount"),aK("WrongAppForCurrency"),aK("ETHAddressNonEIP"),aK("CantScanQRCode"),aK("FeeNotLoaded"),aK("FeeNotLoadedSwap"),aK("FeeRequired"),aK("FeeTooHigh"),aK("PendingOperation"),aK("SyncError"),aK("PairingFailed"),aK("PeerRemovedPairing"),aK("GenuineCheckFailed"),aK("LedgerAPI4xx"),aK("LedgerAPI5xx"),aK("FirmwareOrAppUpdateRequired"),aK("ReplacementTransactionUnderpriced"),aK("OpReturnSizeLimit"),aK("DustLimit"),aK("LanguageNotFound"),aK("NoDBPathGiven"),aK("DBWrongPassword"),aK("DBNotReset");var fK;!function(e){e.Unknown="Unknown",e.LocationServicesDisabled="LocationServicesDisabled",e.LocationServicesUnauthorized="LocationServicesUnauthorized",e.BluetoothScanStartFailed="BluetoothScanStartFailed"}(fK||(fK={}));Error;class pK extends Error{constructor(e,t){const r="TransportError";super(e||r),this.name=r,this.message=e,this.stack=new Error(e).stack,this.id=t}}oK("TransportError",(e=>new pK(e.message,e.id)));const mK={ACCESS_CONDITION_NOT_FULFILLED:38916,ALGORITHM_NOT_SUPPORTED:38020,CLA_NOT_SUPPORTED:28160,CODE_BLOCKED:38976,CODE_NOT_INITIALIZED:38914,COMMAND_INCOMPATIBLE_FILE_STRUCTURE:27009,CONDITIONS_OF_USE_NOT_SATISFIED:27013,CONTRADICTION_INVALIDATION:38928,CONTRADICTION_SECRET_CODE_STATUS:38920,CUSTOM_IMAGE_BOOTLOADER:26159,CUSTOM_IMAGE_EMPTY:26158,FILE_ALREADY_EXISTS:27273,FILE_NOT_FOUND:37892,GP_AUTH_FAILED:25344,HALTED:28586,INCONSISTENT_FILE:37896,INCORRECT_DATA:27264,INCORRECT_LENGTH:26368,INCORRECT_P1_P2:27392,INS_NOT_SUPPORTED:27904,DEVICE_NOT_ONBOARDED:27911,DEVICE_NOT_ONBOARDED_2:26129,INVALID_KCV:38021,INVALID_OFFSET:37890,LICENSING:28482,LOCKED_DEVICE:21781,MAX_VALUE_REACHED:38992,MEMORY_PROBLEM:37440,MISSING_CRITICAL_PARAMETER:26624,NO_EF_SELECTED:37888,NOT_ENOUGH_MEMORY_SPACE:27268,OK:36864,PIN_REMAINING_ATTEMPTS:25536,REFERENCED_DATA_NOT_FOUND:27272,SECURITY_STATUS_NOT_SATISFIED:27010,TECHNICAL_PROBLEM:28416,UNKNOWN_APDU:27906,USER_REFUSED_ON_DEVICE:21761,NOT_ENOUGH_SPACE:20738};class gK extends Error{constructor(e,{canBeMappedToChildError:t=!0}={}){const r=Object.keys(mK).find((t=>mK[t]===e))||"UNKNOWN_ERROR",n=function(e){switch(e){case 26368:return"Incorrect length";case 26624:return"Missing critical parameter";case 27010:return"Security not satisfied (dongle locked or have invalid access rights)";case 27013:return"Condition of use not satisfied (denied by the user?)";case 27264:return"Invalid data received";case 27392:return"Invalid parameter received";case 21781:return"Locked device"}if(28416<=e&&e<=28671)return"Internal error, please report"}(e)||r,i=`Ledger device: ${n} (0x${e.toString(16)})`;if(super(i),this.name="TransportStatusError",this.statusCode=e,this.statusText=r,Object.setPrototypeOf(this,gK.prototype),t&&e===mK.LOCKED_DEVICE)return new vK(i)}}class vK extends gK{constructor(e){super(mK.LOCKED_DEVICE,{canBeMappedToChildError:!1}),e&&(this.message=e),this.name="LockedDeviceError",Object.setPrototypeOf(this,vK.prototype)}}oK("TransportStatusError",(e=>new gK(e.statusCode)));let yK=0;const bK=[],wK=(e,t,r)=>{const n={type:e,id:String(++yK),date:new Date};t&&(n.message=t),r&&(n.data=r),kK(n)};class xK{constructor(e,t){this.type=e,this.context=t}trace(e,t){(({type:e,message:t,data:r,context:n})=>{const i={type:e,id:String(++yK),date:new Date};t&&(i.message=t),r&&(i.data=r),n&&(i.context=n),kK(i)})({type:this.type,message:e,data:t,context:this.context})}getContext(){return this.context}setContext(e){this.context=e}updateContext(e){this.context=Object.assign(Object.assign({},this.context),e)}getType(){return this.type}setType(e){this.type=e}withType(e){return new xK(e,this.context)}withContext(e){return new xK(this.type,e)}withUpdatedContext(e){return new xK(this.type,Object.assign(Object.assign({},this.context),e))}}const _K=e=>(bK.push(e),()=>{const t=bK.indexOf(e);-1!==t&&(bK[t]=bK[bK.length-1],bK.pop())});function kK(e){for(let t=0;tEK(this,void 0,void 0,(function*(){const s=this.tracer.withUpdatedContext({function:"send"});if(i.length>=256)throw s.trace("data.length exceeded 256 bytes limit",{dataLength:i.length}),new pK("data.length exceed 256 bytes limit. Got: "+i.length,"DataLengthTooBig");s.trace("Starting an exchange",{abortTimeoutMs:a});const c=yield this.exchange(SK.concat([SK.from([e,t,r,n]),SK.from([i.length]),i]),{abortTimeoutMs:a});s.trace("Received response from exchange");const l=c.readUInt16BE(c.length-2);if(!o.some((e=>e===l)))throw new gK(l);return c})),this._appAPIlock=null,this.tracer=new xK(null!==t&&void 0!==t?t:"transport",e)}exchange(e,{abortTimeoutMs:t}={}){throw new Error("exchange not implemented")}exchangeBulk(e,t){let r=!1;return(()=>EK(this,void 0,void 0,(function*(){if(!r)for(const n of e){const e=yield this.exchange(n);if(r)return;const i=e.readUInt16BE(e.length-2);if(i!==mK.OK)throw new gK(i);t.next(e)}})))().then((()=>!r&&t.complete()),(e=>!r&&t.error(e))),{unsubscribe:()=>{r=!0}}}setScrambleKey(e){}close(){return Promise.resolve()}on(e,t){this._events.on(e,t)}off(e,t){this._events.removeListener(e,t)}emit(e,...t){this._events.emit(e,...t)}setDebugMode(){console.warn("setDebugMode is deprecated. use @ledgerhq/logs instead. No logs are emitted in this anymore.")}setExchangeTimeout(e){this.exchangeTimeout=e}setExchangeUnresponsiveTimeout(e){this.unresponsiveTimeout=e}static create(e=3e3,t){return new Promise(((r,n)=>{let i=!1;const o=this.listen({next:t=>{i=!0,o&&o.unsubscribe(),a&&clearTimeout(a),this.open(t.descriptor,e).then(r,n)},error:e=>{a&&clearTimeout(a),n(e)},complete:()=>{a&&clearTimeout(a),i||n(new pK(this.ErrorMessage_NoDeviceFound,"NoDeviceFound"))}}),a=t?setTimeout((()=>{o.unsubscribe(),n(new pK(this.ErrorMessage_ListenTimeout,"ListenTimeout"))}),t):null}))}exchangeAtomicImpl(e){return EK(this,void 0,void 0,(function*(){const t=this.tracer.withUpdatedContext({function:"exchangeAtomicImpl",unresponsiveTimeout:this.unresponsiveTimeout});if(this.exchangeBusyPromise)throw t.trace("Atomic exchange is already busy"),new dK("An action was already pending on the Ledger device. Please deny or reconnect.");let r;const n=new Promise((e=>{r=e}));this.exchangeBusyPromise=n;let i=!1;const o=setTimeout((()=>{t.trace('Timeout reached, emitting Transport event "unresponsive"',{unresponsiveTimeout:this.unresponsiveTimeout}),i=!0,this.emit("unresponsive")}),this.unresponsiveTimeout);try{const r=yield e();return i&&(t.trace("Device was unresponsive, emitting responsive"),this.emit("responsive")),r}finally{t.trace("Finalize, clearing busy guard"),clearTimeout(o),r&&r(),this.exchangeBusyPromise=null}}))}decorateAppAPIMethods(e,t,r){for(const n of t)e[n]=this.decorateAppAPIMethod(n,e[n],e,r)}decorateAppAPIMethod(e,t,r,n){return(...i)=>EK(this,void 0,void 0,(function*(){const{_appAPIlock:o}=this;if(o)return Promise.reject(new pK("Ledger Device is busy (lock "+o+")","TransportLocked"));try{return this._appAPIlock=e,this.setScrambleKey(n),yield t.apply(r,i)}finally{this._appAPIlock=null}}))}setTraceContext(e){this.tracer=this.tracer.withContext(e)}updateTraceContext(e){this.tracer.updateContext(e)}getTraceContext(){return this.tracer.getContext()}}AK.ErrorMessage_ListenTimeout="No Ledger device found (timeout)",AK.ErrorMessage_NoDeviceFound="No Ledger device found";const PK=AK;var OK=r(9673).Buffer;function TK(e){const t=OK.alloc(2);return t.writeUInt16BE(e,0),t}const jK={data:OK.alloc(0),dataLength:0,sequence:0},CK=(e,t)=>({makeBlocks(r){let n=OK.concat([TK(r.length),r]);const i=t-5,o=Math.ceil(n.length/i);n=OK.concat([n,OK.alloc(o*i-n.length+1).fill(0)]);const a=[];for(let t=0;ti&&(n=n.slice(0,i)),{data:n,dataLength:i,sequence:o}},getReducedResult(e){if(e&&e.dataLength===e.data.length)return e.data}});var RK=r(1187),IK=r.n(RK);var MK;!function(e){e.blue="blue",e.nanoS="nanoS",e.nanoSP="nanoSP",e.nanoX="nanoX",e.stax="stax"}(MK||(MK={}));const LK={[MK.blue]:{id:MK.blue,productName:"Ledger\xa0Blue",productIdMM:0,legacyUsbProductId:0,usbOnly:!0,memorySize:491520,masks:[822083584,822149120],getBlockSize:e=>4096},[MK.nanoS]:{id:MK.nanoS,productName:"Ledger\xa0Nano\xa0S",productIdMM:16,legacyUsbProductId:1,usbOnly:!0,memorySize:327680,masks:[823132160],getBlockSize:e=>{var t;return IK().lt(null!==(t=IK().coerce(e))&&void 0!==t?t:"","2.0.0")?4096:2048}},[MK.nanoSP]:{id:MK.nanoSP,productName:"Ledger Nano S Plus",productIdMM:80,legacyUsbProductId:5,usbOnly:!0,memorySize:1569792,masks:[856686592],getBlockSize:e=>32},[MK.nanoX]:{id:MK.nanoX,productName:"Ledger\xa0Nano\xa0X",productIdMM:64,legacyUsbProductId:4,usbOnly:!1,memorySize:2097152,masks:[855638016],getBlockSize:e=>4096,bluetoothSpec:[{serviceUuid:"13d63400-2c97-0004-0000-4c6564676572",notifyUuid:"13d63400-2c97-0004-0001-4c6564676572",writeUuid:"13d63400-2c97-0004-0002-4c6564676572",writeCmdUuid:"13d63400-2c97-0004-0003-4c6564676572"}]},[MK.stax]:{id:MK.stax,productName:"Ledger\xa0Stax",productIdMM:96,legacyUsbProductId:6,usbOnly:!1,memorySize:1569792,masks:[857735168],getBlockSize:e=>32,bluetoothSpec:[{serviceUuid:"13d63400-2c97-6004-0000-4c6564676572",notifyUuid:"13d63400-2c97-6004-0001-4c6564676572",writeUuid:"13d63400-2c97-6004-0002-4c6564676572",writeCmdUuid:"13d63400-2c97-6004-0003-4c6564676572"}]}},NK=(MK.blue,MK.nanoS,MK.nanoSP,MK.nanoX,MK.stax,Object.values(LK)),DK=11415,zK=e=>{const t=NK.find((t=>t.legacyUsbProductId===e));if(t)return t;const r=e>>8,n=NK.find((e=>e.productIdMM===r));return n},BK=[],UK={};for(const r in LK){const e=LK[r],{bluetoothSpec:t}=e;if(t)for(let r=0;re.vendorId===DK))}))}var qK=r(9673).Buffer,KK=function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(pge){o(pge)}}function s(e){try{c(n.throw(e))}catch(pge){o(pge)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))};class WK extends PK{constructor(e,t){super(),this.channel=Math.floor(65535*Math.random()),this.packetSize=64,this._disconnectEmitted=!1,this._emitDisconnect=e=>{this._disconnectEmitted||(this._disconnectEmitted=!0,this.emit("disconnect",e))},this.device=e,this.interfaceNumber=t,this.deviceModel=zK(e.productId)}static request(){return KK(this,void 0,void 0,(function*(){const e=yield HK();return WK.open(e)}))}static openConnected(){return KK(this,void 0,void 0,(function*(){const e=yield VK();return 0===e.length?null:WK.open(e[0])}))}static open(e){return KK(this,void 0,void 0,(function*(){yield e.open(),null===e.configuration&&(yield e.selectConfiguration(1)),yield ZK(e);const t=e.configurations[0].interfaces.find((({alternates:e})=>e.some((e=>255===e.interfaceClass))));if(!t)throw new uK("No WebUSB interface found for your Ledger device. Please upgrade firmware or contact techsupport.");const r=t.interfaceNumber;try{yield e.claimInterface(r)}catch(pge){throw yield e.close(),new uK(pge.message)}const n=new WK(e,r),i=t=>{e===t.device&&(navigator.usb.removeEventListener("disconnect",i),n._emitDisconnect(new sK))};return navigator.usb.addEventListener("disconnect",i),n}))}close(){return KK(this,void 0,void 0,(function*(){yield this.exchangeBusyPromise,yield this.device.releaseInterface(this.interfaceNumber),yield ZK(this.device),yield this.device.close()}))}exchange(e){return KK(this,void 0,void 0,(function*(){const t=yield this.exchangeAtomicImpl((()=>KK(this,void 0,void 0,(function*(){const{channel:t,packetSize:r}=this;wK("apdu","=> "+e.toString("hex"));const n=CK(t,r),i=n.makeBlocks(e);for(let e=0;e{if(e&&e.message&&e.message.includes("disconnected"))throw this._emitDisconnect(e),new cK(e.message);throw e}));return t}))}setScrambleKey(){}}WK.isSupported=()=>Promise.resolve(!!navigator&&!!navigator.usb&&"function"===typeof navigator.usb.getDevices),WK.list=VK,WK.listen=e=>{let t=!1;return function(){return FK(this,void 0,void 0,(function*(){const e=yield VK();return e.length>0?e[0]:HK()}))}().then((r=>{if(!t){const t=zK(r.productId);e.next({type:"add",descriptor:r,deviceModel:t}),e.complete()}}),(t=>{window.DOMException&&t instanceof window.DOMException&&18===t.code?e.error(new hK(t.message)):e.error(new lK(t.message))})),{unsubscribe:function(){t=!0}}};const GK=WK;function ZK(e){return KK(this,void 0,void 0,(function*(){try{yield e.reset()}catch(kne){console.warn(kne)}}))}var YK=r(9673).Buffer;function XK(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(pge){o(pge)}}function s(e){try{c(n.throw(e))}catch(pge){o(pge)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))}"function"===typeof SuppressedError&&SuppressedError;function JK(e){const t=[];e.split("/").forEach((e=>{let r=parseInt(e,10);Number.isNaN(r)||(e.length>1&&"'"===e[e.length-1]&&(r+=2147483648),t.push(r))}));const r=YK.alloc(1+4*t.length);return r[0]=t.length,t.forEach(((e,t)=>{r.writeUInt32BE(e,1+4*t)})),r}function QK(e,t){const r=YK.alloc(32);r.fill(0);let n=t[e],i=e+1;return n>32&&(i+=n-32,n=32),t.copy(r,32-n,i,i+n),{buffer:r,idxValueStart:i,length:n}}class eW extends Gs{constructor(e){super(),this.message=e,this.name="InvalidLedgerResponseError"}}class tW extends Gs{constructor(e){super(),this.cause=e,this.name="PublicKeyRetrievalError",this.message="Unable to retrieve Public Key from Ledger"}}class rW extends Gs{constructor(){super(),this.name="PublicKeyHashRetrievalError",this.message="Unable to retrieve Public Key Hash from Ledger"}}class nW extends Zs{constructor(e){super(),this.derivationType=e,this.name="InvalidDerivationTypeError",this.message=`Invalid derivation type ${e} expecting one of the following: DerivationType.ED25519, DerivationType.SECP256K1, DerivationType.P256 or DerivationType.BIP32_ED25519`}}var iW;!function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256",e[e.BIP32_ED25519=3]="BIP32_ED25519"}(iW||(iW={}));class oW{constructor(e,t="44'/1729'/0'/0'",r=!0,n=iW.ED25519){if(this.transport=e,this.path=t,this.prompt=r,this.derivationType=n,this.CLA=128,this.INS_GET_PUBLIC_KEY=2,this.INS_PROMPT_PUBLIC_KEY=3,this.INS_SIGN=4,this.FIRST_MESSAGE_SEQUENCE=0,this.LAST_MESSAGE_SEQUENCE=129,this.OTHER_MESSAGE_SEQUENCE=1,this.transport.setScrambleKey("XTZ"),!t.startsWith("44'/1729'"))throw new nc(t,`${cl(qc.NO_PREFIX_MATCHED)} expecting prefix "44'/1729'".`);if(!Object.values(iW).includes(n))throw new nW(n.toString())}publicKeyHash(){return XK(this,void 0,void 0,(function*(){if(this._publicKeyHash||(yield this.publicKey()),this._publicKeyHash)return this._publicKeyHash;throw new rW}))}publicKey(){return XK(this,void 0,void 0,(function*(){if(this._publicKey)return this._publicKey;const e=yield this.getLedgerPublicKey(),t=e[0],r=function(e,t){return 0===t||3===t?e=e.slice(1):(e[0]=2+(1&e[64]),e=e.slice(0,33)),e}(e.slice(1,1+t),this.derivationType),n=this.getPrefixes(),i=fl(r,n.prefPk),o=fl((0,Hs.hash)(r,20),n.prefPkh);return this._publicKey=i,this._publicKeyHash=o,i}))}getLedgerPublicKey(){return XK(this,void 0,void 0,(function*(){try{let e=this.INS_PROMPT_PUBLIC_KEY;!1===this.prompt&&(e=this.INS_GET_PUBLIC_KEY);return yield this.transport.send(this.CLA,e,this.FIRST_MESSAGE_SEQUENCE,this.derivationType,JK(this.path))}catch(e){throw new tW(e)}}))}secretKey(){return XK(this,void 0,void 0,(function*(){throw new mc("Secret key cannot be exposed")}))}sign(e,t){return XK(this,void 0,void 0,(function*(){const r=function(e,t){let r=e;"undefined"!==typeof t&&(r=YK.from(t).toString("hex").concat(e));return r}(e,t),n=YK.from(r,"hex");let i=[];i.push(JK(this.path)),i=function(e,t){let r=0;for(;r!==t.length;){const n=r+230>=t.length?t.length-r:230,i=YK.alloc(n);t.copy(i,0,r,r+n),e.push(i),r+=n}return e}(i,n);const o=yield this.signWithLedger(i);let a;if(this.derivationType===iW.ED25519||this.derivationType===iW.BIP32_ED25519)a=o.slice(0,o.length-2).toString("hex");else{if(!function(e){let t=!0;49!==e[0]&&48!==e[0]&&(t=!1),e[1]+4!==e.length&&(t=!1),2!==e[2]&&(t=!1);const r=e[3];2!==e[4+r]&&(t=!1);const n=5+r;return n+1+e[n]+2!==e.length&&(t=!1),t}(o))throw new eW("Invalid signature return by ledger unable to parse the response");const e=QK(3,o),t=QK(e.idxValueStart+e.length+1,o);a=YK.concat([e.buffer,t.buffer]).toString("hex")}return{bytes:e,sig:fl(a,$c[Dc.SIG]),prefixSig:fl(a,this.getPrefixes().prefSig),sbytes:e+a}}))}signWithLedger(e){return XK(this,void 0,void 0,(function*(){let t=yield this.transport.send(this.CLA,this.INS_SIGN,this.FIRST_MESSAGE_SEQUENCE,this.derivationType,e[0]);for(let r=1;r{t.push(encodeURIComponent(n)+"="+encodeURIComponent(e))}));continue}t.push(encodeURIComponent(n)+"="+encodeURIComponent(r))}const r=t.join("&");return r?`?${r}`:""}createRequest({url:e,method:t,timeout:r=this.timeout,query:n,headers:i={},json:o=!0},a){return cW(this,void 0,void 0,(function*(){const s=e+this.serialize(n);i["Content-Type"]||(i["Content-Type"]="application/json");const c=new AbortController,l=setTimeout((()=>c.abort()),r);try{const e=yield fW(s,{method:t,headers:i,body:JSON.stringify(a),signal:c.signal});if("undefined"===typeof e)throw new Error("Response is undefined");if(e.status>=400){const t=yield e.text();throw new uW(`Http error response: (${e.status}) ${t}`,e.status,e.statusText,t,s)}return o?e.json():e.text()}catch(pge){throw pge instanceof Error&&"AbortError"===pge.name?new dW(r,s):pge instanceof uW?pge:new lW(String(t),s,pge)}finally{clearTimeout(l)}}))}}function mW(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i{const r=e[t];let i;if("undefined"!==typeof r){if(Array.isArray(r))return i=bW(r),void(n[t]=i);i=new Nc(r),n[t]=i}})),n}!function(e){e.GET_BAKING_RIGHTS="getBakingRights",e.GET_BALLOTS="getBallots",e.GET_BALLOT_LIST="getBallotList",e.GET_BIG_MAP_KEY="getBigMapKey",e.GET_BIG_MAP_EXPR="getBigMapExpr",e.GET_BLOCK_HASH="getBlockHash",e.GET_BLOCK="getBlock",e.GET_BLOCK_HEADER="getBlockHeader",e.GET_BLOCK_METADATA="getBlockMetadata",e.GET_BALANCE="getBalance",e.GET_CHAIN_ID="getChainId",e.GET_CONSTANTS="getConstants",e.GET_CONTRACT="getContract",e.GET_CURRENT_PERIOD="getCurrentPeriod",e.GET_CURRENT_PROPOSAL="getCurrentProposal",e.GET_CURRENT_QUORUM="getCurrentQuorum",e.GET_DELEGATE="getDelegate",e.GET_DELEGATES="getDelegates",e.GET_VOTING_INFO="getVotingInfo",e.GET_ATTESTATION_RIGHTS="getAttestationRights",e.GET_ENDORSING_RIGHTS="getEndorsingRights",e.GET_ENTRYPOINTS="getEntrypoints",e.GET_LIVE_BLOCKS="getLiveBlocks",e.GET_MANAGER_KEY="getManagerKey",e.GET_NORMALIZED_SCRIPT="getNormalizedScript",e.GET_PROPOSALS="getProposals",e.GET_PROTOCOLS="getProtocols",e.GET_SAPLING_DIFF_BY_CONTRACT="getSaplingDiffByContract",e.GET_SAPLING_DIFF_BY_ID="getSaplingDiffById",e.GET_SCRIPT="getScript",e.GET_STORAGE="getStorage",e.GET_SUCCESSOR_PERIOD="getSuccessorPeriod",e.GET_VOTES_LISTINGS="getVotesListings",e.PACK_DATA="packData",e.GET_STORAGE_USED_SPACE="getStorageUsedSpace",e.GET_STORAGE_PAID_SPACE="getStoragePaidSpace",e.GET_TICKET_BALANCE="getTicketBalance",e.GET_ALL_TICKET_BALANCES="getAllTicketBalances",e.GET_PENDING_OPERATIONS="getPendingOperations"}(yW||(yW={}));var wW,xW,_W,kW,SW,EW,AW,PW,OW,TW;!function(e){e.TOO_LARGE="too large"}(wW||(wW={})),function(e){e.BAKING_BONUSES="baking bonuses",e.BAKING_REWARDS="baking rewards",e.BLOCK_FEES="block fees",e.BONDS="bonds",e.BOOTSTRAP="bootstrap",e.BURNED="burned",e.COMMITMENT="commitment",e.DELEGATE_DENOMINATOR="delegate_denominator",e.DELEGATOR_NUMERATOR="delegator_numerator",e.DEPOSITS="deposits",e.ENDORSING_REWARDS="endorsing rewards",e.INVOICE="invoice",e.LOST_ENDORSING_REWARDS="lost endorsing rewards",e.MINTED="minted",e.NONCE_REVELATION_REWARDS="nonce revelation rewards",e.PUNISHMENTS="punishments",e.SMART_ROLLUP_REFUTATION_PUNISHMENTS="smart_rollup_refutation_punishments",e.SMART_ROLLUP_REFUTATION_REWARDS="smart_rollup_refutation_rewards",e.STORAGE_FEES="storage fees",e.SUBSIDY="subsidy",e.UNSTAKED_DEPOSITS="unstaked_deposits"}(xW||(xW={})),function(e){e.WASM2="wasm_2_0_0",e.ARITH="arith",e.RISCV="riscv"}(_W||(_W={})),function(e){e.START="start",e.MOVE="move"}(kW||(kW={})),function(e){e.INBOX_PROOF="inbox_proof",e.REVEAL_PROOF="reveal_proof",e.FIRST_INPUT="first_input"}(SW||(SW={})),function(e){e.RAW_DATA_PROOF="raw_data_proof",e.METADATA_PROOF="metadata_proof",e.DAL_PAGE_PROOF="dal_page_proof"}(EW||(EW={})),function(e){e.ONGOING="ongoing",e.ENDED="ended"}(AW||(AW={})),function(e){e.LOSER="loser",e.DRAW="draw"}(PW||(PW={})),function(e){e.CONFLICT_RESOLVED="conflict_resolved",e.TIMEOUT="timeout"}(OW||(OW={})),function(e){e.ORIGINATION="origination",e.DELEGATION="delegation",e.REVEAL="reveal",e.TRANSACTION="transaction",e.ACTIVATION="activate_account",e.ATTESTATION="attestation",e.ENDORSEMENT="endorsement",e.PREATTESTATION="preattestation",e.PREENDORSEMENT="preendorsement",e.SET_DEPOSITS_LIMIT="set_deposits_limit",e.DOUBLE_PREATTESTATION_EVIDENCE="double_preattestation_evidence",e.DOUBLE_PREENDORSEMENT_EVIDENCE="double_preendorsement_evidence",e.ATTESTATION_WITH_SLOT="attestation_with_slot",e.ENDORSEMENT_WITH_SLOT="endorsement_with_slot",e.SEED_NONCE_REVELATION="seed_nonce_revelation",e.DOUBLE_ATTESTATION_EVIDENCE="double_attestation_evidence",e.DOUBLE_ENDORSEMENT_EVIDENCE="double_endorsement_evidence",e.DOUBLE_BAKING_EVIDENCE="double_baking_evidence",e.PROPOSALS="proposals",e.BALLOT="ballot",e.FAILING_NOOP="failing_noop",e.REGISTER_GLOBAL_CONSTANT="register_global_constant",e.TRANSFER_TICKET="transfer_ticket",e.INCREASE_PAID_STORAGE="increase_paid_storage",e.UPDATE_CONSENSUS_KEY="update_consensus_key",e.DRAIN_DELEGATE="drain_delegate",e.VDF_REVELATION="vdf_revelation",e.EVENT="event",e.TICKET_UPDATES="ticket_updates",e.SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message",e.SMART_ROLLUP_PUBLISH="smart_rollup_publish",e.SMART_ROLLUP_CEMENT="smart_rollup_cement",e.SMART_ROLLUP_RECOVER_BOND="smart_rollup_recover_bond",e.SMART_ROLLUP_REFUTE="smart_rollup_refute",e.SMART_ROLLUP_TIMEOUT="smart_rollup_timeout"}(TW||(TW={}));class jW{constructor(e,t="main",r=new pW){this.url=e,this.chain=t,this.httpBackend=r}createURL(e){let t=this.url;for(;t.endsWith("/");)t=t.slice(0,-1);return`${t}${e}`}validateAddress(e){const t=tl(e);if(t!==qc.VALID)throw new ec(e,cl(t))}validateContract(e){const t=nl(e);if(t!==qc.VALID)throw new lc(e,cl(t))}getBlockHash({block:e}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/hash`),method:"GET"})}))}getLiveBlocks({block:e}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/live_blocks`),method:"GET"})}))}getBalance(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/balance`),method:"GET"});return new Nc(r)}))}getStorage(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage`),method:"GET"})}))}getScript(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/script`),method:"GET"})}))}getNormalizedScript(e,t={unparsing_mode:"Readable"},{block:r}=vW){return gW(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/script/normalized`),method:"POST"},t)}))}getContract(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}`),method:"GET"});return Object.assign(Object.assign({},r),{balance:new Nc(r.balance)})}))}getManagerKey(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return this.validateAddress(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/manager_key`),method:"GET"})}))}getDelegate(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){let r;this.validateAddress(e);try{r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/delegate`),method:"GET"})}catch(n){if(!(n instanceof uW&&n.status===aW.NOT_FOUND))throw n;r=null}return r}))}getBigMapKey(e,t,{block:r}=vW){return gW(this,void 0,void 0,(function*(){return this.validateAddress(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/big_map_get`),method:"POST"},t)}))}getBigMapExpr(e,t,{block:r}=vW){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/big_maps/${e}/${t}`),method:"GET"})}))}getDelegates(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates/${e}`),method:"GET"}),n=bW(r,["balance","full_balance","current_frozen_deposits","frozen_deposits","frozen_balance","frozen_deposits_limit","staking_balance","delegated_balance","voting_power","total_delegated_stake","staking_denominator"]);return Object.assign(Object.assign(Object.assign({},r),n),{frozen_balance_by_cycle:r.frozen_balance_by_cycle?r.frozen_balance_by_cycle.map((e=>{var{deposit:t,deposits:r,fees:n,rewards:i}=e,o=mW(e,["deposit","deposits","fees","rewards"]);const a=bW({deposit:t,deposits:r,fees:n,rewards:i},["deposit","deposits","fees","rewards"]);return Object.assign(Object.assign({},o),{deposit:a.deposit,deposits:a.deposits,fees:a.fees,rewards:a.rewards})})):void 0})}))}getVotingInfo(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return this.validateAddress(e),yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates/${e}/voting_info`),method:"GET"})}))}getConstants({block:e}=vW){return gW(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/context/constants`),method:"GET"}),r=bW(t,["time_between_blocks","hard_gas_limit_per_operation","hard_gas_limit_per_block","proof_of_work_threshold","tokens_per_roll","seed_nonce_revelation_tip","block_security_deposit","endorsement_security_deposit","block_reward","endorsement_reward","cost_per_byte","hard_storage_limit_per_operation","test_chain_duration","baking_reward_per_endorsement","delay_per_missing_endorsement","minimal_block_delay","liquidity_baking_subsidy","cache_layout","baking_reward_fixed_portion","baking_reward_bonus_per_slot","endorsing_reward_per_slot","double_baking_punishment","delay_increment_per_round","tx_rollup_commitment_bond","vdf_difficulty","sc_rollup_stake_amount","minimal_stake"]);return Object.assign(Object.assign({},t),r)}))}getBlock({block:e,version:t}=vW){return gW(this,void 0,void 0,(function*(){const r={url:this.createURL(`/chains/${this.chain}/blocks/${e}`),method:"GET"};return void 0!==t&&(r.query={version:t}),yield this.httpBackend.createRequest(r)}))}getBlockHeader({block:e}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/header`),method:"GET"})}))}getBlockMetadata({block:e,version:t}=vW){return gW(this,void 0,void 0,(function*(){const r={url:this.createURL(`/chains/${this.chain}/blocks/${e}/metadata`),method:"GET"};return void 0!==t&&(r.query={version:t}),yield this.httpBackend.createRequest(r)}))}getBakingRights(e={},{block:t}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/baking_rights`),method:"GET",query:e})}))}getAttestationRights(e={},{block:t}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/attestation_rights`),method:"GET",query:e})}))}getEndorsingRights(e={},{block:t}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/endorsing_rights`),method:"GET",query:e})}))}getBallotList({block:e}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/ballot_list`),method:"GET"})}))}getBallots({block:e}=vW){return gW(this,void 0,void 0,(function*(){return bW(yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/ballots`),method:"GET"}),["yay","nay","pass"])}))}getCurrentProposal({block:e}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_proposal`),method:"GET"})}))}getCurrentQuorum({block:e}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_quorum`),method:"GET"})}))}getVotesListings({block:e}=vW){return gW(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/listings`),method:"GET"});return t.map((e=>(e.voting_power&&(e.voting_power=new Nc(e.voting_power)),e))),t}))}getProposals({block:e}=vW){return gW(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/proposals`),method:"GET"});return t.map((e=>e[1]=new Nc(e[1]))),t}))}forgeOperations(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/forge/operations`),method:"POST"},e)}))}injectOperation(e){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL("/injection/operation"),method:"POST"},e)}))}preapplyOperations(e,{block:t,version:r}=vW){return gW(this,void 0,void 0,(function*(){const n={url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/preapply/operations`),method:"POST"};return void 0!==r&&(n.query={version:r}),yield this.httpBackend.createRequest(n,e)}))}getEntrypoints(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){this.validateContract(e);return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/entrypoints`),method:"GET"})}))}runOperation(e,{block:t,version:r}=vW){return gW(this,void 0,void 0,(function*(){const n={url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/run_operation`),method:"POST"};return void 0!==r&&(n.query={version:r}),yield this.httpBackend.createRequest(n,e)}))}simulateOperation(e,{block:t,version:r}=vW){return gW(this,void 0,void 0,(function*(){const n={url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/simulate_operation`),method:"POST"};return void 0!==r&&(n.query={version:r}),yield this.httpBackend.createRequest(n,e)}))}runCode(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/run_code`),method:"POST"},e)}))}runScriptView(e,t){var{unparsing_mode:r="Readable"}=e,n=mW(e,["unparsing_mode"]),i=(void 0===t?vW:t).block;return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${i}/helpers/scripts/run_script_view`),method:"POST"},Object.assign({unparsing_mode:r},n))}))}runView(e,t){var{unparsing_mode:r="Readable"}=e,n=mW(e,["unparsing_mode"]),i=(void 0===t?vW:t).block;return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${i}/helpers/scripts/run_view`),method:"POST"},Object.assign({unparsing_mode:r},n))}))}getChainId(){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/chain_id`),method:"GET"})}))}packData(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/pack_data`),method:"POST"},e),{gas:n}=r,i=mW(r,["gas"]);let o=n;const a=new Nc(n||"");return a.isNaN()||(o=a),Object.assign({gas:o},i)}))}getRpcUrl(){return this.url}getCurrentPeriod({block:e}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_period`),method:"GET"})}))}getSuccessorPeriod({block:e}=vW){return gW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/successor_period`),method:"GET"})}))}getSaplingDiffById(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/sapling/${e}/get_diff`),method:"GET"})}))}getSaplingDiffByContract(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/single_sapling_get_diff`),method:"GET"})}))}getProtocols({block:e}=vW){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/protocols`),method:"GET"})}))}getStorageUsedSpace(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage/used_space`),method:"GET"})}))}getStoragePaidSpace(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage/paid_space`),method:"GET"})}))}getTicketBalance(e,t,{block:r}=vW){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/ticket_balance`),method:"POST"},t)}))}getAllTicketBalances(e,{block:t}=vW){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/all_ticket_balances`),method:"GET"})}))}getPendingOperations(e={}){return gW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/mempool/pending_operations`),method:"GET",query:e})}))}}var CW=r(7610),RW=r(9331),IW=r(1514),MW=r(2564),LW=r(3614),NW=r.n(LW);function DW(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(pge){o(pge)}}function s(e){try{c(n.throw(e))}catch(pge){o(pge)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))}"function"===typeof SuppressedError&&SuppressedError;class zW{constructor(e,t,r){this.key=e;const n=e.substring(0,t?5:4);if(!Kc(n))throw new sc(`${cl(qc.NO_PREFIX_MATCHED)} expecting either '${Dc.EDESK}' or '${Dc.EDSK}'.`);if(this._key=r(pl(this.key,$c[n])),this._publicKey=this._key.slice(32),!this._key)throw new sc("unable to decode");this.isInit=this.init()}init(){return DW(this,void 0,void 0,(function*(){if(64!==this._key.length){const{publicKey:e,secretKey:t}=(0,$s.K)(new Uint8Array(this._key));this._publicKey=e,this._key=t}return!0}))}sign(e,t){return DW(this,void 0,void 0,(function*(){yield this.isInit;const r=(0,$s._S)(new Uint8Array(this._key),new Uint8Array(t)),n=Fc()(r),i=e+bl(n);return{bytes:e,sig:fl(r,$c.sig),prefixSig:fl(r,$c.edsig),sbytes:i}}))}publicKey(){return DW(this,void 0,void 0,(function*(){return yield this.isInit,fl(this._publicKey,$c.edpk)}))}publicKeyHash(){return DW(this,void 0,void 0,(function*(){return yield this.isInit,fl((0,Hs.hash)(new Uint8Array(this._publicKey),20),$c.tz1)}))}secretKey(){return DW(this,void 0,void 0,(function*(){yield this.isInit;let e=this._key;const{secretKey:t}=(0,$s.K)(new Uint8Array(e).slice(0,32));return e=Fc()(t),fl(e,$c.edsk)}))}}const BW={p256:{pk:$c.p2pk,sk:$c.p2sk,pkh:$c.tz3,sig:$c.p2sig},secp256k1:{pk:$c.sppk,sk:$c.spsk,pkh:$c.tz2,sig:$c.spsig}};class UW{constructor(e,t,r,n){this.curve=e,this.key=t;const i=t.substring(0,r?5:4);if(!Kc(i))throw new sc(cl(qc.NO_PREFIX_MATCHED)+` expecting one of the following prefix '${Dc.SPSK}', '${Dc.SPESK}', '${Dc.P2SK}' or '${Dc.P2ESK}'.`);this._key=n(pl(this.key,$c[i]));const o=new(Bc().ec)(this.curve).keyFromPrivate(this._key),a=o.getPublic().getY().toArray(),s=(a.length<32?a[a.length-1]:a[31])%2?3:2,c=new Array(32).fill(0);this._publicKey=Fc()(new Uint8Array([s].concat(c.concat(o.getPublic().getX().toArray()).slice(-32))))}sign(e,t){return DW(this,void 0,void 0,(function*(){const r=new(Bc().ec)(this.curve).keyFromPrivate(this._key).sign(t,{canonical:!0}),n=r.r.toString("hex",64)+r.s.toString("hex",64),i=e+n;return{bytes:e,sig:fl(n,$c.sig),prefixSig:fl(n,BW[this.curve].sig),sbytes:i}}))}publicKey(){return DW(this,void 0,void 0,(function*(){return fl(this._publicKey,BW[this.curve].pk)}))}publicKeyHash(){return DW(this,void 0,void 0,(function*(){return fl((0,Hs.hash)(new Uint8Array(this._publicKey),20),BW[this.curve].pkh)}))}secretKey(){return DW(this,void 0,void 0,(function*(){return fl(this._key,BW[this.curve].sk)}))}}const FW=UW.bind(null,"p256"),$W=UW.bind(null,"secp256k1");function HW(e){const t=[];for(let r=0;r64)throw new WW(o.length);if(!Object.prototype.hasOwnProperty.call(YW,r))throw new KW(`Unsupported curve "${r}" expecting either "p256" or "secp256k1"`);const a=new zc.ec(r);if(256!==(null===(n=a.n)||void 0===n?void 0:n.bitLength()))throw new qW(`Invalid curve "${r}" with bit size "${null===(i=a.n)||void 0===i?void 0:i.bitLength()}" expecting bit size "256"`);const s=(new TextEncoder).encode(YW[r]);let c=null,l=new Uint8Array,u=0;for(;0===u;){const e=new IW.yj(MW.SHA512,s).update(o).digest();c=new(NW())(e.subarray(0,32)),l=e.subarray(32),c.isZero()||c.cmp(a.n)>=0?o=e:u++}const d=a.keyPair({});return d.priv=c,new e(d,l)}derive(t){const r=new Uint8Array(37);0!==(t&JW)?r.set(this.keyPair.getPrivate().toArray(),1):r.set(this.keyPair.getPublic().encodeCompressed(),0),new DataView(r.buffer).setUint32(33,t);let n=new(NW())(0),i=new Uint8Array,o=0;for(;0===o;){const e=new IW.yj(MW.SHA512,this.chainCode).update(r).digest();n=new(NW())(e.subarray(0,32)),i=e.subarray(32),this.keyPair.ec.n&&n.cmp(this.keyPair.ec.n)<0&&(n=n.add(this.keyPair.getPrivate()).mod(this.keyPair.ec.n),n.isZero()||o++),r.set(i,1),r[0]=1}const a=this.keyPair.ec.keyPair({});return a.priv=n,new e(a,i)}derivePath(e){let t=this;for(const r of e)t=t.derive(r);return t}bytes(){if(!this.keyPair.priv)throw new sc("missing private key");const e=this.keyPair.priv.toArray(),t=new Uint8Array(32);return t.set(e,t.length-e.length),t}};const JW=2147483648;class QW extends Array{static from(e){return super.from(e).map((e=>e>>>0))}static fromString(e){if(0===e.length)return new QW;let t=e.split("/");const r=[];"m"===t[0]&&(t=t.slice(1));for(let n of t){if(0===n.length)throw new nc(e,": Invalid BIP32 path");let t=0;const i=n[n.length-1];"'"!==i&&"h"!==i&&"H"!==i||(t=JW,n=n.slice(0,n.length-1));const o=(parseInt(n,10)|t)>>>0;r.push(o)}return QW.from(r)}}class eG{constructor(e,t){this.priv=e,this.chainCode=t}static fromSeed(e){const t="string"===typeof e?HW(e):e;if(t.length<16||t.length>64)throw new WW(t.length);const r=(new TextEncoder).encode("ed25519 seed"),n=new IW.yj(MW.SHA512,r).update(t).digest();return new eG((0,$s.K)(n.subarray(0,32)).secretKey,n.subarray(32))}seed(){return this.priv.subarray(0,32)}derive(e){if(0===(e&JW))throw new nc(e.toString(),": Non-hardened derivation path.");const t=new Uint8Array(37);t.set(this.seed(),1),new DataView(t.buffer).setUint32(33,e);const r=new IW.yj(MW.SHA512,this.chainCode).update(t).digest();return new eG((0,$s.K)(r.subarray(0,32)).secretKey,r.subarray(32))}derivePath(e){let t=this;for(const r of e)t=t.derive(r);return t}}class tG{static fromFundraiser(e,t,r){if(!RW.JB(r))throw new VW(r);const n=fl(RW.kw(r,`${e}${t}`).slice(0,32),$c.edsk2);return new tG(n)}static fromSecretKey(e,t){return DW(this,void 0,void 0,(function*(){return new tG(e,t)}))}static fromMnemonic({mnemonic:e,password:t="",derivationPath:r="44'/1729'/0'/0'",curve:n="ed25519"}){if(!RW.JB(e))throw new VW(e);const i=((e,t,r)=>{const n=QW.fromString(t);let i;switch(r){case"ed25519":return i=eG.fromSeed(e).derivePath(n),fl(i.seed().slice(0,32),$c.edsk2);case"secp256k1":case"p256":{const t="secp256k1"===r?$c.spsk:$c.p2sk;let i=XW.fromSeed(e,r);return i=i.derivePath(n),fl(new Uint8Array(i.keyPair.getPrivate().toArray()),t)}case"bip25519":throw new GW;default:throw new KW(`Unsupported curve "${r}" expecting one of the following "ed25519", "secp256k1", "p256"`)}})(RW.kw(e,t),r,n);return new tG(i)}constructor(e,t){const r="e"===e.substring(2,3);let n=e=>e;if(r){if(!t)throw new ZW("No passphrase provided to decrypt encrypted key");n=e=>{const r=Fc()(e.slice(0,8)),n=e.slice(8),i=CW.pbkdf2Sync(t,r,32768,32,"sha512");return(0,bL.openSecretBox)(new Uint8Array(i),new Uint8Array(24),new Uint8Array(n))}}switch(e.substring(0,4)){case"edes":case"edsk":this._key=new zW(e,r,n);break;case"spsk":case"spes":this._key=new $W(e,r,n);break;case"p2sk":case"p2es":this._key=new FW(e,r,n);break;default:throw new sc(`${cl(qc.NO_PREFIX_MATCHED)} expecting one of the following '${Dc.EDESK}', '${Dc.EDSK}', '${Dc.SPSK}', '${Dc.SPESK}', '${Dc.P2SK}' or '${Dc.P2ESK}'.`)}}sign(e,t){return DW(this,void 0,void 0,(function*(){let r=vl(e);"undefined"!==typeof t&&(r=yl(t,r));const n=(0,Hs.hash)(r,32);return this._key.sign(e,n)}))}publicKey(){return DW(this,void 0,void 0,(function*(){return this._key.publicKey()}))}publicKeyHash(){return DW(this,void 0,void 0,(function*(){return this._key.publicKeyHash()}))}secretKey(){return DW(this,void 0,void 0,(function*(){return this._key.secretKey()}))}}function rG(e){return"function"===typeof e}function nG(e){var t=e((function(e){Error.call(e),e.stack=(new Error).stack}));return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var iG=nG((function(e){return function(t){e(this),this.message=t?t.length+" errors occurred during unsubscription:\n"+t.map((function(e,t){return t+1+") "+e.toString()})).join("\n "):"",this.name="UnsubscriptionError",this.errors=t}}));function oG(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var aG=function(){function e(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var e,t,r,n,i;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var a=wM(o),s=a.next();!s.done;s=a.next()){s.value.remove(this)}}catch(f){e={error:f}}finally{try{s&&!s.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}else o.remove(this);var c=this.initialTeardown;if(rG(c))try{c()}catch(pge){i=pge instanceof iG?pge.errors:[pge]}var l=this._finalizers;if(l){this._finalizers=null;try{for(var u=wM(l),d=u.next();!d.done;d=u.next()){var h=d.value;try{lG(h)}catch(kne){i=null!==i&&void 0!==i?i:[],kne instanceof iG?i=_M(_M([],xM(i)),xM(kne.errors)):i.push(kne)}}}catch(p){r={error:p}}finally{try{d&&!d.done&&(n=u.return)&&n.call(u)}finally{if(r)throw r.error}}}if(i)throw new iG(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)lG(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=null!==(r=this._finalizers)&&void 0!==r?r:[]).push(t)}},e.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},e.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},e.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&oG(t,e)},e.prototype.remove=function(t){var r=this._finalizers;r&&oG(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}(),sG=aG.EMPTY;function cG(e){return e instanceof aG||e&&"closed"in e&&rG(e.remove)&&rG(e.add)&&rG(e.unsubscribe)}function lG(e){rG(e)?e():e.unsubscribe()}var uG={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},dG={setTimeout:function(e,t){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(t){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,t)},t.prototype._subscribe=function(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)},t.prototype._innerSubscribe=function(e){var t=this,r=this,n=r.hasError,i=r.isStopped,o=r.observers;return n||i?sG:(this.currentObservers=null,o.push(e),new aG((function(){t.currentObservers=null,oG(o,e)})))},t.prototype._checkFinalizedStatuses=function(e){var t=this,r=t.hasError,n=t.thrownError,i=t.isStopped;r?e.error(n):i&&e.complete()},t.prototype.asObservable=function(){var e=new TG;return e.source=this,e},t.create=function(e,t){return new IG(e,t)},t}(TG),IG=function(e){function t(t,r){var n=e.call(this)||this;return n.destination=t,n.source=r,n}return mM(t,e),t.prototype.next=function(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,e)},t.prototype.error=function(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,e)},t.prototype.complete=function(){var e,t;null===(t=null===(e=this.destination)||void 0===e?void 0:e.complete)||void 0===t||t.call(e)},t.prototype._subscribe=function(e){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(e))&&void 0!==r?r:sG},t}(RG),MG={now:function(){return(MG.delegate||Date).now()},delegate:void 0},LG=function(e){function t(t,r,n){void 0===t&&(t=1/0),void 0===r&&(r=1/0),void 0===n&&(n=MG);var i=e.call(this)||this;return i._bufferSize=t,i._windowTime=r,i._timestampProvider=n,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=r===1/0,i._bufferSize=Math.max(1,t),i._windowTime=Math.max(1,r),i}return mM(t,e),t.prototype.next=function(t){var r=this,n=r.isStopped,i=r._buffer,o=r._infiniteTimeWindow,a=r._timestampProvider,s=r._windowTime;n||(i.push(t),!o&&i.push(a.now()+s)),this._trimBuffer(),e.prototype.next.call(this,t)},t.prototype._subscribe=function(e){this._throwIfClosed(),this._trimBuffer();for(var t=this._innerSubscribe(e),r=this._infiniteTimeWindow,n=this._buffer.slice(),i=0;i0&&d(i)}),void 0,void 0,(function(){(null===o||void 0===o?void 0:o.closed)||null===o||void 0===o||o.unsubscribe(),s=null}))),!l&&d(null!=n?"number"===typeof n?n:+n-c.now():i)}))}function zZ(e){throw new NZ(e)}function BZ(e,t){return rG(t)?_Z(e,t,1):_Z(e,1)}function UZ(){for(var e=[],t=0;t0&&(t=new _G({next:function(e){return m.next(e)},error:function(e){u=!0,d(),n=HZ(h,i,e),m.error(e)},complete:function(){l=!0,d(),n=HZ(h,a),m.complete()}}),WG(e).subscribe(t))}))(e)}}function HZ(e,t){for(var r=[],n=2;n=2;return function(n){return n.pipe(e?qZ((function(t,r){return e(t,r,n)})):PG,(o=1)<=0?function(){return YG}:nZ((function(e,t){var r=0;e.subscribe(iZ(t,(function(e){++r<=o&&(t.next(e),o<=r&&t.complete())})))})),r?function(e){return nZ((function(t,r){var n=!1;t.subscribe(iZ(r,(function(e){n=!0,r.next(e)}),(function(){n||r.next(e),r.complete()})))}))}(t):(void 0===(i=function(){return new KZ})&&(i=WZ),nZ((function(e,t){var r=!1;e.subscribe(iZ(t,(function(e){r=!0,t.next(e)}),(function(){return r?t.complete():t.error(i())})))}))));var i,o}}function ZZ(e){return nZ((function(t,r){var n,i=null,o=!1;i=t.subscribe(iZ(r,void 0,void 0,(function(a){n=WG(e(a,ZZ(e)(t))),i?(i.unsubscribe(),i=null,n.subscribe(r)):o=!0}))),o&&(i.unsubscribe(),i=null,n.subscribe(r))}))}function YZ(e,t){return void 0===t&&(t=PG),e=null!==e&&void 0!==e?e:XZ,nZ((function(r,n){var i,o=!0;r.subscribe(iZ(n,(function(r){var a=t(r);!o&&e(i,a)||(o=!1,i=a,n.next(r))})))}))}function XZ(e,t){return e===t}function JZ(e){var t;void 0===e&&(e=1/0);var r=(t=e&&"object"===typeof e?e:{count:e}).count,n=void 0===r?1/0:r,i=t.delay,o=t.resetOnSuccess,a=void 0!==o&&o;return n<=0?PG:nZ((function(e,t){var r,o=0,s=function(){var c=!1;r=e.subscribe(iZ(t,(function(e){a&&(o=0),t.next(e)}),void 0,(function(e){if(o++{r.set(t,e[t])})),r}typecheckKey(e){this.keySchema&&this.keySchema.Typecheck(e)}typecheckValue(e){this.valueSchema&&this.valueSchema.Typecheck(e)}assertTypecheckValue(e){try{this.typecheckValue(e)}catch(pge){throw new dY(e,this.valueSchema,"value",pge)}}assertTypecheckKey(e){try{this.typecheckKey(e)}catch(pge){throw new dY(e,this.keySchema,"key",pge)}}serializeDeterministically(e){return sY()(e)}*keys(){for(const[e]of this.entries())yield e}*values(){for(const[,e]of this.entries())yield e}*entries(){for(const e of this.valueMap.keys())yield[this.keyMap.get(e),this.valueMap.get(e)]}get(e){this.assertTypecheckKey(e);const t=this.serializeDeterministically(e);return this.valueMap.get(t)}set(e,t){this.assertTypecheckKey(e),this.assertTypecheckValue(t);const r=this.serializeDeterministically(e);this.keyMap.set(r,e),this.valueMap.set(r,t)}delete(e){this.assertTypecheckKey(e),this.keyMap.delete(this.serializeDeterministically(e)),this.valueMap.delete(this.serializeDeterministically(e))}has(e){this.assertTypecheckKey(e);const t=this.serializeDeterministically(e);return this.keyMap.has(t)&&this.valueMap.has(t)}clear(){this.keyMap.clear(),this.valueMap.clear()}get size(){return this.keyMap.size}forEach(e){for(const[t,r]of this.entries())e(r,t,this)}}oY=uY;class fY extends Gs{constructor(e,t,r){super(),this.value=e,this.token=t,this.name="TokenValidationError";const n=this.token.annot(),i=n?`[${n}] `:"";this.message=`${i}${r}`}}class pY{constructor(e,t,r){this.val=e,this.idx=t,this.fac=r,this.createToken=this.fac}typeWithoutAnnotations(){const e=t=>{if("object"===typeof t){if(Array.isArray(t)){return t.map((t=>e(t)))}const r=t;return r.args?{prim:r.prim,args:r.args.map((t=>e(t)))}:{prim:r.prim}}return t};return(t=this.val).args?{prim:t.prim,args:t.args.map((t=>e(t)))}:{prim:t.prim};var t}annot(){return(Array.isArray(this.val.annots)&&this.val.annots.length>0?this.val.annots[0]:String(this.idx)).replace(/(%|:)(_Liq_entry_)?/,"")}hasAnnotations(){return Array.isArray(this.val.annots)&&this.val.annots.length}get tokenVal(){return this.val}ExtractSignature(){return[[this.ExtractSchema()]]}}class mY extends pY{compare(e,t){return e===t?0:ethis.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(t.get(e))]})))}EncodeObject(e,t){const r=this.objLitToMichelsonMap(e);return this.validate(r),t&&t[vY.prim]?t[vY.prim](r,this.val):Array.from(r.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(r.get(e))]})))}Execute(e,t){if(t&&t[vY.prim])return t[vY.prim](e,this.val);if(Array.isArray(e)){const t=new hY(this.val);return e.forEach((e=>{t.set(this.KeySchema.ToKey(e.args[0]),this.ValueSchema.Execute(e.args[1]))})),t}if("int"in e)return e.int;throw new gY(e,this,`Big map is expecting either an array (Athens) or an object with an int property (Babylon). Got ${JSON.stringify(e)}`)}findAndReturnTokens(e,t){return vY.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),this.ValueSchema.findAndReturnTokens(e,t),t}}vY.prim="big_map";class yY extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="OrValidationError"}}class bY extends mY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Encode(e){const t=e[e.length-1],r=this.createToken(this.val.args[0],this.idx);let n=1;r instanceof bY&&(n=Object.keys(r.ExtractSchema()).length);const i=this.createToken(this.val.args[1],this.idx+n);if(String(r.annot())!==String(t)||r instanceof bY){if(String(i.annot())!==String(t)||i instanceof bY){if(r instanceof bY){const t=r.Encode(e);if(t)return{prim:"Left",args:[t]}}if(i instanceof bY){const t=i.Encode(e);if(t)return{prim:"Right",args:[t]}}return null}return e.pop(),{prim:"Right",args:[i.Encode(e)]}}return e.pop(),{prim:"Left",args:[r.Encode(e)]}}ExtractSignature(){const e=this.createToken(this.val.args[0],this.idx);let t=1;e instanceof bY&&(t=Object.keys(e.ExtractSchema()).length);const r=this.createToken(this.val.args[1],this.idx+t),n=[];if(e instanceof bY)n.push(...e.ExtractSignature());else for(const i of e.ExtractSignature())n.push([e.annot(),...i]);if(r instanceof bY)n.push(...r.ExtractSignature());else for(const i of r.ExtractSignature())n.push([r.annot(),...i]);return n}EncodeObject(e,t){this.validateJavascriptObject(e);const r=Object.keys(e)[0],n=this.createToken(this.val.args[0],this.idx);let i=1;n instanceof bY&&(i=Object.keys(n.ExtractSchema()).length);const o=this.createToken(this.val.args[1],this.idx+i);if(String(n.annot())!==String(r)||n instanceof bY){if(String(o.annot())!==String(r)||o instanceof bY){if(n instanceof bY){const r=n.EncodeObject(e,t);if(r)return{prim:"Left",args:[r]}}if(o instanceof bY){const r=o.EncodeObject(e,t);if(r)return{prim:"Right",args:[r]}}return null}return{prim:"Right",args:[o.EncodeObject(e[r],t)]}}return{prim:"Left",args:[n.EncodeObject(e[r],t)]}}validateJavascriptObject(e){if("object"!==typeof e||Array.isArray(e)||null===e||1!==Object.keys(e).length)throw new yY(e,this,`EncodeObject expects an object with a single key but got: ${JSON.stringify(e)}`)}Execute(e,t){const r=this.createToken(this.val.args[0],this.idx);let n=1;r instanceof bY&&(n=Object.keys(r.ExtractSchema()).length);const i=this.createToken(this.val.args[1],this.idx+n);if("Right"===e.prim)return i instanceof bY?i.Execute(e.args[0],t):{[i.annot()]:i.Execute(e.args[0],t)};if("Left"===e.prim)return r instanceof bY?r.Execute(e.args[0],t):{[r.annot()]:r.Execute(e.args[0],t)};throw new yY(e,this,`Was expecting Left or Right prim but got: ${JSON.stringify(e.prim)}`)}traversal(e,t,r){const n=this.createToken(this.val.args[0],this.idx);let i,o=1;n instanceof bY?(i=e(n),o=Object.keys(n.ExtractSchema()).length):i={[n.annot()]:e(n)};const a=this.createToken(this.val.args[1],this.idx+o);let s;s=a instanceof bY?t(a):{[a.annot()]:t(a)};return r(i,s)}ExtractSchema(){return this.traversal((e=>e.ExtractSchema()),(e=>e.ExtractSchema()),((e,t)=>Object.assign(Object.assign({},e),t)))}generateSchema(){return{__michelsonType:bY.prim,schema:this.traversal((e=>e instanceof bY?e.generateSchema().schema:e.generateSchema()),(e=>e instanceof bY?e.generateSchema().schema:e.generateSchema()),((e,t)=>Object.assign(Object.assign({},e),t)))}}findToken(e){const t=this.createToken(this.val.args[0],this.idx);let r=1;t instanceof bY&&(r=Object.keys(t.ExtractSchema()).length);const n=this.createToken(this.val.args[1],this.idx+r);if(String(t.annot())===String(e)&&!(t instanceof bY)&&t instanceof mY)return t;if(String(n.annot())===String(e)&&!(n instanceof bY)&&n instanceof mY)return n;if(t instanceof bY){const r=t.findToken(e);if(r)return r}if(n instanceof bY){const t=n.findToken(e);if(t)return t}return null}compare(e,t){const r=Object.keys(e)[0];if(r!==Object.keys(t)[0]){return JSON.stringify(this.EncodeObject(e))r.findAndReturnTokens(e,t)),(r=>r.findAndReturnTokens(e,t)),((e,t)=>Object.assign(Object.assign({},e),t))),t}}bY.prim="or";class wY extends Gs{constructor(e){super(e),this.message=e,this.name="TokenArgumentValidationError"}}class xY extends Gs{constructor(e,t){super(),this.val1=e,this.val2=t,this.name="TokenComparisonError",this.message=`Tokens ${JSON.stringify(e)} and ${JSON.stringify(t)} are not comparable`}}function _Y(e,t=kY.prim){if(Array.isArray(e))return _Y({prim:t,args:e},t);if(void 0===e.args)throw new wY(`The value ${JSON.stringify(e)} is an invalid PairToken with no arguments, a pair must have two or more arguments.`);return e.args.length>2?[e.args[0],{prim:t,args:e.args.slice(1)}]:[e.args[0],e.args[1]]}class kY extends mY{constructor(e,t,r){super(Array.isArray(e)?{prim:kY.prim,args:e}:e.prim?e:{prim:kY.prim,args:e},t,r)}args(){return _Y(this.val)}tokens(){let e=0;return this.args().map((t=>{const r=this.createToken(t,this.idx+e);return r instanceof kY?e+=Object.keys(r.ExtractSchema()).length:e++,r}))}Encode(e){return{prim:"Pair",args:this.tokens().map((t=>t.Encode(e)))}}ExtractSignature(){const e=this.args(),t=this.createToken(e[0],this.idx);let r=1;t instanceof bY&&(r=Object.keys(t.ExtractSchema()).length);const n=this.createToken(e[1],this.idx+r),i=[];for(const o of t.ExtractSignature())for(const e of n.ExtractSignature())i.push([...o,...e]);return i}ToBigMapKey(e){return{key:this.EncodeObject(e),type:this.typeWithoutAnnotations()}}ToKey(e){return this.Execute(e)}EncodeObject(e,t){const[r,n]=this.tokens();let i,o;return i=r instanceof kY&&!r.hasAnnotations()?e:e[r.annot()],o=n instanceof kY&&!n.hasAnnotations()?e:e[n.annot()],{prim:"Pair",args:[r.EncodeObject(i,t),n.EncodeObject(o,t)]}}traversal(e,t){const r=this.args(),n=this.createToken(r[0],this.idx);let i,o=1;n instanceof kY&&!n.hasAnnotations()?(i=e(n),n instanceof kY&&(o=Object.keys(n.ExtractSchema()).length)):i={[n.annot()]:e(n)};const a=this.createToken(r[1],this.idx+o);let s;s=a instanceof kY&&!a.hasAnnotations()?t(a):{[a.annot()]:t(a)};return Object.assign(Object.assign({},i),s)}Execute(e,t){const r=_Y(e,"Pair");return this.traversal((e=>e.Execute(r[0],t)),(e=>e.Execute(r[1],t)))}ExtractSchema(){return this.traversal((e=>e.ExtractSchema()),(e=>e.ExtractSchema()))}generateSchema(){return{__michelsonType:kY.prim,schema:this.traversal((e=>e instanceof kY&&!e.hasAnnotations()?e.generateSchema().schema:e.generateSchema()),(e=>e instanceof kY&&!e.hasAnnotations()?e.generateSchema().schema:e.generateSchema()))}}compare(e,t){const[r,n]=this.tokens(),i=(e,t)=>e instanceof kY&&!e.hasAnnotations()?t:t[e.annot()];if(r instanceof mY&&n instanceof mY){const o=r.compare(i(r,e),i(r,t));return 0===o?n.compare(i(n,e),i(n,t)):o}throw new xY(e,t)}findAndReturnTokens(e,t){return kY.prim===e&&t.push(this),this.tokens().map((r=>r.findAndReturnTokens(e,t))),t}}kY.prim="pair";class SY extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="NatValidationError"}}class EY extends mY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return new Nc(e[Object.keys(e)[0]])}Encode(e){const t=e.pop();return this.validate(t),{int:new Nc(t).toFixed()}}validate(e){const t=new Nc(e);if(t.isNaN())throw new SY(e,this,`Value is not a number: ${JSON.stringify(e)}`);if(t.isNegative())throw new SY(e,this,`Value cannot be negative: ${JSON.stringify(e)}`)}EncodeObject(e,t){return this.validate(e),t&&t[EY.prim]?t[EY.prim](e):{int:new Nc(e).toFixed()}}ExtractSchema(){return EY.prim}generateSchema(){return{__michelsonType:EY.prim,schema:EY.prim}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:EY.prim}}}ToKey({int:e}){return new Nc(e)}compare(e,t){const r=Number(e),n=Number(t);return r===n?0:re.startsWith("tz"),n=r(e),i=r(t);return n&&!i?-1:i&&!n?1:super.compare(e,t)}findAndReturnTokens(e,t){return OY.prim===e&&t.push(this),t}}OY.prim="address";class TY extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="MapValidationError"}}class jY extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get ValueSchema(){return this.createToken(this.val.args[1],0)}get KeySchema(){return this.createToken(this.val.args[0],0)}validate(e){if(!hY.isMichelsonMap(e))throw new TY(e,this,`Value ${JSON.stringify(e)} is not a valid MichelsonMap`)}Execute(e,t){const r=new hY(this.val);return e.forEach((e=>{r.set(this.KeySchema.ToKey(e.args[0]),this.ValueSchema.Execute(e.args[1],t))})),r}objLitToMichelsonMap(e){return e instanceof hY?e:"object"===typeof e?0===Object.keys(e).length?new hY:hY.fromLiteral(e):e}Encode(e){const t=this.objLitToMichelsonMap(e.pop());return this.validate(t),Array.from(t.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(t.get(e))]})))}EncodeObject(e,t){const r=this.objLitToMichelsonMap(e);return this.validate(r),t&&t[jY.prim]?t[jY.prim](r):Array.from(r.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(r.get(e))]})))}ExtractSchema(){return{map:{key:this.KeySchema.ExtractSchema(),value:this.ValueSchema.ExtractSchema()}}}generateSchema(){return{__michelsonType:jY.prim,schema:{key:this.KeySchema.generateSchema(),value:this.ValueSchema.generateSchema()}}}findAndReturnTokens(e,t){return jY.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),this.ValueSchema.findAndReturnTokens(e,t),t}}jY.prim="map";class CY extends mY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return"true"===String(e.prim).toLowerCase()}Encode(e){return{prim:e.pop()?"True":"False"}}EncodeObject(e,t){return t&&t[CY.prim]?t[CY.prim](e):{prim:e?"True":"False"}}ExtractSchema(){return CY.prim}generateSchema(){return{__michelsonType:CY.prim,schema:CY.prim}}ToBigMapKey(e){return{key:this.EncodeObject(e),type:{prim:CY.prim}}}ToKey(e){return this.EncodeObject(e)}compare(e,t){return e&&t||!e&&!t?0:e?1:-1}findAndReturnTokens(e,t){return CY.prim===e&&t.push(this),t}}CY.prim="bool";class RY extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ContractValidationError"}}class IY extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(tl(e)!==qc.VALID)throw new RY(e,this,`Value ${JSON.stringify(e)} is not a valid contract address.`);return null}Execute(e){if(e.string)return e.string;if(!e.bytes)throw new RY(e,this,`Value ${JSON.stringify(e)} is not a valid contract address. must contain bytes or string.`);return ml(e.bytes)}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[IY.prim]?t[IY.prim](e):{string:e}}ExtractSchema(){return IY.prim}generateSchema(){const e=this.createToken(this.val.args[0],0);return{__michelsonType:IY.prim,schema:{parameter:this.val.args[0]?e.generateSchema():{}}}}findAndReturnTokens(e,t){return IY.prim===e&&t.push(this),t}}IY.prim="contract";class MY extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ListValidationError"}}class LY extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueSchema(){return this.createToken(this.val.args[0],this.idx)}validate(e){if(!Array.isArray(e))throw new MY(e,this,`Value ${JSON.stringify(e)} is not a valid array`)}Encode(e){const t=e.pop();this.validate(t);const r=this.createToken(this.val.args[0],0);return t.reduce(((e,t)=>[...e,r.EncodeObject(t)]),[])}Execute(e,t){const r=this.createToken(this.val.args[0],0);return this.validate(e),e.reduce(((e,n)=>[...e,r.Execute(n,t)]),[])}EncodeObject(e,t){const r=this.createToken(this.val.args[0],0);return this.validate(e),t&&t[LY.prim]?t[LY.prim](e):e.reduce(((e,t)=>[...e,r.EncodeObject(t)]),[])}ExtractSchema(){return{[LY.prim]:this.valueSchema.ExtractSchema()}}generateSchema(){return{__michelsonType:LY.prim,schema:this.valueSchema.generateSchema()}}findAndReturnTokens(e,t){return LY.prim===e&&t.push(this),this.createToken(this.val.args[0],this.idx).findAndReturnTokens(e,t),t}}LY.prim="list";class NY extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="MutezValidationError"}}class DY extends mY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return new Nc(e[Object.keys(e)[0]])}ExtractSchema(){return DY.prim}generateSchema(){return{__michelsonType:DY.prim,schema:DY.prim}}validate(e){if(new Nc(e).isNaN())throw new NY(e,this,`Value is not a number: ${e}`)}Encode(e){const t=e.pop();return this.validate(t),{int:String(t).toString()}}EncodeObject(e,t){return this.validate(e),t&&t[DY.prim]?t[DY.prim](e):{int:String(e).toString()}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:DY.prim}}}ToKey({int:e}){return e}compare(e,t){const r=Number(e),n=Number(t);return r===n?0:rthis.KeySchema.compare(e,t))).reduce(((e,t)=>[...e,this.KeySchema.EncodeObject(t)]),[])}Execute(e,t){return e.reduce(((e,r)=>[...e,this.KeySchema.Execute(r,t)]),[])}EncodeObject(e,t){return this.validate(e),t&&t[eX.prim]?t[eX.prim](e):e.sort(((e,t)=>this.KeySchema.compare(e,t))).reduce(((e,t)=>[...e,this.KeySchema.EncodeObject(t)]),[])}ExtractSchema(){return eX.prim}generateSchema(){return{__michelsonType:eX.prim,schema:this.KeySchema.generateSchema()}}findAndReturnTokens(e,t){return eX.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),t}}eX.prim="set";class tX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChainIDValidationError"}}class rX extends mY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(rl(e)!==qc.VALID)throw new tX(e,this,`Value ${JSON.stringify(e)} is not a valid ChainID`)}Execute(e){return e[Object.keys(e)[0]]}ExtractSchema(){return rX.prim}generateSchema(){return{__michelsonType:rX.prim,schema:rX.prim}}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[rX.prim]?t[rX.prim](e):{string:e}}ToKey({string:e}){return e}ToBigMapKey(e){return{key:{string:e},type:{prim:rX.prim}}}findAndReturnTokens(e,t){return rX.prim===e&&t.push(this),t}}rX.prim="chain_id";class nX extends Gs{constructor(){super(),this.name="TicketEncodeError",this.message="Tickets cannot be sent to the blockchain; they are created on-chain"}}const iX={prim:"contract"},oX={prim:"int"};class aX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueToken(){return this.createToken(this.val.args[0],this.idx)}Encode(e){throw new nX}EncodeObject(e,t){if(t&&t[aX.prim])return t[aX.prim](e,this.val);throw new nX}Execute(e,t){if(t&&t[aX.prim])return t[aX.prim](e,this.val);const r=this.createToken(iX,this.idx),n=this.valueToken,i=this.createToken(oX,this.idx);return void 0===e.args[2]&&void 0!==e.args[1].args?{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1].args[0],t),amount:i.Execute(e.args[1].args[1],t)}:{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1],t),amount:i.Execute(e.args[2],t)}}ExtractSchema(){return{ticketer:IY.prim,value:this.valueToken.ExtractSchema(),amount:HY.prim}}generateSchema(){return{__michelsonType:aX.prim,schema:{value:this.valueToken.generateSchema(),ticketer:{__michelsonType:IY.prim,schema:IY.prim},amount:{__michelsonType:HY.prim,schema:HY.prim}}}}findAndReturnTokens(e,t){return aX.prim===e&&t.push(this),this.valueToken.findAndReturnTokens(e,t),t}}aX.prim="ticket";class sX extends Gs{constructor(){super(),this.name="TicketDeprecatedEncodeError",this.message="Ticket_deprecated cannot be sent to the blockchain; they are created on-chain"}}const cX={prim:"contract"},lX={prim:"int"};class uX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueToken(){return this.createToken(this.val.args[0],this.idx)}Encode(e){throw new sX}EncodeObject(e,t){if(t&&t[uX.prim])return t[uX.prim](e,this.val);throw new sX}Execute(e,t){if(t&&t[uX.prim])return t[uX.prim](e,this.val);const r=this.createToken(cX,this.idx),n=this.valueToken,i=this.createToken(lX,this.idx);return void 0===e.args[2]&&void 0!==e.args[1].args?{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1].args[0],t),amount:i.Execute(e.args[1].args[1],t)}:{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1],t),amount:i.Execute(e.args[2],t)}}ExtractSchema(){return{ticketer:IY.prim,value:this.valueToken.ExtractSchema(),amount:HY.prim}}generateSchema(){return{__michelsonType:uX.prim,schema:{value:this.valueToken.generateSchema(),ticketer:{__michelsonType:IY.prim,schema:IY.prim},amount:{__michelsonType:HY.prim,schema:HY.prim}}}}findAndReturnTokens(e,t){return uX.prim===e&&t.push(this),this.valueToken.findAndReturnTokens(e,t),t}}uX.prim="ticket_deprecated";class dX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="NeverTokenError"}}class hX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Encode(e){const t=e.pop();throw new dX(t,this,`Assigning a value to the type never is forbidden. Trying to assign ${JSON.stringify(t)}.`)}EncodeObject(e,t){if(t&&t[hX.prim])return t[hX.prim](e);throw new dX(e,this,`Assigning a value to the type never is forbidden. Trying to assign ${JSON.stringify(e)}.`)}Execute(e){throw new dX(e,this,`There is no literal value for the type never. Trying to execute ${JSON.stringify(e)}.`)}ExtractSchema(){return hX.prim}generateSchema(){return{__michelsonType:hX.prim,schema:hX.prim}}findAndReturnTokens(e,t){return hX.prim===e&&t.push(this),t}}hX.prim="never";class fX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingStateValidationError"}}class pX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}isValid(e){return"object"===typeof e&&0===Object.keys(e).length}Execute(e,t){if(t&&t[pX.prim])return t[pX.prim](e,this.val);if("int"in e)return e.int;throw new fX(e,this,`Sapling state is expecting an object with an int property. Got ${JSON.stringify(e)}`)}Encode(e){const t=e.pop();if(this.isValid(t))return[];throw new fX(t,this,`Invalid sapling_state. Received: ${JSON.stringify(t)} while expecting: {}`)}EncodeObject(e,t){if(t&&t[pX.prim])return t[pX.prim](e);if(this.isValid(e))return[];throw new fX(e,this,`Invalid sapling_state. Received: ${JSON.stringify(e)} while expecting: {}`)}ExtractSchema(){return{[pX.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:pX.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return pX.prim===e&&t.push(this),t}}pX.prim="sapling_state";class mX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingTransactionValidationError"}}class gX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){throw new mX(e,this,`There is no literal value for the sapling_transaction type. Got: ${JSON.stringify(e)}.`)}validateBytes(e){const t=/^(0x|0X)?([0-9a-fA-F]*$)/.exec(e);if(t&&t[2].length%2===0)return t[2];throw new mX(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?cY.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.validateBytes(this.convertUint8ArrayToHexString(t)),{bytes:String(t).toString()}}EncodeObject(e,t){return e=this.validateBytes(this.convertUint8ArrayToHexString(e)),t&&t[gX.prim]?t[gX.prim](e):{bytes:String(e).toString()}}ExtractSchema(){return{[gX.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:gX.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return gX.prim===e&&t.push(this),t}}gX.prim="sapling_transaction";class vX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingTransactionDeprecatedValidationError"}}class yX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){throw new vX(e,this,`There is no literal value for the sapling_transaction_deprecated type. Got: ${JSON.stringify(e)}.`)}validateBytes(e){const t=/^(0x|0X)?([0-9a-fA-F]*$)/.exec(e);if(t&&t[2].length%2===0)return t[2];throw new vX(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?cY.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.validateBytes(this.convertUint8ArrayToHexString(t)),{bytes:String(t).toString()}}EncodeObject(e,t){return e=this.validateBytes(this.convertUint8ArrayToHexString(e)),t&&t[yX.prim]?t[yX.prim](e):{bytes:String(e).toString()}}ExtractSchema(){return{[yX.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:yX.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return yX.prim===e&&t.push(this),t}}yX.prim="sapling_transaction_deprecated";class bX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381frValidationError"}}class wX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new bX(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?cY.from(e).toString("hex"):e}Encode(e){let t=e.pop();return"number"===typeof t?{int:t.toString()}:(t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t})}EncodeObject(e,t){return t&&t[wX.prim]?t[wX.prim](e):"number"===typeof e?{int:e.toString()}:(e=this.convertUint8ArrayToHexString(e),this.validate(e),{bytes:e})}Execute(e){return e.bytes}ExtractSchema(){return wX.prim}generateSchema(){return{__michelsonType:wX.prim,schema:wX.prim}}findAndReturnTokens(e,t){return wX.prim===e&&t.push(this),t}}wX.prim="bls12_381_fr";class xX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381g1ValidationError"}}class _X extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new xX(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?cY.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[_X.prim]?t[_X.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return _X.prim}generateSchema(){return{__michelsonType:_X.prim,schema:_X.prim}}findAndReturnTokens(e,t){return _X.prim===e&&t.push(this),t}}_X.prim="bls12_381_g1";class kX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381g2ValidationError"}}class SX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new kX(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?cY.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[SX.prim]?t[SX.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return SX.prim}generateSchema(){return{__michelsonType:SX.prim,schema:SX.prim}}findAndReturnTokens(e,t){return SX.prim===e&&t.push(this),t}}SX.prim="bls12_381_g2";class EX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChestValidationError"}}class AX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!=0)throw new EX(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?cY.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[AX.prim]?t[AX.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return AX.prim}generateSchema(){return{__michelsonType:AX.prim,schema:AX.prim}}findAndReturnTokens(e,t){return AX.prim===e&&t.push(this),t}}AX.prim="chest";class PX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChestKeyValidationError"}}class OX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new PX(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?cY.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[OX.prim]?t[OX.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return OX.prim}generateSchema(){return{__michelsonType:OX.prim,schema:OX.prim}}findAndReturnTokens(e,t){return OX.prim===e&&t.push(this),t}}OX.prim="chest_key";class TX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="GlobalConstantEncodingError"}}class jX extends fY{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="GlobalConstantDecodingError"}}class CX extends pY{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e,t){if(t&&t[CX.prim])return t[CX.prim](e,this.val);throw new jX(e,this,`Unable to decode a value represented by a global constants. Please provide an expanded script to the Michelson-Encoder or semantics for the decoding. The following global constant hash was encountered: ${this.val.args[0].string}.`)}Encode(e){throw new TX(e,this,`Unable to encode a script containing global constants. Please provide an expanded script to the Michelson-Encoder. The following global constant hash was encountered: ${this.val.args[0].string}.`)}EncodeObject(e,t){if(t&&t[CX.prim])return t[CX.prim](e);throw new TX(e,this,`Unable to encode a script containing global constants. Please provide an expanded script to the Michelson-Encoder. The following global constant hash was encountered: ${this.val.args[0].string}.`)}ExtractSchema(){return CX.prim}generateSchema(){return{__michelsonType:CX.prim,schema:{hash:this.val.args[0].string}}}findAndReturnTokens(e,t){return CX.prim===e&&t.push(this),t}}CX.prim="constant";const RX=[kY,EY,AY,vY,OY,jY,CY,bY,IY,LY,DY,BY,UY,FY,HY,VY,KY,GY,YY,XY,JY,eX,rX,aX,uX,hX,pX,gX,yX,wX,_X,SX,AX,OX,CX];class IX extends Gs{constructor(e,t){super(e),this.message=e,this.data=t,this.name="Invalid token error"}}function MX(e,t){if(Array.isArray(e))return new kY(e,t,MX);const r=RX.find((t=>t.prim===e.prim));if(!r)throw new IX(`Malformed data: ${JSON.stringify(e)}. Expected a value with a valid prim property`,e);return new r(e,t,MX)}class LX extends ac{constructor(e,t,r,n){super(e,t,r,n),this.viewName=e,this.sigs=t,this.args=r,this.cause=n,this.name="ParameterEncodingError",this.message=`Could not encode parameter ${JSON.stringify(r)} received for name "${e}" expecting one of the following signatures ${JSON.stringify(t)}`}}class NX extends Gs{constructor(e,t){super(),this.script=e,this.reason=t,this.name="InvalidScriptError";let r="Invalid on-chain view found in the following script.";t&&(r+=` Reason: ${t}.`),r+=`Script: ${JSON.stringify(e)}`,this.message=r}}class DX extends Gs{constructor(e,t){super(),this.script=e,this.reason=t,this.name="InvalidRpcResponseError";let r="Invalid RPC response passed as argument(s).";t&&(r+=` Reason: ${t}.`),r+=` Received: ${JSON.stringify(e)}`,this.message=r}}class zX extends Gs{constructor(e){super(e),this.message=e,this.name="InvalidBigMapSchemaError"}}class BX extends Gs{constructor(e,t){super(e),this.message=e,this.value=t,this.name="InvalidBigMapDiffError"}}class UX extends Gs{constructor(e,t,r,n){super(),this.details=t,this.schema=r,this.value=n,this.name="BigMapEncodingError",this.message=`Unable to encode the big map ${e}. Schema is: ${JSON.stringify(r)}. The ${e} is: ${JSON.stringify(n)}. Error details: ${t}`}}class FX extends Gs{constructor(e,t,r,n,i){super(),this.details=t,this.schema=r,this.value=n,this.semantics=i,this.name="StorageEncodingError",this.message=`Unable to encode ${e}. The schema is: ${JSON.stringify(r)}, the value is: ${JSON.stringify(n)}.${i?`And the semantic is: ${JSON.stringify(i)}`:""}. Error details: ${t}`}}class $X extends Gs{constructor(e){super(e),this.message=e,this.name="MissingArgumentError"}}var HX;const VX=Symbol.for("taquito-schema-type-symbol");function qX(e,t=kY.prim){var r,n;if(Array.isArray(e))return qX({prim:t,args:e},t);const i=e;return i.prim===t&&i.args&&i.args.length>2?Object.assign(Object.assign({},i),{args:[null===(r=i.args)||void 0===r?void 0:r[0],{prim:t,args:null===(n=i.args)||void 0===n?void 0:n.slice(1)}]}):i}function KX(e,t){if(void 0===e||void 0===t)return e===t;const r=qX(e),n=qX(t);return r.prim===n.prim&&(void 0===r.args&&void 0===n.args||void 0!==r.args&&void 0!==n.args&&r.args.length===n.args.length&&r.args.every(((e,t)=>{var r,i;return KX(e,null!==(i=null===(r=n.args)||void 0===r?void 0:r[t])&&void 0!==i?i:{})})))&&(void 0===r.annots&&void 0===n.annots||void 0!==r.annots&&void 0!==n.annots&&r.annots.length===n.annots.length&&r.annots.every(((e,t)=>{var r;return e===(null===(r=n.annots)||void 0===r?void 0:r[t])})))}class WX{static isSchema(e){return e&&!0===e[VX]}static fromRPCResponse(e){if(!e)throw new DX(e,"the RPC response is empty");if(!e.script)throw new DX(e,"the RPC response has no script");if(!Array.isArray(e.script.code))throw new DX(e,"The response.script.code should be an array");let t=e.script.code;for(;1===t.length&&Array.isArray(t[0]);)t=t[0];const r=t.find((e=>"prim"in e&&"storage"===e.prim));if(!r||!Array.isArray(r.args))throw new DX(e,'The response.script.code has an element of type {prim: "storage"}, but its args is not an array');return new WX(r.args[0])}isExpressionExtended(e){return"prim"in e&&Array.isArray(e.args)}constructor(e){if(this.val=e,this[HX]=!0,this.root=MX(e,0),this.root instanceof vY)this.bigMap=this.root;else if(this.isExpressionExtended(e)&&"pair"===e.prim){const t=e.args[0];this.isExpressionExtended(t)&&"big_map"===t.prim&&(this.bigMap=new vY(t,0,MX))}}removeTopLevelAnnotation(e){return(this.root instanceof kY||this.root instanceof bY)&&this.root.hasAnnotations()&&"object"===typeof e&&1===Object.keys(e).length?e[Object.keys(e)[0]]:e}Execute(e,t){const r=this.root.Execute(e,t);return this.removeTopLevelAnnotation(r)}Typecheck(e){this.root instanceof vY&&Number.isInteger(Number(e))||this.root instanceof aX&&e.ticketer&&e.value&&e.amount||this.root instanceof uX&&e.ticketer&&e.value&&e.amount||this.root instanceof jY&&this.root.ValueSchema instanceof vY||this.root.EncodeObject(e)}ExecuteOnBigMapDiff(e,t){if(!this.bigMap)throw new zX("Big map schema is undefined");if(!Array.isArray(e))throw new BX(`Big map diff must be an array, got: ${JSON.stringify(e)}`,e);const r=e.map((({key:e,value:t})=>({args:[e,t]})));return this.bigMap.Execute(r,t)}ExecuteOnBigMapValue(e,t){if(!this.bigMap)throw new zX("Big map schema is undefined");return this.bigMap.ValueSchema.Execute(e,t)}EncodeBigMapKey(e){if(!this.bigMap)throw new zX("Big map schema is undefined");try{return this.bigMap.KeySchema.ToBigMapKey(e)}catch(t){throw new UX("key",t,this.bigMap.KeySchema,e)}}Encode(e,t){try{return this.root.EncodeObject(e,t)}catch(r){if(r instanceof fY)throw r;throw new FX("storage object",r,this.root,e,t)}}ExtractSchema(){return this.removeTopLevelAnnotation(this.root.ExtractSchema())}generateSchema(){return this.removeTopLevelAnnotation(this.root.generateSchema())}ComputeState(e,t){if(!this.bigMap)throw new zX("Big map schema is undefined");const r=e.reduce(((e,t)=>Object.assign(Object.assign({},e),this.ExecuteOnBigMapDiff(t.contents[0].metadata.operation_result.big_map_diff))),{});return Object.assign(Object.assign({},this.Execute(t)),{[this.bigMap.annot()]:r})}FindFirstInTopLevelPair(e,t){return this.findValue(this.root.val,e,t)}findValue(e,t,r){if(KX(r,e))return t;if(Array.isArray(e)||"pair"===e.prim){const n=qX(e),i=qX(t,"Pair");if(void 0===n.args||void 0===i.args)throw new $X("Tokens have no arguments");if(n.args[0])return this.findValue(n.args[0],i.args[0],r)||this.findValue(n.args[1],i.args[1],r)}}findToken(e){return this.root.findAndReturnTokens(e,[])}}HX=VX;class GX{static fromRPCResponse(e){if(!e)throw new DX(e,"the RPC response is empty");if(!e.script)throw new DX(e,"the RPC response has no script");if(!Array.isArray(e.script.code))throw new DX(e,"The response.script.code should be an array");const t=e.script.code.find((e=>"prim"in e&&"parameter"===e.prim));if(!t)throw new DX(e,'The response.script.code should have an element of type {prim: "parameter"}');if(!Array.isArray(t.args))throw new DX(e,'The response.script.code has an element of type {prim: "parameter"}, but its args is not an array');return new GX(t.args[0])}get isMultipleEntryPoint(){return this.root instanceof bY||this.root instanceof UY&&this.root.subToken()instanceof bY}get hasAnnotation(){return!this.isMultipleEntryPoint||"0"!==Object.keys(this.ExtractSchema())[0]}constructor(e){this.root=MX(e,0)}Execute(e,t){return this.root.Execute(e,t)}Encode(...e){try{return this.root.Encode(e.reverse())}catch(t){if(t instanceof fY)throw t;throw new LX("Unable to encode parameter",this.root,e,t)}}EncodeObject(e,t){try{return this.root.EncodeObject(e,t)}catch(r){if(r instanceof fY)throw r;throw new LX("Unable to encode parameter object",this.root,e,r)}}ExtractSchema(){return this.root.ExtractSchema()}generateSchema(){return this.root.generateSchema()}ExtractSignatures(){return this.root.ExtractSignature()}}class ZX{static fromRPCResponse(e){const t=[],r=e&&e.script&&Array.isArray(e.script.code)&&e.script.code.filter((e=>"view"===e.prim));return r&&r.forEach((e=>{t.push(new ZX(e.args))})),t}constructor(e){if(!e)throw new NX(e,"the args are not defined");if(4!==e.length)throw new NX(e,"there should be exactly 4 arguments");if(!("string"in e[0])||!e[0].string)throw new NX(e,"The first argument should be a string, representing the view name. It should be in the form: { string: 'viewName' }");this.viewName=e[0].string,this.viewArgsType=e[1],this.viewReturnType=e[2],this.instructions=e[3],this.rootArgsType=MX(this.viewArgsType,0),this.rootReturnType=MX(this.viewReturnType,0)}encodeViewArgs(e){try{return this.rootArgsType.EncodeObject(e)}catch(t){throw new LX(this.viewName,void 0,e,t)}}decodeViewResult(e,t){return this.rootReturnType.Execute(e,t)}extractArgsSchema(){return this.rootArgsType.ExtractSchema()}extractResultSchema(){return this.rootReturnType.ExtractSchema()}}class YX{constructor(e,t){this.tag=e,this.type=t}static fromMichelineValue(e){var t,r;return new YX(null===(t=e.annots)||void 0===t?void 0:t[0],null===(r=e.args)||void 0===r?void 0:r[0])}static fromRPCResponse(e){const t=[];return e.script.code.forEach((e=>{"prim"in e&&"code"===e.prim&&"args"in e&&e.args&&t.push(...YX.extractEventsRecursively(e.args))})),YX.removeDuplicates(t)}static removeDuplicates(e){const t=[];return e.forEach((e=>{const r=t.findIndex((t=>t.tag===e.tag&&KX(t.type,e.type)));-1===r&&t.push(e)})),t}static extractEventsRecursively(e){return Array.isArray(e)?e.flatMap((e=>YX.extractEventsRecursively(e))):"prim"in e?"EMIT"===e.prim?[YX.fromMichelineValue(e)]:"args"in e&&e.args?e.args.flatMap((e=>YX.extractEventsRecursively(e))):[]:[]}}const XX=Symbol(),JX=Symbol("source_reference");class QX extends Gs{constructor(e,t,r){super(),this.src=e,this.idx=t,this.message=r,this.name="ScanError"}}var eJ;!function(e){e[e.Comment=0]="Comment",e[e.Number=1]="Number",e[e.String=2]="String",e[e.Bytes=3]="Bytes",e[e.Ident=4]="Ident"}(eJ||(eJ={}));const tJ=new RegExp("\\s"),rJ=new RegExp("[:@%_A-Za-z]"),nJ=new RegExp("[@%_\\.A-Za-z0-9]"),iJ=new RegExp("[0-9]"),oJ=new RegExp("[0-9a-fA-F]");function*aJ(e,t=!1){let r=0;for(;r1&&"0x"===e.substring(r,r+2)){for(r+=2;r1&&"/*"===e.substring(r,r+2)){for(r+=2;r1&&"*/"===e.substring(r,r+2));)r++;if(r===e.length)throw new QX(e,r,"Unterminated C style comment");r+=2,t&&(yield{t:eJ.Comment,v:e.slice(i,r),first:i,last:r})}else{if("("!==n&&")"!==n&&"{"!==n&&"}"!==n&&";"!==n)throw new QX(e,r,`Invalid character at offset ${r}: \`${n}'`);r++,yield{t:n,v:n,first:i,last:r}}}}const sJ=Symbol("ref_contract");var cJ;!function(e){e.Ps9mPmXa="Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P",e.PtCJ7pwo="PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY",e.PsYLVpVv="PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt",e.PsddFKi3="PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP",e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdoTez="PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangzH="PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.PsiThaCa="PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakarta="PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProxfordY="ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(cJ||(cJ={}));const lJ=cJ.Psithaca2,uJ={Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P:0,PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY:1,PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt:2,PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP:3,Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd:4,PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU:5,PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS:5,PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb:6,PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo:7,PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq:8,PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA:8,PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i:9,PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV:10,PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r:11,PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx:11,PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP:12,Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A:12,PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw:13,PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY:13,PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg:14,PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW:15,PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc:16,PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1:16,PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf:17,ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH:19,ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK:20};function dJ(e,t){return uJ[e][e+1,t])),i+=s,o+=l;break}case"I":o!==r.length&&(a[1]=r[o++]);break;default:throw new hJ(e,`${e.prim}: unexpected character: ${l}`)}return{r:n(s,c,[0,a]),n:i,an:o}}function vJ(e,t,r,n){const i=t[0];switch(i){case"A":return t.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CAR",annots:["@%%"]},vJ(e,t.slice(1),[],n)]]},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%@","%@",...r]}]:n.a;case"D":return t.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CDR",annots:["@%%"]},vJ(e,t.slice(1),[],n)]]},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%@",...r]}]:n.d;default:throw new hJ(e,`${e.prim}: unexpected character: ${i}`)}}function yJ(e,t){let r=e.length;for(;r>0&&e[r-1]===t;)r--;return e.slice(0,r)}function bJ(e){const t=[],r=[];if(void 0!==e)for(const n of e)(0!==n.length&&"%"===n[0]?t:r).push(n);return{fields:t,rest:r}}function wJ({prim:e,annots:t,args:r}){return Object.assign(Object.assign({prim:e},t&&{annots:t}),r&&{args:r})}const xJ=/^P[PAI]{3,}R$/,_J=/^UNP[PAI]{2,}R$/,kJ=/^C[AD]{2,}R$/,SJ=/^SET_C[AD]+R$/,EJ=/^MAP_C[AD]+R$/,AJ=/^DI{2,}P$/,PJ=/^DU+P$/;class OJ extends Gs{constructor(e,t){super(),this.token=e,this.message=t,this.name="MichelineParseError"}}class TJ extends Gs{constructor(e,t){super(),this.node=e,this.message=t,this.name="JSONParseError"}}const jJ=new OJ(null,"Unexpected EOF");function CJ(e){return e.t===eJ.Ident&&("@"===e.v[0]||"%"===e.v[0]||":"===e.v[0])}const RJ=new RegExp("^-?[0-9]+$"),IJ=new RegExp("^([0-9a-fA-F]{2})*$");class MJ{constructor(e){this.opt=e}expand(e){var t,r,n;if(void 0!==(null===(t=this.opt)||void 0===t?void 0:t.expandGlobalConstant)&&"constant"===e.prim){const t=function(e,t){return void 0!==e.args&&1===e.args.length&&"string"in e.args[0]&&e.args[0].string in t?t[e.args[0].string]:e}(e,this.opt.expandGlobalConstant);return t!==e&&(t[JX]=Object.assign(Object.assign({},e[JX]||{first:0,last:0}),{globalConstant:e})),t}if(void 0===(null===(r=this.opt)||void 0===r?void 0:r.expandMacros)||(null===(n=this.opt)||void 0===n?void 0:n.expandMacros)){const t=function(e,t){const r=(null===t||void 0===t?void 0:t.protocol)||lJ;function n(e){return void 0!==e?[{prim:"RENAME",annots:e}]:[]}switch(e.prim){case"CMPEQ":case"CMPNEQ":case"CMPLT":case"CMPGT":case"CMPLE":case"CMPGE":if(fJ(e,0))return[{prim:"COMPARE"},wJ({prim:e.prim.slice(3),annots:e.annots})];break;case"IFEQ":case"IFNEQ":case"IFLT":case"IFGT":case"IFLE":case"IFGE":if(fJ(e,2))return[{prim:e.prim.slice(2)},wJ({prim:"IF",annots:e.annots,args:e.args})];break;case"IFCMPEQ":case"IFCMPNEQ":case"IFCMPLT":case"IFCMPGT":case"IFCMPLE":case"IFCMPGE":if(fJ(e,2))return[{prim:"COMPARE"},{prim:e.prim.slice(5)},wJ({prim:"IF",annots:e.annots,args:e.args})];break;case"FAIL":if(fJ(e,0)&&pJ(e))return[{prim:"UNIT"},{prim:"FAILWITH"}];break;case"ASSERT":if(fJ(e,0)&&pJ(e))return[{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_EQ":case"ASSERT_NEQ":case"ASSERT_LT":case"ASSERT_GT":case"ASSERT_LE":case"ASSERT_GE":if(fJ(e,0)&&pJ(e))return[{prim:e.prim.slice(7)},{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_CMPEQ":case"ASSERT_CMPNEQ":case"ASSERT_CMPLT":case"ASSERT_CMPGT":case"ASSERT_CMPLE":case"ASSERT_CMPGE":if(fJ(e,0)&&pJ(e))return[[{prim:"COMPARE"},{prim:e.prim.slice(10)}],{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_NONE":if(fJ(e,0)&&pJ(e))return[{prim:"IF_NONE",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_SOME":if(fJ(e,0))return[{prim:"IF_NONE",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],n(e.annots)]}];break;case"ASSERT_LEFT":if(fJ(e,0))return[{prim:"IF_LEFT",args:[n(e.annots),[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_RIGHT":if(fJ(e,0))return[{prim:"IF_LEFT",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],n(e.annots)]}];break;case"IF_SOME":if(fJ(e,2))return[wJ({prim:"IF_NONE",annots:e.annots,args:[e.args[1],e.args[0]]})];break;case"IF_RIGHT":if(fJ(e,2))return[wJ({prim:"IF_LEFT",annots:e.annots,args:[e.args[1],e.args[0]]})];break;case"CAR":case"CDR":if(void 0===e.args)return e;if(fJ(e,1)&&mJ(e,e.args[0])){const t=parseInt(e.args[0].int,10);return wJ({prim:"GET",args:[{int:"CAR"===e.prim?String(2*t+1):String(2*t)}],annots:e.annots})}}if(xJ.test(e.prim)&&fJ(e,0)){const{fields:t,rest:r}=bJ(e.annots),{r:n}=gJ(e,e.prim.slice(1),t,((e,t,r)=>[...e||[],...t||[],r]));return n.map((([e,t],i)=>{const o=[...yJ(t,null).map((e=>null===e?"%":e)),...0===e&&i===n.length-1?r:[]],a=wJ({prim:"PAIR",annots:0!==o.length?o:void 0});return 0===e?a:{prim:"DIP",args:1===e?[[a]]:[{int:String(e)},[a]]}}))}if(_J.test(e.prim)){if(dJ(r,cJ.PtEdo2Zk)&&fJ(e,0)){const{r:t}=gJ(e,e.prim.slice(3),e.annots||[],((e,t,r)=>[r,...t||[],...e||[]]));return t.map((([e,t])=>{const r=[{prim:"DUP"},wJ({prim:"CAR",annots:null!==t[0]?[t[0]]:void 0}),{prim:"DIP",args:[[wJ({prim:"CDR",annots:null!==t[1]?[t[1]]:void 0})]]}];return 0===e?r:{prim:"DIP",args:1===e?[[r]]:[{int:String(e)},[r]]}}))}if("UNPAIR"===e.prim)return e;if(fJ(e,0)){const{r:t}=gJ(e,e.prim.slice(3),[],((e,t,r)=>[r,...t||[],...e||[]]));return t.map((([e])=>{const t=wJ({prim:"UNPAIR"});return 0===e?t:{prim:"DIP",args:1===e?[[t]]:[{int:String(e)},[t]]}}))}}if(kJ.test(e.prim)&&fJ(e,0)){const t=[...e.prim.slice(1,e.prim.length-1)];return t.map(((r,n)=>{const i=n===t.length-1?e.annots:void 0;switch(r){case"A":return wJ({prim:"CAR",annots:i});case"D":return wJ({prim:"CDR",annots:i});default:throw new hJ(e,`unexpected character: ${r}`)}}))}if(SJ.test(e.prim)&&fJ(e,0)){const{fields:t,rest:r}=bJ(e.annots);if(t.length>1)throw new hJ(e,`unexpected annotation on macro ${e.prim}: ${t}`);const n=0!==t.length?{a:[{prim:"DUP"},{prim:"CAR",annots:t},{prim:"DROP"},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:[t[0],"%@"]}],d:[{prim:"DUP"},{prim:"CDR",annots:t},{prim:"DROP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",t[0]]}]}:{a:[{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%","%@"]}],d:[{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%"]}]};return vJ(e,e.prim.slice(5,e.prim.length-1),r,n)}if(EJ.test(e.prim)&&fJ(e,1)){const{fields:t}=bJ(e.annots);if(t.length>1)throw new hJ(e,`unexpected annotation on macro ${e.prim}: ${t}`);const r={a:[{prim:"DUP"},{prim:"CDR",annots:["@%%"]},{prim:"DIP",args:[[wJ({prim:"CAR",annots:0!==t.length?["@"+t[0].slice(1)]:void 0}),e.args[0]]]},{prim:"SWAP"},{prim:"PAIR",annots:[0!==t.length?t[0]:"%","%@"]}],d:[{prim:"DUP"},wJ({prim:"CDR",annots:0!==t.length?["@"+t[0].slice(1)]:void 0}),e.args[0],{prim:"SWAP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",0!==t.length?t[0]:"%"]}]};return vJ(e,e.prim.slice(5,e.prim.length-1),[],r)}if(AJ.test(e.prim)&&fJ(e,1)){let t=0;for(;"I"===e.prim[1+t];)t++;return wJ({prim:"DIP",args:[{int:String(t)},e.args[0]]})}if(PJ.test(e.prim)){let t=0;for(;"U"===e.prim[1+t];)t++;if(dJ(r,cJ.PtEdo2Zk)){if(1===t){if(void 0===e.args)return e;fJ(e,1)&&mJ(e,e.args[0])&&(t=parseInt(e.args[0].int,10))}else fJ(e,0);return 1===t?[wJ({prim:"DUP",annots:e.annots})]:2===t?[{prim:"DIP",args:[[wJ({prim:"DUP",annots:e.annots})]]},{prim:"SWAP"}]:[{prim:"DIP",args:[{int:String(t-1)},[wJ({prim:"DUP",annots:e.annots})]]},{prim:"DIG",args:[{int:String(t)}]}]}if(1===t)return e;if(fJ(e,0))return wJ({prim:"DUP",args:[{int:String(t)}],annots:e.annots})}return e}(e,this.opt);return t!==e&&(t[JX]=Object.assign(Object.assign({},e[JX]||{first:0,last:0}),{macro:e})),t}return e}parseListExpr(e,t){var r;const n={first:t.first,last:t.last},i="("===t.t;let o;if(i){if(o=e.next(),o.done)throw jJ;n.last=o.value.last}else o={value:t};if(o.value.t!==eJ.Ident)throw new OJ(o.value,`not an identifier: ${o.value.v}`);const a={prim:o.value.v,[JX]:n};for(;;){const t=e.next();if(t.done){if(i)throw jJ;break}if(")"===t.value.t){if(!i)throw new OJ(t.value,"unexpected closing bracket");n.last=t.value.last;break}if(CJ(t.value))a.annots=a.annots||[],a.annots.push(t.value.v),n.last=t.value.last;else{a.args=a.args||[];const i=this.parseExpr(e,t.value);n.last=(null===(r=i[JX])||void 0===r?void 0:r.last)||n.last,a.args.push(i)}}return this.expand(a)}parseArgs(e,t){var r;const n={first:t.first,last:t.last},i={prim:t.v,[JX]:n};for(;;){const t=e.next();if(t.done||"}"===t.value.t||";"===t.value.t)return[i,t];if(CJ(t.value))n.last=t.value.last,i.annots=i.annots||[],i.annots.push(t.value.v);else{const o=this.parseExpr(e,t.value);n.last=(null===(r=o[JX])||void 0===r?void 0:r.last)||n.last,i.args=i.args||[],i.args.push(o)}}}parseSequenceExpr(e,t){var r,n;const i={first:t.first,last:t.last},o=[];o[JX]=i;const a="{"===t.t;let s="{"===t.t?null:{value:t};for(;;){if(null===s&&(s=e.next(),s.done||(i.last=s.value.last)),s.done){if(a)throw jJ;return o}if("}"===s.value.t){if(a)return o;throw new OJ(s.value,"unexpected closing bracket")}if(s.value.t===eJ.Ident){const[t,n]=this.parseArgs(e,s.value);i.last=(null===(r=t[JX])||void 0===r?void 0:r.last)||i.last,o.push(this.expand(t)),s=n}else{const t=this.parseExpr(e,s.value);i.last=(null===(n=t[JX])||void 0===n?void 0:n.last)||i.last,o.push(t),s=null}null===s&&(s=e.next(),s.done||(i.last=s.value.last)),s.done||";"!==s.value.t||(s=null)}}parseExpr(e,t){switch(t.t){case eJ.Ident:return this.expand({prim:t.v,[JX]:{first:t.first,last:t.last}});case eJ.Number:return{int:t.v,[JX]:{first:t.first,last:t.last}};case eJ.String:return{string:JSON.parse(t.v),[JX]:{first:t.first,last:t.last}};case eJ.Bytes:return{bytes:t.v.slice(2),[JX]:{first:t.first,last:t.last}};case"{":return this.parseSequenceExpr(e,t);default:return this.parseListExpr(e,t)}}parseSequence(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=aJ(e),r=t.next();return r.done?null:this.parseSequenceExpr(t,r.value)}parseList(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=aJ(e),r=t.next();return r.done?null:this.parseListExpr(t,r.value)}parseMichelineExpression(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=aJ(e),r=t.next();return r.done?null:this.parseExpr(t,r.value)}parseScript(e){return this.parseSequence(e)}parseData(e){return this.parseList(e)}parseJSON(e){if("object"!==typeof e)throw new TypeError(`object type was expected, got ${typeof e} instead`);if(Array.isArray(e)){const t=[];for(const r of e){if(null===r||"object"!==typeof r)throw new TJ(r,`unexpected sequence element: ${r}`);t.push(this.parseJSON(r))}return t}if("prim"in e){const t=e;if("string"===typeof t.prim&&(void 0===t.annots||Array.isArray(t.annots))&&(void 0===t.args||Array.isArray(t.args))){const e={prim:t.prim};if(void 0!==t.annots){for(const e of t.annots)if("string"!==typeof e)throw new TJ(e,`string expected: ${e}`);e.annots=t.annots}if(void 0!==t.args){e.args=[];for(const r of t.args){if(null===r||"object"!==typeof r)throw new TJ(r,`unexpected argument: ${r}`);e.args.push(this.parseJSON(r))}}return this.expand(e)}throw new TJ(e,`malformed prim expression: ${e}`)}if("string"in e){if("string"===typeof e.string)return{string:e.string};throw new TJ(e,`malformed string literal: ${e}`)}if("int"in e){if("string"===typeof e.int&&RJ.test(e.int))return{int:e.int};throw new TJ(e,`malformed int literal: ${e}`)}if("bytes"in e){if("string"===typeof e.bytes&&IJ.test(e.bytes))return{bytes:e.bytes};throw new TJ(e,`malformed bytes literal: ${e}`)}throw new TJ(e,`unexpected object: ${e}`)}}const LJ=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],NJ=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998];class DJ extends Gs{constructor(e){super(),this.message=e,this.name="Base58DecodingError"}}function zJ(e){const t=(e.length+9)%64,r=0===t?0:64-t;if(e.length>268435455)throw new oc("",`: Invalid length ${e.length} is too big -- SHA-256.`);const n=e.length<<3,i=[...e,128,...new Array(r).fill(0),0,0,0,0,n>>24&255,n>>16&255,n>>8&255,255&n];function o(e,t){return e>>>t|e<<32-t}const a=[...LJ],s=new Array(64),c=new Array(8);for(let u=0;u>>3,r=o(s[t-2],17)^o(s[t-2],19)^s[t-2]>>>10;s[t]=(0|r)+s[t-7]+e+s[t-16]|0,t++}for(let r=0;r<8;r++)c[r]=a[r];for(let r=0;r<64;r++){const e=o(c[0],2)^o(c[0],13)^o(c[0],22),t=o(c[4],6)^o(c[4],11)^o(c[4],25),n=c[7]+t+(c[4]&c[5]^~c[4]&c[6])+NJ[r]+s[r]|0,i=e+(c[0]&c[1]^c[0]&c[2]^c[1]&c[2])|0;c[7]=c[6],c[6]=c[5],c[5]=c[4],c[4]=c[3]+n|0,c[3]=c[2],c[2]=c[1],c[1]=c[0],c[0]=n+i|0}for(let r=0;r<8;r++)a[r]=a[r]+c[r]|0}const l=[];for(const u of a)l.push(u>>24&255),l.push(u>>16&255),l.push(u>>8&255),l.push(255&u);return l}const BJ=[0,1,2,3,4,5,6,7,8,-1,-1,-1,-1,-1,-1,-1,9,10,11,12,13,14,15,16,-1,17,18,19,20,21,-1,22,23,24,25,26,27,28,29,30,31,32,-1,-1,-1,-1,-1,-1,33,34,35,36,37,38,39,40,41,42,43,-1,44,45,46,47,48,49,50,51,52,53,54,55,56,57];function UJ(e,t){const r=e.charCodeAt(t)-49;if(r>=BJ.length||-1===BJ[r])throw new DJ(`Unexpected character at position ${t}: ${e[t]}`);return BJ[r]}function FJ(e){const t=function(e){const t=[];let r=0;for(;r0;)t.push(0);return t.reverse()}(e);if(t.length<4)throw new DJ(`Data is too short ${t.length}`);const r=t.slice(0,t.length-4),n=t.slice(t.length-4),i=zJ(zJ(r));if(n[0]!==i[0]||n[1]!==i[1]||n[2]!==i[2]||n[3]!==i[3])throw new DJ("Invalid checksum");return r}class $J extends Zs{constructor(e){super(),this.message=e,this.name="InvalidMichelsonError"}}class HJ extends Zs{constructor(e){super(),this.message=e,this.name="InvalidTypeExpressionError"}}class VJ extends Zs{constructor(e){super(),this.message=e,this.name="InvalidDataExpressionError"}}class qJ extends Zs{constructor(e){super(),this.entrypoint=e,this.name="InvalidEntrypointError",this.message=`Contract has no entrypoint named: "${e}"`}}class KJ extends Gs{constructor(e){super(),this.message=e,this.name="LongIntegerError"}}class WJ extends Gs{constructor(e,t){super(),this.val=e,this.message=t,this.name="MichelsonError"}}class GJ extends WJ{constructor(e,t,r){super(e,t),this.val=e,this.message=t,this.name="MichelsonTypeError",void 0!==r&&(this.data=r)}}class ZJ{append(e){let t=0;for(;0!==e||t57)throw new KJ(`unexpected character in integer constant "${e[t]}"`);this.append(r-48)}}else e<0?(this.neg=!0,this.append(-e)):this.append(e)}cmp(e){if(this.neg!==e.neg)return(e.neg?1:0)-(this.neg?1:0);{let t=0;if(this.buf.length!==e.buf.length)t=this.buf.length=0&&this.buf[r]===e.buf[r];)r--;t=r<0?0:this.buf[r]=0}catch(un){return!1}}const QJ=/^(@%|@%%|%@|[@:%]([_0-9a-zA-Z][_0-9a-zA-Z.%@]*)?)$/;function eQ(e,t){if(Array.isArray(e))return{};let r,n,i;if(void 0!==e.annots)for(const o of e.annots)if(0!==o.length){if(!QJ.test(o)||!(null===t||void 0===t?void 0:t.specialVar)&&("@%"===o||"@%%"===o)||!(null===t||void 0===t?void 0:t.specialFields)&&"%@"===o)throw new WJ(e,`${e.prim}: unexpected annotation: ${o}`);switch(o[0]){case"%":((null===t||void 0===t?void 0:t.emptyFields)||o.length>1)&&(r=r||[],r.push(o));break;case":":o.length>1&&(n=n||[],n.push(o));break;case"@":((null===t||void 0===t?void 0:t.emptyVar)||o.length>1)&&(i=i||[],i.push(o))}}return{f:r,t:n,v:i}}const tQ={BlockHash:[32,[1,52]],OperationHash:[32,[5,116]],OperationListHash:[32,[133,233]],OperationListListHash:[32,[29,159,109]],ProtocolHash:[32,[2,170]],ContextHash:[32,[79,199]],ED25519PublicKeyHash:[20,[6,161,159]],SECP256K1PublicKeyHash:[20,[6,161,161]],P256PublicKeyHash:[20,[6,161,164]],ContractHash:[20,[2,90,121]],CryptoboxPublicKeyHash:[16,[153,103]],ED25519Seed:[32,[13,15,58,7]],ED25519PublicKey:[32,[13,15,37,217]],SECP256K1SecretKey:[32,[17,162,224,201]],P256SecretKey:[32,[16,81,238,189]],ED25519EncryptedSeed:[56,[7,90,60,179,41]],SECP256K1EncryptedSecretKey:[56,[9,237,241,174,150]],P256EncryptedSecretKey:[56,[9,48,57,115,171]],SECP256K1PublicKey:[33,[3,254,226,86]],P256PublicKey:[33,[3,178,139,127]],SECP256K1Scalar:[33,[38,248,136]],SECP256K1Element:[33,[5,92,0]],ED25519SecretKey:[64,[43,246,78,7]],ED25519Signature:[64,[9,245,205,134,18]],SECP256K1Signature:[64,[13,115,101,19,63]],P256Signature:[64,[54,240,44,52]],GenericSignature:[64,[4,130,43]],ChainID:[4,[87,82,0]],RollupAddress:[20,[1,128,120,31]]};function rQ(e,...t){const r=FJ(e);for(const n of t){const[e,t]=tQ[n];if(r.length===e+t.length){let e=0;for(;e0?xQ(e,1):xQ(e,0);break;default:throw new fQ(e,"instruction expected")}}return!0}function kQ(e){if(vQ(e))if(Array.isArray(e)||"pair"===e.prim||"or"===e.prim||"option"===e.prim)RQ(e,(e=>kQ(e)));else if(!Object.prototype.hasOwnProperty.call(dQ,e.prim))throw new fQ(e,`${e.prim}: type is not comparable`);return!0}function SQ(e){if(vQ(e)&&pQ(e)){if(!Object.prototype.hasOwnProperty.call(hQ,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim||"ticket"===e.prim)throw new fQ(e,`${e.prim}: type can't be used inside PACK/UNPACK instructions`);RQ(e,(e=>SQ(e)))}return!0}function EQ(e){if(vQ(e)&&pQ(e)){if(!Object.prototype.hasOwnProperty.call(hQ,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim||"ticket"===e.prim||"contract"===e.prim)throw new fQ(e,`${e.prim}: type can't be pushed`);RQ(e,(e=>EQ(e)))}return!0}function AQ(e){if(vQ(e)&&pQ(e)){if(!Object.prototype.hasOwnProperty.call(hQ,e.prim)||"operation"===e.prim||"contract"===e.prim)throw new fQ(e,`${e.prim}: type can't be used as part of a storage`);RQ(e,(e=>AQ(e)))}return!0}function PQ(e){if(vQ(e)&&pQ(e)){if(!Object.prototype.hasOwnProperty.call(hQ,e.prim)||"operation"===e.prim)throw new fQ(e,`${e.prim}: type can't be used as part of a parameter`);RQ(e,(e=>PQ(e)))}return!0}function OQ(e){if(vQ(e)&&pQ(e)){if(!Object.prototype.hasOwnProperty.call(hQ,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim)throw new fQ(e,`${e.prim}: type can't be used inside a big_map`);RQ(e,(e=>OQ(e)))}return!0}const TQ=new RegExp("^[a-zA-Z0-9_.%@]*$");function jQ(e){if(e.string.length>cQ)throw new fQ(e,`view name too long: ${e.string}`);if(!TQ.test(e.string))throw new fQ(e,`invalid character(s) in view name: ${e.string}`)}function CQ(e){if(vQ(e)&&pQ(e)){if(!Object.prototype.hasOwnProperty.call(hQ,e.prim))throw new fQ(e,"type expected");RQ(e,(e=>CQ(e)))}return!0}function RQ(e,t){if(Array.isArray(e)||"pair"===e.prim){const r=Array.isArray(e)?e:e.args;if(void 0===r||r.length<2)throw new fQ(e,"at least 2 arguments expected");return r.forEach((e=>{vQ(e)&&t(e)})),!0}switch(e.prim){case"option":case"list":xQ(e,1)&&vQ(e.args[0])&&t(e.args[0]);break;case"contract":xQ(e,1)&&PQ(e.args[0]);break;case"or":xQ(e,2)&&vQ(e.args[0])&&vQ(e.args[1])&&(t(e.args[0]),t(e.args[1]));break;case"lambda":xQ(e,2)&&(CQ(e.args[0]),CQ(e.args[1]));break;case"set":xQ(e,1)&&kQ(e.args[0]);break;case"map":xQ(e,2)&&vQ(e.args[0])&&vQ(e.args[1])&&(kQ(e.args[0]),t(e.args[1]));break;case"big_map":xQ(e,2)&&vQ(e.args[0])&&vQ(e.args[1])&&(kQ(e.args[0]),OQ(e.args[1]),t(e.args[1]));break;case"ticket":xQ(e,1)&&vQ(e.args[0])&&kQ(e.args[0]);break;case"sapling_state":case"sapling_transaction":xQ(e,1)&&bQ(e.args[0]);break;default:xQ(e,0)}return!0}function IQ(e){if("int"in e||"string"in e||"bytes"in e)return!0;if(Array.isArray(e)){let t=0;for(const r of e)pQ(r)&&"Elt"===r.prim?(xQ(r,2)&&(IQ(r.args[0]),IQ(r.args[1])),t++):IQ(r);if(0!==t&&t!==e.length)throw new fQ(e,"data entries and map elements can't be intermixed");return!0}if(!pQ(e))throw new fQ(e,"data entry expected");switch(e.prim){case"Unit":case"True":case"False":case"None":xQ(e,0);break;case"Pair":if(void 0===e.args||e.args.length<2)throw new fQ(e,"at least 2 arguments expected");for(const t of e.args)IQ(t);break;case"Left":case"Right":case"Some":xQ(e,1)&&IQ(e.args[0]);break;case"Lambda_rec":e.args&&_Q(e.args);break;default:if(!Object.prototype.hasOwnProperty.call(uQ,e.prim))throw new fQ(e,"data entry or instruction expected");_Q(e)}return!0}function MQ(e){if(gQ(e)){const t={},r={};for(const n of e)if(mQ(n)){if("view"!==n.prim){if(n.prim in t)throw new fQ(e,`duplicate contract section: ${n.prim}`);t[n.prim]=!0}switch(n.prim){case"code":xQ(n,1)&&gQ(n.args[0])&&_Q(n.args[0]);break;case"parameter":if(xQ(n,1)&&PQ(n.args[0]),n.annots)throw new fQ(n,"Annotation must be part of the parameter type");break;case"storage":xQ(n,1)&&AQ(n.args[0]);break;case"view":if(xQ(n,4)){if(wQ(n.args[0])){const t=n.args[0];if(t.string in r)throw new fQ(e,`duplicate view name: ${t.string}`);r[t.string]=!0,jQ(t)}EQ(n.args[1]),EQ(n.args[2]),gQ(n.args[3])&&_Q(n.args[3])}break;default:throw new fQ(e,`unexpected contract section: ${n.prim}`)}}}return!0}function LQ(e){return Object.prototype.hasOwnProperty.call(uQ,e.prim)}function NQ(e){if(!Array.isArray(e))return!1;for(const t of e)if("prim"in t){if(LQ(t))throw new WJ(e,`Instruction outside of a lambda: ${JSON.stringify(e)}`);if("Elt"===t.prim)throw new WJ(e,`Elt item outside of a map literal: ${JSON.stringify(e)}`)}return!0}"function"===typeof SuppressedError&&SuppressedError;const DQ=["parameter","storage","code","False","Elt","Left","None","Pair","Right","Some","True","Unit","PACK","UNPACK","BLAKE2B","SHA256","SHA512","ABS","ADD","AMOUNT","AND","BALANCE","CAR","CDR","CHECK_SIGNATURE","COMPARE","CONCAT","CONS","CREATE_ACCOUNT","CREATE_CONTRACT","IMPLICIT_ACCOUNT","DIP","DROP","DUP","EDIV","EMPTY_MAP","EMPTY_SET","EQ","EXEC","FAILWITH","GE","GET","GT","HASH_KEY","IF","IF_CONS","IF_LEFT","IF_NONE","INT","LAMBDA","LE","LEFT","LOOP","LSL","LSR","LT","MAP","MEM","MUL","NEG","NEQ","NIL","NONE","NOT","NOW","OR","PAIR","PUSH","RIGHT","SIZE","SOME","SOURCE","SENDER","SELF","STEPS_TO_QUOTA","SUB","SWAP","TRANSFER_TOKENS","SET_DELEGATE","UNIT","UPDATE","XOR","ITER","LOOP_LEFT","ADDRESS","CONTRACT","ISNAT","CAST","RENAME","bool","contract","int","key","key_hash","lambda","list","map","big_map","nat","option","or","pair","set","signature","string","bytes","mutez","timestamp","unit","operation","address","SLICE","DIG","DUG","EMPTY_BIG_MAP","APPLY","chain_id","CHAIN_ID","LEVEL","SELF_ADDRESS","never","NEVER","UNPAIR","VOTING_POWER","TOTAL_VOTING_POWER","KECCAK","SHA3","PAIRING_CHECK","bls12_381_g1","bls12_381_g2","bls12_381_fr","sapling_state","sapling_transaction_deprecated","SAPLING_EMPTY_STATE","SAPLING_VERIFY_UPDATE","ticket","TICKET_DEPRECATED","READ_TICKET","SPLIT_TICKET","JOIN_TICKETS","GET_AND_UPDATE","chest","chest_key","OPEN_CHEST","VIEW","view","constant","SUB_MUTEZ","tx_rollup_l2_address","MIN_BLOCK_TIME","sapling_transaction","EMIT","Lambda_rec","LAMBDA_REC","TICKET","BYTES","NAT"];Object.assign({},...DQ.map(((e,t)=>({[e]:t}))));var zQ;!function(e){e[e.Int=0]="Int",e[e.String=1]="String",e[e.Sequence=2]="Sequence",e[e.Prim0=3]="Prim0",e[e.Prim0Annot=4]="Prim0Annot",e[e.Prim1=5]="Prim1",e[e.Prim1Annot=6]="Prim1Annot",e[e.Prim2=7]="Prim2",e[e.Prim2Annot=8]="Prim2Annot",e[e.Prim=9]="Prim",e[e.Bytes=10]="Bytes"}(zQ||(zQ={}));const BQ=new Error("bounds out of range");class UQ{constructor(e,t=0,r=e.length){this.buffer=e,this.idx=t,this.cap=r}get length(){return this.cap-this.idx}readBytes(e){if(this.cap-this.idx>>0}readUint16(){if(this.cap-this.idx<2)throw BQ;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0}readUint32(){if(this.cap-this.idx<4)throw BQ;return(this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0}readInt8(){if(this.cap-this.idx<1)throw BQ;return this.buffer[this.idx++]<<24>>24}readInt16(){if(this.cap-this.idx<2)throw BQ;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])<<16>>16}readInt32(){if(this.cap-this.idx<4)throw BQ;return this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++]}}var FQ,$Q,HQ;function VQ(e){let t;const r=e.readUint8();switch(r){case $Q.ED25519:t="ED25519PublicKeyHash";break;case $Q.SECP256K1:t="SECP256K1PublicKeyHash";break;case $Q.P256:t="P256PublicKeyHash";break;default:throw new Error(`unknown public key hash tag: ${r}`)}return{type:t,hash:e.readBytes(20)}}function qQ(e){let t;const r=e.readUint8();switch(r){case FQ.Implicit:t=VQ(e);break;case FQ.Originated:t={type:"ContractHash",hash:e.readBytes(20)},e.readBytes(1);break;default:throw new Error(`unknown address tag: ${r}`)}if(0!==e.length){const r=new TextDecoder;t.entryPoint=r.decode(new Uint8Array(e.readBytes(e.length)))}return t}function KQ(e){let t,r;const n=e.readUint8();switch(n){case HQ.ED25519:r="ED25519PublicKey",t=32;break;case HQ.SECP256K1:r="SECP256K1PublicKey",t=33;break;case HQ.P256:r="P256PublicKey",t=33;break;default:throw new Error(`unknown public key tag: ${n}`)}return{type:r,publicKey:e.readBytes(t)}}!function(e){e[e.Implicit=0]="Implicit",e[e.Originated=1]="Originated"}(FQ||(FQ={})),function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256"}($Q||($Q={})),function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256"}(HQ||(HQ={}));class WQ extends WJ{constructor(e,t,r){super(e,r),this.val=e,this.stackState=t,this.message=r,this.name="MichelsonInstructionError"}}function GQ(e){return Array.isArray(e)?"pair":e.prim}function ZQ(e){return"prim"in e?e.args:e}function YQ(e,t,r=!1){if(GQ(e)!==GQ(t))throw new GJ(e,`types mismatch: ${GQ(e)} != ${GQ(t)}`,void 0);const n=[eQ(e),eQ(t)];if(n[0].t&&n[1].t&&n[0].t[0]!==n[1].t[0])throw new GJ(e,`${GQ(e)}: type names mismatch: ${n[0].t[0]} != ${n[1].t[0]}`,void 0);if(r&&n[0].f&&n[1].f&&n[0].f[0]!==n[1].f[0])throw new GJ(e,`${GQ(e)}: field names mismatch: ${n[0].f[0]} != ${n[1].f}`,void 0);if(iQ(e)){const r=nQ("pair",e),n=nQ("pair",t);return YQ(r.args[0],n.args[0],!0),void YQ(r.args[1],n.args[1],!0)}switch(e.prim){case"option":case"list":case"contract":case"set":case"ticket":YQ(e.args[0],t.args[0]);break;case"or":YQ(e.args[0],t.args[0],!0),YQ(e.args[1],t.args[1],!0);break;case"lambda":case"map":case"big_map":YQ(e.args[0],t.args[0]),YQ(e.args[1],t.args[1]);break;case"sapling_state":case"sapling_transaction":if(parseInt(e.args[0].int,10)!==parseInt(t.args[0].int,10))throw new GJ(e,`${GQ(e)}: type argument mismatch: ${e.args[0].int} != ${t.args[0].int}`,void 0)}}function XQ(e,t){if(e.length!==t.length)throw new GJ(e,`stack length mismatch: ${e.length} != ${t.length}`,void 0);for(let r=0;r1)throw new GJ(e,`${e.prim}: at most one type annotation allowed: ${e.annots}`,void 0);if(t){if(((null===(n=o.f)||void 0===n?void 0:n.length)||0)>1)throw new GJ(e,`${e.prim}: at most one field annotation allowed: ${e.annots}`,void 0)}else if(((null===(i=o.f)||void 0===i?void 0:i.length)||0)>0)throw new GJ(e,`${e.prim}: field annotations aren't allowed: ${e.annots}`,void 0)}if(iQ(e)){const t=ZQ(e);for(const e of t)JQ(e,!0)}else switch(e.prim){case"option":case"list":case"contract":case"set":JQ(e.args[0]);break;case"or":for(const t of e.args)JQ(t,!0);break;case"lambda":case"map":case"big_map":JQ(e.args[0]),JQ(e.args[1])}}function QQ(e){if(!Array.isArray(e))return!1;for(const t of e)if(!(Array.isArray(t)&&QQ(t)||"prim"in t&&LQ(t)))return!1;return!0}function e0(e,t,r){if(iQ(t)){if(oQ(e)){NQ(e);const n=nQ("Pair",e),i=nQ("pair",t);return e0(n.args[0],i.args[0],r),void e0(n.args[1],i.args[1],r)}throw new GJ(t,`pair expected: ${JSON.stringify(e)}`,e)}switch(t.prim){case"int":if("int"in e&&XJ(e.int))return;throw new GJ(t,`integer value expected: ${JSON.stringify(e)}`,e);case"nat":case"mutez":if("int"in e&&JJ(e.int))return;throw new GJ(t,`natural value expected: ${JSON.stringify(e)}`,e);case"string":if("string"in e)return;throw new GJ(t,`string value expected: ${JSON.stringify(e)}`,e);case"bytes":case"bls12_381_g1":case"bls12_381_g2":if("bytes"in e&&null!==YJ(e.bytes))return;throw new GJ(t,`bytes value expected: ${JSON.stringify(e)}`,e);case"bool":if("prim"in e&&("True"===e.prim||"False"===e.prim))return;throw new GJ(t,`boolean value expected: ${JSON.stringify(e)}`,e);case"key_hash":if("string"in e&&null!==rQ(e.string,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash"))return;if("bytes"in e)try{return void function(e){const t=YJ(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);VQ(new UQ(new Uint8Array(t)))}(e)}catch(kne){}throw new GJ(t,`key hash expected: ${JSON.stringify(e)}`,e);case"timestamp":if(("string"in e||"int"in e)&&null!==sQ(e))return;throw new GJ(t,`timestamp expected: ${JSON.stringify(e)}`,e);case"address":if("string"in e){let t=e.string;const r=e.string.indexOf("%");if(r>=0&&(t=e.string.slice(0,r)),null!==rQ(t,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash","ContractHash","RollupAddress"))return}else if("bytes"in e)try{return void function(e){const t=YJ(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);qQ(new UQ(new Uint8Array(t)))}(e)}catch(kne){}throw new GJ(t,`address expected: ${JSON.stringify(e)}`,e);case"key":if("string"in e&&null!==rQ(e.string,"ED25519PublicKey","SECP256K1PublicKey","P256PublicKey"))return;if("bytes"in e)try{return void function(e){const t=YJ(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);KQ(new UQ(new Uint8Array(t)))}(e)}catch(kne){}throw new GJ(t,`public key expected: ${JSON.stringify(e)}`,e);case"unit":if("prim"in e&&"Unit"===e.prim)return;throw new GJ(t,`unit value expected: ${JSON.stringify(e)}`,e);case"signature":if("bytes"in e||"string"in e&&null!==rQ(e.string,"ED25519Signature","SECP256K1Signature","P256Signature","GenericSignature"))return;throw new GJ(t,`signature expected: ${JSON.stringify(e)}`,e);case"chain_id":if("bytes"in e||"string"in e){if(null!==("string"in e?FJ(e.string):YJ(e.bytes)))return}throw new GJ(t,`chain id expected: ${JSON.stringify(e)}`,e);case"option":if("prim"in e){if("None"===e.prim)return;if("Some"===e.prim)return void e0(e.args[0],t.args[0],r)}throw new GJ(t,`option expected: ${JSON.stringify(e)}`,e);case"list":case"set":if(NQ(e)){for(const n of e)e0(n,t.args[0],r);return}throw new GJ(t,`${t.prim} expected: ${JSON.stringify(e)}`,e);case"or":if("prim"in e){if("Left"===e.prim)return void e0(e.args[0],t.args[0],r);if("Right"===e.prim)return void e0(e.args[0],t.args[1],r)}throw new GJ(t,`union (or) expected: ${JSON.stringify(e)}`,e);case"lambda":if(QQ(e)){const n=t0(e,[t.args[0]],r);if("failed"in n)throw new GJ(t,`function is failed with error type: ${n.failed}`,e);if(1!==n.length)throw new GJ(t,"function must return a value",e);return void YQ(t.args[1],n[0])}throw new GJ(t,`function expected: ${JSON.stringify(e)}`,e);case"map":case"big_map":if(Array.isArray(e)){for(const n of e){if(!("prim"in n)||"Elt"!==n.prim)throw new GJ(t,`map elements expected: ${JSON.stringify(e)}`,e);e0(n.args[0],t.args[0],r),e0(n.args[1],t.args[1],r)}return}throw new GJ(t,`${t.prim} expected: ${JSON.stringify(e)}`,e);case"bls12_381_fr":if("int"in e&&XJ(e.int)||"bytes"in e&&null!==YJ(e.bytes))return;throw new GJ(t,`BLS12-381 element expected: ${JSON.stringify(e)}`,e);case"sapling_state":if(Array.isArray(e))return;throw new GJ(t,`sapling state expected: ${JSON.stringify(e)}`,e);case"ticket":return void e0(e,{prim:"pair",args:[{prim:"address"},t.args[0],{prim:"nat"}]},r);default:throw new GJ(t,`type ${GQ(t)} don't have Michelson literal representation`,e)}}function t0(e,t,r){const n=(null===r||void 0===r?void 0:r.protocol)||lJ;if(Array.isArray(e))return function(e,t,r){let n=t,i=t,o=0;for(const a of e){const e=t0(a,i,r);if(n=e,"failed"in e)break;i=e,o++}if("failed"in n&&0==n.level&&(!("prim"in n.failed)||"never"!==n.failed.prim)&&o!==e.length-1)throw new WQ(e,n,"FAIL must appear in a tail position");if(void 0!==(null===r||void 0===r?void 0:r.traceCallback)){const i={op:e,in:t,out:n};r.traceCallback(i)}return"failed"in n?{failed:n.failed,level:n.level+1}:n}(e,t,r);const i=e;function o(e,...r){if(t.length{try{return e(...r)}catch(kne){throw kne instanceof WJ?new WQ(i,t,kne.message):kne}}}function s(e){return r=>{try{return e(r)}catch(kne){throw kne instanceof WJ?new WQ(i,t,kne.message):kne}}}const c=a(eQ),l=a(XQ),u=a(YQ),d=s(kQ),h=s(SQ),f=s(AQ),p=s(EQ),m=s(OQ);function g(e,r){const n=c(i,Object.assign(Object.assign({},r),{emptyFields:void 0!==e.f&&e.f>1,emptyVar:void 0!==e.v&&e.v>1})),o=(e,r,n)=>{if(e&&e.length>(r||0))throw new WQ(i,t,`${i.prim}: at most ${r||0} ${n} annotations allowed`)};return o(n.f,e.f,"field"),o(n.t,e.t,"type"),o(n.v,e.v,"variable"),n}function v(e,t){const r=e,n=Array.isArray(r)?{prim:"pair",args:r}:r,i=c(n),o=void 0!==t.v||void 0!==t.t||void 0!==t.f?[...(null===t.v?i.v:t.v)||[],...(null===t.t?i.t:t.t)||[],...(null===t.f?i.f:t.f)||[]]:void 0,a=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i["@"+(e.v?e.v[0].slice(1)+".":"")+t];function S(e,t){return"failed"in e||"failed"in t?"failed"in e?t:e:(l(e,t),e)}const E=(e=>{var i,a,s,E,A;switch(e.prim){case"DUP":{const r=e.args?parseInt(e.args[0].int,10):1;if(0===r)throw new WQ(e,t,"DUP 0 is forbidden");const n=o(r-1,null)[0];if("ticket"===GQ(n))throw new WQ(e,t,"ticket can't be DUPed");return[n,...t]}case"SWAP":{const e=o(0,null,null);return g({}),[e[1],e[0],...t.slice(2)]}case"SOME":return[v({prim:"option",args:[o(0,null)[0]]},g({t:1,v:1})),...t.slice(1)];case"UNIT":return[v({prim:"unit"},g({v:1,t:1})),...t];case"PAIR":{const r=e.args?parseInt(e.args[0].int,10):2;if(r<2)throw new WQ(e,t,`PAIR ${r} is forbidden`);const n=o(0,...new Array(r).fill(null)),i=g({f:r,t:1,v:1},{specialFields:!0}),a=e=>{const t=e.lastIndexOf(".");return e.slice(t>0?t+1:1)},s=n.map(((e,t)=>{var r;const n=c(e);return v(e,{v:null,t:null,f:i.f&&i.f.length>t&&"%"!==i.f[t]?"%@"===i.f[t]?n.v?["%"+a((null===(r=n.v)||void 0===r?void 0:r[0])||"")]:void 0:[i.f[t]]:void 0})}));return[v({prim:"pair",args:s},{t:i.t,v:i.v}),...t.slice(r)]}case"UNPAIR":{const r=e.args?parseInt(e.args[0].int,10):2;if(r<2)throw new WQ(e,t,`UNPAIR ${r} is forbidden`);const n=o(0,["pair"])[0],i=g({f:2,v:2},{specialVar:!0});return[...w(n,r).map(((e,t)=>b(n,e,i,t,0===t?"car":"cdr"))),...t.slice(1)]}case"CAR":case"CDR":{const r=nQ("pair",o(0,["pair"])[0]);return[b(r,r.args["CAR"===e.prim?0:1],g({f:1,v:1},{specialVar:!0}),0,e.prim.toLocaleLowerCase()),...t.slice(1)]}case"CONS":{const e=o(0,null,["list"]);return u(e[0],e[1].args[0]),[y({prim:"list",args:[e[1].args[0]]}),...t.slice(2)]}case"SIZE":return o(0,["string","list","set","map","bytes"]),[y({prim:"nat"}),...t.slice(1)];case"MEM":{const e=o(0,null,["set","map","big_map"]);return d(e[0]),u(e[0],e[1].args[0]),[y({prim:"bool"}),...t.slice(2)]}case"GET":if(e.args){const r=parseInt(e.args[0].int,10);return[y(x(o(0,["pair"])[0],r)),...t.slice(1)]}{const e=o(0,null,["map","big_map"]);return d(e[0]),u(e[0],e[1].args[0]),[y({prim:"option",args:[e[1].args[1]]}),...t.slice(2)]}case"UPDATE":if(e.args){const r=parseInt(e.args[0].int,10),n=o(0,null,["pair"]);return[y(_(n[1],n[0],r)),...t.slice(2)]}{const e=o(0,null,["bool","option"]);if(d(e[0]),"bool"===e[1].prim){const r=o(2,["set"]);return u(e[0],r[0].args[0]),[y({prim:"set",args:[v(e[0],{t:null})]}),...t.slice(3)]}const r=o(2,["map","big_map"]);return u(e[0],r[0].args[0]),"map"===r[0].prim?[y({prim:"map",args:[v(e[0],{t:null}),v(e[1].args[0],{t:null})]}),...t.slice(3)]:(m(e[1].args[0]),[y({prim:"big_map",args:[v(e[0],{t:null}),v(e[1].args[0],{t:null})]}),...t.slice(3)])}case"GET_AND_UPDATE":{const e=g({v:2}),r=o(0,null,["option"],["map","big_map"]);d(r[0]),u(r[0],r[2].args[0]),u(r[1].args[0],r[2].args[1]);const n=null===(i=e.v)||void 0===i?void 0:i.map((e=>"@"!==e?[e]:void 0));return"map"===r[2].prim?[v({prim:"option",args:[r[2].args[1]]},{v:null===n||void 0===n?void 0:n[0]}),v({prim:"map",args:[v(r[0],{t:null}),v(r[1].args[0],{t:null})]},{v:null===n||void 0===n?void 0:n[1]}),...t.slice(3)]:(m(r[1].args[0]),[v({prim:"option",args:[r[2].args[1]]},{v:null===n||void 0===n?void 0:n[0]}),v({prim:"big_map",args:[v(r[0],{t:null}),v(r[1].args[0],{t:null})]},{v:null===n||void 0===n?void 0:n[1]}),...t.slice(3)])}case"EXEC":{const e=o(0,null,["lambda"]);return u(e[0],e[1].args[0]),[y(e[1].args[1]),...t.slice(2)]}case"APPLY":{const r=o(0,null,["lambda"]);if(f(r[0]),p(r[0]),!iQ(r[1].args[0]))throw new WQ(e,t,`${e.prim}: function's argument must be a pair: ${GQ(r[1].args[0])}`);const n=r[1].args[0];return u(r[0],ZQ(n)[0]),[y({prim:"lambda",args:[ZQ(n)[1],r[1].args[1]]}),...t.slice(2)]}case"FAILWITH":{const e=o(0,null)[0];return dJ(n,cJ.PtEdo2Zk)||h(e),{failed:e,level:0}}case"NEVER":return o(0,["never"]),{failed:{prim:"never"},level:0};case"RENAME":return[y(o(0,null)[0]),...t.slice(1)];case"CONCAT":{const r=o(0,["string","list","bytes"]);if("list"===r[0].prim){if("string"!==GQ(r[0].args[0])&&"bytes"!==GQ(r[0].args[0]))throw new WQ(e,t,`${e.prim}: can't concatenate list of ${GQ(r[0].args[0])}'s`);return[y(r[0].args[0]),...t.slice(1)]}const n=o(1,["string","bytes"]);if(r[0].prim!==n[0].prim)throw new WQ(e,t,`${e.prim}: can't concatenate ${r[0].prim} with ${n[0].prim}`);return[y(n[0]),...t.slice(2)]}case"SLICE":return[y({prim:"option",args:[o(0,["nat"],["nat"],["string","bytes"])[2]]},"@slice"),...t.slice(3)];case"PACK":{const e=o(0,null)[0];return h(e),[y({prim:"bytes"},"@packed"),...t.slice(1)]}case"ADD":{const r=o(0,["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===r[0].prim&&"int"===r[1].prim||"int"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("int"===r[0].prim&&"timestamp"===r[1].prim||"timestamp"===r[0].prim&&"int"===r[1].prim)return[y({prim:"timestamp"}),...t.slice(2)];if(("int"===r[0].prim||"nat"===r[0].prim||"mutez"===r[0].prim||"bls12_381_g1"===r[0].prim||"bls12_381_g2"===r[0].prim||"bls12_381_fr"===r[0].prim)&&r[0].prim===r[1].prim)return[y(r[0]),...t.slice(2)];throw new WQ(e,t,`${e.prim}: can't add ${r[0].prim} to ${r[1].prim}`)}case"SUB":{const r=dJ(n,cJ.PsiThaCa)?o(0,["nat","int","timestamp","mutez"],["nat","int","timestamp","mutez"]):o(0,["nat","int","timestamp"],["nat","int","timestamp"]);if(("nat"===r[0].prim||"int"===r[0].prim)&&("nat"===r[1].prim||"int"===r[1].prim)||"timestamp"===r[0].prim&&"timestamp"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("timestamp"===r[0].prim&&"int"===r[1].prim)return[y({prim:"timestamp"}),...t.slice(2)];if("mutez"===r[0].prim&&"mutez"===r[1].prim)return[y({prim:"mutez"}),...t.slice(2)];throw new WQ(e,t,`${e.prim}: can't subtract ${r[0].prim} from ${r[1].prim}`)}case"SUB_MUTEZ":return o(0,["mutez"],["mutez"]),[y({prim:"option",args:[{prim:"mutez"}]}),...t.slice(2)];case"MUL":{const r=o(0,["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===r[0].prim&&"int"===r[1].prim||"int"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("nat"===r[0].prim&&"mutez"===r[1].prim||"mutez"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"mutez"}),...t.slice(2)];if(("bls12_381_g1"===r[0].prim||"bls12_381_g2"===r[0].prim||"bls12_381_fr"===r[0].prim)&&"bls12_381_fr"===r[1].prim||("nat"===r[0].prim||"int"===r[0].prim)&&r[0].prim===r[1].prim)return[y(r[0]),...t.slice(2)];if(("nat"===r[0].prim||"int"===r[0].prim)&&"bls12_381_fr"===r[1].prim||("nat"===r[1].prim||"int"===r[1].prim)&&"bls12_381_fr"===r[0].prim)return[y({prim:"bls12_381_fr"}),...t.slice(2)];throw new WQ(e,t,`${e.prim}: can't multiply ${r[0].prim} by ${r[1].prim}`)}case"EDIV":{const r=(e,t)=>({prim:"option",args:[{prim:"pair",args:[{prim:e},{prim:t}]}]}),n=o(0,["nat","int","mutez"],["nat","int","mutez"]);if("nat"===n[0].prim&&"nat"===n[1].prim)return[y(r("nat","nat")),...t.slice(2)];if(!("nat"!==n[0].prim&&"int"!==n[0].prim||"nat"!==n[1].prim&&"int"!==n[1].prim))return[y(r("int","nat")),...t.slice(2)];if("mutez"===n[0].prim&&"nat"===n[1].prim)return[y(r("mutez","mutez")),...t.slice(2)];if("mutez"===n[0].prim&&"mutez"===n[1].prim)return[y(r("nat","mutez")),...t.slice(2)];throw new WQ(e,t,`${e.prim}: can't euclideally divide ${n[0].prim} by ${n[1].prim}`)}case"ABS":return o(0,["int"]),[y({prim:"nat"}),...t.slice(1)];case"ISNAT":return o(0,["int"]),[y({prim:"option",args:[{prim:"nat"}]}),...t.slice(1)];case"INT":return o(0,["nat","bls12_381_fr","bytes"]),[y({prim:"int"}),...t.slice(1)];case"BYTES":return o(0,["nat","int"]),[y({prim:"bytes"}),...t.slice(1)];case"NAT":return o(0,["bytes"]),[y({prim:"nat"}),...t.slice(1)];case"NEG":{const e=o(0,["nat","int","bls12_381_g1","bls12_381_g2","bls12_381_fr"])[0];return"nat"===e.prim||"int"===e.prim?[y({prim:"int"}),...t.slice(1)]:[y(e),...t.slice(1)]}case"LSL":case"LSR":return o(0,["nat","bytes"],["nat","bytes"]),[y({prim:"nat"}),...t.slice(2)];case"OR":case"XOR":{const r=o(0,["nat","bytes","bool"],["nat","bytes","bool"]);if(r[0].prim!==r[1].prim)throw new WQ(e,t,`${e.prim}: both arguments must be of the same type: ${r[0].prim}, ${r[1].prim}`);return[y(r[1]),...t.slice(2)]}case"AND":{const r=o(0,["nat","bytes","bool","int"],["nat","bytes","bool"]);if(("int"!==r[0].prim||"nat"!==r[1].prim)&&r[0].prim!==r[1].prim)throw new WQ(e,t,`${e.prim}: both arguments must be of the same type: ${r[0].prim}, ${r[1].prim}`);return[y(r[1]),...t.slice(2)]}case"NOT":return"bool"===o(0,["nat","bytes","bool","int"])[0].prim?[y({prim:"bool"}),...t.slice(1)]:[y({prim:"int"}),...t.slice(1)];case"COMPARE":{const e=o(0,null,null);return d(e[0]),d(e[1]),[y({prim:"int"}),...t.slice(2)]}case"EQ":case"NEQ":case"LT":case"GT":case"LE":case"GE":return o(0,["int"]),[y({prim:"bool"}),...t.slice(1)];case"SELF":{if(void 0===(null===r||void 0===r?void 0:r.contract))throw new WQ(e,t,`${e.prim}: contract required`);const n=g({f:1,v:1}),i=i0(r.contract,null===(a=n.f)||void 0===a?void 0:a[0]);if(null===i)throw new WQ(e,t,`${e.prim}: contract has no entrypoint ${i}`);return[v({prim:"contract",args:[i]},{v:n.v?n.v:["@self"]}),...t]}case"TRANSFER_TOKENS":{const e=o(0,null,["mutez"],["contract"]);return u(e[0],e[2].args[0]),[y({prim:"operation"}),...t.slice(3)]}case"SET_DELEGATE":{const r=o(0,["option"])[0];if("key_hash"!==GQ(r.args[0]))throw new WQ(e,t,`${e.prim}: key hash expected: ${GQ(r.args[0])}`);return[y({prim:"operation"}),...t.slice(1)]}case"IMPLICIT_ACCOUNT":return o(0,["key_hash"]),[y({prim:"contract",args:[{prim:"unit"}]}),...t.slice(1)];case"NOW":return[y({prim:"timestamp"},"@now"),...t];case"AMOUNT":return[y({prim:"mutez"},"@amount"),...t];case"BALANCE":return[y({prim:"mutez"},"@balance"),...t];case"CHECK_SIGNATURE":return o(0,["key"],["signature"],["bytes"]),[y({prim:"bool"}),...t.slice(3)];case"BLAKE2B":case"SHA256":case"SHA512":case"KECCAK":case"SHA3":return o(0,["bytes"]),[y({prim:"bytes"}),...t.slice(1)];case"HASH_KEY":return o(0,["key"]),[y({prim:"key_hash"}),...t.slice(1)];case"SOURCE":return[y({prim:"address"},"@source"),...t];case"SENDER":return[y({prim:"address"},"@sender"),...t];case"ADDRESS":{const e=o(0,["contract"])[0],r=g({v:1});return[v({prim:"address",[sJ]:e},{v:r.v?r.v:k(c(e),"address")}),...t.slice(1)]}case"SELF_ADDRESS":{const e={prim:"address"};return void 0!==(null===r||void 0===r?void 0:r.contract)&&(e[sJ]={prim:"contract",args:[r0(r.contract,"parameter").args[0]]}),[y(e,"@address"),...t]}case"CHAIN_ID":return[y({prim:"chain_id"}),...t];case"DROP":{g({});const r=void 0!==e.args?parseInt(e.args[0].int,10):1;return o(r-1,null),t.slice(r)}case"DIG":{g({});const r=parseInt(e.args[0].int,10);return[o(r,null)[0],...t.slice(0,r),...t.slice(r+1)]}case"DUG":{g({});const r=parseInt(e.args[0].int,10);return[...t.slice(1,r+1),o(0,null)[0],...t.slice(r+1)]}case"NONE":return JQ(e.args[0]),[v({prim:"option",args:[e.args[0]]},g({t:1,v:1})),...t];case"LEFT":case"RIGHT":{const r=o(0,null)[0],n=g({f:2,t:1,v:1},{specialFields:!0}),i=c(r),a=[v(r,{t:null,v:null,f:n.f&&n.f.length>0&&"%"!==n.f[0]?"%@"===n.f[0]?i.v?["%"+i.v[0].slice(1)]:void 0:n.f:void 0}),v(e.args[0],{t:null,f:n.f&&n.f.length>1&&"%"!==n.f[1]?n.f:void 0})];return[v({prim:"or",args:"LEFT"===e.prim?a:[a[1],a[0]]},{t:n.t,v:n.v}),...t.slice(1)]}case"NIL":return JQ(e.args[0]),[v({prim:"list",args:[e.args[0]]},g({t:1,v:1})),...t];case"UNPACK":return o(0,["bytes"]),JQ(e.args[0]),[y({prim:"option",args:[e.args[0]]},"@unpacked"),...t.slice(1)];case"CONTRACT":{const r=o(0,["address"])[0];JQ(e.args[0]);const n=g({v:1,f:1}),i=r[sJ];if(void 0!==i){const r=i0(i,null===(s=n.f)||void 0===s?void 0:s[0]);if(null===r)throw new WQ(e,t,`${e.prim}: contract has no entrypoint ${r}`);u(r,e.args[0])}return[v({prim:"option",args:[{prim:"contract",args:[e.args[0]]}]},{v:n.v?n.v:k(c(r),"contract")}),...t.slice(1)]}case"CAST":{g({});const r=o(0,null)[0];return JQ(e.args[0]),u(e.args[0],r),[e.args[0],...t.slice(1)]}case"IF_NONE":{g({});const n=o(0,["option"])[0],i=t.slice(1);return S(t0(e.args[0],i,r),t0(e.args[1],[v(n.args[0],{t:null,v:k(c(n),"some")}),...i],r))}case"IF_LEFT":{g({});const n=o(0,["or"])[0],i=c(n),a=c(n.args[0]),s=c(n.args[1]),l=t.slice(1);return S(t0(e.args[0],[v(n.args[0],{t:null,v:k(i,a.f?a.f[0].slice(1):"left")}),...l],r),t0(e.args[1],[v(n.args[1],{t:null,v:k(i,s.f?s.f[0].slice(1):"right")}),...l],r))}case"IF_CONS":{g({});const n=o(0,["list"])[0],i=c(n),a=t.slice(1);return S(t0(e.args[0],[v(n.args[0],{t:null,v:k(i,"hd")}),v(n,{t:null,v:k(i,"tl")}),...a],r),t0(e.args[1],a,r))}case"IF":{g({}),o(0,["bool"]);const n=t.slice(1);return S(t0(e.args[0],n,r),t0(e.args[1],n,r))}case"MAP":{const n=o(0,["list","map","option"])[0],i=t.slice(1),a="map"===n.prim?{prim:"pair",args:n.args}:n.args[0],s=t0(e.args[0],[v(a,{t:null,v:k(c(n),"elt")}),...i],r);if("failed"in s){if(!("prim"in s.failed)||"never"!==s.failed.prim)throw new WQ(e,t,`${e.prim}: FAIL is not allowed in MAP`);return{failed:s.failed,level:s.level+1}}if(s.length<1)throw new WQ(e,t,`${e.prim}: function must return a value`);return l(s.slice(1),i),"list"===n.prim?[y({prim:"list",args:[s[0]]}),...i]:"map"===n.prim?[y({prim:"map",args:[n.args[0],s[0]]}),...i]:[y({prim:"option",args:[s[0]]}),...i]}case"ITER":{g({});const n=o(0,["set","list","map"])[0],i=t.slice(1),a="map"===n.prim?{prim:"pair",args:n.args}:n.args[0],s=t0(e.args[0],[v(a,{t:null,v:k(c(n),"elt")}),...i],r);return"failed"in s?{failed:s.failed,level:s.level+1}:(l(s,i),i)}case"LOOP":{g({}),o(0,["bool"]);const n=t.slice(1),i=t0(e.args[0],n,r);return"failed"in i?{failed:i.failed,level:i.level+1}:(l(i,[{prim:"bool"},...n]),n)}case"LOOP_LEFT":{g({});const n=o(0,["or"])[0],i=t.slice(1),a=t0(e.args[0],[v(n.args[0],{t:null,v:k(c(n),"left")}),...i],r);return"failed"in a?{failed:a.failed,level:a.level+1}:(l(a,[n,...i]),[v(n.args[1],{t:null,v:g({v:1}).v}),...i])}case"DIP":{g({});const n=2===e.args.length?parseInt(e.args[0].int,10):1;o(n-1,null);const i=t.slice(0,n),a=t.slice(n),s=2===e.args.length?t0(e.args[1],a,r):t0(e.args[0],a,r);return"failed"in s?{failed:s.failed,level:s.level+1}:[...i,...s]}case"CREATE_CONTRACT":{const r=g({v:2}),n=o(0,["option"],["mutez"],null);if("key_hash"!==GQ(n[0].args[0]))throw new WQ(e,t,`${e.prim}: key hash expected: ${GQ(n[0].args[0])}`);f(n[2])&&(a0(e.args[0]),YQ(r0(e.args[0],"storage").args[0],n[2]));const i=null===(E=r.v)||void 0===E?void 0:E.map((e=>"@"!==e?[e]:void 0));return[v({prim:"operation"},{v:null===i||void 0===i?void 0:i[0]}),v({prim:"address",[sJ]:{prim:"contract",args:[r0(e.args[0],"parameter").args[0]]}},{v:null===i||void 0===i?void 0:i[1]}),...t.slice(3)]}case"PUSH":return JQ(e.args[0]),e0(e.args[1],e.args[0],Object.assign(Object.assign({},r),{contract:void 0})),[y(e.args[0]),...t];case"EMPTY_SET":return JQ(e.args[0]),d(e.args[0]),[v({prim:"set",args:e.args},g({t:1,v:1})),...t];case"EMPTY_MAP":return JQ(e.args[0]),d(e.args[0]),JQ(e.args[1]),[v({prim:"map",args:e.args},g({t:1,v:1})),...t];case"EMPTY_BIG_MAP":return JQ(e.args[0]),d(e.args[0]),JQ(e.args[1]),m(e.args[0]),[v({prim:"big_map",args:e.args},g({t:1,v:1})),...t];case"LAMBDA_REC":case"LAMBDA":{JQ(e.args[0]),JQ(e.args[1]);const n=[e.args[0]];"LAMBDA_REC"===e.prim&&n.push({prim:"lambda",args:[e.args[0],e.args[1]]});const i=t0(e.args[2],n,Object.assign(Object.assign({},r),{contract:void 0}));if("failed"in i)return{failed:i.failed,level:i.level+1};if(1!==i.length)throw new WQ(e,t,`${e.prim}: function must return a value`);return u(e.args[1],i[0]),[y({prim:"lambda",args:[e.args[0],e.args[1]]}),...t]}case"LEVEL":return[y({prim:"nat"},"@level"),...t];case"TOTAL_VOTING_POWER":case"MIN_BLOCK_TIME":return[y({prim:"nat"}),...t];case"VOTING_POWER":return o(0,["key_hash"]),[y({prim:"nat"}),...t.slice(1)];case"TICKET":{const e=o(0,null,["nat"])[0];return d(e),dJ(n,cJ.PtLimaPtL)?[v({prim:"ticket",args:[e]},g({t:1,v:1})),...t.slice(2)]:[y({prim:"option",args:[v({prim:"ticket",args:[e]},g({t:1,v:1}))]}),...t.slice(2)]}case"JOIN_TICKETS":{const r=nQ("pair",o(0,["pair"])[0]);if("ticket"!==GQ(r.args[0]))throw new WQ(e,t,`${e.prim}: ticket expected: ${GQ(r.args[0])}`);return u(r.args[0],r.args[1]),[y({prim:"option",args:[v(r.args[0],{t:null})]}),...t.slice(1)]}case"SPLIT_TICKET":{const r=o(0,["ticket"],["pair"]),n=nQ("pair",r[1]);if("nat"!==GQ(n.args[0]))throw new WQ(e,t,`${e.prim}: nat expected: ${GQ(n.args[0])}`);return u(n.args[0],n.args[1]),[y({prim:"option",args:[{prim:"pair",args:[v(r[0],{t:null}),v(r[0],{t:null})]}]}),...t.slice(2)]}case"READ_TICKET":{const e=g({v:2}),r=o(0,["ticket"])[0],n=null===(A=e.v)||void 0===A?void 0:A.map((e=>"@"!==e?[e]:void 0));return[v({prim:"pair",args:[{prim:"address"},v(r.args[0],{t:null}),{prim:"nat"}]},{v:null===n||void 0===n?void 0:n[0]}),v(r,{v:null===n||void 0===n?void 0:n[1],t:null}),...t.slice(1)]}case"PAIRING_CHECK":{const r=o(0,["list"])[0].args[0];if(!iQ(r))throw new WQ(e,t,`${e.prim}: pair expected: ${GQ(r)}`);const n=nQ("pair",r);if("bls12_381_g1"!==GQ(n.args[0]))throw new WQ(e,t,`${e.prim}: bls12_381_g1 expected: ${GQ(n.args[0])}`);if("bls12_381_g2"!==GQ(n.args[1]))throw new WQ(e,t,`${e.prim}: bls12_381_g2 expected: ${GQ(n.args[1])}`);return[y({prim:"bool"}),...t.slice(1)]}case"SAPLING_EMPTY_STATE":return[v({prim:"sapling_state",args:[e.args[0]]},g({v:1,t:1})),...t];case"SAPLING_VERIFY_UPDATE":{const r=o(0,["sapling_transaction"],["sapling_state"]);if(parseInt(r[0].args[0].int,10)!==parseInt(r[1].args[0].int,10))throw new WQ(e,t,`${e.prim}: sapling memo size mismatch: ${r[0].args[0].int} != ${r[1].args[0].int}`);return dJ(n,cJ.PtJakarta)?[y({prim:"option",args:[{prim:"pair",args:[{prim:"int"},v(r[1],{t:null})]}]}),...t.slice(2)]:[y({prim:"option",args:[{prim:"pair",args:[{prim:"bytes"},{prim:"pair",args:[{prim:"int"},v(r[1],{t:null})]}]}]}),...t.slice(2)]}case"OPEN_CHEST":return o(0,["chest_key"],["chest"],["nat"]),[y({prim:"or",args:[{prim:"bytes"},{prim:"bool"}]}),...t.slice(3)];case"VIEW":{const r=o(0,null,["address"]);return p(r[0]),[y({prim:"option",args:[e.args[1]]}),...t.slice(2)]}case"EMIT":{const r=g({f:1,t:1});if(e.args){const n=o(0,null);return u(n[0],e.args[0]),[v({prim:"operation"},r),...t.slice(1)]}return[v({prim:"operation"},r),...t.slice(1)]}default:throw new WJ(e,`unexpected instruction: ${e.prim}`)}})(i);if(void 0!==(null===r||void 0===r?void 0:r.traceCallback)){const e={op:i,in:t,out:E};r.traceCallback(e)}return E}function r0(e,t){for(const r of e)if(r.prim===t)return r;throw new WJ(e,`missing contract section: ${t}`)}function n0(e){if(Array.isArray(e))for(const t of e)if("prim"in t&&("parameter"===t.prim||"storage"===t.prim||"code"===t.prim))return!0;return!1}function i0(e,t){t=t||"%default";const r=o0(e).find((e=>e[0]===t));return void 0!==r?r[1]:"%default"===t?n0(e)?r0(e,"parameter").args[0]:e:null}function o0(e){if(n0(e)){const t=r0(e,"parameter"),r=o0(t.args[0]),n=eQ(t);return n.f?[[n.f[0],t.args[0]],...r]:r}if(function(e){return Array.isArray(e)||"or"===e.prim}(e)){const t=ZQ(e),r=e=>{const r=eQ(t[e]);if("or"===GQ(t[e])){const n=o0(t[e]);return r.f?[[r.f[0],t[e]],...n]:n}return r.f?[[r.f[0],t[e]]]:[]};return[...r(0),...r(1)]}return[]}function a0(e,t){const r=(r,n,i,o)=>{JQ(r,!0),JQ(n);const a=t0(o,[{prim:"pair",args:[Object.assign(Object.assign({},r),{annots:["@parameter"]}),Object.assign(Object.assign({},n),{annots:["@storage"]})]}],Object.assign(Object.assign({},t),{contract:e}));if("failed"in a)return a;try{XQ(a,[i])}catch(kne){throw kne instanceof WJ?new WQ(o,a,kne.message):kne}return a},n=r0(e,"parameter").args[0],i=r0(e,"storage").args[0],o=r(n,i,{prim:"pair",args:[{prim:"list",args:[{prim:"operation"}]},i]},r0(e,"code").args[0]);for(const a of Object.values(function(e){const t={};for(const r of e)"view"===r.prim&&(t[r.args[0].string]=r);return t}(e)))r(a.args[1],i,a.args[2],a.args[3]);return o}function s0(e,t,r){JQ(t),e0(e,t,r||null)}class c0{constructor(e,t){this.contract=e,this.ctx=Object.assign({contract:e},t),this.output=a0(e,this.ctx)}static parse(e,t){const r=new MJ(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new $J("empty Michelson");if(MQ(n))return new c0(n,t)}static parseTypeExpression(e,t){const r=new MJ(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new HJ("empty type expression");if(CQ(n))return JQ(n),n}static parseDataExpression(e,t){const r=new MJ(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new VJ("empty data expression");if(IQ(n))return n;throw void 0}section(e){return r0(this.contract,e)}entryPoints(){return o0(this.contract)}entryPoint(e){return i0(this.contract,e)}assertDataValid(e,t){s0(e,t,this.ctx)}isDataValid(e,t){return function(e,t,r){try{return s0(e,t,r),!0}catch(un){return!1}}(e,t,this.ctx)}assertParameterValid(e,t){const r=this.entryPoint(e||void 0);if(null===r)throw new qJ(null===e||void 0===e?void 0:e.toString());this.assertDataValid(t,r)}isParameterValid(e,t){try{return this.assertParameterValid(e,t),!0}catch(un){return!1}}functionType(e,t){return function(e,t,r){for(const n of t)JQ(n);if(void 0!==(null===r||void 0===r?void 0:r.contract))for(const n of["parameter","storage"])JQ(r0(r.contract,n).args[0]);return t0(e,t,r||null)}(e,t,this.ctx)}}new c0([{prim:"parameter",args:[{prim:"unit"}]},{prim:"storage",args:[{prim:"unit"}]},{prim:"code",args:[[{prim:"CAR"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PAIR"}]]}]);var l0=r(9673).Buffer;const u0=e=>e.reduce(((e,t)=>e+t.toString(16).padStart(2,"0")),""),d0=(e,t=8)=>e.toString(16).padStart(t,"0");var h0;!function(e){e.SECRET="secret",e.RAW="raw",e.TZ1="tz1",e.BRANCH="branch",e.ZARITH="zarith",e.PUBLIC_KEY="public_key",e.PKH="pkh",e.PKH_ARR="pkhArr",e.DELEGATE="delegate",e.SCRIPT="script",e.BALLOT_STATEMENT="ballotStmt",e.PROPOSAL="proposal",e.PROPOSAL_ARR="proposalArr",e.INT32="int32",e.INT16="int16",e.PARAMETERS="parameters",e.ADDRESS="address",e.SMART_CONTRACT_ADDRESS="smart_contract_address",e.SMART_ROLLUP_ADDRESS="smart_rollup_address",e.SMART_ROLLUP_COMMITMENT_HASH="smart_rollup_commitment_hash",e.VALUE="value",e.PADDED_BYTES="padded_bytes",e.SMART_ROLLUP_MESSAGE="smart_rollup_message",e.MANAGER="manager",e.BLOCK_PAYLOAD_HASH="blockPayloadHash",e.ENTRYPOINT="entrypoint",e.OPERATION="operation",e.OP_ACTIVATE_ACCOUNT="activate_account",e.OP_DELEGATION="delegation",e.OP_TRANSACTION="transaction",e.OP_ORIGINATION="origination",e.OP_BALLOT="ballot",e.OP_FAILING_NOOP="failing_noop",e.OP_ATTESTATION="attestation",e.OP_ENDORSEMENT="endorsement",e.OP_SEED_NONCE_REVELATION="seed_nonce_revelation",e.OP_REVEAL="reveal",e.OP_PROPOSALS="proposals",e.OP_REGISTER_GLOBAL_CONSTANT="register_global_constant",e.OP_TRANSFER_TICKET="transfer_ticket",e.BURN_LIMIT="burn_limit",e.OP_INCREASE_PAID_STORAGE="increase_paid_storage",e.OP_UPDATE_CONSENSUS_KEY="update_consensus_key",e.OP_DRAIN_DELEGATE="drain_delegate",e.DEPOSITS_LIMIT="deposits_limit",e.OP_SET_DEPOSITS_LIMIT="set_deposits_limit",e.OP_SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.PVM_KIND="pvm_kind",e.OP_SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message"}(h0||(h0={}));const f0={"00":"parameter","01":"storage","02":"code","03":"False","04":"Elt","05":"Left","06":"None","07":"Pair","08":"Right","09":"Some","0a":"True","0b":"Unit","0c":"PACK","0d":"UNPACK","0e":"BLAKE2B","0f":"SHA256",10:"SHA512",11:"ABS",12:"ADD",13:"AMOUNT",14:"AND",15:"BALANCE",16:"CAR",17:"CDR",18:"CHECK_SIGNATURE",19:"COMPARE","1a":"CONCAT","1b":"CONS","1c":"CREATE_ACCOUNT","1d":"CREATE_CONTRACT","1e":"IMPLICIT_ACCOUNT","1f":"DIP",20:"DROP",21:"DUP",22:"EDIV",23:"EMPTY_MAP",24:"EMPTY_SET",25:"EQ",26:"EXEC",27:"FAILWITH",28:"GE",29:"GET","2a":"GT","2b":"HASH_KEY","2c":"IF","2d":"IF_CONS","2e":"IF_LEFT","2f":"IF_NONE",30:"INT",31:"LAMBDA",32:"LE",33:"LEFT",34:"LOOP",35:"LSL",36:"LSR",37:"LT",38:"MAP",39:"MEM","3a":"MUL","3b":"NEG","3c":"NEQ","3d":"NIL","3e":"NONE","3f":"NOT",40:"NOW",41:"OR",42:"PAIR",43:"PUSH",44:"RIGHT",45:"SIZE",46:"SOME",47:"SOURCE",48:"SENDER",49:"SELF","4a":"STEPS_TO_QUOTA","4b":"SUB","4c":"SWAP","4d":"TRANSFER_TOKENS","4e":"SET_DELEGATE","4f":"UNIT",50:"UPDATE",51:"XOR",52:"ITER",53:"LOOP_LEFT",54:"ADDRESS",55:"CONTRACT",56:"ISNAT",57:"CAST",58:"RENAME",59:"bool","5a":"contract","5b":"int","5c":"key","5d":"key_hash","5e":"lambda","5f":"list",60:"map",61:"big_map",62:"nat",63:"option",64:"or",65:"pair",66:"set",67:"signature",68:"string",69:"bytes","6a":"mutez","6b":"timestamp","6c":"unit","6d":"operation","6e":"address","6f":"SLICE",70:"DIG",71:"DUG",72:"EMPTY_BIG_MAP",73:"APPLY",74:"chain_id",75:"CHAIN_ID",76:"LEVEL",77:"SELF_ADDRESS",78:"never",79:"NEVER","7a":"UNPAIR","7b":"VOTING_POWER","7c":"TOTAL_VOTING_POWER","7d":"KECCAK","7e":"SHA3","7f":"PAIRING_CHECK",80:"bls12_381_g1",81:"bls12_381_g2",82:"bls12_381_fr",83:"sapling_state",84:"sapling_transaction_deprecated",85:"SAPLING_EMPTY_STATE",86:"SAPLING_VERIFY_UPDATE",87:"ticket",88:"TICKET_DEPRECATED",89:"READ_TICKET","8a":"SPLIT_TICKET","8b":"JOIN_TICKETS","8c":"GET_AND_UPDATE","8d":"chest","8e":"chest_key","8f":"OPEN_CHEST",90:"VIEW",91:"view",92:"constant",93:"SUB_MUTEZ",94:"tx_rollup_l2_address",95:"MIN_BLOCK_TIME",96:"sapling_transaction",97:"EMIT",98:"Lambda_rec",99:"LAMBDA_REC","9a":"TICKET","9b":"BYTES","9c":"NAT"},p0=(()=>{const e={};return Object.keys(f0).forEach((t=>{e[f0[t]]=t})),e})(),m0={4:"activate_account",107:"reveal",110:"delegation",108:"transaction",109:"origination",6:"ballot",21:"attestation",1:"seed_nonce_revelation",5:"proposals",111:"register_global_constant",158:"transfer_ticket",112:"set_deposits_limit",113:"increase_paid_storage",114:"update_consensus_key",9:"drain_delegate",200:"smart_rollup_originate",201:"smart_rollup_add_messages",206:"smart_rollup_execute_outbox_message",17:"failing_noop"},g0=(()=>{const e={};return Object.keys(m0).forEach((t=>{const r="string"===typeof t?parseInt(t,10):t;e[m0[r]]=d0(r,2)})),e})(),v0={"00":"default","01":"root","02":"do","03":"set_delegate","04":"remove_delegate","05":"deposit","06":"stake","07":"unstake","08":"finalize_unstake","09":"set_delegate_parameters"},y0=(()=>{const e={};return Object.keys(v0).forEach((t=>{e[v0[t]]=t})),e})();class b0 extends Zs{constructor(e,t){super(),this.operation=e,this.errorDetail=t,this.name="InvalidOperationSchemaError",this.message="Invalid operation content recevied",t&&(this.message+=` ${t}.`)}}class w0 extends Zs{constructor(e){super(),this.entrypoint=e,this.name="OversizedEntryPointError",this.message=`Invalid entrypoint length "${e.length}", maximum length is "31".`}}class x0 extends Zs{constructor(e){super(),this.ballotValue=e,this.name="InvalidBallotValueError",this.message=`Invalid ballot value "${e}" expecting one of the following: "yay", "nay", "pass".`}}class _0 extends Zs{constructor(e){super(),this.ballotValue=e,this.name="DecodeBallotValueError",this.message=`Invalid ballot value "${e}", cannot be decoded.`}}class k0 extends Zs{constructor(e){super(),this.value=e,this.name="UnexpectedMichelsonValueError",this.message=`Invalid Michelson value "${e}", unalbe to encode.`}}class S0 extends Zs{constructor(e){super(),this.message=e,this.name="OperationDecodingError"}}class E0 extends Zs{constructor(e){super(),this.message=e,this.name="OperationEncodingError"}}class A0 extends Zs{constructor(e){super(),this.op=e,this.name="UnsupportedOperationError",this.message=`Unsupported operation "${e}", can submit an issue on our github for feature request.`}}class P0 extends Zs{constructor(e){super(),this.pvm=e,this.name="UnsupportedPvmKindError",this.message=`Invalid Pvm kind "${e}" expecting either "arith" or "wasm_2_0_0".`}}class O0 extends Zs{constructor(e){super(),this.pvm=e,this.name="DecodePvmKindError",this.message=`Invalid Pvm kind "${e}", cannot be decoded.`}}class T0 extends Zs{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidSmartRollupAddress",this.message=`Invalid smart rollup address "${e}"`,t&&(this.message+=` ${t}.`)}}class j0 extends Zs{constructor(e,t){super(),this.hash=e,this.errorDetail=t,this.name="InvalidSmartRollupCommitmentHashError",this.message=`Invalid smart rollup commitment hash "${e}"`,t&&(this.message+=` ${t}.`)}}class C0{static fromHexString(e){const t=e.toLowerCase();if(/^(([a-f]|\d){2})*$/.test(t)){const e=new Uint8Array((t.match(/([a-z]|\d){2}/g)||[]).map((e=>parseInt(e,16))));return new C0(e)}throw new ic(t)}constructor(e,t=0){this.arr=e,this.offset=t}consume(e){const t=this.arr.subarray(this.offset,this.offset+e);return this.offset+=e,t}get(e){return this.arr[this.offset+e]}length(){return this.arr.length-this.offset}slice(e,t){return new C0(this.arr.slice(e,t))}}const R0=e=>{if(Array.isArray(e)){const t=e.map((e=>R0(e))).join(""),r=t.length/2;return`02${d0(r)}${t}`}if((e=>"prim"in e)(e))return F0(e);if((e=>"bytes"in e&&"string"===typeof e.bytes)(e))return L0(e);if((e=>"string"in e&&"string"===typeof e.string)(e))return D0(e);if((e=>"int"in e&&"string"===typeof e.int)(e))return B0(e);throw new k0(JSON.stringify(e))},I0=e=>{const t=e.consume(1);switch(t[0]){case 10:return N0(e);case 1:return z0(e);case 0:return U0(e);case 2:{const t=new C0(M0(e)),r=[];for(;t.length()>0;)r.push(I0(t));return r}default:return $0(e,t)}},M0=(e,t=4)=>{const r=e.consume(t),n=parseInt(l0.from(r).toString("hex"),16);return e.consume(n)},L0=e=>{if(!/^([A-Fa-f0-9]{2})*$/.test(e.bytes))throw new ic(e.bytes);const t=e.bytes.length/2;return`0a${d0(t)}${e.bytes}`},N0=e=>{const t=M0(e);return{bytes:l0.from(t).toString("hex")}},D0=e=>{const t=l0.from(e.string,"utf8").toString("hex"),r=t.length/2;return`01${d0(r)}${t}`},z0=e=>{const t=M0(e);return{string:l0.from(t).toString("utf8")}},B0=({int:e})=>{const t=new Lc(e,10),r="-"===t.toString(2)[0]?"1":"0",n=t.toString(2).replace(/-/g,""),i=n.length<=6?6:(n.length-6)%7?n.length+7-(n.length-6)%7:n.length,o=n.padStart(i,"0").match(/\d{6,7}/g).reverse();o[0]=r+o[0];const a=o.map(((e,t)=>parseInt((t===o.length-1?"0":"1")+e,2).toString(16).padStart(2,"0")));return`00${a.join("")}`},U0=e=>{let t=e.consume(1)[0];const r=[];for(;128&t;)r.push(t),t=e.consume(1)[0];r.push(t);const n=!!(64&r[0]);r[0]=127&r[0];const i=r.map(((e,t)=>e.toString(2).slice(0===t?-6:-7).padStart(0===t?6:7,"0"))).reverse();let o=new Lc(i.join(""),2);return n&&(o=o.times(-1)),{int:o.toFixed()}},F0=e=>{const t=+Array.isArray(e.annots),r=Array.isArray(e.args)?e.args.length:0,n=d0(Math.min(2*r+t+3,9),2),i=p0[e.prim];let o=(e.args||[]).map((e=>R0(e))).join("");const a=Array.isArray(e.annots)?q0(e.annots):"";return"LAMBDA"!==e.prim&&"LAMBDA_REC"!==e.prim||!r||(o=d0(o.length/2)+o+d0(0)),("pair"===e.prim||"Pair"===e.prim)&&r>2&&(o=""===a?d0(o.length/2)+o+d0(0):d0(o.length/2)+o),"view"===e.prim&&e.args&&(o=d0(o.length/2)+o+d0(0)),`${n}${i}${o}${a}`},$0=(e,t)=>{const r=(t[0]-3)%2===1;let n=Math.floor((t[0]-3)/2);const i=e.consume(1)[0].toString(16).padStart(2,"0"),o={prim:f0[i]};if("LAMBDA"!==f0[i]&&"LAMBDA_REC"!==f0[i]||e.consume(4),"view"===f0[i])return 0!=n?H0(e,o):o;let a,s;("pair"===f0[i]||"Pair"===f0[i])&&n>2&&(a=V0(e),n=0,s=K0(e));const c=new Array(n).fill(0).map((()=>I0(e)));return"LAMBDA"!==f0[i]&&"LAMBDA_REC"!==f0[i]||e.consume(4),a?o.args=a:c.length&&(o.args=c),s&&""!==s[0]?o.annots=s:r&&(o.annots=K0(e)),o},H0=(e,t)=>(e.consume(4),t.args=new Array(4).fill(0).map((()=>I0(e))),e.consume(4),t),V0=e=>{const t=new C0(M0(e)),r=[];for(;t.length()>0;)r.push(I0(t));return r},q0=e=>{const t=e.map((e=>l0.from(e,"utf8").toString("hex"))).join("20"),r=t.length/2;return`${d0(r)}${t}`},K0=e=>{const t=e.consume(4),r=parseInt(l0.from(t).toString("hex"),16),n=e.consume(r);return l0.from(n).toString("hex").split("20").map((e=>l0.from(e,"hex").toString("utf8")))},W0=e=>t=>bl(l0.from(pl(t,$c[e]))),G0=e=>t=>fl(t.consume(Hc[e]),$c[e]),Z0=G0(Dc.TZ1),Y0=G0(Dc.B),X0=e=>{const t=e.consume(1);return 0===t[0]?G0(Dc.TZ1)(e):1===t[0]?G0(Dc.TZ2)(e):2===t[0]?G0(Dc.TZ3)(e):void 0},J0=W0(Dc.B),Q0=W0(Dc.TZ1),e1=e=>e?"ff":"00",t1=e=>W0(Dc.P)(e),r1=e=>G0(Dc.P)(e),n1=e=>255===e.consume(1)[0],i1=e=>{switch(e.substring(0,3)){case Dc.TZ1:return"00"+W0(Dc.TZ1)(e);case Dc.TZ2:return"01"+W0(Dc.TZ2)(e);case Dc.TZ3:return"02"+W0(Dc.TZ3)(e);case Dc.TZ4:return"03"+W0(Dc.TZ4)(e);default:throw new dc(e,cl(qc.NO_PREFIX_MATCHED)+` expecting one for the following "${Dc.TZ1}", "${Dc.TZ2}", "${Dc.TZ3}" or "${Dc.TZ4}".`)}},o1=e=>{const t=[];let r=new Nc(e,10);if(r.isNaN())throw new TypeError(`Invalid zarith number ${e}`);for(;;){if(r.lt(128)){r.lt(16)&&t.push("0"),t.push(r.toString(16));break}{let e=r.mod(128);r=r.minus(e),r=r.dividedBy(128),e=e.plus(128),t.push(e.toString(16))}}return t.join("")},a1=e=>{let t=0;for(;t=0;n-=1){const t=127&e.get(n);r=r.multipliedBy(128),r=r.plus(t)}return e.consume(t+1),new Nc(r).toString()},s1=W0(Dc.VH),c1=G0(Dc.VH),l1={branch:h0.BRANCH,contents:[h0.OPERATION]},u1={pkh:h0.TZ1,secret:h0.SECRET},d1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,public_key:h0.PUBLIC_KEY},h1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,delegate:h0.DELEGATE},f1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,amount:h0.ZARITH,destination:h0.ADDRESS,parameters:h0.PARAMETERS},p1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,balance:h0.ZARITH,delegate:h0.DELEGATE,script:h0.SCRIPT},m1={source:h0.PKH,period:h0.INT32,proposal:h0.PROPOSAL,ballot:h0.BALLOT_STATEMENT},g1={slot:h0.INT16,level:h0.INT32,round:h0.INT32,block_payload_hash:h0.BLOCK_PAYLOAD_HASH},v1={slot:h0.INT16,level:h0.INT32,round:h0.INT32,block_payload_hash:h0.BLOCK_PAYLOAD_HASH},y1={level:h0.INT32,nonce:h0.RAW},b1={source:h0.PKH,period:h0.INT32,proposals:h0.PROPOSAL_ARR},w1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,value:h0.VALUE},x1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,ticket_contents:h0.VALUE,ticket_ty:h0.VALUE,ticket_ticketer:h0.ADDRESS,ticket_amount:h0.ZARITH,destination:h0.ADDRESS,entrypoint:h0.ENTRYPOINT},_1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,amount:h0.ZARITH,destination:h0.SMART_CONTRACT_ADDRESS},k1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,pk:h0.PUBLIC_KEY},S1={consensus_key:h0.PKH,delegate:h0.PKH,destination:h0.PKH},E1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,limit:h0.DEPOSITS_LIMIT},A1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,pvm_kind:h0.PVM_KIND,kernel:h0.PADDED_BYTES,parameters_ty:h0.VALUE,whitelist:h0.PKH_ARR},P1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,message:h0.SMART_ROLLUP_MESSAGE},O1={source:h0.PKH,fee:h0.ZARITH,counter:h0.ZARITH,gas_limit:h0.ZARITH,storage_limit:h0.ZARITH,rollup:h0.SMART_ROLLUP_ADDRESS,cemented_commitment:h0.SMART_ROLLUP_COMMITMENT_HASH,output_proof:h0.PADDED_BYTES},T1={arbitrary:h0.PADDED_BYTES},j1=e=>t=>r=>Object.keys(t).reduce(((n,i)=>{const o=t[i];if(r&&Array.isArray(o)){const t=e[o[0]],a=r[i];if(!Array.isArray(a))throw new E0(`Invalid operation value "${JSON.stringify(a)}" of key "${i}, expected value to be Array.`);return n+a.reduce(((e,r)=>e+t(r)),"")}return n+(0,e[o])(r[i])}),""),C1=e=>t=>r=>Object.keys(t).reduce(((n,i)=>{const o=t[i];if(Array.isArray(o)){const t=e[o[0]],a=[],s=r.length();for(;r.length()>0;)if(a.push(t(r)),s===r.length())throw new S0("Unable to decode value");return Object.assign(Object.assign({},n),{[i]:a})}{const t=(0,e[o])(r);return"undefined"!==typeof t?Object.assign(Object.assign({},n),{[i]:t}):Object.assign({},n)}}),{}),R1={[h0.SECRET]:e=>u0(e.consume(20)),[h0.RAW]:e=>u0(e.consume(32)),[h0.TZ1]:Z0,[h0.BRANCH]:Y0,[h0.ZARITH]:a1,[h0.PUBLIC_KEY]:e=>{switch(e.consume(1)[0]){case 0:return G0(Dc.EDPK)(e);case 1:return G0(Dc.SPPK)(e);case 2:return G0(Dc.P2PK)(e);default:throw new cc(e.toString(),cl(qc.NO_PREFIX_MATCHED))}},[h0.PKH]:X0,[h0.PKH_ARR]:e=>{if(!n1(e))return;const t=[];for(e.consume(4);e.length()>0;)t.push(X0(e));return t},[h0.DELEGATE]:e=>{if(n1(e))return X0(e)},[h0.INT32]:e=>{const t=e.consume(4);let r=0;for(let n=0;n{const t=M0(e),r=M0(e);return{code:I0(new C0(t)),storage:I0(new C0(r))}},[h0.BALLOT_STATEMENT]:e=>{const t=e.consume(1);switch(t[0]){case 0:return"yay";case 1:return"nay";case 2:return"pass";default:throw new _0(t[0].toString())}},[h0.PROPOSAL]:r1,[h0.PROPOSAL_ARR]:e=>{const t=[];for(e.consume(4);e.length()>0;)t.push(r1(e));return t},[h0.PARAMETERS]:e=>{if(0!==e.consume(1)[0]){const t=(e=>{const t=d0(e.consume(1)[0],2);if(t in v0)return v0[t];{const t=M0(e,1),r=l0.from(t).toString("utf8");if(r.length>31)throw new w0(r);return r}})(e),r=M0(e);return{entrypoint:t,value:I0(new C0(r))}}},[h0.ADDRESS]:e=>{switch(e.consume(1)[0]){case 0:return X0(e);case 1:{const t=G0(Dc.KT1)(e);return e.consume(1),t}default:throw new ec(e.toString(),": Unable to decode.")}},[h0.SMART_ROLLUP_ADDRESS]:e=>{const t=G0(Dc.SR1)(e);if(t.substring(0,3)!==Dc.SR1)throw new T0(t,cl(qc.NO_PREFIX_MATCHED)+` expecting prefix '${Dc.SR1}'.`);return t},[h0.SMART_CONTRACT_ADDRESS]:e=>{if(1===e.consume(1)[0]){const t=G0(Dc.KT1)(e);return e.consume(1),t}throw new lc(e.toString(),cl(qc.NO_PREFIX_MATCHED))},[h0.SMART_ROLLUP_COMMITMENT_HASH]:e=>{const t=G0(Dc.SRC1)(e);if(t.substring(0,4)!==Dc.SRC1)throw new j0(t,cl(qc.NO_PREFIX_MATCHED)+` expecting prefix '${Dc.SRC1}'`);return t},[h0.VALUE]:e=>{const t=M0(e);return I0(new C0(t))},[h0.INT16]:e=>{const t=e.consume(2);let r=0;for(let n=0;n{const t=M0(e);return l0.from(t).toString("utf8")},[h0.BURN_LIMIT]:e=>{const t=e.consume(1);if("00"!==l0.from(t).toString("hex"))return a1(e)},[h0.DEPOSITS_LIMIT]:e=>{const t=e.consume(1);if("00"!==l0.from(t).toString("hex"))return a1(e)},[h0.PVM_KIND]:e=>{const t=e.consume(1);switch(t[0]){case 0:return"arith";case 1:return"wasm_2_0_0";case 2:return"riscv";default:throw new O0(t[0].toString())}},[h0.PADDED_BYTES]:e=>{const t=M0(e);return l0.from(t).toString("hex")},[h0.SMART_ROLLUP_MESSAGE]:e=>{const t=M0(e),r=((e,t=4)=>{const r=[];let n=e;for(;n.length();){const e=n.consume(t),i=parseInt(l0.from(e).toString("hex"),16);r.push(n.consume(i)),n=n.slice(i+t)}return r})(new C0(t));return r.map((e=>l0.from(e).toString("hex")))}};R1[h0.OPERATION]=(e=>t=>{const r=t.consume(1),n=m0[r[0]];if(void 0===n)throw new A0(r[0].toString());const i=e[n](t);if("object"!==typeof i)throw new S0("Invalid operation, cannot be decoded.");return Object.assign({kind:n},i)})(R1),R1[h0.OP_ACTIVATE_ACCOUNT]=e=>C1(R1)(u1)(e),R1[h0.OP_FAILING_NOOP]=e=>C1(R1)(T1)(e),R1[h0.OP_DELEGATION]=e=>C1(R1)(h1)(e),R1[h0.OP_TRANSACTION]=e=>C1(R1)(f1)(e),R1[h0.OP_ORIGINATION]=e=>C1(R1)(p1)(e),R1[h0.OP_BALLOT]=e=>C1(R1)(m1)(e),R1[h0.OP_ATTESTATION]=e=>C1(R1)(g1)(e),R1[h0.OP_ENDORSEMENT]=e=>C1(R1)(v1)(e),R1[h0.OP_SEED_NONCE_REVELATION]=e=>C1(R1)(y1)(e),R1[h0.OP_PROPOSALS]=e=>C1(R1)(b1)(e),R1[h0.OP_REVEAL]=e=>C1(R1)(d1)(e),R1[h0.OP_REGISTER_GLOBAL_CONSTANT]=e=>C1(R1)(w1)(e),R1[h0.OP_TRANSFER_TICKET]=e=>C1(R1)(x1)(e),R1[h0.OP_INCREASE_PAID_STORAGE]=e=>C1(R1)(_1)(e),R1[h0.OP_UPDATE_CONSENSUS_KEY]=e=>C1(R1)(k1)(e),R1[h0.OP_DRAIN_DELEGATE]=e=>C1(R1)(S1)(e),R1[h0.OP_SMART_ROLLUP_ORIGINATE]=e=>C1(R1)(A1)(e),R1[h0.OP_SMART_ROLLUP_ADD_MESSAGES]=e=>C1(R1)(P1)(e),R1[h0.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE]=e=>C1(R1)(O1)(e),R1[h0.MANAGER]=C1(R1)(l1),R1[h0.OP_SET_DEPOSITS_LIMIT]=e=>C1(R1)(E1)(e);const I1={[h0.SECRET]:e=>e,[h0.RAW]:e=>e,[h0.TZ1]:Q0,[h0.BRANCH]:J0,[h0.ZARITH]:o1,[h0.PUBLIC_KEY]:e=>{switch(e.substring(0,4)){case Dc.EDPK:return"00"+W0(Dc.EDPK)(e);case Dc.SPPK:return"01"+W0(Dc.SPPK)(e);case Dc.P2PK:return"02"+W0(Dc.P2PK)(e);default:throw new cc(e,cl(qc.NO_PREFIX_MATCHED)+` expecting one of the following '${Dc.EDPK}', '${Dc.SPPK}', '${Dc.P2PK}' or '${Dc.BLPK}'.`)}},[h0.PKH]:i1,[h0.PKH_ARR]:e=>{if(!e)return e1(!1);if(0===e.length)return e1(!0)+d0(0);const t=e.reduce(((e,t)=>e+i1(t)),"");return e1(!0)+d0(t.length/2)+t},[h0.DELEGATE]:e=>e?e1(!0)+i1(e):e1(!1),[h0.SCRIPT]:e=>{const t=R0(e.code),r=R0(e.storage);return`${d0(t.length/2,8)}${t}${d0(r.length/2,8)}${r}`},[h0.BALLOT_STATEMENT]:e=>{switch(e){case"yay":return"00";case"nay":return"01";case"pass":return"02";default:throw new x0(e)}},[h0.PROPOSAL]:t1,[h0.PROPOSAL_ARR]:e=>d0(32*e.length)+e.map((e=>t1(e))).join(""),[h0.INT32]:e=>{const t=parseInt(String(e),10),r=[];for(let n=0;n<4;n++){const e=8*(4-(n+1));r.push((t&255<>e)}return l0.from(r).toString("hex")},[h0.PARAMETERS]:e=>{if(!e||"default"===e.entrypoint&&"prim"in e.value&&"Unit"===e.value.prim)return"00";const t=(e=>{if(e in y0)return`${y0[e]}`;if(e.length>31)throw new w0(e);return`ff${R0({string:e}).slice(8)}`})(e.entrypoint),r=R0(e.value);return`ff${t}${(r.length/2).toString(16).padStart(8,"0")}${r}`},[h0.ADDRESS]:e=>{switch(e.substring(0,3)){case Dc.TZ1:case Dc.TZ2:case Dc.TZ3:case Dc.TZ4:return"00"+i1(e);case Dc.KT1:return"01"+W0(Dc.KT1)(e)+"00";default:throw new ec(e,cl(qc.NO_PREFIX_MATCHED)+` expecting one of the following prefix '${Dc.TZ1}', ${Dc.TZ2}', '${Dc.TZ3}', '${Dc.TZ4}' or '${Dc.KT1}'.`)}},[h0.SMART_ROLLUP_ADDRESS]:e=>{if(e.substring(0,3)!==Dc.SR1)throw new T0(e,cl(qc.NO_PREFIX_MATCHED)+` expecting prefix '${Dc.SR1}'.`);return W0(Dc.SR1)(e)},[h0.SMART_CONTRACT_ADDRESS]:e=>{if(e.substring(0,3)===Dc.KT1)return"01"+W0(Dc.KT1)(e)+"00";throw new lc(e,cl(qc.NO_PREFIX_MATCHED)+` expecting prefix '${Dc.KT1}'.`)},[h0.SMART_ROLLUP_COMMITMENT_HASH]:e=>{if(e.substring(0,4)===Dc.SRC1)return W0(Dc.SRC1)(e);throw new j0(e,cl(qc.NO_PREFIX_MATCHED)+` expecting prefix '${Dc.SRC1}'`)},[h0.VALUE]:e=>{const t=R0(e);return`${d0(t.length/2)}${t}`},[h0.INT16]:e=>{const t=parseInt(String(e),10),r=[];for(let n=0;n<2;n++){const e=8*(2-(n+1));r.push((t&255<>e)}return l0.from(r).toString("hex")},[h0.BLOCK_PAYLOAD_HASH]:s1,[h0.ENTRYPOINT]:e=>`${R0({string:e}).slice(2)}`,[h0.BURN_LIMIT]:e=>e?`ff${o1(e)}`:"00",[h0.DEPOSITS_LIMIT]:e=>e?`ff${o1(e)}`:"00",[h0.PVM_KIND]:e=>{switch(e){case"arith":return"00";case"wasm_2_0_0":return"01";case"riscv":return"02";default:throw new P0(e)}},[h0.PADDED_BYTES]:(e,t=8)=>`${d0(e.length/2,t)}${e}`,[h0.SMART_ROLLUP_MESSAGE]:e=>{const t=e.reduce(((e,t)=>e+`${d0(t.length/2)}${t}`),"");return`${d0(t.length/2)}${t}`}};I1[h0.OPERATION]=(e=>t=>{if(!(t.kind in e)||!(t.kind in g0))throw new fc(t.kind);return g0[t.kind]+e[t.kind](t)})(I1),I1[h0.OP_ACTIVATE_ACCOUNT]=e=>j1(I1)(u1)(e),I1[h0.OP_DELEGATION]=e=>j1(I1)(h1)(e),I1[h0.OP_TRANSACTION]=e=>j1(I1)(f1)(e),I1[h0.OP_ORIGINATION]=e=>j1(I1)(p1)(e),I1[h0.OP_BALLOT]=e=>j1(I1)(m1)(e),I1[h0.OP_ATTESTATION]=e=>j1(I1)(g1)(e),I1[h0.OP_ENDORSEMENT]=e=>j1(I1)(v1)(e),I1[h0.OP_SEED_NONCE_REVELATION]=e=>j1(I1)(y1)(e),I1[h0.OP_PROPOSALS]=e=>j1(I1)(b1)(e),I1[h0.OP_REVEAL]=e=>j1(I1)(d1)(e),I1[h0.OP_REGISTER_GLOBAL_CONSTANT]=e=>j1(I1)(w1)(e),I1[h0.OP_TRANSFER_TICKET]=e=>j1(I1)(x1)(e),I1[h0.OP_INCREASE_PAID_STORAGE]=e=>j1(I1)(_1)(e),I1[h0.OP_UPDATE_CONSENSUS_KEY]=e=>j1(I1)(k1)(e),I1[h0.OP_DRAIN_DELEGATE]=e=>j1(I1)(S1)(e),I1[h0.OP_SMART_ROLLUP_ORIGINATE]=e=>j1(I1)(A1)(e),I1[h0.OP_SMART_ROLLUP_ADD_MESSAGES]=e=>j1(I1)(P1)(e),I1[h0.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE]=e=>j1(I1)(O1)(e),I1[h0.MANAGER]=j1(I1)(l1),I1[h0.OP_SET_DEPOSITS_LIMIT]=e=>j1(I1)(E1)(e),I1[h0.OP_FAILING_NOOP]=e=>j1(I1)(T1)(e);const M1={activate_account:u1,reveal:d1,delegation:h1,transaction:f1,origination:p1,ballot:m1,attestation:g1,endorsement:v1,seed_nonce_revelation:y1,proposals:b1,register_global_constant:w1,transfer_ticket:x1,increase_paid_storage:_1,update_consensus_key:k1,drain_delegate:S1,set_deposits_limit:E1,smart_rollup_originate:A1,smart_rollup_add_messages:P1,smart_rollup_execute_outbox_message:O1,failing_noop:T1},L1=e=>{const t=e.kind,r=Object.keys(e),n=(i="kind",r.filter((e=>e!==i)));var i;const o=Object.keys(M1[t]);return a=n,o.filter((e=>!a.includes(e)));var a};var N1;!function(e){e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProxfordY="ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(N1||(N1={}));const D1=N1.ProxfordY;class z1{constructor(e=D1){var t;this.protocolHash=e,this.codec=(t=h0.MANAGER,this.protocolHash,{encoder:I1[t],decoder:e=>{const r=C0.fromHexString(e);return R1[t](r)}})}forge(e){const t=function(e){return Wc(e,Qc)}(e.branch);if(t!==qc.VALID)throw new tc(e.branch,cl(t));for(const i of e.contents){if(r=i.kind,!Object.keys(M1).includes(r))throw new fc(i.kind);const e=L1(i);if(1===e.length){if("delegation"===i.kind&&"delegate"===e[0])continue;if("origination"===i.kind&&"delegate"===e[0])continue;if("transaction"===i.kind&&"parameters"===e[0])continue;if("set_deposits_limit"===i.kind&&"limit"===e[0])continue;if("smart_rollup_originate"===i.kind&&"whitelist"===e[0])continue;throw new b0(i,`missing properties "${e.join(", ")}"`)}if(e.length>1)throw new b0(i,`missing properties "${e.join(", ")}"`)}var r;const n=this.codec.encoder(e).toLowerCase();return Promise.resolve(n)}parse(e){return Promise.resolve(this.codec.decoder(e))}}new z1;function B1(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i(e.on("data",(e=>{t.next(e)})),e.on("error",(e=>{t.error(e)})),e.on("close",(()=>{t.complete()})),()=>{e.close()})))}const W1=169,G1=155,Z1=445,Y1=1674,X1=276,J1=276,Q1=305,e2=477;var t2;!function(e){e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.PsiThaCa="PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProxfordY="ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(t2||(t2={}));t2.Pt24m4xi,t2.PsBABY5H,t2.PsBabyM1,t2.PsCARTHA,t2.PsDELPH1,t2.PtEdo2Zk,t2.PsFLorena,t2.PtGRANADs,t2.PtHangz2,t2.PsiThaCa,t2.Psithaca2,t2.PtJakart2,t2.PtKathman,t2.PtLimaPtL,t2.PtMumbai2,t2.PtNairobi,t2.ProxfordY,t2.ProtoALpha;var r2;!function(e){e.MAINNET="NetXdQprcVkpaWU",e.CARTHAGENET="NetXjD3HPJJjmcd",e.DELPHINET="NetXm8tYqnMWky1",e.EDONET="NetXSgo1ZT2DRUG",e.FLORENCENET="NetXxkAx4woPLyu",e.GRANADANET="NetXz969SFaFn8k",e.HANGZHOUNET="NetXZSsxBpMQeAT",e.ITHACANET="NetXbhmtAbMukLc",e.ITHACANET2="NetXnHfVqm9iesp",e.JAKARTANET2="NetXLH1uAxK7CCh",e.KATHMANDUNET="NetXazhm4yetmff",e.LIMANET="NetXizpkH94bocH",e.MUMBAINET="NetXQw6nWSnrJ5t",e.MUMBAINET2="NetXgbcrNtXD2yA",e.NAIROBINET="NetXyuzvDo2Ugzb",e.OXFORDNET2="NetXxWsskGahzQB"}(r2||(r2={}));const n2=e=>Math.round(37*i2(e)/10),i2=e=>{switch(e.substring(0,3)){case"tz1":return W1;case"tz2":return G1;case"tz3":return Z1;case"tz4":return Y1;default:throw new Error(`Cannot estimate reveal gas limit for ${e}`)}},o2=e=>Math.round(12*a2(e)/10),a2=e=>{switch(e.substring(0,3)){case"tz1":return X1;case"tz2":return J1;case"tz3":return Q1;case"tz4":return e2;default:throw new Error(`Cannot estimate reveal fee for ${e}`)}};class s2 extends Zs{constructor(e,t,r){super(),this.smartContractMethodName=e,this.sigs=t,this.invalidParams=r,this.name="InvalidParameterError",this.message=`${e} Received ${r.length} arguments while expecting one of the following signatures (${JSON.stringify(t)})`}}class c2 extends Zs{constructor(e){super(),this.source=e,this.name="InvalidDelegationSource",this.message=`Since Babylon delegation source can no longer be a contract address ${e}. Please use the smart contract abstraction to set your delegate.`}}class l2 extends Zs{constructor(e,t){super(),this.message=e,this.data=t,this.name="InvalidCodeParameter"}}class u2 extends Zs{constructor(e,t){super(),this.message=e,this.data=t,this.name="InvalidInitParameter"}}class d2 extends Ys{constructor(e,t,r,n){super(),this.message=e,this.viewName=t,this.failWith=r,this.cause=n,this.name="ViewSimulationError"}}const h2=e=>{try{JSON.parse(e)}catch(pge){return!1}return!0};class f2 extends Zs{constructor(e){super(),this.info=e,this.name="InvalidViewSimulationContext",this.message=`${e} Please configure the context of the view execution in the executeView method.`}}class p2 extends Ys{constructor(e){super(),this.message=e,this.name="RevealOperationError"}}class m2 extends Zs{constructor(e){super(),this.message=e,this.name}}class g2 extends Zs{constructor(e){super(),this.message=e,this.name="InvalidBalanceError"}}const v2=({code:e,init:t,balance:r="0",delegate:n,storage:i,fee:o,gasLimit:a,storageLimit:s,mutez:c=!1})=>U1(void 0,void 0,void 0,(function*(){if(void 0!==i&&void 0!==t)throw new m2("Storage and Init cannot be set a the same time. Please either use storage or init but not both.");if(!Array.isArray(e))throw new l2("Wrong code parameter type, expected an array",e);let l;if(void 0!==i){const t=e.find((e=>"prim"in e&&"storage"===e.prim));if(void 0===(null===t||void 0===t?void 0:t.args))throw new l2("The storage section is missing from the script",e);l=new WX(t.args[0]).Encode(i)}else{if(void 0===t||"object"!==typeof t)throw new u2("Wrong init parameter type, expected JSON Michelson",t);l=t}const u={code:e,storage:l};if(isNaN(Number(r)))throw new g2(`Invalid Balance "${r}", cannot be converted to a number`);const d={kind:TW.ORIGINATION,fee:o,gas_limit:a,storage_limit:s,balance:c?r.toString():hl("tz","mutez",r).toString(),script:u};return n&&(d.delegate=n),d})),y2=({to:e,amount:t,parameter:r,fee:n,gasLimit:i,storageLimit:o,mutez:a=!1})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.TRANSACTION,fee:n,gas_limit:i,storage_limit:o,amount:a?t.toString():hl("tz","mutez",t).toString(),destination:e,parameters:r}})),b2=({delegate:e,source:t,fee:r,gasLimit:n,storageLimit:i})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.DELEGATION,source:t,fee:r,gas_limit:n,storage_limit:i,delegate:e}})),w2=({fee:e,gasLimit:t,storageLimit:r},n,i)=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.REVEAL,fee:e,public_key:i,source:n,gas_limit:null!==t&&void 0!==t?t:n2(n),storage_limit:r}})),x2=({value:e,source:t,fee:r,gasLimit:n,storageLimit:i})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.REGISTER_GLOBAL_CONSTANT,value:e,fee:r,gas_limit:n,storage_limit:i,source:t}})),_2=({ticketContents:e,ticketTy:t,ticketTicketer:r,ticketAmount:n,destination:i,entrypoint:o,source:a,fee:s,gasLimit:c,storageLimit:l})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.TRANSFER_TICKET,fee:s,gas_limit:c,storage_limit:l,source:a,ticket_contents:e,ticket_ty:t,ticket_ticketer:r,ticket_amount:n,destination:i,entrypoint:o}})),k2=({source:e,fee:t,gasLimit:r,storageLimit:n,amount:i,destination:o})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.INCREASE_PAID_STORAGE,source:e,fee:t,gas_limit:r,storage_limit:n,amount:i,destination:o}})),S2=({source:e,fee:t,gasLimit:r,storageLimit:n,message:i})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.SMART_ROLLUP_ADD_MESSAGES,source:e,fee:t,gas_limit:r,storage_limit:n,message:i}})),E2=({source:e,fee:t,gasLimit:r,storageLimit:n,pvmKind:i,kernel:o,parametersType:a})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.SMART_ROLLUP_ORIGINATE,source:e,fee:t,gas_limit:r,storage_limit:n,pvm_kind:i,kernel:o,parameters_ty:a}})),A2=({source:e,fee:t,gasLimit:r,storageLimit:n,rollup:i,cementedCommitment:o,outputProof:a})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE,source:e,fee:t,gas_limit:r,storage_limit:n,rollup:i,cemented_commitment:o,output_proof:a}})),P2=(e,t)=>Object.assign(Object.assign({},e),{kind:t}),O2=(e,t)=>{if(Array.isArray(e)){const r=e.find((e=>e.kind===t));if(r&&T2(r,t))return r}},T2=(e,t)=>e.kind===t,j2=e=>-1!==["transaction","delegation","origination","reveal","register_global_constant","increase_paid_storage","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate","smart_rollup_execute_outbox_message"].indexOf(e.kind),C2=e=>-1!==["transaction","delegation","origination","register_global_constant","increase_paid_storage","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate","smart_rollup_execute_outbox_message"].indexOf(e.kind),R2=e=>"metadata"in e,I2=e=>R2(e)&&"operation_result"in e.metadata;class M2 extends Ys{constructor(e,t,r){super(),this.errors=e,this.errorDetails=t,this.operationsWithResults=r,this.name="TezosOperationError",this.lastError=e[e.length-1],this.message=`(${this.kind}) ${this.id}`,(e=>"with"in e)(this.lastError)&&(this.lastError.with.string?this.message=this.lastError.with.string:this.lastError.with.int?this.message=this.lastError.with.int:this.message=JSON.stringify(this.lastError.with))}get id(){return this.lastError.id}get kind(){return this.lastError.kind}}class L2 extends Error{constructor(e){super(),this.result=e,this.name="TezosPreapplyFailureError",this.message="Preapply returned an unexpected result"}}const N2=e=>{const t=Array.isArray(e)?e:[e],r=[];for(let n=0;nr.push(e.result))))}return r},D2=(e,t="failed")=>{const r=Array.isArray(e)?e:[e];let n=[];for(let o=0;onew NG(e).pipe(DZ({each:1e3*e.timeout,with:()=>DG((()=>new F2("Confirmation polling timed out")))})))),LZ((()=>ZG((()=>K1(this.context.stream.subscribeBlock("head")))).pipe(LZ((e=>{var t,r;const n=null!==(r=null===(t=this.lastHead)||void 0===t?void 0:t.header.level)&&void 0!==r?r:e.header.level-1;return XG(n+1,e.header.level-n-1).pipe(BZ((e=>this.context.readProvider.getBlock(e))),UZ(e))})),FZ((e=>this.lastHead=e))))),VZ({refCount:!0})),this.confirmed$=this.currentHead$.pipe(vZ((e=>{for(let t=3;t>=0;t--)e.operations[t].forEach((t=>{t.hash===this.hash&&(this._foundAt=e.header.level)}));if(e.header.level-this._foundAt>=0)return this._foundAt})),qZ((e=>void 0!==e)),GZ(),VZ()),this._foundAt=Number.POSITIVE_INFINITY,sl(this.hash)!==qc.VALID)throw new hc(this.hash);this.confirmed$.pipe(GZ(),ZZ((()=>dZ(YG)))).subscribe()}get revealOperation(){return Array.isArray(this.results)&&this.results.find((e=>"reveal"===e.kind))}get revealStatus(){return this.revealOperation?this.revealOperation.metadata.operation_result.status:"unknown"}get status(){return this.results.map((e=>I2(e)?e.metadata.operation_result.status:"unknown"))[0]||"unknown"}confirmation(e,t){return U1(this,void 0,void 0,(function*(){if("undefined"!==typeof e&&e<1)throw new U2(e);const{defaultConfirmationCount:r,confirmationPollingTimeoutSecond:n}=this.context.config;this._pollingConfig$.next({timeout:t||n});const i=void 0!==e?e:r;return new Promise(((e,t)=>{this.confirmed$.pipe(LZ((()=>this.currentHead$)),qZ((e=>e.header.level-this._foundAt>=i-1)),GZ()).subscribe({error:e=>t(e),complete:()=>e(this._foundAt+(i-1))})}))}))}}class V2 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}getOriginatedContractAddresses(){const e=this.results.filter((e=>"origination"===e.kind));let t=[];for(const r of e)r.metadata.operation_result.originated_contracts&&(t=[...t,...r.metadata.operation_result.originated_contracts]);return t}get status(){return this.results.filter((e=>-1!==y5.indexOf(e.kind))).map((e=>{if(I2(e)){return e.metadata.operation_result.status}return"unknown"}))[0]||"unknown"}get fee(){return this.sumProp(this.params,"fee")}get gasLimit(){return this.sumProp(this.params,"gas_limit")}get storageLimit(){return this.sumProp(this.params,"storage_limit")}get consumedGas(){return Nc.config({DECIMAL_PLACES:0,ROUNDING_MODE:Nc.ROUND_UP}),new Nc(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(N2({contents:this.results}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(N2({contents:this.results}),"paid_storage_size_diff"))}get errors(){return D2({contents:this.results})}}class q2{get rpc(){return this.context.rpc}get signer(){return this.context.signer}constructor(e){this.context=e}forge({opOb:{branch:e,contents:t,protocol:r},counter:n}){return U1(this,void 0,void 0,(function*(){return{opbytes:yield this.context.forger.forge({branch:e,contents:t}),opOb:{branch:e,contents:t,protocol:r},counter:n}}))}estimate(e,t){var{fee:r,gasLimit:n,storageLimit:i}=e,o=B1(e,["fee","gasLimit","storageLimit"]);return U1(this,void 0,void 0,(function*(){let e=r,a=n,s=i;if(e&&e%1!==0)throw new B2(`Fee value must not be a decimal: ${e}`);if(a&&a%1!==0)throw new B2(`Gas Limit value must not be a decimal: ${a}`);if(s&&s%1!==0)throw new B2(`Storage Limit value must not be a decimal: ${s}`);if(void 0===r||void 0===n||void 0===i){const c=yield t(Object.assign({fee:r,gasLimit:n,storageLimit:i},o));null!==e&&void 0!==e||(e=c.suggestedFeeMutez),null!==a&&void 0!==a||(a=c.gasLimit),null!==s&&void 0!==s||(s=c.storageLimit)}return{fee:e,gasLimit:a,storageLimit:s}}))}getRPCOp(e){return U1(this,void 0,void 0,(function*(){switch(e.kind){case TW.TRANSACTION:return y2(Object.assign({},e));case TW.ORIGINATION:return v2(yield this.context.parser.prepareCodeOrigination(Object.assign({},e)));case TW.DELEGATION:return b2(Object.assign({},e));case TW.REGISTER_GLOBAL_CONSTANT:return x2(Object.assign({},e));case TW.INCREASE_PAID_STORAGE:return k2(Object.assign({},e));case TW.TRANSFER_TICKET:return _2(Object.assign({},e));case TW.SMART_ROLLUP_ADD_MESSAGES:return S2(Object.assign({},e));case TW.SMART_ROLLUP_ORIGINATE:return E2(Object.assign({},e));case TW.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:return A2(Object.assign({},e));default:throw new fc(e.kind)}}))}runOperation(e){return U1(this,void 0,void 0,(function*(){return{opResponse:yield this.rpc.runOperation(e),op:e,context:this.context.clone()}}))}simulate(e){return U1(this,void 0,void 0,(function*(){return{opResponse:yield this.rpc.simulateOperation(e),op:e,context:this.context.clone()}}))}isRevealOpNeeded(e,t){return U1(this,void 0,void 0,(function*(){return!(!(yield this.isAccountRevealRequired(t))||!this.isRevealRequiredForOpType(e))}))}isAccountRevealRequired(e){return U1(this,void 0,void 0,(function*(){return!(yield this.context.readProvider.isAccountRevealed(e,"head"))}))}isRevealRequiredForOpType(e){let t=!1;for(const r of e)C2(r)&&(t=!0);return t}signAndInject(e){return U1(this,void 0,void 0,(function*(){const t=yield this.signer.sign(e.opbytes,new Uint8Array([3]));e.opbytes=t.sbytes,e.opOb.signature=t.prefixSig;const r=[],n=yield this.rpc.preapplyOperations([e.opOb]);if(!Array.isArray(n))throw new L2(n);for(let e=0;eU1(this,void 0,void 0,(function*(){return e}))));case TW.ORIGINATION:return this.walletProvider.mapOriginateParamsToWalletParams((()=>U1(this,void 0,void 0,(function*(){return this.context.parser.prepareCodeOrigination(Object.assign({},e))}))));case TW.DELEGATION:return this.walletProvider.mapDelegateParamsToWalletParams((()=>U1(this,void 0,void 0,(function*(){return e}))));case TW.INCREASE_PAID_STORAGE:return this.walletProvider.mapIncreasePaidStorageWalletParams((()=>U1(this,void 0,void 0,(function*(){return e}))));default:throw new fc(JSON.stringify(e.kind))}}))}with(e){for(const t of e)switch(t.kind){case TW.TRANSACTION:this.withTransfer(t);break;case TW.ORIGINATION:this.withOrigination(t);break;case TW.DELEGATION:this.withDelegation(t);break;case TW.INCREASE_PAID_STORAGE:this.withIncreasePaidStorage(t);break;default:throw new fc(JSON.stringify(t.kind))}return this}send(){return U1(this,void 0,void 0,(function*(){const e=[];for(const r of this.operations)e.push(yield this.mapOperation(r));const t=yield this.walletProvider.sendOperations(e);return this.context.operationFactory.createBatchOperation(t)}))}}class W2{constructor(e){this.context=e,this.walletCommand=e=>({send:e})}get walletProvider(){return this.context.walletProvider}pkh({forceRefetch:e}={}){return U1(this,void 0,void 0,(function*(){return this._pkh&&!e||(this._pkh=yield this.walletProvider.getPKH()),this._pkh}))}pk({forceRefetch:e}={}){return U1(this,void 0,void 0,(function*(){return this._pk&&!e||(this._pk=yield this.walletProvider.getPK()),this._pk}))}originate(e){return this.walletCommand((()=>U1(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapOriginateParamsToWalletParams((()=>this.context.parser.prepareCodeOrigination(Object.assign({},e)))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createOriginationOperation(r)}))))}setDelegate(e){var t;const r=tl(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&r!==qc.VALID)throw new ec(e.delegate,cl(r));return this.walletCommand((()=>U1(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapDelegateParamsToWalletParams((()=>U1(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createDelegationOperation(r)}))))}signFailingNoop(e){return U1(this,void 0,void 0,(function*(){const t={kind:TW.FAILING_NOOP,arbitrary:e.arbitrary},r=yield this.context.readProvider.getBlockHash(e.basedOnBlock),n=yield this.context.forger.forge({branch:r,contents:[t]});return{signature:yield this.walletProvider.sign(n,Uint8Array.from([3])),bytes:n,signedContent:{branch:r,contents:[{kind:TW.FAILING_NOOP,arbitrary:e.arbitrary}]}}}))}registerDelegate(){return this.walletCommand((()=>U1(this,void 0,void 0,(function*(){const e=yield this.walletProvider.mapDelegateParamsToWalletParams((()=>U1(this,void 0,void 0,(function*(){return{delegate:yield this.pkh()}})))),t=yield this.walletProvider.sendOperations([e]);return this.context.operationFactory.createDelegationOperation(t)}))))}transfer(e){const t=tl(e.to);if(t!==qc.VALID)throw new ec(e.to,cl(t));return this.walletCommand((()=>U1(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapTransferParamsToWalletParams((()=>U1(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createTransactionOperation(r)}))))}increasePaidStorage(e){const t=tl(e.destination);if(t!==qc.VALID)throw new ec(e.destination,cl(t));return this.walletCommand((()=>U1(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapIncreasePaidStorageWalletParams((()=>U1(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createIncreasePaidStorageOperation(r)}))))}batch(e){const t=new K2(this.walletProvider,this.context);return Array.isArray(e)&&t.with(e),t}at(e,t=(e=>e)){return U1(this,void 0,void 0,(function*(){const r=nl(e);if(r!==qc.VALID)throw new lc(e,cl(r));const n=this.context.withExtensions().rpc,i=this.context.withExtensions().readProvider,o=yield i.getScript(e,"head"),a=yield i.getEntrypoints(e),s=new s5(e,o,this,this.context.contract,a,n,i);return t(s,this.context)}))}getPK(){return U1(this,void 0,void 0,(function*(){return yield this.pk()}))}}class G2 extends Xs{constructor(){super(),this.name="ConfirmationUndefinedError",this.message="Default confirmation count can not be undefined"}}class Z2 extends Qs{constructor(e){super(),this.message=e,this.name="ObservableError"}}class Y2{operationResults(){return U1(this,void 0,void 0,(function*(){return this._operationResult.pipe(GZ()).toPromise()}))}receipt(){return U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new Z2("Unable to get operation results");return((e,{ALLOCATION_BURN:t,ORIGINATION_BURN:r}={ALLOCATION_BURN:257,ORIGINATION_BURN:257})=>{Nc.config({DECIMAL_PLACES:0,ROUNDING_MODE:Nc.ROUND_UP});const n=N2({contents:e});let i=new Nc(0),o=new Nc(0),a=new Nc(0),s=new Nc(0),c=new Nc(0),l=new Nc(0);return n.forEach((e=>{a=a.plus(e.fee||0),s=s.plus(Array.isArray(e.originated_contracts)?e.originated_contracts.length*r:0),c=c.plus("allocated_destination_contract"in e?t:0),i=i.plus(e.consumed_milligas||0),l=l.plus("paid_storage_size_diff"in e&&Number(e.paid_storage_size_diff)||0)})),o=o.plus(c).plus(s).plus(l),{totalFee:a,totalMilliGas:i,totalGas:i.dividedBy(1e3),totalStorage:o,totalAllocationBurn:c,totalOriginationBurn:s,totalPaidStorageDiff:l,totalStorageBurn:new Nc(o.multipliedBy(250))}})(e)}))}constructor(e,t,r){if(this.opHash=e,this.context=t,this._newHead$=r,this._operationResult=new LG(1),this._includedInBlock=new LG(1),this._included=!1,this.newHead$=this._newHead$.pipe(LZ((e=>{var t,r;const n=null!==(r=null===(t=this.lastHead)||void 0===t?void 0:t.header.level)&&void 0!==r?r:e.header.level-1;return XG(n+1,e.header.level-n-1).pipe(BZ((e=>this.context.readProvider.getBlock(e))),UZ(e))})),FZ((e=>this.lastHead=e)),$Z({connector:()=>new LG(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1})),this.confirmed$=this.newHead$.pipe(vZ((e=>{for(const t of e.operations)for(const r of t)if(r.hash===this.opHash)return this._included=!0,this._includedInBlock.next(e),this._operationResult.next(r.contents),e})),qZ((e=>"undefined"!==typeof e)),GZ(),$Z({connector:()=>new LG(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1})),sl(this.opHash)!==qc.VALID)throw new hc(this.opHash);this.confirmed$.pipe(GZ(),ZZ((()=>dZ(void 0)))).subscribe()}getCurrentConfirmation(){return U1(this,void 0,void 0,(function*(){return this._included?wZ([this._includedInBlock,uZ(this.context.readProvider.getBlock("head"))]).pipe(vZ((([e,t])=>t.header.level-e.header.level+1)),GZ()).toPromise():0}))}isInCurrentBranch(e="head"){return U1(this,void 0,void 0,(function*(){if(!this._included)return!0;const t=yield this.context.readProvider.getBlockLevel(e),r=yield this._includedInBlock.pipe(GZ()).toPromise();if(!r)throw new Z2("Inclusion block is undefined");const n=t-r.header.level;if(n<=0)return!0;const i=Math.min(r.header.level+n,r.header.level+60);return new Set(yield this.context.readProvider.getLiveBlocks(i)).has(r.hash)}))}confirmationObservable(e){if("undefined"!==typeof e&&e<1)throw new U2(e);const{defaultConfirmationCount:t}=this.context.config,r=void 0!==e?e:t;if(void 0===r)throw new G2;return wZ([this._includedInBlock,this.newHead$]).pipe(YZ((([,e],[,t])=>e.hash===t.hash)),vZ((([e,t])=>({block:t,expectedConfirmation:r,currentConfirmation:t.header.level-e.header.level+1,completed:t.header.level-e.header.level>=r-1,isInCurrentBranch:()=>this.isInCurrentBranch(t.hash)}))),(n=({completed:e})=>!e,void 0===(i=!0)&&(i=!1),nZ((function(e,t){var r=0;e.subscribe(iZ(t,(function(e){var o=n(e,r++);(o||i)&&t.next(e),!o&&t.complete()})))}))));var n,i}confirmation(e){return this.confirmationObservable(e).toPromise()}}class X2 extends Y2{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new Z2("operationResult returned undefined");return e.find((e=>e.kind===TW.REVEAL))}))}transactionOperation(){return U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new Z2("operationResult returned undefined");return e.find((e=>e.kind===TW.TRANSACTION))}))}status(){return U1(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.transactionOperation();return e?e.metadata.operation_result.status:"unknown"}))}}class J2 extends Y2{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}originationOperation(){return U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return O2(e,TW.ORIGINATION);throw new Z2("Unable to fetch operation result")}))}revealOperation(){return U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return O2(e,TW.REVEAL);throw new Z2("Unable to fetch operation result")}))}status(){return U1(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.originationOperation();return e?e.metadata.operation_result.status:"unknown"}))}contract(){return U1(this,void 0,void 0,(function*(){const e=yield this.originationOperation(),t=((null===e||void 0===e?void 0:e.metadata.operation_result.originated_contracts)||[])[0];return this.context.wallet.at(t)}))}}class Q2 extends Y2{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===TW.REVEAL));throw new Z2("Unable to fetch operation result")}))}delegationOperation(){return U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===TW.DELEGATION));throw new Z2("Unable to fetch operation result")}))}status(){return U1(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.delegationOperation();return e?e.metadata.operation_result.status:"unknown"}))}}class e5{constructor(e){this.context=e}getPKH(){return U1(this,void 0,void 0,(function*(){return this.context.signer.publicKeyHash()}))}getPK(){return U1(this,void 0,void 0,(function*(){return this.context.signer.publicKey()}))}mapTransferParamsToWalletParams(e){return U1(this,void 0,void 0,(function*(){return P2(yield e(),TW.TRANSACTION)}))}mapOriginateParamsToWalletParams(e){return U1(this,void 0,void 0,(function*(){return P2(yield e(),TW.ORIGINATION)}))}mapDelegateParamsToWalletParams(e){return U1(this,void 0,void 0,(function*(){return P2(yield e(),TW.DELEGATION)}))}mapIncreasePaidStorageWalletParams(e){return U1(this,void 0,void 0,(function*(){return P2(yield e(),TW.INCREASE_PAID_STORAGE)}))}sendOperations(e){return U1(this,void 0,void 0,(function*(){return(yield this.context.batch.batch(e).send()).hash}))}sign(e,t){return U1(this,void 0,void 0,(function*(){const{prefixSig:r}=yield this.context.signer.sign(e,t);return r}))}}class t5{constructor(e,t,r,n,i="unit",o=!0,a=!1){this.provider=e,this.address=t,this.parameterSchema=r,this.name=n,this.args=i,this.isMultipleEntrypoint=o,this.isAnonymous=a}getSignature(){return this.isAnonymous?this.parameterSchema.ExtractSchema()[this.name]:this.parameterSchema.ExtractSchema()}send(e={}){return this.provider instanceof W2?this.provider.transfer(this.toTransferParams(e)).send():this.provider.transfer(this.toTransferParams(e))}toTransferParams({fee:e,gasLimit:t,storageLimit:r,source:n,amount:i=0,mutez:o=!1}={}){return{to:this.address,amount:i,fee:e,mutez:o,source:n,gasLimit:t,storageLimit:r,parameter:{entrypoint:this.isMultipleEntrypoint?this.name:o5,value:this.isAnonymous?this.parameterSchema.EncodeObject({[this.name]:this.args}):this.parameterSchema.EncodeObject(this.args)}}}}class r5{constructor(e,t,r,n,i,o=!0,a=!1){this.provider=e,this.address=t,this.parameterSchema=r,this.name=n,this.args=i,this.isMultipleEntrypoint=o,this.isAnonymous=a}validateArgs(e,t,r){const n=t.ExtractSignatures();if(!n.find((t=>t.length===e.length)))throw new s2(r,n,e)}get schema(){return this.isAnonymous?this.parameterSchema.ExtractSchema()[this.name]:this.parameterSchema.ExtractSchema()}getSignature(){if(!this.isAnonymous){const e=this.parameterSchema.ExtractSignatures();return 1==e.length?e[0]:e}{const e=this.parameterSchema.ExtractSignatures().find((e=>e[0]===this.name));if(e)return e.shift(),e}}send(e={}){return this.provider instanceof W2?this.provider.transfer(this.toTransferParams(e)).send():this.provider.transfer(this.toTransferParams(e))}toTransferParams({fee:e,gasLimit:t,storageLimit:r,source:n,amount:i=0,mutez:o=!1}={}){return{to:this.address,amount:i,fee:e,mutez:o,source:n,gasLimit:t,storageLimit:r,parameter:{entrypoint:this.isMultipleEntrypoint?this.name:o5,value:this.isAnonymous?this.parameterSchema.Encode(this.name,...this.args):this.parameterSchema.Encode(...this.args)}}}}class n5{constructor(e,t,r,n,i,o="Unit"){this._rpc=e,this._readProvider=t,this._contractAddress=r,this._smartContractViewSchema=n,this._contractStorageType=i,this._args=o}getSignature(){return{parameter:this._smartContractViewSchema.extractArgsSchema(),result:this._smartContractViewSchema.extractResultSchema()}}executeView(e){return U1(this,void 0,void 0,(function*(){this.verifyContextExecution(e);const t=yield this._readProvider.getChainId(),r=this.transformArgsToMichelson(),n={contract:this._contractAddress,view:this._smartContractViewSchema.viewName,input:r,chain_id:t,source:e.viewCaller};return e.source&&(n.payer=e.source),this.executeViewAndDecodeResult(n)}))}verifyContextExecution(e){if(e.source&&tl(e.source)!==qc.VALID)throw new f2(`The source account who initialized the view execution is invalid: ${e.source}.`);if(!e.viewCaller||tl(e.viewCaller)!==qc.VALID)throw new f2(`The contract which is the caller of view is invalid: ${e.viewCaller}.`)}transformArgsToMichelson(){try{return this._smartContractViewSchema.encodeViewArgs(this._args)}catch(e){throw new ac(this._smartContractViewSchema.viewName,this.getSignature(),this._args,e)}}adaptViewCodeToContext(e,t,r){const n={BALANCE:[{prim:"PUSH",args:[{prim:"mutez"},{int:r}]}],SENDER:[{prim:"PUSH",args:[{prim:"address"},{string:t}]}],SELF_ADDRESS:[{prim:"PUSH",args:[{prim:"address"},{string:this._contractAddress}]}],AMOUNT:[{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]}]};return e.forEach(((i,o)=>{i.prim in n&&(e[o]=Object(n)[i.prim]),i.args&&0!==i.args.length?this.adaptViewCodeToContext(i.args,t,r):Array.isArray(i)&&this.adaptViewCodeToContext(i,t,r)})),e}executeViewAndDecodeResult(e){return U1(this,void 0,void 0,(function*(){let t;try{t=(yield this._rpc.runScriptView(e)).data}catch(r){const e=(e=>{if(h2(e.body)){const t=JSON.parse(e.body);if(Array.isArray(t)&&"with"in t[t.length-1])return t[t.length-1].with}})(r);throw e?new d2(`The simulation of the on-chain view named ${this._smartContractViewSchema.viewName} failed with: ${JSON.stringify(e)}`,this._smartContractViewSchema.viewName,e,r):r}return this._smartContractViewSchema.decodeViewResult(t)}))}}class i5{constructor(e,t){this.provider=e,this.contractAddress=t}createContractMethodFlatParams(e,t,r,n=!0,i=!1){return new r5(this.provider,this.contractAddress,e,t,r,n,i)}createContractMethodObjectParam(e,t,r,n=!0,i=!1){return new t5(this.provider,this.contractAddress,e,t,r,n,i)}createContractViewObjectParam(e,t,r,n,i){return new n5(e,t,this.contractAddress,r,n,i)}}const o5="default";class a5{constructor(e,t,r,n,i,o,a){this.currentContract=e,this.name=t,this.callbackParametersSchema=r,this.parameterSchema=n,this.args=i,this.rpc=o,this.readProvider=a}read(e){return U1(this,void 0,void 0,(function*(){const t=rl(null!==e&&void 0!==e?e:"");if(nl(null!==e&&void 0!==e?e:"")==qc.VALID)throw new pc("Since version 12, the lambda view no longer depends on a lambda contract. The read method no longer accepts a contract address as a parameter.");if(e&&t!==qc.VALID)throw new uc(e,cl(t));const r=this.parameterSchema.Encode(...this.args),n=yield this.rpc.runView({contract:this.currentContract.address,entrypoint:this.name,input:r,chain_id:e||(yield this.readProvider.getChainId())});return this.callbackParametersSchema.Execute(n.data)}))}}class s5{constructor(e,t,r,n,i,o,a){this.address=e,this.script=t,this.storageProvider=n,this.entrypoints=i,this.rpc=o,this.readProvider=a,this.methods={},this.methodsObject={},this.views={},this.contractViews={},this.contractMethodFactory=new i5(r,e),this.schema=WX.fromRPCResponse({script:this.script}),this.parameterSchema=GX.fromRPCResponse({script:this.script}),this.viewSchema=ZX.fromRPCResponse({script:this.script}),0!==this.viewSchema.length&&this._initializeOnChainViews(this,o,this.readProvider,this.viewSchema),this.eventSchema=YX.fromRPCResponse({script:this.script}),this._initializeMethods(this,this.entrypoints.entrypoints,this.rpc,this.readProvider)}_initializeMethods(e,t,r,n){const i=this.parameterSchema,o=Object.keys(t);if(i.isMultipleEntryPoint){o.forEach((i=>{const o=new GX(t[i]);if(this.methods[i]=function(...t){return e.contractMethodFactory.createContractMethodFlatParams(o,i,t)},this.methodsObject[i]=function(t){return e.contractMethodFactory.createContractMethodObjectParam(o,i,t)},(e=>{let t=!1;if("prim"in e&&"pair"===e.prim&&e.args){const r=e.args[e.args.length-1];"prim"in r&&"contract"===r.prim&&(t=!0)}return t})(t[i])){const o=function(...o){const a=t[i].args[0],s=new GX(a),c=t[i].args[1].args[0],l=new GX(c);return((e,t,r)=>{const n=t.ExtractSignatures();if(!n.find((t=>t.length===e.length)))throw new s2(r,n,e)})(o,s,i),new a5(e,i,l,s,o,r,n)};this.views[i]=o}}));const a=Object.keys(i.ExtractSchema()).filter((e=>-1===Object.keys(t).indexOf(e)));a.forEach((t=>{this.methods[t]=function(...r){return e.contractMethodFactory.createContractMethodFlatParams(i,t,r,!1,!0)},this.methodsObject[t]=function(r){return e.contractMethodFactory.createContractMethodObjectParam(i,t,r,!1,!0)}}))}else{const t=this.parameterSchema;this.methods[o5]=function(...r){return e.contractMethodFactory.createContractMethodFlatParams(t,o5,r,!1)},this.methodsObject[o5]=function(r){return e.contractMethodFactory.createContractMethodObjectParam(t,o5,r,!1)}}}_initializeOnChainViews(e,t,r,n){const i=this.schema.val;n.forEach((n=>{this.contractViews[n.viewName]=function(o){return e.contractMethodFactory.createContractViewObjectParam(t,r,n,i,o)}}))}storage(){return this.storageProvider.getStorage(this.address,this.schema)}bigMap(e){return this.storageProvider.getBigMapKey(this.address,e,this.schema)}}const c5=e=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:e}]},{prim:"SOME"},{prim:"SET_DELEGATE"},{prim:"CONS"}],l5=()=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"NONE",args:[{prim:"key_hash"}]},{prim:"SET_DELEGATE"},{prim:"CONS"}],u5=(e,t)=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:e}]},{prim:"IMPLICIT_ACCOUNT"},{prim:"PUSH",args:[{prim:"mutez"},{int:`${t}`}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}],d5=(e,t)=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"address"},{string:e}]},{prim:"CONTRACT",args:[{prim:"unit"}]},{prim:"IF_NONE",args:[[{prim:"UNIT"},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:`${t}`}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}];class h5{constructor(e,t){this.id=e,this.provider=t}getSaplingDiff(e){return U1(this,void 0,void 0,(function*(){return this.provider.getSaplingDiffByID(this.id.toString(),e)}))}getId(){return this.id.toString()}}class f5{constructor(e,t,r){this.id=e,this.schema=t,this.provider=r}get(e,t){return U1(this,void 0,void 0,(function*(){try{return yield this.provider.getBigMapKeyByID(this.id.toString(),e,this.schema,t)}catch(pge){if(pge instanceof uW&&pge.status===aW.NOT_FOUND)return;throw pge}}))}getMultipleValues(e,t,r=5){return U1(this,void 0,void 0,(function*(){return this.provider.getBigMapKeysByID(this.id.toString(),e,this.schema,t,r)}))}toJSON(){return this.id.toString()}toString(){return this.id.toString()}}const p5=e=>({big_map:(t,r)=>{if(t&&"int"in t&&void 0!==t.int){const n=new WX(r);return new f5(new Nc(t.int),n,e)}return{}},sapling_state:t=>t&&"int"in t&&void 0!==t.int?new h5(new Nc(t.int),e):{}});var m5;const g5=(e,t)=>{var r,n,i;return{fee:null!==(r=e.fee)&&void 0!==r?r:t.fee,gasLimit:null!==(n=e.gasLimit)&&void 0!==n?n:t.gasLimit,storageLimit:null!==(i=e.storageLimit)&&void 0!==i?i:t.storageLimit}};class v5 extends q2{constructor(e){super(e),this.context=e,m5.set(this,void 0),$1(this,m5,{},"f")}getBlockHash(e){return U1(this,void 0,void 0,(function*(){return this.context.readProvider.getBlockHash(null!==e&&void 0!==e?e:"head~2")}))}getProtocolHash(){return U1(this,void 0,void 0,(function*(){return this.context.readProvider.getNextProtocol("head")}))}getHeadCounter(e){var t;return U1(this,void 0,void 0,(function*(){return null!==(t=this.context.readProvider.getCounter(e,"head"))&&void 0!==t?t:"0"}))}adjustGasForBatchOperation(e,t,r){return Nc.min(t,e.div(r+1))}getOperationLimits(e,t){return U1(this,void 0,void 0,(function*(){const{hard_gas_limit_per_operation:r,hard_gas_limit_per_block:n,hard_storage_limit_per_operation:i}=e;return{fee:0,gasLimit:t?Math.floor(this.adjustGasForBatchOperation(n,r,t).toNumber()):r.toNumber(),storageLimit:i.toNumber()}}))}getFee(e,t,r){(!F1(this,m5,"f")[t]||F1(this,m5,"f")[t]{switch(e.kind){case TW.ACTIVATION:case TW.DRAIN_DELEGATE:return Object.assign({},e);case TW.ORIGINATION:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{balance:"undefined"!==typeof e.balance?`${e.balance}`:"0"}),this.getSource(e,r,n)),this.getFee(e,r,t));case TW.TRANSACTION:{const i=Object.assign(Object.assign(Object.assign(Object.assign({},e),{amount:"undefined"!==typeof e.amount?`${e.amount}`:"0"}),this.getSource(e,r,n)),this.getFee(e,r,t));if(i.source.toLowerCase().startsWith("kt1"))throw new pc(`KT1 addresses are not supported as source since ${t2.PsBabyM1}`);return i}case TW.REVEAL:case TW.DELEGATION:case TW.REGISTER_GLOBAL_CONSTANT:case TW.UPDATE_CONSENSUS_KEY:case TW.SMART_ROLLUP_ADD_MESSAGES:case TW.SMART_ROLLUP_ORIGINATE:case TW.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:return Object.assign(Object.assign(Object.assign({},e),this.getSource(e,r,n)),this.getFee(e,r,t));case TW.TRANSFER_TICKET:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{ticket_amount:`${e.ticket_amount}`}),this.getSource(e,r,n)),this.getFee(e,r,t));case TW.INCREASE_PAID_STORAGE:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{amount:`${e.amount}`}),this.getSource(e,r,n)),this.getFee(e,r,t));case TW.BALLOT:case TW.PROPOSALS:if(void 0===i)throw new $2("Failed to get the current voting period index");return Object.assign(Object.assign({},e),{period:null===i||void 0===i?void 0:i.voting_period.index});default:throw new fc(e.kind)}}))}activate({pkh:e,secret:t}){return U1(this,void 0,void 0,(function*(){const r=yield(({pkh:e,secret:t})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.ACTIVATION,pkh:e,secret:t}})))({pkh:e,secret:t}),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();$1(this,m5,{},"f");const a=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:i,contents:this.constructOpContents(n,a,e),protocol:o},counter:a}}))}reveal({fee:e,gasLimit:t,storageLimit:r}){return U1(this,void 0,void 0,(function*(){const{pkh:n,publicKey:i}=yield this.getKeys();if(!i)throw new gc(n);const o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=g5({fee:e,storageLimit:r,gasLimit:t},a),c=yield w2({fee:s.fee,gasLimit:s.gasLimit,storageLimit:s.storageLimit},n,i),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();$1(this,m5,{},"f");const h=parseInt(yield this.getHeadCounter(n),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,n),protocol:d},counter:h}}))}originate(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),a=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(a),c=yield v2(yield this.context.parser.prepareCodeOrigination(Object.assign(Object.assign({},o),g5({fee:r,storageLimit:n,gasLimit:i},s)))),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();$1(this,m5,{},"f");const f=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,e,t),protocol:h},counter:f}}))}transaction(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield y2(Object.assign(Object.assign({},i),g5({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();$1(this,m5,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}delegation(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield b2(Object.assign(Object.assign({},i),g5({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();$1(this,m5,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}registerDelegate({fee:e,storageLimit:t,gasLimit:r},n){return U1(this,void 0,void 0,(function*(){const{pkh:i}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=g5({fee:e,storageLimit:t,gasLimit:r},a),c=yield(({fee:e,gasLimit:t,storageLimit:r},n)=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.DELEGATION,fee:e,gas_limit:t,storage_limit:r,delegate:n}})))({fee:s.fee,storageLimit:s.storageLimit,gasLimit:s.gasLimit},i),l=yield this.addRevealOperationIfNeeded(c,i),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();$1(this,m5,{},"f");const f=parseInt(yield this.getHeadCounter(i),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,i,n),protocol:h},counter:f}}))}registerGlobalConstant(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield x2(Object.assign(Object.assign({},i),g5({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();$1(this,m5,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}updateConsensusKey(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),a=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(a),c=yield(({source:e,fee:t,gasLimit:r,storageLimit:n,pk:i})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.UPDATE_CONSENSUS_KEY,source:e,fee:t,gas_limit:r,storage_limit:n,pk:i}})))(Object.assign(Object.assign({},o),g5({fee:r,storageLimit:n,gasLimit:i},s))),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();$1(this,m5,{},"f");const f=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,e,t),protocol:h},counter:f}}))}increasePaidStorage(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield k2(Object.assign(Object.assign({},i),g5({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();$1(this,m5,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}ballot(e){return U1(this,void 0,void 0,(function*(){const{pkh:t}=yield this.getKeys(),r=yield(({source:e,proposal:t,ballot:r})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.BALLOT,source:e,proposal:t,ballot:r}})))(Object.assign({},e)),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();$1(this,m5,{},"f");const a=parseInt(yield this.getHeadCounter(t),10);let s;try{s=yield this.rpc.getCurrentPeriod()}catch(pge){throw new $2("Failed to get the current voting period index")}return{opOb:{branch:i,contents:this.constructOpContents(n,a,t,void 0,s),protocol:o},counter:a}}))}proposals(e){return U1(this,void 0,void 0,(function*(){const{pkh:t}=yield this.getKeys(),r=yield(({source:e,proposals:t})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.PROPOSALS,source:e,proposals:t}})))(Object.assign({},e)),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();$1(this,m5,{},"f");const a=parseInt(yield this.getHeadCounter(t),10);let s;try{s=yield this.rpc.getCurrentPeriod()}catch(pge){throw new $2("Failed to get the current voting period index")}return{opOb:{branch:i,contents:this.constructOpContents(n,a,t,void 0,s),protocol:o},counter:a}}))}drainDelegate(e,t){return U1(this,void 0,void 0,(function*(){const{pkh:r}=yield this.getKeys(),n=yield(({consensus_key:e,delegate:t,destination:r})=>U1(void 0,void 0,void 0,(function*(){return{kind:TW.DRAIN_DELEGATE,consensus_key:e,delegate:t,destination:r}})))(Object.assign({},e)),i=this.convertIntoArray(n),o=yield this.getBlockHash(),a=yield this.getProtocolHash();$1(this,m5,{},"f");const s=parseInt(yield this.getHeadCounter(r),10);return{opOb:{branch:o,contents:this.constructOpContents(i,s,r,t),protocol:a},counter:s}}))}transferTicket(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield _2(Object.assign(Object.assign({},i),g5({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();$1(this,m5,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}smartRollupAddMessages(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield S2(Object.assign(Object.assign({},i),g5({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();$1(this,m5,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}smartRollupOriginate(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield E2(Object.assign(Object.assign({},g5({fee:t,storageLimit:r,gasLimit:n},a)),i)),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();$1(this,m5,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}smartRollupExecuteOutboxMessage(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(o),s=yield A2(Object.assign(Object.assign({},i),g5({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();$1(this,m5,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}batch(e,t){return U1(this,void 0,void 0,(function*(){const{pkh:r,publicKey:n}=yield this.getKeys(),i=yield this.context.readProvider.getProtocolConstants("head"),o=yield this.getOperationLimits(i,e.length),a=yield this.isRevealOpNeeded(e,r),s=[];if(t)for(const d of e)if(j2(d)){const e=t.shift(),r=g5(d,{fee:e.suggestedFeeMutez,storageLimit:e.storageLimit,gasLimit:e.gasLimit});s.push(yield this.getRPCOp(Object.assign(Object.assign({},d),r)))}else s.push(Object.assign({},d));else for(const t of e)if(j2(t)){const e=g5(t,o);s.push(yield this.getRPCOp(Object.assign(Object.assign({},t),e)))}else s.push(Object.assign({},t));if(a){if(!n)throw new gc(r);s.unshift(yield w2({fee:o2(r),storageLimit:0,gasLimit:n2(r)},r,n))}const c=yield this.getBlockHash(),l=yield this.getProtocolHash();$1(this,m5,{},"f");const u=parseInt(yield this.getHeadCounter(r),10);return{opOb:{branch:c,contents:this.constructOpContents(s,u,r),protocol:l},counter:u}}))}contractCall(e){var t,r,n;return U1(this,void 0,void 0,(function*(){const i=yield this.getBlockHash(),o=yield this.getProtocolHash(),{pkh:a}=yield this.getKeys();$1(this,m5,{},"f");const s=parseInt(yield this.getHeadCounter(a),10),c=e.toTransferParams(),l=yield this.context.readProvider.getProtocolConstants("head"),u=yield this.getOperationLimits(l),d=g5({fee:c.fee,storageLimit:c.storageLimit,gasLimit:c.gasLimit},u),h={kind:TW.TRANSACTION,fee:null!==(t=c.fee)&&void 0!==t?t:d.fee,gas_limit:null!==(r=c.gasLimit)&&void 0!==r?r:d.gasLimit,storage_limit:null!==(n=c.storageLimit)&&void 0!==n?n:d.storageLimit,amount:String(c.amount),destination:c.to,parameters:c.parameter},f=yield this.addRevealOperationIfNeeded(h,a),p=this.convertIntoArray(f);return{opOb:{branch:i,contents:this.constructOpContents(p,s,a),protocol:o},counter:s}}))}toPreapply(e){return U1(this,void 0,void 0,(function*(){const{opOb:{contents:t,branch:r,protocol:n}}=e,i=this.toForge(e),o=yield this.context.forger.forge(i);return[{contents:t,branch:r,protocol:n,signature:(yield this.context.signer.sign(o,new Uint8Array([3]))).prefixSig}]}))}toForge({opOb:{contents:e,branch:t}}){return{branch:t,contents:e}}}m5=new WeakMap;const y5=[TW.ACTIVATION,TW.ORIGINATION,TW.TRANSACTION,TW.DELEGATION];class b5 extends q2{constructor(e,t){super(e),this.estimator=t,this.operations=[],this.prepare=new v5(this.context)}withTransfer(e){const t=tl(e.to);if(e.amount<0)throw new rc(e.amount.toString());if(t!==qc.VALID)throw new ec(e.to,cl(t));return this.operations.push(Object.assign({kind:TW.TRANSACTION},e)),this}withTransferTicket(e){const t=tl(e.destination);if(t!==qc.VALID)throw new ec(e.destination,cl(t));return this.operations.push(Object.assign({kind:TW.TRANSFER_TICKET},e)),this}withContractCall(e,t={}){return this.withTransfer(e.toTransferParams(t))}withDelegation(e){var t;const r=tl(e.source);if(e.source&&r!==qc.VALID)throw new ec(e.source,cl(r));const n=tl(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&n!==qc.VALID)throw new ec(e.delegate,cl(n));return this.operations.push(Object.assign({kind:TW.DELEGATION},e)),this}withActivation({pkh:e,secret:t}){const r=il(e);if(r!==qc.VALID)throw new dc(e,cl(r));return this.operations.push({kind:TW.ACTIVATION,pkh:e,secret:t}),this}withOrigination(e){return this.operations.push(Object.assign({kind:TW.ORIGINATION},e)),this}withRegisterGlobalConstant(e){return this.operations.push(Object.assign({kind:TW.REGISTER_GLOBAL_CONSTANT},e)),this}withIncreasePaidStorage(e){return this.operations.push(Object.assign({kind:TW.INCREASE_PAID_STORAGE},e)),this}withSmartRollupAddMessages(e){return this.operations.push(Object.assign({kind:TW.SMART_ROLLUP_ADD_MESSAGES},e)),this}withSmartRollupOriginate(e){return this.operations.push(Object.assign({kind:TW.SMART_ROLLUP_ORIGINATE},e)),this}withSmartRollupExecuteOutboxMessage(e){return this.operations.push(Object.assign({kind:TW.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE},e)),this}getRPCOp(e){return U1(this,void 0,void 0,(function*(){switch(e.kind){case TW.TRANSACTION:return y2(Object.assign({},e));case TW.ORIGINATION:return v2(yield this.context.parser.prepareCodeOrigination(Object.assign({},e)));case TW.DELEGATION:return b2(Object.assign({},e));case TW.REGISTER_GLOBAL_CONSTANT:return x2(Object.assign({},e));case TW.INCREASE_PAID_STORAGE:return k2(Object.assign({},e));case TW.TRANSFER_TICKET:return _2(Object.assign({},e));case TW.SMART_ROLLUP_ADD_MESSAGES:return S2(Object.assign({},e));case TW.SMART_ROLLUP_ORIGINATE:return E2(Object.assign({},e));case TW.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:return A2(Object.assign({},e));default:throw new fc(JSON.stringify(e.kind))}}))}with(e){for(const t of e)switch(t.kind){case TW.TRANSACTION:this.withTransfer(t);break;case TW.ORIGINATION:this.withOrigination(t);break;case TW.DELEGATION:this.withDelegation(t);break;case TW.ACTIVATION:this.withActivation(t);break;case TW.REGISTER_GLOBAL_CONSTANT:this.withRegisterGlobalConstant(t);break;case TW.INCREASE_PAID_STORAGE:this.withIncreasePaidStorage(t);break;case TW.TRANSFER_TICKET:this.withTransferTicket(t);break;case TW.SMART_ROLLUP_ADD_MESSAGES:this.withSmartRollupAddMessages(t);break;case TW.SMART_ROLLUP_ORIGINATE:this.withSmartRollupOriginate(t);break;case TW.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:this.withSmartRollupExecuteOutboxMessage(t);break;default:throw new fc(JSON.stringify(t.kind))}return this}send(e){return U1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=e&&e.source||t,n=yield this.estimator.batch(this.operations);n.length!==this.operations.length&&n.shift();const i=yield this.prepare.batch(this.operations,n),o=yield this.forge(i),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new V2(a,i.opOb.contents,r,c,l,s)}))}}class w5{constructor(e,t){this.context=e,this.estimator=t}batch(e){const t=new b5(this.context,this.estimator);return Array.isArray(e)&&t.with(e),t}}class x5 extends Y2{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t,this.getOriginatedContractAddresses=()=>U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e){const t=e.filter((e=>"origination"===e.kind));let r=[];for(const e of t)e.metadata.operation_result.originated_contracts&&(r=[...r,...e.metadata.operation_result.originated_contracts]);return r}throw new Z2("Unable to fetch operation results")}))}revealOperation(){return U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===TW.REVEAL));throw new Z2("Unable to fetch operation results")}))}status(){return U1(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.operationResults();if(e)return e.filter((e=>-1!==y5.indexOf(e.kind))).map((e=>{if(I2(e)){return e.metadata.operation_result.status}return"unknown"}))[0]||"unknown";throw new Z2("Unable to fetch operation results")}))}}class _5 extends Y2{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===TW.REVEAL));throw new Z2("Unable to fetch operation result")}))}increasePaidStorageOperation(){return U1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===TW.INCREASE_PAID_STORAGE));throw new Z2("Unable to fetch operation result")}))}status(){return U1(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.increasePaidStorageOperation();return e?e.metadata.operation_result.status:"unknown"}))}}const k5=(e,t,r)=>{return e.pipe((n=1e3*t.config.confirmationPollingTimeoutSecond,function(e){return new NG(null).pipe(DZ({each:n,with:()=>DG((()=>new F2("Confirmation polling timed out")))}),_Z((()=>e)))}),$Z({connector:()=>new LG(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1}));var n};class S5{constructor(e){this.context=e,this.sharedHeadObs=ZG((()=>K1(this.context.stream.subscribeBlock("head"))))}createNewHeadObservable(){return U1(this,void 0,void 0,(function*(){return k5(this.sharedHeadObs,this.context)}))}createPastBlockWalker(e,t=1){return uZ(this.context.readProvider.getBlock(e)).pipe(LZ((e=>1===t?dZ(e):XG(e.header.level,t-1).pipe(function(){for(var e=[],t=0;tU1(this,void 0,void 0,(function*(){return this.context.readProvider.getBlock("number"===typeof e?e:e.header.level)}))))))))}createHeadObservableFromConfig({blockIdentifier:e}){return U1(this,void 0,void 0,(function*(){const t=[];return e&&t.push(this.createPastBlockWalker(e)),t.push(yield this.createNewHeadObservable()),SZ(...t)}))}createOperation(e,t={}){return U1(this,void 0,void 0,(function*(){return new Y2(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createBatchOperation(e,t={}){return U1(this,void 0,void 0,(function*(){return new x5(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createTransactionOperation(e,t={}){return U1(this,void 0,void 0,(function*(){return new X2(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createDelegationOperation(e,t={}){return U1(this,void 0,void 0,(function*(){return new Q2(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createOriginationOperation(e,t={}){return U1(this,void 0,void 0,(function*(){return new J2(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createIncreasePaidStorageOperation(e,t={}){return U1(this,void 0,void 0,(function*(){return new _5(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}}class E5 extends q2{constructor(e){super(e),this.prepare=new v5(this.context)}getBalance(e){return U1(this,void 0,void 0,(function*(){const t=tl(e);if(t!==qc.VALID)throw new ec(e,cl(t));return this.context.readProvider.getBalance(e,"head")}))}getDelegate(e){return U1(this,void 0,void 0,(function*(){const t=tl(e);if(t!==qc.VALID)throw new ec(e,cl(t));return this.context.readProvider.getDelegate(e,"head")}))}activate(e,t){return U1(this,void 0,void 0,(function*(){const r=il(e);if(r!==qc.VALID)throw new dc(e,cl(r));const n=yield this.prepare.activate({pkh:e,secret:t}),i=yield this.forge(n),o=`${i.opbytes}00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000`;return new H2(yield this.rpc.injectOperation(o),Object.assign(Object.assign({},i),{opbytes:o}),[],this.context.clone())}))}}const A5=100;class P5{constructor(e,t,r,n,i=100){this._milligasLimit=e,this._storageLimit=t,this.opSize=r,this.minimalFeePerStorageByteMutez=n,this.baseFeeMutez=i}get burnFeeMutez(){return this.roundUp(Number(this.storageLimit)*Number(this.minimalFeePerStorageByteMutez))}get storageLimit(){return Math.max(Number(this._storageLimit),0)}get gasLimit(){return this.roundUp(Number(this._milligasLimit)/1e3)}get operationFeeMutez(){return.1*this.gasLimit+1*Number(this.opSize)}roundUp(e){return Math.ceil(Number(e))}get minimalFeeMutez(){return this.roundUp(this.operationFeeMutez+A5)}get suggestedFeeMutez(){return this.roundUp(this.operationFeeMutez+120)}get usingBaseFeeMutez(){return Math.max(Number(this.baseFeeMutez),A5)+this.roundUp(this.operationFeeMutez)}get totalCost(){return this.minimalFeeMutez+this.burnFeeMutez}get consumedMilligas(){return Number(this._milligasLimit)}static createEstimateInstanceFromProperties(e){let t,r=0,n=0,i=0,o=0;return e.forEach((e=>{r+=e.milligasLimit,n+=e.storageLimit,i+=e.opSize,o=Math.max(e.minimalFeePerStorageByteMutez,o),e.baseFeeMutez&&(t=t?t+e.baseFeeMutez:e.baseFeeMutez)})),new P5(r,n,i,o,t)}static createArrayEstimateInstancesFromProperties(e){return e.map((e=>new P5(e.milligasLimit,e.storageLimit,e.opSize,e.minimalFeePerStorageByteMutez,e.baseFeeMutez)))}}class O5 extends Gs{constructor(){super(),this.name="RevealEstimateError",this.message="Public key is unknown, unable to estimate the reveal operation in Wallet API."}}class T5 extends q2{constructor(){super(...arguments),this.OP_SIZE_REVEAL=324,this.MILLIGAS_BUFFER=1e5,this.STORAGE_BUFFER=20,this.prepare=new v5(this.context)}getKeys(){return U1(this,void 0,void 0,(function*(){const e=this.context.isAnySignerConfigured();return{publicKeyHash:e?yield this.signer.publicKeyHash():yield this.context.walletProvider.getPKH(),publicKey:e?yield this.signer.publicKey():void 0}}))}getEstimationPropertiesFromOperationContent(e,t,r,n){const i=N2({contents:[e]});let o=0,a=0;return i.forEach((e=>{o+=Number(e.consumed_milligas)||0,a+="allocated_destination_contract"in e?n:0,a+="originated_contracts"in e&&Array.isArray(e.originated_contracts)?e.originated_contracts.length*n:0,a+="storage_size"in e&&"global_address"in e&&Number(e.storage_size)||0,a+="paid_storage_size_diff"in e&&Number(e.paid_storage_size_diff)||0,a+="genesis_commitment_hash"in e&&Number(e.size)||0})),j2(e)?{milligasLimit:(s=e,s.kind===TW.TRANSACTION&&s.parameters||-1!==["origination","register_global_constant","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate"].indexOf(s.kind)?o+Number(this.MILLIGAS_BUFFER):o),storageLimit:a>0?a+this.STORAGE_BUFFER:0,opSize:t,minimalFeePerStorageByteMutez:r.toNumber()}:{milligasLimit:0,storageLimit:0,opSize:t,minimalFeePerStorageByteMutez:r.toNumber(),baseFeeMutez:0};var s}calculateEstimates(e,t){return U1(this,void 0,void 0,(function*(){const{opbytes:r,opOb:{branch:n,contents:i}}=yield this.forge(e),o={operation:{branch:n,contents:i,signature:"edsigtkpiSSschcaCt9pUVrpNPf7TTcgvgDEDD6NCEHMy8NNQJCGnMfLZzYoQj74yLjo9wx6MPVV29CvVzgi7qEcEUok3k7AuMg"},chain_id:yield this.context.readProvider.getChainId()},{opResponse:a}=yield this.simulate(o),{cost_per_byte:s,origination_size:c}=t,l=[...D2(a,"backtracked"),...D2(a)];if(l.length)throw new M2(l,"Error occurred during estimation",a.contents);let u=1;return Array.isArray(e.opOb.contents)&&e.opOb.contents.length>1&&(u="reveal"===a.contents[0].kind?e.opOb.contents.length-1:e.opOb.contents.length),a.contents.map((e=>this.getEstimationPropertiesFromOperationContent(e,"reveal"===e.kind?this.OP_SIZE_REVEAL/2:(r.length+130)/2/u,s,null!==c&&void 0!==c?c:257)))}))}originate(e){return U1(this,void 0,void 0,(function*(){const t=yield this.prepare.originate(e),r=yield this.context.readProvider.getProtocolConstants("head"),n=yield this.calculateEstimates(t,r);return"reveal"===t.opOb.contents[0].kind&&(n.shift(),n[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(n)}))}transfer(e){var t,{fee:r,storageLimit:n,gasLimit:i}=e,o=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const e=tl(o.to);if(e!==qc.VALID)throw new ec(o.to,cl(e));const a=tl(null!==(t=o.source)&&void 0!==t?t:"");if(o.source&&a!==qc.VALID)throw new ec(o.source,cl(a));if(o.amount<0)throw new rc(o.amount.toString());const s=yield this.prepare.transaction(Object.assign({fee:r,storageLimit:n,gasLimit:i},o)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(s,c);return"reveal"===s.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(l)}))}transferTicket(e){var t,{fee:r,storageLimit:n,gasLimit:i}=e,o=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const e=tl(o.destination);if(e!==qc.VALID)throw new ec(o.destination,cl(e));const a=tl(null!==(t=o.source)&&void 0!==t?t:"");if(o.source&&a!==qc.VALID)throw new ec(o.source,cl(a));const s=yield this.context.readProvider.getProtocolConstants("head"),c=yield this.prepare.transferTicket(Object.assign({fee:r,storageLimit:n,gasLimit:i},o)),l=yield this.calculateEstimates(c,s);return"reveal"===c.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(l)}))}setDelegate(e){var t,{fee:r,gasLimit:n,storageLimit:i}=e,o=B1(e,["fee","gasLimit","storageLimit"]);return U1(this,void 0,void 0,(function*(){const e=tl(o.source);if(o.source&&e!==qc.VALID)throw new ec(o.source,cl(e));const a=tl(null!==(t=o.delegate)&&void 0!==t?t:"");if(o.delegate&&a!==qc.VALID)throw new ec(o.delegate,cl(a));const s=yield this.prepare.delegation(Object.assign({fee:r,storageLimit:i,gasLimit:n},o)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(s,c);return"reveal"===s.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(l)}))}batch(e){return U1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.batch(e),n=yield this.calculateEstimates(r,t);return P5.createArrayEstimateInstancesFromProperties(n)}))}registerDelegate(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const e=(yield this.getKeys()).publicKeyHash,a=yield this.context.readProvider.getProtocolConstants("head"),s=t||e,c=yield this.prepare.registerDelegate(Object.assign({fee:r,storageLimit:n,gasLimit:i},o),s),l=yield this.calculateEstimates(c,a);return"reveal"===c.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(l)}))}reveal(e){return U1(this,void 0,void 0,(function*(){const{publicKeyHash:t,publicKey:r}=yield this.getKeys();if(!r)throw new O5;if(yield this.isAccountRevealRequired(t)){const t=yield this.context.readProvider.getProtocolConstants("head"),r=e?yield this.prepare.reveal(e):yield this.prepare.reveal({}),n=yield this.calculateEstimates(r,t);return P5.createEstimateInstanceFromProperties(n)}}))}registerGlobalConstant(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){const e=yield this.prepare.registerGlobalConstant(Object.assign({fee:t,storageLimit:r,gasLimit:n},i)),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.calculateEstimates(e,o);return"reveal"===e.opOb.contents[0].kind&&(a.shift(),a[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(a)}))}increasePaidStorage(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=B1(e,["fee","storageLimit","gasLimit"]);return U1(this,void 0,void 0,(function*(){if(i.amount<0)throw new rc(i.amount.toString());const e=yield this.context.readProvider.getProtocolConstants("head"),o=yield this.prepare.increasePaidStorage(Object.assign({fee:t,storageLimit:r,gasLimit:n},i)),a=yield this.calculateEstimates(o,e);return"reveal"===o.opOb.contents[0].kind&&(a.shift(),a[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(a)}))}updateConsensusKey(e){return U1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.updateConsensusKey(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&(n.shift(),n[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(n)}))}smartRollupAddMessages(e){return U1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.smartRollupAddMessages(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&(n.shift(),n[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(n)}))}smartRollupOriginate(e){return U1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.smartRollupOriginate(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&(n.shift(),n[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(n)}))}smartRollupExecuteOutboxMessage(e){return U1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.smartRollupExecuteOutboxMessage(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&n.shift(),P5.createEstimateInstanceFromProperties(n)}))}contractCall(e){return U1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.contractCall(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&(n.shift(),n[0].opSize-=this.OP_SIZE_REVEAL/2),P5.createEstimateInstanceFromProperties(n)}))}}class j5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"delegation"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get delegate(){return this.params.delegate}get isRegisterOperation(){return this.delegate===this.source}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return Lc.config({DECIMAL_PLACES:0,ROUNDING_MODE:Lc.ROUND_UP}),this.consumedMilliGas?new Lc(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class C5 extends H2{constructor(e,t,r,n,i,o){super(e,r,n,i),this.params=t,this.contractProvider=o;const a=this.operationResults&&this.operationResults.originated_contracts;Array.isArray(a)&&(this.contractAddress=a[0])}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"origination"===e.kind)),t=e&&I2(e)&&e.metadata.operation_result;return t||void 0}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return Lc.config({DECIMAL_PLACES:0,ROUNDING_MODE:Lc.ROUND_UP}),this.consumedMilliGas?new Lc(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get storageDiff(){const e=this.operationResults&&this.operationResults.paid_storage_size_diff;return e||void 0}get storageSize(){const e=this.operationResults&&this.operationResults.storage_size;return e||void 0}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}contract(e,t){return U1(this,void 0,void 0,(function*(){if(!this.contractAddress)throw new z2("No contract was originated in this operation");return yield this.confirmation(e,t),this.contractProvider.at(this.contractAddress)}))}}class R5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r,this.globalConstantHash=this.operationResults&&this.operationResults.global_address}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"register_global_constant"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get registeredExpression(){return this.params.value}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}get consumedGas(){return Lc.config({DECIMAL_PLACES:0,ROUNDING_MODE:Lc.ROUND_UP}),this.consumedMilliGas?new Lc(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}}class I5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"reveal"===e.kind));return e?[e]:[]}get status(){const e=this.operationResults[0];return e?e.metadata.operation_result.status:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get publicKey(){return this.params.public_key}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}get consumedGas(){return Lc.config({DECIMAL_PLACES:0,ROUNDING_MODE:Lc.ROUND_UP}),new Lc(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(N2({contents:this.operationResults}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(N2({contents:this.operationResults}),"paid_storage_size_diff"))}get storageSize(){return String(this.sumProp(N2({contents:this.operationResults}),"storage_size"))}get errors(){return D2({contents:this.operationResults})}}class M5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"transaction"===e.kind));return e?[e]:[]}get status(){const e=this.operationResults[0];return e?e.metadata.operation_result.status:"unknown"}get amount(){return new Nc(this.params.amount)}get destination(){return this.params.destination}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}get consumedGas(){return Nc.config({DECIMAL_PLACES:0,ROUNDING_MODE:Nc.ROUND_UP}),new Nc(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(N2({contents:this.operationResults}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(N2({contents:this.operationResults}),"paid_storage_size_diff"))}get storageSize(){return String(this.sumProp(N2({contents:this.operationResults}),"storage_size"))}get errors(){return D2({contents:this.operationResults})}}class L5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"increase_paid_storage"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get amount(){return this.params.amount}get destination(){return this.params.destination}}class N5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"update_consensus_key"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get pk(){return this.params.pk}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class D5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"smart_rollup_add_messages"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get message(){return this.params.message}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class z5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===TW.SMART_ROLLUP_ORIGINATE)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get pvmKind(){return this.params.pvm_kind}get kernel(){return this.params.kernel}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class B5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"ballot"===e.kind));return e||void 0}get period(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.period}get proposal(){return this.params.proposal}get ballot(){return this.params.ballot}}class U5 extends H2{constructor(e,t,r,n,i){super(e,r,n,i),this.params=t}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"drain_delegate"===e.kind)),t=e&&e.metadata&&e.metadata.balance_updates;return t||void 0}get consensusKey(){return this.params.consensus_key}get delegate(){return this.params.delegate}get destination(){return this.params.destination}}class F5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"proposals"===e.kind));return e||void 0}get proposals(){return this.params.proposals}get period(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.period}}class $5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===TW.TRANSFER_TICKET)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return Lc.config({DECIMAL_PLACES:0,ROUNDING_MODE:Lc.ROUND_UP}),this.consumedMilliGas?new Lc(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}}class H5 extends H2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===TW.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get rollup(){return this.params.rollup}get cementedCommitment(){return this.params.cemented_commitment}get outputProof(){return this.params.output_proof}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class V5 extends q2{constructor(e,t){super(e),this.estimator=t,this.contractProviderTypeSymbol=Symbol.for("taquito-contract-provider-type-symbol"),this.prepare=new v5(this.context)}getStorage(e,t){return U1(this,void 0,void 0,(function*(){const r=nl(e);if(r!==qc.VALID)throw new lc(e,cl(r));const n=yield this.context.readProvider.getScript(e,"head");let i;return t||(t=n),i=WX.isSchema(t)?t:WX.fromRPCResponse({script:t}),i.Execute(n.storage,p5(this))}))}getBigMapKey(e,t,r){return U1(this,void 0,void 0,(function*(){const n=nl(e);if(n!==qc.VALID)throw new lc(e,cl(n));let i;r||(r=(yield this.rpc.getContract(e)).script),i=WX.isSchema(r)?r:WX.fromRPCResponse({script:r});const o=i.EncodeBigMapKey(t),a=yield this.rpc.getBigMapKey(e,o);return i.ExecuteOnBigMapValue(a)}))}getBigMapKeyByID(e,t,r,n){return U1(this,void 0,void 0,(function*(){const{key:i,type:o}=r.EncodeBigMapKey(t),{packed:a}=yield this.context.packer.packData({data:i,type:o}),s=function(e){return fl(qs().blake2b(vl(e),void 0,32),$c.expr)}(a),c=n?yield this.context.readProvider.getBigMapValue({id:e.toString(),expr:s},n):yield this.context.readProvider.getBigMapValue({id:e.toString(),expr:s},"head");return r.ExecuteOnBigMapValue(c,p5(this))}))}getBigMapKeysByID(e,t,r,n,i=5){return U1(this,void 0,void 0,(function*(){const o=yield this.getBlockForRequest(t,n),a=new hY;let s=0,c=[];for(;sthis.getBigMapValueOrUndefined(t,e,r,o)));c=[...c,...yield Promise.all(n)],s+=i}for(let e=0;ee.kind===TW.ORIGINATION)),i=yield this.forge(r),{hash:o,context:a,forgedBytes:s,opResponse:c}=yield this.signAndInject(i);return new C5(o,n,s,c,a,this)}))}setDelegate(e){var t;return U1(this,void 0,void 0,(function*(){const r=tl(e.source);if(e.source&&r!==qc.VALID)throw new ec(e.source,cl(r));const n=tl(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&n!==qc.VALID)throw new ec(e.delegate,cl(n));if(/kt1/i.test(e.source))throw new c2(e.source);const i=yield this.signer.publicKeyHash(),o=e.source||i,a=yield this.estimate(e,this.estimator.setDelegate.bind(this.estimator)),s=yield this.prepare.delegation(Object.assign(Object.assign({},e),a)),c=s.opOb.contents.find((e=>e.kind===TW.DELEGATION)),l=yield this.forge(s),{hash:u,context:d,forgedBytes:h,opResponse:f}=yield this.signAndInject(l);return new j5(u,c,o,h,f,d)}))}registerDelegate(e){return U1(this,void 0,void 0,(function*(){const t=yield this.estimate(e,this.estimator.registerDelegate.bind(this.estimator)),r=yield this.signer.publicKeyHash(),n=yield this.prepare.registerDelegate(Object.assign(Object.assign({},e),t)),i=n.opOb.contents.find((e=>e.kind===TW.DELEGATION)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new j5(a,i,r,c,l,s)}))}transfer(e){var t;return U1(this,void 0,void 0,(function*(){const r=tl(e.to);if(r!==qc.VALID)throw new ec(e.to,cl(r));const n=tl(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&n!==qc.VALID)throw new ec(e.source,cl(n));if(e.amount<0)throw new rc(e.amount.toString());const i=yield this.signer.publicKeyHash(),o=yield this.estimate(e,this.estimator.transfer.bind(this.estimator)),a=e.source||i,s=yield this.prepare.transaction(Object.assign(Object.assign({},e),o)),c=s.opOb.contents.find((e=>e.kind===TW.TRANSACTION)),l=yield this.forge(s),{hash:u,context:d,forgedBytes:h,opResponse:f}=yield this.signAndInject(l);return new M5(u,c,a,h,f,d)}))}transferTicket(e){var t,r;return U1(this,void 0,void 0,(function*(){const n=tl(e.destination);if(n!==qc.VALID)throw new ec(e.destination,cl(n));const i=tl(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==qc.VALID)throw new ec(e.source,cl(i));const o=yield this.signer.publicKeyHash(),a=null!==(r=e.source)&&void 0!==r?r:o,s=yield this.estimate(e,this.estimator.transferTicket.bind(this.estimator)),c=yield this.prepare.transferTicket(Object.assign(Object.assign({},e),s)),l=c.opOb.contents.find((e=>e.kind===TW.TRANSFER_TICKET)),u=yield this.forge(c),{hash:d,context:h,forgedBytes:f,opResponse:p}=yield this.signAndInject(u);return new $5(d,l,a,f,p,h)}))}reveal(e){return U1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimator.reveal(e);if(r){const n=yield this.estimate(e,(()=>U1(this,void 0,void 0,(function*(){return r})))),i=yield this.prepare.reveal(Object.assign(Object.assign({},e),n)),o=i.opOb.contents.find((e=>e.kind===TW.REVEAL)),a=yield this.forge(i),{hash:s,context:c,forgedBytes:l,opResponse:u}=yield this.signAndInject(a);return new I5(s,o,t,l,u,c)}throw new p2(`The publicKeyHash '${t}' has already been revealed.`)}))}registerGlobalConstant(e){return U1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.registerGlobalConstant.bind(this.estimator)),n=yield this.prepare.registerGlobalConstant(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===TW.REGISTER_GLOBAL_CONSTANT)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new R5(a,i,t,c,l,s)}))}increasePaidStorage(e){return U1(this,void 0,void 0,(function*(){if(e.amount<0)throw new rc(e.amount.toString());const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.increasePaidStorage.bind(this.estimator)),n=yield this.prepare.increasePaidStorage(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===TW.INCREASE_PAID_STORAGE)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new L5(a,i,t,c,l,s)}))}drainDelegate(e){return U1(this,void 0,void 0,(function*(){const t=yield this.prepare.drainDelegate(e),r=t.opOb.contents.find((e=>e.kind===TW.DRAIN_DELEGATE)),n=yield this.forge(t),{hash:i,context:o,forgedBytes:a,opResponse:s}=yield this.signAndInject(n);return new U5(i,r,a,s,o)}))}ballot(e){var t,r;return U1(this,void 0,void 0,(function*(){const n=yield this.signer.publicKeyHash(),i=tl(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==qc.VALID)throw new ec(e.source,cl(i));const o=null!==(r=e.source)&&void 0!==r?r:n,a=yield this.prepare.ballot(Object.assign(Object.assign({},e),{source:o})),s=a.opOb.contents.find((e=>e.kind===TW.BALLOT)),c=yield this.forge(a),{hash:l,context:u,forgedBytes:d,opResponse:h}=yield this.signAndInject(c);return new B5(l,s,n,d,h,u)}))}proposals(e){var t,r;return U1(this,void 0,void 0,(function*(){const n=yield this.signer.publicKeyHash(),i=tl(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==qc.VALID)throw new ec(e.source,cl(i));const o=null!==(r=e.source)&&void 0!==r?r:n,a=yield this.prepare.proposals(Object.assign(Object.assign({},e),{source:o})),s=a.opOb.contents.find((e=>e.kind===TW.PROPOSALS)),c=yield this.forge(a),{hash:l,context:u,forgedBytes:d,opResponse:h}=yield this.signAndInject(c);return new F5(l,s,n,d,h,u)}))}updateConsensusKey(e){return U1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.updateConsensusKey.bind(this.estimator)),n=yield this.prepare.updateConsensusKey(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===TW.UPDATE_CONSENSUS_KEY)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new N5(a,i,t,c,l,s)}))}smartRollupAddMessages(e){return U1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.smartRollupAddMessages.bind(this.estimator)),n=yield this.prepare.smartRollupAddMessages(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===TW.SMART_ROLLUP_ADD_MESSAGES)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new D5(a,i,t,c,l,s)}))}smartRollupOriginate(e){return U1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.smartRollupOriginate.bind(this.estimator)),n=yield this.prepare.smartRollupOriginate(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===TW.SMART_ROLLUP_ORIGINATE)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new z5(a,i,t,c,l,s)}))}smartRollupExecuteOutboxMessage(e){return U1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.smartRollupExecuteOutboxMessage.bind(this.estimator)),n=yield this.prepare.smartRollupExecuteOutboxMessage(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===TW.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new H5(a,i,t,c,l,s)}))}failingNoop(e){return U1(this,void 0,void 0,(function*(){const t={kind:TW.FAILING_NOOP,arbitrary:e.arbitrary},r=yield this.context.readProvider.getBlockHash(e.basedOnBlock),n=yield this.context.forger.forge({branch:r,contents:[t]}),{prefixSig:i}=yield this.signer.sign(n,new Uint8Array([3]));return{signature:i,bytes:n,signedContent:{branch:r,contents:[{kind:TW.FAILING_NOOP,arbitrary:e.arbitrary}]}}}))}at(e,t=(e=>e)){return U1(this,void 0,void 0,(function*(){const r=nl(e);if(r!==qc.VALID)throw new lc(e,cl(r));const n=this.context.withExtensions().rpc,i=this.context.withExtensions().readProvider,o=yield i.getScript(e,"head"),a=yield i.getEntrypoints(e),s=new s5(e,o,this,this,a,n,i);return t(s,this.context)}))}batch(e){const t=new b5(this.context,this.estimator);return Array.isArray(e)&&t.with(e),t}}class q5{constructor(e){this.context=e}getNextProto(){return U1(this,void 0,void 0,(function*(){if(!this.context.proto){const e=yield this.context.readProvider.getNextProtocol("head");this.context.proto=e}return this.context.proto}))}parseScript(e){return U1(this,void 0,void 0,(function*(){return new MJ({protocol:yield this.getNextProto()}).parseScript(e)}))}parseMichelineExpression(e){return U1(this,void 0,void 0,(function*(){return new MJ({protocol:yield this.getNextProto()}).parseMichelineExpression(e)}))}parseJSON(e){return U1(this,void 0,void 0,(function*(){return new MJ({protocol:yield this.getNextProto()}).parseJSON(e)}))}prepareCodeOrigination(e){return U1(this,void 0,void 0,(function*(){const t=e;if(t.code=yield this.formatCodeParam(e.code),e.init)t.init=yield this.formatInitParam(e.init);else if(e.storage){const r=t.code.find((e=>"prim"in e&&"storage"===e.prim));if(!(null===r||void 0===r?void 0:r.args))throw new l2("The storage section is missing from the script",e.code);const n=new WX(r.args[0]),i=yield this.findGlobalConstantsHashAndValue(n);if(0!==Object.keys(i).length){const n=new MJ({expandGlobalConstant:i}).parseJSON(r.args[0]),o=new WX(n);t.init=o.Encode(e.storage)}else t.init=n.Encode(e.storage);delete t.storage}return t}))}formatCodeParam(e){return U1(this,void 0,void 0,(function*(){let t;if("string"===typeof e){const r=yield this.parseScript(e);if(null===r)throw new l2("Unable to parse",e);t=r}else{const r=yield this.parseJSON(e),n=["parameter","storage","code"];t=r.sort(((e,t)=>n.indexOf(e.prim)-n.indexOf(t.prim)))}return t}))}formatInitParam(e){return U1(this,void 0,void 0,(function*(){let t;if("string"===typeof e){const r=yield this.parseMichelineExpression(e);if(null===r)throw new u2("Invalid init parameter",e);t=r}else t=yield this.parseJSON(e);return t}))}findGlobalConstantsHashAndValue(e){return U1(this,void 0,void 0,(function*(){const t=e.findToken("constant"),r={};if(0!==t.length)for(const e of t){const t=e.tokenVal.args;if(t){const e=t[0];if(e.string){const t=e.string,n=yield this.context.globalConstantsProvider.getGlobalConstantByHash(t);Object.assign(r,{[t]:n})}}}return r}))}}class K5{constructor(e){this.context=e}packData(e){return U1(this,void 0,void 0,(function*(){return this.context.rpc.packData(e)}))}}class W5 extends Xs{constructor(){super(),this.name="UnconfiguredGlobalConstantsProviderError",this.message="No global constants provider has been configured. Please configure one by calling setGlobalConstantsProvider({globalConstantsProvider}) on your TezosToolkit instance."}}class G5{getGlobalConstantByHash(e){return U1(this,void 0,void 0,(function*(){throw new W5}))}}class Z5{constructor(e){this.rpc=e}getBalance(e,t){return U1(this,void 0,void 0,(function*(){return this.rpc.getBalance(e,{block:String(t)})}))}getDelegate(e,t){return U1(this,void 0,void 0,(function*(){return this.rpc.getDelegate(e,{block:String(t)})}))}getNextProtocol(e){return U1(this,void 0,void 0,(function*(){return(yield this.rpc.getProtocols({block:String(e)})).next_protocol}))}getProtocolConstants(e){return U1(this,void 0,void 0,(function*(){const{time_between_blocks:t,minimal_block_delay:r,hard_gas_limit_per_operation:n,hard_gas_limit_per_block:i,hard_storage_limit_per_operation:o,cost_per_byte:a,smart_rollup_origination_size:s}=yield this.rpc.getConstants({block:String(e)});return{time_between_blocks:t,minimal_block_delay:r,hard_gas_limit_per_operation:n,hard_gas_limit_per_block:i,hard_storage_limit_per_operation:o,cost_per_byte:a,smart_rollup_origination_size:s}}))}getScript(e,t){return U1(this,void 0,void 0,(function*(){const{script:r}=yield this.rpc.getContract(e,{block:String(t)});return r}))}getStorage(e,t){return U1(this,void 0,void 0,(function*(){return this.rpc.getStorage(e,{block:String(t)})}))}getBlockHash(e){return U1(this,void 0,void 0,(function*(){const{hash:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getBlockLevel(e){return U1(this,void 0,void 0,(function*(){const{level:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getCounter(e,t){return U1(this,void 0,void 0,(function*(){const{counter:r}=yield this.rpc.getContract(e,{block:String(t)});return r||"0"}))}getBlockTimestamp(e){return U1(this,void 0,void 0,(function*(){const{timestamp:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getBigMapValue(e,t){return U1(this,void 0,void 0,(function*(){return this.rpc.getBigMapExpr(e.id,e.expr,{block:String(t)})}))}getSaplingDiffById(e,t){return U1(this,void 0,void 0,(function*(){return this.rpc.getSaplingDiffById(e.id,{block:String(t)})}))}getSaplingDiffByContract(e,t){return U1(this,void 0,void 0,(function*(){return this.rpc.getSaplingDiffByContract(e,{block:String(t)})}))}getEntrypoints(e){return U1(this,void 0,void 0,(function*(){return this.rpc.getEntrypoints(e)}))}getChainId(){return U1(this,void 0,void 0,(function*(){return this.rpc.getChainId()}))}isAccountRevealed(e,t){return U1(this,void 0,void 0,(function*(){const r=yield this.rpc.getManagerKey(e,{block:String(t)});return r&&"object"===typeof r?!!r.key:!!r}))}getBlock(e){return U1(this,void 0,void 0,(function*(){return this.rpc.getBlock({block:String(e)})}))}getLiveBlocks(e){return this.rpc.getLiveBlocks({block:String(e)})}}class Y5 extends Zs{constructor(e){super(),this.type=e,this.name="UnsupportedEventError",this.message=`Unsupported event type "${e}" expecting one of the "data", "error", or "close".`}}class X5 extends Zs{constructor(e){super(),this.invalidExpression=e,this.name="InvalidFilterExpressionError",this.message="Invalid filter expression expecting the object to contain either and/or property"}}const J5=(e,t)=>"opHash"in t?((e,t)=>e.hash===t.opHash)(e,t):"source"in t?((e,t)=>{switch(e.kind){case"attestation":case"endorsement":return"metadata"in e&&e.metadata.delegate===t.source;case"activate_account":return"metadata"in e&&e.pkh===t.source;default:return"source"in e&&e.source===t.source}})(e,t):"kind"in t?((e,t)=>"kind"in e&&e.kind===t.kind)(e,t):"destination"in t&&((e,t)=>{switch(e.kind){case"delegation":return e.delegate===t.destination;case"origination":if("metadata"in e&&"operation_result"in e.metadata&&"originated_contracts"in e.metadata.operation_result&&Array.isArray(e.metadata.operation_result.originated_contracts))return e.metadata.operation_result.originated_contracts.some((e=>e===t.destination));break;case"transaction":return e.destination===t.destination;default:return!1}})(e,t),Q5=(e,t)=>{const r=[];return Array.isArray(t)?r.push(...t):r.push(t),r.every((t=>"and"in t||"or"in t?((e,t)=>{if(Array.isArray(t.and))return t.and.every((t=>Q5(e,t)));if(Array.isArray(t.or))return t.or.some((t=>Q5(e,t)));throw new X5(t)})(e,t):J5(e,t)))};class e3{constructor(e,t=!1,r=JZ()){var n;this.shouldRetry=t,this.operatorFunction=r,this.errorListeners=[],this.messageListeners=[],this.closeListeners=[],this.completed$=new RG,e.pipe((n=this.completed$,nZ((function(e,t){WG(n).subscribe(iZ(t,(function(){return t.complete()}),fG)),!t.closed&&e.subscribe(t)}))),FZ((e=>{this.call(this.messageListeners,e)}),(e=>{this.call(this.errorListeners,e)}),(()=>{this.call(this.closeListeners)})),this.shouldRetry?r:FZ(),ZZ((()=>EZ))).subscribe()}call(e,t){for(const n of e)try{n(t)}catch(r){console.error(r)}}remove(e,t){const r=e.indexOf(t);-1!==r&&e.splice(r,1)}on(e,t){switch(e){case"data":this.messageListeners.push(t);break;case"error":this.errorListeners.push(t);break;case"close":this.closeListeners.push(t);break;default:throw new Y5(e)}}off(e,t){switch(e){case"data":this.remove(this.messageListeners,t);break;case"error":this.remove(this.errorListeners,t);break;case"close":this.remove(this.closeListeners,t);break;default:throw new Y5(e)}}close(){this.completed$.next()}}const t3={shouldObservableSubscriptionRetry:!1,observableSubscriptionRetryFunction:JZ()},r3=e=>BZ((t=>new TG((r=>{for(const s of t.operations)for(const c of s)for(const s of c.contents){const l=s.metadata.internal_operation_results;if(l)for(const s of l)n=s,i=null===e||void 0===e?void 0:e.address,o=null===e||void 0===e?void 0:e.tag,a=null===e||void 0===e?void 0:e.excludeFailedOperations,"event"!==n.kind||o&&n.tag!==o||i&&n.source!==i||a&&"applied"!==n.result.status||r.next(Object.assign({opHash:c.hash,blockHash:t.hash,level:t.header.level},s))}var n,i,o,a;r.complete()}))));class n3{constructor(e,t={}){this.context=e,this._config$=new NG(Object.assign(Object.assign({},t3),t)),this.timer$=this._config$.pipe(QZ("pollingIntervalMilliseconds"),LZ((e=>e?MZ(0,e):uZ(this.getConfirmationPollingInterval()).pipe(LZ((e=>MZ(0,e))))))),this.newBlock$=this.timer$.pipe(LZ((()=>(e=>uZ(e.rpc.getBlock()).pipe(GZ()))(this.context))),function(e,t){return YZ((function(r,n){return t?t(r[e],n[e]):r[e]===n[e]}))}("hash"),iY(),eY())}get config(){return this._config$.getValue()}getConfirmationPollingInterval(){return U1(this,void 0,void 0,(function*(){if(!this.config.pollingIntervalMilliseconds){const t=5e3,r=1e3;try{const e=yield this.context.readProvider.getProtocolConstants("head"),n=(e.minimal_block_delay?e.minimal_block_delay.multipliedBy(1e3):e.time_between_blocks?e.time_between_blocks[0].multipliedBy(1e3):new Nc(t)).dividedBy(3);this.config.pollingIntervalMilliseconds=0===n.toNumber()?r:n.toNumber()}catch(e){return t}}return this.config.pollingIntervalMilliseconds}))}subscribeBlock(e){return new e3(this.newBlock$,this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribe(e){return new e3(this.newBlock$.pipe(QZ("hash")),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribeOperation(e){return new e3(this.newBlock$.pipe((e=>BZ((t=>new TG((r=>{for(const n of t.operations)for(const t of n)for(const n of t.contents)Q5(Object.assign({hash:t.hash},n),e)&&r.next(Object.assign({hash:t.hash},n));r.complete()})))))(e)),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribeEvent(e){return new e3(this.newBlock$.pipe(r3(e)),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}}class i3{constructor(e){this.context=e}getNextProto(){return U1(this,void 0,void 0,(function*(){if(!this.context.proto){const e=yield this.context.readProvider.getNextProtocol("head");this.context.proto=e}return this.context.proto}))}forge({branch:e,contents:t}){return U1(this,void 0,void 0,(function*(){return new z1(yield this.getNextProto()).forge({branch:e,contents:t})}))}}const o3={defaultConfirmationCount:1,confirmationPollingTimeoutSecond:180};class a3{constructor(e,t=new q1,r,n=new NG(Object.assign({},o3)),i,o,a,s,c,l,u,d){this._rpc=e,this._signer=t,this._proto=r,this._config=n,this.providerDecorator=[],this.tz=new E5(this),this.estimate=new T5(this),this.contract=new V5(this,this.estimate),this.prepare=new v5(this),this.batch=new w5(this,this.estimate),this.wallet=new W2(this),this.withExtensions=()=>{let e=this.clone();return this.providerDecorator.forEach((t=>{e=t(e)})),e},"string"===typeof this._rpc?this._rpcClient=new jW(this._rpc):this._rpcClient=this._rpc,this._forger=i||new i3(this),this._injector=o||new H1(this),this.operationFactory=new S5(this),this._walletProvider=s||new e5(this),this._parser=c||new q5(this),this._packer=a||new K5(this),this._globalConstantsProvider=l||new G5,this._readProvider=u||new Z5(this._rpcClient),this._stream=d||new n3(this)}get config(){return this._config.getValue()}set config(e){this._config.next(Object.assign({},e))}setPartialConfig(e){this._config.next(Object.assign(Object.assign({},this._config.getValue()),e))}get rpc(){return this._rpcClient}set rpc(e){this._rpcClient=e}get injector(){return this._injector}set injector(e){this._injector=e}get forger(){return this._forger}set forger(e){this._forger=e}get signer(){return this._signer}set signer(e){this._signer=e}get walletProvider(){return this._walletProvider}set walletProvider(e){this._walletProvider=e}set proto(e){this._proto=e}get proto(){return this._proto}get parser(){return this._parser}set parser(e){this._parser=e}get packer(){return this._packer}set packer(e){this._packer=e}get globalConstantsProvider(){return this._globalConstantsProvider}set globalConstantsProvider(e){this._globalConstantsProvider=e}get readProvider(){return this._readProvider}set readProvider(e){this._readProvider=e}get stream(){return this._stream}set stream(e){this._stream=e}isAnyProtocolActive(e=[]){return U1(this,void 0,void 0,(function*(){if(this._proto)return e.includes(this._proto);{const t=yield this.readProvider.getNextProtocol("head");return e.includes(t)}}))}isAnySignerConfigured(){return!(this.signer instanceof q1)}clone(){return new a3(this.rpc,this.signer,this.proto,this._config,this.forger,this._injector,this.packer,this._walletProvider,this._parser,this._globalConstantsProvider,this._readProvider,this._stream)}registerProviderDecorator(e){this.providerDecorator.push(e)}}const s3={commitHash:"bb48f61207e1806442b0874365e98c7283ba1f68",version:"19.1.0"};class c3{constructor(e){this._rpc=e,this._options={},this.format=hl,"string"===typeof this._rpc?this._rpcClient=new jW(this._rpc):this._rpcClient=this._rpc,this._context=new a3(e),this._wallet=new W2(this._context),this.setProvider({rpc:this._rpcClient}),this.batch=this._context.batch.batch.bind(this._context.batch)}setProvider({rpc:e,stream:t,signer:r,protocol:n,config:i,forger:o,wallet:a,packer:s,globalConstantsProvider:c,readProvider:l,parserProvider:u,injectorProvider:d}){this.setRpcProvider(e),this.setStreamProvider(t),this.setSignerProvider(r),this.setForgerProvider(o),this.setWalletProvider(a),this.setPackerProvider(s),this.setGlobalConstantsProvider(c),this.setReadProvider(l),this.setParserProvider(u),this.setInjectorProvider(d),this._context.proto=n,i&&this._context.setPartialConfig(i)}setSignerProvider(e){this._options.signer||"undefined"!==typeof e?"undefined"!==typeof e&&(this._context.signer=e,this._options.signer=e):(this._context.signer=new q1,this._options.signer=e)}setRpcProvider(e){"string"===typeof e?this._rpcClient=new jW(e):void 0===e||(this._rpcClient=e),this._options.rpc=this._rpcClient,this._context.rpc=this._rpcClient}setForgerProvider(e){if("undefined"!==typeof e)this._options.forger=e,this._context.forger=e;else if(void 0===this._options.forger){const e=this.getFactory(i3)();this._options.forger=e,this._context.forger=e}}setStreamProvider(e){if("string"===typeof e){const t=new n3(new a3(new jW(e)));this._options.stream=t,this._context.stream=t}else if("undefined"!==typeof e)this._options.stream=e,this._context.stream=e;else if(void 0===this._options.stream){const e=this.getFactory(n3)();this._options.stream=e,this._context.stream=e}}setWalletProvider(e){if(this._options.wallet||"undefined"!==typeof e)"undefined"!==typeof e&&(this._options.wallet=e,this._context.walletProvider=e);else{const e=this.getFactory(e5)();this._options.wallet=e,this._context.walletProvider=e}}setPackerProvider(e){if(this._options.packer||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.packer=e,this._options.packer=e);else{const e=this.getFactory(K5)();this._context.packer=e,this._options.packer=e}}setGlobalConstantsProvider(e){if(this._options.globalConstantsProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.globalConstantsProvider=e,this._options.globalConstantsProvider=e);else{const e=new G5;this._context.globalConstantsProvider=e,this._options.globalConstantsProvider=e}}setReadProvider(e){const t=e||new Z5(this._context.rpc);this._options.readProvider=t,this._context.readProvider=t}setParserProvider(e){if(this._options.parserProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.parser=e,this._options.parserProvider=e);else{const e=new q5(this._context);this._context.parser=e,this._options.parserProvider=e}}setInjectorProvider(e){if(this._options.injectorProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.injector=e,this._options.injectorProvider=e);else{const e=new H1(this._context);this._context.injector=e,this._options.injectorProvider=e}}get tz(){return this._context.tz}get contract(){return this._context.contract}get prepare(){return this._context.prepare}get wallet(){return this._wallet}get operation(){return this._context.operationFactory}get estimate(){return this._context.estimate}get stream(){return this._context.stream}get rpc(){return this._context.rpc}get signer(){return this._context.signer}get globalConstants(){return this._context.globalConstantsProvider}addExtension(e){Array.isArray(e)?e.forEach((e=>e.configureContext(this._context))):e.configureContext(this._context)}getFactory(e){return(...t)=>new e(this._context,...t)}getVersionInfo(){return s3}}class l3{constructor(e,t){this.pk=void 0,this.pkh=void 0,this.pk=e,this.pkh=t}async publicKey(){return Promise.resolve(this.pk)}async publicKeyHash(){return Promise.resolve(this.pkh)}async sign(){return Promise.reject(new Error("`sign` method not available"))}async secretKey(){return Promise.reject(new Error("empty secret key"))}}const u3=[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]}],d3=(e,t,r)=>f3(e,t,{int:r}),h3=(e,t)=>{const r=m3(t);return f3(e,"propose",r)},f3=(e,t,r,n="0")=>({type:"contract_call",contract:e,entrypoint:t,args:r,amount:n}),p3=e=>(0,Ns.isEqual)(e.slice(0,2),u3)?e.slice(2):e,m3=e=>{const t=e.map((e=>(e=>{switch(e.type){case"tez":switch(e.recipient.type){case"implicit":return u5(e.recipient.pkh,Number(e.amount));case"contract":return d5(e.recipient.pkh,Number(e.amount))}case"fa1.2":return y3(e,v3,b3(e));case"fa2":return y3(e,g3,w3(e));case"delegation":return c5(e.recipient.pkh);case"undelegation":return l5();case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}})(e))).flatMap(p3);return[...u3,...t]},g3={args:[{args:[{annots:["%from_"],prim:"address"},{annots:["%txs"],args:[{args:[{annots:["%to_"],prim:"address"},{args:[{annots:["%token_id"],prim:"nat"},{annots:["%amount"],prim:"nat"}],prim:"pair"}],prim:"pair"}],prim:"list"}],prim:"pair"}],prim:"list"},v3={args:[{annots:[":from"],prim:"address"},{args:[{annots:[":to"],prim:"address"},{annots:[":value"],prim:"nat"}],prim:"pair"}],prim:"pair"},y3=(e,t,r)=>[...u3,{prim:"PUSH",args:[{prim:"address"},{string:e.contract.pkh+"%"+r.entrypoint}]},{prim:"CONTRACT",args:[t]},[{prim:"IF_NONE",args:[[{prim:"UNIT"},{prim:"FAILWITH"}],[]]}],{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"PUSH",args:[t,r.value]},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}],b3=({sender:e,recipient:t,amount:r})=>({entrypoint:"transfer",value:{prim:"Pair",args:[{string:e.pkh},{prim:"Pair",args:[{string:t.pkh},{int:r}]}]}}),w3=({sender:e,recipient:t,tokenId:r,amount:n})=>({entrypoint:"transfer",value:[{prim:"Pair",args:[{string:e.pkh},[{prim:"Pair",args:[{string:t.pkh},{prim:"Pair",args:[{int:r},{int:n}]}]}]]}]}),x3=async(e,t)=>{try{const r=`${t.tzktApiUrl}/v1/accounts/${e}`,{data:{type:n}}=await hR.get(r);return"empty"!==n}catch(r){throw new Error(`Error fetching account from tzkt ${r.message}`)}},_3=async e=>{const t=(new TextEncoder).encode(e),r=await crypto.subtle.digest("SHA-256",t),n=Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("").slice(0,8);return n},k3=async e=>{switch(e.type){case"social":case"mnemonic":case"secret_key":return new tG(e.secretKey);case"ledger":{const t=await GK.list();for(let e=0;e{switch(e){case"ed25519":return iW.ED25519;case"secp256k1":return iW.SECP256K1;case"p256":return iW.P256;case"bip25519":throw new Error("bip25519 is not supported in Tezos")}})(e.account.curve))}case"fake":return new l3(e.signer.pk,e.signer.address.pkh)}},S3=async e=>{const t=new c3(e.network.rpcUrl),r=await k3(e);return t.setSignerProvider(r),t},E3=async e=>{const t=new tG(e);return{pk:await t.publicKey(),pkh:await t.publicKeyHash()}},A3=async(e,t,r="ed25519")=>P3(e,t,r).then(E3),P3=(e,t,r)=>tG.fromMnemonic({mnemonic:e,derivationPath:t,curve:r}).secretKey(),O3=e=>{switch(e.type){case"tez":return{kind:TW.TRANSACTION,to:e.recipient.pkh,amount:parseInt(e.amount),mutez:!0};case"contract_call":return{kind:TW.TRANSACTION,to:e.contract.pkh,amount:parseInt(e.amount),mutez:!0,parameter:{entrypoint:e.entrypoint,value:e.args}};case"delegation":return{kind:TW.DELEGATION,source:e.sender.pkh,delegate:e.recipient.pkh};case"undelegation":return{kind:TW.DELEGATION,source:e.sender.pkh,delegate:void 0};case"fa1.2":return{kind:TW.TRANSACTION,amount:0,to:e.contract.pkh,parameter:b3(e)};case"fa2":return{kind:TW.TRANSACTION,amount:0,to:e.contract.pkh,parameter:w3(e)};case"contract_origination":return{kind:TW.ORIGINATION,...e}}},T3=({type:e,operations:t,sender:r})=>("implicit"===e?t:[h3(r.address,t)]).map(O3),j3=T3,C3=async(e,t)=>{const r=await S3({type:"fake",signer:e.signer,network:t});try{const t=await r.estimate.batch(T3(e));return n=t.map((e=>Math.max(e.suggestedFeeMutez,e.totalCost).toString())),n.reduce(((e,t)=>e.plus(t)),new Nc(0))}catch(kne){if(!await x3(e.signer.address.pkh,t))throw new Error(`Signer address is not revealed on the ${t.name}.`);throw kne instanceof Error&&(kne.message=R3(kne)),kne}var n},R3=e=>e.message.includes("subtraction_underflow")?"Insufficient balance, please make sure you have enough funds.":e.message.includes("contract.non_existing_contract")?"Contract does not exist, please check if the correct network is selected.":e.message;class I3{constructor(e){this.queue=void 0,this.maxConcurrent=void 0,this.count=void 0,this.queue=[],this.maxConcurrent=e,this.count=0}get canAcquire(){return this.countthis.queue.push(e)))}release(){const e=this.queue.shift();e?setTimeout(e,0):this.count--}}const M3="_default";const L3=[encodeURIComponent,encodeURIComponent];encodeURIComponent,encodeURI;function N3(e,t=","){return(r,...n)=>r.reduce(((r,i,o)=>`${r}${i}${((r,n)=>{const i=e[n%e.length];if("undefined"===typeof r)return"";if("object"===typeof r)return Array.isArray(r)?r.map(i).join(t):Object.entries(r).reduce(((e,t)=>[...e,...t]),[]).map(i).join(t);return i(String(r))})(n[o],o)}`),"")}function D3(e=","){return(t,r=L3)=>Object.entries(t).filter((([,e])=>void 0!==e)).map((([t,n])=>N3(r,e)`${t}=${n}`)).join("&")}function z3(...e){const t=e.filter(Boolean).join("&");return t&&`?${t}`}function B3(e,t=L3){const r=N3(t);return Object.entries(e).filter((([,e])=>void 0!==e)).map((([e,n])=>Array.isArray(n)?n.map((t=>r`${e}=${t}`)).join("&"):"object"===typeof n?B3(n,t):r`${e}=${n}`)).join("&")}const U3=D3();D3("|"),D3("%20");const F3=[200,201,202,204];async function $3(e){const t=await e;if(F3.some((e=>e==t.status)))return t.data;throw new H3(t.status,t.data)}class H3 extends Error{status;data;constructor(e,t){super(`Error: ${e}`),this.status=e,this.data=t}}const V3={jsonParameter:(e,t)=>{if(!t)return{};const r={};return Object.entries(t).forEach((([t,n])=>{if(!(n instanceof Object))throw new Error(`Expected ${e} value to be object, received ${typeof n}`);const{jsonPath:i,jsonValue:o}=n;if(void 0===o||null===o)throw new Error(`Expected jsonValue in ${e} -> ${t}, found: ${o}`);const a=[e,i,t].filter((e=>void 0!==e)).join(".");r[a]=o})),r},queryParameter:(e,t)=>{if(!t)return{};const r={};return Object.entries(t).forEach((([t,n])=>{r[`${e}.${t}`]=n})),r},anyofParameter:(e,t)=>{if(!t)return{};const{fields:r}=t;if(!(t=>{if(!Array.isArray(t))throw new Error(`Expected ${e} fields to be Array. Received ${typeof t}.`);return t.forEach((t=>{if("string"!==typeof t)throw new Error(`Expected ${e} fields to be strings. Received ${typeof t}`)})),!0})(r))return{};const n={},i=r.join(".");if(t.value){n[`${e}.${i}`]=t.value}for(const o of["in","eq","null"])if(t[o]){return n[`${e}.${i}.${o}`]=Array.isArray(t[o])?t[o].join(","):t[o],n}return n}},q3=V3,K3=function(e){async function t(e,t){const n=await r(e,t);let i;try{i=await n.text()}catch(kne){}return{status:n.status,headers:n.headers,contentType:n.headers.get("content-type"),data:i}}async function r(t,r={}){const{baseUrl:n,headers:i,fetch:o,...a}={...e,...r},s=function(...e){return e.filter(Boolean).map(((e,t)=>0===t?e:e.replace(/^\/+/,""))).map(((e,t,r)=>t===r.length-1?e:e.replace(/\/+$/,""))).join("/")}(n,t);var c;return await(o||fetch)(s,{...a,headers:(c={...e.headers,...i},c&&JSON.parse(JSON.stringify(c)))})}return{ok:$3,fetchText:t,fetchJson:async function(e,r={}){const{status:n,headers:i,contentType:o,data:a}=await t(e,{...r,headers:{Accept:"application/json",...r.headers}});return!!o&&o.includes("json")?{status:n,headers:i,data:a?JSON.parse(a):null}:{status:n,headers:i,data:a}},fetchBlob:async function(e,t={}){const n=await r(e,t);let i;try{i=await n.blob()}catch(kne){}return{status:n.status,headers:n.headers,data:i}},json:({body:e,headers:t,...r})=>({...r,...null!=e&&{body:JSON.stringify(e)},headers:{...t,"Content-Type":"application/json"}}),form:({body:e,headers:t,...r})=>({...r,...null!=e&&{body:U3(e)},headers:{...t,"Content-Type":"application/x-www-form-urlencoded"}}),multipart({body:t,...r}){if(null==t)return r;const n=new(e.formDataConstructor||r.formDataConstructor||FormData);return Object.entries(t).forEach((([e,t])=>{n.append(e,t)})),{...r,body:n}}}}({baseUrl:"https://api.tzkt.io"});function W3({id:e,level:t,timestamp:r,tokenId:n,tokenContract:i,tokenTokenId:o,tokenStandard:a,tokenMetadata:s,tokenHasFilters:c,anyof:l,$from:u,to:d,amount:h,transactionId:f,originationId:p,migrationId:m,indexedAt:g,sort:v,offset:y,limit:b,select:w}={},x){return K3.ok(K3.fetchJson(`/v1/tokens/transfers${z3(B3({"token.HasFilters":c,limit:b,...q3.queryParameter("id",e),...q3.queryParameter("level",t),...q3.queryParameter("timestamp",r),...q3.queryParameter("token.id",n),...q3.queryParameter("token.contract",i),...q3.queryParameter("token.tokenId",o),...q3.queryParameter("token.standard",a),...q3.jsonParameter("token.metadata",s),...q3.anyofParameter("anyof",l),...q3.queryParameter("from",u),...q3.queryParameter("to",d),...q3.queryParameter("amount",h),...q3.queryParameter("transactionId",f),...q3.queryParameter("originationId",p),...q3.queryParameter("migrationId",m),...q3.queryParameter("indexedAt",g),...q3.queryParameter("sort",v),...q3.queryParameter("offset",y),...q3.queryParameter("select",w)}))}`,{...x}))}var G3=r(6811),Z3=r.n(G3);const Y3=new class{constructor(e=1){this.semaphoreInstances=void 0,this.maxConcurrent=void 0,this.semaphoreInstances={},this.maxConcurrent=e}hasSemaphoreInstance(e=M3){return Boolean(this.semaphoreInstances[e])}getSemaphoreInstance(e=M3){return this.hasSemaphoreInstance(e)||(this.semaphoreInstances[e]=new I3(this.maxConcurrent)),this.semaphoreInstances[e]}tidy(e=M3){this.hasSemaphoreInstance(e)&&0===this.getSemaphoreInstance(e).count&&delete this.semaphoreInstances[e]}canAcquire(e=M3){return this.getSemaphoreInstance(e).canAcquire}acquire(e=M3){return this.getSemaphoreInstance(e).acquire()}release(e=M3){this.getSemaphoreInstance(e).release(),this.tidy(e)}count(e=M3){return this.hasSemaphoreInstance(e)?this.getSemaphoreInstance(e).count:0}hasTasks(e=M3){return this.count(e)>0}async request(e,t=M3){try{return await this.acquire(t),await e()}finally{this.release(t)}}async requestIfAvailable(e,t=M3){return this.canAcquire(t)?this.request(e,t):null}}(10),X3=e=>Y3.acquire().then((()=>Z3()((t=>e().catch(t)),{retries:3,minTimeout:100}))).catch((e=>{if("status"in e&&"data"in e)throw new Error(`Fetching data from tzkt failed with: ${e.status}, ${e.data}`);throw e})).finally((()=>Y3.release())),J3=async(e,t)=>X3((()=>function({id:e,address:t,$type:r,kind:n,delegate:i,balance:o,staked:a,lastActivity:s,select:c,sort:l,offset:u,limit:d}={},h){return K3.ok(K3.fetchJson(`/v1/accounts${z3(B3({limit:d,...q3.queryParameter("id",e),...q3.queryParameter("address",t),...q3.queryParameter("type",r),...q3.queryParameter("kind",n),...q3.queryParameter("delegate",i),...q3.queryParameter("balance",o),...q3.queryParameter("staked",a),...q3.queryParameter("lastActivity",s),...q3.queryParameter("select",c),...q3.queryParameter("sort",l),...q3.queryParameter("offset",u)}))}`,{...h}))}({address:{in:[e.join(",")]},select:{fields:["address,balance,delegationLevel"]}},{baseUrl:t.tzktApiUrl}))),Q3=async(e,t)=>X3((()=>function({id:e,account:t,tokenId:r,tokenContract:n,tokenTokenId:i,tokenStandard:o,tokenMetadata:a,tokenHasFilters:s,balance:c,firstLevel:l,firstTime:u,lastLevel:d,lastTime:h,indexedAt:f,sort:p,offset:m,limit:g,select:v}={},y){return K3.ok(K3.fetchJson(`/v1/tokens/balances${z3(B3({"token.HasFilters":s,limit:g,...q3.queryParameter("id",e),...q3.queryParameter("account",t),...q3.queryParameter("token.id",r),...q3.queryParameter("token.contract",n),...q3.queryParameter("token.tokenId",i),...q3.queryParameter("token.standard",o),...q3.jsonParameter("token.metadata",a),...q3.queryParameter("balance",c),...q3.queryParameter("firstLevel",l),...q3.queryParameter("firstTime",u),...q3.queryParameter("lastLevel",d),...q3.queryParameter("lastTime",h),...q3.queryParameter("indexedAt",f),...q3.queryParameter("sort",p),...q3.queryParameter("offset",m),...q3.queryParameter("select",v)}))}`,{...y}))}({account:{in:[e.join(",")]},balance:{gt:"0"},limit:1e4},{baseUrl:t.tzktApiUrl}))),e6=async(e,t,r)=>X3((()=>function({anyof:e,initiator:t,sender:r,prevDelegate:n,newDelegate:i,level:o,timestamp:a,senderCodeHash:s,status:c,select:l,sort:u,offset:d,limit:h,quote:f}={},p){return K3.ok(K3.fetchJson(`/v1/operations/delegations${z3(B3({limit:h,quote:f,...q3.anyofParameter("anyof",e),...q3.queryParameter("initiator",t),...q3.queryParameter("sender",r),...q3.queryParameter("prevDelegate",n),...q3.queryParameter("newDelegate",i),...q3.queryParameter("level",o),...q3.queryParameter("timestamp",a),...q3.queryParameter("senderCodeHash",s),...q3.queryParameter("status",c),...q3.queryParameter("select",l),...q3.queryParameter("sort",u),...q3.queryParameter("offset",d)}))}`,{...p}))}({sender:{in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),t6=async(e,t,r)=>X3((()=>function({anyof:e,initiator:t,sender:r,target:n,amount:i,id:o,level:a,timestamp:s,senderCodeHash:c,targetCodeHash:l,codeHash:u,entrypoint:d,parameter:h,hasInternals:f,status:p,select:m,sort:g,offset:v,limit:y,micheline:b,quote:w}={},x){return K3.ok(K3.fetchJson(`/v1/operations/transactions${z3(B3({limit:y,micheline:b,quote:w,...q3.anyofParameter("anyof",e),...q3.queryParameter("initiator",t),...q3.queryParameter("sender",r),...q3.queryParameter("target",n),...q3.queryParameter("amount",i),...q3.queryParameter("id",o),...q3.queryParameter("level",a),...q3.queryParameter("timestamp",s),...q3.queryParameter("senderCodeHash",c),...q3.queryParameter("targetCodeHash",l),...q3.queryParameter("codeHash",u),...q3.queryParameter("entrypoint",d),...q3.jsonParameter("parameter",h),...q3.queryParameter("hasInternals",f),...q3.queryParameter("status",p),...q3.queryParameter("select",m),...q3.queryParameter("sort",g),...q3.queryParameter("offset",v)}))}`,{...x}))}({anyof:{fields:["sender","target","initiator"],in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),r6=async(e,t,r)=>X3((()=>function({anyof:e,initiator:t,sender:r,contractManager:n,contractDelegate:i,originatedContract:o,id:a,typeHash:s,codeHash:c,level:l,timestamp:u,senderCodeHash:d,anyCodeHash:h,status:f,select:p,sort:m,offset:g,limit:v,micheline:y,quote:b}={},w){return K3.ok(K3.fetchJson(`/v1/operations/originations${z3(B3({limit:v,micheline:y,quote:b,...q3.anyofParameter("anyof",e),...q3.queryParameter("initiator",t),...q3.queryParameter("sender",r),...q3.queryParameter("contractManager",n),...q3.queryParameter("contractDelegate",i),...q3.queryParameter("originatedContract",o),...q3.queryParameter("id",a),...q3.queryParameter("typeHash",s),...q3.queryParameter("codeHash",c),...q3.queryParameter("level",l),...q3.queryParameter("timestamp",u),...q3.queryParameter("senderCodeHash",d),...q3.queryParameter("anyCodeHash",h),...q3.queryParameter("status",f),...q3.queryParameter("select",p),...q3.queryParameter("sort",m),...q3.queryParameter("offset",g)}))}`,{...w}))}({sender:{in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),n6=async(e,t,r)=>X3((async()=>(await W3({anyof:{fields:["from","to"],in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl})).map((e=>({...e,type:"token_transfer"}))))),i6=async e=>X3((async()=>{return await(t={baseUrl:e.tzktApiUrl},K3.ok(K3.fetchJson("/v1/blocks/count",{...t})));var t})),o6=async e=>X3((()=>function({active:e,lastActivity:t,select:r,sort:n,offset:i,limit:o}={},a){return K3.ok(K3.fetchJson(`/v1/delegates${z3(B3({limit:o,...q3.queryParameter("active",e),...q3.queryParameter("lastActivity",t),...q3.queryParameter("select",r),...q3.queryParameter("sort",n),...q3.queryParameter("offset",i)}))}`,{...a}))}({sort:{desc:"stakingBalance"},active:{eq:!0},limit:1e4,select:{fields:["address,alias,stakingBalance"]}},{baseUrl:e.tzktApiUrl}))),a6=async(e,t)=>{const r=j3(e);return t.wallet.batch(r).send()},s6=(e,t)=>e.length>t?e.slice(0,t-3)+"...":e,c6=e=>hl("tz","mutez",e),l6=e=>hl("mutez","tz",e),u6=e=>{const t=Nc(l6(e)).toNumber();return`${new Intl.NumberFormat("en-US",{minimumFractionDigits:6,maximumFractionDigits:6}).format(t)} \ua729`},d6=e=>`${e.slice(0,5)}...${e.slice(-5)}`,h6=e=>{const t=PI((e=>e.assets.blockLevel));return null!==t?t-e>=2:null},f6=()=>{const e=g6(),t=PI((e=>e.assets.balances.tokens)),r=Object.keys(t);return(0,Ns.fromPairs)(r.map((t=>[t,e(t)])))},p6=()=>{const e=eK(),t=PI((e=>e.assets.balances.tokens));return r=>{const n=t[r]||[];return(0,Ns.compact)(n.map((({contract:t,tokenId:r,...n})=>{const i=e(t,r);return i&&{...i,...n}})))}},m6=()=>{const e=(()=>{const e=p6();return t=>e(t).filter((e=>"fa1.2"===e.type))})(),t=(()=>{const e=p6();return t=>e(t).filter((e=>"fa2"===e.type))})();return r=>[...e(r),...t(r)]},g6=()=>{const e=p6();return t=>e(t).filter((e=>"nft"===e.type))},v6=()=>{const e=PI((e=>e.assets.conversionRate));return t=>null===e?null:new Lc(t).multipliedBy(e).decimalPlaces(2,Lc.ROUND_UP)},y6=()=>{const e=PI((e=>e.assets.balances.mutez));return t=>e[t]},b6=()=>PI((e=>e.assets.bakers)),w6=()=>PI((e=>e.contacts)),x6=()=>{const e=w6();return{addressExistsInContacts:t=>t in e,nameExistsInContacts:t=>jh(e,t)}},_6=()=>{const e=w6();return t=>t in e?e[t].name:void 0},k6=()=>{const e=PI((e=>e.multisigs.pendingOperations));return t=>{var r;return[...null!==(r=e[t.pendingOperationsBigmapId])&&void 0!==r?r:[]].sort(((e,t)=>Number(t.id)-Number(e.id)))}},S6=()=>PI((e=>e.accounts.seedPhrases)),E6=()=>PI((e=>e.accounts.secretKeys)),A6=()=>PI((e=>e.accounts.items)),P6=()=>{const e=A6();return t=>e.find((e=>e.address.pkh===t))},O6=()=>{const e=P6();return t=>{const r=e(t);if(!r)throw new Error(`Unknown account: ${t}`);return r}},T6=()=>{const e=A6(),t=PI((e=>e.multisigs.items));return[...e,...t]},j6=()=>{const e=T6().map((e=>e.label)),t=Object.values(w6()).map((e=>e.name));return r=>![...e,...t].includes(r)},C6=()=>{const e=j6();return(t,r=1)=>{const n=[];for(let i=1;n.length{const e=T6();return t=>e.find((e=>e.address.pkh===t))},I6=()=>{const e=R6();return t=>{const r=e(t);if(!r)throw new Error(`Unknown account: ${t}`);return r}},M6=e=>T6().map((e=>e.address.pkh)).includes(e),L6=()=>{const e=(()=>{const e=A6();return t=>{const r=e.filter((e=>t.signers.some((t=>t.pkh===e.address.pkh))));return 0===r.length&&console.warn("Wallet doesn't own any signers for multisig contract "+t.address.pkh),r}})();return t=>{switch(t.type){case"ledger":case"mnemonic":case"social":case"secret_key":return[t];case"multisig":return e(t)}}},N6=()=>{const e=L6(),t=D6();return r=>t(e(r))},D6=()=>{const e=y6();return t=>(0,Ns.maxBy)(t,(t=>Number(e(t.address.pkh)||"0")))},z6=e=>{const t=B6(e),r=U6(e),n=F6(e);return t||r||n||{pkh:e.pkh,type:"unknown",label:null}},B6=({pkh:e})=>{const t=R6()(e);return t?{type:t.type,pkh:e,label:t.label}:null},U6=({pkh:e})=>{const t=(()=>{const e=b6();return t=>e.find((e=>e.address===t))})(),r=t(e);return r?{pkh:e,type:"baker",label:r.name}:null},F6=({pkh:e})=>{const t=_6()(e);return t?{pkh:e,type:"contact",label:t}:null},$6=({number:e,size:t="md",...r})=>{const n="md"===t?"md":"lg",i="md"===t?"sm":"md",{integer:o,decimal:a}=(e=>{const[t,r]=e.split(".");return{integer:t,decimal:r}})(e);return(0,xn.jsxs)(_n,{alignItems:"end","data-testid":"pretty-number",...r,children:[(0,xn.jsx)(Ln,{size:n,children:o}),a&&(0,xn.jsxs)(Ln,{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",size:i,children:[".",a]})]})},H6=({address:e,size:t,numberProps:r,...n})=>{const i=y6()(e);if(!i)return null;const o=u6(i);return(0,xn.jsx)(En,{overflow:"hidden",textAlign:"right","data-testid":"account-balance",...n,children:(0,xn.jsx)($6,{number:o,size:t,...r})})},V6=({address:e,...t})=>{const r=z6(e);return(0,xn.jsx)($q,{background:AO.white,hasArrow:!0,label:r.label,placement:"left",children:(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",width:"100%",padding:"9px 10px",background:AO.gray[800],borderRadius:"4px","data-testid":"address-tile",...t,children:[(0,xn.jsxs)(_n,{alignItems:"center",width:"calc(100% - 95px)",children:[(0,xn.jsx)(Yq,{addressKind:r}),"unknown"===r.type?(0,xn.jsx)(WU,{marginLeft:"10px",color:AO.gray[300],size:"sm",children:e.pkh}):(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(En,{overflow:"hidden",width:"100%",marginLeft:"10px",whiteSpace:"nowrap",children:(0,xn.jsx)(Ln,{overflow:"hidden",textOverflow:"ellipsis",size:"sm",children:r.label})}),(0,xn.jsx)(WU,{width:"89px",marginLeft:"10px",color:AO.gray[300],size:"xs",children:d6(r.pkh)})]})]}),(0,xn.jsx)(H6,{overflow:"hidden",marginLeft:"10px",textAlign:"right",address:e.pkh,numberProps:{maxWidth:"85px"}})]})})},q6=({contacts:e,onChange:t})=>0===e.length?null:(0,xn.jsx)(KH,{position:"absolute",zIndex:2,overflowY:"auto",width:"100%",maxHeight:300,marginTop:"8px",marginLeft:0,background:AO.gray[700],border:"1px solid",borderColor:AO.gray[500],borderRadius:"8px","data-testid":"suggestions-list",listStyleType:"none",children:e.map(((r,n)=>(0,xn.jsx)(En,{children:(0,xn.jsx)(WH,{marginBottom:n===e.length-1?"5px":0,padding:"5px 15px 0 5px",onMouseDown:()=>{t(r.name)},children:(0,xn.jsx)(V6,{height:"40px",padding:"10px 8px 10px 5px",background:AO.gray[700],borderRadius:"4px",_hover:{background:AO.gray[500]},cursor:"pointer",address:Fd(r.pkh)})})},r.pkh)))}),K6=(e,t)=>{if(""===e)return t;return t.filter((t=>t.name.toLowerCase().includes(e.trim().toLowerCase())))},W6=({contacts:e,isDisabled:t,isLoading:r=!1,allowUnknown:n,inputName:o,onUpdate:a,validate:s,label:c,keepValid:l,style:u,size:d})=>{const{register:h,setValue:f,formState:{defaultValues:p},getValues:m}=h$(),g=f,v=(0,i.useId)(),[y,b]=(0,i.useState)((()=>{var t;if(l||!p)return"";const r=(0,Ns.get)(p,o);return r?(null===(t=e.find((e=>e.pkh===r)))||void 0===t?void 0:t.name)||r:""})),[w,x]=(0,i.useState)(!0),[_,k]=(0,i.useState)(K6("",e)),S=m(o),E=t=>{b(t),k(K6(t,e));const r=e.find((e=>e.name===t||e.pkh===t));let i;if(void 0!==r)i=r.pkh,x(!0);else if(n&&$d(t))i=t;else{if(l)return;i=""}g(o,i,{shouldValidate:!0}),a&&a(i)};let A="raw_input";r?A="selected_tile":t?A="disabled_tile":S&&(A="selected_tile");const P=()=>{E(""),x(!1)};return(0,xn.jsxs)(En,{"data-testid":`address-autocomplete-${o}`,children:[(0,xn.jsx)(TH,{htmlFor:v,children:c}),"disabled_tile"===A&&(0,xn.jsx)(V6,{address:Fd(S)}),"selected_tile"===A&&(0,xn.jsx)(En,{height:"48px",background:AO.gray[800],border:"1px solid",borderColor:AO.gray[500],borderRadius:"4px","data-testid":`selected-address-tile-${S}`,onClick:P,paddingY:0,children:(0,xn.jsxs)(kn,{justifyContent:"space-between",cursor:"pointer","data-testid":"clear-selected-button",children:[(0,xn.jsx)(V6,{width:"short"===d?"338px":"365px",paddingTop:"8px",background:"transparent",address:Fd(S)}),l?(0,xn.jsx)(xR,{marginRight:"12px","data-testid":"chevron-icon"}):(0,xn.jsx)(G6,{marginRight:"14px"})]})}),"raw_input"===A&&(0,xn.jsxs)(MH,{children:[(0,xn.jsx)(DH,{...u,"aria-label":o,autoComplete:"off",id:v,onBlur:e=>{if(e.preventDefault(),x(!0),l&&S!==e.target.value)return E(S);E(e.target.value)},onChange:e=>E(e.target.value),onFocus:()=>x(!1),placeholder:"Enter address or contact name",value:y}),(0,xn.jsx)(FH,{children:y?(0,xn.jsx)(G6,{marginRight:"0px",onClick:P}):(0,xn.jsx)(xR,{"data-testid":"chevron-icon"})})]}),(0,xn.jsx)(DH,{...h(o,{required:"Invalid address or contact name",validate:s}),marginBottom:0,"data-testid":`real-address-input-${o}`,name:o,type:"hidden"}),!w&&(0,xn.jsx)(q6,{contacts:_,onChange:E})]})},G6=e=>(0,xn.jsx)(EI,{marginRight:"16px",stroke:AO.gray[450],cursor:"pointer","data-testid":"clear-input-button",...e}),Z6=e=>{const t=Object.values(w6()),r=T6().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,xn.jsx)(W6,{...e,contacts:t.concat(r)})},Y6=e=>{const t=A6().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,xn.jsx)(W6,{...e,contacts:t})},X6=e=>{const t=T6().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,xn.jsx)(W6,{...e,contacts:t})},J6=e=>{const t=b6().map((e=>({name:e.name,pkh:e.address})));return(0,xn.jsx)(W6,{...e,contacts:t})},Q6=e=>{const t=L6()(e.account).map((e=>({name:e.label,pkh:e.address.pkh})));return(0,xn.jsx)(W6,{allowUnknown:!1,contacts:t,isDisabled:1===t.length,...e})},e4=({request:e})=>{const t=(()=>{const e=co();return(t,r,n)=>e(Th.actions.addConnection({dAppId:t,accountPkh:r,networkType:n}))})(),r=O6(),n=xH({mode:"onBlur"}),{getValues:i,formState:{errors:o,isValid:a}}=n;return(0,xn.jsxs)(VU,{children:[(0,xn.jsxs)(qU,{marginBottom:"24px",children:[(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"center",children:"Permission Request"}),(0,xn.jsxs)(WU,{marginTop:"10px",color:AO.gray[400],textAlign:"center",size:"sm",children:[e.appMetadata.name," is requesting permission to sign this operation."]}),(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"center",marginTop:"10px",children:[(0,xn.jsx)(Ln,{marginRight:"4px",color:AO.gray[450],size:"sm",children:"Network:"}),(0,xn.jsx)(WU,{color:AO.gray[400],size:"sm",children:(0,Ns.capitalize)(e.network.type)})]})]}),(0,xn.jsx)(GU,{}),(0,xn.jsxs)(ZU,{"data-testid":"beacon-request-body",children:[(0,xn.jsxs)(_n,{alignItems:"center",marginTop:"16px",padding:"15px",borderRadius:"4px",backgroundColor:AO.gray[800],children:[(0,xn.jsx)(XU,{width:"60px",marginRight:"12px",ratio:1,children:(0,xn.jsx)(mI,{borderRadius:"4px",src:e.appMetadata.icon})}),(0,xn.jsx)(Ln,{size:"sm",children:e.appMetadata.name})]}),(0,xn.jsx)(_F,{marginTop:"16px",allowToggle:!0,children:(0,xn.jsxs)(kF,{background:AO.gray[800],border:"none",borderRadius:"8px",children:[(0,xn.jsxs)(SF,{children:[(0,xn.jsx)(Ln,{flex:"1",textAlign:"left",marginY:"10px",size:"md",children:"Request"}),(0,xn.jsx)(EF,{})]}),(0,xn.jsx)(jF,{children:(0,xn.jsx)(OH,{value:e})})]})}),(0,xn.jsx)(f$,{...n,children:(0,xn.jsxs)(LF,{marginTop:"24px",isInvalid:!!o.address,children:[(0,xn.jsx)(Y6,{allowUnknown:!1,inputName:"address",label:"Select Account"}),o.address&&(0,xn.jsx)(BF,{children:o.address.message})]})})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Gn,{width:"100%",isDisabled:!a,onClick:n=>(async()=>{const n=r(i().address),o={type:RL.PermissionResponse,network:e.network,scopes:e.scopes,id:e.id,publicKey:n.pk,walletType:"implicit"};await _H.respond(o),t(e.senderId,n.address.pkh,e.network.type)})(),size:"lg",children:"Sign"})})]})};var t4=v(((e,t)=>{const{icon:r,children:n,isRound:o,"aria-label":a,...s}=e,c=r||n,l=(0,i.isValidElement)(c)?(0,i.cloneElement)(c,{"aria-hidden":!0,focusable:!1}):null;return(0,xn.jsx)(Gn,{padding:"0",borderRadius:o?"full":void 0,ref:t,"aria-label":a,...s,children:l})}));function r4(e){return r4="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r4(e)}function n4(e){var t=function(e,t){if("object"!=r4(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=r4(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==r4(t)?t:String(t)}function i4(e,t,r){return(t=n4(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}t4.displayName="IconButton";var o4=r(2020),a4=r.n(o4),s4=r(4371),c4=r.n(s4);function l4(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function u4(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};const r={mode:"cors",headers:{}};(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).useAPIKey&&(r.headers=u4(u4({},r.headers),w4()));const n=a4()(r,t,{method:"GET"}),i=await b4(e,n);if(i.ok)return i.json();throw x4(i),i},k4=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const i={mode:"cors",headers:{"Content-Type":"application/json; charset=utf-8"}};n.useAPIKey&&(i.headers=u4(u4({},i.headers),w4()));const o=a4()(i,r,{method:"POST"});return n.isUrlEncodedData?(o.body=t,"application/json; charset=utf-8"===o.headers["Content-Type"]&&delete o.headers["Content-Type"]):o.body=JSON.stringify(t),((e,t)=>{const r=new Promise(((t,r)=>{const n=setTimeout((()=>{clearTimeout(n),r(new Error(`Timed out in ${e}ms`))}),e)}));return Promise.race([t,r])})(n.timeout||6e4,b4(e,o).then((e=>{if(n.logTracingHeader&&function(e){d4.info(`Request tracing with traceID=${e.headers.get("x-web3-correlation-id")}`)}(e),e.ok)return e.json();throw x4(e),e})))},S4=(e,t)=>({jsonrpc:"2.0",method:e,id:10,params:t});function E4(e,t){if(null==e)return{};var r,n,i=function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var A4=r(5278),P4=r.n(A4);Promise.resolve(!1),Promise.resolve(!0);var O4=Promise.resolve();function T4(e,t){return e||(e=0),new Promise((function(r){return setTimeout((function(){return r(t)}),e)}))}function j4(){return Math.random().toString(36).substring(2)}var C4=0,R4=0;function I4(){var e=(new Date).getTime();return e===C4?1e3*e+ ++R4:(C4=e,R4=0,1e3*e)}var M4=c4().getLogger("broadcast-channel");M4.setLevel("error");const L4={create:function(e){var t={messagesCallback:null,bc:new BroadcastChannel(e),subFns:[]};return t.bc.onmessage=function(e){t.messagesCallback&&t.messagesCallback(e.data)},t},close:function(e){e.bc.close(),e.subFns=[]},onMessage:function(e,t){e.messagesCallback=t},postMessage:function(e,t){try{return e.bc.postMessage(t,!1),O4}catch(kne){return Promise.reject(kne)}},canBeUsed:function(e){if("undefined"===typeof window)return!1;if(!e.support3PC)return!1;if("function"===typeof BroadcastChannel){if(BroadcastChannel._pubkey)throw new Error("BroadcastChannel: Do not overwrite window.BroadcastChannel with this module, this is not a polyfill");return!0}return!1},type:"native",averageResponseTime:function(){return 150},microSeconds:I4};var N4=function(){function e(e){this.ttl=e,this.map=new Map,this._to=!1}return e.prototype.has=function(e){return this.map.has(e)},e.prototype.add=function(e){var t=this;this.map.set(e,D4()),this._to||(this._to=!0,setTimeout((function(){t._to=!1,function(e){var t=D4()-e.ttl,r=e.map[Symbol.iterator]();for(;;){var n=r.next().value;if(!n)return;var i=n[0];if(!(n[1]0&&void 0!==arguments[0]?arguments[0]:{},t=JSON.parse(JSON.stringify(e));return"undefined"===typeof t.support3PC&&(t.support3PC=function(){if("undefined"===typeof navigator)return!1;var e=P4().parse(navigator.userAgent);M4.info(JSON.stringify(e),"current browser info");var t=!0;return navigator.brave&&(t=!1),e.engine.name!==P4().ENGINE_MAP.WebKit&&e.engine.name!==P4().ENGINE_MAP.Gecko||(t=!1),t}()),"undefined"===typeof t.webWorkerSupport&&(t.webWorkerSupport=!0),t.idb||(t.idb={}),t.idb.ttl||(t.idb.ttl=45e3),t.idb.fallbackInterval||(t.idb.fallbackInterval=150),e.idb&&"function"===typeof e.idb.onclose&&(t.idb.onclose=e.idb.onclose),t.localstorage||(t.localstorage={}),t.localstorage.removeTimeout||(t.localstorage.removeTimeout=6e4),t.server||(t.server={}),t.server.url||(t.server.url="https://broadcast-server.tor.us"),t.server.removeTimeout||(t.server.removeTimeout=3e5),e.methods&&(t.methods=e.methods),t}var B4="pubkey.broadcast-channel-0-",U4="messages",F4={durability:"relaxed"};function $4(){if("undefined"!==typeof indexedDB)return indexedDB;if("undefined"!==typeof window){if("undefined"!==typeof window.mozIndexedDB)return window.mozIndexedDB;if("undefined"!==typeof window.webkitIndexedDB)return window.webkitIndexedDB;if("undefined"!==typeof window.msIndexedDB)return window.msIndexedDB}return!1}function H4(e){e.commit&&e.commit()}function V4(e,t){var r=e.transaction(U4,"readonly",F4),n=r.objectStore(U4),i=[],o=IDBKeyRange.bound(t+1,1/0);if(n.getAll){var a=n.getAll(o);return new Promise((function(e,t){a.onerror=function(e){return t(e)},a.onsuccess=function(t){e(t.target.result)}}))}return new Promise((function(e,a){var s=function(){try{return o=IDBKeyRange.bound(t+1,1/0),n.openCursor(o)}catch(pge){return n.openCursor()}}();s.onerror=function(e){return a(e)},s.onsuccess=function(n){var o=n.target.result;o?o.value.ide.lastCursorId&&(e.lastCursorId=t.id),t})).filter((function(t){return function(e,t){return e.uuid!==t.uuid&&!t.eMIs.has(e.id)&&!(e.data.time{o8[i8[e]]=e}));const a8={type:"error",data:"parser error"},s8="function"===typeof Blob||"undefined"!==typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),c8="function"===typeof ArrayBuffer,l8=e=>"function"===typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,u8=({type:e,data:t},r,n)=>s8&&t instanceof Blob?r?n(t):d8(t,n):c8&&(t instanceof ArrayBuffer||l8(t))?r?n(t):d8(new Blob([t]),n):n(i8[e]+(t||"")),d8=(e,t)=>{const r=new FileReader;return r.onload=function(){const e=r.result.split(",")[1];t("b"+(e||""))},r.readAsDataURL(e)};function h8(e){return e instanceof Uint8Array?e:e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}let f8;function p8(e,t){return s8&&e.data instanceof Blob?e.data.arrayBuffer().then(h8).then(t):c8&&(e.data instanceof ArrayBuffer||l8(e.data))?t(h8(e.data)):void u8(e,!1,(e=>{f8||(f8=new TextEncoder),t(f8.encode(e))}))}const m8="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",g8="undefined"===typeof Uint8Array?[]:new Uint8Array(256);for(let r=0;r<64;r++)g8[m8.charCodeAt(r)]=r;const v8="function"===typeof ArrayBuffer,y8=(e,t)=>{if("string"!==typeof e)return{type:"message",data:w8(e,t)};const r=e.charAt(0);if("b"===r)return{type:"message",data:b8(e.substring(1),t)};return o8[r]?e.length>1?{type:o8[r],data:e.substring(1)}:{type:o8[r]}:a8},b8=(e,t)=>{if(v8){const r=(e=>{let t,r,n,i,o,a=.75*e.length,s=e.length,c=0;"="===e[e.length-1]&&(a--,"="===e[e.length-2]&&a--);const l=new ArrayBuffer(a),u=new Uint8Array(l);for(t=0;t>4,u[c++]=(15&n)<<4|i>>2,u[c++]=(3&i)<<6|63&o;return l})(e);return w8(r,t)}return{base64:!0,data:e}},w8=(e,t)=>"blob"===t?e instanceof Blob?e:new Blob([e]):e instanceof ArrayBuffer?e:e.buffer,x8=String.fromCharCode(30);let _8;function k8(e){if(e)return function(e){for(var t in k8.prototype)e[t]=k8.prototype[t];return e}(e)}k8.prototype.on=k8.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},k8.prototype.once=function(e,t){function r(){this.off(e,r),t.apply(this,arguments)}return r.fn=t,this.on(e,r),this},k8.prototype.off=k8.prototype.removeListener=k8.prototype.removeAllListeners=k8.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var r,n=this._callbacks["$"+e];if(!n)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var i=0;i(e.hasOwnProperty(r)&&(t[r]=e[r]),t)),{})}const A8=S8.setTimeout,P8=S8.clearTimeout;function O8(e,t){t.useNativeTimers?(e.setTimeoutFn=A8.bind(S8),e.clearTimeoutFn=P8.bind(S8)):(e.setTimeoutFn=S8.setTimeout.bind(S8),e.clearTimeoutFn=S8.clearTimeout.bind(S8))}class T8 extends Error{constructor(e,t,r){super(e),this.description=t,this.context=r,this.type="TransportError"}}class j8 extends k8{constructor(e){super(),this.writable=!1,O8(this,e),this.opts=e,this.query=e.query,this.socket=e.socket}onError(e,t,r){return super.emitReserved("error",new T8(e,t,r)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this}send(e){"open"===this.readyState&&this.write(e)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const t=y8(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){const e=this.opts.hostname;return-1===e.indexOf(":")?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&Number(443!==this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""}_query(e){const t=function(e){let t="";for(let r in e)e.hasOwnProperty(r)&&(t.length&&(t+="&"),t+=encodeURIComponent(r)+"="+encodeURIComponent(e[r]));return t}(e);return t.length?"?"+t:""}}const C8="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),R8=64,I8={};let M8,L8=0,N8=0;function D8(e){let t="";do{t=C8[e%R8]+t,e=Math.floor(e/R8)}while(e>0);return t}function z8(){const e=D8(+new Date);return e!==M8?(L8=0,M8=e):e+"."+D8(L8++)}for(;N8{var e;3===r.readyState&&(null===(e=this.opts.cookieJar)||void 0===e||e.parseCookies(r)),4===r.readyState&&(200===r.status||1223===r.status?this.onLoad():this.setTimeoutFn((()=>{this.onError("number"===typeof r.status?r.status:0)}),0))},r.send(this.data)}catch(pge){return void this.setTimeoutFn((()=>{this.onError(pge)}),0)}"undefined"!==typeof document&&(this.index=V8.requestsCount++,V8.requests[this.index]=this)}onError(e){this.emitReserved("error",e,this.xhr),this.cleanup(!0)}cleanup(e){if("undefined"!==typeof this.xhr&&null!==this.xhr){if(this.xhr.onreadystatechange=$8,e)try{this.xhr.abort()}catch(pge){}"undefined"!==typeof document&&delete V8.requests[this.index],this.xhr=null}}onLoad(){const e=this.xhr.responseText;null!==e&&(this.emitReserved("data",e),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}}if(V8.requestsCount=0,V8.requests={},"undefined"!==typeof document)if("function"===typeof attachEvent)attachEvent("onunload",q8);else if("function"===typeof addEventListener){addEventListener("onpagehide"in S8?"pagehide":"unload",q8,!1)}function q8(){for(let e in V8.requests)V8.requests.hasOwnProperty(e)&&V8.requests[e].abort()}const K8="function"===typeof Promise&&"function"===typeof Promise.resolve?e=>Promise.resolve().then(e):(e,t)=>t(e,0),W8=S8.WebSocket||S8.MozWebSocket;r(9673).Buffer;const G8="undefined"!==typeof navigator&&"string"===typeof navigator.product&&"reactnative"===navigator.product.toLowerCase();function Z8(e,t){return"message"===e.type&&"string"!==typeof e.data&&t[0]>=48&&t[0]<=54}const Y8={websocket:class extends j8{constructor(e){super(e),this.supportsBinary=!e.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const e=this.uri(),t=this.opts.protocols,r=G8?{}:E8(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=G8?new W8(e,t,r):t?new W8(e,t):new W8(e)}catch(kne){return this.emitReserved("error",kne)}this.ws.binaryType=this.socket.binaryType||"arraybuffer",this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t{try{this.ws.send(e)}catch(pge){}n&&K8((()=>{this.writable=!0,this.emitReserved("drain")}),this.setTimeoutFn)}))}}doClose(){"undefined"!==typeof this.ws&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=z8()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}check(){return!!W8}},webtransport:class extends j8{get name(){return"webtransport"}doOpen(){"function"===typeof WebTransport&&(this.transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name]),this.transport.closed.then((()=>{this.onClose()})).catch((e=>{this.onError("webtransport error",e)})),this.transport.ready.then((()=>{this.transport.createBidirectionalStream().then((e=>{const t=e.readable.getReader();let r;this.writer=e.writable.getWriter();const n=()=>{t.read().then((({done:e,value:t})=>{e||(r||1!==t.byteLength||54!==t[0]?(this.onPacket(function(e,t,r){_8||(_8=new TextDecoder);const n=t||e[0]<48||e[0]>54;return y8(n?e:_8.decode(e),r)}(t,r,"arraybuffer")),r=!1):r=!0,n())})).catch((e=>{}))};n();const i=this.query.sid?`0{"sid":"${this.query.sid}"}`:"0";this.writer.write((new TextEncoder).encode(i)).then((()=>this.onOpen()))}))})))}write(e){this.writable=!1;for(let t=0;t{Z8(r,e)&&this.writer.write(Uint8Array.of(54)),this.writer.write(e).then((()=>{n&&K8((()=>{this.writable=!0,this.emitReserved("drain")}),this.setTimeoutFn)}))}))}}doClose(){var e;null===(e=this.transport)||void 0===e||e.close()}},polling:class extends j8{constructor(e){if(super(e),this.polling=!1,"undefined"!==typeof location){const t="https:"===location.protocol;let r=location.port;r||(r=t?"443":"80"),this.xd="undefined"!==typeof location&&e.hostname!==location.hostname||r!==e.port}const t=e&&e.forceBase64;this.supportsBinary=H8&&!t,this.opts.withCredentials&&(this.cookieJar=void 0)}get name(){return"polling"}doOpen(){this.poll()}pause(e){this.readyState="pausing";const t=()=>{this.readyState="paused",e()};if(this.polling||!this.writable){let e=0;this.polling&&(e++,this.once("pollComplete",(function(){--e||t()}))),this.writable||(e++,this.once("drain",(function(){--e||t()})))}else t()}poll(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){((e,t)=>{const r=e.split(x8),n=[];for(let i=0;i{if("opening"===this.readyState&&"open"===e.type&&this.onOpen(),"close"===e.type)return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(e)})),"closed"!==this.readyState&&(this.polling=!1,this.emitReserved("pollComplete"),"open"===this.readyState&&this.poll())}doClose(){const e=()=>{this.write([{type:"close"}])};"open"===this.readyState?e():this.once("open",e)}write(e){this.writable=!1,((e,t)=>{const r=e.length,n=new Array(r);let i=0;e.forEach(((e,o)=>{u8(e,!1,(e=>{n[o]=e,++i===r&&t(n.join(x8))}))}))})(e,(e=>{this.doWrite(e,(()=>{this.writable=!0,this.emitReserved("drain")}))}))}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return!1!==this.opts.timestampRequests&&(t[this.opts.timestampParam]=z8()),this.supportsBinary||t.sid||(t.b64=1),this.createUri(e,t)}request(e={}){return Object.assign(e,{xd:this.xd,cookieJar:this.cookieJar},this.opts),new V8(this.uri(),e)}doWrite(e,t){const r=this.request({method:"POST",data:e});r.on("success",t),r.on("error",((e,t)=>{this.onError("xhr post error",e,t)}))}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",((e,t)=>{this.onError("xhr poll error",e,t)})),this.pollXhr=e}}},X8=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,J8=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Q8(e){const t=e,r=e.indexOf("["),n=e.indexOf("]");-1!=r&&-1!=n&&(e=e.substring(0,r)+e.substring(r,n).replace(/:/g,";")+e.substring(n,e.length));let i=X8.exec(e||""),o={},a=14;for(;a--;)o[J8[a]]=i[a]||"";return-1!=r&&-1!=n&&(o.source=t,o.host=o.host.substring(1,o.host.length-1).replace(/;/g,":"),o.authority=o.authority.replace("[","").replace("]","").replace(/;/g,":"),o.ipv6uri=!0),o.pathNames=function(e,t){const r=/\/{2,9}/g,n=t.replace(r,"/").split("/");"/"!=t.slice(0,1)&&0!==t.length||n.splice(0,1);"/"==t.slice(-1)&&n.splice(n.length-1,1);return n}(0,o.path),o.queryKey=function(e,t){const r={};return t.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,(function(e,t,n){t&&(r[t]=n)})),r}(0,o.query),o}class e9 extends k8{constructor(e,t={}){super(),this.writeBuffer=[],e&&"object"===typeof e&&(t=e,e=null),e?(e=Q8(e),t.hostname=e.host,t.secure="https"===e.protocol||"wss"===e.protocol,t.port=e.port,e.query&&(t.query=e.query)):t.host&&(t.hostname=Q8(t.host).host),O8(this,t),this.secure=null!=t.secure?t.secure:"undefined"!==typeof location&&"https:"===location.protocol,t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||("undefined"!==typeof location?location.hostname:"localhost"),this.port=t.port||("undefined"!==typeof location&&location.port?location.port:this.secure?"443":"80"),this.transports=t.transports||["polling","websocket","webtransport"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),"string"===typeof this.opts.query&&(this.opts.query=function(e){let t={},r=e.split("&");for(let n=0,i=r.length;n{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),"localhost"!==this.hostname&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=4,t.transport=e,this.id&&(t.sid=this.id);const r=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new Y8[e](r)}open(){let e;if(this.opts.rememberUpgrade&&e9.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket"))e="websocket";else{if(0===this.transports.length)return void this.setTimeoutFn((()=>{this.emitReserved("error","No transports available")}),0);e=this.transports[0]}this.readyState="opening";try{e=this.createTransport(e)}catch(pge){return this.transports.shift(),void this.open()}e.open(),this.setTransport(e)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",(e=>this.onClose("transport close",e)))}probe(e){let t=this.createTransport(e),r=!1;e9.priorWebsocketSuccess=!1;const n=()=>{r||(t.send([{type:"ping",data:"probe"}]),t.once("packet",(e=>{if(!r)if("pong"===e.type&&"probe"===e.data){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;e9.priorWebsocketSuccess="websocket"===t.name,this.transport.pause((()=>{r||"closed"!==this.readyState&&(l(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())}))}else{const e=new Error("probe error");e.transport=t.name,this.emitReserved("upgradeError",e)}})))};function i(){r||(r=!0,l(),t.close(),t=null)}const o=e=>{const r=new Error("probe error: "+e);r.transport=t.name,i(),this.emitReserved("upgradeError",r)};function a(){o("transport closed")}function s(){o("socket closed")}function c(e){t&&e.name!==t.name&&i()}const l=()=>{t.removeListener("open",n),t.removeListener("error",o),t.removeListener("close",a),this.off("close",s),this.off("upgrading",c)};t.once("open",n),t.once("error",o),t.once("close",a),this.once("close",s),this.once("upgrading",c),-1!==this.upgrades.indexOf("webtransport")&&"webtransport"!==e?this.setTimeoutFn((()=>{r||t.open()}),200):t.open()}onOpen(){if(this.readyState="open",e9.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush(),"open"===this.readyState&&this.opts.upgrade){let e=0;const t=this.upgrades.length;for(;e{this.onClose("ping timeout")}),this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}flush(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this.getWritablePackets();this.transport.send(e),this.prevBufferLen=e.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;let e=1;for(let r=0;r=57344?r+=3:(n++,r+=4);return r}(t):Math.ceil(1.33*(t.byteLength||t.size))),r>0&&e>this.maxPayload)return this.writeBuffer.slice(0,r);e+=2}var t;return this.writeBuffer}write(e,t,r){return this.sendPacket("message",e,t,r),this}send(e,t,r){return this.sendPacket("message",e,t,r),this}sendPacket(e,t,r,n){if("function"===typeof t&&(n=t,t=void 0),"function"===typeof r&&(n=r,r=null),"closing"===this.readyState||"closed"===this.readyState)return;(r=r||{}).compress=!1!==r.compress;const i={type:e,data:t,options:r};this.emitReserved("packetCreate",i),this.writeBuffer.push(i),n&&this.once("flush",n),this.flush()}close(){const e=()=>{this.onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},r=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",(()=>{this.upgrading?r():e()})):this.upgrading?r():e()),this}onError(e){e9.priorWebsocketSuccess=!1,this.emitReserved("error",e),this.onClose("transport error",e)}onClose(e,t){"opening"!==this.readyState&&"open"!==this.readyState&&"closing"!==this.readyState||(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),"function"===typeof removeEventListener&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(e){const t=[];let r=0;const n=e.length;for(;r"function"===typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer,n9=Object.prototype.toString,i9="function"===typeof Blob||"undefined"!==typeof Blob&&"[object BlobConstructor]"===n9.call(Blob),o9="function"===typeof File||"undefined"!==typeof File&&"[object FileConstructor]"===n9.call(File);function a9(e){return t9&&(e instanceof ArrayBuffer||r9(e))||i9&&e instanceof Blob||o9&&e instanceof File}function s9(e,t){if(!e||"object"!==typeof e)return!1;if(Array.isArray(e)){for(let t=0,r=e.length;t=0&&e.num{delete this.acks[e];for(let t=0;t{this.io.clearTimeoutFn(i),t.apply(this,[null,...e])}}emitWithAck(e,...t){const r=void 0!==this.flags.timeout||void 0!==this._opts.ackTimeout;return new Promise(((n,i)=>{t.push(((e,t)=>r?e?i(e):n(t):n(e))),this.emit(e,...t)}))}_addToQueue(e){let t;"function"===typeof e[e.length-1]&&(t=e.pop());const r={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push(((e,...n)=>{if(r!==this._queue[0])return;return null!==e?r.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(e)):(this._queue.shift(),t&&t(null,...n)),r.pending=!1,this._drainQueue()})),this._queue.push(r),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||0===this._queue.length)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){"function"==typeof this.auth?this.auth((e=>{this._sendConnectPacket(e)})):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:p9.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t)}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case p9.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case p9.EVENT:case p9.BINARY_EVENT:this.onevent(e);break;case p9.ACK:case p9.BINARY_ACK:this.onack(e);break;case p9.DISCONNECT:this.ondisconnect();break;case p9.CONNECT_ERROR:this.destroy();const t=new Error(e.data.message);t.data=e.data.data,this.emitReserved("connect_error",t)}}onevent(e){const t=e.data||[];null!=e.id&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const r of t)r.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&"string"===typeof e[e.length-1]&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let r=!1;return function(...n){r||(r=!0,t.packet({type:p9.ACK,id:e,data:n}))}}onack(e){const t=this.acks[e.id];"function"===typeof t&&(t.apply(this,e.data),delete this.acks[e.id])}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach((e=>this.emitEvent(e))),this.receiveBuffer=[],this.sendBuffer.forEach((e=>{this.notifyOutgoingListeners(e),this.packet(e)})),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach((e=>e())),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:p9.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let r=0;r0&&e.jitter<=1?e.jitter:0,this.attempts=0}_9.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),r=Math.floor(t*this.jitter*e);e=0==(1&Math.floor(10*t))?e-r:e+r}return 0|Math.min(e,this.max)},_9.prototype.reset=function(){this.attempts=0},_9.prototype.setMin=function(e){this.ms=e},_9.prototype.setMax=function(e){this.max=e},_9.prototype.setJitter=function(e){this.jitter=e};class k9 extends k8{constructor(e,t){var r;super(),this.nsps={},this.subs=[],e&&"object"===typeof e&&(t=e,e=void 0),(t=t||{}).path=t.path||"/socket.io",this.opts=t,O8(this,t),this.reconnection(!1!==t.reconnection),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor(null!==(r=t.randomizationFactor)&&void 0!==r?r:.5),this.backoff=new _9({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(null==t.timeout?2e4:t.timeout),this._readyState="closed",this.uri=e;const i=t.parser||n;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=!1!==t.autoConnect,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,this):this._reconnection}reconnectionAttempts(e){return void 0===e?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return void 0===e?this._reconnectionDelay:(this._reconnectionDelay=e,null===(t=this.backoff)||void 0===t||t.setMin(e),this)}randomizationFactor(e){var t;return void 0===e?this._randomizationFactor:(this._randomizationFactor=e,null===(t=this.backoff)||void 0===t||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return void 0===e?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,null===(t=this.backoff)||void 0===t||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&0===this.backoff.attempts&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new e9(this.uri,this.opts);const t=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;const n=b9(t,"open",(function(){r.onopen(),e&&e()})),i=t=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",t),e?e(t):this.maybeReconnectOnOpen()},o=b9(t,"error",i);if(!1!==this._timeout){const e=this._timeout,r=this.setTimeoutFn((()=>{n(),i(new Error("timeout")),t.close()}),e);this.opts.autoUnref&&r.unref(),this.subs.push((()=>{this.clearTimeoutFn(r)}))}return this.subs.push(n),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(b9(e,"ping",this.onping.bind(this)),b9(e,"data",this.ondata.bind(this)),b9(e,"error",this.onerror.bind(this)),b9(e,"close",this.onclose.bind(this)),b9(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(pge){this.onclose("parse error",pge)}}ondecoded(e){K8((()=>{this.emitReserved("packet",e)}),this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let r=this.nsps[e];return r?this._autoConnect&&!r.active&&r.connect():(r=new x9(this,e,t),this.nsps[e]=r),r}_destroy(e){const t=Object.keys(this.nsps);for(const r of t){if(this.nsps[r].active)return}this._close()}_packet(e){const t=this.encoder.encode(e);for(let r=0;re())),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(e,t){this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const r=this.setTimeoutFn((()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),e.skipReconnect||e.open((t=>{t?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",t)):e.onreconnect()})))}),t);this.opts.autoUnref&&r.unref(),this.subs.push((()=>{this.clearTimeoutFn(r)}))}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const S9={};function E9(e,t){"object"===typeof e&&(t=e,e=void 0);const r=function(e,t="",r){let n=e;r=r||"undefined"!==typeof location&&location,null==e&&(e=r.protocol+"//"+r.host),"string"===typeof e&&("/"===e.charAt(0)&&(e="/"===e.charAt(1)?r.protocol+e:r.host+e),/^(https?|wss?):\/\//.test(e)||(e="undefined"!==typeof r?r.protocol+"//"+e:"https://"+e),n=Q8(e)),n.port||(/^(http|ws)$/.test(n.protocol)?n.port="80":/^(http|ws)s$/.test(n.protocol)&&(n.port="443")),n.path=n.path||"/";const i=-1!==n.host.indexOf(":")?"["+n.host+"]":n.host;return n.id=n.protocol+"://"+i+":"+n.port+t,n.href=n.protocol+"://"+i+(r&&r.port===n.port?"":":"+n.port),n}(e,(t=t||{}).path||"/socket.io"),n=r.source,i=r.id,o=r.path,a=S9[i]&&o in S9[i].nsps;let s;return t.forceNew||t["force new connection"]||!1===t.multiplex||a?s=new k9(n,t):(S9[i]||(S9[i]=new k9(n,t)),s=S9[i]),r.query&&!t.query&&(t.query=r.queryKey),s.socket(r.path,t)}Object.assign(E9,{Manager:k9,Socket:x9,io:E9,connect:E9});var A9=r(1224),P9=r.n(A9),O9=r(9673).Buffer;const T9=new zc.ec("secp256k1"),j9=r.g.crypto||r.g.msCrypto||{},C9=j9.subtle||j9.webkitSubtle,R9=O9.from("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141","hex"),I9=O9.alloc(32,0);function M9(e,t){if(!e)throw new Error(t||"Assertion failed")}function L9(e){return!!function(e){return O9.isBuffer(e)&&32===e.length}(e)&&(e.compare(I9)>0&&e.compare(R9)<0)}function N9(e){const t=new Uint8Array(e);return"undefined"===typeof j9.getRandomValues?O9.from(P9().randomBytes(e)):(j9.getRandomValues(t),O9.from(t))}async function D9(e){if(C9){const t=await C9.digest("SHA-512",e);return new Uint8Array(t)}const t=P9().createHash("sha512").update(e).digest();return new Uint8Array(t)}function z9(e){return async function(t,r,n){if(C9){const i={name:"AES-CBC"},o=await C9.importKey("raw",r,i,!1,[e]),a={name:"AES-CBC",iv:t},s=await C9[e](a,o,n);return O9.from(new Uint8Array(s))}if("encrypt"===e){const e=P9().createCipheriv("aes-256-cbc",r,t),i=e.update(n),o=e.final();return O9.concat([i,o])}if("decrypt"===e){const e=P9().createDecipheriv("aes-256-cbc",r,t),i=e.update(n),o=e.final();return O9.concat([i,o])}throw new Error(`Unsupported operation: ${e}`)}}const B9=z9("encrypt"),U9=z9("decrypt");async function F9(e,t){if(C9){const r={name:"HMAC",hash:{name:"SHA-256"}},n=await C9.importKey("raw",new Uint8Array(e),r,!1,["sign","verify"]),i=await C9.sign("HMAC",n,t);return O9.from(new Uint8Array(i))}const r=P9().createHmac("sha256",O9.from(e));r.update(t);return r.digest()}const $9=function(){let e=N9(32);for(;!L9(e);)e=N9(32);return e},H9=function(e){return M9(32===e.length,"Bad private key"),M9(L9(e),"Bad private key"),O9.from(T9.keyFromPrivate(e).getPublic("array"))},V9=async function(e,t){return M9(32===e.length,"Bad private key"),M9(L9(e),"Bad private key"),M9(t.length>0,"Message should not be empty"),M9(t.length<=32,"Message is too long"),O9.from(T9.sign(t,e,{canonical:!0}).toDER())},q9=async function(e,t){M9(O9.isBuffer(e),"Bad private key"),M9(O9.isBuffer(t),"Bad public key"),M9(32===e.length,"Bad private key"),M9(L9(e),"Bad private key"),M9(65===t.length||33===t.length,"Bad public key"),65===t.length&&M9(4===t[0],"Bad public key"),33===t.length&&M9(2===t[0]||3===t[0],"Bad public key");const r=T9.keyFromPrivate(e),n=T9.keyFromPublic(t),i=r.derive(n.getPublic());return O9.from(i.toArray())},K9=async function(e,t){M9(O9.isBuffer(e),"Bad private key"),M9(O9.isBuffer(t),"Bad public key"),M9(32===e.length,"Bad private key"),M9(L9(e),"Bad private key"),M9(65===t.length||33===t.length,"Bad public key"),65===t.length&&M9(4===t[0],"Bad public key"),33===t.length&&M9(2===t[0]||3===t[0],"Bad public key");const r=T9.keyFromPrivate(e),n=T9.keyFromPublic(t),i=r.derive(n.getPublic());return O9.from(i.toString(16,64),"hex")},W9=async function(e,t,r){let n=(r=r||{}).ephemPrivateKey||N9(32);for(;!L9(n);)n=r.ephemPrivateKey||N9(32);const i=H9(n),o=await q9(n,e),a=await D9(o),s=r.iv||N9(16),c=a.slice(0,32),l=a.slice(32),u=await B9(s,O9.from(c),t),d=O9.concat([s,i,u]);return{iv:s,ephemPublicKey:i,ciphertext:u,mac:await F9(O9.from(l),d)}},G9=async function(e,t,r){const n=null!==r&&void 0!==r&&r,i=n?K9:q9,o=await i(e,t.ephemPublicKey),a=await D9(o),s=a.slice(0,32),c=a.slice(32),l=O9.concat([t.iv,t.ephemPublicKey,t.ciphertext]),u=await async function(e,t,r){return function(e,t){if(e.length!==t.length)return!1;let r=0;for(let n=0;n0||e._addEL.internal.length>0}function E7(e,t,r){e._addEL[t].push(r),function(e){if(!e._iL&&S7(e)){var t=function(t){e._addEL[t.type].forEach((function(r){var n=1e5,i=r.time-n;(t.time>=i||"server"===e.method.type)&&r.fn(t.data)}))},r=e.method.microSeconds();e._prepP?e._prepP.then((function(){e._iL=!0,e.method.onMessage(e._state,t,r)})):(e._iL=!0,e.method.onMessage(e._state,t,r))}}(e)}function A7(e,t,r){e._addEL[t]=e._addEL[t].filter((function(e){return e!==r})),function(e){if(e._iL&&!S7(e)){e._iL=!1;var t=e.method.microSeconds();e.method.onMessage(e._state,null,t)}}(e)}function P7(e){this.message=e}_7._pubkey=!0,_7.prototype={postMessage:function(e){if(this.closed)throw new Error("BroadcastChannel.postMessage(): Cannot post message after channel has closed "+JSON.stringify(e));return k7(this,"message",e)},postInternal:function(e){return k7(this,"internal",e)},set onmessage(e){var t={time:this.method.microSeconds(),fn:e};A7(this,"message",this._onML),e&&"function"===typeof e?(this._onML=t,E7(this,"message",t)):this._onML=null},addEventListener:function(e,t){E7(this,e,{time:this.method.microSeconds(),fn:t})},removeEventListener:function(e,t){A7(this,e,this._addEL[e].find((function(e){return e.fn===t})))},close:function(){var e=this;if(!this.closed){w7.delete(this),this.closed=!0;var t=this._prepP?this._prepP:O4;return this._onML=null,this._addEL.message=[],t.then((function(){return Promise.all(Array.from(e._uMP))})).then((function(){return Promise.all(e._befC.map((function(e){return e()})))})).then((function(){return e.method.close(e._state)}))}},get type(){return this.method.type},get isClosed(){return this.closed}},P7.prototype=new Error,P7.prototype.name="InvalidCharacterError";var O7="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(e){var t=String(e).replace(/=+$/,"");if(t.length%4==1)throw new P7("'atob' failed: The string to be decoded is not correctly encoded.");for(var r,n,i=0,o=0,a="";n=t.charAt(o++);~n&&(r=i%4?64*r+n:n,i++%4)?a+=String.fromCharCode(255&r>>(-2*i&6)):0)n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(n);return a};function T7(e){this.message=e}T7.prototype=new Error,T7.prototype.name="InvalidTokenError";const j7=function(e,t){if("string"!=typeof e)throw new T7("Invalid token specified");var r=!0===(t=t||{}).header?0:1;try{return JSON.parse(function(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return function(e){return decodeURIComponent(O7(e).replace(/(.)/g,(function(e,t){var r=t.charCodeAt(0).toString(16).toUpperCase();return r.length<2&&(r="0"+r),"%"+r})))}(t)}catch(e){return O7(t)}}(e.split(".")[r]))}catch(e){throw new T7("Invalid token specified: "+e.message)}},C7={MAINNET:"mainnet",TESTNET:"testnet",CYAN:"cyan",AQUA:"aqua",CELESTE:"celeste"},R7={SAPPHIRE_DEVNET:"sapphire_devnet",SAPPHIRE_TESTNET:"sapphire_testnet",SAPPHIRE_MAINNET:"sapphire_mainnet"},I7=[C7.AQUA,C7.CELESTE,C7.CYAN],M7={[C7.AQUA]:{migrationCompleted:!1,networkIdentifier:"aqua",networkMigratedTo:R7.SAPPHIRE_MAINNET},[C7.CELESTE]:{migrationCompleted:!1,networkIdentifier:"celeste",networkMigratedTo:R7.SAPPHIRE_MAINNET},[C7.CYAN]:{migrationCompleted:!1,networkIdentifier:"cyan",networkMigratedTo:R7.SAPPHIRE_MAINNET},[C7.MAINNET]:{migrationCompleted:!1,networkIdentifier:"mainnet",networkMigratedTo:R7.SAPPHIRE_MAINNET},[C7.TESTNET]:{migrationCompleted:!0,networkIdentifier:"teal",networkMigratedTo:R7.SAPPHIRE_TESTNET}},L7={[C7.MAINNET]:"https://signer.tor.us",[C7.TESTNET]:"https://signer.tor.us",[C7.CYAN]:"https://signer-polygon.tor.us",[C7.AQUA]:"https://signer-polygon.tor.us",[C7.CELESTE]:"https://signer-polygon.tor.us"},N7={[R7.SAPPHIRE_DEVNET]:["https://sapphire-dev-2-1.authnetwork.dev","https://sapphire-dev-2-2.authnetwork.dev","https://sapphire-dev-2-3.authnetwork.dev","https://sapphire-dev-2-4.authnetwork.dev","https://sapphire-dev-2-5.authnetwork.dev"],[R7.SAPPHIRE_TESTNET]:["https://sapphire-dev-2-1.authnetwork.dev","https://sapphire-dev-2-2.authnetwork.dev","https://sapphire-dev-2-3.authnetwork.dev","https://sapphire-dev-2-4.authnetwork.dev","https://sapphire-dev-2-5.authnetwork.dev"],[R7.SAPPHIRE_MAINNET]:["https://sapphire-1.auth.network","https://sapphire-2.auth.network","https://sapphire-3.auth.network","https://sapphire-4.auth.network","https://sapphire-5.auth.network"]},D7=(e,t)=>{const r=N7[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=M7[t];return r.map((e=>n&&n.networkIdentifier?`${e}/sss/${n.networkIdentifier}/jrpc`:`${e}/sss/jrpc`))},z7=(e,t)=>{const r=N7[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=M7[t];return r.map((e=>n&&n.networkIdentifier?`${e}/rss/${n.networkIdentifier}`:`${e}/rss`))},B7=(e,t)=>{const r=N7[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=M7[t];return r.map((e=>n&&n.networkIdentifier?`${e}/tss/${n.networkIdentifier}`:`${e}/tss`))},U7={currentEpoch:"19",torusNodeEndpoints:["https://torus-19.torusnode.com/jrpc","https://torus-node.ens.domains/jrpc","https://torus-node.matic.network/jrpc","https://torus.zilliqa.network/jrpc","https://torus-mainnet.cosmos.network/jrpc","https://torus2.etherscan.com/jrpc","https://torus-node-v2.skalelabs.com/jrpc","https://torus-node.binancex.dev/jrpc","https://torusnode.ont.io/jrpc"],torusIndexes:[1,2,3,4,5,6,7,8,9],torusNodePub:[{X:"bbe83c64177c3775550e6ba6ac2bc059f6847d644c9e4894e42c60d7974d8c2b",Y:"82b49a7caf70def38cdad2740af45c1e4f969650105c5019a29bb18b21a9acb5"},{X:"c208cac4ef9a47d386097a9c915b28e9cb89213abee8d26a17198ee261201b0d",Y:"c7db2fe4631109f40833de9dc78d07e35706549ee48fa557b33e4e75e1047873"},{X:"ca1766bb426d4ca5582818a0c5439d560ea64f5baa060793ab29dd3d0ceacfe",Y:"d46c1d08c40e1306e1bca328c2287b8268166b11a1ba4b8442ea2ad0c5e32152"},{X:"c3934dd2f6f4b3d2e1e398cc501e143c1e1a381b52feb6d1525af34d16253768",Y:"71f5141a5035799099f5ea3e241e66946bc55dc857ac3bd7d6fcdb8dcd3eeeef"},{X:"22e66f1929631d00bf026227581597f085fd94fd952fc0dca9f0833398b5c064",Y:"6088b3912e10a1e9d50355a609c10db7d188f16a2e2fd7357e51bf4f6a74f0a1"},{X:"9dc9fa410f3ce9eb70df70cdea00a49f2c4cc7a31c08c0dab5f863ed35ff5139",Y:"627a291cb87a75c61da3f65d6818e1e05e360217179817ed27e8c73bca7ec122"},{X:"118b9fc07e97b096d899b9f6658463ce6a8caa64038e37fc969df4e6023dd8c6",Y:"baf9fa4e51770f4796ea165dd03a769b8606681a38954a0a92c4cbffd6609ce9"},{X:"8a6d8b925da15a273dec3d8f8395ec35cd6878f274b2b180e4e106999db64043",Y:"96f67f870c157743da0b1eb84d89bf30500d74dc84c11f501ee1cb013acc8c46"},{X:"39cecb62e863729f572f7dfc46c24867981bf04bb405fed0df39e33984bfade5",Y:"61c2364434012e68a2be2e9952805037e52629d7762fafc8e10e9fb5bad8f790"}]},F7={[R7.SAPPHIRE_MAINNET]:[{X:"e0925898fee0e9e941fdca7ee88deec99939ae9407e923535c4d4a3a3ff8b052",Y:"54b9fea924e3f3e40791f9987f4234ae4222412d65b74068032fa5d8b63375c1"},{X:"9124cf1e280aab32ba50dffd2de81cecabc13d82d2c1fe9de82f3b3523f9b637",Y:"fca939a1ceb42ce745c55b21ef094f543b457630cb63a94ef4f1afeee2b1f107"},{X:"555f681a63d469cc6c3a58a97e29ebd277425f0e6159708e7c7bf05f18f89476",Y:"606f2bcc0884fa5b64366fc3e8362e4939841b56acd60d5f4553cf36b891ac4e"},{X:"2b5f58d8e340f1ab922e89b3a69a68930edfe51364644a456335e179bc130128",Y:"4b4daa05939426e3cbe7d08f0e773d2bf36f64c00d04620ee6df2a7af4d2247"},{X:"3ecbb6a68afe72cf34ec6c0a12b5cb78a0d2e83ba402983b6adbc5f36219861a",Y:"dc1031c5cc8f0472bd521a62a64ebca9e163902c247bf05937daf4ae835091e4"}],[R7.SAPPHIRE_TESTNET]:[{X:"f74389b0a4c8d10d2a687ae575f69b20f412d41ab7f1fe6b358aa14871327247",Y:"54e3a73098ed9bced3ef8821736e9794f9264a1420c0c7ad15d2fa617ba35ef7"},{X:"bc38813a6873e526087918507c78fc3a61624670ee851ecfb4f3bef55d027b5a",Y:"ac4b21229f662a0aefdfdac21cf17c3261a392c74a8790db218b34e3e4c1d56a"},{X:"b56541684ea5fa40c8337b7688d502f0e9e092098962ad344c34e94f06d293fb",Y:"759a998cef79d389082f9a75061a29190eec0cac99b8c25ddcf6b58569dad55c"},{X:"7bcb058d4c6ffc6ba4bfdfd93d141af35a66338a62c7c27cdad2ae3f8289b767",Y:"336ab1935e41ed4719e162587f0ab55518db4207a1eb36cc72303f1b86689d2b"},{X:"bf12a136ef94399ea098f926f04e26a4ec4ac70f69cce274e8893704c4951773",Y:"bdd44828020f52ce510e026338216ada184a6867eb4e19fb4c2d495d4a7e15e4"}],[R7.SAPPHIRE_DEVNET]:[{X:"f74389b0a4c8d10d2a687ae575f69b20f412d41ab7f1fe6b358aa14871327247",Y:"54e3a73098ed9bced3ef8821736e9794f9264a1420c0c7ad15d2fa617ba35ef7"},{X:"bc38813a6873e526087918507c78fc3a61624670ee851ecfb4f3bef55d027b5a",Y:"ac4b21229f662a0aefdfdac21cf17c3261a392c74a8790db218b34e3e4c1d56a"},{X:"b56541684ea5fa40c8337b7688d502f0e9e092098962ad344c34e94f06d293fb",Y:"759a998cef79d389082f9a75061a29190eec0cac99b8c25ddcf6b58569dad55c"},{X:"7bcb058d4c6ffc6ba4bfdfd93d141af35a66338a62c7c27cdad2ae3f8289b767",Y:"336ab1935e41ed4719e162587f0ab55518db4207a1eb36cc72303f1b86689d2b"},{X:"bf12a136ef94399ea098f926f04e26a4ec4ac70f69cce274e8893704c4951773",Y:"bdd44828020f52ce510e026338216ada184a6867eb4e19fb4c2d495d4a7e15e4"}]},$7=(e,t)=>({currentEpoch:"1",torusNodeEndpoints:D7(e,t),torusNodeSSSEndpoints:D7(e,t),torusNodeRSSEndpoints:z7(e,t),torusNodeTSSEndpoints:B7(e,t),torusIndexes:[1,2,3,4,5],torusNodePub:F7[e]});const H7=c4().getLogger("fnd");class V7{constructor(){let{network:e=R7.SAPPHIRE_MAINNET,fndServerEndpoint:t,enableLogging:r=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};i4(this,"fndServerEndpoint","https://fnd.tor.us/node-details"),i4(this,"_currentEpoch","1"),i4(this,"_torusNodeEndpoints",[]),i4(this,"_torusNodeRSSEndpoints",[]),i4(this,"_torusNodeSSSEndpoints",[]),i4(this,"_torusNodeTSSEndpoints",[]),i4(this,"_torusNodePub",[]),i4(this,"_torusIndexes",[]),i4(this,"updated",void 0),i4(this,"network",void 0),this.network=e,this.updated=!1,t&&(this.fndServerEndpoint=t),r?H7.enableAll():H7.disableAll()}get _nodeDetails(){return{currentEpoch:this._currentEpoch,torusNodeEndpoints:this._torusNodeEndpoints,torusNodeSSSEndpoints:this._torusNodeSSSEndpoints,torusNodeRSSEndpoints:this._torusNodeRSSEndpoints,torusNodeTSSEndpoints:this._torusNodeTSSEndpoints,torusNodePub:this._torusNodePub,torusIndexes:this._torusIndexes,updated:this.updated}}async getNodeDetails(e){let{verifier:t,verifierId:r}=e;try{if(this.updated&&!I7.includes(this.network))return this._nodeDetails;try{const{nodeDetails:e}=await _4(`${this.fndServerEndpoint}?network=${this.network}&verifier=${t}&verifierId=${r}`);return this.setNodeDetails(e),this._nodeDetails}catch(n){H7.error("Failed to fetch node details from server, using local.",n)}const e=function(e){if(Object.values(R7).includes(e))return $7(e);if(Object.values(C7).includes(e)){const t=M7[e];if(t.migrationCompleted)return $7(t.networkMigratedTo,e);if(e===C7.MAINNET)return U7}}(this.network);if(!e)throw new Error("Failed to fetch node details");return this.setNodeDetails(e),this._nodeDetails}catch(n){throw H7.error("Failed to fetch node details",n),n}}setNodeDetails(e){const{currentEpoch:t,torusNodeEndpoints:r,torusNodeSSSEndpoints:n,torusNodeRSSEndpoints:i,torusNodeTSSEndpoints:o,torusNodePub:a,torusIndexes:s}=e;this._torusNodeEndpoints=r,this._torusNodeSSSEndpoints=n||[],this._torusNodeRSSEndpoints=i||[],this._torusNodeTSSEndpoints=o||[],this._torusNodePub=a,this._torusIndexes=s,this._currentEpoch=t,this.updated=!0}}var q7=r(3924),K7=r.n(q7),W7=r(9673).Buffer;const G7="GetPubKeyOrKeyAssign",Z7="CommitmentRequest",Y7="ImportShare",X7="GetShareOrKeyAssign",J7="https://metadata.tor.us",Q7=(e,t)=>{let r=e;if("number"===typeof r&&(r=Array.from({length:r},((e,t)=>t))),t>r.length||t<=0)return[];if(t===r.length)return[r];if(1===t)return r.reduce(((e,t)=>[...e,[t]]),[]);const n=[];let i=[];for(let o=0;o<=r.length-t+1;o+=1){i=Q7(r.slice(o+1),t-1);for(let e=0;e{const r={};for(let n=0;n=8?o+=t[a].toUpperCase():o+=t[a];return o}function aee(e,t){const r=e.keyFromPrivate(t.toString("hex",64),"hex").getPublic().encode("hex",!1).slice(2);nee.info(r,"public key");return oee(`0x${iee(W7.from(r,"hex")).slice(26)}`)}function see(e,t,r){const n=e.keyFromPublic({x:t.toString("hex",64),y:r.toString("hex",64)}),i=n.getPublic().encode("hex",!1).slice(2);nee.info(n.getPublic().encode("hex",!1),"public key");return oee(`0x${iee(W7.from(i,"hex")).slice(26)}`)}nee.disableAll();class cee{constructor(e,t,r){i4(this,"x",void 0),i4(this,"y",void 0),i4(this,"ecCurve",void 0),this.x=new(K7())(e,"hex"),this.y=new(K7())(t,"hex"),this.ecCurve=r}encode(e){switch(e){case"arr":return W7.concat([W7.from("0x04","hex"),W7.from(this.x.toString("hex"),"hex"),W7.from(this.y.toString("hex"),"hex")]);case"elliptic-compressed":{const e=this.ecCurve.keyFromPublic({x:this.x.toString("hex",64),y:this.y.toString("hex",64)},"hex");return W7.from(e.getPublic(!0,"hex"))}default:throw new Error("encoding doesn't exist in Point")}}}class lee{constructor(e,t){i4(this,"share",void 0),i4(this,"shareIndex",void 0),this.share=new(K7())(t,"hex"),this.shareIndex=new(K7())(e,"hex")}static fromJSON(e){const{share:t,shareIndex:r}=e;return new lee(r,t)}toJSON(){return{share:this.share.toString("hex"),shareIndex:this.shareIndex.toString("hex")}}}class uee{constructor(e,t){i4(this,"polynomial",void 0),i4(this,"ecCurve",void 0),this.polynomial=e,this.ecCurve=t}getThreshold(){return this.polynomial.length}polyEval(e){const t=new(K7())(e,"hex");let r=new(K7())(t),n=new(K7())(0);n=n.add(this.polynomial[0]);for(let i=1;i"number"===typeof e?new(K7())(e):e instanceof K7()?e:"string"===typeof e?new(K7())(e,"hex"):e)),r={};for(let n=0;ne.eq(t)))?dee(e):t}const hee=e=>Array.from({length:e},(()=>new(K7())(0))),fee=(e,t,r)=>{let n=hee(r.length);const i=((e,t,r)=>{let n=new(K7())(1);const i=r[t].x;for(let o=r.length-1;o>=0;o-=1)if(t!==o){let t=new(K7())(i);t=t.sub(r[o].x),t=t.umod(e.curve.n),n=n.mul(t),n=n.umod(e.curve.n)}return n})(e,t,r);if(0===i.cmp(new(K7())(0)))throw new Error("Denominator for interpolationPoly is 0");n[0]=i.invm(e.curve.n);for(let o=0;o=0;a-=1){i[a+1]=i[a+1].add(n[a]).umod(e.curve.n);let t=new(K7())(r[o].x);t=t.mul(n[a]).umod(e.curve.n),i[a]=i[a].sub(t).umod(e.curve.n)}n=i}}return n},pee=(e,t)=>{const r=(e=>{const t=[...e];return t.sort(((e,t)=>e.x.cmp(t.x))),t})(t),n=hee(r.length);for(let i=0;it)throw new Error("deterministicShares in generateRandomPolynomial should be less or equal than degree to ensure an element of randomness");const o={};n.forEach((t=>{o[t.shareIndex.toString("hex",64)]=new cee(t.shareIndex,t.share,e)}));for(let a=0;a2&&void 0!==arguments[2]?arguments[2]:{};try{const n=await k4(`${e}/get`,t,r,{useAPIKey:!0});return n&&n.message?new(K7())(n.message,16):new(K7())(0)}catch(n){return c4().error("get metadata error",n),new(K7())(0)}}async function xee(e,t,r,n,i,o){let a;const s=arguments.length>6&&void 0!==arguments[6]&&arguments[6]?"getNonce":"getOrSetNonce";return a=o?function(e,t,r,n){const i=e.keyFromPrivate(n.toString("hex",64)),o={data:r,timestamp:new(K7())(~~(t+Date.now()/1e3)).toString(16)},a=i.sign(iee(W7.from(X9()(o),"utf8")).slice(2));return{pub_key_X:i.getPublic().getX().toString("hex",64),pub_key_Y:i.getPublic().getY().toString("hex",64),set_data:o,signature:W7.from(a.r.toString(16,64)+a.s.toString(16,64)+new(K7())("").toString(16,2),"hex").toString("base64")}}(t,r,s,o):{pub_key_X:n,pub_key_Y:i,set_data:{data:s}},k4(`${e}/get_or_set_nonce`,a,void 0,{useAPIKey:!0})}async function _ee(e,t,r,n,i,o){return xee(e,t,r,n,i,o,!0)}const kee={logRequestTracing:!1};class See extends Error{constructor(e){let{errors:t,responses:r,predicate:n}=e;super("Unable to resolve enough promises."),i4(this,"errors",void 0),i4(this,"responses",void 0),i4(this,"predicate",void 0),this.errors=t,this.responses=r,this.predicate=n}get message(){return`${super.message}. ${this.errors.length} errors: ${this.errors.map((e=>e.message||e)).join(", ")} and ${this.responses.length} responses: ${JSON.stringify(this.responses)}`}toString(){return this.message}}const Eee=(e,t)=>new Promise(((r,n)=>{let i=0;const o={resolved:!1},a=new Array(e.length).fill(void 0),s=new Array(e.length).fill(void 0);let c;return e.forEach(((l,u)=>l.then((e=>{s[u]=e})).catch((e=>{a[u]=e})).finally((()=>{if(!o.resolved)return t(s.slice(0),o).then((e=>{o.resolved=!0,r(e)})).catch((e=>{c=e})).finally((()=>{if(i+=1,i===e.length){const e=Object.values(s.reduce(((e,t)=>{if(t){var r;const{id:i,error:o}=t;(null===o||void 0===o||null===(r=o.data)||void 0===r?void 0:r.length)>0&&(o.data.startsWith("Error occurred while verifying params")?e[i]=(n=o.data).charAt(0).toUpperCase()+n.slice(1):e[i]=o.data)}var n;return e}),{}));if(e.length>0){const t=e.length>1?`\n${e.map((e=>`\u2022 ${e}`)).join("\n")}`:e[0];n(new Error(t))}else{var t;n(new See({errors:a,responses:s,predicate:(null===(t=c)||void 0===t?void 0:t.message)||c}))}}}))}))))}));function Aee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Pee(e){for(var t=1;t0){if(h.length!==c.length)throw new Error("Invalid imported shares length");w=!0}for(let x=0;x{nee.error("commitment error",e)}));p.push(e)}return Eee(p,(e=>{const t=e.filter((e=>!(!e||"object"!==typeof e)&&!e.error));if(h.length>0&&t.length===c.length)return Promise.resolve(e);if(0===h.length&&t.length>=1+~~(3*c.length/4)){if(t.find((e=>{var t;return!(!e||"1"!==(null===(t=e.result)||void 0===t?void 0:t.nodeindex))})))return Promise.resolve(e)}return Promise.reject(new Error(`invalid ${JSON.stringify(e)}`))})).then((e=>{const t=[],r=[];for(let i=0;inee.error("share req",e)));t.push(n)}else{const e=k4(c[i],S4(X7,{encrypted:"yes",use_temp:!0,item:[Pee(Pee({},u),{},{idtoken:d,nodesignatures:r,verifieridentifier:l},f)],one_key_flow:!0}),null,{logTracingHeader:kee.logRequestTracing}).catch((e=>nee.error("share req",e)));t.push(e)}}let n;return Eee(t,(async(e,t)=>{const r=e.filter((e=>!(!e||"object"!==typeof e)&&!e.error)),o=e.map((e=>{if(e&&e.result&&e.result.keys[0].public_key){if(!n&&!u.extended_verifier_id){var t,r;(null===(t=e.result.keys[0].nonce_data)||void 0===t||null===(r=t.pubNonce)||void 0===r?void 0:r.x)&&(n=e.result.keys[0].nonce_data)}return e.result.keys[0].public_key}})),s=eee(o,1+~~(c.length/2));if(!s)throw new Error("invalid result from nodes, threshold number of public key results are not matching");if(!n&&!u.extended_verifier_id&&!M7[a])throw new Error(`invalid metadata result from nodes, nonce metadata is empty for verifier: ${l} and verifierId: ${u.verifier_id}`);const d=h.length>0?c.length:1+~~(c.length/2);if(r.length>=d&&s&&(n||u.extended_verifier_id||M7[a])){const e=[],o=[],a=[],l=[],d=[];for(let t=0;t0)u&&null!==(f=u[0])&&void 0!==f&&f.ephemPublicKey?o.push(bee(u[0],c[0],m).catch((e=>nee.debug("session sig decryption",e)))):o.push(Promise.resolve(W7.from(c[0],"hex")));else o.push(Promise.resolve(void 0));if((null===i||void 0===i?void 0:i.length)>0)s&&null!==(p=s[0])&&void 0!==p&&p.ephemPublicKey?a.push(bee(s[0],i[0],m).catch((e=>nee.debug("session token sig decryption",e)))):a.push(Promise.resolve(W7.from(i[0],"base64")));else a.push(Promise.resolve(void 0));if((null===d||void 0===d?void 0:d.length)>0){const t=n.result.keys[0];l.push(new(K7())(t.node_index)),t.share_metadata&&e.push(bee(t.share_metadata,W7.from(t.share,"base64").toString("binary").padStart(64,"0"),m).catch((e=>nee.debug("share decryption",e))))}else l.push(void 0),e.push(Promise.resolve(void 0))}const h=await Promise.all(e.concat(o).concat(a)),g=h.slice(0,e.length),v=h.slice(e.length,e.length+o.length),y=h.slice(e.length+o.length,h.length),b=v.filter((e=>!!e)),w=1+~~(c.length/2);if(!u.extended_verifier_id&&b.length!!e));if(!u.extended_verifier_id&&x.length{e?d.push({token:e.toString("base64"),signature:v[t].toString("hex"),node_pubx:r[t].result.node_pubx,node_puby:r[t].result.node_puby}):d.push(void 0)})),t.resolved)return;const _=g.reduce(((e,t,r)=>(t&&e.push({index:l[r],value:new(K7())(t)}),e)),[]),k=Q7(_.length,1+~~(c.length/2));let S=null;for(let t=0;te.includes(r))),n=r.map((e=>e.value)),o=r.map((e=>e.index)),a=mee(i,n,o);if(!a)continue;const c=H9(W7.from(a.toString(16,64),"hex")).toString("hex"),l=c.slice(2,66),u=c.slice(66);if(0===new(K7())(l,16).cmp(new(K7())(s.X,16))&&0===new(K7())(u,16).cmp(new(K7())(s.Y,16))){S=a;break}}if(void 0===S||null===S)throw new Error("could not derive private key");return{privateKey:S,sessionTokenData:d,thresholdNonceData:n,nodeIndexes:l}}throw new Error("Invalid")}))})).then((async e=>{var o;const{privateKey:s,sessionTokenData:c,thresholdNonceData:l,nodeIndexes:d}=e;let h=l;if(!s)throw new Error("Invalid private key returned");const f=s,p=H9(W7.from(f.toString(16,64),"hex")).toString("hex"),g=p.slice(2,66),v=p.slice(66);let y,b,w=new(K7())(null!==(o=h)&&void 0!==o&&o.nonce?h.nonce.padStart(64,"0"):"0","hex"),x="v1";if(u.extended_verifier_id)x="v2",y=i.keyFromPublic({x:g,y:v}).getPublic();else if(M7[a])if(n)h=await _ee(t,i,r,g,v,f),w=new(K7())(h.nonce||"0",16),b={X:h.pubNonce.x,Y:h.pubNonce.y},x=h.typeOfUser,"v2"===x&&(y=i.keyFromPublic({x:g,y:v}).getPublic().add(i.keyFromPublic({x:h.pubNonce.x,y:h.pubNonce.y}).getPublic()));else{x="v1",w=await wee(t,{pub_key_X:g,pub_key_Y:v});const e=f.add(w).umod(i.curve.n);y=i.keyFromPrivate(e.toString(16,64),"hex").getPublic()}else x="v2",y=i.keyFromPublic({x:g,y:v}).getPublic().add(i.keyFromPublic({x:h.pubNonce.x,y:h.pubNonce.y}).getPublic()),b={X:h.pubNonce.x,Y:h.pubNonce.y};const _=aee(i,f),k=see(i,y.getX(),y.getY());nee.debug("> torus.js/retrieveShares",{finalEvmAddress:k});let S="";if("v1"===x||"v2"===x&&w.gt(new(K7())(0))){S=f.add(w).umod(i.curve.n).toString("hex",64)}let E=!1;return"v1"===x?E=null:"v2"===x&&(E=w.eq(new(K7())("0"))),{finalKeyData:{evmAddress:k,X:y.getX().toString(16,64),Y:y.getY().toString(16,64),privKey:S},oAuthKeyData:{evmAddress:_,X:g,Y:v,privKey:f.toString("hex",64).padStart(64,"0")},sessionData:{sessionTokenData:c,sessionAuthKey:m.toString("hex").padStart(64,"0")},metadata:{pubNonce:b,nonce:w,typeOfUser:x,upgraded:E},nodesData:{nodeIndexes:d.map((e=>e.toNumber()))}}}))}const Tee=async(e,t,r)=>{const n=e.map((e=>k4(e,S4("VerifierLookupRequest",{verifier:t,verifier_id:r.toString()})).catch((e=>nee.error("lookup request failed",e)))));return Eee(n,(t=>{const r=t.filter((e=>e)),n=eee(r.map((e=>e&&e.error)),1+~~(e.length/2)),i=eee(r.map((e=>e&&e.result)),1+~~(e.length/2));return i||n?Promise.resolve({keyResult:i,errorResult:n}):Promise.reject(new Error(`invalid results ${JSON.stringify(t)}`))}))},jee=async e=>{let t,r,{endpoints:n,torusNodePubs:i,lastPoint:o,firstPoint:a,verifier:s,verifierId:c,signerHost:l,network:u,clientId:d}=e;if(void 0===o?(t=Math.floor(Math.random()*n.length),nee.info("keyassign",t,n[t]),r=t):t=o%n.length,t===a)throw new Error("Looped through all");void 0!==a&&(r=a);const h=S4("KeyAssign",{verifier:s,verifier_id:c.toString()});try{const e=await k4(l,h,{headers:{pubKeyX:i[t].X,pubKeyY:i[t].Y,network:u,clientId:d}},{useAPIKey:!0});return await k4(n[t],Pee(Pee({},h),e),{headers:{"Content-Type":"application/json; charset=utf-8"}})}catch(f){nee.error(f.status,f.message,f,"key assign error");const e=["Timed out","Failed to fetch","cancelled","NetworkError when attempting to fetch resource.","TypeError: Failed to fetch","TypeError: cancelled","TypeError: NetworkError when attempting to fetch resource."];if(502===(null===f||void 0===f?void 0:f.status)||504===(null===f||void 0===f?void 0:f.status)||401===(null===f||void 0===f?void 0:f.status)||e.includes(f.message)||e.some((e=>f.message.includes(e)))||f.message&&f.message.includes("reason: getaddrinfo EAI_AGAIN"))return jee({endpoints:n,torusNodePubs:i,lastPoint:t+1,firstPoint:r,verifier:s,verifierId:c,signerHost:l,network:u,clientId:d});throw new Error(`Sorry, the Torus Network that powers Web3Auth is currently very busy.\n We will generate your key in time. Pls try again later. \n\n ${f.message||""}`)}};function Cee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ree(e){for(var t=1;t0&&void 0!==arguments[0])||arguments[0]?(nee.enableAll(),kee.logRequestTracing=!0):nee.disableAll()}static setAPIKey(e){y4(e)}static setEmbedHost(e){v4(e)}static isGetOrSetNonceError(e){return e instanceof ree}static getPostboxKey(e){return"v1"===e.metadata.typeOfUser&&e.finalKeyData.privKey||e.oAuthKeyData.privKey}async retrieveShares(e,t,r,n,i){let o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{};return this.isLegacyNetwork?this.legacyRetrieveShares(e,t,r,n,i,o):Oee({legacyMetadataHost:this.legacyMetadataHost,serverTimeOffset:this.serverTimeOffset,enableOneKey:this.enableOneKey,ecCurve:this.ec,allowHost:this.allowHost,network:this.network,clientId:this.clientId,endpoints:e,verifier:r,verifierParams:n,idToken:i,importedShares:[],extraParams:o})}async getPublicAddress(e,t,r){let{verifier:n,verifierId:i,extendedVerifierId:o}=r;return this.isLegacyNetwork?this.getLegacyPublicAddress(e,t,{verifier:n,verifierId:i},this.enableOneKey):this.getNewPublicAddress(e,{verifier:n,verifierId:i,extendedVerifierId:o},this.enableOneKey)}async importPrivateKey(e,t,r,n,i,o,a){let s=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(this.isLegacyNetwork)throw new Error("This function is not supported on legacy networks");if(e.length!==t.length)throw new Error("length of endpoints array must be same as length of nodeIndexes array");const c=1+~~(e.length/2)-1,l=[],u=this.ec.keyFromPrivate(a.padStart(64,"0"),"hex");for(const x of t)l.push(new(K7())(x));const d=u.getPrivate(),h=new(K7())($9()),f=d.sub(h).umod(this.ec.curve.n),p=this.ec.keyFromPrivate(f.toString("hex").padStart(64,"0")).getPublic(),m=gee(this.ec,c,f).generateShares(l),g=this.generateNonceMetadataParams("getOrSetNonce",f,h),v=W7.from(X9()(g.set_data),"utf8").toString("base64"),y=[],b=[];for(let x=0;x5&&void 0!==arguments[5]?arguments[5]:{};const a=[];await _4(this.allowHost,{headers:{verifier:r,verifierId:n.verifier_id,network:this.network,clientId:this.clientId}},{useAPIKey:!0});const s=$9(),c=H9(s).toString("hex"),l=c.slice(2,66),u=c.slice(66),d=iee(W7.from(i,"utf8"));for(let h=0;h{nee.error("commitment",e)}));a.push(t)}return Eee(a,(t=>{const r=t.filter((e=>!(!e||"object"!==typeof e)&&!e.error));return r.length>=3*~~(e.length/4)+1?Promise.resolve(t):Promise.reject(new Error(`invalid ${JSON.stringify(t)}`))})).then((a=>{const c=[],l=[];for(let e=0;enee.error("share req",e)));c.push(a)}return Eee(c,(async(r,n)=>{const i=r.filter((e=>e)),o=eee(r.map((e=>e&&e.result&&e.result.keys[0].PublicKey)),1+~~(e.length/2));if(i.length>=1+~~(e.length/2)&&o){const i=[],l=[];for(let e=0;e0){n.result.keys.sort(((e,t)=>new(K7())(e.Index,16).cmp(new(K7())(t.Index,16))));const e=n.result.keys[0];if(e.Metadata){const t={ephemPublicKey:W7.from(e.Metadata.ephemPublicKey,"hex"),iv:W7.from(e.Metadata.iv,"hex"),mac:W7.from(e.Metadata.mac,"hex")};i.push(G9(s,Ree(Ree({},t),{},{ciphertext:W7.from(W7.from(e.Share,"base64").toString("binary").padStart(64,"0"),"hex")})).catch((e=>nee.debug("share decryption",e))))}else i.push(Promise.resolve(W7.from(e.Share.padStart(64,"0"),"hex")))}else i.push(Promise.resolve(void 0));l.push(new(K7())(t[e],16))}const u=await Promise.all(i);if(n.resolved)return;const d=u.reduce(((e,t,r)=>(t&&e.push({index:l[r],value:new(K7())(t)}),e)),[]),h=Q7(d.length,1+~~(e.length/2));let f=null;for(let e=0;et.includes(r))),n=r.map((e=>e.value)),i=r.map((e=>e.index)),a=mee(this.ec,n,i);if(!a)continue;const s=H9(W7.from(a.toString(16,64),"hex")).toString("hex"),c=s.slice(2,66),l=s.slice(66);if(0===new(K7())(c,16).cmp(new(K7())(o.X,16))&&0===new(K7())(l,16).cmp(new(K7())(o.Y,16))){f=a;break}}if(void 0===f||null===f)throw new Error("could not derive private key");return f}throw new Error("invalid")}))})).then((async e=>{const t=e;if(!t)throw new Error("Invalid private key returned");const r=H9(W7.from(t.toString(16,64),"hex")).toString("hex"),n=r.slice(2,66),i=r.slice(66);let o,a,s,c="v1";if(this.enableOneKey){const e=await _ee(this.legacyMetadataHost,this.ec,this.serverTimeOffset,n,i,t);o=new(K7())(e.nonce||"0",16),c=e.typeOfUser,"v2"===e.typeOfUser&&(a=this.ec.keyFromPublic({x:n,y:i}).getPublic().add(this.ec.keyFromPublic({x:e.pubNonce.x,y:e.pubNonce.y}).getPublic()),s={X:e.pubNonce.x,Y:e.pubNonce.y})}else{o=await wee(this.legacyMetadataHost,{pub_key_X:n,pub_key_Y:i});const e=t.add(o).umod(this.ec.curve.n);a=this.ec.keyFromPrivate(e.toString("hex"),"hex").getPublic()}const l=aee(this.ec,t),u=see(this.ec,a.getX(),a.getY());nee.debug("> torus.js/retrieveShares",{finalEvmAddress:u});let d="";if("v1"===c||"v2"===c&&o.gt(new(K7())(0))){d=t.add(o).umod(this.ec.curve.n).toString("hex",64).padStart(64,"0")}let h=!1;return"v1"===c?h=null:"v2"===c&&(h=o.eq(new(K7())("0"))),{finalKeyData:{evmAddress:u,X:a?a.getX().toString(16,64):"",Y:a?a.getY().toString(16,64):"",privKey:d},oAuthKeyData:{evmAddress:l,X:n,Y:i,privKey:t.toString("hex",64).padStart(64,"0")},sessionData:{sessionTokenData:[],sessionAuthKey:""},metadata:{pubNonce:s,nonce:o,typeOfUser:c,upgraded:h},nodesData:{nodeIndexes:[]}}}))}async getLegacyPublicAddress(e,t,r,n){let i,{verifier:o,verifierId:a}=r;nee.debug("> torus.js/getPublicAddress",{endpoints:e,torusNodePubs:t,verifier:o,verifierId:a});let s=!1;const{keyResult:c,errorResult:l}=await Tee(e,o,a)||{};if(l&&JSON.stringify(l).includes("Verifier not supported"))throw new Error("Verifier not supported. Check if you: \n\n 1. Are on the right network (Torus testnet/mainnet) \n\n 2. Have setup a verifier on dashboard.web3auth.io?");if(l&&JSON.stringify(l).includes("Verifier + VerifierID has not yet been assigned")){await jee({endpoints:e,torusNodePubs:t,lastPoint:void 0,firstPoint:void 0,verifier:o,verifierId:a,signerHost:this.signerHost,network:this.network,clientId:this.clientId});const r=await((e,t,r,n)=>new Promise(((i,o)=>{setTimeout((()=>{Tee(e,t,r).then(i).catch(o)}),n)})))(e,o,a,1e3);i=null===r||void 0===r?void 0:r.keyResult,s=!0}else{if(!c)throw new Error(`node results do not match at first lookup ${JSON.stringify(c||{})}, ${JSON.stringify(l||{})}`);i=c}if(nee.debug("> torus.js/getPublicAddress",{finalKeyResult:i,isNewKey:s}),i)return this.formatLegacyPublicKeyData({finalKeyResult:i,isNewKey:s,enableOneKey:n});throw new Error(`node results do not match at final lookup ${JSON.stringify(c||{})}, ${JSON.stringify(l||{})}`)}generateNonceMetadataParams(e,t,r){const n=this.ec.keyFromPrivate(t.toString("hex",64)),i={operation:e,timestamp:new(K7())(~~(this.serverTimeOffset+Date.now()/1e3)).toString(16)};r&&(i.data=r.toString("hex",64));const o=n.sign(iee(W7.from(X9()(i),"utf8")).slice(2));return{pub_key_X:n.getPublic().getX().toString("hex",64),pub_key_Y:n.getPublic().getY().toString("hex",64),set_data:i,signature:W7.from(o.r.toString(16,64)+o.s.toString(16,64)+new(K7())("").toString(16,2),"hex").toString("base64")}}async getNewPublicAddress(e,t,r){let{verifier:n,verifierId:i,extendedVerifierId:o}=t;nee.debug("> torus.js/getPublicAddress",{endpoints:e,verifier:n,verifierId:i});const a=await(async e=>{const{endpoints:t,network:r,verifier:n,verifierId:i,extendedVerifierId:o}=e,a=t.map((e=>k4(e,S4(G7,{verifier:n,verifier_id:i.toString(),extended_verifier_id:o,one_key_flow:!0,fetch_node_index:!0}),null,{logTracingHeader:kee.logRequestTracing}).catch((e=>nee.error(`${G7} request failed`,e)))));let s;const c=[],l=await Eee(a,(e=>{const a=e.filter((e=>{if(e&&!e.error){var t,r,n;if(!s)(null===(t=e.result)||void 0===t||null===(r=t.keys[0].nonce_data)||void 0===r||null===(n=r.pubNonce)||void 0===n?void 0:n.x)&&(s=e.result.keys[0].nonce_data);return e}return!1})),l=eee(a.map((e=>e&&e.error)),1+~~(t.length/2)),u=eee(a.map((e=>e&&(e=>{const t={keys:[],is_new_key:e.is_new_key};return e&&e.keys&&e.keys.length>0&&(t.keys=e.keys.map((e=>({pub_key_X:e.pub_key_X,pub_key_Y:e.pub_key_Y,address:e.address})))),t})(e.result))),1+~~(t.length/2));return u&&(s||o||M7[r])||l?(u&&e.forEach((e=>{if(e&&e.result){const t=parseInt(e.result.node_index);t&&c.push(t)}})),Promise.resolve({keyResult:u,nodeIndexes:c,errorResult:l,nonceResult:s})):Promise.reject(new Error(`invalid public key result: ${JSON.stringify(e)} and nonce result:${JSON.stringify(s||{})} for verifier: ${n}, verifierId: ${i} and extendedVerifierId: ${o} `))}));return l})({endpoints:e,network:this.network,verifier:n,verifierId:i,extendedVerifierId:o}),{errorResult:s,keyResult:c,nodeIndexes:l=[]}=a,{nonceResult:u}=a;if(s&&JSON.stringify(s).toLowerCase().includes("verifier not supported"))throw new Error("Verifier not supported. Check if you: \n\n 1. Are on the right network (Torus testnet/mainnet) \n\n 2. Have setup a verifier on dashboard.web3auth.io?");if(s)throw new Error(`node results do not match at first lookup ${JSON.stringify(c||{})}, ${JSON.stringify(s||{})}`);if(nee.debug("> torus.js/getPublicAddress",{keyResult:c}),null===c||void 0===c||!c.keys)throw new Error(`node results do not match at final lookup ${JSON.stringify(c||{})}, ${JSON.stringify(s||{})}`);if(!u&&!o&&!M7[this.network])throw new ree("metadata nonce is missing in share response");const{pub_key_X:d,pub_key_Y:h}=c.keys[0];let f;const p=new(K7())((null===u||void 0===u?void 0:u.nonce)||"0",16);let m,g;if(o)g=this.ec.keyFromPublic({x:d,y:h}).getPublic(),m=g;else{if(M7[this.network])return this.formatLegacyPublicKeyData({isNewKey:c.is_new_key,enableOneKey:r,finalKeyResult:{keys:c.keys}});{const e=u;m=this.ec.keyFromPublic({x:d,y:h}).getPublic(),g=this.ec.keyFromPublic({x:d,y:h}).getPublic().add(this.ec.keyFromPublic({x:e.pubNonce.x,y:e.pubNonce.y}).getPublic()),f={X:e.pubNonce.x,Y:e.pubNonce.y}}}if(!m)throw new Error("Unable to derive oAuthPubKey");const v=m.getX().toString(16,64),y=m.getY().toString(16,64),b=see(this.ec,m.getX(),m.getY());if(nee.debug("> torus.js/getPublicAddress, oAuthKeyData",{X:v,Y:y,oAuthAddress:b,nonce:null===p||void 0===p?void 0:p.toString(16),pubNonce:f}),!g)throw new Error("Unable to derive finalPubKey");const w=g?g.getX().toString(16,64):"",x=g?g.getY().toString(16,64):"";return{oAuthKeyData:{evmAddress:b,X:v,Y:y},finalKeyData:{evmAddress:g?see(this.ec,g.getX(),g.getY()):"",X:w,Y:x},metadata:{pubNonce:f,nonce:p,upgraded:(null===u||void 0===u?void 0:u.upgraded)||!1,typeOfUser:"v2"},nodesData:{nodeIndexes:l}}}async formatLegacyPublicKeyData(e){var t,r;const{finalKeyResult:n,enableOneKey:i,isNewKey:o}=e,{pub_key_X:a,pub_key_Y:s}=n.keys[0];let c,l,u,d,h;const f=this.ec.keyFromPublic({x:a,y:s}).getPublic();if(i){try{c=await xee(this.legacyMetadataHost,this.ec,this.serverTimeOffset,a,s,void 0,!o),l=new(K7())(c.nonce||"0",16),d=c.typeOfUser}catch{throw new ree}if("v1"===c.typeOfUser)u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPrivate(l.toString(16)).getPublic());else{if("v2"!==c.typeOfUser)throw new Error("getOrSetNonce should always return typeOfUser.");u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPublic({x:c.pubNonce.x,y:c.pubNonce.y}).getPublic()),h={X:c.pubNonce.x,Y:c.pubNonce.y}}}else d="v1",l=await wee(this.legacyMetadataHost,{pub_key_X:a,pub_key_Y:s}),u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPrivate(l.toString(16)).getPublic());if(!f)throw new Error("Unable to derive oAuthPubKey");const p=f.getX().toString(16,64),m=f.getY().toString(16,64),g=see(this.ec,f.getX(),f.getY());if(nee.debug("> torus.js/getPublicAddress, oAuthKeyData",{X:p,Y:m,oAuthAddress:g,nonce:null===(t=l)||void 0===t?void 0:t.toString(16),pubNonce:h}),"v2"===d&&!u)throw new Error("Unable to derive finalPubKey");const v=u?u.getX().toString(16,64):"",y=u?u.getY().toString(16,64):"";return{oAuthKeyData:{evmAddress:g,X:p,Y:m},finalKeyData:{evmAddress:u?see(this.ec,u.getX(),u.getY()):"",X:v,Y:y},metadata:{pubNonce:h,nonce:l,upgraded:(null===(r=c)||void 0===r?void 0:r.upgraded)||!1,typeOfUser:d},nodesData:{nodeIndexes:[]}}}}var Mee=r(9140),Lee=r(9673).Buffer;function Nee(e){return Lee.from((0,J9.So)(e))}const Dee=new zc.ec("secp256k1");function zee(e){return{iv:Lee.from(e.iv,"hex"),ephemPublicKey:Lee.from(e.ephemPublicKey,"hex"),ciphertext:Lee.from(e.ciphertext,"hex"),mac:Lee.from(e.mac,"hex")}}function Bee(e){return{iv:Lee.from(e.iv).toString("hex"),ephemPublicKey:Lee.from(e.ephemPublicKey).toString("hex"),ciphertext:Lee.from(e.ciphertext).toString("hex"),mac:Lee.from(e.mac).toString("hex")}}async function Uee(e,t){const r=JSON.stringify(t),n=Lee.from(r,"utf-8"),i=Bee(await W9(H9(Lee.from(e,"hex")),n));return JSON.stringify(i)}async function Fee(e,t){const r=zee(JSON.parse(t)),n=Dee.keyFromPrivate(e),i=(await G9(Lee.from(n.getPrivate().toString("hex",64),"hex"),r)).toString("utf-8");return JSON.parse(i)}var $ee=r(9673).Buffer;const Hee="google",Vee="facebook",qee="reddit",Kee="discord",Wee="twitch",Gee="apple",Zee="github",Yee="linkedin",Xee="twitter",Jee="weibo",Qee="line",ete="email_password",tte="passwordless",rte="jwt",nte="webauthn",ite="single_id_verifier",ote={POPUP:"popup",REDIRECT:"redirect"},ate="localStorage",ste="server",cte="triggerLogin",lte="triggerAggregateLogin",ute="triggerHybridAggregateLogin",dte="fetchNodeDetails",hte="pubAddressLookup",fte="fetchShares";var pte=c4().getLogger("customauth");const mte={[Gee]:"apple",[Zee]:"github",[Yee]:"linkedin",[Xee]:"twitter",[Jee]:"weibo",[Qee]:"line",[ete]:"Username-Password-Authentication",[tte]:"email"},gte=e=>e.href.endsWith("/")?e.href:`${e.href}/`,vte={webWorkerSupport:!1};function yte(e,t){return t?e:e.toLowerCase()}const bte=function(e,t,r){let n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];const{name:i,sub:o}=e;if(r)return yte(e[r],n);switch(t){case tte:case ete:return yte(i,n);case Jee:case Zee:case Xee:case Gee:case Yee:case Qee:case rte:return yte(o,n);default:throw new Error("Invalid login type")}},wte=(e,t)=>{const r=e.split("&").reduce(((e,t)=>{const[r,n]=t.split("=");return e[r]=n,e}),{});pte.info(r,t);let n={},i="";return Object.keys(r).length>0&&r.state?(n=JSON.parse(atob(decodeURIComponent(decodeURIComponent(r.state))))||{},i=r.error_description||r.error||i):Object.keys(t).length>0&&t.state&&(n=JSON.parse(atob(decodeURIComponent(decodeURIComponent(t.state))))||{},t.error&&(i=t.error)),{error:i,instanceParameters:n,hashParameters:r}};function xte(e){const{baseURL:t,query:r,hash:n}=e,i=new URL(t);if(r&&Object.keys(r).forEach((e=>{i.searchParams.append(e,r[e])})),n){const e=new URL(xte({baseURL:t,query:n})).searchParams.toString();i.hash=e}return i.toString()}const _te=e=>{try{return new URL(decodeURIComponent(e))}catch(t){throw new Error(`${(null===t||void 0===t?void 0:t.message)||""}, Note: Your jwt domain: (i.e ${e}) must have http:// or https:// prefix`)}};function kte(e){return e!==Vee&&e!==Qee||!function(){const e=P4().getParser(navigator.userAgent).getPlatform();return e.type===P4().PLATFORMS_MAP.tablet||e.type===P4().PLATFORMS_MAP.mobile}()?1e4:6e4}class Ste extends tK.EventEmitter{constructor(e){let{url:t,target:r,features:n,timeout:i=3e4}=e;super(),i4(this,"url",void 0),i4(this,"target",void 0),i4(this,"features",void 0),i4(this,"window",void 0),i4(this,"windowTimer",void 0),i4(this,"iClosedWindow",void 0),i4(this,"timeout",void 0),this.url=t,this.target=r||"_blank",this.features=n||function(){const e=void 0!==window.screenLeft?window.screenLeft:window.screenX,t=void 0!==window.screenTop?window.screenTop:window.screenY,r=window.innerWidth?window.innerWidth:document.documentElement.clientWidth?document.documentElement.clientWidth:window.screen.width,n=window.innerHeight?window.innerHeight:document.documentElement.clientHeight?document.documentElement.clientHeight:window.screen.height,i=Math.abs((r-1200)/2/1+e);return`titlebar=0,toolbar=0,status=0,location=0,menubar=0,height=700,width=1200,top=${Math.abs((n-700)/2/1+t)},left=${i}`}(),this.window=void 0,this.windowTimer=void 0,this.iClosedWindow=!1,this.timeout=i,this._setupTimer()}_setupTimer(){this.window&&(this.windowTimer=Number(setInterval((()=>{this.window&&this.window.closed&&(clearInterval(this.windowTimer),setTimeout((()=>{this.iClosedWindow||this.emit("close"),this.iClosedWindow=!1,this.window=void 0}),this.timeout)),void 0===this.window&&clearInterval(this.windowTimer)}),500)))}open(){var e;return this.window=window.open(this.url.href,this.target,this.features),null!==(e=this.window)&&void 0!==e&&e.focus&&this.window.focus(),Promise.resolve()}close(){this.iClosedWindow=!0,this.window&&this.window.close()}redirect(e){e?window.location.replace(this.url.href):window.location.href=this.url.href}}const Ete=["access_token","id_token"];function Ate(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Pte(e){for(var t=1;t{let n;const i=async t=>{try{const{error:i,data:o}=t,a=o||{},{instanceParams:s,hashParams:{access_token:c,id_token:l}}=a,u=E4(a.hashParams,Ete);if(i)return pte.error(t),void r(new Error(`Error: ${i}. Info: ${JSON.stringify(t.data||{})}`));t.data&&s.verifier===this.verifier&&(pte.info(t.data),!this.redirectToOpener&&n&&await n.postMessage({success:!0}),e(Pte(Pte({accessToken:c,idToken:l||""},u),{},{state:s})))}catch(i){pte.error(i),r(i)}};if(this.redirectToOpener){const e=async r=>{if(!r.data)return;const n=r.data;n.channel===`redirect_channel_${this.nonce}`&&(window.removeEventListener("message",e),i(n),t.close())};window.addEventListener("message",e)}else n=new _7(`redirect_channel_${this.nonce}`,vte),n.addEventListener("message",(async e=>{await i(e),n.close(),t.close()}));t.open(),t.once("close",(()=>{n&&n.close(),r(new Error("user closed popup"))}))})):(t.redirect(e.locationReplaceOnRedirect),null)}}class Tte extends Ote{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),i4(this,"clientId",void 0),i4(this,"verifier",void 0),i4(this,"redirect_uri",void 0),i4(this,"typeOfLogin",void 0),i4(this,"uxMode",void 0),i4(this,"redirectToOpener",void 0),i4(this,"jwtParams",void 0),i4(this,"customState",void 0),i4(this,"RESPONSE_TYPE","token"),i4(this,"SCOPE","identify email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://discord.com/api/oauth2/authorize"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=a4()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await _4("https://discord.com/api/users/@me",{headers:{Authorization:`Bearer ${t}`}}),{id:n,avatar:i,email:o="",username:a="",discriminator:s=""}=r;return{profileImage:null===i?`https://cdn.discordapp.com/embed/avatars/${Number(s)%5}.png`:`https://cdn.discordapp.com/avatars/${n}/${i}.png?size=2048`,name:`${a}#${s}`,email:o,verifierId:n,verifier:this.verifier,typeOfLogin:this.typeOfLogin}}}class jte extends Ote{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),i4(this,"clientId",void 0),i4(this,"verifier",void 0),i4(this,"redirect_uri",void 0),i4(this,"typeOfLogin",void 0),i4(this,"uxMode",void 0),i4(this,"redirectToOpener",void 0),i4(this,"jwtParams",void 0),i4(this,"customState",void 0),i4(this,"RESPONSE_TYPE","token"),i4(this,"SCOPE","public_profile email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://www.facebook.com/v15.0/dialog/oauth"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=a4()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await _4("https://graph.facebook.com/me?fields=name,email,picture.type(large)",{headers:{Authorization:`Bearer ${t}`}}),{name:n="",id:i,picture:o,email:a=""}=r;return{email:a,name:n,profileImage:o.data.url||"",verifier:this.verifier,verifierId:i,typeOfLogin:this.typeOfLogin}}}class Cte extends Ote{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),i4(this,"clientId",void 0),i4(this,"verifier",void 0),i4(this,"redirect_uri",void 0),i4(this,"typeOfLogin",void 0),i4(this,"uxMode",void 0),i4(this,"redirectToOpener",void 0),i4(this,"jwtParams",void 0),i4(this,"customState",void 0),i4(this,"RESPONSE_TYPE","token id_token"),i4(this,"SCOPE","profile email openid"),i4(this,"PROMPT","consent select_account"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://accounts.google.com/o/oauth2/v2/auth"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=a4()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,prompt:this.PROMPT,redirect_uri:this.redirect_uri,scope:this.SCOPE,nonce:this.nonce},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await _4("https://www.googleapis.com/userinfo/v2/me",{headers:{Authorization:`Bearer ${t}`}}),{picture:n="",email:i="",name:o=""}=r;return{email:i,name:o,profileImage:n,verifier:this.verifier,verifierId:i.toLowerCase(),typeOfLogin:this.typeOfLogin}}}let Rte=class extends Ote{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),i4(this,"clientId",void 0),i4(this,"verifier",void 0),i4(this,"redirect_uri",void 0),i4(this,"typeOfLogin",void 0),i4(this,"uxMode",void 0),i4(this,"redirectToOpener",void 0),i4(this,"jwtParams",void 0),i4(this,"customState",void 0),i4(this,"SCOPE","openid profile email"),i4(this,"RESPONSE_TYPE","token id_token"),i4(this,"PROMPT","login"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const{domain:e}=this.jwtParams,t=_te(e);t.pathname+=t.pathname.endsWith("/")?"authorize":"/authorize";const r=JSON.parse(JSON.stringify(this.jwtParams));delete r.domain;const n=a4()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,prompt:this.PROMPT,redirect_uri:this.redirect_uri,scope:this.SCOPE,connection:mte[this.typeOfLogin],nonce:this.nonce},r);Object.keys(n).forEach((e=>{n[e]&&t.searchParams.append(e,n[e])})),this.finalURL=t}async getUserInfo(e){const{idToken:t,accessToken:r}=e,{domain:n,verifierIdField:i,isVerifierIdCaseSensitive:o,user_info_route:a="userinfo"}=this.jwtParams;if(r)try{const e=new URL(n),t=await _4(`${gte(e)}${a}`,{headers:{Authorization:`Bearer ${r}`}}),{picture:s,name:c,email:l}=t;return{email:l,name:c,profileImage:s,verifierId:bte(t,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}catch(s){c4().warn(s,"Unable to get userinfo from endpoint")}if(t){const e=j7(t),{name:r,email:n,picture:a}=e;return{profileImage:a,name:r,email:n,verifierId:bte(e,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}throw new Error("Access/id token not available")}};class Ite extends Ote{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),i4(this,"clientId",void 0),i4(this,"verifier",void 0),i4(this,"redirect_uri",void 0),i4(this,"typeOfLogin",void 0),i4(this,"uxMode",void 0),i4(this,"redirectToOpener",void 0),i4(this,"jwtParams",void 0),i4(this,"customState",void 0),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=JSON.parse(JSON.stringify(this.jwtParams));delete e.domain;const t=a4()({state:this.state,client_id:this.clientId,nonce:this.nonce},e);this.finalURL=new URL(xte({baseURL:this.redirect_uri,query:null,hash:t}))}async getUserInfo(e){const{idToken:t,accessToken:r}=e,{domain:n,verifierIdField:i,isVerifierIdCaseSensitive:o,user_info_route:a="userinfo"}=this.jwtParams;if(r)try{const e=new URL(n),t=await _4(`${gte(e)}${a}`,{headers:{Authorization:`Bearer ${r}`}}),{picture:s,name:c,email:l}=t;return{email:l,name:c,profileImage:s,verifierId:bte(t,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}catch(s){c4().warn(s,"Unable to get userinfo from endpoint")}if(t){const e=j7(t),{name:r,email:n,picture:a}=e;return{profileImage:a,name:r,email:n,verifierId:bte(e,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}throw new Error("Access/id token not available")}handleLoginWindow(e){const{id_token:t,access_token:r}=this.jwtParams,n=new Ste({url:this.finalURL,features:e.popupFeatures});return this.uxMode!==ote.REDIRECT?Promise.resolve({state:{},idToken:t,accessToken:r}):(n.redirect(e.locationReplaceOnRedirect),null)}}const Mte=["access_token","id_token"];function Lte(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Nte(e){for(var t=1;t{if(this.redirectToOpener)return void t(new Error("Cannot use redirect to opener for passwordless"));const r=r=>{try{const{error:n,data:i}=r,o=i||{},{instanceParams:a,hashParams:{access_token:s,id_token:c}}=o,l=E4(o.hashParams,Mte);if(n)return pte.error(r.error),void t(new Error(n));r.data&&a.verifier===this.verifier&&(pte.info(r.data),e(Nte(Nte({accessToken:s,idToken:c||""},l),{},{state:a})))}catch(n){pte.error(n),t(n)}},n=new _7(`redirect_channel_${this.nonce}`,vte);n.addEventListener("message",(async e=>{r(e),n.close()}));try{const{connection:e="email",login_hint:r}=this.jwtParams,n=a4()({client_id:this.clientId,connection:e,email:"email"===e?r:void 0,phone_number:"sms"===e?r:void 0,send:"link",authParams:{scope:this.SCOPE,state:this.state,response_type:this.RESPONSE_TYPE,redirect_uri:this.redirect_uri,nonce:this.nonce,prompt:this.PROMPT}},{authParams:this.jwtParams});k4(this.finalURL.href,JSON.parse(JSON.stringify(n))).then((e=>{pte.info("posted",e)})).catch((e=>{pte.error(e),t(e)}))}catch(i){pte.error(i),t(i)}}))}}class zte extends Ote{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),i4(this,"clientId",void 0),i4(this,"verifier",void 0),i4(this,"redirect_uri",void 0),i4(this,"typeOfLogin",void 0),i4(this,"uxMode",void 0),i4(this,"redirectToOpener",void 0),i4(this,"jwtParams",void 0),i4(this,"customState",void 0),i4(this,"RESPONSE_TYPE","token"),i4(this,"SCOPE","identity"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://www.reddit.com/api/v1/authorize"+(window.innerWidth<600?".compact":"")),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=a4()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await _4("https://oauth.reddit.com/api/v1/me",{headers:{Authorization:`Bearer ${t}`}}),{icon_img:n="",name:i=""}=r;return{email:"",name:i,profileImage:n.split("?").length>0?n.split("?")[0]:n,verifier:this.verifier,verifierId:i.toLowerCase(),typeOfLogin:this.typeOfLogin}}}class Bte extends Ote{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),i4(this,"clientId",void 0),i4(this,"verifier",void 0),i4(this,"redirect_uri",void 0),i4(this,"typeOfLogin",void 0),i4(this,"uxMode",void 0),i4(this,"redirectToOpener",void 0),i4(this,"jwtParams",void 0),i4(this,"customState",void 0),i4(this,"RESPONSE_TYPE","token"),i4(this,"SCOPE","user:read:email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://id.twitch.tv/oauth2/authorize"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=a4()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE,force_verify:!0},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await _4("https://api.twitch.tv/helix/users",{headers:{Authorization:`Bearer ${t}`,"Client-ID":this.clientId}}),[{profile_image_url:n="",display_name:i="",email:o="",id:a}]=r.data||[];return{profileImage:n,name:i,email:o,verifierId:a,verifier:this.verifier,typeOfLogin:this.typeOfLogin}}}const Ute="https://api.webauthn.openlogin.com";class Fte extends Ote{constructor(e,t,r,n,i,o,a,s,c){super(e,t,r,n,i,o,a,s),i4(this,"clientId",void 0),i4(this,"verifier",void 0),i4(this,"redirect_uri",void 0),i4(this,"typeOfLogin",void 0),i4(this,"uxMode",void 0),i4(this,"redirectToOpener",void 0),i4(this,"jwtParams",void 0),i4(this,"customState",void 0),i4(this,"registerOnly",void 0),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.registerOnly=c,this.setFinalUrl()}setFinalUrl(){const{webauthnURL:e}=this.customState||{},t=e?new URL(e):new URL("https://webauthn.openlogin.com"),r=JSON.parse(JSON.stringify(this.jwtParams||{})),n=a4()({register_only:!!this.registerOnly,state:this.state,client_id:this.clientId,redirect_uri:this.redirect_uri},r);Object.keys(n).forEach((e=>{n[e]&&t.searchParams.append(e,n[e])})),this.finalURL=t}async getUserInfo(e){const{idToken:t,ref:r,extraParamsPassed:n,extraParams:i}=e;let o,a,s,c,l,u,d,h,f;if("true"===n){pte.debug("extraParamsPassed is true, using extraParams passed through hashParams");try{({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=JSON.parse(atob(i)))}catch(p){pte.warn("unable to parse extraParams",p),({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=await _4(`${Ute}/signature/fetch/${t}`))}}else pte.debug("extraParamsPassed is false, using extraParams passed through bridge server"),({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=await _4(`${Ute}/signature/fetch/${t}`));if(a!==t)throw new Error("idtoken should be equal to signature");return{email:"",name:"WebAuthn Login",profileImage:"",verifier:this.verifier,verifierId:o,typeOfLogin:this.typeOfLogin,ref:r,registerOnly:this.registerOnly,extraVerifierParams:{signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}}}}const $te=e=>{let{clientId:t,redirect_uri:r,typeOfLogin:n,verifier:i,jwtParams:o,redirectToOpener:a,uxMode:s,customState:c,registerOnly:l}=e;if(!i||!n||!t)throw new Error("Invalid params");const{domain:u,login_hint:d,id_token:h,access_token:f}=o||{};switch(n){case Hee:return new Cte(t,i,r,n,s,a,o,c);case Vee:return new jte(t,i,r,n,s,a,o,c);case Wee:return new Bte(t,i,r,n,s,a,o,c);case qee:return new zte(t,i,r,n,s,a,o,c);case Kee:return new Tte(t,i,r,n,s,a,o,c);case tte:if(!u||!d)throw new Error("Invalid params");return new Dte(t,i,r,n,s,a,o,c);case Gee:case Zee:case Yee:case Xee:case Jee:case Qee:case ete:case rte:if(h||f)return new Ite(t,i,r,n,s,a,o,c);if(!u)throw new Error("Invalid params");return new Rte(t,i,r,n,s,a,o,c);case nte:return new Fte(t,i,r,n,s,a,o,c,l);default:throw new Error("Invalid login type")}};class Hte{constructor(e){i4(this,"sentry",null),this.sentry=e}startTransaction(e){if(this.sentry)return this.sentry.startTransaction(e)}finishTransaction(e){e&&e.finish()}}class Vte{constructor(e){i4(this,"currentStorageMethod",ate),i4(this,"isInitialized",!1),i4(this,"storageServerUrl","https://broadcast-server.tor.us"),this.storageServerUrl=e}init(){const e=function(){var e;const t=P4().parse(navigator.userAgent);pte.info(JSON.stringify(t),"current browser info");let r=!0;return null!==(e=navigator)&&void 0!==e&&e.brave&&(r=!1),t.engine.name!==P4().ENGINE_MAP.WebKit&&t.engine.name!==P4().ENGINE_MAP.Gecko||(r=!1),r}(),t=function(e){let t;try{t=window[e];const r="__storage_test__";return t.setItem(r,r),t.removeItem(r),!0}catch(pge){return pge&&(22===pge.code||1014===pge.code||"QuotaExceededError"===pge.name||"NS_ERROR_DOM_QUOTA_REACHED"===pge.name)&&t&&0!==t.length}}(ate);this.currentStorageMethod=e&&t?ate:ste,this.isInitialized=!0}async storeLoginDetails(e,t){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===ste){const r=Nee($ee.from(t,"utf8")),n=r.toString("hex"),i=H9(r).toString("hex"),o=await Uee(n,e),a=(await V9(r,Nee($ee.from(o,"utf8")))).toString("hex");await k4(`${this.storageServerUrl}/store/set`,{key:i,data:o,signature:a})}else window.localStorage.setItem(`torus_login_${t}`,JSON.stringify(e))}async retrieveLoginDetails(e){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===ste){const t=Nee($ee.from(e,"utf8")),n=t.toString("hex"),i=H9(t).toString("hex");try{const e=await _4(`${this.storageServerUrl}/store/get?key=${i}`);if(e.message){return await Fee(n,e.message)}}catch(r){if(404!==r.status)throw r;pte.warn(r,"Session likely expired")}}const t=window.localStorage.getItem(`torus_login_${e}`);return JSON.parse(t||"{}")}clearLoginDetailsStorage(e){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");this.currentStorageMethod===ate&&window.localStorage.removeItem(`torus_login_${e}`)}clearOrphanedLoginDetails(){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===ate){Object.keys(window.localStorage).forEach((e=>{e.startsWith("torus_login_")&&window.localStorage.removeItem(e)}))}}}const qte=["access_token","id_token"],Kte=["access_token","id_token"],Wte=["access_token","id_token"],Gte=["args","method"];function Zte(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Yte(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{};if(this.storageHelper.init(),t)this.isInitialized=!0;else{if(!e){if(!(await fetch(`${this.config.baseUrl}sw.js`,{cache:"reload"})).ok)throw new Error("Service worker is not being served. Please serve it");try{return await(n=this.config.baseUrl,new Promise(((e,t)=>{const r=`${n}sw.js`;"serviceWorker"in window.navigator?(0,Mee.k)(r,{ready(){pte.info("App is being served from cache by a service worker.\n For more details, visit https://goo.gl/AFskqB"),e(void 0)},registered(){pte.info("Service worker has been registered."),e(void 0)},cached(){pte.info("Content has been cached for offline use."),e(void 0)},updatefound(){pte.info("New content is downloading.")},updated(){pte.info("New content is available; please refresh.")},offline(){pte.info("No internet connection found. App is running in offline mode."),t(new Error("App is offline"))},error(e){pte.error("Error during service worker registration:",e),t(e)}}):t(new Error("Service workers are not supported"))}))),void(this.isInitialized=!0)}catch(i){pte.warn(i)}}var n;if(!r)return(()=>{var e,t;return(null===(e=window)||void 0===e||null===(t=e.navigator)||void 0===t?void 0:t.userAgent.toLowerCase().indexOf("firefox"))>-1||!1})()?void(this.isInitialized=!0):void await this.handlePrefetchRedirectUri();this.isInitialized=!0}}async triggerLogin(e){const{verifier:t,typeOfLogin:r,clientId:n,jwtParams:i,hash:o,queryParameters:a,customState:s,registerOnly:c}=e;if(pte.info("Verifier: ",t),!this.isInitialized)throw new Error("Not initialized yet");if(c&&r!==nte)throw new Error("registerOnly flag can only be passed for webauthn");const l=$te({typeOfLogin:r,clientId:n,verifier:t,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:i,uxMode:this.config.uxMode,customState:s,registerOnly:c});let u;if(o&&a){const{error:e,hashParameters:t,instanceParameters:r}=wte(o,a);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;u=Yte(Yte({accessToken:n,idToken:i},E4(t,qte)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===ote.REDIRECT&&await this.storageHelper.storeLoginDetails({method:cte,args:e},l.nonce),u=await l.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===ote.REDIRECT)return null;const d=await l.getUserInfo(u);if(c){const e=this.sentryHandler.startTransaction({name:dte}),r=await this.nodeDetailManager.getNodeDetails({verifier:t,verifierId:d.verifierId});this.sentryHandler.finishTransaction(e);const n=this.sentryHandler.startTransaction({name:hte}),i=await this.torus.getPublicAddress(r.torusNodeEndpoints,r.torusNodePub,{verifier:t,verifierId:d.verifierId});this.sentryHandler.finishTransaction(n);const o={userInfo:Yte(Yte({},d),u)};return Yte(Yte(Yte({},o),i),{},{finalKeyData:Yte(Yte({},i.finalKeyData),{},{privKey:void 0}),oAuthKeyData:Yte(Yte({},i.finalKeyData),{},{privKey:void 0}),metadata:Yte(Yte({},i.metadata),{},{nonce:void 0}),sessionData:void 0})}return Yte(Yte({},await this.getTorusKey(t,d.verifierId,{verifier_id:d.verifierId},u.idToken||u.accessToken,d.extraVerifierParams)),{},{userInfo:Yte(Yte({},d),u)})}async triggerAggregateLogin(e){const{aggregateVerifierType:t,verifierIdentifier:r,subVerifierDetailsArray:n}=e;if(!this.isInitialized)throw new Error("Not initialized yet");if(!t||!r||!Array.isArray(n))throw new Error("Invalid params");if(t===ite&&1!==n.length)throw new Error("Single id verifier can only have one sub verifier");const i=[],o=[];for(const h of n){const{clientId:t,typeOfLogin:r,verifier:n,jwtParams:a,hash:s,queryParameters:c,customState:l}=h,u=$te({typeOfLogin:r,clientId:t,verifier:n,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:a,uxMode:this.config.uxMode,customState:l});let d;if(s&&c){const{error:e,hashParameters:t,instanceParameters:r}=wte(s,c);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;d=Yte(Yte({accessToken:n,idToken:i},E4(t,Kte)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===ote.REDIRECT&&await this.storageHelper.storeLoginDetails({method:lte,args:e},u.nonce),d=await u.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===ote.REDIRECT)return null;i.push(u.getUserInfo(d)),o.push(d)}const a=(await Promise.all(i)).map((e=>Yte(Yte({},e),{},{aggregateVerifier:r}))),s={verify_params:[],sub_verifier_ids:[],verifier_id:""},c=[];let l="",u={};for(let h=0;hYte(Yte({},e),o[t])))})}async triggerHybridAggregateLogin(e){const{singleLogin:t,aggregateLoginParams:r}=e;if(!this.isInitialized)throw new Error("Not initialized yet");if(!r.aggregateVerifierType||!r.verifierIdentifier||!Array.isArray(r.subVerifierDetailsArray))throw new Error("Invalid params");if(r.aggregateVerifierType===ite&&1!==r.subVerifierDetailsArray.length)throw new Error("Single id verifier can only have one sub verifier");const{typeOfLogin:n,clientId:i,verifier:o,jwtParams:a,hash:s,queryParameters:c,customState:l}=t,u=$te({typeOfLogin:n,clientId:i,verifier:o,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:a,uxMode:this.config.uxMode,customState:l});let d;if(s&&c){const{error:e,hashParameters:t,instanceParameters:r}=wte(s,c);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;d=Yte(Yte({accessToken:n,idToken:i},E4(t,Wte)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===ote.REDIRECT&&await this.storageHelper.storeLoginDetails({method:ute,args:e},u.nonce),d=await u.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===ote.REDIRECT)return null;const h=await u.getUserInfo(d),f=this.getTorusKey(o,h.verifierId,{verifier_id:h.verifierId},d.idToken||d.accessToken,h.extraVerifierParams),{verifierIdentifier:p,subVerifierDetailsArray:m}=r,g={verify_params:[],sub_verifier_ids:[],verifier_id:""},v=[];let y="";for(let k=0;k0&&void 0!==arguments[0]?arguments[0]:{};await this.init({skipInit:!0});const r=new URL(window.location.href),n=r.hash.substring(1),i={};if(r.searchParams.forEach(((e,t)=>{i[t]=e})),e){const e=window.location.origin+window.location.pathname;window.history.replaceState(Yte(Yte({},window.history.state),{},{as:e,url:e}),"",e)}if(!n&&0===Object.keys(i).length)throw new Error("Unable to fetch result from OAuth login");const{error:o,instanceParameters:a,hashParameters:s}=wte(n,i),{instanceId:c}=a;pte.info(c,"instanceId");const l=await this.storageHelper.retrieveLoginDetails(c),{args:u,method:d}=l,h=E4(l,Gte);if(pte.info(u,d),t&&this.storageHelper.clearLoginDetailsStorage(c),o)return{error:o,state:a||{},method:d,result:{},hashParameters:s,args:u};let f;try{if(d===cte){const e=u;e.hash=n,e.queryParameters=i,f=await this.triggerLogin(e)}else if(d===lte){const e=u;e.subVerifierDetailsArray.forEach((e=>{e.hash=n,e.queryParameters=i})),f=await this.triggerAggregateLogin(e)}else if(d===ute){const e=u;e.singleLogin.hash=n,e.singleLogin.queryParameters=i,f=await this.triggerHybridAggregateLogin(e)}}catch(kne){return pte.error(kne),Yte({error:`Could not get result from torus nodes \n ${(null===kne||void 0===kne?void 0:kne.message)||""}`,state:a||{},method:d,result:{},hashParameters:s,args:u},h)}return Yte(f?{method:d,result:f,state:a||{},hashParameters:s,args:u}:{error:"Unsupported method type",state:a||{},method:d,result:{},hashParameters:s,args:u},h)}async handlePrefetchRedirectUri(){return document?new Promise(((e,t)=>{const r=document.createElement("link");r.href=this.config.redirect_uri,window.location.origin!==new URL(this.config.redirect_uri).origin&&(r.crossOrigin="anonymous"),r.type="text/html",r.rel="prefetch";const n=()=>{this.isInitialized=!0,e()};try{r.relList&&r.relList.supports&&r.relList.supports("prefetch")?(r.onload=n,r.onerror=()=>{t(new Error(`Please serve redirect.html present in serviceworker folder of this package on ${this.config.redirect_uri}`))},document.head.appendChild(r)):n()}catch(kne){n()}})):Promise.resolve()}}const Jte=(e,t,r)=>Promise.race([e(),new Promise(((e,n)=>setTimeout((()=>{n(new Error(r||"The operation has timed out"))}),t)))]),Qte=async()=>Jte((async()=>{const e=new Xte({web3AuthClientId:"BBHmFdLXgGDzSiizRVMWtyL_7Dsoxu5B8zep2Pns8sGELslgXDbktJewVDVDDBlknEKkMCtzISLjJtxk60SK2-g",baseUrl:"https://umamiwallet.com/auth/v2.0.1/",redirectPathName:"redirect.html",redirectToOpener:!0,uxMode:"popup",network:"mainnet"});await e.init({skipSw:!0});const t=await e.triggerAggregateLogin({verifierIdentifier:"tezos-google",aggregateVerifierType:"single_id_verifier",subVerifierDetailsArray:[{clientId:"1070572364808-d31nlkneam5ee6dr0tu28fjjbsdkfta5.apps.googleusercontent.com",typeOfLogin:"google",verifier:"umami"}]});return{secretKey:fl(t.finalKeyData.privKey||t.oAuthKeyData.privKey,$c[Dc.SPSK]),email:t.userInfo[0].email}}),6e4),ere=e=>{let t="Something went wrong";"object"===typeof e&&"message"in e?t=e.message:"string"===typeof e&&(t=e);let r="";return"object"===typeof e&&"stack"in e&&(r=e.stack),{timestamp:(new Date).toISOString(),description:t,stacktrace:r}},tre=()=>{const[e,t]=(0,i.useState)(!1),r=fL(),n=AI(),o=async(i,o)=>{if(!e){t(!0);try{return await i()}catch(a){const e=ere(a);throw r({description:e.description,status:"error",..."function"===typeof o?o(a):o}),n(Lh.actions.add(e)),a}finally{t(!1)}}};return{isLoading:e,handleAsyncAction:async(e,t)=>o(e,t).catch((()=>{})),handleAsyncActionUnsafe:o}},rre=({onAuth:e})=>{const{isLoading:t,handleAsyncAction:r}=tre();return(0,xn.jsx)(t4,{width:"48px",background:"white",borderRadius:"full",_disabled:{bg:AO.gray[900]},"aria-label":"Google SSO","data-testid":"google-auth-button",icon:(0,xn.jsx)(qR,{}),isLoading:t,onClick:async()=>r((async()=>{const{secretKey:t,email:r}=await Qte();return e(t,r)}),{title:"Social login failed"}),size:"lg",variant:"outline"})};function nre(e){let t=e.length;for(;--t>=0;)e[t]=0}const ire=256,ore=286,are=30,sre=15,cre=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),lre=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),ure=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),dre=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),hre=new Array(576);nre(hre);const fre=new Array(60);nre(fre);const pre=new Array(512);nre(pre);const mre=new Array(256);nre(mre);const gre=new Array(29);nre(gre);const vre=new Array(are);function yre(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}let bre,wre,xre;function _re(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}nre(vre);const kre=e=>e<256?pre[e]:pre[256+(e>>>7)],Sre=(e,t)=>{e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255},Ere=(e,t,r)=>{e.bi_valid>16-r?(e.bi_buf|=t<>16-e.bi_valid,e.bi_valid+=r-16):(e.bi_buf|=t<{Ere(e,r[2*t],r[2*t+1])},Pre=(e,t)=>{let r=0;do{r|=1&e,e>>>=1,r<<=1}while(--t>0);return r>>>1},Ore=(e,t,r)=>{const n=new Array(16);let i,o,a=0;for(i=1;i<=sre;i++)a=a+r[i-1]<<1,n[i]=a;for(o=0;o<=t;o++){let t=e[2*o+1];0!==t&&(e[2*o]=Pre(n[t]++,t))}},Tre=e=>{let t;for(t=0;t{e.bi_valid>8?Sre(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},Cre=(e,t,r,n)=>{const i=2*t,o=2*r;return e[i]{const n=e.heap[r];let i=r<<1;for(;i<=e.heap_len&&(i{let n,i,o,a,s=0;if(0!==e.sym_next)do{n=255&e.pending_buf[e.sym_buf+s++],n+=(255&e.pending_buf[e.sym_buf+s++])<<8,i=e.pending_buf[e.sym_buf+s++],0===n?Are(e,i,t):(o=mre[i],Are(e,o+ire+1,t),a=cre[o],0!==a&&(i-=gre[o],Ere(e,i,a)),n--,o=kre(n),Are(e,o,r),a=lre[o],0!==a&&(n-=vre[o],Ere(e,n,a)))}while(s{const r=t.dyn_tree,n=t.stat_desc.static_tree,i=t.stat_desc.has_stree,o=t.stat_desc.elems;let a,s,c,l=-1;for(e.heap_len=0,e.heap_max=573,a=0;a>1;a>=1;a--)Rre(e,r,a);c=o;do{a=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Rre(e,r,1),s=e.heap[1],e.heap[--e.heap_max]=a,e.heap[--e.heap_max]=s,r[2*c]=r[2*a]+r[2*s],e.depth[c]=(e.depth[a]>=e.depth[s]?e.depth[a]:e.depth[s])+1,r[2*a+1]=r[2*s+1]=c,e.heap[1]=c++,Rre(e,r,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],((e,t)=>{const r=t.dyn_tree,n=t.max_code,i=t.stat_desc.static_tree,o=t.stat_desc.has_stree,a=t.stat_desc.extra_bits,s=t.stat_desc.extra_base,c=t.stat_desc.max_length;let l,u,d,h,f,p,m=0;for(h=0;h<=sre;h++)e.bl_count[h]=0;for(r[2*e.heap[e.heap_max]+1]=0,l=e.heap_max+1;l<573;l++)u=e.heap[l],h=r[2*r[2*u+1]+1]+1,h>c&&(h=c,m++),r[2*u+1]=h,u>n||(e.bl_count[h]++,f=0,u>=s&&(f=a[u-s]),p=r[2*u],e.opt_len+=p*(h+f),o&&(e.static_len+=p*(i[2*u+1]+f)));if(0!==m){do{for(h=c-1;0===e.bl_count[h];)h--;e.bl_count[h]--,e.bl_count[h+1]+=2,e.bl_count[c]--,m-=2}while(m>0);for(h=c;0!==h;h--)for(u=e.bl_count[h];0!==u;)d=e.heap[--l],d>n||(r[2*d+1]!==h&&(e.opt_len+=(h-r[2*d+1])*r[2*d],r[2*d+1]=h),u--)}})(e,t),Ore(r,l,e.bl_count)},Lre=(e,t,r)=>{let n,i,o=-1,a=t[1],s=0,c=7,l=4;for(0===a&&(c=138,l=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=a,a=t[2*(n+1)+1],++s{let n,i,o=-1,a=t[1],s=0,c=7,l=4;for(0===a&&(c=138,l=3),n=0;n<=r;n++)if(i=a,a=t[2*(n+1)+1],!(++s{Ere(e,0+(n?1:0),3),jre(e),Sre(e,r),Sre(e,~r),r&&e.pending_buf.set(e.window.subarray(t,t+r),e.pending),e.pending+=r};var Bre=e=>{Dre||((()=>{let e,t,r,n,i;const o=new Array(16);for(r=0,n=0;n<28;n++)for(gre[n]=r,e=0;e<1<>=7;n{let i,o,a=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=(e=>{let t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t{let t;for(Lre(e,e.dyn_ltree,e.l_desc.max_code),Lre(e,e.dyn_dtree,e.d_desc.max_code),Mre(e,e.bl_desc),t=18;t>=3&&0===e.bl_tree[2*dre[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(e),i=e.opt_len+3+7>>>3,o=e.static_len+3+7>>>3,o<=i&&(i=o)):i=o=r+5,r+4<=i&&-1!==t?zre(e,t,r,n):4===e.strategy||o===i?(Ere(e,2+(n?1:0),3),Ire(e,hre,fre)):(Ere(e,4+(n?1:0),3),((e,t,r,n)=>{let i;for(Ere(e,t-257,5),Ere(e,r-1,5),Ere(e,n-4,4),i=0;i(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=r,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(mre[r]+ire+1)]++,e.dyn_dtree[2*kre(t)]++),e.sym_next===e.sym_end),$re=e=>{Ere(e,2,3),Are(e,256,hre),(e=>{16===e.bi_valid?(Sre(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)})(e)},Hre={_tr_init:Bre,_tr_stored_block:zre,_tr_flush_block:Ure,_tr_tally:Fre,_tr_align:$re};var Vre=(e,t,r,n)=>{let i=65535&e|0,o=e>>>16&65535|0,a=0;for(;0!==r;){a=r>2e3?2e3:r,r-=a;do{i=i+t[n++]|0,o=o+i|0}while(--a);i%=65521,o%=65521}return i|o<<16|0};const qre=new Uint32Array((()=>{let e,t=[];for(var r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t})());var Kre=(e,t,r,n)=>{const i=qre,o=n+r;e^=-1;for(let a=n;a>>8^i[255&(e^t[a])];return-1^e},Wre={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},Gre={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:Zre,_tr_stored_block:Yre,_tr_flush_block:Xre,_tr_tally:Jre,_tr_align:Qre}=Hre,{Z_NO_FLUSH:ene,Z_PARTIAL_FLUSH:tne,Z_FULL_FLUSH:rne,Z_FINISH:nne,Z_BLOCK:ine,Z_OK:one,Z_STREAM_END:ane,Z_STREAM_ERROR:sne,Z_DATA_ERROR:cne,Z_BUF_ERROR:lne,Z_DEFAULT_COMPRESSION:une,Z_FILTERED:dne,Z_HUFFMAN_ONLY:hne,Z_RLE:fne,Z_FIXED:pne,Z_DEFAULT_STRATEGY:mne,Z_UNKNOWN:gne,Z_DEFLATED:vne}=Gre,yne=258,bne=262,wne=42,xne=113,_ne=666,kne=(e,t)=>(e.msg=Wre[t],t),Sne=e=>2*e-(e>4?9:0),Ene=e=>{let t=e.length;for(;--t>=0;)e[t]=0},Ane=e=>{let t,r,n,i=e.w_size;t=e.hash_size,n=t;do{r=e.head[--n],e.head[n]=r>=i?r-i:0}while(--t);t=i,n=t;do{r=e.prev[--n],e.prev[n]=r>=i?r-i:0}while(--t)};let Pne=(e,t,r)=>(t<{const t=e.state;let r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+r),e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))},Tne=(e,t)=>{Xre(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,One(e.strm)},jne=(e,t)=>{e.pending_buf[e.pending++]=t},Cne=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t},Rne=(e,t,r,n)=>{let i=e.avail_in;return i>n&&(i=n),0===i?0:(e.avail_in-=i,t.set(e.input.subarray(e.next_in,e.next_in+i),r),1===e.state.wrap?e.adler=Vre(e.adler,t,i,r):2===e.state.wrap&&(e.adler=Kre(e.adler,t,i,r)),e.next_in+=i,e.total_in+=i,i)},Ine=(e,t)=>{let r,n,i=e.max_chain_length,o=e.strstart,a=e.prev_length,s=e.nice_match;const c=e.strstart>e.w_size-bne?e.strstart-(e.w_size-bne):0,l=e.window,u=e.w_mask,d=e.prev,h=e.strstart+yne;let f=l[o+a-1],p=l[o+a];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(r=t,l[r+a]===p&&l[r+a-1]===f&&l[r]===l[o]&&l[++r]===l[o+1]){o+=2,r++;do{}while(l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&oa){if(e.match_start=t,a=n,n>=s)break;f=l[o+a-1],p=l[o+a]}}}while((t=d[t&u])>c&&0!==--i);return a<=e.lookahead?a:e.lookahead},Mne=e=>{const t=e.w_size;let r,n,i;do{if(n=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-bne)&&(e.window.set(e.window.subarray(t,t+t-n),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),Ane(e),n+=t),0===e.strm.avail_in)break;if(r=Rne(e.strm,e.window,e.strstart+e.lookahead,n),e.lookahead+=r,e.lookahead+e.insert>=3)for(i=e.strstart-e.insert,e.ins_h=e.window[i],e.ins_h=Pne(e,e.ins_h,e.window[i+1]);e.insert&&(e.ins_h=Pne(e,e.ins_h,e.window[i+3-1]),e.prev[i&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=i,i++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead{let r,n,i,o=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,a=0,s=e.strm.avail_in;do{if(r=65535,i=e.bi_valid+42>>3,e.strm.avail_outn+e.strm.avail_in&&(r=n+e.strm.avail_in),r>i&&(r=i),r>8,e.pending_buf[e.pending-2]=~r,e.pending_buf[e.pending-1]=~r>>8,One(e.strm),n&&(n>r&&(n=r),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+n),e.strm.next_out),e.strm.next_out+=n,e.strm.avail_out-=n,e.strm.total_out+=n,e.block_start+=n,r-=n),r&&(Rne(e.strm,e.strm.output,e.strm.next_out,r),e.strm.next_out+=r,e.strm.avail_out-=r,e.strm.total_out+=r)}while(0===a);return s-=e.strm.avail_in,s&&(s>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=s&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-s,e.strm.next_in),e.strstart),e.strstart+=s,e.insert+=s>e.w_size-e.insert?e.w_size-e.insert:s),e.block_start=e.strstart),e.high_wateri&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,i+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),i>e.strm.avail_in&&(i=e.strm.avail_in),i&&(Rne(e.strm,e.window,e.strstart,i),e.strstart+=i,e.insert+=i>e.w_size-e.insert?e.w_size-e.insert:i),e.high_water>3,i=e.pending_buf_size-i>65535?65535:e.pending_buf_size-i,o=i>e.w_size?e.w_size:i,n=e.strstart-e.block_start,(n>=o||(n||t===nne)&&t!==ene&&0===e.strm.avail_in&&n<=i)&&(r=n>i?i:n,a=t===nne&&0===e.strm.avail_in&&r===n?1:0,Yre(e,e.block_start,r,a),e.block_start+=r,One(e.strm)),a?3:1)},Nne=(e,t)=>{let r,n;for(;;){if(e.lookahead=3&&(e.ins_h=Pne(e,e.ins_h,e.window[e.strstart+3-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==r&&e.strstart-r<=e.w_size-bne&&(e.match_length=Ine(e,r)),e.match_length>=3)if(n=Jre(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){e.match_length--;do{e.strstart++,e.ins_h=Pne(e,e.ins_h,e.window[e.strstart+3-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(0!==--e.match_length);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=Pne(e,e.ins_h,e.window[e.strstart+1]);else n=Jre(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(Tne(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,t===nne?(Tne(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Tne(e,!1),0===e.strm.avail_out)?1:2},Dne=(e,t)=>{let r,n,i;for(;;){if(e.lookahead=3&&(e.ins_h=Pne(e,e.ins_h,e.window[e.strstart+3-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==r&&e.prev_length4096)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-3,n=Jre(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=Pne(e,e.ins_h,e.window[e.strstart+3-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!==--e.prev_length);if(e.match_available=0,e.match_length=2,e.strstart++,n&&(Tne(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if(n=Jre(e,0,e.window[e.strstart-1]),n&&Tne(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=Jre(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,t===nne?(Tne(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Tne(e,!1),0===e.strm.avail_out)?1:2};function zne(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}const Bne=[new zne(0,0,0,0,Lne),new zne(4,4,8,4,Nne),new zne(4,5,16,8,Nne),new zne(4,6,32,32,Nne),new zne(4,4,16,16,Dne),new zne(8,16,32,32,Dne),new zne(8,16,128,128,Dne),new zne(8,32,128,256,Dne),new zne(32,128,258,1024,Dne),new zne(32,258,258,4096,Dne)];function Une(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=vne,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),Ene(this.dyn_ltree),Ene(this.dyn_dtree),Ene(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),Ene(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),Ene(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Fne=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.status!==wne&&57!==t.status&&69!==t.status&&73!==t.status&&91!==t.status&&103!==t.status&&t.status!==xne&&t.status!==_ne?1:0},$ne=e=>{if(Fne(e))return kne(e,sne);e.total_in=e.total_out=0,e.data_type=gne;const t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=2===t.wrap?57:t.wrap?wne:xne,e.adler=2===t.wrap?0:1,t.last_flush=-2,Zre(t),one},Hne=e=>{const t=$ne(e);return t===one&&(e=>{e.window_size=2*e.w_size,Ene(e.head),e.max_lazy_match=Bne[e.level].max_lazy,e.good_match=Bne[e.level].good_length,e.nice_match=Bne[e.level].nice_length,e.max_chain_length=Bne[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=2,e.match_available=0,e.ins_h=0})(e.state),t},Vne=(e,t,r,n,i,o)=>{if(!e)return sne;let a=1;if(t===une&&(t=6),n<0?(a=0,n=-n):n>15&&(a=2,n-=16),i<1||i>9||r!==vne||n<8||n>15||t<0||t>9||o<0||o>pne||8===n&&1!==a)return kne(e,sne);8===n&&(n=9);const s=new Une;return e.state=s,s.strm=e,s.status=wne,s.wrap=a,s.gzhead=null,s.w_bits=n,s.w_size=1<{if(Fne(e)||t>ine||t<0)return e?kne(e,sne):sne;const r=e.state;if(!e.output||0!==e.avail_in&&!e.input||r.status===_ne&&t!==nne)return kne(e,0===e.avail_out?lne:sne);const n=r.last_flush;if(r.last_flush=t,0!==r.pending){if(One(e),0===e.avail_out)return r.last_flush=-1,one}else if(0===e.avail_in&&Sne(t)<=Sne(n)&&t!==nne)return kne(e,lne);if(r.status===_ne&&0!==e.avail_in)return kne(e,lne);if(r.status===wne&&0===r.wrap&&(r.status=xne),r.status===wne){let t=vne+(r.w_bits-8<<4)<<8,n=-1;if(n=r.strategy>=hne||r.level<2?0:r.level<6?1:6===r.level?2:3,t|=n<<6,0!==r.strstart&&(t|=32),t+=31-t%31,Cne(r,t),0!==r.strstart&&(Cne(r,e.adler>>>16),Cne(r,65535&e.adler)),e.adler=1,r.status=xne,One(e),0!==r.pending)return r.last_flush=-1,one}if(57===r.status)if(e.adler=0,jne(r,31),jne(r,139),jne(r,8),r.gzhead)jne(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),jne(r,255&r.gzhead.time),jne(r,r.gzhead.time>>8&255),jne(r,r.gzhead.time>>16&255),jne(r,r.gzhead.time>>24&255),jne(r,9===r.level?2:r.strategy>=hne||r.level<2?4:0),jne(r,255&r.gzhead.os),r.gzhead.extra&&r.gzhead.extra.length&&(jne(r,255&r.gzhead.extra.length),jne(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=Kre(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=69;else if(jne(r,0),jne(r,0),jne(r,0),jne(r,0),jne(r,0),jne(r,9===r.level?2:r.strategy>=hne||r.level<2?4:0),jne(r,3),r.status=xne,One(e),0!==r.pending)return r.last_flush=-1,one;if(69===r.status){if(r.gzhead.extra){let t=r.pending,n=(65535&r.gzhead.extra.length)-r.gzindex;for(;r.pending+n>r.pending_buf_size;){let i=r.pending_buf_size-r.pending;if(r.pending_buf.set(r.gzhead.extra.subarray(r.gzindex,r.gzindex+i),r.pending),r.pending=r.pending_buf_size,r.gzhead.hcrc&&r.pending>t&&(e.adler=Kre(e.adler,r.pending_buf,r.pending-t,t)),r.gzindex+=i,One(e),0!==r.pending)return r.last_flush=-1,one;t=0,n-=i}let i=new Uint8Array(r.gzhead.extra);r.pending_buf.set(i.subarray(r.gzindex,r.gzindex+n),r.pending),r.pending+=n,r.gzhead.hcrc&&r.pending>t&&(e.adler=Kre(e.adler,r.pending_buf,r.pending-t,t)),r.gzindex=0}r.status=73}if(73===r.status){if(r.gzhead.name){let t,n=r.pending;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>n&&(e.adler=Kre(e.adler,r.pending_buf,r.pending-n,n)),One(e),0!==r.pending)return r.last_flush=-1,one;n=0}t=r.gzindexn&&(e.adler=Kre(e.adler,r.pending_buf,r.pending-n,n)),r.gzindex=0}r.status=91}if(91===r.status){if(r.gzhead.comment){let t,n=r.pending;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>n&&(e.adler=Kre(e.adler,r.pending_buf,r.pending-n,n)),One(e),0!==r.pending)return r.last_flush=-1,one;n=0}t=r.gzindexn&&(e.adler=Kre(e.adler,r.pending_buf,r.pending-n,n))}r.status=103}if(103===r.status){if(r.gzhead.hcrc){if(r.pending+2>r.pending_buf_size&&(One(e),0!==r.pending))return r.last_flush=-1,one;jne(r,255&e.adler),jne(r,e.adler>>8&255),e.adler=0}if(r.status=xne,One(e),0!==r.pending)return r.last_flush=-1,one}if(0!==e.avail_in||0!==r.lookahead||t!==ene&&r.status!==_ne){let n=0===r.level?Lne(r,t):r.strategy===hne?((e,t)=>{let r;for(;;){if(0===e.lookahead&&(Mne(e),0===e.lookahead)){if(t===ene)return 1;break}if(e.match_length=0,r=Jre(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(Tne(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,t===nne?(Tne(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Tne(e,!1),0===e.strm.avail_out)?1:2})(r,t):r.strategy===fne?((e,t)=>{let r,n,i,o;const a=e.window;for(;;){if(e.lookahead<=yne){if(Mne(e),e.lookahead<=yne&&t===ene)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&e.strstart>0&&(i=e.strstart-1,n=a[i],n===a[++i]&&n===a[++i]&&n===a[++i])){o=e.strstart+yne;do{}while(n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(r=Jre(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=Jre(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(Tne(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,t===nne?(Tne(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Tne(e,!1),0===e.strm.avail_out)?1:2})(r,t):Bne[r.level].func(r,t);if(3!==n&&4!==n||(r.status=_ne),1===n||3===n)return 0===e.avail_out&&(r.last_flush=-1),one;if(2===n&&(t===tne?Qre(r):t!==ine&&(Yre(r,0,0,!1),t===rne&&(Ene(r.head),0===r.lookahead&&(r.strstart=0,r.block_start=0,r.insert=0))),One(e),0===e.avail_out))return r.last_flush=-1,one}return t!==nne?one:r.wrap<=0?ane:(2===r.wrap?(jne(r,255&e.adler),jne(r,e.adler>>8&255),jne(r,e.adler>>16&255),jne(r,e.adler>>24&255),jne(r,255&e.total_in),jne(r,e.total_in>>8&255),jne(r,e.total_in>>16&255),jne(r,e.total_in>>24&255)):(Cne(r,e.adler>>>16),Cne(r,65535&e.adler)),One(e),r.wrap>0&&(r.wrap=-r.wrap),0!==r.pending?one:ane)},Kne=(e,t)=>{let r=t.length;if(Fne(e))return sne;const n=e.state,i=n.wrap;if(2===i||1===i&&n.status!==wne||n.lookahead)return sne;if(1===i&&(e.adler=Vre(e.adler,t,r,0)),n.wrap=0,r>=n.w_size){0===i&&(Ene(n.head),n.strstart=0,n.block_start=0,n.insert=0);let e=new Uint8Array(n.w_size);e.set(t.subarray(r-n.w_size,r),0),t=e,r=n.w_size}const o=e.avail_in,a=e.next_in,s=e.input;for(e.avail_in=r,e.next_in=0,e.input=t,Mne(n);n.lookahead>=3;){let e=n.strstart,t=n.lookahead-2;do{n.ins_h=Pne(n,n.ins_h,n.window[e+3-1]),n.prev[e&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=e,e++}while(--t);n.strstart=e,n.lookahead=2,Mne(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,e.next_in=a,e.input=s,e.avail_in=o,n.wrap=i,one},Wne={deflateInit:(e,t)=>Vne(e,t,vne,15,8,mne),deflateInit2:Vne,deflateReset:Hne,deflateResetKeep:$ne,deflateSetHeader:(e,t)=>Fne(e)||2!==e.state.wrap?sne:(e.state.gzhead=t,one),deflate:qne,deflateEnd:e=>{if(Fne(e))return sne;const t=e.state.status;return e.state=null,t===xne?kne(e,cne):one},deflateSetDictionary:Kne,deflateInfo:"pako deflate (from Nodeca project)"};const Gne=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var Zne={assign:function(e){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const r=t.shift();if(r){if("object"!==typeof r)throw new TypeError(r+"must be non-object");for(const t in r)Gne(r,t)&&(e[t]=r[t])}}return e},flattenChunks:e=>{let t=0;for(let n=0,i=e.length;n=252?6:r>=248?5:r>=240?4:r>=224?3:r>=192?2:1;Xne[254]=Xne[254]=1;var Jne={string2buf:e=>{if("function"===typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(e);let t,r,n,i,o,a=e.length,s=0;for(i=0;i>>6,t[o++]=128|63&r):r<65536?(t[o++]=224|r>>>12,t[o++]=128|r>>>6&63,t[o++]=128|63&r):(t[o++]=240|r>>>18,t[o++]=128|r>>>12&63,t[o++]=128|r>>>6&63,t[o++]=128|63&r);return t},buf2string:(e,t)=>{const r=t||e.length;if("function"===typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(e.subarray(0,t));let n,i;const o=new Array(2*r);for(i=0,n=0;n4)o[i++]=65533,n+=a-1;else{for(t&=2===a?31:3===a?15:7;a>1&&n1?o[i++]=65533:t<65536?o[i++]=t:(t-=65536,o[i++]=55296|t>>10&1023,o[i++]=56320|1023&t)}}return((e,t)=>{if(t<65534&&e.subarray&&Yne)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let r="";for(let n=0;n{(t=t||e.length)>e.length&&(t=e.length);let r=t-1;for(;r>=0&&128===(192&e[r]);)r--;return r<0||0===r?t:r+Xne[e[r]]>t?r:t}};var Qne=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const eie=Object.prototype.toString,{Z_NO_FLUSH:tie,Z_SYNC_FLUSH:rie,Z_FULL_FLUSH:nie,Z_FINISH:iie,Z_OK:oie,Z_STREAM_END:aie,Z_DEFAULT_COMPRESSION:sie,Z_DEFAULT_STRATEGY:cie,Z_DEFLATED:lie}=Gre;function uie(e){this.options=Zne.assign({level:sie,method:lie,chunkSize:16384,windowBits:15,memLevel:8,strategy:cie},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Qne,this.strm.avail_out=0;let r=Wne.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==oie)throw new Error(Wre[r]);if(t.header&&Wne.deflateSetHeader(this.strm,t.header),t.dictionary){let e;if(e="string"===typeof t.dictionary?Jne.string2buf(t.dictionary):"[object ArrayBuffer]"===eie.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,r=Wne.deflateSetDictionary(this.strm,e),r!==oie)throw new Error(Wre[r]);this._dict_set=!0}}function die(e,t){const r=new uie(t);if(r.push(e,!0),r.err)throw r.msg||Wre[r.err];return r.result}uie.prototype.push=function(e,t){const r=this.strm,n=this.options.chunkSize;let i,o;if(this.ended)return!1;for(o=t===~~t?t:!0===t?iie:tie,"string"===typeof e?r.input=Jne.string2buf(e):"[object ArrayBuffer]"===eie.call(e)?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;)if(0===r.avail_out&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),(o===rie||o===nie)&&r.avail_out<=6)this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;else{if(i=Wne.deflate(r,o),i===aie)return r.next_out>0&&this.onData(r.output.subarray(0,r.next_out)),i=Wne.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===oie;if(0!==r.avail_out){if(o>0&&r.next_out>0)this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;else if(0===r.avail_in)break}else this.onData(r.output)}return!0},uie.prototype.onData=function(e){this.chunks.push(e)},uie.prototype.onEnd=function(e){e===oie&&(this.result=Zne.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};var hie=function(e,t){return(t=t||{}).raw=!0,die(e,t)},fie=function(e,t){return(t=t||{}).gzip=!0,die(e,t)},pie={Deflate:uie,deflate:die,deflateRaw:hie,gzip:fie,constants:Gre};const mie=16209;var gie=function(e,t){let r,n,i,o,a,s,c,l,u,d,h,f,p,m,g,v,y,b,w,x,_,k,S,E;const A=e.state;r=e.next_in,S=e.input,n=r+(e.avail_in-5),i=e.next_out,E=e.output,o=i-(t-e.avail_out),a=i+(e.avail_out-257),s=A.dmax,c=A.wsize,l=A.whave,u=A.wnext,d=A.window,h=A.hold,f=A.bits,p=A.lencode,m=A.distcode,g=(1<>>24,h>>>=b,f-=b,b=y>>>16&255,0===b)E[i++]=65535&y;else{if(!(16&b)){if(0===(64&b)){y=p[(65535&y)+(h&(1<>>=b,f-=b),f<15&&(h+=S[r++]<>>24,h>>>=b,f-=b,b=y>>>16&255,!(16&b)){if(0===(64&b)){y=m[(65535&y)+(h&(1<s){e.msg="invalid distance too far back",A.mode=mie;break e}if(h>>>=b,f-=b,b=i-o,x>b){if(b=x-b,b>l&&A.sane){e.msg="invalid distance too far back",A.mode=mie;break e}if(_=0,k=d,0===u){if(_+=c-b,b2;)E[i++]=k[_++],E[i++]=k[_++],E[i++]=k[_++],w-=3;w&&(E[i++]=k[_++],w>1&&(E[i++]=k[_++]))}else{_=i-x;do{E[i++]=E[_++],E[i++]=E[_++],E[i++]=E[_++],w-=3}while(w>2);w&&(E[i++]=E[_++],w>1&&(E[i++]=E[_++]))}break}}break}}while(r>3,r-=w,f-=w<<3,h&=(1<{const c=s.bits;let l,u,d,h,f,p,m=0,g=0,v=0,y=0,b=0,w=0,x=0,_=0,k=0,S=0,E=null;const A=new Uint16Array(16),P=new Uint16Array(16);let O,T,j,C=null;for(m=0;m<=vie;m++)A[m]=0;for(g=0;g=1&&0===A[y];y--);if(b>y&&(b=y),0===y)return i[o++]=20971520,i[o++]=20971520,s.bits=1,0;for(v=1;v0&&(0===e||1!==y))return-1;for(P[1]=0,m=1;m852||2===e&&k>592)return 1;for(;;){O=m-x,a[g]+1=p?(T=C[a[g]-p],j=E[a[g]-p]):(T=96,j=0),l=1<>x)+u]=O<<24|T<<16|j|0}while(0!==u);for(l=1<>=1;if(0!==l?(S&=l-1,S+=l):S=0,g++,0===--A[m]){if(m===y)break;m=t[r+a[g]]}if(m>b&&(S&h)!==d){for(0===x&&(x=b),f+=v,w=m-x,_=1<852||2===e&&k>592)return 1;d=S&h,i[d]=b<<24|w<<16|f-o|0}}return 0!==S&&(i[f+S]=m-x<<24|64<<16|0),s.bits=b,0};const{Z_FINISH:kie,Z_BLOCK:Sie,Z_TREES:Eie,Z_OK:Aie,Z_STREAM_END:Pie,Z_NEED_DICT:Oie,Z_STREAM_ERROR:Tie,Z_DATA_ERROR:jie,Z_MEM_ERROR:Cie,Z_BUF_ERROR:Rie,Z_DEFLATED:Iie}=Gre,Mie=16180,Lie=16190,Nie=16191,Die=16192,zie=16194,Bie=16199,Uie=16200,Fie=16206,$ie=16209,Hie=e=>(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24);function Vie(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const qie=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.mode16211?1:0},Kie=e=>{if(qie(e))return Tie;const t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=Mie,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(852),t.distcode=t.distdyn=new Int32Array(592),t.sane=1,t.back=-1,Aie},Wie=e=>{if(qie(e))return Tie;const t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,Kie(e)},Gie=(e,t)=>{let r;if(qie(e))return Tie;const n=e.state;return t<0?(r=0,t=-t):(r=5+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?Tie:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,Wie(e))},Zie=(e,t)=>{if(!e)return Tie;const r=new Vie;e.state=r,r.strm=e,r.window=null,r.mode=Mie;const n=Gie(e,t);return n!==Aie&&(e.state=null),n};let Yie,Xie,Jie=!0;const Qie=e=>{if(Jie){Yie=new Int32Array(512),Xie=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(_ie(1,e.lens,0,288,Yie,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;_ie(2,e.lens,0,32,Xie,0,e.work,{bits:5}),Jie=!1}e.lencode=Yie,e.lenbits=9,e.distcode=Xie,e.distbits=5},eoe=(e,t,r,n)=>{let i;const o=e.state;return null===o.window&&(o.wsize=1<=o.wsize?(o.window.set(t.subarray(r-o.wsize,r),0),o.wnext=0,o.whave=o.wsize):(i=o.wsize-o.wnext,i>n&&(i=n),o.window.set(t.subarray(r-n,r-n+i),o.wnext),(n-=i)?(o.window.set(t.subarray(r-n,r),0),o.wnext=n,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.whave{let r,n,i,o,a,s,c,l,u,d,h,f,p,m,g,v,y,b,w,x,_,k,S=0;const E=new Uint8Array(4);let A,P;const O=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(qie(e)||!e.output||!e.input&&0!==e.avail_in)return Tie;r=e.state,r.mode===Nie&&(r.mode=Die),a=e.next_out,i=e.output,c=e.avail_out,o=e.next_in,n=e.input,s=e.avail_in,l=r.hold,u=r.bits,d=s,h=c,k=Aie;e:for(;;)switch(r.mode){case Mie:if(0===r.wrap){r.mode=Die;break}for(;u<16;){if(0===s)break e;s--,l+=n[o++]<>>8&255,r.check=Kre(r.check,E,2,0),l=0,u=0,r.mode=16181;break}if(r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&l)<<8)+(l>>8))%31){e.msg="incorrect header check",r.mode=$ie;break}if((15&l)!==Iie){e.msg="unknown compression method",r.mode=$ie;break}if(l>>>=4,u-=4,_=8+(15&l),0===r.wbits&&(r.wbits=_),_>15||_>r.wbits){e.msg="invalid window size",r.mode=$ie;break}r.dmax=1<>8&1),512&r.flags&&4&r.wrap&&(E[0]=255&l,E[1]=l>>>8&255,r.check=Kre(r.check,E,2,0)),l=0,u=0,r.mode=16182;case 16182:for(;u<32;){if(0===s)break e;s--,l+=n[o++]<>>8&255,E[2]=l>>>16&255,E[3]=l>>>24&255,r.check=Kre(r.check,E,4,0)),l=0,u=0,r.mode=16183;case 16183:for(;u<16;){if(0===s)break e;s--,l+=n[o++]<>8),512&r.flags&&4&r.wrap&&(E[0]=255&l,E[1]=l>>>8&255,r.check=Kre(r.check,E,2,0)),l=0,u=0,r.mode=16184;case 16184:if(1024&r.flags){for(;u<16;){if(0===s)break e;s--,l+=n[o++]<>>8&255,r.check=Kre(r.check,E,2,0)),l=0,u=0}else r.head&&(r.head.extra=null);r.mode=16185;case 16185:if(1024&r.flags&&(f=r.length,f>s&&(f=s),f&&(r.head&&(_=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(n.subarray(o,o+f),_)),512&r.flags&&4&r.wrap&&(r.check=Kre(r.check,n,f,o)),s-=f,o+=f,r.length-=f),r.length))break e;r.length=0,r.mode=16186;case 16186:if(2048&r.flags){if(0===s)break e;f=0;do{_=n[o+f++],r.head&&_&&r.length<65536&&(r.head.name+=String.fromCharCode(_))}while(_&&f>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=Nie;break;case 16189:for(;u<32;){if(0===s)break e;s--,l+=n[o++]<>>=7&u,u-=7&u,r.mode=Fie;break}for(;u<3;){if(0===s)break e;s--,l+=n[o++]<>>=1,u-=1,3&l){case 0:r.mode=16193;break;case 1:if(Qie(r),r.mode=Bie,t===Eie){l>>>=2,u-=2;break e}break;case 2:r.mode=16196;break;case 3:e.msg="invalid block type",r.mode=$ie}l>>>=2,u-=2;break;case 16193:for(l>>>=7&u,u-=7&u;u<32;){if(0===s)break e;s--,l+=n[o++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=$ie;break}if(r.length=65535&l,l=0,u=0,r.mode=zie,t===Eie)break e;case zie:r.mode=16195;case 16195:if(f=r.length,f){if(f>s&&(f=s),f>c&&(f=c),0===f)break e;i.set(n.subarray(o,o+f),a),s-=f,o+=f,c-=f,a+=f,r.length-=f;break}r.mode=Nie;break;case 16196:for(;u<14;){if(0===s)break e;s--,l+=n[o++]<>>=5,u-=5,r.ndist=1+(31&l),l>>>=5,u-=5,r.ncode=4+(15&l),l>>>=4,u-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=$ie;break}r.have=0,r.mode=16197;case 16197:for(;r.have>>=3,u-=3}for(;r.have<19;)r.lens[O[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,A={bits:r.lenbits},k=_ie(0,r.lens,0,19,r.lencode,0,r.work,A),r.lenbits=A.bits,k){e.msg="invalid code lengths set",r.mode=$ie;break}r.have=0,r.mode=16198;case 16198:for(;r.have>>24,v=S>>>16&255,y=65535&S,!(g<=u);){if(0===s)break e;s--,l+=n[o++]<>>=g,u-=g,r.lens[r.have++]=y;else{if(16===y){for(P=g+2;u>>=g,u-=g,0===r.have){e.msg="invalid bit length repeat",r.mode=$ie;break}_=r.lens[r.have-1],f=3+(3&l),l>>>=2,u-=2}else if(17===y){for(P=g+3;u>>=g,u-=g,_=0,f=3+(7&l),l>>>=3,u-=3}else{for(P=g+7;u>>=g,u-=g,_=0,f=11+(127&l),l>>>=7,u-=7}if(r.have+f>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=$ie;break}for(;f--;)r.lens[r.have++]=_}}if(r.mode===$ie)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=$ie;break}if(r.lenbits=9,A={bits:r.lenbits},k=_ie(1,r.lens,0,r.nlen,r.lencode,0,r.work,A),r.lenbits=A.bits,k){e.msg="invalid literal/lengths set",r.mode=$ie;break}if(r.distbits=6,r.distcode=r.distdyn,A={bits:r.distbits},k=_ie(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,A),r.distbits=A.bits,k){e.msg="invalid distances set",r.mode=$ie;break}if(r.mode=Bie,t===Eie)break e;case Bie:r.mode=Uie;case Uie:if(s>=6&&c>=258){e.next_out=a,e.avail_out=c,e.next_in=o,e.avail_in=s,r.hold=l,r.bits=u,gie(e,h),a=e.next_out,i=e.output,c=e.avail_out,o=e.next_in,n=e.input,s=e.avail_in,l=r.hold,u=r.bits,r.mode===Nie&&(r.back=-1);break}for(r.back=0;S=r.lencode[l&(1<>>24,v=S>>>16&255,y=65535&S,!(g<=u);){if(0===s)break e;s--,l+=n[o++]<>b)],g=S>>>24,v=S>>>16&255,y=65535&S,!(b+g<=u);){if(0===s)break e;s--,l+=n[o++]<>>=b,u-=b,r.back+=b}if(l>>>=g,u-=g,r.back+=g,r.length=y,0===v){r.mode=16205;break}if(32&v){r.back=-1,r.mode=Nie;break}if(64&v){e.msg="invalid literal/length code",r.mode=$ie;break}r.extra=15&v,r.mode=16201;case 16201:if(r.extra){for(P=r.extra;u>>=r.extra,u-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=16202;case 16202:for(;S=r.distcode[l&(1<>>24,v=S>>>16&255,y=65535&S,!(g<=u);){if(0===s)break e;s--,l+=n[o++]<>b)],g=S>>>24,v=S>>>16&255,y=65535&S,!(b+g<=u);){if(0===s)break e;s--,l+=n[o++]<>>=b,u-=b,r.back+=b}if(l>>>=g,u-=g,r.back+=g,64&v){e.msg="invalid distance code",r.mode=$ie;break}r.offset=y,r.extra=15&v,r.mode=16203;case 16203:if(r.extra){for(P=r.extra;u>>=r.extra,u-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=$ie;break}r.mode=16204;case 16204:if(0===c)break e;if(f=h-c,r.offset>f){if(f=r.offset-f,f>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=$ie;break}f>r.wnext?(f-=r.wnext,p=r.wsize-f):p=r.wnext-f,f>r.length&&(f=r.length),m=r.window}else m=i,p=a-r.offset,f=r.length;f>c&&(f=c),c-=f,r.length-=f;do{i[a++]=m[p++]}while(--f);0===r.length&&(r.mode=Uie);break;case 16205:if(0===c)break e;i[a++]=r.length,c--,r.mode=Uie;break;case Fie:if(r.wrap){for(;u<32;){if(0===s)break e;s--,l|=n[o++]<{if(qie(e))return Tie;let t=e.state;return t.window&&(t.window=null),e.state=null,Aie},noe=(e,t)=>{if(qie(e))return Tie;const r=e.state;return 0===(2&r.wrap)?Tie:(r.head=t,t.done=!1,Aie)},ioe=(e,t)=>{const r=t.length;let n,i,o;return qie(e)?Tie:(n=e.state,0!==n.wrap&&n.mode!==Lie?Tie:n.mode===Lie&&(i=1,i=Vre(i,t,r,0),i!==n.check)?jie:(o=eoe(e,t,r,r),o?(n.mode=16210,Cie):(n.havedict=1,Aie)))},ooe={inflateReset:Wie,inflateReset2:Gie,inflateResetKeep:Kie,inflateInit:e=>Zie(e,15),inflateInit2:Zie,inflate:toe,inflateEnd:roe,inflateGetHeader:noe,inflateSetDictionary:ioe,inflateInfo:"pako inflate (from Nodeca project)"};var aoe=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const soe=Object.prototype.toString,{Z_NO_FLUSH:coe,Z_FINISH:loe,Z_OK:uoe,Z_STREAM_END:doe,Z_NEED_DICT:hoe,Z_STREAM_ERROR:foe,Z_DATA_ERROR:poe,Z_MEM_ERROR:moe}=Gre;function goe(e){this.options=Zne.assign({chunkSize:65536,windowBits:15,to:""},e||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&0===(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Qne,this.strm.avail_out=0;let r=ooe.inflateInit2(this.strm,t.windowBits);if(r!==uoe)throw new Error(Wre[r]);if(this.header=new aoe,ooe.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"===typeof t.dictionary?t.dictionary=Jne.string2buf(t.dictionary):"[object ArrayBuffer]"===soe.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=ooe.inflateSetDictionary(this.strm,t.dictionary),r!==uoe)))throw new Error(Wre[r])}function voe(e,t){const r=new goe(t);if(r.push(e),r.err)throw r.msg||Wre[r.err];return r.result}goe.prototype.push=function(e,t){const r=this.strm,n=this.options.chunkSize,i=this.options.dictionary;let o,a,s;if(this.ended)return!1;for(a=t===~~t?t:!0===t?loe:coe,"[object ArrayBuffer]"===soe.call(e)?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){for(0===r.avail_out&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),o=ooe.inflate(r,a),o===hoe&&i&&(o=ooe.inflateSetDictionary(r,i),o===uoe?o=ooe.inflate(r,a):o===poe&&(o=hoe));r.avail_in>0&&o===doe&&r.state.wrap>0&&0!==e[r.next_in];)ooe.inflateReset(r),o=ooe.inflate(r,a);switch(o){case foe:case poe:case hoe:case moe:return this.onEnd(o),this.ended=!0,!1}if(s=r.avail_out,r.next_out&&(0===r.avail_out||o===doe))if("string"===this.options.to){let e=Jne.utf8border(r.output,r.next_out),t=r.next_out-e,i=Jne.buf2string(r.output,e);r.next_out=t,r.avail_out=n-t,t&&r.output.set(r.output.subarray(e,e+t),0),this.onData(i)}else this.onData(r.output.length===r.next_out?r.output:r.output.subarray(0,r.next_out));if(o!==uoe||0!==s){if(o===doe)return o=ooe.inflateEnd(this.strm),this.onEnd(o),this.ended=!0,!0;if(0===r.avail_in)break}}return!0},goe.prototype.onData=function(e){this.chunks.push(e)},goe.prototype.onEnd=function(e){e===uoe&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=Zne.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};var yoe=function(e,t){return(t=t||{}).raw=!0,voe(e,t)},boe={Inflate:goe,inflate:voe,inflateRaw:yoe,ungzip:voe,constants:Gre};const{Deflate:woe,deflate:xoe,deflateRaw:_oe,gzip:koe}=pie,{Inflate:Soe,inflate:Eoe,inflateRaw:Aoe,ungzip:Poe}=boe;var Ooe=Poe,Toe=r(9673).Buffer;const joe="function"===typeof Toe,Coe=("function"===typeof TextDecoder&&new TextDecoder,"function"===typeof TextEncoder&&new TextEncoder,Array.prototype.slice.call("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=")),Roe=(e=>{let t={};return e.forEach(((e,r)=>t[e]=r)),t})(Coe),Ioe=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,Moe=String.fromCharCode.bind(String),Loe="function"===typeof Uint8Array.from?Uint8Array.from.bind(Uint8Array):e=>new Uint8Array(Array.prototype.slice.call(e,0)),Noe=e=>e.replace(/[^A-Za-z0-9\+\/]/g,""),Doe=e=>{let t,r,n,i,o="";const a=e.length%3;for(let s=0;s255||(n=e.charCodeAt(s++))>255||(i=e.charCodeAt(s++))>255)throw new TypeError("invalid character found");t=r<<16|n<<8|i,o+=Coe[t>>18&63]+Coe[t>>12&63]+Coe[t>>6&63]+Coe[63&t]}return a?o.slice(0,a-3)+"===".substring(a):o},zoe=e=>{if(e=e.replace(/\s+/g,""),!Ioe.test(e))throw new TypeError("malformed base64.");e+="==".slice(2-(3&e.length));let t,r,n,i="";for(let o=0;o>16&255):64===n?Moe(t>>16&255,t>>8&255):Moe(t>>16&255,t>>8&255,255&t);return i},Boe="function"===typeof atob?e=>atob(Noe(e)):joe?e=>Toe.from(e,"base64").toString("binary"):zoe,Uoe=joe?e=>Loe(Toe.from(e,"base64")):e=>Loe(Boe(e).split("").map((e=>e.charCodeAt(0)))),Foe=e=>Uoe($oe(e)),$oe=e=>Noe(e.replace(/[-_]/g,(e=>"-"==e?"+":"/"))),Hoe=(0,Ns.invert)({at:"access_token",a:"authuser",ei:"expires_in",it:"id_token",ii:"instanceId",p:"prompt",sc:"scope",st:"state",vi:"version_info"}),Voe=e=>{const t=new URLSearchParams((r=e.replace("umami://auth/",""),Ooe(Foe(r),{to:"string"})));var r;const n=(e,r)=>{var n;return e[r]=null!==(n=t.get(Hoe[r]))&&void 0!==n?n:t.get(r),e},i={verifier:"umami",redirectToOpener:"true",typeOfLogin:"google",...n({},"instanceId")},o={hd:"trili.tech",token_type:"Bearer",...["state","access_token","expires_in","scope","id_token","authuser","prompt"].reduce(n,{})};return{channel:`redirect_channel_${i.instanceId}`,data:{instanceParams:i,hashParams:o},...n({},"error")}},qoe=({children:e,...t})=>(0,xn.jsxs)(BF,{color:AO.orange,fontSize:"12px",...t,children:[(0,xn.jsx)(NP,{as:IR,marginRight:"6px"}),e]}),Koe=({inputName:e,label:t="Password",placeholder:r="Enter your password",required:n="Password is required",validate:o,...a})=>{const{register:s}=h$(),[c,l]=(0,i.useState)(!1);return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(TH,{children:t}),(0,xn.jsxs)(MH,{marginTop:"12px",children:[(0,xn.jsx)(DH,{"aria-label":t,autoComplete:"off",placeholder:r,type:c?"text":"password",...s(e,{required:n,minLength:{value:n?8:0,message:"Your password must be at least 8 characters long"},validate:o}),...a}),(0,xn.jsx)(FH,{children:(0,xn.jsx)(Gn,{onClick:()=>l((e=>!e)),tabIndex:-1,variant:"unstyled",children:c?(0,xn.jsx)(DR,{"data-testid":"eye-slash-icon"}):(0,xn.jsx)(NR,{width:"16.5px","data-testid":"eye-icon"})})})]})]})},Woe=({signer:e,onSubmit:t,isLoading:r,isDisabled:n,text:i})=>{const o=xH({mode:"onBlur",defaultValues:{password:""}}),{handleSubmit:a,formState:{errors:s,isValid:c}}=o,l=Xq(),u=(()=>{const e=S6(),t=E6();return async(r,n)=>{if("secret_key"===r.type){const e=t[r.address.pkh];if(!e)throw new Error(`Missing secret key for account ${r.address.pkh}`);return Ol(e,n)}{const t=e[r.seedFingerPrint];if(!t)throw new Error(`Missing seedphrase for account ${r.address.pkh}`);const i=await Ol(t,n);return P3(i,r.derivationPath,r.curve)}}})(),d=fL(),{isLoading:h,handleAsyncAction:f}=tre(),p=h||r,m=async({password:r})=>f((async()=>{const n=await u(e,r);return t(await S3({type:"mnemonic",secretKey:n,network:l}))})),g=async({password:r})=>f((async()=>{const n=await u(e,r);return t(await S3({type:"secret_key",secretKey:n,network:l}))})),v=async()=>f((async()=>{const{secretKey:e}=await Qte();return t(await S3({type:"social",secretKey:e,network:l}))})),y=async()=>f((async()=>(d({id:"ledger-sign-toast",description:"Please approve the operation on your Ledger",status:"info",duration:6e4,isClosable:!0}),t(await S3({type:"ledger",account:e,network:l})))),(e=>({description:`${e.message} Please connect your ledger, open Tezos app and try submitting transaction again`,status:"error"}))).finally((()=>d.close("ledger-sign-toast")));switch(e.type){case"secret_key":case"mnemonic":return(0,xn.jsx)(En,{width:"100%",children:(0,xn.jsxs)(f$,{...o,children:[(0,xn.jsxs)(LF,{isInvalid:!!s.password,marginY:"16px",children:[(0,xn.jsx)(Koe,{"data-testid":"password",inputName:"password"}),s.password&&(0,xn.jsx)(qoe,{children:s.password.message})]}),(0,xn.jsx)(Gn,{width:"100%",marginTop:"8px",isDisabled:n||!c,isLoading:p,onClick:a("mnemonic"===e.type?m:g),size:"lg",type:"submit",children:i||"Submit Transaction"})]})});case"social":return(0,xn.jsx)(Gn,{width:"100%",isDisabled:n,isLoading:p,onClick:v,size:"lg",children:i||"Sign with Google"});case"ledger":return(0,xn.jsx)(Gn,{width:"100%",isDisabled:n,isLoading:p,onClick:y,size:"lg",children:i||"Sign with Ledger"})}},Goe=({request:e})=>{const{onClose:t}=(0,i.useContext)(dL),r=O6()(e.sourceAddress),n=fL();return(0,xn.jsxs)(VU,{children:[(0,xn.jsx)(qU,{marginBottom:"32px",textAlign:"center",children:"Connect with pairing request"}),(0,xn.jsx)(GU,{}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(Ln,{marginBottom:"12px",size:"l",children:`${e.appMetadata.name}/dApp Pairing Request`}),(0,xn.jsx)(En,{padding:"15px",border:"1px solid",borderColor:AO.gray[500],borderRadius:"4px",backgroundColor:AO.gray[800],children:(0,xn.jsx)(WU,{color:AO.gray[450],size:"md",children:e.payload})})]}),(0,xn.jsx)(FF,{justifyContent:"center",display:"flex",padding:"16px 0 0 0",children:(0,xn.jsx)(Woe,{onSubmit:async r=>{const i=await r.signer.sign(e.payload),o={type:RL.SignPayloadResponse,id:e.id,signingType:e.signingType,signature:i.prefixSig};await _H.respond(o),n({description:"Successfully submitted Beacon operation",status:"success"}),t()},signer:r,text:"Connect"})})]})},Zoe=wn(qU,{baseStyle:{padding:0,paddingBottom:"32px",textAlign:"center"}}),Yoe=({title:e="Send",subTitle:t="Send one or insert into batch"})=>(0,xn.jsxs)(Zoe,{children:[(0,xn.jsx)(Ln,{size:"2xl",children:e}),(0,xn.jsx)(WU,{marginTop:"10px",color:AO.gray[400],textAlign:"center",size:"sm",children:t}),(0,xn.jsx)(GU,{})]});function Xoe(e){const{viewBox:t="0 0 24 24",d:r,displayName:n,defaultProps:o={}}=e,a=i.Children.toArray(e.path),s=v(((e,n)=>(0,xn.jsx)(NP,{ref:n,viewBox:t,...o,...e,children:a.length?a:(0,xn.jsx)("path",{fill:"currentColor",d:r})})));return s.displayName=n,s}var Joe=Xoe({d:"M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z",displayName:"ArrowBackIcon"});const Qoe=({onClick:e})=>(0,xn.jsx)(t4,{...$O,"aria-label":"Back","data-testid":"back-button",icon:(0,xn.jsx)(Joe,{width:"24px",height:"20px"}),onClick:e,size:"sm",variant:"ghost"}),eae=(e,t)=>{let r;switch(e){case"implicit":r="batch"===t?"Submit":"Confirm";break;case"proposal":r="Propose"}switch(t){case"single":return`${r} Transaction`;case"batch":return`${r} Batch`}},tae=e=>{switch(e.type){case"ledger":case"social":return;case"mnemonic":case"secret_key":return"Enter your password to confirm this transaction."}},rae=({goBack:e,mode:t,operationsType:r,signer:n,title:i,description:o,children:a})=>(0,xn.jsxs)(Zoe,{children:[e&&(0,xn.jsx)(Qoe,{onClick:e}),(0,xn.jsx)(Ln,{"data-testid":"sign-page-header",size:"2xl",children:i||eae(r,t)}),(0,xn.jsx)(WU,{marginTop:"10px",color:AO.gray[400],textAlign:"center",size:"sm",children:o||tae(n)}),(0,xn.jsx)(GU,{}),a]}),nae=({operation:e,message:t,mode:r})=>(0,xn.jsxs)(rae,{mode:r,operationsType:e.type,signer:e.signer,children:[(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"center",marginTop:"10px",children:[(0,xn.jsx)(Ln,{marginRight:"4px",color:AO.gray[450],size:"sm",children:"Network:"}),(0,xn.jsx)(WU,{color:AO.gray[400],size:"sm",children:(0,Ns.capitalize)(t.network.type)})]}),(0,xn.jsxs)(_n,{alignItems:"center",marginTop:"16px",padding:"15px",borderRadius:"4px",backgroundColor:AO.gray[800],children:[(0,xn.jsx)(XU,{width:"30px",marginRight:"12px",ratio:1,children:(0,xn.jsx)(mI,{borderRadius:"4px",src:t.appMetadata.icon})}),(0,xn.jsx)(Ln,{size:"sm",children:t.appMetadata.name})]})]}),iae=e=>(0,xn.jsx)(NP,{width:"14px",height:"14px",fill:"none",stroke:AO.gray[450],viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M13 1L7 7M13 1V4.375M13 1H9.625M12.25 7.375V10.6C12.25 11.4401 12.25 11.8601 12.0865 12.181C11.9427 12.4632 11.7132 12.6927 11.431 12.8365C11.1101 13 10.6901 13 9.85 13H3.4C2.55992 13 2.13988 13 1.81901 12.8365C1.53677 12.6927 1.3073 12.4632 1.16349 12.181C1 11.8601 1 11.4401 1 10.6V4.15C1 3.30992 1 2.88988 1.16349 2.56901C1.3073 2.28677 1.53677 2.0573 1.81901 1.91349C2.13988 1.75 2.55992 1.75 3.4 1.75H6.625",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),oae=({hash:e})=>{const t=`${Xq().tzktExplorerUrl}/${e}`,{onClose:r}=(0,i.useContext)(dL),n=qT();return(0,xn.jsxs)(VU,{paddingY:"20px",children:[(0,xn.jsx)(GU,{}),(0,xn.jsx)(qU,{textAlign:"center",children:(0,xn.jsx)(Ln,{children:"Operation Submitted"})}),(0,xn.jsx)(ZU,{children:(0,xn.jsx)(_n,{justifyContent:"center",marginTop:"10px",children:(0,xn.jsx)(WU,{color:"text.dark",textAlign:"center",size:"sm",children:"You can follow this operation's progress in the Operations section. It may take up to 30 seconds to appear."})})}),(0,xn.jsxs)(FF,{justifyContent:"center",flexDirection:"column",width:"100%",children:[(0,xn.jsx)(Gn,{width:"100%",onClick:()=>{r(),n("/operations")},size:"lg",children:"See all Operations"}),(0,xn.jsx)(yj,{rel:"noopener noreferrer",target:"_blank",to:t,children:(0,xn.jsx)(_n,{alignItems:"center",marginTop:"24px",children:(0,xn.jsxs)(Gn,{variant:"CTAWithIcon",children:[(0,xn.jsx)(WU,{marginRight:"4px",children:"View in Tzkt"}),(0,xn.jsx)(iae,{stroke:"currentcolor"})]})})})]})]})},aae=(e,t)=>{const{isLoading:r,handleAsyncAction:n}=tre(),{openWith:o}=(0,i.useContext)(dL);return{isSigning:r,onSign:async r=>n((async()=>{const{opHash:n}=await a6(e,r),i={type:RL.OperationResponse,id:t.id,transactionHash:n};return await _H.respond(i),o((0,xn.jsx)(oae,{hash:n}))}),(e=>({description:`Failed to confirm Beacon operation: ${e.message}`})))}},sae=({fee:e})=>(0,xn.jsxs)(_n,{alignItems:"center",children:[(0,xn.jsx)(Ln,{marginRight:"4px",color:AO.gray[450],size:"sm",children:"Fee:"}),(0,xn.jsx)(WU,{color:AO.gray[400],"data-testid":"fee",size:"sm",children:u6(e)})]}),cae=({operation:e,fee:t,message:r})=>{const{isSigning:n,onSign:i}=aae(e,r),{signer:o}=e,a=e.operations.length;return(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(nae,{message:r,mode:"batch",operation:e}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(_F,{allowToggle:!0,children:(0,xn.jsxs)(kF,{background:AO.gray[800],border:"none",borderRadius:"8px",children:[(0,xn.jsxs)(SF,{children:[(0,xn.jsx)(Ln,{flex:"1",textAlign:"left",paddingY:"6px",size:"sm",children:"Operations"}),(0,xn.jsx)(EF,{})]}),(0,xn.jsx)(jF,{children:(0,xn.jsx)(OH,{overflowY:"auto",maxHeight:"200px",value:r.operationDetails})})]})}),(0,xn.jsx)(TH,{marginTop:"16px",children:"From"}),(0,xn.jsx)(V6,{address:o.address}),(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",marginY:"12px",paddingX:"4px",children:[(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(WU,{marginRight:"4px",color:AO.gray[450],size:"sm",children:"Transactions:"}),(0,xn.jsx)(WU,{color:AO.gray[400],"data-testid":"transaction-length",size:"sm",children:a})]}),(0,xn.jsx)(sae,{fee:t})]})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isLoading:n,onSubmit:i,signer:o,text:eae(e.type,"batch")})})]})})},lae=({mutezAmount:e})=>(0,xn.jsxs)(_n,{alignItems:"center",height:"60px",padding:"15px",background:AO.gray[800],borderRadius:"4px",children:[(0,xn.jsx)(dI,{marginRight:"12px"}),(0,xn.jsx)(_n,{alignItems:"end",children:(0,xn.jsx)($6,{number:u6(e)})})]}),uae=({operation:e,fee:t,message:r})=>{const{amount:n,contract:i,entrypoint:o,args:a}=e.operations[0],{isSigning:s,onSign:c}=aae(e,r);return(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(nae,{message:r,mode:"single",operation:e}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(lae,{mutezAmount:n}),(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,xn.jsx)(sae,{fee:t})}),(0,xn.jsx)(TH,{marginTop:"24px",children:"From "}),(0,xn.jsx)(V6,{address:e.sender.address}),(0,xn.jsx)(TH,{marginTop:"24px",children:"To "}),(0,xn.jsx)(V6,{address:i}),(0,xn.jsx)(TH,{marginTop:"24px",children:"Contract Call Parameter"}),(0,xn.jsx)(_F,{allowToggle:!0,children:(0,xn.jsxs)(kF,{background:AO.gray[800],border:"none",borderRadius:"8px",children:[(0,xn.jsxs)(SF,{children:[(0,xn.jsx)(En,{flex:"1",textAlign:"left",children:"JSON"}),(0,xn.jsx)(EF,{})]}),(0,xn.jsx)(jF,{children:(0,xn.jsx)(OH,{value:{entrypoint:o,values:a}})})]})})]}),(0,xn.jsx)(FF,{padding:"16px 0 0 0",children:(0,xn.jsx)(Woe,{isLoading:s,onSubmit:c,signer:e.signer,text:eae(e.type,"single")})})]})})},dae=({operation:e,fee:t,message:r})=>{const{recipient:n}=e.operations[0],{isSigning:i,onSign:o}=aae(e,r);return(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(nae,{message:r,mode:"single",operation:e}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(TH,{children:"From"}),(0,xn.jsx)(V6,{address:e.signer.address}),(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,xn.jsx)(_n,{alignItems:"center",children:(0,xn.jsx)(sae,{fee:t})})}),(0,xn.jsx)(TH,{children:"To"}),(0,xn.jsx)(V6,{address:n})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isLoading:i,onSubmit:o,signer:e.signer,text:eae(e.type,"single")})})]})})},hae=({operation:e,fee:t,message:r})=>{const{amount:n,recipient:i}=e.operations[0],{isSigning:o,onSign:a}=aae(e,r);return(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(nae,{message:r,mode:"single",operation:e}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(lae,{mutezAmount:n}),(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,xn.jsx)(sae,{fee:t})}),(0,xn.jsx)(TH,{marginTop:"24px",children:"From "}),(0,xn.jsx)(V6,{address:e.sender.address}),(0,xn.jsx)(TH,{marginTop:"24px",children:"To "}),(0,xn.jsx)(V6,{address:i})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isLoading:o,onSubmit:a,signer:e.signer,text:eae(e.type,"single")})})]})})},fae=({operation:e,fee:t,message:r})=>{const{isSigning:n,onSign:i}=aae(e,r);return(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(nae,{message:r,mode:"single",operation:e}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(TH,{children:"From"}),(0,xn.jsx)(V6,{address:e.signer.address}),(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"end",marginTop:"12px",paddingX:"4px",children:(0,xn.jsx)(sae,{fee:t})})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isLoading:n,onSubmit:i,signer:e.signer,text:eae(e.type,"single")})})]})})},pae=({operation:e,fee:t,message:r})=>{switch(e.operations[0].type){case"tez":return(0,xn.jsx)(hae,{fee:t,message:r,operation:e});case"contract_call":return(0,xn.jsx)(uae,{fee:t,message:r,operation:e});case"delegation":return(0,xn.jsx)(dae,{fee:t,message:r,operation:e});case"undelegation":return(0,xn.jsx)(fae,{fee:t,message:r,operation:e});case"fa1.2":case"fa2":case"contract_origination":throw new Error("Unsupported operation type")}},mae=(e,t)=>{if(0===e.length)throw new Error("Empty operation details!");const r=e.map((e=>gae(e,t)));return{type:"implicit",sender:t,operations:r,signer:t}},gae=(e,t)=>{switch(e.kind){case LL.TRANSACTION:{const{destination:t,amount:r,parameters:n}=e;return Hd(t)&&n?{type:"contract_call",amount:r,contract:qd(t),entrypoint:n.entrypoint,args:n.value}:{type:"tez",amount:r,recipient:Kd(e.destination)}}case LL.DELEGATION:{const{delegate:r}=e;return r?{type:"delegation",sender:t.address,recipient:Kd(r)}:{type:"undelegation",sender:t.address}}default:throw new Error(`Unsupported operation kind: ${e.kind}`)}},vae=({children:e})=>{const t=fL(),r=(()=>{const{openWith:e}=(0,i.useContext)(dL),{handleAsyncAction:t}=tre(),r=I6(),n=Xq();return i=>{t((async()=>{let t;switch(i.type){case RL.PermissionRequest:t=(0,xn.jsx)(e4,{request:i});break;case RL.SignPayloadRequest:t=(0,xn.jsx)(Goe,{request:i});break;case RL.OperationRequest:{const e=r(i.sourceAddress),o=mae(i.operationDetails,e),a=await C3(o,n);t=1===o.operations.length?(0,xn.jsx)(pae,{fee:a,message:i,operation:o}):(0,xn.jsx)(cae,{fee:a,message:i,operation:o});break}default:throw new Error(`Unknown Beacon message type: ${i.type}`)}return e(t)}),(e=>({description:`Error while processing Beacon request: ${e.message}`})))}})();return(0,i.useEffect)((()=>{_H.init().then((()=>_H.connect(r))).catch((e=>{t({status:e,description:`Failed to connect to Beacon: ${e.message}`})}))})),e};var yae=class extends vi{constructor(e,t){super(),this.options=t,this.#S=e,this.#E=null,this.bindMethods(),this.setOptions(t)}#S;#A=void 0;#P=void 0;#O=void 0;#T;#j;#E;#C;#R;#I;#M;#L;#N;#D=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.size&&(this.#A.addObserver(this),bae(this.#A,this.options)?this.#z():this.updateResult(),this.#B())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return wae(this.#A,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return wae(this.#A,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#U(),this.#F(),this.#A.removeObserver(this)}setOptions(e,t){const r=this.options,n=this.#A;if(this.options=this.#S.defaultQueryOptions(e),void 0!==this.options.enabled&&"boolean"!==typeof this.options.enabled)throw new Error("Expected enabled to be a boolean");this.#$(),this.#A.setOptions(this.options),r._defaulted&&!ci(this.options,r)&&this.#S.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#A,observer:this});const i=this.hasListeners();i&&xae(this.#A,n,this.options,r)&&this.#z(),this.updateResult(t),!i||this.#A===n&&this.options.enabled===r.enabled&&this.options.staleTime===r.staleTime||this.#H();const o=this.#V();!i||this.#A===n&&this.options.enabled===r.enabled&&o===this.#N||this.#q(o)}getOptimisticResult(e){const t=this.#S.getQueryCache().build(this.#S,e),r=this.createResult(t,e);return function(e,t){if(!ci(e.getCurrentResult(),t))return!0;return!1}(this,r)&&(this.#O=r,this.#j=this.options,this.#T=this.#A.state),r}getCurrentResult(){return this.#O}trackResult(e,t){const r={};return Object.keys(e).forEach((n=>{Object.defineProperty(r,n,{configurable:!1,enumerable:!0,get:()=>(this.trackProp(n),t?.(n),e[n])})})),r}trackProp(e){this.#D.add(e)}getCurrentQuery(){return this.#A}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){const t=this.#S.defaultQueryOptions(e),r=this.#S.getQueryCache().build(this.#S,t);return r.isFetchingOptimistic=!0,r.fetch().then((()=>this.createResult(r,t)))}fetch(e){return this.#z({...e,cancelRefetch:e.cancelRefetch??!0}).then((()=>(this.updateResult(),this.#O)))}#z(e){this.#$();let t=this.#A.fetch(this.options,e);return e?.throwOnError||(t=t.catch(Qn)),t}#H(){if(this.#U(),Jn||this.#O.isStale||!ei(this.options.staleTime))return;const e=ti(this.#O.dataUpdatedAt,this.options.staleTime)+1;this.#M=setTimeout((()=>{this.#O.isStale||this.updateResult()}),e)}#V(){return("function"===typeof this.options.refetchInterval?this.options.refetchInterval(this.#A):this.options.refetchInterval)??!1}#q(e){this.#F(),this.#N=e,!Jn&&!1!==this.options.enabled&&ei(this.#N)&&0!==this.#N&&(this.#L=setInterval((()=>{(this.options.refetchIntervalInBackground||yi.isFocused())&&this.#z()}),this.#N))}#B(){this.#H(),this.#q(this.#V())}#U(){this.#M&&(clearTimeout(this.#M),this.#M=void 0)}#F(){this.#L&&(clearInterval(this.#L),this.#L=void 0)}createResult(e,t){const r=this.#A,n=this.options,i=this.#O,o=this.#T,a=this.#j,s=e!==r?e.state:this.#P,{state:c}=e;let l,{error:u,errorUpdatedAt:d,fetchStatus:h,status:f}=c,p=!1;if(t._optimisticResults){const i=this.hasListeners(),o=!i&&bae(e,t),a=i&&xae(e,r,t,n);(o||a)&&(h=xi(e.options.networkMode)?"fetching":"paused",void 0===c.data&&(f="pending")),"isRestoring"===t._optimisticResults&&(h="idle")}if(t.select&&void 0!==c.data)if(i&&c.data===o?.data&&t.select===this.#C)l=this.#R;else try{this.#C=t.select,l=t.select(c.data),l=hi(i?.data,l,t),this.#R=l,this.#E=null}catch(w){this.#E=w}else l=c.data;if(void 0!==t.placeholderData&&void 0===l&&"pending"===f){let e;if(i?.isPlaceholderData&&t.placeholderData===a?.placeholderData)e=i.data;else if(e="function"===typeof t.placeholderData?t.placeholderData(this.#I?.state.data,this.#I):t.placeholderData,t.select&&void 0!==e)try{e=t.select(e),this.#E=null}catch(w){this.#E=w}void 0!==e&&(f="success",l=hi(i?.data,e,t),p=!0)}this.#E&&(u=this.#E,l=this.#R,d=Date.now(),f="error");const m="fetching"===h,g="pending"===f,v="error"===f,y=g&&m,b=void 0!==c.data;return{status:f,fetchStatus:h,isPending:g,isSuccess:"success"===f,isError:v,isInitialLoading:y,isLoading:y,data:l,dataUpdatedAt:c.dataUpdatedAt,error:u,errorUpdatedAt:d,failureCount:c.fetchFailureCount,failureReason:c.fetchFailureReason,errorUpdateCount:c.errorUpdateCount,isFetched:c.dataUpdateCount>0||c.errorUpdateCount>0,isFetchedAfterMount:c.dataUpdateCount>s.dataUpdateCount||c.errorUpdateCount>s.errorUpdateCount,isFetching:m,isRefetching:m&&!g,isLoadingError:v&&!b,isPaused:"paused"===h,isPlaceholderData:p,isRefetchError:v&&b,isStale:_ae(e,t),refetch:this.refetch}}updateResult(e){const t=this.#O,r=this.createResult(this.#A,this.options);if(this.#T=this.#A.state,this.#j=this.options,void 0!==this.#T.data&&(this.#I=this.#A),ci(r,t))return;this.#O=r;const n={};!1!==e?.listeners&&(()=>{if(!t)return!0;const{notifyOnChangeProps:e}=this.options,r="function"===typeof e?e():e;if("all"===r||!r&&!this.#D.size)return!0;const n=new Set(r??this.#D);return this.options.throwOnError&&n.add("error"),Object.keys(this.#O).some((e=>{const r=e;return this.#O[r]!==t[r]&&n.has(r)}))})()&&(n.listeners=!0),this.#K({...n,...e})}#$(){const e=this.#S.getQueryCache().build(this.#S,this.options);if(e===this.#A)return;const t=this.#A;this.#A=e,this.#P=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#B()}#K(e){gi.batch((()=>{e.listeners&&this.listeners.forEach((e=>{e(this.#O)})),this.#S.getQueryCache().notify({query:this.#A,type:"observerResultsUpdated"})}))}};function bae(e,t){return function(e,t){return!1!==t.enabled&&void 0===e.state.data&&!("error"===e.state.status&&!1===t.retryOnMount)}(e,t)||void 0!==e.state.data&&wae(e,t,t.refetchOnMount)}function wae(e,t,r){if(!1!==t.enabled){const n="function"===typeof r?r(e):r;return"always"===n||!1!==n&&_ae(e,t)}return!1}function xae(e,t,r,n){return(e!==t||!1===n.enabled)&&(!r.suspense||"error"!==e.state.status)&&_ae(e,r)}function _ae(e,t){return!1!==t.enabled&&e.isStaleByTime(t.staleTime)}function kae(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var Sae=i.createContext(kae()),Eae=()=>i.useContext(Sae),Aae=i.createContext(!1),Pae=()=>i.useContext(Aae);Aae.Provider;var Oae=(e,t)=>{(e.suspense||e.throwOnError)&&(t.isReset()||(e.retryOnMount=!1))},Tae=e=>{i.useEffect((()=>{e.clearReset()}),[e])},jae=({result:e,errorResetBoundary:t,throwOnError:r,query:n})=>e.isError&&!t.isReset()&&!e.isFetching&&n&&function(e,t){return"function"===typeof e?e(...t):!!e}(r,[e.error,n]),Cae=e=>{e.suspense&&"number"!==typeof e.staleTime&&(e.staleTime=1e3)},Rae=(e,t)=>e?.suspense&&t.isPending,Iae=(e,t,r)=>t.fetchOptimistic(e).catch((()=>{r.clearReset()}));function Mae(e,t){return function(e,t,r){const n=Mi(r),o=Pae(),a=Eae(),s=n.defaultQueryOptions(e);s._optimisticResults=o?"isRestoring":"optimistic",Cae(s),Oae(s,a),Tae(a);const[c]=i.useState((()=>new t(n,s))),l=c.getOptimisticResult(s);if(i.useSyncExternalStore(i.useCallback((e=>{const t=o?()=>{}:c.subscribe(gi.batchCalls(e));return c.updateResult(),t}),[c,o]),(()=>c.getCurrentResult()),(()=>c.getCurrentResult())),i.useEffect((()=>{c.setOptions(s,{listeners:!1})}),[s,c]),Rae(s,l))throw Iae(s,c,a);if(jae({result:l,errorResetBoundary:a,throwOnError:s.throwOnError,query:n.getQueryCache().get(s.queryHash)}))throw l.error;return s.notifyOnChangeProps?l:c.trackResult(l)}(e,yae,t)}const Lae=1963879877,Nae=-1890025422,Dae=e=>({address:qd(e.address),threshold:Number(e.storage.threshold),signers:e.storage.signers.map(Kd),pendingOperationsBigmapId:e.storage.pending_ops}),zae=async(e,t)=>X3((async()=>{const r=await(e=>X3((async()=>{try{const t=`${e.tzktApiUrl}/v1/contracts?typeHash=1963879877&codeHash=-1890025422&includeStorage=true&limit=10000`,{data:r}=await hR.get(t);return r}catch(t){throw new Error(`Error fetching same contracts from tzkt: ${t.message}`)}})))(t);return r.filter((({storage:{signers:t}})=>{if(!(0,Ns.every)(t,Vd))return!1;const r=t.filter((t=>e.has(t)));return r.length>0})).map(Dae)})),Bae=e=>{const{bigmap:t,key:r,value:n}=e;if(null===r||null===n)throw new Error("parseMultisigOperation failed");return{id:r,bigmapId:t,rawActions:n.actions,approvals:n.approvals.map(Kd)}},Uae=async(e,t)=>0===e.length?[]:X3((async()=>{const r=e.map((e=>e.pendingOperationsBigmapId)),n=await((e,t)=>0===e.length?Promise.resolve([]):X3((async()=>{const r=`${t.tzktApiUrl}/v1/bigmaps/keys?active=true&bigmap.in=${e.join(",")}&limit=10000`,{data:n}=await hR.get(r);return n})))(r,t);return(0,Ns.compact)(n.map(Bae))})),Fae=async(e,t,r)=>{const n=await Uae(r,t);e(zh.setPendingOperations(n.flat()))},$ae=async(e,t,r)=>{const n=await J3(r,t);e(xh.updateTezBalance(n.flat()))},Hae=async(e,t,r)=>{const n=await Q3(r,t),i=n.flat().map((({token:e,lastLevel:t})=>({...e,lastLevel:t})));e(Vh.addTokens({network:t,tokens:i})),e(xh.updateTokenBalance(n.flat()))},Vae=async e=>{const t=await(async()=>{const{data:{data:{priceUsd:e}}}=await hR.get("https://api.coincap.io/v2/assets/tezos");return null!==e&&void 0!==e?e:null})();return e(xh.updateConversionRate(t)),null},qae=()=>{const e=AI(),t=A6(),r=PI((e=>e.assets.refetchTrigger)),n=Xq(),o=fL(),a=t.map((e=>e.address.pkh)),s=(0,i.useCallback)((t=>{t&&(e(Lh.actions.add(ere(t))),o({description:`Data fetching error: ${t.message}`,status:"error",isClosable:!0}))}),[e,o]),{error:c}=Mae({queryKey:["allAssets",e,n,a,r],queryFn:()=>(async(e,t,r)=>{try{e(xh.setIsLoading(!0));const n=await zae(new Set(r),t);e(zh.setMultisigs(n));const i=[...r,...n.map((e=>e.address.pkh))];return await Promise.all([Fae(e,t,n),$ae(e,t,i),Hae(e,t,i)]),e(xh.setLastTimeUpdated((new Date).toUTCString())),null}finally{e(xh.setIsLoading(!1))}})(e,n,a),retry:!1,refetchInterval:15e3,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),{error:l}=Mae({queryKey:["conversionRate",e],queryFn:()=>Vae(e),refetchInterval:3e5,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),{error:u}=Mae({queryKey:["blockNumber",e,n],queryFn:()=>(async(e,t)=>{const r=await i6(t);return e(xh.updateBlockLevel(r)),null})(e,n),retry:!1,refetchInterval:15e3,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),{error:d}=Mae({queryKey:["bakers",e,n],queryFn:()=>(async(e,t)=>{const r=(await o6(t)).map((({address:e,alias:t,stakingBalance:r})=>({address:e,stakingBalance:r,name:null!==t&&void 0!==t?t:"Unknown baker"})));return e(xh.updateBakers(r)),null})(e,n),retry:!1,refetchInterval:72e5,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1});(0,i.useEffect)((()=>s(c)),[c,s]),(0,i.useEffect)((()=>s(l)),[l,s]),(0,i.useEffect)((()=>s(u)),[u,s]),(0,i.useEffect)((()=>s(d)),[d,s])},Kae=Bd.object({id:Bd.string(),type:Bd.string(),name:Bd.string(),publicKey:Bd.string(),version:Bd.string(),icon:Bd.string().optional(),relayServer:Bd.string().optional()}).parse,Wae="beaconPeers",Gae=()=>{const e=Mi();return()=>e.refetchQueries({queryKey:[Wae]})},Zae=()=>{const e=Gae(),t=(()=>{const e=co();return t=>e(Th.actions.removeConnection({dAppId:t}))})();return r=>_H.removePeer(r).then((()=>t(r.senderId))).then(e)},Yae=()=>{const e=Gae(),t=fL();return r=>(new xN).deserialize(r).then(Kae).then((e=>_H.addPeer(e))).then(e).catch((e=>{t({description:"Beacon sync code in the clipboard is invalid. Please copy a beacon sync code from the dApp",status:"error"}),console.error(e)}))};var Xae=v(((e,t)=>{var r;const{overflow:n,overflowX:i,className:o,...a}=e;return(0,xn.jsx)(wn.div,{ref:t,className:y("chakra-table__container",o),...a,__css:{display:"block",whiteSpace:"nowrap",WebkitOverflowScrolling:"touch",overflowX:null!=(r=null!=n?n:i)?r:"auto",overflowY:"hidden",maxWidth:"100%"}})})),[Jae,Qae]=Nn({name:"TableStylesContext",errorMessage:"useTableStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),ese=v(((e,t)=>{const r=Mn("Table",e),{className:n,layout:i,...o}=ft(e);return(0,xn.jsx)(Jae,{value:r,children:(0,xn.jsx)(wn.table,{ref:t,__css:{tableLayout:i,...r.table},className:y("chakra-table",n),...o})})}));ese.displayName="Table";var tse=v(((e,t)=>{const r=Qae();return(0,xn.jsx)(wn.tbody,{...e,ref:t,__css:r.tbody})})),rse=v(((e,t)=>{const r=Qae();return(0,xn.jsx)(wn.tr,{...e,ref:t,__css:r.tr})})),nse=v((({isNumeric:e,...t},r)=>{const n=Qae();return(0,xn.jsx)(wn.td,{...t,ref:r,__css:n.td,"data-is-numeric":e})}));const ise="TOAST_ID",ose=({pkh:e,formatAddress:t=!0,copyable:r=!0,iconColor:n=AO.gray[600],...i})=>(0,xn.jsx)(ase,{copyValue:r?e:void 0,displayText:t?d6(e):e,iconColor:n,toastMessage:"Address copied to clipboard",...i}),ase=({displayText:e,copyValue:t,toastMessage:r,iconColor:n,...i})=>{const o=fL();return(0,xn.jsxs)(_n,{alignItems:"center",...i,children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[400],size:"sm",children:e}),t&&(0,xn.jsx)($R,{stroke:AO.gray[450],_hover:{stroke:AO.green},cursor:"pointer",onClick:()=>(async()=>{t&&(await navigator.clipboard.writeText(t),r&&!o.isActive(ise)&&o({status:"success",description:r,id:ise,isClosable:!0}))})()})]})},sse=({title:e,buttonText:t,contact:r})=>{const n=AI(),o=R6(),{isOpen:a,onClose:s}=(0,i.useContext)(dL),{handleSubmit:c,formState:{isValid:l,errors:u},register:d,reset:h,getValues:f}=xH({mode:"onBlur",defaultValues:r}),p=void 0!==r,m=T6(),{nameExistsInContacts:g,addressExistsInContacts:v}=x6(),y=(0,i.useRef)(h);return(0,i.useEffect)((()=>{a&&y.current(r)}),[a,r]),(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{onSubmit:c((({name:e,pkh:t})=>{var r;r={name:e.trim(),pkh:t},o(r.pkh)||(n(Ih.upsert(r)),s()),h()})),children:[(0,xn.jsx)(qU,{textAlign:"center",children:e}),(0,xn.jsx)(GU,{}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsxs)(LF,{isInvalid:!!u.name,marginY:5,children:[(0,xn.jsx)(TH,{children:"Name"}),(0,xn.jsx)(DH,{type:"text",...d("name",{required:"Name is required",validate:e=>m.map((e=>e.label)).includes(e)?"Name already used in accounts":!g(e.trim())||"Name already registered"}),placeholder:"Enter contact's name"}),u.name&&(0,xn.jsx)(qoe,{children:u.name.message})]}),(0,xn.jsxs)(LF,{isInvalid:!!u.pkh,marginY:5,children:[(0,xn.jsx)(TH,{children:"Address"}),(0,xn.jsx)(DH,{type:"text",...d("pkh",{required:"Address is required",validate:e=>$d(e)?p?f("name")!==r.name:o(e)?"Address already used in accounts":!v(e)||"Address already registered":"Invalid address"}),disabled:p,placeholder:"Enter contact\u2019s tz address",value:null===r||void 0===r?void 0:r.pkh,variant:p?"filled":void 0}),u.pkh&&(0,xn.jsx)(qoe,{children:u.pkh.message})]})]}),(0,xn.jsx)(FF,{padding:"16px 0 0 0",children:(0,xn.jsx)(En,{width:"100%",children:(0,xn.jsx)(Gn,{width:"100%",marginBottom:2,isDisabled:!l,size:"lg",type:"submit",children:t})})})]})})},cse=({contact:e})=>{const t=AI(),{onClose:r}=(0,i.useContext)(dL);return(0,xn.jsxs)(VU,{children:[(0,xn.jsx)(qU,{marginBottom:"10px",textAlign:"center",children:"Delete Contact"}),(0,xn.jsx)(GU,{}),(0,xn.jsx)(ZU,{children:(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",flexDirection:"column",children:[(0,xn.jsx)(WU,{color:AO.gray[400],size:"sm",children:"Are you sure you want to remove this contact?"}),(0,xn.jsxs)(En,{marginTop:5,children:[(0,xn.jsx)(Ln,{marginBottom:3,textAlign:"center",size:"md",children:e.name}),(0,xn.jsx)(ose,{pkh:e.pkh})]})]})}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(En,{width:"100%",children:(0,xn.jsx)(Gn,{width:"100%",marginBottom:2,onClick:()=>{t(Ih.remove(e.pkh)),r()},variant:"warning",children:"Delete"})})})]})};var lse=v((function(e,t){const{borderLeftWidth:r,borderBottomWidth:n,borderTopWidth:i,borderRightWidth:o,borderWidth:a,borderStyle:s,borderColor:c,...l}=In("Divider",e),{className:u,orientation:d="horizontal",__css:h,...f}=ft(e),p={vertical:{borderLeftWidth:r||o||a||"1px",height:"100%"},horizontal:{borderBottomWidth:n||i||a||"1px",width:"100%"}};return(0,xn.jsx)(wn.hr,{ref:t,"aria-orientation":d,...f,__css:{...l,border:"0",borderColor:c,borderStyle:s,...p[d],...h},className:y("chakra-divider",u)})}));function use(e){const{isOpen:t,ref:r}=e,[n,o]=(0,i.useState)(t),[a,s]=(0,i.useState)(!1);(0,i.useEffect)((()=>{a||(o(t),s(!0))}),[t,a,n]),Nq((()=>r.current),"animationend",(()=>{o(t)}));return{present:!(!t&&!n),onComplete(){var e;const t=function(e){var t,r;return null!=(r=null==(t=RU(e))?void 0:t.defaultView)?r:window}(r.current),n=new t.CustomEvent("animationend",{bubbles:!0});null==(e=r.current)||e.dispatchEvent(n)}}}lse.displayName="Divider";var dse=()=>"undefined"!==typeof window;var hse=e=>dse()&&e.test(function(){var e;const t=navigator.userAgentData;return null!=(e=null==t?void 0:t.platform)?e:navigator.platform}()),fse=()=>hse(/mac|iphone|ipad|ipod/i)&&(e=>dse()&&e.test(navigator.vendor))(/apple/i);function pse(e){const t=e.current;if(!t)return!1;const r=function(e){return RU(e).activeElement}(t);return!!r&&(!t.contains(r)&&!(!((n=r)&&CU(n)&&NU(n))||MU(n)));var n}function mse(e,t){const{shouldFocus:r,visible:n,focusRef:i}=t,o=r&&!n;dw((()=>{if(!o)return;if(pse(e))return;const t=(null==i?void 0:i.current)||e.current;let r;return t?(r=requestAnimationFrame((()=>{t.focus({preventScroll:!0})})),()=>{cancelAnimationFrame(r)}):void 0}),[o,e,i])}var gse={preventScroll:!0,shouldFocus:!1};function vse(e){const{wasSelected:t,enabled:r,isSelected:n,mode:i="unmount"}=e;return!r||(!!n||!("keepMounted"!==i||!t))}var yse={click:"click",hover:"hover"};function bse(e={}){const{closeOnBlur:t=!0,closeOnEsc:r=!0,initialFocusRef:n,id:o,returnFocusOnClose:a=!0,autoFocus:s=!0,arrowSize:c,arrowShadowColor:l,trigger:u=yse.click,openDelay:d=200,closeDelay:h=200,isLazy:f,lazyBehavior:p="unmount",computePositionOnMount:m,...g}=e,{isOpen:v,onClose:y,onOpen:b,onToggle:w}=Lq(e),x=(0,i.useRef)(null),_=(0,i.useRef)(null),k=(0,i.useRef)(null),S=(0,i.useRef)(!1),A=(0,i.useRef)(!1);v&&(A.current=!0);const[P,O]=(0,i.useState)(!1),[T,j]=(0,i.useState)(!1),C=(0,i.useId)(),R=null!=o?o:C,[I,M,L,N]=["popover-trigger","popover-content","popover-header","popover-body"].map((e=>`${e}-${R}`)),{referenceRef:D,getArrowProps:z,getPopperProps:B,getArrowInnerProps:U,forceUpdate:F}=Iq({...g,enabled:v||!!m}),$=use({isOpen:v,ref:k});!function(e){const{ref:t,elements:r,enabled:n}=e,i=()=>{var e,r;return null!=(r=null==(e=t.current)?void 0:e.ownerDocument)?r:document};Nq(i,"pointerdown",(e=>{if(!fse()||!n)return;const o=e.target,a=(null!=r?r:[t]).some((e=>{const t="current"in e?e.current:e;return(null==t?void 0:t.contains(o))||t===o}));i().activeElement!==o&&a&&(e.preventDefault(),o.focus())}))}({enabled:v,ref:_}),mse(k,{focusRef:_,visible:v,shouldFocus:a&&u===yse.click}),function(e,t=gse){const{focusRef:r,preventScroll:n,shouldFocus:o,visible:a}=t,s="current"in e?e.current:e,c=o&&a,l=(0,i.useRef)(c),u=(0,i.useRef)(a);mf((()=>{!u.current&&a&&(l.current=c),u.current=a}),[a,c]);const d=(0,i.useCallback)((()=>{if(a&&s&&l.current&&(l.current=!1,!s.contains(document.activeElement)))if(null==r?void 0:r.current)requestAnimationFrame((()=>{var e;null==(e=r.current)||e.focus({preventScroll:n})}));else{const e=UU(s);e.length>0&&requestAnimationFrame((()=>{e[0].focus({preventScroll:n})}))}}),[a,n,s,r]);dw((()=>{d()}),[d]),Nq(s,"transitionend",d)}(k,{focusRef:n,visible:v,shouldFocus:s&&u===yse.click});const H=vse({wasSelected:A.current,enabled:f,mode:p,isSelected:$.present}),V=(0,i.useCallback)(((e={},n=null)=>{const i={...e,style:{...e.style,transformOrigin:JH.transformOrigin.varRef,[JH.arrowSize.var]:c?`${c}px`:void 0,[JH.arrowShadowColor.var]:l},ref:Kn(k,n),children:H?e.children:null,id:M,tabIndex:-1,role:"dialog",onKeyDown:E(e.onKeyDown,(e=>{r&&"Escape"===e.key&&y()})),onBlur:E(e.onBlur,(e=>{const r=xse(e),n=wse(k.current,r),i=wse(_.current,r);v&&t&&(!n&&!i)&&y()})),"aria-labelledby":P?L:void 0,"aria-describedby":T?N:void 0};return u===yse.hover&&(i.role="tooltip",i.onMouseEnter=E(e.onMouseEnter,(()=>{S.current=!0})),i.onMouseLeave=E(e.onMouseLeave,(e=>{null!==e.nativeEvent.relatedTarget&&(S.current=!1,setTimeout((()=>y()),h))}))),i}),[H,M,P,L,T,N,u,r,y,v,t,h,l,c]),q=(0,i.useCallback)(((e={},t=null)=>B({...e,style:{visibility:v?"visible":"hidden",...e.style}},t)),[v,B]),K=(0,i.useCallback)(((e,t=null)=>({...e,ref:Kn(t,x,D)})),[x,D]),W=(0,i.useRef)(),G=(0,i.useRef)(),Z=(0,i.useCallback)((e=>{null==x.current&&D(e)}),[D]),Y=(0,i.useCallback)(((e={},r=null)=>{const n={...e,ref:Kn(_,r,Z),id:I,"aria-haspopup":"dialog","aria-expanded":v,"aria-controls":M};return u===yse.click&&(n.onClick=E(e.onClick,w)),u===yse.hover&&(n.onFocus=E(e.onFocus,(()=>{void 0===W.current&&b()})),n.onBlur=E(e.onBlur,(e=>{const r=xse(e),n=!wse(k.current,r);v&&t&&n&&y()})),n.onKeyDown=E(e.onKeyDown,(e=>{"Escape"===e.key&&y()})),n.onMouseEnter=E(e.onMouseEnter,(()=>{S.current=!0,W.current=window.setTimeout((()=>b()),d)})),n.onMouseLeave=E(e.onMouseLeave,(()=>{S.current=!1,W.current&&(clearTimeout(W.current),W.current=void 0),G.current=window.setTimeout((()=>{!1===S.current&&y()}),h)}))),n}),[I,v,M,u,Z,w,b,t,y,d,h]);(0,i.useEffect)((()=>()=>{W.current&&clearTimeout(W.current),G.current&&clearTimeout(G.current)}),[]);const X=(0,i.useCallback)(((e={},t=null)=>({...e,id:L,ref:Kn(t,(e=>{O(!!e)}))})),[L]),J=(0,i.useCallback)(((e={},t=null)=>({...e,id:N,ref:Kn(t,(e=>{j(!!e)}))})),[N]);return{forceUpdate:F,isOpen:v,onAnimationComplete:$.onComplete,onClose:y,getAnchorProps:K,getArrowProps:z,getArrowInnerProps:U,getPopoverPositionerProps:q,getPopoverProps:V,getTriggerProps:Y,getHeaderProps:X,getBodyProps:J}}function wse(e,t){return e===t||(null==e?void 0:e.contains(t))}function xse(e){var t;const r=e.currentTarget.ownerDocument.activeElement;return null!=(t=e.relatedTarget)?t:r}var[_se,kse]=Nn({name:"PopoverContext",errorMessage:"usePopoverContext: `context` is undefined. Seems you forgot to wrap all popover components within ``"}),[Sse,Ese]=Nn({name:"PopoverStylesContext",errorMessage:"usePopoverStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "});function Ase(e){const t=Mn("Popover",e),{children:r,...n}=ft(e),i=bse({...n,direction:On().direction});return(0,xn.jsx)(_se,{value:i,children:(0,xn.jsx)(Sse,{value:t,children:x(r,{isOpen:i.isOpen,onClose:i.onClose,forceUpdate:i.forceUpdate})})})}function Pse(e){const t=i.Children.only(e.children),{getTriggerProps:r}=kse();return(0,i.cloneElement)(t,r(t.props,t.ref))}function Ose(e){if(e)return{enter:{...e.enter,visibility:"visible"},exit:{...e.exit,transitionEnd:{visibility:"hidden"}}}}Ase.displayName="Popover",Pse.displayName="PopoverTrigger";var Tse={exit:{opacity:0,scale:.95,transition:{duration:.1,ease:[.4,0,1,1]}},enter:{scale:1,opacity:1,transition:{duration:.15,ease:[0,0,.2,1]}}},jse=wn(CP.section),Cse=v((function(e,t){const{variants:r=Tse,...n}=e,{isOpen:i}=kse();return(0,xn.jsx)(jse,{ref:t,variants:Ose(r),initial:!1,animate:i?"enter":"exit",...n})}));Cse.displayName="PopoverTransition";var Rse=v((function(e,t){const{rootProps:r,motionProps:n,...i}=e,{getPopoverProps:o,getPopoverPositionerProps:a,onAnimationComplete:s}=kse(),c=Ese(),l={position:"relative",display:"flex",flexDirection:"column",...c.content};return(0,xn.jsx)(wn.div,{...a(r),__css:c.popper,className:"chakra-popover__popper",children:(0,xn.jsx)(Cse,{...n,...o(i,t),onAnimationComplete:A(s,i.onAnimationComplete),className:y("chakra-popover__content",e.className),__css:l})})}));Rse.displayName="PopoverContent";var Ise=v((function(e,t){const{getBodyProps:r}=kse(),n=Ese();return(0,xn.jsx)(wn.div,{...r(e,t),className:y("chakra-popover__body",e.className),__css:n.body})}));Ise.displayName="PopoverBody";const Mse=e=>{const{onOpen:t,onClose:r,isOpen:n}=LI();return(0,xn.jsxs)(Ase,{isOpen:n,onClose:r,onOpen:t,placement:"bottom-start",children:[(0,xn.jsx)(Pse,{children:(0,xn.jsx)(Gn,{minWidth:"24px",height:"24px",padding:"0",background:n?AO.green:AO.gray[500],border:"none",borderRadius:"full",_hover:{bg:n?AO.green:AO.gray[450]},"data-testid":"popover-cta",variant:"unstyled",children:(0,xn.jsx)(kn,{children:(0,xn.jsx)(hI,{})})})}),(0,xn.jsx)(Rse,{width:"100px",background:AO.gray[700],children:(0,xn.jsx)(Ise,{borderRadius:"lg",children:e.children})})]})},Lse=({onRename:e,onRemove:t})=>(0,xn.jsx)(_n,{alignItems:"center",children:(0,xn.jsx)(Mse,{children:(0,xn.jsxs)(En,{paddingY:"0",children:[(0,xn.jsx)(Gn,{height:t?"24px":"28px",onClick:e,variant:"popover",children:(0,xn.jsxs)(_n,{alignItems:"center",children:[(0,xn.jsx)(WU,{marginRight:"4px",children:"Rename"}),(0,xn.jsx)(iI,{stroke:"inherit"})]})}),t&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(lse,{marginY:"4px"}),(0,xn.jsx)(Gn,{"data-testid":"popover-remove",onClick:t,variant:"popover",children:(0,xn.jsxs)(_n,{alignItems:"center",children:[(0,xn.jsx)(WU,{marginRight:"4px",children:"Remove"}),(0,xn.jsx)(vI,{stroke:"inherit"})]})})]})]})})}),Nse=({onClick:e,...t})=>(0,xn.jsxs)(Gn,{width:"60px",onClick:e,variant:"specialCTA",...t,children:[(0,xn.jsx)(GR,{stroke:"currentcolor"}),(0,xn.jsx)(WU,{marginLeft:"4px",children:"Send"})]}),Dse=({sender:e,operationType:t,isLoading:r,reEstimate:n})=>{switch(t){case"proposal":return(0,xn.jsx)(LF,{marginTop:"24px","data-testid":"signer-selector",children:(0,xn.jsx)(Q6,{account:e,inputName:"signer",isLoading:r,keepValid:!0,label:"Select Proposer",onUpdate:n})});case"implicit":return null}},zse=(e,t,r)=>{switch(e.type){case"ledger":case"mnemonic":case"social":case"secret_key":if(e.address.pkh!==t.address.pkh)throw new Error("Sender and Signer must be the same");return{type:"implicit",operations:r,signer:e,sender:e};case"multisig":return{type:"proposal",operations:r,sender:e,signer:t}}},Bse=()=>{const e=AI(),t=Xq();return r=>e(Ph.clear({pkh:r.address.pkh,network:t}))},Use=({isLoading:e,isValid:t,onSingleSubmit:r,onAddToBatch:n,showPreview:i=!0})=>(0,xn.jsx)(xn.Fragment,{children:(0,xn.jsxs)(En,{width:"100%",children:[i&&(0,xn.jsx)(Gn,{width:"100%",marginBottom:"16px",isDisabled:!t,isLoading:e,onClick:r,size:"lg",type:"submit",children:"Preview"}),(0,xn.jsx)(Gn,{width:"100%",isDisabled:!t,isLoading:e,onClick:n,size:"lg",type:"submit",variant:"tertiary",children:"Insert Into Batch"})]})}),Fse=({sender:e,form:t})=>t||(e?{sender:e.address.pkh}:{}),$se=(e,t,r)=>{const[n,o]=(0,i.useState)(!1),a=O6(),[s,c]=(0,i.useState)(e),[l,u]=(0,i.useState)(t),d=Xq(),h=Bse(),{isLoading:f,handleAsyncAction:p,handleAsyncActionUnsafe:m}=tre(),{openWith:g}=(0,i.useContext)(dL),v=xH({mode:"onBlur",defaultValues:{signer:l.signer.address.pkh,sender:l.sender.address.pkh}}),y=v.watch("signer");return{fee:s,estimationFailed:n,operations:l,isLoading:f,form:v,signer:a(y),reEstimate:async e=>m((async()=>{const t={...l,signer:a(e)};c(await C3(l,d)),u(t),o(!1)}),{isClosable:!0,duration:null}).catch((()=>o(!0))),onSign:async e=>p((async()=>{const t=await a6(l,e);return"batch"===r&&h(l.sender),await g((0,xn.jsx)(oae,{hash:t.opHash})),t})),handleAsyncAction:p}},Hse=e=>{const t=I6(),r=N6();return n=>{const i=t(n.sender);return zse(i,r(i),[e(n)])}},Vse=e=>{e<0&&(console.warn("Decimals cannot be negative"),e=0);return`${0===e?"":"0."+(0,Ns.repeat)("0",e-1)}1`},qse=e=>t=>{if(t.includes(".")){if(t.split(".")[1].length>e)return`Please enter a value with up to ${e} decimal places`}return!0},Kse=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=$se(n,r,t),{amount:h,recipient:f}=o.operations[0];return(0,xn.jsx)(f$,{...c,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(rae,{...e,operationsType:o.type,signer:o.signer}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(lae,{mutezAmount:h}),(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,xn.jsx)(sae,{fee:i})}),(0,xn.jsx)(TH,{marginTop:"24px",children:"From "}),(0,xn.jsx)(V6,{address:o.sender.address}),(0,xn.jsx)(TH,{marginTop:"24px",children:"To "}),(0,xn.jsx)(V6,{address:f}),(0,xn.jsx)(Dse,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:eae(o.type,t)})})]})})})},Wse=(e,t)=>async r=>{await C3(e,t),r(Ph.add({operations:e,network:t}))},Gse=({SignPage:e,signPageExtraData:t,FormPage:r,defaultFormPageProps:n,toOperation:o})=>{const{openWith:a}=(0,i.useContext)(dL),s=Hse(o),c=Xq();return async i=>{const o=s(i);return a((0,xn.jsx)(e,{data:t,fee:await C3(o,c),goBack:()=>a((0,xn.jsx)(r,{...n,form:i})),mode:"single",operations:o}))}},Zse=e=>{const{onClose:t}=(0,i.useContext)(dL),r=Xq(),n=Hse(e),o=AI(),a=fL();return async e=>{const i=n(e);await o(Wse(i,r)),a({description:"Transaction added to batch!",status:"success"}),t()}},Yse=e=>{const{handleAsyncAction:t,isLoading:r}=tre();return{onFormSubmitActionHandlers:e.map((e=>async r=>t((()=>e(r))))),isLoading:r}},Xse=({showPreview:e=!0,...t})=>{const r=Gse({SignPage:Kse,signPageExtraData:void 0,FormPage:Xse,defaultFormPageProps:t,toOperation:Jse}),n=Zse(Jse),{onFormSubmitActionHandlers:[i,o],isLoading:a}=Yse([r,n]),s=xH({mode:"onBlur",defaultValues:Fse(t)}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s;return(0,xn.jsx)(f$,{...s,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(Yoe,{}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsxs)(LF,{isInvalid:!!l.prettyAmount,children:[(0,xn.jsx)(TH,{children:"Amount"}),(0,xn.jsxs)(MH,{children:[(0,xn.jsx)(DH,{isDisabled:a,step:Vse(6),type:"number",...u("prettyAmount",{required:"Amount is required",validate:qse(6)}),placeholder:"0.000000"}),(0,xn.jsx)(FH,{children:"\ua729"})]}),l.prettyAmount&&(0,xn.jsx)(qoe,{"data-testid":"amount-error",children:l.prettyAmount.message})]}),(0,xn.jsxs)(LF,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,xn.jsx)(X6,{allowUnknown:!1,inputName:"sender",isDisabled:!!t.sender,label:"From"}),l.sender&&(0,xn.jsx)(qoe,{"data-testid":"from-error",children:l.sender.message})]}),(0,xn.jsxs)(LF,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,xn.jsx)(Z6,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,xn.jsx)(qoe,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Use,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i),showPreview:e})})]})})})},Jse=e=>({type:"tez",amount:c6(e.prettyAmount).toFixed(),recipient:Fd(e.recipient)}),Qse=({contacts:e})=>{const{openWith:t}=(0,i.useContext)(dL);return(0,xn.jsx)(En,{overflow:"auto",background:AO.gray[900],borderRadius:"8px",paddingX:"30px",children:(0,xn.jsx)(Xae,{overflowX:"unset",overflowY:"unset",children:(0,xn.jsx)(ese,{children:(0,xn.jsx)(tse,{children:e.map(((r,n)=>{const i=n===e.length-1?"transparent":AO.gray[700];return(0,xn.jsxs)(rse,{"data-testid":"contact-row",children:[(0,xn.jsx)(nse,{borderColor:i,"data-testid":"contact-row-name",paddingX:"0",children:(0,xn.jsxs)(_n,{alignItems:"center",children:[(0,xn.jsx)(En,{width:"150px",marginRight:"40px",children:(0,xn.jsx)(WU,{overflow:"hidden",fontWeight:600,whiteSpace:"nowrap",textOverflow:"ellipsis",children:r.name})}),(0,xn.jsx)(ose,{justifyContent:"space-between","data-testid":"contact-row-pkh",formatAddress:!1,iconColor:AO.gray[400],pkh:r.pkh})]})}),(0,xn.jsx)(nse,{borderColor:i,paddingX:"0",children:(0,xn.jsxs)(_n,{justifyContent:"end",children:[(0,xn.jsx)(Nse,{marginRight:"20px",onClick:()=>t((0,xn.jsx)(Xse,{form:{sender:"",recipient:r.pkh,prettyAmount:""}}))}),(0,xn.jsx)(Lse,{onRemove:()=>t((0,xn.jsx)(cse,{contact:r})),onRename:()=>t((0,xn.jsx)(sse,{buttonText:"Update",contact:r,title:"Edit contact"}))})]})})]},r.pkh)}))})})})})},ece=({href:e,children:t,...r})=>(0,xn.jsx)(Yn,{alignItems:"center",display:"flex",_hover:{textDecoration:"none"},href:e,rel:"noopener noreferrer",role:"link",target:"_blank",...r,children:t}),tce={md:{heading:"xl",description:"md",button:"md"},lg:{heading:"3xl",description:"xl",button:"lg"}},rce=({title:e,description:t,children:r,size:n})=>(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"center",width:"100%",height:"100%",children:(0,xn.jsxs)(En,{padding:"30px","data-testid":"empty-state-message",children:[(0,xn.jsx)(Ln,{marginBottom:"10px",textAlign:"center",size:tce[n].heading,children:e}),(0,xn.jsx)(WU,{marginBottom:"30px",color:AO.gray[400],textAlign:"center",size:tce[n].description,children:t}),(0,xn.jsx)(kn,{children:r})]})}),nce=({size:e})=>(0,xn.jsx)(rce,{description:"Your operations history will appear here...",size:e,title:"No operations to show"}),ice=({size:e})=>(0,xn.jsx)(rce,{description:"Your NFT collection will appear here...",size:e,title:"No NFTs to show",children:(0,xn.jsx)(ece,{"data-testid":"buy-nft-button",href:"https://objkt.com",children:(0,xn.jsx)(Gn,{size:tce[e].button,children:"Buy your first NFT"})})}),oce=({size:e})=>(0,xn.jsx)(rce,{description:"All of your tokens will appear here...",size:e,title:"No tokens to show"}),ace=({size:e="lg",onDelegate:t})=>(0,xn.jsx)(rce,{description:"Your delegation history will appear here...",size:e,title:"No delegations to show",children:(0,xn.jsx)(Gn,{"data-testid":"delegation-empty-state-button",onClick:t,size:tce[e].button,children:"Delegate"})});function sce(e,t={}){const{ssr:r=!0,fallback:n}=t,{getWindow:o}=function({defer:e}={}){const[,t]=(0,i.useReducer)((e=>e+1),0);return mf((()=>{e&&t()}),[e]),(0,i.useContext)(bf)}(),a=Array.isArray(e)?e:[e];let s=Array.isArray(n)?n:[n];s=s.filter((e=>null!=e));const[c,l]=(0,i.useState)((()=>a.map(((e,t)=>({media:e,matches:r?!!s[t]:o().matchMedia(e).matches})))));return(0,i.useEffect)((()=>{const e=o();l(a.map((t=>({media:t,matches:e.matchMedia(t).matches}))));const t=a.map((t=>e.matchMedia(t))),r=e=>{l((t=>t.slice().map((t=>t.media===e.media?{...t,matches:e.matches}:t))))};return t.forEach((e=>{"function"===typeof e.addListener?e.addListener(r):e.addEventListener("change",r)})),()=>{t.forEach((e=>{"function"===typeof e.removeListener?e.removeListener(r):e.removeEventListener("change",r)}))}}),[o]),c.map((e=>e.matches))}function cce(e){return t=>{const r=(e?Math[e]:Math.trunc)(t);return 0===r?0:r}}function lce(e){const t=Object.prototype.toString.call(e);return e instanceof Date||"object"===typeof e&&"[object Date]"===t?new e.constructor(+e):"number"===typeof e||"[object Number]"===t||"string"===typeof e||"[object String]"===t?new Date(e):new Date(NaN)}function uce(e,t){return+lce(e)-+lce(t)}function dce(e,t,r){const n=uce(e,t)/1e3;return cce(r?.roundingMethod)(n)}Math.pow(10,8);const hce=6048e5,fce=864e5,pce=43200;function mce(e,t,r){const n=uce(e,t)/6e4;return cce(r?.roundingMethod)(n)}function gce(e,t){const r=lce(e),n=lce(t),i=r.getTime()-n.getTime();return i<0?-1:i>0?1:i}function vce(e,t){const r=lce(e),n=lce(t);return 12*(r.getFullYear()-n.getFullYear())+(r.getMonth()-n.getMonth())}function yce(e){const t=lce(e);return t.setHours(23,59,59,999),t}function bce(e){const t=lce(e),r=t.getMonth();return t.setFullYear(t.getFullYear(),r+1,0),t.setHours(23,59,59,999),t}function wce(e){const t=lce(e);return+yce(t)===+bce(t)}function xce(e,t){const r=lce(e),n=lce(t),i=gce(r,n),o=Math.abs(vce(r,n));let a;if(o<1)a=0;else{1===r.getMonth()&&r.getDate()>27&&r.setDate(30),r.setMonth(r.getMonth()-i*o);let t=gce(r,n)===-i;wce(lce(e))&&1===o&&1===gce(e,n)&&(t=!1),a=i*(o-Number(t))}return 0===a?0:a}const _ce={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function kce(e){return(t={})=>{const r=t.width?String(t.width):e.defaultWidth;return e.formats[r]||e.formats[e.defaultWidth]}}const Sce={date:kce({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:kce({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:kce({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},Ece={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function Ace(e){return(t,r)=>{let n;if("formatting"===(r?.context?String(r.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,i=r?.width?String(r.width):t;n=e.formattingValues[i]||e.formattingValues[t]}else{const t=e.defaultWidth,i=r?.width?String(r.width):e.defaultWidth;n=e.values[i]||e.values[t]}return n[e.argumentCallback?e.argumentCallback(t):t]}}const Pce={ordinalNumber:(e,t)=>{const r=Number(e),n=r%100;if(n>20||n<10)switch(n%10){case 1:return r+"st";case 2:return r+"nd";case 3:return r+"rd"}return r+"th"},era:Ace({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:Ace({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:Ace({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:Ace({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:Ace({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function Oce(e){return(t,r={})=>{const n=r.width,i=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth],o=t.match(i);if(!o)return null;const a=o[0],s=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?function(e,t){for(let r=0;re.test(a))):function(e,t){for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t(e[r]))return r;return}(s,(e=>e.test(a)));let l;l=e.valueCallback?e.valueCallback(c):c,l=r.valueCallback?r.valueCallback(l):l;return{value:l,rest:t.slice(a.length)}}}const Tce={ordinalNumber:(jce={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,t={})=>{const r=e.match(jce.matchPattern);if(!r)return null;const n=r[0],i=e.match(jce.parsePattern);if(!i)return null;let o=jce.valueCallback?jce.valueCallback(i[0]):i[0];return o=t.valueCallback?t.valueCallback(o):o,{value:o,rest:e.slice(n.length)}}),era:Oce({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:Oce({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:Oce({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:Oce({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:Oce({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};var jce;const Cce={code:"en-US",formatDistance:(e,t,r)=>{let n;const i=_ce[e];return n="string"===typeof i?i:1===t?i.one:i.other.replace("{{count}}",t.toString()),r?.addSuffix?r.comparison&&r.comparison>0?"in "+n:n+" ago":n},formatLong:Sce,formatRelative:(e,t,r,n)=>Ece[e],localize:Pce,match:Tce,options:{weekStartsOn:0,firstWeekContainsDate:1}};let Rce={};function Ice(){return Rce}function Mce(e){const t=lce(e),r=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return r.setUTCFullYear(t.getFullYear()),+e-+r}function Lce(e,t,r){const n=Ice(),i=r?.locale??n.locale??Cce,o=gce(e,t);if(isNaN(o))throw new RangeError("Invalid time value");const a=Object.assign({},r,{addSuffix:r?.addSuffix,comparison:o});let s,c;o>0?(s=lce(t),c=lce(e)):(s=lce(e),c=lce(t));const l=dce(c,s),u=(Mce(c)-Mce(s))/1e3,d=Math.round((l-u)/60);let h;if(d<2)return r?.includeSeconds?l<5?i.formatDistance("lessThanXSeconds",5,a):l<10?i.formatDistance("lessThanXSeconds",10,a):l<20?i.formatDistance("lessThanXSeconds",20,a):l<40?i.formatDistance("halfAMinute",0,a):l<60?i.formatDistance("lessThanXMinutes",1,a):i.formatDistance("xMinutes",1,a):0===d?i.formatDistance("lessThanXMinutes",1,a):i.formatDistance("xMinutes",d,a);if(d<45)return i.formatDistance("xMinutes",d,a);if(d<90)return i.formatDistance("aboutXHours",1,a);if(d<1440){const e=Math.round(d/60);return i.formatDistance("aboutXHours",e,a)}if(d<2520)return i.formatDistance("xDays",1,a);if(d{const t=Xq(),r="mainnet"===t.name,n=r?"Buy Tez":"Request Tez from faucet",i=xH({mode:"onBlur",defaultValues:{address:e}}),{formState:{isValid:o,errors:a}}=i;let s=t.buyTezUrl;return t.buyTezUrl&&r&&(s+="/default/widget/"),(0,xn.jsx)(f$,{...i,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{action:s,rel:"noreferrer noopener",target:"_blank",children:[(0,xn.jsx)(GU,{}),(0,xn.jsx)(qU,{marginBottom:"10px",textAlign:"center",children:"Buy Tez"}),r&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)("input",{name:"commodity",type:"hidden",value:"XTZ:Tezos"}),(0,xn.jsx)(WU,{color:AO.gray[400],textAlign:"center",size:"sm",children:"Please select the recipient account."}),(0,xn.jsx)(ZU,{children:(0,xn.jsxs)(LF,{"data-testid":"buy-tez-selector",isInvalid:!!a.address,paddingY:5,children:[(0,xn.jsx)(Y6,{allowUnknown:!1,inputName:"address",isDisabled:!!e,label:"Recipient Account"}),a.address&&(0,xn.jsx)(qoe,{children:a.address.message})]})})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(En,{width:"100%","data-testid":"buy-tez-button",children:(0,xn.jsx)(Gn,{width:"100%",marginBottom:2,isDisabled:!o,size:"lg",type:"submit",children:n})})})]})})})},Dce=e=>(0,xn.jsx)(NP,{width:"15px",height:"11px",fill:"none",stroke:"white",viewBox:"0 0 15 11",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M1.16602 5.98371L5.06345 9.85408L13.8327 1.14575",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),zce=()=>{const e=AI(),t=PI((e=>e.assets.isLoading)),r=PI((e=>e.assets.lastTimeUpdated)),[n,o]=(0,i.useState)(!1),[a,s]=(0,i.useState)(!1),[c]=sce("(max-width: 1200px)");if((0,i.useEffect)((()=>{if(!r)return;if(dce(new Date,new Date(r))>1)return;o(!0),s(!0);const e=setTimeout((()=>o(!1)),2e3),t=setTimeout((()=>s(!1)),3500);return()=>{clearTimeout(e),clearTimeout(t)}}),[r]),c||null===r)return null;const l=mce(new Date,new Date(r))>=2,u={opacity:n?1:0,transition:"opacity 2s ease-in-out"};return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsxs)(WU,{display:"inline",color:AO.gray[400],size:"sm",style:a?u:void 0,children:[a&&"Updated just now",l&&`Updated ${Lce(new Date(r),new Date)} ago`]}),(0,xn.jsx)(t4,{marginRight:"36px",marginLeft:"8px",_active:{color:"white",bg:AO.green},"aria-label":"refetch",backgroundColor:a?AO.green:AO.gray[500],"data-testid":"refetch-button",icon:a?(0,xn.jsx)(Dce,{style:u}):(0,xn.jsx)(UR,{color:"white"}),isLoading:t,onClick:()=>{e(xh.refetch())},variant:"circle_without_hover_color"})]})},Bce=({title:e,subtitle:t})=>{const{openWith:r}=(0,i.useContext)(dL);return(0,xn.jsxs)(En,{children:[(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",height:"88px",children:[(0,xn.jsxs)(_n,{alignItems:"end",children:[(0,xn.jsx)(Ln,{marginRight:"6px",size:"xl",children:e}),(0,xn.jsx)(WU,{color:AO.gray[450],"data-testid":"nft-total-amount",size:"xs",children:t})]}),(0,xn.jsxs)(En,{children:[(0,xn.jsx)(zce,{}),(0,xn.jsx)(Gn,{onClick:()=>r((0,xn.jsx)(Nce,{})),variant:"tertiary",children:"Buy Tez"}),(0,xn.jsx)(Gn,{marginLeft:4,onClick:()=>r((0,xn.jsx)(Xse,{})),children:"Send"})]})]}),(0,xn.jsx)(lse,{})]})},Uce=()=>{const{openWith:e}=(0,i.useContext)(dL);return(0,xn.jsxs)(Gn,{alignItems:"center",justifyContent:"end",marginTop:"16px",marginBottom:"16px",cursor:"pointer",onClick:()=>e((0,xn.jsx)(sse,{buttonText:"Add to Contact",title:"Add contact"})),variant:"CTAWithIcon",children:[(0,xn.jsx)(mR,{stroke:"currentcolor"}),(0,xn.jsx)(WU,{marginLeft:"4px",size:"sm",children:"Add contact"})]})},Fce=()=>{const e=(()=>{const e=w6();return Object.values(e).sort(((e,t)=>e.name.localeCompare(t.name)))})();return(0,xn.jsxs)(_n,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Bce,{title:"Address Book"}),(0,xn.jsx)(_n,{flexDirection:"row-reverse",children:(0,xn.jsx)(Uce,{})}),e.length>0?(0,xn.jsx)(Qse,{contacts:e}):(0,xn.jsx)(rce,{description:"Your contacts will appear here...",size:"lg",title:"Your address book is empty"})]})};var $ce=r(649),Hce=r.n($ce);const Vce=({account:{address:e},...t})=>{const r=T6().find((t=>t.address.pkh===e.pkh)),n=y6()(e.pkh),i=z6(e);return r?(0,xn.jsxs)(_n,{alignItems:"space-between",cursor:"pointer","data-testid":"account-small-tile",...t,children:[(0,xn.jsx)(Yq,{addressKind:i}),(0,xn.jsxs)(_n,{alignSelf:"center",height:"20px",marginLeft:"12px",children:[(0,xn.jsx)(Ln,{marginRight:"10px","data-testid":"account-small-tile-label",size:"sm",children:r.label}),(0,xn.jsx)(WU,{marginRight:"35px",color:AO.gray[300],"data-testid":"account-small-tile-pkh",size:"xs",children:d6(e.pkh)}),n&&(0,xn.jsx)(Ln,{"data-testid":"account-small-tile-balance",size:"sm",children:u6(n)})]})]}):null},qce=({estimationResult:e})=>{if(!e)return null;const t=(0,Ns.get)(e,"metadata.operation_result.status");if(!t)return null;let r,n,i;switch(t){case"applied":case"backtracked":n=AO.green,i="Estimated",r=(0,xn.jsx)(wR,{height:"14.5px"});break;case"failed":n=AO.orange,i="Failed",r=(0,xn.jsx)(SI,{width:"12px",height:"13px",stroke:"currentcolor",marginX:"3px"});break;case"skipped":n=AO.orangeL,i="Not Estimated",r=(0,xn.jsx)(IR,{stroke:"currentcolor",marginX:"3px"})}return(0,xn.jsx)(_n,{marginTop:"8px",color:n,"data-testid":"estimation-status",children:(0,xn.jsxs)(kn,{children:[r,(0,xn.jsx)(WU,{marginLeft:"4px",size:"xs",children:i})]})})};function Kce(e,t){var r;const n=e.target;if(n){if(!CI(n).contains(n))return!1}return!(null==(r=t.current)?void 0:r.contains(n))}var Wce=(e,t)=>t?`${e}.${t}, ${t}`:void 0;function Gce(e){var t;const{bg:r,bgColor:n,backgroundColor:i,shadow:o,boxShadow:a,shadowColor:s}=e,{getArrowProps:c,getArrowInnerProps:l}=kse(),u=Ese(),d=null!=(t=null!=r?r:n)?t:i,h=null!=o?o:a;return(0,xn.jsx)(wn.div,{...c(),className:"chakra-popover__arrow-positioner",children:(0,xn.jsx)(wn.div,{className:y("chakra-popover__arrow",e.className),...l(e),__css:{"--popper-arrow-shadow-color":Wce("colors",s),"--popper-arrow-bg":Wce("colors",d),"--popper-arrow-shadow":Wce("shadows",h),...u.arrow}})})}Gce.displayName="PopoverArrow";const Zce=({addressKind:{type:e},...t})=>{switch(e){case"multisig":return(0,xn.jsx)(YR,{"data-testid":`${e}-icon`,...t});case"fa1.2":return(0,xn.jsx)(zR,{"data-testid":`${e}-icon`,...t,fill:t.stroke,stroke:"none"});case"fa2":return(0,xn.jsx)(BR,{"data-testid":`${e}-icon`,...t,fill:t.stroke,stroke:"none"});case"baker":return(0,xn.jsx)(vR,{"data-testid":`${e}-icon`,...t});case"contact":return(0,xn.jsx)(ER,{"data-testid":`${e}-icon`,...t});case"unknown":case"implicit":return null}},Yce=({addressKind:{type:e,pkh:t},addressPillMode:r,...n})=>{const{addressExistsInContacts:o}=x6(),{openWith:a}=(0,i.useContext)(dL);if("removable"===r.type)return(0,xn.jsx)(EI,{cursor:"pointer",onClick:r.onRemove,...n});return["implicit","multisig","baker"].includes(e)||o(t)?null:(0,xn.jsx)(xn.Fragment,{children:(0,xn.jsx)(mR,{"data-testid":"add-contact-icon",onClick:()=>a((0,xn.jsx)(sse,{buttonText:"Add to Contact",contact:{name:"",pkh:t},title:"Add contact"})),...n})})},Xce=({addressKind:{pkh:e,label:t},showPkh:r,alias:n,...i})=>{const o=_6(),a=d6(e),s=o(e)||t||n;return r?(0,xn.jsx)(WU,{...i,children:a}):(0,xn.jsx)(WU,{...i,children:s?s6(s,21):a})},Jce=e=>{const t=B6(e);if(!t)return null;const{pkh:r,label:n}=t;return{type:"multisig"===t.type?"multisig":"implicit",pkh:r,label:n}},Qce=({pkh:e})=>{const t=(e=>{const t=PI((t=>t.tokens[e.name]));return e=>{if(!t||!(e in t))return;const r=t[e],n=Object.keys(r)[0];return n?r[n].type:void 0}})(Xq()),r=t(e);if(!r)return null;switch(r){case"fa1.2":return{pkh:e,type:"fa1.2",label:null};case"fa2":case"nft":return{pkh:e,type:"fa2",label:null}}},ele=({address:e,mode:t={type:"default"},...r})=>{const n=!("pkh"in e&&"type"in e),o=n?Fd(e.address):e,a=(e=>{const t=Jce(e),r=Qce(e),n=U6(e),i=F6(e);return t||r||n||i||{pkh:e.pkh,type:"unknown",label:null}})(o),s="no_icons"!==t.type,{onOpen:c,onClose:l,isOpen:u}=LI(),[d,h]=(0,i.useState)(!1),f=(0,i.useRef)(null);let p,m,g;return function(e){const{ref:t,handler:r,enabled:n=!0}=e,o=MI(r),a=(0,i.useRef)({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}).current;(0,i.useEffect)((()=>{if(!n)return;const e=e=>{Kce(e,t)&&(a.isPointerDown=!0)},i=e=>{a.ignoreEmulatedMouseEvents?a.ignoreEmulatedMouseEvents=!1:a.isPointerDown&&r&&Kce(e,t)&&(a.isPointerDown=!1,o(e))},s=e=>{a.ignoreEmulatedMouseEvents=!0,r&&a.isPointerDown&&Kce(e,t)&&(a.isPointerDown=!1,o(e))},c=CI(t.current);return c.addEventListener("mousedown",e,!0),c.addEventListener("mouseup",i,!0),c.addEventListener("touchstart",e,!0),c.addEventListener("touchend",s,!0),()=>{c.removeEventListener("mousedown",e,!0),c.removeEventListener("mouseup",i,!0),c.removeEventListener("touchstart",e,!0),c.removeEventListener("touchend",s,!0)}}),[r,t,o,a,n])}({ref:f,handler:()=>{h(!1)}}),u?(p=AO.green,m=AO.gray[300],g="white"):d?(p=AO.gray[450],m=AO.gray[400],g=AO.gray[200]):(p=AO.gray[500],m=AO.gray[450],g=AO.gray[300]),(0,xn.jsx)(En,{maxWidth:"max-content","data-testid":"address-pill",...r,children:(0,xn.jsxs)(_n,{ref:f,alignItems:"center",background:p,borderRadius:"full",onMouseEnter:()=>{h(!0)},onMouseLeave:()=>{h(!1)},paddingX:"4px",children:[s&&(0,xn.jsx)(Zce,{marginLeft:"4px",stroke:m,addressKind:a,"data-testid":"address-pill-left-icon"}),(0,xn.jsxs)(Ase,{autoFocus:!1,isOpen:u,onOpen:async()=>{await navigator.clipboard.writeText(o.pkh),c(),setTimeout(l,1e3)},children:[(0,xn.jsx)(Pse,{children:(0,xn.jsx)(Gn,{height:"24px",_focus:{boxShadow:"none"},onClick:e=>e.stopPropagation(),variant:"unstyled",children:(0,xn.jsx)(Xce,{color:g,cursor:"pointer",addressKind:a,alias:n&&e.alias?e.alias:void 0,"data-testid":"address-pill-text",marginX:"4px",showPkh:!s,size:"sm"})})}),(0,xn.jsxs)(Rse,{maxWidth:"max-content",background:"white",children:[(0,xn.jsx)(Gce,{background:"white !important"}),(0,xn.jsx)(Ise,{children:(0,xn.jsx)(WU,{color:"black",size:"sm",children:"Copied!"})})]})]}),s&&(0,xn.jsx)(Yce,{marginRight:"4px",stroke:AO.gray[300],cursor:"pointer",addressKind:a,addressPillMode:t,"data-testid":"address-pill-right-icon"})]})})},tle=({operation:e})=>{let t;switch(e.type){case"undelegation":case"contract_origination":t=void 0;break;case"tez":case"fa1.2":case"fa2":case"delegation":t=e.recipient;break;case"contract_call":t=e.contract}return t?(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[450],children:"To:"}),(0,xn.jsx)(ele,{address:t,"data-testid":"recipient"})]}):(0,xn.jsx)(WU,{color:AO.gray[500],"data-testid":"recipient",children:"N/A"})},rle=(e,t)=>{if(!e)return`${t} Unknown Token`;const r=Qd(e),n=oh(t,e,{showSymbol:!1}),i=r?void 0:th(e);return(0,Ns.compact)([n,i,r]).join(" ")},nle=e=>null===e||void 0===e?void 0:e.replace("ipfs://","https://ipfs.io/ipfs/"),ile=e=>(0,Ns.orderBy)(e,["lastLevel","id","owner"],["desc"]),ole=({operation:e})=>{const t=eK(),r=Xq();switch(e.type){case"tez":return(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(GR,{marginRight:"8px"}),(0,xn.jsx)(Ln,{size:"sm",children:u6(e.amount)})]});case"fa1.2":case"fa2":{const n=t(e.contract.pkh,e.tokenId);return"nft"===(null===n||void 0===n?void 0:n.type)?(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(GR,{marginRight:"8px"}),Number(e.amount)>1&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsxs)(Ln,{color:AO.gray[450],size:"sm",children:["x",e.amount]}),"\xa0"]}),(0,xn.jsx)(Ln,{size:"sm",children:(0,xn.jsx)($q,{padding:"8px",background:AO.gray[700],border:"1px solid",borderColor:AO.gray[500],borderRadius:"8px",label:(0,xn.jsx)(XU,{width:"170px",height:"170px",ratio:1,children:(0,xn.jsx)(mI,{src:nle(sh(n))})}),openDelay:300,children:(0,xn.jsx)(Yn,{"data-testid":"link",href:uh(n,r),children:Jd(n)})})})]}):(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(GR,{marginRight:"8px"}),(0,xn.jsx)(Ln,{size:"sm",children:(0,xn.jsx)(Yn,{"data-testid":"link",href:n?uh(n,r):void 0,children:rle(n,e.amount)})})]})}case"delegation":return(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(vR,{marginRight:"8px"}),(0,xn.jsx)(Ln,{size:"sm",children:"Delegate"})]});case"undelegation":return(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(vR,{marginRight:"8px"}),(0,xn.jsx)(Ln,{size:"sm",children:"End Delegation"})]});case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}},ale=({addressKind:e})=>{switch(e.type){case"secret_key":case"mnemonic":return(0,xn.jsx)(Gq,{width:"48px",height:"48px",padding:"8px",address:e.pkh,identiconSize:32});case"social":case"contact":case"ledger":case"multisig":case"unknown":case"baker":{const t="social"===e.type?"white":AO.gray[500];return(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"center",padding:"4px",background:t,borderRadius:"4px",children:(0,xn.jsx)(Yq,{addressKind:e,size:"md"})})}}},sle=(0,i.createContext)({selectedAccount:null,selectAccount:()=>{}}),cle=({icon:e,leftElement:t,rightElement:r,...n})=>(0,xn.jsxs)(_n,{alignItems:"center",height:90,marginBottom:4,padding:4,border:`1px solid ${AO.gray[800]}`,borderRadius:4,"data-testid":"account-tile-base",...n,children:[e,(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",flex:1,children:[t,r]})]}),lle=({label:e,pkh:t})=>(0,xn.jsxs)(En,{margin:4,"data-testid":"account-identifier",children:[e&&(0,xn.jsx)(Ln,{size:"md",children:e}),(0,xn.jsx)(_n,{alignItems:"center",children:(0,xn.jsx)(WU,{color:"text.dark","data-testid":"short-address",size:"sm",children:d6(t)})})]}),ule=({account:e,radius:t,left:r="0px",top:n="0px",mainBackgroundColor:i=AO.gray[900],opacity:o="60"})=>{let a;switch(e.type){case"mnemonic":case"secret_key":s=e.address.pkh,a=`#${Vq()(s).slice(0,6)}`;break;case"ledger":case"multisig":a=AO.gray[450];break;case"social":a="#EA4335"}var s;return a+=o,`radial-gradient(circle farthest-side at ${r} ${n}, ${a} 0%, ${a} ${parseInt(t)/4}px, transparent ${t}), ${i}`},dle=({account:e,balance:t})=>{const{selectedAccount:r,selectAccount:n}=(0,i.useContext)(sle),o=(null===r||void 0===r?void 0:r.address.pkh)===e.address.pkh,a=z6(e.address),{address:{pkh:s}}=e,c=!!PI((e=>e.assets.delegationLevels))[s],l=g6(),u=ile(l(s));return(0,xn.jsxs)(En,{zIndex:2,background:ule({left:"-10px",top:"-10px",account:e,radius:u.length>0?"120px":"100px"}),borderWidth:"1px",borderStyle:"solid",borderColor:o?AO.orangeL:AO.gray[900],borderRadius:"8px",_hover:{borderColor:o?AO.orangeL:AO.gray[700]},cursor:"pointer","data-testid":"account-tile-container",onClick:()=>n(e),paddingX:"21px",children:[(0,xn.jsx)(cle,{align:"bottom",marginBottom:0,padding:0,border:"none","data-testid":`account-tile-${s}`+(o?"-selected":""),icon:(0,xn.jsx)(ale,{addressKind:a}),leftElement:(0,xn.jsx)(lle,{label:a.label,pkh:s}),rightElement:(0,xn.jsxs)(_n,{flexDirection:"column",children:[t&&(0,xn.jsx)(Ln,{alignSelf:"flex-end","data-testid":"balance",size:"md",children:u6(t)}),(0,xn.jsx)(WU,{align:"right",color:AO.gray[450],fontWeight:700,"data-testid":"is-delegated",size:"sm",children:c?"Delegated":(0,xn.jsx)(xn.Fragment,{children:"\xa0"})})]})}),u.length>0&&(0,xn.jsxs)(_n,{flexDirection:"column","data-testid":"nfts-list",children:[(0,xn.jsx)(lse,{}),(0,xn.jsx)(_n,{marginY:"21px",children:u.slice(0,7).map(((e,t)=>{const r=nle(sh(e));return 6===t?(0,xn.jsx)(yj,{"data-testid":"show-more-nfts-link",to:`/nfts?accounts=${s}`,children:(0,xn.jsx)(En,{height:"32px",marginLeft:"4px",background:AO.gray[600],borderRadius:"4px",children:(0,xn.jsx)(WU,{align:"center",width:"32px",color:AO.gray[450],fontWeight:700,children:"..."})})},"last"):(0,xn.jsx)(yj,{"data-testid":"nft-link",to:`/home/${s}/${Xd(e)}`,children:(0,xn.jsx)(XU,{width:"32px",height:"32px",marginLeft:t>0?"4px":0,ratio:1,children:(0,xn.jsx)(mI,{borderRadius:"4px",src:r})})},Xd(e))}))})]})]})},hle=({title:e,description:t,buttonLabel:r,onSubmit:n})=>{const{onClose:o}=(0,i.useContext)(dL);return(0,xn.jsxs)(VU,{children:[(0,xn.jsxs)(qU,{marginBottom:"10px",textAlign:"center",children:[(0,xn.jsx)(En,{children:(0,xn.jsx)(SI,{width:"40px",height:"40px",marginBottom:"16px"})}),(0,xn.jsx)(Ln,{children:e}),(0,xn.jsx)(GU,{})]}),t&&(0,xn.jsx)(ZU,{children:(0,xn.jsx)(WU,{align:"center",color:AO.gray[400],"data-testid":"description",children:t})}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Gn,{width:"100%",onClick:()=>{n(),o()},size:"lg",variant:"warning",children:r})})]})},fle=({title:e,fee:t,transactionCount:r,signer:n})=>(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Yoe,{subTitle:tae(n),title:e}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(TH,{children:"From"}),(0,xn.jsx)(V6,{address:n.address}),(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",marginY:"12px",paddingX:"4px",children:[(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(WU,{marginRight:"4px",color:AO.gray[450],size:"sm",children:"Transactions:"}),(0,xn.jsx)(WU,{color:AO.gray[400],"data-testid":"transaction-length",size:"sm",children:r})]}),(0,xn.jsx)(sae,{fee:t})]})]})]}),ple=({initialOperations:e,initialFee:t})=>{const{fee:r,operations:n,estimationFailed:i,isLoading:o,signer:a,form:s,reEstimate:c,onSign:l}=$se(t,e,"batch"),u=eae(n.type,"batch");return(0,xn.jsx)(f$,{...s,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(fle,{fee:r,signer:a,title:u,transactionCount:n.operations.length}),(0,xn.jsx)(Dse,{isLoading:o,operationType:n.type,reEstimate:c,sender:n.sender}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isDisabled:i,isLoading:o,onSubmit:l,signer:a,text:u})})]})})})},mle=({operations:e,onSubmit:t,isLoading:r})=>{const{type:n,sender:o,operations:a}=e,{openWith:s}=(0,i.useContext)(dL);return(0,xn.jsxs)(En,{alignItems:"center",justifyContent:"space-between","data-testid":"right-header",children:[(0,xn.jsx)(WU,{display:"inline-block",color:AO.gray[400],size:"sm",children:Hce()("transaction",a.length,!0)}),(0,xn.jsx)(Gn,{marginLeft:"30px",isLoading:r,onClick:t,variant:"primary",children:eae(n,"batch")}),(0,xn.jsx)(t4,{marginLeft:"16px",borderRadius:"4px","aria-label":"remove-batch","data-testid":"remove-batch",icon:(0,xn.jsx)(vI,{stroke:AO.gray[300]}),onClick:()=>s((0,xn.jsx)(vle,{sender:o}),"sm"),variant:"circle"})]})},gle=e=>{switch(e.type){case"fa1.2":case"fa2":return"Token Transfer";case"undelegation":case"delegation":return"Delegation";case"tez":return"\ua729 Transfer";case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}},vle=({sender:e})=>{const t=Bse();return(0,xn.jsx)(hle,{buttonLabel:"Delete Batch",description:"Are you sure you want to remove all transactions from the batch?",onSubmit:()=>t(e),title:"Delete Batch"})},yle={metadata:{operation_result:{status:"applied"}}},ble=({operations:e})=>{const{operations:t,sender:r}=e,n=t.length>9,o=(()=>{const e=AI(),t=Xq();return(r,n)=>e(Ph.removeItem({pkh:r.address.pkh,index:n,network:t}))})(),{openWith:a}=(0,i.useContext)(dL),s=Xq(),[c,l]=i.useState([]);(0,i.useEffect)((()=>{l([])}),[t.length]);const{isLoading:u,handleAsyncAction:d}=tre(),h=(0,xn.jsx)(mle,{isLoading:u,onSubmit:()=>d((async()=>{l([]);try{const r=await C3(e,s);return l(t.map((e=>yle))),a((0,xn.jsx)(ple,{initialFee:r,initialOperations:e}))}catch(r){if(r instanceof M2){const e=r.operationsWithResults;e.length>t.length&&e.shift(),l(e)}throw r}})),operations:e});return(0,xn.jsxs)(En,{width:"100%",marginBottom:"16px","data-testid":`batch-table-${r.address.pkh}`,children:[(0,xn.jsxs)(_n,{justifyContent:"space-between",padding:"20px 23px 20px 30px",background:ule({top:"-10px",left:"-10px",account:r,radius:"100px",opacity:"40",mainBackgroundColor:AO.gray[800]}),borderTopRadius:"8px","data-testid":"header",children:[(0,xn.jsx)(_n,{alignItems:"center",children:(0,xn.jsx)(Vce,{paddingLeft:0,account:r})}),h]}),(0,xn.jsx)(_n,{flexDirection:"column",background:AO.gray[900],borderBottomRadius:n?0:"8px",paddingX:"30px",paddingY:"20px",children:t.map(((e,n)=>{const i=c.at(n);return(0,xn.jsxs)(En,{"data-testid":"operation",children:[(0,xn.jsxs)(_n,{flexDirection:"column",height:i?"80px":"50px",children:[(0,xn.jsx)(_n,{children:(0,xn.jsx)(ole,{operation:e})}),(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",width:"100%",marginTop:"8px",children:[(0,xn.jsxs)(_n,{flexDirection:"column",children:[(0,xn.jsx)(_n,{children:(0,xn.jsx)(tle,{operation:e})}),(0,xn.jsx)(qce,{estimationResult:i})]}),(0,xn.jsxs)(_n,{alignSelf:"flex-end",children:[(0,xn.jsx)(WU,{alignSelf:"flex-end",color:AO.gray[450],size:"sm",children:gle(e)}),(0,xn.jsx)(t4,{width:"24px",marginLeft:"12px",borderRadius:"full","aria-label":"Remove",icon:(0,xn.jsx)(vI,{stroke:AO.gray[300]}),onClick:()=>o(r,n),size:"xs",variant:"circle"})]})]})]}),n{const n=t.filter((e=>e.length>0)),i=n.length;if(i<2||4{const e=Xq(),t=fL(),r=eK(),n=AI(),o=I6(),a=N6(),{onClose:s}=(0,i.useContext)(dL),{isLoading:c,handleAsyncAction:l}=tre(),u=xH({mode:"onBlur"}),{handleSubmit:d,formState:{isValid:h,errors:f}}=u;return(0,xn.jsx)(f$,{...u,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{onSubmit:d((async({file:i,sender:c})=>l((async()=>{const l=o(c),u=await new Promise((e=>{xle().parse(i[0],{skipEmptyLines:!0,complete:e})}));if(u.errors.length>0)throw new Error("Error loading csv file: "+u.errors.map((e=>e.message)).join(", "));const d=[];for(let e=0;e{const{openWith:e}=(0,i.useContext)(dL);return(0,xn.jsxs)(Gn,{onClick:()=>e((0,xn.jsx)(Sle,{})),variant:"CTAWithIcon",children:[(0,xn.jsx)(WU,{marginRight:"4px",size:"sm",children:"Load CSV file"}),(0,xn.jsx)(FR,{stroke:"currentcolor"})]})},Ale=({batchPending:e})=>(0,xn.jsxs)(_n,{alignItems:"center",marginTop:"24px",marginBottom:"24px",children:[(0,xn.jsxs)(Ln,{flex:1,color:AO.orangeL,size:"sm",children:[e," Pending"]}),(0,xn.jsx)(Ele,{}),(0,xn.jsx)(ece,{marginLeft:"8px",href:"https://github.com/trilitech/umami-v2/wiki/Batch-file-specification",children:(0,xn.jsxs)(Gn,{paddingRight:"0",variant:"CTAWithIcon",children:[(0,xn.jsx)(WU,{marginRight:"4px",size:"sm",children:"See file specs"}),(0,xn.jsx)(LR,{stroke:"currentcolor"})]})})]}),Ple=()=>{const e=(()=>{const e=Xq(),t=PI((t=>t.batches[e.name]));return t||[]})();return(0,xn.jsxs)(_n,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Bce,{title:"Batch"}),(0,xn.jsx)(Ale,{batchPending:e.length}),(0,xn.jsx)(En,{overflowY:"auto",minHeight:"80%",children:e.length>0?e.map((e=>(0,xn.jsx)(ble,{operations:e},e.sender.address.pkh))):(0,xn.jsx)(rce,{description:"There is no batch transactions to show...",size:"lg",title:"No batches to show"})})]})};var Ole=v((function(e,t){const{templateAreas:r,gap:n,rowGap:i,columnGap:o,column:a,row:s,autoFlow:c,autoRows:l,templateRows:u,autoColumns:d,templateColumns:h,...f}=e,p={display:"grid",gridTemplateAreas:r,gridGap:n,gridRowGap:i,gridColumnGap:o,gridAutoColumns:d,gridColumn:a,gridRow:s,gridAutoFlow:c,gridAutoRows:l,gridTemplateRows:u,gridTemplateColumns:h};return(0,xn.jsx)(wn.div,{ref:t,__css:p,...f})}));function Tle(e){return YU(e,(e=>"auto"===e?"auto":`span ${e}/span ${e}`))}Ole.displayName="Grid";var jle=v((function(e,t){const{area:r,colSpan:n,colStart:i,colEnd:o,rowEnd:a,rowSpan:s,rowStart:c,...l}=e,u=KU({gridArea:r,gridColumn:Tle(n),gridRow:Tle(s),gridColumnStart:i,gridColumnEnd:o,gridRowStart:c,gridRowEnd:a});return(0,xn.jsx)(wn.div,{ref:t,__css:u,...l})}));jle.displayName="GridItem";const Cle=({onClick:e,children:t,isSelected:r,...n})=>(0,xn.jsx)(AH,{justifyContent:"center",height:"66px",marginBottom:"10px",padding:"24px",border:"1px solid",borderColor:r?` ${AO.orangeL}`:"transparent",borderRadius:"lg",_hover:{border:`1px solid ${AO.gray[500]}`,bg:AO.gray[800]},cursor:e?"pointer":void 0,backgroundColor:AO.gray[900],onClick:e,...n,children:(0,xn.jsx)(PH,{padding:0,children:t})}),Rle=({left:e,isSelected:t,onClick:r})=>(0,xn.jsx)(Cle,{isSelected:t,onClick:r,children:(0,xn.jsx)(_n,{alignItems:"center",height:"100%",children:(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",width:"100%",children:[(0,xn.jsx)(Ln,{size:"sm",children:e}),(0,xn.jsx)(_R,{})]})})}),Ile=()=>(0,xn.jsxs)(Ole,{gridGap:"1",gridTemplateRows:"0fr 1fr 1fr",gridTemplateColumns:"1fr 1fr",gridTemplateAreas:'\n "header header"\n "main main"\n "main main"\n ',height:"100%",children:[(0,xn.jsx)(jle,{gridArea:"header",children:(0,xn.jsx)(Bce,{title:"Help"})}),(0,xn.jsxs)(jle,{gridArea:"main",marginTop:1,children:[(0,xn.jsx)(Lle,{title:"Learn More",children:(0,xn.jsx)(Mle,{about:"Browse Articles",externalLink:"https://medium.com/umamiwallet"})}),(0,xn.jsxs)(Lle,{title:"Need Help?",children:[(0,xn.jsx)(Mle,{about:"Contact our Support Team",externalLink:"mailto:umami-support@trili.tech",linkDescription:"umami-support@trili.tech"}),(0,xn.jsx)(Mle,{about:"Get in touch with the Community",externalLink:"https://join.slack.com/t/tezos-dev/shared_invite/zt-1ur1ymxrp-G_X_bFHrvWXwoeiy53J8lg",linkDescription:"Slack #Umami"})]}),(0,xn.jsxs)(Lle,{title:"Terms",children:[(0,xn.jsx)(Mle,{about:"Read Terms of Service",externalLink:"https://umamiwallet.com/tos.html"}),(0,xn.jsx)(Mle,{about:"Read Privacy Policy",externalLink:"https://umamiwallet.com/privacypolicy.html"})]})]})]}),Mle=({about:e,externalLink:t,linkDescription:r})=>(0,xn.jsx)(yj,{rel:"noopener noreferrer",target:"_blank",to:t,children:(0,xn.jsx)(Cle,{cursor:"pointer",isSelected:!1,children:(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",children:[(0,xn.jsx)(Ln,{size:"sm",children:e}),(0,xn.jsxs)(_n,{alignItems:"center",children:[r&&(0,xn.jsx)(WU,{marginRight:"4px",color:AO.gray[400],size:"sm",children:r}),(0,xn.jsx)(LR,{})]})]})})}),Lle=({title:e,children:t})=>(0,xn.jsx)(En,{"data-testid":"help-card",marginY:"10px",children:(0,xn.jsx)(_n,{children:(0,xn.jsxs)(En,{width:"550px",children:[(0,xn.jsx)(Ln,{marginBottom:"16px",size:"lg",children:e}),t]})})});var[Nle,Dle]=Nn(),zle={start:{ltr:"left",rtl:"right"},end:{ltr:"right",rtl:"left"}};function Ble(e){var t;const{isOpen:r,onClose:n,placement:i="right",children:o,...a}=e,s=On(),c=null==(t=s.components)?void 0:t.Drawer,l=function(e,t){var r,n;if(e)return null!=(n=null==(r=zle[e])?void 0:r[t])?n:e}(i,s.direction);return(0,xn.jsx)(Nle,{value:{placement:l},children:(0,xn.jsx)(QI,{isOpen:r,onClose:n,styleConfig:c,...a,children:o})})}var Ule={exit:{duration:.15,ease:eM.easeInOut},enter:{type:"spring",damping:25,stiffness:180}},Fle={exit:({direction:e,transition:t,transitionEnd:r,delay:n})=>{var i;const{exit:o}=oM({direction:e});return{...o,transition:null!=(i=null==t?void 0:t.exit)?i:cM(Ule.exit,n),transitionEnd:null==r?void 0:r.exit}},enter:({direction:e,transitionEnd:t,transition:r,delay:n})=>{var i;const{enter:o}=oM({direction:e});return{...o,transition:null!=(i=null==r?void 0:r.enter)?i:sM(Ule.enter,n),transitionEnd:null==t?void 0:t.enter}}},$le=(0,i.forwardRef)((function(e,t){const{direction:r="right",style:n,unmountOnExit:i,in:o,className:a,transition:s,transitionEnd:c,delay:l,motionProps:u,...d}=e,h=oM({direction:r}),f=Object.assign({position:"fixed"},h.position,n),p=!i||o&&i,m=o||i?"enter":"exit",g={transitionEnd:c,transition:s,direction:r,delay:l};return(0,xn.jsx)(oO,{custom:g,children:p&&(0,xn.jsx)(CP.div,{...d,ref:t,initial:"exit",className:y("chakra-slide",a),animate:m,exit:"exit",custom:g,variants:Fle,style:f,...u})})}));$le.displayName="Slide";var Hle=wn($le),Vle=v(((e,t)=>{const{className:r,children:n,motionProps:i,containerProps:o,...a}=e,{getDialogProps:s,getDialogContainerProps:c,isOpen:l}=JI(),u=s(a,t),d=c(o),h=y("chakra-modal__content",r),f=YI(),p={display:"flex",flexDirection:"column",position:"relative",width:"100%",outline:0,...f.dialog},m={display:"flex",width:"100vw",height:"$100vh",position:"fixed",left:0,top:0,...f.dialogContainer},{placement:g}=Dle();return(0,xn.jsx)(HU,{children:(0,xn.jsx)(wn.div,{...d,className:"chakra-modal__content-container",__css:m,children:(0,xn.jsx)(Hle,{motionProps:i,direction:g,in:l,className:h,...u,__css:p,children:n})})})}));Vle.displayName="DrawerContent";const qle=({onRemove:e,onCreate:t})=>(0,xn.jsx)(Mse,{children:(0,xn.jsxs)(En,{paddingY:"0",children:[(0,xn.jsx)(Gn,{height:t?"24px":"28px","data-testid":"popover-remove",onClick:e,variant:"popover",children:(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",flex:1,children:[(0,xn.jsx)(WU,{marginRight:"4px",children:"Remove"}),(0,xn.jsx)(vI,{stroke:"inherit"})]})}),t&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(lse,{marginY:"4px"}),(0,xn.jsx)(Gn,{onClick:t,variant:"popover",children:(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",flex:1,children:[(0,xn.jsx)(WU,{marginRight:"4px",children:"Create"}),(0,xn.jsx)(oI,{width:"18px",height:"18px",stroke:"inherit"})]})})]})]})});var Kle=e=>(0,xn.jsx)(wn.div,{className:"chakra-stack__item",...e,__css:{display:"inline-block",flex:"0 0 auto",minWidth:0,...e.__css}});Kle.displayName="StackItem";var Wle=v(((e,t)=>{const{isInline:r,direction:n,align:o,justify:a,spacing:s="0.5rem",wrap:c,children:l,divider:u,className:d,shouldWrapChildren:h,...f}=e,p=r?"row":null!=n?n:"column",m=(0,i.useMemo)((()=>function(e){const{spacing:t,direction:r}=e,n={column:{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},"column-reverse":{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},row:{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0},"row-reverse":{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0}};return{"&":YU(r,(e=>n[e]))}}({spacing:s,direction:p})),[s,p]),g=!!u,v=!h&&!g,b=(0,i.useMemo)((()=>{const e=CH(l);return v?e:e.map(((t,r)=>{const n="undefined"!==typeof t.key?t.key:r,o=r+1===e.length,a=h?(0,xn.jsx)(Kle,{children:t},n):t;if(!g)return a;const s=(0,i.cloneElement)(u,{__css:m}),c=o?null:s;return(0,xn.jsxs)(i.Fragment,{children:[a,c]},n)}))}),[u,m,g,v,h,l]),w=y("chakra-stack",d);return(0,xn.jsx)(wn.div,{ref:t,display:"flex",alignItems:o,justifyContent:a,flexDirection:p,flexWrap:c,gap:g?void 0:s,className:w,...f,children:b})}));Wle.displayName="Stack";var Gle=v(((e,t)=>(0,xn.jsx)(Wle,{align:"center",...e,direction:"column",ref:t})));Gle.displayName="VStack";const Zle=({icon:e,size:t,onClick:r=(()=>{})})=>(0,xn.jsx)(En,{width:t,height:t,margin:"auto",background:AO.gray[700],borderRadius:"full",onClick:r,children:(0,xn.jsx)(kn,{height:"100%",children:e})}),Yle=({children:e,icon:t,title:r,subtitle:n})=>(0,xn.jsxs)(Gle,{maxHeight:"83vh",spacing:0,children:[(0,xn.jsx)(En,{marginBottom:"20px",children:(0,xn.jsx)(Zle,{icon:t,size:"48px"})}),(0,xn.jsxs)(kn,{flexDirection:"column",marginBottom:"32px",children:[(0,xn.jsx)(Ln,{size:"xl",children:r}),n&&(0,xn.jsx)(WU,{marginTop:"10px",color:AO.gray[400],textAlign:"center",size:"sm",children:n})]}),e]}),Xle=({onSubmit:e,isLoading:t})=>{const r=xH({mode:"onBlur"}),{handleSubmit:n,formState:{errors:i,isValid:o}}=r;return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(QR,{}),subtitle:"Enter your master password for Umami.",title:"Umami Master Password",children:(0,xn.jsx)(f$,{...r,children:(0,xn.jsxs)("form",{onSubmit:n((t=>{e(t.password)})),style:{width:"100%"},children:[(0,xn.jsxs)(LF,{isInvalid:!!i.password,children:[(0,xn.jsx)(Koe,{"data-testid":"password",inputName:"password"}),i.password&&(0,xn.jsx)(qoe,{children:i.password.message})]}),(0,xn.jsx)(Gn,{width:"100%",marginTop:"32px",isDisabled:!o,isLoading:t,size:"lg",type:"submit",children:"Submit"})]})})})},Jle=({onSubmit:e,title:t="Name Your Account",subtitle:r})=>{const{register:n,handleSubmit:i}=xH({mode:"onChange"});return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(RR,{}),subtitle:r,title:t,children:(0,xn.jsxs)("form",{onSubmit:i(e),style:{width:"100%"},children:[(0,xn.jsxs)(LF,{children:[(0,xn.jsx)(TH,{children:"Account name"}),(0,xn.jsx)(DH,{"data-testid":"name",type:"text",...n("accountName",{required:!1}),placeholder:"Optional"})]}),(0,xn.jsx)(Gn,{width:"100%",marginTop:"32px",size:"lg",type:"submit",children:"Continue"})]})})},Qle=e=>{const[t,r]=(0,i.useState)();return void 0===t?(0,xn.jsx)(Jle,{onSubmit:e=>r(e.accountName),subtitle:e.subtitle,title:e.title}):(0,xn.jsx)(Xle,{isLoading:e.isLoading,onSubmit:r=>e.onSubmit({name:t,password:r})})},eue=e=>(0,xn.jsx)(En,{overflowY:"auto",height:"100%",children:e.children}),tue="Account",rue=({goToStep:e,account:t})=>{const r=C6();return(0,xn.jsx)(Jle,{onSubmit:n=>{const i=n.accountName.trim()||tue,o=r(i)[0];switch(t.type){case"secret_key":return e({type:"masterPassword",account:{...t,label:o}});case"ledger":return e({type:"derivationPath",account:{...t,label:o}});case"mnemonic":return e({type:"derivationPath",account:{...t,label:i}})}},subtitle:"Please choose a name for your first account. You can edit your account name later."})},nue=({goToStep:e})=>{const t=A6().length>0;return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(JR,{}),title:"Connect or Import Account",children:(0,xn.jsxs)(Gle,{width:"100%",spacing:"16px",children:[(0,xn.jsx)(Gn,{width:"100%",onClick:t=>e({type:"restoreMnemonic"}),size:"lg",children:"Import with Seed Phrase"}),(0,xn.jsx)(Gn,{width:"100%",onClick:t=>e({type:"restoreSecretKey"}),size:"lg",variant:"tertiary",children:"Import with Secret Key"}),!t&&(0,xn.jsx)(Gn,{width:"100%",onClick:t=>e({type:"restoreBackup"}),size:"lg",variant:"tertiary",children:"Restore from Backup"}),(0,xn.jsx)(Gn,{width:"100%",onClick:t=>e({type:"nameAccount",account:{type:"ledger"}}),size:"lg",variant:"tertiary",children:"Connect ledger"})]})})},iue="44'/1729'/?'/0'",oue={label:"Default - m/44'/1729'/?'/0'",value:iue},aue=[oue,{label:"m/44'/1729'/0'/?'",value:"44'/1729'/0'/?'"},{label:"m/44'/1729'/?'/0'/0'",value:"44'/1729'/?'/0'/0'"},{label:"m/44'/1729'/0'/0'/?'",value:"44'/1729'/0'/0'/?'"}],sue=(e,t)=>e.replace("?",t.toString()),cue=(e,t,r,n,i,o)=>({curve:"ed25519",derivationPath:r,derivationPathPattern:n,pk:e,address:Kd(t),seedFingerPrint:i,label:o,type:"mnemonic"}),lue=()=>{const e=C6();return async(t,r,n,i)=>{const o=await(async(e,t,r)=>{const n=[];let i=0,o=await A3(e,sue(t,i));do{n.push(o),i+=1,o=await A3(e,sue(t,i))}while(await x3(o.pkh,r));return n})(t,n,r),a=await _3(t),s=e(i,o.length);return o.map((({pk:e,pkh:t},r)=>cue(e,t,sue(n,r),n,a,s[r])))}},uue=e=>{if(e.startsWith(Dc.EDESK)||e.startsWith(Dc.EDSK))return"ed25519";if(e.startsWith(Dc.SPESK)||e.startsWith(Dc.SPSK))return"secp256k1";if(e.startsWith(Dc.P2ESK)||e.startsWith(Dc.P2SK))return"p256";throw new Error("Invalid secret key")},due=({secretKey:e,label:t,password:r})=>async n=>{const{account:i,encryptedSecretKey:o}=await(async({secretKey:e,label:t,password:r})=>{const{pk:n,pkh:i}=await E3(e),o=await Pl(e,r);return{account:{type:"secret_key",pk:n,label:t,curve:uue(e),address:Kd(i)},encryptedSecretKey:o}})({secretKey:e,label:t,password:r});n(Cl.actions.addAccount(i)),n(Cl.actions.addSecretKey({pkh:i.address.pkh,encryptedSecretKey:o}))},hue=e=>t=>{t(Cl.actions.removeSecretKey(e)),t(Cl.actions.removeAccount(e))},{addAccount:fue,removeMnemonicAndAccounts:pue,removeNonMnemonicAccounts:mue}=Cl.actions,gue=()=>{const e=Xq(),t=lue(),r=co();return async({mnemonic:n,password:i,derivationPath:o,label:a})=>{const s=await _3(n),c=await t(n,e,o,a),l=await Pl(n,i);r(Cl.actions.addMnemonicAccounts({seedFingerprint:s,accounts:c,encryptedMnemonic:l}))}},vue=()=>{const e=AI();return(t,r,n,i)=>{e(fue({derivationPath:t,curve:"ed25519",type:"ledger",pk:r,address:{type:"implicit",pkh:n},label:i}))}},yue=({goToStep:e,closeModal:t})=>{const{handleAsyncAction:r}=tre(),n=(()=>{const e=AI();return(t,r,n)=>{e(fue({type:"social",pk:t,address:{type:"implicit",pkh:r},idp:"google",label:n}))}})(),i=fL();return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(kI,{}),title:"Connect or Create Account",children:(0,xn.jsxs)(Gle,{width:"100%",spacing:"16px",children:[(0,xn.jsx)(Gn,{width:"100%",onClick:t=>e({type:"notice"}),size:"lg",children:"Create a new Account"}),(0,xn.jsx)(Gn,{width:"100%",onClick:t=>e({type:"connectOptions"}),size:"lg",variant:"tertiary",children:"I already have a wallet"}),(0,xn.jsxs)(_n,{width:"100%",paddingTop:"14px",paddingBottom:"6px",children:[(0,xn.jsx)(lse,{marginTop:"11px"}),(0,xn.jsx)(WU,{minWidth:"160px",color:AO.gray[400],textAlign:"center",noOfLines:1,size:"sm",children:"Continue with Google"}),(0,xn.jsx)(lse,{marginTop:"11px"})]}),(0,xn.jsx)(rre,{onAuth:(e,o)=>r((async()=>{const{pk:r,pkh:a}=await E3(e);n(r,a,o),i({description:`Successfully added ${o} account`,status:"success"}),t()}))})]})})},bue=({selected:e,options:t,onChange:r})=>{const[n,o]=(0,i.useState)(e),[a,s]=(0,i.useState)(!1);return(0,xn.jsxs)(En,{children:[(0,xn.jsxs)(_n,{justifyContent:"space-between",height:"48px",padding:"12px 15px 15px 15px",color:AO.gray[300],background:AO.gray[800],border:"1px solid",borderColor:AO.gray[500],borderRadius:"4px",_hover:{borderColor:AO.gray[450]},cursor:"pointer","data-testid":"select-input",onClick:()=>s((e=>!e)),children:[(0,xn.jsx)(WU,{size:"sm",children:n.label}),(0,xn.jsx)(xR,{marginTop:"2px"})]}),a&&(0,xn.jsx)(KH,{position:"absolute",zIndex:2,width:"100%",margin:0,marginTop:"8px",padding:"15px",background:AO.gray[700],border:"1px solid",borderColor:AO.gray[500],borderRadius:"8px","data-testid":"select-options",listStyleType:"none",children:t.map((e=>(0,xn.jsx)(WH,{marginBottom:"5px",padding:"11px",color:AO.gray[300],background:"transparent",borderRadius:"4px",_hover:{background:AO.gray[500]},cursor:"pointer",onClick:()=>{s(!1),o(e),r(e.value)},children:(0,xn.jsx)(WU,{size:"sm",children:e.label})},e.value)))})]})},wue=({goToStep:e,account:t})=>{const{handleSubmit:r,setValue:n,formState:{errors:i}}=xH({mode:"onBlur",defaultValues:{derivationPath:iue}});return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(cI,{}),subtitle:"Choose a custom derivation path or select the default derivation path and use the default key.",title:"Derivation Path",children:(0,xn.jsxs)("form",{onSubmit:r((({derivationPath:r})=>{switch(t.type){case"ledger":e({type:"restoreLedger",account:{...t,derivationPath:r}});break;case"mnemonic":e({type:"masterPassword",account:{...t,derivationPath:r}})}})),style:{width:"100%"},children:[(0,xn.jsxs)(LF,{marginBottom:"20px",children:[(0,xn.jsx)(TH,{children:"Select Path"}),(0,xn.jsx)(bue,{onChange:e=>n("derivationPath",e),options:aue,selected:oue}),i.derivationPath&&(0,xn.jsx)(qoe,{"data-testid":"error-message",children:i.derivationPath.message})]}),(0,xn.jsx)(Gn,{width:"100%",marginTop:"12px",size:"lg",type:"submit",children:"Continue"}),(0,xn.jsx)(ece,{display:"block",width:"100%",marginTop:"32px",textAlign:"center",href:"https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki",children:(0,xn.jsx)($q,{backgroundColor:"white",defaultIsOpen:!1,hasArrow:!0,label:"Derivation path is a set of directions that helps create different secret keys; it starts from a master key or seed.",children:(0,xn.jsx)(WU,{color:AO.blue,fontWeight:600,textDecoration:"underline",_hover:{textDecoration:"underline"},size:"sm",children:"What's a Derivation Path?"})})})]})})};var[xue,_ue]=Nn({name:"CheckboxGroupContext",strict:!1});function kue(e){return(0,xn.jsx)(wn.svg,{width:"1.2em",viewBox:"0 0 12 10",style:{fill:"none",strokeWidth:2,stroke:"currentColor",strokeDasharray:16},...e,children:(0,xn.jsx)("polyline",{points:"1.5 6 4.5 9 10.5 1"})})}function Sue(e){return(0,xn.jsx)(wn.svg,{width:"1.2em",viewBox:"0 0 24 24",style:{stroke:"currentColor",strokeWidth:4},...e,children:(0,xn.jsx)("line",{x1:"21",x2:"3",y1:"12",y2:"12"})})}function Eue(e){const{isIndeterminate:t,isChecked:r,...n}=e,i=t?Sue:kue;return r||t?(0,xn.jsx)(wn.div,{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%"},children:(0,xn.jsx)(i,{...n})}):null}var Aue={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"};var Pue=()=>"undefined"!==typeof document;var Oue=!1,Tue=null,jue=!1,Cue=!1,Rue=new Set;function Iue(e,t){Rue.forEach((r=>r(e,t)))}var Mue="undefined"!==typeof window&&null!=window.navigator&&/^Mac/.test(window.navigator.platform);function Lue(e){jue=!0,function(e){return!(e.metaKey||!Mue&&e.altKey||e.ctrlKey||"Control"===e.key||"Shift"===e.key||"Meta"===e.key)}(e)&&(Tue="keyboard",Iue("keyboard",e))}function Nue(e){if(Tue="pointer","mousedown"===e.type||"pointerdown"===e.type){jue=!0;const t=e.composedPath?e.composedPath()[0]:e.target;let r=!1;try{r=t.matches(":focus-visible")}catch{}if(r)return;Iue("pointer",e)}}function Due(e){var t;(0===(t=e).mozInputSource&&t.isTrusted||0===t.detail&&!t.pointerType)&&(jue=!0,Tue="virtual")}function zue(e){e.target!==window&&e.target!==document&&(jue||Cue||(Tue="virtual",Iue("virtual",e)),jue=!1,Cue=!1)}function Bue(){jue=!1,Cue=!0}function Uue(){return"pointer"!==Tue}function Fue(){if(!Pue()||Oue)return;const{focus:e}=HTMLElement.prototype;HTMLElement.prototype.focus=function(...t){jue=!0,e.apply(this,t)},document.addEventListener("keydown",Lue,!0),document.addEventListener("keyup",Lue,!0),document.addEventListener("click",Due,!0),window.addEventListener("focus",zue,!0),window.addEventListener("blur",Bue,!1),"undefined"!==typeof PointerEvent?(document.addEventListener("pointerdown",Nue,!0),document.addEventListener("pointermove",Nue,!0),document.addEventListener("pointerup",Nue,!0)):(document.addEventListener("mousedown",Nue,!0),document.addEventListener("mousemove",Nue,!0),document.addEventListener("mouseup",Nue,!0)),Oue=!0}function $ue(e){Fue(),e(Uue());const t=()=>e(Uue());return Rue.add(t),()=>{Rue.delete(t)}}function Hue(e={}){const t=NH(e),{isDisabled:r,isReadOnly:n,isRequired:o,isInvalid:a,id:s,onBlur:c,onFocus:l,"aria-describedby":u}=t,{defaultChecked:d,isChecked:h,isFocusable:f,onChange:p,isIndeterminate:m,name:g,value:v,tabIndex:y,"aria-label":b,"aria-labelledby":w,"aria-invalid":x,..._}=e,S=function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(_,["isDisabled","isReadOnly","isRequired","isInvalid","id","onBlur","onFocus","aria-describedby"]),A=uw(p),P=uw(c),O=uw(l),[T,j]=(0,i.useState)(!1),[C,R]=(0,i.useState)(!1),[I,M]=(0,i.useState)(!1),[L,N]=(0,i.useState)(!1);(0,i.useEffect)((()=>$ue(j)),[]);const D=(0,i.useRef)(null),[z,B]=(0,i.useState)(!0),[U,F]=(0,i.useState)(!!d),$=void 0!==h,H=$?h:U,V=(0,i.useCallback)((e=>{n||r?e.preventDefault():($||F(H?e.target.checked:!!m||e.target.checked),null==A||A(e))}),[n,r,H,$,m,A]);mf((()=>{D.current&&(D.current.indeterminate=Boolean(m))}),[m]),dw((()=>{r&&R(!1)}),[r,R]),mf((()=>{const e=D.current;if(!(null==e?void 0:e.form))return;const t=()=>{F(!!d)};return e.form.addEventListener("reset",t),()=>{var r;return null==(r=e.form)?void 0:r.removeEventListener("reset",t)}}),[]);const q=r&&!f,K=(0,i.useCallback)((e=>{" "===e.key&&N(!0)}),[N]),W=(0,i.useCallback)((e=>{" "===e.key&&N(!1)}),[N]);mf((()=>{if(!D.current)return;D.current.checked!==H&&F(D.current.checked)}),[D.current]);const G=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":k(L),"data-hover":k(I),"data-checked":k(H),"data-focus":k(C),"data-focus-visible":k(C&&T),"data-indeterminate":k(m),"data-disabled":k(r),"data-invalid":k(a),"data-readonly":k(n),"aria-hidden":!0,onMouseDown:E(e.onMouseDown,(e=>{C&&e.preventDefault(),N(!0)})),onMouseUp:E(e.onMouseUp,(()=>N(!1))),onMouseEnter:E(e.onMouseEnter,(()=>M(!0))),onMouseLeave:E(e.onMouseLeave,(()=>M(!1)))})),[L,H,r,C,T,I,m,a,n]),Z=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":k(L),"data-hover":k(I),"data-checked":k(H),"data-focus":k(C),"data-focus-visible":k(C&&T),"data-indeterminate":k(m),"data-disabled":k(r),"data-invalid":k(a),"data-readonly":k(n)})),[L,H,r,C,T,I,m,a,n]),Y=(0,i.useCallback)(((e={},t=null)=>({...S,...e,ref:Kn(t,(e=>{e&&B("LABEL"===e.tagName)})),onClick:E(e.onClick,(()=>{var e;z||(null==(e=D.current)||e.click(),requestAnimationFrame((()=>{var e;null==(e=D.current)||e.focus({preventScroll:!0})})))})),"data-disabled":k(r),"data-checked":k(H),"data-invalid":k(a)})),[S,r,H,a,z]),X=(0,i.useCallback)(((e={},t=null)=>({...e,ref:Kn(D,t),type:"checkbox",name:g,value:v,id:s,tabIndex:y,onChange:E(e.onChange,V),onBlur:E(e.onBlur,P,(()=>R(!1))),onFocus:E(e.onFocus,O,(()=>R(!0))),onKeyDown:E(e.onKeyDown,K),onKeyUp:E(e.onKeyUp,W),required:o,checked:H,disabled:q,readOnly:n,"aria-label":b,"aria-labelledby":w,"aria-invalid":x?Boolean(x):a,"aria-describedby":u,"aria-disabled":r,style:Aue})),[g,v,s,V,P,O,K,W,o,H,q,n,b,w,x,a,u,r,y]),J=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,onMouseDown:E(e.onMouseDown,Vue),"data-disabled":k(r),"data-checked":k(H),"data-invalid":k(a)})),[H,r,a]);return{state:{isInvalid:a,isFocused:C,isChecked:H,isActive:L,isHovered:I,isIndeterminate:m,isDisabled:r,isReadOnly:n,isRequired:o},getRootProps:Y,getCheckboxProps:G,getIndicatorProps:Z,getInputProps:X,getLabelProps:J,htmlProps:S}}function Vue(e){e.preventDefault(),e.stopPropagation()}var que={display:"inline-flex",alignItems:"center",justifyContent:"center",verticalAlign:"top",userSelect:"none",flexShrink:0},Kue={cursor:"pointer",display:"inline-flex",alignItems:"center",verticalAlign:"top",position:"relative"},Wue=$n({from:{opacity:0,strokeDashoffset:16,transform:"scale(0.95)"},to:{opacity:1,strokeDashoffset:0,transform:"scale(1)"}}),Gue=$n({from:{opacity:0},to:{opacity:1}}),Zue=$n({from:{transform:"scaleX(0.65)"},to:{transform:"scaleX(1)"}}),Yue=v((function(e,t){const r=_ue(),n=Mn("Checkbox",{...r,...e}),o=ft(e),{spacing:a="0.5rem",className:s,children:c,iconColor:l,iconSize:u,icon:d=(0,xn.jsx)(Eue,{}),isChecked:h,isDisabled:f=(null==r?void 0:r.isDisabled),onChange:p,inputProps:m,...g}=o;let v=h;(null==r?void 0:r.value)&&o.value&&(v=r.value.includes(o.value));let b=p;(null==r?void 0:r.onChange)&&o.value&&(b=A(r.onChange,p));const{state:w,getInputProps:x,getCheckboxProps:_,getLabelProps:k,getRootProps:S}=Hue({...g,isDisabled:f,isChecked:v,onChange:b}),E=function(e){const[t,r]=(0,i.useState)(e),[n,o]=(0,i.useState)(!1);return e!==t&&(o(!0),r(e)),n}(w.isChecked),P=(0,i.useMemo)((()=>({animation:E?w.isIndeterminate?`${Gue} 20ms linear, ${Zue} 200ms linear`:`${Wue} 200ms linear`:void 0,fontSize:u,color:l,...n.icon})),[l,u,E,w.isIndeterminate,n.icon]),O=(0,i.cloneElement)(d,{__css:P,isIndeterminate:w.isIndeterminate,isChecked:w.isChecked});return(0,xn.jsxs)(wn.label,{__css:{...Kue,...n.container},className:y("chakra-checkbox",s),...S(),children:[(0,xn.jsx)("input",{className:"chakra-checkbox__input",...x(m,t)}),(0,xn.jsx)(wn.span,{__css:{...que,...n.control},className:"chakra-checkbox__control",..._(),children:O}),c&&(0,xn.jsx)(wn.span,{className:"chakra-checkbox__label",...k(),__css:{marginStart:a,...n.label},children:c})]})}));Yue.displayName="Checkbox";const Xue=({goToStep:e})=>{const[t,r]=i.useState(!1);return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(TR,{}),title:"Accept to Continue",children:(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsxs)(Yue,{paddingBottom:"24px",fontWeight:"600",onChange:e=>r(e.target.checked),children:["I confirm that I have read and agreed with the"," ",(0,xn.jsx)(Yn,{textDecoration:"underline",_hover:{color:AO.green},href:"https://umamiwallet.com/tos.html",rel:"noopener noreferrer",target:"_blank",children:"Terms of Service"})," ","and the"," ",(0,xn.jsx)(Yn,{textDecoration:"underline",_hover:{color:AO.green},href:"https://umamiwallet.com/privacypolicy.html",rel:"noopener noreferrer",target:"_blank",children:"Privacy Policy"})]}),(0,xn.jsx)(Gn,{width:"100%",isDisabled:!t,onClick:()=>{e({type:"connectOrCreate"})},size:"lg",children:"Continue"})]})})},Jue=({onClose:e})=>{const{register:t,handleSubmit:r,formState:{errors:n}}=xH({mode:"onBlur"}),i=vue();return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(kI,{}),title:"Add a Fake Account",children:(0,xn.jsxs)("form",{onSubmit:r((async({pkh:t,name:r})=>{const n=new jW(_h.rpcUrl),o=await n.getManagerKey(t),a="string"===typeof o?o:o.key;i(iue,a,t,r),e()})),style:{width:"100%"},children:[(0,xn.jsx)(WU,{children:"It will be restored as a ledger account"}),(0,xn.jsxs)(LF,{isInvalid:!!n.pkh,children:[(0,xn.jsx)(TH,{children:"Address"}),(0,xn.jsx)(DH,{...t("pkh",{required:!0}),autoComplete:"off",placeholder:"Please enter the account address"})]}),(0,xn.jsxs)(LF,{isInvalid:!!n.name,children:[(0,xn.jsx)(TH,{children:"Name"}),(0,xn.jsx)(DH,{...t("name",{required:!0}),autoComplete:"off",placeholder:"Please enter the account name"})]}),(0,xn.jsx)(Gn,{width:"100%",marginTop:2,size:"lg",type:"submit",children:"Add account"})]})})},Que=({onSubmit:e,isLoading:t})=>{const r=xH({mode:"onBlur"}),{handleSubmit:n,formState:{errors:i,isValid:o},getValues:a}=r;return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(QR,{}),subtitle:"Please choose a master password for Umami. You will need to use this password in order to perform any operations within Umami.",title:"Umami Master Password",children:(0,xn.jsx)(f$,{...r,children:(0,xn.jsxs)("form",{onSubmit:n((({confirm:t})=>e(t))),style:{width:"100%"},children:[(0,xn.jsxs)(LF,{isInvalid:!!i.password,children:[(0,xn.jsx)(Koe,{"data-testid":"password",inputName:"password",placeholder:"Enter master password"}),i.password&&(0,xn.jsx)(qoe,{children:i.password.message})]}),(0,xn.jsxs)(LF,{marginTop:"24px",isInvalid:!!i.confirm,children:[(0,xn.jsx)(Koe,{"data-testid":"confirmation",inputName:"confirm",label:"Confirm Password",placeholder:"Confirm your password",required:"Confirmation is required",validate:e=>a("password")===e||"Your passwords do no match"}),i.confirm&&(0,xn.jsx)(qoe,{children:i.confirm.message})]}),(0,xn.jsx)(Gn,{width:"100%",marginTop:"32px",isDisabled:!o||t,isLoading:t,size:"lg",type:"submit",children:"Submit"})]})})})},ede=({account:e,onClose:t})=>{const r=gue(),n=(()=>{const e=AI();return(t,r,n)=>e(due({secretKey:t,password:r,label:n}))})(),i=(()=>{const e=S6(),t=E6(),r=Object.values({...t,...e})[0];return r?async e=>{await Ol(r,e)}:null})(),o=null!==i,{isLoading:a,handleAsyncAction:s}=tre(),c=fL(),l=a=>s((async()=>{switch(o&&await i(a),e.type){case"secret_key":await n(e.secretKey,a,e.label);break;case"mnemonic":await r({...e,password:a})}c({description:"Account successfully created!",status:"success"}),t()}));return o?(0,xn.jsx)(Xle,{isLoading:a,onSubmit:l}):(0,xn.jsx)(Que,{isLoading:a,onSubmit:l})},tde=({goToStep:e})=>(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(rI,{}),subtitle:"Please read the following before you continue to see your secret Seed Phrase.",title:"Important Notice",children:(0,xn.jsxs)(En,{children:[(0,xn.jsx)(qH,{spacing:"16px",variant:"onboardingNotice",children:[{content:"Write down your seed phrase and store it in a safe place."},{content:"Make sure there is no one around you or looking over your shoulder."},{content:"Do not copy and paste the Seed Phrase or store it on your device."},{content:"Do not take a screenshot of your Seed Phrase."}].map(((e,t)=>(0,xn.jsx)(WH,{fontSize:"16px",fontWeight:600,children:e.content},t)))}),(0,xn.jsx)(Gn,{width:"100%",marginTop:"28px",onClick:()=>e({type:"showSeedphrase",account:{type:"mnemonic",mnemonic:(0,RW.we)(256)}}),size:"lg",children:"I understand"}),(0,xn.jsx)(Gn,{width:"100%",marginTop:"16px",onClick:()=>e({type:"restoreMnemonic"}),size:"lg",variant:"tertiary",children:"I already have a Seed Phrase"})]})}),rde=function(e,t,r){var n=r||!1,i=_a(Is,Rs,t&&t.enhancer?t.enhancer:void 0),o=function(e){i.dispatch({type:fs,key:e})},a=function(t,r,o){var a={type:ls,payload:r,err:o,key:t};e.dispatch(a),i.dispatch(a),n&&s.getState().bootstrapped&&(n(),n=!1)},s=js({},i,{purge:function(){var t=[];return e.dispatch({type:hs,result:function(e){t.push(e)}}),Promise.all(t)},flush:function(){var t=[];return e.dispatch({type:cs,result:function(e){t.push(e)}}),Promise.all(t)},pause:function(){e.dispatch({type:us})},persist:function(){e.dispatch({type:ds,register:o,rehydrate:a})}});return t&&t.manualPersist||s.persist(),s}(Wh),nde=()=>{const e=xH({mode:"onBlur"}),{handleSubmit:t,register:r,formState:{errors:n,isValid:i}}=e,{handleAsyncAction:o}=tre(),a=(()=>{const e=gue();return async(t,r)=>{const n=t.recoveryPhrases,i=t.derivationPaths.map((e=>"m/"===e.slice(0,2)?e.slice(2):e)),o=[];try{for(const e of n)o.push(await Ol(e,r,"V1"))}catch(pge){throw new Error("Invalid password.")}for(const[a,s]of o.entries())await e({mnemonic:s,password:r,label:tue,derivationPath:i[a]})}})();return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(sI,{}),subtitle:"Select a JSON backup file and enter the password you used to encrypt it.",title:"Restore from Backup",children:(0,xn.jsx)(f$,{...e,children:(0,xn.jsx)("form",{onSubmit:t((({password:e,file:t})=>o((async()=>{const r=await t[0].text(),n=JSON.parse(r);if(n.recoveryPhrases&&n.derivationPaths)await a(n,e);else{if(!n["persist:accounts"])throw new Error("Invalid backup file.");await(async(e,t)=>{const r=e["persist:accounts"];if(!r)throw new Error("Invalid backup file.");const n=JSON.parse(r),i=JSON.parse(n.seedPhrases);try{for(const e of Object.values(i))await Ol(e,t,"V2")}catch(pge){throw new Error("Invalid password.")}rde.pause(),localStorage.clear(),localStorage.setItem("persist:accounts",r),localStorage.setItem("persist:root",e["persist:root"])})(n,e),window.location.reload()}})))),style:{width:"100%"},children:(0,xn.jsxs)(ZU,{children:[(0,xn.jsxs)(LF,{isInvalid:!!n.file,children:[(0,xn.jsx)(TH,{children:"Upload File"}),(0,xn.jsx)(_n,{children:(0,xn.jsx)(DH,{padding:"2px","data-testid":"file-input",...r("file",{required:"File is required"}),accept:".json",type:"file",variant:"unstyled"})}),n.file&&(0,xn.jsx)(BF,{"data-testid":"file-errors",children:n.file.message})]}),(0,xn.jsx)(LF,{marginTop:"24px",children:(0,xn.jsx)(Koe,{"data-testid":"password-input",inputName:"password",label:"Your password (if you have one)",required:!1})}),(0,xn.jsx)(Gn,{width:"100%",marginTop:"32px",isDisabled:!i,size:"lg",type:"submit",children:"Import Wallet"})]})})})})},ide=({closeModal:e,account:t})=>{const r=vue(),n=fL(),{isLoading:i,handleAsyncAction:o}=tre();return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(bI,{}),subtitle:"Complete the steps to connect.",title:"Connect Ledger",children:(0,xn.jsxs)(Gle,{overflowY:"auto",spacing:"24px",children:[(0,xn.jsx)(qH,{spacing:4,children:[{content:"Plug your Ledger into your computer using a USB cable."},{content:"Unlock your Ledger."},{content:"Make sure your Ledger has the latest firmware version."},{content:"Install and open the Tezos Wallet app on your Ledger."},{content:"Click the button below and confirm the action on your Ledger."}].map(((e,t)=>(0,xn.jsx)(WH,{children:e.content},t)))}),(0,xn.jsx)(Gn,{width:"100%",isLoading:i,onClick:()=>o((()=>Jte((async()=>{const i=n({description:"Please open the Tezos app on your Ledger and approve the operation",status:"info"}),o=sue(t.derivationPath,0),{pk:a,pkh:s}=await(async e=>{const t=await GK.create(),r=new oW(t,e,!0),n=await r.publicKey(),i=await r.publicKeyHash();return await t.close(),{pk:n,pkh:i}})(o);r(o,a,s,t.label),n.close(i),n({description:"Account successfully created!",status:"success"}),e()}),6e4)),(e=>"PublicKeyRetrievalError"===e.name?{description:"Request rejected. Please unlock your Ledger and open the Tezos app"}:"InvalidStateError"===e.name?{description:"Request pending. Check your ledger..."}:{description:`Ledger error. ${e.message||e.name}`})),size:"lg",children:"Export Public Key"})]})})};var ode=Xoe({displayName:"ChevronDownIcon",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"}),ade=v((function(e,t){const{children:r,placeholder:n,className:i,...o}=e;return(0,xn.jsxs)(wn.select,{...o,ref:t,className:y("chakra-select",i),children:[n&&(0,xn.jsx)("option",{value:"",children:n}),r]})}));ade.displayName="SelectField";var sde=v(((e,t)=>{var r;const n=Mn("Select",e),{rootProps:i,placeholder:o,icon:a,color:s,height:c,h:l,minH:u,minHeight:d,iconColor:h,iconSize:f,...p}=ft(e),[m,g]=function(e,t){const r={},n={};for(const[i,o]of Object.entries(e))t.includes(i)?r[i]=o:n[i]=o;return[r,n]}(p,rt),v=LH(g),y={width:"100%",height:"fit-content",position:"relative",color:s},b={paddingEnd:"2rem",...n.field,_focus:{zIndex:"unset",...null==(r=n.field)?void 0:r._focus}};return(0,xn.jsxs)(wn.div,{className:"chakra-select__wrapper",__css:y,...m,...i,children:[(0,xn.jsx)(ade,{ref:t,height:null!=l?l:c,minH:null!=u?u:d,placeholder:o,...v,__css:b,children:e.children}),(0,xn.jsx)(ude,{"data-disabled":k(v.disabled),...(h||s)&&{color:h||s},__css:n.icon,...f&&{fontSize:f},children:a})]})}));sde.displayName="Select";var cde=e=>(0,xn.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})}),lde=wn("div",{baseStyle:{position:"absolute",display:"inline-flex",alignItems:"center",justifyContent:"center",pointerEvents:"none",top:"50%",transform:"translateY(-50%)"}}),ude=e=>{const{children:t=(0,xn.jsx)(cde,{}),...r}=e,n=(0,i.cloneElement)(t,{role:"presentation",className:"chakra-select__icon",focusable:!1,"aria-hidden":!0,style:{width:"1em",height:"1em",color:"currentColor"}});return(0,xn.jsx)(lde,{...r,className:"chakra-select__icon-wrapper",children:(0,i.isValidElement)(t)?n:null})};ude.displayName="SelectIcon";const dde=({inputName:e,validate:t,inputProps:r,listProps:n})=>{const[o,a]=(0,i.useState)(!0),{register:s,setValue:c,watch:l}=h$(),u=l(e),d=RW.Yu.EN.filter((e=>u&&e.startsWith(u))).sort(),h=!o&&d.length>0&&(d.length>1||d[0]!==u);return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(DH,{zIndex:0,autoComplete:"off","data-testid":"mnemonic-input",onFocus:()=>a(!1),placeholder:"Type here...",...s(e,{required:"Required",validate:t,onChange:()=>a(!1),onBlur:()=>a(!0)}),...r}),h&&(0,xn.jsx)(KH,{"data-testid":"suggestions",variant:"suggestions",...n,children:d.map((t=>(0,xn.jsx)(WH,{paddingTop:"2px",fontSize:"14px",fontWeight:600,"data-testid":"suggestion",onMouseDown:()=>c(e,t),paddingX:"7px",children:t},t)))})]})},hde=[12,15,18,24],fde=({goToStep:e})=>{const t=xH({mode:"onBlur"}),{handleSubmit:r,setValue:n,trigger:o,formState:{isValid:a}}=t,{handleAsyncAction:s}=tre(),[c,l]=(0,i.useState)(24);return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(YR,{width:"24px",height:"24px",stroke:AO.gray[450]}),subtitle:"Please fill in the Seed Phrase in sequence.",title:"Import Seed Phrase",children:(0,xn.jsx)(En,{overflowX:"hidden",children:(0,xn.jsx)(f$,{...t,children:(0,xn.jsx)("form",{onSubmit:r((t=>s((async()=>{const r=Object.values(t).join(" ").trim();if(!(0,RW.JB)(r))throw new Error(`Invalid Mnemonic: "${r}"`);return e({type:"nameAccount",account:{type:"mnemonic",mnemonic:r}}),Promise.resolve()})))),style:{width:"100%"},children:(0,xn.jsxs)(Gle,{width:"100%",spacing:4,children:[(0,xn.jsx)(sde,{height:"48px",color:AO.gray[450],"data-testid":"select",icon:(0,xn.jsx)(ode,{}),onChange:e=>(e=>{const t=Number(e);if(hde.includes(t))return l((e=>(e>t&&(0,Ns.range)(t,Math.max(...hde)).forEach((e=>{n(`word${e}`,void 0)})),t))),o()})(e.target.value),value:c,children:hde.reverse().map((e=>(0,xn.jsxs)("option",{value:e,children:[e," Words"]},e)))}),(0,xn.jsx)(Ole,{gridGap:3,gridTemplateColumns:"repeat(3, 1fr)",paddingBottom:"20px",children:(0,Ns.range)(c).map((e=>{const t=`word${e}`;return(0,xn.jsxs)(jle,{display:"flex",height:"38px",padding:"4px",fontSize:"sm",background:AO.gray[800],border:"1px solid",borderColor:AO.gray[500],borderRadius:"4px",children:[(0,xn.jsx)(Ln,{width:"18px",marginRight:"6px",paddingTop:"6px",color:AO.gray[400],textAlign:"right",size:"sm",children:e+1}),(0,xn.jsx)(dde,{inputName:t,inputProps:{onPaste:async e=>{e.preventDefault();return(e=>s((async()=>{const t=e.split(" ");if(!hde.includes(t.length))throw new Error(`the mnemonic must be ${hde.join(", ")} words long`);return t.slice(0,c).forEach(((e,t)=>{n(`word${t}`,e)})),o()})))(await navigator.clipboard.readText())},border:"none",size:"xsmall"},listProps:{width:"126px",marginTop:"38px",marginLeft:"-5px"}})]},e)}))}),(0,xn.jsx)(Gn,{width:"100%",isDisabled:!a,size:"lg",type:"submit",children:"Continue"})]})})})})})};var pde=["h","minH","height","minHeight"],mde=v(((e,t)=>{const r=In("Textarea",e),{className:n,rows:i,...o}=ft(e),a=LH(o),s=i?function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(r,pde):r;return(0,xn.jsx)(wn.textarea,{ref:t,rows:i,...a,className:y("chakra-textarea",n),__css:s})}));mde.displayName="Textarea";const gde=({goToStep:e})=>{const[t,r]=(0,i.useState)(!1),{handleAsyncAction:n}=tre(),{register:o,handleSubmit:a,formState:{errors:s,isValid:c}}=xH({mode:"onBlur",defaultValues:{password:""}});return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(YR,{width:"24px",height:"24px",stroke:AO.gray[450]}),title:"Insert Secret Key",children:(0,xn.jsxs)("form",{onSubmit:a((async({secretKey:t,password:r})=>n((async()=>{try{const n=await tG.fromSecretKey(t.trim(),r),i=await n.secretKey();e({type:"nameAccount",account:{type:"secret_key",secretKey:i}})}catch(n){const e=n.message||"";if(e.includes("Cannot read properties of null (reading 'slice')"))throw new Error("Key-password pair is invalid");if(e.includes("Invalid checksum"))throw new Error("Invalid secret key: checksum doesn't match");throw n}})))),style:{width:"100%"},children:[(0,xn.jsxs)(LF,{isInvalid:!!s.secretKey,children:[(0,xn.jsx)(TH,{children:"Secret Key"}),(0,xn.jsx)(mde,{minHeight:"130px","data-testid":"secret-key",...o("secretKey",{required:"Secret key is required",onChange:e=>r("e"===e.target.value.trim().substring(2,3))}),placeholder:"Your secret key"}),s.secretKey&&(0,xn.jsx)(BF,{children:s.secretKey.message})]}),t&&(0,xn.jsxs)(LF,{marginTop:"20px",isInvalid:!!s.password,children:[(0,xn.jsx)(TH,{children:"Password"}),(0,xn.jsx)(DH,{"data-testid":"password",...o("password",{validate:e=>{if(!e.trim())return"Password is required"}})}),s.password&&(0,xn.jsx)(BF,{children:s.password.message})]}),(0,xn.jsx)(Gn,{width:"100%",marginTop:"32px",isDisabled:!c,size:"lg",type:"submit",children:"Continue"})]})})};var vde=v((function(e,t){const{columns:r,spacingX:n,spacingY:i,spacing:o,minChildWidth:a,...s}=e,c=On(),l=a?function(e,t){return YU(e,(e=>{const r=jn("sizes",e,function(e){return"number"===typeof e?`${e}px`:e}(e))(t);return null===e?null:`repeat(auto-fit, minmax(${r}, 1fr))`}))}(a,c):YU(r,(e=>null===e?null:`repeat(${e}, minmax(0, 1fr))`));return(0,xn.jsx)(Ole,{ref:t,gap:o,columnGap:n,rowGap:i,templateColumns:l,...s})}));vde.displayName="SimpleGrid";const yde=({goToStep:e,account:t})=>(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(YR,{width:"24px",height:"24px",stroke:AO.gray[450]}),subtitle:"Please record the following 24 words in sequence in order to restore it in the future.",title:"Record Seed Phrase",children:(0,xn.jsxs)(Gle,{children:[(0,xn.jsx)(vde,{columns:3,spacing:2,children:t.mnemonic.split(" ").map(((e,t)=>(0,xn.jsxs)(_n,{width:"126px",padding:"6px",border:"1px dashed",borderColor:AO.gray[500],borderRadius:"4px",children:[(0,xn.jsx)(Ln,{width:"18px",marginRight:"10px",paddingTop:"2px",color:AO.gray[450],textAlign:"right",size:"sm",children:t+1}),(0,xn.jsx)(WU,{"data-testid":`mnemonic-word-${t}`,size:"sm",children:e})]},t)))}),(0,xn.jsx)(Gn,{width:"100%",marginTop:"20px",onClick:r=>{e({type:"verifySeedphrase",account:t})},size:"lg",children:"OK, I've recorded it"})]})}),bde=({goToStep:e,account:t})=>{const r=t.mnemonic.split(" "),n=xH({mode:"onBlur"}),{handleSubmit:o,formState:{errors:a,isValid:s}}=n,[c]=(0,i.useState)(((e,t)=>(0,Ns.shuffle)(e.map(((e,t)=>({value:e,index:t})))).slice(0,t).sort(((e,t)=>e.index-t.index)))(r,5));return(0,xn.jsx)(Yle,{icon:(0,xn.jsx)(jR,{}),subtitle:"To verify, please type in the word that corresponds to each sequence number.",title:"Verify Seed Phrase",children:(0,xn.jsx)(En,{overflowX:"hidden",overflowY:"auto",width:"100%",children:(0,xn.jsx)(f$,{...n,children:(0,xn.jsxs)("form",{onSubmit:o((()=>e({type:"nameAccount",account:t}))),children:[c.map(((e,t)=>{const r=`${e.index}`,n=a[r];return(0,xn.jsxs)(LF,{marginBottom:"12px",isInvalid:!!n,children:[(0,xn.jsx)(WU,{position:"absolute",zIndex:1,width:"26px",marginTop:"12px",marginLeft:"4px",textAlign:"right","data-testid":"mnemonic-index",children:e.index+1}),(0,xn.jsx)(En,{width:"100%",children:(0,xn.jsx)(dde,{inputName:r,inputProps:{paddingLeft:"36px",size:"md"},listProps:{marginTop:"6px"},validate:t=>{if(t!==e.value)return"Word doesn't match"}})}),(null===n||void 0===n?void 0:n.message)&&(0,xn.jsx)(qoe,{children:n.message})]},t)})),(0,xn.jsx)(Gn,{width:"100%",marginTop:"20px",isDisabled:!s,size:"lg",type:"submit",children:"Continue"})]})})})})},wde=e=>{const{isOpen:t,onOpen:r,onClose:n}=LI(),o=0!==A6().length,a=(e=>{const[t,r]=(0,i.useState)(e),[n,o]=(0,i.useState)([t]),a=1===n.length;return{reset:()=>{r(e),o([e])},goToStep:e=>{r(e),o([...n,e])},currentStep:t,goBack:()=>{if(a)return;n.pop();const e=n[n.length-1];o(n),r(e)},atInitialStep:a,fullHistory:n}})({type:o?"connectOrCreate":"eula"}),{currentStep:s,goToStep:c}=a,l=()=>{a.reset(),e&&e(),n()};return{modalElement:(0,xn.jsxs)(QI,{autoFocus:!1,closeOnOverlayClick:!1,isCentered:!0,isOpen:t,onClose:l,children:[o&&(0,xn.jsx)(fM,{}),(0,xn.jsxs)(VU,{children:[!a.atInitialStep&&(0,xn.jsx)(Qoe,{onClick:a.goBack}),(0,xn.jsx)(GU,{onClick:l}),(()=>{switch(s.type){case"eula":return(0,xn.jsx)(Xue,{goToStep:c});case"connectOrCreate":return(0,xn.jsx)(yue,{closeModal:l,goToStep:c});case"connectOptions":return(0,xn.jsx)(nue,{goToStep:c});case"notice":return(0,xn.jsx)(tde,{goToStep:c});case"restoreMnemonic":return(0,xn.jsx)(fde,{goToStep:c});case"restoreBackup":return(0,xn.jsx)(nde,{});case"showSeedphrase":return(0,xn.jsx)(yde,{goToStep:c,...s});case"verifySeedphrase":return(0,xn.jsx)(bde,{goToStep:c,...s});case"nameAccount":return(0,xn.jsx)(rue,{goToStep:c,...s});case"derivationPath":return(0,xn.jsx)(wue,{goToStep:c,...s});case"restoreLedger":return(0,xn.jsx)(ide,{closeModal:l,...s});case"masterPassword":return(0,xn.jsx)(ede,{onClose:l,...s});case"fakeAccount":return(0,xn.jsx)(Jue,{onClose:n});case"restoreSecretKey":return(0,xn.jsx)(gde,{goToStep:c})}})()]})]}),onOpen:r}};var xde=r(1520),_de=r.n(xde);const kde=e=>{const t=AI(),{openWith:r}=(0,i.useContext)(dL),{mode:n,operations:o,fee:a,data:{threshold:s,signers:c,name:l}}=e,{fee:u,operations:d,estimationFailed:h,isLoading:f,form:p,reEstimate:m,signer:g,onSign:v,handleAsyncAction:y}=$se(a,o,n);return(0,xn.jsx)(f$,{...p,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(rae,{...e,description:"Please review the details and then continue to submit contract.",operationsType:d.type,signer:g,title:"Review & Submit"}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(WU,{marginBottom:"24px",padding:"14px",color:AO.gray[50],background:AO.gray[800],borderRadius:"6px","data-testid":"contract-name",children:l}),(0,xn.jsx)(TH,{children:"Approvers"}),(0,xn.jsx)(En,{marginBottom:"12px","data-testid":"approvers",children:c.map((e=>(0,xn.jsx)(V6,{address:Fd(e.val),"data-testid":`approver-${e.val}`},e.val)))}),(0,xn.jsx)(_n,{justifyContent:"flex-end",children:(0,xn.jsx)(Sde,{signersAmount:c.length,threshold:s})}),(0,xn.jsxs)(En,{children:[(0,xn.jsx)(LF,{marginTop:"24px",marginBottom:"12px",children:(0,xn.jsx)(Y6,{allowUnknown:!1,inputName:"signer",isLoading:f,keepValid:!0,label:"Creation Fee Payer",onUpdate:m})}),(0,xn.jsx)(_n,{justifyContent:"flex-end",children:(0,xn.jsx)(sae,{fee:u})})]})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isDisabled:h,isLoading:f,onSubmit:async e=>y((async()=>{const n=await v(e);if(!n)throw new Error("An error occurred during contract origination");const i=(await n.getOriginatedContractAddresses())[0];return t(zh.addMultisigLabel({pkh:i,label:l})),r((0,xn.jsx)(oae,{hash:n.opHash}))})),signer:g,text:"Submit Contract"})})]})})})},Sde=({threshold:e,signersAmount:t})=>(0,xn.jsxs)(_n,{alignItems:"center","data-testid":"threshold",children:[(0,xn.jsx)(Ln,{marginRight:"4px",color:AO.gray[450],size:"sm",children:"No. of approvals:"}),(0,xn.jsx)(WU,{color:AO.gray[400],size:"sm",children:`${e} out of ${t}`})]}),Ede=[{prim:"storage",args:[{prim:"pair",args:[{prim:"address",annots:["%owner"]},{prim:"pair",args:[{prim:"set",args:[{prim:"address"}],annots:["%signers"]},{prim:"pair",args:[{prim:"nat",annots:["%threshold"]},{prim:"pair",args:[{prim:"nat",annots:["%last_op_id"]},{prim:"pair",args:[{prim:"big_map",args:[{prim:"nat"},{prim:"pair",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}],annots:["%actions"]},{prim:"set",args:[{prim:"address"}],annots:["%approvals"]}]}],annots:["%pending_ops"]},{prim:"big_map",args:[{prim:"string"},{prim:"bytes"}],annots:["%metadata"]}]}]}]}]}]}]},{prim:"parameter",args:[{prim:"or",args:[{prim:"or",args:[{prim:"or",args:[{prim:"bytes",annots:["%set_metadata_uri"]},{prim:"unit",annots:["%default"]}]},{prim:"or",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}],annots:["%propose"]},{prim:"nat",annots:["%approve"]}]}]},{prim:"nat",annots:["%execute"]}]}]},{prim:"code",args:[[{prim:"NIL",args:[{prim:"operation"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"UNPAIR"},{prim:"DIP",args:[{int:"1"},[{prim:"UNPAIR",args:[{int:"6"}]}]]},{prim:"IF_LEFT",args:[[{prim:"IF_LEFT",args:[[{prim:"IF_LEFT",args:[[{prim:"DUP",args:[{int:"2"}]},{prim:"SENDER"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID_CALLER"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"SOME"},{prim:"PUSH",args:[{prim:"string"},{string:""}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}],[{prim:"DROP",args:[{int:"1"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"SIZE"},{prim:"COMPARE"},{prim:"GE"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"FUNDING BLOCKED SINCE PARAMS ARE INVALID"}]},{prim:"FAILWITH"}],[]]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}],[{prim:"IF_LEFT",args:[[{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"3"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"nat"},{int:"1"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"ADD"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"4"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"4"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"MEM"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"KEY_EXISTS"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[{prim:"DUP",args:[{int:"6"}]},{prim:"EMPTY_SET",args:[{prim:"address"}]},{prim:"PUSH",args:[{prim:"bool"},{prim:"True"}]},{prim:"SENDER"},{prim:"UPDATE"},{prim:"DUP",args:[{int:"3"}]},{prim:"PAIR"},{prim:"SOME"},{prim:"DUP",args:[{int:"7"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"5"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"5"}]}]]},{prim:"DROP",args:[{int:"1"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}],[{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID OP ID"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"4"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP"},{prim:"CDR"},{prim:"SENDER"},{prim:"MEM"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ALREADY APPROVED"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"8"}]},{prim:"DUP",args:[{int:"4"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"UNPAIR"},{prim:"SWAP"},{prim:"DROP",args:[{int:"1"}]},{prim:"DUP",args:[{int:"9"}]},{prim:"DUP",args:[{int:"5"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"CDR"},{prim:"PUSH",args:[{prim:"bool"},{prim:"True"}]},{prim:"SENDER"},{prim:"UPDATE"},{prim:"SWAP"},{prim:"PAIR"},{prim:"SOME"},{prim:"DUP",args:[{int:"4"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"2"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}]]}],[{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID OP ID"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"4"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"5"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"CDR"},{prim:"SIZE"},{prim:"COMPARE"},{prim:"GE"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"NOT YET APPROVED"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"CAR"},{prim:"PUSH",args:[{prim:"unit"},{prim:"Unit"}]},{prim:"EXEC"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"8"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"8"}]},{prim:"DUP",args:[{int:"7"}]},{prim:"NONE",args:[{prim:"pair",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}]},{prim:"set",args:[{prim:"address"}]}]}]},{prim:"DUP",args:[{int:"4"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"2"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}]]}],Ade=e=>{return{type:"contract_origination",sender:Fd(e.sender),code:Ede,storage:(t=e.sender,r=e.signers.map((e=>e.val)),n=String(e.threshold),{owner:t,signers:r,threshold:n,last_op_id:"0",pending_ops:[],metadata:[]})};var t,r,n},Pde=e=>{const{goBack:t,sender:r,...n}=e,o=xH({mode:"onBlur",defaultValues:{sender:r.address.pkh,signers:[{val:""}],threshold:1,...Fse(n)}}),{formState:{errors:a,isValid:s},control:c,register:l,handleSubmit:u,getValues:d,watch:h}=o,f=function(e){const t=h$(),{control:r=t.control,name:n,keyName:o="id",shouldUnregister:a}=e,[s,c]=i.useState(r._getFieldArray(n)),l=i.useRef(r._getFieldArray(n).map(E$)),u=i.useRef(s),d=i.useRef(n),h=i.useRef(!1);d.current=n,u.current=s,r._names.array.add(n),e.rules&&r.register(n,e.rules),y$({next:({values:e,name:t})=>{if(t===d.current||!t){const t=e$(e,d.current);Array.isArray(t)&&(c(t),l.current=t.map(E$))}},subject:r._subjects.array});const f=i.useCallback((e=>{h.current=!0,r._updateFieldArray(n,e)}),[r,n]);return i.useEffect((()=>{if(r._state.action=!1,O$(n,r._names)&&r._subjects.state.next({...r._formState}),h.current&&(!P$(r._options.mode).isOnSubmit||r._formState.isSubmitted))if(r._options.resolver)r._executeSchema([n]).then((e=>{const t=e$(e.errors,n),i=e$(r._formState.errors,n);(i?!t&&i.type||t&&(i.type!==t.type||i.message!==t.message):t&&t.type)&&(t?k$(r._formState.errors,n,t):J$(r._formState.errors,n),r._subjects.state.next({errors:r._formState.errors}))}));else{const e=e$(r._fields,n);!e||!e._f||P$(r._options.reValidateMode).isOnSubmit&&P$(r._options.mode).isOnSubmit||V$(e,r._formValues,r._options.criteriaMode===n$.all,r._options.shouldUseNativeValidation,!0).then((e=>!m$(e)&&r._subjects.state.next({errors:j$(r._formState.errors,e,n)})))}r._subjects.values.next({name:n,values:{...r._formValues}}),r._names.focus&&T$(r._fields,((e,t)=>{if(r._names.focus&&t.startsWith(r._names.focus)&&e.focus)return e.focus(),1})),r._names.focus="",r._updateValid(),h.current=!1}),[s,n,r]),i.useEffect((()=>(!e$(r._formValues,n)&&r._updateFieldArray(n),()=>{(r._options.shouldUnregister||a)&&r.unregister(n)})),[n,r,o,a]),{swap:i.useCallback(((e,t)=>{const i=r._getFieldArray(n);X$(i,e,t),X$(l.current,e,t),f(i),c(i),r._updateFieldArray(n,i,X$,{argA:e,argB:t},!1)}),[f,n,r]),move:i.useCallback(((e,t)=>{const i=r._getFieldArray(n);G$(i,e,t),G$(l.current,e,t),f(i),c(i),r._updateFieldArray(n,i,G$,{argA:e,argB:t},!1)}),[f,n,r]),prepend:i.useCallback(((e,t)=>{const i=v$(XF(e)),o=Z$(r._getFieldArray(n),i);r._names.focus=A$(n,0,t),l.current=Z$(l.current,i.map(E$)),f(o),c(o),r._updateFieldArray(n,o,Z$,{argA:K$(e)})}),[f,n,r]),append:i.useCallback(((e,t)=>{const i=v$(XF(e)),o=q$(r._getFieldArray(n),i);r._names.focus=A$(n,o.length-1,t),l.current=q$(l.current,i.map(E$)),f(o),c(o),r._updateFieldArray(n,o,q$,{argA:K$(e)})}),[f,n,r]),remove:i.useCallback((e=>{const t=Y$(r._getFieldArray(n),e);l.current=Y$(l.current,e),f(t),c(t),r._updateFieldArray(n,t,Y$,{argA:e})}),[f,n,r]),insert:i.useCallback(((e,t,i)=>{const o=v$(XF(t)),a=W$(r._getFieldArray(n),e,o);r._names.focus=A$(n,e,i),l.current=W$(l.current,e,o.map(E$)),f(a),c(a),r._updateFieldArray(n,a,W$,{argA:e,argB:K$(t)})}),[f,n,r]),update:i.useCallback(((e,t)=>{const i=XF(t),o=Q$(r._getFieldArray(n),e,i);l.current=[...o].map(((t,r)=>t&&r!==e?l.current[r]:E$())),f(o),c([...o]),r._updateFieldArray(n,o,Q$,{argA:e,argB:i},!0,!1)}),[f,n,r]),replace:i.useCallback((e=>{const t=v$(XF(e));l.current=t.map(E$),f([...t]),c([...t]),r._updateFieldArray(n,[...t],(e=>e),{},!0,!1)}),[f,n,r]),fields:i.useMemo((()=>s.map(((e,t)=>({...e,[o]:l.current[t]||E$()})))),[s,o])}}({control:c,name:"signers",rules:{minLength:1}}),p=h("signers").length,m=Gse({SignPage:kde,signPageExtraData:h(),FormPage:Pde,defaultFormPageProps:e,toOperation:Ade}),{onFormSubmitActionHandlers:[g],isLoading:v}=Yse([m]);return(0,xn.jsx)(f$,{...o,children:(0,xn.jsxs)(VU,{children:[(0,xn.jsx)(Qoe,{onClick:t}),(0,xn.jsxs)("form",{onSubmit:u(g),children:[(0,xn.jsx)(Yoe,{subTitle:"Select the participants of the contract and choose the minimum number of approvals.",title:"Select Approvers"}),(0,xn.jsxs)(ZU,{children:[f.fields.map(((e,t)=>{var r;const n=a.signers&&a.signers[t],i=`${0===t?"Select ":""}${_de()(t+1)} approver`,o=p>1?"short":"default",s="short"===o?"368px":"100%";return(0,xn.jsxs)(LF,{display:"inline-block",width:s,marginBottom:"8px","data-testid":`signer-input-${t}`,isInvalid:!!n,children:[(0,xn.jsx)(Y6,{allowUnknown:!0,inputName:`signers.${t}.val`,label:i,size:o,style:{width:s},validate:e=>{if(!Vd(e))return"Signer must be valid TZ address";const t=d("signers").map((e=>e.val));return t.length>new Set(t).size?"Duplicate approver":void 0}}),p>1&&(0,xn.jsx)(t4,{position:"absolute",height:"24px",marginTop:"-36px",marginLeft:"374px",background:AO.gray[500],"aria-label":"Remove","data-testid":`remove-signer-${t}`,icon:(0,xn.jsx)(vI,{width:"12px",height:"14px",stroke:AO.gray[300]}),isRound:!0,onClick:()=>f.remove(t),size:"xs",variant:"tertiary"}),n&&(0,xn.jsx)(qoe,{"data-testid":`signer-${t}-error`,children:null===(r=n.val)||void 0===r?void 0:r.message})]},e.id)})),(0,xn.jsx)(Gn,{paddingLeft:0,onClick:()=>f.append({val:""}),variant:"specialCTA",children:"+ Add Approver"}),(0,xn.jsxs)(LF,{marginTop:"24px",isInvalid:!!a.threshold,children:[(0,xn.jsxs)(TH,{display:"inline",children:["Min No. of approvals:",(0,xn.jsx)(MH,{display:"inline",marginLeft:"10px",children:(0,xn.jsx)(DH,{width:"60px",color:"white","data-testid":"threshold-input",step:1,type:"number",...l("threshold",{valueAsNumber:!0,required:"No. of approvals is required",max:{value:p,message:`Max no. of approvals is ${p}`},min:{value:1,message:"Min no. of approvals is 1"}})})})]}),(0,xn.jsxs)(WU,{display:"inline","data-testid":"max-signers",children:["out of ",p]}),a.threshold&&(0,xn.jsx)(qoe,{"data-testid":"threshold-error",children:a.threshold.message})]})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Gn,{width:"100%",isDisabled:!s,isLoading:v,size:"lg",type:"submit",children:"Review"})})]})]})})},Ode=({name:e})=>{const t=xH({mode:"onBlur",defaultValues:{name:e||""}}),{formState:{errors:r,isValid:n},register:o,handleSubmit:a}=t,s=A6(),c=D6(),{openWith:l}=(0,i.useContext)(dL),u=j6();return(0,xn.jsx)(f$,{...t,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{onSubmit:a((({name:e})=>l((0,xn.jsx)(Pde,{form:{name:e.trim()},goBack:()=>l((0,xn.jsx)(Ode,{name:e})),sender:c(s)})))),children:[(0,xn.jsx)(Yoe,{subTitle:"Name your account. The account name will only appear in your local Umami app.",title:"Account Name"}),(0,xn.jsx)(ZU,{children:(0,xn.jsxs)(LF,{isInvalid:!!r.name,children:[(0,xn.jsx)(TH,{children:"Account Name"}),(0,xn.jsx)(MH,{children:(0,xn.jsx)(DH,{"data-testid":"multisig-account-name",type:"text",...o("name",{validate:e=>0==e.trim().length?"Name should not be empty":u(e.trim())?void 0:"Name must be unique across all accounts and contacts"}),placeholder:"Account Name"})}),r.name&&(0,xn.jsx)(qoe,{"data-testid":"name-error",children:r.name.message})]})}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Gn,{width:"100%",isDisabled:!n,size:"lg",type:"submit",children:"Continue"})})]})})})},Tde=()=>{const{onOpen:e,modalElement:t}=wde();return(0,xn.jsxs)(_n,{flexDirection:"row-reverse",marginTop:"12px",marginBottom:"16px",children:[(0,xn.jsxs)(Gn,{paddingRight:"0",onClick:e,variant:"CTAWithIcon",children:[(0,xn.jsx)(pR,{stroke:"currentcolor"}),(0,xn.jsx)(WU,{marginLeft:"4px",size:"sm",children:"Add Account"})]}),t]})},jde=({groupLabel:e,accounts:t,balances:r})=>{const n=t[0],o="multisig"===n.type,a="mnemonic"===n.type,{openWith:s,onClose:c}=(0,i.useContext)(dL),l=(()=>{const e=AI();return t=>{e(pue({fingerPrint:t}))}})(),u=(()=>{const e=AI();return t=>{e(mue({accountType:t}))}})(),d=A6().length===t.length;let h,f="Remove All";const p=Cde(n);d?(h="Removing all your accounts will off-board you from Umami. This will remove or reset all customized settings to their defaults. Personal data (including saved contacts, password and accounts) won't be affected.",f="Remove & Off-board"):h=a?`Are you sure you want to remove all accounts derived from ${p}?`:`Are you sure you want to remove all of your ${p}?`;return(0,xn.jsxs)(En,{"data-testid":`account-group-${e}`,children:[(0,xn.jsxs)(_n,{justifyContent:"space-between",children:[(0,xn.jsx)(Ln,{marginBottom:4,"data-testid":"account-group-title",size:"md",children:e}),!o&&(0,xn.jsx)(qle,{onCreate:a?()=>{if(!a)throw new Error("Can't derive a non mnemonic account!");return s((0,xn.jsx)(Ide,{fingerprint:n.seedFingerPrint,onDone:c}))}:void 0,onRemove:()=>s((0,xn.jsx)(hle,{buttonLabel:f,description:h,onSubmit:()=>{a?l(n.seedFingerPrint):u(n.type),c()},title:"Remove All Accounts"}))})]}),t.map((e=>(0,xn.jsx)(En,{marginBottom:"16px",children:(0,xn.jsx)(dle,{account:e,balance:r[e.address.pkh]})},e.address.pkh)))]})},Cde=e=>{switch(e.type){case"mnemonic":return`Seedphrase ${e.seedFingerPrint}`;case"social":return"Social Accounts";case"ledger":return"Ledger Accounts";case"secret_key":return"Secret Key Accounts";case"multisig":return"Multisig Accounts"}},Rde=()=>{const e=T6(),t=PI((e=>e.assets.balances.mutez)),r=(0,Ns.groupBy)(e,Cde),{openWith:n}=(0,i.useContext)(dL),o=Object.entries(r).map((([e,r])=>(0,xn.jsx)(jde,{accounts:r,balances:t,groupLabel:e},e)));return(0,xn.jsx)(xn.Fragment,{children:(0,xn.jsx)(En,{height:"100%",marginRight:0,children:(0,xn.jsxs)(eue,{children:[(0,Ns.compact)(o),(0,xn.jsx)(Gn,{width:"100%",height:"90px",background:AO.black,border:"1px dashed",borderColor:AO.gray[500],onClick:()=>n((0,xn.jsx)(Ode,{})),variant:"outline",children:(0,xn.jsxs)(WU,{display:"block",width:"100%",margin:5,color:AO.gray[400],textAlign:"center",children:[(0,xn.jsx)(YR,{marginRight:1,stroke:AO.gray[450]}),"Create New Multisig"]})})]})})})},Ide=e=>{const{isLoading:t,handleAsyncAction:r}=tre(),n=fL(),i=(()=>{const e=S6(),t=A6(),r=C6(),n=co();return async({fingerPrint:i,password:o,label:a})=>{const s=e[i];if(!s)throw new Error(`No seedphrase found with fingerprint: ${i}`);const c=await Ol(s,o),l=t.filter((e=>"mnemonic"===e.type&&e.seedFingerPrint===i)),u=l.length,d=l[0].derivationPathPattern,h=sue(d,u),{pk:f,pkh:p}=await A3(c,h),m=r(a,1)[0],g=cue(f,p,h,d,i,m);n(Cl.actions.addAccount(g))}})();return(0,xn.jsxs)(VU,{children:[(0,xn.jsx)(GU,{}),(0,xn.jsx)(Qle,{isLoading:t,onSubmit:({name:t,password:o})=>r((async()=>{await i({fingerPrint:e.fingerprint,password:o,label:t.trim()||tue}),e.onDone(),n({description:`New account created! Successfully derived account from ${e.fingerprint}`})}),{title:"Failed to derive new account"}),subtitle:`Name the new account derived from ${e.fingerprint}`})]})},Mde=({onClose:e,...t})=>(0,xn.jsx)(_n,{justifyContent:"flex-end",paddingBottom:"30px",cursor:"pointer",...t,children:(0,xn.jsx)(Lde,{onClose:e})}),Lde=({onClose:e})=>(0,xn.jsxs)(Gn,{onClick:e,variant:"CTAWithIcon",children:[(0,xn.jsx)(MR,{stroke:"currentcolor"}),(0,xn.jsx)(WU,{marginLeft:"4px",children:"Close"})]});function Nde(e){const t=e.target,{tagName:r,isContentEditable:n}=t;return"INPUT"!==r&&"TEXTAREA"!==r&&!0!==n}function Dde(e={}){const{ref:t,isDisabled:r,isFocusable:n,clickOnEnter:o=!0,clickOnSpace:a=!0,onMouseDown:s,onMouseUp:c,onClick:l,onKeyDown:u,onKeyUp:d,tabIndex:h,onMouseOver:f,onMouseLeave:p,...m}=e,[g,v]=(0,i.useState)(!0),[y,b]=(0,i.useState)(!1),w=function(){const e=(0,i.useRef)(new Map),t=e.current,r=(0,i.useCallback)(((t,r,n,i)=>{e.current.set(n,{type:r,el:t,options:i}),t.addEventListener(r,n,i)}),[]),n=(0,i.useCallback)(((t,r,n,i)=>{t.removeEventListener(r,n,i),e.current.delete(n)}),[]);return(0,i.useEffect)((()=>()=>{t.forEach(((e,t)=>{n(e.el,e.type,t,e.options)}))}),[n,t]),{add:r,remove:n}}(),x=g?h:h||0,_=r&&!n,S=(0,i.useCallback)((e=>{if(r)return e.stopPropagation(),void e.preventDefault();e.currentTarget.focus(),null==l||l(e)}),[r,l]),E=(0,i.useCallback)((e=>{y&&Nde(e)&&(e.preventDefault(),e.stopPropagation(),b(!1),w.remove(document,"keyup",E,!1))}),[y,w]),A=(0,i.useCallback)((e=>{if(null==u||u(e),r||e.defaultPrevented||e.metaKey)return;if(!Nde(e.nativeEvent)||g)return;const t=o&&"Enter"===e.key;if(a&&" "===e.key&&(e.preventDefault(),b(!0)),t){e.preventDefault();e.currentTarget.click()}w.add(document,"keyup",E,!1)}),[r,g,u,o,a,w,E]),P=(0,i.useCallback)((e=>{if(null==d||d(e),r||e.defaultPrevented||e.metaKey)return;if(!Nde(e.nativeEvent)||g)return;if(a&&" "===e.key){e.preventDefault(),b(!1);e.currentTarget.click()}}),[a,g,r,d]),O=(0,i.useCallback)((e=>{0===e.button&&(b(!1),w.remove(document,"mouseup",O,!1))}),[w]),T=(0,i.useCallback)((e=>{if(0!==e.button)return;if(r)return e.stopPropagation(),void e.preventDefault();g||b(!0);e.currentTarget.focus({preventScroll:!0}),w.add(document,"mouseup",O,!1),null==s||s(e)}),[r,g,s,w,O]),j=(0,i.useCallback)((e=>{0===e.button&&(g||b(!1),null==c||c(e))}),[c,g]),C=(0,i.useCallback)((e=>{r?e.preventDefault():null==f||f(e)}),[r,f]),R=(0,i.useCallback)((e=>{y&&(e.preventDefault(),b(!1)),null==p||p(e)}),[y,p]),I=Kn(t,(e=>{e&&"BUTTON"!==e.tagName&&v(!1)}));return g?{...m,ref:I,type:"button","aria-disabled":_?void 0:r,disabled:_,onClick:S,onMouseDown:s,onMouseUp:c,onKeyUp:d,onKeyDown:u,onMouseOver:f,onMouseLeave:p}:{...m,ref:I,role:"button","data-active":k(y),"aria-disabled":r?"true":void 0,tabIndex:_?void 0:x,onClick:S,onMouseDown:T,onMouseUp:j,onKeyUp:P,onKeyDown:A,onMouseOver:C,onMouseLeave:R}}var[zde,Bde,Ude,Fde]=cF();var[$de,Hde]=Nn({name:"TabsContext",errorMessage:"useTabsContext: `context` is undefined. Seems you forgot to wrap all tabs components within "});var[Vde,qde]=Nn({});function Kde(e,t){return`${e}--tab-${t}`}function Wde(e,t){return`${e}--tabpanel-${t}`}var[Gde,Zde]=Nn({name:"TabsStylesContext",errorMessage:"useTabsStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),Yde=v((function(e,t){const r=Mn("Tabs",e),{children:n,className:o,...a}=ft(e),{htmlProps:s,descendants:c,...l}=function(e){var t;const{defaultIndex:r,onChange:n,index:o,isManual:a,isLazy:s,lazyBehavior:c="unmount",orientation:l="horizontal",direction:u="ltr",...d}=e,[h,f]=(0,i.useState)(null!=r?r:0),[p,m]=vF({defaultValue:null!=r?r:0,value:o,onChange:n});(0,i.useEffect)((()=>{null!=o&&f(o)}),[o]);const g=Ude(),v=(0,i.useId)();return{id:`tabs-${null!=(t=e.id)?t:v}`,selectedIndex:p,focusedIndex:h,setSelectedIndex:m,setFocusedIndex:f,isManual:a,isLazy:s,lazyBehavior:c,orientation:l,descendants:g,direction:u,htmlProps:d}}(a),u=(0,i.useMemo)((()=>l),[l]),{isFitted:d,...h}=s,f={position:"relative",...r.root};return(0,xn.jsx)(zde,{value:c,children:(0,xn.jsx)($de,{value:u,children:(0,xn.jsx)(Gde,{value:r,children:(0,xn.jsx)(wn.div,{className:y("chakra-tabs",o),ref:t,...h,__css:f,children:n})})})})}));Yde.displayName="Tabs";var Xde=v((function(e,t){const r=function(e){const{focusedIndex:t,orientation:r,direction:n}=Hde(),o=Bde(),a=(0,i.useCallback)((e=>{const i=()=>{var e;const r=o.nextEnabled(t);r&&(null==(e=r.node)||e.focus())},a=()=>{var e;const r=o.prevEnabled(t);r&&(null==(e=r.node)||e.focus())},s="horizontal"===r,c="vertical"===r,l=e.key,u={["ltr"===n?"ArrowLeft":"ArrowRight"]:()=>s&&a(),["ltr"===n?"ArrowRight":"ArrowLeft"]:()=>s&&i(),ArrowDown:()=>c&&i(),ArrowUp:()=>c&&a(),Home:()=>{var e;const t=o.firstEnabled();t&&(null==(e=t.node)||e.focus())},End:()=>{var e;const t=o.lastEnabled();t&&(null==(e=t.node)||e.focus())}},d=u[l];d&&(e.preventDefault(),d(e))}),[o,t,r,n]);return{...e,role:"tablist","aria-orientation":r,onKeyDown:E(e.onKeyDown,a)}}({...e,ref:t}),n={display:"flex",...Zde().tablist};return(0,xn.jsx)(wn.div,{...r,className:y("chakra-tabs__tablist",e.className),__css:n})}));Xde.displayName="TabList";var Jde=v((function(e,t){const r=function(e){const t=Hde(),{id:r,selectedIndex:n}=t,o=CH(e.children).map(((e,t)=>(0,i.createElement)(Vde,{key:t,value:{isSelected:t===n,id:Wde(r,t),tabId:Kde(r,t),selectedIndex:n}},e)));return{...e,children:o}}(e),n=Zde();return(0,xn.jsx)(wn.div,{...r,width:"100%",ref:t,className:y("chakra-tabs__tab-panels",e.className),__css:n.tabpanels})}));Jde.displayName="TabPanels";var Qde=v((function(e,t){const r=function(e){const{children:t,...r}=e,{isLazy:n,lazyBehavior:o}=Hde(),{isSelected:a,id:s,tabId:c}=qde(),l=(0,i.useRef)(!1);return a&&(l.current=!0),{tabIndex:0,...r,children:vse({wasSelected:l.current,isSelected:a,enabled:n,mode:o})?t:null,role:"tabpanel","aria-labelledby":c,hidden:!a,id:s}}({...e,ref:t}),n=Zde();return(0,xn.jsx)(wn.div,{outline:"0",...r,className:y("chakra-tabs__tab-panel",e.className),__css:n.tabpanel})}));function ehe(e){const t=lce(e);return t.setHours(0,0,0,0),t}Qde.displayName="TabPanel";function the(e,t){const r=ehe(e),n=ehe(t),i=+r-Mce(r),o=+n-Mce(n);return Math.round((i-o)/fce)}function rhe(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}function nhe(e){const t=lce(e),r=rhe(e,0);return r.setFullYear(t.getFullYear(),0,1),r.setHours(0,0,0,0),r}function ihe(e){const t=lce(e);return the(t,nhe(t))+1}function ohe(e,t){const r=Ice(),n=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=lce(e),o=i.getDay(),a=(o=i.getTime()?r+1:t.getTime()>=a.getTime()?r:r-1}function che(e){const t=she(e),r=rhe(e,0);return r.setFullYear(t,0,4),r.setHours(0,0,0,0),ahe(r)}function lhe(e){const t=lce(e),r=+ahe(t)-+che(t);return Math.round(r/hce)+1}function uhe(e,t){const r=lce(e),n=r.getFullYear(),i=Ice(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,a=rhe(e,0);a.setFullYear(n+1,0,o),a.setHours(0,0,0,0);const s=ohe(a,t),c=rhe(e,0);c.setFullYear(n,0,o),c.setHours(0,0,0,0);const l=ohe(c,t);return r.getTime()>=s.getTime()?n+1:r.getTime()>=l.getTime()?n:n-1}function dhe(e,t){const r=Ice(),n=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,i=uhe(e,t),o=rhe(e,0);o.setFullYear(i,0,n),o.setHours(0,0,0,0);return ohe(o,t)}function hhe(e,t){const r=lce(e),n=+ohe(r,t)-+dhe(r,t);return Math.round(n/hce)+1}function fhe(e,t){return(e<0?"-":"")+Math.abs(e).toString().padStart(t,"0")}const phe={y(e,t){const r=e.getFullYear(),n=r>0?r:1-r;return fhe("yy"===t?n%100:n,t.length)},M(e,t){const r=e.getMonth();return"M"===t?String(r+1):fhe(r+1,2)},d:(e,t)=>fhe(e.getDate(),t.length),a(e,t){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.toUpperCase();case"aaa":return r;case"aaaaa":return r[0];default:return"am"===r?"a.m.":"p.m."}},h:(e,t)=>fhe(e.getHours()%12||12,t.length),H:(e,t)=>fhe(e.getHours(),t.length),m:(e,t)=>fhe(e.getMinutes(),t.length),s:(e,t)=>fhe(e.getSeconds(),t.length),S(e,t){const r=t.length,n=e.getMilliseconds();return fhe(Math.trunc(n*Math.pow(10,r-3)),t.length)}},mhe="midnight",ghe="noon",vhe="morning",yhe="afternoon",bhe="evening",whe="night",xhe={G:function(e,t,r){const n=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return r.era(n,{width:"abbreviated"});case"GGGGG":return r.era(n,{width:"narrow"});default:return r.era(n,{width:"wide"})}},y:function(e,t,r){if("yo"===t){const t=e.getFullYear(),n=t>0?t:1-t;return r.ordinalNumber(n,{unit:"year"})}return phe.y(e,t)},Y:function(e,t,r,n){const i=uhe(e,n),o=i>0?i:1-i;if("YY"===t){return fhe(o%100,2)}return"Yo"===t?r.ordinalNumber(o,{unit:"year"}):fhe(o,t.length)},R:function(e,t){return fhe(she(e),t.length)},u:function(e,t){return fhe(e.getFullYear(),t.length)},Q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(n);case"QQ":return fhe(n,2);case"Qo":return r.ordinalNumber(n,{unit:"quarter"});case"QQQ":return r.quarter(n,{width:"abbreviated",context:"formatting"});case"QQQQQ":return r.quarter(n,{width:"narrow",context:"formatting"});default:return r.quarter(n,{width:"wide",context:"formatting"})}},q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(n);case"qq":return fhe(n,2);case"qo":return r.ordinalNumber(n,{unit:"quarter"});case"qqq":return r.quarter(n,{width:"abbreviated",context:"standalone"});case"qqqqq":return r.quarter(n,{width:"narrow",context:"standalone"});default:return r.quarter(n,{width:"wide",context:"standalone"})}},M:function(e,t,r){const n=e.getMonth();switch(t){case"M":case"MM":return phe.M(e,t);case"Mo":return r.ordinalNumber(n+1,{unit:"month"});case"MMM":return r.month(n,{width:"abbreviated",context:"formatting"});case"MMMMM":return r.month(n,{width:"narrow",context:"formatting"});default:return r.month(n,{width:"wide",context:"formatting"})}},L:function(e,t,r){const n=e.getMonth();switch(t){case"L":return String(n+1);case"LL":return fhe(n+1,2);case"Lo":return r.ordinalNumber(n+1,{unit:"month"});case"LLL":return r.month(n,{width:"abbreviated",context:"standalone"});case"LLLLL":return r.month(n,{width:"narrow",context:"standalone"});default:return r.month(n,{width:"wide",context:"standalone"})}},w:function(e,t,r,n){const i=hhe(e,n);return"wo"===t?r.ordinalNumber(i,{unit:"week"}):fhe(i,t.length)},I:function(e,t,r){const n=lhe(e);return"Io"===t?r.ordinalNumber(n,{unit:"week"}):fhe(n,t.length)},d:function(e,t,r){return"do"===t?r.ordinalNumber(e.getDate(),{unit:"date"}):phe.d(e,t)},D:function(e,t,r){const n=ihe(e);return"Do"===t?r.ordinalNumber(n,{unit:"dayOfYear"}):fhe(n,t.length)},E:function(e,t,r){const n=e.getDay();switch(t){case"E":case"EE":case"EEE":return r.day(n,{width:"abbreviated",context:"formatting"});case"EEEEE":return r.day(n,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},e:function(e,t,r,n){const i=e.getDay(),o=(i-n.weekStartsOn+8)%7||7;switch(t){case"e":return String(o);case"ee":return fhe(o,2);case"eo":return r.ordinalNumber(o,{unit:"day"});case"eee":return r.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return r.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(i,{width:"short",context:"formatting"});default:return r.day(i,{width:"wide",context:"formatting"})}},c:function(e,t,r,n){const i=e.getDay(),o=(i-n.weekStartsOn+8)%7||7;switch(t){case"c":return String(o);case"cc":return fhe(o,t.length);case"co":return r.ordinalNumber(o,{unit:"day"});case"ccc":return r.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return r.day(i,{width:"narrow",context:"standalone"});case"cccccc":return r.day(i,{width:"short",context:"standalone"});default:return r.day(i,{width:"wide",context:"standalone"})}},i:function(e,t,r){const n=e.getDay(),i=0===n?7:n;switch(t){case"i":return String(i);case"ii":return fhe(i,t.length);case"io":return r.ordinalNumber(i,{unit:"day"});case"iii":return r.day(n,{width:"abbreviated",context:"formatting"});case"iiiii":return r.day(n,{width:"narrow",context:"formatting"});case"iiiiii":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},a:function(e,t,r){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"});case"aaa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return r.dayPeriod(n,{width:"narrow",context:"formatting"});default:return r.dayPeriod(n,{width:"wide",context:"formatting"})}},b:function(e,t,r){const n=e.getHours();let i;switch(i=12===n?ghe:0===n?mhe:n/12>=1?"pm":"am",t){case"b":case"bb":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"bbb":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return r.dayPeriod(i,{width:"narrow",context:"formatting"});default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},B:function(e,t,r){const n=e.getHours();let i;switch(i=n>=17?bhe:n>=12?yhe:n>=4?vhe:whe,t){case"B":case"BB":case"BBB":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"BBBBB":return r.dayPeriod(i,{width:"narrow",context:"formatting"});default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},h:function(e,t,r){if("ho"===t){let t=e.getHours()%12;return 0===t&&(t=12),r.ordinalNumber(t,{unit:"hour"})}return phe.h(e,t)},H:function(e,t,r){return"Ho"===t?r.ordinalNumber(e.getHours(),{unit:"hour"}):phe.H(e,t)},K:function(e,t,r){const n=e.getHours()%12;return"Ko"===t?r.ordinalNumber(n,{unit:"hour"}):fhe(n,t.length)},k:function(e,t,r){let n=e.getHours();return 0===n&&(n=24),"ko"===t?r.ordinalNumber(n,{unit:"hour"}):fhe(n,t.length)},m:function(e,t,r){return"mo"===t?r.ordinalNumber(e.getMinutes(),{unit:"minute"}):phe.m(e,t)},s:function(e,t,r){return"so"===t?r.ordinalNumber(e.getSeconds(),{unit:"second"}):phe.s(e,t)},S:function(e,t){return phe.S(e,t)},X:function(e,t,r){const n=e.getTimezoneOffset();if(0===n)return"Z";switch(t){case"X":return khe(n);case"XXXX":case"XX":return She(n);default:return She(n,":")}},x:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"x":return khe(n);case"xxxx":case"xx":return She(n);default:return She(n,":")}},O:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+_he(n,":");default:return"GMT"+She(n,":")}},z:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+_he(n,":");default:return"GMT"+She(n,":")}},t:function(e,t,r){return fhe(Math.trunc(e.getTime()/1e3),t.length)},T:function(e,t,r){return fhe(e.getTime(),t.length)}};function _he(e,t=""){const r=e>0?"-":"+",n=Math.abs(e),i=Math.trunc(n/60),o=n%60;return 0===o?r+String(i):r+String(i)+t+fhe(o,2)}function khe(e,t){if(e%60===0){return(e>0?"-":"+")+fhe(Math.abs(e)/60,2)}return She(e,t)}function She(e,t=""){const r=e>0?"-":"+",n=Math.abs(e);return r+fhe(Math.trunc(n/60),2)+t+fhe(n%60,2)}const Ehe=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},Ahe=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},Phe={p:Ahe,P:(e,t)=>{const r=e.match(/(P+)(p+)?/)||[],n=r[1],i=r[2];if(!i)return Ehe(e,t);let o;switch(n){case"P":o=t.dateTime({width:"short"});break;case"PP":o=t.dateTime({width:"medium"});break;case"PPP":o=t.dateTime({width:"long"});break;default:o=t.dateTime({width:"full"})}return o.replace("{{date}}",Ehe(n,t)).replace("{{time}}",Ahe(i,t))}},Ohe=/^D+$/,The=/^Y+$/,jhe=["D","DD","YY","YYYY"];function Che(e){return e instanceof Date||"object"===typeof e&&"[object Date]"===Object.prototype.toString.call(e)}function Rhe(e){if(!Che(e)&&"number"!==typeof e)return!1;const t=lce(e);return!isNaN(Number(t))}const Ihe=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Mhe=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Lhe=/^'([^]*?)'?$/,Nhe=/''/g,Dhe=/[a-zA-Z]/;function zhe(e,t,r){const n=Ice(),i=r?.locale??n.locale??Cce,o=r?.firstWeekContainsDate??r?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,a=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=lce(e);if(!Rhe(s))throw new RangeError("Invalid time value");let c=t.match(Mhe).map((e=>{const t=e[0];if("p"===t||"P"===t){return(0,Phe[t])(e,i.formatLong)}return e})).join("").match(Ihe).map((e=>{if("''"===e)return{isToken:!1,value:"'"};const t=e[0];if("'"===t)return{isToken:!1,value:Bhe(e)};if(xhe[t])return{isToken:!0,value:e};if(t.match(Dhe))throw new RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}}));i.localize.preprocessor&&(c=i.localize.preprocessor(s,c));const l={firstWeekContainsDate:o,weekStartsOn:a,locale:i};return c.map((n=>{if(!n.isToken)return n.value;const o=n.value;(!r?.useAdditionalWeekYearTokens&&function(e){return The.test(e)}(o)||!r?.useAdditionalDayOfYearTokens&&function(e){return Ohe.test(e)}(o))&&function(e,t,r){const n=function(e,t,r){const n="Y"===e[0]?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${n} to the input \`${r}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}(e,t,r);if(console.warn(n),jhe.includes(e))throw new RangeError(n)}(o,t,String(e));return(0,xhe[o[0]])(s,o,i.localize,l)})).join("")}function Bhe(e){const t=e.match(Lhe);return t?t[1].replace(Nhe,"'"):e}function Uhe(e,t,r){const n=lce(e),i=lce(t),o=Ice(),a=r?.locale??o.locale??Cce,s=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??o.weekStartsOn??o.locale?.options?.weekStartsOn??0,c=the(n,i);if(isNaN(c))throw new RangeError("Invalid time value");let l;l=c<-6?"other":c<-1?"lastWeek":c<0?"yesterday":c<1?"today":c<2?"tomorrow":c<7?"nextWeek":"other";return zhe(n,a.formatRelative(l,n,i,{locale:a,weekStartsOn:s}),{locale:a,weekStartsOn:s})}const Fhe=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=$se(n,r,t),h=o.operations[0].recipient;return(0,xn.jsx)(f$,{...c,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(rae,{...e,operationsType:o.type,signer:o.signer}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(TH,{children:"From"}),(0,xn.jsx)(V6,{address:l.address}),(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,xn.jsx)(_n,{alignItems:"center",children:(0,xn.jsx)(sae,{fee:i})})}),(0,xn.jsx)(TH,{children:"To"}),(0,xn.jsx)(V6,{address:h}),(0,xn.jsx)(Dse,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:eae(o.type,t)})})]})})})},$he=e=>{var t;const r=null===(t=e.form)||void 0===t?void 0:t.baker,n=Gse({SignPage:Fhe,signPageExtraData:void 0,FormPage:$he,defaultFormPageProps:e,toOperation:Hhe}),i=Zse(Hhe),{onFormSubmitActionHandlers:[o,a],isLoading:s}=Yse([n,i]),c=xH({mode:"onBlur",defaultValues:Fse(e)}),{formState:{isValid:l,errors:u},handleSubmit:d}=c;return(0,xn.jsx)(f$,{...c,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{"data-testid":"delegate-form",children:[(0,xn.jsxs)(Zoe,{children:[(0,xn.jsx)(WU,{fontWeight:"600",size:"2xl",children:r?"Change Baker":"Delegate"}),(0,xn.jsx)(GU,{})]}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsxs)(LF,{isInvalid:!!u.sender,children:[(0,xn.jsx)(X6,{allowUnknown:!1,inputName:"sender",isDisabled:!!e.sender,label:"From"}),u.sender&&(0,xn.jsx)(qoe,{"data-testid":"from-error",children:u.sender.message})]}),(0,xn.jsxs)(LF,{marginTop:"24px","data-testid":"baker",isInvalid:!!u.baker,children:[(0,xn.jsx)(J6,{allowUnknown:!0,inputName:"baker",label:"Baker"}),u.baker&&(0,xn.jsx)(qoe,{children:u.baker.message})]})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Use,{isLoading:s,isValid:l,onAddToBatch:d(a),onSingleSubmit:d(o)})})]})})})},Hhe=e=>({type:"delegation",sender:Fd(e.sender),recipient:Kd(e.baker)}),Vhe=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=$se(n,r,t);return(0,xn.jsx)(f$,{...c,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(rae,{...e,operationsType:o.type,signer:o.signer}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(TH,{children:"From"}),(0,xn.jsx)(V6,{address:l.address}),(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"end",marginTop:"12px",paddingX:"4px",children:(0,xn.jsx)(sae,{fee:i})}),(0,xn.jsx)(Dse,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:eae(o.type,t)})})]})})})},qhe=e=>{var t;const{sender:r}=e,n=null===(t=e.form)||void 0===t?void 0:t.baker,i=Gse({SignPage:Vhe,signPageExtraData:void 0,FormPage:qhe,defaultFormPageProps:{sender:r},toOperation:Khe}),o=Zse(Khe),{onFormSubmitActionHandlers:[a,s],isLoading:c}=Yse([i,o]),l=xH({mode:"onBlur",defaultValues:Fse({sender:r})}),{handleSubmit:u}=l;return(0,xn.jsx)(f$,{...l,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{"data-testid":"undelegate-form",children:[(0,xn.jsx)(Yoe,{subTitle:"Select preview to end delegation or insert this transaction into a Batch.",title:"End Delegation"}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(LF,{children:(0,xn.jsx)(X6,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"})}),(0,xn.jsx)(TH,{marginTop:"24px",children:"Baker"}),n&&(0,xn.jsx)(V6,{address:Fd(n)})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Use,{isLoading:c,isValid:!0,onAddToBatch:u(s),onSingleSubmit:u(a)})})]})})})},Khe=e=>({type:"undelegation",sender:Fd(e.sender)}),Whe=({label:e,value:t,...r})=>(0,xn.jsxs)(_n,{alignItems:"center",height:"50px",padding:"16px","data-testid":e,...r,children:[(0,xn.jsx)(En,{flex:1,children:(0,xn.jsx)(Ln,{color:AO.gray[400],size:"sm",children:e})}),(0,xn.jsx)(En,{flex:1,children:"string"===typeof t?(0,xn.jsx)(WU,{size:"sm",children:t}):t})]}),Ghe=({delegation:e,account:t})=>{const{openWith:r}=(0,i.useContext)(dL),n=I6(),o=(()=>{const e=y6();return t=>{const r=e(t.sender),n=new Date;return{initialBalance:u6(t.amount),currentBalance:r&&u6(r),duration:`Since ${Uhe(new Date(t.timestamp),n)}`}}})();if(!e)return(0,xn.jsx)(ace,{onDelegate:()=>r((0,xn.jsx)($he,{sender:t})),size:"md"});const{currentBalance:a,duration:s,initialBalance:c}=o(e),{sender:l,delegate:{address:u}}=e,d=n(l);return(0,xn.jsxs)(En,{children:[(0,xn.jsx)(Whe,{borderBottom:`1px solid ${AO.gray[700]}`,borderTopRadius:"8px",_odd:{bg:AO.gray[800]},label:"Initial Balance:",value:c}),a&&(0,xn.jsx)(Whe,{_odd:{bg:AO.gray[800]},label:"Current Balance:",value:a}),(0,xn.jsx)(Whe,{borderBottom:`1px solid ${AO.gray[700]}`,_odd:{bg:AO.gray[800]},label:"Duration:",value:s}),(0,xn.jsx)(Whe,{borderBottomRadius:"8px",_odd:{bg:AO.gray[800]},label:"Baker:",value:(0,xn.jsx)(ele,{address:Fd(e.delegate.address)})}),(0,xn.jsxs)(_n,{marginTop:"24px",children:[(0,xn.jsx)(Gn,{flex:1,marginRight:"16px",onClick:()=>r((0,xn.jsx)(qhe,{form:{sender:l,baker:u},sender:d})),variant:"warning",children:"End Delegation"}),(0,xn.jsx)(Gn,{flex:1,onClick:()=>r((0,xn.jsx)($he,{form:{sender:l,baker:u},sender:d})),variant:"tertiary",children:"Change Baker"})]})]})},Zhe=({operation:e})=>{switch(e.type){case"delegation":return(0,xn.jsxs)(En,{"data-testid":"decoded-item-delegate",marginY:6,children:[(0,xn.jsx)(WU,{marginRight:"3px",color:AO.gray[450],fontSize:"14px",children:"Delegate to:"}),(0,xn.jsx)(ele,{address:e.recipient})]});case"undelegation":return(0,xn.jsx)(En,{"data-testid":"decoded-item-undelegate",marginY:6,children:(0,xn.jsx)(WU,{color:AO.gray[450],fontSize:"14px",children:"End Delegation"})});case"tez":case"fa1.2":case"fa2":return(0,xn.jsxs)(En,{children:[(0,xn.jsx)(Yhe,{operation:e}),(0,xn.jsxs)(_n,{alignItems:"center",marginTop:"8px",children:[(0,xn.jsx)(WU,{marginRight:"3px",color:AO.gray[450],fontSize:"14px",children:"Send to:"}),(0,xn.jsx)(ele,{address:e.recipient})]})]});case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}},Yhe=({operation:e})=>{const t=eK();switch(e.type){case"tez":return(0,xn.jsxs)(_n,{alignItems:"center","data-testid":"decoded-tez-amount",children:[(0,xn.jsx)(GR,{}),(0,xn.jsxs)(WU,{marginLeft:"8px",color:AO.orange,fontSize:"14px",fontWeight:600,textAlign:"center",children:["-",u6(e.amount)]})]});case"fa1.2":case"fa2":{const r=t(e.contract.pkh,e.tokenId);if(!r)return null;const n=Jd(r),i="nft"===r.type;return(0,xn.jsxs)(_n,{alignItems:"center","data-testid":"decoded-fa-amount",children:[(0,xn.jsx)(GR,{}),(0,xn.jsx)(En,{marginLeft:"8px",color:AO.orange,textAlign:"center",children:i?(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(WU,{display:"inline",marginRight:"3px",fontSize:"14px",fontWeight:600,children:e.amount}),(0,xn.jsx)(WU,{display:"inline",color:"white",fontSize:"14px",fontWeight:600,children:n})]}):(0,xn.jsxs)(WU,{fontSize:"14px",fontWeight:600,children:["-",oh(e.amount,r,{showSymbol:!0})]})})]})}case"delegation":case"undelegation":case"contract_origination":case"contract_call":return null}},Xhe=e=>Bd.string().regex(new RegExp(`^${e}$`,"i")),Jhe=e=>Bd.object({prim:Xhe(e)}),Qhe=Bd.object({prim:Bd.literal("PUSH"),args:Bd.tuple([Bd.object({prim:Bd.literal("key_hash")}),Bd.object({bytes:Bd.string()})])}),efe=Bd.object({prim:Bd.literal("PUSH"),args:Bd.tuple([Bd.object({prim:Bd.literal("address")}),Bd.object({bytes:Bd.string()})])}),tfe=(e,t)=>Bd.object({prim:Bd.literal("Pair"),args:Bd.tuple([e,t])}),rfe=Bd.object({prim:Bd.literal("PUSH"),args:Bd.tuple([Bd.object({prim:Bd.literal("mutez")}),Bd.object({int:Bd.literal("0")})])}),nfe=[Jhe("TRANSFER_TOKENS"),Jhe("CONS")],ife=Bd.object({prim:Bd.literal("CONTRACT")}),ofe=Bd.tuple([Bd.object({prim:Bd.literal("DROP")}),Bd.object({prim:Bd.literal("NIL"),args:Bd.array(Bd.object({prim:Bd.literal("operation")}))})]),afe=Bd.object({prim:Bd.literal("PUSH"),args:Bd.tuple([Bd.object({prim:Bd.literal("mutez")}),Bd.object({int:Bd.string()})])}),sfe=Bd.tuple([Qhe,Jhe("IMPLICIT_ACCOUNT"),afe,Jhe("UNIT"),...nfe]),cfe=Bd.tuple([efe,ife,Jhe("IF_NONE"),afe,Jhe("UNIT"),...nfe]),lfe=Bd.tuple([Qhe,Jhe("SOME"),Jhe("SET_DELEGATE"),Jhe("CONS")]),ufe=Bd.tuple([Bd.object({prim:Bd.literal("NONE"),args:Bd.tuple([Bd.object({prim:Bd.literal("key_hash")})])}),Jhe("SET_DELEGATE"),Jhe("CONS")]),dfe=Bd.tuple([efe,ife,Bd.tuple([Jhe("IF_NONE")]),rfe,Bd.object({prim:Bd.literal("PUSH"),args:Bd.tuple([Jhe("list"),Bd.array(tfe(Bd.object({bytes:Bd.string({description:"from"})}),Bd.array(tfe(Bd.object({bytes:Bd.string({description:"to"})}),tfe(Bd.object({int:Bd.string({description:"token_id"})}),Bd.object({int:Bd.string({description:"amount"})}))))))])}),...nfe]),hfe=Bd.tuple([efe,ife,Bd.tuple([Jhe("IF_NONE")]),rfe,Bd.object({prim:Bd.literal("PUSH"),args:Bd.tuple([Jhe("Pair"),tfe(Bd.object({bytes:Bd.string({description:"from"})}),tfe(Bd.object({bytes:Bd.string({description:"to"})}),Bd.object({int:Bd.string({description:"amount"})})))])}),...nfe]);class ffe extends Error{}const pfe=e=>(42===e.length&&(e="00"+e),ml(e)),mfe=[{schema:sfe,parsingFn:e=>{const t=sfe.parse(e),r=t[0].args[1].bytes,n=t[2].args[1].int;return{type:"tez",recipient:Kd(pfe(r)),amount:n}}},{schema:cfe,parsingFn:e=>{const t=cfe.parse(e),r=t[0].args[1].bytes,n=t[3].args[1].int;return{type:"tez",recipient:qd(pfe(r)),amount:n}}},{schema:dfe,parsingFn:e=>{const t=dfe.parse(e),r=qd(pfe(t[0].args[1].bytes));return t[4].args[1].flatMap((e=>{const t=e.args[0].bytes;return e.args[1].map((e=>{const n=e.args[0].bytes,i=e.args[1].args[0].int,o=e.args[1].args[1].int;return{type:"fa2",contract:r,sender:Fd(pfe(t)),recipient:Fd(pfe(n)),tokenId:i,amount:o}}))}))}},{schema:hfe,parsingFn:e=>{const t=hfe.parse(e),r=t[0],n=t[4].args[1],i=n.args[0].bytes,o=n.args[1].args[0].bytes;return{type:"fa1.2",amount:n.args[1].args[1].int,contract:qd(pfe(r.args[1].bytes)),recipient:Fd(pfe(o)),sender:Fd(pfe(i)),tokenId:"0"}}},{schema:lfe,parsingFn:(e,t)=>{const r=lfe.parse(e);return{type:"delegation",sender:t.address,recipient:Kd(pfe(r[0].args[1].bytes))}}},{schema:ufe,parsingFn:(e,t)=>({type:"undelegation",sender:t.address})}],gfe=(e,t,r=[])=>{if(0===e.length)return r;for(let n=0;n((e=>{ofe.parse(e.slice(0,2))})(e),gfe(e.slice(2),t)),yfe=(e,t)=>{const r=JSON.parse(e);return vfe(r,t)},bfe=({rawMichelson:e,sender:t})=>{try{const r=yfe(e,t);return(0,xn.jsx)(En,{borderRadius:"8px",backgroundColor:AO.gray[900],children:r.map(((e,t)=>(0,xn.jsxs)(En,{width:"100%",paddingTop:"10px",paddingBottom:t(0,xn.jsx)(_F,{width:"100%",marginBottom:"8px",background:AO.gray[900],borderColor:AO.gray[900],borderRadius:"8px",allowToggle:!0,children:(0,xn.jsxs)(kF,{children:[(0,xn.jsxs)(SF,{children:[(0,xn.jsx)(Ln,{flex:"1",height:"30px",marginTop:"6px",textAlign:"left",size:"md",children:"Unrecognized operation"}),(0,xn.jsx)(EF,{})]}),(0,xn.jsx)(jF,{overflowY:"scroll",height:"400px",paddingBottom:"12px",children:(0,xn.jsx)(OH,{space:1,value:JSON.parse(e)})})]})}),xfe=({approveOrExecute:e,isLoading:t,signerState:r})=>{switch(r){case"awaitingApprovalByExternalSigner":return(0,xn.jsxs)(_n,{alignItems:"center",alignSelf:"flex-end","data-testid":"multisig-signer-awaiting-approval",children:[(0,xn.jsx)(WU,{marginRight:"4px",color:AO.gray[300],children:"Awaiting Approval"}),(0,xn.jsx)(WR,{marginTop:"2px"})]});case"approved":return(0,xn.jsxs)(_n,{alignItems:"center",alignSelf:"flex-end",marginBottom:"8px","data-testid":"multisig-signer-approved",children:[(0,xn.jsx)(WU,{marginRight:"4px",color:AO.gray[300],children:"Approved"}),(0,xn.jsx)(wR,{marginTop:"2px"})]});case"executable":return(0,xn.jsx)(Gn,{"data-testid":"multisig-signer-button",isLoading:t,onClick:e,children:"Execute"});case"approvable":return(0,xn.jsx)(Gn,{"data-testid":"multisig-signer-button",isLoading:t,onClick:e,children:"Approve"})}},_fe=({signer:e,fee:t,operation:r,actionType:n,transactionCount:o})=>{const{handleAsyncAction:a}=tre(),{openWith:s}=(0,i.useContext)(dL),c=`${(0,Ns.capitalize)(n)} transaction`;return(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(fle,{fee:t,signer:e,title:c,transactionCount:o}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{onSubmit:e=>a((async()=>{const{opHash:t}=await a6(r,e);return s((0,xn.jsx)(oae,{hash:t}))}),{title:`Failed ${n}`}),signer:e,text:c})})]})})},kfe=({pendingApprovals:e,sender:t,operation:r,signerAddress:n})=>{const o=z6(n),a=P6(),{isLoading:s,handleAsyncAction:c}=tre(),{openWith:l}=(0,i.useContext)(dL),u=Xq(),d=a(n.pkh),h=0===e,f=Sfe({approvals:r.approvals,signerAddress:n,operationIsExecutable:h,signerAccount:d});return(0,xn.jsx)(cle,{height:"80px",marginTop:"10px",marginBottom:"0",padding:"15px",borderRadius:"8px",backgroundColor:AO.gray[700],icon:(0,xn.jsx)(ale,{addressKind:o}),leftElement:(0,xn.jsx)(lle,{label:o.label,pkh:o.pkh}),rightElement:(0,xn.jsx)(xfe,{approveOrExecute:()=>c((async()=>{if(!d)throw new Error("Can't approve or execute with an account you don't own");const e=h?"execute":"approve",n=zse(d,d,[d3(t.address,e,r.id)]),i=await C3(n,u);let o;try{o=yfe(r.rawActions,t).length}catch(To){o=1}return l((0,xn.jsx)(_fe,{actionType:e,fee:i,operation:n,signer:d,transactionCount:o}))})),"data-testid":"multisig-signer-button",isLoading:s,signerState:f})})},Sfe=({signerAccount:e,operationIsExecutable:t,approvals:r,signerAddress:n})=>{const i=!!r.find((e=>e.pkh===n.pkh));return e?i&&!t?"approved":t?"executable":"approvable":i?"approved":"awaitingApprovalByExternalSigner"},Efe=({operation:e,sender:t})=>{const{signers:r,threshold:n}=t,i=Math.max(n-e.approvals.length,0);return(0,xn.jsxs)(En,{marginBottom:"24px",background:AO.gray[800],border:"none",borderRadius:"8px","data-testid":"multisig-pending-operation-"+e.id,paddingX:"16px",paddingY:"15px",children:[(0,xn.jsxs)(_n,{justifyContent:"space-between",marginBottom:"6px",padding:0,textAlign:"left",children:[(0,xn.jsxs)(Ln,{size:"md",children:["Pending #",e.id]}),(0,xn.jsxs)(_n,{alignItems:"center",marginBottom:"6px",children:[(0,xn.jsx)(Ln,{marginRight:"4px",color:AO.gray[450],size:"sm",children:"Pending Approvals:"}),(0,xn.jsx)(WU,{color:AO.gray[400],"data-testid":"pending-approvals-count",children:i})]})]}),(0,xn.jsxs)(En,{padding:"0",children:[(0,xn.jsx)(bfe,{rawMichelson:e.rawActions,sender:t}),r.map((r=>(0,xn.jsx)(kfe,{operation:e,pendingApprovals:i,sender:t,signerAddress:r},r.pkh)))]})]})},Afe=({account:e})=>{const t=k6()(e);return(0,xn.jsx)(En,{margin:"0",padding:"0",children:t.map((t=>(0,xn.jsx)(Efe,{operation:t,sender:e},t.id)))})},Pfe=({to:e,owner:t,...r})=>(0,xn.jsx)(kn,{...r,children:(0,xn.jsxs)(Yn,{as:yj,color:AO.gray[300],stroke:AO.gray[450],_hover:{color:AO.green,stroke:AO.green},to:`${e}?accounts=${t}`,children:[(0,xn.jsx)(aI,{display:"inline",stroke:"inherit"}),(0,xn.jsx)(WU,{display:"inline",size:"sm",children:"\xa0View All"})]})}),Ofe=({owner:e,nfts:t,...r})=>{if(0===t.length)return(0,xn.jsx)(ice,{size:"md"});const n=ile(t).slice(0,18);return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(vde,{marginBottom:"35px",spacing:"12px",...r,children:n.map((t=>{const r=nle(sh(t)),n={width:"100%",height:40,fallbackSrc:nle(t.displayUri),src:r};return(0,xn.jsx)(yj,{"data-testid":"nft-link",to:`/home/${e}/${Xd(t)}`,children:(0,xn.jsx)(AH,{background:AO.gray[800],border:"1px solid transparent",_hover:{background:AO.gray[700],borderColor:AO.gray[500]},children:(0,xn.jsxs)(PH,{overflow:"hidden",padding:"8px",borderRadius:"6px",children:[(0,xn.jsx)(kn,{children:(0,xn.jsxs)(En,{position:"relative",width:"100%",height:"100%",children:[(0,xn.jsx)(XU,{zIndex:2,width:"100%",opacity:"0",ratio:1,children:(0,xn.jsx)(mI,{...n,width:"100%",height:40})}),(0,xn.jsx)(XU,{position:"absolute",zIndex:0,top:"0",width:"100%",filter:"blur(20px)",ratio:1,children:(0,xn.jsx)(mI,{...n,width:"100%",height:40})}),(0,xn.jsx)(XU,{position:"absolute",zIndex:1,top:"0",width:"100%",ratio:1,children:(0,xn.jsx)(mI,{...n,width:"100%",height:40})})]})}),Number(t.balance)>1&&(0,xn.jsx)(WU,{position:"absolute",zIndex:3,display:"inline",height:"20px",marginTop:"-24px",marginLeft:"4px",padding:"0 8px",borderRadius:"100px",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",size:"xs",children:"x"+t.balance})]})})},`${e}:${Xd(t)}`)}))}),t.length>18&&(0,xn.jsx)(Pfe,{marginBottom:"40px",owner:e,to:"/nfts"})]})},Tfe=i.createContext({mode:"page"}),jfe=["bakerFee","storageFee","allocationFee"],Cfe=({operation:e})=>{const t=(0,i.useContext)(Tfe),r=M6(e.sender.address);if("drawer"===t.mode)return null;if(!r)return null;const n=jfe.reduce(((t,r)=>r in e?t.plus((0,Ns.get)(e,r)||0):t),Lc(0));return n.eq(0)?null:(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(Ln,{marginRight:"4px",color:AO.gray[450],size:"md",children:"Fee:"}),(0,xn.jsx)(WU,{color:AO.gray[400],"data-testid":"fee",children:u6(n)})]})},Rfe=({level:e,status:t})=>{const r=h6(e);return void 0===t||"applied"===t?r?(0,xn.jsx)(wR,{"data-testid":"checkmark"}):(0,xn.jsx)(WR,{"data-testid":"hourglass"}):(0,xn.jsx)(PR,{"data-testid":"crossed-circle"})},Ife=({children:e})=>"drawer"===(0,i.useContext)(Tfe).mode?null:(0,xn.jsx)(WU,{marginRight:"4px",color:AO.gray[300],"data-testid":"operation-type",size:"sm",children:e});function Mfe(e,t){const r=lce(e),n=lce(t),i=Lfe(r,n),o=Math.abs(the(r,n));r.setDate(r.getDate()-i*o);const a=i*(o-Number(Lfe(r,n)===-i));return 0===a?0:a}function Lfe(e,t){const r=e.getFullYear()-t.getFullYear()||e.getMonth()-t.getMonth()||e.getDate()-t.getDate()||e.getHours()-t.getHours()||e.getMinutes()-t.getMinutes()||e.getSeconds()-t.getSeconds()||e.getMilliseconds()-t.getMilliseconds();return r<0?-1:r>0?1:r}const Nfe=({timestamp:e})=>e?(0,xn.jsx)(WU,{color:AO.gray[400],"data-testid":"timestamp",size:"sm",children:Dfe(e)}):null,Dfe=e=>{const t=new Date,r=new Date(e);return Mfe(t,r)<2?Lce(r,t,{addSuffix:!0}):zhe(r,"dd MMM yyyy")},zfe=({hash:e,counter:t,transactionId:r,originationId:n,migrationId:i,children:o,...a})=>{const{tzktExplorerUrl:s}=Xq();let c=s;return e?c=(0,Ns.compact)([s,e,t]).join("/"):i?c=`${c}/migrations/${i}`:n?c=`${c}/originations/${n}`:r?c=`${c}/transactions/${r}`:console.warn("No id provided to TzktLink"),(0,xn.jsx)(Yn,{"data-testid":"tzkt-link",href:c,isExternal:!0,...a,children:o})},Bfe=e=>{const t=(0,i.useContext)(Tfe);return!!e&&("page"===t.mode||t.selectedAddress.pkh!==e)},Ufe=({operation:e})=>{var t;const r=Bfe(e.target.address),n=Bfe(e.sender.address),i=!r&&!n;return(0,xn.jsxs)(_n,{flexDirection:"column",width:"100%","data-testid":"operation-tile-contract-call",children:[(0,xn.jsxs)(_n,{justifyContent:"space-between",marginBottom:"10px",children:[(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(AR,{marginRight:"8px"}),(0,xn.jsx)(zfe,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,xn.jsxs)(Ln,{size:"md",children:["Contract Call: ",null===(t=e.parameter)||void 0===t?void 0:t.entrypoint]})}),(0,xn.jsx)(Cfe,{operation:e})]}),(0,xn.jsx)(_n,{alignSelf:"flex-end",children:(0,xn.jsx)(Nfe,{timestamp:e.timestamp})})]}),(0,xn.jsx)(En,{children:(0,xn.jsxs)(_n,{justifyContent:"space-between",children:[(0,xn.jsxs)(_n,{children:[r&&(0,xn.jsxs)(_n,{marginRight:"15px","data-testid":"to",children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[450],children:"To:"}),(0,xn.jsx)(ele,{address:e.target})]}),(n||i)&&(0,xn.jsxs)(_n,{"data-testid":"from",children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[450],children:"From:"}),(0,xn.jsx)(ele,{address:e.sender})]})]}),(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(Ife,{children:"Contract Call"}),(0,xn.jsx)(Rfe,{...e})]})]})})]})},Ffe=({operation:e})=>{const t=!!e.newDelegate,r=t?"Delegate":"Delegation Ended",n=Bfe(e.sender.address);return(0,xn.jsxs)(_n,{flexDirection:"column",width:"100%","data-testid":"operation-tile-delegation",children:[(0,xn.jsxs)(_n,{justifyContent:"space-between",marginBottom:"10px",children:[(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(vR,{marginRight:"8px"}),(0,xn.jsx)(zfe,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,xn.jsx)(Ln,{size:"md",children:r})}),(0,xn.jsx)(Cfe,{operation:e})]}),(0,xn.jsx)(_n,{alignSelf:"flex-end",children:(0,xn.jsx)(Nfe,{timestamp:e.timestamp})})]}),(0,xn.jsx)(En,{children:(0,xn.jsxs)(_n,{justifyContent:"space-between",children:[(0,xn.jsxs)(_n,{children:[t&&(0,xn.jsxs)(_n,{marginRight:"15px","data-testid":"to",children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[450],children:"To:"}),(0,xn.jsx)(ele,{address:e.newDelegate})]}),n&&(0,xn.jsxs)(_n,{"data-testid":"from",children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[450],children:"From:"}),(0,xn.jsx)(ele,{address:e.sender})]}),!t&&!n&&(0,xn.jsx)(WU,{color:AO.gray[450],children:"N/A"})]}),(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(Ife,{children:r}),(0,xn.jsx)(Rfe,{...e})]})]})})]})},$fe=({operation:e})=>{var t;const r=(null===(t=e.originatedContract)||void 0===t?void 0:t.codeHash)===Nae&&e.originatedContract.typeHash===Lae?"Multisig Account Created":"Contract Origination",n=Bfe(e.sender.address);return(0,xn.jsxs)(_n,{flexDirection:"column",width:"100%","data-testid":"operation-tile-origination",children:[(0,xn.jsxs)(_n,{justifyContent:"space-between",marginBottom:"10px",children:[(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(AR,{marginRight:"8px"}),(0,xn.jsx)(zfe,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,xn.jsx)(Ln,{size:"md",children:r})}),(0,xn.jsx)(Cfe,{operation:e})]}),(0,xn.jsx)(_n,{alignSelf:"flex-end",children:(0,xn.jsx)(Nfe,{timestamp:e.timestamp})})]}),(0,xn.jsx)(En,{children:(0,xn.jsxs)(_n,{justifyContent:"space-between",children:[(0,xn.jsx)(_n,{"data-testid":"from",children:n?(0,xn.jsxs)(_n,{marginRight:"15px",children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[450],children:"From:"}),(0,xn.jsx)(ele,{address:e.sender})]}):(0,xn.jsx)(WU,{color:AO.gray[450],children:"N/A"})}),(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(Ife,{children:"Contract Origination"}),(0,xn.jsx)(Rfe,{...e})]})]})})]})},Hfe=({isOutgoing:e,...t})=>e?(0,xn.jsx)(GR,{"data-testid":"outgoing-arrow",...t}):(0,xn.jsx)(ZR,{"data-testid":"incoming-arrow",...t}),Vfe=e=>{const t=(0,i.useContext)(Tfe),r=M6(e);return!!e&&("page"===t.mode?r:e===t.selectedAddress.pkh)},qfe=({operation:e,tokenTransfer:t,token:r})=>{var n,i,o,a;const s=t.amount,c=Bfe(t.to.address),l=Bfe(null!==(n=null===(i=t.from)||void 0===i?void 0:i.address)&&void 0!==n?n:""),u=!c&&!l,d=Vfe(null!==(o=null===(a=t.from)||void 0===a?void 0:a.address)&&void 0!==o?o:""),h="nft"===r.type,f=oh(s,r,{showSymbol:!0}),p=d?AO.orange:AO.green,m=h?"white":p,g=d?"-":"+",v=h?(0,xn.jsx)($q,{padding:"8px",background:AO.gray[700],border:"1px solid",borderColor:AO.gray[500],borderRadius:"8px","data-testid":"nft-tooltip",label:(0,xn.jsx)(XU,{width:"170px",height:"170px",ratio:1,children:(0,xn.jsx)(mI,{src:nle(sh(r))})}),openDelay:300,children:(0,xn.jsx)(_n,{children:(0,xn.jsxs)(zfe,{marginRight:"8px",color:m,"data-testid":"title",migrationId:t.migrationId,originationId:t.originationId,transactionId:t.transactionId,children:[(0,xn.jsxs)(WU,{display:"inline",color:p,fontWeight:"600",children:[g,f]}),(0,xn.jsxs)(WU,{display:"inline",fontWeight:"600",children:[" ",Jd(r)]})]})})}):(0,xn.jsx)(zfe,{marginRight:"8px",color:m,"data-testid":"title",migrationId:t.migrationId,originationId:t.originationId,transactionId:t.transactionId,children:(0,xn.jsxs)(WU,{display:"inline",color:p,fontWeight:"600",children:[g,f]})});return(0,xn.jsxs)(_n,{flexDirection:"column",width:"100%","data-testid":"operation-tile-token-transfer",children:[(0,xn.jsxs)(_n,{justifyContent:"space-between",marginBottom:"10px",children:[(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(Hfe,{marginRight:"8px",isOutgoing:d}),v,e&&(0,xn.jsx)(Cfe,{operation:e})]}),(0,xn.jsx)(_n,{alignSelf:"flex-end",children:(0,xn.jsx)(Nfe,{timestamp:t.timestamp})})]}),(0,xn.jsx)(En,{children:(0,xn.jsxs)(_n,{justifyContent:"space-between",children:[(0,xn.jsxs)(_n,{children:[(c||u)&&(0,xn.jsxs)(_n,{marginRight:"15px","data-testid":"to",children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[450],children:"To:"}),(0,xn.jsx)(ele,{address:t.to})]}),l&&(0,xn.jsxs)(_n,{"data-testid":"from",children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[450],children:"From:"}),(0,xn.jsx)(ele,{address:t.from})]})]}),(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(Ife,{children:"Token Transfer"}),(0,xn.jsx)(Rfe,{level:t.level})]})]})})]})},Kfe=({operation:e})=>{const t=Vfe(e.sender.address),r=u6(String(e.amount)),n=Bfe(e.target.address),i=Bfe(e.sender.address),o=!n&&!i,a=t?AO.orange:AO.green,s=t?"-":"+";return(0,xn.jsxs)(_n,{flexDirection:"column",width:"100%","data-testid":"operation-tile-transaction",children:[(0,xn.jsxs)(_n,{justifyContent:"space-between",marginBottom:"10px",children:[(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(Hfe,{marginRight:"8px",isOutgoing:t}),(0,xn.jsx)(zfe,{marginRight:"8px",color:a,counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,xn.jsxs)(WU,{color:a,fontWeight:"600",children:[s," ",r]})}),(0,xn.jsx)(Cfe,{operation:e})]}),(0,xn.jsx)(_n,{alignSelf:"flex-end",children:(0,xn.jsx)(Nfe,{timestamp:e.timestamp})})]}),(0,xn.jsx)(En,{children:(0,xn.jsxs)(_n,{justifyContent:"space-between",children:[(0,xn.jsxs)(_n,{children:[(n||o)&&(0,xn.jsxs)(_n,{marginRight:"15px","data-testid":"to",children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[450],children:"To:"}),(0,xn.jsx)(ele,{address:Fd(e.target.address)})]}),i&&(0,xn.jsxs)(_n,{"data-testid":"from",children:[(0,xn.jsx)(WU,{marginRight:"6px",color:AO.gray[450],children:"From:"}),(0,xn.jsx)(ele,{address:Fd(e.sender.address)})]})]}),(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(Ife,{children:"Transaction"}),(0,xn.jsx)(Rfe,{...e})]})]})})]})},Wfe=({operation:e})=>{const t=(()=>{const e=PI((e=>e.assets.transfers.tokens));return t=>e[t]})();switch(e.type){case"token_transfer":{const t=Yd(e.token);return t?(0,xn.jsx)(qfe,{token:t,tokenTransfer:e}):(console.warn(`Could not parse token transfer ${e.id}`),null)}case"transaction":{const r=!!e.parameter,n=t(e.id);if(n){const t=Yd(n.token);return t?(0,xn.jsx)(qfe,{operation:e,token:t,tokenTransfer:n}):(0,xn.jsx)(Kfe,{operation:e})}return r?(0,xn.jsx)(Ufe,{operation:e}):(0,xn.jsx)(Kfe,{operation:e})}case"delegation":return(0,xn.jsx)(Ffe,{operation:e});case"origination":return(0,xn.jsx)($fe,{operation:e})}},Gfe=({owner:e,operations:t})=>{if(0===t.length)return(0,xn.jsx)(nce,{size:"md"});const r=t.slice(0,20);return(0,xn.jsxs)(xn.Fragment,{children:[r.map(((e,t)=>(0,xn.jsxs)(En,{height:"90px",children:[(0,xn.jsx)(Wfe,{operation:e}),t20&&(0,xn.jsx)(Pfe,{owner:e,to:"/operations"})]})},Zfe=["KT1XnTn74bUtxHfDtBmm2bGZAQfhPbvKWR8o","KT1PWx2mnDueood7fEmfbBDKx1D9BAnnXitn","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1K9gCRgaLRFKTErYt1wVxA3Frb9FjasjTV","KT1Ha4yFVeyzw6KRAdkzq6TxDHB97KG4pZe8","KT1JBNFcB5tiycHNdYGYCtR3kk6JaJysUCi8","KT1Xobej4mc6XgEjDoJoHtTKgbD1ELMvcQuL","KT1JVjgXPMMSaa6FkzeJcgb8q9cUaLmwaJUX","KT193D4vozYnhGJQVtw7CoxxqphqUEEwK6Vb","KT1LN4LPSqTMS7Sd2CJw4bbDGRkMv2t68Fy9","KT1914CUZ7EegAFPbfgQMRkw8Uz5mYkEz2ui","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT19ovJhcsUn4YU8Q5L3BGovKSixfbWcecEA","KT1TgmD7kXQzofpuc9VbTRMdZCS2e6JDuTtc","KT1F1mn2jbqQCJcsNgYKVAQjvenecNMY2oPK","KT1ErKVqEhG9jxXgUG2KGLW3bNM7zXHX8SDF","KT1A5P4ejnLix13jtadsfV9GCnXLMNnab8UT","KT1AM3PV1cwmGRw28DVTgsjjsjHvmL6z4rGh","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT1SjXiUX63QvdNMcM2m492f7kuf8JxXRLp4","KT1MZg99PxMDEENwB4Fi64xkqAVh5d1rv8Z9","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT1XTxpQvo7oRCqp85LikEZgAZ22uDxhbWJv","KT1VaEsVNiBoA56eToEK6n6BcPgh1tdx9eXi"],Yfe=({token:e,...t})=>{const r=Zfe.includes(e.contract);return(0,xn.jsxs)(_n,{alignItems:"center",children:[(0,xn.jsx)(WU,{...t,marginRight:"4px",children:Jd(e)}),r&&(0,xn.jsx)(wI,{})]})},Xfe=({owner:e,tokens:t})=>{if(0===t.length)return(0,xn.jsx)(oce,{size:"md"});const r=t.slice(0,20);return(0,xn.jsxs)(En,{children:[r.map((e=>(0,xn.jsx)(Jfe,{token:e},Xd(e)))),t.length>20&&(0,xn.jsx)(Pfe,{owner:e,to:"/tokens"})]})},Jfe=({token:e})=>{const t=oh(e.balance,e,{showSymbol:!1});return(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-around",height:20,borderBottom:`1px solid ${AO.gray[800]}`,"data-testid":"token-tile",children:[(0,xn.jsxs)(_n,{alignItems:"center",flex:1,children:[(0,xn.jsx)(gI,{width:"38px",background:AO.gray[500],borderRadius:"4px",contract:e.contract}),(0,xn.jsx)(En,{marginLeft:"16px",children:(0,xn.jsx)(Yfe,{fontWeight:600,"data-testid":"token-name",token:e})})]}),(0,xn.jsx)(Ln,{"data-testid":"token-balance",size:"lg",children:t})]})},Qfe=(e,t)=>`${e.tzktExplorerUrl}/${t}`,epe=e=>{const t=Xq(),[r,n]=(0,i.useState)([]),[o,a]=(0,i.useState)(!0),[s,c]=(0,i.useState)(!0),{isLoading:l,handleAsyncAction:u}=tre(),[d,h]=(0,i.useState)(e),f=AI(),[p,m]=(0,i.useState)(0);(0,i.useEffect)((()=>{const e=setInterval((()=>{u((async()=>{var e;const i=null===(e=r[0])||void 0===e?void 0:e.id,o=await tpe(f,t,d,{lastId:i,sort:"asc"});n((e=>(0,Ns.uniqBy)([...o.reverse(),...e],(e=>e.id))))})).catch(Ns.noop)}),15e3);return()=>clearInterval(e)}),[p]);const g=d.join(",");(0,i.useEffect)((()=>{n([]),a(!0),u((async()=>{const e=await tpe(f,t,g.split(","));n(e),a(e.length>0),m((e=>e+1))})).catch(Ns.noop).finally((()=>{c(!1)}))}),[t,g,f]);return{operations:rpe(r),isFirstLoad:s,isLoading:l,hasMore:o,loadMore:async()=>{var e;const i=null===(e=r[r.length-1])||void 0===e?void 0:e.id;if(i)return u((async()=>{const e=await tpe(f,t,d,{lastId:i});a(e.length>0),n((t=>[...t,...e]))}))},setAddresses:h}},tpe=async(e,t,r,n)=>{const i=await(async(e,t,r)=>{var n;const i=(null===r||void 0===r?void 0:r.limit)||100,o=null!==(n=null===r||void 0===r?void 0:r.sort)&&void 0!==n?n:"desc",a={limit:i,offset:null!==r&&void 0!==r&&r.lastId?{cr:r.lastId}:void 0,sort:{[o]:"id"}},s=await Promise.all([t6(e,t,a),e6(e,t,a),r6(e,t,a),n6(e,t,a)]);return(0,Ns.sortBy)(s.flat(),(e=>"asc"===o?e.id:-e.id)).slice(0,i)})(r,t,n),o=i.filter((e=>"transaction"===e.type)).map((e=>e.id)),a=await(async(e,t)=>0===e.length?[]:X3((()=>W3({transactionId:{in:[e.join(",")]}},{baseUrl:t.tzktApiUrl}))))(o,t),s=[...a,...i.filter((e=>"token_transfer"===e.type))];return e(xh.updateTokenTransfers(s)),e(Vh.addTokens({network:t,tokens:s.map((e=>e.token))})),i},rpe=e=>{const t=[];for(let r=0;r{i(l)}))}),id:Kde(a,l),role:"tab",tabIndex:d?0:-1,type:"button","aria-selected":d,"aria-controls":Wde(a,l),onFocus:t?void 0:E(e.onFocus,(()=>{s(l),!o&&(!t||!r)&&i(l)}))}}({...e,ref:t}),i={outline:"0",display:"flex",alignItems:"center",justifyContent:"center",...r.tab};return(0,xn.jsx)(wn.button,{...n,className:y("chakra-tabs__tab",e.className),__css:i})}));npe.displayName="Tab";const ipe=({children:e,...t})=>(0,xn.jsx)(npe,{...t,fontSize:"sm",paddingX:3,children:e}),ope=({tokens:e,nfts:t,account:r,delegation:n})=>{const i=k6(),o="multisig"===r.type&&i(r).length>0,a=Xq(),{operations:s,isFirstLoad:c}=epe([r.address.pkh]);return(0,xn.jsxs)(Yde,{flexDirection:"column",display:"flex",width:"100%",marginTop:"60px","data-testid":"asset-panel",children:[(0,xn.jsxs)(Xde,{justifyContent:"space-between","data-testid":"asset-panel-tablist",children:[(0,xn.jsxs)(_n,{children:[o&&(0,xn.jsxs)(ipe,{"data-testid":"account-card-pending-tab",children:[(0,xn.jsx)(WU,{children:"Pending"}),(0,xn.jsx)(En,{width:"6px",height:"6px",marginTop:"-7px",marginRight:"-3px",marginLeft:"3px",borderRadius:"100%",backgroundColor:AO.orangeL})]}),(0,xn.jsx)(ipe,{"data-testid":"account-card-operations-tab",children:"Operations"}),(0,xn.jsx)(ipe,{"data-testid":"account-card-delegation-tab",children:"Delegation"}),(0,xn.jsx)(ipe,{"data-testid":"account-card-nfts-tab",children:"NFTs"}),(0,xn.jsx)(ipe,{"data-testid":"account-card-tokens-tab",children:"Tokens"})]}),(0,xn.jsx)(ece,{href:Qfe(a,r.address.pkh),children:(0,xn.jsxs)(Gn,{paddingRight:0,variant:"CTAWithIcon",children:[(0,xn.jsx)(WU,{marginRight:"7px",size:"sm",children:"View on Tzkt"}),(0,xn.jsx)(LR,{stroke:"currentcolor"})]})})]}),(0,xn.jsxs)(Jde,{height:"100%",children:[o&&(0,xn.jsx)(Qde,{overflowX:"hidden",height:"100%",paddingTop:"24px",paddingBottom:"60px","data-testid":"account-card-pending-tab-panel",paddingX:"0",children:(0,xn.jsx)(Afe,{account:r})}),(0,xn.jsx)(Qde,{overflowX:"hidden",height:"100%",paddingTop:"24px",paddingBottom:"60px","data-testid":"account-card-operations-tab-panel",paddingX:"0",children:(0,xn.jsx)(Tfe.Provider,{value:{mode:"drawer",selectedAddress:r.address},children:c?(0,xn.jsx)(WU,{color:AO.gray[500],textAlign:"center",children:"Loading..."}):(0,xn.jsx)(Gfe,{operations:s,owner:r.address.pkh})})}),(0,xn.jsx)(Qde,{overflowX:"hidden",paddingTop:"24px","data-testid":"account-card-delegation-tab-panel",paddingX:"0",children:(0,xn.jsx)(Ghe,{account:r,delegation:n})}),(0,xn.jsx)(Qde,{overflowX:"hidden",height:"100%",paddingTop:"24px",paddingBottom:0,"data-testid":"account-card-nfts-tab-panel",paddingX:"0",children:(0,xn.jsx)(Ofe,{columns:3,nfts:t,owner:r.address.pkh})}),(0,xn.jsx)(Qde,{overflowX:"hidden",height:"100%",paddingTop:"24px","data-testid":"account-card-tokens-tab-panel",paddingX:"0",children:(0,xn.jsx)(Xfe,{owner:r.address.pkh,tokens:e})})]})]})};var ape=v((function(e,t){const{spacing:r="0.5rem",spacingX:n,spacingY:o,children:a,justify:s,direction:c,align:l,className:u,shouldWrapChildren:d,...h}=e,f=(0,i.useMemo)((()=>d?i.Children.map(a,((e,t)=>(0,xn.jsx)(spe,{children:e},t))):a),[a,d]);return(0,xn.jsx)(wn.div,{ref:t,className:y("chakra-wrap",u),...h,children:(0,xn.jsx)(wn.ul,{className:"chakra-wrap__list",__css:{display:"flex",flexWrap:"wrap",justifyContent:s,alignItems:l,flexDirection:c,listStyleType:"none",gap:r,columnGap:n,rowGap:o,padding:"0"},children:f})})}));ape.displayName="Wrap";var spe=v((function(e,t){const{className:r,...n}=e;return(0,xn.jsx)(wn.li,{ref:t,__css:{display:"flex",alignItems:"flex-start"},className:y("chakra-wrap__listitem",r),...n})}));spe.displayName="WrapItem";const cpe=({signers:e})=>(0,xn.jsx)(En,{width:"100%",marginTop:"40px",marginBottom:"-20px",background:AO.gray[800],borderRadius:"8px",children:(0,xn.jsx)(_F,{padding:"15px",allowToggle:!0,children:(0,xn.jsxs)(kF,{background:AO.gray[800],border:"none",borderRadius:"8px",children:[(0,xn.jsxs)(SF,{as:"span",flex:"1",padding:"0",textAlign:"left",cursor:"pointer",children:[(0,xn.jsx)(Ln,{width:"100%",size:"md",children:"Approvers"}),(0,xn.jsx)(EF,{cursor:"pointer"})]}),(0,xn.jsx)(jF,{padding:"0",children:(0,xn.jsx)(ape,{marginTop:"20px","data-testid":"multisig-tag-section",spacingX:"0",spacingY:"12px",children:e.map((e=>(0,xn.jsx)(ele,{marginRight:"12px",address:e},e.pkh)))})})]})})}),lpe=({account:e})=>{const t=AI(),{onClose:r}=(0,i.useContext)(dL),n=({name:n})=>{t(((e,t)=>(r,n)=>{const{accounts:i,multisigs:o,contacts:a}=n(),s="multisig"===e.type,c=i.items.map((e=>e.label));[c,o.items.map((e=>e.label)),Object.values(a).map((e=>e.name))].flat().includes(t)||r(s?Dh.actions.setName({newName:t,account:e}):Cl.actions.renameAccount({newName:t,account:e}))})(e,n)),r()},{handleSubmit:o,formState:{isValid:a,errors:s},register:c,reset:l}=xH({mode:"onBlur",defaultValues:{name:e.label}}),u=T6(),{nameExistsInContacts:d}=x6();return(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{onSubmit:o((({name:e})=>{n({name:e.trim()}),l()})),children:[(0,xn.jsx)(Yoe,{subTitle:"Edit your account name here.",title:"Edit Name"}),(0,xn.jsx)(GU,{}),(0,xn.jsx)(ZU,{children:(0,xn.jsxs)(LF,{isInvalid:!!s.name,marginY:"20px",children:[(0,xn.jsx)(TH,{children:"Account name"}),(0,xn.jsx)(DH,{type:"text",...c("name",{required:"Name is required",validate:e=>u.map((e=>e.label)).includes(e)?"Name already used in accounts":!d(e.trim())||"Name already registered in address book"}),placeholder:"Enter contact's name"}),s.name&&(0,xn.jsx)(BF,{"data-testid":"name-error",children:s.name.message})]})}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Gn,{width:"100%",marginBottom:"8px",isDisabled:!a,size:"lg",type:"submit",children:"Save"})})]})})},upe=({account:e})=>{const{openWith:t,onClose:r}=(0,i.useContext)(dL),n=AI(),o=qT(),a=1===A6().length;let s;switch(e.type){case"secret_key":s=hue;break;case"ledger":case"social":s=()=>Cl.actions.removeAccount(e)}let c="Are you sure you want to remove this account?",l="Remove Account";a&&(c="Removing your last account will off-board you from Umami. This will remove or reset all customized settings to their defaults. Personal data (including saved contacts, password and accounts) won't be affected.",l="Remove & Off-board");const u=s?()=>t((0,xn.jsx)(hle,{buttonLabel:l,description:c,onSubmit:()=>{n(s(e)),r(),o("/")},title:"Remove Account"})):void 0;return(0,xn.jsx)(Lse,{onRemove:u,onRename:()=>t((0,xn.jsx)(lpe,{account:e}))})},dpe=e=>(0,xn.jsxs)(En,{textAlign:e.center?"center":"initial",children:[(0,xn.jsx)(Ln,{size:"md",children:u6(e.balance)}),null!==e.dollarBalance&&(0,xn.jsxs)(WU,{marginTop:"6px",color:AO.gray[400],size:"sm",children:["$",e.dollarBalance.toFixed(2)]})]}),hpe=({icon:e,label:t,onClick:r=(()=>{})})=>(0,xn.jsxs)(En,{className:"account-drawer-cta-button",color:AO.gray[300],textAlign:"center",_hover:{color:AO.green},cursor:"pointer",marginX:"24px",onClick:r,children:[(0,xn.jsx)(t4,{className:"account-drawer-cta-button-icon",marginBottom:"8px","aria-label":"button",icon:e,size:"lg",variant:"circle_without_color"}),(0,xn.jsx)(WU,{cursor:"pointer",size:"sm",children:t})]}),fpe=({onSend:e,onReceive:t=(()=>{}),balance:r,dollarBalance:n,tokens:o,nfts:a,account:s})=>{const c="multisig"===s.type,{openWith:l}=(0,i.useContext)(dL),u=z6(s.address),d=Xq(),[h,f]=(0,i.useState)(null),{handleAsyncAction:p}=tre();return(0,i.useEffect)((()=>{p((async()=>{const e=await((e,t)=>e6([e],t,{limit:1,sort:{desc:"id"}}).then(Ns.first))(s.address.pkh,d);e&&f((e=>{var t,r,n;const i=null===(t=e.sender)||void 0===t?void 0:t.address,o=null===(r=e.newDelegate)||void 0===r?void 0:r.address,a=e.timestamp,s=e.id,c=e.amount;return null==i||null==o||null==a||null==s||null==c?null:{sender:i,timestamp:a,id:s,amount:new Lc(c),delegate:{address:o,alias:(null===(n=e.newDelegate)||void 0===n?void 0:n.alias)||void 0}}})(e))})).catch(Ns.noop)}),[s.address.pkh,d]),(0,xn.jsxs)(_n,{zIndex:2,alignItems:"center",flexDirection:"column",height:"100%",marginTop:"-86px",paddingTop:"86px",paddingRight:"30px",background:ule({account:s,radius:"350px",opacity:"35",mainBackgroundColor:"transparent",left:"300px",top:"-125px"}),"data-testid":`account-card-${s.address.pkh}`,children:[(0,xn.jsx)(ale,{addressKind:u}),(0,xn.jsx)(Ln,{marginTop:"24px",size:"md",children:s.label}),(0,xn.jsxs)(_n,{alignItems:"center",marginTop:"8px",marginBottom:"30px",children:[(0,xn.jsx)(ele,{marginRight:"4px",address:s.address,mode:{type:"no_icons"}}),(0,xn.jsx)(upe,{account:s})]}),r&&(0,xn.jsx)(dpe,{balance:r,center:!0,dollarBalance:n}),(0,xn.jsxs)(kn,{marginTop:"34px",children:[(0,xn.jsx)(hpe,{icon:(0,xn.jsx)(GR,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Send",onClick:e}),(0,xn.jsx)(hpe,{icon:(0,xn.jsx)(ZR,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Receive",onClick:t}),!c&&(0,xn.jsx)(hpe,{icon:(0,xn.jsx)(oI,{stroke:"currentcolor"}),label:"Buy Tez",onClick:()=>l((0,xn.jsx)(Nce,{recipient:s.address.pkh}))}),(0,xn.jsx)(hpe,{icon:(0,xn.jsx)(vR,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Delegate",onClick:()=>l((0,xn.jsx)($he,{form:h?{baker:h.delegate.address,sender:s.address.pkh}:void 0,sender:s}))})]}),c&&(0,xn.jsx)(cpe,{signers:s.signers}),(0,xn.jsx)(ope,{account:s,delegation:h,nfts:a,tokens:o})]})};var ppe=r(6910);const mpe=({pkh:e})=>{const t=R6()(e);return(0,xn.jsxs)(VU,{children:[(0,xn.jsx)(Yoe,{subTitle:"You can receive tez or other digital assets by scanning or sharing this QR code",title:"Receive"}),(0,xn.jsx)(ZU,{children:(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"space-between",flexDirection:"column",children:(0,xn.jsx)(En,{padding:"8px",background:"white",borderRadius:"8px",children:(0,xn.jsx)(ppe.QRCode,{size:232,value:e})})})}),(0,xn.jsx)(FF,{children:(0,xn.jsxs)(En,{width:"100%",children:[t&&(0,xn.jsx)(Ln,{textAlign:"center",marginY:2,children:t.label}),(0,xn.jsx)(_n,{justifyContent:"center",width:"100%",children:(0,xn.jsx)(ele,{address:Fd(e),mode:{type:"no_icons"}})})]})})]})},gpe=({accountPkh:e})=>{const t=I6(),r=y6(),n=(()=>{const e=v6(),t=y6();return r=>{const n=t(r);if(null==n)return null;const i=l6(n);return e(i)}})(),o=m6(),a=g6(),{openWith:s}=(0,i.useContext)(dL),c=t(e),l=r(e),u=n(e),d=o(e),h=ile(a(e));return(0,xn.jsx)(fpe,{account:c,balance:l,dollarBalance:u,nfts:h,onReceive:()=>s((0,xn.jsx)(mpe,{pkh:e})),onSend:()=>s((0,xn.jsx)(Xse,{sender:c})),tokens:d})};var vpe=r(6784),ype=r.n(vpe);const bpe=({nft:e,style:t})=>{const r=e.metadata.attributes;return r&&0!==r.length?(0,xn.jsxs)(kF,{background:AO.gray[800],"data-testid":"attributes-section",style:t,children:[(0,xn.jsxs)(SF,{paddingY:"16px",children:[(0,xn.jsx)(Ln,{flex:"1",textAlign:"left",size:"md",children:"Attributes"}),(0,xn.jsx)(EF,{})]}),(0,xn.jsx)(jF,{children:(0,xn.jsx)(ape,{marginLeft:"0",spacing:"10px",children:r.map((e=>(0,xn.jsx)(spe,{flex:"1","data-testid":"nft-attribute",children:(0,xn.jsx)(AH,{width:"160px",height:"128px",marginBottom:"2px",background:AO.gray[700],children:(0,xn.jsxs)(PH,{padding:"16px",children:[(0,xn.jsx)(WU,{color:AO.gray[400],size:"sm",children:e.name}),(0,xn.jsx)(Ln,{size:"md",children:e.value})]})})},e.name)))})})]}):null},wpe=({text:e,maxLength:t})=>e.length<=t?(0,xn.jsx)(WU,{"data-testid":"truncated-text",children:e}):(0,xn.jsx)($q,{label:e,children:(0,xn.jsx)(WU,{"data-testid":"truncated-text",children:s6(e,t)})}),xpe=({url:e,...t})=>(0,xn.jsx)("a",{"data-testid":"tzkt-link",href:e,rel:"noopener noreferrer",target:"_blank",children:(0,xn.jsx)(iae,{...t})}),_pe=({nft:e})=>{if(!e.metadata.creators||0===e.metadata.creators.length)return(0,xn.jsx)(xn.Fragment,{children:"-"});const t=e.metadata.creators[0];return t.startsWith("tz")?(0,xn.jsx)(ele,{marginRight:1,address:Fd(t)}):(0,xn.jsx)(wpe,{maxLength:15,text:t})},kpe=({nft:e,style:t})=>{const r=(e=>{const t=e.metadata.royalties;if(!t)return[];const r=Math.pow(10,Number(t.decimals)),n=Object.entries(t.shares).map((([e,t])=>({address:e,share:100*Number(t)/r})));return n.sort(((e,t)=>e.sharee+t.share),0).toFixed(2),i=Xq();return(0,xn.jsxs)(kF,{background:AO.gray[800],style:t,children:[(0,xn.jsxs)(SF,{paddingY:"16px",children:[(0,xn.jsx)(Ln,{flex:"1",textAlign:"left",size:"md",children:"Properties"}),(0,xn.jsx)(EF,{})]}),(0,xn.jsx)(jF,{children:(0,xn.jsx)(Xae,{children:(0,xn.jsx)(ese,{variant:"stripped",children:(0,xn.jsxs)(tse,{fontSize:"14px",children:[(0,xn.jsxs)(rse,{background:AO.gray[900],borderColor:AO.gray[700],borderBottomWidth:"1px",borderRadius:"8px",children:[(0,xn.jsx)(nse,{width:"20%",padding:"16px 0 16px 15px",paddingRight:"0",color:AO.gray[400],borderTopLeftRadius:"8px","data-testid":"nft-editions",children:"Editions:"}),(0,xn.jsx)(nse,{width:"30%",padding:"16px 0 16px 5px",borderColor:AO.gray[700],borderRightWidth:"1px","data-testid":"nft-editions-value",children:e.totalSupply||"?"}),(0,xn.jsx)(nse,{width:"20%",padding:"16px 0 16px 15px",color:AO.gray[400],children:"Token ID:"}),(0,xn.jsx)(nse,{width:"30%",padding:"16px 0 16px 5px",borderTopRightRadius:"8px",children:e.tokenId})]}),(0,xn.jsxs)(rse,{background:AO.gray[800],borderColor:AO.gray[700],borderBottomWidth:"1px",children:[(0,xn.jsxs)(nse,{padding:"16px 0 16px 15px",color:AO.gray[400],"data-testid":"nft-royalty",children:["Royalties",r.length>1?" ("+r.length+")":"",":"]}),(0,xn.jsx)(nse,{padding:"16px 0 16px 5px",borderColor:AO.gray[700],borderRightWidth:"1px","data-testid":"nft-royalty-value",children:r.length>0?n+"%":"-"}),(0,xn.jsx)(nse,{padding:"16px 0 16px 15px",color:AO.gray[400],"data-testid":"nft-mime",children:"MIME type:"}),(0,xn.jsx)(nse,{width:"30%",padding:"16px 0 16px 5px","data-testid":"nft-mime-value",children:ch(e)||"-"})]}),(0,xn.jsxs)(rse,{background:AO.gray[900],borderColor:AO.gray[700],borderBottomWidth:"1px",children:[(0,xn.jsx)(nse,{padding:"16px 0 16px 15px",color:AO.gray[400],children:"Contract:"}),(0,xn.jsx)(nse,{padding:"16px 0 16px 5px",borderColor:AO.gray[700],borderRightWidth:"1px",children:(0,xn.jsx)(ele,{marginRight:1,address:Fd(e.contract)})}),(0,xn.jsx)(nse,{padding:"16px 0 16px 15px",color:AO.gray[400],children:"Metadata:"}),(0,xn.jsxs)(nse,{width:"30%",padding:"16px 0 16px 5px",children:["TzKT ",(0,xn.jsx)(xpe,{url:lh(e,i)})]})]}),(0,xn.jsxs)(rse,{background:AO.gray[800],borderColor:AO.gray[700],borderBottomWidth:"1px",children:[(0,xn.jsx)(nse,{padding:"16px 0 16px 15px",color:AO.gray[400],"data-testid":"nft-creator",children:"Creator:"}),(0,xn.jsx)(nse,{padding:"16px 0 16px 5px",borderColor:AO.gray[700],borderRightWidth:"1px","data-testid":"nft-creator-value",children:(0,xn.jsx)(_pe,{nft:e})}),(0,xn.jsx)(nse,{padding:"16px 0 16px 15px",color:AO.gray[400],children:"License:"}),(0,xn.jsx)(nse,{width:"30%",padding:"16px 0 16px 5px",children:(0,xn.jsx)(wpe,{maxLength:15,text:e.metadata.rights||"-"})})]})]})})})})]})},Spe=({nft:e})=>{const t=e.metadata.tags;return t&&0!==t.length?(0,xn.jsx)(ape,{marginTop:"20px","data-testid":"tags-section",children:t.map((e=>(0,xn.jsx)(spe,{padding:"3px 8px",background:AO.gray[600],borderRadius:"100px",children:(0,xn.jsx)(WU,{color:AO.gray[400],"data-testid":"nft-tag",children:e})},e)))}):null},Epe=({nft:e})=>{const t=nle(sh(e)),r=nle(e.displayUri);return(0,xn.jsx)(En,{width:"100%","aria-label":"nft",children:(0,xn.jsxs)(_n,{alignItems:"center",height:"60px",padding:3,background:AO.gray[800],borderRadius:"4px","data-testid":"nft-name",children:[(0,xn.jsx)(XU,{width:"30px",height:"30px",ratio:1,children:(0,xn.jsx)(mI,{fallbackSrc:r,src:t})}),e.metadata.name&&(0,xn.jsx)(Ln,{marginLeft:4,size:"sm",children:s6(e.metadata.name,45)})]})})},Ape=e=>{const{mode:t,operations:r,fee:n,data:{nft:i}}=e,{fee:o,operations:a,estimationFailed:s,isLoading:c,form:l,signer:u,reEstimate:d,onSign:h}=$se(n,r,t),{recipient:f}=a.operations[0];return(0,xn.jsx)(f$,{...l,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(rae,{...e,operationsType:a.type,signer:a.signer}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(_n,{marginBottom:"12px",children:(0,xn.jsx)(Epe,{nft:i})}),(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",marginY:"12px",paddingX:"4px",children:[(0,xn.jsxs)(_n,{alignItems:"center",children:[(0,xn.jsx)(Ln,{marginRight:"4px",color:AO.gray[450],size:"sm",children:"Owned:"}),(0,xn.jsx)(WU,{color:AO.gray[400],"data-testid":"nft-owned",size:"sm",children:i.balance})]}),(0,xn.jsx)(sae,{fee:o})]}),(0,xn.jsxs)(_n,{alignItems:"center",marginTop:"12px",marginBottom:"24px",children:[(0,xn.jsx)(Ln,{marginRight:"12px",size:"md",children:"Quantity:"}),(0,xn.jsx)(kn,{width:"100px",height:"48px",background:AO.gray[800],borderRadius:"4px",children:(0,xn.jsxs)(WU,{textAlign:"center",children:[a.operations[0].amount," out of ",i.balance]})})]}),(0,xn.jsx)(TH,{children:"From"}),(0,xn.jsx)(V6,{marginBottom:"24px",address:a.sender.address}),(0,xn.jsx)(TH,{children:"To"}),(0,xn.jsx)(V6,{address:f}),(0,xn.jsx)(Dse,{isLoading:c,operationType:a.type,reEstimate:d,sender:a.sender})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isDisabled:s,isLoading:c,onSubmit:h,signer:u,text:eae(a.type,t)})})]})})})},Ppe=e=>{const{nft:t}=e,r=Gse({SignPage:Ape,signPageExtraData:{nft:t},FormPage:Ppe,defaultFormPageProps:e,toOperation:Ope(t)}),n=Zse(Ope(t)),{onFormSubmitActionHandlers:[i,o],isLoading:a}=Yse([r,n]),s=xH({mode:"onBlur",defaultValues:{quantity:1,...Fse(e)}}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s;return(0,xn.jsx)(f$,{...s,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(Yoe,{}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(_n,{marginBottom:"12px",children:(0,xn.jsx)(Epe,{nft:e.nft})}),(0,xn.jsxs)(_n,{alignItems:"center",children:[(0,xn.jsx)(Ln,{marginRight:"4px",color:AO.gray[450],size:"sm",children:"Owned:"}),(0,xn.jsx)(WU,{color:AO.gray[400],"data-testid":"nft-owned",size:"sm",children:t.balance})]}),(0,xn.jsxs)(LF,{marginTop:"24px",isInvalid:!!l.quantity,children:[(0,xn.jsx)(TH,{children:(0,xn.jsxs)(_n,{alignItems:"center",children:[(0,xn.jsx)(Ln,{marginRight:"8px",size:"md",children:"Quantity:"}),(0,xn.jsxs)(_n,{alignItems:"center",children:[(0,xn.jsx)(MH,{width:"75px",children:(0,xn.jsx)(DH,{width:"60px",color:"white","data-testid":"quantity-input",step:1,type:"number",...u("quantity",{required:"Quantity is required",max:{value:t.balance,message:`Max quantity is ${t.balance}`},min:{value:1,message:"Min quantity is 1"}})})}),(0,xn.jsxs)(WU,{"data-testid":"out-of-nft",children:["out of ",t.balance]})]})]})}),l.quantity&&(0,xn.jsx)(qoe,{"data-testid":"quantity-error",children:l.quantity.message})]}),(0,xn.jsxs)(LF,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,xn.jsx)(X6,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"}),l.sender&&(0,xn.jsx)(qoe,{"data-testid":"from-error",children:l.sender.message})]}),(0,xn.jsxs)(LF,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,xn.jsx)(Z6,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,xn.jsx)(qoe,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Use,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i)})})]})})})},Ope=e=>t=>({type:"fa2",sender:Fd(t.sender),recipient:Fd(t.recipient),contract:qd(e.contract),tokenId:e.tokenId,amount:t.quantity.toString()}),Tpe=({nft:e})=>{var t;const r=nle(ah(e)),n=nle(e.displayUri),o=I6(),{openWith:a}=(0,i.useContext)(dL),s=null===(t=ch(e))||void 0===t?void 0:t.startsWith("video/"),c=Qd(e),l={border:"none",borderRadius:"8px",marginBottom:"20px"};return(0,xn.jsxs)(En,{children:[(0,xn.jsx)(AH,{width:"534px",height:"534px",background:AO.gray[800],children:(0,xn.jsxs)(PH,{padding:"24px",children:[(0,xn.jsx)(En,{position:"relative",width:"486px",height:"486px",children:s?(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(En,{position:"absolute",zIndex:1,width:"486px",height:"486px",children:(0,xn.jsx)(ype(),{width:"100%",height:"100%",loop:!0,playing:!0,url:r})}),(0,xn.jsx)(mI,{position:"absolute",zIndex:0,top:"0",width:"486px",height:"486px",objectFit:"contain",alt:c,filter:"blur(20px)",src:n})]}):(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(mI,{position:"absolute",zIndex:1,width:"486px",height:"486px",objectFit:"contain",alt:c,fallbackSrc:n,src:r}),(0,xn.jsx)(mI,{position:"absolute",zIndex:0,top:"0",width:"486px",height:"486px",objectFit:"contain",alt:c,"data-testid":"nft-image",fallbackSrc:n,filter:"blur(20px)",src:r})]})}),Number(e.balance)>1&&(0,xn.jsx)(WU,{position:"absolute",zIndex:3,display:"inline",height:"24px",marginTop:"-38px",marginLeft:"16px",borderRadius:"100px",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",paddingX:"8px",children:"x"+e.balance})]})}),(0,xn.jsx)(Spe,{nft:e}),c&&(0,xn.jsx)(Ln,{marginTop:"16px",marginBottom:"14px","data-testid":"nft-name",size:"lg",children:c}),e.metadata.description&&(0,xn.jsx)(WU,{color:AO.gray[400],"data-testid":"nft-description",size:"sm",children:e.metadata.description}),(0,xn.jsx)(Gn,{marginTop:"20px",onClick:()=>a((0,xn.jsx)(Ppe,{nft:e,sender:o(e.owner)})),children:"Send"}),(0,xn.jsxs)(_F,{marginTop:"32px",allowMultiple:!0,children:[(0,xn.jsx)(bpe,{nft:e,style:l}),(0,xn.jsx)(kpe,{nft:e,style:l}),(0,xn.jsxs)(kF,{background:AO.gray[800],style:l,children:[(0,xn.jsxs)(SF,{paddingY:"16px",children:[(0,xn.jsx)(Ln,{flex:"1",textAlign:"left",size:"md",children:"JSON"}),(0,xn.jsx)(EF,{})]}),(0,xn.jsx)(jF,{children:(0,xn.jsx)(OH,{value:e})})]})]})]})},jpe=({nft:e,onCloseDrawer:t})=>(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",paddingBottom:"22px",color:AO.gray[400],"data-testid":"nft-drawer-body",children:[(0,xn.jsx)(ele,{address:Fd(e.owner)}),(0,xn.jsx)(Lde,{onClose:t})]}),(0,xn.jsx)(Tpe,{nft:e})]}),Cpe=()=>{const[e,t]=(0,i.useState)(null),{ownerPkh:r,nftId:n}=function(){let{matches:e}=i.useContext(UT),t=e[e.length-1];return t?t.params:{}}(),o=f6(),a=r&&(0,Ns.get)(o,[r],[]).find((e=>Xd(e)===n)),s=!!a,{isOpen:c,onOpen:l,onClose:u}=LI({defaultIsOpen:s}),{isOpen:d}=hL(),h=qT(),f=(0,i.useCallback)((()=>{t(null),u(),h("/home")}),[u,h]);(0,i.useEffect)((()=>{const e=e=>{"Escape"===e.key&&f()};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[f]);const p=(0,i.useMemo)((()=>({selectedAccount:e,selectAccount:e=>{t(e),l()}})),[e,l]);return(0,xn.jsxs)(sle.Provider,{value:p,children:[(0,xn.jsx)(Rde,{}),(0,xn.jsxs)(Ble,{autoFocus:!1,blockScrollOnMount:!d,isOpen:c,onClose:f,placement:"right",children:[(0,xn.jsx)(fM,{}),(0,xn.jsxs)(Vle,{children:[s&&(0,xn.jsx)(ZU,{children:(0,xn.jsx)(jpe,{nft:{...a,owner:r},onCloseDrawer:f})}),!s&&e&&(0,xn.jsxs)(ZU,{overflow:"hidden",overflowY:"scroll",paddingRight:"0",children:[(0,xn.jsx)(Mde,{marginRight:"23px",onClose:f}),(0,xn.jsx)(gpe,{accountPkh:e.address.pkh})]})]})]})]})},Rpe=()=>(0,xn.jsxs)(_n,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Bce,{title:"Accounts"}),(0,xn.jsx)(_n,{flex:1,minHeight:1,children:(0,xn.jsxs)(_n,{flexDirection:"column",flex:1,marginRight:"12px",paddingBottom:"12px",children:[(0,xn.jsx)(Tde,{}),(0,xn.jsx)(En,{flex:1,overflow:"hidden",borderRadius:"8px",children:(0,xn.jsx)(Cpe,{})})]})})]}),Ipe=(0,i.createContext)({selectedNFT:void 0,setSelectedNFT:e=>{}}),Mpe=({nft:e})=>{const{selectedNFT:t,setSelectedNFT:r}=(0,i.useContext)(Ipe),n=nle(sh(e)),o=nle(e.displayUri),a=e.metadata.name,s={width:"100%",minWidth:"242px",minHeight:"242px",objectFit:"contain",aspectRatio:"1",fallbackSrc:o,src:n},c=t&&Xd(t)===Xd(e)&&t.owner===e.owner;return(0,xn.jsx)(AH,{minWidth:"274px",borderRadius:"8px",cursor:"pointer","data-testid":"nft-card"+(c?"-selected":""),onClick:()=>r(e),children:(0,xn.jsxs)(PH,{padding:"16px",background:AO.gray[900],border:"1px solid",borderColor:c?AO.orangeL:"transparent",borderRadius:"8px",_hover:{background:AO.gray[700],borderColor:AO.gray[500]},children:[(0,xn.jsx)(kn,{children:(0,xn.jsxs)(En,{position:"relative",width:"100%",children:[(0,xn.jsx)(mI,{...s,zIndex:2,opacity:"0"}),(0,xn.jsx)(mI,{...s,position:"absolute",zIndex:0,top:"0",filter:"blur(20px)"}),(0,xn.jsx)(mI,{...s,position:"absolute",zIndex:1,top:"0","data-testid":"nft-image"})]})}),Number(e.balance)>1&&(0,xn.jsx)(WU,{position:"absolute",zIndex:3,display:"inline",height:"24px",marginTop:"-36px",marginLeft:"10px",paddingTop:"1px",fontSize:"14px",borderRadius:"full",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",paddingX:"8px",children:"x"+e.balance}),(0,xn.jsx)(En,{overflow:"hidden","data-testid":"nft-card-name",children:(0,xn.jsx)(Ln,{overflow:"hidden",marginTop:"15px",marginBottom:"8px",fontSize:"sm",whiteSpace:"nowrap",textOverflow:"ellipsis",children:a})}),(0,xn.jsx)(ele,{address:Fd(e.owner)})]})})},Lpe=({nftsByOwner:e})=>{const t=Object.entries(e).flatMap((([e,t])=>(t||[]).map((t=>({owner:e,...t})))));let r="repeat(auto-fit, minmax(min(100%/2, max(274px, 100%/7)), 1fr))";return t.length<3&&(r=`repeat(auto-fit, min(100% / ${t.length} - 16px, 450px))`),(0,xn.jsx)(vde,{gridTemplateColumns:r,marginBottom:"16px",minChildWidth:"340px",spacing:"16px",children:ile(t).map((e=>(0,xn.jsx)(Mpe,{nft:e},`${e.owner}:${Xd(e)}`)))})};function Npe(e={}){const{timeout:t=300,preventDefault:r=(()=>!0)}=e,[n,o]=(0,i.useState)([]),a=(0,i.useRef)(),s=()=>{a.current&&(clearTimeout(a.current),a.current=null)};return(0,i.useEffect)((()=>s),[]),function(e){return i=>{if("Backspace"===i.key){const e=[...n];return e.pop(),void o(e)}if(function(e){const{key:t}=e;return 1===t.length||t.length>1&&/[^a-zA-Z0-9]/.test(t)}(i)){const c=n.concat(i.key);r(i)&&(i.preventDefault(),i.stopPropagation()),o(c),e(c.join("")),s(),a.current=setTimeout((()=>{o([]),a.current=null}),t)}}}}function Dpe(e,t){var r;const n=e.target;if(n){if(!zpe(n).contains(n))return!1}return!(null==(r=t.current)?void 0:r.contains(n))}function zpe(e){var t;return null!=(t=null==e?void 0:e.ownerDocument)?t:document}var[Bpe,Upe,Fpe,$pe]=cF(),[Hpe,Vpe]=Nn({strict:!1,name:"MenuContext"});function qpe(e){var t;return null!=(t=null==e?void 0:e.ownerDocument)?t:document}function Kpe(e){return qpe(e).activeElement===e}function Wpe(e={}){const{id:t,closeOnSelect:r=!0,closeOnBlur:n=!0,initialFocusRef:o,autoSelect:a=!0,isLazy:s,isOpen:c,defaultIsOpen:l,onClose:u,onOpen:d,placement:h="bottom-start",lazyBehavior:f="unmount",direction:p,computePositionOnMount:m=!1,...g}=e,v=(0,i.useRef)(null),y=(0,i.useRef)(null),b=Fpe(),w=(0,i.useCallback)((()=>{requestAnimationFrame((()=>{var e;null==(e=v.current)||e.focus({preventScroll:!1})}))}),[]),x=(0,i.useCallback)((()=>{const e=setTimeout((()=>{var e;if(o)null==(e=o.current)||e.focus();else{const e=b.firstEnabled();e&&j(e.index)}}));L.current.add(e)}),[b,o]),_=(0,i.useCallback)((()=>{const e=setTimeout((()=>{const e=b.lastEnabled();e&&j(e.index)}));L.current.add(e)}),[b]),k=(0,i.useCallback)((()=>{null==d||d(),a?x():w()}),[a,x,w,d]),{isOpen:S,onOpen:E,onClose:A,onToggle:P}=Lq({isOpen:c,defaultIsOpen:l,onClose:u,onOpen:k});!function(e){const{ref:t,handler:r,enabled:n=!0}=e,o=uw(r),a=(0,i.useRef)({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}).current;(0,i.useEffect)((()=>{if(!n)return;const e=e=>{Dpe(e,t)&&(a.isPointerDown=!0)},i=e=>{a.ignoreEmulatedMouseEvents?a.ignoreEmulatedMouseEvents=!1:a.isPointerDown&&r&&Dpe(e,t)&&(a.isPointerDown=!1,o(e))},s=e=>{a.ignoreEmulatedMouseEvents=!0,r&&a.isPointerDown&&Dpe(e,t)&&(a.isPointerDown=!1,o(e))},c=zpe(t.current);return c.addEventListener("mousedown",e,!0),c.addEventListener("mouseup",i,!0),c.addEventListener("touchstart",e,!0),c.addEventListener("touchend",s,!0),()=>{c.removeEventListener("mousedown",e,!0),c.removeEventListener("mouseup",i,!0),c.removeEventListener("touchstart",e,!0),c.removeEventListener("touchend",s,!0)}}),[r,t,o,a,n])}({enabled:S&&n,ref:v,handler:e=>{var t;(null==(t=y.current)?void 0:t.contains(e.target))||A()}});const O=Iq({...g,enabled:S||m,placement:h,direction:p}),[T,j]=(0,i.useState)(-1);dw((()=>{S||j(-1)}),[S]),mse(v,{focusRef:y,visible:S,shouldFocus:!0});const C=use({isOpen:S,ref:v}),[R,I]=function(e,...t){const r=(0,i.useId)(),n=e||r;return(0,i.useMemo)((()=>t.map((e=>`${e}-${n}`))),[n,t])}(t,"menu-button","menu-list"),M=(0,i.useCallback)((()=>{E(),w()}),[E,w]),L=(0,i.useRef)(new Set([]));(0,i.useEffect)((()=>{const e=L.current;return()=>{e.forEach((e=>clearTimeout(e))),e.clear()}}),[]);const N=(0,i.useCallback)((()=>{E(),x()}),[x,E]),D=(0,i.useCallback)((()=>{E(),_()}),[E,_]),z=(0,i.useCallback)((()=>{var e,t;const r=qpe(v.current),n=null==(e=v.current)?void 0:e.contains(r.activeElement);if(!(S&&!n))return;const i=null==(t=b.item(T))?void 0:t.node;null==i||i.focus({preventScroll:!0})}),[S,T,b]),B=(0,i.useRef)(null);return{openAndFocusMenu:M,openAndFocusFirstItem:N,openAndFocusLastItem:D,onTransitionEnd:z,unstable__animationState:C,descendants:b,popper:O,buttonId:R,menuId:I,forceUpdate:O.forceUpdate,orientation:"vertical",isOpen:S,onToggle:P,onOpen:E,onClose:A,menuRef:v,buttonRef:y,focusedIndex:T,closeOnSelect:r,closeOnBlur:n,autoSelect:a,setFocusedIndex:j,isLazy:s,lazyBehavior:f,initialFocusRef:o,rafId:B}}function Gpe(e){var t;return function(e){var t;if(!function(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}(e))return!1;const r=null!=(t=e.ownerDocument.defaultView)?t:window;return e instanceof r.HTMLElement}(e)&&!!(null==(t=null==e?void 0:e.getAttribute("role"))?void 0:t.startsWith("menuitem"))}function Zpe(e={},t=null){const{onMouseEnter:r,onMouseMove:n,onMouseLeave:o,onClick:a,onFocus:s,isDisabled:c,isFocusable:l,closeOnSelect:u,type:d,...h}=e,f=Vpe(),{setFocusedIndex:p,focusedIndex:m,closeOnSelect:g,onClose:v,menuRef:y,isOpen:b,menuId:w,rafId:x}=f,_=(0,i.useRef)(null),k=`${w}-menuitem-${(0,i.useId)()}`,{index:S,register:E}=$pe({disabled:c&&!l}),A=(0,i.useCallback)((e=>{null==r||r(e),c||p(S)}),[p,S,c,r]),P=(0,i.useCallback)((e=>{null==n||n(e),_.current&&!Kpe(_.current)&&A(e)}),[A,n]),O=(0,i.useCallback)((e=>{null==o||o(e),c||p(-1)}),[p,c,o]),T=(0,i.useCallback)((e=>{null==a||a(e),Gpe(e.currentTarget)&&(null!=u?u:g)&&v()}),[v,a,g,u]),j=(0,i.useCallback)((e=>{null==s||s(e),p(S)}),[p,s,S]),C=S===m,R=c&&!l;dw((()=>{if(b)return C&&!R&&_.current?(x.current&&cancelAnimationFrame(x.current),x.current=requestAnimationFrame((()=>{var e;null==(e=_.current)||e.focus({preventScroll:!0}),x.current=null}))):y.current&&!Kpe(y.current)&&y.current.focus({preventScroll:!0}),()=>{x.current&&cancelAnimationFrame(x.current)}}),[C,R,y,b]);const I=Dde({onClick:T,onFocus:j,onMouseEnter:A,onMouseMove:P,onMouseLeave:O,ref:Kn(E,_,t),isDisabled:c,isFocusable:l});return{...h,...I,type:null!=d?d:I.type,id:k,role:"menuitem",tabIndex:C?0:-1}}var[Ype,Xpe]=Nn({name:"MenuStylesContext",errorMessage:"useMenuStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),Jpe=e=>{const{children:t}=e,r=Mn("Menu",e),n=ft(e),{direction:o}=On(),{descendants:a,...s}=Wpe({...n,direction:o}),c=(0,i.useMemo)((()=>s),[s]),{isOpen:l,onClose:u,forceUpdate:d}=c;return(0,xn.jsx)(Bpe,{value:a,children:(0,xn.jsx)(Hpe,{value:c,children:(0,xn.jsx)(Ype,{value:r,children:x(t,{isOpen:l,onClose:u,forceUpdate:d})})})})};Jpe.displayName="Menu";var Qpe=v(((e,t)=>{const r=Xpe();return(0,xn.jsx)(wn.button,{ref:t,...e,__css:{display:"inline-flex",appearance:"none",alignItems:"center",outline:0,...r.button}})})),eme=v(((e,t)=>{const{children:r,as:n,...o}=e,a=function(e={},t=null){const r=Vpe(),{onToggle:n,popper:o,openAndFocusFirstItem:a,openAndFocusLastItem:s}=r,c=(0,i.useCallback)((e=>{const t=e.key,r={Enter:a,ArrowDown:a,ArrowUp:s}[t];r&&(e.preventDefault(),e.stopPropagation(),r(e))}),[a,s]);return{...e,ref:Kn(r.buttonRef,t,o.referenceRef),id:r.buttonId,"data-active":k(r.isOpen),"aria-expanded":r.isOpen,"aria-haspopup":"menu","aria-controls":r.menuId,onClick:E(e.onClick,n),onKeyDown:E(e.onKeyDown,c)}}(o,t),s=n||Qpe;return(0,xn.jsx)(s,{...a,className:y("chakra-menu__menu-button",e.className),children:(0,xn.jsx)(wn.span,{__css:{pointerEvents:"none",flex:"1 1 auto",minW:0},children:e.children})})}));eme.displayName="MenuButton";var tme={enter:{visibility:"visible",opacity:1,scale:1,transition:{duration:.2,ease:[.4,0,.2,1]}},exit:{transitionEnd:{visibility:"hidden"},opacity:0,scale:.8,transition:{duration:.1,easings:"easeOut"}}},rme=wn(CP.div),nme=v((function(e,t){var r,n;const{rootProps:o,motionProps:a,...s}=e,{isOpen:c,onTransitionEnd:l,unstable__animationState:u}=Vpe(),d=function(e={},t=null){const r=Vpe();if(!r)throw new Error("useMenuContext: context is undefined. Seems you forgot to wrap component within ");const{focusedIndex:n,setFocusedIndex:o,menuRef:a,isOpen:s,onClose:c,menuId:l,isLazy:u,lazyBehavior:d,unstable__animationState:h}=r,f=Upe(),p=Npe({preventDefault:e=>" "!==e.key&&Gpe(e.target)}),m=(0,i.useCallback)((e=>{if(!e.currentTarget.contains(e.target))return;const t=e.key,r={Tab:e=>e.preventDefault(),Escape:c,ArrowDown:()=>{const e=f.nextEnabled(n);e&&o(e.index)},ArrowUp:()=>{const e=f.prevEnabled(n);e&&o(e.index)}},i=r[t];if(i)return e.preventDefault(),void i(e);const a=p((e=>{const t=function(e,t,r,n){if(null==t)return n;if(!n)return e.find((e=>r(e).toLowerCase().startsWith(t.toLowerCase())));const i=e.filter((e=>r(e).toLowerCase().startsWith(t.toLowerCase())));if(i.length>0){let t;return i.includes(n)?(t=i.indexOf(n)+1,t===i.length&&(t=0),i[t]):(t=e.indexOf(i[0]),e[t])}return n}(f.values(),e,(e=>{var t,r;return null!=(r=null==(t=null==e?void 0:e.node)?void 0:t.textContent)?r:""}),f.item(n));if(t){const e=f.indexOf(t.node);o(e)}}));Gpe(e.target)&&a(e)}),[f,n,p,c,o]),g=(0,i.useRef)(!1);s&&(g.current=!0);const v=vse({wasSelected:g.current,enabled:u,mode:d,isSelected:h.present});return{...e,ref:Kn(a,t),children:v?e.children:null,tabIndex:-1,role:"menu",id:l,style:{...e.style,transformOrigin:"var(--popper-transform-origin)"},"aria-orientation":"vertical",onKeyDown:E(e.onKeyDown,m)}}(s,t),h=function(e={}){const{popper:t,isOpen:r}=Vpe();return t.getPopperProps({...e,style:{visibility:r?"visible":"hidden",...e.style}})}(o),f=Xpe();return(0,xn.jsx)(wn.div,{...h,__css:{zIndex:null!=(n=e.zIndex)?n:null==(r=f.list)?void 0:r.zIndex},children:(0,xn.jsx)(rme,{variants:tme,initial:!1,animate:c?"enter":"exit",__css:{outline:0,...f.list},...a,className:y("chakra-menu__menu-list",d.className),...d,onUpdate:l,onAnimationComplete:A(u.onComplete,d.onAnimationComplete)})})}));nme.displayName="MenuList";var ime=v(((e,t)=>{const r=Xpe();return(0,xn.jsx)(wn.span,{ref:t,...e,__css:r.command,className:"chakra-menu__command"})}));ime.displayName="MenuCommand";var ome=v(((e,t)=>{const{type:r,...n}=e,o=Xpe(),a=n.as||r?null!=r?r:void 0:"button",s=(0,i.useMemo)((()=>({textDecoration:"none",color:"inherit",userSelect:"none",display:"flex",width:"100%",alignItems:"center",textAlign:"start",flex:"0 0 auto",outline:0,...o.item})),[o.item]);return(0,xn.jsx)(wn.button,{ref:t,type:a,...n,__css:s})})),ame=e=>{const{className:t,children:r,...n}=e,o=Xpe(),a=i.Children.only(r),s=(0,i.isValidElement)(a)?(0,i.cloneElement)(a,{focusable:"false","aria-hidden":!0,className:y("chakra-menu__icon",a.props.className)}):null,c=y("chakra-menu__icon-wrapper",t);return(0,xn.jsx)(wn.span,{className:c,...n,__css:o.icon,children:s})};ame.displayName="MenuIcon";var sme=v(((e,t)=>{const{icon:r,iconSpacing:n="0.75rem",command:i,commandSpacing:o="0.75rem",children:a,...s}=e,c=Zpe(s,t),l=r||i?(0,xn.jsx)("span",{style:{pointerEvents:"none",flex:1},children:a}):a;return(0,xn.jsxs)(ome,{...c,className:y("chakra-menu__menuitem",c.className),children:[r&&(0,xn.jsx)(ame,{fontSize:"0.8em",marginEnd:n,children:r}),l,i&&(0,xn.jsx)(ime,{marginStart:o,children:i})]})}));sme.displayName="MenuItem";const cme=({accounts:e,onSelect:t})=>(0,xn.jsx)(nme,{zIndex:"docked",overflowY:"scroll",maxHeight:"300px",padding:0,background:AO.gray[900],children:e.map((e=>(0,xn.jsx)(sme,{width:"100%",minHeight:"48px",padding:"5px",background:AO.gray[700],"aria-label":e.label,onClick:()=>{t(e)},value:e.address.pkh,children:(0,xn.jsx)(V6,{width:"370px",height:"40px",padding:"5px",background:AO.gray[700],borderRadius:"4px",_hover:{background:AO.gray[500]},cursor:"pointer",address:e.address})},e.address.pkh)))}),lme=()=>{const e=T6(),[t,r]=xj(),n=t.getAll("accounts"),i=e.filter((e=>n.includes(e.address.pkh))),o=(0,Ns.differenceBy)(e,i,(e=>e.address.pkh)),a=i.length===e.length;return{selectedAccounts:0===i.length?e:i,accountsFilter:(0,xn.jsxs)(kn,{children:[(0,xn.jsx)(En,{alignSelf:"flex-start",children:(0,xn.jsxs)(Jpe,{children:[(0,xn.jsx)(eme,{as:Gn,maxHeight:"26px",paddingLeft:0,fontWeight:"normal",_hover:{bg:"none"},_active:{bg:"none"},"data-testid":"account-filter",isDisabled:a,marginY:"16px",rightIcon:(0,xn.jsx)(ode,{}),variant:"ghost",children:"Filter by Account"}),(0,xn.jsx)(cme,{accounts:o,onSelect:e=>{r({...t,accounts:[...i,e].map((e=>e.address.pkh))})}})]})}),(0,xn.jsx)(ape,{width:"100%",children:i.map((e=>(0,xn.jsx)(ele,{address:e.address,"data-testid":"account-pill",mode:{type:"removable",onRemove:()=>{r({...t,accounts:n.filter((t=>t!==e.address.pkh))})}}},e.address.pkh)))})]})}},ume=()=>{const e=f6(),{isOpen:t}=hL(),{accountsFilter:r,selectedAccounts:n}=lme(),[o,a]=(0,i.useState)(void 0);(0,i.useEffect)((()=>{const e=e=>{"Escape"===e.key&&a(void 0)};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[]);const s=(0,Ns.pick)(e,n.map((e=>e.address.pkh))),c=(0,Ns.sumBy)(Object.values(s).flat(),(e=>Number((null===e||void 0===e?void 0:e.balance)||0))),l=(0,Ns.every)(s,(e=>!e||0===e.length));return(0,xn.jsxs)(_n,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Bce,{subtitle:`(${c})`,title:"NFTs"}),r,l?(0,xn.jsx)(ice,{size:"lg"}):(0,xn.jsxs)(Ipe.Provider,{value:{setSelectedNFT:a,selectedNFT:o},children:[(0,xn.jsx)(En,{overflowY:"scroll",children:(0,xn.jsx)(Lpe,{nftsByOwner:s})}),(0,xn.jsxs)(Ble,{autoFocus:!1,blockScrollOnMount:!t,isOpen:!!o,onClose:()=>a(void 0),placement:"right",children:[(0,xn.jsx)(fM,{}),(0,xn.jsx)(Vle,{children:(0,xn.jsx)(ZU,{children:o&&(0,xn.jsx)(jpe,{nft:o,onCloseDrawer:()=>a(void 0)})})})]})]})]})},dme=()=>{const{accountsFilter:e,selectedAccounts:t}=lme(),{operations:r,loadMore:n,hasMore:o,setAddresses:a,isLoading:s}=epe(t.map((e=>e.address.pkh))),c=t.map((e=>e.address.pkh)).join(",");(0,i.useEffect)((()=>{a(c.split(","))}),[a,c]);const l=(0,xn.jsx)(WU,{color:AO.gray[500],textAlign:"center",paddingY:"20px",children:"Loading..."});return(0,xn.jsxs)(_n,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Bce,{title:"Operations"}),e,0===r.length&&s&&l,0===r.length&&!s&&(0,xn.jsx)(nce,{size:"lg"}),r.length>0&&(0,xn.jsx)(En,{overflowY:"scroll",marginBottom:"20px",background:AO.gray[900],borderRadius:"8px",onScroll:e=>{if(!o||s)return;const t=e.target;return t.scrollHeight-t.scrollTop-t.clientHeight<100?n():void 0},paddingX:"20px",children:(0,xn.jsxs)(Tfe.Provider,{value:{mode:"page"},children:[r.map(((e,t)=>{const n=t===r.length-1;return(0,xn.jsxs)(En,{height:"90px",marginBottom:n?"10px":0,paddingY:"20px",children:[(0,xn.jsx)(Wfe,{operation:e}),!n&&(0,xn.jsx)(En,{children:(0,xn.jsx)(lse,{marginTop:"20px"})})]},e.id)})),s&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(lse,{}),l]})]})})]})},hme=()=>{const{data:e}=Mae({queryKey:[Wae],queryFn:()=>_H.getPeers()}),t=Zae(),[r,n]=(0,i.useState)([]);return(0,i.useEffect)((()=>{const t=(e||[]).map((async e=>({...e,senderId:e.senderId||await dN(e.publicKey)})));Promise.all(t).then(n).catch(Ns.noop)}),[e]),0===r.length?(0,xn.jsxs)(En,{children:[(0,xn.jsx)(lse,{}),(0,xn.jsx)(WU,{marginTop:"31px",color:AO.gray[400],size:"lg",children:"Your dApps will appear here"})]}):(0,xn.jsx)(fme,{peerInfos:r,removePeer:t})},fme=({peerInfos:e,removePeer:t})=>(0,xn.jsx)(En,{children:e.map((e=>(0,xn.jsxs)(i.Fragment,{children:[(0,xn.jsx)(lse,{}),(0,xn.jsx)(pme,{onRemove:()=>t(e),peerInfo:e})]},e.senderId)))}),pme=({peerInfo:e,onRemove:t})=>(0,xn.jsxs)(_n,{justifyContent:"space-between",height:"106px","data-testid":"peer-row",paddingY:"30px",children:[(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(XU,{width:"48px",marginRight:"16px",ratio:1,children:(0,xn.jsx)(mI,{width:"100%",src:e.icon})}),(0,xn.jsxs)(kn,{alignItems:"flex-start",flexDirection:"column",children:[(0,xn.jsx)(Ln,{marginBottom:"6px",size:"md",children:e.name}),(0,xn.jsx)(mme,{peerInfo:e})]})]}),(0,xn.jsx)(kn,{children:(0,xn.jsx)(t4,{"aria-label":"Remove Peer",icon:(0,xn.jsx)(vI,{}),onClick:t,size:"xs",variant:"circle"})})]}),mme=({peerInfo:e})=>{const t=(e=>{const t=PI((e=>e.beacon));return t[e]})(e.senderId);return t?(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(ele,{marginRight:"10px",address:Fd(t.accountPkh)}),(0,xn.jsx)(lse,{marginRight:"10px",orientation:"vertical"}),(0,xn.jsx)(WU,{marginTop:"2px",marginRight:"4px",color:AO.gray[450],fontWeight:650,size:"sm",children:"Network:"}),(0,xn.jsx)(WU,{marginTop:"2px",color:AO.white,"data-testid":"dapp-connection-network",size:"sm",children:(0,Ns.capitalize)(t.networkType)})]}):null},gme=()=>{const{isOpen:e,onClose:t,onOpen:r}=LI(),{isOpen:n}=hL();return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Rle,{left:"dApps",isSelected:e,onClick:r}),(0,xn.jsxs)(Ble,{autoFocus:!1,blockScrollOnMount:!n,isOpen:e,onClose:t,placement:"right",children:[(0,xn.jsx)(fM,{}),(0,xn.jsx)(Vle,{children:(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(Mde,{onClose:t}),(0,xn.jsx)(vme,{})]})})]})]})},vme=()=>{const e=Yae();return(0,xn.jsxs)(En,{children:[(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"space-between",height:24,children:(0,xn.jsx)(Ln,{children:"dApps"})}),(0,xn.jsx)(Gn,{onClick:()=>navigator.clipboard.readText().then((t=>e(t))),children:"Connect with Pairing Request"}),(0,xn.jsx)(WU,{marginTop:"16px",marginBottom:"32px",color:"text.dark",children:"or open a deeplink from inside the dApp..."}),(0,xn.jsx)(hme,{})]})},yme=()=>{const{isOpen:e,onClose:t,onOpen:r}=LI(),{isOpen:n}=hL();return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Rle,{left:"Error Logs",isSelected:e,onClick:r}),(0,xn.jsxs)(Ble,{blockScrollOnMount:!n,isOpen:e,onClose:t,placement:"right",children:[(0,xn.jsx)(fM,{}),(0,xn.jsx)(Vle,{children:(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(Mde,{onClose:t}),(0,xn.jsx)(bme,{})]})})]})]})},bme=()=>{const e=[...PI((e=>e.errors))].reverse(),t=co();return(0,xn.jsxs)(_n,{flexDirection:"column",height:"100%",children:[(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",height:"50px",marginBottom:"20px",children:[(0,xn.jsx)(Ln,{size:"xl",children:"Error Logs"}),(0,xn.jsxs)(En,{children:[(0,xn.jsx)("a",{download:"UmamiErrorLogs.json",href:`data:application/json;charset=utf-8,${encodeURIComponent(JSON.stringify(e))}`,children:(0,xn.jsx)(Gn,{variant:"tertiary",children:"Download error logs"})}),(0,xn.jsx)(Gn,{marginLeft:"8px",onClick:()=>{t(Lh.actions.reset())},variant:"warning",children:"Clear All"})]})]}),e.map((e=>(0,xn.jsx)(wme,{errorLog:e},Xa())))]})},wme=({errorLog:e})=>(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(lse,{marginY:1}),(0,xn.jsx)(_n,{justifyContent:"space-between",paddingY:"12px",children:(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(nI,{marginTop:"1px",marginRight:"8px"}),(0,xn.jsxs)(_n,{flexDirection:"column",children:[(0,xn.jsx)(Ln,{wordBreak:"break-all",size:"sm",children:e.description}),(0,xn.jsx)(WU,{color:AO.gray[400],size:"sm",children:e.timestamp})]})]})})]});function xme(e={}){const{onChange:t,value:r,defaultValue:n,name:o,isDisabled:a,isFocusable:s,isNative:c,...l}=e,[u,d]=(0,i.useState)(n||""),h="undefined"!==typeof r,f=h?r:u,p=(0,i.useRef)(null),m=(0,i.useCallback)((()=>{const e=p.current;if(!e)return;let t="input:not(:disabled):checked";const r=e.querySelector(t);if(r)return void r.focus();t="input:not(:disabled)";const n=e.querySelector(t);null==n||n.focus()}),[]),g=(0,i.useId)(),v=o||`radio-${g}`,y=(0,i.useCallback)((e=>{const r=function(e){return e&&b(e)&&b(e.target)}(e)?e.target.value:e;h||d(r),null==t||t(String(r))}),[t,h]);return{getRootProps:(0,i.useCallback)(((e={},t=null)=>({...e,ref:Kn(t,p),role:"radiogroup"})),[]),getRadioProps:(0,i.useCallback)(((e={},t=null)=>{const r=c?"checked":"isChecked";return{...e,ref:t,name:v,[r]:null!=f?e.value===f:void 0,onChange(e){y(e)},"data-radiogroup":!0}}),[c,v,y,f]),name:v,ref:p,focus:m,setValue:d,value:f,onChange:y,isDisabled:a,isFocusable:s,htmlProps:l}}var[_me,kme]=Nn({name:"RadioGroupContext",strict:!1}),Sme=v(((e,t)=>{const{colorScheme:r,size:n,variant:o,children:a,className:s,isDisabled:c,isFocusable:l,...u}=e,{value:d,onChange:h,getRootProps:f,name:p,htmlProps:m}=xme(u),g=(0,i.useMemo)((()=>({name:p,size:n,onChange:h,colorScheme:r,value:d,variant:o,isDisabled:c,isFocusable:l})),[p,n,h,r,d,o,c,l]);return(0,xn.jsx)(_me,{value:g,children:(0,xn.jsx)(wn.div,{...f(m,t),className:y("chakra-radio-group",s),children:a})})}));Sme.displayName="RadioGroup";var Eme={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"};function Ame(e){e.preventDefault(),e.stopPropagation()}var Pme=v(((e,t)=>{var r;const n=kme(),{onChange:o,value:a}=e,s=Mn("Radio",{...n,...e}),c=ft(e),{spacing:l="0.5rem",children:u,isDisabled:d=(null==n?void 0:n.isDisabled),isFocusable:h=(null==n?void 0:n.isFocusable),inputProps:f,...p}=c;let m=e.isChecked;null!=(null==n?void 0:n.value)&&null!=a&&(m=n.value===a);let g=o;(null==n?void 0:n.onChange)&&null!=a&&(g=A(n.onChange,o));const v=null!=(r=null==e?void 0:e.name)?r:null==n?void 0:n.name,{getInputProps:y,getCheckboxProps:b,getLabelProps:w,getRootProps:x,htmlProps:_}=function(e={}){const{defaultChecked:t,isChecked:r,isFocusable:n,isDisabled:o,isReadOnly:a,isRequired:s,onChange:c,isInvalid:l,name:u,value:d,id:h,"data-radiogroup":f,"aria-describedby":p,...m}=e,g=`radio-${(0,i.useId)()}`,v=MF(),y=kme();let b=!v||y||f?g:v.id;b=null!=h?h:b;const w=null!=o?o:null==v?void 0:v.isDisabled,x=null!=a?a:null==v?void 0:v.isReadOnly,_=null!=s?s:null==v?void 0:v.isRequired,A=null!=l?l:null==v?void 0:v.isInvalid,[P,O]=(0,i.useState)(!1),[T,j]=(0,i.useState)(!1),[C,R]=(0,i.useState)(!1),[I,M]=(0,i.useState)(!1),[L,N]=(0,i.useState)(Boolean(t)),D="undefined"!==typeof r,z=D?r:L;(0,i.useEffect)((()=>$ue(O)),[]);const B=(0,i.useCallback)((e=>{x||w?e.preventDefault():(D||N(e.target.checked),null==c||c(e))}),[D,w,x,c]),U=(0,i.useCallback)((e=>{" "===e.key&&M(!0)}),[M]),F=(0,i.useCallback)((e=>{" "===e.key&&M(!1)}),[M]),$=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":k(I),"data-hover":k(C),"data-disabled":k(w),"data-invalid":k(A),"data-checked":k(z),"data-focus":k(T),"data-focus-visible":k(T&&P),"data-readonly":k(x),"aria-hidden":!0,onMouseDown:E(e.onMouseDown,(()=>M(!0))),onMouseUp:E(e.onMouseUp,(()=>M(!1))),onMouseEnter:E(e.onMouseEnter,(()=>R(!0))),onMouseLeave:E(e.onMouseLeave,(()=>R(!1)))})),[I,C,w,A,z,T,x,P]),{onFocus:H,onBlur:V}=null!=v?v:{},q=(0,i.useCallback)(((e={},t=null)=>{const r=w&&!n;return{...e,id:b,ref:t,type:"radio",name:u,value:d,onChange:E(e.onChange,B),onBlur:E(V,e.onBlur,(()=>j(!1))),onFocus:E(H,e.onFocus,(()=>j(!0))),onKeyDown:E(e.onKeyDown,U),onKeyUp:E(e.onKeyUp,F),checked:z,disabled:r,readOnly:x,required:_,"aria-invalid":S(A),"aria-disabled":S(r),"aria-required":S(_),"data-readonly":k(x),"aria-describedby":p,style:Eme}}),[w,n,b,u,d,B,V,H,U,F,z,x,_,A,p]);return{state:{isInvalid:A,isFocused:T,isChecked:z,isActive:I,isHovered:C,isDisabled:w,isReadOnly:x,isRequired:_},getCheckboxProps:$,getRadioProps:$,getInputProps:q,getLabelProps:(e={},t=null)=>({...e,ref:t,onMouseDown:E(e.onMouseDown,Ame),"data-disabled":k(w),"data-checked":k(z),"data-invalid":k(A)}),getRootProps:(e,t=null)=>({...e,ref:t,"data-disabled":k(w),"data-checked":k(z),"data-invalid":k(A)}),htmlProps:m}}({...p,isChecked:m,isFocusable:h,isDisabled:d,onChange:g,name:v}),[P,O]=function(e,t){const r={},n={};for(const[i,o]of Object.entries(e))t.includes(i)?r[i]=o:n[i]=o;return[r,n]}(_,rt),T=b(O),j=y(f,t),C=w(),R=Object.assign({},P,x()),I={display:"inline-flex",alignItems:"center",verticalAlign:"top",cursor:"pointer",position:"relative",...s.container},M={display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0,...s.control},L={userSelect:"none",marginStart:l,...s.label};return(0,xn.jsxs)(wn.label,{className:"chakra-radio",...R,__css:I,children:[(0,xn.jsx)("input",{className:"chakra-radio__input",...j}),(0,xn.jsx)(wn.span,{className:"chakra-radio__control",...T,__css:M}),u&&(0,xn.jsx)(wn.span,{className:"chakra-radio__label",...C,__css:L,children:u})]})}));Pme.displayName="Radio";const Ome=({network:e})=>{const t=e?"edit":"create",{onClose:r}=(0,i.useContext)(dL),n=co(),o=Jq(),{formState:{errors:a,isValid:s},register:c,handleSubmit:l}=xH({mode:"onBlur",defaultValues:e});return(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{onSubmit:l((e=>{n(Fh.upsertNetwork(e)),r()})),children:[(0,xn.jsxs)(qU,{textAlign:"center",children:["edit"===t?"Edit":"Add"," Network",(0,xn.jsx)(GU,{})]}),(0,xn.jsxs)(ZU,{children:["create"===t&&(0,xn.jsxs)(LF,{marginTop:"32px",marginBottom:"24px",isInvalid:!!a.name,children:[(0,xn.jsx)(TH,{children:"Name"}),(0,xn.jsx)(DH,{placeholder:"mainnet",...c("name",{required:"Name is required",validate:e=>{if(o.find((t=>t.name===e)))return"Network with this name already exists"}})}),a.name&&(0,xn.jsx)(qoe,{children:a.name.message})]}),(0,xn.jsxs)(LF,{marginBottom:"24px",isInvalid:!!a.rpcUrl,children:[(0,xn.jsx)(TH,{children:"RPC URL"}),(0,xn.jsx)(DH,{placeholder:"https://prod.tcinfra.net/rpc/mainnet",...c("rpcUrl",{required:"RPC URL is required"})}),a.rpcUrl&&(0,xn.jsx)(qoe,{children:a.rpcUrl.message})]}),(0,xn.jsxs)(LF,{marginBottom:"24px",isInvalid:!!a.tzktApiUrl,children:[(0,xn.jsx)(TH,{children:"Tzkt API URL"}),(0,xn.jsx)(DH,{placeholder:"https://api.ghostnet.tzkt.io",...c("tzktApiUrl",{required:"Tzkt API URL is required"})}),a.tzktApiUrl&&(0,xn.jsx)(qoe,{children:a.tzktApiUrl.message})]}),(0,xn.jsxs)(LF,{marginBottom:"24px",isInvalid:!!a.tzktExplorerUrl,children:[(0,xn.jsx)(TH,{children:"Tzkt Explorer URL"}),(0,xn.jsx)(DH,{placeholder:"https://ghostnet.tzkt.io",...c("tzktExplorerUrl",{required:"Tzkt Explorer URL is required"})}),a.tzktExplorerUrl&&(0,xn.jsx)(qoe,{children:a.tzktExplorerUrl.message})]}),(0,xn.jsxs)(LF,{children:[(0,xn.jsx)(TH,{children:"Buy Tez URL"}),(0,xn.jsx)(DH,{placeholder:"https://faucet.ghostnet.teztnets.xyz",...c("buyTezUrl")})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Gn,{width:"100%",isDisabled:!s,onClick:()=>{},type:"submit",children:"edit"===t?"Save changes":"Add network"})})]})]})})},Tme=()=>{const{openWith:e}=(0,i.useContext)(dL),t=Xq(),r=Qq(),n=Jq(),o=AI();return(0,xn.jsxs)(_n,{flexDirection:"column",children:[(0,xn.jsxs)(kn,{justifyContent:"space-between",children:[(0,xn.jsx)(Ln,{children:"Network Settings"}),(0,xn.jsxs)(Gn,{paddingRight:"0",onClick:()=>e((0,xn.jsx)(Ome,{})),variant:"CTAWithIcon",children:[(0,xn.jsx)(WU,{size:"sm",children:"Add Network"}),(0,xn.jsx)(oI,{width:"18px",height:"18px",marginLeft:"4px",stroke:"currentcolor"})]})]}),(0,xn.jsx)(Sme,{marginTop:"60px",onChange:r,value:t.name,children:(0,xn.jsx)(Wle,{children:n.map((t=>(0,xn.jsxs)(i.Fragment,{children:[(0,xn.jsx)(lse,{borderColor:AO.gray[700]}),(0,xn.jsxs)(_n,{justifyContent:"space-between","data-testid":`network-${t.name}`,children:[(0,xn.jsx)(Pme,{height:"100px",value:t.name,variant:"primary",children:(0,xn.jsxs)(_n,{flexDirection:"column",marginLeft:"16px",children:[(0,xn.jsx)(Ln,{marginBottom:"4px",size:"sm",children:t.name}),(0,xn.jsx)(WU,{color:AO.gray[400],children:t.rpcUrl})]})}),!kh(t)&&(0,xn.jsx)(kn,{"data-testid":"popover-menu",children:(0,xn.jsxs)(Mse,{children:[(0,xn.jsxs)(Gn,{onClick:()=>e((0,xn.jsx)(Ome,{network:t})),variant:"popover",children:[(0,xn.jsx)(WU,{marginRight:"4px",children:"Edit"}),(0,xn.jsx)(iI,{stroke:"inherit"})]}),(0,xn.jsx)(lse,{marginTop:"4px"}),(0,xn.jsxs)(Gn,{onClick:()=>(e=>{o(Fh.removeNetwork(e))})(t),variant:"popover",children:[(0,xn.jsx)(WU,{marginRight:"4px",children:"Remove"}),(0,xn.jsx)(vI,{stroke:"inherit"})]})]})})]})]},t.name)))})})]})},jme=()=>{const{isOpen:e,onClose:t,onOpen:r}=LI(),{isOpen:n}=(0,i.useContext)(dL);return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Rle,{left:"Network Settings",isSelected:e,onClick:r}),(0,xn.jsxs)(Ble,{blockScrollOnMount:!n,isOpen:e,onClose:t,placement:"right",children:[(0,xn.jsx)(fM,{}),(0,xn.jsx)(Vle,{children:(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(Mde,{onClose:t}),(0,xn.jsx)(Tme,{})]})})]})]})},Cme="2.0.3",Rme=()=>{const{onClose:e}=(0,i.useContext)(dL),t=xH({mode:"onBlur"}),r=fL(),n=AI(),{handleAsyncAction:o,isLoading:a}=tre(),{handleSubmit:s,formState:{isValid:c,errors:l},getValues:u}=t;return(0,xn.jsx)(f$,{...t,children:(0,xn.jsx)(VU,{background:AO.gray[700],"data-testid":"change-password-modal",children:(0,xn.jsxs)("form",{onSubmit:s((async({currentPassword:t,newPassword:i,newPasswordConfirmation:a})=>{if(t!==i&&i===a)return o((async()=>{await n(Tl({currentPassword:t,newPassword:i})).unwrap(),r({description:"Password updated",status:"success"}),e()}))})),children:[(0,xn.jsx)(GU,{}),(0,xn.jsx)(qU,{textAlign:"center",children:(0,xn.jsx)(Ln,{children:"Change Password"})}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsxs)(LF,{marginTop:"32px",isInvalid:!!l.currentPassword,children:[(0,xn.jsx)(Koe,{"data-testid":"current-password",inputName:"currentPassword",label:"Current Password",placeholder:"Enter your current password",required:"Current password is required"}),l.currentPassword&&(0,xn.jsx)(qoe,{"data-testid":"current-password-error",children:l.currentPassword.message})]}),(0,xn.jsxs)(LF,{isInvalid:!!l.newPassword,marginY:6,children:[(0,xn.jsx)(Koe,{"data-testid":"new-password",inputName:"newPassword",label:"New Password",placeholder:"Enter new password",required:"New password is required",validate:e=>u("currentPassword")!==e||"Cannot be the same as old password"}),l.newPassword&&(0,xn.jsx)(qoe,{"data-testid":"new-password-error",children:l.newPassword.message})]}),(0,xn.jsxs)(LF,{marginTop:3,isInvalid:!!l.newPasswordConfirmation,children:[(0,xn.jsx)(Koe,{"data-testid":"new-password-confirmation",inputName:"newPasswordConfirmation",label:"Confirm New Password",placeholder:"Confirm new password",required:"Confirmation is required",validate:e=>u("newPassword")===e||"Your new passwords do no match"}),l.newPasswordConfirmation&&(0,xn.jsx)(qoe,{"data-testid":"new-password-confirmation-error",children:l.newPasswordConfirmation.message})]})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Gn,{width:"100%",isDisabled:!c,isLoading:a,size:"lg",type:"submit",children:"Update Password"})})]})})})},Ime="wasabi",Mme=()=>{const e=()=>{localStorage.clear(),window.location.reload()},t=xH({mode:"onBlur"}),{register:r,handleSubmit:n,formState:{isValid:i,errors:o},getValues:a}=t;return(0,xn.jsx)(f$,{...t,children:(0,xn.jsxs)("form",{onSubmit:n((()=>{a("check")&&a("confirmationCode")===Ime&&e()})),children:[(0,xn.jsx)(GU,{}),(0,xn.jsx)(qU,{marginBottom:"10px",textAlign:"center",children:(0,xn.jsxs)(En,{children:[(0,xn.jsx)(SI,{width:10,height:10,marginBottom:5}),(0,xn.jsx)(Ln,{children:"Off-board Wallet"})]})}),(0,xn.jsxs)(En,{children:[(0,xn.jsx)(WU,{marginBottom:2,color:AO.gray[400],fontWeight:"bold",textAlign:"center",size:"sm",children:"This will permanently remove any data from this computer."}),(0,xn.jsxs)(WU,{color:AO.gray[400],textAlign:"center",size:"sm",children:["Please enter \xab ",Ime," \xbb to confirm. The accounts are still available to be imported in the future; in order to regain access to your accounts, please make sure that you keep the recovery phrase."]}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(lse,{borderColor:AO.gray[700],marginY:5}),(0,xn.jsx)(LF,{isInvalid:!!o.check,children:(0,xn.jsx)(Yue,{...r("check",{required:!0}),children:(0,xn.jsx)(WU,{marginLeft:2,fontWeight:"bold",children:"I have read the warning and I am certain I want to remove my private keys locally. I also made sure to keep my recovery phrase."})})}),(0,xn.jsx)(lse,{borderColor:AO.gray[700],marginY:5}),(0,xn.jsxs)(LF,{isInvalid:!!o.confirmationCode,paddingY:5,children:[(0,xn.jsx)(DH,{type:"text",...r("confirmationCode",{required:"Confirmation is required",validate:e=>e===Ime||"Confirmation code does not match"}),placeholder:"Enter code word to confirm"}),o.confirmationCode&&(0,xn.jsx)(qoe,{children:o.confirmationCode.message})]})]})]}),(0,xn.jsx)(FF,{padding:0,children:(0,xn.jsx)(Gn,{width:"100%",marginBottom:2,isDisabled:!i,size:"lg",type:"submit",variant:"warning",children:"Confirm"})})]})})},Lme=()=>(0,xn.jsxs)(_n,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Bce,{title:"Settings"}),(0,xn.jsxs)(En,{overflowY:"scroll",children:[(0,xn.jsx)(En,{marginTop:"16px",children:(0,xn.jsx)(Nme,{})}),(0,xn.jsx)(zme,{}),(0,xn.jsx)(Bme,{})]})]}),Nme=()=>(0,xn.jsxs)(Ume,{title:"General",children:[(0,xn.jsx)(jme,{}),(0,xn.jsx)(yme,{})]}),Dme=()=>{const e={version:Cme,"persist:accounts":localStorage.getItem("persist:accounts"),"persist:root":localStorage.getItem("persist:root")},t=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(e))}`,r=document.createElement("a");r.href=t,r.download="UmamiV2Backup.json",r.click()},zme=()=>(0,xn.jsx)(Ume,{title:"Backup",children:(0,xn.jsx)(Cle,{isSelected:!1,onClick:Dme,children:(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"space-between",children:[(0,xn.jsx)(Ln,{size:"sm",children:"Download backup file"}),(0,xn.jsx)(Gn,{onClick:Dme,variant:"unstyled",children:(0,xn.jsx)(CR,{cursor:"pointer"})})]})})}),Bme=()=>{const{modalElement:e,onOpen:t}=(()=>{const{isOpen:e,onOpen:t,onClose:r}=LI();return{modalElement:(0,xn.jsxs)(QI,{isCentered:!0,isOpen:e,onClose:r,children:[(0,xn.jsx)(fM,{}),(0,xn.jsx)(VU,{background:AO.gray[900],children:(0,xn.jsx)(Mme,{})})]}),onOpen:t}})(),{openWith:r}=(0,i.useContext)(dL);return(0,xn.jsxs)(Ume,{title:"Advanced Settings",children:[(0,xn.jsx)(gme,{}),(0,xn.jsx)(Rle,{left:"Off-board Wallet",isSelected:!1,onClick:t}),(0,xn.jsx)(Rle,{left:"Change Password",isSelected:!1,onClick:()=>r((0,xn.jsx)(Rme,{}))}),e]})},Ume=({title:e,children:t})=>(0,xn.jsx)(En,{marginTop:"8px",children:(0,xn.jsx)(_n,{children:(0,xn.jsxs)(En,{width:"550px",children:[(0,xn.jsx)(Ln,{marginBottom:"16px",size:"lg",children:e}),t]})})}),Fme=({token:e,amount:t,...r})=>{const{contract:n}=e,i=oh(t,e),o=eh(e);return(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"start",width:"400px",padding:"15px",background:AO.gray[800],borderRadius:"4px","data-testid":"token-tile",...r,children:[(0,xn.jsx)(_n,{alignItems:"center",children:(0,xn.jsx)(XU,{width:"30px",height:"30px",marginRight:"12px",ratio:1,children:(0,xn.jsx)(gI,{padding:"6.25px",background:AO.gray[500],borderRadius:"4px",contract:n})})}),(0,xn.jsx)($6,{number:i}),(0,xn.jsx)(WU,{marginLeft:"4px",size:"sm",children:o})]})},$me=e=>{const{mode:t,operations:r,fee:n,data:{token:i}}=e,{fee:o,operations:a,estimationFailed:s,isLoading:c,form:l,signer:u,reEstimate:d,onSign:h}=$se(n,r,t),{amount:f,recipient:p}=a.operations[0];return(0,xn.jsx)(f$,{...l,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(rae,{...e,operationsType:a.type,signer:a.signer}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsx)(Fme,{amount:f,token:i}),(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,xn.jsx)(_n,{children:(0,xn.jsx)(sae,{fee:o})})}),(0,xn.jsx)(TH,{children:"From"}),(0,xn.jsx)(V6,{marginBottom:"24px",address:a.sender.address}),(0,xn.jsx)(TH,{children:"To"}),(0,xn.jsx)(V6,{address:p}),(0,xn.jsx)(Dse,{isLoading:c,operationType:a.type,reEstimate:d,sender:a.sender})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Woe,{isDisabled:s,isLoading:c,onSubmit:h,signer:u,text:eae(a.type,t)})})]})})})},Hme=e=>{const{token:t}=e,r=Gse({SignPage:$me,signPageExtraData:{token:t},FormPage:Hme,defaultFormPageProps:e,toOperation:Vme(t)}),n=Zse(Vme(t)),{onFormSubmitActionHandlers:[i,o],isLoading:a}=Yse([r,n]),s=xH({mode:"onBlur",defaultValues:Fse(e)}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s,h=rh(t),f=ih(t.balance,h),p=Vse(Number(h));return(0,xn.jsx)(f$,{...s,children:(0,xn.jsx)(VU,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(Yoe,{}),(0,xn.jsxs)(ZU,{children:[(0,xn.jsxs)(LF,{isInvalid:!!l.prettyAmount,children:[(0,xn.jsx)(TH,{children:"Amount"}),(0,xn.jsxs)(MH,{children:[(0,xn.jsx)(DH,{isDisabled:a,step:p,type:"number",...u("prettyAmount",{required:"Amount is required",max:{value:f.toString(),message:`Max amount is ${f}`},validate:qse(Number(h))}),placeholder:p}),(0,xn.jsx)(FH,{paddingRight:"12px","data-testid":"token-symbol",children:eh(t)})]}),l.prettyAmount&&(0,xn.jsx)(qoe,{"data-testid":"amount-error",children:l.prettyAmount.message})]}),(0,xn.jsxs)(LF,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,xn.jsx)(X6,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"}),l.sender&&(0,xn.jsx)(qoe,{"data-testid":"from-error",children:l.sender.message})]}),(0,xn.jsxs)(LF,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,xn.jsx)(Z6,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,xn.jsx)(qoe,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,xn.jsx)(FF,{children:(0,xn.jsx)(Use,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i)})})]})})})},Vme=e=>t=>{const r={type:"fa2",sender:Fd(t.sender),recipient:Fd(t.recipient),contract:qd(e.contract),tokenId:e.tokenId,amount:nh(e,t.prettyAmount)};return"fa2"===e.type?r:{...r,type:"fa1.2",tokenId:"0"}},qme=({account:e})=>{const{address:t,label:r}=e,n=z6(t);return(0,xn.jsxs)(_n,{alignItems:"center",height:"78px",background:ule({left:"-10px",top:"-10px",account:e,radius:"100px",mainBackgroundColor:AO.gray[800]}),borderTopRadius:"8px","data-testid":"header",paddingX:"30px",children:[(0,xn.jsx)(Yq,{addressKind:n,identiconSize:35,size:"lg"}),(0,xn.jsxs)(_n,{justifyContent:"space-between",flex:1,children:[(0,xn.jsxs)(En,{marginLeft:"16px","data-testid":"account-identifier",children:[(0,xn.jsx)(Ln,{marginBottom:"4px",size:"md",children:r}),(0,xn.jsx)(WU,{color:AO.gray[300],size:"sm",children:d6(t.pkh)})]}),(0,xn.jsx)(_n,{flexDirection:"column-reverse",children:(0,xn.jsx)(H6,{verticalAlign:"bottom",address:e.address.pkh})})]})]})},Kme=({account:e,tokens:t})=>{const{openWith:r}=(0,i.useContext)(dL);return(0,xn.jsxs)(AH,{overflowX:"auto",marginBottom:"16px",borderBottomRadius:"8px",backgroundColor:AO.gray[900],children:[(0,xn.jsx)(qme,{account:e}),(0,xn.jsx)(Xae,{paddingX:"30px",children:(0,xn.jsx)(ese,{children:(0,xn.jsx)(tse,{children:t.map(((n,i)=>{const o=i===t.length-1?"transparent":AO.gray[700];return(0,xn.jsxs)(rse,{"data-testid":"token-tile",children:[(0,xn.jsx)(nse,{width:"20%",minWidth:"240px",borderColor:o,paddingX:"0",children:(0,xn.jsxs)(_n,{alignItems:"center",children:[(0,xn.jsx)(gI,{display:"inline-block",width:"38px",contract:n.contract}),(0,xn.jsx)(Ln,{display:"inline-block",marginLeft:"16px",size:"sm",children:(0,xn.jsx)(Yfe,{token:n})})]})}),(0,xn.jsx)(nse,{width:"20%",minWidth:"200px",borderColor:o,paddingX:"0",children:(0,xn.jsx)(ele,{address:qd(n.contract)})}),(0,xn.jsx)(nse,{width:"15%",minWidth:"160px",borderColor:o,paddingX:"0",children:(0,xn.jsx)(Ln,{size:"sm",children:oh(n.balance,n,{showSymbol:!1})})}),(0,xn.jsx)(nse,{textAlign:"right",borderColor:o,paddingX:"0",children:(0,xn.jsx)(Nse,{onClick:()=>r((0,xn.jsx)(Hme,{sender:e,token:n}))})})]},Xd(n))}))})})})]})},Wme=()=>{const{accountsFilter:e,selectedAccounts:t}=lme(),r=m6(),n=t.map((e=>[e,r(e.address.pkh)])).filter((([,e])=>e.length>0));return(0,xn.jsxs)(_n,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Bce,{title:"Tokens"}),e,0===n.length?(0,xn.jsx)(oce,{size:"lg"}):(0,xn.jsx)(En,{overflowY:"auto",children:n.map((([e,t])=>(0,xn.jsx)(Kme,{account:e,tokens:t},e.address.pkh)))})]})},Gme=({isCollapsed:e,...t})=>{const r=e?Cme:`Umami v${Cme}`;return(0,xn.jsx)(WU,{color:AO.gray[450],...t,children:r})},Zme=({toggle:e,...t})=>(0,xn.jsx)(kn,{width:"44px",height:"44px",marginRight:"-14px",borderRadius:"4px",_hover:{background:AO.gray[800]},cursor:"pointer","data-testid":"collapse-menu-button",onClick:e,...t,children:(0,xn.jsx)(bR,{})}),Yme=e=>{const t=Xq();return(0,xn.jsx)(tI,{background:"white",borderRadius:"8px","data-testid":"maki-logo",fishColor:"mainnet"===t.name?"#F74F18":"black",...e})},Xme=()=>{const e=Xq(),t=Jq(),r=Qq(),{onOpen:n,onClose:o,isOpen:a}=LI();return(0,xn.jsxs)(Ase,{isOpen:a,onClose:o,onOpen:n,placement:"bottom-end",children:[(0,xn.jsx)(Pse,{children:(0,xn.jsxs)(Gn,{marginTop:"4px",color:AO.green,"data-testid":"network-selector",variant:"unstyled",children:[(0,Ns.capitalize)(e.name),a?(0,xn.jsx)(kR,{marginTop:"-2px",stroke:"currentcolor"}):(0,xn.jsx)(xR,{marginTop:"-2px",stroke:"currentcolor"})]})}),(0,xn.jsx)(Rse,{width:"100px",marginTop:"-10px",background:AO.gray[700],border:"1px solid",borderColor:AO.gray[500],children:(0,xn.jsx)(Ise,{padding:"4px 12px",children:(0,xn.jsx)(_n,{flexDirection:"column",children:t.map(((n,a)=>(0,xn.jsxs)(i.Fragment,{children:[(0,xn.jsx)(Gn,{height:"34px",color:n.name===e.name?AO.green:AO.gray[300],fontSize:"14px",fontWeight:400,textAlign:"right",_hover:{color:AO.greenL},onClick:()=>{r(n.name),o()},variant:"unstyled",children:(0,Ns.capitalize)(n.name)}),a{const[e,t]=(0,i.useState)(!1),r=window;(0,i.useEffect)((()=>{r&&r.electronAPI&&r.electronAPI.onAppUpdateDownloaded((e=>t(!0)))}),[r]);return e?(0,xn.jsx)(En,{marginTop:"24px",marginBottom:"6px",children:(0,xn.jsxs)(Gn,{justifyContent:"flex-start",width:"100%",height:"32px",paddingTop:"7px",paddingRight:"8px",paddingBottom:"7px",paddingLeft:"8px",color:AO.black,background:AO.green,_hover:{color:AO.black,background:AO.greenL},onClick:()=>{r&&r.electronAPI&&r.electronAPI.installAppUpdateAndQuit()},children:[(0,xn.jsx)(HR,{}),(0,xn.jsx)(WU,{marginLeft:"4px",size:"sm",children:"Update Umami"})]})}):null},Qme=()=>{const{isCollapsed:e,toggle:t}=(()=>{const[e,t]=(0,i.useState)(!1),r=(0,i.useCallback)((()=>{t((e=>!e))}),[]);return{isCollapsed:e,toggle:r}})(),r=(0,xn.jsx)(Zme,{marginTop:e?0:"2px",marginRight:e?0:"-14px",toggle:t});return(0,xn.jsxs)(_n,{alignItems:e?"center":"normal",flexDirection:"column",width:e?"80px":"236px",padding:e?"30px 20px":"30px",background:AO.gray[900],"data-testid":"side-navbar"+(e?"-collapsed":""),children:[(0,xn.jsxs)(En,{children:[(0,xn.jsx)(_n,{alignItems:"center",justifyContent:"space-between",height:"30px",children:e?r:(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Yme,{width:"38px",height:"38px"}),(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(Xme,{}),r]})]})}),(0,xn.jsx)(lse,{marginTop:"28px"})]}),(0,xn.jsxs)(_n,{justifyContent:"space-between",flexDirection:"column",flex:1,children:[(0,xn.jsxs)(En,{alignItems:e?"center":"normal",justifyContent:e?"space-around":"normal",display:e?"flex":"block",height:"100%",children:[!e&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Jme,{}),(0,xn.jsx)(tge,{})]}),(0,xn.jsxs)(En,{children:[(0,xn.jsx)(ege,{icon:(0,xn.jsx)(fR,{}),isCollapsed:e,label:"Accounts",to:"/home"}),(0,xn.jsx)(ege,{icon:(0,xn.jsx)(OR,{}),isCollapsed:e,label:"NFTs",to:"/nfts"}),(0,xn.jsx)(ege,{icon:(0,xn.jsx)(aI,{width:"24px",height:"24px"}),isCollapsed:e,label:"Operations",to:"/operations"}),(0,xn.jsx)(ege,{icon:(0,xn.jsx)(SR,{}),isCollapsed:e,label:"Tokens",to:"/tokens"}),(0,xn.jsx)(ege,{icon:(0,xn.jsx)(yR,{}),isCollapsed:e,label:"Batch",to:"/batch"})]})]}),(0,xn.jsxs)(En,{children:[(0,xn.jsx)(lse,{}),(0,xn.jsx)(ege,{marginTop:"22px",icon:(0,xn.jsx)(gR,{}),isCollapsed:e,label:"Address Book",to:"/address-book"}),(0,xn.jsx)(ege,{icon:(0,xn.jsx)(VR,{}),isCollapsed:e,label:"Settings",to:"/settings"}),(0,xn.jsx)(ege,{icon:(0,xn.jsx)(KR,{}),isCollapsed:e,label:"Help",to:"/help"}),(0,xn.jsx)(Gme,{marginTop:"24px",fontSize:"14px",textAlign:e?"center":"left",isCollapsed:e})]})]})]})},ege=({icon:e,label:t,to:r,isCollapsed:n,...i})=>{const o=HT().pathname.startsWith(r);return(0,xn.jsx)(yj,{to:r,children:(0,xn.jsxs)(_n,{alignItems:"center",justifyContent:"flex-start",width:n?"44px":"176px",marginBottom:"8px",padding:"10px",background:o?AO.gray[600]:"transparent",borderRadius:"4px",_hover:{background:o?AO.gray[600]:AO.gray[800]},cursor:"pointer",...i,children:[e,!n&&(0,xn.jsx)(WU,{marginLeft:"10px",size:"sm",children:t})]})})},tge=()=>{const e=(()=>{const e=PI((e=>e.assets.balances.mutez)),t=v6(),r=Object.values(e);if(0===r.length)return null;const n=r.reduce(((e,t)=>e.plus(t)),Lc(0)),i=t(l6(n));return{mutez:n.toFixed(),usd:i}})(),[t]=sce("(max-height: 900px)");return(0,xn.jsxs)(En,{marginTop:"24px",marginBottom:t?"30px":"100px","data-testid":"total-balance",children:[(0,xn.jsx)(WU,{marginBottom:"4px",size:"sm",children:"Balance"}),e&&(0,xn.jsx)(dpe,{balance:e.mutez,dollarBalance:e.usd})]})},rge=e=>(0,xn.jsxs)(_n,{height:"100vh",children:[(0,xn.jsx)(Qme,{}),(0,xn.jsx)(En,{flex:1,overflowX:"hidden",height:"100%",background:"linear-gradient(180deg, rgba(0, 231, 182, 0.35) -41.53%, rgba(0, 231, 182, 0.00) 34.71%)",paddingX:6,children:e})]}),nge=r.p+"static/media/accounts.5f47a2af4c8394165d1e.png",ige=r.p+"static/media/background_image.a833e862a22ad4910526.png",oge=r.p+"static/media/batch.5ba4eb38fa8c4e1ed39b.png",age=r.p+"static/media/multisig.3ab2bbc3bda7df25ea83.png";var sge=r(1762);const cge=({children:e})=>{const t={background:AO.gray[400],width:"10px",height:"10px",display:"inline-block",margin:"0 4px 60px 4px",borderRadius:"5px"};return(0,xn.jsx)(En,{backgroundImage:"linear-gradient(180deg, rgba(18, 18, 18, 0.00) 36.43%, rgba(18, 18, 18, 0.50) 53.65%, #121212 76.24%)",borderRightRadius:"30px",backgroundColor:"#323131",children:(0,xn.jsx)(sge.FN,{autoPlay:!0,dynamicHeight:!1,infiniteLoop:!0,interval:5e3,renderIndicator:(e,r,n)=>r?(0,xn.jsx)("li",{style:{...t,background:"#00C39A",width:"24px"}}):(0,xn.jsx)("li",{onClick:e,onKeyDown:e,role:"button",style:t,tabIndex:0,value:n},n),showArrows:!1,showStatus:!1,showThumbs:!1,transitionTime:1e3,children:e})})},lge=({item:e})=>(0,xn.jsx)(En,{height:"730px",paddingTop:"500px",paddingBottom:"35px",backgroundImage:e.image,backgroundSize:"cover",backgroundRepeat:"no-repeat","data-testid":`slide-${e.id}`,children:(0,xn.jsxs)(kn,{flexDirection:"column",paddingBottom:"50px",children:[(0,xn.jsx)(Zle,{icon:e.icon,size:"58px"}),(0,xn.jsx)(WU,{width:"400px",margin:"16px 50px 0 50px",children:e.text})]})}),uge=()=>{const[e,t]=(0,i.useState)(!0),{onOpen:r,modalElement:n}=wde((()=>t(!0))),o=[{id:1,text:(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(WU,{as:"span",fontWeight:600,size:"md",children:"Streamline asset management:\xa0"}),(0,xn.jsx)(WU,{as:"span",size:"md",children:"one mnemonic, multiple accounts, full control."})]}),icon:(0,xn.jsx)(lI,{}),image:nge},{id:2,text:(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(WU,{as:"span",size:"md",children:"Enhance security with\xa0"}),(0,xn.jsx)(WU,{as:"span",fontWeight:600,size:"md",children:"Multi-sig"}),(0,xn.jsx)(WU,{as:"span",size:"md",children:", requiring multiple signatures for transaction executions."})]}),icon:(0,xn.jsx)(YR,{width:"32px",height:"32px",stroke:AO.gray[450],strokeWidth:"0.9"}),image:age},{id:3,text:(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(WU,{as:"span",size:"md",children:"Utilize the\xa0"}),(0,xn.jsx)(WU,{as:"span",fontWeight:600,size:"md",children:"Batch\xa0"}),(0,xn.jsx)(WU,{as:"span",size:"md",children:"feature to bundle transactions, improving efficiency and reducing costs."})]}),icon:(0,xn.jsx)(yR,{width:"32px",height:"32px",strokeWidth:"0.9"}),image:oge}];return(0,xn.jsxs)(kn,{height:"100vh",padding:"60px",backgroundImage:ige,backgroundSize:"cover",children:[e&&(0,xn.jsxs)(vde,{boxShadow:"0px 0px 30px rgba(0, 0, 0, 0.30)",columns:[1,1,2],children:[(0,xn.jsx)(kn,{width:"100%",maxWidth:"660px",background:AO.gray[800],borderLeftRadius:"30px",children:(0,xn.jsxs)(Gle,{maxWidth:"400px",padding:"32px",spacing:"0",children:[(0,xn.jsx)(Yme,{width:"48px",height:"48px",marginBottom:"24px"}),(0,xn.jsx)(Ln,{marginBottom:"16px",size:"3xl",children:"Welcome to Umami"}),(0,xn.jsx)(lse,{maxWidth:"400px",marginBottom:"16px"}),(0,xn.jsx)(WU,{marginBottom:"32px",color:AO.gray[450],children:"A powerful Tezos wallet"}),(0,xn.jsx)(Gn,{width:"100%",marginBottom:"24px",onClick:()=>{t(!1),r()},size:"lg",children:"Get started"}),(0,xn.jsx)(Gme,{fontSize:"13px"})]})}),(0,xn.jsx)(En,{maxWidth:"660px",children:(0,xn.jsx)(cge,{children:o.map((e=>(0,xn.jsx)(lge,{item:e},e.id)))})})]}),n]})},dge=()=>{(()=>{const e=fL(),t=Yae(),r=(0,i.useRef)(t),n=(0,i.useRef)(e),o=(e,t)=>{const i=t.replace(":///","://");if(i.startsWith("umami://auth/")){const e=Voe(i);window.postMessage(e)}else if(i.startsWith("umami://?type=tzip10&data=")){const e=new URL(i).searchParams.get("data");e?r.current(e):n.current({title:"Linkhandler",description:"Data Payload missing"})}else n.current({title:"Linkhandler",description:"Unsupported link type"})};(0,i.useEffect)((()=>{const e=window;return e&&e.electronAPI&&e.electronAPI.onDeeplink(o),()=>{}}),[])})();return A6().length>0?(0,xn.jsx)(hge,{}):(0,xn.jsx)(fge,{})},hge=()=>{qae();const e=hL();return(0,xn.jsx)(mj,{children:(0,xn.jsx)(dL.Provider,{value:e,children:(0,xn.jsxs)(vae,{children:[(0,xn.jsx)(OI,{}),(0,xn.jsxs)(cj,{children:[(0,xn.jsx)(aj,{element:rge((0,xn.jsx)(Rpe,{})),path:"/home"}),(0,xn.jsx)(aj,{element:rge((0,xn.jsx)(Rpe,{})),path:"/home/:ownerPkh/:nftId"}),(0,xn.jsx)(aj,{element:rge((0,xn.jsx)(ume,{})),path:"/nfts"}),(0,xn.jsx)(aj,{element:rge((0,xn.jsx)(dme,{})),path:"/operations"}),(0,xn.jsx)(aj,{element:rge((0,xn.jsx)(Wme,{})),path:"/tokens"}),(0,xn.jsx)(aj,{element:rge((0,xn.jsx)(Fce,{})),path:"/address-book"}),(0,xn.jsx)(aj,{element:rge((0,xn.jsx)(Lme,{})),path:"/settings"}),(0,xn.jsx)(aj,{element:rge((0,xn.jsx)(Ile,{})),path:"/help"}),(0,xn.jsx)(aj,{element:rge((0,xn.jsx)(Ple,{})),path:"/batch"}),(0,xn.jsx)(aj,{element:(0,xn.jsx)(oj,{to:"/home"}),path:"/*"})]}),e.content]})})})},fge=()=>{const e=(()=>{const e=co();return()=>e(Th.actions.reset())})();return(0,i.useEffect)((()=>{_H.destroy().then(e).catch(Ns.noop)}),[e]),(0,xn.jsx)(mj,{children:(0,xn.jsxs)(cj,{children:[(0,xn.jsx)(aj,{element:(0,xn.jsx)(oj,{to:"/welcome"}),path:"/*"}),(0,xn.jsx)(aj,{element:(0,xn.jsx)(uge,{}),path:"/welcome"})]})})};Object.defineProperty(window,"reduxStore",{value:Wh});a.createRoot(document.getElementById("root")).render((0,xn.jsx)(i.StrictMode,{children:(0,xn.jsx)(XO,{children:(0,xn.jsx)(Gh,{children:(0,xn.jsx)(g,{loading:null,persistor:rde,children:(0,xn.jsx)(l,{fallback:(0,xn.jsx)(Xn,{}),onError:(e,t)=>{const r={...ere(e),stacktrace:String(t.componentStack)};Wh.dispatch(Lh.actions.add(r))},children:(0,xn.jsx)(Di,{children:(0,xn.jsx)(dge,{})})})})})})}))})()})(); -//# sourceMappingURL=main.16531fe2.js.map \ No newline at end of file + ${kV} + `});function AV(e={}){const{strict:t=!0,errorMessage:r="useContext: `context` is undefined. Seems you forgot to wrap component within the Provider",name:n}=e,o=(0,i.createContext)(void 0);return o.displayName=n,[o.Provider,function e(){var n;const a=(0,i.useContext)(o);if(!a&&t){const t=new Error(r);throw t.name="ContextError",null==(n=Error.captureStackTrace)||n.call(Error,t,e),t}return a},o]}function PV(e){const{cssVarsRoot:t,theme:r,children:n}=e,o=(0,i.useMemo)((()=>Je(r)),[r]);return(0,xn.jsxs)(Yr,{theme:o,children:[(0,xn.jsx)(OV,{root:t}),n]})}function OV({root:e=":host, :root"}){const t=[e,"[data-theme]"].join(",");return(0,xn.jsx)(Nn,{styles:e=>({[t]:e.__cssVars})})}var[TV,CV]=AV({name:"StylesContext",errorMessage:"useStyles: `styles` is undefined. Seems you forgot to wrap the components in `` "});function jV(){const{colorMode:e}=vt();return(0,xn.jsx)(Nn,{styles:t=>{const r=xt(yt(t,"styles.global"),{theme:t,colorMode:e});if(!r)return;return ct(r)(t)}})}var RV={light:"chakra-ui-light",dark:"chakra-ui-dark"};var IV="chakra-ui-color-mode";var MV,LV=(MV=IV,{ssr:!1,type:"localStorage",get(e){if(!(null==globalThis?void 0:globalThis.document))return e;let t;try{t=localStorage.getItem(MV)||e}catch(r){}return t||e},set(e){try{localStorage.setItem(MV,e)}catch(t){}}});function NV(e,t){const r=e.match(new RegExp(`(^| )${t}=([^;]+)`));return null==r?void 0:r[2]}function DV(e,t){return{ssr:!!t,type:"cookie",get:r=>t?NV(t,e):(null==globalThis?void 0:globalThis.document)&&NV(document.cookie,e)||r,set(t){document.cookie=`${e}=${t}; max-age=31536000; path=/`}}}DV(IV);var zV=()=>{};function BV(e,t){return"cookie"===e.type&&e.ssr?e.get(t):t}function FV(e){const{value:t,children:r,options:{useSystemColorMode:n,initialColorMode:o,disableTransitionOnChange:a}={},colorModeManager:s=LV}=e,c="dark"===o?"dark":"light",[l,u]=(0,i.useState)((()=>BV(s,c))),[d,h]=(0,i.useState)((()=>BV(s))),{getSystemTheme:f,setClassName:p,setDataset:m,addListener:g}=(0,i.useMemo)((()=>function(e={}){const{preventTransition:t=!0}=e,r={setDataset:e=>{const n=t?r.preventTransition():void 0;document.documentElement.dataset.theme=e,document.documentElement.style.colorScheme=e,null==n||n()},setClassName(e){document.body.classList.add(e?RV.dark:RV.light),document.body.classList.remove(e?RV.light:RV.dark)},query:()=>window.matchMedia("(prefers-color-scheme: dark)"),getSystemTheme(e){var t;return(null!=(t=r.query().matches)?t:"dark"===e)?"dark":"light"},addListener(e){const t=r.query(),n=t=>{e(t.matches?"dark":"light")};return"function"===typeof t.addListener?t.addListener(n):t.addEventListener("change",n),()=>{"function"===typeof t.removeListener?t.removeListener(n):t.removeEventListener("change",n)}},preventTransition(){const e=document.createElement("style");return e.appendChild(document.createTextNode("*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(e),()=>{window.getComputedStyle(document.body),requestAnimationFrame((()=>{requestAnimationFrame((()=>{document.head.removeChild(e)}))}))}}};return r}({preventTransition:a})),[a]),v="system"!==o||l?l:d,y=(0,i.useCallback)((e=>{const t="system"===e?f():e;u(t),p("dark"===t),m(t),s.set(t)}),[s,f,p,m]);Si((()=>{"system"===o&&h(f())}),[]),(0,i.useEffect)((()=>{const e=s.get();y(e||("system"!==o?c:"system"))}),[s,c,o,y]);const b=(0,i.useCallback)((()=>{y("dark"===v?"light":"dark")}),[v,y]);(0,i.useEffect)((()=>{if(n)return g(y)}),[n,g,y]);const w=(0,i.useMemo)((()=>({colorMode:null!=t?t:v,toggleColorMode:t?zV:b,setColorMode:t?zV:y,forced:void 0!==t})),[v,b,y,t]);return(0,xn.jsx)(gt.Provider,{value:w,children:r})}FV.displayName="ColorModeProvider";var UV=(0,i.createContext)({getDocument:()=>document,getWindow:()=>window});function $V(e){const{children:t,environment:r,disabled:n}=e,o=(0,i.useRef)(null),a=(0,i.useMemo)((()=>r||{getDocument:()=>{var e,t;return null!=(t=null==(e=o.current)?void 0:e.ownerDocument)?t:document},getWindow:()=>{var e,t;return null!=(t=null==(e=o.current)?void 0:e.ownerDocument.defaultView)?t:window}}),[r]),s=!n||!r;return(0,xn.jsxs)(UV.Provider,{value:a,children:[t,s&&(0,xn.jsx)("span",{id:"__chakra_env",hidden:!0,ref:o})]})}UV.displayName="EnvironmentContext",$V.displayName="EnvironmentProvider";var HV=e=>{const{children:t,colorModeManager:r,portalZIndex:n,resetScope:i,resetCSS:o=!0,theme:a={},environment:s,cssVarsRoot:c,disableEnvironment:l,disableGlobalStyle:u}=e,d=(0,xn.jsx)($V,{environment:s,disabled:l,children:t});return(0,xn.jsx)(PV,{theme:a,cssVarsRoot:c,children:(0,xn.jsxs)(FV,{colorModeManager:r,options:a.config,children:[o?(0,xn.jsx)(EV,{scope:i}):(0,xn.jsx)(SV,{}),!u&&(0,xn.jsx)(jV,{}),n?(0,xn.jsx)(ki,{zIndex:n,children:d}):d]})})},VV={property:{common:"background-color, border-color, color, fill, stroke, opacity, box-shadow, transform",colors:"background-color, border-color, color, fill, stroke",dimensions:"width, height",position:"left, right, top, bottom",background:"background-color, background-image, background-position"},easing:{"ease-in":"cubic-bezier(0.4, 0, 1, 1)","ease-out":"cubic-bezier(0, 0, 0.2, 1)","ease-in-out":"cubic-bezier(0.4, 0, 0.2, 1)"},duration:{"ultra-fast":"50ms",faster:"100ms",fast:"150ms",normal:"200ms",slow:"300ms",slower:"400ms","ultra-slow":"500ms"}},qV={hide:-1,auto:"auto",base:0,docked:10,dropdown:1e3,sticky:1100,banner:1200,overlay:1300,modal:1400,popover:1500,skipLink:1600,toast:1700,tooltip:1800},KV={none:0,"1px":"1px solid","2px":"2px solid","4px":"4px solid","8px":"8px solid"},WV={base:"0em",sm:"30em",md:"48em",lg:"62em",xl:"80em","2xl":"96em"},GV={transparent:"transparent",current:"currentColor",black:"#000000",white:"#FFFFFF",whiteAlpha:{50:"rgba(255, 255, 255, 0.04)",100:"rgba(255, 255, 255, 0.06)",200:"rgba(255, 255, 255, 0.08)",300:"rgba(255, 255, 255, 0.16)",400:"rgba(255, 255, 255, 0.24)",500:"rgba(255, 255, 255, 0.36)",600:"rgba(255, 255, 255, 0.48)",700:"rgba(255, 255, 255, 0.64)",800:"rgba(255, 255, 255, 0.80)",900:"rgba(255, 255, 255, 0.92)"},blackAlpha:{50:"rgba(0, 0, 0, 0.04)",100:"rgba(0, 0, 0, 0.06)",200:"rgba(0, 0, 0, 0.08)",300:"rgba(0, 0, 0, 0.16)",400:"rgba(0, 0, 0, 0.24)",500:"rgba(0, 0, 0, 0.36)",600:"rgba(0, 0, 0, 0.48)",700:"rgba(0, 0, 0, 0.64)",800:"rgba(0, 0, 0, 0.80)",900:"rgba(0, 0, 0, 0.92)"},gray:{50:"#F7FAFC",100:"#EDF2F7",200:"#E2E8F0",300:"#CBD5E0",400:"#A0AEC0",500:"#718096",600:"#4A5568",700:"#2D3748",800:"#1A202C",900:"#171923"},red:{50:"#FFF5F5",100:"#FED7D7",200:"#FEB2B2",300:"#FC8181",400:"#F56565",500:"#E53E3E",600:"#C53030",700:"#9B2C2C",800:"#822727",900:"#63171B"},orange:{50:"#FFFAF0",100:"#FEEBC8",200:"#FBD38D",300:"#F6AD55",400:"#ED8936",500:"#DD6B20",600:"#C05621",700:"#9C4221",800:"#7B341E",900:"#652B19"},yellow:{50:"#FFFFF0",100:"#FEFCBF",200:"#FAF089",300:"#F6E05E",400:"#ECC94B",500:"#D69E2E",600:"#B7791F",700:"#975A16",800:"#744210",900:"#5F370E"},green:{50:"#F0FFF4",100:"#C6F6D5",200:"#9AE6B4",300:"#68D391",400:"#48BB78",500:"#38A169",600:"#2F855A",700:"#276749",800:"#22543D",900:"#1C4532"},teal:{50:"#E6FFFA",100:"#B2F5EA",200:"#81E6D9",300:"#4FD1C5",400:"#38B2AC",500:"#319795",600:"#2C7A7B",700:"#285E61",800:"#234E52",900:"#1D4044"},blue:{50:"#ebf8ff",100:"#bee3f8",200:"#90cdf4",300:"#63b3ed",400:"#4299e1",500:"#3182ce",600:"#2b6cb0",700:"#2c5282",800:"#2a4365",900:"#1A365D"},cyan:{50:"#EDFDFD",100:"#C4F1F9",200:"#9DECF9",300:"#76E4F7",400:"#0BC5EA",500:"#00B5D8",600:"#00A3C4",700:"#0987A0",800:"#086F83",900:"#065666"},purple:{50:"#FAF5FF",100:"#E9D8FD",200:"#D6BCFA",300:"#B794F4",400:"#9F7AEA",500:"#805AD5",600:"#6B46C1",700:"#553C9A",800:"#44337A",900:"#322659"},pink:{50:"#FFF5F7",100:"#FED7E2",200:"#FBB6CE",300:"#F687B3",400:"#ED64A6",500:"#D53F8C",600:"#B83280",700:"#97266D",800:"#702459",900:"#521B41"},linkedin:{50:"#E8F4F9",100:"#CFEDFB",200:"#9BDAF3",300:"#68C7EC",400:"#34B3E4",500:"#00A0DC",600:"#008CC9",700:"#0077B5",800:"#005E93",900:"#004471"},facebook:{50:"#E8F4F9",100:"#D9DEE9",200:"#B7C2DA",300:"#6482C0",400:"#4267B2",500:"#385898",600:"#314E89",700:"#29487D",800:"#223B67",900:"#1E355B"},messenger:{50:"#D0E6FF",100:"#B9DAFF",200:"#A2CDFF",300:"#7AB8FF",400:"#2E90FF",500:"#0078FF",600:"#0063D1",700:"#0052AC",800:"#003C7E",900:"#002C5C"},whatsapp:{50:"#dffeec",100:"#b9f5d0",200:"#90edb3",300:"#65e495",400:"#3cdd78",500:"#22c35e",600:"#179848",700:"#0c6c33",800:"#01421c",900:"#001803"},twitter:{50:"#E5F4FD",100:"#C8E9FB",200:"#A8DCFA",300:"#83CDF7",400:"#57BBF5",500:"#1DA1F2",600:"#1A94DA",700:"#1681BF",800:"#136B9E",900:"#0D4D71"},telegram:{50:"#E3F2F9",100:"#C5E4F3",200:"#A2D4EC",300:"#7AC1E4",400:"#47A9DA",500:"#0088CC",600:"#007AB8",700:"#006BA1",800:"#005885",900:"#003F5E"}},ZV={none:"0",sm:"0.125rem",base:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem",full:"9999px"},YV={xs:"0 0 0 1px rgba(0, 0, 0, 0.05)",sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",base:"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",xl:"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)","2xl":"0 25px 50px -12px rgba(0, 0, 0, 0.25)",outline:"0 0 0 3px rgba(66, 153, 225, 0.6)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.06)",none:"none","dark-lg":"rgba(0, 0, 0, 0.1) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 5px 10px, rgba(0, 0, 0, 0.4) 0px 15px 40px"},XV={none:0,sm:"4px",base:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},JV={letterSpacings:{tighter:"-0.05em",tight:"-0.025em",normal:"0",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeights:{normal:"normal",none:1,shorter:1.25,short:1.375,base:1.5,tall:1.625,taller:"2",3:".75rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem"},fontWeights:{hairline:100,thin:200,light:300,normal:400,medium:500,semibold:600,bold:700,extrabold:800,black:900},fonts:{heading:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',body:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',mono:'SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'},fontSizes:{"3xs":"0.45rem","2xs":"0.625rem",xs:"0.75rem",sm:"0.875rem",md:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem","5xl":"3rem","6xl":"3.75rem","7xl":"4.5rem","8xl":"6rem","9xl":"8rem"}},QV={px:"1px",.5:"0.125rem",1:"0.25rem",1.5:"0.375rem",2:"0.5rem",2.5:"0.625rem",3:"0.75rem",3.5:"0.875rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem",12:"3rem",14:"3.5rem",16:"4rem",20:"5rem",24:"6rem",28:"7rem",32:"8rem",36:"9rem",40:"10rem",44:"11rem",48:"12rem",52:"13rem",56:"14rem",60:"15rem",64:"16rem",72:"18rem",80:"20rem",96:"24rem"},eq={...QV,max:"max-content",min:"min-content",full:"100%","3xs":"14rem","2xs":"16rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem","8xl":"90rem",prose:"60ch",container:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px"}},tq={breakpoints:WV,zIndices:qV,radii:ZV,blur:XV,colors:GV,...JV,sizes:eq,shadows:YV,space:QV,borders:KV,transition:VV},{defineMultiStyleConfig:rq,definePartsStyle:nq}=lt(["stepper","step","title","description","indicator","separator","icon","number"]),iq=Ee("stepper-indicator-size"),oq=Ee("stepper-icon-size"),aq=Ee("stepper-title-font-size"),sq=Ee("stepper-description-font-size"),cq=Ee("stepper-accent-color"),lq=nq((({colorScheme:e})=>({stepper:{display:"flex",justifyContent:"space-between",gap:"4","&[data-orientation=vertical]":{flexDirection:"column",alignItems:"flex-start"},"&[data-orientation=horizontal]":{flexDirection:"row",alignItems:"center"},[cq.variable]:`colors.${e}.500`,_dark:{[cq.variable]:`colors.${e}.200`}},title:{fontSize:aq.reference,fontWeight:"medium"},description:{fontSize:sq.reference,color:"chakra-subtle-text"},number:{fontSize:aq.reference},step:{flexShrink:0,position:"relative",display:"flex",gap:"2","&[data-orientation=horizontal]":{alignItems:"center"},flex:"1","&:last-of-type:not([data-stretch])":{flex:"initial"}},icon:{flexShrink:0,width:oq.reference,height:oq.reference},indicator:{flexShrink:0,borderRadius:"full",width:iq.reference,height:iq.reference,display:"flex",justifyContent:"center",alignItems:"center","&[data-status=active]":{borderWidth:"2px",borderColor:cq.reference},"&[data-status=complete]":{bg:cq.reference,color:"chakra-inverse-text"},"&[data-status=incomplete]":{borderWidth:"2px"}},separator:{bg:"chakra-border-color",flex:"1","&[data-status=complete]":{bg:cq.reference},"&[data-orientation=horizontal]":{width:"100%",height:"2px",marginStart:"2"},"&[data-orientation=vertical]":{width:"2px",position:"absolute",height:"100%",maxHeight:`calc(100% - ${iq.reference} - 8px)`,top:`calc(${iq.reference} + 4px)`,insetStart:`calc(${iq.reference} / 2 - 1px)`}}}))),uq=rq({baseStyle:lq,sizes:{xs:nq({stepper:{[iq.variable]:"sizes.4",[oq.variable]:"sizes.3",[aq.variable]:"fontSizes.xs",[sq.variable]:"fontSizes.xs"}}),sm:nq({stepper:{[iq.variable]:"sizes.6",[oq.variable]:"sizes.4",[aq.variable]:"fontSizes.sm",[sq.variable]:"fontSizes.xs"}}),md:nq({stepper:{[iq.variable]:"sizes.8",[oq.variable]:"sizes.5",[aq.variable]:"fontSizes.md",[sq.variable]:"fontSizes.sm"}}),lg:nq({stepper:{[iq.variable]:"sizes.10",[oq.variable]:"sizes.6",[aq.variable]:"fontSizes.lg",[sq.variable]:"fontSizes.md"}})},defaultProps:{size:"md",colorScheme:"blue"}});function dq(e,t={}){let r=!1;function n(t){const r=`chakra-${(["container","root"].includes(null!=t?t:"")?[e]:[e,t]).filter(Boolean).join("__")}`;return{className:r,selector:`.${r}`,toString:()=>t}}return{parts:function(...i){!function(){if(r)throw new Error("[anatomy] .part(...) should only be called once. Did you mean to use .extend(...) ?");r=!0}();for(const e of i)t[e]=n(e);return dq(e,t)},toPart:n,extend:function(...r){for(const e of r)e in t||(t[e]=n(e));return dq(e,t)},selectors:function(){const e=Object.fromEntries(Object.entries(t).map((([e,t])=>[e,t.selector])));return e},classnames:function(){const e=Object.fromEntries(Object.entries(t).map((([e,t])=>[e,t.className])));return e},get keys(){return Object.keys(t)},__type:{}}}var hq=dq("accordion").parts("root","container","button","panel").extend("icon"),fq=dq("alert").parts("title","description","container").extend("icon","spinner"),pq=dq("avatar").parts("label","badge","container").extend("excessLabel","group"),mq=dq("breadcrumb").parts("link","item","container").extend("separator"),gq=(dq("button").parts(),dq("checkbox").parts("control","icon","container").extend("label")),vq=(dq("progress").parts("track","filledTrack").extend("label"),dq("drawer").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer")),yq=dq("editable").parts("preview","input","textarea"),bq=dq("form").parts("container","requiredIndicator","helperText"),wq=dq("formError").parts("text","icon"),xq=dq("input").parts("addon","field","element","group"),_q=dq("list").parts("container","item","icon"),kq=dq("menu").parts("button","list","item").extend("groupTitle","icon","command","divider"),Sq=dq("modal").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer"),Eq=dq("numberinput").parts("root","field","stepperGroup","stepper"),Aq=(dq("pininput").parts("field"),dq("popover").parts("content","header","body","footer").extend("popper","arrow","closeButton")),Pq=dq("progress").parts("label","filledTrack","track"),Oq=dq("radio").parts("container","control","label"),Tq=dq("select").parts("field","icon"),Cq=dq("slider").parts("container","track","thumb","filledTrack","mark"),jq=dq("stat").parts("container","label","helpText","number","icon"),Rq=dq("switch").parts("container","track","thumb","label"),Iq=dq("table").parts("table","thead","tbody","tr","th","td","tfoot","caption"),Mq=dq("tabs").parts("root","tab","tablist","tabpanel","tabpanels","indicator"),Lq=dq("tag").parts("container","label","closeButton"),Nq=dq("card").parts("container","header","body","footer");dq("stepper").parts("stepper","step","title","description","indicator","separator","icon","number");function Dq(e){const t=function(e,t="-"){return e.replace(/\s+/g,t)}(e.toString());return t.includes("\\.")?e:function(e){return!Number.isInteger(parseFloat(e.toString()))}(e)?t.replace(".","\\."):e}function zq(e,t){return`var(${Dq(e)}${t?`, ${t}`:""})`}function Bq(e,t=""){return`--${function(e,t=""){return[t,Dq(e)].filter(Boolean).join("-")}(e,t)}`}function Fq(e,t){const r=Bq(e,null==t?void 0:t.prefix);return{variable:r,reference:zq(r,Uq(null==t?void 0:t.fallback))}}function Uq(e){return"string"===typeof e?e:null==e?void 0:e.reference}function $q(e){return y(e)&&e.reference?e.reference:String(e)}var Hq=(e,...t)=>t.map($q).join(` ${e} `).replace(/calc/g,""),Vq=(...e)=>`calc(${Hq("+",...e)})`,qq=(...e)=>`calc(${Hq("-",...e)})`,Kq=(...e)=>`calc(${Hq("*",...e)})`,Wq=(...e)=>`calc(${Hq("/",...e)})`,Gq=e=>{const t=$q(e);return null==t||Number.isNaN(parseFloat(t))?Kq(t,-1):String(t).startsWith("-")?String(t).slice(1):`-${t}`},Zq=Object.assign((e=>({add:(...t)=>Zq(Vq(e,...t)),subtract:(...t)=>Zq(qq(e,...t)),multiply:(...t)=>Zq(Kq(e,...t)),divide:(...t)=>Zq(Wq(e,...t)),negate:()=>Zq(Gq(e)),toString:()=>e.toString()})),{add:Vq,subtract:qq,multiply:Kq,divide:Wq,negate:Gq}),{defineMultiStyleConfig:Yq,definePartsStyle:Xq}=lt(Rq.keys),Jq=Fq("switch-track-width"),Qq=Fq("switch-track-height"),eK=Fq("switch-track-diff"),tK=Zq.subtract(Jq,Qq),rK=Fq("switch-thumb-x"),nK=Fq("switch-bg"),iK=e=>{const{colorScheme:t}=e;return{borderRadius:"full",p:"0.5",width:[Jq.reference],height:[Qq.reference],transitionProperty:"common",transitionDuration:"fast",[nK.variable]:"colors.gray.300",_dark:{[nK.variable]:"colors.whiteAlpha.400"},_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed"},_checked:{[nK.variable]:`colors.${t}.500`,_dark:{[nK.variable]:`colors.${t}.200`}},bg:nK.reference}},oK={bg:"white",transitionProperty:"transform",transitionDuration:"normal",borderRadius:"inherit",width:[Qq.reference],height:[Qq.reference],_checked:{transform:`translateX(${rK.reference})`}},aK=Yq({baseStyle:Xq((e=>({container:{[eK.variable]:tK,[rK.variable]:eK.reference,_rtl:{[rK.variable]:Zq(eK).negate().toString()}},track:iK(e),thumb:oK}))),sizes:{sm:Xq({container:{[Jq.variable]:"1.375rem",[Qq.variable]:"sizes.3"}}),md:Xq({container:{[Jq.variable]:"1.875rem",[Qq.variable]:"sizes.4"}}),lg:Xq({container:{[Jq.variable]:"2.875rem",[Qq.variable]:"sizes.6"}})},defaultProps:{size:"md",colorScheme:"blue"}});function sK(e,t){return r=>"dark"===r.colorMode?t:e}function cK(e){const{orientation:t,vertical:r,horizontal:n}=e;return t?"vertical"===t?r:n:{}}var{defineMultiStyleConfig:lK,definePartsStyle:uK}=lt(Iq.keys),dK=uK({table:{fontVariantNumeric:"lining-nums tabular-nums",borderCollapse:"collapse",width:"full"},th:{fontFamily:"heading",fontWeight:"bold",textTransform:"uppercase",letterSpacing:"wider",textAlign:"start"},td:{textAlign:"start"},caption:{mt:4,fontFamily:"heading",textAlign:"center",fontWeight:"medium"}}),hK={"&[data-is-numeric=true]":{textAlign:"end"}},fK=uK((e=>{const{colorScheme:t}=e;return{th:{color:sK("gray.600","gray.400")(e),borderBottom:"1px",borderColor:sK(`${t}.100`,`${t}.700`)(e),...hK},td:{borderBottom:"1px",borderColor:sK(`${t}.100`,`${t}.700`)(e),...hK},caption:{color:sK("gray.600","gray.100")(e)},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}})),pK=uK((e=>{const{colorScheme:t}=e;return{th:{color:sK("gray.600","gray.400")(e),borderBottom:"1px",borderColor:sK(`${t}.100`,`${t}.700`)(e),...hK},td:{borderBottom:"1px",borderColor:sK(`${t}.100`,`${t}.700`)(e),...hK},caption:{color:sK("gray.600","gray.100")(e)},tbody:{tr:{"&:nth-of-type(odd)":{"th, td":{borderBottomWidth:"1px",borderColor:sK(`${t}.100`,`${t}.700`)(e)},td:{background:sK(`${t}.100`,`${t}.700`)(e)}}}},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}})),mK=lK({baseStyle:dK,variants:{simple:fK,striped:pK,unstyled:{}},sizes:{sm:uK({th:{px:"4",py:"1",lineHeight:"4",fontSize:"xs"},td:{px:"4",py:"2",fontSize:"sm",lineHeight:"4"},caption:{px:"4",py:"2",fontSize:"xs"}}),md:uK({th:{px:"6",py:"3",lineHeight:"4",fontSize:"xs"},td:{px:"6",py:"4",lineHeight:"5"},caption:{px:"6",py:"2",fontSize:"sm"}}),lg:uK({th:{px:"8",py:"4",lineHeight:"5",fontSize:"sm"},td:{px:"8",py:"5",lineHeight:"6"},caption:{px:"6",py:"2",fontSize:"md"}})},defaultProps:{variant:"simple",size:"md",colorScheme:"gray"}});function gK(e,t,r){return Math.min(Math.max(e,r),t)}class vK extends Error{constructor(e){super(`Failed to parse color: "${e}"`)}}var yK=vK;function bK(e){if("string"!==typeof e)throw new yK(e);if("transparent"===e.trim().toLowerCase())return[0,0,0,0];let t=e.trim();t=PK.test(e)?function(e){const t=e.toLowerCase().trim(),r=xK[function(e){let t=5381,r=e.length;for(;r;)t=33*t^e.charCodeAt(--r);return(t>>>0)%2341}(t)];if(!r)throw new yK(e);return`#${r}`}(e):e;const r=kK.exec(t);if(r){const e=Array.from(r).slice(1);return[...e.slice(0,3).map((e=>parseInt(_K(e,2),16))),parseInt(_K(e[3]||"f",2),16)/255]}const n=SK.exec(t);if(n){const e=Array.from(n).slice(1);return[...e.slice(0,3).map((e=>parseInt(e,16))),parseInt(e[3]||"ff",16)/255]}const i=EK.exec(t);if(i){const e=Array.from(i).slice(1);return[...e.slice(0,3).map((e=>parseInt(e,10))),parseFloat(e[3]||"1")]}const o=AK.exec(t);if(o){const[t,r,n,i]=Array.from(o).slice(1).map(parseFloat);if(gK(0,100,r)!==r)throw new yK(e);if(gK(0,100,n)!==n)throw new yK(e);return[...TK(t,r,n),Number.isNaN(i)?1:i]}throw new yK(e)}const wK=e=>parseInt(e.replace(/_/g,""),36),xK="1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce(((e,t)=>{const r=wK(t.substring(0,3)),n=wK(t.substring(3)).toString(16);let i="";for(let o=0;o<6-n.length;o++)i+="0";return e[r]=`${i}${n}`,e}),{});const _K=(e,t)=>Array.from(Array(t)).map((()=>e)).join(""),kK=new RegExp(`^#${_K("([a-f0-9])",3)}([a-f0-9])?$`,"i"),SK=new RegExp(`^#${_K("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),EK=new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${_K(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),AK=/^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i,PK=/^[a-z]+$/i,OK=e=>Math.round(255*e),TK=(e,t,r)=>{let n=r/100;if(0===t)return[n,n,n].map(OK);const i=(e%360+360)%360/60,o=(1-Math.abs(2*n-1))*(t/100),a=o*(1-Math.abs(i%2-1));let s=0,c=0,l=0;i>=0&&i<1?(s=o,c=a):i>=1&&i<2?(s=a,c=o):i>=2&&i<3?(c=o,l=a):i>=3&&i<4?(c=a,l=o):i>=4&&i<5?(s=a,l=o):i>=5&&i<6&&(s=o,l=a);const u=n-o/2;return[s+u,c+u,l+u].map(OK)};function CK(e,t,r,n){return`rgba(${gK(0,255,e).toFixed()}, ${gK(0,255,t).toFixed()}, ${gK(0,255,r).toFixed()}, ${parseFloat(gK(0,1,n).toFixed(3))})`}function jK(e,t){const[r,n,i,o]=bK(e);return CK(r,n,i,o-t)}var RK=(e,t,r)=>{const n=function(e,t,r,n,i){for(t=t.split?t.split("."):t,n=0;n{const t=gK(0,255,e).toString(16);return 1===t.length?`0${t}`:t};o(t),o(r),o(n),i<1&&o(Math.round(255*i))}(n),n}catch{return null!=r?r:"#000000"}},IK=e=>t=>{const r=(e=>{const[t,r,n]=bK(e);return(299*t+587*r+114*n)/1e3})(RK(t,e));return r<128?"dark":"light"},MK=(e,t)=>r=>jK(RK(r,e),1-t);function LK(e="1rem",t="rgba(255, 255, 255, 0.15)"){return{backgroundImage:`linear-gradient(\n 45deg,\n ${t} 25%,\n transparent 25%,\n transparent 50%,\n ${t} 50%,\n ${t} 75%,\n transparent 75%,\n transparent\n )`,backgroundSize:`${e} ${e}`}}function NK(e){const t=`#${Math.floor(16777215*Math.random()).toString(16).padEnd(6,"0")}`;return e&&(r=e,0!==Object.keys(r).length)?e.string&&e.colors?function(e,t){let r=0;if(0===e.length)return t[0];for(let n=0;n>8*n&255).toString(16)}`.substr(-2)}return r}(e.string):e.colors&&!e.string?function(e){return e[Math.floor(Math.random()*e.length)]}(e.colors):t:t;var r}var DK=Ee("tabs-color"),zK=Ee("tabs-bg"),BK=Ee("tabs-border-color"),{defineMultiStyleConfig:FK,definePartsStyle:UK}=lt(Mq.keys),$K=e=>{const{orientation:t}=e;return{display:"vertical"===t?"flex":"block"}},HK=e=>{const{isFitted:t}=e;return{flex:t?1:void 0,transitionProperty:"common",transitionDuration:"normal",_focusVisible:{zIndex:1,boxShadow:"outline"},_disabled:{cursor:"not-allowed",opacity:.4}}},VK=e=>{const{align:t="start",orientation:r}=e;return{justifyContent:{end:"flex-end",center:"center",start:"flex-start"}[t],flexDirection:"vertical"===r?"column":"row"}},qK={p:4},KK=UK((e=>({root:$K(e),tab:HK(e),tablist:VK(e),tabpanel:qK}))),WK={sm:UK({tab:{py:1,px:4,fontSize:"sm"}}),md:UK({tab:{fontSize:"md",py:2,px:4}}),lg:UK({tab:{fontSize:"lg",py:3,px:4}})},GK=UK((e=>{const{colorScheme:t,orientation:r}=e,n="vertical"===r,i=n?"borderStart":"borderBottom";return{tablist:{[i]:"2px solid",borderColor:"inherit"},tab:{[i]:"2px solid",borderColor:"transparent",[n?"marginStart":"marginBottom"]:"-2px",_selected:{[DK.variable]:`colors.${t}.600`,_dark:{[DK.variable]:`colors.${t}.300`},borderColor:"currentColor"},_active:{[zK.variable]:"colors.gray.200",_dark:{[zK.variable]:"colors.whiteAlpha.300"}},_disabled:{_active:{bg:"none"}},color:DK.reference,bg:zK.reference}}})),ZK=UK((e=>{const{colorScheme:t}=e;return{tab:{borderTopRadius:"md",border:"1px solid",borderColor:"transparent",mb:"-1px",[BK.variable]:"transparent",_selected:{[DK.variable]:`colors.${t}.600`,[BK.variable]:"colors.white",_dark:{[DK.variable]:`colors.${t}.300`,[BK.variable]:"colors.gray.800"},borderColor:"inherit",borderBottomColor:BK.reference},color:DK.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}})),YK=UK((e=>{const{colorScheme:t}=e;return{tab:{border:"1px solid",borderColor:"inherit",[zK.variable]:"colors.gray.50",_dark:{[zK.variable]:"colors.whiteAlpha.50"},mb:"-1px",_notLast:{marginEnd:"-1px"},_selected:{[zK.variable]:"colors.white",[DK.variable]:`colors.${t}.600`,_dark:{[zK.variable]:"colors.gray.800",[DK.variable]:`colors.${t}.300`},borderColor:"inherit",borderTopColor:"currentColor",borderBottomColor:"transparent"},color:DK.reference,bg:zK.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}})),XK=UK((e=>{const{colorScheme:t,theme:r}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",color:"gray.600",_selected:{color:RK(r,`${t}.700`),bg:RK(r,`${t}.100`)}}}})),JK=UK((e=>{const{colorScheme:t}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",[DK.variable]:"colors.gray.600",_dark:{[DK.variable]:"inherit"},_selected:{[DK.variable]:"colors.white",[zK.variable]:`colors.${t}.600`,_dark:{[DK.variable]:"colors.gray.800",[zK.variable]:`colors.${t}.300`}},color:DK.reference,bg:zK.reference}}})),QK=FK({baseStyle:KK,sizes:WK,variants:{line:GK,enclosed:ZK,"enclosed-colored":YK,"soft-rounded":XK,"solid-rounded":JK,unstyled:UK({})},defaultProps:{size:"md",variant:"line",colorScheme:"blue"}}),eW=function(e,t){const r={};for(const n of t)if(Array.isArray(n)){const[t,i]=n;r[t]=Ee(`${e}-${t}`,i)}else r[n]=Ee(`${e}-${n}`);return r}("badge",["bg","color","shadow"]),tW=e=>{const{colorScheme:t,theme:r}=e,n=MK(`${t}.500`,.6)(r);return{[eW.bg.variable]:`colors.${t}.500`,[eW.color.variable]:"colors.white",_dark:{[eW.bg.variable]:n,[eW.color.variable]:"colors.whiteAlpha.800"}}},rW=e=>{const{colorScheme:t,theme:r}=e,n=MK(`${t}.200`,.16)(r);return{[eW.bg.variable]:`colors.${t}.100`,[eW.color.variable]:`colors.${t}.800`,_dark:{[eW.bg.variable]:n,[eW.color.variable]:`colors.${t}.200`}}},nW=e=>{const{colorScheme:t,theme:r}=e,n=MK(`${t}.200`,.8)(r);return{[eW.color.variable]:`colors.${t}.500`,_dark:{[eW.color.variable]:n},[eW.shadow.variable]:`inset 0 0 0px 1px ${eW.color.reference}`}},iW={baseStyle:{px:1,textTransform:"uppercase",fontSize:"xs",borderRadius:"sm",fontWeight:"bold",bg:eW.bg.reference,color:eW.color.reference,boxShadow:eW.shadow.reference},variants:{solid:tW,subtle:rW,outline:nW},defaultProps:{variant:"subtle",colorScheme:"gray"}},{defineMultiStyleConfig:oW,definePartsStyle:aW}=lt(Lq.keys),sW=Ee("tag-bg"),cW=Ee("tag-color"),lW=Ee("tag-shadow"),uW=Ee("tag-min-height"),dW=Ee("tag-min-width"),hW=Ee("tag-font-size"),fW=Ee("tag-padding-inline"),pW=aW({container:{fontWeight:"medium",lineHeight:1.2,outline:0,[cW.variable]:eW.color.reference,[sW.variable]:eW.bg.reference,[lW.variable]:eW.shadow.reference,color:cW.reference,bg:sW.reference,boxShadow:lW.reference,borderRadius:"md",minH:uW.reference,minW:dW.reference,fontSize:hW.reference,px:fW.reference,_focusVisible:{[lW.variable]:"shadows.outline"}},label:{lineHeight:1.2,overflow:"visible"},closeButton:{fontSize:"lg",w:"5",h:"5",transitionProperty:"common",transitionDuration:"normal",borderRadius:"full",marginStart:"1.5",marginEnd:"-1",opacity:.5,_disabled:{opacity:.4},_focusVisible:{boxShadow:"outline",bg:"rgba(0, 0, 0, 0.14)"},_hover:{opacity:.8},_active:{opacity:1}}}),mW={sm:aW({container:{[uW.variable]:"sizes.5",[dW.variable]:"sizes.5",[hW.variable]:"fontSizes.xs",[fW.variable]:"space.2"},closeButton:{marginEnd:"-2px",marginStart:"0.35rem"}}),md:aW({container:{[uW.variable]:"sizes.6",[dW.variable]:"sizes.6",[hW.variable]:"fontSizes.sm",[fW.variable]:"space.2"}}),lg:aW({container:{[uW.variable]:"sizes.8",[dW.variable]:"sizes.8",[hW.variable]:"fontSizes.md",[fW.variable]:"space.3"}})},gW={subtle:aW((e=>{var t;return{container:null==(t=iW.variants)?void 0:t.subtle(e)}})),solid:aW((e=>{var t;return{container:null==(t=iW.variants)?void 0:t.solid(e)}})),outline:aW((e=>{var t;return{container:null==(t=iW.variants)?void 0:t.outline(e)}}))},vW=oW({variants:gW,baseStyle:pW,sizes:mW,defaultProps:{size:"md",variant:"subtle",colorScheme:"gray"}}),{definePartsStyle:yW,defineMultiStyleConfig:bW}=lt(xq.keys),wW=Ee("input-height"),xW=Ee("input-font-size"),_W=Ee("input-padding"),kW=Ee("input-border-radius"),SW=yW({addon:{height:wW.reference,fontSize:xW.reference,px:_W.reference,borderRadius:kW.reference},field:{width:"100%",height:wW.reference,fontSize:xW.reference,px:_W.reference,borderRadius:kW.reference,minWidth:0,outline:0,position:"relative",appearance:"none",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed"}}}),EW={lg:{[xW.variable]:"fontSizes.lg",[_W.variable]:"space.4",[kW.variable]:"radii.md",[wW.variable]:"sizes.12"},md:{[xW.variable]:"fontSizes.md",[_W.variable]:"space.4",[kW.variable]:"radii.md",[wW.variable]:"sizes.10"},sm:{[xW.variable]:"fontSizes.sm",[_W.variable]:"space.3",[kW.variable]:"radii.sm",[wW.variable]:"sizes.8"},xs:{[xW.variable]:"fontSizes.xs",[_W.variable]:"space.2",[kW.variable]:"radii.sm",[wW.variable]:"sizes.6"}},AW={lg:yW({field:EW.lg,group:EW.lg}),md:yW({field:EW.md,group:EW.md}),sm:yW({field:EW.sm,group:EW.sm}),xs:yW({field:EW.xs,group:EW.xs})};function PW(e){const{focusBorderColor:t,errorBorderColor:r}=e;return{focusBorderColor:t||sK("blue.500","blue.300")(e),errorBorderColor:r||sK("red.500","red.300")(e)}}var OW,TW,CW,jW,RW,IW,MW,LW,NW,DW,zW,BW=yW((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=PW(e);return{field:{border:"1px solid",borderColor:"inherit",bg:"inherit",_hover:{borderColor:sK("gray.300","whiteAlpha.400")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:RK(t,n),boxShadow:`0 0 0 1px ${RK(t,n)}`},_focusVisible:{zIndex:1,borderColor:RK(t,r),boxShadow:`0 0 0 1px ${RK(t,r)}`}},addon:{border:"1px solid",borderColor:sK("inherit","whiteAlpha.50")(e),bg:sK("gray.100","whiteAlpha.300")(e)}}})),FW=yW((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=PW(e);return{field:{border:"2px solid",borderColor:"transparent",bg:sK("gray.100","whiteAlpha.50")(e),_hover:{bg:sK("gray.200","whiteAlpha.100")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:RK(t,n)},_focusVisible:{bg:"transparent",borderColor:RK(t,r)}},addon:{border:"2px solid",borderColor:"transparent",bg:sK("gray.100","whiteAlpha.50")(e)}}})),UW=yW((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=PW(e);return{field:{borderBottom:"1px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent",_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:RK(t,n),boxShadow:`0px 1px 0px 0px ${RK(t,n)}`},_focusVisible:{borderColor:RK(t,r),boxShadow:`0px 1px 0px 0px ${RK(t,r)}`}},addon:{borderBottom:"2px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent"}}})),$W=bW({baseStyle:SW,sizes:AW,variants:{outline:BW,filled:FW,flushed:UW,unstyled:yW({field:{bg:"transparent",px:"0",height:"auto"},addon:{bg:"transparent",px:"0",height:"auto"}})},defaultProps:{size:"md",variant:"outline"}}),HW={...null==(OW=$W.baseStyle)?void 0:OW.field,paddingY:"2",minHeight:"20",lineHeight:"short",verticalAlign:"top"},VW={outline:e=>{var t,r;return null!=(r=null==(t=$W.variants)?void 0:t.outline(e).field)?r:{}},flushed:e=>{var t,r;return null!=(r=null==(t=$W.variants)?void 0:t.flushed(e).field)?r:{}},filled:e=>{var t,r;return null!=(r=null==(t=$W.variants)?void 0:t.filled(e).field)?r:{}},unstyled:null!=(CW=null==(TW=$W.variants)?void 0:TW.unstyled.field)?CW:{}},qW={baseStyle:HW,sizes:{xs:null!=(RW=null==(jW=$W.sizes)?void 0:jW.xs.field)?RW:{},sm:null!=(MW=null==(IW=$W.sizes)?void 0:IW.sm.field)?MW:{},md:null!=(NW=null==(LW=$W.sizes)?void 0:LW.md.field)?NW:{},lg:null!=(zW=null==(DW=$W.sizes)?void 0:DW.lg.field)?zW:{}},variants:VW,defaultProps:{size:"md",variant:"outline"}},KW=Fq("tooltip-bg"),WW=Fq("tooltip-fg"),GW=Fq("popper-arrow-bg"),ZW={baseStyle:{bg:KW.reference,color:WW.reference,[KW.variable]:"colors.gray.700",[WW.variable]:"colors.whiteAlpha.900",_dark:{[KW.variable]:"colors.gray.300",[WW.variable]:"colors.gray.900"},[GW.variable]:KW.reference,px:"2",py:"0.5",borderRadius:"sm",fontWeight:"medium",fontSize:"sm",boxShadow:"md",maxW:"xs",zIndex:"tooltip"}},{defineMultiStyleConfig:YW,definePartsStyle:XW}=lt(Pq.keys),JW=e=>{const{colorScheme:t,theme:r,isIndeterminate:n,hasStripe:i}=e,o=sK(LK(),LK("1rem","rgba(0,0,0,0.1)"))(e),a=sK(`${t}.500`,`${t}.200`)(e),s=`linear-gradient(\n to right,\n transparent 0%,\n ${RK(r,a)} 50%,\n transparent 100%\n )`;return{...!n&&i&&o,...n?{bgImage:s}:{bgColor:a}}},QW={lineHeight:"1",fontSize:"0.25em",fontWeight:"bold",color:"white"},eG=e=>({bg:sK("gray.100","whiteAlpha.300")(e)}),tG=e=>({transitionProperty:"common",transitionDuration:"slow",...JW(e)}),rG=XW((e=>({label:QW,filledTrack:tG(e),track:eG(e)}))),nG=YW({sizes:{xs:XW({track:{h:"1"}}),sm:XW({track:{h:"2"}}),md:XW({track:{h:"3"}}),lg:XW({track:{h:"4"}})},baseStyle:rG,defaultProps:{size:"md",colorScheme:"blue"}});function iG(e,...t){return(e=>"function"===typeof e)(e)?e(...t):e}var oG,aG,sG,cG,lG,uG,dG,hG,fG,{definePartsStyle:pG,defineMultiStyleConfig:mG}=lt(gq.keys),gG=Ee("checkbox-size"),vG=e=>{const{colorScheme:t}=e;return{w:gG.reference,h:gG.reference,transitionProperty:"box-shadow",transitionDuration:"normal",border:"2px solid",borderRadius:"sm",borderColor:"inherit",color:"white",_checked:{bg:sK(`${t}.500`,`${t}.200`)(e),borderColor:sK(`${t}.500`,`${t}.200`)(e),color:sK("white","gray.900")(e),_hover:{bg:sK(`${t}.600`,`${t}.300`)(e),borderColor:sK(`${t}.600`,`${t}.300`)(e)},_disabled:{borderColor:sK("gray.200","transparent")(e),bg:sK("gray.200","whiteAlpha.300")(e),color:sK("gray.500","whiteAlpha.500")(e)}},_indeterminate:{bg:sK(`${t}.500`,`${t}.200`)(e),borderColor:sK(`${t}.500`,`${t}.200`)(e),color:sK("white","gray.900")(e)},_disabled:{bg:sK("gray.100","whiteAlpha.100")(e),borderColor:sK("gray.100","transparent")(e)},_focusVisible:{boxShadow:"outline"},_invalid:{borderColor:sK("red.500","red.300")(e)}}},yG={_disabled:{cursor:"not-allowed"}},bG={userSelect:"none",_disabled:{opacity:.4}},wG={transitionProperty:"transform",transitionDuration:"normal"},xG=mG({baseStyle:pG((e=>({icon:wG,container:yG,control:iG(vG,e),label:bG}))),sizes:{sm:pG({control:{[gG.variable]:"sizes.3"},label:{fontSize:"sm"},icon:{fontSize:"3xs"}}),md:pG({control:{[gG.variable]:"sizes.4"},label:{fontSize:"md"},icon:{fontSize:"2xs"}}),lg:pG({control:{[gG.variable]:"sizes.5"},label:{fontSize:"lg"},icon:{fontSize:"2xs"}})},defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:_G,definePartsStyle:kG}=lt(Oq.keys),SG=e=>{var t;const r=null==(t=iG(xG.baseStyle,e))?void 0:t.control;return{...r,borderRadius:"full",_checked:{...null==r?void 0:r._checked,_before:{content:'""',display:"inline-block",pos:"relative",w:"50%",h:"50%",borderRadius:"50%",bg:"currentColor"}}}},EG=kG((e=>{var t,r,n,i;return{label:null==(r=(t=xG).baseStyle)?void 0:r.call(t,e).label,container:null==(i=(n=xG).baseStyle)?void 0:i.call(n,e).container,control:SG(e)}})),AG=_G({baseStyle:EG,sizes:{md:kG({control:{w:"4",h:"4"},label:{fontSize:"md"}}),lg:kG({control:{w:"5",h:"5"},label:{fontSize:"lg"}}),sm:kG({control:{width:"3",height:"3"},label:{fontSize:"sm"}})},defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:PG,definePartsStyle:OG}=lt(Tq.keys),TG=Ee("select-bg"),CG={paddingInlineEnd:"8"},jG=PG({baseStyle:OG({field:{...null==(oG=$W.baseStyle)?void 0:oG.field,appearance:"none",paddingBottom:"1px",lineHeight:"normal",bg:TG.reference,[TG.variable]:"colors.white",_dark:{[TG.variable]:"colors.gray.700"},"> option, > optgroup":{bg:TG.reference}},icon:{width:"6",height:"100%",insetEnd:"2",position:"relative",color:"currentColor",fontSize:"xl",_disabled:{opacity:.5}}}),sizes:{lg:{...null==(aG=$W.sizes)?void 0:aG.lg,field:{...null==(sG=$W.sizes)?void 0:sG.lg.field,...CG}},md:{...null==(cG=$W.sizes)?void 0:cG.md,field:{...null==(lG=$W.sizes)?void 0:lG.md.field,...CG}},sm:{...null==(uG=$W.sizes)?void 0:uG.sm,field:{...null==(dG=$W.sizes)?void 0:dG.sm.field,...CG}},xs:{...null==(hG=$W.sizes)?void 0:hG.xs,field:{...null==(fG=$W.sizes)?void 0:fG.xs.field,...CG},icon:{insetEnd:"1"}}},variants:$W.variants,defaultProps:$W.defaultProps}),RG=Ee("skeleton-start-color"),IG=Ee("skeleton-end-color"),MG={baseStyle:{[RG.variable]:"colors.gray.100",[IG.variable]:"colors.gray.400",_dark:{[RG.variable]:"colors.gray.800",[IG.variable]:"colors.gray.600"},background:RG.reference,borderColor:IG.reference,opacity:.7,borderRadius:"sm"}},LG=Ee("skip-link-bg"),NG={baseStyle:{borderRadius:"md",fontWeight:"semibold",_focusVisible:{boxShadow:"outline",padding:"4",position:"fixed",top:"6",insetStart:"6",[LG.variable]:"colors.white",_dark:{[LG.variable]:"colors.gray.700"},bg:LG.reference}}},{defineMultiStyleConfig:DG,definePartsStyle:zG}=lt(Cq.keys),BG=Ee("slider-thumb-size"),FG=Ee("slider-track-size"),UG=Ee("slider-bg"),$G=e=>{const{orientation:t}=e;return{display:"inline-block",position:"relative",cursor:"pointer",_disabled:{opacity:.6,cursor:"default",pointerEvents:"none"},...cK({orientation:t,vertical:{h:"100%"},horizontal:{w:"100%"}})}},HG=e=>({...cK({orientation:e.orientation,horizontal:{h:FG.reference},vertical:{w:FG.reference}}),overflow:"hidden",borderRadius:"sm",[UG.variable]:"colors.gray.200",_dark:{[UG.variable]:"colors.whiteAlpha.200"},_disabled:{[UG.variable]:"colors.gray.300",_dark:{[UG.variable]:"colors.whiteAlpha.300"}},bg:UG.reference}),VG=e=>{const{orientation:t}=e;return{...cK({orientation:t,vertical:{left:"50%",transform:"translateX(-50%)",_active:{transform:"translateX(-50%) scale(1.15)"}},horizontal:{top:"50%",transform:"translateY(-50%)",_active:{transform:"translateY(-50%) scale(1.15)"}}}),w:BG.reference,h:BG.reference,display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",outline:0,zIndex:1,borderRadius:"full",bg:"white",boxShadow:"base",border:"1px solid",borderColor:"transparent",transitionProperty:"transform",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{bg:"gray.300"}}},qG=e=>{const{colorScheme:t}=e;return{width:"inherit",height:"inherit",[UG.variable]:`colors.${t}.500`,_dark:{[UG.variable]:`colors.${t}.200`},bg:UG.reference}},KG=DG({baseStyle:zG((e=>({container:$G(e),track:HG(e),thumb:VG(e),filledTrack:qG(e)}))),sizes:{lg:zG({container:{[BG.variable]:"sizes.4",[FG.variable]:"sizes.1"}}),md:zG({container:{[BG.variable]:"sizes.3.5",[FG.variable]:"sizes.1"}}),sm:zG({container:{[BG.variable]:"sizes.2.5",[FG.variable]:"sizes.0.5"}})},defaultProps:{size:"md",colorScheme:"blue"}}),WG=Fq("spinner-size"),GG={baseStyle:{width:[WG.reference],height:[WG.reference]},sizes:{xs:{[WG.variable]:"sizes.3"},sm:{[WG.variable]:"sizes.4"},md:{[WG.variable]:"sizes.6"},lg:{[WG.variable]:"sizes.8"},xl:{[WG.variable]:"sizes.12"}},defaultProps:{size:"md"}},{defineMultiStyleConfig:ZG,definePartsStyle:YG}=lt(jq.keys),XG=ZG({baseStyle:YG({container:{},label:{fontWeight:"medium"},helpText:{opacity:.8,marginBottom:"2"},number:{verticalAlign:"baseline",fontWeight:"semibold"},icon:{marginEnd:1,w:"3.5",h:"3.5",verticalAlign:"middle"}}),sizes:{md:YG({label:{fontSize:"sm"},helpText:{fontSize:"sm"},number:{fontSize:"2xl"}})},defaultProps:{size:"md"}}),JG=Ee("kbd-bg"),QG={baseStyle:{[JG.variable]:"colors.gray.100",_dark:{[JG.variable]:"colors.whiteAlpha.100"},bg:JG.reference,borderRadius:"md",borderWidth:"1px",borderBottomWidth:"3px",fontSize:"0.8em",fontWeight:"bold",lineHeight:"normal",px:"0.4em",whiteSpace:"nowrap"}},eZ={baseStyle:{transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",cursor:"pointer",textDecoration:"none",outline:"none",color:"inherit",_hover:{textDecoration:"underline"},_focusVisible:{boxShadow:"outline"}}},{defineMultiStyleConfig:tZ,definePartsStyle:rZ}=lt(_q.keys),nZ=tZ({baseStyle:rZ({icon:{marginEnd:"2",display:"inline",verticalAlign:"text-bottom"}})}),{defineMultiStyleConfig:iZ,definePartsStyle:oZ}=lt(kq.keys),aZ=Ee("menu-bg"),sZ=Ee("menu-shadow"),cZ=iZ({baseStyle:oZ({button:{transitionProperty:"common",transitionDuration:"normal"},list:{[aZ.variable]:"#fff",[sZ.variable]:"shadows.sm",_dark:{[aZ.variable]:"colors.gray.700",[sZ.variable]:"shadows.dark-lg"},color:"inherit",minW:"3xs",py:"2",zIndex:1,borderRadius:"md",borderWidth:"1px",bg:aZ.reference,boxShadow:sZ.reference},item:{py:"1.5",px:"3",transitionProperty:"background",transitionDuration:"ultra-fast",transitionTimingFunction:"ease-in",_focus:{[aZ.variable]:"colors.gray.100",_dark:{[aZ.variable]:"colors.whiteAlpha.100"}},_active:{[aZ.variable]:"colors.gray.200",_dark:{[aZ.variable]:"colors.whiteAlpha.200"}},_expanded:{[aZ.variable]:"colors.gray.100",_dark:{[aZ.variable]:"colors.whiteAlpha.100"}},_disabled:{opacity:.4,cursor:"not-allowed"},bg:aZ.reference},groupTitle:{mx:4,my:2,fontWeight:"semibold",fontSize:"sm"},icon:{display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0},command:{opacity:.6},divider:{border:0,borderBottom:"1px solid",borderColor:"inherit",my:"2",opacity:.6}})}),{defineMultiStyleConfig:lZ,definePartsStyle:uZ}=lt(Sq.keys),dZ=Ee("modal-bg"),hZ=Ee("modal-shadow"),fZ={bg:"blackAlpha.600",zIndex:"modal"},pZ=e=>{const{isCentered:t,scrollBehavior:r}=e;return{display:"flex",zIndex:"modal",justifyContent:"center",alignItems:t?"center":"flex-start",overflow:"inside"===r?"hidden":"auto",overscrollBehaviorY:"none"}},mZ=e=>{const{isCentered:t,scrollBehavior:r}=e;return{borderRadius:"md",color:"inherit",my:t?"auto":"16",mx:t?"auto":void 0,zIndex:"modal",maxH:"inside"===r?"calc(100% - 7.5rem)":void 0,[dZ.variable]:"colors.white",[hZ.variable]:"shadows.lg",_dark:{[dZ.variable]:"colors.gray.700",[hZ.variable]:"shadows.dark-lg"},bg:dZ.reference,boxShadow:hZ.reference}},gZ={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},vZ={position:"absolute",top:"2",insetEnd:"3"},yZ=e=>{const{scrollBehavior:t}=e;return{px:"6",py:"2",flex:"1",overflow:"inside"===t?"auto":void 0}},bZ={px:"6",py:"4"};function wZ(e){return uZ("full"===e?{dialog:{maxW:"100vw",minH:"$100vh",my:"0",borderRadius:"0"}}:{dialog:{maxW:e}})}var xZ=lZ({baseStyle:uZ((e=>({overlay:fZ,dialogContainer:iG(pZ,e),dialog:iG(mZ,e),header:gZ,closeButton:vZ,body:iG(yZ,e),footer:bZ}))),sizes:{xs:wZ("xs"),sm:wZ("sm"),md:wZ("md"),lg:wZ("lg"),xl:wZ("xl"),"2xl":wZ("2xl"),"3xl":wZ("3xl"),"4xl":wZ("4xl"),"5xl":wZ("5xl"),"6xl":wZ("6xl"),full:wZ("full")},defaultProps:{size:"md"}}),{defineMultiStyleConfig:_Z,definePartsStyle:kZ}=lt(Eq.keys),SZ=Fq("number-input-stepper-width"),EZ=Fq("number-input-input-padding"),AZ=Zq(SZ).add("0.5rem").toString(),PZ=Fq("number-input-bg"),OZ=Fq("number-input-color"),TZ=Fq("number-input-border-color"),CZ={[SZ.variable]:"sizes.6",[EZ.variable]:AZ},jZ=e=>{var t,r;return null!=(r=null==(t=iG($W.baseStyle,e))?void 0:t.field)?r:{}},RZ={width:SZ.reference},IZ={borderStart:"1px solid",borderStartColor:TZ.reference,color:OZ.reference,bg:PZ.reference,[OZ.variable]:"colors.chakra-body-text",[TZ.variable]:"colors.chakra-border-color",_dark:{[OZ.variable]:"colors.whiteAlpha.800",[TZ.variable]:"colors.whiteAlpha.300"},_active:{[PZ.variable]:"colors.gray.200",_dark:{[PZ.variable]:"colors.whiteAlpha.300"}},_disabled:{opacity:.4,cursor:"not-allowed"}},MZ=kZ((e=>{var t;return{root:CZ,field:null!=(t=iG(jZ,e))?t:{},stepperGroup:RZ,stepper:IZ}}));function LZ(e){var t,r,n;const i=null==(t=$W.sizes)?void 0:t[e],o={lg:"md",md:"md",sm:"sm",xs:"sm"},a=null!=(n=null==(r=i.field)?void 0:r.fontSize)?n:"md",s=JV.fontSizes[a];return kZ({field:{...i.field,paddingInlineEnd:EZ.reference,verticalAlign:"top"},stepper:{fontSize:Zq(s).multiply(.75).toString(),_first:{borderTopEndRadius:o[e]},_last:{borderBottomEndRadius:o[e],mt:"-1px",borderTopWidth:1}}})}var NZ,DZ,zZ,BZ=_Z({baseStyle:MZ,sizes:{xs:LZ("xs"),sm:LZ("sm"),md:LZ("md"),lg:LZ("lg")},variants:$W.variants,defaultProps:$W.defaultProps}),FZ={...null==(NZ=$W.baseStyle)?void 0:NZ.field,textAlign:"center"},UZ={lg:{fontSize:"lg",w:12,h:12,borderRadius:"md"},md:{fontSize:"md",w:10,h:10,borderRadius:"md"},sm:{fontSize:"sm",w:8,h:8,borderRadius:"sm"},xs:{fontSize:"xs",w:6,h:6,borderRadius:"sm"}},$Z={outline:e=>{var t,r,n;return null!=(n=null==(r=iG(null==(t=$W.variants)?void 0:t.outline,e))?void 0:r.field)?n:{}},flushed:e=>{var t,r,n;return null!=(n=null==(r=iG(null==(t=$W.variants)?void 0:t.flushed,e))?void 0:r.field)?n:{}},filled:e=>{var t,r,n;return null!=(n=null==(r=iG(null==(t=$W.variants)?void 0:t.filled,e))?void 0:r.field)?n:{}},unstyled:null!=(zZ=null==(DZ=$W.variants)?void 0:DZ.unstyled.field)?zZ:{}},HZ={baseStyle:FZ,sizes:UZ,variants:$Z,defaultProps:$W.defaultProps},{defineMultiStyleConfig:VZ,definePartsStyle:qZ}=lt(Aq.keys),KZ=Fq("popper-bg"),WZ=Fq("popper-arrow-bg"),GZ=Fq("popper-arrow-shadow-color"),ZZ=VZ({baseStyle:qZ({popper:{zIndex:10},content:{[KZ.variable]:"colors.white",bg:KZ.reference,[WZ.variable]:KZ.reference,[GZ.variable]:"colors.gray.200",_dark:{[KZ.variable]:"colors.gray.700",[GZ.variable]:"colors.whiteAlpha.300"},width:"xs",border:"1px solid",borderColor:"inherit",borderRadius:"md",boxShadow:"sm",zIndex:"inherit",_focusVisible:{outline:0,boxShadow:"outline"}},header:{px:3,py:2,borderBottomWidth:"1px"},body:{px:3,py:2},footer:{px:3,py:2,borderTopWidth:"1px"},closeButton:{position:"absolute",borderRadius:"md",top:1,insetEnd:2,padding:2}})}),{definePartsStyle:YZ,defineMultiStyleConfig:XZ}=lt(vq.keys),JZ=Ee("drawer-bg"),QZ=Ee("drawer-box-shadow");function eY(e){return YZ("full"===e?{dialog:{maxW:"100vw",h:"100vh"}}:{dialog:{maxW:e}})}var tY={bg:"blackAlpha.600",zIndex:"modal"},rY={display:"flex",zIndex:"modal",justifyContent:"center"},nY=e=>{const{isFullHeight:t}=e;return{...t&&{height:"100vh"},zIndex:"modal",maxH:"100vh",color:"inherit",[JZ.variable]:"colors.white",[QZ.variable]:"shadows.lg",_dark:{[JZ.variable]:"colors.gray.700",[QZ.variable]:"shadows.dark-lg"},bg:JZ.reference,boxShadow:QZ.reference}},iY={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},oY={position:"absolute",top:"2",insetEnd:"3"},aY={px:"6",py:"2",flex:"1",overflow:"auto"},sY={px:"6",py:"4"},cY=XZ({baseStyle:YZ((e=>({overlay:tY,dialogContainer:rY,dialog:iG(nY,e),header:iY,closeButton:oY,body:aY,footer:sY}))),sizes:{xs:eY("xs"),sm:eY("md"),md:eY("lg"),lg:eY("2xl"),xl:eY("4xl"),full:eY("full")},defaultProps:{size:"xs"}}),{definePartsStyle:lY,defineMultiStyleConfig:uY}=lt(yq.keys),dY=uY({baseStyle:lY({preview:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal"},input:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}},textarea:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}}})}),{definePartsStyle:hY,defineMultiStyleConfig:fY}=lt(bq.keys),pY=Ee("form-control-color"),mY=fY({baseStyle:hY({container:{width:"100%",position:"relative"},requiredIndicator:{marginStart:"1",[pY.variable]:"colors.red.500",_dark:{[pY.variable]:"colors.red.300"},color:pY.reference},helperText:{mt:"2",[pY.variable]:"colors.gray.600",_dark:{[pY.variable]:"colors.whiteAlpha.600"},color:pY.reference,lineHeight:"normal",fontSize:"sm"}})}),{definePartsStyle:gY,defineMultiStyleConfig:vY}=lt(wq.keys),yY=Ee("form-error-color"),bY=vY({baseStyle:gY({text:{[yY.variable]:"colors.red.500",_dark:{[yY.variable]:"colors.red.300"},color:yY.reference,mt:"2",fontSize:"sm",lineHeight:"normal"},icon:{marginEnd:"0.5em",[yY.variable]:"colors.red.500",_dark:{[yY.variable]:"colors.red.300"},color:yY.reference}})}),wY={baseStyle:{fontSize:"md",marginEnd:"3",mb:"2",fontWeight:"medium",transitionProperty:"common",transitionDuration:"normal",opacity:1,_disabled:{opacity:.4}}},xY={baseStyle:{fontFamily:"heading",fontWeight:"bold"},sizes:{"4xl":{fontSize:["6xl",null,"7xl"],lineHeight:1},"3xl":{fontSize:["5xl",null,"6xl"],lineHeight:1},"2xl":{fontSize:["4xl",null,"5xl"],lineHeight:[1.2,null,1]},xl:{fontSize:["3xl",null,"4xl"],lineHeight:[1.33,null,1.2]},lg:{fontSize:["2xl",null,"3xl"],lineHeight:[1.33,null,1.2]},md:{fontSize:"xl",lineHeight:1.2},sm:{fontSize:"md",lineHeight:1.2},xs:{fontSize:"sm",lineHeight:1.2}},defaultProps:{size:"xl"}},{defineMultiStyleConfig:_Y,definePartsStyle:kY}=lt(mq.keys),SY=Ee("breadcrumb-link-decor"),EY=_Y({baseStyle:kY({link:{transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",outline:"none",color:"inherit",textDecoration:SY.reference,[SY.variable]:"none","&:not([aria-current=page])":{cursor:"pointer",_hover:{[SY.variable]:"underline"},_focusVisible:{boxShadow:"outline"}}}})}),AY=e=>{const{colorScheme:t,theme:r}=e;if("gray"===t)return{color:sK("gray.800","whiteAlpha.900")(e),_hover:{bg:sK("gray.100","whiteAlpha.200")(e)},_active:{bg:sK("gray.200","whiteAlpha.300")(e)}};const n=MK(`${t}.200`,.12)(r),i=MK(`${t}.200`,.24)(r);return{color:sK(`${t}.600`,`${t}.200`)(e),bg:"transparent",_hover:{bg:sK(`${t}.50`,n)(e)},_active:{bg:sK(`${t}.100`,i)(e)}}},PY=e=>{const{colorScheme:t}=e,r=sK("gray.200","whiteAlpha.300")(e);return{border:"1px solid",borderColor:"gray"===t?r:"currentColor",".chakra-button__group[data-attached][data-orientation=horizontal] > &:not(:last-of-type)":{marginEnd:"-1px"},".chakra-button__group[data-attached][data-orientation=vertical] > &:not(:last-of-type)":{marginBottom:"-1px"},...iG(AY,e)}},OY={yellow:{bg:"yellow.400",color:"black",hoverBg:"yellow.500",activeBg:"yellow.600"},cyan:{bg:"cyan.400",color:"black",hoverBg:"cyan.500",activeBg:"cyan.600"}},TY=e=>{var t;const{colorScheme:r}=e;if("gray"===r){const t=sK("gray.100","whiteAlpha.200")(e);return{bg:t,color:sK("gray.800","whiteAlpha.900")(e),_hover:{bg:sK("gray.200","whiteAlpha.300")(e),_disabled:{bg:t}},_active:{bg:sK("gray.300","whiteAlpha.400")(e)}}}const{bg:n=`${r}.500`,color:i="white",hoverBg:o=`${r}.600`,activeBg:a=`${r}.700`}=null!=(t=OY[r])?t:{},s=sK(n,`${r}.200`)(e);return{bg:s,color:sK(i,"gray.800")(e),_hover:{bg:sK(o,`${r}.300`)(e),_disabled:{bg:s}},_active:{bg:sK(a,`${r}.400`)(e)}}},CY=e=>{const{colorScheme:t}=e;return{padding:0,height:"auto",lineHeight:"normal",verticalAlign:"baseline",color:sK(`${t}.500`,`${t}.200`)(e),_hover:{textDecoration:"underline",_disabled:{textDecoration:"none"}},_active:{color:sK(`${t}.700`,`${t}.500`)(e)}}},jY={baseStyle:{lineHeight:"1.2",borderRadius:"md",fontWeight:"semibold",transitionProperty:"common",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{_disabled:{bg:"initial"}}},variants:{ghost:AY,outline:PY,solid:TY,link:CY,unstyled:{bg:"none",color:"inherit",display:"inline",lineHeight:"inherit",m:"0",p:"0"}},sizes:{lg:{h:"12",minW:"12",fontSize:"lg",px:"6"},md:{h:"10",minW:"10",fontSize:"md",px:"4"},sm:{h:"8",minW:"8",fontSize:"sm",px:"3"},xs:{h:"6",minW:"6",fontSize:"xs",px:"2"}},defaultProps:{variant:"solid",size:"md",colorScheme:"gray"}},{definePartsStyle:RY,defineMultiStyleConfig:IY}=lt(Nq.keys),MY=Ee("card-bg"),LY=Ee("card-padding"),NY=Ee("card-shadow"),DY=Ee("card-radius"),zY=Ee("card-border-width","0"),BY=Ee("card-border-color"),FY=RY({container:{[MY.variable]:"colors.chakra-body-bg",backgroundColor:MY.reference,boxShadow:NY.reference,borderRadius:DY.reference,color:"chakra-body-text",borderWidth:zY.reference,borderColor:BY.reference},body:{padding:LY.reference,flex:"1 1 0%"},header:{padding:LY.reference},footer:{padding:LY.reference}}),UY={sm:RY({container:{[DY.variable]:"radii.base",[LY.variable]:"space.3"}}),md:RY({container:{[DY.variable]:"radii.md",[LY.variable]:"space.5"}}),lg:RY({container:{[DY.variable]:"radii.xl",[LY.variable]:"space.7"}})},$Y=IY({baseStyle:FY,variants:{elevated:RY({container:{[NY.variable]:"shadows.base",_dark:{[MY.variable]:"colors.gray.700"}}}),outline:RY({container:{[zY.variable]:"1px",[BY.variable]:"colors.chakra-border-color"}}),filled:RY({container:{[MY.variable]:"colors.chakra-subtle-bg"}}),unstyled:{body:{[LY.variable]:0},header:{[LY.variable]:0},footer:{[LY.variable]:0}}},sizes:UY,defaultProps:{variant:"elevated",size:"md"}}),HY=Fq("close-button-size"),VY=Fq("close-button-bg"),qY={baseStyle:{w:[HY.reference],h:[HY.reference],borderRadius:"md",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{[VY.variable]:"colors.blackAlpha.100",_dark:{[VY.variable]:"colors.whiteAlpha.100"}},_active:{[VY.variable]:"colors.blackAlpha.200",_dark:{[VY.variable]:"colors.whiteAlpha.200"}},_focusVisible:{boxShadow:"outline"},bg:VY.reference},sizes:{lg:{[HY.variable]:"sizes.10",fontSize:"md"},md:{[HY.variable]:"sizes.8",fontSize:"xs"},sm:{[HY.variable]:"sizes.6",fontSize:"2xs"}},defaultProps:{size:"md"}},{variants:KY,defaultProps:WY}=iW,GY={baseStyle:{fontFamily:"mono",fontSize:"sm",px:"0.2em",borderRadius:"sm",bg:eW.bg.reference,color:eW.color.reference,boxShadow:eW.shadow.reference},variants:KY,defaultProps:WY},ZY={baseStyle:{w:"100%",mx:"auto",maxW:"prose",px:"4"}},YY={baseStyle:{opacity:.6,borderColor:"inherit"},variants:{solid:{borderStyle:"solid"},dashed:{borderStyle:"dashed"}},defaultProps:{variant:"solid"}},{definePartsStyle:XY,defineMultiStyleConfig:JY}=lt(hq.keys),QY=JY({baseStyle:XY({container:{borderTopWidth:"1px",borderColor:"inherit",_last:{borderBottomWidth:"1px"}},button:{transitionProperty:"common",transitionDuration:"normal",fontSize:"md",_focusVisible:{boxShadow:"outline"},_hover:{bg:"blackAlpha.50"},_disabled:{opacity:.4,cursor:"not-allowed"},px:"4",py:"2"},panel:{pt:"2",px:"4",pb:"5"},icon:{fontSize:"1.25em"}})}),{definePartsStyle:eX,defineMultiStyleConfig:tX}=lt(fq.keys),rX=Ee("alert-fg"),nX=Ee("alert-bg"),iX=eX({container:{bg:nX.reference,px:"4",py:"3"},title:{fontWeight:"bold",lineHeight:"6",marginEnd:"2"},description:{lineHeight:"6"},icon:{color:rX.reference,flexShrink:0,marginEnd:"3",w:"5",h:"6"},spinner:{color:rX.reference,flexShrink:0,marginEnd:"3",w:"5",h:"5"}});function oX(e){const{theme:t,colorScheme:r}=e;return{light:`colors.${r}.100`,dark:MK(`${r}.200`,.16)(t)}}var aX=eX((e=>{const{colorScheme:t}=e,r=oX(e);return{container:{[rX.variable]:`colors.${t}.600`,[nX.variable]:r.light,_dark:{[rX.variable]:`colors.${t}.200`,[nX.variable]:r.dark}}}})),sX=eX((e=>{const{colorScheme:t}=e,r=oX(e);return{container:{[rX.variable]:`colors.${t}.600`,[nX.variable]:r.light,_dark:{[rX.variable]:`colors.${t}.200`,[nX.variable]:r.dark},paddingStart:"3",borderStartWidth:"4px",borderStartColor:rX.reference}}})),cX=eX((e=>{const{colorScheme:t}=e,r=oX(e);return{container:{[rX.variable]:`colors.${t}.600`,[nX.variable]:r.light,_dark:{[rX.variable]:`colors.${t}.200`,[nX.variable]:r.dark},pt:"2",borderTopWidth:"4px",borderTopColor:rX.reference}}})),lX=eX((e=>{const{colorScheme:t}=e;return{container:{[rX.variable]:"colors.white",[nX.variable]:`colors.${t}.600`,_dark:{[rX.variable]:"colors.gray.900",[nX.variable]:`colors.${t}.200`},color:rX.reference}}})),uX=tX({baseStyle:iX,variants:{subtle:aX,"left-accent":sX,"top-accent":cX,solid:lX},defaultProps:{variant:"subtle",colorScheme:"blue"}}),{definePartsStyle:dX,defineMultiStyleConfig:hX}=lt(pq.keys),fX=Ee("avatar-border-color"),pX=Ee("avatar-bg"),mX=Ee("avatar-font-size"),gX=Ee("avatar-size"),vX={borderRadius:"full",border:"0.2em solid",borderColor:fX.reference,[fX.variable]:"white",_dark:{[fX.variable]:"colors.gray.800"}},yX={bg:pX.reference,fontSize:mX.reference,width:gX.reference,height:gX.reference,lineHeight:"1",[pX.variable]:"colors.gray.200",_dark:{[pX.variable]:"colors.whiteAlpha.400"}},bX=e=>{const{name:t,theme:r}=e,n=t?NK({string:t}):"colors.gray.400",i=(e=>t=>"dark"===IK(e)(t))(n)(r);let o="white";return i||(o="gray.800"),{bg:pX.reference,fontSize:mX.reference,color:o,borderColor:fX.reference,verticalAlign:"top",width:gX.reference,height:gX.reference,"&:not([data-loaded])":{[pX.variable]:n},[fX.variable]:"colors.white",_dark:{[fX.variable]:"colors.gray.800"}}},wX={fontSize:mX.reference,lineHeight:"1"};function xX(e){const t="100%"!==e?eq[e]:void 0;return dX({container:{[gX.variable]:null!=t?t:e,[mX.variable]:`calc(${null!=t?t:e} / 2.5)`},excessLabel:{[gX.variable]:null!=t?t:e,[mX.variable]:`calc(${null!=t?t:e} / 2.5)`}})}var _X={Accordion:QY,Alert:uX,Avatar:hX({baseStyle:dX((e=>({badge:iG(vX,e),excessLabel:iG(yX,e),container:iG(bX,e),label:wX}))),sizes:{"2xs":xX(4),xs:xX(6),sm:xX(8),md:xX(12),lg:xX(16),xl:xX(24),"2xl":xX(32),full:xX("100%")},defaultProps:{size:"md"}}),Badge:iW,Breadcrumb:EY,Button:jY,Checkbox:xG,CloseButton:qY,Code:GY,Container:ZY,Divider:YY,Drawer:cY,Editable:dY,Form:mY,FormError:bY,FormLabel:wY,Heading:xY,Input:$W,Kbd:QG,Link:eZ,List:nZ,Menu:cZ,Modal:xZ,NumberInput:BZ,PinInput:HZ,Popover:ZZ,Progress:nG,Radio:AG,Select:jG,Skeleton:MG,SkipLink:NG,Slider:KG,Spinner:GG,Stat:XG,Switch:aK,Table:mK,Tabs:QK,Tag:vW,Textarea:qW,Tooltip:ZW,Card:$Y,Stepper:uq},kX={colors:{"chakra-body-text":{_light:"gray.800",_dark:"whiteAlpha.900"},"chakra-body-bg":{_light:"white",_dark:"gray.800"},"chakra-border-color":{_light:"gray.200",_dark:"whiteAlpha.300"},"chakra-inverse-text":{_light:"white",_dark:"gray.800"},"chakra-subtle-bg":{_light:"gray.100",_dark:"gray.700"},"chakra-subtle-text":{_light:"gray.600",_dark:"gray.400"},"chakra-placeholder-color":{_light:"gray.500",_dark:"whiteAlpha.400"}}},SX={global:{body:{fontFamily:"body",color:"chakra-body-text",bg:"chakra-body-bg",transitionProperty:"background-color",transitionDuration:"normal",lineHeight:"base"},"*::placeholder":{color:"chakra-placeholder-color"},"*, *::before, &::after":{borderColor:"chakra-border-color"}}},EX={useSystemColorMode:!1,initialColorMode:"light",cssVarPrefix:"chakra"},AX={semanticTokens:kX,direction:"ltr",...tq,components:_X,styles:SX,config:EX},PX={semanticTokens:kX,direction:"ltr",components:{},...tq,styles:SX,config:EX},OX=(e,t)=>e.find((e=>e.id===t));function TX(e,t){const r=CX(e,t);return{position:r,index:r?e[r].findIndex((e=>e.id===t)):-1}}function CX(e,t){for(const[r,n]of Object.entries(e))if(OX(n,t))return r}function jX(e){return{position:"fixed",zIndex:"var(--toast-z-index, 5500)",pointerEvents:"none",display:"flex",flexDirection:"column",margin:"top"===e||"bottom"===e?"0 auto":void 0,top:e.includes("top")?"env(safe-area-inset-top, 0px)":void 0,bottom:e.includes("bottom")?"env(safe-area-inset-bottom, 0px)":void 0,right:e.includes("left")?void 0:"env(safe-area-inset-right, 0px)",left:e.includes("right")?void 0:"env(safe-area-inset-left, 0px)"}}var RX={initial:e=>{const{position:t}=e,r=["top","bottom"].includes(t)?"y":"x";let n=["top-right","bottom-right"].includes(t)?1:-1;return"bottom"===t&&(n=1),{opacity:0,[r]:24*n}},animate:{opacity:1,y:0,x:0,scale:1,transition:{duration:.4,ease:[.4,0,.2,1]}},exit:{opacity:0,scale:.85,transition:{duration:.2,ease:[.4,0,1,1]}}},IX=(0,i.memo)((e=>{const{id:t,message:r,onCloseComplete:n,onRequestRemove:o,requestClose:a=!1,position:s="bottom",duration:c=5e3,containerStyle:l,motionVariants:u=RX,toastSpacing:d="0.5rem"}=e,[h,f]=(0,i.useState)(c),p=Ju();$m((()=>{p||null==n||n()}),[p]),$m((()=>{f(c)}),[c]);const m=()=>{p&&o()};(0,i.useEffect)((()=>{p&&a&&o()}),[p,a,o]),function(e,t){const r=Hm(e);(0,i.useEffect)((()=>{if(null==t)return;let e=null;return e=window.setTimeout((()=>{r()}),t),()=>{e&&window.clearTimeout(e)}}),[t,r])}(m,h);const g=(0,i.useMemo)((()=>({pointerEvents:"auto",maxWidth:560,minWidth:300,margin:d,...l})),[l,d]),v=(0,i.useMemo)((()=>function(e){let t="center";return e.includes("right")&&(t="flex-end"),e.includes("left")&&(t="flex-start"),{display:"flex",flexDirection:"column",alignItems:t}}(s)),[s]);return(0,xn.jsx)(bh.div,{layout:!0,className:"chakra-toast",variants:u,initial:"initial",animate:"animate",exit:"exit",onHoverStart:()=>f(null),onHoverEnd:()=>f(c),custom:{position:s},style:v,children:(0,xn.jsx)(bn.div,{role:"status","aria-atomic":"true",className:"chakra-toast__inner",__css:g,children:w(r,{id:t,onClose:m})})})}));function MX(e,t){var r;const n=null!=e?e:"bottom",i={"top-start":{ltr:"top-left",rtl:"top-right"},"top-end":{ltr:"top-right",rtl:"top-left"},"bottom-start":{ltr:"bottom-left",rtl:"bottom-right"},"bottom-end":{ltr:"bottom-right",rtl:"bottom-left"}}[n];return null!=(r=null==i?void 0:i[t])?r:n}function LX(e){return(0,xn.jsx)(wm,{viewBox:"0 0 24 24",...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})}IX.displayName="ToastComponent";var[NX,DX]=Rn({name:"AlertContext",hookName:"useAlertContext",providerName:""}),[zX,BX]=Rn({name:"AlertStylesContext",hookName:"useAlertStyles",providerName:""}),FX={info:{icon:function(e){return(0,xn.jsx)(wm,{viewBox:"0 0 24 24",...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.013,12.013,0,0,0,12,0Zm.25,5a1.5,1.5,0,1,1-1.5,1.5A1.5,1.5,0,0,1,12.25,5ZM14.5,18.5h-4a1,1,0,0,1,0-2h.75a.25.25,0,0,0,.25-.25v-4.5a.25.25,0,0,0-.25-.25H10.5a1,1,0,0,1,0-2h1a2,2,0,0,1,2,2v4.75a.25.25,0,0,0,.25.25h.75a1,1,0,1,1,0,2Z"})})},colorScheme:"blue"},warning:{icon:LX,colorScheme:"orange"},success:{icon:function(e){return(0,xn.jsx)(wm,{viewBox:"0 0 24 24",...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.014,12.014,0,0,0,12,0Zm6.927,8.2-6.845,9.289a1.011,1.011,0,0,1-1.43.188L5.764,13.769a1,1,0,1,1,1.25-1.562l4.076,3.261,6.227-8.451A1,1,0,1,1,18.927,8.2Z"})})},colorScheme:"green"},error:{icon:LX,colorScheme:"red"},loading:{icon:Wn,colorScheme:"blue"}};var UX=wn((function(e,t){var r;const{status:n="info",addRole:i=!0,...o}=ht(e),a=null!=(r=e.colorScheme)?r:function(e){return FX[e].colorScheme}(n),s=qn("Alert",{...e,colorScheme:a}),c={width:"100%",display:"flex",alignItems:"center",position:"relative",overflow:"hidden",...s.container};return(0,xn.jsx)(NX,{value:{status:n},children:(0,xn.jsx)(zX,{value:s,children:(0,xn.jsx)(bn.div,{"data-status":n,role:i?"alert":void 0,ref:t,...o,className:v("chakra-alert",e.className),__css:c})})})}));function $X(e){const{status:t}=DX(),r=function(e){return FX[e].icon}(t),n=BX(),i="loading"===t?n.spinner:n.icon;return(0,xn.jsx)(bn.span,{display:"inherit","data-status":t,...e,className:v("chakra-alert__icon",e.className),__css:i,children:e.children||(0,xn.jsx)(r,{h:"100%",w:"100%"})})}UX.displayName="Alert",$X.displayName="AlertIcon";var HX=wn((function(e,t){const r=BX(),{status:n}=DX();return(0,xn.jsx)(bn.div,{ref:t,"data-status":n,...e,className:v("chakra-alert__title",e.className),__css:r.title})}));HX.displayName="AlertTitle";var VX=wn((function(e,t){const r=BX(),{status:n}=DX(),i={display:"inline",...r.description};return(0,xn.jsx)(bn.div,{ref:t,"data-status":n,...e,className:v("chakra-alert__desc",e.className),__css:i})}));VX.displayName="AlertDescription";var qX=function(e){let t=e;const r=new Set,n=e=>{t=e(t),r.forEach((e=>e()))};return{getState:()=>t,subscribe:t=>(r.add(t),()=>{n((()=>e)),r.delete(t)}),removeToast:(e,t)=>{n((r=>({...r,[t]:r[t].filter((t=>t.id!=e))})))},notify:(e,t)=>{const r=function(e,t={}){var r,n;KX+=1;const i=null!=(r=t.id)?r:KX,o=null!=(n=t.position)?n:"bottom";return{id:i,message:e,position:o,duration:t.duration,onCloseComplete:t.onCloseComplete,onRequestRemove:()=>qX.removeToast(String(i),o),status:t.status,requestClose:!1,containerStyle:t.containerStyle}}(e,t),{position:i,id:o}=r;return n((e=>{var t,n;const o=i.includes("top")?[r,...null!=(t=e[i])?t:[]]:[...null!=(n=e[i])?n:[],r];return{...e,[i]:o}})),o},update:(e,t)=>{e&&n((r=>{const n={...r},{position:i,index:o}=TX(n,e);return i&&-1!==o&&(n[i][o]={...n[i][o],...t,message:GX(t)}),n}))},closeAll:({positions:e}={})=>{n((t=>(null!=e?e:["bottom","bottom-right","bottom-left","top","top-left","top-right"]).reduce(((e,r)=>(e[r]=t[r].map((e=>({...e,requestClose:!0}))),e)),{...t})))},close:e=>{n((t=>{const r=CX(t,e);return r?{...t,[r]:t[r].map((t=>t.id==e?{...t,requestClose:!0}:t))}:t}))},isActive:e=>Boolean(TX(qX.getState(),e).position)}}({top:[],"top-left":[],"top-right":[],"bottom-left":[],bottom:[],"bottom-right":[]});var KX=0;var WX=e=>{const{status:t,variant:r="solid",id:n,title:i,isClosable:o,onClose:a,description:s,colorScheme:c,icon:l}=e,u=n?{root:`toast-${n}`,title:`toast-${n}-title`,description:`toast-${n}-description`}:void 0;return(0,xn.jsxs)(UX,{addRole:!1,status:t,variant:r,id:null==u?void 0:u.root,alignItems:"start",borderRadius:"md",boxShadow:"lg",paddingEnd:8,textAlign:"start",width:"auto",colorScheme:c,children:[(0,xn.jsx)($X,{children:l}),(0,xn.jsxs)(bn.div,{flex:"1",maxWidth:"100%",children:[i&&(0,xn.jsx)(HX,{id:null==u?void 0:u.title,children:i}),s&&(0,xn.jsx)(VX,{id:null==u?void 0:u.description,display:"block",children:s})]}),o&&(0,xn.jsx)(_m,{size:"sm",onClick:a,position:"absolute",insetEnd:1,top:1})]})};function GX(e={}){const{render:t,toastComponent:r=WX}=e;return n=>"function"===typeof t?t({...n,...e}):(0,xn.jsx)(r,{...n,...e})}var[ZX,YX]=Rn({name:"ToastOptionsContext",strict:!1}),XX=e=>{const t=(0,i.useSyncExternalStore)(qX.subscribe,qX.getState,qX.getState),{motionVariants:r,component:n=IX,portalProps:o}=e,a=Object.keys(t).map((e=>{const i=t[e];return(0,xn.jsx)("div",{role:"region","aria-live":"polite","aria-label":`Notifications-${e}`,id:`chakra-toast-manager-${e}`,style:jX(e),children:(0,xn.jsx)(io,{initial:!1,children:i.map((e=>(0,xn.jsx)(n,{motionVariants:r,...e},e.id)))})},e)}));return(0,xn.jsx)(Ii,{...o,children:a})},JX=e=>function({children:t,theme:r=e,toastOptions:n,...i}){return(0,xn.jsxs)(HV,{theme:r,...i,children:[(0,xn.jsx)(ZX,{value:null==n?void 0:n.defaultOptions,children:t}),(0,xn.jsx)(XX,{...n})]})},QX=JX(AX),eJ=(JX(PX),new Set(["dark","light","system"]));function tJ(e={}){const{initialColorMode:t="light",type:r="localStorage",storageKey:n="chakra-ui-color-mode"}=e,i=function(e){let t=e;return eJ.has(t)||(t="light"),t}(t);return`!${"cookie"===r?`(function(){try{var a=function(o){var l="(prefers-color-scheme: dark)",v=window.matchMedia(l).matches?"dark":"light",e=o==="system"?v:o,d=document.documentElement,m=document.body,i="chakra-ui-light",n="chakra-ui-dark",s=e==="dark";return m.classList.add(s?n:i),m.classList.remove(s?i:n),d.style.colorScheme=e,d.dataset.theme=e,e},u=a,h="${i}",r="${n}",t=document.cookie.match(new RegExp("(^| )".concat(r,"=([^;]+)"))),c=t?t[2]:null;c?a(c):document.cookie="".concat(r,"=").concat(a(h),"; max-age=31536000; path=/")}catch(a){}})();\n `:`(function(){try{var a=function(c){var v="(prefers-color-scheme: dark)",h=window.matchMedia(v).matches?"dark":"light",r=c==="system"?h:c,o=document.documentElement,s=document.body,l="chakra-ui-light",d="chakra-ui-dark",i=r==="dark";return s.classList.add(i?d:l),s.classList.remove(i?l:d),o.style.colorScheme=r,o.dataset.theme=r,r},n=a,m="${i}",e="${n}",t=localStorage.getItem(e);t?a(t):localStorage.setItem(e,a(m))}catch(a){}})();\n `}`.trim()}function rJ(e={}){const{nonce:t}=e;return(0,xn.jsx)("script",{id:"chakra-script",nonce:t,dangerouslySetInnerHTML:{__html:tJ(e)}})}var nJ=["borders","breakpoints","colors","components","config","direction","fonts","fontSizes","fontWeights","letterSpacings","lineHeights","radii","shadows","sizes","space","styles","transition","zIndices"];function iJ(e){return"function"===typeof e}var oJ=e=>function(...t){let r=[...t],n=t[t.length-1];var i;return y(i=n)&&nJ.every((e=>Object.prototype.hasOwnProperty.call(i,e)))&&r.length>1?r=r.slice(0,r.length-1):n=e,function(...e){return t=>e.reduce(((e,t)=>t(e)),t)}(...r.map((e=>t=>iJ(e)?e(t):function(...e){return A({},...e,sJ)}(t,e))))(n)},aJ=oJ(AX);oJ(PX);function sJ(e,t,r,n){if((iJ(e)||iJ(t))&&Object.prototype.hasOwnProperty.call(n,r))return(...r)=>{const n=iJ(e)?e(...r):e,i=iJ(t)?t(...r):t;return A({},n,i,sJ)}}const cJ={borderRadius:"full",bg:Xv.gray[600],_disabled:{bg:Xv.gray[700],color:Xv.gray[450]},_hover:{color:Xv.green,bg:Xv.gray[500],_disabled:{bg:Xv.gray[700],color:Xv.gray[450]}}},lJ={sizes:{md:{height:"38px",fontSize:"14px",minWidth:"38px"},lg:{height:"48px",fontSize:"16px",minWidth:"48px"}},variants:{primary:{bg:Xv.blue,_disabled:{bg:Xv.gray[500],color:Xv.gray[450],opacity:1},_hover:{_disabled:{bg:Xv.gray[500],color:Xv.gray[450],opacity:1},bg:Xv.blueL}},secondary:{border:"1px solid",borderColor:Xv.green,_disabled:{color:Xv.gray[450],borderColor:Xv.gray[500],opacity:1},_hover:{bg:Xv.green,_disabled:{color:Xv.gray[450],borderColor:Xv.gray[500],opacity:1}}},tertiary:{bg:"transparent",border:"1px solid",borderColor:Xv.gray[500],_disabled:{color:Xv.gray[450],opacity:1},_hover:{border:"1px solid",borderColor:Xv.gray[600],bg:Xv.gray[600],_disabled:{borderColor:Xv.gray[500],color:Xv.gray[450],opacity:1}}},warning:{bg:Xv.orange,_disabled:{bg:Xv.gray[500],color:Xv.gray[450],opacity:1},_hover:{bg:Xv.orangeL,_disabled:{bg:Xv.gray[500],color:Xv.gray[450],opacity:1}}},circle_without_hover_color:{...cJ,_hover:{color:Xv.green,_disabled:{bg:Xv.gray[700],color:Xv.gray[450]}}},circle_without_color:cJ,circle:{...cJ,color:Xv.gray[300]},specialCTA:{color:Xv.greenL,_hover:{color:Xv.green}},CTAWithIcon:{padding:"8px 7px",color:Xv.gray[300],_hover:{color:Xv.green},_disabled:{color:Xv.gray[450]}},popover:{color:Xv.gray[300],stroke:Xv.gray[450],width:"100%",padding:0,height:"24px",justifyContent:"end",_hover:{color:Xv.green,stroke:Xv.green}}},defaultProps:{variant:"primary",size:"md"}},{definePartsStyle:uJ,defineMultiStyleConfig:dJ}=lt(gq.keys),hJ=dJ({baseStyle:uJ({icon:{color:"white"},control:{marginTop:"-20px",width:"20px",height:"20px",borderWidth:"2px",borderColor:Xv.gray[400],borderRadius:"2px",_checked:{borderColor:Xv.green,bg:Xv.green,color:Xv.white,_hover:{bg:Xv.green,borderColor:Xv.green}}}})}),{definePartsStyle:fJ,defineMultiStyleConfig:pJ}=lt(vq.keys),mJ=pJ({baseStyle:fJ((e=>({body:{padding:"18px 30px 30px 30px",borderLeft:`1px solid ${Xv.gray[800]}`},dialog:{bg:Xv.gray[900]}}))),sizes:{md:{dialog:{maxW:"594px"}}},defaultProps:{size:"md"}}),{definePartsStyle:gJ,defineMultiStyleConfig:vJ}=lt(_q.keys),yJ=vJ({variants:{onboardingNotice:gJ({item:{"&::marker":{color:Xv.gray[400]}}}),suggestions:gJ({item:{_hover:{background:Xv.gray[500]},background:Xv.gray[700],borderRadius:"4px",cursor:"pointer",height:"28px",listStyleType:"none"},container:{background:Xv.gray[700],border:"1px solid",borderColor:Xv.gray[500],borderRadius:"8px",listStyleType:"none",marginLeft:"0 !important",overflowX:"hidden",padding:"10px",position:"absolute",width:"100%",zIndex:2,maxHeight:"130px"}})}}),{definePartsStyle:bJ,defineMultiStyleConfig:wJ}=lt(Sq.keys),xJ={top:"10px",position:"absolute",color:Xv.gray[400],borderRadius:"18px"},_J={...xJ,insetEnd:"10px"},kJ={...xJ,insetStart:"10px"},SJ=wJ({baseStyle:bJ({dialog:{padding:"40px",_dark:{bg:Xv.gray[900],border:"1px solid",borderColor:Xv.gray[700],borderRadius:"8px"}},overlay:{_dark:{bg:"rgba(0, 0, 0, 0.85)"}},closeButton:_J,body:{padding:0},footer:{padding:"32px 0 0 0"},header:{padding:0}}),sizes:{md:{dialog:{maxW:"482px"}}}}),{definePartsStyle:EJ,defineMultiStyleConfig:AJ}=lt(Oq.keys),PJ=AJ({variants:{primary:EJ({control:{height:"16px",width:"16px",_dark:{borderColor:Xv.gray[400]},_checked:{backgroundColor:Xv.green,borderColor:Xv.green,border:"none",color:"white"}}})}}),{definePartsStyle:OJ,defineMultiStyleConfig:TJ}=lt(Mq.keys),CJ={xs:{fontSize:"12px"},sm:{fontSize:"14px"},md:{fontSize:"16px"},lg:{fontSize:"18px"},xl:{fontSize:"20px"},"2xl":{fontSize:"24px"},"3xl":{fontSize:"30px"},"4xl":{fontSize:"36px"},"5xl":{fontSize:"48px"},"6xl":{fontSize:"69px"}},jJ=aJ({components:{Tabs:TJ({baseStyle:OJ({tab:{_selected:{fontWeight:600,color:Xv.white,borderColor:Xv.orange,borderBottom:`2px solid ${Xv.orange}`}}})}),Text:{baseStyle:{fontWeight:"400",fontFamily:"Inter"},sizes:CJ},Heading:{baseStyle:{fontWeight:"600",fontFamily:"Inter"},sizes:CJ},Checkbox:hJ,Input:{sizes:{md:{field:{height:"48px"}}},defaultProps:{variant:"filled"},variants:{filled:{field:{bg:Xv.gray[800],border:"1px solid",borderColor:Xv.gray[500],_invalid:{borderColor:Xv.orange},_hover:{bg:Xv.gray[800]},_focusVisible:{bg:Xv.gray[800],borderColor:Xv.gray[450]}}}}},Button:lJ,FormLabel:{baseStyle:{fontWeight:"600",marginBottom:"12px",size:"md"},sizes:CJ},Modal:SJ,Drawer:mJ,Radio:PJ,List:yJ},config:{initialColorMode:"dark",useSystemColorMode:!1},colors:{umami:Xv,text:{dark:Xv.gray[400]}},styles:{global:{body:{bg:Xv.black,color:Xv.white,fontFamily:"Inter"}}}}),RJ=e=>(0,xn.jsxs)(QX,{theme:jJ,children:[(0,xn.jsx)(rJ,{initialColorMode:jJ.config.initialColorMode}),e.children]});function IJ(){return IJ=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0&&(t.hash=e.substr(r),e=e.substr(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substr(n),e=e.substr(0,n)),e&&(t.pathname=e)}return t}function $J(e,t,r,n){void 0===n&&(n={});let{window:i=document.defaultView,v5Compat:o=!1}=n,a=i.history,s=MJ.Pop,c=null,l=u();function u(){return(a.state||{idx:null}).idx}function d(){s=MJ.Pop;let e=u(),t=null==e?null:e-l;l=e,c&&c({action:s,location:f.location,delta:t})}function h(e){let t="null"!==i.location.origin?i.location.origin:i.location.href,r="string"===typeof e?e:FJ(e);return r=r.replace(/ $/,"%20"),NJ(t,"No window.location.(origin|href) available to create URL for href: "+r),new URL(r,t)}null==l&&(l=0,a.replaceState(IJ({},a.state,{idx:l}),""));let f={get action(){return s},get location(){return e(i,a)},listen(e){if(c)throw new Error("A history only accepts one active listener");return i.addEventListener(LJ,d),c=e,()=>{i.removeEventListener(LJ,d),c=null}},createHref:e=>t(i,e),createURL:h,encodeLocation(e){let t=h(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){s=MJ.Push;let n=BJ(f.location,e,t);r&&r(n,e),l=u()+1;let d=zJ(n,l),h=f.createHref(n);try{a.pushState(d,"",h)}catch(p){if(p instanceof DOMException&&"DataCloneError"===p.name)throw p;i.location.assign(h)}o&&c&&c({action:s,location:f.location,delta:1})},replace:function(e,t){s=MJ.Replace;let n=BJ(f.location,e,t);r&&r(n,e),l=u();let i=zJ(n,l),d=f.createHref(n);a.replaceState(i,"",d),o&&c&&c({action:s,location:f.location,delta:0})},go:e=>a.go(e)};return f}var HJ;!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(HJ||(HJ={}));new Set(["lazy","caseSensitive","path","id","index","children"]);function VJ(e,t,r){void 0===r&&(r="/");let n=iQ(("string"===typeof t?UJ(t):t).pathname||"/",r);if(null==n)return null;let i=qJ(e);!function(e){e.sort(((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){let r=e.length===t.length&&e.slice(0,-1).every(((e,r)=>e===t[r]));return r?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((e=>e.childrenIndex)),t.routesMeta.map((e=>e.childrenIndex)))))}(i);let o=null;for(let a=0;null==o&&a{let a={relativePath:void 0===o?e.path||"":o,caseSensitive:!0===e.caseSensitive,childrenIndex:i,route:e};a.relativePath.startsWith("/")&&(NJ(a.relativePath.startsWith(n),'Absolute route path "'+a.relativePath+'" nested under path "'+n+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),a.relativePath=a.relativePath.slice(n.length));let s=lQ([n,a.relativePath]),c=r.concat(a);e.children&&e.children.length>0&&(NJ(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+s+'".'),qJ(e.children,t,c,s)),(null!=e.path||e.index)&&t.push({path:s,score:eQ(s,e.index),routesMeta:c})};return e.forEach(((e,t)=>{var r;if(""!==e.path&&null!=(r=e.path)&&r.includes("?"))for(let n of KJ(e.path))i(e,t,n);else i(e,t)})),t}function KJ(e){let t=e.split("/");if(0===t.length)return[];let[r,...n]=t,i=r.endsWith("?"),o=r.replace(/\?$/,"");if(0===n.length)return i?[o,""]:[o];let a=KJ(n.join("/")),s=[];return s.push(...a.map((e=>""===e?o:[o,e].join("/")))),i&&s.push(...a),s.map((t=>e.startsWith("/")&&""===t?"/":t))}const WJ=/^:[\w-]+$/,GJ=3,ZJ=2,YJ=1,XJ=10,JJ=-2,QJ=e=>"*"===e;function eQ(e,t){let r=e.split("/"),n=r.length;return r.some(QJ)&&(n+=JJ),t&&(n+=ZJ),r.filter((e=>!QJ(e))).reduce(((e,t)=>e+(WJ.test(t)?GJ:""===t?YJ:XJ)),n)}function tQ(e,t){let{routesMeta:r}=e,n={},i="/",o=[];for(let a=0;a(n.push({paramName:t,isOptional:null!=r}),r?"/?([^\\/]+)?":"/([^\\/]+)")));e.endsWith("*")?(n.push({paramName:"*"}),i+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?i+="\\/*$":""!==e&&"/"!==e&&(i+="(?:(?=\\/|$))");let o=new RegExp(i,t?void 0:"i");return[o,n]}(e.path,e.caseSensitive,e.end),i=t.match(r);if(!i)return null;let o=i[0],a=o.replace(/(.)\/+$/,"$1"),s=i.slice(1),c=n.reduce(((e,t,r)=>{let{paramName:n,isOptional:i}=t;if("*"===n){let e=s[r]||"";a=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}const c=s[r];return e[n]=i&&!c?void 0:(c||"").replace(/%2F/g,"/"),e}),{});return{params:c,pathname:o,pathnameBase:a,pattern:e}}function nQ(e){try{return e.split("/").map((e=>decodeURIComponent(e).replace(/\//g,"%2F"))).join("/")}catch(t){return DJ(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding ('+t+")."),e}}function iQ(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&"/"!==n?null:e.slice(r)||"/"}function oQ(e,t,r,n){return"Cannot include a '"+e+"' character in a manually specified `to."+t+"` field ["+JSON.stringify(n)+"]. Please separate it out to the `to."+r+'` field. Alternatively you may provide the full path as a string in and the router will parse it for you.'}function aQ(e){return e.filter(((e,t)=>0===t||e.route.path&&e.route.path.length>0))}function sQ(e,t){let r=aQ(e);return t?r.map(((t,r)=>r===e.length-1?t.pathname:t.pathnameBase)):r.map((e=>e.pathnameBase))}function cQ(e,t,r,n){let i;void 0===n&&(n=!1),"string"===typeof e?i=UJ(e):(i=IJ({},e),NJ(!i.pathname||!i.pathname.includes("?"),oQ("?","pathname","search",i)),NJ(!i.pathname||!i.pathname.includes("#"),oQ("#","pathname","hash",i)),NJ(!i.search||!i.search.includes("#"),oQ("#","search","hash",i)));let o,a=""===e||""===i.pathname,s=a?"/":i.pathname;if(null==s)o=r;else{let e=t.length-1;if(!n&&s.startsWith("..")){let t=s.split("/");for(;".."===t[0];)t.shift(),e-=1;i.pathname=t.join("/")}o=e>=0?t[e]:"/"}let c=function(e,t){void 0===t&&(t="/");let{pathname:r,search:n="",hash:i=""}="string"===typeof e?UJ(e):e,o=r?r.startsWith("/")?r:function(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((e=>{".."===e?r.length>1&&r.pop():"."!==e&&r.push(e)})),r.length>1?r.join("/"):"/"}(r,t):t;return{pathname:o,search:dQ(n),hash:hQ(i)}}(i,o),l=s&&"/"!==s&&s.endsWith("/"),u=(a||"."===s)&&r.endsWith("/");return c.pathname.endsWith("/")||!l&&!u||(c.pathname+="/"),c}const lQ=e=>e.join("/").replace(/\/\/+/g,"/"),uQ=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),dQ=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",hQ=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";Error;function fQ(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}const pQ=["post","put","patch","delete"],mQ=(new Set(pQ),["get",...pQ]);new Set(mQ),new Set([301,302,303,307,308]),new Set([307,308]);Symbol("deferred");function gQ(){return gQ=Object.assign?Object.assign.bind():function(e){for(var t=1;t{r.current=!0}));let n=i.useCallback((function(n,i){void 0===i&&(i={}),r.current&&("number"===typeof n?e.navigate(n):e.navigate(n,gQ({fromRouteId:t},i)))}),[e,t]);return n}():function(){kQ()||NJ(!1);let e=i.useContext(vQ),{basename:t,future:r,navigator:n}=i.useContext(bQ),{matches:o}=i.useContext(xQ),{pathname:a}=SQ(),s=JSON.stringify(sQ(o,r.v7_relativeSplatPath)),c=i.useRef(!1);EQ((()=>{c.current=!0}));let l=i.useCallback((function(r,i){if(void 0===i&&(i={}),!c.current)return;if("number"===typeof r)return void n.go(r);let o=cQ(r,JSON.parse(s),a,"path"===i.relative);null==e&&"/"!==t&&(o.pathname="/"===o.pathname?t:lQ([t,o.pathname])),(i.replace?n.replace:n.push)(o,i.state,i)}),[t,n,s,a,e]);return l}()}function PQ(e,t){let{relative:r}=void 0===t?{}:t,{future:n}=i.useContext(bQ),{matches:o}=i.useContext(xQ),{pathname:a}=SQ(),s=JSON.stringify(sQ(o,n.v7_relativeSplatPath));return i.useMemo((()=>cQ(e,JSON.parse(s),a,"path"===r)),[e,s,a,r])}function OQ(e,t,r,n){kQ()||NJ(!1);let{navigator:o}=i.useContext(bQ),{matches:a}=i.useContext(xQ),s=a[a.length-1],c=s?s.params:{},l=(s&&s.pathname,s?s.pathnameBase:"/");s&&s.route;let u,d=SQ();if(t){var h;let e="string"===typeof t?UJ(t):t;"/"===l||(null==(h=e.pathname)?void 0:h.startsWith(l))||NJ(!1),u=e}else u=d;let f=u.pathname||"/",p=f;if("/"!==l){let e=l.replace(/^\//,"").split("/");p="/"+f.replace(/^\//,"").split("/").slice(e.length).join("/")}let m=VJ(e,{pathname:p});let g=IQ(m&&m.map((e=>Object.assign({},e,{params:Object.assign({},c,e.params),pathname:lQ([l,o.encodeLocation?o.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?l:lQ([l,o.encodeLocation?o.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])}))),a,r,n);return t&&g?i.createElement(wQ.Provider,{value:{location:gQ({pathname:"/",search:"",hash:"",state:null,key:"default"},u),navigationType:MJ.Pop}},g):g}function TQ(){let e=function(){var e;let t=i.useContext(_Q),r=DQ(LQ.UseRouteError),n=zQ(LQ.UseRouteError);if(void 0!==t)return t;return null==(e=r.errors)?void 0:e[n]}(),t=fQ(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,n="rgba(200,200,200, 0.5)",o={padding:"0.5rem",backgroundColor:n};return i.createElement(i.Fragment,null,i.createElement("h2",null,"Unexpected Application Error!"),i.createElement("h3",{style:{fontStyle:"italic"}},t),r?i.createElement("pre",{style:o},r):null,null)}const CQ=i.createElement(TQ,null);class jQ extends i.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){console.error("React Router caught the following error during render",e,t)}render(){return void 0!==this.state.error?i.createElement(xQ.Provider,{value:this.props.routeContext},i.createElement(_Q.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function RQ(e){let{routeContext:t,match:r,children:n}=e,o=i.useContext(vQ);return o&&o.static&&o.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=r.route.id),i.createElement(xQ.Provider,{value:t},n)}function IQ(e,t,r,n){var o;if(void 0===t&&(t=[]),void 0===r&&(r=null),void 0===n&&(n=null),null==e){var a;if(null==(a=r)||!a.errors)return null;e=r.matches}let s=e,c=null==(o=r)?void 0:o.errors;if(null!=c){let e=s.findIndex((e=>e.route.id&&(null==c?void 0:c[e.route.id])));e>=0||NJ(!1),s=s.slice(0,Math.min(s.length,e+1))}let l=!1,u=-1;if(r&&n&&n.v7_partialHydration)for(let i=0;i=0?s.slice(0,u+1):[s[0]];break}}}return s.reduceRight(((e,n,o)=>{let a,d=!1,h=null,f=null;r&&(a=c&&n.route.id?c[n.route.id]:void 0,h=n.route.errorElement||CQ,l&&(u<0&&0===o?(!function(e,t,r){t||BQ[e]||(BQ[e]=!0)}("route-fallback",!1),d=!0,f=null):u===o&&(d=!0,f=n.route.hydrateFallbackElement||null)));let p=t.concat(s.slice(0,o+1)),m=()=>{let t;return t=a?h:d?f:n.route.Component?i.createElement(n.route.Component,null):n.route.element?n.route.element:e,i.createElement(RQ,{match:n,routeContext:{outlet:e,matches:p,isDataRoute:null!=r},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||0===o)?i.createElement(jQ,{location:r.location,revalidation:r.revalidation,component:h,error:a,children:m(),routeContext:{outlet:null,matches:p,isDataRoute:!0}}):m()}),null)}var MQ=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(MQ||{}),LQ=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(LQ||{});function NQ(e){let t=i.useContext(vQ);return t||NJ(!1),t}function DQ(e){let t=i.useContext(yQ);return t||NJ(!1),t}function zQ(e){let t=function(e){let t=i.useContext(xQ);return t||NJ(!1),t}(),r=t.matches[t.matches.length-1];return r.route.id||NJ(!1),r.route.id}const BQ={};o.startTransition;function FQ(e){let{to:t,replace:r,state:n,relative:o}=e;kQ()||NJ(!1);let{future:a,static:s}=i.useContext(bQ),{matches:c}=i.useContext(xQ),{pathname:l}=SQ(),u=AQ(),d=cQ(t,sQ(c,a.v7_relativeSplatPath),l,"path"===o),h=JSON.stringify(d);return i.useEffect((()=>u(JSON.parse(h),{replace:r,state:n,relative:o})),[u,h,o,r,n]),null}function UQ(e){NJ(!1)}function $Q(e){let{basename:t="/",children:r=null,location:n,navigationType:o=MJ.Pop,navigator:a,static:s=!1,future:c}=e;kQ()&&NJ(!1);let l=t.replace(/^\/*/,"/"),u=i.useMemo((()=>({basename:l,navigator:a,static:s,future:gQ({v7_relativeSplatPath:!1},c)})),[l,c,a,s]);"string"===typeof n&&(n=UJ(n));let{pathname:d="/",search:h="",hash:f="",state:p=null,key:m="default"}=n,g=i.useMemo((()=>{let e=iQ(d,l);return null==e?null:{location:{pathname:e,search:h,hash:f,state:p,key:m},navigationType:o}}),[l,d,h,f,p,m,o]);return null==g?null:i.createElement(bQ.Provider,{value:u},i.createElement(wQ.Provider,{children:r,value:g}))}function HQ(e){let{children:t,location:r}=e;return OQ(VQ(t),r)}new Promise((()=>{}));i.Component;function VQ(e,t){void 0===t&&(t=[]);let r=[];return i.Children.forEach(e,((e,n)=>{if(!i.isValidElement(e))return;let o=[...t,n];if(e.type===i.Fragment)return void r.push.apply(r,VQ(e.props.children,o));e.type!==UQ&&NJ(!1),e.props.index&&e.props.children&&NJ(!1);let a={id:e.props.id||o.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,loader:e.props.loader,action:e.props.action,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:null!=e.props.ErrorBoundary||null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=VQ(e.props.children,o)),r.push(a)})),r}function qQ(){return qQ=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0||(i[r]=e[r]);return i}function WQ(e){return void 0===e&&(e=""),new URLSearchParams("string"===typeof e||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce(((t,r)=>{let n=e[r];return t.concat(Array.isArray(n)?n.map((e=>[r,e])):[[r,n]])}),[]))}new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);const GQ=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","unstable_viewTransition"];try{window.__reactRouterVersion="6"}catch(pge){}new Map;const ZQ=o.startTransition;Ai.flushSync,o.useId;function YQ(e){let{basename:t,children:r,future:n,window:o}=e,a=i.useRef();null==a.current&&(a.current=function(e){return void 0===e&&(e={}),$J((function(e,t){let{pathname:r="/",search:n="",hash:i=""}=UJ(e.location.hash.substr(1));return r.startsWith("/")||r.startsWith(".")||(r="/"+r),BJ("",{pathname:r,search:n,hash:i},t.state&&t.state.usr||null,t.state&&t.state.key||"default")}),(function(e,t){let r=e.document.querySelector("base"),n="";if(r&&r.getAttribute("href")){let t=e.location.href,r=t.indexOf("#");n=-1===r?t:t.slice(0,r)}return n+"#"+("string"===typeof t?t:FJ(t))}),(function(e,t){DJ("/"===e.pathname.charAt(0),"relative pathnames are not supported in hash history.push("+JSON.stringify(t)+")")}),e)}({window:o,v5Compat:!0}));let s=a.current,[c,l]=i.useState({action:s.action,location:s.location}),{v7_startTransition:u}=n||{},d=i.useCallback((e=>{u&&ZQ?ZQ((()=>l(e))):l(e)}),[l,u]);return i.useLayoutEffect((()=>s.listen(d)),[s,d]),i.createElement($Q,{basename:t,children:r,location:c.location,navigationType:c.action,navigator:s,future:n})}const XQ="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,JQ=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,QQ=i.forwardRef((function(e,t){let r,{onClick:n,relative:o,reloadDocument:a,replace:s,state:c,target:l,to:u,preventScrollReset:d,unstable_viewTransition:h}=e,f=KQ(e,GQ),{basename:p}=i.useContext(bQ),m=!1;if("string"===typeof u&&JQ.test(u)&&(r=u,XQ))try{let e=new URL(window.location.href),t=u.startsWith("//")?new URL(e.protocol+u):new URL(u),r=iQ(t.pathname,p);t.origin===e.origin&&null!=r?u=r+t.search+t.hash:m=!0}catch(pge){}let g=function(e,t){let{relative:r}=void 0===t?{}:t;kQ()||NJ(!1);let{basename:n,navigator:o}=i.useContext(bQ),{hash:a,pathname:s,search:c}=PQ(e,{relative:r}),l=s;return"/"!==n&&(l="/"===s?n:lQ([n,s])),o.createHref({pathname:l,search:c,hash:a})}(u,{relative:o}),v=function(e,t){let{target:r,replace:n,state:o,preventScrollReset:a,relative:s,unstable_viewTransition:c}=void 0===t?{}:t,l=AQ(),u=SQ(),d=PQ(e,{relative:s});return i.useCallback((t=>{if(function(e,t){return 0===e.button&&(!t||"_self"===t)&&!function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)}(t,r)){t.preventDefault();let r=void 0!==n?n:FJ(u)===FJ(d);l(e,{replace:r,state:o,preventScrollReset:a,relative:s,unstable_viewTransition:c})}}),[u,l,d,n,o,r,e,a,s,c])}(u,{replace:s,state:c,target:l,preventScrollReset:d,relative:o,unstable_viewTransition:h});return i.createElement("a",qQ({},f,{href:r||g,onClick:m||a?n:function(e){n&&n(e),e.defaultPrevented||v(e)},ref:t,target:l}))}));var e0,t0;function r0(e){let t=i.useRef(WQ(e)),r=i.useRef(!1),n=SQ(),o=i.useMemo((()=>function(e,t){let r=WQ(e);return t&&t.forEach(((e,n)=>{r.has(n)||t.getAll(n).forEach((e=>{r.append(n,e)}))})),r}(n.search,r.current?null:t.current)),[n.search]),a=AQ(),s=i.useCallback(((e,t)=>{const n=WQ("function"===typeof e?e(o):e);r.current=!0,a("?"+n,t)}),[a,o]);return[o,s]}(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(e0||(e0={})),function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"}(t0||(t0={}));const n0=()=>{const{html:e,seen:t}=ow((e=>e.announcement)),r=iw();return(0,i.useEffect)((()=>{const e=()=>{hF.get("https://storage.googleapis.com/umami-artifacts/announcement.html").then((e=>{r(tH.actions.setCurrent(e.data))})).catch((e=>{}))};e();const t=setInterval(e,36e5);return()=>clearInterval(t)}),[r]),t||!e?null:(0,xn.jsx)(UX,{className:"announcement-banner",color:"black",background:Xv.orangeL,"data-testid":"announcement",paddingX:"30px",children:(0,xn.jsxs)(ab,{justifyContent:"space-between",width:"100%",children:[(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(By,{marginRight:"4px"}),(0,xn.jsx)(VX,{fontSize:"14px",dangerouslySetInnerHTML:{__html:e}})]}),(0,xn.jsx)(_m,{"data-testid":"close",onClick:()=>r(tH.actions.setSeen())})]})})},i0=(0,i.createContext)({openWith:e=>Promise.resolve(),onClose:()=>{},isOpen:!1}),o0=()=>{const{isOpen:e,onClose:t,onOpen:r}=si(),[n,o]=(0,i.useState)(null),[a,s]=(0,i.useState)("md");return{isOpen:e,onClose:t,openWith:async(e,t="md")=>(s(t),o(e),r(),Promise.resolve()),content:(0,xn.jsxs)(lo,{autoFocus:!1,blockScrollOnMount:!1,closeOnOverlayClick:!1,isCentered:!0,isOpen:e,motionPreset:localStorage.getItem("chakra-modal-motion-preset")||void 0,onClose:t,size:a,children:[(0,xn.jsx)(Sh,{}),(0,xn.jsx)(gm,{enabled:e,children:n})]})}};function a0(e){const{theme:t}=Fn(),r=YX();return(0,i.useMemo)((()=>function(e,t){const r=r=>{var n;return{...t,...r,position:MX(null!=(n=null==r?void 0:r.position)?n:null==t?void 0:t.position,e)}},n=e=>{const t=r(e),n=GX(t);return qX.notify(n,t)};return n.update=(e,t)=>{qX.update(e,r(t))},n.promise=(e,t)=>{const r=n({...t.loading,status:"loading",duration:null});e.then((e=>n.update(r,{status:"success",duration:5e3,...w(t.success,e)}))).catch((e=>n.update(r,{status:"error",duration:5e3,...w(t.error,e)})))},n.closeAll=qX.closeAll,n.close=qX.close,n.isActive=qX.isActive,n}(t.direction,{...r,...e})),[e,t.direction,r])}var s0;function c0(e){return Object.keys(e)}!function(e){e.PENDING="pending",e.RESOLVED="resolved",e.REJECTED="rejected"}(s0||(s0={}));const l0=()=>{throw new Error("ExposedPromise not initialized yet.")};class u0{_promise;_resolve=l0;_reject=l0;_status=s0.PENDING;_promiseResult;_promiseError;get promise(){return this._promise}get resolve(){return this._resolve}get reject(){return this._reject}get status(){return this._status}get promiseResult(){return this._promiseResult}get promiseError(){return this._promiseError}constructor(){this._promise=new Promise(((e,t)=>{this._resolve=t=>{this.isSettled()||(this._promiseResult=t,e(t),this._status=s0.RESOLVED)},this._reject=e=>{this.isSettled()||(this._promiseError=e,t(e),this._status=s0.REJECTED)}}))}static resolve(e){const t=new u0;return t.resolve(e),t}static reject(e){const t=new u0;return t.reject(e),t}isPending(){return this.status===s0.PENDING}isResolved(){return this.status===s0.RESOLVED}isRejected(){return this.status===s0.REJECTED}isSettled(){return this.isResolved()||this.isRejected()}}var d0=r(7819),h0=r(4706),f0=r(6058),p0=r(9722),m0=r(9673).Buffer;function g0(e){return m0.from(e).toString("hex")}async function v0(e){return g0("string"===typeof e?(0,xS.hash)((0,f0.lF)(e),32):(0,xS.hash)(e,32))}async function y0(e){return(0,wS.K)((0,xS.hash)((0,f0.lF)(e),32))}async function b0(e,t){const r=m0.from((0,h0.randomBytes)(24));return g0(m0.concat([r,m0.from((0,HP.secretBox)(t,r,m0.from(e,"utf8")))]))}async function w0(e,t){const r=e.slice(0,24),n=e.slice(24),i=(0,HP.openSecretBox)(t,r,n);if(!i)throw new Error("Decryption failed");return m0.from(i).toString("utf8")}function x0(e,t){return`@${e}:${t}`}var _0=r(9673).Buffer;async function k0(){const e=(0,h0.randomBytes)(16);return[e.slice(0,4),e.slice(4,6),e.slice(6,8),e.slice(8,10),e.slice(10,16)].map((function(e){return _0.from(e).toString("hex")})).join("-")}var S0,E0,A0,P0,O0,T0,C0,j0,R0,I0;!function(e){e.BlockchainRequest="blockchain_request",e.PermissionRequest="permission_request",e.SignPayloadRequest="sign_payload_request",e.OperationRequest="operation_request",e.BroadcastRequest="broadcast_request",e.ChangeAccountRequest="change_account_request",e.BlockchainResponse="blockchain_response",e.PermissionResponse="permission_response",e.SignPayloadResponse="sign_payload_response",e.ProofOfEventChallengeRequest="proof_of_event_challenge_request",e.ProofOfEventChallengeResponse="proof_of_event_challenge_response",e.ProofOfEventChallengeRecorded="proof_of_event_challenge_recorded",e.OperationResponse="operation_response",e.BroadcastResponse="broadcast_response",e.Acknowledge="acknowledge",e.Disconnect="disconnect",e.Error="error"}(S0||(S0={})),function(e){e.SIGN="sign",e.OPERATION_REQUEST="operation_request",e.ENCRYPT="encrypt",e.NOTIFICATION="notification",e.THRESHOLD="threshold"}(E0||(E0={})),function(e){e.MAINNET="mainnet",e.GHOSTNET="ghostnet",e.WEEKLYNET="weeklynet",e.DAILYNET="dailynet",e.DELPHINET="delphinet",e.EDONET="edonet",e.FLORENCENET="florencenet",e.GRANADANET="granadanet",e.HANGZHOUNET="hangzhounet",e.ITHACANET="ithacanet",e.JAKARTANET="jakartanet",e.KATHMANDUNET="kathmandunet",e.LIMANET="limanet",e.MUMBAINET="mumbainet",e.NAIROBINET="nairobinet",e.OXFORDNET="oxfordnet",e.CUSTOM="custom"}(A0||(A0={})),function(e){e.ENDORSEMENT="endorsement",e.SEED_NONCE_REVELATION="seed_nonce_revelation",e.DOUBLE_ENDORSEMENT_EVIDENCE="double_endorsement_evidence",e.DOUBLE_BAKING_EVIDENCE="double_baking_evidence",e.ACTIVATE_ACCOUNT="activate_account",e.PROPOSALS="proposals",e.BALLOT="ballot",e.REVEAL="reveal",e.TRANSACTION="transaction",e.ORIGINATION="origination",e.DELEGATION="delegation"}(P0||(P0={})),function(e){e.WEBSITE="website",e.EXTENSION="extension",e.P2P="p2p",e.WALLETCONNECT="walletconnect"}(O0||(O0={})),function(e){e.BACKGROUND="toBackground",e.PAGE="toPage",e.EXTENSION="toExtension"}(T0||(T0={})),function(e){e.BROADCAST_ERROR="BROADCAST_ERROR",e.NETWORK_NOT_SUPPORTED="NETWORK_NOT_SUPPORTED",e.NO_ADDRESS_ERROR="NO_ADDRESS_ERROR",e.NO_PRIVATE_KEY_FOUND_ERROR="NO_PRIVATE_KEY_FOUND_ERROR",e.NOT_GRANTED_ERROR="NOT_GRANTED_ERROR",e.PARAMETERS_INVALID_ERROR="PARAMETERS_INVALID_ERROR",e.TOO_MANY_OPERATIONS="TOO_MANY_OPERATIONS",e.TRANSACTION_INVALID_ERROR="TRANSACTION_INVALID_ERROR",e.SIGNATURE_TYPE_NOT_SUPPORTED="SIGNATURE_TYPE_NOT_SUPPORTED",e.ABORTED_ERROR="ABORTED_ERROR",e.UNKNOWN_ERROR="UNKNOWN_ERROR"}(C0||(C0={})),function(e){e.NOT_CONNECTED="NOT_CONNECTED",e.CONNECTING="CONNECTING",e.CONNECTED="CONNECTED"}(j0||(j0={})),function(e){e.CHROME_MESSAGE="chrome_message",e.WALLETCONNECT="walletconnect",e.POST_MESSAGE="post_message",e.LEDGER="ledger",e.P2P="p2p"}(R0||(R0={}));class M0{static isSupported(){return Promise.resolve(!1)}}!function(e){e.TRANSPORT_P2P_PEERS_DAPP="beacon:communication-peers-dapp",e.TRANSPORT_P2P_PEERS_WALLET="beacon:communication-peers-wallet",e.TRANSPORT_POSTMESSAGE_PEERS_DAPP="beacon:postmessage-peers-dapp",e.TRANSPORT_POSTMESSAGE_PEERS_WALLET="beacon:postmessage-peers-wallet",e.TRANSPORT_WALLETCONNECT_PEERS_DAPP="beacon:walletconnect-peers-dapp",e.LAST_SELECTED_WALLET="beacon:last-selected-wallet",e.ACCOUNTS="beacon:accounts",e.ACTIVE_ACCOUNT="beacon:active-account",e.PUSH_TOKENS="beacon:push-tokens",e.BEACON_SDK_SECRET_SEED="beacon:sdk-secret-seed",e.APP_METADATA_LIST="beacon:app-metadata-list",e.PERMISSION_LIST="beacon:permissions",e.ONGOING_PROOF_OF_EVENT_CHALLENGES="beacon:ongoing-proof-of-event-challenges",e.BEACON_SDK_VERSION="beacon:sdk_version",e.MATRIX_PRESERVED_STATE="beacon:sdk-matrix-preserved-state",e.MATRIX_PEER_ROOM_IDS="beacon:matrix-peer-rooms",e.MATRIX_SELECTED_NODE="beacon:matrix-selected-node",e.MULTI_NODE_SETUP_DONE="beacon:multi-node-setup",e.WC_2_CORE_PAIRING="wc@2:core:0.3//pairing",e.WC_2_CLIENT_SESSION="wc@2:client:0.3//session",e.WC_2_CORE_KEYCHAIN="wc@2:core:0.3//keychain",e.WC_2_CORE_MESSAGES="wc@2:core:0.3//messages",e.WC_2_CLIENT_PROPOSAL="wc@2:client:0.3//proposal",e.WC_2_CORE_SUBSCRIPTION="wc@2:core:0.3//subscription",e.WC_2_CORE_HISTORY="wc@2:core:0.3//history",e.WC_2_CORE_EXPIRER="wc@2:core:0.3//expirer"}(I0||(I0={}));const L0={[I0.TRANSPORT_P2P_PEERS_DAPP]:[],[I0.TRANSPORT_P2P_PEERS_WALLET]:[],[I0.TRANSPORT_POSTMESSAGE_PEERS_DAPP]:[],[I0.TRANSPORT_POSTMESSAGE_PEERS_WALLET]:[],[I0.TRANSPORT_WALLETCONNECT_PEERS_DAPP]:[],[I0.LAST_SELECTED_WALLET]:void 0,[I0.ACCOUNTS]:[],[I0.ACTIVE_ACCOUNT]:void 0,[I0.PUSH_TOKENS]:[],[I0.BEACON_SDK_SECRET_SEED]:void 0,[I0.APP_METADATA_LIST]:[],[I0.PERMISSION_LIST]:[],[I0.ONGOING_PROOF_OF_EVENT_CHALLENGES]:[],[I0.BEACON_SDK_VERSION]:void 0,[I0.MATRIX_PRESERVED_STATE]:{},[I0.MATRIX_PEER_ROOM_IDS]:{},[I0.MATRIX_SELECTED_NODE]:void 0,[I0.MULTI_NODE_SETUP_DONE]:void 0,[I0.WC_2_CLIENT_SESSION]:void 0,[I0.WC_2_CORE_PAIRING]:void 0,[I0.WC_2_CORE_KEYCHAIN]:void 0,[I0.WC_2_CORE_MESSAGES]:void 0,[I0.WC_2_CLIENT_PROPOSAL]:void 0,[I0.WC_2_CORE_SUBSCRIPTION]:void 0,[I0.WC_2_CORE_HISTORY]:void 0,[I0.WC_2_CORE_EXPIRER]:void 0};class N0{type="p2p-pairing-request";relayServer;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.relayServer=i}}class D0 extends N0{senderId;constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,a,s),this.senderId=o}}var z0,B0,F0;!function(e){e.RAW="raw",e.OPERATION="operation",e.MICHELINE="micheline"}(z0||(z0={}));class U0{type="p2p-pairing-request";relayServer;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.relayServer=i}}class $0{type="postmessage-pairing-request";id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o){this.id=e,this.name=t,this.icon=i,this.appUrl=o,this.publicKey=r,this.version=n}}class H0 extends $0{senderId;constructor(e,t,r,n,i,o,a){super(e,t,r,n,o,a),this.senderId=i}}class V0{type="walletconnect-pairing-request";uri;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.uri=i}}class q0 extends V0{senderId;constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,o,a,s),this.senderId=i}}!function(e){e.LIGHT="light",e.DARK="dark"}(B0||(B0={})),function(e){e.EUROPE_EAST="europe-east",e.EUROPE_WEST="europe-west",e.NORTH_AMERICA_EAST="north-america-east",e.NORTH_AMERICA_WEST="north-america-west",e.CENTRAL_AMERICA="central-america",e.SOUTH_AMERICA="south-america",e.ASIA_EAST="asia-east",e.ASIA_WEST="asia-west",e.AFRICA="africa",e.AUSTRALIA="australia"}(F0||(F0={}));const K0="https://beacon-notification-oracle.dev.gke.papers.tech",W0=[e=>{}];let G0={postMessage:(e,t)=>{console.log("GOT MOCK POST MESSAGE",e),W0.forEach((t=>{t({data:e})}))},addEventListener:(e,t)=>{W0.push(t)},removeEventListener:(e,t)=>{W0.splice(W0.indexOf((e=>e===t)),1)},location:{origin:"*"}};try{"undefined"!==typeof window&&(G0=window)}catch(mge){console.log(`not defined: ${mge}`)}class Z0{track(e,t,r,n){}}class Y0{name;iconUrl;appUrl;_beaconId=new u0;get beaconId(){return this._beaconId.promise}storage;analytics;_keyPair=new u0;get keyPair(){return this._keyPair.promise}constructor(e){if(!e.name)throw new Error("Name not set");if(!e.storage)throw new Error("Storage not set");this.name=e.name,this.iconUrl=e.iconUrl,this.appUrl=e.appUrl??G0.location.origin,this.storage=e.storage,this.analytics=e.analytics??new Z0,G0.beaconCreatedClientInstance?console.error("[BEACON] It looks like you created multiple Beacon SDK Client instances. This can lead to problems. Only create one instance and re-use it everywhere."):G0.beaconCreatedClientInstance=!0,this.initSDK().catch(console.error)}async destroy(){await this.removeBeaconEntriesFromStorage(),G0.beaconCreatedClientInstance=!1}async initSDK(){return this.storage.set(I0.BEACON_SDK_VERSION,"4.1.2").catch(console.error),this.loadOrCreateBeaconSecret().catch(console.error),this.keyPair.then((e=>{this._beaconId.resolve(g0(e.publicKey))}))}async removeBeaconEntriesFromStorage(){const e=Object.values(I0);await Promise.all(e.map((e=>this.storage.delete(e))))}async loadOrCreateBeaconSecret(){const e=await this.storage.get(I0.BEACON_SDK_SECRET_SEED);if(e&&"string"===typeof e)this._keyPair.resolve(await y0(e));else{const e=await k0();await this.storage.set(I0.BEACON_SDK_SECRET_SEED,e),this._keyPair.resolve(await y0(e))}}}class X0{storage;storageKey;constructor(e,t){this.storage=e,this.storageKey=t}async getAll(){return await this.storage.get(this.storageKey)??[]}async getOne(e){return(await this.storage.get(this.storageKey)).find(e)}async addOne(e,t,r=!0){const n=await this.storage.get(this.storageKey);if(n.some(t)){if(r)for(let i=0;i!e(t)));return this.storage.set(this.storageKey,t)}async removeAll(){return this.storage.delete(this.storageKey)}}var J0=r(9673).Buffer;const Q0=async(e,t)=>{const r=[e,t.type];t.name&&r.push(`name:${t.name}`),t.rpcUrl&&r.push(`rpc:${t.rpcUrl}`);const n=J0.from((0,xS.hash)((0,f0.lF)(r.join("-")),10));return d0.encode(n)};class e1{static async hasPermission(e,t,r){switch(e.type){case S0.PermissionRequest:case S0.BroadcastRequest:return!0;case S0.OperationRequest:{const r=await Q0(e.sourceAddress,e.network),n=await t(r);return!!n&&n.scopes.includes(E0.OPERATION_REQUEST)}case S0.SignPayloadRequest:{const t=(await r()).filter((t=>t.address===e.sourceAddress));return 0!==t.length&&t.some((e=>e.scopes.includes(E0.SIGN)))}default:throw new Error("Message not handled")}}}class t1{storageManager;constructor(e){this.storageManager=new X0(e,I0.ACCOUNTS)}async getAccounts(){return await this.storageManager.getAll()??[]}async getAccount(e){return this.storageManager.getOne((t=>t.accountIdentifier===e))}async addAccount(e){return this.storageManager.addOne(e,(t=>t.accountIdentifier===e.accountIdentifier))}async updateAccount(e,t){const r=await this.getAccount(e);if(!r)return;const n={...r,...t};return await this.storageManager.addOne(n,(t=>t.accountIdentifier===e),!0),n}async removeAccount(e){return this.storageManager.remove((t=>t.accountIdentifier===e))}async removeAccounts(e){return this.storageManager.remove((t=>e.includes(t.accountIdentifier)))}async removeAllAccounts(){return this.storageManager.removeAll()}async hasPermission(e){return e1.hasPermission(e,this.getAccount.bind(this),this.getAccounts.bind(this))}}var r1=r(9673).Buffer;const n1=async e=>{const t=r1.from((0,xS.hash)(r1.from(e,"hex"),5));return d0.encode(t)};let i1=!!G0.beaconSdkDebugEnabled;i1&&console.log("[BEACON]: Debug mode is ON (turned on either by the developer or a browser extension)");class o1{name;constructor(e){this.name=e}debug(e,...t){a1.debug(this.name,e,t)}log(e,...t){a1.log(this.name,e,t)}warn(e,...t){a1.warn(this.name,e,t)}error(e,...t){a1.error(this.name,e,t)}time(e,t){a1.time(e,t)}timeLog(e,...t){a1.timeLog(e,t)}}new o1("");let a1=new class{constructor(){}debug(e,t,...r){this._log("debug",e,t,r)}log(e,t,...r){this._log("log",e,t,r)}warn(e,t,...r){this._log("warn",e,t,r)}error(e,t,...r){this._log("error",e,t,r)}time(e,t){e?console.time(t):console.timeEnd(t)}timeLog(e,t,...r){this._log("timeLog",e,t,r)}_log(e,t,r,n=[]){if(!i1)return;let i=`[BEACON] ${(new Date).toISOString()} [${t}](${r})`,o=n;switch(n[0]&&"string"===typeof n[0]&&(i+=` ${n[0]}`,o=n.slice(1)),e){case"error":console.group(i),console.error(...o);break;case"warn":console.group(i),console.warn(...o);break;case"debug":console.groupCollapsed(i),console.debug(...o);break;case"timeLog":console.group(i),console.timeLog(...o);break;default:console.group(i),console.log(...o)}console.groupEnd()}};const s1=new o1("Client");class c1 extends Y0{accountManager;handleResponse;rateLimit=2;rateLimitWindowInSeconds=5;requestCounter=[];matrixNodes;_transport=new u0;get transport(){return this._transport.promise}get connectionStatus(){return this._transport.promiseResult?.connectionStatus??j0.NOT_CONNECTED}get ready(){return this.transport.then((()=>{}))}constructor(e){super(e),this.accountManager=new t1(e.storage),this.matrixNodes=e.matrixNodes??{},this.handleResponse=(e,t)=>{throw new Error(`not overwritten${JSON.stringify(e)} - ${JSON.stringify(t)}`)}}async getAccounts(){return this.accountManager.getAccounts()}async getAccount(e){return this.accountManager.getAccount(e)}async removeAccount(e){return this.accountManager.removeAccount(e)}async removeAllAccounts(){return this.accountManager.removeAllAccounts()}async addRequestAndCheckIfRateLimited(){const e=(new Date).getTime();return this.requestCounter=this.requestCounter.filter((t=>t+1e3*this.rateLimitWindowInSeconds>e)),this.requestCounter.push(e),this.requestCounter.length>this.rateLimit}async init(e){return this._transport.status===s0.RESOLVED?(await this.transport).type:(await this.setTransport(e),e.type)}async getOwnAppMetadata(){return{senderId:await n1(await this.beaconId),name:this.name,icon:this.iconUrl}}async getPeers(){return(await this.transport).getPeers()}async addPeer(e){return(await this.transport).addPeer(e)}async destroy(){this._transport.status===s0.RESOLVED&&await(await this.transport).disconnect(),await super.destroy()}async setTransport(e){e?this._transport.isSettled()?this._transport=u0.resolve(e):this._transport.resolve(e):this._transport.isSettled()&&(this._transport=new u0)}async addListener(e){e.addListener((async(e,t)=>{if("string"===typeof e){const r=await(new f1).deserialize(e);this.handleResponse(r,t)}})).catch((e=>s1.error("addListener",e)))}async sendDisconnectToPeer(e,t){const r={id:await k0(),version:e.version,senderId:await n1(await this.beaconId),type:S0.Disconnect},n=await(new f1).serialize(r),i=t??await this.transport;await i.send(n,e)}}const l1=new o1("Transport");class u1{type=R0.POST_MESSAGE;name;_isConnected=j0.NOT_CONNECTED;peerManager;client;newPeerListener;setEventHandler(e,t){this.client.eventHandlers.set(e,t)}listeners=[];get connectionStatus(){return this._isConnected}constructor(e,t,r){this.name=e,this.client=t,this.peerManager=r}static async isAvailable(){return Promise.resolve(!1)}async connect(){l1.log("connect"),this._isConnected=j0.CONNECTED}async disconnect(){l1.log("disconnect"),this._isConnected=j0.NOT_CONNECTED}async send(e,t){if(t)return this.client.sendMessage(e,t);{const t=(await this.getPeers()).map((t=>this.client.sendMessage(e,t)));return(await Promise.all(t))[0]}}async addListener(e){l1.debug("addListener"),this.listeners.push(e)}async removeListener(e){l1.log("removeListener"),this.listeners=this.listeners.filter((t=>t!==e))}async getPeers(){return this.peerManager.getPeers()}async addPeer(e,t=!0){l1.log("addPeer","adding peer",e),await this.peerManager.addPeer(e),await this.listen(e.publicKey)}async removePeer(e){l1.log("removePeer","removing peer",e),await this.peerManager.removePeer(e.publicKey),this.client&&await this.client.unsubscribeFromEncryptedMessage(e.publicKey)}async removeAllPeers(){l1.log("removeAllPeers"),await this.peerManager.removeAllPeers(),this.client&&await this.client.unsubscribeFromEncryptedMessages()}async notifyListeners(e,t){0===this.listeners.length?l1.warn("notifyListeners","0 listeners notified!",this):l1.log("notifyListeners",`Notifying ${this.listeners.length} listeners`,this),this.listeners.forEach((r=>{r(e,t)}))}}class d1 extends M0{prefix;constructor(e){super(),this.prefix=e}static async isSupported(){return Promise.resolve(Boolean("undefined"!==typeof window)&&Boolean(window.localStorage))}async get(e){const t=localStorage.getItem(this.getPrefixedKey(e));if(!t)return"object"===typeof L0[e]?JSON.parse(JSON.stringify(L0[e])):L0[e];try{return JSON.parse(t)}catch(r){return t}}async set(e,t){return"string"===typeof t?localStorage.setItem(this.getPrefixedKey(e),t):localStorage.setItem(this.getPrefixedKey(e),JSON.stringify(t))}async delete(e){return Promise.resolve(localStorage.removeItem(this.getPrefixedKey(e)))}async subscribeToStorageChanged(e){window.addEventListener("storage",(t=>{t.key?e({eventType:"entryModified",key:this.getPrefixedKey(t.key),oldValue:t.oldValue,newValue:t.newValue}):e({eventType:"storageCleared",key:null,oldValue:null,newValue:null})}),!1)}getPrefixedKey(e){return this.prefix?`${this.prefix}-${e}`:e}}new o1("STORAGE");var h1=r(9673).Buffer;class f1{async serialize(e){const t=JSON.stringify(e);return d0.encode(h1.from(t))}async deserialize(e){if("string"!==typeof e)throw new Error("Encoded payload needs to be a string");return JSON.parse(d0.decode(e).toString())}}class p1{storageManager;constructor(e){this.storageManager=new X0(e,I0.APP_METADATA_LIST)}async getAppMetadataList(){return await this.storageManager.getAll()??[]}async getAppMetadata(e){return this.storageManager.getOne((t=>t.senderId===e))}async addAppMetadata(e){return this.storageManager.addOne(e,(t=>t.senderId===e.senderId))}async removeAppMetadata(e){return this.storageManager.remove((t=>t.senderId===e))}async removeAppMetadatas(e){return this.storageManager.remove((t=>e.includes(t.senderId)))}async removeAllAppMetadata(){return this.storageManager.removeAll()}}class m1{storageManager;constructor(e){this.storageManager=new X0(e,I0.PERMISSION_LIST)}async getPermissions(){return await this.storageManager.getAll()??[]}async getPermission(e){return this.storageManager.getOne((t=>t.accountIdentifier===e))}async addPermission(e){return this.storageManager.addOne(e,(t=>t.accountIdentifier===e.accountIdentifier&&t.senderId===e.senderId))}async removePermission(e){return this.storageManager.remove((t=>t.accountIdentifier===e))}async removePermissions(e){return this.storageManager.remove((t=>e.includes(t.accountIdentifier)))}async removeAllPermissions(){return this.storageManager.removeAll()}async hasPermission(e){return e1.hasPermission(e,this.getPermission.bind(this),this.getPermissions.bind(this))}}class g1{storageManager;constructor(e,t){this.storageManager=new X0(e,t)}async hasPeer(e){return!!await this.getPeer(e)}async getPeers(){return await this.storageManager.getAll()??[]}async getPeer(e){return this.storageManager.getOne((t=>t.publicKey===e))}async addPeer(e){return this.storageManager.addOne(e,(t=>t.publicKey===e.publicKey))}async removePeer(e){return this.storageManager.remove((t=>t.publicKey===e))}async removePeers(e){return this.storageManager.remove((t=>e.includes(t.publicKey)))}async removeAllPeers(){return this.storageManager.removeAll()}}var v1=r(6458),y1=r(9673).Buffer;class b1{keyPair;constructor(e){this.keyPair=e}eventHandlers=new Map;async getPublicKey(){return g0(this.keyPair?.publicKey)}async getPublicKeyHash(){return v0(this.keyPair.publicKey)}async createCryptoBoxServer(e,t){return(0,v1.serverSessionKeys)({publicKey:(0,wS.J$)(t.publicKey),secretKey:(0,wS.a_)(t.secretKey)},(0,wS.J$)(y1.from(e,"hex")))}async createCryptoBoxClient(e,t){return(0,v1.clientSessionKeys)({publicKey:(0,wS.J$)(t.publicKey),secretKey:(0,wS.a_)(t.secretKey)},(0,wS.J$)(y1.from(e,"hex")))}async encryptMessageAsymmetric(e,t){return async function(e,t){const r=(0,wS.J$)(m0.from(t)),n=(0,HP.generateKeyPair)(),i=new xS.BLAKE2b(24).update(n.publicKey,32).update(r,32).digest(),o="string"===typeof e?(0,f0.lF)(e):e,a=(0,HP.box)(r,n.secretKey,i,o);return g0((0,p0.x)(n.publicKey,a))}(t,y1.from(e,"hex"))}}r(9673).Buffer;new o1("IndexedDBStorage");function w1(e,t){return function(){return e.apply(t,arguments)}}const{toString:x1}=Object.prototype,{getPrototypeOf:_1}=Object,k1=(e=>t=>{const r=x1.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),S1=e=>(e=e.toLowerCase(),t=>k1(t)===e),E1=e=>t=>typeof t===e,{isArray:A1}=Array,P1=E1("undefined");const O1=S1("ArrayBuffer");const T1=E1("string"),C1=E1("function"),j1=E1("number"),R1=e=>null!==e&&"object"===typeof e,I1=e=>{if("object"!==k1(e))return!1;const t=_1(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},M1=S1("Date"),L1=S1("File"),N1=S1("Blob"),D1=S1("FileList"),z1=S1("URLSearchParams");function B1(e,t,{allOwnKeys:r=!1}={}){if(null===e||"undefined"===typeof e)return;let n,i;if("object"!==typeof e&&(e=[e]),A1(e))for(n=0,i=e.length;n0;)if(n=r[i],t===n.toLowerCase())return n;return null}const U1="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:global,$1=e=>!P1(e)&&e!==U1;const H1=(e=>t=>e&&t instanceof e)("undefined"!==typeof Uint8Array&&_1(Uint8Array)),V1=S1("HTMLFormElement"),q1=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),K1=S1("RegExp"),W1=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};B1(r,((r,i)=>{let o;!1!==(o=t(r,i,e))&&(n[i]=o||r)})),Object.defineProperties(e,n)},G1="abcdefghijklmnopqrstuvwxyz",Z1="0123456789",Y1={DIGIT:Z1,ALPHA:G1,ALPHA_DIGIT:G1+G1.toUpperCase()+Z1};const X1=S1("AsyncFunction"),J1={isArray:A1,isArrayBuffer:O1,isBuffer:function(e){return null!==e&&!P1(e)&&null!==e.constructor&&!P1(e.constructor)&&C1(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"===typeof FormData&&e instanceof FormData||C1(e.append)&&("formdata"===(t=k1(e))||"object"===t&&C1(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&O1(e.buffer),t},isString:T1,isNumber:j1,isBoolean:e=>!0===e||!1===e,isObject:R1,isPlainObject:I1,isUndefined:P1,isDate:M1,isFile:L1,isBlob:N1,isRegExp:K1,isFunction:C1,isStream:e=>R1(e)&&C1(e.pipe),isURLSearchParams:z1,isTypedArray:H1,isFileList:D1,forEach:B1,merge:function e(){const{caseless:t}=$1(this)&&this||{},r={},n=(n,i)=>{const o=t&&F1(r,i)||i;I1(r[o])&&I1(n)?r[o]=e(r[o],n):I1(n)?r[o]=e({},n):A1(n)?r[o]=n.slice():r[o]=n};for(let i=0,o=arguments.length;i(B1(t,((t,n)=>{r&&C1(t)?e[n]=w1(t,r):e[n]=t}),{allOwnKeys:n}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},toFlatObject:(e,t,r,n)=>{let i,o,a;const s={};if(t=t||{},null==e)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)a=i[o],n&&!n(a,e,t)||s[a]||(t[a]=e[a],s[a]=!0);e=!1!==r&&_1(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},kindOf:k1,kindOfTest:S1,endsWith:(e,t,r)=>{e=String(e),(void 0===r||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return-1!==n&&n===r},toArray:e=>{if(!e)return null;if(A1(e))return e;let t=e.length;if(!j1(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},forEachEntry:(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let n;for(;(n=r.next())&&!n.done;){const r=n.value;t.call(e,r[0],r[1])}},matchAll:(e,t)=>{let r;const n=[];for(;null!==(r=e.exec(t));)n.push(r);return n},isHTMLForm:V1,hasOwnProperty:q1,hasOwnProp:q1,reduceDescriptors:W1,freezeMethods:e=>{W1(e,((t,r)=>{if(C1(e)&&-1!==["arguments","caller","callee"].indexOf(r))return!1;const n=e[r];C1(n)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")}))}))},toObjectSet:(e,t)=>{const r={},n=e=>{e.forEach((e=>{r[e]=!0}))};return A1(e)?n(e):n(String(e).split(t)),r},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,r){return t.toUpperCase()+r})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:F1,global:U1,isContextDefined:$1,ALPHABET:Y1,generateString:(e=16,t=Y1.ALPHA_DIGIT)=>{let r="";const{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r},isSpecCompliantForm:function(e){return!!(e&&C1(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),r=(e,n)=>{if(R1(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[n]=e;const i=A1(e)?[]:{};return B1(e,((e,t)=>{const o=r(e,n+1);!P1(o)&&(i[t]=o)})),t[n]=void 0,i}}return e};return r(e,0)},isAsyncFn:X1,isThenable:e=>e&&(R1(e)||C1(e))&&C1(e.then)&&C1(e.catch)};function Q1(e,t,r,n,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),i&&(this.response=i)}J1.inherits(Q1,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:J1.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const e2=Q1.prototype,t2={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{t2[e]={value:e}})),Object.defineProperties(Q1,t2),Object.defineProperty(e2,"isAxiosError",{value:!0}),Q1.from=(e,t,r,n,i,o)=>{const a=Object.create(e2);return J1.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),Q1.call(a,e.message,t,r,n,i),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};const r2=Q1;var n2=r(9673).Buffer;function i2(e){return J1.isPlainObject(e)||J1.isArray(e)}function o2(e){return J1.endsWith(e,"[]")?e.slice(0,-2):e}function a2(e,t,r){return e?e.concat(t).map((function(e,t){return e=o2(e),!r&&t?"["+e+"]":e})).join(r?".":""):t}const s2=J1.toFlatObject(J1,{},null,(function(e){return/^is[A-Z]/.test(e)}));const c2=function(e,t,r){if(!J1.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const n=(r=J1.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!J1.isUndefined(t[e])}))).metaTokens,i=r.visitor||l,o=r.dots,a=r.indexes,s=(r.Blob||"undefined"!==typeof Blob&&Blob)&&J1.isSpecCompliantForm(t);if(!J1.isFunction(i))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(J1.isDate(e))return e.toISOString();if(!s&&J1.isBlob(e))throw new r2("Blob is not supported. Use a Buffer instead.");return J1.isArrayBuffer(e)||J1.isTypedArray(e)?s&&"function"===typeof Blob?new Blob([e]):n2.from(e):e}function l(e,r,i){let s=e;if(e&&!i&&"object"===typeof e)if(J1.endsWith(r,"{}"))r=n?r:r.slice(0,-2),e=JSON.stringify(e);else if(J1.isArray(e)&&function(e){return J1.isArray(e)&&!e.some(i2)}(e)||(J1.isFileList(e)||J1.endsWith(r,"[]"))&&(s=J1.toArray(e)))return r=o2(r),s.forEach((function(e,n){!J1.isUndefined(e)&&null!==e&&t.append(!0===a?a2([r],n,o):null===a?r:r+"[]",c(e))})),!1;return!!i2(e)||(t.append(a2(i,r,o),c(e)),!1)}const u=[],d=Object.assign(s2,{defaultVisitor:l,convertValue:c,isVisitable:i2});if(!J1.isObject(e))throw new TypeError("data must be an object");return function e(r,n){if(!J1.isUndefined(r)){if(-1!==u.indexOf(r))throw Error("Circular reference detected in "+n.join("."));u.push(r),J1.forEach(r,(function(r,o){!0===(!(J1.isUndefined(r)||null===r)&&i.call(t,r,J1.isString(o)?o.trim():o,n,d))&&e(r,n?n.concat(o):[o])})),u.pop()}}(e),t};function l2(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function u2(e,t){this._pairs=[],e&&c2(e,this,t)}const d2=u2.prototype;d2.append=function(e,t){this._pairs.push([e,t])},d2.toString=function(e){const t=e?function(t){return e.call(this,t,l2)}:l2;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const h2=u2;function f2(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function p2(e,t,r){if(!t)return e;const n=r&&r.encode||f2,i=r&&r.serialize;let o;if(o=i?i(t,r):J1.isURLSearchParams(t)?t.toString():new h2(t,r).toString(n),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}const m2=class{constructor(){this.handlers=[]}use(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){J1.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},g2={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},v2={isBrowser:!0,classes:{URLSearchParams:"undefined"!==typeof URLSearchParams?URLSearchParams:h2,FormData:"undefined"!==typeof FormData?FormData:null,Blob:"undefined"!==typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},y2="undefined"!==typeof window&&"undefined"!==typeof document,b2=(e=>y2&&["ReactNative","NativeScript","NS"].indexOf(e)<0)("undefined"!==typeof navigator&&navigator.product),w2="undefined"!==typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"===typeof self.importScripts,x2={...t,...v2};const _2=function(e){function t(e,r,n,i){let o=e[i++];if("__proto__"===o)return!0;const a=Number.isFinite(+o),s=i>=e.length;if(o=!o&&J1.isArray(n)?n.length:o,s)return J1.hasOwnProp(n,o)?n[o]=[n[o],r]:n[o]=r,!a;n[o]&&J1.isObject(n[o])||(n[o]=[]);return t(e,r,n[o],i)&&J1.isArray(n[o])&&(n[o]=function(e){const t={},r=Object.keys(e);let n;const i=r.length;let o;for(n=0;n{t(function(e){return J1.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),n,r,0)})),r}return null};const k2={transitional:g2,adapter:["xhr","http"],transformRequest:[function(e,t){const r=t.getContentType()||"",n=r.indexOf("application/json")>-1,i=J1.isObject(e);i&&J1.isHTMLForm(e)&&(e=new FormData(e));if(J1.isFormData(e))return n&&n?JSON.stringify(_2(e)):e;if(J1.isArrayBuffer(e)||J1.isBuffer(e)||J1.isStream(e)||J1.isFile(e)||J1.isBlob(e))return e;if(J1.isArrayBufferView(e))return e.buffer;if(J1.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return c2(e,new x2.classes.URLSearchParams,Object.assign({visitor:function(e,t,r,n){return x2.isNode&&J1.isBuffer(e)?(this.append(t,e.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((o=J1.isFileList(e))||r.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return c2(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return i||n?(t.setContentType("application/json",!1),function(e,t,r){if(J1.isString(e))try{return(t||JSON.parse)(e),J1.trim(e)}catch(pge){if("SyntaxError"!==pge.name)throw pge}return(r||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||k2.transitional,r=t&&t.forcedJSONParsing,n="json"===this.responseType;if(e&&J1.isString(e)&&(r&&!this.responseType||n)){const r=!(t&&t.silentJSONParsing)&&n;try{return JSON.parse(e)}catch(pge){if(r){if("SyntaxError"===pge.name)throw r2.from(pge,r2.ERR_BAD_RESPONSE,this,null,this.response);throw pge}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:x2.classes.FormData,Blob:x2.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};J1.forEach(["delete","get","head","post","put","patch"],(e=>{k2.headers[e]={}}));const S2=k2,E2=J1.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),A2=Symbol("internals");function P2(e){return e&&String(e).trim().toLowerCase()}function O2(e){return!1===e||null==e?e:J1.isArray(e)?e.map(O2):String(e)}function T2(e,t,r,n,i){return J1.isFunction(n)?n.call(this,t,r):(i&&(t=r),J1.isString(t)?J1.isString(n)?-1!==t.indexOf(n):J1.isRegExp(n)?n.test(t):void 0:void 0)}class C2{constructor(e){e&&this.set(e)}set(e,t,r){const n=this;function i(e,t,r){const i=P2(t);if(!i)throw new Error("header name must be a non-empty string");const o=J1.findKey(n,i);(!o||void 0===n[o]||!0===r||void 0===r&&!1!==n[o])&&(n[o||t]=O2(e))}const o=(e,t)=>J1.forEach(e,((e,r)=>i(e,r,t)));return J1.isPlainObject(e)||e instanceof this.constructor?o(e,t):J1.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?o((e=>{const t={};let r,n,i;return e&&e.split("\n").forEach((function(e){i=e.indexOf(":"),r=e.substring(0,i).trim().toLowerCase(),n=e.substring(i+1).trim(),!r||t[r]&&E2[r]||("set-cookie"===r?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)})),t})(e),t):null!=e&&i(t,e,r),this}get(e,t){if(e=P2(e)){const r=J1.findKey(this,e);if(r){const e=this[r];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}(e);if(J1.isFunction(t))return t.call(this,e,r);if(J1.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=P2(e)){const r=J1.findKey(this,e);return!(!r||void 0===this[r]||t&&!T2(0,this[r],r,t))}return!1}delete(e,t){const r=this;let n=!1;function i(e){if(e=P2(e)){const i=J1.findKey(r,e);!i||t&&!T2(0,r[i],i,t)||(delete r[i],n=!0)}}return J1.isArray(e)?e.forEach(i):i(e),n}clear(e){const t=Object.keys(this);let r=t.length,n=!1;for(;r--;){const i=t[r];e&&!T2(0,this[i],i,e,!0)||(delete this[i],n=!0)}return n}normalize(e){const t=this,r={};return J1.forEach(this,((n,i)=>{const o=J1.findKey(r,i);if(o)return t[o]=O2(n),void delete t[i];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,r)=>t.toUpperCase()+r))}(i):String(i).trim();a!==i&&delete t[i],t[a]=O2(n),r[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return J1.forEach(this,((r,n)=>{null!=r&&!1!==r&&(t[n]=e&&J1.isArray(r)?r.join(", "):r)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const r=new this(e);return t.forEach((e=>r.set(e))),r}static accessor(e){const t=(this[A2]=this[A2]={accessors:{}}).accessors,r=this.prototype;function n(e){const n=P2(e);t[n]||(!function(e,t){const r=J1.toCamelCase(" "+t);["get","set","has"].forEach((n=>{Object.defineProperty(e,n+r,{value:function(e,r,i){return this[n].call(this,t,e,r,i)},configurable:!0})}))}(r,e),t[n]=!0)}return J1.isArray(e)?e.forEach(n):n(e),this}}C2.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),J1.reduceDescriptors(C2.prototype,(({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[r]=e}}})),J1.freezeMethods(C2);const j2=C2;function R2(e,t){const r=this||S2,n=t||r,i=j2.from(n.headers);let o=n.data;return J1.forEach(e,(function(e){o=e.call(r,o,i.normalize(),t?t.status:void 0)})),i.normalize(),o}function I2(e){return!(!e||!e.__CANCEL__)}function M2(e,t,r){r2.call(this,null==e?"canceled":e,r2.ERR_CANCELED,t,r),this.name="CanceledError"}J1.inherits(M2,r2,{__CANCEL__:!0});const L2=M2;const N2=x2.hasStandardBrowserEnv?{write(e,t,r,n,i,o){const a=[e+"="+encodeURIComponent(t)];J1.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),J1.isString(n)&&a.push("path="+n),J1.isString(i)&&a.push("domain="+i),!0===o&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function D2(e,t){return e&&!function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const z2=x2.hasStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let r;function n(r){let n=r;return e&&(t.setAttribute("href",n),n=t.href),t.setAttribute("href",n),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return r=n(window.location.href),function(e){const t=J1.isString(e)?n(e):e;return t.protocol===r.protocol&&t.host===r.host}}():function(){return!0};const B2=function(e,t){e=e||10;const r=new Array(e),n=new Array(e);let i,o=0,a=0;return t=void 0!==t?t:1e3,function(s){const c=Date.now(),l=n[a];i||(i=c),r[o]=s,n[o]=c;let u=a,d=0;for(;u!==o;)d+=r[u++],u%=e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),c-i{const o=i.loaded,a=i.lengthComputable?i.total:void 0,s=o-r,c=n(s);r=o;const l={loaded:o,total:a,progress:a?o/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&o<=a?(a-o)/c:void 0,event:i};l[t?"download":"upload"]=!0,e(l)}}const U2="undefined"!==typeof XMLHttpRequest&&function(e){return new Promise((function(t,r){let n=e.data;const i=j2.from(e.headers).normalize();let o,a,{responseType:s,withXSRFToken:c}=e;function l(){e.cancelToken&&e.cancelToken.unsubscribe(o),e.signal&&e.signal.removeEventListener("abort",o)}if(J1.isFormData(n))if(x2.hasStandardBrowserEnv||x2.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if(!1!==(a=i.getContentType())){const[e,...t]=a?a.split(";").map((e=>e.trim())).filter(Boolean):[];i.setContentType([e||"multipart/form-data",...t].join("; "))}let u=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",r=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(t+":"+r))}const d=D2(e.baseURL,e.url);function h(){if(!u)return;const n=j2.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders());!function(e,t,r){const n=r.config.validateStatus;r.status&&n&&!n(r.status)?t(new r2("Request failed with status code "+r.status,[r2.ERR_BAD_REQUEST,r2.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):e(r)}((function(e){t(e),l()}),(function(e){r(e),l()}),{data:s&&"text"!==s&&"json"!==s?u.response:u.responseText,status:u.status,statusText:u.statusText,headers:n,config:e,request:u}),u=null}if(u.open(e.method.toUpperCase(),p2(d,e.params,e.paramsSerializer),!0),u.timeout=e.timeout,"onloadend"in u?u.onloadend=h:u.onreadystatechange=function(){u&&4===u.readyState&&(0!==u.status||u.responseURL&&0===u.responseURL.indexOf("file:"))&&setTimeout(h)},u.onabort=function(){u&&(r(new r2("Request aborted",r2.ECONNABORTED,e,u)),u=null)},u.onerror=function(){r(new r2("Network Error",r2.ERR_NETWORK,e,u)),u=null},u.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const n=e.transitional||g2;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),r(new r2(t,n.clarifyTimeoutError?r2.ETIMEDOUT:r2.ECONNABORTED,e,u)),u=null},x2.hasStandardBrowserEnv&&(c&&J1.isFunction(c)&&(c=c(e)),c||!1!==c&&z2(d))){const t=e.xsrfHeaderName&&e.xsrfCookieName&&N2.read(e.xsrfCookieName);t&&i.set(e.xsrfHeaderName,t)}void 0===n&&i.setContentType(null),"setRequestHeader"in u&&J1.forEach(i.toJSON(),(function(e,t){u.setRequestHeader(t,e)})),J1.isUndefined(e.withCredentials)||(u.withCredentials=!!e.withCredentials),s&&"json"!==s&&(u.responseType=e.responseType),"function"===typeof e.onDownloadProgress&&u.addEventListener("progress",F2(e.onDownloadProgress,!0)),"function"===typeof e.onUploadProgress&&u.upload&&u.upload.addEventListener("progress",F2(e.onUploadProgress)),(e.cancelToken||e.signal)&&(o=t=>{u&&(r(!t||t.type?new L2(null,e,u):t),u.abort(),u=null)},e.cancelToken&&e.cancelToken.subscribe(o),e.signal&&(e.signal.aborted?o():e.signal.addEventListener("abort",o)));const f=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(d);f&&-1===x2.protocols.indexOf(f)?r(new r2("Unsupported protocol "+f+":",r2.ERR_BAD_REQUEST,e)):u.send(n||null)}))},$2={http:null,xhr:U2};J1.forEach($2,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(pge){}Object.defineProperty(e,"adapterName",{value:t})}}));const H2=e=>`- ${e}`,V2=e=>J1.isFunction(e)||null===e||!1===e,q2=e=>{e=J1.isArray(e)?e:[e];const{length:t}=e;let r,n;const i={};for(let o=0;o`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let r=t?e.length>1?"since :\n"+e.map(H2).join("\n"):" "+H2(e[0]):"as no adapter specified";throw new r2("There is no suitable adapter to dispatch the request "+r,"ERR_NOT_SUPPORT")}return n};function K2(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new L2(null,e)}function W2(e){K2(e),e.headers=j2.from(e.headers),e.data=R2.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return q2(e.adapter||S2.adapter)(e).then((function(t){return K2(e),t.data=R2.call(e,e.transformResponse,t),t.headers=j2.from(t.headers),t}),(function(t){return I2(t)||(K2(e),t&&t.response&&(t.response.data=R2.call(e,e.transformResponse,t.response),t.response.headers=j2.from(t.response.headers))),Promise.reject(t)}))}const G2=e=>e instanceof j2?e.toJSON():e;function Z2(e,t){t=t||{};const r={};function n(e,t,r){return J1.isPlainObject(e)&&J1.isPlainObject(t)?J1.merge.call({caseless:r},e,t):J1.isPlainObject(t)?J1.merge({},t):J1.isArray(t)?t.slice():t}function i(e,t,r){return J1.isUndefined(t)?J1.isUndefined(e)?void 0:n(void 0,e,r):n(e,t,r)}function o(e,t){if(!J1.isUndefined(t))return n(void 0,t)}function a(e,t){return J1.isUndefined(t)?J1.isUndefined(e)?void 0:n(void 0,e):n(void 0,t)}function s(r,i,o){return o in t?n(r,i):o in e?n(void 0,r):void 0}const c={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(e,t)=>i(G2(e),G2(t),!0)};return J1.forEach(Object.keys(Object.assign({},e,t)),(function(n){const o=c[n]||i,a=o(e[n],t[n],n);J1.isUndefined(a)&&o!==s||(r[n]=a)})),r}const Y2="1.6.5",X2={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{X2[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}}));const J2={};X2.transitional=function(e,t,r){function n(e,t){return"[Axios v1.6.5] Transitional option '"+e+"'"+t+(r?". "+r:"")}return(r,i,o)=>{if(!1===e)throw new r2(n(i," has been removed"+(t?" in "+t:"")),r2.ERR_DEPRECATED);return t&&!J2[i]&&(J2[i]=!0,console.warn(n(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,i,o)}};const Q2={assertOptions:function(e,t,r){if("object"!==typeof e)throw new r2("options must be an object",r2.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let i=n.length;for(;i-- >0;){const o=n[i],a=t[o];if(a){const t=e[o],r=void 0===t||a(t,o,e);if(!0!==r)throw new r2("option "+o+" must be "+r,r2.ERR_BAD_OPTION_VALUE)}else if(!0!==r)throw new r2("Unknown option "+o,r2.ERR_BAD_OPTION)}},validators:X2},e5=Q2.validators;class t5{constructor(e){this.defaults=e,this.interceptors={request:new m2,response:new m2}}request(e,t){"string"===typeof e?(t=t||{}).url=e:t=e||{},t=Z2(this.defaults,t);const{transitional:r,paramsSerializer:n,headers:i}=t;void 0!==r&&Q2.assertOptions(r,{silentJSONParsing:e5.transitional(e5.boolean),forcedJSONParsing:e5.transitional(e5.boolean),clarifyTimeoutError:e5.transitional(e5.boolean)},!1),null!=n&&(J1.isFunction(n)?t.paramsSerializer={serialize:n}:Q2.assertOptions(n,{encode:e5.function,serialize:e5.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&J1.merge(i.common,i[t.method]);i&&J1.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete i[e]})),t.headers=j2.concat(o,i);const a=[];let s=!0;this.interceptors.request.forEach((function(e){"function"===typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const c=[];let l;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let u,d=0;if(!s){const e=[W2.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,c),u=e.length,l=Promise.resolve(t);d{if(!r._listeners)return;let t=r._listeners.length;for(;t-- >0;)r._listeners[t](e);r._listeners=null})),this.promise.then=e=>{let t;const n=new Promise((e=>{r.subscribe(e),t=e})).then(e);return n.cancel=function(){r.unsubscribe(t)},n},e((function(e,n,i){r.reason||(r.reason=new L2(e,n,i),t(r.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;const t=new n5((function(t){e=t}));return{token:t,cancel:e}}}const i5=n5;const o5={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(o5).forEach((([e,t])=>{o5[t]=e}));const a5=o5;const s5=function e(t){const r=new r5(t),n=w1(r5.prototype.request,r);return J1.extend(n,r5.prototype,r,{allOwnKeys:!0}),J1.extend(n,r,null,{allOwnKeys:!0}),n.create=function(r){return e(Z2(t,r))},n}(S2);s5.Axios=r5,s5.CanceledError=L2,s5.CancelToken=i5,s5.isCancel=I2,s5.VERSION=Y2,s5.toFormData=c2,s5.AxiosError=r2,s5.Cancel=s5.CanceledError,s5.all=function(e){return Promise.all(e)},s5.spread=function(e){return function(t){return e.apply(null,t)}},s5.isAxiosError=function(e){return J1.isObject(e)&&!0===e.isAxiosError},s5.mergeConfig=Z2,s5.AxiosHeaders=j2,s5.formToJSON=e=>_2(J1.isHTMLForm(e)?new FormData(e):e),s5.getAdapter=q2,s5.HttpStatusCode=a5,s5.default=s5;const c5=s5;var l5;!function(e){e.TEXT="m.text"}(l5||(l5={}));class u5{type;sender;content;timestamp;static from(e){if(h5(e))return new u5(e.content.msgtype,e.sender,e.content.body,e.origin_server_ts)}constructor(e,t,r,n){this.type=e,this.sender=t,this.content=r,this.timestamp=n}}const d5=e=>"m.room.message"===e.type,h5=e=>d5(e)&&e.content instanceof Object&&"msgtype"in e.content&&e.content.msgtype===l5.TEXT;var f5;!function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.JOINED=1]="JOINED",e[e.INVITED=2]="INVITED",e[e.LEFT=3]="LEFT"}(f5||(f5={}));class p5{id;status;members;messages;static fromSync(e){if(!e)return[];function t(e,t){return Object.entries(e).map((([e,r])=>t(e,r)))}return[...t(e.join??{},p5.fromJoined),...t(e.invite??{},p5.fromInvited),...t(e.leave??{},p5.fromLeft)]}static from(e,t){return"string"===typeof e?new p5(e,t||f5.UNKNOWN):void 0!==t?new p5(e.id,t,e.members,e.messages):e}static merge(e,t){return t&&t.id===e.id?new p5(e.id,e.status,[...t.members,...e.members].filter(((e,t,r)=>r.indexOf(e)===t)),[...t.messages,...e.messages]):p5.from(e)}static fromJoined(e,t){const r=[...t.state.events,...t.timeline.events],n=p5.getMembersFromEvents(r),i=p5.getMessagesFromEvents(r);return new p5(e,f5.JOINED,n,i)}static fromInvited(e,t){const r=p5.getMembersFromEvents(t.invite_state.events);return new p5(e,f5.INVITED,r)}static fromLeft(e,t){const r=[...t.state.events,...t.timeline.events],n=p5.getMembersFromEvents(r),i=p5.getMessagesFromEvents(r);return new p5(e,f5.LEFT,n,i)}static getMembersFromEvents(e){return p5.getUniqueEvents(e.filter((e=>(e=>"m.room.create"===e.type&&e.content instanceof Object&&"creator"in e.content)(e)||(e=>"m.room.member"===e.type&&e.content instanceof Object&&"membership"in e.content&&"join"===e.content.membership)(e)))).map((e=>e.sender)).filter(((e,t,r)=>r.indexOf(e)===t))}static getMessagesFromEvents(e){return p5.getUniqueEvents(e.filter(d5)).map((e=>u5.from(e))).filter(Boolean)}static getUniqueEvents(e){const t={},r=[];return e.forEach(((e,n)=>{const i=e.event_id;void 0!==i&&i in t||(void 0!==i&&(t[i]=n),r.push(e))})),r}constructor(e,t=f5.UNKNOWN,r=[],n=[]){this.id=e,this.status=t,this.members=r,this.messages=n}}const m5=["syncToken","rooms"];class g5{storage;state={isRunning:!1,userId:void 0,deviceId:void 0,txnNo:0,accessToken:void 0,syncToken:void 0,pollingTimeout:void 0,pollingRetries:0,rooms:{}};onStateChangedListeners=new Map;waitReadyPromise;constructor(e){this.storage=e,this.waitReadyPromise=new Promise((async(e,t)=>{try{await this.initFromStorage(),e()}catch(r){t(r)}}))}get(e){return this.state[e]}getRoom(e){const t=p5.from(e,f5.UNKNOWN);return this.state.rooms[t.id]||t}async update(e){await this.waitReady();const t=Object.assign({},this.state);this.setState(e),this.updateStorage(e),this.notifyListeners(t,this.state,e)}onStateChanged(e,...t){t.length>0?t.forEach((t=>{this.onStateChangedListeners.set(t,e)})):this.onStateChangedListeners.set("all",e)}async waitReady(){return this.waitReadyPromise}async initFromStorage(){const e=await this.storage.get(I0.MATRIX_PRESERVED_STATE);this.setState(e)}prepareData(e){const t=["rooms"].some((t=>void 0!==e[t]))?JSON.parse(JSON.stringify(e)):e;return Object.values(t.rooms||{}).forEach((e=>{e.messages=[]})),t}updateStorage(e){const t=Object.entries(e).filter((([e,t])=>m5.includes(e)&&Boolean(t)));if(t.length>0){const e={};m5.forEach((t=>{e[t]=this.state[t]})),this.storage.set(I0.MATRIX_PRESERVED_STATE,this.prepareData(e))}}setState(e){this.state={isRunning:e.isRunning||this.state.isRunning,userId:e.userId||this.state.userId,deviceId:e.deviceId||this.state.deviceId,txnNo:e.txnNo||this.state.txnNo,accessToken:e.accessToken||this.state.accessToken,syncToken:e.syncToken||this.state.syncToken,pollingTimeout:e.pollingTimeout||this.state.pollingTimeout,pollingRetries:e.pollingRetries||this.state.pollingRetries,rooms:this.mergeRooms(this.state.rooms,e.rooms)}}mergeRooms(e,t){if(!t)return e;const r=Array.isArray(t)?t:Object.values(t),n=Object.assign({},e);return r.forEach((t=>{n[t.id]=p5.merge(t,e[t.id])})),n}notifyListeners(e,t,r){const n=this.onStateChangedListeners.get("all");n&&n(e,t,r),c0(r).filter((e=>void 0!==r[e])).forEach((n=>{const i=this.onStateChangedListeners.get(n);i&&i(e,t,r)}))}}const v5=new o1("MatrixHttpClient");class y5{baseUrl;cancelTokenSource;constructor(e){this.baseUrl=e,this.cancelTokenSource=c5.CancelToken.source()}async get(e,t,r){return this.send("GET",e,r,t)}async post(e,t,r,n){return this.send("POST",e,r,n,t)}async put(e,t,r,n){return this.send("PUT",e,r,n,t)}async cancelAllRequests(){return this.cancelTokenSource.cancel("Manually cancelled")}async send(e,t,r,n,i){const o=r?this.getHeaders(r):void 0,a=n?this.getParams(n):void 0;let s;try{s=await c5.request({method:e,url:t,baseURL:this.apiUrl("/_matrix/client/r0"),headers:o,data:i,params:a,cancelToken:this.cancelTokenSource.token})}catch(c){const e=c;throw v5.error("send",e.code,e.message,e.response.data),c.response.data}return s.data}getHeaders(e){const t={},r=[];if(e.accessToken&&r.push(["Authorization",`Bearer ${e.accessToken}`]),0!==r.length){for(const[e,n]of r)t[e]=n;return t}}getParams(e){if(!e)return;const t=Object.assign(e,{});return c0(t).forEach((e=>void 0===t[e]&&delete t[e])),t}apiUrl(...e){return[this.baseUrl.endsWith("/")?this.baseUrl.substr(0,this.baseUrl.length-1):this.baseUrl,...e.map((e=>e.startsWith("/")?e.substr(1):e))].join("/")}}class b5{httpClient;constructor(e){this.httpClient=e}async createRoom(e,t={}){return this.httpClient.post("/createRoom",t,{accessToken:e})}async inviteToRoom(e,t,r){return r.status!==f5.JOINED&&r.status!==f5.UNKNOWN?Promise.reject(`User is not a member of room ${r.id}.`):this.httpClient.post(`/rooms/${encodeURIComponent(r.id)}/invite`,{user_id:t},{accessToken:e})}async joinRoom(e,t){return t.status===f5.JOINED?Promise.resolve({room_id:t.id}):this.httpClient.post(`/rooms/${encodeURIComponent(t.id)}/join`,{},{accessToken:e})}async getJoinedRooms(e){return this.httpClient.get("/joined_rooms",void 0,{accessToken:e})}}class w5{httpClient;constructor(e){this.httpClient=e}async login(e,t,r){return this.httpClient.post("/login",{type:"m.login.password",identifier:{type:"m.id.user",user:e},password:t,device_id:r})}}class x5{httpClient;cachedPromises=new Map;constructor(e){this.httpClient=e}async sync(e,t){return this.withCache("sync",(()=>this.httpClient.get("/sync",{timeout:t?t.pollingTimeout:void 0,since:t?t.syncToken:void 0},{accessToken:e})))}async sendMessage(e,t,r,n){return new Promise(((i,o)=>this.scheduleEvent({accessToken:e,roomId:t,type:"m.room.message",content:r,txnId:n,onSuccess:i,onError:o})))}scheduleEvent(e){this.sendEvent(e)}async sendEvent(e){const{roomId:t,type:r,txnId:n,content:i,accessToken:o}=e;try{const a=await this.httpClient.put(`/rooms/${encodeURIComponent(t)}/send/${r}/${encodeURIComponent(n)}`,i,{accessToken:o});e.onSuccess(a)}catch(a){e.onError(a)}}withCache(e,t){let r=this.cachedPromises.get(e);return r||(r=t().finally((()=>{this.cachedPromises.delete(e)})),this.cachedPromises.set(e,r)),r}}class _5{events={};on(e,t){return"object"!==typeof this.events[e]&&(this.events[e]=[]),this.events[e].push(t),()=>this.removeListener(e,t)}removeListener(e,t){if("object"!==typeof this.events[e])return;if(!t)return void(this.events[e]=[]);const r=this.events[e].indexOf(t);r>-1&&this.events[e].splice(r,1)}removeAllListeners(){Object.keys(this.events).forEach((e=>this.events[e].splice(0,this.events[e].length)))}emit(e,...t){"object"===typeof this.events[e]&&[...this.events[e]].forEach((e=>e.apply(this,t)))}once(e,t){const r=this.on(e,((...e)=>{r(),t.apply(this,e)}));return r}}var k5;!function(e){e.INVITE="invite",e.MESSAGE="message"}(k5||(k5={}));class S5 extends _5{eventEmitProviders=new Map([[k5.INVITE,()=>[this.isInvite,this.emitInvite.bind(this)]],[k5.MESSAGE,()=>[this.isMessage,this.emitMessage.bind(this)]]]);onStateChanged(e,t,r){for(const n of c0(k5))this.emitIfEvent(k5[n],r)}emitIfEvent(e,t){const r=this.eventEmitProviders.get(e);if(r){const[n,i]=r();n(t)&&i(e,t)}}emitClientEvent(e,t,r){this.emit(e,{type:e,content:t,timestamp:r})}isInvite(e){return!!e.rooms&&e.rooms.some((e=>e.status===f5.INVITED))}emitInvite(e,t){t.rooms.filter((e=>e.status===f5.INVITED)).map((e=>[e.id,e.members])).forEach((([t,r])=>{this.emitClientEvent(e,{roomId:t,members:r})}))}isMessage(e){return!!e.rooms&&e.rooms.some((e=>e.messages.length>0))}emitMessage(e,t){t.rooms.filter((e=>e.messages.length>0)).map((e=>e.messages.map((t=>[e.id,t,t.timestamp])))).reduce(((e,t)=>e.concat(t)),[]).forEach((([t,r,n])=>{this.emitClientEvent(e,{roomId:t,message:r},n)}))}}const E5=new o1("MatrixClient");class A5{store;eventEmitter;userService;roomService;eventService;httpClient;isActive=!0;_isReady=new u0;constructor(e,t,r,n,i,o){this.store=e,this.eventEmitter=t,this.userService=r,this.roomService=n,this.eventService=i,this.httpClient=o,this.store.onStateChanged(((e,t,r)=>{this.eventEmitter.onStateChanged(e,t,r)}),"rooms")}static create(e){const t=new g5(e.storage),r=new S5,n=new y5(e.baseUrl),i=new w5(n),o=new b5(n),a=new x5(n);return new A5(t,r,i,o,a,n)}get joinedRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===f5.JOINED)))}))}get invitedRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===f5.INVITED)))}))}get leftRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===f5.LEFT)))}))}async start(e){const t=await this.userService.login(e.id,e.password,e.deviceId);await this.store.update({accessToken:t.access_token});const r=new Promise((async(e,t)=>{await this.poll(0,(async t=>{this.store.get("isRunning")||e(),await this.store.update({isRunning:!0,syncToken:t.next_batch,pollingTimeout:3e4,pollingRetries:0,rooms:p5.fromSync(t.rooms)})}),(async e=>{this.store.get("isRunning")||t(e),await this.store.update({isRunning:!1,pollingRetries:this.store.get("pollingRetries")+1})}))}));return r.then((()=>{this._isReady.resolve()})).catch(console.error),r}async isConnected(){return this._isReady.promise}async stop(){return E5.log("MATRIX CLIENT STOPPED"),this.isActive=!1,this._isReady=new u0,this.httpClient.cancelAllRequests()}subscribe(e,t){this.eventEmitter.on(e,t)}unsubscribe(e,t){t&&this.eventEmitter.removeListener(e,t)}unsubscribeAll(e){this.eventEmitter.removeListener(e)}async getRoomById(e){return await this.isConnected(),this.store.getRoom(e)}async createTrustedPrivateRoom(...e){return await this.isConnected(),this.requiresAuthorization("createRoom",(async t=>(await this.roomService.createRoom(t,{room_version:"5",invite:e,preset:"public_chat",is_direct:!0})).room_id))}async inviteToRooms(e,...t){await this.isConnected(),await this.requiresAuthorization("invite",(r=>Promise.all(t.map((t=>{const n=this.store.getRoom(t);this.roomService.inviteToRoom(r,e,n).catch((e=>E5.warn("inviteToRooms",e)))})))))}async joinRooms(...e){await this.isConnected(),await this.requiresAuthorization("join",(t=>Promise.all(e.map((e=>{const r=this.store.getRoom(e);return this.roomService.joinRoom(t,r)})))))}async sendTextMessage(e,t){await this.isConnected(),await this.requiresAuthorization("send",(async r=>{const n=await this.createTxnId();return this.eventService.sendMessage(r,e,{msgtype:"m.text",body:t},n)}))}async poll(e,t,r){const n=this.store,i=this.sync.bind(this),o=async(a,s)=>{let c=0;try{const e=await i();t(e)}catch(l){r(l),c=n.get("pollingRetries"),this.isActive&&E5.log(`Retry syncing... ${c} retries so far`)}finally{this.isActive?setTimeout((async()=>{await o(a,s)}),c>3?5e3+e:e):s(new Error("Syncing stopped manually."))}};return new Promise(o)}async sync(){return this.requiresAuthorization("sync",(async e=>this.eventService.sync(e,{pollingTimeout:this.store.get("pollingTimeout"),syncToken:this.store.get("syncToken")})))}async requiresAuthorization(e,t){const r=this.store.get("accessToken");return r?t(r):Promise.reject(`${e} requires authorization but no access token has been provided.`)}async createTxnId(){const e=(new Date).getTime(),t=this.store.get("txnNo");return await this.store.update({txnNo:t+1}),`m${e}.${t}`}}var P5=r(9673).Buffer;const O5=new o1("P2PCommunicationClient"),T5={[F0.EUROPE_WEST]:["beacon-node-1.diamond.papers.tech","beacon-node-1.sky.papers.tech","beacon-node-2.sky.papers.tech","beacon-node-1.hope.papers.tech","beacon-node-1.hope-2.papers.tech","beacon-node-1.hope-3.papers.tech","beacon-node-1.hope-4.papers.tech","beacon-node-1.hope-5.papers.tech"],[F0.NORTH_AMERICA_EAST]:["beacon-node-1.beacon-server-1.papers.tech"],[F0.NORTH_AMERICA_WEST]:["beacon-node-1.beacon-server-2.papers.tech"],[F0.ASIA_EAST]:["beacon-node-1.beacon-server-3.papers.tech"],[F0.AUSTRALIA]:["beacon-node-1.beacon-server-4.papers.tech"]},C5=e=>new Promise((t=>setTimeout(t,e)));class j5 extends b1{name;replicationCount;storage;iconUrl;appUrl;client=new u0;initialEvent;initialListener;selectedRegion;ENABLED_RELAY_SERVERS;relayServer;activeListeners=new Map;ignoredRooms=[];loginCounter=0;constructor(e,t,r,n,i,o,a){super(t),this.name=e,this.replicationCount=r,this.storage=n,this.iconUrl=o,this.appUrl=a,O5.log("constructor","P2PCommunicationClient created"),this.ENABLED_RELAY_SERVERS=T5,i&&(this.ENABLED_RELAY_SERVERS={...T5,...i})}async getPairingRequestInfo(){const e=new N0(await k0(),this.name,await this.getPublicKey(),"3",(await this.getRelayServer()).server);return this.iconUrl&&(e.icon=this.iconUrl),this.appUrl&&(e.appUrl=this.appUrl),e}async getPairingResponseInfo(e){const t=new U0(e.id,this.name,await this.getPublicKey(),e.version,(await this.getRelayServer()).server);return this.iconUrl&&(t.icon=this.iconUrl),this.appUrl&&(t.appUrl=this.appUrl),t}async findBestRegionAndGetServer(){if(this.selectedRegion)return this.relayServer?.promiseResult;const e=Object.keys(this.ENABLED_RELAY_SERVERS),t=[],r=new u0;let n=0;const i=new u0;e.forEach((e=>{const o=this.ENABLED_RELAY_SERVERS[e]??[];if(0===o.length)return;n+=2;const a=(o=!0)=>{const c=Date.now();Promise.race([this.getBeaconInfo(s),i.promise]).then((i=>{"boolean"!==typeof i&&(t.push({time:Date.now()-c,server:s,region:e,result:i}),t.length>=n&&r.resolve(void 0),o||a(!0))}))},s=o[Math.floor(Math.random()*o.length)];a(!1)})),await Promise.race([r.promise,C5(1e3)]);let o=0;for(;t.length<=0;){if(o>=100)throw new Error("No server responded.");await C5(50),o++}i.resolve(!0);const a=t.reduce(((e,t)=>e.time0){const t=await this.getBeaconInfo(e);return this.relayServer.resolve({server:e,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:e,timestamp:t.timestamp}}const t=await this.findBestRegionAndGetServer();if(!t)throw new Error("No servers found");return this.storage.set(I0.MATRIX_SELECTED_NODE,t.server).catch((e=>O5.log(e))),this.relayServer.resolve({server:t.server,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:t.server,timestamp:t.timestamp}}async getBeaconInfo(e){return c5.get(`https://${e}/_synapse/client/beacon/info`).then((e=>({region:e.data.region,known_servers:e.data.known_servers,timestamp:Math.floor(e.data.timestamp)})))}async tryJoinRooms(e,t=1){try{await(await this.client.promise).joinRooms(e)}catch(r){t<=10&&"M_FORBIDDEN"===r.errcode?(O5.log("Retrying to join...",r),setTimeout((async()=>{await this.tryJoinRooms(e,t+1)}),200)):O5.log(`Failed to join after ${t} tries.`,r)}}async start(){O5.log("start","starting client"),O5.log("start","connecting to server");const e=await this.getRelayServer(),t=A5.create({baseUrl:`https://${e.server}`,storage:this.storage});if(this.initialListener=async e=>{this.initialEvent&&this.initialEvent.timestamp&&e&&e.timestamp?this.initialEvent.timestamp{let t;1===e.content.members.length&&(t=e.content.members[0]),await this.tryJoinRooms(e.content.roomId),t&&(await this.updateRelayServer(t),await this.updatePeerRoom(t,e.content.roomId))})),!e.timestamp)throw new Error("No timestamp received from relay server");const r=Math.floor(e.timestamp),n=`login:${Math.floor(r/300)}`;O5.log("start",`login ${n}, ${await this.getPublicKeyHash()} on ${e.server}`);const i=(0,xS.hash)((0,f0.lF)(n),32),o=this.keyPair.secretKey??this.keyPair.privateKey,a=(0,wS._S)(o,i);try{await t.start({id:await this.getPublicKeyHash(),password:`ed:${g0(a)}:${await this.getPublicKey()}`,deviceId:g0(this.keyPair.publicKey)})}catch(s){if(O5.error("start","Could not log in, retrying"),await this.reset(),!this.selectedRegion)throw new Error("No region selected.");if(this.loginCounter<=(this.ENABLED_RELAY_SERVERS[this.selectedRegion]??[]).length)return this.loginCounter++,void this.start();throw O5.error("start","Tried to log in to every known beacon node, but no login was successful."),new Error("Could not connect to any beacon nodes. Try again later.")}O5.log("start","login successful, client is ready"),this.client.resolve(t)}async stop(){O5.log("stop","stopping client"),this.client.isResolved()&&await(await this.client.promise).stop().catch((e=>O5.error(e))),await this.reset()}async reset(){O5.log("reset","resetting connection"),await this.storage.delete(I0.MATRIX_PEER_ROOM_IDS).catch((e=>O5.log(e))),await this.storage.delete(I0.MATRIX_PRESERVED_STATE).catch((e=>O5.log(e))),await this.storage.delete(I0.MATRIX_SELECTED_NODE).catch((e=>O5.log(e))),this.relayServer=void 0,this.client=new u0,this.initialEvent=void 0,this.initialListener=void 0}async listenForEncryptedMessage(e,t){if(this.activeListeners.has(e))return;O5.log("listenForEncryptedMessage",`start listening for encrypted messages from publicKey ${e}`);const r=await this.createCryptoBoxServer(e,this.keyPair),n=async n=>{if(this.isTextMessage(n.content)&&await this.isSender(n,e)){let o;await this.updateRelayServer(n.content.message.sender),await this.updatePeerRoom(n.content.message.sender,n.content.roomId);try{o=P5.from(n.content.message.content,"hex")}catch{}if(o&&o.length>=40)try{const n=await w0(o,r.receive);O5.log("listenForEncryptedMessage",`received a message from ${e}`,n),t(n)}catch(i){}}};this.activeListeners.set(e,n),(await this.client.promise).subscribe(k5.MESSAGE,n);const i=this.initialEvent;i&&i.timestamp&&(new Date).getTime()-i.timestamp<3e5?(O5.log("listenForEncryptedMessage","Handling previous event"),await n(i)):O5.log("listenForEncryptedMessage","No previous event found");const o=this.initialListener;o&&(await this.client.promise).unsubscribe(k5.MESSAGE,o),this.initialListener=void 0,this.initialEvent=void 0}async unsubscribeFromEncryptedMessage(e){const t=this.activeListeners.get(e);t&&((await this.client.promise).unsubscribe(k5.MESSAGE,t),this.activeListeners.delete(e))}async unsubscribeFromEncryptedMessages(){(await this.client.promise).unsubscribeAll(k5.MESSAGE),this.activeListeners.clear()}async sendMessage(e,t){const r=await this.createCryptoBoxClient(t.publicKey,this.keyPair),n=x0(await v0(P5.from(t.publicKey,"hex")),t.relayServer),i=await this.getRelevantRoom(n);await this.waitForJoin(i);const o=await b0(e,r.send);O5.log("sendMessage","sending encrypted message",t.publicKey,i,e),(await this.client.promise).sendTextMessage(i,o).catch((async e=>{if("M_FORBIDDEN"===e.errcode){O5.log("sendMessage","M_FORBIDDEN",i,e),await this.deleteRoomIdFromRooms(i);const t=await this.getRelevantRoom(n);O5.log("sendMessage","Old room deleted, new room created",t),(await this.client.promise).sendTextMessage(t,o).catch((async e=>{O5.log("sendMessage","inner error",t,e)}))}else O5.log("sendMessage","unexpected error",e)}))}async updatePeerRoom(e,t){O5.log("updatePeerRoom",e,t);const r=e.split(":");if(r.length<2||!r[0].startsWith("@"))throw new Error("Invalid sender");const n=await this.storage.get(I0.MATRIX_PEER_ROOM_IDS),i=n[e];i===t&&O5.debug("updatePeerRoom","rooms are the same, not updating"),O5.debug("updatePeerRoom","current room",i,"new room",t),i&&i[1]&&(O5.log("updatePeerRoom",`adding room "${i[1]}" to ignored array`),this.ignoredRooms.push(i[1])),n[e]=t,await this.storage.set(I0.MATRIX_PEER_ROOM_IDS,n)}async deleteRoomIdFromRooms(e){const t=await this.storage.get(I0.MATRIX_PEER_ROOM_IDS),r=Object.entries(t).filter((t=>t[1]!==e)).reduce(((e,t)=>({...e,[t[0]]:t[1]})),{});await this.storage.set(I0.MATRIX_PEER_ROOM_IDS,r),this.ignoredRooms.push(e)}async listenForChannelOpening(e){O5.debug("listenForChannelOpening"),(await this.client.promise).subscribe(k5.MESSAGE,(async t=>{if(this.isTextMessage(t.content)&&await this.isChannelOpenMessage(t.content)){O5.log("listenForChannelOpening","channel opening received, trying to decrypt",JSON.stringify(t)),await this.updateRelayServer(t.content.message.sender),await this.updatePeerRoom(t.content.message.sender,t.content.roomId);const n=t.content.message.content.split(":"),i=P5.from(n[n.length-1],"hex");if(i.length>=40)try{const t=JSON.parse(await async function(e,t,r){const n=(0,wS.a_)(m0.from(r)),i=(0,wS.J$)(m0.from(t)),o="string"===typeof e?(0,f0.lF)(e):e,a=o.slice(0,32),s=o.slice(32),c=new xS.BLAKE2b(24).update(a,32).update(i,32).digest(),l=(0,HP.openBox)(a,n,c,s);if(!l)throw new Error("Decryption failed");return m0.from(l).toString()}(i,this.keyPair.publicKey,this.keyPair.secretKey));O5.log("listenForChannelOpening","channel opening received and decrypted",JSON.stringify(t)),e({...t,senderId:await n1(t.publicKey)})}catch(r){}}}))}async waitForJoin(e,t=0){const r=await(await this.client.promise).getRoomById(e);if(O5.log("waitForJoin",`Currently ${r.members.length} members, we need at least 2`),!(r.members.length>=2)){if(t<=200)return O5.log(`Waiting for join... Try: ${t}`),new Promise((r=>{setTimeout((()=>{r(this.waitForJoin(e,t+1))}),100*(t>50?10:1))}));throw new Error(`No one joined after ${t} tries.`)}}async sendPairingResponse(e){O5.log("sendPairingResponse");const t=x0(await v0(P5.from(e.publicKey,"hex")),e.relayServer),r=await(await this.client.promise).createTrustedPrivateRoom(t);O5.debug("sendPairingResponse",`Connecting to room "${r}"`),await this.updatePeerRoom(t,r),await this.waitForJoin(r),O5.debug("sendPairingResponse","Successfully joined room.");const n="undefined"===typeof e.version?await this.getPublicKey():JSON.stringify(await this.getPairingResponseInfo(e));O5.debug("sendPairingResponse","Sending pairing response",n);const i=await this.encryptMessageAsymmetric(e.publicKey,n),o=["@channel-open",t,i].join(":");(await this.client.promise).sendTextMessage(r,o).catch((async e=>{if("M_FORBIDDEN"===e.errcode){O5.log("sendPairingResponse","M_FORBIDDEN",r,e),await this.deleteRoomIdFromRooms(r);const n=await this.getRelevantRoom(t);O5.log("sendPairingResponse","Old room deleted, new room created",n),(await this.client.promise).sendTextMessage(n,o).catch((async e=>{O5.log("sendPairingResponse","inner error",n,e)}))}else O5.log("sendPairingResponse","unexpected error",e)}))}isTextMessage(e){return e.message.type===l5.TEXT}async updateRelayServer(e){O5.log("updateRelayServer",e);const t=e.split(":");if(t.length<2||!t[0].startsWith("@"))throw new Error("Invalid sender");const r=t.shift(),n=t.join(":"),i=localStorage.getItem("beacon:communication-peers-dapp")?new g1(this.storage,I0.TRANSPORT_P2P_PEERS_DAPP):new g1(this.storage,I0.TRANSPORT_P2P_PEERS_WALLET),o=(await i.getPeers()).map((async e=>{`@${await v0(P5.from(e.publicKey,"hex"))}`===r&&e.relayServer!==n&&(e.relayServer=n,await i.addPeer(e))}));await Promise.all(o)}async isChannelOpenMessage(e){return e.message.content.startsWith(`@channel-open:@${await v0(P5.from(await this.getPublicKey(),"hex"))}`)}async isSender(e,t){return e.content.message.sender.startsWith(`@${await v0(P5.from(t,"hex"))}`)}async getRelevantRoom(e){const t=await this.storage.get(I0.MATRIX_PEER_ROOM_IDS);let r=t[e];if(!r){O5.log("getRelevantRoom",`No room found for peer ${e}, checking joined ones.`);const n=await this.getRelevantJoinedRoom(e);r=n.id,t[e]=n.id,await this.storage.set(I0.MATRIX_PEER_ROOM_IDS,t)}return O5.log("getRelevantRoom",`Using room ${r}`),r}async getRelevantJoinedRoom(e){const t=await(await this.client.promise).joinedRooms;O5.log("checking joined rooms",t,e);const r=t.filter((e=>!this.ignoredRooms.some((t=>e.id===t)))).filter((t=>t.members.some((t=>t===e))));let n;if(0===r.length||this.ignoredRooms.length>0){O5.log("getRelevantJoinedRoom","no relevant rooms found, creating new one");const t=await(await this.client.promise).createTrustedPrivateRoom(e);n=await(await this.client.promise).getRoomById(t),O5.log("getRelevantJoinedRoom",`waiting for other party to join room: ${n.id}`),await this.waitForJoin(t),O5.log("getRelevantJoinedRoom",`new room created and peer invited: ${n.id}`)}else n=r[0],O5.log("getRelevantJoinedRoom",`channel already open, reusing room ${n.id}`);return n}}const R5=new o1("P2PTransport");class I5 extends u1{type=R0.P2P;constructor(e,t,r,n,i,o,a){super(e,new j5(e,t,1,r,n,o,a),new g1(r,i))}static async isAvailable(){return Promise.resolve(!0)}async connect(){if(this._isConnected!==j0.NOT_CONNECTED)return;R5.log("connect"),this._isConnected=j0.CONNECTING,await this.client.start();const e=await this.getPeers();if(e.length>0){R5.log("connect",`connecting to ${e.length} peers`);const t=e.map((async e=>this.listen(e.publicKey)));Promise.all(t).catch((e=>R5.error("connect",e)))}return await this.startOpenChannelListener(),super.connect()}async disconnect(){return await this.client.stop(),super.disconnect()}async startOpenChannelListener(){}async getPairingRequestInfo(){return this.client.getPairingRequestInfo()}async listen(e){await this.client.listenForEncryptedMessage(e,(t=>{const r={origin:O0.P2P,id:e};this.notifyListeners(t,r).catch((e=>{throw e}))})).catch((e=>{throw e}))}}class M5 extends I5{constructor(e,t,r,n,i,o){super(e,t,r,n,I0.TRANSPORT_P2P_PEERS_WALLET,i,o)}async addPeer(e,t=!0){await super.addPeer(e),t&&await this.client.sendPairingResponse(e)}}const L5=new o1("IncomingRequestInterceptor");class N5{static async intercept(e){L5.log("INTERCEPTING REQUEST",e.message),"2"===e.message.version?N5.handleV2Message(e):"3"===e.message.version&&N5.handleV3Message(e)}static async getAppMetadata(e,t){const r=await e.getAppMetadata(t);if(!r)throw new Error("AppMetadata not found");return r}static async handleV2Message(e){const{message:t,connectionInfo:r,appMetadataManager:n,interceptorCallback:i}=e;switch(t.type){case S0.PermissionRequest:L5.log("PERMISSION REQUEST V*",t),t.appMetadata.beaconId&&!t.appMetadata.senderId&&(t.appMetadata.senderId=t.appMetadata.beaconId,delete t.appMetadata.beaconId),await n.addAppMetadata(t.appMetadata);i(t,r);break;case S0.OperationRequest:i({appMetadata:await N5.getAppMetadata(n,t.senderId),...t},r);break;case S0.SignPayloadRequest:i({appMetadata:await N5.getAppMetadata(n,t.senderId),...t},r);break;case S0.BroadcastRequest:i({appMetadata:await N5.getAppMetadata(n,t.senderId),...t},r);break;case S0.ProofOfEventChallengeRequest:i({appMetadata:await N5.getAppMetadata(n,t.senderId),...t},r);break;case S0.ProofOfEventChallengeRecorded:i({appMetadata:await N5.getAppMetadata(n,t.senderId),...t},r);break;default:L5.log("intercept","Message not handled"),D5(t)}}static async handleV3Message(e){const{message:t,connectionInfo:r,appMetadataManager:n,interceptorCallback:i}=e,o=t,a=o.message;switch(a.type){case S0.PermissionRequest:await n.addAppMetadata({...a.blockchainData.appMetadata,senderId:t.senderId});i(o,r);break;case S0.BlockchainRequest:i({...o},r);break;default:L5.log("intercept","Message not handled"),D5(a)}}}function D5(e){throw new Error("Function not implemented.")}const z5=new o1("OutgoingResponseInterceptor");class B5{static async intercept(e){"2"===e.request.version?B5.handleV2Message(e):"3"===e.request.version&&B5.handleV3Message(e)}static async handleV3Message(e){const{message:t,appMetadataManager:r,interceptorCallback:n}=e,i=t.message;z5.log("LOGGING OUTGOING V3",i,r),n(t)}static async handleV2Message(e){const{senderId:t,request:r,message:n,ownAppMetadata:i,permissionManager:o,appMetadataManager:a,interceptorCallback:s}=e;switch(n.type){case S0.Error:{const e={type:n.type,version:"2",senderId:t,id:n.id,errorType:n.errorType};if(n.errorType===C0.TRANSACTION_INVALID_ERROR&&n.errorData){const t=n.errorData;Array.isArray(t)&&t.every((e=>Boolean(e.kind)&&Boolean(e.id)))?e.errorData=n.errorData:z5.warn("ErrorData provided is not in correct format. It needs to be an array of RPC errors. It will not be included in the message sent to the dApp")}s(e);break}case S0.Acknowledge:s({type:n.type,version:"2",senderId:t,id:n.id});break;case S0.PermissionResponse:{const e={senderId:t,version:"2",appMetadata:i,...n};if(!e.address&&!e.publicKey)throw new Error("Address or PublicKey must be defined");const c=e.publicKey,l=e.address??await async function(e){const t={edpk:{length:54,prefix:m0.from(new Uint8Array([6,161,159]))},sppk:{length:55,prefix:m0.from(new Uint8Array([6,161,161]))},p2pk:{length:55,prefix:m0.from(new Uint8Array([6,161,164]))}};let r,n;if(64===e.length)r=t.edpk.prefix,n=e;else{const i=Object.entries(t);for(let t=0;t{if(!["tz1","tz2","tz3","tz4","KT1","txr1","sr1"].some((t=>e.toLowerCase().startsWith(t.toLowerCase()))))return!1;try{d0.decode(e)}catch(t){return!1}return!0})(l))throw new Error(`Invalid address: "${l}"`);if("abstracted_account"===n.walletType&&"KT1"!==l.substring(0,3))throw new Error(`Invalid abstracted account address "${l}", it should be a KT1 address`);const u=await a.getAppMetadata(r.senderId);if(!u)throw new Error("AppMetadata not found");const d={accountIdentifier:await Q0(l,e.network),senderId:r.senderId,appMetadata:u,website:"",address:l,publicKey:c,network:e.network,scopes:e.scopes,connectedAt:(new Date).getTime()};o.addPermission(d).catch(console.error),s(e);break}case S0.OperationResponse:s({senderId:t,version:"2",...n});break;case S0.SignPayloadResponse:s({senderId:t,version:"2",...n});break;case S0.BroadcastResponse:s({senderId:t,version:"2",...n});break;case S0.ProofOfEventChallengeResponse:s({senderId:t,version:"2",...n});break;default:z5.log("intercept","Message not handled"),function(e){throw new Error("Function not implemented.")}()}}}const F5=new o1("WalletClient");var U5=wn((function(e,t){const{ratio:r=4/3,children:n,className:o,...a}=e,s=i.Children.only(n),c=v("chakra-aspect-ratio",o);return(0,xn.jsx)(bn.div,{ref:t,position:"relative",className:c,_before:{height:0,content:'""',display:"block",paddingBottom:On(r,(e=>1/e*100+"%"))},__css:{"& > *:not(style)":{overflow:"hidden",position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:"flex",justifyContent:"center",alignItems:"center",width:"100%",height:"100%"},"& > img, & > video":{objectFit:"cover"}},...a,children:s})}));U5.displayName="AspectRatio";var $5=Object.defineProperty,H5=(e,t,r)=>(((e,t,r)=>{t in e?$5(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r);function V5(e){return e.sort(((e,t)=>{const r=e.compareDocumentPosition(t);if(r&Node.DOCUMENT_POSITION_FOLLOWING||r&Node.DOCUMENT_POSITION_CONTAINED_BY)return-1;if(r&Node.DOCUMENT_POSITION_PRECEDING||r&Node.DOCUMENT_POSITION_CONTAINS)return 1;if(r&Node.DOCUMENT_POSITION_DISCONNECTED||r&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC)throw Error("Cannot sort the given nodes.");return 0}))}function q5(e,t,r){let n=e+1;return r&&n>=t&&(n=0),n}function K5(e,t,r){let n=e-1;return r&&n<0&&(n=t),n}var W5="undefined"!==typeof window?i.useLayoutEffect:i.useEffect,G5=e=>e,Z5=class{constructor(){H5(this,"descendants",new Map),H5(this,"register",(e=>{var t;if(null!=e)return"object"==typeof(t=e)&&"nodeType"in t&&t.nodeType===Node.ELEMENT_NODE?this.registerNode(e):t=>{this.registerNode(t,e)}})),H5(this,"unregister",(e=>{this.descendants.delete(e);const t=V5(Array.from(this.descendants.keys()));this.assignIndex(t)})),H5(this,"destroy",(()=>{this.descendants.clear()})),H5(this,"assignIndex",(e=>{this.descendants.forEach((t=>{const r=e.indexOf(t.node);t.index=r,t.node.dataset.index=t.index.toString()}))})),H5(this,"count",(()=>this.descendants.size)),H5(this,"enabledCount",(()=>this.enabledValues().length)),H5(this,"values",(()=>Array.from(this.descendants.values()).sort(((e,t)=>e.index-t.index)))),H5(this,"enabledValues",(()=>this.values().filter((e=>!e.disabled)))),H5(this,"item",(e=>{if(0!==this.count())return this.values()[e]})),H5(this,"enabledItem",(e=>{if(0!==this.enabledCount())return this.enabledValues()[e]})),H5(this,"first",(()=>this.item(0))),H5(this,"firstEnabled",(()=>this.enabledItem(0))),H5(this,"last",(()=>this.item(this.descendants.size-1))),H5(this,"lastEnabled",(()=>{const e=this.enabledValues().length-1;return this.enabledItem(e)})),H5(this,"indexOf",(e=>{var t,r;return e&&null!=(r=null==(t=this.descendants.get(e))?void 0:t.index)?r:-1})),H5(this,"enabledIndexOf",(e=>null==e?-1:this.enabledValues().findIndex((t=>t.node.isSameNode(e))))),H5(this,"next",((e,t=!0)=>{const r=q5(e,this.count(),t);return this.item(r)})),H5(this,"nextEnabled",((e,t=!0)=>{const r=this.item(e);if(!r)return;const n=q5(this.enabledIndexOf(r.node),this.enabledCount(),t);return this.enabledItem(n)})),H5(this,"prev",((e,t=!0)=>{const r=K5(e,this.count()-1,t);return this.item(r)})),H5(this,"prevEnabled",((e,t=!0)=>{const r=this.item(e);if(!r)return;const n=K5(this.enabledIndexOf(r.node),this.enabledCount()-1,t);return this.enabledItem(n)})),H5(this,"registerNode",((e,t)=>{if(!e||this.descendants.has(e))return;const r=V5(Array.from(this.descendants.keys()).concat(e));(null==t?void 0:t.disabled)&&(t.disabled=!!t.disabled);const n={node:e,index:-1,...t};this.descendants.set(e,n),this.assignIndex(r)}))}};var[Y5,X5]=Rn({name:"DescendantsProvider",errorMessage:"useDescendantsContext must be used within DescendantsProvider"});function J5(){return[G5(Y5),()=>G5(X5()),()=>function(){const e=(0,i.useRef)(new Z5);return W5((()=>()=>e.current.destroy())),e.current}(),e=>function(e){const t=X5(),[r,n]=(0,i.useState)(-1),o=(0,i.useRef)(null);W5((()=>()=>{o.current&&t.unregister(o.current)}),[]),W5((()=>{if(!o.current)return;const e=Number(o.current.dataset.index);r==e||Number.isNaN(e)||n(e)}));const a=G5(e?t.register(e):t.register);return{descendants:t,index:r,enabledIndex:t.enabledIndexOf(o.current),register:Zn(a,o)}}(e)]}var[Q5,e3]=Rn({name:"AccordionStylesContext",hookName:"useAccordionStyles",providerName:""}),[t3,r3]=Rn({name:"AccordionItemContext",hookName:"useAccordionItemContext",providerName:""}),[n3,i3,o3,a3]=J5();function s3(e){const{value:t,defaultValue:r,onChange:n,shouldUpdate:o=((e,t)=>e!==t)}=e,a=Hm(n),s=Hm(o),[c,l]=(0,i.useState)(r),u=void 0!==t,d=u?t:c,h=Hm((e=>{const t="function"===typeof e?e(d):e;s(d,t)&&(u||l(t),a(t))}),[u,a,d,s]);return[d,h]}function c3(e){const{onChange:t,defaultIndex:r,index:n,allowMultiple:o,allowToggle:a,...s}=e;!function(e){const t=e.index||e.defaultIndex,r=null!=t&&!Array.isArray(t)&&e.allowMultiple;b({condition:!!r,message:`If 'allowMultiple' is passed, then 'index' or 'defaultIndex' must be an array. You passed: ${typeof t},`})}(e),function(e){b({condition:!(!e.allowMultiple||!e.allowToggle),message:"If 'allowMultiple' is passed, 'allowToggle' will be ignored. Either remove 'allowToggle' or 'allowMultiple' depending on whether you want multiple accordions visible or not"})}(e);const c=o3(),[l,u]=(0,i.useState)(-1);(0,i.useEffect)((()=>()=>{u(-1)}),[]);const[d,h]=s3({value:n,defaultValue:()=>o?null!=r?r:[]:null!=r?r:-1,onChange:t});return{index:d,setIndex:h,htmlProps:s,getAccordionItemProps:e=>{let t=!1;null!==e&&(t=Array.isArray(d)?d.includes(e):d===e);return{isOpen:t,onChange:t=>{if(null!==e)if(o&&Array.isArray(d)){const r=t?d.concat(e):d.filter((t=>t!==e));h(r)}else t?h(e):a&&h(-1)}}},focusedIndex:l,setFocusedIndex:u,descendants:c}}var[l3,u3]=Rn({name:"AccordionContext",hookName:"useAccordionContext",providerName:"Accordion"});function d3(e){const{isDisabled:t,isFocusable:r,id:n,...o}=e,{getAccordionItemProps:a,setFocusedIndex:s}=u3(),c=(0,i.useRef)(null),l=(0,i.useId)(),u=null!=n?n:l,d=`accordion-button-${u}`,h=`accordion-panel-${u}`;!function(e){b({condition:!(!e.isFocusable||e.isDisabled),message:"Using only 'isFocusable', this prop is reserved for situations where you pass 'isDisabled' but you still want the element to receive focus (A11y). Either remove it or pass 'isDisabled' as well.\n "})}(e);const{register:f,index:p,descendants:m}=a3({disabled:t&&!r}),{isOpen:g,onChange:v}=a(-1===p?null:p);!function(e){b({condition:e.isOpen&&!!e.isDisabled,message:"Cannot open a disabled accordion item"})}({isOpen:g,isDisabled:t});const y=(0,i.useCallback)((()=>{null==v||v(!g),s(p)}),[p,s,g,v]),w=(0,i.useCallback)((e=>{const t={ArrowDown:()=>{const e=m.nextEnabled(p);null==e||e.node.focus()},ArrowUp:()=>{const e=m.prevEnabled(p);null==e||e.node.focus()},Home:()=>{const e=m.firstEnabled();null==e||e.node.focus()},End:()=>{const e=m.lastEnabled();null==e||e.node.focus()}},r=t[e.key];r&&(e.preventDefault(),r(e))}),[m,p]),x=(0,i.useCallback)((()=>{s(p)}),[s,p]),_=(0,i.useCallback)((function(e={},r=null){return{...e,type:"button",ref:Zn(f,c,r),id:d,disabled:!!t,"aria-expanded":!!g,"aria-controls":h,onClick:S(e.onClick,y),onFocus:S(e.onFocus,x),onKeyDown:S(e.onKeyDown,w)}}),[d,t,g,y,x,w,h,f]),k=(0,i.useCallback)((function(e={},t=null){return{...e,ref:t,role:"region",id:h,"aria-labelledby":d,hidden:!g}}),[d,g,h]);return{isOpen:g,isDisabled:t,isFocusable:r,onOpen:()=>{null==v||v(!0)},onClose:()=>{null==v||v(!1)},getButtonProps:_,getPanelProps:k,htmlProps:o}}var h3=wn((function({children:e,reduceMotion:t,...r},n){const o=qn("Accordion",r),a=ht(r),{htmlProps:s,descendants:c,...l}=c3(a),u=(0,i.useMemo)((()=>({...l,reduceMotion:!!t})),[l,t]);return(0,xn.jsx)(n3,{value:c,children:(0,xn.jsx)(l3,{value:u,children:(0,xn.jsx)(Q5,{value:o,children:(0,xn.jsx)(bn.div,{ref:n,...s,className:v("chakra-accordion",r.className),__css:o.root,children:e})})})})}));h3.displayName="Accordion";var f3=wn((function(e,t){const{children:r,className:n}=e,{htmlProps:o,...a}=d3(e),s={...e3().container,overflowAnchor:"none"},c=(0,i.useMemo)((()=>a),[a]);return(0,xn.jsx)(t3,{value:c,children:(0,xn.jsx)(bn.div,{ref:t,...o,className:v("chakra-accordion__item",n),__css:s,children:"function"===typeof r?r({isExpanded:!!a.isOpen,isDisabled:!!a.isDisabled}):r})})}));f3.displayName="AccordionItem";var p3=wn((function(e,t){const{getButtonProps:r}=r3(),n=r(e,t),i={display:"flex",alignItems:"center",width:"100%",outline:0,...e3().button};return(0,xn.jsx)(bn.button,{...n,className:v("chakra-accordion__button",e.className),__css:i})}));function m3(e){const{isOpen:t,isDisabled:r}=r3(),{reduceMotion:n}=u3(),i=v("chakra-accordion__icon",e.className),o={opacity:r?.4:1,transform:t?"rotate(-180deg)":void 0,transition:n?void 0:"transform 0.2s",transformOrigin:"center",...e3().icon};return(0,xn.jsx)(wm,{viewBox:"0 0 24 24","aria-hidden":!0,className:i,__css:o,...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})})}p3.displayName="AccordionButton",m3.displayName="AccordionIcon";var g3=e=>null!=e&&parseInt(e.toString(),10)>0,v3={exit:{height:{duration:.2,ease:uo.ease},opacity:{duration:.3,ease:uo.ease}},enter:{height:{duration:.3,ease:uo.ease},opacity:{duration:.4,ease:uo.ease}}},y3={exit:({animateOpacity:e,startingHeight:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{...e&&{opacity:g3(t)?1:0},height:t,transitionEnd:null==n?void 0:n.exit,transition:null!=(o=null==r?void 0:r.exit)?o:bo(v3.exit,i)}},enter:({animateOpacity:e,endingHeight:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{...e&&{opacity:1},height:t,transitionEnd:null==n?void 0:n.enter,transition:null!=(o=null==r?void 0:r.enter)?o:yo(v3.enter,i)}}},b3=(0,i.forwardRef)(((e,t)=>{const{in:r,unmountOnExit:n,animateOpacity:o=!0,startingHeight:a=0,endingHeight:s="auto",style:c,className:l,transition:u,transitionEnd:d,...h}=e,[f,p]=(0,i.useState)(!1);(0,i.useEffect)((()=>{const e=setTimeout((()=>{p(!0)}));return()=>clearTimeout(e)}),[]),b({condition:Number(a)>0&&!!n,message:"startingHeight and unmountOnExit are mutually exclusive. You can't use them together"});const m=parseFloat(a.toString())>0,g={startingHeight:a,endingHeight:s,animateOpacity:o,transition:f?u:{enter:{duration:0}},transitionEnd:{enter:null==d?void 0:d.enter,exit:n?null==d?void 0:d.exit:{...null==d?void 0:d.exit,display:m?"block":"none"}}},y=!n||r,w=r||n?"enter":"exit";return(0,xn.jsx)(io,{initial:!1,custom:g,children:y&&(0,xn.jsx)(bh.div,{ref:t,...h,className:v("chakra-collapse",l),style:{overflow:"hidden",display:"block",...c},custom:g,variants:y3,initial:!!n&&"exit",animate:w,exit:"exit"})})}));b3.displayName="Collapse";var w3=wn((function(e,t){const{className:r,motionProps:n,...i}=e,{reduceMotion:o}=u3(),{getPanelProps:a,isOpen:s}=r3(),c=a(i,t),l=v("chakra-accordion__panel",r),u=e3();o||delete c.hidden;const d=(0,xn.jsx)(bn.div,{...c,__css:u.panel,className:l});return o?d:(0,xn.jsx)(b3,{in:s,...n,children:d})}));w3.displayName="AccordionPanel";const x3=new class extends c1{_isConnected=new u0;get isConnected(){return this._isConnected.promise}permissionManager;appMetadataManager;pendingRequests=[];constructor(e){super({storage:e&&e.storage?e.storage:new d1,...e}),this.permissionManager=new m1(this.storage),this.appMetadataManager=new p1(this.storage)}async init(){const e=await this.keyPair,t=new M5(this.name,e,this.storage,this.matrixNodes,this.iconUrl,this.appUrl);return super.init(t)}async connect(e){return this.handleResponse=async(t,r)=>{if("3"===t.version){const n=t;if(n.message.type===S0.Disconnect)return this.disconnect(n.senderId);this.pendingRequests.some((e=>e[0].id===t.id))||(this.pendingRequests.push([n,r]),await this.sendAcknowledgeResponse(n,r),await N5.intercept({message:n,connectionInfo:r,appMetadataManager:this.appMetadataManager,interceptorCallback:e}))}else{const n=t;if(n.type===S0.Disconnect)return this.disconnect(n.senderId);this.pendingRequests.some((e=>e[0].id===t.id))||(this.pendingRequests.push([n,r]),"1"!==n.version&&await this.sendAcknowledgeResponse(n,r),await N5.intercept({message:n,connectionInfo:r,appMetadataManager:this.appMetadataManager,interceptorCallback:e}))}},this._connect()}async getRegisterPushChallenge(e,t,r=K0){const n=(await hF.get(`${r}/challenge`)).data,i=g0(["Tezos Signed Message: ",n.id,n.timestamp,t,e].join(" "));return{challenge:n,payloadToSign:"0501"+i.length.toString(16).padStart(8,"0")+i}}async registerPush(e,t,r,n,i,o,a=K0){const s=await this.storage.get(I0.PUSH_TOKENS),c=s.find((e=>e.publicKey===n&&e.backendUrl===r));if(c)return c;const l=(await hF.post(`${a}/register`,{name:this.name,challenge:e,accountPublicKey:n,signature:t,backendUrl:r,protocolIdentifier:i,deviceId:o})).data,u={publicKey:n,backendUrl:r,accessToken:l.accessToken,managementToken:l.managementToken};return s.push(u),await this.storage.set(I0.PUSH_TOKENS,s),u}async _connect(){const e=await this.transport;e.connectionStatus===j0.NOT_CONNECTED&&(await e.connect(),e.addListener((async(e,t)=>{if("string"===typeof e){const r=await(new f1).deserialize(e);this.handleResponse(r,t)}})).catch((e=>F5.log("_connect",e))),this._isConnected.resolve(!0))}async respond(e){F5.log("RESPONSE",e);const t=this.pendingRequests.find((t=>t[0].id===e.id));if(!t)throw new Error("No matching request found!");this.pendingRequests=this.pendingRequests.filter((t=>t[0].id!==e.id)),await B5.intercept({senderId:await n1(await this.beaconId),request:t[0],message:e,ownAppMetadata:await this.getOwnAppMetadata(),permissionManager:this.permissionManager,appMetadataManager:this.appMetadataManager,interceptorCallback:async e=>{await this.respondToMessage(e,t[1])}})}async getAppMetadataList(){return this.appMetadataManager.getAppMetadataList()}async getAppMetadata(e){return this.appMetadataManager.getAppMetadata(e)}async removeAppMetadata(e){return this.appMetadataManager.removeAppMetadata(e)}async removeAllAppMetadata(){return this.appMetadataManager.removeAllAppMetadata()}async getPermissions(){return this.permissionManager.getPermissions()}async getPermission(e){return this.permissionManager.getPermission(e)}async removePermission(e){return this.permissionManager.removePermission(e)}async removeAllPermissions(){return this.permissionManager.removeAllPermissions()}async getPeerInfo(e){const t=await n1(e.publicKey);return e instanceof $0?new H0(e.id,e.name,e.publicKey,e.version,t):e instanceof N0?new D0(e.id,e.name,e.publicKey,e.version,e.relayServer,t):e instanceof q0?new q0(e.id,e.name,e.publicKey,e.version,t,e.uri):{...e,senderId:t}}async addPeer(e,t=!0){return(await this.transport).addPeer(await this.getPeerInfo(e),t)}async removePeer(e,t=!1){const r=(await this.transport).removePeer(e);return await this.removePermissionsForPeers([e]),t&&await this.sendDisconnectToPeer(e),r}async removeAllPeers(e=!1){const t=await(await this.transport).getPeers(),r=(await this.transport).removeAllPeers();if(await this.removePermissionsForPeers(t),e){const e=t.map((e=>this.sendDisconnectToPeer(e)));await Promise.all(e)}return r}async removePermissionsForPeers(e){const t=await this.permissionManager.getPermissions(),r=e.map((e=>e.senderId)),n=t.filter((e=>r.includes(e.appMetadata.senderId))).map((e=>e.accountIdentifier));await this.permissionManager.removePermissions(n)}async sendAcknowledgeResponse(e,t){const r={id:e.id,type:S0.Acknowledge};await B5.intercept({senderId:await n1(await this.beaconId),request:e,message:r,ownAppMetadata:await this.getOwnAppMetadata(),permissionManager:this.permissionManager,appMetadataManager:this.appMetadataManager,interceptorCallback:async e=>{await this.respondToMessage(e,t)}})}async respondToMessage(e,t){const r=await(new f1).serialize(e);if(t){const e=(await this.getPeers()).find((e=>e.publicKey===t.id));await(await this.transport).send(r,e)}else await(await this.transport).send(r)}async disconnect(e){const t=await this.transport,r=(await t.getPeers()).find((t=>t.senderId===e));r&&await this.removePeer(r)}}({name:"Umami",iconUrl:"",appUrl:"https://umamiwallet.com/"});var _3,[k3,S3]=AV({name:`${_3="Card"}StylesContext`,errorMessage:`useStyles: "styles" is undefined. Seems you forgot to wrap the components in "<${_3} />" `}),E3=wn((function(e,t){const{className:r,children:n,direction:i="column",justify:o,align:a,...s}=ht(e),c=qn("Card",e);return(0,xn.jsx)(bn.div,{ref:t,className:v("chakra-card",r),__css:{display:"flex",flexDirection:i,justifyContent:o,alignItems:a,position:"relative",minWidth:0,wordWrap:"break-word",...c.container},...s,children:(0,xn.jsx)(k3,{value:c,children:n})})})),A3=wn((function(e,t){const{className:r,...n}=e,i=S3();return(0,xn.jsx)(bn.div,{ref:t,className:v("chakra-card__body",r),__css:i.body,...n})}));const P3=({value:e,space:t=2,...r})=>(0,xn.jsx)(E3,{background:Xv.gray[700],borderRadius:"5px",...r,children:(0,xn.jsx)(A3,{children:(0,xn.jsx)("pre",{style:{whiteSpace:"pre-wrap",fontSize:"12px",lineHeight:"18px"},children:JSON.stringify(e,null,t)})})});var[O3,T3]=Rn({name:"InputGroupStylesContext",errorMessage:"useInputGroupStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),C3=wn((function(e,t){const r=qn("Input",e),{children:n,className:o,...a}=ht(e),s=v("chakra-input__group",o),c={},l=Tn(n),u=r.field;l.forEach((e=>{var t,n;r&&(u&&"InputLeftElement"===e.type.id&&(c.paddingStart=null!=(t=u.height)?t:u.h),u&&"InputRightElement"===e.type.id&&(c.paddingEnd=null!=(n=u.height)?n:u.h),"InputRightAddon"===e.type.id&&(c.borderEndRadius=0),"InputLeftAddon"===e.type.id&&(c.borderStartRadius=0))}));const d=l.map((t=>{var r,n;const o=Em({size:(null==(r=t.props)?void 0:r.size)||e.size,variant:(null==(n=t.props)?void 0:n.variant)||e.variant});return"Input"!==t.type.id?(0,i.cloneElement)(t,o):(0,i.cloneElement)(t,Object.assign(o,c,t.props))}));return(0,xn.jsx)(bn.div,{className:s,ref:t,__css:{width:"100%",display:"flex",position:"relative",isolation:"isolate",...r.group},"data-group":!0,...a,children:(0,xn.jsx)(O3,{value:r,children:d})})}));C3.displayName="InputGroup";var j3=bn("div",{baseStyle:{display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",top:"0",zIndex:2}}),R3=wn((function(e,t){var r,n;const{placement:i="left",...o}=e,a=T3(),s=a.field,c={["left"===i?"insetStart":"insetEnd"]:"0",width:null!=(r=null==s?void 0:s.height)?r:null==s?void 0:s.h,height:null!=(n=null==s?void 0:s.height)?n:null==s?void 0:s.h,fontSize:null==s?void 0:s.fontSize,...a.element};return(0,xn.jsx)(j3,{ref:t,__css:c,...o})}));R3.id="InputElement",R3.displayName="InputElement";var I3=wn((function(e,t){const{className:r,...n}=e,i=v("chakra-input__left-element",r);return(0,xn.jsx)(R3,{ref:t,placement:"left",className:i,...n})}));I3.id="InputLeftElement",I3.displayName="InputLeftElement";var M3=wn((function(e,t){const{className:r,...n}=e,i=v("chakra-input__right-element",r);return(0,xn.jsx)(R3,{ref:t,placement:"right",className:i,...n})}));M3.id="InputRightElement",M3.displayName="InputRightElement";var[L3,N3]=Rn({name:"ListStylesContext",errorMessage:"useListStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),D3=wn((function(e,t){const r=qn("List",e),{children:n,styleType:i="none",stylePosition:o,spacing:a,...s}=ht(e),c=Tn(n),l=a?{"& > *:not(style) ~ *:not(style)":{mt:a}}:{};return(0,xn.jsx)(L3,{value:r,children:(0,xn.jsx)(bn.ul,{ref:t,listStyleType:i,listStylePosition:o,role:"list",__css:{...r.container,...l},...s,children:c})})}));D3.displayName="List";var z3=wn(((e,t)=>{const{as:r,...n}=e;return(0,xn.jsx)(D3,{ref:t,as:"ol",styleType:"decimal",marginStart:"1em",...n})}));z3.displayName="OrderedList";var B3=wn((function(e,t){const{as:r,...n}=e;return(0,xn.jsx)(D3,{ref:t,as:"ul",styleType:"initial",marginStart:"1em",...n})}));B3.displayName="UnorderedList";var F3=wn((function(e,t){const r=N3();return(0,xn.jsx)(bn.li,{ref:t,...e,__css:r.item})}));F3.displayName="ListItem";var U3=wn((function(e,t){const r=N3();return(0,xn.jsx)(wm,{ref:t,role:"presentation",...e,__css:r.icon})}));U3.displayName="ListIcon";var $3={exit:{scale:.85,opacity:0,transition:{opacity:{duration:.15,easings:"easeInOut"},scale:{duration:.2,easings:"easeInOut"}}},enter:{scale:1,opacity:1,transition:{opacity:{easings:"easeOut",duration:.2},scale:{duration:.2,ease:[.175,.885,.4,1.1]}}}};function H3(e){return["html","body","#document"].includes(e.localName)?e.ownerDocument.body:Ep(e)&&function(e){const t=e.ownerDocument.defaultView||window,{overflow:r,overflowX:n,overflowY:i}=t.getComputedStyle(e);return/auto|scroll|overlay|hidden/.test(r+i+n)}(e)?e:H3(function(e){return"html"===e.localName?e:e.assignedSlot||e.parentElement||e.ownerDocument.documentElement}(e))}var V3=(e,t)=>({var:e,varRef:t?`var(${e}, ${t})`:`var(${e})`}),q3={arrowShadowColor:V3("--popper-arrow-shadow-color"),arrowSize:V3("--popper-arrow-size","8px"),arrowSizeHalf:V3("--popper-arrow-size-half"),arrowBg:V3("--popper-arrow-bg"),transformOrigin:V3("--popper-transform-origin"),arrowOffset:V3("--popper-arrow-offset")};var K3={top:"bottom center","top-start":"bottom left","top-end":"bottom right",bottom:"top center","bottom-start":"top left","bottom-end":"top right",left:"right center","left-start":"right top","left-end":"right bottom",right:"left center","right-start":"left top","right-end":"left bottom"},W3={scroll:!0,resize:!0};function G3(e){let t;return t="object"===typeof e?{enabled:!0,options:{...W3,...e}}:{enabled:e,options:W3},t}var Z3={name:"matchWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:({state:e})=>{e.styles.popper.width=`${e.rects.reference.width}px`},effect:({state:e})=>()=>{const t=e.elements.reference;e.elements.popper.style.width=`${t.offsetWidth}px`}},Y3={name:"transformOrigin",enabled:!0,phase:"write",fn:({state:e})=>{X3(e)},effect:({state:e})=>()=>{X3(e)}},X3=e=>{var t;e.elements.popper.style.setProperty(q3.transformOrigin.var,(t=e.placement,K3[t]))},J3={name:"positionArrow",enabled:!0,phase:"afterWrite",fn:({state:e})=>{Q3(e)}},Q3=e=>{var t;if(!e.placement)return;const r=e6(e.placement);if((null==(t=e.elements)?void 0:t.arrow)&&r){Object.assign(e.elements.arrow.style,{[r.property]:r.value,width:q3.arrowSize.varRef,height:q3.arrowSize.varRef,zIndex:-1});const t={[q3.arrowSizeHalf.var]:`calc(${q3.arrowSize.varRef} / 2 - 1px)`,[q3.arrowOffset.var]:`calc(${q3.arrowSizeHalf.varRef} * -1)`};for(const r in t)e.elements.arrow.style.setProperty(r,t[r])}},e6=e=>e.startsWith("top")?{property:"bottom",value:q3.arrowOffset.varRef}:e.startsWith("bottom")?{property:"top",value:q3.arrowOffset.varRef}:e.startsWith("left")?{property:"right",value:q3.arrowOffset.varRef}:e.startsWith("right")?{property:"left",value:q3.arrowOffset.varRef}:void 0,t6={name:"innerArrow",enabled:!0,phase:"main",requires:["arrow"],fn:({state:e})=>{r6(e)},effect:({state:e})=>()=>{r6(e)}},r6=e=>{if(!e.elements.arrow)return;const t=e.elements.arrow.querySelector("[data-popper-arrow-inner]");if(!t)return;const r=(n=e.placement).includes("top")?"1px 1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("bottom")?"-1px -1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("right")?"-1px 1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("left")?"1px -1px 0px 0 var(--popper-arrow-shadow-color)":void 0;var n;r&&t.style.setProperty("--popper-arrow-default-shadow",r),Object.assign(t.style,{transform:"rotate(45deg)",background:q3.arrowBg.varRef,top:0,left:0,width:"100%",height:"100%",position:"absolute",zIndex:"inherit",boxShadow:"var(--popper-arrow-shadow, var(--popper-arrow-default-shadow))"})},n6={"start-start":{ltr:"left-start",rtl:"right-start"},"start-end":{ltr:"left-end",rtl:"right-end"},"end-start":{ltr:"right-start",rtl:"left-start"},"end-end":{ltr:"right-end",rtl:"left-end"},start:{ltr:"left",rtl:"right"},end:{ltr:"right",rtl:"left"}},i6={"auto-start":"auto-end","auto-end":"auto-start","top-start":"top-end","top-end":"top-start","bottom-start":"bottom-end","bottom-end":"bottom-start"};function o6(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function a6(e){return e instanceof o6(e).Element||e instanceof Element}function s6(e){return e instanceof o6(e).HTMLElement||e instanceof HTMLElement}function c6(e){return"undefined"!==typeof ShadowRoot&&(e instanceof o6(e).ShadowRoot||e instanceof ShadowRoot)}var l6=Math.max,u6=Math.min,d6=Math.round;function h6(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function f6(){return!/^((?!chrome|android).)*safari/i.test(h6())}function p6(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=!1);var n=e.getBoundingClientRect(),i=1,o=1;t&&s6(e)&&(i=e.offsetWidth>0&&d6(n.width)/e.offsetWidth||1,o=e.offsetHeight>0&&d6(n.height)/e.offsetHeight||1);var a=(a6(e)?o6(e):window).visualViewport,s=!f6()&&r,c=(n.left+(s&&a?a.offsetLeft:0))/i,l=(n.top+(s&&a?a.offsetTop:0))/o,u=n.width/i,d=n.height/o;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c,x:c,y:l}}function m6(e){var t=o6(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function g6(e){return e?(e.nodeName||"").toLowerCase():null}function v6(e){return((a6(e)?e.ownerDocument:e.document)||window.document).documentElement}function y6(e){return p6(v6(e)).left+m6(e).scrollLeft}function b6(e){return o6(e).getComputedStyle(e)}function w6(e){var t=b6(e),r=t.overflow,n=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+i+n)}function x6(e,t,r){void 0===r&&(r=!1);var n=s6(t),i=s6(t)&&function(e){var t=e.getBoundingClientRect(),r=d6(t.width)/e.offsetWidth||1,n=d6(t.height)/e.offsetHeight||1;return 1!==r||1!==n}(t),o=v6(t),a=p6(e,i,r),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(n||!n&&!r)&&(("body"!==g6(t)||w6(o))&&(s=function(e){return e!==o6(e)&&s6(e)?{scrollLeft:(t=e).scrollLeft,scrollTop:t.scrollTop}:m6(e);var t}(t)),s6(t)?((c=p6(t,!0)).x+=t.clientLeft,c.y+=t.clientTop):o&&(c.x=y6(o))),{x:a.left+s.scrollLeft-c.x,y:a.top+s.scrollTop-c.y,width:a.width,height:a.height}}function _6(e){var t=p6(e),r=e.offsetWidth,n=e.offsetHeight;return Math.abs(t.width-r)<=1&&(r=t.width),Math.abs(t.height-n)<=1&&(n=t.height),{x:e.offsetLeft,y:e.offsetTop,width:r,height:n}}function k6(e){return"html"===g6(e)?e:e.assignedSlot||e.parentNode||(c6(e)?e.host:null)||v6(e)}function S6(e){return["html","body","#document"].indexOf(g6(e))>=0?e.ownerDocument.body:s6(e)&&w6(e)?e:S6(k6(e))}function E6(e,t){var r;void 0===t&&(t=[]);var n=S6(e),i=n===(null==(r=e.ownerDocument)?void 0:r.body),o=o6(n),a=i?[o].concat(o.visualViewport||[],w6(n)?n:[]):n,s=t.concat(a);return i?s:s.concat(E6(k6(a)))}function A6(e){return["table","td","th"].indexOf(g6(e))>=0}function P6(e){return s6(e)&&"fixed"!==b6(e).position?e.offsetParent:null}function O6(e){for(var t=o6(e),r=P6(e);r&&A6(r)&&"static"===b6(r).position;)r=P6(r);return r&&("html"===g6(r)||"body"===g6(r)&&"static"===b6(r).position)?t:r||function(e){var t=/firefox/i.test(h6());if(/Trident/i.test(h6())&&s6(e)&&"fixed"===b6(e).position)return null;var r=k6(e);for(c6(r)&&(r=r.host);s6(r)&&["html","body"].indexOf(g6(r))<0;){var n=b6(r);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||t&&"filter"===n.willChange||t&&n.filter&&"none"!==n.filter)return r;r=r.parentNode}return null}(e)||t}var T6="top",C6="bottom",j6="right",R6="left",I6="auto",M6=[T6,C6,j6,R6],L6="start",N6="end",D6="clippingParents",z6="viewport",B6="popper",F6="reference",U6=M6.reduce((function(e,t){return e.concat([t+"-"+L6,t+"-"+N6])}),[]),$6=[].concat(M6,[I6]).reduce((function(e,t){return e.concat([t,t+"-"+L6,t+"-"+N6])}),[]),H6=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function V6(e){var t=new Map,r=new Set,n=[];function i(e){r.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!r.has(e)){var n=t.get(e);n&&i(n)}})),n.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){r.has(e.name)||i(e)})),n}function q6(e){var t;return function(){return t||(t=new Promise((function(r){Promise.resolve().then((function(){t=void 0,r(e())}))}))),t}}var K6={placement:"bottom",modifiers:[],strategy:"absolute"};function W6(){for(var e=arguments.length,t=new Array(e),r=0;r=0?"x":"y"}function e4(e){var t,r=e.reference,n=e.element,i=e.placement,o=i?X6(i):null,a=i?J6(i):null,s=r.x+r.width/2-n.width/2,c=r.y+r.height/2-n.height/2;switch(o){case T6:t={x:s,y:r.y-n.height};break;case C6:t={x:s,y:r.y+r.height};break;case j6:t={x:r.x+r.width,y:c};break;case R6:t={x:r.x-n.width,y:c};break;default:t={x:r.x,y:r.y}}var l=o?Q6(o):null;if(null!=l){var u="y"===l?"height":"width";switch(a){case L6:t[l]=t[l]-(r[u]/2-n[u]/2);break;case N6:t[l]=t[l]+(r[u]/2-n[u]/2)}}return t}const t4={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,r=e.name;t.modifiersData[r]=e4({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};var r4={top:"auto",right:"auto",bottom:"auto",left:"auto"};function n4(e){var t,r=e.popper,n=e.popperRect,i=e.placement,o=e.variation,a=e.offsets,s=e.position,c=e.gpuAcceleration,l=e.adaptive,u=e.roundOffsets,d=e.isFixed,h=a.x,f=void 0===h?0:h,p=a.y,m=void 0===p?0:p,g="function"===typeof u?u({x:f,y:m}):{x:f,y:m};f=g.x,m=g.y;var v=a.hasOwnProperty("x"),y=a.hasOwnProperty("y"),b=R6,w=T6,x=window;if(l){var _=O6(r),k="clientHeight",S="clientWidth";if(_===o6(r)&&"static"!==b6(_=v6(r)).position&&"absolute"===s&&(k="scrollHeight",S="scrollWidth"),i===T6||(i===R6||i===j6)&&o===N6)w=C6,m-=(d&&_===x&&x.visualViewport?x.visualViewport.height:_[k])-n.height,m*=c?1:-1;if(i===R6||(i===T6||i===C6)&&o===N6)b=j6,f-=(d&&_===x&&x.visualViewport?x.visualViewport.width:_[S])-n.width,f*=c?1:-1}var E,A=Object.assign({position:s},l&&r4),P=!0===u?function(e,t){var r=e.x,n=e.y,i=t.devicePixelRatio||1;return{x:d6(r*i)/i||0,y:d6(n*i)/i||0}}({x:f,y:m},o6(r)):{x:f,y:m};return f=P.x,m=P.y,c?Object.assign({},A,((E={})[w]=y?"0":"",E[b]=v?"0":"",E.transform=(x.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",E)):Object.assign({},A,((t={})[w]=y?m+"px":"",t[b]=v?f+"px":"",t.transform="",t))}const i4={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,r=e.options,n=r.gpuAcceleration,i=void 0===n||n,o=r.adaptive,a=void 0===o||o,s=r.roundOffsets,c=void 0===s||s,l={placement:X6(t.placement),variation:J6(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,n4(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:c})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,n4(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};const o4={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var r=t.styles[e]||{},n=t.attributes[e]||{},i=t.elements[e];s6(i)&&g6(i)&&(Object.assign(i.style,r),Object.keys(n).forEach((function(e){var t=n[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,r.popper),t.styles=r,t.elements.arrow&&Object.assign(t.elements.arrow.style,r.arrow),function(){Object.keys(t.elements).forEach((function(e){var n=t.elements[e],i=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:r[e]).reduce((function(e,t){return e[t]="",e}),{});s6(n)&&g6(n)&&(Object.assign(n.style,o),Object.keys(i).forEach((function(e){n.removeAttribute(e)})))}))}},requires:["computeStyles"]};const a4={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,r=e.options,n=e.name,i=r.offset,o=void 0===i?[0,0]:i,a=$6.reduce((function(e,r){return e[r]=function(e,t,r){var n=X6(e),i=[R6,T6].indexOf(n)>=0?-1:1,o="function"===typeof r?r(Object.assign({},t,{placement:e})):r,a=o[0],s=o[1];return a=a||0,s=(s||0)*i,[R6,j6].indexOf(n)>=0?{x:s,y:a}:{x:a,y:s}}(r,t.rects,o),e}),{}),s=a[t.placement],c=s.x,l=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[n]=a}};var s4={left:"right",right:"left",bottom:"top",top:"bottom"};function c4(e){return e.replace(/left|right|bottom|top/g,(function(e){return s4[e]}))}var l4={start:"end",end:"start"};function u4(e){return e.replace(/start|end/g,(function(e){return l4[e]}))}function d4(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&c6(r)){var n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function h4(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function f4(e,t,r){return t===z6?h4(function(e,t){var r=o6(e),n=v6(e),i=r.visualViewport,o=n.clientWidth,a=n.clientHeight,s=0,c=0;if(i){o=i.width,a=i.height;var l=f6();(l||!l&&"fixed"===t)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:o,height:a,x:s+y6(e),y:c}}(e,r)):a6(t)?function(e,t){var r=p6(e,!1,"fixed"===t);return r.top=r.top+e.clientTop,r.left=r.left+e.clientLeft,r.bottom=r.top+e.clientHeight,r.right=r.left+e.clientWidth,r.width=e.clientWidth,r.height=e.clientHeight,r.x=r.left,r.y=r.top,r}(t,r):h4(function(e){var t,r=v6(e),n=m6(e),i=null==(t=e.ownerDocument)?void 0:t.body,o=l6(r.scrollWidth,r.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=l6(r.scrollHeight,r.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),s=-n.scrollLeft+y6(e),c=-n.scrollTop;return"rtl"===b6(i||r).direction&&(s+=l6(r.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:s,y:c}}(v6(e)))}function p4(e,t,r,n){var i="clippingParents"===t?function(e){var t=E6(k6(e)),r=["absolute","fixed"].indexOf(b6(e).position)>=0&&s6(e)?O6(e):e;return a6(r)?t.filter((function(e){return a6(e)&&d4(e,r)&&"body"!==g6(e)})):[]}(e):[].concat(t),o=[].concat(i,[r]),a=o[0],s=o.reduce((function(t,r){var i=f4(e,r,n);return t.top=l6(i.top,t.top),t.right=u6(i.right,t.right),t.bottom=u6(i.bottom,t.bottom),t.left=l6(i.left,t.left),t}),f4(e,a,n));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function m4(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function g4(e,t){return t.reduce((function(t,r){return t[r]=e,t}),{})}function v4(e,t){void 0===t&&(t={});var r=t,n=r.placement,i=void 0===n?e.placement:n,o=r.strategy,a=void 0===o?e.strategy:o,s=r.boundary,c=void 0===s?D6:s,l=r.rootBoundary,u=void 0===l?z6:l,d=r.elementContext,h=void 0===d?B6:d,f=r.altBoundary,p=void 0!==f&&f,m=r.padding,g=void 0===m?0:m,v=m4("number"!==typeof g?g:g4(g,M6)),y=h===B6?F6:B6,b=e.rects.popper,w=e.elements[p?y:h],x=p4(a6(w)?w:w.contextElement||v6(e.elements.popper),c,u,a),_=p6(e.elements.reference),k=e4({reference:_,element:b,strategy:"absolute",placement:i}),S=h4(Object.assign({},b,k)),E=h===B6?S:_,A={top:x.top-E.top+v.top,bottom:E.bottom-x.bottom+v.bottom,left:x.left-E.left+v.left,right:E.right-x.right+v.right},P=e.modifiersData.offset;if(h===B6&&P){var O=P[i];Object.keys(A).forEach((function(e){var t=[j6,C6].indexOf(e)>=0?1:-1,r=[T6,C6].indexOf(e)>=0?"y":"x";A[e]+=O[r]*t}))}return A}const y4={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,r=e.options,n=e.name;if(!t.modifiersData[n]._skip){for(var i=r.mainAxis,o=void 0===i||i,a=r.altAxis,s=void 0===a||a,c=r.fallbackPlacements,l=r.padding,u=r.boundary,d=r.rootBoundary,h=r.altBoundary,f=r.flipVariations,p=void 0===f||f,m=r.allowedAutoPlacements,g=t.options.placement,v=X6(g),y=c||(v===g||!p?[c4(g)]:function(e){if(X6(e)===I6)return[];var t=c4(e);return[u4(e),t,u4(t)]}(g)),b=[g].concat(y).reduce((function(e,r){return e.concat(X6(r)===I6?function(e,t){void 0===t&&(t={});var r=t,n=r.placement,i=r.boundary,o=r.rootBoundary,a=r.padding,s=r.flipVariations,c=r.allowedAutoPlacements,l=void 0===c?$6:c,u=J6(n),d=u?s?U6:U6.filter((function(e){return J6(e)===u})):M6,h=d.filter((function(e){return l.indexOf(e)>=0}));0===h.length&&(h=d);var f=h.reduce((function(t,r){return t[r]=v4(e,{placement:r,boundary:i,rootBoundary:o,padding:a})[X6(r)],t}),{});return Object.keys(f).sort((function(e,t){return f[e]-f[t]}))}(t,{placement:r,boundary:u,rootBoundary:d,padding:l,flipVariations:p,allowedAutoPlacements:m}):r)}),[]),w=t.rects.reference,x=t.rects.popper,_=new Map,k=!0,S=b[0],E=0;E=0,C=T?"width":"height",j=v4(t,{placement:A,boundary:u,rootBoundary:d,altBoundary:h,padding:l}),R=T?O?j6:R6:O?C6:T6;w[C]>x[C]&&(R=c4(R));var I=c4(R),M=[];if(o&&M.push(j[P]<=0),s&&M.push(j[R]<=0,j[I]<=0),M.every((function(e){return e}))){S=A,k=!1;break}_.set(A,M)}if(k)for(var L=function(e){var t=b.find((function(t){var r=_.get(t);if(r)return r.slice(0,e).every((function(e){return e}))}));if(t)return S=t,"break"},N=p?3:1;N>0;N--){if("break"===L(N))break}t.placement!==S&&(t.modifiersData[n]._skip=!0,t.placement=S,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function b4(e,t,r){return l6(e,u6(t,r))}const w4={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,r=e.options,n=e.name,i=r.mainAxis,o=void 0===i||i,a=r.altAxis,s=void 0!==a&&a,c=r.boundary,l=r.rootBoundary,u=r.altBoundary,d=r.padding,h=r.tether,f=void 0===h||h,p=r.tetherOffset,m=void 0===p?0:p,g=v4(t,{boundary:c,rootBoundary:l,padding:d,altBoundary:u}),v=X6(t.placement),y=J6(t.placement),b=!y,w=Q6(v),x="x"===w?"y":"x",_=t.modifiersData.popperOffsets,k=t.rects.reference,S=t.rects.popper,E="function"===typeof m?m(Object.assign({},t.rects,{placement:t.placement})):m,A="number"===typeof E?{mainAxis:E,altAxis:E}:Object.assign({mainAxis:0,altAxis:0},E),P=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,O={x:0,y:0};if(_){if(o){var T,C="y"===w?T6:R6,j="y"===w?C6:j6,R="y"===w?"height":"width",I=_[w],M=I+g[C],L=I-g[j],N=f?-S[R]/2:0,D=y===L6?k[R]:S[R],z=y===L6?-S[R]:-k[R],B=t.elements.arrow,F=f&&B?_6(B):{width:0,height:0},U=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},$=U[C],H=U[j],V=b4(0,k[R],F[R]),q=b?k[R]/2-N-V-$-A.mainAxis:D-V-$-A.mainAxis,K=b?-k[R]/2+N+V+H+A.mainAxis:z+V+H+A.mainAxis,W=t.elements.arrow&&O6(t.elements.arrow),G=W?"y"===w?W.clientTop||0:W.clientLeft||0:0,Z=null!=(T=null==P?void 0:P[w])?T:0,Y=I+K-Z,X=b4(f?u6(M,I+q-Z-G):M,I,f?l6(L,Y):L);_[w]=X,O[w]=X-I}if(s){var J,Q="x"===w?T6:R6,ee="x"===w?C6:j6,te=_[x],re="y"===x?"height":"width",ne=te+g[Q],ie=te-g[ee],oe=-1!==[T6,R6].indexOf(v),ae=null!=(J=null==P?void 0:P[x])?J:0,se=oe?ne:te-k[re]-S[re]-ae+A.altAxis,ce=oe?te+k[re]+S[re]-ae-A.altAxis:ie,le=f&&oe?function(e,t,r){var n=b4(e,t,r);return n>r?r:n}(se,te,ce):b4(f?se:ne,te,f?ce:ie);_[x]=le,O[x]=le-te}t.modifiersData[n]=O}},requiresIfExists:["offset"]};const x4={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,r=e.state,n=e.name,i=e.options,o=r.elements.arrow,a=r.modifiersData.popperOffsets,s=X6(r.placement),c=Q6(s),l=[R6,j6].indexOf(s)>=0?"height":"width";if(o&&a){var u=function(e,t){return m4("number"!==typeof(e="function"===typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:g4(e,M6))}(i.padding,r),d=_6(o),h="y"===c?T6:R6,f="y"===c?C6:j6,p=r.rects.reference[l]+r.rects.reference[c]-a[c]-r.rects.popper[l],m=a[c]-r.rects.reference[c],g=O6(o),v=g?"y"===c?g.clientHeight||0:g.clientWidth||0:0,y=p/2-m/2,b=u[h],w=v-d[l]-u[f],x=v/2-d[l]/2+y,_=b4(b,x,w),k=c;r.modifiersData[n]=((t={})[k]=_,t.centerOffset=_-x,t)}},effect:function(e){var t=e.state,r=e.options.element,n=void 0===r?"[data-popper-arrow]":r;null!=n&&("string"!==typeof n||(n=t.elements.popper.querySelector(n)))&&d4(t.elements.popper,n)&&(t.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function _4(e,t,r){return void 0===r&&(r={x:0,y:0}),{top:e.top-t.height-r.y,right:e.right-t.width+r.x,bottom:e.bottom-t.height+r.y,left:e.left-t.width-r.x}}function k4(e){return[T6,j6,C6,R6].some((function(t){return e[t]>=0}))}const S4={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,r=e.name,n=t.rects.reference,i=t.rects.popper,o=t.modifiersData.preventOverflow,a=v4(t,{elementContext:"reference"}),s=v4(t,{altBoundary:!0}),c=_4(a,n),l=_4(s,i,o),u=k4(c),d=k4(l);t.modifiersData[r]={referenceClippingOffsets:c,popperEscapeOffsets:l,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}};var E4=G6({defaultModifiers:[Y6,t4,i4,o4,a4,y4,w4,x4,S4]});function A4(e={}){const{enabled:t=!0,modifiers:r,placement:n="bottom",strategy:o="absolute",arrowPadding:a=8,eventListeners:s=!0,offset:c,gutter:l=8,flip:u=!0,boundary:d="clippingParents",preventOverflow:h=!0,matchWidth:f,direction:p="ltr"}=e,m=(0,i.useRef)(null),g=(0,i.useRef)(null),v=(0,i.useRef)(null),y=function(e,t="ltr"){var r,n;const i=(null==(r=n6[e])?void 0:r[t])||e;return"ltr"===t?i:null!=(n=i6[e])?n:i}(n,p),b=(0,i.useRef)((()=>{})),w=(0,i.useCallback)((()=>{var e;t&&m.current&&g.current&&(null==(e=b.current)||e.call(b),v.current=E4(m.current,g.current,{placement:y,modifiers:[t6,J3,Y3,{...Z3,enabled:!!f},{name:"eventListeners",...G3(s)},{name:"arrow",options:{padding:a}},{name:"offset",options:{offset:null!=c?c:[0,l]}},{name:"flip",enabled:!!u,options:{padding:8}},{name:"preventOverflow",enabled:!!h,options:{boundary:d}},...null!=r?r:[]],strategy:o}),v.current.forceUpdate(),b.current=v.current.destroy)}),[y,t,r,f,s,a,c,l,u,h,d,o]);(0,i.useEffect)((()=>()=>{var e;m.current||g.current||(null==(e=v.current)||e.destroy(),v.current=null)}),[]);const x=(0,i.useCallback)((e=>{m.current=e,w()}),[w]),_=(0,i.useCallback)(((e={},t=null)=>({...e,ref:Zn(x,t)})),[x]),k=(0,i.useCallback)((e=>{g.current=e,w()}),[w]),S=(0,i.useCallback)(((e={},t=null)=>({...e,ref:Zn(k,t),style:{...e.style,position:o,minWidth:f?void 0:"max-content",inset:"0 auto auto 0"}})),[o,k,f]),E=(0,i.useCallback)(((e={},t=null)=>{const{size:r,shadowColor:n,bg:i,style:o,...a}=e;return{...a,ref:t,"data-popper-arrow":"",style:P4(e)}}),[]),A=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,"data-popper-arrow-inner":""})),[]);return{update(){var e;null==(e=v.current)||e.update()},forceUpdate(){var e;null==(e=v.current)||e.forceUpdate()},transformOrigin:q3.transformOrigin.varRef,referenceRef:x,popperRef:k,getPopperProps:S,getArrowProps:E,getArrowInnerProps:A,getReferenceProps:_}}function P4(e){const{size:t,shadowColor:r,bg:n,style:i}=e,o={...i,position:"absolute"};return t&&(o["--popper-arrow-size"]=t),r&&(o["--popper-arrow-shadow-color"]=r),n&&(o["--popper-arrow-bg"]=n),o}function O4(e={}){const{onClose:t,onOpen:r,isOpen:n,id:o}=e,a=Hm(r),s=Hm(t),[c,l]=(0,i.useState)(e.defaultIsOpen||!1),u=void 0!==n?n:c,d=void 0!==n,h=(0,i.useId)(),f=null!=o?o:`disclosure-${h}`,p=(0,i.useCallback)((()=>{d||l(!1),null==s||s()}),[d,s]),m=(0,i.useCallback)((()=>{d||l(!0),null==a||a()}),[d,a]),g=(0,i.useCallback)((()=>{u?p():m()}),[u,m,p]);return{isOpen:u,onOpen:m,onClose:p,onToggle:g,isControlled:d,getButtonProps:function(e={}){return{...e,"aria-expanded":u,"aria-controls":f,onClick(t){var r;null==(r=e.onClick)||r.call(e,t),g()}}},getDisclosureProps:function(e={}){return{...e,hidden:!u,id:f}}}}function T4(e,t,r,n){const o=Hm(r);return(0,i.useEffect)((()=>{const i="function"===typeof e?e():null!=e?e:document;if(r&&i)return i.addEventListener(t,o,n),()=>{i.removeEventListener(t,o,n)}}),[t,e,n,o,r]),()=>{const r="function"===typeof e?e():null!=e?e:document;null==r||r.removeEventListener(t,o,n)}}var C4=e=>{var t;return(null==(t=e.current)?void 0:t.ownerDocument)||document},j4=e=>{var t,r;return(null==(r=null==(t=e.current)?void 0:t.ownerDocument)?void 0:r.defaultView)||window};function R4(e={}){const{openDelay:t=0,closeDelay:r=0,closeOnClick:n=!0,closeOnMouseDown:o,closeOnScroll:a,closeOnPointerDown:s=o,closeOnEsc:c=!0,onOpen:l,onClose:u,placement:d,id:h,isOpen:f,defaultIsOpen:p,arrowSize:m=10,arrowShadowColor:g,arrowPadding:v,modifiers:y,isDisabled:b,gutter:w,offset:x,direction:_,...k}=e,{isOpen:E,onOpen:A,onClose:P}=O4({isOpen:f,defaultIsOpen:p,onOpen:l,onClose:u}),{referenceRef:O,getPopperProps:T,getArrowInnerProps:C,getArrowProps:j}=A4({enabled:E,placement:d,arrowPadding:v,modifiers:y,gutter:w,offset:x,direction:_}),R=(0,i.useId)(),I=`tooltip-${null!=h?h:R}`,M=(0,i.useRef)(null),L=(0,i.useRef)(),N=(0,i.useCallback)((()=>{L.current&&(clearTimeout(L.current),L.current=void 0)}),[]),D=(0,i.useRef)(),z=(0,i.useCallback)((()=>{D.current&&(clearTimeout(D.current),D.current=void 0)}),[]),B=(0,i.useCallback)((()=>{z(),P()}),[P,z]),F=function(e,t){return(0,i.useEffect)((()=>{const r=C4(e);return r.addEventListener(I4,t),()=>r.removeEventListener(I4,t)}),[t,e]),()=>{const t=C4(e),r=j4(e);t.dispatchEvent(new r.CustomEvent(I4))}}(M,B),U=(0,i.useCallback)((()=>{if(!b&&!L.current){E&&F();const e=j4(M);L.current=e.setTimeout(A,t)}}),[F,b,E,A,t]),$=(0,i.useCallback)((()=>{N();const e=j4(M);D.current=e.setTimeout(B,r)}),[r,B,N]),H=(0,i.useCallback)((()=>{E&&n&&$()}),[n,$,E]),V=(0,i.useCallback)((()=>{E&&s&&$()}),[s,$,E]),q=(0,i.useCallback)((e=>{E&&"Escape"===e.key&&$()}),[E,$]);T4((()=>C4(M)),"keydown",c?q:void 0),T4((()=>{if(!a)return null;const e=M.current;if(!e)return null;const t=H3(e);return"body"===t.localName?j4(M):t}),"scroll",(()=>{E&&a&&B()}),{passive:!0,capture:!0}),(0,i.useEffect)((()=>{b&&(N(),E&&P())}),[b,E,P,N]),(0,i.useEffect)((()=>()=>{N(),z()}),[N,z]),T4((()=>M.current),"pointerleave",$);const K=(0,i.useCallback)(((e={},t=null)=>{const r={...e,ref:Zn(M,t,O),onPointerEnter:S(e.onPointerEnter,(e=>{"touch"!==e.pointerType&&U()})),onClick:S(e.onClick,H),onPointerDown:S(e.onPointerDown,V),onFocus:S(e.onFocus,U),onBlur:S(e.onBlur,$),"aria-describedby":E?I:void 0};return r}),[U,$,V,E,I,H,O]),W=(0,i.useCallback)(((e={},t=null)=>T({...e,style:{...e.style,[q3.arrowSize.var]:m?`${m}px`:void 0,[q3.arrowShadowColor.var]:g}},t)),[T,m,g]),G=(0,i.useCallback)(((e={},t=null)=>{const r={...e.style,position:"relative",transformOrigin:q3.transformOrigin.varRef};return{ref:t,...k,...e,id:I,role:"tooltip",style:r}}),[k,I]);return{isOpen:E,show:U,hide:$,getTriggerProps:K,getTooltipProps:G,getTooltipPositionerProps:W,getArrowProps:j,getArrowInnerProps:C}}var I4="chakra-ui:close-tooltip";var M4=bn(bh.div),L4=wn(((e,t)=>{var r,n;const o=Vn("Tooltip",e),a=ht(e),s=Bn(),{children:c,label:l,shouldWrapChildren:u,"aria-label":d,hasArrow:h,bg:f,portalProps:p,background:m,backgroundColor:g,bgColor:v,motionProps:y,...b}=a,w=null!=(n=null!=(r=null!=m?m:g)?r:f)?n:v;if(w){o.bg=w;const e=function(e,t,r){var n,i,o;return null!=(o=null==(i=null==(n=e.__cssMap)?void 0:n[`${t}.${r}`])?void 0:i.varRef)?o:r}(s,"colors",w);o[q3.arrowBg.var]=e}const x=R4({...b,direction:s.direction});let _;if("string"===typeof c||u)_=(0,xn.jsx)(bn.span,{display:"inline-block",tabIndex:0,...x.getTriggerProps(),children:c});else{const e=i.Children.only(c);_=(0,i.cloneElement)(e,x.getTriggerProps(e.props,e.ref))}const k=!!d,S=x.getTooltipProps({},t),E=k?function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(S,["role","id"]):S,A=function(e,t){const r={};for(const n of t)n in e&&(r[n]=e[n]);return r}(S,["role","id"]);return l?(0,xn.jsxs)(xn.Fragment,{children:[_,(0,xn.jsx)(io,{children:x.isOpen&&(0,xn.jsx)(Ii,{...p,children:(0,xn.jsx)(bn.div,{...x.getTooltipPositionerProps(),__css:{zIndex:o.zIndex,pointerEvents:"none"},children:(0,xn.jsxs)(M4,{variants:$3,initial:"exit",animate:"enter",exit:"exit",...y,...E,__css:o,children:[l,k&&(0,xn.jsx)(bn.span,{srOnly:!0,...A,children:d}),h&&(0,xn.jsx)(bn.div,{"data-popper-arrow":!0,className:"chakra-tooltip__arrow-wrapper",children:(0,xn.jsx)(bn.div,{"data-popper-arrow-inner":!0,className:"chakra-tooltip__arrow",__css:{bg:o.bg}})})]})})})})]}):(0,xn.jsx)(xn.Fragment,{children:c})}));L4.displayName="Tooltip";var N4=r(2481),D4=r.n(N4),z4=r(7282),B4=r.n(z4);const F4="default"in B4()?B4().default:B4(),U4=({address:e,identiconSize:t,...r})=>(0,xn.jsx)(Sn,{sx:{canvas:{borderRadius:"4px"}},zIndex:10,background:"white",borderRadius:"4px","data-testid":"identicon",...r,children:(0,xn.jsx)(F4,{background:"white",size:t,string:e,style:{borderRadius:4}})}),$4={stroke:Xv.gray[400],borderRadius:"4px",padding:"5px",background:Xv.gray[500]},H4=({addressKind:e,size:t="sm",identiconSize:r=20})=>{let n;switch(t){case"sm":n="30px";break;case"md":n="38.5px";break;case"lg":n="45.5px"}switch(e.type){case"secret_key":case"mnemonic":return(0,xn.jsx)(U4,{width:n,height:n,padding:"5px",address:e.pkh,identiconSize:r});case"social":return(0,xn.jsx)(Yy,{width:n,height:n,...$4,stroke:"transparent",background:"white"});case"ledger":return(0,xn.jsx)(Ny,{width:n,height:n,...$4});case"multisig":return(0,xn.jsx)(Ly,{width:n,height:n,...$4});case"contact":return(0,xn.jsx)(uy,{width:n,height:n,...$4});case"unknown":return(0,xn.jsx)(ib,{width:n,height:n,...$4});case"baker":{const t=`https://services.tzkt.io/v1/avatars/${e.pkh}`;return(0,xn.jsx)(U5,{width:"30px",height:"30px",marginRight:"8px","data-testid":"baker-icon",ratio:1,children:(0,xn.jsx)(tb,{src:t})})}}},V4=e=>{const t=q4(e),r=K4(e),n=W4(e);return t||r||n||{pkh:e.pkh,type:"unknown",label:null}},q4=({pkh:e})=>{const t=VU()(e);return t?{type:t.type,pkh:e,label:t.label}:null},K4=({pkh:e})=>{const t=(()=>{const e=kU();return t=>e.find((e=>e.address===t))})(),r=t(e);return r?{pkh:e,type:"baker",label:r.name}:null},W4=({pkh:e})=>{const t=PU()(e);return t?{pkh:e,type:"contact",label:t}:null},G4=({number:e,size:t="md",...r})=>{const n="md"===t?"md":"lg",i="md"===t?"sm":"md",{integer:o,decimal:a}=(e=>{const[t,r]=e.split(".");return{integer:t,decimal:r}})(e);return(0,xn.jsxs)(ab,{alignItems:"end","data-testid":"pretty-number",...r,children:[(0,xn.jsx)(ei,{size:n,children:o}),a&&(0,xn.jsxs)(ei,{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",size:i,children:[".",a]})]})},Z4=({address:e,size:t,numberProps:r,...n})=>{const i=_U()(e);if(!i)return null;const o=pU(i);return(0,xn.jsx)(Sn,{overflow:"hidden",textAlign:"right","data-testid":"account-balance",...n,children:(0,xn.jsx)(G4,{number:o,size:t,...r})})},Y4=({address:e,...t})=>{const r=V4(e);return(0,xn.jsx)(L4,{background:Xv.white,hasArrow:!0,label:r.label,placement:"left",children:(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",width:"100%",padding:"9px 10px",background:Xv.gray[800],borderRadius:"4px","data-testid":"address-tile",...t,children:[(0,xn.jsxs)(ab,{alignItems:"center",width:"calc(100% - 95px)",children:[(0,xn.jsx)(H4,{addressKind:r}),"unknown"===r.type?(0,xn.jsx)(Am,{marginLeft:"10px",color:Xv.gray[300],size:"sm",children:e.pkh}):(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Sn,{overflow:"hidden",width:"100%",marginLeft:"10px",whiteSpace:"nowrap",children:(0,xn.jsx)(ei,{overflow:"hidden",textOverflow:"ellipsis",size:"sm",children:r.label})}),(0,xn.jsx)(Am,{width:"89px",marginLeft:"10px",color:Xv.gray[300],size:"xs",children:mU(r.pkh)})]})]}),(0,xn.jsx)(Z4,{overflow:"hidden",marginLeft:"10px",textAlign:"right",address:e.pkh,numberProps:{maxWidth:"85px"}})]})})},X4=({contacts:e,onChange:t})=>0===e.length?null:(0,xn.jsx)(B3,{position:"absolute",zIndex:2,overflowY:"auto",width:"100%",maxHeight:300,marginTop:"8px",marginLeft:0,background:Xv.gray[700],border:"1px solid",borderColor:Xv.gray[500],borderRadius:"8px","data-testid":"suggestions-list",listStyleType:"none",children:e.map(((r,n)=>(0,xn.jsx)(Sn,{children:(0,xn.jsx)(F3,{marginBottom:n===e.length-1?"5px":0,padding:"5px 15px 0 5px",onMouseDown:()=>{t(r.name)},children:(0,xn.jsx)(Y4,{height:"40px",padding:"10px 8px 10px 5px",background:Xv.gray[700],borderRadius:"4px",_hover:{background:Xv.gray[500]},cursor:"pointer",address:LE(r.pkh)})})},r.pkh)))}),J4=(e,t)=>{if(""===e)return t;return t.filter((t=>t.name.toLowerCase().includes(e.trim().toLowerCase())))},Q4=({contacts:e,isDisabled:t,isLoading:r=!1,allowUnknown:n,inputName:o,onUpdate:a,validate:s,label:c,keepValid:l,style:u,size:d})=>{const{register:h,setValue:f,formState:{defaultValues:p},getValues:m}=Ug(),g=f,v=(0,i.useId)(),[y,b]=(0,i.useState)((()=>{var t;if(l||!p)return"";const r=(0,Db.get)(p,o);return r?(null===(t=e.find((e=>e.pkh===r)))||void 0===t?void 0:t.name)||r:""})),[w,x]=(0,i.useState)(!0),[_,k]=(0,i.useState)(J4("",e)),S=m(o),E=t=>{b(t),k(J4(t,e));const r=e.find((e=>e.name===t||e.pkh===t));let i;if(void 0!==r)i=r.pkh,x(!0);else if(n&&NE(t))i=t;else{if(l)return;i=""}g(o,i,{shouldValidate:!0}),a&&a(i)};let A="raw_input";r?A="selected_tile":t?A="disabled_tile":S&&(A="selected_tile");const P=()=>{E(""),x(!1)};return(0,xn.jsxs)(Sn,{"data-testid":`address-autocomplete-${o}`,children:[(0,xn.jsx)(PH,{htmlFor:v,children:c}),"disabled_tile"===A&&(0,xn.jsx)(Y4,{address:LE(S)}),"selected_tile"===A&&(0,xn.jsx)(Sn,{height:"48px",background:Xv.gray[800],border:"1px solid",borderColor:Xv.gray[500],borderRadius:"4px","data-testid":`selected-address-tile-${S}`,onClick:P,paddingY:0,children:(0,xn.jsxs)(_n,{justifyContent:"space-between",cursor:"pointer","data-testid":"clear-selected-button",children:[(0,xn.jsx)(Y4,{width:"short"===d?"338px":"365px",paddingTop:"8px",background:"transparent",address:LE(S)}),l?(0,xn.jsx)(ay,{marginRight:"12px","data-testid":"chevron-icon"}):(0,xn.jsx)(e8,{marginRight:"14px"})]})}),"raw_input"===A&&(0,xn.jsxs)(C3,{children:[(0,xn.jsx)(mg,{...u,"aria-label":o,autoComplete:"off",id:v,onBlur:e=>{if(e.preventDefault(),x(!0),l&&S!==e.target.value)return E(S);E(e.target.value)},onChange:e=>E(e.target.value),onFocus:()=>x(!1),placeholder:"Enter address or contact name",value:y}),(0,xn.jsx)(M3,{children:y?(0,xn.jsx)(e8,{marginRight:"0px",onClick:P}):(0,xn.jsx)(ay,{"data-testid":"chevron-icon"})})]}),(0,xn.jsx)(mg,{...h(o,{required:"Invalid address or contact name",validate:s}),marginBottom:0,"data-testid":`real-address-input-${o}`,name:o,type:"hidden"}),!w&&(0,xn.jsx)(X4,{contacts:_,onChange:E})]})},e8=e=>(0,xn.jsx)(hb,{marginRight:"16px",stroke:Xv.gray[450],cursor:"pointer","data-testid":"clear-input-button",...e}),t8=e=>{const t=Object.values(EU()),r=UU().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,xn.jsx)(Q4,{...e,contacts:t.concat(r)})},r8=e=>{const t=zU().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,xn.jsx)(Q4,{...e,contacts:t})},n8=e=>{const t=UU().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,xn.jsx)(Q4,{...e,contacts:t})},i8=e=>{const t=kU().map((e=>({name:e.name,pkh:e.address})));return(0,xn.jsx)(Q4,{...e,contacts:t})},o8=e=>{const t=WU()(e.account).map((e=>({name:e.label,pkh:e.address.pkh})));return(0,xn.jsx)(Q4,{allowUnknown:!1,contacts:t,isDisabled:1===t.length,...e})},a8=({request:e})=>{const t=(()=>{const e=Lb();return(t,r,n)=>e(dH.actions.addConnection({dAppId:t,accountPkh:r,networkType:n}))})(),r=FU(),n=Yv({mode:"onBlur"}),{getValues:i,formState:{errors:o,isValid:a}}=n;return(0,xn.jsxs)(ym,{children:[(0,xn.jsxs)(Sm,{marginBottom:"24px",children:[(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"center",children:"Permission Request"}),(0,xn.jsxs)(Am,{marginTop:"10px",color:Xv.gray[400],textAlign:"center",size:"sm",children:[e.appMetadata.name," is requesting permission to sign this operation."]}),(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"center",marginTop:"10px",children:[(0,xn.jsx)(ei,{marginRight:"4px",color:Xv.gray[450],size:"sm",children:"Network:"}),(0,xn.jsx)(Am,{color:Xv.gray[400],size:"sm",children:(0,Db.capitalize)(e.network.type)})]})]}),(0,xn.jsx)(km,{}),(0,xn.jsxs)(Pm,{"data-testid":"beacon-request-body",children:[(0,xn.jsxs)(ab,{alignItems:"center",marginTop:"16px",padding:"15px",borderRadius:"4px",backgroundColor:Xv.gray[800],children:[(0,xn.jsx)(U5,{width:"60px",marginRight:"12px",ratio:1,children:(0,xn.jsx)(tb,{borderRadius:"4px",src:e.appMetadata.icon})}),(0,xn.jsx)(ei,{size:"sm",children:e.appMetadata.name})]}),(0,xn.jsx)(h3,{marginTop:"16px",allowToggle:!0,children:(0,xn.jsxs)(f3,{background:Xv.gray[800],border:"none",borderRadius:"8px",children:[(0,xn.jsxs)(p3,{children:[(0,xn.jsx)(ei,{flex:"1",textAlign:"left",marginY:"10px",size:"md",children:"Request"}),(0,xn.jsx)(m3,{})]}),(0,xn.jsx)(w3,{children:(0,xn.jsx)(P3,{value:e})})]})}),(0,xn.jsx)($g,{...n,children:(0,xn.jsxs)(Im,{marginTop:"24px",isInvalid:!!o.address,children:[(0,xn.jsx)(r8,{allowUnknown:!1,inputName:"address",label:"Select Account"}),o.address&&(0,xn.jsx)(g$,{children:o.address.message})]})})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Xn,{width:"100%",isDisabled:!a,onClick:n=>(async()=>{const n=r(i().address),o={type:S0.PermissionResponse,network:e.network,scopes:e.scopes,id:e.id,publicKey:n.pk,walletType:"implicit"};await x3.respond(o),t(e.senderId,n.address.pkh,e.network.type)})(),size:"lg",children:"Sign"})})]})};var s8=wn(((e,t)=>{const{icon:r,children:n,isRound:o,"aria-label":a,...s}=e,c=r||n,l=(0,i.isValidElement)(c)?(0,i.cloneElement)(c,{"aria-hidden":!0,focusable:!1}):null;return(0,xn.jsx)(Xn,{padding:"0",borderRadius:o?"full":void 0,ref:t,"aria-label":a,...s,children:l})}));function c8(e){return c8="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c8(e)}function l8(e){var t=function(e,t){if("object"!=c8(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=c8(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==c8(t)?t:String(t)}function u8(e,t,r){return(t=l8(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}s8.displayName="IconButton";var d8=r(2020),h8=r.n(d8),f8=r(4371),p8=r.n(f8);function m8(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function g8(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};const r={mode:"cors",headers:{}};(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).useAPIKey&&(r.headers=g8(g8({},r.headers),A8()));const n=h8()(r,t,{method:"GET"}),i=await E8(e,n);if(i.ok)return i.json();throw P8(i),i},T8=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const i={mode:"cors",headers:{"Content-Type":"application/json; charset=utf-8"}};n.useAPIKey&&(i.headers=g8(g8({},i.headers),A8()));const o=h8()(i,r,{method:"POST"});return n.isUrlEncodedData?(o.body=t,"application/json; charset=utf-8"===o.headers["Content-Type"]&&delete o.headers["Content-Type"]):o.body=JSON.stringify(t),((e,t)=>{const r=new Promise(((t,r)=>{const n=setTimeout((()=>{clearTimeout(n),r(new Error(`Timed out in ${e}ms`))}),e)}));return Promise.race([t,r])})(n.timeout||6e4,E8(e,o).then((e=>{if(n.logTracingHeader&&function(e){v8.info(`Request tracing with traceID=${e.headers.get("x-web3-correlation-id")}`)}(e),e.ok)return e.json();throw P8(e),e})))},C8=(e,t)=>({jsonrpc:"2.0",method:e,id:10,params:t});function j8(e,t){if(null==e)return{};var r,n,i=function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var R8=r(5278),I8=r.n(R8);Promise.resolve(!1),Promise.resolve(!0);var M8=Promise.resolve();function L8(e,t){return e||(e=0),new Promise((function(r){return setTimeout((function(){return r(t)}),e)}))}function N8(){return Math.random().toString(36).substring(2)}var D8=0,z8=0;function B8(){var e=(new Date).getTime();return e===D8?1e3*e+ ++z8:(D8=e,z8=0,1e3*e)}var F8=p8().getLogger("broadcast-channel");F8.setLevel("error");const U8={create:function(e){var t={messagesCallback:null,bc:new BroadcastChannel(e),subFns:[]};return t.bc.onmessage=function(e){t.messagesCallback&&t.messagesCallback(e.data)},t},close:function(e){e.bc.close(),e.subFns=[]},onMessage:function(e,t){e.messagesCallback=t},postMessage:function(e,t){try{return e.bc.postMessage(t,!1),M8}catch(Tie){return Promise.reject(Tie)}},canBeUsed:function(e){if("undefined"===typeof window)return!1;if(!e.support3PC)return!1;if("function"===typeof BroadcastChannel){if(BroadcastChannel._pubkey)throw new Error("BroadcastChannel: Do not overwrite window.BroadcastChannel with this module, this is not a polyfill");return!0}return!1},type:"native",averageResponseTime:function(){return 150},microSeconds:B8};var $8=function(){function e(e){this.ttl=e,this.map=new Map,this._to=!1}return e.prototype.has=function(e){return this.map.has(e)},e.prototype.add=function(e){var t=this;this.map.set(e,H8()),this._to||(this._to=!0,setTimeout((function(){t._to=!1,function(e){var t=H8()-e.ttl,r=e.map[Symbol.iterator]();for(;;){var n=r.next().value;if(!n)return;var i=n[0];if(!(n[1]0&&void 0!==arguments[0]?arguments[0]:{},t=JSON.parse(JSON.stringify(e));return"undefined"===typeof t.support3PC&&(t.support3PC=function(){if("undefined"===typeof navigator)return!1;var e=I8().parse(navigator.userAgent);F8.info(JSON.stringify(e),"current browser info");var t=!0;return navigator.brave&&(t=!1),e.engine.name!==I8().ENGINE_MAP.WebKit&&e.engine.name!==I8().ENGINE_MAP.Gecko||(t=!1),t}()),"undefined"===typeof t.webWorkerSupport&&(t.webWorkerSupport=!0),t.idb||(t.idb={}),t.idb.ttl||(t.idb.ttl=45e3),t.idb.fallbackInterval||(t.idb.fallbackInterval=150),e.idb&&"function"===typeof e.idb.onclose&&(t.idb.onclose=e.idb.onclose),t.localstorage||(t.localstorage={}),t.localstorage.removeTimeout||(t.localstorage.removeTimeout=6e4),t.server||(t.server={}),t.server.url||(t.server.url="https://broadcast-server.tor.us"),t.server.removeTimeout||(t.server.removeTimeout=3e5),e.methods&&(t.methods=e.methods),t}var q8="pubkey.broadcast-channel-0-",K8="messages",W8={durability:"relaxed"};function G8(){if("undefined"!==typeof indexedDB)return indexedDB;if("undefined"!==typeof window){if("undefined"!==typeof window.mozIndexedDB)return window.mozIndexedDB;if("undefined"!==typeof window.webkitIndexedDB)return window.webkitIndexedDB;if("undefined"!==typeof window.msIndexedDB)return window.msIndexedDB}return!1}function Z8(e){e.commit&&e.commit()}function Y8(e,t){var r=e.transaction(K8,"readonly",W8),n=r.objectStore(K8),i=[],o=IDBKeyRange.bound(t+1,1/0);if(n.getAll){var a=n.getAll(o);return new Promise((function(e,t){a.onerror=function(e){return t(e)},a.onsuccess=function(t){e(t.target.result)}}))}return new Promise((function(e,a){var s=function(){try{return o=IDBKeyRange.bound(t+1,1/0),n.openCursor(o)}catch(pge){return n.openCursor()}}();s.onerror=function(e){return a(e)},s.onsuccess=function(n){var o=n.target.result;o?o.value.ide.lastCursorId&&(e.lastCursorId=t.id),t})).filter((function(t){return function(e,t){return e.uuid!==t.uuid&&!t.eMIs.has(e.id)&&!(e.data.time{d9[u9[e]]=e}));const h9={type:"error",data:"parser error"},f9="function"===typeof Blob||"undefined"!==typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),p9="function"===typeof ArrayBuffer,m9=e=>"function"===typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,g9=({type:e,data:t},r,n)=>f9&&t instanceof Blob?r?n(t):v9(t,n):p9&&(t instanceof ArrayBuffer||m9(t))?r?n(t):v9(new Blob([t]),n):n(u9[e]+(t||"")),v9=(e,t)=>{const r=new FileReader;return r.onload=function(){const e=r.result.split(",")[1];t("b"+(e||""))},r.readAsDataURL(e)};function y9(e){return e instanceof Uint8Array?e:e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}let b9;function w9(e,t){return f9&&e.data instanceof Blob?e.data.arrayBuffer().then(y9).then(t):p9&&(e.data instanceof ArrayBuffer||m9(e.data))?t(y9(e.data)):void g9(e,!1,(e=>{b9||(b9=new TextEncoder),t(b9.encode(e))}))}const x9="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",_9="undefined"===typeof Uint8Array?[]:new Uint8Array(256);for(let r=0;r<64;r++)_9[x9.charCodeAt(r)]=r;const k9="function"===typeof ArrayBuffer,S9=(e,t)=>{if("string"!==typeof e)return{type:"message",data:A9(e,t)};const r=e.charAt(0);if("b"===r)return{type:"message",data:E9(e.substring(1),t)};return d9[r]?e.length>1?{type:d9[r],data:e.substring(1)}:{type:d9[r]}:h9},E9=(e,t)=>{if(k9){const r=(e=>{let t,r,n,i,o,a=.75*e.length,s=e.length,c=0;"="===e[e.length-1]&&(a--,"="===e[e.length-2]&&a--);const l=new ArrayBuffer(a),u=new Uint8Array(l);for(t=0;t>4,u[c++]=(15&n)<<4|i>>2,u[c++]=(3&i)<<6|63&o;return l})(e);return A9(r,t)}return{base64:!0,data:e}},A9=(e,t)=>"blob"===t?e instanceof Blob?e:new Blob([e]):e instanceof ArrayBuffer?e:e.buffer,P9=String.fromCharCode(30);let O9;function T9(e){if(e)return function(e){for(var t in T9.prototype)e[t]=T9.prototype[t];return e}(e)}T9.prototype.on=T9.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},T9.prototype.once=function(e,t){function r(){this.off(e,r),t.apply(this,arguments)}return r.fn=t,this.on(e,r),this},T9.prototype.off=T9.prototype.removeListener=T9.prototype.removeAllListeners=T9.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var r,n=this._callbacks["$"+e];if(!n)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var i=0;i(e.hasOwnProperty(r)&&(t[r]=e[r]),t)),{})}const R9=C9.setTimeout,I9=C9.clearTimeout;function M9(e,t){t.useNativeTimers?(e.setTimeoutFn=R9.bind(C9),e.clearTimeoutFn=I9.bind(C9)):(e.setTimeoutFn=C9.setTimeout.bind(C9),e.clearTimeoutFn=C9.clearTimeout.bind(C9))}class L9 extends Error{constructor(e,t,r){super(e),this.description=t,this.context=r,this.type="TransportError"}}class N9 extends T9{constructor(e){super(),this.writable=!1,M9(this,e),this.opts=e,this.query=e.query,this.socket=e.socket}onError(e,t,r){return super.emitReserved("error",new L9(e,t,r)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this}send(e){"open"===this.readyState&&this.write(e)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const t=S9(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){const e=this.opts.hostname;return-1===e.indexOf(":")?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&Number(443!==this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""}_query(e){const t=function(e){let t="";for(let r in e)e.hasOwnProperty(r)&&(t.length&&(t+="&"),t+=encodeURIComponent(r)+"="+encodeURIComponent(e[r]));return t}(e);return t.length?"?"+t:""}}const D9="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),z9=64,B9={};let F9,U9=0,$9=0;function H9(e){let t="";do{t=D9[e%z9]+t,e=Math.floor(e/z9)}while(e>0);return t}function V9(){const e=H9(+new Date);return e!==F9?(U9=0,F9=e):e+"."+H9(U9++)}for(;$9{var e;3===r.readyState&&(null===(e=this.opts.cookieJar)||void 0===e||e.parseCookies(r)),4===r.readyState&&(200===r.status||1223===r.status?this.onLoad():this.setTimeoutFn((()=>{this.onError("number"===typeof r.status?r.status:0)}),0))},r.send(this.data)}catch(pge){return void this.setTimeoutFn((()=>{this.onError(pge)}),0)}"undefined"!==typeof document&&(this.index=Y9.requestsCount++,Y9.requests[this.index]=this)}onError(e){this.emitReserved("error",e,this.xhr),this.cleanup(!0)}cleanup(e){if("undefined"!==typeof this.xhr&&null!==this.xhr){if(this.xhr.onreadystatechange=G9,e)try{this.xhr.abort()}catch(pge){}"undefined"!==typeof document&&delete Y9.requests[this.index],this.xhr=null}}onLoad(){const e=this.xhr.responseText;null!==e&&(this.emitReserved("data",e),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}}if(Y9.requestsCount=0,Y9.requests={},"undefined"!==typeof document)if("function"===typeof attachEvent)attachEvent("onunload",X9);else if("function"===typeof addEventListener){addEventListener("onpagehide"in C9?"pagehide":"unload",X9,!1)}function X9(){for(let e in Y9.requests)Y9.requests.hasOwnProperty(e)&&Y9.requests[e].abort()}const J9="function"===typeof Promise&&"function"===typeof Promise.resolve?e=>Promise.resolve().then(e):(e,t)=>t(e,0),Q9=C9.WebSocket||C9.MozWebSocket;r(9673).Buffer;const e7="undefined"!==typeof navigator&&"string"===typeof navigator.product&&"reactnative"===navigator.product.toLowerCase();function t7(e,t){return"message"===e.type&&"string"!==typeof e.data&&t[0]>=48&&t[0]<=54}const r7={websocket:class extends N9{constructor(e){super(e),this.supportsBinary=!e.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const e=this.uri(),t=this.opts.protocols,r=e7?{}:j9(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=e7?new Q9(e,t,r):t?new Q9(e,t):new Q9(e)}catch(Tie){return this.emitReserved("error",Tie)}this.ws.binaryType=this.socket.binaryType||"arraybuffer",this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t{try{this.ws.send(e)}catch(pge){}n&&J9((()=>{this.writable=!0,this.emitReserved("drain")}),this.setTimeoutFn)}))}}doClose(){"undefined"!==typeof this.ws&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=V9()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}check(){return!!Q9}},webtransport:class extends N9{get name(){return"webtransport"}doOpen(){"function"===typeof WebTransport&&(this.transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name]),this.transport.closed.then((()=>{this.onClose()})).catch((e=>{this.onError("webtransport error",e)})),this.transport.ready.then((()=>{this.transport.createBidirectionalStream().then((e=>{const t=e.readable.getReader();let r;this.writer=e.writable.getWriter();const n=()=>{t.read().then((({done:e,value:t})=>{e||(r||1!==t.byteLength||54!==t[0]?(this.onPacket(function(e,t,r){O9||(O9=new TextDecoder);const n=t||e[0]<48||e[0]>54;return S9(n?e:O9.decode(e),r)}(t,r,"arraybuffer")),r=!1):r=!0,n())})).catch((e=>{}))};n();const i=this.query.sid?`0{"sid":"${this.query.sid}"}`:"0";this.writer.write((new TextEncoder).encode(i)).then((()=>this.onOpen()))}))})))}write(e){this.writable=!1;for(let t=0;t{t7(r,e)&&this.writer.write(Uint8Array.of(54)),this.writer.write(e).then((()=>{n&&J9((()=>{this.writable=!0,this.emitReserved("drain")}),this.setTimeoutFn)}))}))}}doClose(){var e;null===(e=this.transport)||void 0===e||e.close()}},polling:class extends N9{constructor(e){if(super(e),this.polling=!1,"undefined"!==typeof location){const t="https:"===location.protocol;let r=location.port;r||(r=t?"443":"80"),this.xd="undefined"!==typeof location&&e.hostname!==location.hostname||r!==e.port}const t=e&&e.forceBase64;this.supportsBinary=Z9&&!t,this.opts.withCredentials&&(this.cookieJar=void 0)}get name(){return"polling"}doOpen(){this.poll()}pause(e){this.readyState="pausing";const t=()=>{this.readyState="paused",e()};if(this.polling||!this.writable){let e=0;this.polling&&(e++,this.once("pollComplete",(function(){--e||t()}))),this.writable||(e++,this.once("drain",(function(){--e||t()})))}else t()}poll(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){((e,t)=>{const r=e.split(P9),n=[];for(let i=0;i{if("opening"===this.readyState&&"open"===e.type&&this.onOpen(),"close"===e.type)return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(e)})),"closed"!==this.readyState&&(this.polling=!1,this.emitReserved("pollComplete"),"open"===this.readyState&&this.poll())}doClose(){const e=()=>{this.write([{type:"close"}])};"open"===this.readyState?e():this.once("open",e)}write(e){this.writable=!1,((e,t)=>{const r=e.length,n=new Array(r);let i=0;e.forEach(((e,o)=>{g9(e,!1,(e=>{n[o]=e,++i===r&&t(n.join(P9))}))}))})(e,(e=>{this.doWrite(e,(()=>{this.writable=!0,this.emitReserved("drain")}))}))}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return!1!==this.opts.timestampRequests&&(t[this.opts.timestampParam]=V9()),this.supportsBinary||t.sid||(t.b64=1),this.createUri(e,t)}request(e={}){return Object.assign(e,{xd:this.xd,cookieJar:this.cookieJar},this.opts),new Y9(this.uri(),e)}doWrite(e,t){const r=this.request({method:"POST",data:e});r.on("success",t),r.on("error",((e,t)=>{this.onError("xhr post error",e,t)}))}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",((e,t)=>{this.onError("xhr poll error",e,t)})),this.pollXhr=e}}},n7=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,i7=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function o7(e){const t=e,r=e.indexOf("["),n=e.indexOf("]");-1!=r&&-1!=n&&(e=e.substring(0,r)+e.substring(r,n).replace(/:/g,";")+e.substring(n,e.length));let i=n7.exec(e||""),o={},a=14;for(;a--;)o[i7[a]]=i[a]||"";return-1!=r&&-1!=n&&(o.source=t,o.host=o.host.substring(1,o.host.length-1).replace(/;/g,":"),o.authority=o.authority.replace("[","").replace("]","").replace(/;/g,":"),o.ipv6uri=!0),o.pathNames=function(e,t){const r=/\/{2,9}/g,n=t.replace(r,"/").split("/");"/"!=t.slice(0,1)&&0!==t.length||n.splice(0,1);"/"==t.slice(-1)&&n.splice(n.length-1,1);return n}(0,o.path),o.queryKey=function(e,t){const r={};return t.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,(function(e,t,n){t&&(r[t]=n)})),r}(0,o.query),o}class a7 extends T9{constructor(e,t={}){super(),this.writeBuffer=[],e&&"object"===typeof e&&(t=e,e=null),e?(e=o7(e),t.hostname=e.host,t.secure="https"===e.protocol||"wss"===e.protocol,t.port=e.port,e.query&&(t.query=e.query)):t.host&&(t.hostname=o7(t.host).host),M9(this,t),this.secure=null!=t.secure?t.secure:"undefined"!==typeof location&&"https:"===location.protocol,t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||("undefined"!==typeof location?location.hostname:"localhost"),this.port=t.port||("undefined"!==typeof location&&location.port?location.port:this.secure?"443":"80"),this.transports=t.transports||["polling","websocket","webtransport"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),"string"===typeof this.opts.query&&(this.opts.query=function(e){let t={},r=e.split("&");for(let n=0,i=r.length;n{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),"localhost"!==this.hostname&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=4,t.transport=e,this.id&&(t.sid=this.id);const r=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new r7[e](r)}open(){let e;if(this.opts.rememberUpgrade&&a7.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket"))e="websocket";else{if(0===this.transports.length)return void this.setTimeoutFn((()=>{this.emitReserved("error","No transports available")}),0);e=this.transports[0]}this.readyState="opening";try{e=this.createTransport(e)}catch(pge){return this.transports.shift(),void this.open()}e.open(),this.setTransport(e)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",(e=>this.onClose("transport close",e)))}probe(e){let t=this.createTransport(e),r=!1;a7.priorWebsocketSuccess=!1;const n=()=>{r||(t.send([{type:"ping",data:"probe"}]),t.once("packet",(e=>{if(!r)if("pong"===e.type&&"probe"===e.data){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;a7.priorWebsocketSuccess="websocket"===t.name,this.transport.pause((()=>{r||"closed"!==this.readyState&&(l(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())}))}else{const e=new Error("probe error");e.transport=t.name,this.emitReserved("upgradeError",e)}})))};function i(){r||(r=!0,l(),t.close(),t=null)}const o=e=>{const r=new Error("probe error: "+e);r.transport=t.name,i(),this.emitReserved("upgradeError",r)};function a(){o("transport closed")}function s(){o("socket closed")}function c(e){t&&e.name!==t.name&&i()}const l=()=>{t.removeListener("open",n),t.removeListener("error",o),t.removeListener("close",a),this.off("close",s),this.off("upgrading",c)};t.once("open",n),t.once("error",o),t.once("close",a),this.once("close",s),this.once("upgrading",c),-1!==this.upgrades.indexOf("webtransport")&&"webtransport"!==e?this.setTimeoutFn((()=>{r||t.open()}),200):t.open()}onOpen(){if(this.readyState="open",a7.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush(),"open"===this.readyState&&this.opts.upgrade){let e=0;const t=this.upgrades.length;for(;e{this.onClose("ping timeout")}),this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}flush(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this.getWritablePackets();this.transport.send(e),this.prevBufferLen=e.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;let e=1;for(let r=0;r=57344?r+=3:(n++,r+=4);return r}(t):Math.ceil(1.33*(t.byteLength||t.size))),r>0&&e>this.maxPayload)return this.writeBuffer.slice(0,r);e+=2}var t;return this.writeBuffer}write(e,t,r){return this.sendPacket("message",e,t,r),this}send(e,t,r){return this.sendPacket("message",e,t,r),this}sendPacket(e,t,r,n){if("function"===typeof t&&(n=t,t=void 0),"function"===typeof r&&(n=r,r=null),"closing"===this.readyState||"closed"===this.readyState)return;(r=r||{}).compress=!1!==r.compress;const i={type:e,data:t,options:r};this.emitReserved("packetCreate",i),this.writeBuffer.push(i),n&&this.once("flush",n),this.flush()}close(){const e=()=>{this.onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},r=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",(()=>{this.upgrading?r():e()})):this.upgrading?r():e()),this}onError(e){a7.priorWebsocketSuccess=!1,this.emitReserved("error",e),this.onClose("transport error",e)}onClose(e,t){"opening"!==this.readyState&&"open"!==this.readyState&&"closing"!==this.readyState||(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),"function"===typeof removeEventListener&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(e){const t=[];let r=0;const n=e.length;for(;r"function"===typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer,l7=Object.prototype.toString,u7="function"===typeof Blob||"undefined"!==typeof Blob&&"[object BlobConstructor]"===l7.call(Blob),d7="function"===typeof File||"undefined"!==typeof File&&"[object FileConstructor]"===l7.call(File);function h7(e){return s7&&(e instanceof ArrayBuffer||c7(e))||u7&&e instanceof Blob||d7&&e instanceof File}function f7(e,t){if(!e||"object"!==typeof e)return!1;if(Array.isArray(e)){for(let t=0,r=e.length;t=0&&e.num{delete this.acks[e];for(let t=0;t{this.io.clearTimeoutFn(i),t.apply(this,[null,...e])}}emitWithAck(e,...t){const r=void 0!==this.flags.timeout||void 0!==this._opts.ackTimeout;return new Promise(((n,i)=>{t.push(((e,t)=>r?e?i(e):n(t):n(e))),this.emit(e,...t)}))}_addToQueue(e){let t;"function"===typeof e[e.length-1]&&(t=e.pop());const r={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push(((e,...n)=>{if(r!==this._queue[0])return;return null!==e?r.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(e)):(this._queue.shift(),t&&t(null,...n)),r.pending=!1,this._drainQueue()})),this._queue.push(r),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||0===this._queue.length)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){"function"==typeof this.auth?this.auth((e=>{this._sendConnectPacket(e)})):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:w7.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t)}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case w7.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case w7.EVENT:case w7.BINARY_EVENT:this.onevent(e);break;case w7.ACK:case w7.BINARY_ACK:this.onack(e);break;case w7.DISCONNECT:this.ondisconnect();break;case w7.CONNECT_ERROR:this.destroy();const t=new Error(e.data.message);t.data=e.data.data,this.emitReserved("connect_error",t)}}onevent(e){const t=e.data||[];null!=e.id&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const r of t)r.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&"string"===typeof e[e.length-1]&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let r=!1;return function(...n){r||(r=!0,t.packet({type:w7.ACK,id:e,data:n}))}}onack(e){const t=this.acks[e.id];"function"===typeof t&&(t.apply(this,e.data),delete this.acks[e.id])}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach((e=>this.emitEvent(e))),this.receiveBuffer=[],this.sendBuffer.forEach((e=>{this.notifyOutgoingListeners(e),this.packet(e)})),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach((e=>e())),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:w7.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let r=0;r0&&e.jitter<=1?e.jitter:0,this.attempts=0}O7.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),r=Math.floor(t*this.jitter*e);e=0==(1&Math.floor(10*t))?e-r:e+r}return 0|Math.min(e,this.max)},O7.prototype.reset=function(){this.attempts=0},O7.prototype.setMin=function(e){this.ms=e},O7.prototype.setMax=function(e){this.max=e},O7.prototype.setJitter=function(e){this.jitter=e};class T7 extends T9{constructor(e,t){var r;super(),this.nsps={},this.subs=[],e&&"object"===typeof e&&(t=e,e=void 0),(t=t||{}).path=t.path||"/socket.io",this.opts=t,M9(this,t),this.reconnection(!1!==t.reconnection),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor(null!==(r=t.randomizationFactor)&&void 0!==r?r:.5),this.backoff=new O7({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(null==t.timeout?2e4:t.timeout),this._readyState="closed",this.uri=e;const i=t.parser||n;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=!1!==t.autoConnect,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,this):this._reconnection}reconnectionAttempts(e){return void 0===e?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return void 0===e?this._reconnectionDelay:(this._reconnectionDelay=e,null===(t=this.backoff)||void 0===t||t.setMin(e),this)}randomizationFactor(e){var t;return void 0===e?this._randomizationFactor:(this._randomizationFactor=e,null===(t=this.backoff)||void 0===t||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return void 0===e?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,null===(t=this.backoff)||void 0===t||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&0===this.backoff.attempts&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new a7(this.uri,this.opts);const t=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;const n=E7(t,"open",(function(){r.onopen(),e&&e()})),i=t=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",t),e?e(t):this.maybeReconnectOnOpen()},o=E7(t,"error",i);if(!1!==this._timeout){const e=this._timeout,r=this.setTimeoutFn((()=>{n(),i(new Error("timeout")),t.close()}),e);this.opts.autoUnref&&r.unref(),this.subs.push((()=>{this.clearTimeoutFn(r)}))}return this.subs.push(n),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(E7(e,"ping",this.onping.bind(this)),E7(e,"data",this.ondata.bind(this)),E7(e,"error",this.onerror.bind(this)),E7(e,"close",this.onclose.bind(this)),E7(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(pge){this.onclose("parse error",pge)}}ondecoded(e){J9((()=>{this.emitReserved("packet",e)}),this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let r=this.nsps[e];return r?this._autoConnect&&!r.active&&r.connect():(r=new P7(this,e,t),this.nsps[e]=r),r}_destroy(e){const t=Object.keys(this.nsps);for(const r of t){if(this.nsps[r].active)return}this._close()}_packet(e){const t=this.encoder.encode(e);for(let r=0;re())),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(e,t){this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const r=this.setTimeoutFn((()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),e.skipReconnect||e.open((t=>{t?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",t)):e.onreconnect()})))}),t);this.opts.autoUnref&&r.unref(),this.subs.push((()=>{this.clearTimeoutFn(r)}))}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const C7={};function j7(e,t){"object"===typeof e&&(t=e,e=void 0);const r=function(e,t="",r){let n=e;r=r||"undefined"!==typeof location&&location,null==e&&(e=r.protocol+"//"+r.host),"string"===typeof e&&("/"===e.charAt(0)&&(e="/"===e.charAt(1)?r.protocol+e:r.host+e),/^(https?|wss?):\/\//.test(e)||(e="undefined"!==typeof r?r.protocol+"//"+e:"https://"+e),n=o7(e)),n.port||(/^(http|ws)$/.test(n.protocol)?n.port="80":/^(http|ws)s$/.test(n.protocol)&&(n.port="443")),n.path=n.path||"/";const i=-1!==n.host.indexOf(":")?"["+n.host+"]":n.host;return n.id=n.protocol+"://"+i+":"+n.port+t,n.href=n.protocol+"://"+i+(r&&r.port===n.port?"":":"+n.port),n}(e,(t=t||{}).path||"/socket.io"),n=r.source,i=r.id,o=r.path,a=C7[i]&&o in C7[i].nsps;let s;return t.forceNew||t["force new connection"]||!1===t.multiplex||a?s=new T7(n,t):(C7[i]||(C7[i]=new T7(n,t)),s=C7[i]),r.query&&!t.query&&(t.query=r.queryKey),s.socket(r.path,t)}Object.assign(j7,{Manager:T7,Socket:P7,io:j7,connect:j7});var R7=r(1224),I7=r.n(R7),M7=r(9673).Buffer;const L7=new YS.ec("secp256k1"),N7=r.g.crypto||r.g.msCrypto||{},D7=N7.subtle||N7.webkitSubtle,z7=M7.from("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141","hex"),B7=M7.alloc(32,0);function F7(e,t){if(!e)throw new Error(t||"Assertion failed")}function U7(e){return!!function(e){return M7.isBuffer(e)&&32===e.length}(e)&&(e.compare(B7)>0&&e.compare(z7)<0)}function $7(e){const t=new Uint8Array(e);return"undefined"===typeof N7.getRandomValues?M7.from(I7().randomBytes(e)):(N7.getRandomValues(t),M7.from(t))}async function H7(e){if(D7){const t=await D7.digest("SHA-512",e);return new Uint8Array(t)}const t=I7().createHash("sha512").update(e).digest();return new Uint8Array(t)}function V7(e){return async function(t,r,n){if(D7){const i={name:"AES-CBC"},o=await D7.importKey("raw",r,i,!1,[e]),a={name:"AES-CBC",iv:t},s=await D7[e](a,o,n);return M7.from(new Uint8Array(s))}if("encrypt"===e){const e=I7().createCipheriv("aes-256-cbc",r,t),i=e.update(n),o=e.final();return M7.concat([i,o])}if("decrypt"===e){const e=I7().createDecipheriv("aes-256-cbc",r,t),i=e.update(n),o=e.final();return M7.concat([i,o])}throw new Error(`Unsupported operation: ${e}`)}}const q7=V7("encrypt"),K7=V7("decrypt");async function W7(e,t){if(D7){const r={name:"HMAC",hash:{name:"SHA-256"}},n=await D7.importKey("raw",new Uint8Array(e),r,!1,["sign","verify"]),i=await D7.sign("HMAC",n,t);return M7.from(new Uint8Array(i))}const r=I7().createHmac("sha256",M7.from(e));r.update(t);return r.digest()}const G7=function(){let e=$7(32);for(;!U7(e);)e=$7(32);return e},Z7=function(e){return F7(32===e.length,"Bad private key"),F7(U7(e),"Bad private key"),M7.from(L7.keyFromPrivate(e).getPublic("array"))},Y7=async function(e,t){return F7(32===e.length,"Bad private key"),F7(U7(e),"Bad private key"),F7(t.length>0,"Message should not be empty"),F7(t.length<=32,"Message is too long"),M7.from(L7.sign(t,e,{canonical:!0}).toDER())},X7=async function(e,t){F7(M7.isBuffer(e),"Bad private key"),F7(M7.isBuffer(t),"Bad public key"),F7(32===e.length,"Bad private key"),F7(U7(e),"Bad private key"),F7(65===t.length||33===t.length,"Bad public key"),65===t.length&&F7(4===t[0],"Bad public key"),33===t.length&&F7(2===t[0]||3===t[0],"Bad public key");const r=L7.keyFromPrivate(e),n=L7.keyFromPublic(t),i=r.derive(n.getPublic());return M7.from(i.toArray())},J7=async function(e,t){F7(M7.isBuffer(e),"Bad private key"),F7(M7.isBuffer(t),"Bad public key"),F7(32===e.length,"Bad private key"),F7(U7(e),"Bad private key"),F7(65===t.length||33===t.length,"Bad public key"),65===t.length&&F7(4===t[0],"Bad public key"),33===t.length&&F7(2===t[0]||3===t[0],"Bad public key");const r=L7.keyFromPrivate(e),n=L7.keyFromPublic(t),i=r.derive(n.getPublic());return M7.from(i.toString(16,64),"hex")},Q7=async function(e,t,r){let n=(r=r||{}).ephemPrivateKey||$7(32);for(;!U7(n);)n=r.ephemPrivateKey||$7(32);const i=Z7(n),o=await X7(n,e),a=await H7(o),s=r.iv||$7(16),c=a.slice(0,32),l=a.slice(32),u=await q7(s,M7.from(c),t),d=M7.concat([s,i,u]);return{iv:s,ephemPublicKey:i,ciphertext:u,mac:await W7(M7.from(l),d)}},eee=async function(e,t,r){const n=null!==r&&void 0!==r&&r,i=n?J7:X7,o=await i(e,t.ephemPublicKey),a=await H7(o),s=a.slice(0,32),c=a.slice(32),l=M7.concat([t.iv,t.ephemPublicKey,t.ciphertext]),u=await async function(e,t,r){return function(e,t){if(e.length!==t.length)return!1;let r=0;for(let n=0;n0||e._addEL.internal.length>0}function jee(e,t,r){e._addEL[t].push(r),function(e){if(!e._iL&&Cee(e)){var t=function(t){e._addEL[t.type].forEach((function(r){var n=1e5,i=r.time-n;(t.time>=i||"server"===e.method.type)&&r.fn(t.data)}))},r=e.method.microSeconds();e._prepP?e._prepP.then((function(){e._iL=!0,e.method.onMessage(e._state,t,r)})):(e._iL=!0,e.method.onMessage(e._state,t,r))}}(e)}function Ree(e,t,r){e._addEL[t]=e._addEL[t].filter((function(e){return e!==r})),function(e){if(e._iL&&!Cee(e)){e._iL=!1;var t=e.method.microSeconds();e.method.onMessage(e._state,null,t)}}(e)}function Iee(e){this.message=e}Oee._pubkey=!0,Oee.prototype={postMessage:function(e){if(this.closed)throw new Error("BroadcastChannel.postMessage(): Cannot post message after channel has closed "+JSON.stringify(e));return Tee(this,"message",e)},postInternal:function(e){return Tee(this,"internal",e)},set onmessage(e){var t={time:this.method.microSeconds(),fn:e};Ree(this,"message",this._onML),e&&"function"===typeof e?(this._onML=t,jee(this,"message",t)):this._onML=null},addEventListener:function(e,t){jee(this,e,{time:this.method.microSeconds(),fn:t})},removeEventListener:function(e,t){Ree(this,e,this._addEL[e].find((function(e){return e.fn===t})))},close:function(){var e=this;if(!this.closed){Aee.delete(this),this.closed=!0;var t=this._prepP?this._prepP:M8;return this._onML=null,this._addEL.message=[],t.then((function(){return Promise.all(Array.from(e._uMP))})).then((function(){return Promise.all(e._befC.map((function(e){return e()})))})).then((function(){return e.method.close(e._state)}))}},get type(){return this.method.type},get isClosed(){return this.closed}},Iee.prototype=new Error,Iee.prototype.name="InvalidCharacterError";var Mee="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(e){var t=String(e).replace(/=+$/,"");if(t.length%4==1)throw new Iee("'atob' failed: The string to be decoded is not correctly encoded.");for(var r,n,i=0,o=0,a="";n=t.charAt(o++);~n&&(r=i%4?64*r+n:n,i++%4)?a+=String.fromCharCode(255&r>>(-2*i&6)):0)n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(n);return a};function Lee(e){this.message=e}Lee.prototype=new Error,Lee.prototype.name="InvalidTokenError";const Nee=function(e,t){if("string"!=typeof e)throw new Lee("Invalid token specified");var r=!0===(t=t||{}).header?0:1;try{return JSON.parse(function(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return function(e){return decodeURIComponent(Mee(e).replace(/(.)/g,(function(e,t){var r=t.charCodeAt(0).toString(16).toUpperCase();return r.length<2&&(r="0"+r),"%"+r})))}(t)}catch(e){return Mee(t)}}(e.split(".")[r]))}catch(e){throw new Lee("Invalid token specified: "+e.message)}},Dee={MAINNET:"mainnet",TESTNET:"testnet",CYAN:"cyan",AQUA:"aqua",CELESTE:"celeste"},zee={SAPPHIRE_DEVNET:"sapphire_devnet",SAPPHIRE_TESTNET:"sapphire_testnet",SAPPHIRE_MAINNET:"sapphire_mainnet"},Bee=[Dee.AQUA,Dee.CELESTE,Dee.CYAN],Fee={[Dee.AQUA]:{migrationCompleted:!1,networkIdentifier:"aqua",networkMigratedTo:zee.SAPPHIRE_MAINNET},[Dee.CELESTE]:{migrationCompleted:!1,networkIdentifier:"celeste",networkMigratedTo:zee.SAPPHIRE_MAINNET},[Dee.CYAN]:{migrationCompleted:!1,networkIdentifier:"cyan",networkMigratedTo:zee.SAPPHIRE_MAINNET},[Dee.MAINNET]:{migrationCompleted:!1,networkIdentifier:"mainnet",networkMigratedTo:zee.SAPPHIRE_MAINNET},[Dee.TESTNET]:{migrationCompleted:!0,networkIdentifier:"teal",networkMigratedTo:zee.SAPPHIRE_TESTNET}},Uee={[Dee.MAINNET]:"https://signer.tor.us",[Dee.TESTNET]:"https://signer.tor.us",[Dee.CYAN]:"https://signer-polygon.tor.us",[Dee.AQUA]:"https://signer-polygon.tor.us",[Dee.CELESTE]:"https://signer-polygon.tor.us"},$ee={[zee.SAPPHIRE_DEVNET]:["https://sapphire-dev-2-1.authnetwork.dev","https://sapphire-dev-2-2.authnetwork.dev","https://sapphire-dev-2-3.authnetwork.dev","https://sapphire-dev-2-4.authnetwork.dev","https://sapphire-dev-2-5.authnetwork.dev"],[zee.SAPPHIRE_TESTNET]:["https://sapphire-dev-2-1.authnetwork.dev","https://sapphire-dev-2-2.authnetwork.dev","https://sapphire-dev-2-3.authnetwork.dev","https://sapphire-dev-2-4.authnetwork.dev","https://sapphire-dev-2-5.authnetwork.dev"],[zee.SAPPHIRE_MAINNET]:["https://sapphire-1.auth.network","https://sapphire-2.auth.network","https://sapphire-3.auth.network","https://sapphire-4.auth.network","https://sapphire-5.auth.network"]},Hee=(e,t)=>{const r=$ee[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=Fee[t];return r.map((e=>n&&n.networkIdentifier?`${e}/sss/${n.networkIdentifier}/jrpc`:`${e}/sss/jrpc`))},Vee=(e,t)=>{const r=$ee[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=Fee[t];return r.map((e=>n&&n.networkIdentifier?`${e}/rss/${n.networkIdentifier}`:`${e}/rss`))},qee=(e,t)=>{const r=$ee[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=Fee[t];return r.map((e=>n&&n.networkIdentifier?`${e}/tss/${n.networkIdentifier}`:`${e}/tss`))},Kee={currentEpoch:"19",torusNodeEndpoints:["https://torus-19.torusnode.com/jrpc","https://torus-node.ens.domains/jrpc","https://torus-node.matic.network/jrpc","https://torus.zilliqa.network/jrpc","https://torus-mainnet.cosmos.network/jrpc","https://torus2.etherscan.com/jrpc","https://torus-node-v2.skalelabs.com/jrpc","https://torus-node.binancex.dev/jrpc","https://torusnode.ont.io/jrpc"],torusIndexes:[1,2,3,4,5,6,7,8,9],torusNodePub:[{X:"bbe83c64177c3775550e6ba6ac2bc059f6847d644c9e4894e42c60d7974d8c2b",Y:"82b49a7caf70def38cdad2740af45c1e4f969650105c5019a29bb18b21a9acb5"},{X:"c208cac4ef9a47d386097a9c915b28e9cb89213abee8d26a17198ee261201b0d",Y:"c7db2fe4631109f40833de9dc78d07e35706549ee48fa557b33e4e75e1047873"},{X:"ca1766bb426d4ca5582818a0c5439d560ea64f5baa060793ab29dd3d0ceacfe",Y:"d46c1d08c40e1306e1bca328c2287b8268166b11a1ba4b8442ea2ad0c5e32152"},{X:"c3934dd2f6f4b3d2e1e398cc501e143c1e1a381b52feb6d1525af34d16253768",Y:"71f5141a5035799099f5ea3e241e66946bc55dc857ac3bd7d6fcdb8dcd3eeeef"},{X:"22e66f1929631d00bf026227581597f085fd94fd952fc0dca9f0833398b5c064",Y:"6088b3912e10a1e9d50355a609c10db7d188f16a2e2fd7357e51bf4f6a74f0a1"},{X:"9dc9fa410f3ce9eb70df70cdea00a49f2c4cc7a31c08c0dab5f863ed35ff5139",Y:"627a291cb87a75c61da3f65d6818e1e05e360217179817ed27e8c73bca7ec122"},{X:"118b9fc07e97b096d899b9f6658463ce6a8caa64038e37fc969df4e6023dd8c6",Y:"baf9fa4e51770f4796ea165dd03a769b8606681a38954a0a92c4cbffd6609ce9"},{X:"8a6d8b925da15a273dec3d8f8395ec35cd6878f274b2b180e4e106999db64043",Y:"96f67f870c157743da0b1eb84d89bf30500d74dc84c11f501ee1cb013acc8c46"},{X:"39cecb62e863729f572f7dfc46c24867981bf04bb405fed0df39e33984bfade5",Y:"61c2364434012e68a2be2e9952805037e52629d7762fafc8e10e9fb5bad8f790"}]},Wee={[zee.SAPPHIRE_MAINNET]:[{X:"e0925898fee0e9e941fdca7ee88deec99939ae9407e923535c4d4a3a3ff8b052",Y:"54b9fea924e3f3e40791f9987f4234ae4222412d65b74068032fa5d8b63375c1"},{X:"9124cf1e280aab32ba50dffd2de81cecabc13d82d2c1fe9de82f3b3523f9b637",Y:"fca939a1ceb42ce745c55b21ef094f543b457630cb63a94ef4f1afeee2b1f107"},{X:"555f681a63d469cc6c3a58a97e29ebd277425f0e6159708e7c7bf05f18f89476",Y:"606f2bcc0884fa5b64366fc3e8362e4939841b56acd60d5f4553cf36b891ac4e"},{X:"2b5f58d8e340f1ab922e89b3a69a68930edfe51364644a456335e179bc130128",Y:"4b4daa05939426e3cbe7d08f0e773d2bf36f64c00d04620ee6df2a7af4d2247"},{X:"3ecbb6a68afe72cf34ec6c0a12b5cb78a0d2e83ba402983b6adbc5f36219861a",Y:"dc1031c5cc8f0472bd521a62a64ebca9e163902c247bf05937daf4ae835091e4"}],[zee.SAPPHIRE_TESTNET]:[{X:"f74389b0a4c8d10d2a687ae575f69b20f412d41ab7f1fe6b358aa14871327247",Y:"54e3a73098ed9bced3ef8821736e9794f9264a1420c0c7ad15d2fa617ba35ef7"},{X:"bc38813a6873e526087918507c78fc3a61624670ee851ecfb4f3bef55d027b5a",Y:"ac4b21229f662a0aefdfdac21cf17c3261a392c74a8790db218b34e3e4c1d56a"},{X:"b56541684ea5fa40c8337b7688d502f0e9e092098962ad344c34e94f06d293fb",Y:"759a998cef79d389082f9a75061a29190eec0cac99b8c25ddcf6b58569dad55c"},{X:"7bcb058d4c6ffc6ba4bfdfd93d141af35a66338a62c7c27cdad2ae3f8289b767",Y:"336ab1935e41ed4719e162587f0ab55518db4207a1eb36cc72303f1b86689d2b"},{X:"bf12a136ef94399ea098f926f04e26a4ec4ac70f69cce274e8893704c4951773",Y:"bdd44828020f52ce510e026338216ada184a6867eb4e19fb4c2d495d4a7e15e4"}],[zee.SAPPHIRE_DEVNET]:[{X:"f74389b0a4c8d10d2a687ae575f69b20f412d41ab7f1fe6b358aa14871327247",Y:"54e3a73098ed9bced3ef8821736e9794f9264a1420c0c7ad15d2fa617ba35ef7"},{X:"bc38813a6873e526087918507c78fc3a61624670ee851ecfb4f3bef55d027b5a",Y:"ac4b21229f662a0aefdfdac21cf17c3261a392c74a8790db218b34e3e4c1d56a"},{X:"b56541684ea5fa40c8337b7688d502f0e9e092098962ad344c34e94f06d293fb",Y:"759a998cef79d389082f9a75061a29190eec0cac99b8c25ddcf6b58569dad55c"},{X:"7bcb058d4c6ffc6ba4bfdfd93d141af35a66338a62c7c27cdad2ae3f8289b767",Y:"336ab1935e41ed4719e162587f0ab55518db4207a1eb36cc72303f1b86689d2b"},{X:"bf12a136ef94399ea098f926f04e26a4ec4ac70f69cce274e8893704c4951773",Y:"bdd44828020f52ce510e026338216ada184a6867eb4e19fb4c2d495d4a7e15e4"}]},Gee=(e,t)=>({currentEpoch:"1",torusNodeEndpoints:Hee(e,t),torusNodeSSSEndpoints:Hee(e,t),torusNodeRSSEndpoints:Vee(e,t),torusNodeTSSEndpoints:qee(e,t),torusIndexes:[1,2,3,4,5],torusNodePub:Wee[e]});const Zee=p8().getLogger("fnd");class Yee{constructor(){let{network:e=zee.SAPPHIRE_MAINNET,fndServerEndpoint:t,enableLogging:r=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};u8(this,"fndServerEndpoint","https://fnd.tor.us/node-details"),u8(this,"_currentEpoch","1"),u8(this,"_torusNodeEndpoints",[]),u8(this,"_torusNodeRSSEndpoints",[]),u8(this,"_torusNodeSSSEndpoints",[]),u8(this,"_torusNodeTSSEndpoints",[]),u8(this,"_torusNodePub",[]),u8(this,"_torusIndexes",[]),u8(this,"updated",void 0),u8(this,"network",void 0),this.network=e,this.updated=!1,t&&(this.fndServerEndpoint=t),r?Zee.enableAll():Zee.disableAll()}get _nodeDetails(){return{currentEpoch:this._currentEpoch,torusNodeEndpoints:this._torusNodeEndpoints,torusNodeSSSEndpoints:this._torusNodeSSSEndpoints,torusNodeRSSEndpoints:this._torusNodeRSSEndpoints,torusNodeTSSEndpoints:this._torusNodeTSSEndpoints,torusNodePub:this._torusNodePub,torusIndexes:this._torusIndexes,updated:this.updated}}async getNodeDetails(e){let{verifier:t,verifierId:r}=e;try{if(this.updated&&!Bee.includes(this.network))return this._nodeDetails;try{const{nodeDetails:e}=await O8(`${this.fndServerEndpoint}?network=${this.network}&verifier=${t}&verifierId=${r}`);return this.setNodeDetails(e),this._nodeDetails}catch(n){Zee.error("Failed to fetch node details from server, using local.",n)}const e=function(e){if(Object.values(zee).includes(e))return Gee(e);if(Object.values(Dee).includes(e)){const t=Fee[e];if(t.migrationCompleted)return Gee(t.networkMigratedTo,e);if(e===Dee.MAINNET)return Kee}}(this.network);if(!e)throw new Error("Failed to fetch node details");return this.setNodeDetails(e),this._nodeDetails}catch(n){throw Zee.error("Failed to fetch node details",n),n}}setNodeDetails(e){const{currentEpoch:t,torusNodeEndpoints:r,torusNodeSSSEndpoints:n,torusNodeRSSEndpoints:i,torusNodeTSSEndpoints:o,torusNodePub:a,torusIndexes:s}=e;this._torusNodeEndpoints=r,this._torusNodeSSSEndpoints=n||[],this._torusNodeRSSEndpoints=i||[],this._torusNodeTSSEndpoints=o||[],this._torusNodePub=a,this._torusIndexes=s,this._currentEpoch=t,this.updated=!0}}var Xee=r(3924),Jee=r.n(Xee),Qee=r(9673).Buffer;const ete="GetPubKeyOrKeyAssign",tte="CommitmentRequest",rte="ImportShare",nte="GetShareOrKeyAssign",ite="https://metadata.tor.us",ote=(e,t)=>{let r=e;if("number"===typeof r&&(r=Array.from({length:r},((e,t)=>t))),t>r.length||t<=0)return[];if(t===r.length)return[r];if(1===t)return r.reduce(((e,t)=>[...e,[t]]),[]);const n=[];let i=[];for(let o=0;o<=r.length-t+1;o+=1){i=ote(r.slice(o+1),t-1);for(let e=0;e{const r={};for(let n=0;n=8?o+=t[a].toUpperCase():o+=t[a];return o}function hte(e,t){const r=e.keyFromPrivate(t.toString("hex",64),"hex").getPublic().encode("hex",!1).slice(2);lte.info(r,"public key");return dte(`0x${ute(Qee.from(r,"hex")).slice(26)}`)}function fte(e,t,r){const n=e.keyFromPublic({x:t.toString("hex",64),y:r.toString("hex",64)}),i=n.getPublic().encode("hex",!1).slice(2);lte.info(n.getPublic().encode("hex",!1),"public key");return dte(`0x${ute(Qee.from(i,"hex")).slice(26)}`)}lte.disableAll();class pte{constructor(e,t,r){u8(this,"x",void 0),u8(this,"y",void 0),u8(this,"ecCurve",void 0),this.x=new(Jee())(e,"hex"),this.y=new(Jee())(t,"hex"),this.ecCurve=r}encode(e){switch(e){case"arr":return Qee.concat([Qee.from("0x04","hex"),Qee.from(this.x.toString("hex"),"hex"),Qee.from(this.y.toString("hex"),"hex")]);case"elliptic-compressed":{const e=this.ecCurve.keyFromPublic({x:this.x.toString("hex",64),y:this.y.toString("hex",64)},"hex");return Qee.from(e.getPublic(!0,"hex"))}default:throw new Error("encoding doesn't exist in Point")}}}class mte{constructor(e,t){u8(this,"share",void 0),u8(this,"shareIndex",void 0),this.share=new(Jee())(t,"hex"),this.shareIndex=new(Jee())(e,"hex")}static fromJSON(e){const{share:t,shareIndex:r}=e;return new mte(r,t)}toJSON(){return{share:this.share.toString("hex"),shareIndex:this.shareIndex.toString("hex")}}}class gte{constructor(e,t){u8(this,"polynomial",void 0),u8(this,"ecCurve",void 0),this.polynomial=e,this.ecCurve=t}getThreshold(){return this.polynomial.length}polyEval(e){const t=new(Jee())(e,"hex");let r=new(Jee())(t),n=new(Jee())(0);n=n.add(this.polynomial[0]);for(let i=1;i"number"===typeof e?new(Jee())(e):e instanceof Jee()?e:"string"===typeof e?new(Jee())(e,"hex"):e)),r={};for(let n=0;ne.eq(t)))?vte(e):t}const yte=e=>Array.from({length:e},(()=>new(Jee())(0))),bte=(e,t,r)=>{let n=yte(r.length);const i=((e,t,r)=>{let n=new(Jee())(1);const i=r[t].x;for(let o=r.length-1;o>=0;o-=1)if(t!==o){let t=new(Jee())(i);t=t.sub(r[o].x),t=t.umod(e.curve.n),n=n.mul(t),n=n.umod(e.curve.n)}return n})(e,t,r);if(0===i.cmp(new(Jee())(0)))throw new Error("Denominator for interpolationPoly is 0");n[0]=i.invm(e.curve.n);for(let o=0;o=0;a-=1){i[a+1]=i[a+1].add(n[a]).umod(e.curve.n);let t=new(Jee())(r[o].x);t=t.mul(n[a]).umod(e.curve.n),i[a]=i[a].sub(t).umod(e.curve.n)}n=i}}return n},wte=(e,t)=>{const r=(e=>{const t=[...e];return t.sort(((e,t)=>e.x.cmp(t.x))),t})(t),n=yte(r.length);for(let i=0;it)throw new Error("deterministicShares in generateRandomPolynomial should be less or equal than degree to ensure an element of randomness");const o={};n.forEach((t=>{o[t.shareIndex.toString("hex",64)]=new pte(t.shareIndex,t.share,e)}));for(let a=0;a2&&void 0!==arguments[2]?arguments[2]:{};try{const n=await T8(`${e}/get`,t,r,{useAPIKey:!0});return n&&n.message?new(Jee())(n.message,16):new(Jee())(0)}catch(n){return p8().error("get metadata error",n),new(Jee())(0)}}async function Pte(e,t,r,n,i,o){let a;const s=arguments.length>6&&void 0!==arguments[6]&&arguments[6]?"getNonce":"getOrSetNonce";return a=o?function(e,t,r,n){const i=e.keyFromPrivate(n.toString("hex",64)),o={data:r,timestamp:new(Jee())(~~(t+Date.now()/1e3)).toString(16)},a=i.sign(ute(Qee.from(nee()(o),"utf8")).slice(2));return{pub_key_X:i.getPublic().getX().toString("hex",64),pub_key_Y:i.getPublic().getY().toString("hex",64),set_data:o,signature:Qee.from(a.r.toString(16,64)+a.s.toString(16,64)+new(Jee())("").toString(16,2),"hex").toString("base64")}}(t,r,s,o):{pub_key_X:n,pub_key_Y:i,set_data:{data:s}},T8(`${e}/get_or_set_nonce`,a,void 0,{useAPIKey:!0})}async function Ote(e,t,r,n,i,o){return Pte(e,t,r,n,i,o,!0)}const Tte={logRequestTracing:!1};class Cte extends Error{constructor(e){let{errors:t,responses:r,predicate:n}=e;super("Unable to resolve enough promises."),u8(this,"errors",void 0),u8(this,"responses",void 0),u8(this,"predicate",void 0),this.errors=t,this.responses=r,this.predicate=n}get message(){return`${super.message}. ${this.errors.length} errors: ${this.errors.map((e=>e.message||e)).join(", ")} and ${this.responses.length} responses: ${JSON.stringify(this.responses)}`}toString(){return this.message}}const jte=(e,t)=>new Promise(((r,n)=>{let i=0;const o={resolved:!1},a=new Array(e.length).fill(void 0),s=new Array(e.length).fill(void 0);let c;return e.forEach(((l,u)=>l.then((e=>{s[u]=e})).catch((e=>{a[u]=e})).finally((()=>{if(!o.resolved)return t(s.slice(0),o).then((e=>{o.resolved=!0,r(e)})).catch((e=>{c=e})).finally((()=>{if(i+=1,i===e.length){const e=Object.values(s.reduce(((e,t)=>{if(t){var r;const{id:i,error:o}=t;(null===o||void 0===o||null===(r=o.data)||void 0===r?void 0:r.length)>0&&(o.data.startsWith("Error occurred while verifying params")?e[i]=(n=o.data).charAt(0).toUpperCase()+n.slice(1):e[i]=o.data)}var n;return e}),{}));if(e.length>0){const t=e.length>1?`\n${e.map((e=>`\u2022 ${e}`)).join("\n")}`:e[0];n(new Error(t))}else{var t;n(new Cte({errors:a,responses:s,predicate:(null===(t=c)||void 0===t?void 0:t.message)||c}))}}}))}))))}));function Rte(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ite(e){for(var t=1;t0){if(h.length!==c.length)throw new Error("Invalid imported shares length");w=!0}for(let x=0;x{lte.error("commitment error",e)}));p.push(e)}return jte(p,(e=>{const t=e.filter((e=>!(!e||"object"!==typeof e)&&!e.error));if(h.length>0&&t.length===c.length)return Promise.resolve(e);if(0===h.length&&t.length>=1+~~(3*c.length/4)){if(t.find((e=>{var t;return!(!e||"1"!==(null===(t=e.result)||void 0===t?void 0:t.nodeindex))})))return Promise.resolve(e)}return Promise.reject(new Error(`invalid ${JSON.stringify(e)}`))})).then((e=>{const t=[],r=[];for(let i=0;ilte.error("share req",e)));t.push(n)}else{const e=T8(c[i],C8(nte,{encrypted:"yes",use_temp:!0,item:[Ite(Ite({},u),{},{idtoken:d,nodesignatures:r,verifieridentifier:l},f)],one_key_flow:!0}),null,{logTracingHeader:Tte.logRequestTracing}).catch((e=>lte.error("share req",e)));t.push(e)}}let n;return jte(t,(async(e,t)=>{const r=e.filter((e=>!(!e||"object"!==typeof e)&&!e.error)),o=e.map((e=>{if(e&&e.result&&e.result.keys[0].public_key){if(!n&&!u.extended_verifier_id){var t,r;(null===(t=e.result.keys[0].nonce_data)||void 0===t||null===(r=t.pubNonce)||void 0===r?void 0:r.x)&&(n=e.result.keys[0].nonce_data)}return e.result.keys[0].public_key}})),s=ate(o,1+~~(c.length/2));if(!s)throw new Error("invalid result from nodes, threshold number of public key results are not matching");if(!n&&!u.extended_verifier_id&&!Fee[a])throw new Error(`invalid metadata result from nodes, nonce metadata is empty for verifier: ${l} and verifierId: ${u.verifier_id}`);const d=h.length>0?c.length:1+~~(c.length/2);if(r.length>=d&&s&&(n||u.extended_verifier_id||Fee[a])){const e=[],o=[],a=[],l=[],d=[];for(let t=0;t0)u&&null!==(f=u[0])&&void 0!==f&&f.ephemPublicKey?o.push(Ete(u[0],c[0],m).catch((e=>lte.debug("session sig decryption",e)))):o.push(Promise.resolve(Qee.from(c[0],"hex")));else o.push(Promise.resolve(void 0));if((null===i||void 0===i?void 0:i.length)>0)s&&null!==(p=s[0])&&void 0!==p&&p.ephemPublicKey?a.push(Ete(s[0],i[0],m).catch((e=>lte.debug("session token sig decryption",e)))):a.push(Promise.resolve(Qee.from(i[0],"base64")));else a.push(Promise.resolve(void 0));if((null===d||void 0===d?void 0:d.length)>0){const t=n.result.keys[0];l.push(new(Jee())(t.node_index)),t.share_metadata&&e.push(Ete(t.share_metadata,Qee.from(t.share,"base64").toString("binary").padStart(64,"0"),m).catch((e=>lte.debug("share decryption",e))))}else l.push(void 0),e.push(Promise.resolve(void 0))}const h=await Promise.all(e.concat(o).concat(a)),g=h.slice(0,e.length),v=h.slice(e.length,e.length+o.length),y=h.slice(e.length+o.length,h.length),b=v.filter((e=>!!e)),w=1+~~(c.length/2);if(!u.extended_verifier_id&&b.length!!e));if(!u.extended_verifier_id&&x.length{e?d.push({token:e.toString("base64"),signature:v[t].toString("hex"),node_pubx:r[t].result.node_pubx,node_puby:r[t].result.node_puby}):d.push(void 0)})),t.resolved)return;const _=g.reduce(((e,t,r)=>(t&&e.push({index:l[r],value:new(Jee())(t)}),e)),[]),k=ote(_.length,1+~~(c.length/2));let S=null;for(let t=0;te.includes(r))),n=r.map((e=>e.value)),o=r.map((e=>e.index)),a=xte(i,n,o);if(!a)continue;const c=Z7(Qee.from(a.toString(16,64),"hex")).toString("hex"),l=c.slice(2,66),u=c.slice(66);if(0===new(Jee())(l,16).cmp(new(Jee())(s.X,16))&&0===new(Jee())(u,16).cmp(new(Jee())(s.Y,16))){S=a;break}}if(void 0===S||null===S)throw new Error("could not derive private key");return{privateKey:S,sessionTokenData:d,thresholdNonceData:n,nodeIndexes:l}}throw new Error("Invalid")}))})).then((async e=>{var o;const{privateKey:s,sessionTokenData:c,thresholdNonceData:l,nodeIndexes:d}=e;let h=l;if(!s)throw new Error("Invalid private key returned");const f=s,p=Z7(Qee.from(f.toString(16,64),"hex")).toString("hex"),g=p.slice(2,66),v=p.slice(66);let y,b,w=new(Jee())(null!==(o=h)&&void 0!==o&&o.nonce?h.nonce.padStart(64,"0"):"0","hex"),x="v1";if(u.extended_verifier_id)x="v2",y=i.keyFromPublic({x:g,y:v}).getPublic();else if(Fee[a])if(n)h=await Ote(t,i,r,g,v,f),w=new(Jee())(h.nonce||"0",16),b={X:h.pubNonce.x,Y:h.pubNonce.y},x=h.typeOfUser,"v2"===x&&(y=i.keyFromPublic({x:g,y:v}).getPublic().add(i.keyFromPublic({x:h.pubNonce.x,y:h.pubNonce.y}).getPublic()));else{x="v1",w=await Ate(t,{pub_key_X:g,pub_key_Y:v});const e=f.add(w).umod(i.curve.n);y=i.keyFromPrivate(e.toString(16,64),"hex").getPublic()}else x="v2",y=i.keyFromPublic({x:g,y:v}).getPublic().add(i.keyFromPublic({x:h.pubNonce.x,y:h.pubNonce.y}).getPublic()),b={X:h.pubNonce.x,Y:h.pubNonce.y};const _=hte(i,f),k=fte(i,y.getX(),y.getY());lte.debug("> torus.js/retrieveShares",{finalEvmAddress:k});let S="";if("v1"===x||"v2"===x&&w.gt(new(Jee())(0))){S=f.add(w).umod(i.curve.n).toString("hex",64)}let E=!1;return"v1"===x?E=null:"v2"===x&&(E=w.eq(new(Jee())("0"))),{finalKeyData:{evmAddress:k,X:y.getX().toString(16,64),Y:y.getY().toString(16,64),privKey:S},oAuthKeyData:{evmAddress:_,X:g,Y:v,privKey:f.toString("hex",64).padStart(64,"0")},sessionData:{sessionTokenData:c,sessionAuthKey:m.toString("hex").padStart(64,"0")},metadata:{pubNonce:b,nonce:w,typeOfUser:x,upgraded:E},nodesData:{nodeIndexes:d.map((e=>e.toNumber()))}}}))}const Lte=async(e,t,r)=>{const n=e.map((e=>T8(e,C8("VerifierLookupRequest",{verifier:t,verifier_id:r.toString()})).catch((e=>lte.error("lookup request failed",e)))));return jte(n,(t=>{const r=t.filter((e=>e)),n=ate(r.map((e=>e&&e.error)),1+~~(e.length/2)),i=ate(r.map((e=>e&&e.result)),1+~~(e.length/2));return i||n?Promise.resolve({keyResult:i,errorResult:n}):Promise.reject(new Error(`invalid results ${JSON.stringify(t)}`))}))},Nte=async e=>{let t,r,{endpoints:n,torusNodePubs:i,lastPoint:o,firstPoint:a,verifier:s,verifierId:c,signerHost:l,network:u,clientId:d}=e;if(void 0===o?(t=Math.floor(Math.random()*n.length),lte.info("keyassign",t,n[t]),r=t):t=o%n.length,t===a)throw new Error("Looped through all");void 0!==a&&(r=a);const h=C8("KeyAssign",{verifier:s,verifier_id:c.toString()});try{const e=await T8(l,h,{headers:{pubKeyX:i[t].X,pubKeyY:i[t].Y,network:u,clientId:d}},{useAPIKey:!0});return await T8(n[t],Ite(Ite({},h),e),{headers:{"Content-Type":"application/json; charset=utf-8"}})}catch(f){lte.error(f.status,f.message,f,"key assign error");const e=["Timed out","Failed to fetch","cancelled","NetworkError when attempting to fetch resource.","TypeError: Failed to fetch","TypeError: cancelled","TypeError: NetworkError when attempting to fetch resource."];if(502===(null===f||void 0===f?void 0:f.status)||504===(null===f||void 0===f?void 0:f.status)||401===(null===f||void 0===f?void 0:f.status)||e.includes(f.message)||e.some((e=>f.message.includes(e)))||f.message&&f.message.includes("reason: getaddrinfo EAI_AGAIN"))return Nte({endpoints:n,torusNodePubs:i,lastPoint:t+1,firstPoint:r,verifier:s,verifierId:c,signerHost:l,network:u,clientId:d});throw new Error(`Sorry, the Torus Network that powers Web3Auth is currently very busy.\n We will generate your key in time. Pls try again later. \n\n ${f.message||""}`)}};function Dte(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function zte(e){for(var t=1;t0&&void 0!==arguments[0])||arguments[0]?(lte.enableAll(),Tte.logRequestTracing=!0):lte.disableAll()}static setAPIKey(e){S8(e)}static setEmbedHost(e){k8(e)}static isGetOrSetNonceError(e){return e instanceof cte}static getPostboxKey(e){return"v1"===e.metadata.typeOfUser&&e.finalKeyData.privKey||e.oAuthKeyData.privKey}async retrieveShares(e,t,r,n,i){let o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{};return this.isLegacyNetwork?this.legacyRetrieveShares(e,t,r,n,i,o):Mte({legacyMetadataHost:this.legacyMetadataHost,serverTimeOffset:this.serverTimeOffset,enableOneKey:this.enableOneKey,ecCurve:this.ec,allowHost:this.allowHost,network:this.network,clientId:this.clientId,endpoints:e,verifier:r,verifierParams:n,idToken:i,importedShares:[],extraParams:o})}async getPublicAddress(e,t,r){let{verifier:n,verifierId:i,extendedVerifierId:o}=r;return this.isLegacyNetwork?this.getLegacyPublicAddress(e,t,{verifier:n,verifierId:i},this.enableOneKey):this.getNewPublicAddress(e,{verifier:n,verifierId:i,extendedVerifierId:o},this.enableOneKey)}async importPrivateKey(e,t,r,n,i,o,a){let s=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(this.isLegacyNetwork)throw new Error("This function is not supported on legacy networks");if(e.length!==t.length)throw new Error("length of endpoints array must be same as length of nodeIndexes array");const c=1+~~(e.length/2)-1,l=[],u=this.ec.keyFromPrivate(a.padStart(64,"0"),"hex");for(const x of t)l.push(new(Jee())(x));const d=u.getPrivate(),h=new(Jee())(G7()),f=d.sub(h).umod(this.ec.curve.n),p=this.ec.keyFromPrivate(f.toString("hex").padStart(64,"0")).getPublic(),m=_te(this.ec,c,f).generateShares(l),g=this.generateNonceMetadataParams("getOrSetNonce",f,h),v=Qee.from(nee()(g.set_data),"utf8").toString("base64"),y=[],b=[];for(let x=0;x5&&void 0!==arguments[5]?arguments[5]:{};const a=[];await O8(this.allowHost,{headers:{verifier:r,verifierId:n.verifier_id,network:this.network,clientId:this.clientId}},{useAPIKey:!0});const s=G7(),c=Z7(s).toString("hex"),l=c.slice(2,66),u=c.slice(66),d=ute(Qee.from(i,"utf8"));for(let h=0;h{lte.error("commitment",e)}));a.push(t)}return jte(a,(t=>{const r=t.filter((e=>!(!e||"object"!==typeof e)&&!e.error));return r.length>=3*~~(e.length/4)+1?Promise.resolve(t):Promise.reject(new Error(`invalid ${JSON.stringify(t)}`))})).then((a=>{const c=[],l=[];for(let e=0;elte.error("share req",e)));c.push(a)}return jte(c,(async(r,n)=>{const i=r.filter((e=>e)),o=ate(r.map((e=>e&&e.result&&e.result.keys[0].PublicKey)),1+~~(e.length/2));if(i.length>=1+~~(e.length/2)&&o){const i=[],l=[];for(let e=0;e0){n.result.keys.sort(((e,t)=>new(Jee())(e.Index,16).cmp(new(Jee())(t.Index,16))));const e=n.result.keys[0];if(e.Metadata){const t={ephemPublicKey:Qee.from(e.Metadata.ephemPublicKey,"hex"),iv:Qee.from(e.Metadata.iv,"hex"),mac:Qee.from(e.Metadata.mac,"hex")};i.push(eee(s,zte(zte({},t),{},{ciphertext:Qee.from(Qee.from(e.Share,"base64").toString("binary").padStart(64,"0"),"hex")})).catch((e=>lte.debug("share decryption",e))))}else i.push(Promise.resolve(Qee.from(e.Share.padStart(64,"0"),"hex")))}else i.push(Promise.resolve(void 0));l.push(new(Jee())(t[e],16))}const u=await Promise.all(i);if(n.resolved)return;const d=u.reduce(((e,t,r)=>(t&&e.push({index:l[r],value:new(Jee())(t)}),e)),[]),h=ote(d.length,1+~~(e.length/2));let f=null;for(let e=0;et.includes(r))),n=r.map((e=>e.value)),i=r.map((e=>e.index)),a=xte(this.ec,n,i);if(!a)continue;const s=Z7(Qee.from(a.toString(16,64),"hex")).toString("hex"),c=s.slice(2,66),l=s.slice(66);if(0===new(Jee())(c,16).cmp(new(Jee())(o.X,16))&&0===new(Jee())(l,16).cmp(new(Jee())(o.Y,16))){f=a;break}}if(void 0===f||null===f)throw new Error("could not derive private key");return f}throw new Error("invalid")}))})).then((async e=>{const t=e;if(!t)throw new Error("Invalid private key returned");const r=Z7(Qee.from(t.toString(16,64),"hex")).toString("hex"),n=r.slice(2,66),i=r.slice(66);let o,a,s,c="v1";if(this.enableOneKey){const e=await Ote(this.legacyMetadataHost,this.ec,this.serverTimeOffset,n,i,t);o=new(Jee())(e.nonce||"0",16),c=e.typeOfUser,"v2"===e.typeOfUser&&(a=this.ec.keyFromPublic({x:n,y:i}).getPublic().add(this.ec.keyFromPublic({x:e.pubNonce.x,y:e.pubNonce.y}).getPublic()),s={X:e.pubNonce.x,Y:e.pubNonce.y})}else{o=await Ate(this.legacyMetadataHost,{pub_key_X:n,pub_key_Y:i});const e=t.add(o).umod(this.ec.curve.n);a=this.ec.keyFromPrivate(e.toString("hex"),"hex").getPublic()}const l=hte(this.ec,t),u=fte(this.ec,a.getX(),a.getY());lte.debug("> torus.js/retrieveShares",{finalEvmAddress:u});let d="";if("v1"===c||"v2"===c&&o.gt(new(Jee())(0))){d=t.add(o).umod(this.ec.curve.n).toString("hex",64).padStart(64,"0")}let h=!1;return"v1"===c?h=null:"v2"===c&&(h=o.eq(new(Jee())("0"))),{finalKeyData:{evmAddress:u,X:a?a.getX().toString(16,64):"",Y:a?a.getY().toString(16,64):"",privKey:d},oAuthKeyData:{evmAddress:l,X:n,Y:i,privKey:t.toString("hex",64).padStart(64,"0")},sessionData:{sessionTokenData:[],sessionAuthKey:""},metadata:{pubNonce:s,nonce:o,typeOfUser:c,upgraded:h},nodesData:{nodeIndexes:[]}}}))}async getLegacyPublicAddress(e,t,r,n){let i,{verifier:o,verifierId:a}=r;lte.debug("> torus.js/getPublicAddress",{endpoints:e,torusNodePubs:t,verifier:o,verifierId:a});let s=!1;const{keyResult:c,errorResult:l}=await Lte(e,o,a)||{};if(l&&JSON.stringify(l).includes("Verifier not supported"))throw new Error("Verifier not supported. Check if you: \n\n 1. Are on the right network (Torus testnet/mainnet) \n\n 2. Have setup a verifier on dashboard.web3auth.io?");if(l&&JSON.stringify(l).includes("Verifier + VerifierID has not yet been assigned")){await Nte({endpoints:e,torusNodePubs:t,lastPoint:void 0,firstPoint:void 0,verifier:o,verifierId:a,signerHost:this.signerHost,network:this.network,clientId:this.clientId});const r=await((e,t,r,n)=>new Promise(((i,o)=>{setTimeout((()=>{Lte(e,t,r).then(i).catch(o)}),n)})))(e,o,a,1e3);i=null===r||void 0===r?void 0:r.keyResult,s=!0}else{if(!c)throw new Error(`node results do not match at first lookup ${JSON.stringify(c||{})}, ${JSON.stringify(l||{})}`);i=c}if(lte.debug("> torus.js/getPublicAddress",{finalKeyResult:i,isNewKey:s}),i)return this.formatLegacyPublicKeyData({finalKeyResult:i,isNewKey:s,enableOneKey:n});throw new Error(`node results do not match at final lookup ${JSON.stringify(c||{})}, ${JSON.stringify(l||{})}`)}generateNonceMetadataParams(e,t,r){const n=this.ec.keyFromPrivate(t.toString("hex",64)),i={operation:e,timestamp:new(Jee())(~~(this.serverTimeOffset+Date.now()/1e3)).toString(16)};r&&(i.data=r.toString("hex",64));const o=n.sign(ute(Qee.from(nee()(i),"utf8")).slice(2));return{pub_key_X:n.getPublic().getX().toString("hex",64),pub_key_Y:n.getPublic().getY().toString("hex",64),set_data:i,signature:Qee.from(o.r.toString(16,64)+o.s.toString(16,64)+new(Jee())("").toString(16,2),"hex").toString("base64")}}async getNewPublicAddress(e,t,r){let{verifier:n,verifierId:i,extendedVerifierId:o}=t;lte.debug("> torus.js/getPublicAddress",{endpoints:e,verifier:n,verifierId:i});const a=await(async e=>{const{endpoints:t,network:r,verifier:n,verifierId:i,extendedVerifierId:o}=e,a=t.map((e=>T8(e,C8(ete,{verifier:n,verifier_id:i.toString(),extended_verifier_id:o,one_key_flow:!0,fetch_node_index:!0}),null,{logTracingHeader:Tte.logRequestTracing}).catch((e=>lte.error(`${ete} request failed`,e)))));let s;const c=[],l=await jte(a,(e=>{const a=e.filter((e=>{if(e&&!e.error){var t,r,n;if(!s)(null===(t=e.result)||void 0===t||null===(r=t.keys[0].nonce_data)||void 0===r||null===(n=r.pubNonce)||void 0===n?void 0:n.x)&&(s=e.result.keys[0].nonce_data);return e}return!1})),l=ate(a.map((e=>e&&e.error)),1+~~(t.length/2)),u=ate(a.map((e=>e&&(e=>{const t={keys:[],is_new_key:e.is_new_key};return e&&e.keys&&e.keys.length>0&&(t.keys=e.keys.map((e=>({pub_key_X:e.pub_key_X,pub_key_Y:e.pub_key_Y,address:e.address})))),t})(e.result))),1+~~(t.length/2));return u&&(s||o||Fee[r])||l?(u&&e.forEach((e=>{if(e&&e.result){const t=parseInt(e.result.node_index);t&&c.push(t)}})),Promise.resolve({keyResult:u,nodeIndexes:c,errorResult:l,nonceResult:s})):Promise.reject(new Error(`invalid public key result: ${JSON.stringify(e)} and nonce result:${JSON.stringify(s||{})} for verifier: ${n}, verifierId: ${i} and extendedVerifierId: ${o} `))}));return l})({endpoints:e,network:this.network,verifier:n,verifierId:i,extendedVerifierId:o}),{errorResult:s,keyResult:c,nodeIndexes:l=[]}=a,{nonceResult:u}=a;if(s&&JSON.stringify(s).toLowerCase().includes("verifier not supported"))throw new Error("Verifier not supported. Check if you: \n\n 1. Are on the right network (Torus testnet/mainnet) \n\n 2. Have setup a verifier on dashboard.web3auth.io?");if(s)throw new Error(`node results do not match at first lookup ${JSON.stringify(c||{})}, ${JSON.stringify(s||{})}`);if(lte.debug("> torus.js/getPublicAddress",{keyResult:c}),null===c||void 0===c||!c.keys)throw new Error(`node results do not match at final lookup ${JSON.stringify(c||{})}, ${JSON.stringify(s||{})}`);if(!u&&!o&&!Fee[this.network])throw new cte("metadata nonce is missing in share response");const{pub_key_X:d,pub_key_Y:h}=c.keys[0];let f;const p=new(Jee())((null===u||void 0===u?void 0:u.nonce)||"0",16);let m,g;if(o)g=this.ec.keyFromPublic({x:d,y:h}).getPublic(),m=g;else{if(Fee[this.network])return this.formatLegacyPublicKeyData({isNewKey:c.is_new_key,enableOneKey:r,finalKeyResult:{keys:c.keys}});{const e=u;m=this.ec.keyFromPublic({x:d,y:h}).getPublic(),g=this.ec.keyFromPublic({x:d,y:h}).getPublic().add(this.ec.keyFromPublic({x:e.pubNonce.x,y:e.pubNonce.y}).getPublic()),f={X:e.pubNonce.x,Y:e.pubNonce.y}}}if(!m)throw new Error("Unable to derive oAuthPubKey");const v=m.getX().toString(16,64),y=m.getY().toString(16,64),b=fte(this.ec,m.getX(),m.getY());if(lte.debug("> torus.js/getPublicAddress, oAuthKeyData",{X:v,Y:y,oAuthAddress:b,nonce:null===p||void 0===p?void 0:p.toString(16),pubNonce:f}),!g)throw new Error("Unable to derive finalPubKey");const w=g?g.getX().toString(16,64):"",x=g?g.getY().toString(16,64):"";return{oAuthKeyData:{evmAddress:b,X:v,Y:y},finalKeyData:{evmAddress:g?fte(this.ec,g.getX(),g.getY()):"",X:w,Y:x},metadata:{pubNonce:f,nonce:p,upgraded:(null===u||void 0===u?void 0:u.upgraded)||!1,typeOfUser:"v2"},nodesData:{nodeIndexes:l}}}async formatLegacyPublicKeyData(e){var t,r;const{finalKeyResult:n,enableOneKey:i,isNewKey:o}=e,{pub_key_X:a,pub_key_Y:s}=n.keys[0];let c,l,u,d,h;const f=this.ec.keyFromPublic({x:a,y:s}).getPublic();if(i){try{c=await Pte(this.legacyMetadataHost,this.ec,this.serverTimeOffset,a,s,void 0,!o),l=new(Jee())(c.nonce||"0",16),d=c.typeOfUser}catch{throw new cte}if("v1"===c.typeOfUser)u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPrivate(l.toString(16)).getPublic());else{if("v2"!==c.typeOfUser)throw new Error("getOrSetNonce should always return typeOfUser.");u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPublic({x:c.pubNonce.x,y:c.pubNonce.y}).getPublic()),h={X:c.pubNonce.x,Y:c.pubNonce.y}}}else d="v1",l=await Ate(this.legacyMetadataHost,{pub_key_X:a,pub_key_Y:s}),u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPrivate(l.toString(16)).getPublic());if(!f)throw new Error("Unable to derive oAuthPubKey");const p=f.getX().toString(16,64),m=f.getY().toString(16,64),g=fte(this.ec,f.getX(),f.getY());if(lte.debug("> torus.js/getPublicAddress, oAuthKeyData",{X:p,Y:m,oAuthAddress:g,nonce:null===(t=l)||void 0===t?void 0:t.toString(16),pubNonce:h}),"v2"===d&&!u)throw new Error("Unable to derive finalPubKey");const v=u?u.getX().toString(16,64):"",y=u?u.getY().toString(16,64):"";return{oAuthKeyData:{evmAddress:g,X:p,Y:m},finalKeyData:{evmAddress:u?fte(this.ec,u.getX(),u.getY()):"",X:v,Y:y},metadata:{pubNonce:h,nonce:l,upgraded:(null===(r=c)||void 0===r?void 0:r.upgraded)||!1,typeOfUser:d},nodesData:{nodeIndexes:[]}}}}var Fte=r(9140),Ute=r(9673).Buffer;function $te(e){return Ute.from((0,iee.So)(e))}const Hte=new YS.ec("secp256k1");function Vte(e){return{iv:Ute.from(e.iv,"hex"),ephemPublicKey:Ute.from(e.ephemPublicKey,"hex"),ciphertext:Ute.from(e.ciphertext,"hex"),mac:Ute.from(e.mac,"hex")}}function qte(e){return{iv:Ute.from(e.iv).toString("hex"),ephemPublicKey:Ute.from(e.ephemPublicKey).toString("hex"),ciphertext:Ute.from(e.ciphertext).toString("hex"),mac:Ute.from(e.mac).toString("hex")}}async function Kte(e,t){const r=JSON.stringify(t),n=Ute.from(r,"utf-8"),i=qte(await Q7(Z7(Ute.from(e,"hex")),n));return JSON.stringify(i)}async function Wte(e,t){const r=Vte(JSON.parse(t)),n=Hte.keyFromPrivate(e),i=(await eee(Ute.from(n.getPrivate().toString("hex",64),"hex"),r)).toString("utf-8");return JSON.parse(i)}var Gte=r(9673).Buffer;const Zte="google",Yte="facebook",Xte="reddit",Jte="discord",Qte="twitch",ere="apple",tre="github",rre="linkedin",nre="twitter",ire="weibo",ore="line",are="email_password",sre="passwordless",cre="jwt",lre="webauthn",ure="single_id_verifier",dre={POPUP:"popup",REDIRECT:"redirect"},hre="localStorage",fre="server",pre="triggerLogin",mre="triggerAggregateLogin",gre="triggerHybridAggregateLogin",vre="fetchNodeDetails",yre="pubAddressLookup",bre="fetchShares";var wre=p8().getLogger("customauth");const xre={[ere]:"apple",[tre]:"github",[rre]:"linkedin",[nre]:"twitter",[ire]:"weibo",[ore]:"line",[are]:"Username-Password-Authentication",[sre]:"email"},_re=e=>e.href.endsWith("/")?e.href:`${e.href}/`,kre={webWorkerSupport:!1};function Sre(e,t){return t?e:e.toLowerCase()}const Ere=function(e,t,r){let n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];const{name:i,sub:o}=e;if(r)return Sre(e[r],n);switch(t){case sre:case are:return Sre(i,n);case ire:case tre:case nre:case ere:case rre:case ore:case cre:return Sre(o,n);default:throw new Error("Invalid login type")}},Are=(e,t)=>{const r=e.split("&").reduce(((e,t)=>{const[r,n]=t.split("=");return e[r]=n,e}),{});wre.info(r,t);let n={},i="";return Object.keys(r).length>0&&r.state?(n=JSON.parse(atob(decodeURIComponent(decodeURIComponent(r.state))))||{},i=r.error_description||r.error||i):Object.keys(t).length>0&&t.state&&(n=JSON.parse(atob(decodeURIComponent(decodeURIComponent(t.state))))||{},t.error&&(i=t.error)),{error:i,instanceParameters:n,hashParameters:r}};function Pre(e){const{baseURL:t,query:r,hash:n}=e,i=new URL(t);if(r&&Object.keys(r).forEach((e=>{i.searchParams.append(e,r[e])})),n){const e=new URL(Pre({baseURL:t,query:n})).searchParams.toString();i.hash=e}return i.toString()}const Ore=e=>{try{return new URL(decodeURIComponent(e))}catch(t){throw new Error(`${(null===t||void 0===t?void 0:t.message)||""}, Note: Your jwt domain: (i.e ${e}) must have http:// or https:// prefix`)}};function Tre(e){return e!==Yte&&e!==ore||!function(){const e=I8().getParser(navigator.userAgent).getPlatform();return e.type===I8().PLATFORMS_MAP.tablet||e.type===I8().PLATFORMS_MAP.mobile}()?1e4:6e4}class Cre extends fA.EventEmitter{constructor(e){let{url:t,target:r,features:n,timeout:i=3e4}=e;super(),u8(this,"url",void 0),u8(this,"target",void 0),u8(this,"features",void 0),u8(this,"window",void 0),u8(this,"windowTimer",void 0),u8(this,"iClosedWindow",void 0),u8(this,"timeout",void 0),this.url=t,this.target=r||"_blank",this.features=n||function(){const e=void 0!==window.screenLeft?window.screenLeft:window.screenX,t=void 0!==window.screenTop?window.screenTop:window.screenY,r=window.innerWidth?window.innerWidth:document.documentElement.clientWidth?document.documentElement.clientWidth:window.screen.width,n=window.innerHeight?window.innerHeight:document.documentElement.clientHeight?document.documentElement.clientHeight:window.screen.height,i=Math.abs((r-1200)/2/1+e);return`titlebar=0,toolbar=0,status=0,location=0,menubar=0,height=700,width=1200,top=${Math.abs((n-700)/2/1+t)},left=${i}`}(),this.window=void 0,this.windowTimer=void 0,this.iClosedWindow=!1,this.timeout=i,this._setupTimer()}_setupTimer(){this.window&&(this.windowTimer=Number(setInterval((()=>{this.window&&this.window.closed&&(clearInterval(this.windowTimer),setTimeout((()=>{this.iClosedWindow||this.emit("close"),this.iClosedWindow=!1,this.window=void 0}),this.timeout)),void 0===this.window&&clearInterval(this.windowTimer)}),500)))}open(){var e;return this.window=window.open(this.url.href,this.target,this.features),null!==(e=this.window)&&void 0!==e&&e.focus&&this.window.focus(),Promise.resolve()}close(){this.iClosedWindow=!0,this.window&&this.window.close()}redirect(e){e?window.location.replace(this.url.href):window.location.href=this.url.href}}const jre=["access_token","id_token"];function Rre(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ire(e){for(var t=1;t{let n;const i=async t=>{try{const{error:i,data:o}=t,a=o||{},{instanceParams:s,hashParams:{access_token:c,id_token:l}}=a,u=j8(a.hashParams,jre);if(i)return wre.error(t),void r(new Error(`Error: ${i}. Info: ${JSON.stringify(t.data||{})}`));t.data&&s.verifier===this.verifier&&(wre.info(t.data),!this.redirectToOpener&&n&&await n.postMessage({success:!0}),e(Ire(Ire({accessToken:c,idToken:l||""},u),{},{state:s})))}catch(i){wre.error(i),r(i)}};if(this.redirectToOpener){const e=async r=>{if(!r.data)return;const n=r.data;n.channel===`redirect_channel_${this.nonce}`&&(window.removeEventListener("message",e),i(n),t.close())};window.addEventListener("message",e)}else n=new Oee(`redirect_channel_${this.nonce}`,kre),n.addEventListener("message",(async e=>{await i(e),n.close(),t.close()}));t.open(),t.once("close",(()=>{n&&n.close(),r(new Error("user closed popup"))}))})):(t.redirect(e.locationReplaceOnRedirect),null)}}class Lre extends Mre{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),u8(this,"clientId",void 0),u8(this,"verifier",void 0),u8(this,"redirect_uri",void 0),u8(this,"typeOfLogin",void 0),u8(this,"uxMode",void 0),u8(this,"redirectToOpener",void 0),u8(this,"jwtParams",void 0),u8(this,"customState",void 0),u8(this,"RESPONSE_TYPE","token"),u8(this,"SCOPE","identify email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://discord.com/api/oauth2/authorize"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=h8()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await O8("https://discord.com/api/users/@me",{headers:{Authorization:`Bearer ${t}`}}),{id:n,avatar:i,email:o="",username:a="",discriminator:s=""}=r;return{profileImage:null===i?`https://cdn.discordapp.com/embed/avatars/${Number(s)%5}.png`:`https://cdn.discordapp.com/avatars/${n}/${i}.png?size=2048`,name:`${a}#${s}`,email:o,verifierId:n,verifier:this.verifier,typeOfLogin:this.typeOfLogin}}}class Nre extends Mre{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),u8(this,"clientId",void 0),u8(this,"verifier",void 0),u8(this,"redirect_uri",void 0),u8(this,"typeOfLogin",void 0),u8(this,"uxMode",void 0),u8(this,"redirectToOpener",void 0),u8(this,"jwtParams",void 0),u8(this,"customState",void 0),u8(this,"RESPONSE_TYPE","token"),u8(this,"SCOPE","public_profile email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://www.facebook.com/v15.0/dialog/oauth"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=h8()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await O8("https://graph.facebook.com/me?fields=name,email,picture.type(large)",{headers:{Authorization:`Bearer ${t}`}}),{name:n="",id:i,picture:o,email:a=""}=r;return{email:a,name:n,profileImage:o.data.url||"",verifier:this.verifier,verifierId:i,typeOfLogin:this.typeOfLogin}}}class Dre extends Mre{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),u8(this,"clientId",void 0),u8(this,"verifier",void 0),u8(this,"redirect_uri",void 0),u8(this,"typeOfLogin",void 0),u8(this,"uxMode",void 0),u8(this,"redirectToOpener",void 0),u8(this,"jwtParams",void 0),u8(this,"customState",void 0),u8(this,"RESPONSE_TYPE","token id_token"),u8(this,"SCOPE","profile email openid"),u8(this,"PROMPT","consent select_account"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://accounts.google.com/o/oauth2/v2/auth"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=h8()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,prompt:this.PROMPT,redirect_uri:this.redirect_uri,scope:this.SCOPE,nonce:this.nonce},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await O8("https://www.googleapis.com/userinfo/v2/me",{headers:{Authorization:`Bearer ${t}`}}),{picture:n="",email:i="",name:o=""}=r;return{email:i,name:o,profileImage:n,verifier:this.verifier,verifierId:i.toLowerCase(),typeOfLogin:this.typeOfLogin}}}let zre=class extends Mre{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),u8(this,"clientId",void 0),u8(this,"verifier",void 0),u8(this,"redirect_uri",void 0),u8(this,"typeOfLogin",void 0),u8(this,"uxMode",void 0),u8(this,"redirectToOpener",void 0),u8(this,"jwtParams",void 0),u8(this,"customState",void 0),u8(this,"SCOPE","openid profile email"),u8(this,"RESPONSE_TYPE","token id_token"),u8(this,"PROMPT","login"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const{domain:e}=this.jwtParams,t=Ore(e);t.pathname+=t.pathname.endsWith("/")?"authorize":"/authorize";const r=JSON.parse(JSON.stringify(this.jwtParams));delete r.domain;const n=h8()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,prompt:this.PROMPT,redirect_uri:this.redirect_uri,scope:this.SCOPE,connection:xre[this.typeOfLogin],nonce:this.nonce},r);Object.keys(n).forEach((e=>{n[e]&&t.searchParams.append(e,n[e])})),this.finalURL=t}async getUserInfo(e){const{idToken:t,accessToken:r}=e,{domain:n,verifierIdField:i,isVerifierIdCaseSensitive:o,user_info_route:a="userinfo"}=this.jwtParams;if(r)try{const e=new URL(n),t=await O8(`${_re(e)}${a}`,{headers:{Authorization:`Bearer ${r}`}}),{picture:s,name:c,email:l}=t;return{email:l,name:c,profileImage:s,verifierId:Ere(t,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}catch(s){p8().warn(s,"Unable to get userinfo from endpoint")}if(t){const e=Nee(t),{name:r,email:n,picture:a}=e;return{profileImage:a,name:r,email:n,verifierId:Ere(e,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}throw new Error("Access/id token not available")}};class Bre extends Mre{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),u8(this,"clientId",void 0),u8(this,"verifier",void 0),u8(this,"redirect_uri",void 0),u8(this,"typeOfLogin",void 0),u8(this,"uxMode",void 0),u8(this,"redirectToOpener",void 0),u8(this,"jwtParams",void 0),u8(this,"customState",void 0),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=JSON.parse(JSON.stringify(this.jwtParams));delete e.domain;const t=h8()({state:this.state,client_id:this.clientId,nonce:this.nonce},e);this.finalURL=new URL(Pre({baseURL:this.redirect_uri,query:null,hash:t}))}async getUserInfo(e){const{idToken:t,accessToken:r}=e,{domain:n,verifierIdField:i,isVerifierIdCaseSensitive:o,user_info_route:a="userinfo"}=this.jwtParams;if(r)try{const e=new URL(n),t=await O8(`${_re(e)}${a}`,{headers:{Authorization:`Bearer ${r}`}}),{picture:s,name:c,email:l}=t;return{email:l,name:c,profileImage:s,verifierId:Ere(t,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}catch(s){p8().warn(s,"Unable to get userinfo from endpoint")}if(t){const e=Nee(t),{name:r,email:n,picture:a}=e;return{profileImage:a,name:r,email:n,verifierId:Ere(e,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}throw new Error("Access/id token not available")}handleLoginWindow(e){const{id_token:t,access_token:r}=this.jwtParams,n=new Cre({url:this.finalURL,features:e.popupFeatures});return this.uxMode!==dre.REDIRECT?Promise.resolve({state:{},idToken:t,accessToken:r}):(n.redirect(e.locationReplaceOnRedirect),null)}}const Fre=["access_token","id_token"];function Ure(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function $re(e){for(var t=1;t{if(this.redirectToOpener)return void t(new Error("Cannot use redirect to opener for passwordless"));const r=r=>{try{const{error:n,data:i}=r,o=i||{},{instanceParams:a,hashParams:{access_token:s,id_token:c}}=o,l=j8(o.hashParams,Fre);if(n)return wre.error(r.error),void t(new Error(n));r.data&&a.verifier===this.verifier&&(wre.info(r.data),e($re($re({accessToken:s,idToken:c||""},l),{},{state:a})))}catch(n){wre.error(n),t(n)}},n=new Oee(`redirect_channel_${this.nonce}`,kre);n.addEventListener("message",(async e=>{r(e),n.close()}));try{const{connection:e="email",login_hint:r}=this.jwtParams,n=h8()({client_id:this.clientId,connection:e,email:"email"===e?r:void 0,phone_number:"sms"===e?r:void 0,send:"link",authParams:{scope:this.SCOPE,state:this.state,response_type:this.RESPONSE_TYPE,redirect_uri:this.redirect_uri,nonce:this.nonce,prompt:this.PROMPT}},{authParams:this.jwtParams});T8(this.finalURL.href,JSON.parse(JSON.stringify(n))).then((e=>{wre.info("posted",e)})).catch((e=>{wre.error(e),t(e)}))}catch(i){wre.error(i),t(i)}}))}}class Vre extends Mre{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),u8(this,"clientId",void 0),u8(this,"verifier",void 0),u8(this,"redirect_uri",void 0),u8(this,"typeOfLogin",void 0),u8(this,"uxMode",void 0),u8(this,"redirectToOpener",void 0),u8(this,"jwtParams",void 0),u8(this,"customState",void 0),u8(this,"RESPONSE_TYPE","token"),u8(this,"SCOPE","identity"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://www.reddit.com/api/v1/authorize"+(window.innerWidth<600?".compact":"")),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=h8()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await O8("https://oauth.reddit.com/api/v1/me",{headers:{Authorization:`Bearer ${t}`}}),{icon_img:n="",name:i=""}=r;return{email:"",name:i,profileImage:n.split("?").length>0?n.split("?")[0]:n,verifier:this.verifier,verifierId:i.toLowerCase(),typeOfLogin:this.typeOfLogin}}}class qre extends Mre{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),u8(this,"clientId",void 0),u8(this,"verifier",void 0),u8(this,"redirect_uri",void 0),u8(this,"typeOfLogin",void 0),u8(this,"uxMode",void 0),u8(this,"redirectToOpener",void 0),u8(this,"jwtParams",void 0),u8(this,"customState",void 0),u8(this,"RESPONSE_TYPE","token"),u8(this,"SCOPE","user:read:email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://id.twitch.tv/oauth2/authorize"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=h8()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE,force_verify:!0},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await O8("https://api.twitch.tv/helix/users",{headers:{Authorization:`Bearer ${t}`,"Client-ID":this.clientId}}),[{profile_image_url:n="",display_name:i="",email:o="",id:a}]=r.data||[];return{profileImage:n,name:i,email:o,verifierId:a,verifier:this.verifier,typeOfLogin:this.typeOfLogin}}}const Kre="https://api.webauthn.openlogin.com";class Wre extends Mre{constructor(e,t,r,n,i,o,a,s,c){super(e,t,r,n,i,o,a,s),u8(this,"clientId",void 0),u8(this,"verifier",void 0),u8(this,"redirect_uri",void 0),u8(this,"typeOfLogin",void 0),u8(this,"uxMode",void 0),u8(this,"redirectToOpener",void 0),u8(this,"jwtParams",void 0),u8(this,"customState",void 0),u8(this,"registerOnly",void 0),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.registerOnly=c,this.setFinalUrl()}setFinalUrl(){const{webauthnURL:e}=this.customState||{},t=e?new URL(e):new URL("https://webauthn.openlogin.com"),r=JSON.parse(JSON.stringify(this.jwtParams||{})),n=h8()({register_only:!!this.registerOnly,state:this.state,client_id:this.clientId,redirect_uri:this.redirect_uri},r);Object.keys(n).forEach((e=>{n[e]&&t.searchParams.append(e,n[e])})),this.finalURL=t}async getUserInfo(e){const{idToken:t,ref:r,extraParamsPassed:n,extraParams:i}=e;let o,a,s,c,l,u,d,h,f;if("true"===n){wre.debug("extraParamsPassed is true, using extraParams passed through hashParams");try{({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=JSON.parse(atob(i)))}catch(p){wre.warn("unable to parse extraParams",p),({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=await O8(`${Kre}/signature/fetch/${t}`))}}else wre.debug("extraParamsPassed is false, using extraParams passed through bridge server"),({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=await O8(`${Kre}/signature/fetch/${t}`));if(a!==t)throw new Error("idtoken should be equal to signature");return{email:"",name:"WebAuthn Login",profileImage:"",verifier:this.verifier,verifierId:o,typeOfLogin:this.typeOfLogin,ref:r,registerOnly:this.registerOnly,extraVerifierParams:{signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}}}}const Gre=e=>{let{clientId:t,redirect_uri:r,typeOfLogin:n,verifier:i,jwtParams:o,redirectToOpener:a,uxMode:s,customState:c,registerOnly:l}=e;if(!i||!n||!t)throw new Error("Invalid params");const{domain:u,login_hint:d,id_token:h,access_token:f}=o||{};switch(n){case Zte:return new Dre(t,i,r,n,s,a,o,c);case Yte:return new Nre(t,i,r,n,s,a,o,c);case Qte:return new qre(t,i,r,n,s,a,o,c);case Xte:return new Vre(t,i,r,n,s,a,o,c);case Jte:return new Lre(t,i,r,n,s,a,o,c);case sre:if(!u||!d)throw new Error("Invalid params");return new Hre(t,i,r,n,s,a,o,c);case ere:case tre:case rre:case nre:case ire:case ore:case are:case cre:if(h||f)return new Bre(t,i,r,n,s,a,o,c);if(!u)throw new Error("Invalid params");return new zre(t,i,r,n,s,a,o,c);case lre:return new Wre(t,i,r,n,s,a,o,c,l);default:throw new Error("Invalid login type")}};class Zre{constructor(e){u8(this,"sentry",null),this.sentry=e}startTransaction(e){if(this.sentry)return this.sentry.startTransaction(e)}finishTransaction(e){e&&e.finish()}}class Yre{constructor(e){u8(this,"currentStorageMethod",hre),u8(this,"isInitialized",!1),u8(this,"storageServerUrl","https://broadcast-server.tor.us"),this.storageServerUrl=e}init(){const e=function(){var e;const t=I8().parse(navigator.userAgent);wre.info(JSON.stringify(t),"current browser info");let r=!0;return null!==(e=navigator)&&void 0!==e&&e.brave&&(r=!1),t.engine.name!==I8().ENGINE_MAP.WebKit&&t.engine.name!==I8().ENGINE_MAP.Gecko||(r=!1),r}(),t=function(e){let t;try{t=window[e];const r="__storage_test__";return t.setItem(r,r),t.removeItem(r),!0}catch(pge){return pge&&(22===pge.code||1014===pge.code||"QuotaExceededError"===pge.name||"NS_ERROR_DOM_QUOTA_REACHED"===pge.name)&&t&&0!==t.length}}(hre);this.currentStorageMethod=e&&t?hre:fre,this.isInitialized=!0}async storeLoginDetails(e,t){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===fre){const r=$te(Gte.from(t,"utf8")),n=r.toString("hex"),i=Z7(r).toString("hex"),o=await Kte(n,e),a=(await Y7(r,$te(Gte.from(o,"utf8")))).toString("hex");await T8(`${this.storageServerUrl}/store/set`,{key:i,data:o,signature:a})}else window.localStorage.setItem(`torus_login_${t}`,JSON.stringify(e))}async retrieveLoginDetails(e){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===fre){const t=$te(Gte.from(e,"utf8")),n=t.toString("hex"),i=Z7(t).toString("hex");try{const e=await O8(`${this.storageServerUrl}/store/get?key=${i}`);if(e.message){return await Wte(n,e.message)}}catch(r){if(404!==r.status)throw r;wre.warn(r,"Session likely expired")}}const t=window.localStorage.getItem(`torus_login_${e}`);return JSON.parse(t||"{}")}clearLoginDetailsStorage(e){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");this.currentStorageMethod===hre&&window.localStorage.removeItem(`torus_login_${e}`)}clearOrphanedLoginDetails(){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===hre){Object.keys(window.localStorage).forEach((e=>{e.startsWith("torus_login_")&&window.localStorage.removeItem(e)}))}}}const Xre=["access_token","id_token"],Jre=["access_token","id_token"],Qre=["access_token","id_token"],ene=["args","method"];function tne(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function rne(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{};if(this.storageHelper.init(),t)this.isInitialized=!0;else{if(!e){if(!(await fetch(`${this.config.baseUrl}sw.js`,{cache:"reload"})).ok)throw new Error("Service worker is not being served. Please serve it");try{return await(n=this.config.baseUrl,new Promise(((e,t)=>{const r=`${n}sw.js`;"serviceWorker"in window.navigator?(0,Fte.k)(r,{ready(){wre.info("App is being served from cache by a service worker.\n For more details, visit https://goo.gl/AFskqB"),e(void 0)},registered(){wre.info("Service worker has been registered."),e(void 0)},cached(){wre.info("Content has been cached for offline use."),e(void 0)},updatefound(){wre.info("New content is downloading.")},updated(){wre.info("New content is available; please refresh.")},offline(){wre.info("No internet connection found. App is running in offline mode."),t(new Error("App is offline"))},error(e){wre.error("Error during service worker registration:",e),t(e)}}):t(new Error("Service workers are not supported"))}))),void(this.isInitialized=!0)}catch(i){wre.warn(i)}}var n;if(!r)return(()=>{var e,t;return(null===(e=window)||void 0===e||null===(t=e.navigator)||void 0===t?void 0:t.userAgent.toLowerCase().indexOf("firefox"))>-1||!1})()?void(this.isInitialized=!0):void await this.handlePrefetchRedirectUri();this.isInitialized=!0}}async triggerLogin(e){const{verifier:t,typeOfLogin:r,clientId:n,jwtParams:i,hash:o,queryParameters:a,customState:s,registerOnly:c}=e;if(wre.info("Verifier: ",t),!this.isInitialized)throw new Error("Not initialized yet");if(c&&r!==lre)throw new Error("registerOnly flag can only be passed for webauthn");const l=Gre({typeOfLogin:r,clientId:n,verifier:t,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:i,uxMode:this.config.uxMode,customState:s,registerOnly:c});let u;if(o&&a){const{error:e,hashParameters:t,instanceParameters:r}=Are(o,a);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;u=rne(rne({accessToken:n,idToken:i},j8(t,Xre)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===dre.REDIRECT&&await this.storageHelper.storeLoginDetails({method:pre,args:e},l.nonce),u=await l.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===dre.REDIRECT)return null;const d=await l.getUserInfo(u);if(c){const e=this.sentryHandler.startTransaction({name:vre}),r=await this.nodeDetailManager.getNodeDetails({verifier:t,verifierId:d.verifierId});this.sentryHandler.finishTransaction(e);const n=this.sentryHandler.startTransaction({name:yre}),i=await this.torus.getPublicAddress(r.torusNodeEndpoints,r.torusNodePub,{verifier:t,verifierId:d.verifierId});this.sentryHandler.finishTransaction(n);const o={userInfo:rne(rne({},d),u)};return rne(rne(rne({},o),i),{},{finalKeyData:rne(rne({},i.finalKeyData),{},{privKey:void 0}),oAuthKeyData:rne(rne({},i.finalKeyData),{},{privKey:void 0}),metadata:rne(rne({},i.metadata),{},{nonce:void 0}),sessionData:void 0})}return rne(rne({},await this.getTorusKey(t,d.verifierId,{verifier_id:d.verifierId},u.idToken||u.accessToken,d.extraVerifierParams)),{},{userInfo:rne(rne({},d),u)})}async triggerAggregateLogin(e){const{aggregateVerifierType:t,verifierIdentifier:r,subVerifierDetailsArray:n}=e;if(!this.isInitialized)throw new Error("Not initialized yet");if(!t||!r||!Array.isArray(n))throw new Error("Invalid params");if(t===ure&&1!==n.length)throw new Error("Single id verifier can only have one sub verifier");const i=[],o=[];for(const h of n){const{clientId:t,typeOfLogin:r,verifier:n,jwtParams:a,hash:s,queryParameters:c,customState:l}=h,u=Gre({typeOfLogin:r,clientId:t,verifier:n,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:a,uxMode:this.config.uxMode,customState:l});let d;if(s&&c){const{error:e,hashParameters:t,instanceParameters:r}=Are(s,c);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;d=rne(rne({accessToken:n,idToken:i},j8(t,Jre)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===dre.REDIRECT&&await this.storageHelper.storeLoginDetails({method:mre,args:e},u.nonce),d=await u.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===dre.REDIRECT)return null;i.push(u.getUserInfo(d)),o.push(d)}const a=(await Promise.all(i)).map((e=>rne(rne({},e),{},{aggregateVerifier:r}))),s={verify_params:[],sub_verifier_ids:[],verifier_id:""},c=[];let l="",u={};for(let h=0;hrne(rne({},e),o[t])))})}async triggerHybridAggregateLogin(e){const{singleLogin:t,aggregateLoginParams:r}=e;if(!this.isInitialized)throw new Error("Not initialized yet");if(!r.aggregateVerifierType||!r.verifierIdentifier||!Array.isArray(r.subVerifierDetailsArray))throw new Error("Invalid params");if(r.aggregateVerifierType===ure&&1!==r.subVerifierDetailsArray.length)throw new Error("Single id verifier can only have one sub verifier");const{typeOfLogin:n,clientId:i,verifier:o,jwtParams:a,hash:s,queryParameters:c,customState:l}=t,u=Gre({typeOfLogin:n,clientId:i,verifier:o,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:a,uxMode:this.config.uxMode,customState:l});let d;if(s&&c){const{error:e,hashParameters:t,instanceParameters:r}=Are(s,c);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;d=rne(rne({accessToken:n,idToken:i},j8(t,Qre)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===dre.REDIRECT&&await this.storageHelper.storeLoginDetails({method:gre,args:e},u.nonce),d=await u.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===dre.REDIRECT)return null;const h=await u.getUserInfo(d),f=this.getTorusKey(o,h.verifierId,{verifier_id:h.verifierId},d.idToken||d.accessToken,h.extraVerifierParams),{verifierIdentifier:p,subVerifierDetailsArray:m}=r,g={verify_params:[],sub_verifier_ids:[],verifier_id:""},v=[];let y="";for(let k=0;k0&&void 0!==arguments[0]?arguments[0]:{};await this.init({skipInit:!0});const r=new URL(window.location.href),n=r.hash.substring(1),i={};if(r.searchParams.forEach(((e,t)=>{i[t]=e})),e){const e=window.location.origin+window.location.pathname;window.history.replaceState(rne(rne({},window.history.state),{},{as:e,url:e}),"",e)}if(!n&&0===Object.keys(i).length)throw new Error("Unable to fetch result from OAuth login");const{error:o,instanceParameters:a,hashParameters:s}=Are(n,i),{instanceId:c}=a;wre.info(c,"instanceId");const l=await this.storageHelper.retrieveLoginDetails(c),{args:u,method:d}=l,h=j8(l,ene);if(wre.info(u,d),t&&this.storageHelper.clearLoginDetailsStorage(c),o)return{error:o,state:a||{},method:d,result:{},hashParameters:s,args:u};let f;try{if(d===pre){const e=u;e.hash=n,e.queryParameters=i,f=await this.triggerLogin(e)}else if(d===mre){const e=u;e.subVerifierDetailsArray.forEach((e=>{e.hash=n,e.queryParameters=i})),f=await this.triggerAggregateLogin(e)}else if(d===gre){const e=u;e.singleLogin.hash=n,e.singleLogin.queryParameters=i,f=await this.triggerHybridAggregateLogin(e)}}catch(Tie){return wre.error(Tie),rne({error:`Could not get result from torus nodes \n ${(null===Tie||void 0===Tie?void 0:Tie.message)||""}`,state:a||{},method:d,result:{},hashParameters:s,args:u},h)}return rne(f?{method:d,result:f,state:a||{},hashParameters:s,args:u}:{error:"Unsupported method type",state:a||{},method:d,result:{},hashParameters:s,args:u},h)}async handlePrefetchRedirectUri(){return document?new Promise(((e,t)=>{const r=document.createElement("link");r.href=this.config.redirect_uri,window.location.origin!==new URL(this.config.redirect_uri).origin&&(r.crossOrigin="anonymous"),r.type="text/html",r.rel="prefetch";const n=()=>{this.isInitialized=!0,e()};try{r.relList&&r.relList.supports&&r.relList.supports("prefetch")?(r.onload=n,r.onerror=()=>{t(new Error(`Please serve redirect.html present in serviceworker folder of this package on ${this.config.redirect_uri}`))},document.head.appendChild(r)):n()}catch(Tie){n()}})):Promise.resolve()}}const ine=(e,t,r)=>Promise.race([e(),new Promise(((e,n)=>setTimeout((()=>{n(new Error(r||"The operation has timed out"))}),t)))]),one=async()=>ine((async()=>{const e=new nne({web3AuthClientId:"BBHmFdLXgGDzSiizRVMWtyL_7Dsoxu5B8zep2Pns8sGELslgXDbktJewVDVDDBlknEKkMCtzISLjJtxk60SK2-g",baseUrl:"https://umamiwallet.com/auth/v2.0.1/",redirectPathName:"redirect.html",redirectToOpener:!0,uxMode:"popup",network:"mainnet"});await e.init({skipSw:!0});const t=await e.triggerAggregateLogin({verifierIdentifier:"tezos-google",aggregateVerifierType:"single_id_verifier",subVerifierDetailsArray:[{clientId:"1070572364808-d31nlkneam5ee6dr0tu28fjjbsdkfta5.apps.googleusercontent.com",typeOfLogin:"google",verifier:"umami"}]});return{secretKey:EE(t.finalKeyData.privKey||t.oAuthKeyData.privKey,eE[ZS.SPSK]),email:t.userInfo[0].email}}),6e4),ane=e=>{let t="Something went wrong";"object"===typeof e&&"message"in e?t=e.message:"string"===typeof e&&(t=e);let r="";return"object"===typeof e&&"stack"in e&&(r=e.stack),{timestamp:(new Date).toISOString(),description:t,stacktrace:r}},sne=()=>{const[e,t]=(0,i.useState)(!1),r=a0(),n=iw(),o=async(i,o)=>{if(!e){t(!0);try{return await i()}catch(a){const e=ane(a);throw r({description:e.description,status:"error",..."function"===typeof o?o(a):o}),n(gH.actions.add(e)),a}finally{t(!1)}}};return{isLoading:e,handleAsyncAction:async(e,t)=>o(e,t).catch((()=>{})),handleAsyncActionUnsafe:o}},cne=({onAuth:e})=>{const{isLoading:t,handleAsyncAction:r}=sne();return(0,xn.jsx)(s8,{width:"48px",background:"white",borderRadius:"full",_disabled:{bg:Xv.gray[900]},"aria-label":"Google SSO","data-testid":"google-auth-button",icon:(0,xn.jsx)(Cy,{}),isLoading:t,onClick:async()=>r((async()=>{const{secretKey:t,email:r}=await one();return e(t,r)}),{title:"Social login failed"}),size:"lg",variant:"outline"})};function lne(e){let t=e.length;for(;--t>=0;)e[t]=0}const une=256,dne=286,hne=30,fne=15,pne=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),mne=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),gne=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),vne=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),yne=new Array(576);lne(yne);const bne=new Array(60);lne(bne);const wne=new Array(512);lne(wne);const xne=new Array(256);lne(xne);const _ne=new Array(29);lne(_ne);const kne=new Array(hne);function Sne(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}let Ene,Ane,Pne;function One(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}lne(kne);const Tne=e=>e<256?wne[e]:wne[256+(e>>>7)],Cne=(e,t)=>{e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255},jne=(e,t,r)=>{e.bi_valid>16-r?(e.bi_buf|=t<>16-e.bi_valid,e.bi_valid+=r-16):(e.bi_buf|=t<{jne(e,r[2*t],r[2*t+1])},Ine=(e,t)=>{let r=0;do{r|=1&e,e>>>=1,r<<=1}while(--t>0);return r>>>1},Mne=(e,t,r)=>{const n=new Array(16);let i,o,a=0;for(i=1;i<=fne;i++)a=a+r[i-1]<<1,n[i]=a;for(o=0;o<=t;o++){let t=e[2*o+1];0!==t&&(e[2*o]=Ine(n[t]++,t))}},Lne=e=>{let t;for(t=0;t{e.bi_valid>8?Cne(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},Dne=(e,t,r,n)=>{const i=2*t,o=2*r;return e[i]{const n=e.heap[r];let i=r<<1;for(;i<=e.heap_len&&(i{let n,i,o,a,s=0;if(0!==e.sym_next)do{n=255&e.pending_buf[e.sym_buf+s++],n+=(255&e.pending_buf[e.sym_buf+s++])<<8,i=e.pending_buf[e.sym_buf+s++],0===n?Rne(e,i,t):(o=xne[i],Rne(e,o+une+1,t),a=pne[o],0!==a&&(i-=_ne[o],jne(e,i,a)),n--,o=Tne(n),Rne(e,o,r),a=mne[o],0!==a&&(n-=kne[o],jne(e,n,a)))}while(s{const r=t.dyn_tree,n=t.stat_desc.static_tree,i=t.stat_desc.has_stree,o=t.stat_desc.elems;let a,s,c,l=-1;for(e.heap_len=0,e.heap_max=573,a=0;a>1;a>=1;a--)zne(e,r,a);c=o;do{a=e.heap[1],e.heap[1]=e.heap[e.heap_len--],zne(e,r,1),s=e.heap[1],e.heap[--e.heap_max]=a,e.heap[--e.heap_max]=s,r[2*c]=r[2*a]+r[2*s],e.depth[c]=(e.depth[a]>=e.depth[s]?e.depth[a]:e.depth[s])+1,r[2*a+1]=r[2*s+1]=c,e.heap[1]=c++,zne(e,r,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],((e,t)=>{const r=t.dyn_tree,n=t.max_code,i=t.stat_desc.static_tree,o=t.stat_desc.has_stree,a=t.stat_desc.extra_bits,s=t.stat_desc.extra_base,c=t.stat_desc.max_length;let l,u,d,h,f,p,m=0;for(h=0;h<=fne;h++)e.bl_count[h]=0;for(r[2*e.heap[e.heap_max]+1]=0,l=e.heap_max+1;l<573;l++)u=e.heap[l],h=r[2*r[2*u+1]+1]+1,h>c&&(h=c,m++),r[2*u+1]=h,u>n||(e.bl_count[h]++,f=0,u>=s&&(f=a[u-s]),p=r[2*u],e.opt_len+=p*(h+f),o&&(e.static_len+=p*(i[2*u+1]+f)));if(0!==m){do{for(h=c-1;0===e.bl_count[h];)h--;e.bl_count[h]--,e.bl_count[h+1]+=2,e.bl_count[c]--,m-=2}while(m>0);for(h=c;0!==h;h--)for(u=e.bl_count[h];0!==u;)d=e.heap[--l],d>n||(r[2*d+1]!==h&&(e.opt_len+=(h-r[2*d+1])*r[2*d],r[2*d+1]=h),u--)}})(e,t),Mne(r,l,e.bl_count)},Une=(e,t,r)=>{let n,i,o=-1,a=t[1],s=0,c=7,l=4;for(0===a&&(c=138,l=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=a,a=t[2*(n+1)+1],++s{let n,i,o=-1,a=t[1],s=0,c=7,l=4;for(0===a&&(c=138,l=3),n=0;n<=r;n++)if(i=a,a=t[2*(n+1)+1],!(++s{jne(e,0+(n?1:0),3),Nne(e),Cne(e,r),Cne(e,~r),r&&e.pending_buf.set(e.window.subarray(t,t+r),e.pending),e.pending+=r};var qne=e=>{Hne||((()=>{let e,t,r,n,i;const o=new Array(16);for(r=0,n=0;n<28;n++)for(_ne[n]=r,e=0;e<1<>=7;n{let i,o,a=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=(e=>{let t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t{let t;for(Une(e,e.dyn_ltree,e.l_desc.max_code),Une(e,e.dyn_dtree,e.d_desc.max_code),Fne(e,e.bl_desc),t=18;t>=3&&0===e.bl_tree[2*vne[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(e),i=e.opt_len+3+7>>>3,o=e.static_len+3+7>>>3,o<=i&&(i=o)):i=o=r+5,r+4<=i&&-1!==t?Vne(e,t,r,n):4===e.strategy||o===i?(jne(e,2+(n?1:0),3),Bne(e,yne,bne)):(jne(e,4+(n?1:0),3),((e,t,r,n)=>{let i;for(jne(e,t-257,5),jne(e,r-1,5),jne(e,n-4,4),i=0;i(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=r,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(xne[r]+une+1)]++,e.dyn_dtree[2*Tne(t)]++),e.sym_next===e.sym_end),Gne=e=>{jne(e,2,3),Rne(e,256,yne),(e=>{16===e.bi_valid?(Cne(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)})(e)},Zne={_tr_init:qne,_tr_stored_block:Vne,_tr_flush_block:Kne,_tr_tally:Wne,_tr_align:Gne};var Yne=(e,t,r,n)=>{let i=65535&e|0,o=e>>>16&65535|0,a=0;for(;0!==r;){a=r>2e3?2e3:r,r-=a;do{i=i+t[n++]|0,o=o+i|0}while(--a);i%=65521,o%=65521}return i|o<<16|0};const Xne=new Uint32Array((()=>{let e,t=[];for(var r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t})());var Jne=(e,t,r,n)=>{const i=Xne,o=n+r;e^=-1;for(let a=n;a>>8^i[255&(e^t[a])];return-1^e},Qne={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},eie={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:tie,_tr_stored_block:rie,_tr_flush_block:nie,_tr_tally:iie,_tr_align:oie}=Zne,{Z_NO_FLUSH:aie,Z_PARTIAL_FLUSH:sie,Z_FULL_FLUSH:cie,Z_FINISH:lie,Z_BLOCK:uie,Z_OK:die,Z_STREAM_END:hie,Z_STREAM_ERROR:fie,Z_DATA_ERROR:pie,Z_BUF_ERROR:mie,Z_DEFAULT_COMPRESSION:gie,Z_FILTERED:vie,Z_HUFFMAN_ONLY:yie,Z_RLE:bie,Z_FIXED:wie,Z_DEFAULT_STRATEGY:xie,Z_UNKNOWN:_ie,Z_DEFLATED:kie}=eie,Sie=258,Eie=262,Aie=42,Pie=113,Oie=666,Tie=(e,t)=>(e.msg=Qne[t],t),Cie=e=>2*e-(e>4?9:0),jie=e=>{let t=e.length;for(;--t>=0;)e[t]=0},Rie=e=>{let t,r,n,i=e.w_size;t=e.hash_size,n=t;do{r=e.head[--n],e.head[n]=r>=i?r-i:0}while(--t);t=i,n=t;do{r=e.prev[--n],e.prev[n]=r>=i?r-i:0}while(--t)};let Iie=(e,t,r)=>(t<{const t=e.state;let r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+r),e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))},Lie=(e,t)=>{nie(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Mie(e.strm)},Nie=(e,t)=>{e.pending_buf[e.pending++]=t},Die=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t},zie=(e,t,r,n)=>{let i=e.avail_in;return i>n&&(i=n),0===i?0:(e.avail_in-=i,t.set(e.input.subarray(e.next_in,e.next_in+i),r),1===e.state.wrap?e.adler=Yne(e.adler,t,i,r):2===e.state.wrap&&(e.adler=Jne(e.adler,t,i,r)),e.next_in+=i,e.total_in+=i,i)},Bie=(e,t)=>{let r,n,i=e.max_chain_length,o=e.strstart,a=e.prev_length,s=e.nice_match;const c=e.strstart>e.w_size-Eie?e.strstart-(e.w_size-Eie):0,l=e.window,u=e.w_mask,d=e.prev,h=e.strstart+Sie;let f=l[o+a-1],p=l[o+a];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(r=t,l[r+a]===p&&l[r+a-1]===f&&l[r]===l[o]&&l[++r]===l[o+1]){o+=2,r++;do{}while(l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&l[++o]===l[++r]&&oa){if(e.match_start=t,a=n,n>=s)break;f=l[o+a-1],p=l[o+a]}}}while((t=d[t&u])>c&&0!==--i);return a<=e.lookahead?a:e.lookahead},Fie=e=>{const t=e.w_size;let r,n,i;do{if(n=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-Eie)&&(e.window.set(e.window.subarray(t,t+t-n),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),Rie(e),n+=t),0===e.strm.avail_in)break;if(r=zie(e.strm,e.window,e.strstart+e.lookahead,n),e.lookahead+=r,e.lookahead+e.insert>=3)for(i=e.strstart-e.insert,e.ins_h=e.window[i],e.ins_h=Iie(e,e.ins_h,e.window[i+1]);e.insert&&(e.ins_h=Iie(e,e.ins_h,e.window[i+3-1]),e.prev[i&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=i,i++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead{let r,n,i,o=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,a=0,s=e.strm.avail_in;do{if(r=65535,i=e.bi_valid+42>>3,e.strm.avail_outn+e.strm.avail_in&&(r=n+e.strm.avail_in),r>i&&(r=i),r>8,e.pending_buf[e.pending-2]=~r,e.pending_buf[e.pending-1]=~r>>8,Mie(e.strm),n&&(n>r&&(n=r),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+n),e.strm.next_out),e.strm.next_out+=n,e.strm.avail_out-=n,e.strm.total_out+=n,e.block_start+=n,r-=n),r&&(zie(e.strm,e.strm.output,e.strm.next_out,r),e.strm.next_out+=r,e.strm.avail_out-=r,e.strm.total_out+=r)}while(0===a);return s-=e.strm.avail_in,s&&(s>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=s&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-s,e.strm.next_in),e.strstart),e.strstart+=s,e.insert+=s>e.w_size-e.insert?e.w_size-e.insert:s),e.block_start=e.strstart),e.high_wateri&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,i+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),i>e.strm.avail_in&&(i=e.strm.avail_in),i&&(zie(e.strm,e.window,e.strstart,i),e.strstart+=i,e.insert+=i>e.w_size-e.insert?e.w_size-e.insert:i),e.high_water>3,i=e.pending_buf_size-i>65535?65535:e.pending_buf_size-i,o=i>e.w_size?e.w_size:i,n=e.strstart-e.block_start,(n>=o||(n||t===lie)&&t!==aie&&0===e.strm.avail_in&&n<=i)&&(r=n>i?i:n,a=t===lie&&0===e.strm.avail_in&&r===n?1:0,rie(e,e.block_start,r,a),e.block_start+=r,Mie(e.strm)),a?3:1)},$ie=(e,t)=>{let r,n;for(;;){if(e.lookahead=3&&(e.ins_h=Iie(e,e.ins_h,e.window[e.strstart+3-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==r&&e.strstart-r<=e.w_size-Eie&&(e.match_length=Bie(e,r)),e.match_length>=3)if(n=iie(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){e.match_length--;do{e.strstart++,e.ins_h=Iie(e,e.ins_h,e.window[e.strstart+3-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(0!==--e.match_length);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=Iie(e,e.ins_h,e.window[e.strstart+1]);else n=iie(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(Lie(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,t===lie?(Lie(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Lie(e,!1),0===e.strm.avail_out)?1:2},Hie=(e,t)=>{let r,n,i;for(;;){if(e.lookahead=3&&(e.ins_h=Iie(e,e.ins_h,e.window[e.strstart+3-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==r&&e.prev_length4096)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-3,n=iie(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=Iie(e,e.ins_h,e.window[e.strstart+3-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!==--e.prev_length);if(e.match_available=0,e.match_length=2,e.strstart++,n&&(Lie(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if(n=iie(e,0,e.window[e.strstart-1]),n&&Lie(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=iie(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,t===lie?(Lie(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Lie(e,!1),0===e.strm.avail_out)?1:2};function Vie(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}const qie=[new Vie(0,0,0,0,Uie),new Vie(4,4,8,4,$ie),new Vie(4,5,16,8,$ie),new Vie(4,6,32,32,$ie),new Vie(4,4,16,16,Hie),new Vie(8,16,32,32,Hie),new Vie(8,16,128,128,Hie),new Vie(8,32,128,256,Hie),new Vie(32,128,258,1024,Hie),new Vie(32,258,258,4096,Hie)];function Kie(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=kie,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),jie(this.dyn_ltree),jie(this.dyn_dtree),jie(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),jie(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),jie(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Wie=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.status!==Aie&&57!==t.status&&69!==t.status&&73!==t.status&&91!==t.status&&103!==t.status&&t.status!==Pie&&t.status!==Oie?1:0},Gie=e=>{if(Wie(e))return Tie(e,fie);e.total_in=e.total_out=0,e.data_type=_ie;const t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=2===t.wrap?57:t.wrap?Aie:Pie,e.adler=2===t.wrap?0:1,t.last_flush=-2,tie(t),die},Zie=e=>{const t=Gie(e);return t===die&&(e=>{e.window_size=2*e.w_size,jie(e.head),e.max_lazy_match=qie[e.level].max_lazy,e.good_match=qie[e.level].good_length,e.nice_match=qie[e.level].nice_length,e.max_chain_length=qie[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=2,e.match_available=0,e.ins_h=0})(e.state),t},Yie=(e,t,r,n,i,o)=>{if(!e)return fie;let a=1;if(t===gie&&(t=6),n<0?(a=0,n=-n):n>15&&(a=2,n-=16),i<1||i>9||r!==kie||n<8||n>15||t<0||t>9||o<0||o>wie||8===n&&1!==a)return Tie(e,fie);8===n&&(n=9);const s=new Kie;return e.state=s,s.strm=e,s.status=Aie,s.wrap=a,s.gzhead=null,s.w_bits=n,s.w_size=1<{if(Wie(e)||t>uie||t<0)return e?Tie(e,fie):fie;const r=e.state;if(!e.output||0!==e.avail_in&&!e.input||r.status===Oie&&t!==lie)return Tie(e,0===e.avail_out?mie:fie);const n=r.last_flush;if(r.last_flush=t,0!==r.pending){if(Mie(e),0===e.avail_out)return r.last_flush=-1,die}else if(0===e.avail_in&&Cie(t)<=Cie(n)&&t!==lie)return Tie(e,mie);if(r.status===Oie&&0!==e.avail_in)return Tie(e,mie);if(r.status===Aie&&0===r.wrap&&(r.status=Pie),r.status===Aie){let t=kie+(r.w_bits-8<<4)<<8,n=-1;if(n=r.strategy>=yie||r.level<2?0:r.level<6?1:6===r.level?2:3,t|=n<<6,0!==r.strstart&&(t|=32),t+=31-t%31,Die(r,t),0!==r.strstart&&(Die(r,e.adler>>>16),Die(r,65535&e.adler)),e.adler=1,r.status=Pie,Mie(e),0!==r.pending)return r.last_flush=-1,die}if(57===r.status)if(e.adler=0,Nie(r,31),Nie(r,139),Nie(r,8),r.gzhead)Nie(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),Nie(r,255&r.gzhead.time),Nie(r,r.gzhead.time>>8&255),Nie(r,r.gzhead.time>>16&255),Nie(r,r.gzhead.time>>24&255),Nie(r,9===r.level?2:r.strategy>=yie||r.level<2?4:0),Nie(r,255&r.gzhead.os),r.gzhead.extra&&r.gzhead.extra.length&&(Nie(r,255&r.gzhead.extra.length),Nie(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=Jne(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=69;else if(Nie(r,0),Nie(r,0),Nie(r,0),Nie(r,0),Nie(r,0),Nie(r,9===r.level?2:r.strategy>=yie||r.level<2?4:0),Nie(r,3),r.status=Pie,Mie(e),0!==r.pending)return r.last_flush=-1,die;if(69===r.status){if(r.gzhead.extra){let t=r.pending,n=(65535&r.gzhead.extra.length)-r.gzindex;for(;r.pending+n>r.pending_buf_size;){let i=r.pending_buf_size-r.pending;if(r.pending_buf.set(r.gzhead.extra.subarray(r.gzindex,r.gzindex+i),r.pending),r.pending=r.pending_buf_size,r.gzhead.hcrc&&r.pending>t&&(e.adler=Jne(e.adler,r.pending_buf,r.pending-t,t)),r.gzindex+=i,Mie(e),0!==r.pending)return r.last_flush=-1,die;t=0,n-=i}let i=new Uint8Array(r.gzhead.extra);r.pending_buf.set(i.subarray(r.gzindex,r.gzindex+n),r.pending),r.pending+=n,r.gzhead.hcrc&&r.pending>t&&(e.adler=Jne(e.adler,r.pending_buf,r.pending-t,t)),r.gzindex=0}r.status=73}if(73===r.status){if(r.gzhead.name){let t,n=r.pending;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>n&&(e.adler=Jne(e.adler,r.pending_buf,r.pending-n,n)),Mie(e),0!==r.pending)return r.last_flush=-1,die;n=0}t=r.gzindexn&&(e.adler=Jne(e.adler,r.pending_buf,r.pending-n,n)),r.gzindex=0}r.status=91}if(91===r.status){if(r.gzhead.comment){let t,n=r.pending;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>n&&(e.adler=Jne(e.adler,r.pending_buf,r.pending-n,n)),Mie(e),0!==r.pending)return r.last_flush=-1,die;n=0}t=r.gzindexn&&(e.adler=Jne(e.adler,r.pending_buf,r.pending-n,n))}r.status=103}if(103===r.status){if(r.gzhead.hcrc){if(r.pending+2>r.pending_buf_size&&(Mie(e),0!==r.pending))return r.last_flush=-1,die;Nie(r,255&e.adler),Nie(r,e.adler>>8&255),e.adler=0}if(r.status=Pie,Mie(e),0!==r.pending)return r.last_flush=-1,die}if(0!==e.avail_in||0!==r.lookahead||t!==aie&&r.status!==Oie){let n=0===r.level?Uie(r,t):r.strategy===yie?((e,t)=>{let r;for(;;){if(0===e.lookahead&&(Fie(e),0===e.lookahead)){if(t===aie)return 1;break}if(e.match_length=0,r=iie(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(Lie(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,t===lie?(Lie(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Lie(e,!1),0===e.strm.avail_out)?1:2})(r,t):r.strategy===bie?((e,t)=>{let r,n,i,o;const a=e.window;for(;;){if(e.lookahead<=Sie){if(Fie(e),e.lookahead<=Sie&&t===aie)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&e.strstart>0&&(i=e.strstart-1,n=a[i],n===a[++i]&&n===a[++i]&&n===a[++i])){o=e.strstart+Sie;do{}while(n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(r=iie(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=iie(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(Lie(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,t===lie?(Lie(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Lie(e,!1),0===e.strm.avail_out)?1:2})(r,t):qie[r.level].func(r,t);if(3!==n&&4!==n||(r.status=Oie),1===n||3===n)return 0===e.avail_out&&(r.last_flush=-1),die;if(2===n&&(t===sie?oie(r):t!==uie&&(rie(r,0,0,!1),t===cie&&(jie(r.head),0===r.lookahead&&(r.strstart=0,r.block_start=0,r.insert=0))),Mie(e),0===e.avail_out))return r.last_flush=-1,die}return t!==lie?die:r.wrap<=0?hie:(2===r.wrap?(Nie(r,255&e.adler),Nie(r,e.adler>>8&255),Nie(r,e.adler>>16&255),Nie(r,e.adler>>24&255),Nie(r,255&e.total_in),Nie(r,e.total_in>>8&255),Nie(r,e.total_in>>16&255),Nie(r,e.total_in>>24&255)):(Die(r,e.adler>>>16),Die(r,65535&e.adler)),Mie(e),r.wrap>0&&(r.wrap=-r.wrap),0!==r.pending?die:hie)},Jie=(e,t)=>{let r=t.length;if(Wie(e))return fie;const n=e.state,i=n.wrap;if(2===i||1===i&&n.status!==Aie||n.lookahead)return fie;if(1===i&&(e.adler=Yne(e.adler,t,r,0)),n.wrap=0,r>=n.w_size){0===i&&(jie(n.head),n.strstart=0,n.block_start=0,n.insert=0);let e=new Uint8Array(n.w_size);e.set(t.subarray(r-n.w_size,r),0),t=e,r=n.w_size}const o=e.avail_in,a=e.next_in,s=e.input;for(e.avail_in=r,e.next_in=0,e.input=t,Fie(n);n.lookahead>=3;){let e=n.strstart,t=n.lookahead-2;do{n.ins_h=Iie(n,n.ins_h,n.window[e+3-1]),n.prev[e&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=e,e++}while(--t);n.strstart=e,n.lookahead=2,Fie(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,e.next_in=a,e.input=s,e.avail_in=o,n.wrap=i,die},Qie={deflateInit:(e,t)=>Yie(e,t,kie,15,8,xie),deflateInit2:Yie,deflateReset:Zie,deflateResetKeep:Gie,deflateSetHeader:(e,t)=>Wie(e)||2!==e.state.wrap?fie:(e.state.gzhead=t,die),deflate:Xie,deflateEnd:e=>{if(Wie(e))return fie;const t=e.state.status;return e.state=null,t===Pie?Tie(e,pie):die},deflateSetDictionary:Jie,deflateInfo:"pako deflate (from Nodeca project)"};const eoe=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var toe={assign:function(e){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const r=t.shift();if(r){if("object"!==typeof r)throw new TypeError(r+"must be non-object");for(const t in r)eoe(r,t)&&(e[t]=r[t])}}return e},flattenChunks:e=>{let t=0;for(let n=0,i=e.length;n=252?6:r>=248?5:r>=240?4:r>=224?3:r>=192?2:1;noe[254]=noe[254]=1;var ioe={string2buf:e=>{if("function"===typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(e);let t,r,n,i,o,a=e.length,s=0;for(i=0;i>>6,t[o++]=128|63&r):r<65536?(t[o++]=224|r>>>12,t[o++]=128|r>>>6&63,t[o++]=128|63&r):(t[o++]=240|r>>>18,t[o++]=128|r>>>12&63,t[o++]=128|r>>>6&63,t[o++]=128|63&r);return t},buf2string:(e,t)=>{const r=t||e.length;if("function"===typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(e.subarray(0,t));let n,i;const o=new Array(2*r);for(i=0,n=0;n4)o[i++]=65533,n+=a-1;else{for(t&=2===a?31:3===a?15:7;a>1&&n1?o[i++]=65533:t<65536?o[i++]=t:(t-=65536,o[i++]=55296|t>>10&1023,o[i++]=56320|1023&t)}}return((e,t)=>{if(t<65534&&e.subarray&&roe)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let r="";for(let n=0;n{(t=t||e.length)>e.length&&(t=e.length);let r=t-1;for(;r>=0&&128===(192&e[r]);)r--;return r<0||0===r?t:r+noe[e[r]]>t?r:t}};var ooe=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const aoe=Object.prototype.toString,{Z_NO_FLUSH:soe,Z_SYNC_FLUSH:coe,Z_FULL_FLUSH:loe,Z_FINISH:uoe,Z_OK:doe,Z_STREAM_END:hoe,Z_DEFAULT_COMPRESSION:foe,Z_DEFAULT_STRATEGY:poe,Z_DEFLATED:moe}=eie;function goe(e){this.options=toe.assign({level:foe,method:moe,chunkSize:16384,windowBits:15,memLevel:8,strategy:poe},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new ooe,this.strm.avail_out=0;let r=Qie.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==doe)throw new Error(Qne[r]);if(t.header&&Qie.deflateSetHeader(this.strm,t.header),t.dictionary){let e;if(e="string"===typeof t.dictionary?ioe.string2buf(t.dictionary):"[object ArrayBuffer]"===aoe.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,r=Qie.deflateSetDictionary(this.strm,e),r!==doe)throw new Error(Qne[r]);this._dict_set=!0}}function voe(e,t){const r=new goe(t);if(r.push(e,!0),r.err)throw r.msg||Qne[r.err];return r.result}goe.prototype.push=function(e,t){const r=this.strm,n=this.options.chunkSize;let i,o;if(this.ended)return!1;for(o=t===~~t?t:!0===t?uoe:soe,"string"===typeof e?r.input=ioe.string2buf(e):"[object ArrayBuffer]"===aoe.call(e)?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;)if(0===r.avail_out&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),(o===coe||o===loe)&&r.avail_out<=6)this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;else{if(i=Qie.deflate(r,o),i===hoe)return r.next_out>0&&this.onData(r.output.subarray(0,r.next_out)),i=Qie.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===doe;if(0!==r.avail_out){if(o>0&&r.next_out>0)this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;else if(0===r.avail_in)break}else this.onData(r.output)}return!0},goe.prototype.onData=function(e){this.chunks.push(e)},goe.prototype.onEnd=function(e){e===doe&&(this.result=toe.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};var yoe=function(e,t){return(t=t||{}).raw=!0,voe(e,t)},boe=function(e,t){return(t=t||{}).gzip=!0,voe(e,t)},woe={Deflate:goe,deflate:voe,deflateRaw:yoe,gzip:boe,constants:eie};const xoe=16209;var _oe=function(e,t){let r,n,i,o,a,s,c,l,u,d,h,f,p,m,g,v,y,b,w,x,_,k,S,E;const A=e.state;r=e.next_in,S=e.input,n=r+(e.avail_in-5),i=e.next_out,E=e.output,o=i-(t-e.avail_out),a=i+(e.avail_out-257),s=A.dmax,c=A.wsize,l=A.whave,u=A.wnext,d=A.window,h=A.hold,f=A.bits,p=A.lencode,m=A.distcode,g=(1<>>24,h>>>=b,f-=b,b=y>>>16&255,0===b)E[i++]=65535&y;else{if(!(16&b)){if(0===(64&b)){y=p[(65535&y)+(h&(1<>>=b,f-=b),f<15&&(h+=S[r++]<>>24,h>>>=b,f-=b,b=y>>>16&255,!(16&b)){if(0===(64&b)){y=m[(65535&y)+(h&(1<s){e.msg="invalid distance too far back",A.mode=xoe;break e}if(h>>>=b,f-=b,b=i-o,x>b){if(b=x-b,b>l&&A.sane){e.msg="invalid distance too far back",A.mode=xoe;break e}if(_=0,k=d,0===u){if(_+=c-b,b2;)E[i++]=k[_++],E[i++]=k[_++],E[i++]=k[_++],w-=3;w&&(E[i++]=k[_++],w>1&&(E[i++]=k[_++]))}else{_=i-x;do{E[i++]=E[_++],E[i++]=E[_++],E[i++]=E[_++],w-=3}while(w>2);w&&(E[i++]=E[_++],w>1&&(E[i++]=E[_++]))}break}}break}}while(r>3,r-=w,f-=w<<3,h&=(1<{const c=s.bits;let l,u,d,h,f,p,m=0,g=0,v=0,y=0,b=0,w=0,x=0,_=0,k=0,S=0,E=null;const A=new Uint16Array(16),P=new Uint16Array(16);let O,T,C,j=null;for(m=0;m<=koe;m++)A[m]=0;for(g=0;g=1&&0===A[y];y--);if(b>y&&(b=y),0===y)return i[o++]=20971520,i[o++]=20971520,s.bits=1,0;for(v=1;v0&&(0===e||1!==y))return-1;for(P[1]=0,m=1;m852||2===e&&k>592)return 1;for(;;){O=m-x,a[g]+1=p?(T=j[a[g]-p],C=E[a[g]-p]):(T=96,C=0),l=1<>x)+u]=O<<24|T<<16|C|0}while(0!==u);for(l=1<>=1;if(0!==l?(S&=l-1,S+=l):S=0,g++,0===--A[m]){if(m===y)break;m=t[r+a[g]]}if(m>b&&(S&h)!==d){for(0===x&&(x=b),f+=v,w=m-x,_=1<852||2===e&&k>592)return 1;d=S&h,i[d]=b<<24|w<<16|f-o|0}}return 0!==S&&(i[f+S]=m-x<<24|64<<16|0),s.bits=b,0};const{Z_FINISH:Toe,Z_BLOCK:Coe,Z_TREES:joe,Z_OK:Roe,Z_STREAM_END:Ioe,Z_NEED_DICT:Moe,Z_STREAM_ERROR:Loe,Z_DATA_ERROR:Noe,Z_MEM_ERROR:Doe,Z_BUF_ERROR:zoe,Z_DEFLATED:Boe}=eie,Foe=16180,Uoe=16190,$oe=16191,Hoe=16192,Voe=16194,qoe=16199,Koe=16200,Woe=16206,Goe=16209,Zoe=e=>(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24);function Yoe(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const Xoe=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.mode16211?1:0},Joe=e=>{if(Xoe(e))return Loe;const t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=Foe,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(852),t.distcode=t.distdyn=new Int32Array(592),t.sane=1,t.back=-1,Roe},Qoe=e=>{if(Xoe(e))return Loe;const t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,Joe(e)},eae=(e,t)=>{let r;if(Xoe(e))return Loe;const n=e.state;return t<0?(r=0,t=-t):(r=5+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?Loe:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,Qoe(e))},tae=(e,t)=>{if(!e)return Loe;const r=new Yoe;e.state=r,r.strm=e,r.window=null,r.mode=Foe;const n=eae(e,t);return n!==Roe&&(e.state=null),n};let rae,nae,iae=!0;const oae=e=>{if(iae){rae=new Int32Array(512),nae=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(Ooe(1,e.lens,0,288,rae,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;Ooe(2,e.lens,0,32,nae,0,e.work,{bits:5}),iae=!1}e.lencode=rae,e.lenbits=9,e.distcode=nae,e.distbits=5},aae=(e,t,r,n)=>{let i;const o=e.state;return null===o.window&&(o.wsize=1<=o.wsize?(o.window.set(t.subarray(r-o.wsize,r),0),o.wnext=0,o.whave=o.wsize):(i=o.wsize-o.wnext,i>n&&(i=n),o.window.set(t.subarray(r-n,r-n+i),o.wnext),(n-=i)?(o.window.set(t.subarray(r-n,r),0),o.wnext=n,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.whave{let r,n,i,o,a,s,c,l,u,d,h,f,p,m,g,v,y,b,w,x,_,k,S=0;const E=new Uint8Array(4);let A,P;const O=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Xoe(e)||!e.output||!e.input&&0!==e.avail_in)return Loe;r=e.state,r.mode===$oe&&(r.mode=Hoe),a=e.next_out,i=e.output,c=e.avail_out,o=e.next_in,n=e.input,s=e.avail_in,l=r.hold,u=r.bits,d=s,h=c,k=Roe;e:for(;;)switch(r.mode){case Foe:if(0===r.wrap){r.mode=Hoe;break}for(;u<16;){if(0===s)break e;s--,l+=n[o++]<>>8&255,r.check=Jne(r.check,E,2,0),l=0,u=0,r.mode=16181;break}if(r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&l)<<8)+(l>>8))%31){e.msg="incorrect header check",r.mode=Goe;break}if((15&l)!==Boe){e.msg="unknown compression method",r.mode=Goe;break}if(l>>>=4,u-=4,_=8+(15&l),0===r.wbits&&(r.wbits=_),_>15||_>r.wbits){e.msg="invalid window size",r.mode=Goe;break}r.dmax=1<>8&1),512&r.flags&&4&r.wrap&&(E[0]=255&l,E[1]=l>>>8&255,r.check=Jne(r.check,E,2,0)),l=0,u=0,r.mode=16182;case 16182:for(;u<32;){if(0===s)break e;s--,l+=n[o++]<>>8&255,E[2]=l>>>16&255,E[3]=l>>>24&255,r.check=Jne(r.check,E,4,0)),l=0,u=0,r.mode=16183;case 16183:for(;u<16;){if(0===s)break e;s--,l+=n[o++]<>8),512&r.flags&&4&r.wrap&&(E[0]=255&l,E[1]=l>>>8&255,r.check=Jne(r.check,E,2,0)),l=0,u=0,r.mode=16184;case 16184:if(1024&r.flags){for(;u<16;){if(0===s)break e;s--,l+=n[o++]<>>8&255,r.check=Jne(r.check,E,2,0)),l=0,u=0}else r.head&&(r.head.extra=null);r.mode=16185;case 16185:if(1024&r.flags&&(f=r.length,f>s&&(f=s),f&&(r.head&&(_=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(n.subarray(o,o+f),_)),512&r.flags&&4&r.wrap&&(r.check=Jne(r.check,n,f,o)),s-=f,o+=f,r.length-=f),r.length))break e;r.length=0,r.mode=16186;case 16186:if(2048&r.flags){if(0===s)break e;f=0;do{_=n[o+f++],r.head&&_&&r.length<65536&&(r.head.name+=String.fromCharCode(_))}while(_&&f>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=$oe;break;case 16189:for(;u<32;){if(0===s)break e;s--,l+=n[o++]<>>=7&u,u-=7&u,r.mode=Woe;break}for(;u<3;){if(0===s)break e;s--,l+=n[o++]<>>=1,u-=1,3&l){case 0:r.mode=16193;break;case 1:if(oae(r),r.mode=qoe,t===joe){l>>>=2,u-=2;break e}break;case 2:r.mode=16196;break;case 3:e.msg="invalid block type",r.mode=Goe}l>>>=2,u-=2;break;case 16193:for(l>>>=7&u,u-=7&u;u<32;){if(0===s)break e;s--,l+=n[o++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=Goe;break}if(r.length=65535&l,l=0,u=0,r.mode=Voe,t===joe)break e;case Voe:r.mode=16195;case 16195:if(f=r.length,f){if(f>s&&(f=s),f>c&&(f=c),0===f)break e;i.set(n.subarray(o,o+f),a),s-=f,o+=f,c-=f,a+=f,r.length-=f;break}r.mode=$oe;break;case 16196:for(;u<14;){if(0===s)break e;s--,l+=n[o++]<>>=5,u-=5,r.ndist=1+(31&l),l>>>=5,u-=5,r.ncode=4+(15&l),l>>>=4,u-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=Goe;break}r.have=0,r.mode=16197;case 16197:for(;r.have>>=3,u-=3}for(;r.have<19;)r.lens[O[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,A={bits:r.lenbits},k=Ooe(0,r.lens,0,19,r.lencode,0,r.work,A),r.lenbits=A.bits,k){e.msg="invalid code lengths set",r.mode=Goe;break}r.have=0,r.mode=16198;case 16198:for(;r.have>>24,v=S>>>16&255,y=65535&S,!(g<=u);){if(0===s)break e;s--,l+=n[o++]<>>=g,u-=g,r.lens[r.have++]=y;else{if(16===y){for(P=g+2;u>>=g,u-=g,0===r.have){e.msg="invalid bit length repeat",r.mode=Goe;break}_=r.lens[r.have-1],f=3+(3&l),l>>>=2,u-=2}else if(17===y){for(P=g+3;u>>=g,u-=g,_=0,f=3+(7&l),l>>>=3,u-=3}else{for(P=g+7;u>>=g,u-=g,_=0,f=11+(127&l),l>>>=7,u-=7}if(r.have+f>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=Goe;break}for(;f--;)r.lens[r.have++]=_}}if(r.mode===Goe)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=Goe;break}if(r.lenbits=9,A={bits:r.lenbits},k=Ooe(1,r.lens,0,r.nlen,r.lencode,0,r.work,A),r.lenbits=A.bits,k){e.msg="invalid literal/lengths set",r.mode=Goe;break}if(r.distbits=6,r.distcode=r.distdyn,A={bits:r.distbits},k=Ooe(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,A),r.distbits=A.bits,k){e.msg="invalid distances set",r.mode=Goe;break}if(r.mode=qoe,t===joe)break e;case qoe:r.mode=Koe;case Koe:if(s>=6&&c>=258){e.next_out=a,e.avail_out=c,e.next_in=o,e.avail_in=s,r.hold=l,r.bits=u,_oe(e,h),a=e.next_out,i=e.output,c=e.avail_out,o=e.next_in,n=e.input,s=e.avail_in,l=r.hold,u=r.bits,r.mode===$oe&&(r.back=-1);break}for(r.back=0;S=r.lencode[l&(1<>>24,v=S>>>16&255,y=65535&S,!(g<=u);){if(0===s)break e;s--,l+=n[o++]<>b)],g=S>>>24,v=S>>>16&255,y=65535&S,!(b+g<=u);){if(0===s)break e;s--,l+=n[o++]<>>=b,u-=b,r.back+=b}if(l>>>=g,u-=g,r.back+=g,r.length=y,0===v){r.mode=16205;break}if(32&v){r.back=-1,r.mode=$oe;break}if(64&v){e.msg="invalid literal/length code",r.mode=Goe;break}r.extra=15&v,r.mode=16201;case 16201:if(r.extra){for(P=r.extra;u>>=r.extra,u-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=16202;case 16202:for(;S=r.distcode[l&(1<>>24,v=S>>>16&255,y=65535&S,!(g<=u);){if(0===s)break e;s--,l+=n[o++]<>b)],g=S>>>24,v=S>>>16&255,y=65535&S,!(b+g<=u);){if(0===s)break e;s--,l+=n[o++]<>>=b,u-=b,r.back+=b}if(l>>>=g,u-=g,r.back+=g,64&v){e.msg="invalid distance code",r.mode=Goe;break}r.offset=y,r.extra=15&v,r.mode=16203;case 16203:if(r.extra){for(P=r.extra;u>>=r.extra,u-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=Goe;break}r.mode=16204;case 16204:if(0===c)break e;if(f=h-c,r.offset>f){if(f=r.offset-f,f>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=Goe;break}f>r.wnext?(f-=r.wnext,p=r.wsize-f):p=r.wnext-f,f>r.length&&(f=r.length),m=r.window}else m=i,p=a-r.offset,f=r.length;f>c&&(f=c),c-=f,r.length-=f;do{i[a++]=m[p++]}while(--f);0===r.length&&(r.mode=Koe);break;case 16205:if(0===c)break e;i[a++]=r.length,c--,r.mode=Koe;break;case Woe:if(r.wrap){for(;u<32;){if(0===s)break e;s--,l|=n[o++]<{if(Xoe(e))return Loe;let t=e.state;return t.window&&(t.window=null),e.state=null,Roe},lae=(e,t)=>{if(Xoe(e))return Loe;const r=e.state;return 0===(2&r.wrap)?Loe:(r.head=t,t.done=!1,Roe)},uae=(e,t)=>{const r=t.length;let n,i,o;return Xoe(e)?Loe:(n=e.state,0!==n.wrap&&n.mode!==Uoe?Loe:n.mode===Uoe&&(i=1,i=Yne(i,t,r,0),i!==n.check)?Noe:(o=aae(e,t,r,r),o?(n.mode=16210,Doe):(n.havedict=1,Roe)))},dae={inflateReset:Qoe,inflateReset2:eae,inflateResetKeep:Joe,inflateInit:e=>tae(e,15),inflateInit2:tae,inflate:sae,inflateEnd:cae,inflateGetHeader:lae,inflateSetDictionary:uae,inflateInfo:"pako inflate (from Nodeca project)"};var hae=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const fae=Object.prototype.toString,{Z_NO_FLUSH:pae,Z_FINISH:mae,Z_OK:gae,Z_STREAM_END:vae,Z_NEED_DICT:yae,Z_STREAM_ERROR:bae,Z_DATA_ERROR:wae,Z_MEM_ERROR:xae}=eie;function _ae(e){this.options=toe.assign({chunkSize:65536,windowBits:15,to:""},e||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&0===(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new ooe,this.strm.avail_out=0;let r=dae.inflateInit2(this.strm,t.windowBits);if(r!==gae)throw new Error(Qne[r]);if(this.header=new hae,dae.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"===typeof t.dictionary?t.dictionary=ioe.string2buf(t.dictionary):"[object ArrayBuffer]"===fae.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=dae.inflateSetDictionary(this.strm,t.dictionary),r!==gae)))throw new Error(Qne[r])}function kae(e,t){const r=new _ae(t);if(r.push(e),r.err)throw r.msg||Qne[r.err];return r.result}_ae.prototype.push=function(e,t){const r=this.strm,n=this.options.chunkSize,i=this.options.dictionary;let o,a,s;if(this.ended)return!1;for(a=t===~~t?t:!0===t?mae:pae,"[object ArrayBuffer]"===fae.call(e)?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){for(0===r.avail_out&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),o=dae.inflate(r,a),o===yae&&i&&(o=dae.inflateSetDictionary(r,i),o===gae?o=dae.inflate(r,a):o===wae&&(o=yae));r.avail_in>0&&o===vae&&r.state.wrap>0&&0!==e[r.next_in];)dae.inflateReset(r),o=dae.inflate(r,a);switch(o){case bae:case wae:case yae:case xae:return this.onEnd(o),this.ended=!0,!1}if(s=r.avail_out,r.next_out&&(0===r.avail_out||o===vae))if("string"===this.options.to){let e=ioe.utf8border(r.output,r.next_out),t=r.next_out-e,i=ioe.buf2string(r.output,e);r.next_out=t,r.avail_out=n-t,t&&r.output.set(r.output.subarray(e,e+t),0),this.onData(i)}else this.onData(r.output.length===r.next_out?r.output:r.output.subarray(0,r.next_out));if(o!==gae||0!==s){if(o===vae)return o=dae.inflateEnd(this.strm),this.onEnd(o),this.ended=!0,!0;if(0===r.avail_in)break}}return!0},_ae.prototype.onData=function(e){this.chunks.push(e)},_ae.prototype.onEnd=function(e){e===gae&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=toe.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};var Sae=function(e,t){return(t=t||{}).raw=!0,kae(e,t)},Eae={Inflate:_ae,inflate:kae,inflateRaw:Sae,ungzip:kae,constants:eie};const{Deflate:Aae,deflate:Pae,deflateRaw:Oae,gzip:Tae}=woe,{Inflate:Cae,inflate:jae,inflateRaw:Rae,ungzip:Iae}=Eae;var Mae=Iae,Lae=r(9673).Buffer;const Nae="function"===typeof Lae,Dae=("function"===typeof TextDecoder&&new TextDecoder,"function"===typeof TextEncoder&&new TextEncoder,Array.prototype.slice.call("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=")),zae=(e=>{let t={};return e.forEach(((e,r)=>t[e]=r)),t})(Dae),Bae=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,Fae=String.fromCharCode.bind(String),Uae="function"===typeof Uint8Array.from?Uint8Array.from.bind(Uint8Array):e=>new Uint8Array(Array.prototype.slice.call(e,0)),$ae=e=>e.replace(/[^A-Za-z0-9\+\/]/g,""),Hae=e=>{let t,r,n,i,o="";const a=e.length%3;for(let s=0;s255||(n=e.charCodeAt(s++))>255||(i=e.charCodeAt(s++))>255)throw new TypeError("invalid character found");t=r<<16|n<<8|i,o+=Dae[t>>18&63]+Dae[t>>12&63]+Dae[t>>6&63]+Dae[63&t]}return a?o.slice(0,a-3)+"===".substring(a):o},Vae=e=>{if(e=e.replace(/\s+/g,""),!Bae.test(e))throw new TypeError("malformed base64.");e+="==".slice(2-(3&e.length));let t,r,n,i="";for(let o=0;o>16&255):64===n?Fae(t>>16&255,t>>8&255):Fae(t>>16&255,t>>8&255,255&t);return i},qae="function"===typeof atob?e=>atob($ae(e)):Nae?e=>Lae.from(e,"base64").toString("binary"):Vae,Kae=Nae?e=>Uae(Lae.from(e,"base64")):e=>Uae(qae(e).split("").map((e=>e.charCodeAt(0)))),Wae=e=>Kae(Gae(e)),Gae=e=>$ae(e.replace(/[-_]/g,(e=>"-"==e?"+":"/"))),Zae=(0,Db.invert)({at:"access_token",a:"authuser",ei:"expires_in",it:"id_token",ii:"instanceId",p:"prompt",sc:"scope",st:"state",vi:"version_info"}),Yae=e=>{const t=new URLSearchParams((r=e.replace("umami://auth/",""),Mae(Wae(r),{to:"string"})));var r;const n=(e,r)=>{var n;return e[r]=null!==(n=t.get(Zae[r]))&&void 0!==n?n:t.get(r),e},i={verifier:"umami",redirectToOpener:"true",typeOfLogin:"google",...n({},"instanceId")},o={hd:"trili.tech",token_type:"Bearer",...["state","access_token","expires_in","scope","id_token","authuser","prompt"].reduce(n,{})};return{channel:`redirect_channel_${i.instanceId}`,data:{instanceParams:i,hashParams:o},...n({},"error")}},Xae=({inputName:e,label:t="Password",placeholder:r="Enter your password",required:n="Password is required",validate:o,...a})=>{const{register:s}=Ug(),[c,l]=(0,i.useState)(!1);return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(PH,{children:t}),(0,xn.jsxs)(C3,{marginTop:"12px",children:[(0,xn.jsx)(mg,{"aria-label":t,autoComplete:"off",placeholder:r,type:c?"text":"password",...s(e,{required:n,minLength:{value:n?8:0,message:"Your password must be at least 8 characters long"},validate:o}),...a}),(0,xn.jsx)(M3,{children:(0,xn.jsx)(Xn,{onClick:()=>l((e=>!e)),tabIndex:-1,variant:"unstyled",children:c?(0,xn.jsx)(_y,{"data-testid":"eye-slash-icon"}):(0,xn.jsx)(xy,{width:"16.5px","data-testid":"eye-icon"})})})]})]})},Jae=({signer:e,onSubmit:t,isLoading:r,isDisabled:n,text:i})=>{const o=Yv({mode:"onBlur",defaultValues:{password:""}}),{handleSubmit:a,formState:{errors:s,isValid:c}}=o,l=c_(),u=(()=>{const e=NU(),t=DU();return async(r,n)=>{if("secret_key"===r.type){const e=t[r.address.pkh];if(!e)throw new Error(`Missing secret key for account ${r.address.pkh}`);return LU(e,n)}{const t=e[r.seedFingerPrint];if(!t)throw new Error(`Missing seedphrase for account ${r.address.pkh}`);const i=await LU(t,n);return jF(i,r.derivationPath,r.curve)}}})(),d=a0(),{isLoading:h,handleAsyncAction:f}=sne(),p=h||r,m=async({password:r})=>f((async()=>{const n=await u(e,r);return t(await OF({type:"mnemonic",secretKey:n,network:l}))})),g=async({password:r})=>f((async()=>{const n=await u(e,r);return t(await OF({type:"secret_key",secretKey:n,network:l}))})),v=async()=>f((async()=>{const{secretKey:e}=await one();return t(await OF({type:"social",secretKey:e,network:l}))})),y=async()=>f((async()=>(d({id:"ledger-sign-toast",description:"Please approve the operation on your Ledger",status:"info",duration:6e4,isClosable:!0}),t(await OF({type:"ledger",account:e,network:l})))),(e=>({description:`${e.message} Please connect your ledger, open Tezos app and try submitting transaction again`,status:"error"}))).finally((()=>d.close("ledger-sign-toast")));switch(e.type){case"secret_key":case"mnemonic":return(0,xn.jsx)(Sn,{width:"100%",children:(0,xn.jsxs)($g,{...o,children:[(0,xn.jsxs)(Im,{isInvalid:!!s.password,marginY:"16px",children:[(0,xn.jsx)(Xae,{"data-testid":"password",inputName:"password"}),s.password&&(0,xn.jsx)(y$,{children:s.password.message})]}),(0,xn.jsx)(Xn,{width:"100%",marginTop:"8px",isDisabled:n||!c,isLoading:p,onClick:a("mnemonic"===e.type?m:g),size:"lg",type:"submit",children:i||"Submit Transaction"})]})});case"social":return(0,xn.jsx)(Xn,{width:"100%",isDisabled:n,isLoading:p,onClick:v,size:"lg",children:i||"Sign with Google"});case"ledger":return(0,xn.jsx)(Xn,{width:"100%",isDisabled:n,isLoading:p,onClick:y,size:"lg",children:i||"Sign with Ledger"})}},Qae=({request:e})=>{const{onClose:t}=(0,i.useContext)(i0),r=FU()(e.sourceAddress),n=a0();return(0,xn.jsxs)(ym,{children:[(0,xn.jsx)(Sm,{marginBottom:"32px",textAlign:"center",children:"Connect with pairing request"}),(0,xn.jsx)(km,{}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(ei,{marginBottom:"12px",size:"l",children:`${e.appMetadata.name}/dApp Pairing Request`}),(0,xn.jsx)(Sn,{padding:"15px",border:"1px solid",borderColor:Xv.gray[500],borderRadius:"4px",backgroundColor:Xv.gray[800],children:(0,xn.jsx)(Am,{color:Xv.gray[450],size:"md",children:e.payload})})]}),(0,xn.jsx)(gg,{justifyContent:"center",display:"flex",padding:"16px 0 0 0",children:(0,xn.jsx)(Jae,{onSubmit:async r=>{const i=await r.signer.sign(e.payload),o={type:S0.SignPayloadResponse,id:e.id,signingType:e.signingType,signature:i.prefixSig};await x3.respond(o),n({description:"Successfully submitted Beacon operation",status:"success"}),t()},signer:r,text:"Connect"})})]})},ese=bn(Sm,{baseStyle:{padding:0,paddingBottom:"32px",textAlign:"center"}}),tse=({title:e="Send",subTitle:t="Send one or insert into batch"})=>(0,xn.jsxs)(ese,{children:[(0,xn.jsx)(ei,{size:"2xl",children:e}),(0,xn.jsx)(Am,{marginTop:"10px",color:Xv.gray[400],textAlign:"center",size:"sm",children:t}),(0,xn.jsx)(km,{})]});function rse(e){const{viewBox:t="0 0 24 24",d:r,displayName:n,defaultProps:o={}}=e,a=i.Children.toArray(e.path),s=wn(((e,n)=>(0,xn.jsx)(wm,{ref:n,viewBox:t,...o,...e,children:a.length?a:(0,xn.jsx)("path",{fill:"currentColor",d:r})})));return s.displayName=n,s}var nse=rse({d:"M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z",displayName:"ArrowBackIcon"});const ise=({onClick:e})=>(0,xn.jsx)(s8,{...kJ,"aria-label":"Back","data-testid":"back-button",icon:(0,xn.jsx)(nse,{width:"24px",height:"20px"}),onClick:e,size:"sm",variant:"ghost"}),ose=(e,t)=>{let r;switch(e){case"implicit":r="batch"===t?"Submit":"Confirm";break;case"proposal":r="Propose"}switch(t){case"single":return`${r} Transaction`;case"batch":return`${r} Batch`}},ase=e=>{switch(e.type){case"ledger":case"social":return;case"mnemonic":case"secret_key":return"Enter your password to confirm this transaction."}},sse=({goBack:e,mode:t,operationsType:r,signer:n,title:i,description:o,children:a})=>(0,xn.jsxs)(ese,{children:[e&&(0,xn.jsx)(ise,{onClick:e}),(0,xn.jsx)(ei,{"data-testid":"sign-page-header",size:"2xl",children:i||ose(r,t)}),(0,xn.jsx)(Am,{marginTop:"10px",color:Xv.gray[400],textAlign:"center",size:"sm",children:o||ase(n)}),(0,xn.jsx)(km,{}),a]}),cse=({operation:e,message:t,mode:r})=>(0,xn.jsxs)(sse,{mode:r,operationsType:e.type,signer:e.signer,children:[(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"center",marginTop:"10px",children:[(0,xn.jsx)(ei,{marginRight:"4px",color:Xv.gray[450],size:"sm",children:"Network:"}),(0,xn.jsx)(Am,{color:Xv.gray[400],size:"sm",children:(0,Db.capitalize)(t.network.type)})]}),(0,xn.jsxs)(ab,{alignItems:"center",marginTop:"16px",padding:"15px",borderRadius:"4px",backgroundColor:Xv.gray[800],children:[(0,xn.jsx)(U5,{width:"30px",marginRight:"12px",ratio:1,children:(0,xn.jsx)(tb,{borderRadius:"4px",src:t.appMetadata.icon})}),(0,xn.jsx)(ei,{size:"sm",children:t.appMetadata.name})]})]}),lse=e=>(0,xn.jsx)(wm,{width:"14px",height:"14px",fill:"none",stroke:Xv.gray[450],viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M13 1L7 7M13 1V4.375M13 1H9.625M12.25 7.375V10.6C12.25 11.4401 12.25 11.8601 12.0865 12.181C11.9427 12.4632 11.7132 12.6927 11.431 12.8365C11.1101 13 10.6901 13 9.85 13H3.4C2.55992 13 2.13988 13 1.81901 12.8365C1.53677 12.6927 1.3073 12.4632 1.16349 12.181C1 11.8601 1 11.4401 1 10.6V4.15C1 3.30992 1 2.88988 1.16349 2.56901C1.3073 2.28677 1.53677 2.0573 1.81901 1.91349C2.13988 1.75 2.55992 1.75 3.4 1.75H6.625",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),use=({hash:e})=>{const t=`${c_().tzktExplorerUrl}/${e}`,{onClose:r}=(0,i.useContext)(i0),n=AQ();return(0,xn.jsxs)(ym,{paddingY:"20px",children:[(0,xn.jsx)(km,{}),(0,xn.jsx)(Sm,{textAlign:"center",children:(0,xn.jsx)(ei,{children:"Operation Submitted"})}),(0,xn.jsx)(Pm,{children:(0,xn.jsx)(ab,{justifyContent:"center",marginTop:"10px",children:(0,xn.jsx)(Am,{color:"text.dark",textAlign:"center",size:"sm",children:"You can follow this operation's progress in the Operations section. It may take up to 30 seconds to appear."})})}),(0,xn.jsxs)(gg,{justifyContent:"center",flexDirection:"column",width:"100%",children:[(0,xn.jsx)(Xn,{width:"100%",onClick:()=>{r(),n("/operations")},size:"lg",children:"See all Operations"}),(0,xn.jsx)(QQ,{rel:"noopener noreferrer",target:"_blank",to:t,children:(0,xn.jsx)(ab,{alignItems:"center",marginTop:"24px",children:(0,xn.jsxs)(Xn,{variant:"CTAWithIcon",children:[(0,xn.jsx)(Am,{marginRight:"4px",children:"View in Tzkt"}),(0,xn.jsx)(lse,{stroke:"currentcolor"})]})})})]})]})},dse=(e,t)=>{const{isLoading:r,handleAsyncAction:n}=sne(),{openWith:o}=(0,i.useContext)(i0);return{isSigning:r,onSign:async r=>n((async()=>{const{opHash:n}=await uU(e,r),i={type:S0.OperationResponse,id:t.id,transactionHash:n};return await x3.respond(i),o((0,xn.jsx)(use,{hash:n}))}),(e=>({description:`Failed to confirm Beacon operation: ${e.message}`})))}},hse=({fee:e})=>(0,xn.jsxs)(ab,{alignItems:"center",children:[(0,xn.jsx)(ei,{marginRight:"4px",color:Xv.gray[450],size:"sm",children:"Fee:"}),(0,xn.jsx)(Am,{color:Xv.gray[400],"data-testid":"fee",size:"sm",children:pU(e)})]}),fse=({operation:e,fee:t,message:r})=>{const{isSigning:n,onSign:i}=dse(e,r),{signer:o}=e,a=e.operations.length;return(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(cse,{message:r,mode:"batch",operation:e}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(h3,{allowToggle:!0,children:(0,xn.jsxs)(f3,{background:Xv.gray[800],border:"none",borderRadius:"8px",children:[(0,xn.jsxs)(p3,{children:[(0,xn.jsx)(ei,{flex:"1",textAlign:"left",paddingY:"6px",size:"sm",children:"Operations"}),(0,xn.jsx)(m3,{})]}),(0,xn.jsx)(w3,{children:(0,xn.jsx)(P3,{overflowY:"auto",maxHeight:"200px",value:r.operationDetails})})]})}),(0,xn.jsx)(PH,{marginTop:"16px",children:"From"}),(0,xn.jsx)(Y4,{address:o.address}),(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",marginY:"12px",paddingX:"4px",children:[(0,xn.jsxs)(ab,{children:[(0,xn.jsx)(Am,{marginRight:"4px",color:Xv.gray[450],size:"sm",children:"Transactions:"}),(0,xn.jsx)(Am,{color:Xv.gray[400],"data-testid":"transaction-length",size:"sm",children:a})]}),(0,xn.jsx)(hse,{fee:t})]})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isLoading:n,onSubmit:i,signer:o,text:ose(e.type,"batch")})})]})})},pse=({mutezAmount:e})=>(0,xn.jsxs)(ab,{alignItems:"center",height:"60px",padding:"15px",background:Xv.gray[800],borderRadius:"4px",children:[(0,xn.jsx)(Xy,{marginRight:"12px"}),(0,xn.jsx)(ab,{alignItems:"end",children:(0,xn.jsx)(G4,{number:pU(e)})})]}),mse=({operation:e,fee:t,message:r})=>{const{amount:n,contract:i,entrypoint:o,args:a}=e.operations[0],{isSigning:s,onSign:c}=dse(e,r);return(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(cse,{message:r,mode:"single",operation:e}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(pse,{mutezAmount:n}),(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,xn.jsx)(hse,{fee:t})}),(0,xn.jsx)(PH,{marginTop:"24px",children:"From "}),(0,xn.jsx)(Y4,{address:e.sender.address}),(0,xn.jsx)(PH,{marginTop:"24px",children:"To "}),(0,xn.jsx)(Y4,{address:i}),(0,xn.jsx)(PH,{marginTop:"24px",children:"Contract Call Parameter"}),(0,xn.jsx)(h3,{allowToggle:!0,children:(0,xn.jsxs)(f3,{background:Xv.gray[800],border:"none",borderRadius:"8px",children:[(0,xn.jsxs)(p3,{children:[(0,xn.jsx)(Sn,{flex:"1",textAlign:"left",children:"JSON"}),(0,xn.jsx)(m3,{})]}),(0,xn.jsx)(w3,{children:(0,xn.jsx)(P3,{value:{entrypoint:o,values:a}})})]})})]}),(0,xn.jsx)(gg,{padding:"16px 0 0 0",children:(0,xn.jsx)(Jae,{isLoading:s,onSubmit:c,signer:e.signer,text:ose(e.type,"single")})})]})})},gse=({operation:e,fee:t,message:r})=>{const{recipient:n}=e.operations[0],{isSigning:i,onSign:o}=dse(e,r);return(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(cse,{message:r,mode:"single",operation:e}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(PH,{children:"From"}),(0,xn.jsx)(Y4,{address:e.signer.address}),(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,xn.jsx)(ab,{alignItems:"center",children:(0,xn.jsx)(hse,{fee:t})})}),(0,xn.jsx)(PH,{children:"To"}),(0,xn.jsx)(Y4,{address:n})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isLoading:i,onSubmit:o,signer:e.signer,text:ose(e.type,"single")})})]})})},vse=({operation:e,fee:t,message:r})=>{const{amount:n,recipient:i}=e.operations[0],{isSigning:o,onSign:a}=dse(e,r);return(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(cse,{message:r,mode:"single",operation:e}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(pse,{mutezAmount:n}),(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,xn.jsx)(hse,{fee:t})}),(0,xn.jsx)(PH,{marginTop:"24px",children:"From "}),(0,xn.jsx)(Y4,{address:e.sender.address}),(0,xn.jsx)(PH,{marginTop:"24px",children:"To "}),(0,xn.jsx)(Y4,{address:i})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isLoading:o,onSubmit:a,signer:e.signer,text:ose(e.type,"single")})})]})})},yse=({operation:e,fee:t,message:r})=>{const{isSigning:n,onSign:i}=dse(e,r);return(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(cse,{message:r,mode:"single",operation:e}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(PH,{children:"From"}),(0,xn.jsx)(Y4,{address:e.signer.address}),(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"end",marginTop:"12px",paddingX:"4px",children:(0,xn.jsx)(hse,{fee:t})})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isLoading:n,onSubmit:i,signer:e.signer,text:ose(e.type,"single")})})]})})},bse=({operation:e,fee:t,message:r})=>{switch(e.operations[0].type){case"tez":return(0,xn.jsx)(vse,{fee:t,message:r,operation:e});case"contract_call":return(0,xn.jsx)(mse,{fee:t,message:r,operation:e});case"delegation":return(0,xn.jsx)(gse,{fee:t,message:r,operation:e});case"undelegation":return(0,xn.jsx)(yse,{fee:t,message:r,operation:e});case"fa1.2":case"fa2":case"contract_origination":throw new Error("Unsupported operation type")}},wse=(e,t)=>{if(0===e.length)throw new Error("Empty operation details!");const r=e.map((e=>xse(e,t)));return{type:"implicit",sender:t,operations:r,signer:t}},xse=(e,t)=>{switch(e.kind){case P0.TRANSACTION:{const{destination:t,amount:r,parameters:n}=e;return DE(t)&&n?{type:"contract_call",amount:r,contract:BE(t),entrypoint:n.entrypoint,args:n.value}:{type:"tez",amount:r,recipient:FE(e.destination)}}case P0.DELEGATION:{const{delegate:r}=e;return r?{type:"delegation",sender:t.address,recipient:FE(r)}:{type:"undelegation",sender:t.address}}default:throw new Error(`Unsupported operation kind: ${e.kind}`)}},_se=({children:e})=>{const t=a0(),r=(()=>{const{openWith:e}=(0,i.useContext)(i0),{handleAsyncAction:t}=sne(),r=qU(),n=c_();return i=>{t((async()=>{let t;switch(i.type){case S0.PermissionRequest:t=(0,xn.jsx)(a8,{request:i});break;case S0.SignPayloadRequest:t=(0,xn.jsx)(Qae,{request:i});break;case S0.OperationRequest:{const e=r(i.sourceAddress),o=wse(i.operationDetails,e),a=await LF(o,n);t=1===o.operations.length?(0,xn.jsx)(bse,{fee:a,message:i,operation:o}):(0,xn.jsx)(fse,{fee:a,message:i,operation:o});break}default:throw new Error(`Unknown Beacon message type: ${i.type}`)}return e(t)}),(e=>({description:`Error while processing Beacon request: ${e.message}`})))}})();return(0,i.useEffect)((()=>{x3.init().then((()=>x3.connect(r))).catch((e=>{t({status:e,description:`Failed to connect to Beacon: ${e.message}`})}))})),e};var kse=class extends eV{constructor(e,t){super(),this.options=t,this.#S=e,this.#E=null,this.bindMethods(),this.setOptions(t)}#S;#A=void 0;#P=void 0;#O=void 0;#T;#C;#E;#j;#R;#I;#M;#L;#N;#D=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.size&&(this.#A.addObserver(this),Sse(this.#A,this.options)?this.#z():this.updateResult(),this.#B())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Ese(this.#A,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Ese(this.#A,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#F(),this.#U(),this.#A.removeObserver(this)}setOptions(e,t){const r=this.options,n=this.#A;if(this.options=this.#S.defaultQueryOptions(e),void 0!==this.options.enabled&&"boolean"!==typeof this.options.enabled)throw new Error("Expected enabled to be a boolean");this.#$(),this.#A.setOptions(this.options),r._defaulted&&!qH(this.options,r)&&this.#S.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#A,observer:this});const i=this.hasListeners();i&&Ase(this.#A,n,this.options,r)&&this.#z(),this.updateResult(t),!i||this.#A===n&&this.options.enabled===r.enabled&&this.options.staleTime===r.staleTime||this.#H();const o=this.#V();!i||this.#A===n&&this.options.enabled===r.enabled&&o===this.#N||this.#q(o)}getOptimisticResult(e){const t=this.#S.getQueryCache().build(this.#S,e),r=this.createResult(t,e);return function(e,t){if(!qH(e.getCurrentResult(),t))return!0;return!1}(this,r)&&(this.#O=r,this.#C=this.options,this.#T=this.#A.state),r}getCurrentResult(){return this.#O}trackResult(e,t){const r={};return Object.keys(e).forEach((n=>{Object.defineProperty(r,n,{configurable:!1,enumerable:!0,get:()=>(this.trackProp(n),t?.(n),e[n])})})),r}trackProp(e){this.#D.add(e)}getCurrentQuery(){return this.#A}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){const t=this.#S.defaultQueryOptions(e),r=this.#S.getQueryCache().build(this.#S,t);return r.isFetchingOptimistic=!0,r.fetch().then((()=>this.createResult(r,t)))}fetch(e){return this.#z({...e,cancelRefetch:e.cancelRefetch??!0}).then((()=>(this.updateResult(),this.#O)))}#z(e){this.#$();let t=this.#A.fetch(this.options,e);return e?.throwOnError||(t=t.catch(NH)),t}#H(){if(this.#F(),LH||this.#O.isStale||!DH(this.options.staleTime))return;const e=zH(this.#O.dataUpdatedAt,this.options.staleTime)+1;this.#M=setTimeout((()=>{this.#O.isStale||this.updateResult()}),e)}#V(){return("function"===typeof this.options.refetchInterval?this.options.refetchInterval(this.#A):this.options.refetchInterval)??!1}#q(e){this.#U(),this.#N=e,!LH&&!1!==this.options.enabled&&DH(this.#N)&&0!==this.#N&&(this.#L=setInterval((()=>{(this.options.refetchIntervalInBackground||tV.isFocused())&&this.#z()}),this.#N))}#B(){this.#H(),this.#q(this.#V())}#F(){this.#M&&(clearTimeout(this.#M),this.#M=void 0)}#U(){this.#L&&(clearInterval(this.#L),this.#L=void 0)}createResult(e,t){const r=this.#A,n=this.options,i=this.#O,o=this.#T,a=this.#C,s=e!==r?e.state:this.#P,{state:c}=e;let l,{error:u,errorUpdatedAt:d,fetchStatus:h,status:f}=c,p=!1;if(t._optimisticResults){const i=this.hasListeners(),o=!i&&Sse(e,t),a=i&&Ase(e,r,t,n);(o||a)&&(h=iV(e.options.networkMode)?"fetching":"paused",void 0===c.data&&(f="pending")),"isRestoring"===t._optimisticResults&&(h="idle")}if(t.select&&void 0!==c.data)if(i&&c.data===o?.data&&t.select===this.#j)l=this.#R;else try{this.#j=t.select,l=t.select(c.data),l=ZH(i?.data,l,t),this.#R=l,this.#E=null}catch(w){this.#E=w}else l=c.data;if(void 0!==t.placeholderData&&void 0===l&&"pending"===f){let e;if(i?.isPlaceholderData&&t.placeholderData===a?.placeholderData)e=i.data;else if(e="function"===typeof t.placeholderData?t.placeholderData(this.#I?.state.data,this.#I):t.placeholderData,t.select&&void 0!==e)try{e=t.select(e),this.#E=null}catch(w){this.#E=w}void 0!==e&&(f="success",l=ZH(i?.data,e,t),p=!0)}this.#E&&(u=this.#E,l=this.#R,d=Date.now(),f="error");const m="fetching"===h,g="pending"===f,v="error"===f,y=g&&m,b=void 0!==c.data;return{status:f,fetchStatus:h,isPending:g,isSuccess:"success"===f,isError:v,isInitialLoading:y,isLoading:y,data:l,dataUpdatedAt:c.dataUpdatedAt,error:u,errorUpdatedAt:d,failureCount:c.fetchFailureCount,failureReason:c.fetchFailureReason,errorUpdateCount:c.errorUpdateCount,isFetched:c.dataUpdateCount>0||c.errorUpdateCount>0,isFetchedAfterMount:c.dataUpdateCount>s.dataUpdateCount||c.errorUpdateCount>s.errorUpdateCount,isFetching:m,isRefetching:m&&!g,isLoadingError:v&&!b,isPaused:"paused"===h,isPlaceholderData:p,isRefetchError:v&&b,isStale:Pse(e,t),refetch:this.refetch}}updateResult(e){const t=this.#O,r=this.createResult(this.#A,this.options);if(this.#T=this.#A.state,this.#C=this.options,void 0!==this.#T.data&&(this.#I=this.#A),qH(r,t))return;this.#O=r;const n={};!1!==e?.listeners&&(()=>{if(!t)return!0;const{notifyOnChangeProps:e}=this.options,r="function"===typeof e?e():e;if("all"===r||!r&&!this.#D.size)return!0;const n=new Set(r??this.#D);return this.options.throwOnError&&n.add("error"),Object.keys(this.#O).some((e=>{const r=e;return this.#O[r]!==t[r]&&n.has(r)}))})()&&(n.listeners=!0),this.#K({...n,...e})}#$(){const e=this.#S.getQueryCache().build(this.#S,this.options);if(e===this.#A)return;const t=this.#A;this.#A=e,this.#P=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#B()}#K(e){QH.batch((()=>{e.listeners&&this.listeners.forEach((e=>{e(this.#O)})),this.#S.getQueryCache().notify({query:this.#A,type:"observerResultsUpdated"})}))}};function Sse(e,t){return function(e,t){return!1!==t.enabled&&void 0===e.state.data&&!("error"===e.state.status&&!1===t.retryOnMount)}(e,t)||void 0!==e.state.data&&Ese(e,t,t.refetchOnMount)}function Ese(e,t,r){if(!1!==t.enabled){const n="function"===typeof r?r(e):r;return"always"===n||!1!==n&&Pse(e,t)}return!1}function Ase(e,t,r,n){return(e!==t||!1===n.enabled)&&(!r.suspense||"error"!==e.state.status)&&Pse(e,r)}function Pse(e,t){return!1!==t.enabled&&e.isStaleByTime(t.staleTime)}function Ose(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var Tse=i.createContext(Ose()),Cse=()=>i.useContext(Tse),jse=i.createContext(!1),Rse=()=>i.useContext(jse);jse.Provider;var Ise=(e,t)=>{(e.suspense||e.throwOnError)&&(t.isReset()||(e.retryOnMount=!1))},Mse=e=>{i.useEffect((()=>{e.clearReset()}),[e])},Lse=({result:e,errorResetBoundary:t,throwOnError:r,query:n})=>e.isError&&!t.isReset()&&!e.isFetching&&n&&function(e,t){return"function"===typeof e?e(...t):!!e}(r,[e.error,n]),Nse=e=>{e.suspense&&"number"!==typeof e.staleTime&&(e.staleTime=1e3)},Dse=(e,t)=>e?.suspense&&t.isPending,zse=(e,t,r)=>t.fetchOptimistic(e).catch((()=>{r.clearReset()}));function Bse(e,t){return function(e,t,r){const n=vV(r),o=Rse(),a=Cse(),s=n.defaultQueryOptions(e);s._optimisticResults=o?"isRestoring":"optimistic",Nse(s),Ise(s,a),Mse(a);const[c]=i.useState((()=>new t(n,s))),l=c.getOptimisticResult(s);if(i.useSyncExternalStore(i.useCallback((e=>{const t=o?()=>{}:c.subscribe(QH.batchCalls(e));return c.updateResult(),t}),[c,o]),(()=>c.getCurrentResult()),(()=>c.getCurrentResult())),i.useEffect((()=>{c.setOptions(s,{listeners:!1})}),[s,c]),Dse(s,l))throw zse(s,c,a);if(Lse({result:l,errorResetBoundary:a,throwOnError:s.throwOnError,query:n.getQueryCache().get(s.queryHash)}))throw l.error;return s.notifyOnChangeProps?l:c.trackResult(l)}(e,kse,t)}const Fse=1963879877,Use=-1890025422,$se=e=>({address:BE(e.address),threshold:Number(e.storage.threshold),signers:e.storage.signers.map(FE),pendingOperationsBigmapId:e.storage.pending_ops}),Hse=async(e,t)=>tU((async()=>{const r=await(e=>tU((async()=>{try{const t=`${e.tzktApiUrl}/v1/contracts?typeHash=1963879877&codeHash=-1890025422&includeStorage=true&limit=10000`,{data:r}=await hF.get(t);return r}catch(t){throw new Error(`Error fetching same contracts from tzkt: ${t.message}`)}})))(t);return r.filter((({storage:{signers:t}})=>{if(!(0,Db.every)(t,zE))return!1;const r=t.filter((t=>e.has(t)));return r.length>0})).map($se)})),Vse=e=>{const{bigmap:t,key:r,value:n}=e;if(null===r||null===n)throw new Error("parseMultisigOperation failed");return{id:r,bigmapId:t,rawActions:n.actions,approvals:n.approvals.map(FE)}},qse=async(e,t)=>0===e.length?[]:tU((async()=>{const r=e.map((e=>e.pendingOperationsBigmapId)),n=await((e,t)=>0===e.length?Promise.resolve([]):tU((async()=>{const r=`${t.tzktApiUrl}/v1/bigmaps/keys?active=true&bigmap.in=${e.join(",")}&limit=10000`,{data:n}=await hF.get(r);return n})))(r,t);return(0,Db.compact)(n.map(Vse))})),Kse=async(e,t,r)=>{const n=await qse(r,t);e(bH.setPendingOperations(n.flat()))},Wse=async(e,t,r)=>{const n=await rU(r,t);e(aH.updateTezBalance(n.flat()))},Gse=async(e,t,r)=>{const n=await nU(r,t),i=n.flat().map((({token:e,lastLevel:t})=>({...e,lastLevel:t})));e(_H.addTokens({network:t,tokens:i})),e(aH.updateTokenBalance(n.flat()))},Zse=async e=>{const t=await(async()=>{const{data:{data:{priceUsd:e}}}=await hF.get("https://api.coincap.io/v2/assets/tezos");return null!==e&&void 0!==e?e:null})();return e(aH.updateConversionRate(t)),null},Yse=()=>{const e=iw(),t=zU(),r=ow((e=>e.assets.refetchTrigger)),n=c_(),o=a0(),a=t.map((e=>e.address.pkh)),s=(0,i.useCallback)((t=>{t&&(e(gH.actions.add(ane(t))),o({description:`Data fetching error: ${t.message}`,status:"error",isClosable:!0}))}),[e,o]),{error:c}=Bse({queryKey:["allAssets",e,n,a,r],queryFn:()=>(async(e,t,r)=>{try{e(aH.setIsLoading(!0));const n=await Hse(new Set(r),t);e(bH.setMultisigs(n));const i=[...r,...n.map((e=>e.address.pkh))];return await Promise.all([Kse(e,t,n),Wse(e,t,i),Gse(e,t,i)]),e(aH.setLastTimeUpdated((new Date).toUTCString())),null}finally{e(aH.setIsLoading(!1))}})(e,n,a),retry:!1,refetchInterval:15e3,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),{error:l}=Bse({queryKey:["conversionRate",e],queryFn:()=>Zse(e),refetchInterval:3e5,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),{error:u}=Bse({queryKey:["blockNumber",e,n],queryFn:()=>(async(e,t)=>{const r=await cU(t);return e(aH.updateBlockLevel(r)),null})(e,n),retry:!1,refetchInterval:15e3,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),{error:d}=Bse({queryKey:["bakers",e,n],queryFn:()=>(async(e,t)=>{const r=(await lU(t)).map((({address:e,alias:t,stakingBalance:r})=>({address:e,stakingBalance:r,name:null!==t&&void 0!==t?t:"Unknown baker"})));return e(aH.updateBakers(r)),null})(e,n),retry:!1,refetchInterval:72e5,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1});(0,i.useEffect)((()=>s(c)),[c,s]),(0,i.useEffect)((()=>s(l)),[l,s]),(0,i.useEffect)((()=>s(u)),[u,s]),(0,i.useEffect)((()=>s(d)),[d,s])},Xse=yS.object({id:yS.string(),type:yS.string(),name:yS.string(),publicKey:yS.string(),version:yS.string(),icon:yS.string().optional(),relayServer:yS.string().optional()}).parse,Jse="beaconPeers",Qse=()=>{const e=vV();return()=>e.refetchQueries({queryKey:[Jse]})},ece=()=>{const e=Qse(),t=(()=>{const e=Lb();return t=>e(dH.actions.removeConnection({dAppId:t}))})();return r=>x3.removePeer(r).then((()=>t(r.senderId))).then(e)},tce=()=>{const e=Qse(),t=a0();return r=>(new f1).deserialize(r).then(Xse).then((e=>x3.addPeer(e))).then(e).catch((e=>{t({description:"Beacon sync code in the clipboard is invalid. Please copy a beacon sync code from the dApp",status:"error"}),console.error(e)}))};var rce=wn(((e,t)=>{var r;const{overflow:n,overflowX:i,className:o,...a}=e;return(0,xn.jsx)(bn.div,{ref:t,className:v("chakra-table__container",o),...a,__css:{display:"block",whiteSpace:"nowrap",WebkitOverflowScrolling:"touch",overflowX:null!=(r=null!=n?n:i)?r:"auto",overflowY:"hidden",maxWidth:"100%"}})})),[nce,ice]=Rn({name:"TableStylesContext",errorMessage:"useTableStyles returned is 'undefined'. Seems you forgot to wrap the components in \"
\" "}),oce=wn(((e,t)=>{const r=qn("Table",e),{className:n,layout:i,...o}=ht(e);return(0,xn.jsx)(nce,{value:r,children:(0,xn.jsx)(bn.table,{ref:t,__css:{tableLayout:i,...r.table},className:v("chakra-table",n),...o})})}));oce.displayName="Table";var ace=wn(((e,t)=>{const r=ice();return(0,xn.jsx)(bn.tbody,{...e,ref:t,__css:r.tbody})})),sce=wn(((e,t)=>{const r=ice();return(0,xn.jsx)(bn.tr,{...e,ref:t,__css:r.tr})})),cce=wn((({isNumeric:e,...t},r)=>{const n=ice();return(0,xn.jsx)(bn.td,{...t,ref:r,__css:n.td,"data-is-numeric":e})}));const lce="TOAST_ID",uce=({pkh:e,formatAddress:t=!0,copyable:r=!0,iconColor:n=Xv.gray[600],...i})=>(0,xn.jsx)(dce,{copyValue:r?e:void 0,displayText:t?mU(e):e,iconColor:n,toastMessage:"Address copied to clipboard",...i}),dce=({displayText:e,copyValue:t,toastMessage:r,iconColor:n,...i})=>{const o=a0();return(0,xn.jsxs)(ab,{alignItems:"center",...i,children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[400],size:"sm",children:e}),t&&(0,xn.jsx)(Py,{stroke:Xv.gray[450],_hover:{stroke:Xv.green},cursor:"pointer",onClick:()=>(async()=>{t&&(await navigator.clipboard.writeText(t),r&&!o.isActive(lce)&&o({status:"success",description:r,id:lce,isClosable:!0}))})()})]})},hce=({title:e,buttonText:t,contact:r})=>{const n=iw(),o=VU(),{isOpen:a,onClose:s}=(0,i.useContext)(i0),{handleSubmit:c,formState:{isValid:l,errors:u},register:d,reset:h,getValues:f}=Yv({mode:"onBlur",defaultValues:r}),p=void 0!==r,m=UU(),{nameExistsInContacts:g,addressExistsInContacts:v}=AU(),y=(0,i.useRef)(h);return(0,i.useEffect)((()=>{a&&y.current(r)}),[a,r]),(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{onSubmit:c((({name:e,pkh:t})=>{var r;r={name:e.trim(),pkh:t},o(r.pkh)||(n(pH.upsert(r)),s()),h()})),children:[(0,xn.jsx)(Sm,{textAlign:"center",children:e}),(0,xn.jsx)(km,{}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsxs)(Im,{isInvalid:!!u.name,marginY:5,children:[(0,xn.jsx)(PH,{children:"Name"}),(0,xn.jsx)(mg,{type:"text",...d("name",{required:"Name is required",validate:e=>m.map((e=>e.label)).includes(e)?"Name already used in accounts":!g(e.trim())||"Name already registered"}),placeholder:"Enter contact's name"}),u.name&&(0,xn.jsx)(y$,{children:u.name.message})]}),(0,xn.jsxs)(Im,{isInvalid:!!u.pkh,marginY:5,children:[(0,xn.jsx)(PH,{children:"Address"}),(0,xn.jsx)(mg,{type:"text",...d("pkh",{required:"Address is required",validate:e=>NE(e)?p?f("name")!==r.name:o(e)?"Address already used in accounts":!v(e)||"Address already registered":"Invalid address"}),disabled:p,placeholder:"Enter contact\u2019s tz address",value:null===r||void 0===r?void 0:r.pkh,variant:p?"filled":void 0}),u.pkh&&(0,xn.jsx)(y$,{children:u.pkh.message})]})]}),(0,xn.jsx)(gg,{padding:"16px 0 0 0",children:(0,xn.jsx)(Sn,{width:"100%",children:(0,xn.jsx)(Xn,{width:"100%",marginBottom:2,isDisabled:!l,size:"lg",type:"submit",children:t})})})]})})},fce=({contact:e})=>{const t=iw(),{onClose:r}=(0,i.useContext)(i0);return(0,xn.jsxs)(ym,{children:[(0,xn.jsx)(Sm,{marginBottom:"10px",textAlign:"center",children:"Delete Contact"}),(0,xn.jsx)(km,{}),(0,xn.jsx)(Pm,{children:(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",flexDirection:"column",children:[(0,xn.jsx)(Am,{color:Xv.gray[400],size:"sm",children:"Are you sure you want to remove this contact?"}),(0,xn.jsxs)(Sn,{marginTop:5,children:[(0,xn.jsx)(ei,{marginBottom:3,textAlign:"center",size:"md",children:e.name}),(0,xn.jsx)(uce,{pkh:e.pkh})]})]})}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Sn,{width:"100%",children:(0,xn.jsx)(Xn,{width:"100%",marginBottom:2,onClick:()=>{t(pH.remove(e.pkh)),r()},variant:"warning",children:"Delete"})})})]})};function pce(e){const{isOpen:t,ref:r}=e,[n,o]=(0,i.useState)(t),[a,s]=(0,i.useState)(!1);(0,i.useEffect)((()=>{a||(o(t),s(!0))}),[t,a,n]),T4((()=>r.current),"animationend",(()=>{o(t)}));return{present:!(!t&&!n),onComplete(){var e;const t=function(e){var t,r;return null!=(r=null==(t=Ap(e))?void 0:t.defaultView)?r:window}(r.current),n=new t.CustomEvent("animationend",{bubbles:!0});null==(e=r.current)||e.dispatchEvent(n)}}}var mce=()=>"undefined"!==typeof window;var gce=e=>mce()&&e.test(function(){var e;const t=navigator.userAgentData;return null!=(e=null==t?void 0:t.platform)?e:navigator.platform}()),vce=()=>gce(/mac|iphone|ipad|ipod/i)&&(e=>mce()&&e.test(navigator.vendor))(/apple/i);function yce(e){const t=e.current;if(!t)return!1;const r=function(e){return Ap(e).activeElement}(t);return!!r&&(!t.contains(r)&&!(!((n=r)&&Ep(n)&&Cp(n))||Op(n)));var n}function bce(e,t){const{shouldFocus:r,visible:n,focusRef:i}=t,o=r&&!n;$m((()=>{if(!o)return;if(yce(e))return;const t=(null==i?void 0:i.current)||e.current;let r;return t?(r=requestAnimationFrame((()=>{t.focus({preventScroll:!0})})),()=>{cancelAnimationFrame(r)}):void 0}),[o,e,i])}var wce={preventScroll:!0,shouldFocus:!1};function xce(e){const{wasSelected:t,enabled:r,isSelected:n,mode:i="unmount"}=e;return!r||(!!n||!("keepMounted"!==i||!t))}var _ce={click:"click",hover:"hover"};function kce(e={}){const{closeOnBlur:t=!0,closeOnEsc:r=!0,initialFocusRef:n,id:o,returnFocusOnClose:a=!0,autoFocus:s=!0,arrowSize:c,arrowShadowColor:l,trigger:u=_ce.click,openDelay:d=200,closeDelay:h=200,isLazy:f,lazyBehavior:p="unmount",computePositionOnMount:m,...g}=e,{isOpen:v,onClose:y,onOpen:b,onToggle:w}=O4(e),x=(0,i.useRef)(null),_=(0,i.useRef)(null),k=(0,i.useRef)(null),E=(0,i.useRef)(!1),A=(0,i.useRef)(!1);v&&(A.current=!0);const[P,O]=(0,i.useState)(!1),[T,C]=(0,i.useState)(!1),j=(0,i.useId)(),R=null!=o?o:j,[I,M,L,N]=["popover-trigger","popover-content","popover-header","popover-body"].map((e=>`${e}-${R}`)),{referenceRef:D,getArrowProps:z,getPopperProps:B,getArrowInnerProps:F,forceUpdate:U}=A4({...g,enabled:v||!!m}),$=pce({isOpen:v,ref:k});!function(e){const{ref:t,elements:r,enabled:n}=e,i=()=>{var e,r;return null!=(r=null==(e=t.current)?void 0:e.ownerDocument)?r:document};T4(i,"pointerdown",(e=>{if(!vce()||!n)return;const o=e.target,a=(null!=r?r:[t]).some((e=>{const t="current"in e?e.current:e;return(null==t?void 0:t.contains(o))||t===o}));i().activeElement!==o&&a&&(e.preventDefault(),o.focus())}))}({enabled:v,ref:_}),bce(k,{focusRef:_,visible:v,shouldFocus:a&&u===_ce.click}),function(e,t=wce){const{focusRef:r,preventScroll:n,shouldFocus:o,visible:a}=t,s="current"in e?e.current:e,c=o&&a,l=(0,i.useRef)(c),u=(0,i.useRef)(a);Si((()=>{!u.current&&a&&(l.current=c),u.current=a}),[a,c]);const d=(0,i.useCallback)((()=>{if(a&&s&&l.current&&(l.current=!1,!s.contains(document.activeElement)))if(null==r?void 0:r.current)requestAnimationFrame((()=>{var e;null==(e=r.current)||e.focus({preventScroll:n})}));else{const e=Mp(s);e.length>0&&requestAnimationFrame((()=>{e[0].focus({preventScroll:n})}))}}),[a,n,s,r]);$m((()=>{d()}),[d]),T4(s,"transitionend",d)}(k,{focusRef:n,visible:v,shouldFocus:s&&u===_ce.click});const H=xce({wasSelected:A.current,enabled:f,mode:p,isSelected:$.present}),V=(0,i.useCallback)(((e={},n=null)=>{const i={...e,style:{...e.style,transformOrigin:q3.transformOrigin.varRef,[q3.arrowSize.var]:c?`${c}px`:void 0,[q3.arrowShadowColor.var]:l},ref:Zn(k,n),children:H?e.children:null,id:M,tabIndex:-1,role:"dialog",onKeyDown:S(e.onKeyDown,(e=>{r&&"Escape"===e.key&&y()})),onBlur:S(e.onBlur,(e=>{const r=Ece(e),n=Sce(k.current,r),i=Sce(_.current,r);v&&t&&(!n&&!i)&&y()})),"aria-labelledby":P?L:void 0,"aria-describedby":T?N:void 0};return u===_ce.hover&&(i.role="tooltip",i.onMouseEnter=S(e.onMouseEnter,(()=>{E.current=!0})),i.onMouseLeave=S(e.onMouseLeave,(e=>{null!==e.nativeEvent.relatedTarget&&(E.current=!1,setTimeout((()=>y()),h))}))),i}),[H,M,P,L,T,N,u,r,y,v,t,h,l,c]),q=(0,i.useCallback)(((e={},t=null)=>B({...e,style:{visibility:v?"visible":"hidden",...e.style}},t)),[v,B]),K=(0,i.useCallback)(((e,t=null)=>({...e,ref:Zn(t,x,D)})),[x,D]),W=(0,i.useRef)(),G=(0,i.useRef)(),Z=(0,i.useCallback)((e=>{null==x.current&&D(e)}),[D]),Y=(0,i.useCallback)(((e={},r=null)=>{const n={...e,ref:Zn(_,r,Z),id:I,"aria-haspopup":"dialog","aria-expanded":v,"aria-controls":M};return u===_ce.click&&(n.onClick=S(e.onClick,w)),u===_ce.hover&&(n.onFocus=S(e.onFocus,(()=>{void 0===W.current&&b()})),n.onBlur=S(e.onBlur,(e=>{const r=Ece(e),n=!Sce(k.current,r);v&&t&&n&&y()})),n.onKeyDown=S(e.onKeyDown,(e=>{"Escape"===e.key&&y()})),n.onMouseEnter=S(e.onMouseEnter,(()=>{E.current=!0,W.current=window.setTimeout((()=>b()),d)})),n.onMouseLeave=S(e.onMouseLeave,(()=>{E.current=!1,W.current&&(clearTimeout(W.current),W.current=void 0),G.current=window.setTimeout((()=>{!1===E.current&&y()}),h)}))),n}),[I,v,M,u,Z,w,b,t,y,d,h]);(0,i.useEffect)((()=>()=>{W.current&&clearTimeout(W.current),G.current&&clearTimeout(G.current)}),[]);const X=(0,i.useCallback)(((e={},t=null)=>({...e,id:L,ref:Zn(t,(e=>{O(!!e)}))})),[L]),J=(0,i.useCallback)(((e={},t=null)=>({...e,id:N,ref:Zn(t,(e=>{C(!!e)}))})),[N]);return{forceUpdate:U,isOpen:v,onAnimationComplete:$.onComplete,onClose:y,getAnchorProps:K,getArrowProps:z,getArrowInnerProps:F,getPopoverPositionerProps:q,getPopoverProps:V,getTriggerProps:Y,getHeaderProps:X,getBodyProps:J}}function Sce(e,t){return e===t||(null==e?void 0:e.contains(t))}function Ece(e){var t;const r=e.currentTarget.ownerDocument.activeElement;return null!=(t=e.relatedTarget)?t:r}var[Ace,Pce]=Rn({name:"PopoverContext",errorMessage:"usePopoverContext: `context` is undefined. Seems you forgot to wrap all popover components within ``"}),[Oce,Tce]=Rn({name:"PopoverStylesContext",errorMessage:"usePopoverStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "});function Cce(e){const t=qn("Popover",e),{children:r,...n}=ht(e),i=kce({...n,direction:Bn().direction});return(0,xn.jsx)(Ace,{value:i,children:(0,xn.jsx)(Oce,{value:t,children:w(r,{isOpen:i.isOpen,onClose:i.onClose,forceUpdate:i.forceUpdate})})})}function jce(e){const t=i.Children.only(e.children),{getTriggerProps:r}=Pce();return(0,i.cloneElement)(t,r(t.props,t.ref))}function Rce(e){if(e)return{enter:{...e.enter,visibility:"visible"},exit:{...e.exit,transitionEnd:{visibility:"hidden"}}}}Cce.displayName="Popover",jce.displayName="PopoverTrigger";var Ice={exit:{opacity:0,scale:.95,transition:{duration:.1,ease:[.4,0,1,1]}},enter:{scale:1,opacity:1,transition:{duration:.15,ease:[0,0,.2,1]}}},Mce=bn(bh.section),Lce=wn((function(e,t){const{variants:r=Ice,...n}=e,{isOpen:i}=Pce();return(0,xn.jsx)(Mce,{ref:t,variants:Rce(r),initial:!1,animate:i?"enter":"exit",...n})}));Lce.displayName="PopoverTransition";var Nce=wn((function(e,t){const{rootProps:r,motionProps:n,...i}=e,{getPopoverProps:o,getPopoverPositionerProps:a,onAnimationComplete:s}=Pce(),c=Tce(),l={position:"relative",display:"flex",flexDirection:"column",...c.content};return(0,xn.jsx)(bn.div,{...a(r),__css:c.popper,className:"chakra-popover__popper",children:(0,xn.jsx)(Lce,{...n,...o(i,t),onAnimationComplete:E(s,i.onAnimationComplete),className:v("chakra-popover__content",e.className),__css:l})})}));Nce.displayName="PopoverContent";var Dce=wn((function(e,t){const{getBodyProps:r}=Pce(),n=Tce();return(0,xn.jsx)(bn.div,{...r(e,t),className:v("chakra-popover__body",e.className),__css:n.body})}));Dce.displayName="PopoverBody";const zce=e=>{const{onOpen:t,onClose:r,isOpen:n}=si();return(0,xn.jsxs)(Cce,{isOpen:n,onClose:r,onOpen:t,placement:"bottom-start",children:[(0,xn.jsx)(jce,{children:(0,xn.jsx)(Xn,{minWidth:"24px",height:"24px",padding:"0",background:n?Xv.green:Xv.gray[500],border:"none",borderRadius:"full",_hover:{bg:n?Xv.green:Xv.gray[450]},"data-testid":"popover-cta",variant:"unstyled",children:(0,xn.jsx)(_n,{children:(0,xn.jsx)(Jy,{})})})}),(0,xn.jsx)(Nce,{width:"100px",background:Xv.gray[700],children:(0,xn.jsx)(Dce,{borderRadius:"lg",children:e.children})})]})},Bce=({onRename:e,onRemove:t})=>(0,xn.jsx)(ab,{alignItems:"center",children:(0,xn.jsx)(zce,{children:(0,xn.jsxs)(Sn,{paddingY:"0",children:[(0,xn.jsx)(Xn,{height:t?"24px":"28px",onClick:e,variant:"popover",children:(0,xn.jsxs)(ab,{alignItems:"center",children:[(0,xn.jsx)(Am,{marginRight:"4px",children:"Rename"}),(0,xn.jsx)(Hy,{stroke:"inherit"})]})}),t&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Om,{marginY:"4px"}),(0,xn.jsx)(Xn,{"data-testid":"popover-remove",onClick:t,variant:"popover",children:(0,xn.jsxs)(ab,{alignItems:"center",children:[(0,xn.jsx)(Am,{marginRight:"4px",children:"Remove"}),(0,xn.jsx)(nb,{stroke:"inherit"})]})})]})]})})}),Fce=({onClick:e,...t})=>(0,xn.jsxs)(Xn,{width:"60px",onClick:e,variant:"specialCTA",...t,children:[(0,xn.jsx)(Iy,{stroke:"currentcolor"}),(0,xn.jsx)(Am,{marginLeft:"4px",children:"Send"})]}),Uce=({sender:e,operationType:t,isLoading:r,reEstimate:n})=>{switch(t){case"proposal":return(0,xn.jsx)(Im,{marginTop:"24px","data-testid":"signer-selector",children:(0,xn.jsx)(o8,{account:e,inputName:"signer",isLoading:r,keepValid:!0,label:"Select Proposer",onUpdate:n})});case"implicit":return null}},$ce=(e,t,r)=>{switch(e.type){case"ledger":case"mnemonic":case"social":case"secret_key":if(e.address.pkh!==t.address.pkh)throw new Error("Sender and Signer must be the same");return{type:"implicit",operations:r,signer:e,sender:e};case"multisig":return{type:"proposal",operations:r,sender:e,signer:t}}},Hce=()=>{const e=iw(),t=c_();return r=>e(lH.clear({pkh:r.address.pkh,network:t}))},Vce=({isLoading:e,isValid:t,onSingleSubmit:r,onAddToBatch:n,showPreview:i=!0})=>(0,xn.jsx)(xn.Fragment,{children:(0,xn.jsxs)(Sn,{width:"100%",children:[i&&(0,xn.jsx)(Xn,{width:"100%",marginBottom:"16px",isDisabled:!t,isLoading:e,onClick:r,size:"lg",type:"submit",children:"Preview"}),(0,xn.jsx)(Xn,{width:"100%",isDisabled:!t,isLoading:e,onClick:n,size:"lg",type:"submit",variant:"tertiary",children:"Insert Into Batch"})]})}),qce=({sender:e,form:t})=>t||(e?{sender:e.address.pkh}:{}),Kce=(e,t,r)=>{const[n,o]=(0,i.useState)(!1),a=FU(),[s,c]=(0,i.useState)(e),[l,u]=(0,i.useState)(t),d=c_(),h=Hce(),{isLoading:f,handleAsyncAction:p,handleAsyncActionUnsafe:m}=sne(),{openWith:g}=(0,i.useContext)(i0),v=Yv({mode:"onBlur",defaultValues:{signer:l.signer.address.pkh,sender:l.sender.address.pkh}}),y=v.watch("signer");return{fee:s,estimationFailed:n,operations:l,isLoading:f,form:v,signer:a(y),reEstimate:async e=>m((async()=>{const t={...l,signer:a(e)};c(await LF(l,d)),u(t),o(!1)}),{isClosable:!0,duration:null}).catch((()=>o(!0))),onSign:async e=>p((async()=>{const t=await uU(l,e);return"batch"===r&&h(l.sender),await g((0,xn.jsx)(use,{hash:t.opHash})),t})),handleAsyncAction:p}},Wce=e=>{const t=qU(),r=GU();return n=>{const i=t(n.sender);return $ce(i,r(i),[e(n)])}},Gce=e=>{e<0&&(console.warn("Decimals cannot be negative"),e=0);return`${0===e?"":"0."+(0,Db.repeat)("0",e-1)}1`},Zce=e=>t=>{if(t.includes(".")){if(t.split(".")[1].length>e)return`Please enter a value with up to ${e} decimal places`}return!0},Yce=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=Kce(n,r,t),{amount:h,recipient:f}=o.operations[0];return(0,xn.jsx)($g,{...c,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(sse,{...e,operationsType:o.type,signer:o.signer}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(pse,{mutezAmount:h}),(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,xn.jsx)(hse,{fee:i})}),(0,xn.jsx)(PH,{marginTop:"24px",children:"From "}),(0,xn.jsx)(Y4,{address:o.sender.address}),(0,xn.jsx)(PH,{marginTop:"24px",children:"To "}),(0,xn.jsx)(Y4,{address:f}),(0,xn.jsx)(Uce,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:ose(o.type,t)})})]})})})},Xce=(e,t)=>async r=>{await LF(e,t),r(lH.add({operations:e,network:t}))},Jce=({SignPage:e,signPageExtraData:t,FormPage:r,defaultFormPageProps:n,toOperation:o})=>{const{openWith:a}=(0,i.useContext)(i0),s=Wce(o),c=c_();return async i=>{const o=s(i);return a((0,xn.jsx)(e,{data:t,fee:await LF(o,c),goBack:()=>a((0,xn.jsx)(r,{...n,form:i})),mode:"single",operations:o}))}},Qce=e=>{const{onClose:t}=(0,i.useContext)(i0),r=c_(),n=Wce(e),o=iw(),a=a0();return async e=>{const i=n(e);await o(Xce(i,r)),a({description:"Transaction added to batch!",status:"success"}),t()}},ele=e=>{const{handleAsyncAction:t,isLoading:r}=sne();return{onFormSubmitActionHandlers:e.map((e=>async r=>t((()=>e(r))))),isLoading:r}},tle=({showPreview:e=!0,...t})=>{const r=Jce({SignPage:Yce,signPageExtraData:void 0,FormPage:tle,defaultFormPageProps:t,toOperation:rle}),n=Qce(rle),{onFormSubmitActionHandlers:[i,o],isLoading:a}=ele([r,n]),s=Yv({mode:"onBlur",defaultValues:qce(t)}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s;return(0,xn.jsx)($g,{...s,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(tse,{}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsxs)(Im,{isInvalid:!!l.prettyAmount,children:[(0,xn.jsx)(PH,{children:"Amount"}),(0,xn.jsxs)(C3,{children:[(0,xn.jsx)(mg,{isDisabled:a,step:Gce(6),type:"number",...u("prettyAmount",{required:"Amount is required",validate:Zce(6)}),placeholder:"0.000000"}),(0,xn.jsx)(M3,{children:"\ua729"})]}),l.prettyAmount&&(0,xn.jsx)(y$,{"data-testid":"amount-error",children:l.prettyAmount.message})]}),(0,xn.jsxs)(Im,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,xn.jsx)(n8,{allowUnknown:!1,inputName:"sender",isDisabled:!!t.sender,label:"From"}),l.sender&&(0,xn.jsx)(y$,{"data-testid":"from-error",children:l.sender.message})]}),(0,xn.jsxs)(Im,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,xn.jsx)(t8,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,xn.jsx)(y$,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Vce,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i),showPreview:e})})]})})})},rle=e=>({type:"tez",amount:hU(e.prettyAmount).toFixed(),recipient:LE(e.recipient)}),nle=({contacts:e})=>{const{openWith:t}=(0,i.useContext)(i0);return(0,xn.jsx)(Sn,{overflow:"auto",background:Xv.gray[900],borderRadius:"8px",paddingX:"30px",children:(0,xn.jsx)(rce,{overflowX:"unset",overflowY:"unset",children:(0,xn.jsx)(oce,{children:(0,xn.jsx)(ace,{children:e.map(((r,n)=>{const i=n===e.length-1?"transparent":Xv.gray[700];return(0,xn.jsxs)(sce,{"data-testid":"contact-row",children:[(0,xn.jsx)(cce,{borderColor:i,"data-testid":"contact-row-name",paddingX:"0",children:(0,xn.jsxs)(ab,{alignItems:"center",children:[(0,xn.jsx)(Sn,{width:"150px",marginRight:"40px",children:(0,xn.jsx)(Am,{overflow:"hidden",fontWeight:600,whiteSpace:"nowrap",textOverflow:"ellipsis",children:r.name})}),(0,xn.jsx)(uce,{justifyContent:"space-between","data-testid":"contact-row-pkh",formatAddress:!1,iconColor:Xv.gray[400],pkh:r.pkh})]})}),(0,xn.jsx)(cce,{borderColor:i,paddingX:"0",children:(0,xn.jsxs)(ab,{justifyContent:"end",children:[(0,xn.jsx)(Fce,{marginRight:"20px",onClick:()=>t((0,xn.jsx)(tle,{form:{sender:"",recipient:r.pkh,prettyAmount:""}}))}),(0,xn.jsx)(Bce,{onRemove:()=>t((0,xn.jsx)(fce,{contact:r})),onRename:()=>t((0,xn.jsx)(hce,{buttonText:"Update",contact:r,title:"Edit contact"}))})]})})]},r.pkh)}))})})})})},ile=({href:e,children:t,...r})=>(0,xn.jsx)(Qn,{alignItems:"center",display:"flex",_hover:{textDecoration:"none"},href:e,rel:"noopener noreferrer",role:"link",target:"_blank",...r,children:t}),ole={md:{heading:"xl",description:"md",button:"md"},lg:{heading:"3xl",description:"xl",button:"lg"}},ale=({title:e,description:t,children:r,size:n})=>(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"center",width:"100%",height:"100%",children:(0,xn.jsxs)(Sn,{padding:"30px","data-testid":"empty-state-message",children:[(0,xn.jsx)(ei,{marginBottom:"10px",textAlign:"center",size:ole[n].heading,children:e}),(0,xn.jsx)(Am,{marginBottom:"30px",color:Xv.gray[400],textAlign:"center",size:ole[n].description,children:t}),(0,xn.jsx)(_n,{children:r})]})}),sle=({size:e})=>(0,xn.jsx)(ale,{description:"Your operations history will appear here...",size:e,title:"No operations to show"}),cle=({size:e})=>(0,xn.jsx)(ale,{description:"Your NFT collection will appear here...",size:e,title:"No NFTs to show",children:(0,xn.jsx)(ile,{"data-testid":"buy-nft-button",href:"https://objkt.com",children:(0,xn.jsx)(Xn,{size:ole[e].button,children:"Buy your first NFT"})})}),lle=({size:e})=>(0,xn.jsx)(ale,{description:"All of your tokens will appear here...",size:e,title:"No tokens to show"}),ule=({size:e="lg",onDelegate:t})=>(0,xn.jsx)(ale,{description:"Your delegation history will appear here...",size:e,title:"No delegations to show",children:(0,xn.jsx)(Xn,{"data-testid":"delegation-empty-state-button",onClick:t,size:ole[e].button,children:"Delegate"})});function dle(e,t={}){const{ssr:r=!0,fallback:n}=t,{getWindow:o}=function({defer:e}={}){const[,t]=(0,i.useReducer)((e=>e+1),0);return Si((()=>{e&&t()}),[e]),(0,i.useContext)(UV)}(),a=Array.isArray(e)?e:[e];let s=Array.isArray(n)?n:[n];s=s.filter((e=>null!=e));const[c,l]=(0,i.useState)((()=>a.map(((e,t)=>({media:e,matches:r?!!s[t]:o().matchMedia(e).matches})))));return(0,i.useEffect)((()=>{const e=o();l(a.map((t=>({media:t,matches:e.matchMedia(t).matches}))));const t=a.map((t=>e.matchMedia(t))),r=e=>{l((t=>t.slice().map((t=>t.media===e.media?{...t,matches:e.matches}:t))))};return t.forEach((e=>{"function"===typeof e.addListener?e.addListener(r):e.addEventListener("change",r)})),()=>{t.forEach((e=>{"function"===typeof e.removeListener?e.removeListener(r):e.removeEventListener("change",r)}))}}),[o]),c.map((e=>e.matches))}function hle(e){return t=>{const r=(e?Math[e]:Math.trunc)(t);return 0===r?0:r}}function fle(e){const t=Object.prototype.toString.call(e);return e instanceof Date||"object"===typeof e&&"[object Date]"===t?new e.constructor(+e):"number"===typeof e||"[object Number]"===t||"string"===typeof e||"[object String]"===t?new Date(e):new Date(NaN)}function ple(e,t){return+fle(e)-+fle(t)}function mle(e,t,r){const n=ple(e,t)/1e3;return hle(r?.roundingMethod)(n)}Math.pow(10,8);const gle=6048e5,vle=864e5,yle=43200;function ble(e,t,r){const n=ple(e,t)/6e4;return hle(r?.roundingMethod)(n)}function wle(e,t){const r=fle(e),n=fle(t),i=r.getTime()-n.getTime();return i<0?-1:i>0?1:i}function xle(e,t){const r=fle(e),n=fle(t);return 12*(r.getFullYear()-n.getFullYear())+(r.getMonth()-n.getMonth())}function _le(e){const t=fle(e);return t.setHours(23,59,59,999),t}function kle(e){const t=fle(e),r=t.getMonth();return t.setFullYear(t.getFullYear(),r+1,0),t.setHours(23,59,59,999),t}function Sle(e){const t=fle(e);return+_le(t)===+kle(t)}function Ele(e,t){const r=fle(e),n=fle(t),i=wle(r,n),o=Math.abs(xle(r,n));let a;if(o<1)a=0;else{1===r.getMonth()&&r.getDate()>27&&r.setDate(30),r.setMonth(r.getMonth()-i*o);let t=wle(r,n)===-i;Sle(fle(e))&&1===o&&1===wle(e,n)&&(t=!1),a=i*(o-Number(t))}return 0===a?0:a}const Ale={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function Ple(e){return(t={})=>{const r=t.width?String(t.width):e.defaultWidth;return e.formats[r]||e.formats[e.defaultWidth]}}const Ole={date:Ple({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:Ple({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:Ple({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},Tle={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function Cle(e){return(t,r)=>{let n;if("formatting"===(r?.context?String(r.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,i=r?.width?String(r.width):t;n=e.formattingValues[i]||e.formattingValues[t]}else{const t=e.defaultWidth,i=r?.width?String(r.width):e.defaultWidth;n=e.values[i]||e.values[t]}return n[e.argumentCallback?e.argumentCallback(t):t]}}const jle={ordinalNumber:(e,t)=>{const r=Number(e),n=r%100;if(n>20||n<10)switch(n%10){case 1:return r+"st";case 2:return r+"nd";case 3:return r+"rd"}return r+"th"},era:Cle({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:Cle({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:Cle({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:Cle({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:Cle({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function Rle(e){return(t,r={})=>{const n=r.width,i=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth],o=t.match(i);if(!o)return null;const a=o[0],s=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?function(e,t){for(let r=0;re.test(a))):function(e,t){for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t(e[r]))return r;return}(s,(e=>e.test(a)));let l;l=e.valueCallback?e.valueCallback(c):c,l=r.valueCallback?r.valueCallback(l):l;return{value:l,rest:t.slice(a.length)}}}const Ile={ordinalNumber:(Mle={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,t={})=>{const r=e.match(Mle.matchPattern);if(!r)return null;const n=r[0],i=e.match(Mle.parsePattern);if(!i)return null;let o=Mle.valueCallback?Mle.valueCallback(i[0]):i[0];return o=t.valueCallback?t.valueCallback(o):o,{value:o,rest:e.slice(n.length)}}),era:Rle({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:Rle({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:Rle({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:Rle({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:Rle({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};var Mle;const Lle={code:"en-US",formatDistance:(e,t,r)=>{let n;const i=Ale[e];return n="string"===typeof i?i:1===t?i.one:i.other.replace("{{count}}",t.toString()),r?.addSuffix?r.comparison&&r.comparison>0?"in "+n:n+" ago":n},formatLong:Ole,formatRelative:(e,t,r,n)=>Tle[e],localize:jle,match:Ile,options:{weekStartsOn:0,firstWeekContainsDate:1}};let Nle={};function Dle(){return Nle}function zle(e){const t=fle(e),r=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return r.setUTCFullYear(t.getFullYear()),+e-+r}function Ble(e,t,r){const n=Dle(),i=r?.locale??n.locale??Lle,o=wle(e,t);if(isNaN(o))throw new RangeError("Invalid time value");const a=Object.assign({},r,{addSuffix:r?.addSuffix,comparison:o});let s,c;o>0?(s=fle(t),c=fle(e)):(s=fle(e),c=fle(t));const l=mle(c,s),u=(zle(c)-zle(s))/1e3,d=Math.round((l-u)/60);let h;if(d<2)return r?.includeSeconds?l<5?i.formatDistance("lessThanXSeconds",5,a):l<10?i.formatDistance("lessThanXSeconds",10,a):l<20?i.formatDistance("lessThanXSeconds",20,a):l<40?i.formatDistance("halfAMinute",0,a):l<60?i.formatDistance("lessThanXMinutes",1,a):i.formatDistance("xMinutes",1,a):0===d?i.formatDistance("lessThanXMinutes",1,a):i.formatDistance("xMinutes",d,a);if(d<45)return i.formatDistance("xMinutes",d,a);if(d<90)return i.formatDistance("aboutXHours",1,a);if(d<1440){const e=Math.round(d/60);return i.formatDistance("aboutXHours",e,a)}if(d<2520)return i.formatDistance("xDays",1,a);if(d{const t=c_(),r="mainnet"===t.name,n=r?"Buy Tez":"Request Tez from faucet",i=Yv({mode:"onBlur",defaultValues:{address:e}}),{formState:{isValid:o,errors:a}}=i;let s=t.buyTezUrl;return t.buyTezUrl&&r&&(s+="/default/widget/"),(0,xn.jsx)($g,{...i,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{action:s,rel:"noreferrer noopener",target:"_blank",children:[(0,xn.jsx)(km,{}),(0,xn.jsx)(Sm,{marginBottom:"10px",textAlign:"center",children:"Buy Tez"}),r&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)("input",{name:"commodity",type:"hidden",value:"XTZ:Tezos"}),(0,xn.jsx)(Am,{color:Xv.gray[400],textAlign:"center",size:"sm",children:"Please select the recipient account."}),(0,xn.jsx)(Pm,{children:(0,xn.jsxs)(Im,{"data-testid":"buy-tez-selector",isInvalid:!!a.address,paddingY:5,children:[(0,xn.jsx)(r8,{allowUnknown:!1,inputName:"address",isDisabled:!!e,label:"Recipient Account"}),a.address&&(0,xn.jsx)(y$,{children:a.address.message})]})})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Sn,{width:"100%","data-testid":"buy-tez-button",children:(0,xn.jsx)(Xn,{width:"100%",marginBottom:2,isDisabled:!o,size:"lg",type:"submit",children:n})})})]})})})},Ule=e=>(0,xn.jsx)(wm,{width:"15px",height:"11px",fill:"none",stroke:"white",viewBox:"0 0 15 11",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,xn.jsx)("path",{d:"M1.16602 5.98371L5.06345 9.85408L13.8327 1.14575",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),$le=()=>{const e=iw(),t=ow((e=>e.assets.isLoading)),r=ow((e=>e.assets.lastTimeUpdated)),[n,o]=(0,i.useState)(!1),[a,s]=(0,i.useState)(!1),[c]=dle("(max-width: 1200px)");if((0,i.useEffect)((()=>{if(!r)return;if(mle(new Date,new Date(r))>1)return;o(!0),s(!0);const e=setTimeout((()=>o(!1)),2e3),t=setTimeout((()=>s(!1)),3500);return()=>{clearTimeout(e),clearTimeout(t)}}),[r]),c||null===r)return null;const l=ble(new Date,new Date(r))>=2,u={opacity:n?1:0,transition:"opacity 2s ease-in-out"};return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsxs)(Am,{display:"inline",color:Xv.gray[400],size:"sm",style:a?u:void 0,children:[a&&"Updated just now",l&&`Updated ${Ble(new Date(r),new Date)} ago`]}),(0,xn.jsx)(s8,{marginRight:"36px",marginLeft:"8px",_active:{color:"white",bg:Xv.green},"aria-label":"refetch",backgroundColor:a?Xv.green:Xv.gray[500],"data-testid":"refetch-button",icon:a?(0,xn.jsx)(Ule,{style:u}):(0,xn.jsx)(Ey,{color:"white"}),isLoading:t,onClick:()=>{e(aH.refetch())},variant:"circle_without_hover_color"})]})},Hle=({title:e,subtitle:t})=>{const{openWith:r}=(0,i.useContext)(i0);return(0,xn.jsxs)(Sn,{children:[(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",height:"88px",children:[(0,xn.jsxs)(ab,{alignItems:"end",children:[(0,xn.jsx)(ei,{marginRight:"6px",size:"xl",children:e}),(0,xn.jsx)(Am,{color:Xv.gray[450],"data-testid":"nft-total-amount",size:"xs",children:t})]}),(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)($le,{}),(0,xn.jsx)(Xn,{onClick:()=>r((0,xn.jsx)(Fle,{})),variant:"tertiary",children:"Buy Tez"}),(0,xn.jsx)(Xn,{marginLeft:4,onClick:()=>r((0,xn.jsx)(tle,{})),children:"Send"})]})]}),(0,xn.jsx)(Om,{})]})},Vle=()=>{const{openWith:e}=(0,i.useContext)(i0);return(0,xn.jsxs)(Xn,{alignItems:"center",justifyContent:"end",marginTop:"16px",marginBottom:"16px",cursor:"pointer",onClick:()=>e((0,xn.jsx)(hce,{buttonText:"Add to Contact",title:"Add contact"})),variant:"CTAWithIcon",children:[(0,xn.jsx)(ey,{stroke:"currentcolor"}),(0,xn.jsx)(Am,{marginLeft:"4px",size:"sm",children:"Add contact"})]})},qle=()=>{const e=(()=>{const e=EU();return Object.values(e).sort(((e,t)=>e.name.localeCompare(t.name)))})();return(0,xn.jsxs)(ab,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Hle,{title:"Address Book"}),(0,xn.jsx)(ab,{flexDirection:"row-reverse",children:(0,xn.jsx)(Vle,{})}),e.length>0?(0,xn.jsx)(nle,{contacts:e}):(0,xn.jsx)(ale,{description:"Your contacts will appear here...",size:"lg",title:"Your address book is empty"})]})};var Kle=r(649),Wle=r.n(Kle);const Gle=({account:{address:e},...t})=>{const r=UU().find((t=>t.address.pkh===e.pkh)),n=_U()(e.pkh),i=V4(e);return r?(0,xn.jsxs)(ab,{alignItems:"space-between",cursor:"pointer","data-testid":"account-small-tile",...t,children:[(0,xn.jsx)(H4,{addressKind:i}),(0,xn.jsxs)(ab,{alignSelf:"center",height:"20px",marginLeft:"12px",children:[(0,xn.jsx)(ei,{marginRight:"10px","data-testid":"account-small-tile-label",size:"sm",children:r.label}),(0,xn.jsx)(Am,{marginRight:"35px",color:Xv.gray[300],"data-testid":"account-small-tile-pkh",size:"xs",children:mU(e.pkh)}),n&&(0,xn.jsx)(ei,{"data-testid":"account-small-tile-balance",size:"sm",children:pU(n)})]})]}):null},Zle=({estimationResult:e})=>{if(!e)return null;const t=(0,Db.get)(e,"metadata.operation_result.status");if(!t)return null;let r,n,i;switch(t){case"applied":case"backtracked":n=Xv.green,i="Estimated",r=(0,xn.jsx)(oy,{height:"14.5px"});break;case"failed":n=Xv.orange,i="Failed",r=(0,xn.jsx)(db,{width:"12px",height:"13px",stroke:"currentcolor",marginX:"3px"});break;case"skipped":n=Xv.orangeL,i="Not Estimated",r=(0,xn.jsx)(yy,{stroke:"currentcolor",marginX:"3px"})}return(0,xn.jsx)(ab,{marginTop:"8px",color:n,"data-testid":"estimation-status",children:(0,xn.jsxs)(_n,{children:[r,(0,xn.jsx)(Am,{marginLeft:"4px",size:"xs",children:i})]})})};function Yle(e,t){var r;const n=e.target;if(n){if(!ni(n).contains(n))return!1}return!(null==(r=t.current)?void 0:r.contains(n))}var Xle=(e,t)=>t?`${e}.${t}, ${t}`:void 0;function Jle(e){var t;const{bg:r,bgColor:n,backgroundColor:i,shadow:o,boxShadow:a,shadowColor:s}=e,{getArrowProps:c,getArrowInnerProps:l}=Pce(),u=Tce(),d=null!=(t=null!=r?r:n)?t:i,h=null!=o?o:a;return(0,xn.jsx)(bn.div,{...c(),className:"chakra-popover__arrow-positioner",children:(0,xn.jsx)(bn.div,{className:v("chakra-popover__arrow",e.className),...l(e),__css:{"--popper-arrow-shadow-color":Xle("colors",s),"--popper-arrow-bg":Xle("colors",d),"--popper-arrow-shadow":Xle("shadows",h),...u.arrow}})})}Jle.displayName="PopoverArrow";const Qle=({addressKind:{type:e},...t})=>{switch(e){case"multisig":return(0,xn.jsx)(Ly,{"data-testid":`${e}-icon`,...t});case"fa1.2":return(0,xn.jsx)(ky,{"data-testid":`${e}-icon`,...t,fill:t.stroke,stroke:"none"});case"fa2":return(0,xn.jsx)(Sy,{"data-testid":`${e}-icon`,...t,fill:t.stroke,stroke:"none"});case"baker":return(0,xn.jsx)(ry,{"data-testid":`${e}-icon`,...t});case"contact":return(0,xn.jsx)(uy,{"data-testid":`${e}-icon`,...t});case"unknown":case"implicit":return null}},eue=({addressKind:{type:e,pkh:t},addressPillMode:r,...n})=>{const{addressExistsInContacts:o}=AU(),{openWith:a}=(0,i.useContext)(i0);if("removable"===r.type)return(0,xn.jsx)(hb,{cursor:"pointer",onClick:r.onRemove,...n});return["implicit","multisig","baker"].includes(e)||o(t)?null:(0,xn.jsx)(xn.Fragment,{children:(0,xn.jsx)(ey,{"data-testid":"add-contact-icon",onClick:()=>a((0,xn.jsx)(hce,{buttonText:"Add to Contact",contact:{name:"",pkh:t},title:"Add contact"})),...n})})},tue=({addressKind:{pkh:e,label:t},showPkh:r,alias:n,...i})=>{const o=PU(),a=mU(e),s=o(e)||t||n;return r?(0,xn.jsx)(Am,{...i,children:a}):(0,xn.jsx)(Am,{...i,children:s?dU(s,21):a})},rue=e=>{const t=q4(e);if(!t)return null;const{pkh:r,label:n}=t;return{type:"multisig"===t.type?"multisig":"implicit",pkh:r,label:n}},nue=({pkh:e})=>{const t=(e=>{const t=ow((t=>t.tokens[e.name]));return e=>{if(!t||!(e in t))return;const r=t[e],n=Object.keys(r)[0];return n?r[n].type:void 0}})(c_()),r=t(e);if(!r)return null;switch(r){case"fa1.2":return{pkh:e,type:"fa1.2",label:null};case"fa2":case"nft":return{pkh:e,type:"fa2",label:null}}},iue=({address:e,mode:t={type:"default"},...r})=>{const n=!("pkh"in e&&"type"in e),o=n?LE(e.address):e,a=(e=>{const t=rue(e),r=nue(e),n=K4(e),i=W4(e);return t||r||n||i||{pkh:e.pkh,type:"unknown",label:null}})(o),s="no_icons"!==t.type,{onOpen:c,onClose:l,isOpen:u}=si(),[d,h]=(0,i.useState)(!1),f=(0,i.useRef)(null);let p,m,g;return function(e){const{ref:t,handler:r,enabled:n=!0}=e,o=ai(r),a=(0,i.useRef)({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}).current;(0,i.useEffect)((()=>{if(!n)return;const e=e=>{Yle(e,t)&&(a.isPointerDown=!0)},i=e=>{a.ignoreEmulatedMouseEvents?a.ignoreEmulatedMouseEvents=!1:a.isPointerDown&&r&&Yle(e,t)&&(a.isPointerDown=!1,o(e))},s=e=>{a.ignoreEmulatedMouseEvents=!0,r&&a.isPointerDown&&Yle(e,t)&&(a.isPointerDown=!1,o(e))},c=ni(t.current);return c.addEventListener("mousedown",e,!0),c.addEventListener("mouseup",i,!0),c.addEventListener("touchstart",e,!0),c.addEventListener("touchend",s,!0),()=>{c.removeEventListener("mousedown",e,!0),c.removeEventListener("mouseup",i,!0),c.removeEventListener("touchstart",e,!0),c.removeEventListener("touchend",s,!0)}}),[r,t,o,a,n])}({ref:f,handler:()=>{h(!1)}}),u?(p=Xv.green,m=Xv.gray[300],g="white"):d?(p=Xv.gray[450],m=Xv.gray[400],g=Xv.gray[200]):(p=Xv.gray[500],m=Xv.gray[450],g=Xv.gray[300]),(0,xn.jsx)(Sn,{maxWidth:"max-content","data-testid":"address-pill",...r,children:(0,xn.jsxs)(ab,{ref:f,alignItems:"center",background:p,borderRadius:"full",onMouseEnter:()=>{h(!0)},onMouseLeave:()=>{h(!1)},paddingX:"4px",children:[s&&(0,xn.jsx)(Qle,{marginLeft:"4px",stroke:m,addressKind:a,"data-testid":"address-pill-left-icon"}),(0,xn.jsxs)(Cce,{autoFocus:!1,isOpen:u,onOpen:async()=>{await navigator.clipboard.writeText(o.pkh),c(),setTimeout(l,1e3)},children:[(0,xn.jsx)(jce,{children:(0,xn.jsx)(Xn,{height:"24px",_focus:{boxShadow:"none"},onClick:e=>e.stopPropagation(),variant:"unstyled",children:(0,xn.jsx)(tue,{color:g,cursor:"pointer",addressKind:a,alias:n&&e.alias?e.alias:void 0,"data-testid":"address-pill-text",marginX:"4px",showPkh:!s,size:"sm"})})}),(0,xn.jsxs)(Nce,{maxWidth:"max-content",background:"white",children:[(0,xn.jsx)(Jle,{background:"white !important"}),(0,xn.jsx)(Dce,{children:(0,xn.jsx)(Am,{color:"black",size:"sm",children:"Copied!"})})]})]}),s&&(0,xn.jsx)(eue,{marginRight:"4px",stroke:Xv.gray[300],cursor:"pointer",addressKind:a,addressPillMode:t,"data-testid":"address-pill-right-icon"})]})})},oue=({operation:e})=>{let t;switch(e.type){case"undelegation":case"contract_origination":t=void 0;break;case"tez":case"fa1.2":case"fa2":case"delegation":t=e.recipient;break;case"contract_call":t=e.contract}return t?(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[450],children:"To:"}),(0,xn.jsx)(iue,{address:t,"data-testid":"recipient"})]}):(0,xn.jsx)(Am,{color:Xv.gray[500],"data-testid":"recipient",children:"N/A"})},aue=(e,t)=>{if(!e)return`${t} Unknown Token`;const r=WE(e),n=QE(t,e,{showSymbol:!1}),i=r?void 0:ZE(e);return(0,Db.compact)([n,i,r]).join(" ")},sue=e=>null===e||void 0===e?void 0:e.replace("ipfs://","https://ipfs.io/ipfs/"),cue=e=>(0,Db.orderBy)(e,["lastLevel","id","owner"],["desc"]),lue=({operation:e})=>{const t=d_(),r=c_();switch(e.type){case"tez":return(0,xn.jsxs)(ab,{children:[(0,xn.jsx)(Iy,{marginRight:"8px"}),(0,xn.jsx)(ei,{size:"sm",children:pU(e.amount)})]});case"fa1.2":case"fa2":{const n=t(e.contract.pkh,e.tokenId);return"nft"===(null===n||void 0===n?void 0:n.type)?(0,xn.jsxs)(ab,{children:[(0,xn.jsx)(Iy,{marginRight:"8px"}),Number(e.amount)>1&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsxs)(ei,{color:Xv.gray[450],size:"sm",children:["x",e.amount]}),"\xa0"]}),(0,xn.jsx)(ei,{size:"sm",children:(0,xn.jsx)(L4,{padding:"8px",background:Xv.gray[700],border:"1px solid",borderColor:Xv.gray[500],borderRadius:"8px",label:(0,xn.jsx)(U5,{width:"170px",height:"170px",ratio:1,children:(0,xn.jsx)(tb,{src:sue(tA(n))})}),openDelay:300,children:(0,xn.jsx)(Qn,{"data-testid":"link",href:iA(n,r),children:KE(n)})})})]}):(0,xn.jsxs)(ab,{children:[(0,xn.jsx)(Iy,{marginRight:"8px"}),(0,xn.jsx)(ei,{size:"sm",children:(0,xn.jsx)(Qn,{"data-testid":"link",href:n?iA(n,r):void 0,children:aue(n,e.amount)})})]})}case"delegation":return(0,xn.jsxs)(ab,{children:[(0,xn.jsx)(ry,{marginRight:"8px"}),(0,xn.jsx)(ei,{size:"sm",children:"Delegate"})]});case"undelegation":return(0,xn.jsxs)(ab,{children:[(0,xn.jsx)(ry,{marginRight:"8px"}),(0,xn.jsx)(ei,{size:"sm",children:"End Delegation"})]});case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}},uue=({addressKind:e})=>{switch(e.type){case"secret_key":case"mnemonic":return(0,xn.jsx)(U4,{width:"48px",height:"48px",padding:"8px",address:e.pkh,identiconSize:32});case"social":case"contact":case"ledger":case"multisig":case"unknown":case"baker":{const t="social"===e.type?"white":Xv.gray[500];return(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"center",padding:"4px",background:t,borderRadius:"4px",children:(0,xn.jsx)(H4,{addressKind:e,size:"md"})})}}},due=(0,i.createContext)({selectedAccount:null,selectAccount:()=>{}}),hue=({icon:e,leftElement:t,rightElement:r,...n})=>(0,xn.jsxs)(ab,{alignItems:"center",height:90,marginBottom:4,padding:4,border:`1px solid ${Xv.gray[800]}`,borderRadius:4,"data-testid":"account-tile-base",...n,children:[e,(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",flex:1,children:[t,r]})]}),fue=({label:e,pkh:t})=>(0,xn.jsxs)(Sn,{margin:4,"data-testid":"account-identifier",children:[e&&(0,xn.jsx)(ei,{size:"md",children:e}),(0,xn.jsx)(ab,{alignItems:"center",children:(0,xn.jsx)(Am,{color:"text.dark","data-testid":"short-address",size:"sm",children:mU(t)})})]}),pue=({account:e,radius:t,left:r="0px",top:n="0px",mainBackgroundColor:i=Xv.gray[900],opacity:o="60"})=>{let a;switch(e.type){case"mnemonic":case"secret_key":s=e.address.pkh,a=`#${D4()(s).slice(0,6)}`;break;case"ledger":case"multisig":a=Xv.gray[450];break;case"social":a="#EA4335"}var s;return a+=o,`radial-gradient(circle farthest-side at ${r} ${n}, ${a} 0%, ${a} ${parseInt(t)/4}px, transparent ${t}), ${i}`},mue=({account:e,balance:t})=>{const{selectedAccount:r,selectAccount:n}=(0,i.useContext)(due),o=(null===r||void 0===r?void 0:r.address.pkh)===e.address.pkh,a=V4(e.address),{address:{pkh:s}}=e,c=!!ow((e=>e.assets.delegationLevels))[s],l=wU(),u=cue(l(s));return(0,xn.jsxs)(Sn,{zIndex:2,background:pue({left:"-10px",top:"-10px",account:e,radius:u.length>0?"120px":"100px"}),borderWidth:"1px",borderStyle:"solid",borderColor:o?Xv.orangeL:Xv.gray[900],borderRadius:"8px",_hover:{borderColor:o?Xv.orangeL:Xv.gray[700]},cursor:"pointer","data-testid":"account-tile-container",onClick:()=>n(e),paddingX:"21px",children:[(0,xn.jsx)(hue,{align:"bottom",marginBottom:0,padding:0,border:"none","data-testid":`account-tile-${s}`+(o?"-selected":""),icon:(0,xn.jsx)(uue,{addressKind:a}),leftElement:(0,xn.jsx)(fue,{label:a.label,pkh:s}),rightElement:(0,xn.jsxs)(ab,{flexDirection:"column",children:[t&&(0,xn.jsx)(ei,{alignSelf:"flex-end","data-testid":"balance",size:"md",children:pU(t)}),(0,xn.jsx)(Am,{align:"right",color:Xv.gray[450],fontWeight:700,"data-testid":"is-delegated",size:"sm",children:c?"Delegated":(0,xn.jsx)(xn.Fragment,{children:"\xa0"})})]})}),u.length>0&&(0,xn.jsxs)(ab,{flexDirection:"column","data-testid":"nfts-list",children:[(0,xn.jsx)(Om,{}),(0,xn.jsx)(ab,{marginY:"21px",children:u.slice(0,7).map(((e,t)=>{const r=sue(tA(e));return 6===t?(0,xn.jsx)(QQ,{"data-testid":"show-more-nfts-link",to:`/nfts?accounts=${s}`,children:(0,xn.jsx)(Sn,{height:"32px",marginLeft:"4px",background:Xv.gray[600],borderRadius:"4px",children:(0,xn.jsx)(Am,{align:"center",width:"32px",color:Xv.gray[450],fontWeight:700,children:"..."})})},"last"):(0,xn.jsx)(QQ,{"data-testid":"nft-link",to:`/home/${s}/${qE(e)}`,children:(0,xn.jsx)(U5,{width:"32px",height:"32px",marginLeft:t>0?"4px":0,ratio:1,children:(0,xn.jsx)(tb,{borderRadius:"4px",src:r})})},qE(e))}))})]})]})},gue=({title:e,description:t,buttonLabel:r,onSubmit:n})=>{const{onClose:o}=(0,i.useContext)(i0);return(0,xn.jsxs)(ym,{children:[(0,xn.jsxs)(Sm,{marginBottom:"10px",textAlign:"center",children:[(0,xn.jsx)(Sn,{children:(0,xn.jsx)(db,{width:"40px",height:"40px",marginBottom:"16px"})}),(0,xn.jsx)(ei,{children:e}),(0,xn.jsx)(km,{})]}),t&&(0,xn.jsx)(Pm,{children:(0,xn.jsx)(Am,{align:"center",color:Xv.gray[400],"data-testid":"description",children:t})}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Xn,{width:"100%",onClick:()=>{n(),o()},size:"lg",variant:"warning",children:r})})]})},vue=({title:e,fee:t,transactionCount:r,signer:n})=>(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(tse,{subTitle:ase(n),title:e}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(PH,{children:"From"}),(0,xn.jsx)(Y4,{address:n.address}),(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",marginY:"12px",paddingX:"4px",children:[(0,xn.jsxs)(ab,{children:[(0,xn.jsx)(Am,{marginRight:"4px",color:Xv.gray[450],size:"sm",children:"Transactions:"}),(0,xn.jsx)(Am,{color:Xv.gray[400],"data-testid":"transaction-length",size:"sm",children:r})]}),(0,xn.jsx)(hse,{fee:t})]})]})]}),yue=({initialOperations:e,initialFee:t})=>{const{fee:r,operations:n,estimationFailed:i,isLoading:o,signer:a,form:s,reEstimate:c,onSign:l}=Kce(t,e,"batch"),u=ose(n.type,"batch");return(0,xn.jsx)($g,{...s,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(vue,{fee:r,signer:a,title:u,transactionCount:n.operations.length}),(0,xn.jsx)(Uce,{isLoading:o,operationType:n.type,reEstimate:c,sender:n.sender}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isDisabled:i,isLoading:o,onSubmit:l,signer:a,text:u})})]})})})},bue=({operations:e,onSubmit:t,isLoading:r})=>{const{type:n,sender:o,operations:a}=e,{openWith:s}=(0,i.useContext)(i0);return(0,xn.jsxs)(Sn,{alignItems:"center",justifyContent:"space-between","data-testid":"right-header",children:[(0,xn.jsx)(Am,{display:"inline-block",color:Xv.gray[400],size:"sm",children:Wle()("transaction",a.length,!0)}),(0,xn.jsx)(Xn,{marginLeft:"30px",isLoading:r,onClick:t,variant:"primary",children:ose(n,"batch")}),(0,xn.jsx)(s8,{marginLeft:"16px",borderRadius:"4px","aria-label":"remove-batch","data-testid":"remove-batch",icon:(0,xn.jsx)(nb,{stroke:Xv.gray[300]}),onClick:()=>s((0,xn.jsx)(xue,{sender:o}),"sm"),variant:"circle"})]})},wue=e=>{switch(e.type){case"fa1.2":case"fa2":return"Token Transfer";case"undelegation":case"delegation":return"Delegation";case"tez":return"\ua729 Transfer";case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}},xue=({sender:e})=>{const t=Hce();return(0,xn.jsx)(gue,{buttonLabel:"Delete Batch",description:"Are you sure you want to remove all transactions from the batch?",onSubmit:()=>t(e),title:"Delete Batch"})},_ue={metadata:{operation_result:{status:"applied"}}},kue=({operations:e})=>{const{operations:t,sender:r}=e,n=t.length>9,o=(()=>{const e=iw(),t=c_();return(r,n)=>e(lH.removeItem({pkh:r.address.pkh,index:n,network:t}))})(),{openWith:a}=(0,i.useContext)(i0),s=c_(),[c,l]=i.useState([]);(0,i.useEffect)((()=>{l([])}),[t.length]);const{isLoading:u,handleAsyncAction:d}=sne(),h=(0,xn.jsx)(bue,{isLoading:u,onSubmit:()=>d((async()=>{l([]);try{const r=await LF(e,s);return l(t.map((e=>_ue))),a((0,xn.jsx)(yue,{initialFee:r,initialOperations:e}))}catch(r){if(r instanceof WN){const e=r.operationsWithResults;e.length>t.length&&e.shift(),l(e)}throw r}})),operations:e});return(0,xn.jsxs)(Sn,{width:"100%",marginBottom:"16px","data-testid":`batch-table-${r.address.pkh}`,children:[(0,xn.jsxs)(ab,{justifyContent:"space-between",padding:"20px 23px 20px 30px",background:pue({top:"-10px",left:"-10px",account:r,radius:"100px",opacity:"40",mainBackgroundColor:Xv.gray[800]}),borderTopRadius:"8px","data-testid":"header",children:[(0,xn.jsx)(ab,{alignItems:"center",children:(0,xn.jsx)(Gle,{paddingLeft:0,account:r})}),h]}),(0,xn.jsx)(ab,{flexDirection:"column",background:Xv.gray[900],borderBottomRadius:n?0:"8px",paddingX:"30px",paddingY:"20px",children:t.map(((e,n)=>{const i=c.at(n);return(0,xn.jsxs)(Sn,{"data-testid":"operation",children:[(0,xn.jsxs)(ab,{flexDirection:"column",height:i?"80px":"50px",children:[(0,xn.jsx)(ab,{children:(0,xn.jsx)(lue,{operation:e})}),(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",width:"100%",marginTop:"8px",children:[(0,xn.jsxs)(ab,{flexDirection:"column",children:[(0,xn.jsx)(ab,{children:(0,xn.jsx)(oue,{operation:e})}),(0,xn.jsx)(Zle,{estimationResult:i})]}),(0,xn.jsxs)(ab,{alignSelf:"flex-end",children:[(0,xn.jsx)(Am,{alignSelf:"flex-end",color:Xv.gray[450],size:"sm",children:wue(e)}),(0,xn.jsx)(s8,{width:"24px",marginLeft:"12px",borderRadius:"full","aria-label":"Remove",icon:(0,xn.jsx)(nb,{stroke:Xv.gray[300]}),onClick:()=>o(r,n),size:"xs",variant:"circle"})]})]})]}),n{const n=t.filter((e=>e.length>0)),i=n.length;if(i<2||4{const e=c_(),t=a0(),r=d_(),n=iw(),o=qU(),a=GU(),{onClose:s}=(0,i.useContext)(i0),{isLoading:c,handleAsyncAction:l}=sne(),u=Yv({mode:"onBlur"}),{handleSubmit:d,formState:{isValid:h,errors:f}}=u;return(0,xn.jsx)($g,{...u,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{onSubmit:d((async({file:i,sender:c})=>l((async()=>{const l=o(c),u=await new Promise((e=>{Eue().parse(i[0],{skipEmptyLines:!0,complete:e})}));if(u.errors.length>0)throw new Error("Error loading csv file: "+u.errors.map((e=>e.message)).join(", "));const d=[];for(let e=0;e{const{openWith:e}=(0,i.useContext)(i0);return(0,xn.jsxs)(Xn,{onClick:()=>e((0,xn.jsx)(Oue,{})),variant:"CTAWithIcon",children:[(0,xn.jsx)(Am,{marginRight:"4px",size:"sm",children:"Load CSV file"}),(0,xn.jsx)(Ay,{stroke:"currentcolor"})]})},Cue=({batchPending:e})=>(0,xn.jsxs)(ab,{alignItems:"center",marginTop:"24px",marginBottom:"24px",children:[(0,xn.jsxs)(ei,{flex:1,color:Xv.orangeL,size:"sm",children:[e," Pending"]}),(0,xn.jsx)(Tue,{}),(0,xn.jsx)(ile,{marginLeft:"8px",href:"https://github.com/trilitech/umami-v2/wiki/Batch-file-specification",children:(0,xn.jsxs)(Xn,{paddingRight:"0",variant:"CTAWithIcon",children:[(0,xn.jsx)(Am,{marginRight:"4px",size:"sm",children:"See file specs"}),(0,xn.jsx)(wy,{stroke:"currentcolor"})]})})]}),jue=()=>{const e=(()=>{const e=c_(),t=ow((t=>t.batches[e.name]));return t||[]})();return(0,xn.jsxs)(ab,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Hle,{title:"Batch"}),(0,xn.jsx)(Cue,{batchPending:e.length}),(0,xn.jsx)(Sn,{overflowY:"auto",minHeight:"80%",children:e.length>0?e.map((e=>(0,xn.jsx)(kue,{operations:e},e.sender.address.pkh))):(0,xn.jsx)(ale,{description:"There is no batch transactions to show...",size:"lg",title:"No batches to show"})})]})};var Rue=wn((function(e,t){const{templateAreas:r,gap:n,rowGap:i,columnGap:o,column:a,row:s,autoFlow:c,autoRows:l,templateRows:u,autoColumns:d,templateColumns:h,...f}=e,p={display:"grid",gridTemplateAreas:r,gridGap:n,gridRowGap:i,gridColumnGap:o,gridAutoColumns:d,gridColumn:a,gridRow:s,gridAutoFlow:c,gridAutoRows:l,gridTemplateRows:u,gridTemplateColumns:h};return(0,xn.jsx)(bn.div,{ref:t,__css:p,...f})}));function Iue(e){return On(e,(e=>"auto"===e?"auto":`span ${e}/span ${e}`))}Rue.displayName="Grid";var Mue=wn((function(e,t){const{area:r,colSpan:n,colStart:i,colEnd:o,rowEnd:a,rowSpan:s,rowStart:c,...l}=e,u=Em({gridArea:r,gridColumn:Iue(n),gridRow:Iue(s),gridColumnStart:i,gridColumnEnd:o,gridRowStart:c,gridRowEnd:a});return(0,xn.jsx)(bn.div,{ref:t,__css:u,...l})}));Mue.displayName="GridItem";const Lue=({onClick:e,children:t,isSelected:r,...n})=>(0,xn.jsx)(E3,{justifyContent:"center",height:"66px",marginBottom:"10px",padding:"24px",border:"1px solid",borderColor:r?` ${Xv.orangeL}`:"transparent",borderRadius:"lg",_hover:{border:`1px solid ${Xv.gray[500]}`,bg:Xv.gray[800]},cursor:e?"pointer":void 0,backgroundColor:Xv.gray[900],onClick:e,...n,children:(0,xn.jsx)(A3,{padding:0,children:t})}),Nue=({left:e,isSelected:t,onClick:r})=>(0,xn.jsx)(Lue,{isSelected:t,onClick:r,children:(0,xn.jsx)(ab,{alignItems:"center",height:"100%",children:(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",width:"100%",children:[(0,xn.jsx)(ei,{size:"sm",children:e}),(0,xn.jsx)(sy,{})]})})}),Due=()=>(0,xn.jsxs)(Rue,{gridGap:"1",gridTemplateRows:"0fr 1fr 1fr",gridTemplateColumns:"1fr 1fr",gridTemplateAreas:'\n "header header"\n "main main"\n "main main"\n ',height:"100%",children:[(0,xn.jsx)(Mue,{gridArea:"header",children:(0,xn.jsx)(Hle,{title:"Help"})}),(0,xn.jsxs)(Mue,{gridArea:"main",marginTop:1,children:[(0,xn.jsx)(Bue,{title:"Learn More",children:(0,xn.jsx)(zue,{about:"Browse Articles",externalLink:"https://medium.com/umamiwallet"})}),(0,xn.jsxs)(Bue,{title:"Need Help?",children:[(0,xn.jsx)(zue,{about:"Contact our Support Team",externalLink:"mailto:umami-support@trili.tech",linkDescription:"umami-support@trili.tech"}),(0,xn.jsx)(zue,{about:"Get in touch with the Community",externalLink:"https://join.slack.com/t/tezos-dev/shared_invite/zt-1ur1ymxrp-G_X_bFHrvWXwoeiy53J8lg",linkDescription:"Slack #Umami"})]}),(0,xn.jsxs)(Bue,{title:"Terms",children:[(0,xn.jsx)(zue,{about:"Read Terms of Service",externalLink:"https://umamiwallet.com/tos.html"}),(0,xn.jsx)(zue,{about:"Read Privacy Policy",externalLink:"https://umamiwallet.com/privacypolicy.html"})]})]})]}),zue=({about:e,externalLink:t,linkDescription:r})=>(0,xn.jsx)(QQ,{rel:"noopener noreferrer",target:"_blank",to:t,children:(0,xn.jsx)(Lue,{cursor:"pointer",isSelected:!1,children:(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",children:[(0,xn.jsx)(ei,{size:"sm",children:e}),(0,xn.jsxs)(ab,{alignItems:"center",children:[r&&(0,xn.jsx)(Am,{marginRight:"4px",color:Xv.gray[400],size:"sm",children:r}),(0,xn.jsx)(wy,{})]})]})})}),Bue=({title:e,children:t})=>(0,xn.jsx)(Sn,{"data-testid":"help-card",marginY:"10px",children:(0,xn.jsx)(ab,{children:(0,xn.jsxs)(Sn,{width:"550px",children:[(0,xn.jsx)(ei,{marginBottom:"16px",size:"lg",children:e}),t]})})});var[Fue,Uue]=Rn(),$ue={start:{ltr:"left",rtl:"right"},end:{ltr:"right",rtl:"left"}};function Hue(e){var t;const{isOpen:r,onClose:n,placement:i="right",children:o,...a}=e,s=Bn(),c=null==(t=s.components)?void 0:t.Drawer,l=function(e,t){var r,n;if(e)return null!=(n=null==(r=$ue[e])?void 0:r[t])?n:e}(i,s.direction);return(0,xn.jsx)(Fue,{value:{placement:l},children:(0,xn.jsx)(lo,{isOpen:r,onClose:n,styleConfig:c,...a,children:o})})}var Vue={exit:{duration:.15,ease:uo.easeInOut},enter:{type:"spring",damping:25,stiffness:180}},que={exit:({direction:e,transition:t,transitionEnd:r,delay:n})=>{var i;const{exit:o}=go({direction:e});return{...o,transition:null!=(i=null==t?void 0:t.exit)?i:bo(Vue.exit,n),transitionEnd:null==r?void 0:r.exit}},enter:({direction:e,transitionEnd:t,transition:r,delay:n})=>{var i;const{enter:o}=go({direction:e});return{...o,transition:null!=(i=null==r?void 0:r.enter)?i:yo(Vue.enter,n),transitionEnd:null==t?void 0:t.enter}}},Kue=(0,i.forwardRef)((function(e,t){const{direction:r="right",style:n,unmountOnExit:i,in:o,className:a,transition:s,transitionEnd:c,delay:l,motionProps:u,...d}=e,h=go({direction:r}),f=Object.assign({position:"fixed"},h.position,n),p=!i||o&&i,m=o||i?"enter":"exit",g={transitionEnd:c,transition:s,direction:r,delay:l};return(0,xn.jsx)(io,{custom:g,children:p&&(0,xn.jsx)(bh.div,{...d,ref:t,initial:"exit",className:v("chakra-slide",a),animate:m,exit:"exit",custom:g,variants:que,style:f,...u})})}));Kue.displayName="Slide";var Wue=bn(Kue),Gue=wn(((e,t)=>{const{className:r,children:n,motionProps:i,containerProps:o,...a}=e,{getDialogProps:s,getDialogContainerProps:c,isOpen:l}=co(),u=s(a,t),d=c(o),h=v("chakra-modal__content",r),f=ao(),p={display:"flex",flexDirection:"column",position:"relative",width:"100%",outline:0,...f.dialog},m={display:"flex",width:"100vw",height:"$100vh",position:"fixed",left:0,top:0,...f.dialogContainer},{placement:g}=Uue();return(0,xn.jsx)(vm,{children:(0,xn.jsx)(bn.div,{...d,className:"chakra-modal__content-container",__css:m,children:(0,xn.jsx)(Wue,{motionProps:i,direction:g,in:l,className:h,...u,__css:p,children:n})})})}));Gue.displayName="DrawerContent";const Zue=({onRemove:e,onCreate:t})=>(0,xn.jsx)(zce,{children:(0,xn.jsxs)(Sn,{paddingY:"0",children:[(0,xn.jsx)(Xn,{height:t?"24px":"28px","data-testid":"popover-remove",onClick:e,variant:"popover",children:(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",flex:1,children:[(0,xn.jsx)(Am,{marginRight:"4px",children:"Remove"}),(0,xn.jsx)(nb,{stroke:"inherit"})]})}),t&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Om,{marginY:"4px"}),(0,xn.jsx)(Xn,{onClick:t,variant:"popover",children:(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",flex:1,children:[(0,xn.jsx)(Am,{marginRight:"4px",children:"Create"}),(0,xn.jsx)(Vy,{width:"18px",height:"18px",stroke:"inherit"})]})})]})]})}),Yue=({onSubmit:e,isLoading:t})=>{const r=Yv({mode:"onBlur"}),{handleSubmit:n,formState:{errors:i,isValid:o}}=r;return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(zy,{}),subtitle:"Enter your master password for Umami.",title:"Umami Master Password",children:(0,xn.jsx)($g,{...r,children:(0,xn.jsxs)("form",{onSubmit:n((t=>{e(t.password)})),style:{width:"100%"},children:[(0,xn.jsxs)(Im,{isInvalid:!!i.password,children:[(0,xn.jsx)(Xae,{"data-testid":"password",inputName:"password"}),i.password&&(0,xn.jsx)(y$,{children:i.password.message})]}),(0,xn.jsx)(Xn,{width:"100%",marginTop:"32px",isDisabled:!o,isLoading:t,size:"lg",type:"submit",children:"Submit"})]})})})},Xue=e=>{const[t,r]=(0,i.useState)();return void 0===t?(0,xn.jsx)(TH,{onSubmit:e=>r(e.accountName),subtitle:e.subtitle,title:e.title}):(0,xn.jsx)(Yue,{isLoading:e.isLoading,onSubmit:r=>e.onSubmit({name:t,password:r})})},Jue=e=>(0,xn.jsx)(Sn,{overflowY:"auto",height:"100%",children:e.children}),Que=({goToStep:e})=>{const t=zU().length>0;return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(Dy,{}),title:"Connect or Import Account",children:(0,xn.jsxs)(jn,{width:"100%",spacing:"16px",children:[(0,xn.jsx)(Xn,{width:"100%",onClick:t=>e({type:"restoreMnemonic"}),size:"lg",children:"Import with Seed Phrase"}),(0,xn.jsx)(Xn,{width:"100%",onClick:t=>e({type:"restoreSecretKey"}),size:"lg",variant:"tertiary",children:"Import with Secret Key"}),!t&&(0,xn.jsx)(Xn,{width:"100%",onClick:t=>e({type:"restoreBackup"}),size:"lg",variant:"tertiary",children:"Restore from Backup"}),(0,xn.jsx)(Xn,{width:"100%",onClick:t=>e({type:"nameAccount",account:{type:"ledger"}}),size:"lg",variant:"tertiary",children:"Connect ledger"})]})})},ede=({goToStep:e,closeModal:t})=>{const{handleAsyncAction:r}=sne(),n=(()=>{const e=iw();return(t,r,n)=>{e(l$({type:"social",pk:t,address:{type:"implicit",pkh:r},idp:"google",label:n}))}})(),i=a0();return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(ub,{}),title:"Connect or Create Account",children:(0,xn.jsxs)(jn,{width:"100%",spacing:"16px",children:[(0,xn.jsx)(Xn,{width:"100%",onClick:t=>e({type:"notice"}),size:"lg",children:"Create a new Account"}),(0,xn.jsx)(Xn,{width:"100%",onClick:t=>e({type:"connectOptions"}),size:"lg",variant:"tertiary",children:"I already have a wallet"}),(0,xn.jsxs)(ab,{width:"100%",paddingTop:"14px",paddingBottom:"6px",children:[(0,xn.jsx)(Om,{marginTop:"11px"}),(0,xn.jsx)(Am,{minWidth:"160px",color:Xv.gray[400],textAlign:"center",noOfLines:1,size:"sm",children:"Continue with Google"}),(0,xn.jsx)(Om,{marginTop:"11px"})]}),(0,xn.jsx)(cne,{onAuth:(e,o)=>r((async()=>{const{pk:r,pkh:a}=await TF(e);n(r,a,o),i({description:`Successfully added ${o} account`,status:"success"}),t()}))})]})})},tde=({selected:e,options:t,onChange:r})=>{const[n,o]=(0,i.useState)(e),[a,s]=(0,i.useState)(!1);return(0,xn.jsxs)(Sn,{children:[(0,xn.jsxs)(ab,{justifyContent:"space-between",height:"48px",padding:"12px 15px 15px 15px",color:Xv.gray[300],background:Xv.gray[800],border:"1px solid",borderColor:Xv.gray[500],borderRadius:"4px",_hover:{borderColor:Xv.gray[450]},cursor:"pointer","data-testid":"select-input",onClick:()=>s((e=>!e)),children:[(0,xn.jsx)(Am,{size:"sm",children:n.label}),(0,xn.jsx)(ay,{marginTop:"2px"})]}),a&&(0,xn.jsx)(B3,{position:"absolute",zIndex:2,width:"100%",margin:0,marginTop:"8px",padding:"15px",background:Xv.gray[700],border:"1px solid",borderColor:Xv.gray[500],borderRadius:"8px","data-testid":"select-options",listStyleType:"none",children:t.map((e=>(0,xn.jsx)(F3,{marginBottom:"5px",padding:"11px",color:Xv.gray[300],background:"transparent",borderRadius:"4px",_hover:{background:Xv.gray[500]},cursor:"pointer",onClick:()=>{s(!1),o(e),r(e.value)},children:(0,xn.jsx)(Am,{size:"sm",children:e.label})},e.value)))})]})},rde=({goToStep:e,account:t})=>{const{handleSubmit:r,setValue:n,formState:{errors:i}}=Yv({mode:"onBlur",defaultValues:{derivationPath:YU}});return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(Gy,{}),subtitle:"Choose a custom derivation path or select the default derivation path and use the default key.",title:"Derivation Path",children:(0,xn.jsxs)("form",{onSubmit:r((({derivationPath:r})=>{switch(t.type){case"ledger":e({type:"restoreLedger",account:{...t,derivationPath:r}});break;case"mnemonic":e({type:"masterPassword",account:{...t,derivationPath:r}})}})),style:{width:"100%"},children:[(0,xn.jsxs)(Im,{marginBottom:"20px",children:[(0,xn.jsx)(PH,{children:"Select Path"}),(0,xn.jsx)(tde,{onChange:e=>n("derivationPath",e),options:JU,selected:XU}),i.derivationPath&&(0,xn.jsx)(y$,{"data-testid":"error-message",children:i.derivationPath.message})]}),(0,xn.jsx)(Xn,{width:"100%",marginTop:"12px",size:"lg",type:"submit",children:"Continue"}),(0,xn.jsx)(ile,{display:"block",width:"100%",marginTop:"32px",textAlign:"center",href:"https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki",children:(0,xn.jsx)(L4,{backgroundColor:"white",defaultIsOpen:!1,hasArrow:!0,label:"Derivation path is a set of directions that helps create different secret keys; it starts from a master key or seed.",children:(0,xn.jsx)(Am,{color:Xv.blue,fontWeight:600,textDecoration:"underline",_hover:{textDecoration:"underline"},size:"sm",children:"What's a Derivation Path?"})})})]})})},nde=({goToStep:e})=>{const[t,r]=i.useState(!1);return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(py,{}),title:"Accept to Continue",children:(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsxs)(pg,{paddingBottom:"24px",fontWeight:"600",onChange:e=>r(e.target.checked),children:["I confirm that I have read and agreed with the"," ",(0,xn.jsx)(Qn,{textDecoration:"underline",_hover:{color:Xv.green},href:"https://umamiwallet.com/tos.html",rel:"noopener noreferrer",target:"_blank",children:"Terms of Service"})," ","and the"," ",(0,xn.jsx)(Qn,{textDecoration:"underline",_hover:{color:Xv.green},href:"https://umamiwallet.com/privacypolicy.html",rel:"noopener noreferrer",target:"_blank",children:"Privacy Policy"})]}),(0,xn.jsx)(Xn,{width:"100%",isDisabled:!t,onClick:()=>{e({type:"connectOrCreate"})},size:"lg",children:"Continue"})]})})},ide=({onClose:e})=>{const{register:t,handleSubmit:r,formState:{errors:n}}=Yv({mode:"onBlur"}),i=f$();return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(ub,{}),title:"Add a Fake Account",children:(0,xn.jsxs)("form",{onSubmit:r((async({pkh:t,name:r})=>{const n=new $P(r_.rpcUrl),o=await n.getManagerKey(t),a="string"===typeof o?o:o.key;i(YU,a,t,r),e()})),style:{width:"100%"},children:[(0,xn.jsx)(Am,{children:"It will be restored as a ledger account"}),(0,xn.jsxs)(Im,{isInvalid:!!n.pkh,children:[(0,xn.jsx)(PH,{children:"Address"}),(0,xn.jsx)(mg,{...t("pkh",{required:!0}),autoComplete:"off",placeholder:"Please enter the account address"})]}),(0,xn.jsxs)(Im,{isInvalid:!!n.name,children:[(0,xn.jsx)(PH,{children:"Name"}),(0,xn.jsx)(mg,{...t("name",{required:!0}),autoComplete:"off",placeholder:"Please enter the account name"})]}),(0,xn.jsx)(Xn,{width:"100%",marginTop:2,size:"lg",type:"submit",children:"Add account"})]})})},ode=({onSubmit:e,isLoading:t})=>{const r=Yv({mode:"onBlur"}),{handleSubmit:n,formState:{errors:i,isValid:o},getValues:a}=r;return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(zy,{}),subtitle:"Please choose a master password for Umami. You will need to use this password in order to perform any operations within Umami.",title:"Umami Master Password",children:(0,xn.jsx)($g,{...r,children:(0,xn.jsxs)("form",{onSubmit:n((({confirm:t})=>e(t))),style:{width:"100%"},children:[(0,xn.jsxs)(Im,{isInvalid:!!i.password,children:[(0,xn.jsx)(Xae,{"data-testid":"password",inputName:"password",placeholder:"Enter master password"}),i.password&&(0,xn.jsx)(y$,{children:i.password.message})]}),(0,xn.jsxs)(Im,{marginTop:"24px",isInvalid:!!i.confirm,children:[(0,xn.jsx)(Xae,{"data-testid":"confirmation",inputName:"confirm",label:"Confirm Password",placeholder:"Confirm your password",required:"Confirmation is required",validate:e=>a("password")===e||"Your passwords do no match"}),i.confirm&&(0,xn.jsx)(y$,{children:i.confirm.message})]}),(0,xn.jsx)(Xn,{width:"100%",marginTop:"32px",isDisabled:!o||t,isLoading:t,size:"lg",type:"submit",children:"Submit"})]})})})},ade=({account:e,onClose:t})=>{const r=h$(),n=(()=>{const e=iw();return(t,r,n)=>e(s$({secretKey:t,password:r,label:n}))})(),i=(()=>{const e=NU(),t=DU(),r=Object.values({...t,...e})[0];return r?async e=>{await LU(r,e)}:null})(),o=null!==i,{isLoading:a,handleAsyncAction:s}=sne(),c=a0(),l=a=>s((async()=>{switch(o&&await i(a),e.type){case"secret_key":await n(e.secretKey,a,e.label);break;case"mnemonic":await r({...e,password:a})}c({description:"Account successfully created!",status:"success"}),t()}));return o?(0,xn.jsx)(Yue,{isLoading:a,onSubmit:l}):(0,xn.jsx)(ode,{isLoading:a,onSubmit:l})},sde=({goToStep:e})=>(0,xn.jsx)(k$,{icon:(0,xn.jsx)(Uy,{}),subtitle:"Please read the following before you continue to see your secret Seed Phrase.",title:"Important Notice",children:(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(z3,{spacing:"16px",variant:"onboardingNotice",children:[{content:"Write down your seed phrase and store it in a safe place."},{content:"Make sure there is no one around you or looking over your shoulder."},{content:"Do not copy and paste the Seed Phrase or store it on your device."},{content:"Do not take a screenshot of your Seed Phrase."}].map(((e,t)=>(0,xn.jsx)(F3,{fontSize:"16px",fontWeight:600,children:e.content},t)))}),(0,xn.jsx)(Xn,{width:"100%",marginTop:"28px",onClick:()=>e({type:"showSeedphrase",account:{type:"mnemonic",mnemonic:(0,qP.we)(256)}}),size:"lg",children:"I understand"}),(0,xn.jsx)(Xn,{width:"100%",marginTop:"16px",onClick:()=>e({type:"restoreMnemonic"}),size:"lg",variant:"tertiary",children:"I already have a Seed Phrase"})]})}),cde=()=>{const e=Yv({mode:"onBlur"}),{handleSubmit:t,register:r,formState:{errors:n,isValid:i}}=e,{handleAsyncAction:o}=sne(),a=(()=>{const e=h$();return async(t,r)=>{const n=t.recoveryPhrases,i=t.derivationPaths.map((e=>"m/"===e.slice(0,2)?e.slice(2):e)),o=[];try{for(const e of n)o.push(await LU(e,r,"V1"))}catch(pge){throw new Error("Invalid password.")}for(const[a,s]of o.entries())await e({mnemonic:s,password:r,label:CH,derivationPath:i[a]})}})();return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(Wy,{}),subtitle:"Select a JSON backup file and enter the password you used to encrypt it.",title:"Restore from Backup",children:(0,xn.jsx)($g,{...e,children:(0,xn.jsx)("form",{onSubmit:t((({password:e,file:t})=>o((async()=>{const r=await t[0].text(),n=JSON.parse(r);if(n.recoveryPhrases&&n.derivationPaths)await a(n,e);else{if(!n["persist:accounts"])throw new Error("Invalid backup file.");await(async(e,t)=>{const r=e["persist:accounts"];if(!r)throw new Error("Invalid backup file.");const n=JSON.parse(r),i=JSON.parse(n.seedPhrases);try{for(const e of Object.values(i))await LU(e,t,"V2")}catch(pge){throw new Error("Invalid password.")}AH.pause(),localStorage.clear(),localStorage.setItem("persist:accounts",r),localStorage.setItem("persist:root",e["persist:root"])})(n,e),window.location.reload()}})))),style:{width:"100%"},children:(0,xn.jsxs)(Pm,{children:[(0,xn.jsxs)(Im,{isInvalid:!!n.file,children:[(0,xn.jsx)(PH,{children:"Upload File"}),(0,xn.jsx)(ab,{children:(0,xn.jsx)(mg,{padding:"2px","data-testid":"file-input",...r("file",{required:"File is required"}),accept:".json",type:"file",variant:"unstyled"})}),n.file&&(0,xn.jsx)(g$,{"data-testid":"file-errors",children:n.file.message})]}),(0,xn.jsx)(Im,{marginTop:"24px",children:(0,xn.jsx)(Xae,{"data-testid":"password-input",inputName:"password",label:"Your password (if you have one)",required:!1})}),(0,xn.jsx)(Xn,{width:"100%",marginTop:"32px",isDisabled:!i,size:"lg",type:"submit",children:"Import Wallet"})]})})})})},lde=({closeModal:e,account:t})=>{const r=f$(),n=a0(),{isLoading:i,handleAsyncAction:o}=sne();return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(ob,{}),subtitle:"Complete the steps to connect.",title:"Connect Ledger",children:(0,xn.jsxs)(jn,{overflowY:"auto",spacing:"24px",children:[(0,xn.jsx)(z3,{spacing:4,children:[{content:"Plug your Ledger into your computer using a USB cable."},{content:"Unlock your Ledger."},{content:"Make sure your Ledger has the latest firmware version."},{content:"Install and open the Tezos Wallet app on your Ledger."},{content:"Click the button below and confirm the action on your Ledger."}].map(((e,t)=>(0,xn.jsx)(F3,{children:e.content},t)))}),(0,xn.jsx)(Xn,{width:"100%",isLoading:i,onClick:()=>o((()=>ine((async()=>{const i=n({description:"Please open the Tezos app on your Ledger and approve the operation",status:"info"}),o=QU(t.derivationPath,0),{pk:a,pkh:s}=await(async e=>{const t=await aP.create(),r=new vP(t,e,!0),n=await r.publicKey(),i=await r.publicKeyHash();return await t.close(),{pk:n,pkh:i}})(o);r(o,a,s,t.label),n.close(i),n({description:"Account successfully created!",status:"success"}),e()}),6e4)),(e=>"PublicKeyRetrievalError"===e.name?{description:"Request rejected. Please unlock your Ledger and open the Tezos app"}:"InvalidStateError"===e.name?{description:"Request pending. Check your ledger..."}:{description:`Ledger error. ${e.message||e.name}`})),size:"lg",children:"Export Public Key"})]})})};var ude=rse({displayName:"ChevronDownIcon",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"}),dde=wn((function(e,t){const{children:r,placeholder:n,className:i,...o}=e;return(0,xn.jsxs)(bn.select,{...o,ref:t,className:v("chakra-select",i),children:[n&&(0,xn.jsx)("option",{value:"",children:n}),r]})}));dde.displayName="SelectField";var hde=wn(((e,t)=>{var r;const n=qn("Select",e),{rootProps:i,placeholder:o,icon:a,color:s,height:c,h:l,minH:u,minHeight:d,iconColor:h,iconSize:f,...p}=ht(e),[m,g]=function(e,t){const r={},n={};for(const[i,o]of Object.entries(e))t.includes(i)?r[i]=o:n[i]=o;return[r,n]}(p,tt),v=Fm(g),y={width:"100%",height:"fit-content",position:"relative",color:s},b={paddingEnd:"2rem",...n.field,_focus:{zIndex:"unset",...null==(r=n.field)?void 0:r._focus}};return(0,xn.jsxs)(bn.div,{className:"chakra-select__wrapper",__css:y,...m,...i,children:[(0,xn.jsx)(dde,{ref:t,height:null!=l?l:c,minH:null!=u?u:d,placeholder:o,...v,__css:b,children:e.children}),(0,xn.jsx)(mde,{"data-disabled":_(v.disabled),...(h||s)&&{color:h||s},__css:n.icon,...f&&{fontSize:f},children:a})]})}));hde.displayName="Select";var fde=e=>(0,xn.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,xn.jsx)("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})}),pde=bn("div",{baseStyle:{position:"absolute",display:"inline-flex",alignItems:"center",justifyContent:"center",pointerEvents:"none",top:"50%",transform:"translateY(-50%)"}}),mde=e=>{const{children:t=(0,xn.jsx)(fde,{}),...r}=e,n=(0,i.cloneElement)(t,{role:"presentation",className:"chakra-select__icon",focusable:!1,"aria-hidden":!0,style:{width:"1em",height:"1em",color:"currentColor"}});return(0,xn.jsx)(pde,{...r,className:"chakra-select__icon-wrapper",children:(0,i.isValidElement)(t)?n:null})};mde.displayName="SelectIcon";const gde=({inputName:e,validate:t,inputProps:r,listProps:n})=>{const[o,a]=(0,i.useState)(!0),{register:s,setValue:c,watch:l}=Ug(),u=l(e),d=qP.Yu.EN.filter((e=>u&&e.startsWith(u))).sort(),h=!o&&d.length>0&&(d.length>1||d[0]!==u);return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(mg,{zIndex:0,autoComplete:"off","data-testid":"mnemonic-input",onFocus:()=>a(!1),placeholder:"Type here...",...s(e,{required:"Required",validate:t,onChange:()=>a(!1),onBlur:()=>a(!0)}),...r}),h&&(0,xn.jsx)(B3,{"data-testid":"suggestions",variant:"suggestions",...n,children:d.map((t=>(0,xn.jsx)(F3,{paddingTop:"2px",fontSize:"14px",fontWeight:600,"data-testid":"suggestion",onMouseDown:()=>c(e,t),paddingX:"7px",children:t},t)))})]})},vde=[12,15,18,24],yde=({goToStep:e})=>{const t=Yv({mode:"onBlur"}),{handleSubmit:r,setValue:n,trigger:o,formState:{isValid:a}}=t,{handleAsyncAction:s}=sne(),[c,l]=(0,i.useState)(24);return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(Ly,{width:"24px",height:"24px",stroke:Xv.gray[450]}),subtitle:"Please fill in the Seed Phrase in sequence.",title:"Import Seed Phrase",children:(0,xn.jsx)(Sn,{overflowX:"hidden",children:(0,xn.jsx)($g,{...t,children:(0,xn.jsx)("form",{onSubmit:r((t=>s((async()=>{const r=Object.values(t).join(" ").trim();if(!(0,qP.JB)(r))throw new Error(`Invalid Mnemonic: "${r}"`);return e({type:"nameAccount",account:{type:"mnemonic",mnemonic:r}}),Promise.resolve()})))),style:{width:"100%"},children:(0,xn.jsxs)(jn,{width:"100%",spacing:4,children:[(0,xn.jsx)(hde,{height:"48px",color:Xv.gray[450],"data-testid":"select",icon:(0,xn.jsx)(ude,{}),onChange:e=>(e=>{const t=Number(e);if(vde.includes(t))return l((e=>(e>t&&(0,Db.range)(t,Math.max(...vde)).forEach((e=>{n(`word${e}`,void 0)})),t))),o()})(e.target.value),value:c,children:vde.reverse().map((e=>(0,xn.jsxs)("option",{value:e,children:[e," Words"]},e)))}),(0,xn.jsx)(Rue,{gridGap:3,gridTemplateColumns:"repeat(3, 1fr)",paddingBottom:"20px",children:(0,Db.range)(c).map((e=>{const t=`word${e}`;return(0,xn.jsxs)(Mue,{display:"flex",height:"38px",padding:"4px",fontSize:"sm",background:Xv.gray[800],border:"1px solid",borderColor:Xv.gray[500],borderRadius:"4px",children:[(0,xn.jsx)(ei,{width:"18px",marginRight:"6px",paddingTop:"6px",color:Xv.gray[400],textAlign:"right",size:"sm",children:e+1}),(0,xn.jsx)(gde,{inputName:t,inputProps:{onPaste:async e=>{e.preventDefault();return(e=>s((async()=>{const t=e.split(" ");if(!vde.includes(t.length))throw new Error(`the mnemonic must be ${vde.join(", ")} words long`);return t.slice(0,c).forEach(((e,t)=>{n(`word${t}`,e)})),o()})))(await navigator.clipboard.readText())},border:"none",size:"xsmall"},listProps:{width:"126px",marginTop:"38px",marginLeft:"-5px"}})]},e)}))}),(0,xn.jsx)(Xn,{width:"100%",isDisabled:!a,size:"lg",type:"submit",children:"Continue"})]})})})})})};var bde=["h","minH","height","minHeight"],wde=wn(((e,t)=>{const r=Vn("Textarea",e),{className:n,rows:i,...o}=ht(e),a=Fm(o),s=i?function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(r,bde):r;return(0,xn.jsx)(bn.textarea,{ref:t,rows:i,...a,className:v("chakra-textarea",n),__css:s})}));wde.displayName="Textarea";const xde=({goToStep:e})=>{const[t,r]=(0,i.useState)(!1),{handleAsyncAction:n}=sne(),{register:o,handleSubmit:a,formState:{errors:s,isValid:c}}=Yv({mode:"onBlur",defaultValues:{password:""}});return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(Ly,{width:"24px",height:"24px",stroke:Xv.gray[450]}),title:"Insert Secret Key",children:(0,xn.jsxs)("form",{onSubmit:a((async({secretKey:t,password:r})=>n((async()=>{try{const n=await pO.fromSecretKey(t.trim(),r),i=await n.secretKey();e({type:"nameAccount",account:{type:"secret_key",secretKey:i}})}catch(n){const e=n.message||"";if(e.includes("Cannot read properties of null (reading 'slice')"))throw new Error("Key-password pair is invalid");if(e.includes("Invalid checksum"))throw new Error("Invalid secret key: checksum doesn't match");throw n}})))),style:{width:"100%"},children:[(0,xn.jsxs)(Im,{isInvalid:!!s.secretKey,children:[(0,xn.jsx)(PH,{children:"Secret Key"}),(0,xn.jsx)(wde,{minHeight:"130px","data-testid":"secret-key",...o("secretKey",{required:"Secret key is required",onChange:e=>r("e"===e.target.value.trim().substring(2,3))}),placeholder:"Your secret key"}),s.secretKey&&(0,xn.jsx)(g$,{children:s.secretKey.message})]}),t&&(0,xn.jsxs)(Im,{marginTop:"20px",isInvalid:!!s.password,children:[(0,xn.jsx)(PH,{children:"Password"}),(0,xn.jsx)(mg,{"data-testid":"password",...o("password",{validate:e=>{if(!e.trim())return"Password is required"}})}),s.password&&(0,xn.jsx)(g$,{children:s.password.message})]}),(0,xn.jsx)(Xn,{width:"100%",marginTop:"32px",isDisabled:!c,size:"lg",type:"submit",children:"Continue"})]})})};var _de=wn((function(e,t){const{columns:r,spacingX:n,spacingY:i,spacing:o,minChildWidth:a,...s}=e,c=Bn(),l=a?function(e,t){return On(e,(e=>{const r=Un("sizes",e,function(e){return"number"===typeof e?`${e}px`:e}(e))(t);return null===e?null:`repeat(auto-fit, minmax(${r}, 1fr))`}))}(a,c):On(r,(e=>null===e?null:`repeat(${e}, minmax(0, 1fr))`));return(0,xn.jsx)(Rue,{ref:t,gap:o,columnGap:n,rowGap:i,templateColumns:l,...s})}));_de.displayName="SimpleGrid";const kde=({goToStep:e,account:t})=>(0,xn.jsx)(k$,{icon:(0,xn.jsx)(Ly,{width:"24px",height:"24px",stroke:Xv.gray[450]}),subtitle:"Please record the following 24 words in sequence in order to restore it in the future.",title:"Record Seed Phrase",children:(0,xn.jsxs)(jn,{children:[(0,xn.jsx)(_de,{columns:3,spacing:2,children:t.mnemonic.split(" ").map(((e,t)=>(0,xn.jsxs)(ab,{width:"126px",padding:"6px",border:"1px dashed",borderColor:Xv.gray[500],borderRadius:"4px",children:[(0,xn.jsx)(ei,{width:"18px",marginRight:"10px",paddingTop:"2px",color:Xv.gray[450],textAlign:"right",size:"sm",children:t+1}),(0,xn.jsx)(Am,{"data-testid":`mnemonic-word-${t}`,size:"sm",children:e})]},t)))}),(0,xn.jsx)(Xn,{width:"100%",marginTop:"20px",onClick:r=>{e({type:"verifySeedphrase",account:t})},size:"lg",children:"OK, I've recorded it"})]})}),Sde=({goToStep:e,account:t})=>{const r=t.mnemonic.split(" "),n=Yv({mode:"onBlur"}),{handleSubmit:o,formState:{errors:a,isValid:s}}=n,[c]=(0,i.useState)(((e,t)=>(0,Db.shuffle)(e.map(((e,t)=>({value:e,index:t})))).slice(0,t).sort(((e,t)=>e.index-t.index)))(r,5));return(0,xn.jsx)(k$,{icon:(0,xn.jsx)(my,{}),subtitle:"To verify, please type in the word that corresponds to each sequence number.",title:"Verify Seed Phrase",children:(0,xn.jsx)(Sn,{overflowX:"hidden",overflowY:"auto",width:"100%",children:(0,xn.jsx)($g,{...n,children:(0,xn.jsxs)("form",{onSubmit:o((()=>e({type:"nameAccount",account:t}))),children:[c.map(((e,t)=>{const r=`${e.index}`,n=a[r];return(0,xn.jsxs)(Im,{marginBottom:"12px",isInvalid:!!n,children:[(0,xn.jsx)(Am,{position:"absolute",zIndex:1,width:"26px",marginTop:"12px",marginLeft:"4px",textAlign:"right","data-testid":"mnemonic-index",children:e.index+1}),(0,xn.jsx)(Sn,{width:"100%",children:(0,xn.jsx)(gde,{inputName:r,inputProps:{paddingLeft:"36px",size:"md"},listProps:{marginTop:"6px"},validate:t=>{if(t!==e.value)return"Word doesn't match"}})}),(null===n||void 0===n?void 0:n.message)&&(0,xn.jsx)(y$,{children:n.message})]},t)})),(0,xn.jsx)(Xn,{width:"100%",marginTop:"20px",isDisabled:!s,size:"lg",type:"submit",children:"Continue"})]})})})})},Ede=e=>{const{isOpen:t,onOpen:r,onClose:n}=si(),o=0!==zU().length,a=(e=>{const[t,r]=(0,i.useState)(e),[n,o]=(0,i.useState)([t]),a=1===n.length;return{reset:()=>{r(e),o([e])},goToStep:e=>{r(e),o([...n,e])},currentStep:t,goBack:()=>{if(a)return;n.pop();const e=n[n.length-1];o(n),r(e)},atInitialStep:a,fullHistory:n}})({type:o?"connectOrCreate":"eula"}),{currentStep:s,goToStep:c}=a,l=()=>{a.reset(),e&&e(),n()};return{modalElement:(0,xn.jsxs)(lo,{autoFocus:!1,closeOnOverlayClick:!1,isCentered:!0,isOpen:t,onClose:l,children:[o&&(0,xn.jsx)(Sh,{}),(0,xn.jsxs)(ym,{children:[!a.atInitialStep&&(0,xn.jsx)(ise,{onClick:a.goBack}),(0,xn.jsx)(km,{onClick:l}),(()=>{switch(s.type){case"eula":return(0,xn.jsx)(nde,{goToStep:c});case"connectOrCreate":return(0,xn.jsx)(ede,{closeModal:l,goToStep:c});case"connectOptions":return(0,xn.jsx)(Que,{goToStep:c});case"notice":return(0,xn.jsx)(sde,{goToStep:c});case"restoreMnemonic":return(0,xn.jsx)(yde,{goToStep:c});case"restoreBackup":return(0,xn.jsx)(cde,{});case"showSeedphrase":return(0,xn.jsx)(kde,{goToStep:c,...s});case"verifySeedphrase":return(0,xn.jsx)(Sde,{goToStep:c,...s});case"nameAccount":return(0,xn.jsx)(jH,{goToStep:c,...s});case"derivationPath":return(0,xn.jsx)(rde,{goToStep:c,...s});case"restoreLedger":return(0,xn.jsx)(lde,{closeModal:l,...s});case"masterPassword":return(0,xn.jsx)(ade,{onClose:l,...s});case"fakeAccount":return(0,xn.jsx)(ide,{onClose:n});case"restoreSecretKey":return(0,xn.jsx)(xde,{goToStep:c})}})()]})]}),onOpen:r}};var Ade=r(1520),Pde=r.n(Ade);const Ode=e=>{const t=iw(),{openWith:r}=(0,i.useContext)(i0),{mode:n,operations:o,fee:a,data:{threshold:s,signers:c,name:l}}=e,{fee:u,operations:d,estimationFailed:h,isLoading:f,form:p,reEstimate:m,signer:g,onSign:v,handleAsyncAction:y}=Kce(a,o,n);return(0,xn.jsx)($g,{...p,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(sse,{...e,description:"Please review the details and then continue to submit contract.",operationsType:d.type,signer:g,title:"Review & Submit"}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(Am,{marginBottom:"24px",padding:"14px",color:Xv.gray[50],background:Xv.gray[800],borderRadius:"6px","data-testid":"contract-name",children:l}),(0,xn.jsx)(PH,{children:"Approvers"}),(0,xn.jsx)(Sn,{marginBottom:"12px","data-testid":"approvers",children:c.map((e=>(0,xn.jsx)(Y4,{address:LE(e.val),"data-testid":`approver-${e.val}`},e.val)))}),(0,xn.jsx)(ab,{justifyContent:"flex-end",children:(0,xn.jsx)(Tde,{signersAmount:c.length,threshold:s})}),(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(Im,{marginTop:"24px",marginBottom:"12px",children:(0,xn.jsx)(r8,{allowUnknown:!1,inputName:"signer",isLoading:f,keepValid:!0,label:"Creation Fee Payer",onUpdate:m})}),(0,xn.jsx)(ab,{justifyContent:"flex-end",children:(0,xn.jsx)(hse,{fee:u})})]})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isDisabled:h,isLoading:f,onSubmit:async e=>y((async()=>{const n=await v(e);if(!n)throw new Error("An error occurred during contract origination");const i=(await n.getOriginatedContractAddresses())[0];return t(bH.addMultisigLabel({pkh:i,label:l})),r((0,xn.jsx)(use,{hash:n.opHash}))})),signer:g,text:"Submit Contract"})})]})})})},Tde=({threshold:e,signersAmount:t})=>(0,xn.jsxs)(ab,{alignItems:"center","data-testid":"threshold",children:[(0,xn.jsx)(ei,{marginRight:"4px",color:Xv.gray[450],size:"sm",children:"No. of approvals:"}),(0,xn.jsx)(Am,{color:Xv.gray[400],size:"sm",children:`${e} out of ${t}`})]}),Cde=[{prim:"storage",args:[{prim:"pair",args:[{prim:"address",annots:["%owner"]},{prim:"pair",args:[{prim:"set",args:[{prim:"address"}],annots:["%signers"]},{prim:"pair",args:[{prim:"nat",annots:["%threshold"]},{prim:"pair",args:[{prim:"nat",annots:["%last_op_id"]},{prim:"pair",args:[{prim:"big_map",args:[{prim:"nat"},{prim:"pair",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}],annots:["%actions"]},{prim:"set",args:[{prim:"address"}],annots:["%approvals"]}]}],annots:["%pending_ops"]},{prim:"big_map",args:[{prim:"string"},{prim:"bytes"}],annots:["%metadata"]}]}]}]}]}]}]},{prim:"parameter",args:[{prim:"or",args:[{prim:"or",args:[{prim:"or",args:[{prim:"bytes",annots:["%set_metadata_uri"]},{prim:"unit",annots:["%default"]}]},{prim:"or",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}],annots:["%propose"]},{prim:"nat",annots:["%approve"]}]}]},{prim:"nat",annots:["%execute"]}]}]},{prim:"code",args:[[{prim:"NIL",args:[{prim:"operation"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"UNPAIR"},{prim:"DIP",args:[{int:"1"},[{prim:"UNPAIR",args:[{int:"6"}]}]]},{prim:"IF_LEFT",args:[[{prim:"IF_LEFT",args:[[{prim:"IF_LEFT",args:[[{prim:"DUP",args:[{int:"2"}]},{prim:"SENDER"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID_CALLER"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"SOME"},{prim:"PUSH",args:[{prim:"string"},{string:""}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}],[{prim:"DROP",args:[{int:"1"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"SIZE"},{prim:"COMPARE"},{prim:"GE"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"FUNDING BLOCKED SINCE PARAMS ARE INVALID"}]},{prim:"FAILWITH"}],[]]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}],[{prim:"IF_LEFT",args:[[{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"3"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"nat"},{int:"1"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"ADD"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"4"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"4"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"MEM"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"KEY_EXISTS"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[{prim:"DUP",args:[{int:"6"}]},{prim:"EMPTY_SET",args:[{prim:"address"}]},{prim:"PUSH",args:[{prim:"bool"},{prim:"True"}]},{prim:"SENDER"},{prim:"UPDATE"},{prim:"DUP",args:[{int:"3"}]},{prim:"PAIR"},{prim:"SOME"},{prim:"DUP",args:[{int:"7"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"5"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"5"}]}]]},{prim:"DROP",args:[{int:"1"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}],[{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID OP ID"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"4"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP"},{prim:"CDR"},{prim:"SENDER"},{prim:"MEM"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ALREADY APPROVED"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"8"}]},{prim:"DUP",args:[{int:"4"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"UNPAIR"},{prim:"SWAP"},{prim:"DROP",args:[{int:"1"}]},{prim:"DUP",args:[{int:"9"}]},{prim:"DUP",args:[{int:"5"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"CDR"},{prim:"PUSH",args:[{prim:"bool"},{prim:"True"}]},{prim:"SENDER"},{prim:"UPDATE"},{prim:"SWAP"},{prim:"PAIR"},{prim:"SOME"},{prim:"DUP",args:[{int:"4"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"2"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}]]}],[{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID OP ID"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"4"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"5"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"CDR"},{prim:"SIZE"},{prim:"COMPARE"},{prim:"GE"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"NOT YET APPROVED"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"CAR"},{prim:"PUSH",args:[{prim:"unit"},{prim:"Unit"}]},{prim:"EXEC"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"8"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"8"}]},{prim:"DUP",args:[{int:"7"}]},{prim:"NONE",args:[{prim:"pair",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}]},{prim:"set",args:[{prim:"address"}]}]}]},{prim:"DUP",args:[{int:"4"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"2"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}]]}],jde=e=>{return{type:"contract_origination",sender:LE(e.sender),code:Cde,storage:(t=e.sender,r=e.signers.map((e=>e.val)),n=String(e.threshold),{owner:t,signers:r,threshold:n,last_op_id:"0",pending_ops:[],metadata:[]})};var t,r,n},Rde=e=>{const{goBack:t,sender:r,...n}=e,o=Yv({mode:"onBlur",defaultValues:{sender:r.address.pkh,signers:[{val:""}],threshold:1,...qce(n)}}),{formState:{errors:a,isValid:s},control:c,register:l,handleSubmit:u,getValues:d,watch:h}=o,f=function(e){const t=Ug(),{control:r=t.control,name:n,keyName:o="id",shouldUnregister:a}=e,[s,c]=i.useState(r._getFieldArray(n)),l=i.useRef(r._getFieldArray(n).map(ev)),u=i.useRef(s),d=i.useRef(n),h=i.useRef(!1);d.current=n,u.current=s,r._names.array.add(n),e.rules&&r.register(n,e.rules),Wg({next:({values:e,name:t})=>{if(t===d.current||!t){const t=Tg(e,d.current);Array.isArray(t)&&(c(t),l.current=t.map(ev))}},subject:r._subjects.array});const f=i.useCallback((e=>{h.current=!0,r._updateFieldArray(n,e)}),[r,n]);return i.useEffect((()=>{if(r._state.action=!1,nv(n,r._names)&&r._subjects.state.next({...r._formState}),h.current&&(!rv(r._options.mode).isOnSubmit||r._formState.isSubmitted))if(r._options.resolver)r._executeSchema([n]).then((e=>{const t=Tg(e.errors,n),i=Tg(r._formState.errors,n);(i?!t&&i.type||t&&(i.type!==t.type||i.message!==t.message):t&&t.type)&&(t?Jg(r._formState.errors,n,t):Pv(r._formState.errors,n),r._subjects.state.next({errors:r._formState.errors}))}));else{const e=Tg(r._fields,n);!e||!e._f||rv(r._options.reValidateMode).isOnSubmit&&rv(r._options.mode).isOnSubmit||bv(e,r._formValues,r._options.criteriaMode===Rg.all,r._options.shouldUseNativeValidation,!0).then((e=>!Vg(e)&&r._subjects.state.next({errors:ov(r._formState.errors,e,n)})))}r._subjects.values.next({name:n,values:{...r._formValues}}),r._names.focus&&iv(r._fields,((e,t)=>{if(r._names.focus&&t.startsWith(r._names.focus)&&e.focus)return e.focus(),1})),r._names.focus="",r._updateValid(),h.current=!1}),[s,n,r]),i.useEffect((()=>(!Tg(r._formValues,n)&&r._updateFieldArray(n),()=>{(r._options.shouldUnregister||a)&&r.unregister(n)})),[n,r,o,a]),{swap:i.useCallback(((e,t)=>{const i=r._getFieldArray(n);Av(i,e,t),Av(l.current,e,t),f(i),c(i),r._updateFieldArray(n,i,Av,{argA:e,argB:t},!1)}),[f,n,r]),move:i.useCallback(((e,t)=>{const i=r._getFieldArray(n);kv(i,e,t),kv(l.current,e,t),f(i),c(i),r._updateFieldArray(n,i,kv,{argA:e,argB:t},!1)}),[f,n,r]),prepend:i.useCallback(((e,t)=>{const i=Kg(Ag(e)),o=Sv(r._getFieldArray(n),i);r._names.focus=tv(n,0,t),l.current=Sv(l.current,i.map(ev)),f(o),c(o),r._updateFieldArray(n,o,Sv,{argA:xv(e)})}),[f,n,r]),append:i.useCallback(((e,t)=>{const i=Kg(Ag(e)),o=wv(r._getFieldArray(n),i);r._names.focus=tv(n,o.length-1,t),l.current=wv(l.current,i.map(ev)),f(o),c(o),r._updateFieldArray(n,o,wv,{argA:xv(e)})}),[f,n,r]),remove:i.useCallback((e=>{const t=Ev(r._getFieldArray(n),e);l.current=Ev(l.current,e),f(t),c(t),r._updateFieldArray(n,t,Ev,{argA:e})}),[f,n,r]),insert:i.useCallback(((e,t,i)=>{const o=Kg(Ag(t)),a=_v(r._getFieldArray(n),e,o);r._names.focus=tv(n,e,i),l.current=_v(l.current,e,o.map(ev)),f(a),c(a),r._updateFieldArray(n,a,_v,{argA:e,argB:xv(t)})}),[f,n,r]),update:i.useCallback(((e,t)=>{const i=Ag(t),o=Ov(r._getFieldArray(n),e,i);l.current=[...o].map(((t,r)=>t&&r!==e?l.current[r]:ev())),f(o),c([...o]),r._updateFieldArray(n,o,Ov,{argA:e,argB:i},!0,!1)}),[f,n,r]),replace:i.useCallback((e=>{const t=Kg(Ag(e));l.current=t.map(ev),f([...t]),c([...t]),r._updateFieldArray(n,[...t],(e=>e),{},!0,!1)}),[f,n,r]),fields:i.useMemo((()=>s.map(((e,t)=>({...e,[o]:l.current[t]||ev()})))),[s,o])}}({control:c,name:"signers",rules:{minLength:1}}),p=h("signers").length,m=Jce({SignPage:Ode,signPageExtraData:h(),FormPage:Rde,defaultFormPageProps:e,toOperation:jde}),{onFormSubmitActionHandlers:[g],isLoading:v}=ele([m]);return(0,xn.jsx)($g,{...o,children:(0,xn.jsxs)(ym,{children:[(0,xn.jsx)(ise,{onClick:t}),(0,xn.jsxs)("form",{onSubmit:u(g),children:[(0,xn.jsx)(tse,{subTitle:"Select the participants of the contract and choose the minimum number of approvals.",title:"Select Approvers"}),(0,xn.jsxs)(Pm,{children:[f.fields.map(((e,t)=>{var r;const n=a.signers&&a.signers[t],i=`${0===t?"Select ":""}${Pde()(t+1)} approver`,o=p>1?"short":"default",s="short"===o?"368px":"100%";return(0,xn.jsxs)(Im,{display:"inline-block",width:s,marginBottom:"8px","data-testid":`signer-input-${t}`,isInvalid:!!n,children:[(0,xn.jsx)(r8,{allowUnknown:!0,inputName:`signers.${t}.val`,label:i,size:o,style:{width:s},validate:e=>{if(!zE(e))return"Signer must be valid TZ address";const t=d("signers").map((e=>e.val));return t.length>new Set(t).size?"Duplicate approver":void 0}}),p>1&&(0,xn.jsx)(s8,{position:"absolute",height:"24px",marginTop:"-36px",marginLeft:"374px",background:Xv.gray[500],"aria-label":"Remove","data-testid":`remove-signer-${t}`,icon:(0,xn.jsx)(nb,{width:"12px",height:"14px",stroke:Xv.gray[300]}),isRound:!0,onClick:()=>f.remove(t),size:"xs",variant:"tertiary"}),n&&(0,xn.jsx)(y$,{"data-testid":`signer-${t}-error`,children:null===(r=n.val)||void 0===r?void 0:r.message})]},e.id)})),(0,xn.jsx)(Xn,{paddingLeft:0,onClick:()=>f.append({val:""}),variant:"specialCTA",children:"+ Add Approver"}),(0,xn.jsxs)(Im,{marginTop:"24px",isInvalid:!!a.threshold,children:[(0,xn.jsxs)(PH,{display:"inline",children:["Min No. of approvals:",(0,xn.jsx)(C3,{display:"inline",marginLeft:"10px",children:(0,xn.jsx)(mg,{width:"60px",color:"white","data-testid":"threshold-input",step:1,type:"number",...l("threshold",{valueAsNumber:!0,required:"No. of approvals is required",max:{value:p,message:`Max no. of approvals is ${p}`},min:{value:1,message:"Min no. of approvals is 1"}})})})]}),(0,xn.jsxs)(Am,{display:"inline","data-testid":"max-signers",children:["out of ",p]}),a.threshold&&(0,xn.jsx)(y$,{"data-testid":"threshold-error",children:a.threshold.message})]})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Xn,{width:"100%",isDisabled:!s,isLoading:v,size:"lg",type:"submit",children:"Review"})})]})]})})},Ide=({name:e})=>{const t=Yv({mode:"onBlur",defaultValues:{name:e||""}}),{formState:{errors:r,isValid:n},register:o,handleSubmit:a}=t,s=zU(),c=ZU(),{openWith:l}=(0,i.useContext)(i0),u=$U();return(0,xn.jsx)($g,{...t,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{onSubmit:a((({name:e})=>l((0,xn.jsx)(Rde,{form:{name:e.trim()},goBack:()=>l((0,xn.jsx)(Ide,{name:e})),sender:c(s)})))),children:[(0,xn.jsx)(tse,{subTitle:"Name your account. The account name will only appear in your local Umami app.",title:"Account Name"}),(0,xn.jsx)(Pm,{children:(0,xn.jsxs)(Im,{isInvalid:!!r.name,children:[(0,xn.jsx)(PH,{children:"Account Name"}),(0,xn.jsx)(C3,{children:(0,xn.jsx)(mg,{"data-testid":"multisig-account-name",type:"text",...o("name",{validate:e=>0==e.trim().length?"Name should not be empty":u(e.trim())?void 0:"Name must be unique across all accounts and contacts"}),placeholder:"Account Name"})}),r.name&&(0,xn.jsx)(y$,{"data-testid":"name-error",children:r.name.message})]})}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Xn,{width:"100%",isDisabled:!n,size:"lg",type:"submit",children:"Continue"})})]})})})},Mde=()=>{const{onOpen:e,modalElement:t}=Ede();return(0,xn.jsxs)(ab,{flexDirection:"row-reverse",marginTop:"12px",marginBottom:"16px",children:[(0,xn.jsxs)(Xn,{paddingRight:"0",onClick:e,variant:"CTAWithIcon",children:[(0,xn.jsx)(Qv,{stroke:"currentcolor"}),(0,xn.jsx)(Am,{marginLeft:"4px",size:"sm",children:"Add Account"})]}),t]})},Lde=({groupLabel:e,accounts:t,balances:r})=>{const n=t[0],o="multisig"===n.type,a="mnemonic"===n.type,{openWith:s,onClose:c}=(0,i.useContext)(i0),l=(()=>{const e=iw();return t=>{e(u$({fingerPrint:t}))}})(),u=(()=>{const e=iw();return t=>{e(d$({accountType:t}))}})(),d=zU().length===t.length;let h,f="Remove All";const p=Nde(n);d?(h="Removing all your accounts will off-board you from Umami. This will remove or reset all customized settings to their defaults. Personal data (including saved contacts, password and accounts) won't be affected.",f="Remove & Off-board"):h=a?`Are you sure you want to remove all accounts derived from ${p}?`:`Are you sure you want to remove all of your ${p}?`;return(0,xn.jsxs)(Sn,{"data-testid":`account-group-${e}`,children:[(0,xn.jsxs)(ab,{justifyContent:"space-between",children:[(0,xn.jsx)(ei,{marginBottom:4,"data-testid":"account-group-title",size:"md",children:e}),!o&&(0,xn.jsx)(Zue,{onCreate:a?()=>{if(!a)throw new Error("Can't derive a non mnemonic account!");return s((0,xn.jsx)(zde,{fingerprint:n.seedFingerPrint,onDone:c}))}:void 0,onRemove:()=>s((0,xn.jsx)(gue,{buttonLabel:f,description:h,onSubmit:()=>{a?l(n.seedFingerPrint):u(n.type),c()},title:"Remove All Accounts"}))})]}),t.map((e=>(0,xn.jsx)(Sn,{marginBottom:"16px",children:(0,xn.jsx)(mue,{account:e,balance:r[e.address.pkh]})},e.address.pkh)))]})},Nde=e=>{switch(e.type){case"mnemonic":return`Seedphrase ${e.seedFingerPrint}`;case"social":return"Social Accounts";case"ledger":return"Ledger Accounts";case"secret_key":return"Secret Key Accounts";case"multisig":return"Multisig Accounts"}},Dde=()=>{const e=UU(),t=ow((e=>e.assets.balances.mutez)),r=(0,Db.groupBy)(e,Nde),{openWith:n}=(0,i.useContext)(i0),o=Object.entries(r).map((([e,r])=>(0,xn.jsx)(Lde,{accounts:r,balances:t,groupLabel:e},e)));return(0,xn.jsx)(xn.Fragment,{children:(0,xn.jsx)(Sn,{height:"100%",marginRight:0,children:(0,xn.jsxs)(Jue,{children:[(0,Db.compact)(o),(0,xn.jsx)(Xn,{width:"100%",height:"90px",background:Xv.black,border:"1px dashed",borderColor:Xv.gray[500],onClick:()=>n((0,xn.jsx)(Ide,{})),variant:"outline",children:(0,xn.jsxs)(Am,{display:"block",width:"100%",margin:5,color:Xv.gray[400],textAlign:"center",children:[(0,xn.jsx)(Ly,{marginRight:1,stroke:Xv.gray[450]}),"Create New Multisig"]})})]})})})},zde=e=>{const{isLoading:t,handleAsyncAction:r}=sne(),n=a0(),i=(()=>{const e=NU(),t=zU(),r=HU(),n=Lb();return async({fingerPrint:i,password:o,label:a})=>{const s=e[i];if(!s)throw new Error(`No seedphrase found with fingerprint: ${i}`);const c=await LU(s,o),l=t.filter((e=>"mnemonic"===e.type&&e.seedFingerPrint===i)),u=l.length,d=l[0].derivationPathPattern,h=QU(d,u),{pk:f,pkh:p}=await CF(c,h),m=r(a,1)[0],g=e$(f,p,h,d,i,m);n(i$.actions.addAccount(g))}})();return(0,xn.jsxs)(ym,{children:[(0,xn.jsx)(km,{}),(0,xn.jsx)(Xue,{isLoading:t,onSubmit:({name:t,password:o})=>r((async()=>{await i({fingerPrint:e.fingerprint,password:o,label:t.trim()||CH}),e.onDone(),n({description:`New account created! Successfully derived account from ${e.fingerprint}`})}),{title:"Failed to derive new account"}),subtitle:`Name the new account derived from ${e.fingerprint}`})]})},Bde=({onClose:e,...t})=>(0,xn.jsx)(ab,{justifyContent:"flex-end",paddingBottom:"30px",cursor:"pointer",...t,children:(0,xn.jsx)(Fde,{onClose:e})}),Fde=({onClose:e})=>(0,xn.jsxs)(Xn,{onClick:e,variant:"CTAWithIcon",children:[(0,xn.jsx)(by,{stroke:"currentcolor"}),(0,xn.jsx)(Am,{marginLeft:"4px",children:"Close"})]});function Ude(e){const t=e.target,{tagName:r,isContentEditable:n}=t;return"INPUT"!==r&&"TEXTAREA"!==r&&!0!==n}function $de(e={}){const{ref:t,isDisabled:r,isFocusable:n,clickOnEnter:o=!0,clickOnSpace:a=!0,onMouseDown:s,onMouseUp:c,onClick:l,onKeyDown:u,onKeyUp:d,tabIndex:h,onMouseOver:f,onMouseLeave:p,...m}=e,[g,v]=(0,i.useState)(!0),[y,b]=(0,i.useState)(!1),w=function(){const e=(0,i.useRef)(new Map),t=e.current,r=(0,i.useCallback)(((t,r,n,i)=>{e.current.set(n,{type:r,el:t,options:i}),t.addEventListener(r,n,i)}),[]),n=(0,i.useCallback)(((t,r,n,i)=>{t.removeEventListener(r,n,i),e.current.delete(n)}),[]);return(0,i.useEffect)((()=>()=>{t.forEach(((e,t)=>{n(e.el,e.type,t,e.options)}))}),[n,t]),{add:r,remove:n}}(),x=g?h:h||0,k=r&&!n,S=(0,i.useCallback)((e=>{if(r)return e.stopPropagation(),void e.preventDefault();e.currentTarget.focus(),null==l||l(e)}),[r,l]),E=(0,i.useCallback)((e=>{y&&Ude(e)&&(e.preventDefault(),e.stopPropagation(),b(!1),w.remove(document,"keyup",E,!1))}),[y,w]),A=(0,i.useCallback)((e=>{if(null==u||u(e),r||e.defaultPrevented||e.metaKey)return;if(!Ude(e.nativeEvent)||g)return;const t=o&&"Enter"===e.key;if(a&&" "===e.key&&(e.preventDefault(),b(!0)),t){e.preventDefault();e.currentTarget.click()}w.add(document,"keyup",E,!1)}),[r,g,u,o,a,w,E]),P=(0,i.useCallback)((e=>{if(null==d||d(e),r||e.defaultPrevented||e.metaKey)return;if(!Ude(e.nativeEvent)||g)return;if(a&&" "===e.key){e.preventDefault(),b(!1);e.currentTarget.click()}}),[a,g,r,d]),O=(0,i.useCallback)((e=>{0===e.button&&(b(!1),w.remove(document,"mouseup",O,!1))}),[w]),T=(0,i.useCallback)((e=>{if(0!==e.button)return;if(r)return e.stopPropagation(),void e.preventDefault();g||b(!0);e.currentTarget.focus({preventScroll:!0}),w.add(document,"mouseup",O,!1),null==s||s(e)}),[r,g,s,w,O]),C=(0,i.useCallback)((e=>{0===e.button&&(g||b(!1),null==c||c(e))}),[c,g]),j=(0,i.useCallback)((e=>{r?e.preventDefault():null==f||f(e)}),[r,f]),R=(0,i.useCallback)((e=>{y&&(e.preventDefault(),b(!1)),null==p||p(e)}),[y,p]),I=Zn(t,(e=>{e&&"BUTTON"!==e.tagName&&v(!1)}));return g?{...m,ref:I,type:"button","aria-disabled":k?void 0:r,disabled:k,onClick:S,onMouseDown:s,onMouseUp:c,onKeyUp:d,onKeyDown:u,onMouseOver:f,onMouseLeave:p}:{...m,ref:I,role:"button","data-active":_(y),"aria-disabled":r?"true":void 0,tabIndex:k?void 0:x,onClick:S,onMouseDown:T,onMouseUp:C,onKeyUp:P,onKeyDown:A,onMouseOver:j,onMouseLeave:R}}var[Hde,Vde,qde,Kde]=J5();var[Wde,Gde]=Rn({name:"TabsContext",errorMessage:"useTabsContext: `context` is undefined. Seems you forgot to wrap all tabs components within "});var[Zde,Yde]=Rn({});function Xde(e,t){return`${e}--tab-${t}`}function Jde(e,t){return`${e}--tabpanel-${t}`}var[Qde,ehe]=Rn({name:"TabsStylesContext",errorMessage:"useTabsStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),the=wn((function(e,t){const r=qn("Tabs",e),{children:n,className:o,...a}=ht(e),{htmlProps:s,descendants:c,...l}=function(e){var t;const{defaultIndex:r,onChange:n,index:o,isManual:a,isLazy:s,lazyBehavior:c="unmount",orientation:l="horizontal",direction:u="ltr",...d}=e,[h,f]=(0,i.useState)(null!=r?r:0),[p,m]=s3({defaultValue:null!=r?r:0,value:o,onChange:n});(0,i.useEffect)((()=>{null!=o&&f(o)}),[o]);const g=qde(),v=(0,i.useId)();return{id:`tabs-${null!=(t=e.id)?t:v}`,selectedIndex:p,focusedIndex:h,setSelectedIndex:m,setFocusedIndex:f,isManual:a,isLazy:s,lazyBehavior:c,orientation:l,descendants:g,direction:u,htmlProps:d}}(a),u=(0,i.useMemo)((()=>l),[l]),{isFitted:d,...h}=s,f={position:"relative",...r.root};return(0,xn.jsx)(Hde,{value:c,children:(0,xn.jsx)(Wde,{value:u,children:(0,xn.jsx)(Qde,{value:r,children:(0,xn.jsx)(bn.div,{className:v("chakra-tabs",o),ref:t,...h,__css:f,children:n})})})})}));the.displayName="Tabs";var rhe=wn((function(e,t){const r=function(e){const{focusedIndex:t,orientation:r,direction:n}=Gde(),o=Vde(),a=(0,i.useCallback)((e=>{const i=()=>{var e;const r=o.nextEnabled(t);r&&(null==(e=r.node)||e.focus())},a=()=>{var e;const r=o.prevEnabled(t);r&&(null==(e=r.node)||e.focus())},s="horizontal"===r,c="vertical"===r,l=e.key,u={["ltr"===n?"ArrowLeft":"ArrowRight"]:()=>s&&a(),["ltr"===n?"ArrowRight":"ArrowLeft"]:()=>s&&i(),ArrowDown:()=>c&&i(),ArrowUp:()=>c&&a(),Home:()=>{var e;const t=o.firstEnabled();t&&(null==(e=t.node)||e.focus())},End:()=>{var e;const t=o.lastEnabled();t&&(null==(e=t.node)||e.focus())}},d=u[l];d&&(e.preventDefault(),d(e))}),[o,t,r,n]);return{...e,role:"tablist","aria-orientation":r,onKeyDown:S(e.onKeyDown,a)}}({...e,ref:t}),n={display:"flex",...ehe().tablist};return(0,xn.jsx)(bn.div,{...r,className:v("chakra-tabs__tablist",e.className),__css:n})}));rhe.displayName="TabList";var nhe=wn((function(e,t){const r=function(e){const t=Gde(),{id:r,selectedIndex:n}=t,o=Tn(e.children).map(((e,t)=>(0,i.createElement)(Zde,{key:t,value:{isSelected:t===n,id:Jde(r,t),tabId:Xde(r,t),selectedIndex:n}},e)));return{...e,children:o}}(e),n=ehe();return(0,xn.jsx)(bn.div,{...r,width:"100%",ref:t,className:v("chakra-tabs__tab-panels",e.className),__css:n.tabpanels})}));nhe.displayName="TabPanels";var ihe=wn((function(e,t){const r=function(e){const{children:t,...r}=e,{isLazy:n,lazyBehavior:o}=Gde(),{isSelected:a,id:s,tabId:c}=Yde(),l=(0,i.useRef)(!1);return a&&(l.current=!0),{tabIndex:0,...r,children:xce({wasSelected:l.current,isSelected:a,enabled:n,mode:o})?t:null,role:"tabpanel","aria-labelledby":c,hidden:!a,id:s}}({...e,ref:t}),n=ehe();return(0,xn.jsx)(bn.div,{outline:"0",...r,className:v("chakra-tabs__tab-panel",e.className),__css:n.tabpanel})}));function ohe(e){const t=fle(e);return t.setHours(0,0,0,0),t}ihe.displayName="TabPanel";function ahe(e,t){const r=ohe(e),n=ohe(t),i=+r-zle(r),o=+n-zle(n);return Math.round((i-o)/vle)}function she(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}function che(e){const t=fle(e),r=she(e,0);return r.setFullYear(t.getFullYear(),0,1),r.setHours(0,0,0,0),r}function lhe(e){const t=fle(e);return ahe(t,che(t))+1}function uhe(e,t){const r=Dle(),n=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=fle(e),o=i.getDay(),a=(o=i.getTime()?r+1:t.getTime()>=a.getTime()?r:r-1}function fhe(e){const t=hhe(e),r=she(e,0);return r.setFullYear(t,0,4),r.setHours(0,0,0,0),dhe(r)}function phe(e){const t=fle(e),r=+dhe(t)-+fhe(t);return Math.round(r/gle)+1}function mhe(e,t){const r=fle(e),n=r.getFullYear(),i=Dle(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,a=she(e,0);a.setFullYear(n+1,0,o),a.setHours(0,0,0,0);const s=uhe(a,t),c=she(e,0);c.setFullYear(n,0,o),c.setHours(0,0,0,0);const l=uhe(c,t);return r.getTime()>=s.getTime()?n+1:r.getTime()>=l.getTime()?n:n-1}function ghe(e,t){const r=Dle(),n=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,i=mhe(e,t),o=she(e,0);o.setFullYear(i,0,n),o.setHours(0,0,0,0);return uhe(o,t)}function vhe(e,t){const r=fle(e),n=+uhe(r,t)-+ghe(r,t);return Math.round(n/gle)+1}function yhe(e,t){return(e<0?"-":"")+Math.abs(e).toString().padStart(t,"0")}const bhe={y(e,t){const r=e.getFullYear(),n=r>0?r:1-r;return yhe("yy"===t?n%100:n,t.length)},M(e,t){const r=e.getMonth();return"M"===t?String(r+1):yhe(r+1,2)},d:(e,t)=>yhe(e.getDate(),t.length),a(e,t){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.toUpperCase();case"aaa":return r;case"aaaaa":return r[0];default:return"am"===r?"a.m.":"p.m."}},h:(e,t)=>yhe(e.getHours()%12||12,t.length),H:(e,t)=>yhe(e.getHours(),t.length),m:(e,t)=>yhe(e.getMinutes(),t.length),s:(e,t)=>yhe(e.getSeconds(),t.length),S(e,t){const r=t.length,n=e.getMilliseconds();return yhe(Math.trunc(n*Math.pow(10,r-3)),t.length)}},whe="midnight",xhe="noon",_he="morning",khe="afternoon",She="evening",Ehe="night",Ahe={G:function(e,t,r){const n=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return r.era(n,{width:"abbreviated"});case"GGGGG":return r.era(n,{width:"narrow"});default:return r.era(n,{width:"wide"})}},y:function(e,t,r){if("yo"===t){const t=e.getFullYear(),n=t>0?t:1-t;return r.ordinalNumber(n,{unit:"year"})}return bhe.y(e,t)},Y:function(e,t,r,n){const i=mhe(e,n),o=i>0?i:1-i;if("YY"===t){return yhe(o%100,2)}return"Yo"===t?r.ordinalNumber(o,{unit:"year"}):yhe(o,t.length)},R:function(e,t){return yhe(hhe(e),t.length)},u:function(e,t){return yhe(e.getFullYear(),t.length)},Q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(n);case"QQ":return yhe(n,2);case"Qo":return r.ordinalNumber(n,{unit:"quarter"});case"QQQ":return r.quarter(n,{width:"abbreviated",context:"formatting"});case"QQQQQ":return r.quarter(n,{width:"narrow",context:"formatting"});default:return r.quarter(n,{width:"wide",context:"formatting"})}},q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(n);case"qq":return yhe(n,2);case"qo":return r.ordinalNumber(n,{unit:"quarter"});case"qqq":return r.quarter(n,{width:"abbreviated",context:"standalone"});case"qqqqq":return r.quarter(n,{width:"narrow",context:"standalone"});default:return r.quarter(n,{width:"wide",context:"standalone"})}},M:function(e,t,r){const n=e.getMonth();switch(t){case"M":case"MM":return bhe.M(e,t);case"Mo":return r.ordinalNumber(n+1,{unit:"month"});case"MMM":return r.month(n,{width:"abbreviated",context:"formatting"});case"MMMMM":return r.month(n,{width:"narrow",context:"formatting"});default:return r.month(n,{width:"wide",context:"formatting"})}},L:function(e,t,r){const n=e.getMonth();switch(t){case"L":return String(n+1);case"LL":return yhe(n+1,2);case"Lo":return r.ordinalNumber(n+1,{unit:"month"});case"LLL":return r.month(n,{width:"abbreviated",context:"standalone"});case"LLLLL":return r.month(n,{width:"narrow",context:"standalone"});default:return r.month(n,{width:"wide",context:"standalone"})}},w:function(e,t,r,n){const i=vhe(e,n);return"wo"===t?r.ordinalNumber(i,{unit:"week"}):yhe(i,t.length)},I:function(e,t,r){const n=phe(e);return"Io"===t?r.ordinalNumber(n,{unit:"week"}):yhe(n,t.length)},d:function(e,t,r){return"do"===t?r.ordinalNumber(e.getDate(),{unit:"date"}):bhe.d(e,t)},D:function(e,t,r){const n=lhe(e);return"Do"===t?r.ordinalNumber(n,{unit:"dayOfYear"}):yhe(n,t.length)},E:function(e,t,r){const n=e.getDay();switch(t){case"E":case"EE":case"EEE":return r.day(n,{width:"abbreviated",context:"formatting"});case"EEEEE":return r.day(n,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},e:function(e,t,r,n){const i=e.getDay(),o=(i-n.weekStartsOn+8)%7||7;switch(t){case"e":return String(o);case"ee":return yhe(o,2);case"eo":return r.ordinalNumber(o,{unit:"day"});case"eee":return r.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return r.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(i,{width:"short",context:"formatting"});default:return r.day(i,{width:"wide",context:"formatting"})}},c:function(e,t,r,n){const i=e.getDay(),o=(i-n.weekStartsOn+8)%7||7;switch(t){case"c":return String(o);case"cc":return yhe(o,t.length);case"co":return r.ordinalNumber(o,{unit:"day"});case"ccc":return r.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return r.day(i,{width:"narrow",context:"standalone"});case"cccccc":return r.day(i,{width:"short",context:"standalone"});default:return r.day(i,{width:"wide",context:"standalone"})}},i:function(e,t,r){const n=e.getDay(),i=0===n?7:n;switch(t){case"i":return String(i);case"ii":return yhe(i,t.length);case"io":return r.ordinalNumber(i,{unit:"day"});case"iii":return r.day(n,{width:"abbreviated",context:"formatting"});case"iiiii":return r.day(n,{width:"narrow",context:"formatting"});case"iiiiii":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},a:function(e,t,r){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"});case"aaa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return r.dayPeriod(n,{width:"narrow",context:"formatting"});default:return r.dayPeriod(n,{width:"wide",context:"formatting"})}},b:function(e,t,r){const n=e.getHours();let i;switch(i=12===n?xhe:0===n?whe:n/12>=1?"pm":"am",t){case"b":case"bb":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"bbb":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return r.dayPeriod(i,{width:"narrow",context:"formatting"});default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},B:function(e,t,r){const n=e.getHours();let i;switch(i=n>=17?She:n>=12?khe:n>=4?_he:Ehe,t){case"B":case"BB":case"BBB":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"BBBBB":return r.dayPeriod(i,{width:"narrow",context:"formatting"});default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},h:function(e,t,r){if("ho"===t){let t=e.getHours()%12;return 0===t&&(t=12),r.ordinalNumber(t,{unit:"hour"})}return bhe.h(e,t)},H:function(e,t,r){return"Ho"===t?r.ordinalNumber(e.getHours(),{unit:"hour"}):bhe.H(e,t)},K:function(e,t,r){const n=e.getHours()%12;return"Ko"===t?r.ordinalNumber(n,{unit:"hour"}):yhe(n,t.length)},k:function(e,t,r){let n=e.getHours();return 0===n&&(n=24),"ko"===t?r.ordinalNumber(n,{unit:"hour"}):yhe(n,t.length)},m:function(e,t,r){return"mo"===t?r.ordinalNumber(e.getMinutes(),{unit:"minute"}):bhe.m(e,t)},s:function(e,t,r){return"so"===t?r.ordinalNumber(e.getSeconds(),{unit:"second"}):bhe.s(e,t)},S:function(e,t){return bhe.S(e,t)},X:function(e,t,r){const n=e.getTimezoneOffset();if(0===n)return"Z";switch(t){case"X":return Ohe(n);case"XXXX":case"XX":return The(n);default:return The(n,":")}},x:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"x":return Ohe(n);case"xxxx":case"xx":return The(n);default:return The(n,":")}},O:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Phe(n,":");default:return"GMT"+The(n,":")}},z:function(e,t,r){const n=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Phe(n,":");default:return"GMT"+The(n,":")}},t:function(e,t,r){return yhe(Math.trunc(e.getTime()/1e3),t.length)},T:function(e,t,r){return yhe(e.getTime(),t.length)}};function Phe(e,t=""){const r=e>0?"-":"+",n=Math.abs(e),i=Math.trunc(n/60),o=n%60;return 0===o?r+String(i):r+String(i)+t+yhe(o,2)}function Ohe(e,t){if(e%60===0){return(e>0?"-":"+")+yhe(Math.abs(e)/60,2)}return The(e,t)}function The(e,t=""){const r=e>0?"-":"+",n=Math.abs(e);return r+yhe(Math.trunc(n/60),2)+t+yhe(n%60,2)}const Che=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},jhe=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},Rhe={p:jhe,P:(e,t)=>{const r=e.match(/(P+)(p+)?/)||[],n=r[1],i=r[2];if(!i)return Che(e,t);let o;switch(n){case"P":o=t.dateTime({width:"short"});break;case"PP":o=t.dateTime({width:"medium"});break;case"PPP":o=t.dateTime({width:"long"});break;default:o=t.dateTime({width:"full"})}return o.replace("{{date}}",Che(n,t)).replace("{{time}}",jhe(i,t))}},Ihe=/^D+$/,Mhe=/^Y+$/,Lhe=["D","DD","YY","YYYY"];function Nhe(e){return e instanceof Date||"object"===typeof e&&"[object Date]"===Object.prototype.toString.call(e)}function Dhe(e){if(!Nhe(e)&&"number"!==typeof e)return!1;const t=fle(e);return!isNaN(Number(t))}const zhe=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Bhe=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Fhe=/^'([^]*?)'?$/,Uhe=/''/g,$he=/[a-zA-Z]/;function Hhe(e,t,r){const n=Dle(),i=r?.locale??n.locale??Lle,o=r?.firstWeekContainsDate??r?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,a=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=fle(e);if(!Dhe(s))throw new RangeError("Invalid time value");let c=t.match(Bhe).map((e=>{const t=e[0];if("p"===t||"P"===t){return(0,Rhe[t])(e,i.formatLong)}return e})).join("").match(zhe).map((e=>{if("''"===e)return{isToken:!1,value:"'"};const t=e[0];if("'"===t)return{isToken:!1,value:Vhe(e)};if(Ahe[t])return{isToken:!0,value:e};if(t.match($he))throw new RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}}));i.localize.preprocessor&&(c=i.localize.preprocessor(s,c));const l={firstWeekContainsDate:o,weekStartsOn:a,locale:i};return c.map((n=>{if(!n.isToken)return n.value;const o=n.value;(!r?.useAdditionalWeekYearTokens&&function(e){return Mhe.test(e)}(o)||!r?.useAdditionalDayOfYearTokens&&function(e){return Ihe.test(e)}(o))&&function(e,t,r){const n=function(e,t,r){const n="Y"===e[0]?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${n} to the input \`${r}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}(e,t,r);if(console.warn(n),Lhe.includes(e))throw new RangeError(n)}(o,t,String(e));return(0,Ahe[o[0]])(s,o,i.localize,l)})).join("")}function Vhe(e){const t=e.match(Fhe);return t?t[1].replace(Uhe,"'"):e}function qhe(e,t,r){const n=fle(e),i=fle(t),o=Dle(),a=r?.locale??o.locale??Lle,s=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??o.weekStartsOn??o.locale?.options?.weekStartsOn??0,c=ahe(n,i);if(isNaN(c))throw new RangeError("Invalid time value");let l;l=c<-6?"other":c<-1?"lastWeek":c<0?"yesterday":c<1?"today":c<2?"tomorrow":c<7?"nextWeek":"other";return Hhe(n,a.formatRelative(l,n,i,{locale:a,weekStartsOn:s}),{locale:a,weekStartsOn:s})}const Khe=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=Kce(n,r,t),h=o.operations[0].recipient;return(0,xn.jsx)($g,{...c,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(sse,{...e,operationsType:o.type,signer:o.signer}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(PH,{children:"From"}),(0,xn.jsx)(Y4,{address:l.address}),(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,xn.jsx)(ab,{alignItems:"center",children:(0,xn.jsx)(hse,{fee:i})})}),(0,xn.jsx)(PH,{children:"To"}),(0,xn.jsx)(Y4,{address:h}),(0,xn.jsx)(Uce,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:ose(o.type,t)})})]})})})},Whe=e=>{var t;const r=null===(t=e.form)||void 0===t?void 0:t.baker,n=Jce({SignPage:Khe,signPageExtraData:void 0,FormPage:Whe,defaultFormPageProps:e,toOperation:Ghe}),i=Qce(Ghe),{onFormSubmitActionHandlers:[o,a],isLoading:s}=ele([n,i]),c=Yv({mode:"onBlur",defaultValues:qce(e)}),{formState:{isValid:l,errors:u},handleSubmit:d}=c;return(0,xn.jsx)($g,{...c,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{"data-testid":"delegate-form",children:[(0,xn.jsxs)(ese,{children:[(0,xn.jsx)(Am,{fontWeight:"600",size:"2xl",children:r?"Change Baker":"Delegate"}),(0,xn.jsx)(km,{})]}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsxs)(Im,{isInvalid:!!u.sender,children:[(0,xn.jsx)(n8,{allowUnknown:!1,inputName:"sender",isDisabled:!!e.sender,label:"From"}),u.sender&&(0,xn.jsx)(y$,{"data-testid":"from-error",children:u.sender.message})]}),(0,xn.jsxs)(Im,{marginTop:"24px","data-testid":"baker",isInvalid:!!u.baker,children:[(0,xn.jsx)(i8,{allowUnknown:!0,inputName:"baker",label:"Baker"}),u.baker&&(0,xn.jsx)(y$,{children:u.baker.message})]})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Vce,{isLoading:s,isValid:l,onAddToBatch:d(a),onSingleSubmit:d(o)})})]})})})},Ghe=e=>({type:"delegation",sender:LE(e.sender),recipient:FE(e.baker)}),Zhe=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=Kce(n,r,t);return(0,xn.jsx)($g,{...c,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(sse,{...e,operationsType:o.type,signer:o.signer}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(PH,{children:"From"}),(0,xn.jsx)(Y4,{address:l.address}),(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"end",marginTop:"12px",paddingX:"4px",children:(0,xn.jsx)(hse,{fee:i})}),(0,xn.jsx)(Uce,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:ose(o.type,t)})})]})})})},Yhe=e=>{var t;const{sender:r}=e,n=null===(t=e.form)||void 0===t?void 0:t.baker,i=Jce({SignPage:Zhe,signPageExtraData:void 0,FormPage:Yhe,defaultFormPageProps:{sender:r},toOperation:Xhe}),o=Qce(Xhe),{onFormSubmitActionHandlers:[a,s],isLoading:c}=ele([i,o]),l=Yv({mode:"onBlur",defaultValues:qce({sender:r})}),{handleSubmit:u}=l;return(0,xn.jsx)($g,{...l,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{"data-testid":"undelegate-form",children:[(0,xn.jsx)(tse,{subTitle:"Select preview to end delegation or insert this transaction into a Batch.",title:"End Delegation"}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(Im,{children:(0,xn.jsx)(n8,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"})}),(0,xn.jsx)(PH,{marginTop:"24px",children:"Baker"}),n&&(0,xn.jsx)(Y4,{address:LE(n)})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Vce,{isLoading:c,isValid:!0,onAddToBatch:u(s),onSingleSubmit:u(a)})})]})})})},Xhe=e=>({type:"undelegation",sender:LE(e.sender)}),Jhe=({label:e,value:t,...r})=>(0,xn.jsxs)(ab,{alignItems:"center",height:"50px",padding:"16px","data-testid":e,...r,children:[(0,xn.jsx)(Sn,{flex:1,children:(0,xn.jsx)(ei,{color:Xv.gray[400],size:"sm",children:e})}),(0,xn.jsx)(Sn,{flex:1,children:"string"===typeof t?(0,xn.jsx)(Am,{size:"sm",children:t}):t})]}),Qhe=({delegation:e,account:t})=>{const{openWith:r}=(0,i.useContext)(i0),n=qU(),o=(()=>{const e=_U();return t=>{const r=e(t.sender),n=new Date;return{initialBalance:pU(t.amount),currentBalance:r&&pU(r),duration:`Since ${qhe(new Date(t.timestamp),n)}`}}})();if(!e)return(0,xn.jsx)(ule,{onDelegate:()=>r((0,xn.jsx)(Whe,{sender:t})),size:"md"});const{currentBalance:a,duration:s,initialBalance:c}=o(e),{sender:l,delegate:{address:u}}=e,d=n(l);return(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(Jhe,{borderBottom:`1px solid ${Xv.gray[700]}`,borderTopRadius:"8px",_odd:{bg:Xv.gray[800]},label:"Initial Balance:",value:c}),a&&(0,xn.jsx)(Jhe,{_odd:{bg:Xv.gray[800]},label:"Current Balance:",value:a}),(0,xn.jsx)(Jhe,{borderBottom:`1px solid ${Xv.gray[700]}`,_odd:{bg:Xv.gray[800]},label:"Duration:",value:s}),(0,xn.jsx)(Jhe,{borderBottomRadius:"8px",_odd:{bg:Xv.gray[800]},label:"Baker:",value:(0,xn.jsx)(iue,{address:LE(e.delegate.address)})}),(0,xn.jsxs)(ab,{marginTop:"24px",children:[(0,xn.jsx)(Xn,{flex:1,marginRight:"16px",onClick:()=>r((0,xn.jsx)(Yhe,{form:{sender:l,baker:u},sender:d})),variant:"warning",children:"End Delegation"}),(0,xn.jsx)(Xn,{flex:1,onClick:()=>r((0,xn.jsx)(Whe,{form:{sender:l,baker:u},sender:d})),variant:"tertiary",children:"Change Baker"})]})]})},efe=({operation:e})=>{switch(e.type){case"delegation":return(0,xn.jsxs)(Sn,{"data-testid":"decoded-item-delegate",marginY:6,children:[(0,xn.jsx)(Am,{marginRight:"3px",color:Xv.gray[450],fontSize:"14px",children:"Delegate to:"}),(0,xn.jsx)(iue,{address:e.recipient})]});case"undelegation":return(0,xn.jsx)(Sn,{"data-testid":"decoded-item-undelegate",marginY:6,children:(0,xn.jsx)(Am,{color:Xv.gray[450],fontSize:"14px",children:"End Delegation"})});case"tez":case"fa1.2":case"fa2":return(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(tfe,{operation:e}),(0,xn.jsxs)(ab,{alignItems:"center",marginTop:"8px",children:[(0,xn.jsx)(Am,{marginRight:"3px",color:Xv.gray[450],fontSize:"14px",children:"Send to:"}),(0,xn.jsx)(iue,{address:e.recipient})]})]});case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}},tfe=({operation:e})=>{const t=d_();switch(e.type){case"tez":return(0,xn.jsxs)(ab,{alignItems:"center","data-testid":"decoded-tez-amount",children:[(0,xn.jsx)(Iy,{}),(0,xn.jsxs)(Am,{marginLeft:"8px",color:Xv.orange,fontSize:"14px",fontWeight:600,textAlign:"center",children:["-",pU(e.amount)]})]});case"fa1.2":case"fa2":{const r=t(e.contract.pkh,e.tokenId);if(!r)return null;const n=KE(r),i="nft"===r.type;return(0,xn.jsxs)(ab,{alignItems:"center","data-testid":"decoded-fa-amount",children:[(0,xn.jsx)(Iy,{}),(0,xn.jsx)(Sn,{marginLeft:"8px",color:Xv.orange,textAlign:"center",children:i?(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Am,{display:"inline",marginRight:"3px",fontSize:"14px",fontWeight:600,children:e.amount}),(0,xn.jsx)(Am,{display:"inline",color:"white",fontSize:"14px",fontWeight:600,children:n})]}):(0,xn.jsxs)(Am,{fontSize:"14px",fontWeight:600,children:["-",QE(e.amount,r,{showSymbol:!0})]})})]})}case"delegation":case"undelegation":case"contract_origination":case"contract_call":return null}},rfe=e=>yS.string().regex(new RegExp(`^${e}$`,"i")),nfe=e=>yS.object({prim:rfe(e)}),ife=yS.object({prim:yS.literal("PUSH"),args:yS.tuple([yS.object({prim:yS.literal("key_hash")}),yS.object({bytes:yS.string()})])}),ofe=yS.object({prim:yS.literal("PUSH"),args:yS.tuple([yS.object({prim:yS.literal("address")}),yS.object({bytes:yS.string()})])}),afe=(e,t)=>yS.object({prim:yS.literal("Pair"),args:yS.tuple([e,t])}),sfe=yS.object({prim:yS.literal("PUSH"),args:yS.tuple([yS.object({prim:yS.literal("mutez")}),yS.object({int:yS.literal("0")})])}),cfe=[nfe("TRANSFER_TOKENS"),nfe("CONS")],lfe=yS.object({prim:yS.literal("CONTRACT")}),ufe=yS.tuple([yS.object({prim:yS.literal("DROP")}),yS.object({prim:yS.literal("NIL"),args:yS.array(yS.object({prim:yS.literal("operation")}))})]),dfe=yS.object({prim:yS.literal("PUSH"),args:yS.tuple([yS.object({prim:yS.literal("mutez")}),yS.object({int:yS.string()})])}),hfe=yS.tuple([ife,nfe("IMPLICIT_ACCOUNT"),dfe,nfe("UNIT"),...cfe]),ffe=yS.tuple([ofe,lfe,nfe("IF_NONE"),dfe,nfe("UNIT"),...cfe]),pfe=yS.tuple([ife,nfe("SOME"),nfe("SET_DELEGATE"),nfe("CONS")]),mfe=yS.tuple([yS.object({prim:yS.literal("NONE"),args:yS.tuple([yS.object({prim:yS.literal("key_hash")})])}),nfe("SET_DELEGATE"),nfe("CONS")]),gfe=yS.tuple([ofe,lfe,yS.tuple([nfe("IF_NONE")]),sfe,yS.object({prim:yS.literal("PUSH"),args:yS.tuple([nfe("list"),yS.array(afe(yS.object({bytes:yS.string({description:"from"})}),yS.array(afe(yS.object({bytes:yS.string({description:"to"})}),afe(yS.object({int:yS.string({description:"token_id"})}),yS.object({int:yS.string({description:"amount"})}))))))])}),...cfe]),vfe=yS.tuple([ofe,lfe,yS.tuple([nfe("IF_NONE")]),sfe,yS.object({prim:yS.literal("PUSH"),args:yS.tuple([nfe("Pair"),afe(yS.object({bytes:yS.string({description:"from"})}),afe(yS.object({bytes:yS.string({description:"to"})}),yS.object({int:yS.string({description:"amount"})})))])}),...cfe]);class yfe extends Error{}const bfe=e=>(42===e.length&&(e="00"+e),PE(e)),wfe=[{schema:hfe,parsingFn:e=>{const t=hfe.parse(e),r=t[0].args[1].bytes,n=t[2].args[1].int;return{type:"tez",recipient:FE(bfe(r)),amount:n}}},{schema:ffe,parsingFn:e=>{const t=ffe.parse(e),r=t[0].args[1].bytes,n=t[3].args[1].int;return{type:"tez",recipient:BE(bfe(r)),amount:n}}},{schema:gfe,parsingFn:e=>{const t=gfe.parse(e),r=BE(bfe(t[0].args[1].bytes));return t[4].args[1].flatMap((e=>{const t=e.args[0].bytes;return e.args[1].map((e=>{const n=e.args[0].bytes,i=e.args[1].args[0].int,o=e.args[1].args[1].int;return{type:"fa2",contract:r,sender:LE(bfe(t)),recipient:LE(bfe(n)),tokenId:i,amount:o}}))}))}},{schema:vfe,parsingFn:e=>{const t=vfe.parse(e),r=t[0],n=t[4].args[1],i=n.args[0].bytes,o=n.args[1].args[0].bytes;return{type:"fa1.2",amount:n.args[1].args[1].int,contract:BE(bfe(r.args[1].bytes)),recipient:LE(bfe(o)),sender:LE(bfe(i)),tokenId:"0"}}},{schema:pfe,parsingFn:(e,t)=>{const r=pfe.parse(e);return{type:"delegation",sender:t.address,recipient:FE(bfe(r[0].args[1].bytes))}}},{schema:mfe,parsingFn:(e,t)=>({type:"undelegation",sender:t.address})}],xfe=(e,t,r=[])=>{if(0===e.length)return r;for(let n=0;n((e=>{ufe.parse(e.slice(0,2))})(e),xfe(e.slice(2),t)),kfe=(e,t)=>{const r=JSON.parse(e);return _fe(r,t)},Sfe=({rawMichelson:e,sender:t})=>{try{const r=kfe(e,t);return(0,xn.jsx)(Sn,{borderRadius:"8px",backgroundColor:Xv.gray[900],children:r.map(((e,t)=>(0,xn.jsxs)(Sn,{width:"100%",paddingTop:"10px",paddingBottom:t(0,xn.jsx)(h3,{width:"100%",marginBottom:"8px",background:Xv.gray[900],borderColor:Xv.gray[900],borderRadius:"8px",allowToggle:!0,children:(0,xn.jsxs)(f3,{children:[(0,xn.jsxs)(p3,{children:[(0,xn.jsx)(ei,{flex:"1",height:"30px",marginTop:"6px",textAlign:"left",size:"md",children:"Unrecognized operation"}),(0,xn.jsx)(m3,{})]}),(0,xn.jsx)(w3,{overflowY:"scroll",height:"400px",paddingBottom:"12px",children:(0,xn.jsx)(P3,{space:1,value:JSON.parse(e)})})]})}),Afe=({approveOrExecute:e,isLoading:t,signerState:r})=>{switch(r){case"awaitingApprovalByExternalSigner":return(0,xn.jsxs)(ab,{alignItems:"center",alignSelf:"flex-end","data-testid":"multisig-signer-awaiting-approval",children:[(0,xn.jsx)(Am,{marginRight:"4px",color:Xv.gray[300],children:"Awaiting Approval"}),(0,xn.jsx)(Ry,{marginTop:"2px"})]});case"approved":return(0,xn.jsxs)(ab,{alignItems:"center",alignSelf:"flex-end",marginBottom:"8px","data-testid":"multisig-signer-approved",children:[(0,xn.jsx)(Am,{marginRight:"4px",color:Xv.gray[300],children:"Approved"}),(0,xn.jsx)(oy,{marginTop:"2px"})]});case"executable":return(0,xn.jsx)(Xn,{"data-testid":"multisig-signer-button",isLoading:t,onClick:e,children:"Execute"});case"approvable":return(0,xn.jsx)(Xn,{"data-testid":"multisig-signer-button",isLoading:t,onClick:e,children:"Approve"})}},Pfe=({signer:e,fee:t,operation:r,actionType:n,transactionCount:o})=>{const{handleAsyncAction:a}=sne(),{openWith:s}=(0,i.useContext)(i0),c=`${(0,Db.capitalize)(n)} transaction`;return(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(vue,{fee:t,signer:e,title:c,transactionCount:o}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{onSubmit:e=>a((async()=>{const{opHash:t}=await uU(r,e);return s((0,xn.jsx)(use,{hash:t}))}),{title:`Failed ${n}`}),signer:e,text:c})})]})})},Ofe=({pendingApprovals:e,sender:t,operation:r,signerAddress:n})=>{const o=V4(n),a=BU(),{isLoading:s,handleAsyncAction:c}=sne(),{openWith:l}=(0,i.useContext)(i0),u=c_(),d=a(n.pkh),h=0===e,f=Tfe({approvals:r.approvals,signerAddress:n,operationIsExecutable:h,signerAccount:d});return(0,xn.jsx)(hue,{height:"80px",marginTop:"10px",marginBottom:"0",padding:"15px",borderRadius:"8px",backgroundColor:Xv.gray[700],icon:(0,xn.jsx)(uue,{addressKind:o}),leftElement:(0,xn.jsx)(fue,{label:o.label,pkh:o.pkh}),rightElement:(0,xn.jsx)(Afe,{approveOrExecute:()=>c((async()=>{if(!d)throw new Error("Can't approve or execute with an account you don't own");const e=h?"execute":"approve",n=$ce(d,d,[mF(t.address,e,r.id)]),i=await LF(n,u);let o;try{o=kfe(r.rawActions,t).length}catch(Sw){o=1}return l((0,xn.jsx)(Pfe,{actionType:e,fee:i,operation:n,signer:d,transactionCount:o}))})),"data-testid":"multisig-signer-button",isLoading:s,signerState:f})})},Tfe=({signerAccount:e,operationIsExecutable:t,approvals:r,signerAddress:n})=>{const i=!!r.find((e=>e.pkh===n.pkh));return e?i&&!t?"approved":t?"executable":"approvable":i?"approved":"awaitingApprovalByExternalSigner"},Cfe=({operation:e,sender:t})=>{const{signers:r,threshold:n}=t,i=Math.max(n-e.approvals.length,0);return(0,xn.jsxs)(Sn,{marginBottom:"24px",background:Xv.gray[800],border:"none",borderRadius:"8px","data-testid":"multisig-pending-operation-"+e.id,paddingX:"16px",paddingY:"15px",children:[(0,xn.jsxs)(ab,{justifyContent:"space-between",marginBottom:"6px",padding:0,textAlign:"left",children:[(0,xn.jsxs)(ei,{size:"md",children:["Pending #",e.id]}),(0,xn.jsxs)(ab,{alignItems:"center",marginBottom:"6px",children:[(0,xn.jsx)(ei,{marginRight:"4px",color:Xv.gray[450],size:"sm",children:"Pending Approvals:"}),(0,xn.jsx)(Am,{color:Xv.gray[400],"data-testid":"pending-approvals-count",children:i})]})]}),(0,xn.jsxs)(Sn,{padding:"0",children:[(0,xn.jsx)(Sfe,{rawMichelson:e.rawActions,sender:t}),r.map((r=>(0,xn.jsx)(Ofe,{operation:e,pendingApprovals:i,sender:t,signerAddress:r},r.pkh)))]})]})},jfe=({account:e})=>{const t=OU()(e);return(0,xn.jsx)(Sn,{margin:"0",padding:"0",children:t.map((t=>(0,xn.jsx)(Cfe,{operation:t,sender:e},t.id)))})},Rfe=({to:e,owner:t,...r})=>(0,xn.jsx)(_n,{...r,children:(0,xn.jsxs)(Qn,{as:QQ,color:Xv.gray[300],stroke:Xv.gray[450],_hover:{color:Xv.green,stroke:Xv.green},to:`${e}?accounts=${t}`,children:[(0,xn.jsx)(qy,{display:"inline",stroke:"inherit"}),(0,xn.jsx)(Am,{display:"inline",size:"sm",children:"\xa0View All"})]})}),Ife=({owner:e,nfts:t,...r})=>{if(0===t.length)return(0,xn.jsx)(cle,{size:"md"});const n=cue(t).slice(0,18);return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(_de,{marginBottom:"35px",spacing:"12px",...r,children:n.map((t=>{const r=sue(tA(t)),n={width:"100%",height:40,fallbackSrc:sue(t.displayUri),src:r};return(0,xn.jsx)(QQ,{"data-testid":"nft-link",to:`/home/${e}/${qE(t)}`,children:(0,xn.jsx)(E3,{background:Xv.gray[800],border:"1px solid transparent",_hover:{background:Xv.gray[700],borderColor:Xv.gray[500]},children:(0,xn.jsxs)(A3,{overflow:"hidden",padding:"8px",borderRadius:"6px",children:[(0,xn.jsx)(_n,{children:(0,xn.jsxs)(Sn,{position:"relative",width:"100%",height:"100%",children:[(0,xn.jsx)(U5,{zIndex:2,width:"100%",opacity:"0",ratio:1,children:(0,xn.jsx)(tb,{...n,width:"100%",height:40})}),(0,xn.jsx)(U5,{position:"absolute",zIndex:0,top:"0",width:"100%",filter:"blur(20px)",ratio:1,children:(0,xn.jsx)(tb,{...n,width:"100%",height:40})}),(0,xn.jsx)(U5,{position:"absolute",zIndex:1,top:"0",width:"100%",ratio:1,children:(0,xn.jsx)(tb,{...n,width:"100%",height:40})})]})}),Number(t.balance)>1&&(0,xn.jsx)(Am,{position:"absolute",zIndex:3,display:"inline",height:"20px",marginTop:"-24px",marginLeft:"4px",padding:"0 8px",borderRadius:"100px",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",size:"xs",children:"x"+t.balance})]})})},`${e}:${qE(t)}`)}))}),t.length>18&&(0,xn.jsx)(Rfe,{marginBottom:"40px",owner:e,to:"/nfts"})]})},Mfe=i.createContext({mode:"page"}),Lfe=["bakerFee","storageFee","allocationFee"],Nfe=({operation:e})=>{const t=(0,i.useContext)(Mfe),r=KU(e.sender.address);if("drawer"===t.mode)return null;if(!r)return null;const n=Lfe.reduce(((t,r)=>r in e?t.plus((0,Db.get)(e,r)||0):t),rw(0));return n.eq(0)?null:(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(ei,{marginRight:"4px",color:Xv.gray[450],size:"md",children:"Fee:"}),(0,xn.jsx)(Am,{color:Xv.gray[400],"data-testid":"fee",children:pU(n)})]})},Dfe=({level:e,status:t})=>{const r=gU(e);return void 0===t||"applied"===t?r?(0,xn.jsx)(oy,{"data-testid":"checkmark"}):(0,xn.jsx)(Ry,{"data-testid":"hourglass"}):(0,xn.jsx)(hy,{"data-testid":"crossed-circle"})},zfe=({children:e})=>"drawer"===(0,i.useContext)(Mfe).mode?null:(0,xn.jsx)(Am,{marginRight:"4px",color:Xv.gray[300],"data-testid":"operation-type",size:"sm",children:e});function Bfe(e,t){const r=fle(e),n=fle(t),i=Ffe(r,n),o=Math.abs(ahe(r,n));r.setDate(r.getDate()-i*o);const a=i*(o-Number(Ffe(r,n)===-i));return 0===a?0:a}function Ffe(e,t){const r=e.getFullYear()-t.getFullYear()||e.getMonth()-t.getMonth()||e.getDate()-t.getDate()||e.getHours()-t.getHours()||e.getMinutes()-t.getMinutes()||e.getSeconds()-t.getSeconds()||e.getMilliseconds()-t.getMilliseconds();return r<0?-1:r>0?1:r}const Ufe=({timestamp:e})=>e?(0,xn.jsx)(Am,{color:Xv.gray[400],"data-testid":"timestamp",size:"sm",children:$fe(e)}):null,$fe=e=>{const t=new Date,r=new Date(e);return Bfe(t,r)<2?Ble(r,t,{addSuffix:!0}):Hhe(r,"dd MMM yyyy")},Hfe=({hash:e,counter:t,transactionId:r,originationId:n,migrationId:i,children:o,...a})=>{const{tzktExplorerUrl:s}=c_();let c=s;return e?c=(0,Db.compact)([s,e,t]).join("/"):i?c=`${c}/migrations/${i}`:n?c=`${c}/originations/${n}`:r?c=`${c}/transactions/${r}`:console.warn("No id provided to TzktLink"),(0,xn.jsx)(Qn,{"data-testid":"tzkt-link",href:c,isExternal:!0,...a,children:o})},Vfe=e=>{const t=(0,i.useContext)(Mfe);return!!e&&("page"===t.mode||t.selectedAddress.pkh!==e)},qfe=({operation:e})=>{var t;const r=Vfe(e.target.address),n=Vfe(e.sender.address),i=!r&&!n;return(0,xn.jsxs)(ab,{flexDirection:"column",width:"100%","data-testid":"operation-tile-contract-call",children:[(0,xn.jsxs)(ab,{justifyContent:"space-between",marginBottom:"10px",children:[(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(dy,{marginRight:"8px"}),(0,xn.jsx)(Hfe,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,xn.jsxs)(ei,{size:"md",children:["Contract Call: ",null===(t=e.parameter)||void 0===t?void 0:t.entrypoint]})}),(0,xn.jsx)(Nfe,{operation:e})]}),(0,xn.jsx)(ab,{alignSelf:"flex-end",children:(0,xn.jsx)(Ufe,{timestamp:e.timestamp})})]}),(0,xn.jsx)(Sn,{children:(0,xn.jsxs)(ab,{justifyContent:"space-between",children:[(0,xn.jsxs)(ab,{children:[r&&(0,xn.jsxs)(ab,{marginRight:"15px","data-testid":"to",children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[450],children:"To:"}),(0,xn.jsx)(iue,{address:e.target})]}),(n||i)&&(0,xn.jsxs)(ab,{"data-testid":"from",children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[450],children:"From:"}),(0,xn.jsx)(iue,{address:e.sender})]})]}),(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(zfe,{children:"Contract Call"}),(0,xn.jsx)(Dfe,{...e})]})]})})]})},Kfe=({operation:e})=>{const t=!!e.newDelegate,r=t?"Delegate":"Delegation Ended",n=Vfe(e.sender.address);return(0,xn.jsxs)(ab,{flexDirection:"column",width:"100%","data-testid":"operation-tile-delegation",children:[(0,xn.jsxs)(ab,{justifyContent:"space-between",marginBottom:"10px",children:[(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(ry,{marginRight:"8px"}),(0,xn.jsx)(Hfe,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,xn.jsx)(ei,{size:"md",children:r})}),(0,xn.jsx)(Nfe,{operation:e})]}),(0,xn.jsx)(ab,{alignSelf:"flex-end",children:(0,xn.jsx)(Ufe,{timestamp:e.timestamp})})]}),(0,xn.jsx)(Sn,{children:(0,xn.jsxs)(ab,{justifyContent:"space-between",children:[(0,xn.jsxs)(ab,{children:[t&&(0,xn.jsxs)(ab,{marginRight:"15px","data-testid":"to",children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[450],children:"To:"}),(0,xn.jsx)(iue,{address:e.newDelegate})]}),n&&(0,xn.jsxs)(ab,{"data-testid":"from",children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[450],children:"From:"}),(0,xn.jsx)(iue,{address:e.sender})]}),!t&&!n&&(0,xn.jsx)(Am,{color:Xv.gray[450],children:"N/A"})]}),(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(zfe,{children:r}),(0,xn.jsx)(Dfe,{...e})]})]})})]})},Wfe=({operation:e})=>{var t;const r=(null===(t=e.originatedContract)||void 0===t?void 0:t.codeHash)===Use&&e.originatedContract.typeHash===Fse?"Multisig Account Created":"Contract Origination",n=Vfe(e.sender.address);return(0,xn.jsxs)(ab,{flexDirection:"column",width:"100%","data-testid":"operation-tile-origination",children:[(0,xn.jsxs)(ab,{justifyContent:"space-between",marginBottom:"10px",children:[(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(dy,{marginRight:"8px"}),(0,xn.jsx)(Hfe,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,xn.jsx)(ei,{size:"md",children:r})}),(0,xn.jsx)(Nfe,{operation:e})]}),(0,xn.jsx)(ab,{alignSelf:"flex-end",children:(0,xn.jsx)(Ufe,{timestamp:e.timestamp})})]}),(0,xn.jsx)(Sn,{children:(0,xn.jsxs)(ab,{justifyContent:"space-between",children:[(0,xn.jsx)(ab,{"data-testid":"from",children:n?(0,xn.jsxs)(ab,{marginRight:"15px",children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[450],children:"From:"}),(0,xn.jsx)(iue,{address:e.sender})]}):(0,xn.jsx)(Am,{color:Xv.gray[450],children:"N/A"})}),(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(zfe,{children:"Contract Origination"}),(0,xn.jsx)(Dfe,{...e})]})]})})]})},Gfe=({isOutgoing:e,...t})=>e?(0,xn.jsx)(Iy,{"data-testid":"outgoing-arrow",...t}):(0,xn.jsx)(My,{"data-testid":"incoming-arrow",...t}),Zfe=e=>{const t=(0,i.useContext)(Mfe),r=KU(e);return!!e&&("page"===t.mode?r:e===t.selectedAddress.pkh)},Yfe=({operation:e,tokenTransfer:t,token:r})=>{var n,i,o,a;const s=t.amount,c=Vfe(t.to.address),l=Vfe(null!==(n=null===(i=t.from)||void 0===i?void 0:i.address)&&void 0!==n?n:""),u=!c&&!l,d=Zfe(null!==(o=null===(a=t.from)||void 0===a?void 0:a.address)&&void 0!==o?o:""),h="nft"===r.type,f=QE(s,r,{showSymbol:!0}),p=d?Xv.orange:Xv.green,m=h?"white":p,g=d?"-":"+",v=h?(0,xn.jsx)(L4,{padding:"8px",background:Xv.gray[700],border:"1px solid",borderColor:Xv.gray[500],borderRadius:"8px","data-testid":"nft-tooltip",label:(0,xn.jsx)(U5,{width:"170px",height:"170px",ratio:1,children:(0,xn.jsx)(tb,{src:sue(tA(r))})}),openDelay:300,children:(0,xn.jsx)(ab,{children:(0,xn.jsxs)(Hfe,{marginRight:"8px",color:m,"data-testid":"title",migrationId:t.migrationId,originationId:t.originationId,transactionId:t.transactionId,children:[(0,xn.jsxs)(Am,{display:"inline",color:p,fontWeight:"600",children:[g,f]}),(0,xn.jsxs)(Am,{display:"inline",fontWeight:"600",children:[" ",KE(r)]})]})})}):(0,xn.jsx)(Hfe,{marginRight:"8px",color:m,"data-testid":"title",migrationId:t.migrationId,originationId:t.originationId,transactionId:t.transactionId,children:(0,xn.jsxs)(Am,{display:"inline",color:p,fontWeight:"600",children:[g,f]})});return(0,xn.jsxs)(ab,{flexDirection:"column",width:"100%","data-testid":"operation-tile-token-transfer",children:[(0,xn.jsxs)(ab,{justifyContent:"space-between",marginBottom:"10px",children:[(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(Gfe,{marginRight:"8px",isOutgoing:d}),v,e&&(0,xn.jsx)(Nfe,{operation:e})]}),(0,xn.jsx)(ab,{alignSelf:"flex-end",children:(0,xn.jsx)(Ufe,{timestamp:t.timestamp})})]}),(0,xn.jsx)(Sn,{children:(0,xn.jsxs)(ab,{justifyContent:"space-between",children:[(0,xn.jsxs)(ab,{children:[(c||u)&&(0,xn.jsxs)(ab,{marginRight:"15px","data-testid":"to",children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[450],children:"To:"}),(0,xn.jsx)(iue,{address:t.to})]}),l&&(0,xn.jsxs)(ab,{"data-testid":"from",children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[450],children:"From:"}),(0,xn.jsx)(iue,{address:t.from})]})]}),(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(zfe,{children:"Token Transfer"}),(0,xn.jsx)(Dfe,{level:t.level})]})]})})]})},Xfe=({operation:e})=>{const t=Zfe(e.sender.address),r=pU(String(e.amount)),n=Vfe(e.target.address),i=Vfe(e.sender.address),o=!n&&!i,a=t?Xv.orange:Xv.green,s=t?"-":"+";return(0,xn.jsxs)(ab,{flexDirection:"column",width:"100%","data-testid":"operation-tile-transaction",children:[(0,xn.jsxs)(ab,{justifyContent:"space-between",marginBottom:"10px",children:[(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(Gfe,{marginRight:"8px",isOutgoing:t}),(0,xn.jsx)(Hfe,{marginRight:"8px",color:a,counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,xn.jsxs)(Am,{color:a,fontWeight:"600",children:[s," ",r]})}),(0,xn.jsx)(Nfe,{operation:e})]}),(0,xn.jsx)(ab,{alignSelf:"flex-end",children:(0,xn.jsx)(Ufe,{timestamp:e.timestamp})})]}),(0,xn.jsx)(Sn,{children:(0,xn.jsxs)(ab,{justifyContent:"space-between",children:[(0,xn.jsxs)(ab,{children:[(n||o)&&(0,xn.jsxs)(ab,{marginRight:"15px","data-testid":"to",children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[450],children:"To:"}),(0,xn.jsx)(iue,{address:LE(e.target.address)})]}),i&&(0,xn.jsxs)(ab,{"data-testid":"from",children:[(0,xn.jsx)(Am,{marginRight:"6px",color:Xv.gray[450],children:"From:"}),(0,xn.jsx)(iue,{address:LE(e.sender.address)})]})]}),(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(zfe,{children:"Transaction"}),(0,xn.jsx)(Dfe,{...e})]})]})})]})},Jfe=({operation:e})=>{const t=(()=>{const e=ow((e=>e.assets.transfers.tokens));return t=>e[t]})();switch(e.type){case"token_transfer":{const t=VE(e.token);return t?(0,xn.jsx)(Yfe,{token:t,tokenTransfer:e}):(console.warn(`Could not parse token transfer ${e.id}`),null)}case"transaction":{const r=!!e.parameter,n=t(e.id);if(n){const t=VE(n.token);return t?(0,xn.jsx)(Yfe,{operation:e,token:t,tokenTransfer:n}):(0,xn.jsx)(Xfe,{operation:e})}return r?(0,xn.jsx)(qfe,{operation:e}):(0,xn.jsx)(Xfe,{operation:e})}case"delegation":return(0,xn.jsx)(Kfe,{operation:e});case"origination":return(0,xn.jsx)(Wfe,{operation:e})}},Qfe=({owner:e,operations:t})=>{if(0===t.length)return(0,xn.jsx)(sle,{size:"md"});const r=t.slice(0,20);return(0,xn.jsxs)(xn.Fragment,{children:[r.map(((e,t)=>(0,xn.jsxs)(Sn,{height:"90px",children:[(0,xn.jsx)(Jfe,{operation:e}),t20&&(0,xn.jsx)(Rfe,{owner:e,to:"/operations"})]})},epe=["KT1XnTn74bUtxHfDtBmm2bGZAQfhPbvKWR8o","KT1PWx2mnDueood7fEmfbBDKx1D9BAnnXitn","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1K9gCRgaLRFKTErYt1wVxA3Frb9FjasjTV","KT1Ha4yFVeyzw6KRAdkzq6TxDHB97KG4pZe8","KT1JBNFcB5tiycHNdYGYCtR3kk6JaJysUCi8","KT1Xobej4mc6XgEjDoJoHtTKgbD1ELMvcQuL","KT1JVjgXPMMSaa6FkzeJcgb8q9cUaLmwaJUX","KT193D4vozYnhGJQVtw7CoxxqphqUEEwK6Vb","KT1LN4LPSqTMS7Sd2CJw4bbDGRkMv2t68Fy9","KT1914CUZ7EegAFPbfgQMRkw8Uz5mYkEz2ui","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT19ovJhcsUn4YU8Q5L3BGovKSixfbWcecEA","KT1TgmD7kXQzofpuc9VbTRMdZCS2e6JDuTtc","KT1F1mn2jbqQCJcsNgYKVAQjvenecNMY2oPK","KT1ErKVqEhG9jxXgUG2KGLW3bNM7zXHX8SDF","KT1A5P4ejnLix13jtadsfV9GCnXLMNnab8UT","KT1AM3PV1cwmGRw28DVTgsjjsjHvmL6z4rGh","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT1SjXiUX63QvdNMcM2m492f7kuf8JxXRLp4","KT1MZg99PxMDEENwB4Fi64xkqAVh5d1rv8Z9","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT1XTxpQvo7oRCqp85LikEZgAZ22uDxhbWJv","KT1VaEsVNiBoA56eToEK6n6BcPgh1tdx9eXi"],tpe=({token:e,...t})=>{const r=epe.includes(e.contract);return(0,xn.jsxs)(ab,{alignItems:"center",children:[(0,xn.jsx)(Am,{...t,marginRight:"4px",children:KE(e)}),r&&(0,xn.jsx)(sb,{})]})},rpe=({owner:e,tokens:t})=>{if(0===t.length)return(0,xn.jsx)(lle,{size:"md"});const r=t.slice(0,20);return(0,xn.jsxs)(Sn,{children:[r.map((e=>(0,xn.jsx)(npe,{token:e},qE(e)))),t.length>20&&(0,xn.jsx)(Rfe,{owner:e,to:"/tokens"})]})},npe=({token:e})=>{const t=QE(e.balance,e,{showSymbol:!1});return(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-around",height:20,borderBottom:`1px solid ${Xv.gray[800]}`,"data-testid":"token-tile",children:[(0,xn.jsxs)(ab,{alignItems:"center",flex:1,children:[(0,xn.jsx)(rb,{width:"38px",background:Xv.gray[500],borderRadius:"4px",contract:e.contract}),(0,xn.jsx)(Sn,{marginLeft:"16px",children:(0,xn.jsx)(tpe,{fontWeight:600,"data-testid":"token-name",token:e})})]}),(0,xn.jsx)(ei,{"data-testid":"token-balance",size:"lg",children:t})]})},ipe=(e,t)=>`${e.tzktExplorerUrl}/${t}`,ope=e=>{const t=c_(),[r,n]=(0,i.useState)([]),[o,a]=(0,i.useState)(!0),[s,c]=(0,i.useState)(!0),{isLoading:l,handleAsyncAction:u}=sne(),[d,h]=(0,i.useState)(e),f=iw(),[p,m]=(0,i.useState)(0);(0,i.useEffect)((()=>{const e=setInterval((()=>{u((async()=>{var e;const i=null===(e=r[0])||void 0===e?void 0:e.id,o=await ape(f,t,d,{lastId:i,sort:"asc"});n((e=>(0,Db.uniqBy)([...o.reverse(),...e],(e=>e.id))))})).catch(Db.noop)}),15e3);return()=>clearInterval(e)}),[p]);const g=d.join(",");(0,i.useEffect)((()=>{n([]),a(!0),u((async()=>{const e=await ape(f,t,g.split(","));n(e),a(e.length>0),m((e=>e+1))})).catch(Db.noop).finally((()=>{c(!1)}))}),[t,g,f]);return{operations:spe(r),isFirstLoad:s,isLoading:l,hasMore:o,loadMore:async()=>{var e;const i=null===(e=r[r.length-1])||void 0===e?void 0:e.id;if(i)return u((async()=>{const e=await ape(f,t,d,{lastId:i});a(e.length>0),n((t=>[...t,...e]))}))},setAddresses:h}},ape=async(e,t,r,n)=>{const i=await(async(e,t,r)=>{var n;const i=(null===r||void 0===r?void 0:r.limit)||100,o=null!==(n=null===r||void 0===r?void 0:r.sort)&&void 0!==n?n:"desc",a={limit:i,offset:null!==r&&void 0!==r&&r.lastId?{cr:r.lastId}:void 0,sort:{[o]:"id"}},s=await Promise.all([oU(e,t,a),iU(e,t,a),aU(e,t,a),sU(e,t,a)]);return(0,Db.sortBy)(s.flat(),(e=>"asc"===o?e.id:-e.id)).slice(0,i)})(r,t,n),o=i.filter((e=>"transaction"===e.type)).map((e=>e.id)),a=await(async(e,t)=>0===e.length?[]:tU((()=>XF({transactionId:{in:[e.join(",")]}},{baseUrl:t.tzktApiUrl}))))(o,t),s=[...a,...i.filter((e=>"token_transfer"===e.type))];return e(aH.updateTokenTransfers(s)),e(_H.addTokens({network:t,tokens:s.map((e=>e.token))})),i},spe=e=>{const t=[];for(let r=0;r{i(l)}))}),id:Xde(a,l),role:"tab",tabIndex:d?0:-1,type:"button","aria-selected":d,"aria-controls":Jde(a,l),onFocus:t?void 0:S(e.onFocus,(()=>{s(l),!o&&(!t||!r)&&i(l)}))}}({...e,ref:t}),i={outline:"0",display:"flex",alignItems:"center",justifyContent:"center",...r.tab};return(0,xn.jsx)(bn.button,{...n,className:v("chakra-tabs__tab",e.className),__css:i})}));cpe.displayName="Tab";const lpe=({children:e,...t})=>(0,xn.jsx)(cpe,{...t,fontSize:"sm",paddingX:3,children:e}),upe=({tokens:e,nfts:t,account:r,delegation:n})=>{const i=OU(),o="multisig"===r.type&&i(r).length>0,a=c_(),{operations:s,isFirstLoad:c}=ope([r.address.pkh]);return(0,xn.jsxs)(the,{flexDirection:"column",display:"flex",width:"100%",marginTop:"60px","data-testid":"asset-panel",children:[(0,xn.jsxs)(rhe,{justifyContent:"space-between","data-testid":"asset-panel-tablist",children:[(0,xn.jsxs)(ab,{children:[o&&(0,xn.jsxs)(lpe,{"data-testid":"account-card-pending-tab",children:[(0,xn.jsx)(Am,{children:"Pending"}),(0,xn.jsx)(Sn,{width:"6px",height:"6px",marginTop:"-7px",marginRight:"-3px",marginLeft:"3px",borderRadius:"100%",backgroundColor:Xv.orangeL})]}),(0,xn.jsx)(lpe,{"data-testid":"account-card-operations-tab",children:"Operations"}),(0,xn.jsx)(lpe,{"data-testid":"account-card-delegation-tab",children:"Delegation"}),(0,xn.jsx)(lpe,{"data-testid":"account-card-nfts-tab",children:"NFTs"}),(0,xn.jsx)(lpe,{"data-testid":"account-card-tokens-tab",children:"Tokens"})]}),(0,xn.jsx)(ile,{href:ipe(a,r.address.pkh),children:(0,xn.jsxs)(Xn,{paddingRight:0,variant:"CTAWithIcon",children:[(0,xn.jsx)(Am,{marginRight:"7px",size:"sm",children:"View on Tzkt"}),(0,xn.jsx)(wy,{stroke:"currentcolor"})]})})]}),(0,xn.jsxs)(nhe,{height:"100%",children:[o&&(0,xn.jsx)(ihe,{overflowX:"hidden",height:"100%",paddingTop:"24px",paddingBottom:"60px","data-testid":"account-card-pending-tab-panel",paddingX:"0",children:(0,xn.jsx)(jfe,{account:r})}),(0,xn.jsx)(ihe,{overflowX:"hidden",height:"100%",paddingTop:"24px",paddingBottom:"60px","data-testid":"account-card-operations-tab-panel",paddingX:"0",children:(0,xn.jsx)(Mfe.Provider,{value:{mode:"drawer",selectedAddress:r.address},children:c?(0,xn.jsx)(Am,{color:Xv.gray[500],textAlign:"center",children:"Loading..."}):(0,xn.jsx)(Qfe,{operations:s,owner:r.address.pkh})})}),(0,xn.jsx)(ihe,{overflowX:"hidden",paddingTop:"24px","data-testid":"account-card-delegation-tab-panel",paddingX:"0",children:(0,xn.jsx)(Qhe,{account:r,delegation:n})}),(0,xn.jsx)(ihe,{overflowX:"hidden",height:"100%",paddingTop:"24px",paddingBottom:0,"data-testid":"account-card-nfts-tab-panel",paddingX:"0",children:(0,xn.jsx)(Ife,{columns:3,nfts:t,owner:r.address.pkh})}),(0,xn.jsx)(ihe,{overflowX:"hidden",height:"100%",paddingTop:"24px","data-testid":"account-card-tokens-tab-panel",paddingX:"0",children:(0,xn.jsx)(rpe,{owner:r.address.pkh,tokens:e})})]})]})};var dpe=wn((function(e,t){const{spacing:r="0.5rem",spacingX:n,spacingY:o,children:a,justify:s,direction:c,align:l,className:u,shouldWrapChildren:d,...h}=e,f=(0,i.useMemo)((()=>d?i.Children.map(a,((e,t)=>(0,xn.jsx)(hpe,{children:e},t))):a),[a,d]);return(0,xn.jsx)(bn.div,{ref:t,className:v("chakra-wrap",u),...h,children:(0,xn.jsx)(bn.ul,{className:"chakra-wrap__list",__css:{display:"flex",flexWrap:"wrap",justifyContent:s,alignItems:l,flexDirection:c,listStyleType:"none",gap:r,columnGap:n,rowGap:o,padding:"0"},children:f})})}));dpe.displayName="Wrap";var hpe=wn((function(e,t){const{className:r,...n}=e;return(0,xn.jsx)(bn.li,{ref:t,__css:{display:"flex",alignItems:"flex-start"},className:v("chakra-wrap__listitem",r),...n})}));hpe.displayName="WrapItem";const fpe=({signers:e})=>(0,xn.jsx)(Sn,{width:"100%",marginTop:"40px",marginBottom:"-20px",background:Xv.gray[800],borderRadius:"8px",children:(0,xn.jsx)(h3,{padding:"15px",allowToggle:!0,children:(0,xn.jsxs)(f3,{background:Xv.gray[800],border:"none",borderRadius:"8px",children:[(0,xn.jsxs)(p3,{as:"span",flex:"1",padding:"0",textAlign:"left",cursor:"pointer",children:[(0,xn.jsx)(ei,{width:"100%",size:"md",children:"Approvers"}),(0,xn.jsx)(m3,{cursor:"pointer"})]}),(0,xn.jsx)(w3,{padding:"0",children:(0,xn.jsx)(dpe,{marginTop:"20px","data-testid":"multisig-tag-section",spacingX:"0",spacingY:"12px",children:e.map((e=>(0,xn.jsx)(iue,{marginRight:"12px",address:e},e.pkh)))})})]})})}),ppe=({account:e})=>{const t=iw(),{onClose:r}=(0,i.useContext)(i0),n=({name:n})=>{t(((e,t)=>(r,n)=>{const{accounts:i,multisigs:o,contacts:a}=n(),s="multisig"===e.type,c=i.items.map((e=>e.label));[c,o.items.map((e=>e.label)),Object.values(a).map((e=>e.name))].flat().includes(t)||r(s?yH.actions.setName({newName:t,account:e}):i$.actions.renameAccount({newName:t,account:e}))})(e,n)),r()},{handleSubmit:o,formState:{isValid:a,errors:s},register:c,reset:l}=Yv({mode:"onBlur",defaultValues:{name:e.label}}),u=UU(),{nameExistsInContacts:d}=AU();return(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{onSubmit:o((({name:e})=>{n({name:e.trim()}),l()})),children:[(0,xn.jsx)(tse,{subTitle:"Edit your account name here.",title:"Edit Name"}),(0,xn.jsx)(km,{}),(0,xn.jsx)(Pm,{children:(0,xn.jsxs)(Im,{isInvalid:!!s.name,marginY:"20px",children:[(0,xn.jsx)(PH,{children:"Account name"}),(0,xn.jsx)(mg,{type:"text",...c("name",{required:"Name is required",validate:e=>u.map((e=>e.label)).includes(e)?"Name already used in accounts":!d(e.trim())||"Name already registered in address book"}),placeholder:"Enter contact's name"}),s.name&&(0,xn.jsx)(g$,{"data-testid":"name-error",children:s.name.message})]})}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Xn,{width:"100%",marginBottom:"8px",isDisabled:!a,size:"lg",type:"submit",children:"Save"})})]})})},mpe=({account:e})=>{const{openWith:t,onClose:r}=(0,i.useContext)(i0),n=iw(),o=AQ(),a=1===zU().length;let s;switch(e.type){case"secret_key":s=c$;break;case"ledger":case"social":s=()=>i$.actions.removeAccount(e)}let c="Are you sure you want to remove this account?",l="Remove Account";a&&(c="Removing your last account will off-board you from Umami. This will remove or reset all customized settings to their defaults. Personal data (including saved contacts, password and accounts) won't be affected.",l="Remove & Off-board");const u=s?()=>t((0,xn.jsx)(gue,{buttonLabel:l,description:c,onSubmit:()=>{n(s(e)),r(),o("/")},title:"Remove Account"})):void 0;return(0,xn.jsx)(Bce,{onRemove:u,onRename:()=>t((0,xn.jsx)(ppe,{account:e}))})},gpe=e=>(0,xn.jsxs)(Sn,{textAlign:e.center?"center":"initial",children:[(0,xn.jsx)(ei,{size:"md",children:pU(e.balance)}),null!==e.dollarBalance&&(0,xn.jsxs)(Am,{marginTop:"6px",color:Xv.gray[400],size:"sm",children:["$",e.dollarBalance.toFixed(2)]})]}),vpe=({icon:e,label:t,onClick:r=(()=>{})})=>(0,xn.jsxs)(Sn,{className:"account-drawer-cta-button",color:Xv.gray[300],textAlign:"center",_hover:{color:Xv.green},cursor:"pointer",marginX:"24px",onClick:r,children:[(0,xn.jsx)(s8,{className:"account-drawer-cta-button-icon",marginBottom:"8px","aria-label":"button",icon:e,size:"lg",variant:"circle_without_color"}),(0,xn.jsx)(Am,{cursor:"pointer",size:"sm",children:t})]}),ype=({onSend:e,onReceive:t=(()=>{}),balance:r,dollarBalance:n,tokens:o,nfts:a,account:s})=>{const c="multisig"===s.type,{openWith:l}=(0,i.useContext)(i0),u=V4(s.address),d=c_(),[h,f]=(0,i.useState)(null),{handleAsyncAction:p}=sne();return(0,i.useEffect)((()=>{p((async()=>{const e=await((e,t)=>iU([e],t,{limit:1,sort:{desc:"id"}}).then(Db.first))(s.address.pkh,d);e&&f((e=>{var t,r,n;const i=null===(t=e.sender)||void 0===t?void 0:t.address,o=null===(r=e.newDelegate)||void 0===r?void 0:r.address,a=e.timestamp,s=e.id,c=e.amount;return null==i||null==o||null==a||null==s||null==c?null:{sender:i,timestamp:a,id:s,amount:new rw(c),delegate:{address:o,alias:(null===(n=e.newDelegate)||void 0===n?void 0:n.alias)||void 0}}})(e))})).catch(Db.noop)}),[s.address.pkh,d]),(0,xn.jsxs)(ab,{zIndex:2,alignItems:"center",flexDirection:"column",height:"100%",marginTop:"-86px",paddingTop:"86px",paddingRight:"30px",background:pue({account:s,radius:"350px",opacity:"35",mainBackgroundColor:"transparent",left:"300px",top:"-125px"}),"data-testid":`account-card-${s.address.pkh}`,children:[(0,xn.jsx)(uue,{addressKind:u}),(0,xn.jsx)(ei,{marginTop:"24px",size:"md",children:s.label}),(0,xn.jsxs)(ab,{alignItems:"center",marginTop:"8px",marginBottom:"30px",children:[(0,xn.jsx)(iue,{marginRight:"4px",address:s.address,mode:{type:"no_icons"}}),(0,xn.jsx)(mpe,{account:s})]}),r&&(0,xn.jsx)(gpe,{balance:r,center:!0,dollarBalance:n}),(0,xn.jsxs)(_n,{marginTop:"34px",children:[(0,xn.jsx)(vpe,{icon:(0,xn.jsx)(Iy,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Send",onClick:e}),(0,xn.jsx)(vpe,{icon:(0,xn.jsx)(My,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Receive",onClick:t}),!c&&(0,xn.jsx)(vpe,{icon:(0,xn.jsx)(Vy,{stroke:"currentcolor"}),label:"Buy Tez",onClick:()=>l((0,xn.jsx)(Fle,{recipient:s.address.pkh}))}),(0,xn.jsx)(vpe,{icon:(0,xn.jsx)(ry,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Delegate",onClick:()=>l((0,xn.jsx)(Whe,{form:h?{baker:h.delegate.address,sender:s.address.pkh}:void 0,sender:s}))})]}),c&&(0,xn.jsx)(fpe,{signers:s.signers}),(0,xn.jsx)(upe,{account:s,delegation:h,nfts:a,tokens:o})]})};var bpe=r(6910);const wpe=({pkh:e})=>{const t=VU()(e);return(0,xn.jsxs)(ym,{children:[(0,xn.jsx)(tse,{subTitle:"You can receive tez or other digital assets by scanning or sharing this QR code",title:"Receive"}),(0,xn.jsx)(Pm,{children:(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"space-between",flexDirection:"column",children:(0,xn.jsx)(Sn,{padding:"8px",background:"white",borderRadius:"8px",children:(0,xn.jsx)(bpe.QRCode,{size:232,value:e})})})}),(0,xn.jsx)(gg,{children:(0,xn.jsxs)(Sn,{width:"100%",children:[t&&(0,xn.jsx)(ei,{textAlign:"center",marginY:2,children:t.label}),(0,xn.jsx)(ab,{justifyContent:"center",width:"100%",children:(0,xn.jsx)(iue,{address:LE(e),mode:{type:"no_icons"}})})]})})]})},xpe=({accountPkh:e})=>{const t=qU(),r=_U(),n=(()=>{const e=xU(),t=_U();return r=>{const n=t(r);if(null==n)return null;const i=fU(n);return e(i)}})(),o=bU(),a=wU(),{openWith:s}=(0,i.useContext)(i0),c=t(e),l=r(e),u=n(e),d=o(e),h=cue(a(e));return(0,xn.jsx)(ype,{account:c,balance:l,dollarBalance:u,nfts:h,onReceive:()=>s((0,xn.jsx)(wpe,{pkh:e})),onSend:()=>s((0,xn.jsx)(tle,{sender:c})),tokens:d})};var _pe=r(6784),kpe=r.n(_pe);const Spe=({nft:e,style:t})=>{const r=e.metadata.attributes;return r&&0!==r.length?(0,xn.jsxs)(f3,{background:Xv.gray[800],"data-testid":"attributes-section",style:t,children:[(0,xn.jsxs)(p3,{paddingY:"16px",children:[(0,xn.jsx)(ei,{flex:"1",textAlign:"left",size:"md",children:"Attributes"}),(0,xn.jsx)(m3,{})]}),(0,xn.jsx)(w3,{children:(0,xn.jsx)(dpe,{marginLeft:"0",spacing:"10px",children:r.map((e=>(0,xn.jsx)(hpe,{flex:"1","data-testid":"nft-attribute",children:(0,xn.jsx)(E3,{width:"160px",height:"128px",marginBottom:"2px",background:Xv.gray[700],children:(0,xn.jsxs)(A3,{padding:"16px",children:[(0,xn.jsx)(Am,{color:Xv.gray[400],size:"sm",children:e.name}),(0,xn.jsx)(ei,{size:"md",children:e.value})]})})},e.name)))})})]}):null},Epe=({text:e,maxLength:t})=>e.length<=t?(0,xn.jsx)(Am,{"data-testid":"truncated-text",children:e}):(0,xn.jsx)(L4,{label:e,children:(0,xn.jsx)(Am,{"data-testid":"truncated-text",children:dU(e,t)})}),Ape=({url:e,...t})=>(0,xn.jsx)("a",{"data-testid":"tzkt-link",href:e,rel:"noopener noreferrer",target:"_blank",children:(0,xn.jsx)(lse,{...t})}),Ppe=({nft:e})=>{if(!e.metadata.creators||0===e.metadata.creators.length)return(0,xn.jsx)(xn.Fragment,{children:"-"});const t=e.metadata.creators[0];return t.startsWith("tz")?(0,xn.jsx)(iue,{marginRight:1,address:LE(t)}):(0,xn.jsx)(Epe,{maxLength:15,text:t})},Ope=({nft:e,style:t})=>{const r=(e=>{const t=e.metadata.royalties;if(!t)return[];const r=Math.pow(10,Number(t.decimals)),n=Object.entries(t.shares).map((([e,t])=>({address:e,share:100*Number(t)/r})));return n.sort(((e,t)=>e.sharee+t.share),0).toFixed(2),i=c_();return(0,xn.jsxs)(f3,{background:Xv.gray[800],style:t,children:[(0,xn.jsxs)(p3,{paddingY:"16px",children:[(0,xn.jsx)(ei,{flex:"1",textAlign:"left",size:"md",children:"Properties"}),(0,xn.jsx)(m3,{})]}),(0,xn.jsx)(w3,{children:(0,xn.jsx)(rce,{children:(0,xn.jsx)(oce,{variant:"stripped",children:(0,xn.jsxs)(ace,{fontSize:"14px",children:[(0,xn.jsxs)(sce,{background:Xv.gray[900],borderColor:Xv.gray[700],borderBottomWidth:"1px",borderRadius:"8px",children:[(0,xn.jsx)(cce,{width:"20%",padding:"16px 0 16px 15px",paddingRight:"0",color:Xv.gray[400],borderTopLeftRadius:"8px","data-testid":"nft-editions",children:"Editions:"}),(0,xn.jsx)(cce,{width:"30%",padding:"16px 0 16px 5px",borderColor:Xv.gray[700],borderRightWidth:"1px","data-testid":"nft-editions-value",children:e.totalSupply||"?"}),(0,xn.jsx)(cce,{width:"20%",padding:"16px 0 16px 15px",color:Xv.gray[400],children:"Token ID:"}),(0,xn.jsx)(cce,{width:"30%",padding:"16px 0 16px 5px",borderTopRightRadius:"8px",children:e.tokenId})]}),(0,xn.jsxs)(sce,{background:Xv.gray[800],borderColor:Xv.gray[700],borderBottomWidth:"1px",children:[(0,xn.jsxs)(cce,{padding:"16px 0 16px 15px",color:Xv.gray[400],"data-testid":"nft-royalty",children:["Royalties",r.length>1?" ("+r.length+")":"",":"]}),(0,xn.jsx)(cce,{padding:"16px 0 16px 5px",borderColor:Xv.gray[700],borderRightWidth:"1px","data-testid":"nft-royalty-value",children:r.length>0?n+"%":"-"}),(0,xn.jsx)(cce,{padding:"16px 0 16px 15px",color:Xv.gray[400],"data-testid":"nft-mime",children:"MIME type:"}),(0,xn.jsx)(cce,{width:"30%",padding:"16px 0 16px 5px","data-testid":"nft-mime-value",children:rA(e)||"-"})]}),(0,xn.jsxs)(sce,{background:Xv.gray[900],borderColor:Xv.gray[700],borderBottomWidth:"1px",children:[(0,xn.jsx)(cce,{padding:"16px 0 16px 15px",color:Xv.gray[400],children:"Contract:"}),(0,xn.jsx)(cce,{padding:"16px 0 16px 5px",borderColor:Xv.gray[700],borderRightWidth:"1px",children:(0,xn.jsx)(iue,{marginRight:1,address:LE(e.contract)})}),(0,xn.jsx)(cce,{padding:"16px 0 16px 15px",color:Xv.gray[400],children:"Metadata:"}),(0,xn.jsxs)(cce,{width:"30%",padding:"16px 0 16px 5px",children:["TzKT ",(0,xn.jsx)(Ape,{url:nA(e,i)})]})]}),(0,xn.jsxs)(sce,{background:Xv.gray[800],borderColor:Xv.gray[700],borderBottomWidth:"1px",children:[(0,xn.jsx)(cce,{padding:"16px 0 16px 15px",color:Xv.gray[400],"data-testid":"nft-creator",children:"Creator:"}),(0,xn.jsx)(cce,{padding:"16px 0 16px 5px",borderColor:Xv.gray[700],borderRightWidth:"1px","data-testid":"nft-creator-value",children:(0,xn.jsx)(Ppe,{nft:e})}),(0,xn.jsx)(cce,{padding:"16px 0 16px 15px",color:Xv.gray[400],children:"License:"}),(0,xn.jsx)(cce,{width:"30%",padding:"16px 0 16px 5px",children:(0,xn.jsx)(Epe,{maxLength:15,text:e.metadata.rights||"-"})})]})]})})})})]})},Tpe=({nft:e})=>{const t=e.metadata.tags;return t&&0!==t.length?(0,xn.jsx)(dpe,{marginTop:"20px","data-testid":"tags-section",children:t.map((e=>(0,xn.jsx)(hpe,{padding:"3px 8px",background:Xv.gray[600],borderRadius:"100px",children:(0,xn.jsx)(Am,{color:Xv.gray[400],"data-testid":"nft-tag",children:e})},e)))}):null},Cpe=({nft:e})=>{const t=sue(tA(e)),r=sue(e.displayUri);return(0,xn.jsx)(Sn,{width:"100%","aria-label":"nft",children:(0,xn.jsxs)(ab,{alignItems:"center",height:"60px",padding:3,background:Xv.gray[800],borderRadius:"4px","data-testid":"nft-name",children:[(0,xn.jsx)(U5,{width:"30px",height:"30px",ratio:1,children:(0,xn.jsx)(tb,{fallbackSrc:r,src:t})}),e.metadata.name&&(0,xn.jsx)(ei,{marginLeft:4,size:"sm",children:dU(e.metadata.name,45)})]})})},jpe=e=>{const{mode:t,operations:r,fee:n,data:{nft:i}}=e,{fee:o,operations:a,estimationFailed:s,isLoading:c,form:l,signer:u,reEstimate:d,onSign:h}=Kce(n,r,t),{recipient:f}=a.operations[0];return(0,xn.jsx)($g,{...l,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(sse,{...e,operationsType:a.type,signer:a.signer}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(ab,{marginBottom:"12px",children:(0,xn.jsx)(Cpe,{nft:i})}),(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",marginY:"12px",paddingX:"4px",children:[(0,xn.jsxs)(ab,{alignItems:"center",children:[(0,xn.jsx)(ei,{marginRight:"4px",color:Xv.gray[450],size:"sm",children:"Owned:"}),(0,xn.jsx)(Am,{color:Xv.gray[400],"data-testid":"nft-owned",size:"sm",children:i.balance})]}),(0,xn.jsx)(hse,{fee:o})]}),(0,xn.jsxs)(ab,{alignItems:"center",marginTop:"12px",marginBottom:"24px",children:[(0,xn.jsx)(ei,{marginRight:"12px",size:"md",children:"Quantity:"}),(0,xn.jsx)(_n,{width:"100px",height:"48px",background:Xv.gray[800],borderRadius:"4px",children:(0,xn.jsxs)(Am,{textAlign:"center",children:[a.operations[0].amount," out of ",i.balance]})})]}),(0,xn.jsx)(PH,{children:"From"}),(0,xn.jsx)(Y4,{marginBottom:"24px",address:a.sender.address}),(0,xn.jsx)(PH,{children:"To"}),(0,xn.jsx)(Y4,{address:f}),(0,xn.jsx)(Uce,{isLoading:c,operationType:a.type,reEstimate:d,sender:a.sender})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isDisabled:s,isLoading:c,onSubmit:h,signer:u,text:ose(a.type,t)})})]})})})},Rpe=e=>{const{nft:t}=e,r=Jce({SignPage:jpe,signPageExtraData:{nft:t},FormPage:Rpe,defaultFormPageProps:e,toOperation:Ipe(t)}),n=Qce(Ipe(t)),{onFormSubmitActionHandlers:[i,o],isLoading:a}=ele([r,n]),s=Yv({mode:"onBlur",defaultValues:{quantity:1,...qce(e)}}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s;return(0,xn.jsx)($g,{...s,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(tse,{}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(ab,{marginBottom:"12px",children:(0,xn.jsx)(Cpe,{nft:e.nft})}),(0,xn.jsxs)(ab,{alignItems:"center",children:[(0,xn.jsx)(ei,{marginRight:"4px",color:Xv.gray[450],size:"sm",children:"Owned:"}),(0,xn.jsx)(Am,{color:Xv.gray[400],"data-testid":"nft-owned",size:"sm",children:t.balance})]}),(0,xn.jsxs)(Im,{marginTop:"24px",isInvalid:!!l.quantity,children:[(0,xn.jsx)(PH,{children:(0,xn.jsxs)(ab,{alignItems:"center",children:[(0,xn.jsx)(ei,{marginRight:"8px",size:"md",children:"Quantity:"}),(0,xn.jsxs)(ab,{alignItems:"center",children:[(0,xn.jsx)(C3,{width:"75px",children:(0,xn.jsx)(mg,{width:"60px",color:"white","data-testid":"quantity-input",step:1,type:"number",...u("quantity",{required:"Quantity is required",max:{value:t.balance,message:`Max quantity is ${t.balance}`},min:{value:1,message:"Min quantity is 1"}})})}),(0,xn.jsxs)(Am,{"data-testid":"out-of-nft",children:["out of ",t.balance]})]})]})}),l.quantity&&(0,xn.jsx)(y$,{"data-testid":"quantity-error",children:l.quantity.message})]}),(0,xn.jsxs)(Im,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,xn.jsx)(n8,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"}),l.sender&&(0,xn.jsx)(y$,{"data-testid":"from-error",children:l.sender.message})]}),(0,xn.jsxs)(Im,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,xn.jsx)(t8,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,xn.jsx)(y$,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Vce,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i)})})]})})})},Ipe=e=>t=>({type:"fa2",sender:LE(t.sender),recipient:LE(t.recipient),contract:BE(e.contract),tokenId:e.tokenId,amount:t.quantity.toString()}),Mpe=({nft:e})=>{var t;const r=sue(eA(e)),n=sue(e.displayUri),o=qU(),{openWith:a}=(0,i.useContext)(i0),s=null===(t=rA(e))||void 0===t?void 0:t.startsWith("video/"),c=WE(e),l={border:"none",borderRadius:"8px",marginBottom:"20px"};return(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(E3,{width:"534px",height:"534px",background:Xv.gray[800],children:(0,xn.jsxs)(A3,{padding:"24px",children:[(0,xn.jsx)(Sn,{position:"relative",width:"486px",height:"486px",children:s?(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Sn,{position:"absolute",zIndex:1,width:"486px",height:"486px",children:(0,xn.jsx)(kpe(),{width:"100%",height:"100%",loop:!0,playing:!0,url:r})}),(0,xn.jsx)(tb,{position:"absolute",zIndex:0,top:"0",width:"486px",height:"486px",objectFit:"contain",alt:c,filter:"blur(20px)",src:n})]}):(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(tb,{position:"absolute",zIndex:1,width:"486px",height:"486px",objectFit:"contain",alt:c,fallbackSrc:n,src:r}),(0,xn.jsx)(tb,{position:"absolute",zIndex:0,top:"0",width:"486px",height:"486px",objectFit:"contain",alt:c,"data-testid":"nft-image",fallbackSrc:n,filter:"blur(20px)",src:r})]})}),Number(e.balance)>1&&(0,xn.jsx)(Am,{position:"absolute",zIndex:3,display:"inline",height:"24px",marginTop:"-38px",marginLeft:"16px",borderRadius:"100px",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",paddingX:"8px",children:"x"+e.balance})]})}),(0,xn.jsx)(Tpe,{nft:e}),c&&(0,xn.jsx)(ei,{marginTop:"16px",marginBottom:"14px","data-testid":"nft-name",size:"lg",children:c}),e.metadata.description&&(0,xn.jsx)(Am,{color:Xv.gray[400],"data-testid":"nft-description",size:"sm",children:e.metadata.description}),(0,xn.jsx)(Xn,{marginTop:"20px",onClick:()=>a((0,xn.jsx)(Rpe,{nft:e,sender:o(e.owner)})),children:"Send"}),(0,xn.jsxs)(h3,{marginTop:"32px",allowMultiple:!0,children:[(0,xn.jsx)(Spe,{nft:e,style:l}),(0,xn.jsx)(Ope,{nft:e,style:l}),(0,xn.jsxs)(f3,{background:Xv.gray[800],style:l,children:[(0,xn.jsxs)(p3,{paddingY:"16px",children:[(0,xn.jsx)(ei,{flex:"1",textAlign:"left",size:"md",children:"JSON"}),(0,xn.jsx)(m3,{})]}),(0,xn.jsx)(w3,{children:(0,xn.jsx)(P3,{value:e})})]})]})]})},Lpe=({nft:e,onCloseDrawer:t})=>(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",paddingBottom:"22px",color:Xv.gray[400],"data-testid":"nft-drawer-body",children:[(0,xn.jsx)(iue,{address:LE(e.owner)}),(0,xn.jsx)(Fde,{onClose:t})]}),(0,xn.jsx)(Mpe,{nft:e})]}),Npe=()=>{const[e,t]=(0,i.useState)(null),{ownerPkh:r,nftId:n}=function(){let{matches:e}=i.useContext(xQ),t=e[e.length-1];return t?t.params:{}}(),o=vU(),a=r&&(0,Db.get)(o,[r],[]).find((e=>qE(e)===n)),s=!!a,{isOpen:c,onOpen:l,onClose:u}=si({defaultIsOpen:s}),{isOpen:d}=o0(),h=AQ(),f=(0,i.useCallback)((()=>{t(null),u(),h("/home")}),[u,h]);(0,i.useEffect)((()=>{const e=e=>{"Escape"===e.key&&f()};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[f]);const p=(0,i.useMemo)((()=>({selectedAccount:e,selectAccount:e=>{t(e),l()}})),[e,l]);return(0,xn.jsxs)(due.Provider,{value:p,children:[(0,xn.jsx)(Dde,{}),(0,xn.jsxs)(Hue,{autoFocus:!1,blockScrollOnMount:!d,isOpen:c,onClose:f,placement:"right",children:[(0,xn.jsx)(Sh,{}),(0,xn.jsxs)(Gue,{children:[s&&(0,xn.jsx)(Pm,{children:(0,xn.jsx)(Lpe,{nft:{...a,owner:r},onCloseDrawer:f})}),!s&&e&&(0,xn.jsxs)(Pm,{overflow:"hidden",overflowY:"scroll",paddingRight:"0",children:[(0,xn.jsx)(Bde,{marginRight:"23px",onClose:f}),(0,xn.jsx)(xpe,{accountPkh:e.address.pkh})]})]})]})]})},Dpe=()=>(0,xn.jsxs)(ab,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Hle,{title:"Accounts"}),(0,xn.jsx)(ab,{flex:1,minHeight:1,children:(0,xn.jsxs)(ab,{flexDirection:"column",flex:1,marginRight:"12px",paddingBottom:"12px",children:[(0,xn.jsx)(Mde,{}),(0,xn.jsx)(Sn,{flex:1,overflow:"hidden",borderRadius:"8px",children:(0,xn.jsx)(Npe,{})})]})})]}),zpe=(0,i.createContext)({selectedNFT:void 0,setSelectedNFT:e=>{}}),Bpe=({nft:e})=>{const{selectedNFT:t,setSelectedNFT:r}=(0,i.useContext)(zpe),n=sue(tA(e)),o=sue(e.displayUri),a=e.metadata.name,s={width:"100%",minWidth:"242px",minHeight:"242px",objectFit:"contain",aspectRatio:"1",fallbackSrc:o,src:n},c=t&&qE(t)===qE(e)&&t.owner===e.owner;return(0,xn.jsx)(E3,{minWidth:"274px",borderRadius:"8px",cursor:"pointer","data-testid":"nft-card"+(c?"-selected":""),onClick:()=>r(e),children:(0,xn.jsxs)(A3,{padding:"16px",background:Xv.gray[900],border:"1px solid",borderColor:c?Xv.orangeL:"transparent",borderRadius:"8px",_hover:{background:Xv.gray[700],borderColor:Xv.gray[500]},children:[(0,xn.jsx)(_n,{children:(0,xn.jsxs)(Sn,{position:"relative",width:"100%",children:[(0,xn.jsx)(tb,{...s,zIndex:2,opacity:"0"}),(0,xn.jsx)(tb,{...s,position:"absolute",zIndex:0,top:"0",filter:"blur(20px)"}),(0,xn.jsx)(tb,{...s,position:"absolute",zIndex:1,top:"0","data-testid":"nft-image"})]})}),Number(e.balance)>1&&(0,xn.jsx)(Am,{position:"absolute",zIndex:3,display:"inline",height:"24px",marginTop:"-36px",marginLeft:"10px",paddingTop:"1px",fontSize:"14px",borderRadius:"full",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",paddingX:"8px",children:"x"+e.balance}),(0,xn.jsx)(Sn,{overflow:"hidden","data-testid":"nft-card-name",children:(0,xn.jsx)(ei,{overflow:"hidden",marginTop:"15px",marginBottom:"8px",fontSize:"sm",whiteSpace:"nowrap",textOverflow:"ellipsis",children:a})}),(0,xn.jsx)(iue,{address:LE(e.owner)})]})})},Fpe=({nftsByOwner:e})=>{const t=Object.entries(e).flatMap((([e,t])=>(t||[]).map((t=>({owner:e,...t})))));let r="repeat(auto-fit, minmax(min(100%/2, max(274px, 100%/7)), 1fr))";return t.length<3&&(r=`repeat(auto-fit, min(100% / ${t.length} - 16px, 450px))`),(0,xn.jsx)(_de,{gridTemplateColumns:r,marginBottom:"16px",minChildWidth:"340px",spacing:"16px",children:cue(t).map((e=>(0,xn.jsx)(Bpe,{nft:e},`${e.owner}:${qE(e)}`)))})};function Upe(e={}){const{timeout:t=300,preventDefault:r=(()=>!0)}=e,[n,o]=(0,i.useState)([]),a=(0,i.useRef)(),s=()=>{a.current&&(clearTimeout(a.current),a.current=null)};return(0,i.useEffect)((()=>s),[]),function(e){return i=>{if("Backspace"===i.key){const e=[...n];return e.pop(),void o(e)}if(function(e){const{key:t}=e;return 1===t.length||t.length>1&&/[^a-zA-Z0-9]/.test(t)}(i)){const c=n.concat(i.key);r(i)&&(i.preventDefault(),i.stopPropagation()),o(c),e(c.join("")),s(),a.current=setTimeout((()=>{o([]),a.current=null}),t)}}}}function $pe(e,t){var r;const n=e.target;if(n){if(!Hpe(n).contains(n))return!1}return!(null==(r=t.current)?void 0:r.contains(n))}function Hpe(e){var t;return null!=(t=null==e?void 0:e.ownerDocument)?t:document}var[Vpe,qpe,Kpe,Wpe]=J5(),[Gpe,Zpe]=Rn({strict:!1,name:"MenuContext"});function Ype(e){var t;return null!=(t=null==e?void 0:e.ownerDocument)?t:document}function Xpe(e){return Ype(e).activeElement===e}function Jpe(e={}){const{id:t,closeOnSelect:r=!0,closeOnBlur:n=!0,initialFocusRef:o,autoSelect:a=!0,isLazy:s,isOpen:c,defaultIsOpen:l,onClose:u,onOpen:d,placement:h="bottom-start",lazyBehavior:f="unmount",direction:p,computePositionOnMount:m=!1,...g}=e,v=(0,i.useRef)(null),y=(0,i.useRef)(null),b=Kpe(),w=(0,i.useCallback)((()=>{requestAnimationFrame((()=>{var e;null==(e=v.current)||e.focus({preventScroll:!1})}))}),[]),x=(0,i.useCallback)((()=>{const e=setTimeout((()=>{var e;if(o)null==(e=o.current)||e.focus();else{const e=b.firstEnabled();e&&C(e.index)}}));L.current.add(e)}),[b,o]),_=(0,i.useCallback)((()=>{const e=setTimeout((()=>{const e=b.lastEnabled();e&&C(e.index)}));L.current.add(e)}),[b]),k=(0,i.useCallback)((()=>{null==d||d(),a?x():w()}),[a,x,w,d]),{isOpen:S,onOpen:E,onClose:A,onToggle:P}=O4({isOpen:c,defaultIsOpen:l,onClose:u,onOpen:k});!function(e){const{ref:t,handler:r,enabled:n=!0}=e,o=Hm(r),a=(0,i.useRef)({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}).current;(0,i.useEffect)((()=>{if(!n)return;const e=e=>{$pe(e,t)&&(a.isPointerDown=!0)},i=e=>{a.ignoreEmulatedMouseEvents?a.ignoreEmulatedMouseEvents=!1:a.isPointerDown&&r&&$pe(e,t)&&(a.isPointerDown=!1,o(e))},s=e=>{a.ignoreEmulatedMouseEvents=!0,r&&a.isPointerDown&&$pe(e,t)&&(a.isPointerDown=!1,o(e))},c=Hpe(t.current);return c.addEventListener("mousedown",e,!0),c.addEventListener("mouseup",i,!0),c.addEventListener("touchstart",e,!0),c.addEventListener("touchend",s,!0),()=>{c.removeEventListener("mousedown",e,!0),c.removeEventListener("mouseup",i,!0),c.removeEventListener("touchstart",e,!0),c.removeEventListener("touchend",s,!0)}}),[r,t,o,a,n])}({enabled:S&&n,ref:v,handler:e=>{var t;(null==(t=y.current)?void 0:t.contains(e.target))||A()}});const O=A4({...g,enabled:S||m,placement:h,direction:p}),[T,C]=(0,i.useState)(-1);$m((()=>{S||C(-1)}),[S]),bce(v,{focusRef:y,visible:S,shouldFocus:!0});const j=pce({isOpen:S,ref:v}),[R,I]=function(e,...t){const r=(0,i.useId)(),n=e||r;return(0,i.useMemo)((()=>t.map((e=>`${e}-${n}`))),[n,t])}(t,"menu-button","menu-list"),M=(0,i.useCallback)((()=>{E(),w()}),[E,w]),L=(0,i.useRef)(new Set([]));(0,i.useEffect)((()=>{const e=L.current;return()=>{e.forEach((e=>clearTimeout(e))),e.clear()}}),[]);const N=(0,i.useCallback)((()=>{E(),x()}),[x,E]),D=(0,i.useCallback)((()=>{E(),_()}),[E,_]),z=(0,i.useCallback)((()=>{var e,t;const r=Ype(v.current),n=null==(e=v.current)?void 0:e.contains(r.activeElement);if(!(S&&!n))return;const i=null==(t=b.item(T))?void 0:t.node;null==i||i.focus({preventScroll:!0})}),[S,T,b]),B=(0,i.useRef)(null);return{openAndFocusMenu:M,openAndFocusFirstItem:N,openAndFocusLastItem:D,onTransitionEnd:z,unstable__animationState:j,descendants:b,popper:O,buttonId:R,menuId:I,forceUpdate:O.forceUpdate,orientation:"vertical",isOpen:S,onToggle:P,onOpen:E,onClose:A,menuRef:v,buttonRef:y,focusedIndex:T,closeOnSelect:r,closeOnBlur:n,autoSelect:a,setFocusedIndex:C,isLazy:s,lazyBehavior:f,initialFocusRef:o,rafId:B}}function Qpe(e){var t;return function(e){var t;if(!function(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}(e))return!1;const r=null!=(t=e.ownerDocument.defaultView)?t:window;return e instanceof r.HTMLElement}(e)&&!!(null==(t=null==e?void 0:e.getAttribute("role"))?void 0:t.startsWith("menuitem"))}function eme(e={},t=null){const{onMouseEnter:r,onMouseMove:n,onMouseLeave:o,onClick:a,onFocus:s,isDisabled:c,isFocusable:l,closeOnSelect:u,type:d,...h}=e,f=Zpe(),{setFocusedIndex:p,focusedIndex:m,closeOnSelect:g,onClose:v,menuRef:y,isOpen:b,menuId:w,rafId:x}=f,_=(0,i.useRef)(null),k=`${w}-menuitem-${(0,i.useId)()}`,{index:S,register:E}=Wpe({disabled:c&&!l}),A=(0,i.useCallback)((e=>{null==r||r(e),c||p(S)}),[p,S,c,r]),P=(0,i.useCallback)((e=>{null==n||n(e),_.current&&!Xpe(_.current)&&A(e)}),[A,n]),O=(0,i.useCallback)((e=>{null==o||o(e),c||p(-1)}),[p,c,o]),T=(0,i.useCallback)((e=>{null==a||a(e),Qpe(e.currentTarget)&&(null!=u?u:g)&&v()}),[v,a,g,u]),C=(0,i.useCallback)((e=>{null==s||s(e),p(S)}),[p,s,S]),j=S===m,R=c&&!l;$m((()=>{if(b)return j&&!R&&_.current?(x.current&&cancelAnimationFrame(x.current),x.current=requestAnimationFrame((()=>{var e;null==(e=_.current)||e.focus({preventScroll:!0}),x.current=null}))):y.current&&!Xpe(y.current)&&y.current.focus({preventScroll:!0}),()=>{x.current&&cancelAnimationFrame(x.current)}}),[j,R,y,b]);const I=$de({onClick:T,onFocus:C,onMouseEnter:A,onMouseMove:P,onMouseLeave:O,ref:Zn(E,_,t),isDisabled:c,isFocusable:l});return{...h,...I,type:null!=d?d:I.type,id:k,role:"menuitem",tabIndex:j?0:-1}}var[tme,rme]=Rn({name:"MenuStylesContext",errorMessage:"useMenuStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),nme=e=>{const{children:t}=e,r=qn("Menu",e),n=ht(e),{direction:o}=Bn(),{descendants:a,...s}=Jpe({...n,direction:o}),c=(0,i.useMemo)((()=>s),[s]),{isOpen:l,onClose:u,forceUpdate:d}=c;return(0,xn.jsx)(Vpe,{value:a,children:(0,xn.jsx)(Gpe,{value:c,children:(0,xn.jsx)(tme,{value:r,children:w(t,{isOpen:l,onClose:u,forceUpdate:d})})})})};nme.displayName="Menu";var ime=wn(((e,t)=>{const r=rme();return(0,xn.jsx)(bn.button,{ref:t,...e,__css:{display:"inline-flex",appearance:"none",alignItems:"center",outline:0,...r.button}})})),ome=wn(((e,t)=>{const{children:r,as:n,...o}=e,a=function(e={},t=null){const r=Zpe(),{onToggle:n,popper:o,openAndFocusFirstItem:a,openAndFocusLastItem:s}=r,c=(0,i.useCallback)((e=>{const t=e.key,r={Enter:a,ArrowDown:a,ArrowUp:s}[t];r&&(e.preventDefault(),e.stopPropagation(),r(e))}),[a,s]);return{...e,ref:Zn(r.buttonRef,t,o.referenceRef),id:r.buttonId,"data-active":_(r.isOpen),"aria-expanded":r.isOpen,"aria-haspopup":"menu","aria-controls":r.menuId,onClick:S(e.onClick,n),onKeyDown:S(e.onKeyDown,c)}}(o,t),s=n||ime;return(0,xn.jsx)(s,{...a,className:v("chakra-menu__menu-button",e.className),children:(0,xn.jsx)(bn.span,{__css:{pointerEvents:"none",flex:"1 1 auto",minW:0},children:e.children})})}));ome.displayName="MenuButton";var ame={enter:{visibility:"visible",opacity:1,scale:1,transition:{duration:.2,ease:[.4,0,.2,1]}},exit:{transitionEnd:{visibility:"hidden"},opacity:0,scale:.8,transition:{duration:.1,easings:"easeOut"}}},sme=bn(bh.div),cme=wn((function(e,t){var r,n;const{rootProps:o,motionProps:a,...s}=e,{isOpen:c,onTransitionEnd:l,unstable__animationState:u}=Zpe(),d=function(e={},t=null){const r=Zpe();if(!r)throw new Error("useMenuContext: context is undefined. Seems you forgot to wrap component within ");const{focusedIndex:n,setFocusedIndex:o,menuRef:a,isOpen:s,onClose:c,menuId:l,isLazy:u,lazyBehavior:d,unstable__animationState:h}=r,f=qpe(),p=Upe({preventDefault:e=>" "!==e.key&&Qpe(e.target)}),m=(0,i.useCallback)((e=>{if(!e.currentTarget.contains(e.target))return;const t=e.key,r={Tab:e=>e.preventDefault(),Escape:c,ArrowDown:()=>{const e=f.nextEnabled(n);e&&o(e.index)},ArrowUp:()=>{const e=f.prevEnabled(n);e&&o(e.index)}},i=r[t];if(i)return e.preventDefault(),void i(e);const a=p((e=>{const t=function(e,t,r,n){if(null==t)return n;if(!n)return e.find((e=>r(e).toLowerCase().startsWith(t.toLowerCase())));const i=e.filter((e=>r(e).toLowerCase().startsWith(t.toLowerCase())));if(i.length>0){let t;return i.includes(n)?(t=i.indexOf(n)+1,t===i.length&&(t=0),i[t]):(t=e.indexOf(i[0]),e[t])}return n}(f.values(),e,(e=>{var t,r;return null!=(r=null==(t=null==e?void 0:e.node)?void 0:t.textContent)?r:""}),f.item(n));if(t){const e=f.indexOf(t.node);o(e)}}));Qpe(e.target)&&a(e)}),[f,n,p,c,o]),g=(0,i.useRef)(!1);s&&(g.current=!0);const v=xce({wasSelected:g.current,enabled:u,mode:d,isSelected:h.present});return{...e,ref:Zn(a,t),children:v?e.children:null,tabIndex:-1,role:"menu",id:l,style:{...e.style,transformOrigin:"var(--popper-transform-origin)"},"aria-orientation":"vertical",onKeyDown:S(e.onKeyDown,m)}}(s,t),h=function(e={}){const{popper:t,isOpen:r}=Zpe();return t.getPopperProps({...e,style:{visibility:r?"visible":"hidden",...e.style}})}(o),f=rme();return(0,xn.jsx)(bn.div,{...h,__css:{zIndex:null!=(n=e.zIndex)?n:null==(r=f.list)?void 0:r.zIndex},children:(0,xn.jsx)(sme,{variants:ame,initial:!1,animate:c?"enter":"exit",__css:{outline:0,...f.list},...a,className:v("chakra-menu__menu-list",d.className),...d,onUpdate:l,onAnimationComplete:E(u.onComplete,d.onAnimationComplete)})})}));cme.displayName="MenuList";var lme=wn(((e,t)=>{const r=rme();return(0,xn.jsx)(bn.span,{ref:t,...e,__css:r.command,className:"chakra-menu__command"})}));lme.displayName="MenuCommand";var ume=wn(((e,t)=>{const{type:r,...n}=e,o=rme(),a=n.as||r?null!=r?r:void 0:"button",s=(0,i.useMemo)((()=>({textDecoration:"none",color:"inherit",userSelect:"none",display:"flex",width:"100%",alignItems:"center",textAlign:"start",flex:"0 0 auto",outline:0,...o.item})),[o.item]);return(0,xn.jsx)(bn.button,{ref:t,type:a,...n,__css:s})})),dme=e=>{const{className:t,children:r,...n}=e,o=rme(),a=i.Children.only(r),s=(0,i.isValidElement)(a)?(0,i.cloneElement)(a,{focusable:"false","aria-hidden":!0,className:v("chakra-menu__icon",a.props.className)}):null,c=v("chakra-menu__icon-wrapper",t);return(0,xn.jsx)(bn.span,{className:c,...n,__css:o.icon,children:s})};dme.displayName="MenuIcon";var hme=wn(((e,t)=>{const{icon:r,iconSpacing:n="0.75rem",command:i,commandSpacing:o="0.75rem",children:a,...s}=e,c=eme(s,t),l=r||i?(0,xn.jsx)("span",{style:{pointerEvents:"none",flex:1},children:a}):a;return(0,xn.jsxs)(ume,{...c,className:v("chakra-menu__menuitem",c.className),children:[r&&(0,xn.jsx)(dme,{fontSize:"0.8em",marginEnd:n,children:r}),l,i&&(0,xn.jsx)(lme,{marginStart:o,children:i})]})}));hme.displayName="MenuItem";const fme=({accounts:e,onSelect:t})=>(0,xn.jsx)(cme,{zIndex:"docked",overflowY:"scroll",maxHeight:"300px",padding:0,background:Xv.gray[900],children:e.map((e=>(0,xn.jsx)(hme,{width:"100%",minHeight:"48px",padding:"5px",background:Xv.gray[700],"aria-label":e.label,onClick:()=>{t(e)},value:e.address.pkh,children:(0,xn.jsx)(Y4,{width:"370px",height:"40px",padding:"5px",background:Xv.gray[700],borderRadius:"4px",_hover:{background:Xv.gray[500]},cursor:"pointer",address:e.address})},e.address.pkh)))}),pme=()=>{const e=UU(),[t,r]=r0(),n=t.getAll("accounts"),i=e.filter((e=>n.includes(e.address.pkh))),o=(0,Db.differenceBy)(e,i,(e=>e.address.pkh)),a=i.length===e.length;return{selectedAccounts:0===i.length?e:i,accountsFilter:(0,xn.jsxs)(_n,{children:[(0,xn.jsx)(Sn,{alignSelf:"flex-start",children:(0,xn.jsxs)(nme,{children:[(0,xn.jsx)(ome,{as:Xn,maxHeight:"26px",paddingLeft:0,fontWeight:"normal",_hover:{bg:"none"},_active:{bg:"none"},"data-testid":"account-filter",isDisabled:a,marginY:"16px",rightIcon:(0,xn.jsx)(ude,{}),variant:"ghost",children:"Filter by Account"}),(0,xn.jsx)(fme,{accounts:o,onSelect:e=>{r({...t,accounts:[...i,e].map((e=>e.address.pkh))})}})]})}),(0,xn.jsx)(dpe,{width:"100%",children:i.map((e=>(0,xn.jsx)(iue,{address:e.address,"data-testid":"account-pill",mode:{type:"removable",onRemove:()=>{r({...t,accounts:n.filter((t=>t!==e.address.pkh))})}}},e.address.pkh)))})]})}},mme=()=>{const e=vU(),{isOpen:t}=o0(),{accountsFilter:r,selectedAccounts:n}=pme(),[o,a]=(0,i.useState)(void 0);(0,i.useEffect)((()=>{const e=e=>{"Escape"===e.key&&a(void 0)};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[]);const s=(0,Db.pick)(e,n.map((e=>e.address.pkh))),c=(0,Db.sumBy)(Object.values(s).flat(),(e=>Number((null===e||void 0===e?void 0:e.balance)||0))),l=(0,Db.every)(s,(e=>!e||0===e.length));return(0,xn.jsxs)(ab,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Hle,{subtitle:`(${c})`,title:"NFTs"}),r,l?(0,xn.jsx)(cle,{size:"lg"}):(0,xn.jsxs)(zpe.Provider,{value:{setSelectedNFT:a,selectedNFT:o},children:[(0,xn.jsx)(Sn,{overflowY:"scroll",children:(0,xn.jsx)(Fpe,{nftsByOwner:s})}),(0,xn.jsxs)(Hue,{autoFocus:!1,blockScrollOnMount:!t,isOpen:!!o,onClose:()=>a(void 0),placement:"right",children:[(0,xn.jsx)(Sh,{}),(0,xn.jsx)(Gue,{children:(0,xn.jsx)(Pm,{children:o&&(0,xn.jsx)(Lpe,{nft:o,onCloseDrawer:()=>a(void 0)})})})]})]})]})},gme=()=>{const{accountsFilter:e,selectedAccounts:t}=pme(),{operations:r,loadMore:n,hasMore:o,setAddresses:a,isLoading:s}=ope(t.map((e=>e.address.pkh))),c=t.map((e=>e.address.pkh)).join(",");(0,i.useEffect)((()=>{a(c.split(","))}),[a,c]);const l=(0,xn.jsx)(Am,{color:Xv.gray[500],textAlign:"center",paddingY:"20px",children:"Loading..."});return(0,xn.jsxs)(ab,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Hle,{title:"Operations"}),e,0===r.length&&s&&l,0===r.length&&!s&&(0,xn.jsx)(sle,{size:"lg"}),r.length>0&&(0,xn.jsx)(Sn,{overflowY:"scroll",marginBottom:"20px",background:Xv.gray[900],borderRadius:"8px",onScroll:e=>{if(!o||s)return;const t=e.target;return t.scrollHeight-t.scrollTop-t.clientHeight<100?n():void 0},paddingX:"20px",children:(0,xn.jsxs)(Mfe.Provider,{value:{mode:"page"},children:[r.map(((e,t)=>{const n=t===r.length-1;return(0,xn.jsxs)(Sn,{height:"90px",marginBottom:n?"10px":0,paddingY:"20px",children:[(0,xn.jsx)(Jfe,{operation:e}),!n&&(0,xn.jsx)(Sn,{children:(0,xn.jsx)(Om,{marginTop:"20px"})})]},e.id)})),s&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Om,{}),l]})]})})]})},vme=()=>{const{data:e}=Bse({queryKey:[Jse],queryFn:()=>x3.getPeers()}),t=ece(),[r,n]=(0,i.useState)([]);return(0,i.useEffect)((()=>{const t=(e||[]).map((async e=>({...e,senderId:e.senderId||await n1(e.publicKey)})));Promise.all(t).then(n).catch(Db.noop)}),[e]),0===r.length?(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(Om,{}),(0,xn.jsx)(Am,{marginTop:"31px",color:Xv.gray[400],size:"lg",children:"Your dApps will appear here"})]}):(0,xn.jsx)(yme,{peerInfos:r,removePeer:t})},yme=({peerInfos:e,removePeer:t})=>(0,xn.jsx)(Sn,{children:e.map((e=>(0,xn.jsxs)(i.Fragment,{children:[(0,xn.jsx)(Om,{}),(0,xn.jsx)(bme,{onRemove:()=>t(e),peerInfo:e})]},e.senderId)))}),bme=({peerInfo:e,onRemove:t})=>(0,xn.jsxs)(ab,{justifyContent:"space-between",height:"106px","data-testid":"peer-row",paddingY:"30px",children:[(0,xn.jsxs)(ab,{children:[(0,xn.jsx)(U5,{width:"48px",marginRight:"16px",ratio:1,children:(0,xn.jsx)(tb,{width:"100%",src:e.icon})}),(0,xn.jsxs)(_n,{alignItems:"flex-start",flexDirection:"column",children:[(0,xn.jsx)(ei,{marginBottom:"6px",size:"md",children:e.name}),(0,xn.jsx)(wme,{peerInfo:e})]})]}),(0,xn.jsx)(_n,{children:(0,xn.jsx)(s8,{"aria-label":"Remove Peer",icon:(0,xn.jsx)(nb,{}),onClick:t,size:"xs",variant:"circle"})})]}),wme=({peerInfo:e})=>{const t=(e=>{const t=ow((e=>e.beacon));return t[e]})(e.senderId);return t?(0,xn.jsxs)(ab,{children:[(0,xn.jsx)(iue,{marginRight:"10px",address:LE(t.accountPkh)}),(0,xn.jsx)(Om,{marginRight:"10px",orientation:"vertical"}),(0,xn.jsx)(Am,{marginTop:"2px",marginRight:"4px",color:Xv.gray[450],fontWeight:650,size:"sm",children:"Network:"}),(0,xn.jsx)(Am,{marginTop:"2px",color:Xv.white,"data-testid":"dapp-connection-network",size:"sm",children:(0,Db.capitalize)(t.networkType)})]}):null},xme=()=>{const{isOpen:e,onClose:t,onOpen:r}=si(),{isOpen:n}=o0();return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Nue,{left:"dApps",isSelected:e,onClick:r}),(0,xn.jsxs)(Hue,{autoFocus:!1,blockScrollOnMount:!n,isOpen:e,onClose:t,placement:"right",children:[(0,xn.jsx)(Sh,{}),(0,xn.jsx)(Gue,{children:(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(Bde,{onClose:t}),(0,xn.jsx)(_me,{})]})})]})]})},_me=()=>{const e=tce();return(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"space-between",height:24,children:(0,xn.jsx)(ei,{children:"dApps"})}),(0,xn.jsx)(Xn,{onClick:()=>navigator.clipboard.readText().then((t=>e(t))),children:"Connect with Pairing Request"}),(0,xn.jsx)(Am,{marginTop:"16px",marginBottom:"32px",color:"text.dark",children:"or open a deeplink from inside the dApp..."}),(0,xn.jsx)(vme,{})]})},kme=()=>{const{isOpen:e,onClose:t,onOpen:r}=si(),{isOpen:n}=o0();return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Nue,{left:"Error Logs",isSelected:e,onClick:r}),(0,xn.jsxs)(Hue,{blockScrollOnMount:!n,isOpen:e,onClose:t,placement:"right",children:[(0,xn.jsx)(Sh,{}),(0,xn.jsx)(Gue,{children:(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(Bde,{onClose:t}),(0,xn.jsx)(Sme,{})]})})]})]})},Sme=()=>{const e=[...ow((e=>e.errors))].reverse(),t=Lb();return(0,xn.jsxs)(ab,{flexDirection:"column",height:"100%",children:[(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",height:"50px",marginBottom:"20px",children:[(0,xn.jsx)(ei,{size:"xl",children:"Error Logs"}),(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)("a",{download:"UmamiErrorLogs.json",href:`data:application/json;charset=utf-8,${encodeURIComponent(JSON.stringify(e))}`,children:(0,xn.jsx)(Xn,{variant:"tertiary",children:"Download error logs"})}),(0,xn.jsx)(Xn,{marginLeft:"8px",onClick:()=>{t(gH.actions.reset())},variant:"warning",children:"Clear All"})]})]}),e.map((e=>(0,xn.jsx)(Eme,{errorLog:e},Kx())))]})},Eme=({errorLog:e})=>(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Om,{marginY:1}),(0,xn.jsx)(ab,{justifyContent:"space-between",paddingY:"12px",children:(0,xn.jsxs)(ab,{children:[(0,xn.jsx)($y,{marginTop:"1px",marginRight:"8px"}),(0,xn.jsxs)(ab,{flexDirection:"column",children:[(0,xn.jsx)(ei,{wordBreak:"break-all",size:"sm",children:e.description}),(0,xn.jsx)(Am,{color:Xv.gray[400],size:"sm",children:e.timestamp})]})]})})]});function Ame(e={}){const{onChange:t,value:r,defaultValue:n,name:o,isDisabled:a,isFocusable:s,isNative:c,...l}=e,[u,d]=(0,i.useState)(n||""),h="undefined"!==typeof r,f=h?r:u,p=(0,i.useRef)(null),m=(0,i.useCallback)((()=>{const e=p.current;if(!e)return;let t="input:not(:disabled):checked";const r=e.querySelector(t);if(r)return void r.focus();t="input:not(:disabled)";const n=e.querySelector(t);null==n||n.focus()}),[]),g=(0,i.useId)(),v=o||`radio-${g}`,b=(0,i.useCallback)((e=>{const r=function(e){return e&&y(e)&&y(e.target)}(e)?e.target.value:e;h||d(r),null==t||t(String(r))}),[t,h]);return{getRootProps:(0,i.useCallback)(((e={},t=null)=>({...e,ref:Zn(t,p),role:"radiogroup"})),[]),getRadioProps:(0,i.useCallback)(((e={},t=null)=>{const r=c?"checked":"isChecked";return{...e,ref:t,name:v,[r]:null!=f?e.value===f:void 0,onChange(e){b(e)},"data-radiogroup":!0}}),[c,v,b,f]),name:v,ref:p,focus:m,setValue:d,value:f,onChange:b,isDisabled:a,isFocusable:s,htmlProps:l}}var[Pme,Ome]=Rn({name:"RadioGroupContext",strict:!1}),Tme=wn(((e,t)=>{const{colorScheme:r,size:n,variant:o,children:a,className:s,isDisabled:c,isFocusable:l,...u}=e,{value:d,onChange:h,getRootProps:f,name:p,htmlProps:m}=Ame(u),g=(0,i.useMemo)((()=>({name:p,size:n,onChange:h,colorScheme:r,value:d,variant:o,isDisabled:c,isFocusable:l})),[p,n,h,r,d,o,c,l]);return(0,xn.jsx)(Pme,{value:g,children:(0,xn.jsx)(bn.div,{...f(m,t),className:v("chakra-radio-group",s),children:a})})}));Tme.displayName="RadioGroup";var Cme={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"};function jme(e){e.preventDefault(),e.stopPropagation()}var Rme=wn(((e,t)=>{var r;const n=Ome(),{onChange:o,value:a}=e,s=qn("Radio",{...n,...e}),c=ht(e),{spacing:l="0.5rem",children:u,isDisabled:d=(null==n?void 0:n.isDisabled),isFocusable:h=(null==n?void 0:n.isFocusable),inputProps:f,...p}=c;let m=e.isChecked;null!=(null==n?void 0:n.value)&&null!=a&&(m=n.value===a);let g=o;(null==n?void 0:n.onChange)&&null!=a&&(g=E(n.onChange,o));const v=null!=(r=null==e?void 0:e.name)?r:null==n?void 0:n.name,{getInputProps:y,getCheckboxProps:b,getLabelProps:w,getRootProps:x,htmlProps:A}=function(e={}){const{defaultChecked:t,isChecked:r,isFocusable:n,isDisabled:o,isReadOnly:a,isRequired:s,onChange:c,isInvalid:l,name:u,value:d,id:h,"data-radiogroup":f,"aria-describedby":p,...m}=e,g=`radio-${(0,i.useId)()}`,v=Rm(),y=Ome();let b=!v||y||f?g:v.id;b=null!=h?h:b;const w=null!=o?o:null==v?void 0:v.isDisabled,x=null!=a?a:null==v?void 0:v.isReadOnly,E=null!=s?s:null==v?void 0:v.isRequired,A=null!=l?l:null==v?void 0:v.isInvalid,[P,O]=(0,i.useState)(!1),[T,C]=(0,i.useState)(!1),[j,R]=(0,i.useState)(!1),[I,M]=(0,i.useState)(!1),[L,N]=(0,i.useState)(Boolean(t)),D="undefined"!==typeof r,z=D?r:L;(0,i.useEffect)((()=>ag(O)),[]);const B=(0,i.useCallback)((e=>{x||w?e.preventDefault():(D||N(e.target.checked),null==c||c(e))}),[D,w,x,c]),F=(0,i.useCallback)((e=>{" "===e.key&&M(!0)}),[M]),U=(0,i.useCallback)((e=>{" "===e.key&&M(!1)}),[M]),$=(0,i.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":_(I),"data-hover":_(j),"data-disabled":_(w),"data-invalid":_(A),"data-checked":_(z),"data-focus":_(T),"data-focus-visible":_(T&&P),"data-readonly":_(x),"aria-hidden":!0,onMouseDown:S(e.onMouseDown,(()=>M(!0))),onMouseUp:S(e.onMouseUp,(()=>M(!1))),onMouseEnter:S(e.onMouseEnter,(()=>R(!0))),onMouseLeave:S(e.onMouseLeave,(()=>R(!1)))})),[I,j,w,A,z,T,x,P]),{onFocus:H,onBlur:V}=null!=v?v:{},q=(0,i.useCallback)(((e={},t=null)=>{const r=w&&!n;return{...e,id:b,ref:t,type:"radio",name:u,value:d,onChange:S(e.onChange,B),onBlur:S(V,e.onBlur,(()=>C(!1))),onFocus:S(H,e.onFocus,(()=>C(!0))),onKeyDown:S(e.onKeyDown,F),onKeyUp:S(e.onKeyUp,U),checked:z,disabled:r,readOnly:x,required:E,"aria-invalid":k(A),"aria-disabled":k(r),"aria-required":k(E),"data-readonly":_(x),"aria-describedby":p,style:Cme}}),[w,n,b,u,d,B,V,H,F,U,z,x,E,A,p]);return{state:{isInvalid:A,isFocused:T,isChecked:z,isActive:I,isHovered:j,isDisabled:w,isReadOnly:x,isRequired:E},getCheckboxProps:$,getRadioProps:$,getInputProps:q,getLabelProps:(e={},t=null)=>({...e,ref:t,onMouseDown:S(e.onMouseDown,jme),"data-disabled":_(w),"data-checked":_(z),"data-invalid":_(A)}),getRootProps:(e,t=null)=>({...e,ref:t,"data-disabled":_(w),"data-checked":_(z),"data-invalid":_(A)}),htmlProps:m}}({...p,isChecked:m,isFocusable:h,isDisabled:d,onChange:g,name:v}),[P,O]=function(e,t){const r={},n={};for(const[i,o]of Object.entries(e))t.includes(i)?r[i]=o:n[i]=o;return[r,n]}(A,tt),T=b(O),C=y(f,t),j=w(),R=Object.assign({},P,x()),I={display:"inline-flex",alignItems:"center",verticalAlign:"top",cursor:"pointer",position:"relative",...s.container},M={display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0,...s.control},L={userSelect:"none",marginStart:l,...s.label};return(0,xn.jsxs)(bn.label,{className:"chakra-radio",...R,__css:I,children:[(0,xn.jsx)("input",{className:"chakra-radio__input",...C}),(0,xn.jsx)(bn.span,{className:"chakra-radio__control",...T,__css:M}),u&&(0,xn.jsx)(bn.span,{className:"chakra-radio__label",...j,__css:L,children:u})]})}));Rme.displayName="Radio";const Ime=({network:e})=>{const t=e?"edit":"create",{onClose:r}=(0,i.useContext)(i0),n=Lb(),o=l_(),{formState:{errors:a,isValid:s},register:c,handleSubmit:l}=Yv({mode:"onBlur",defaultValues:e});return(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{onSubmit:l((e=>{n(s_.upsertNetwork(e)),r()})),children:[(0,xn.jsxs)(Sm,{textAlign:"center",children:["edit"===t?"Edit":"Add"," Network",(0,xn.jsx)(km,{})]}),(0,xn.jsxs)(Pm,{children:["create"===t&&(0,xn.jsxs)(Im,{marginTop:"32px",marginBottom:"24px",isInvalid:!!a.name,children:[(0,xn.jsx)(PH,{children:"Name"}),(0,xn.jsx)(mg,{placeholder:"mainnet",...c("name",{required:"Name is required",validate:e=>{if(o.find((t=>t.name===e)))return"Network with this name already exists"}})}),a.name&&(0,xn.jsx)(y$,{children:a.name.message})]}),(0,xn.jsxs)(Im,{marginBottom:"24px",isInvalid:!!a.rpcUrl,children:[(0,xn.jsx)(PH,{children:"RPC URL"}),(0,xn.jsx)(mg,{placeholder:"https://prod.tcinfra.net/rpc/mainnet",...c("rpcUrl",{required:"RPC URL is required"})}),a.rpcUrl&&(0,xn.jsx)(y$,{children:a.rpcUrl.message})]}),(0,xn.jsxs)(Im,{marginBottom:"24px",isInvalid:!!a.tzktApiUrl,children:[(0,xn.jsx)(PH,{children:"Tzkt API URL"}),(0,xn.jsx)(mg,{placeholder:"https://api.ghostnet.tzkt.io",...c("tzktApiUrl",{required:"Tzkt API URL is required"})}),a.tzktApiUrl&&(0,xn.jsx)(y$,{children:a.tzktApiUrl.message})]}),(0,xn.jsxs)(Im,{marginBottom:"24px",isInvalid:!!a.tzktExplorerUrl,children:[(0,xn.jsx)(PH,{children:"Tzkt Explorer URL"}),(0,xn.jsx)(mg,{placeholder:"https://ghostnet.tzkt.io",...c("tzktExplorerUrl",{required:"Tzkt Explorer URL is required"})}),a.tzktExplorerUrl&&(0,xn.jsx)(y$,{children:a.tzktExplorerUrl.message})]}),(0,xn.jsxs)(Im,{children:[(0,xn.jsx)(PH,{children:"Buy Tez URL"}),(0,xn.jsx)(mg,{placeholder:"https://faucet.ghostnet.teztnets.xyz",...c("buyTezUrl")})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Xn,{width:"100%",isDisabled:!s,onClick:()=>{},type:"submit",children:"edit"===t?"Save changes":"Add network"})})]})]})})},Mme=()=>{const{openWith:e}=(0,i.useContext)(i0),t=c_(),r=u_(),n=l_(),o=iw();return(0,xn.jsxs)(ab,{flexDirection:"column",children:[(0,xn.jsxs)(_n,{justifyContent:"space-between",children:[(0,xn.jsx)(ei,{children:"Network Settings"}),(0,xn.jsxs)(Xn,{paddingRight:"0",onClick:()=>e((0,xn.jsx)(Ime,{})),variant:"CTAWithIcon",children:[(0,xn.jsx)(Am,{size:"sm",children:"Add Network"}),(0,xn.jsx)(Vy,{width:"18px",height:"18px",marginLeft:"4px",stroke:"currentcolor"})]})]}),(0,xn.jsx)(Tme,{marginTop:"60px",onChange:r,value:t.name,children:(0,xn.jsx)(Cn,{children:n.map((t=>(0,xn.jsxs)(i.Fragment,{children:[(0,xn.jsx)(Om,{borderColor:Xv.gray[700]}),(0,xn.jsxs)(ab,{justifyContent:"space-between","data-testid":`network-${t.name}`,children:[(0,xn.jsx)(Rme,{height:"100px",value:t.name,variant:"primary",children:(0,xn.jsxs)(ab,{flexDirection:"column",marginLeft:"16px",children:[(0,xn.jsx)(ei,{marginBottom:"4px",size:"sm",children:t.name}),(0,xn.jsx)(Am,{color:Xv.gray[400],children:t.rpcUrl})]})}),!n_(t)&&(0,xn.jsx)(_n,{"data-testid":"popover-menu",children:(0,xn.jsxs)(zce,{children:[(0,xn.jsxs)(Xn,{onClick:()=>e((0,xn.jsx)(Ime,{network:t})),variant:"popover",children:[(0,xn.jsx)(Am,{marginRight:"4px",children:"Edit"}),(0,xn.jsx)(Hy,{stroke:"inherit"})]}),(0,xn.jsx)(Om,{marginTop:"4px"}),(0,xn.jsxs)(Xn,{onClick:()=>(e=>{o(s_.removeNetwork(e))})(t),variant:"popover",children:[(0,xn.jsx)(Am,{marginRight:"4px",children:"Remove"}),(0,xn.jsx)(nb,{stroke:"inherit"})]})]})})]})]},t.name)))})})]})},Lme=()=>{const{isOpen:e,onClose:t,onOpen:r}=si(),{isOpen:n}=(0,i.useContext)(i0);return(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Nue,{left:"Network Settings",isSelected:e,onClick:r}),(0,xn.jsxs)(Hue,{blockScrollOnMount:!n,isOpen:e,onClose:t,placement:"right",children:[(0,xn.jsx)(Sh,{}),(0,xn.jsx)(Gue,{children:(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)(Bde,{onClose:t}),(0,xn.jsx)(Mme,{})]})})]})]})},Nme=()=>{const{onClose:e}=(0,i.useContext)(i0),t=Yv({mode:"onBlur"}),r=a0(),n=iw(),{handleAsyncAction:o,isLoading:a}=sne(),{handleSubmit:s,formState:{isValid:c,errors:l},getValues:u}=t;return(0,xn.jsx)($g,{...t,children:(0,xn.jsx)(ym,{background:Xv.gray[700],"data-testid":"change-password-modal",children:(0,xn.jsxs)("form",{onSubmit:s((async({currentPassword:t,newPassword:i,newPasswordConfirmation:a})=>{if(t!==i&&i===a)return o((async()=>{await n(r$({currentPassword:t,newPassword:i})).unwrap(),r({description:"Password updated",status:"success"}),e()}))})),children:[(0,xn.jsx)(km,{}),(0,xn.jsx)(Sm,{textAlign:"center",children:(0,xn.jsx)(ei,{children:"Change Password"})}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsxs)(Im,{marginTop:"32px",isInvalid:!!l.currentPassword,children:[(0,xn.jsx)(Xae,{"data-testid":"current-password",inputName:"currentPassword",label:"Current Password",placeholder:"Enter your current password",required:"Current password is required"}),l.currentPassword&&(0,xn.jsx)(y$,{"data-testid":"current-password-error",children:l.currentPassword.message})]}),(0,xn.jsxs)(Im,{isInvalid:!!l.newPassword,marginY:6,children:[(0,xn.jsx)(Xae,{"data-testid":"new-password",inputName:"newPassword",label:"New Password",placeholder:"Enter new password",required:"New password is required",validate:e=>u("currentPassword")!==e||"Cannot be the same as old password"}),l.newPassword&&(0,xn.jsx)(y$,{"data-testid":"new-password-error",children:l.newPassword.message})]}),(0,xn.jsxs)(Im,{marginTop:3,isInvalid:!!l.newPasswordConfirmation,children:[(0,xn.jsx)(Xae,{"data-testid":"new-password-confirmation",inputName:"newPasswordConfirmation",label:"Confirm New Password",placeholder:"Confirm new password",required:"Confirmation is required",validate:e=>u("newPassword")===e||"Your new passwords do no match"}),l.newPasswordConfirmation&&(0,xn.jsx)(y$,{"data-testid":"new-password-confirmation-error",children:l.newPasswordConfirmation.message})]})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Xn,{width:"100%",isDisabled:!c,isLoading:a,size:"lg",type:"submit",children:"Update Password"})})]})})})},Dme=()=>(0,xn.jsxs)(ab,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Hle,{title:"Settings"}),(0,xn.jsxs)(Sn,{overflowY:"scroll",children:[(0,xn.jsx)(Sn,{marginTop:"16px",children:(0,xn.jsx)(zme,{})}),(0,xn.jsx)(Bme,{}),(0,xn.jsx)(Fme,{})]})]}),zme=()=>(0,xn.jsxs)(Ume,{title:"General",children:[(0,xn.jsx)(Lme,{}),(0,xn.jsx)(kme,{})]}),Bme=()=>(0,xn.jsx)(Ume,{title:"Backup",children:(0,xn.jsx)(Lue,{isSelected:!1,onClick:RH,children:(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"space-between",children:[(0,xn.jsx)(ei,{size:"sm",children:"Download backup file"}),(0,xn.jsx)(Xn,{onClick:RH,variant:"unstyled",children:(0,xn.jsx)(gy,{cursor:"pointer"})})]})})}),Fme=()=>{const{modalElement:e,onOpen:t}=x$(),{openWith:r}=(0,i.useContext)(i0);return(0,xn.jsxs)(Ume,{title:"Advanced Settings",children:[(0,xn.jsx)(xme,{}),(0,xn.jsx)(Nue,{left:"Off-board Wallet",isSelected:!1,onClick:t}),(0,xn.jsx)(Nue,{left:"Change Password",isSelected:!1,onClick:()=>r((0,xn.jsx)(Nme,{}))}),e]})},Ume=({title:e,children:t})=>(0,xn.jsx)(Sn,{marginTop:"8px",children:(0,xn.jsx)(ab,{children:(0,xn.jsxs)(Sn,{width:"550px",children:[(0,xn.jsx)(ei,{marginBottom:"16px",size:"lg",children:e}),t]})})}),$me=({token:e,amount:t,...r})=>{const{contract:n}=e,i=QE(t,e),o=GE(e);return(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"start",width:"400px",padding:"15px",background:Xv.gray[800],borderRadius:"4px","data-testid":"token-tile",...r,children:[(0,xn.jsx)(ab,{alignItems:"center",children:(0,xn.jsx)(U5,{width:"30px",height:"30px",marginRight:"12px",ratio:1,children:(0,xn.jsx)(rb,{padding:"6.25px",background:Xv.gray[500],borderRadius:"4px",contract:n})})}),(0,xn.jsx)(G4,{number:i}),(0,xn.jsx)(Am,{marginLeft:"4px",size:"sm",children:o})]})},Hme=e=>{const{mode:t,operations:r,fee:n,data:{token:i}}=e,{fee:o,operations:a,estimationFailed:s,isLoading:c,form:l,signer:u,reEstimate:d,onSign:h}=Kce(n,r,t),{amount:f,recipient:p}=a.operations[0];return(0,xn.jsx)($g,{...l,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(sse,{...e,operationsType:a.type,signer:a.signer}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsx)($me,{amount:f,token:i}),(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,xn.jsx)(ab,{children:(0,xn.jsx)(hse,{fee:o})})}),(0,xn.jsx)(PH,{children:"From"}),(0,xn.jsx)(Y4,{marginBottom:"24px",address:a.sender.address}),(0,xn.jsx)(PH,{children:"To"}),(0,xn.jsx)(Y4,{address:p}),(0,xn.jsx)(Uce,{isLoading:c,operationType:a.type,reEstimate:d,sender:a.sender})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Jae,{isDisabled:s,isLoading:c,onSubmit:h,signer:u,text:ose(a.type,t)})})]})})})},Vme=e=>{const{token:t}=e,r=Jce({SignPage:Hme,signPageExtraData:{token:t},FormPage:Vme,defaultFormPageProps:e,toOperation:qme(t)}),n=Qce(qme(t)),{onFormSubmitActionHandlers:[i,o],isLoading:a}=ele([r,n]),s=Yv({mode:"onBlur",defaultValues:qce(e)}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s,h=YE(t),f=JE(t.balance,h),p=Gce(Number(h));return(0,xn.jsx)($g,{...s,children:(0,xn.jsx)(ym,{children:(0,xn.jsxs)("form",{children:[(0,xn.jsx)(tse,{}),(0,xn.jsxs)(Pm,{children:[(0,xn.jsxs)(Im,{isInvalid:!!l.prettyAmount,children:[(0,xn.jsx)(PH,{children:"Amount"}),(0,xn.jsxs)(C3,{children:[(0,xn.jsx)(mg,{isDisabled:a,step:p,type:"number",...u("prettyAmount",{required:"Amount is required",max:{value:f.toString(),message:`Max amount is ${f}`},validate:Zce(Number(h))}),placeholder:p}),(0,xn.jsx)(M3,{paddingRight:"12px","data-testid":"token-symbol",children:GE(t)})]}),l.prettyAmount&&(0,xn.jsx)(y$,{"data-testid":"amount-error",children:l.prettyAmount.message})]}),(0,xn.jsxs)(Im,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,xn.jsx)(n8,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"}),l.sender&&(0,xn.jsx)(y$,{"data-testid":"from-error",children:l.sender.message})]}),(0,xn.jsxs)(Im,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,xn.jsx)(t8,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,xn.jsx)(y$,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,xn.jsx)(gg,{children:(0,xn.jsx)(Vce,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i)})})]})})})},qme=e=>t=>{const r={type:"fa2",sender:LE(t.sender),recipient:LE(t.recipient),contract:BE(e.contract),tokenId:e.tokenId,amount:XE(e,t.prettyAmount)};return"fa2"===e.type?r:{...r,type:"fa1.2",tokenId:"0"}},Kme=({account:e})=>{const{address:t,label:r}=e,n=V4(t);return(0,xn.jsxs)(ab,{alignItems:"center",height:"78px",background:pue({left:"-10px",top:"-10px",account:e,radius:"100px",mainBackgroundColor:Xv.gray[800]}),borderTopRadius:"8px","data-testid":"header",paddingX:"30px",children:[(0,xn.jsx)(H4,{addressKind:n,identiconSize:35,size:"lg"}),(0,xn.jsxs)(ab,{justifyContent:"space-between",flex:1,children:[(0,xn.jsxs)(Sn,{marginLeft:"16px","data-testid":"account-identifier",children:[(0,xn.jsx)(ei,{marginBottom:"4px",size:"md",children:r}),(0,xn.jsx)(Am,{color:Xv.gray[300],size:"sm",children:mU(t.pkh)})]}),(0,xn.jsx)(ab,{flexDirection:"column-reverse",children:(0,xn.jsx)(Z4,{verticalAlign:"bottom",address:e.address.pkh})})]})]})},Wme=({account:e,tokens:t})=>{const{openWith:r}=(0,i.useContext)(i0);return(0,xn.jsxs)(E3,{overflowX:"auto",marginBottom:"16px",borderBottomRadius:"8px",backgroundColor:Xv.gray[900],children:[(0,xn.jsx)(Kme,{account:e}),(0,xn.jsx)(rce,{paddingX:"30px",children:(0,xn.jsx)(oce,{children:(0,xn.jsx)(ace,{children:t.map(((n,i)=>{const o=i===t.length-1?"transparent":Xv.gray[700];return(0,xn.jsxs)(sce,{"data-testid":"token-tile",children:[(0,xn.jsx)(cce,{width:"20%",minWidth:"240px",borderColor:o,paddingX:"0",children:(0,xn.jsxs)(ab,{alignItems:"center",children:[(0,xn.jsx)(rb,{display:"inline-block",width:"38px",contract:n.contract}),(0,xn.jsx)(ei,{display:"inline-block",marginLeft:"16px",size:"sm",children:(0,xn.jsx)(tpe,{token:n})})]})}),(0,xn.jsx)(cce,{width:"20%",minWidth:"200px",borderColor:o,paddingX:"0",children:(0,xn.jsx)(iue,{address:BE(n.contract)})}),(0,xn.jsx)(cce,{width:"15%",minWidth:"160px",borderColor:o,paddingX:"0",children:(0,xn.jsx)(ei,{size:"sm",children:QE(n.balance,n,{showSymbol:!1})})}),(0,xn.jsx)(cce,{textAlign:"right",borderColor:o,paddingX:"0",children:(0,xn.jsx)(Fce,{onClick:()=>r((0,xn.jsx)(Vme,{sender:e,token:n}))})})]},qE(n))}))})})})]})},Gme=()=>{const{accountsFilter:e,selectedAccounts:t}=pme(),r=bU(),n=t.map((e=>[e,r(e.address.pkh)])).filter((([,e])=>e.length>0));return(0,xn.jsxs)(ab,{flexDirection:"column",height:"100%",children:[(0,xn.jsx)(Hle,{title:"Tokens"}),e,0===n.length?(0,xn.jsx)(lle,{size:"lg"}):(0,xn.jsx)(Sn,{overflowY:"auto",children:n.map((([e,t])=>(0,xn.jsx)(Wme,{account:e,tokens:t},e.address.pkh)))})]})},Zme=({isCollapsed:e,...t})=>{const r=e?S$:`Umami v${S$}`;return(0,xn.jsx)(Am,{color:Xv.gray[450],...t,children:r})},Yme=({toggle:e,...t})=>(0,xn.jsx)(_n,{width:"44px",height:"44px",marginRight:"-14px",borderRadius:"4px",_hover:{background:Xv.gray[800]},cursor:"pointer","data-testid":"collapse-menu-button",onClick:e,...t,children:(0,xn.jsx)(iy,{})}),Xme=e=>{const t=c_();return(0,xn.jsx)(Fy,{background:"white",borderRadius:"8px","data-testid":"maki-logo",fishColor:"mainnet"===t.name?"#F74F18":"black",...e})},Jme=()=>{const e=c_(),t=l_(),r=u_(),{onOpen:n,onClose:o,isOpen:a}=si();return(0,xn.jsxs)(Cce,{isOpen:a,onClose:o,onOpen:n,placement:"bottom-end",children:[(0,xn.jsx)(jce,{children:(0,xn.jsxs)(Xn,{marginTop:"4px",color:Xv.green,"data-testid":"network-selector",variant:"unstyled",children:[(0,Db.capitalize)(e.name),a?(0,xn.jsx)(cy,{marginTop:"-2px",stroke:"currentcolor"}):(0,xn.jsx)(ay,{marginTop:"-2px",stroke:"currentcolor"})]})}),(0,xn.jsx)(Nce,{width:"100px",marginTop:"-10px",background:Xv.gray[700],border:"1px solid",borderColor:Xv.gray[500],children:(0,xn.jsx)(Dce,{padding:"4px 12px",children:(0,xn.jsx)(ab,{flexDirection:"column",children:t.map(((n,a)=>(0,xn.jsxs)(i.Fragment,{children:[(0,xn.jsx)(Xn,{height:"34px",color:n.name===e.name?Xv.green:Xv.gray[300],fontSize:"14px",fontWeight:400,textAlign:"right",_hover:{color:Xv.greenL},onClick:()=>{r(n.name),o()},variant:"unstyled",children:(0,Db.capitalize)(n.name)}),a{const[e,t]=(0,i.useState)(!1),r=window;(0,i.useEffect)((()=>{r&&r.electronAPI&&r.electronAPI.onAppUpdateDownloaded((e=>t(!0)))}),[r]);return e?(0,xn.jsx)(Sn,{marginTop:"24px",marginBottom:"6px",children:(0,xn.jsxs)(Xn,{justifyContent:"flex-start",width:"100%",height:"32px",paddingTop:"7px",paddingRight:"8px",paddingBottom:"7px",paddingLeft:"8px",color:Xv.black,background:Xv.green,_hover:{color:Xv.black,background:Xv.greenL},onClick:()=>{r&&r.electronAPI&&r.electronAPI.installAppUpdateAndQuit()},children:[(0,xn.jsx)(Oy,{}),(0,xn.jsx)(Am,{marginLeft:"4px",size:"sm",children:"Update Umami"})]})}):null},ege=()=>{const{isCollapsed:e,toggle:t}=(()=>{const[e,t]=(0,i.useState)(!1),r=(0,i.useCallback)((()=>{t((e=>!e))}),[]);return{isCollapsed:e,toggle:r}})(),r=(0,xn.jsx)(Yme,{marginTop:e?0:"2px",marginRight:e?0:"-14px",toggle:t});return(0,xn.jsxs)(ab,{alignItems:e?"center":"normal",flexDirection:"column",width:e?"80px":"236px",padding:e?"30px 20px":"30px",background:Xv.gray[900],"data-testid":"side-navbar"+(e?"-collapsed":""),children:[(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(ab,{alignItems:"center",justifyContent:"space-between",height:"30px",children:e?r:(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Xme,{width:"38px",height:"38px"}),(0,xn.jsxs)(ab,{children:[(0,xn.jsx)(Jme,{}),r]})]})}),(0,xn.jsx)(Om,{marginTop:"28px"})]}),(0,xn.jsxs)(ab,{justifyContent:"space-between",flexDirection:"column",flex:1,children:[(0,xn.jsxs)(Sn,{alignItems:e?"center":"normal",justifyContent:e?"space-around":"normal",display:e?"flex":"block",height:"100%",children:[!e&&(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Qme,{}),(0,xn.jsx)(rge,{})]}),(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(tge,{icon:(0,xn.jsx)(Jv,{}),isCollapsed:e,label:"Accounts",to:"/home"}),(0,xn.jsx)(tge,{icon:(0,xn.jsx)(fy,{}),isCollapsed:e,label:"NFTs",to:"/nfts"}),(0,xn.jsx)(tge,{icon:(0,xn.jsx)(qy,{width:"24px",height:"24px"}),isCollapsed:e,label:"Operations",to:"/operations"}),(0,xn.jsx)(tge,{icon:(0,xn.jsx)(ly,{}),isCollapsed:e,label:"Tokens",to:"/tokens"}),(0,xn.jsx)(tge,{icon:(0,xn.jsx)(ny,{}),isCollapsed:e,label:"Batch",to:"/batch"})]})]}),(0,xn.jsxs)(Sn,{children:[(0,xn.jsx)(Om,{}),(0,xn.jsx)(tge,{marginTop:"22px",icon:(0,xn.jsx)(ty,{}),isCollapsed:e,label:"Address Book",to:"/address-book"}),(0,xn.jsx)(tge,{icon:(0,xn.jsx)(Ty,{}),isCollapsed:e,label:"Settings",to:"/settings"}),(0,xn.jsx)(tge,{icon:(0,xn.jsx)(jy,{}),isCollapsed:e,label:"Help",to:"/help"}),(0,xn.jsx)(Zme,{marginTop:"24px",fontSize:"14px",textAlign:e?"center":"left",isCollapsed:e})]})]})]})},tge=({icon:e,label:t,to:r,isCollapsed:n,...i})=>{const o=SQ().pathname.startsWith(r);return(0,xn.jsx)(QQ,{to:r,children:(0,xn.jsxs)(ab,{alignItems:"center",justifyContent:"flex-start",width:n?"44px":"176px",marginBottom:"8px",padding:"10px",background:o?Xv.gray[600]:"transparent",borderRadius:"4px",_hover:{background:o?Xv.gray[600]:Xv.gray[800]},cursor:"pointer",...i,children:[e,!n&&(0,xn.jsx)(Am,{marginLeft:"10px",size:"sm",children:t})]})})},rge=()=>{const e=(()=>{const e=ow((e=>e.assets.balances.mutez)),t=xU(),r=Object.values(e);if(0===r.length)return null;const n=r.reduce(((e,t)=>e.plus(t)),rw(0)),i=t(fU(n));return{mutez:n.toFixed(),usd:i}})(),[t]=dle("(max-height: 900px)");return(0,xn.jsxs)(Sn,{marginTop:"24px",marginBottom:t?"30px":"100px","data-testid":"total-balance",children:[(0,xn.jsx)(Am,{marginBottom:"4px",size:"sm",children:"Balance"}),e&&(0,xn.jsx)(gpe,{balance:e.mutez,dollarBalance:e.usd})]})},nge=e=>(0,xn.jsxs)(ab,{height:"100vh",children:[(0,xn.jsx)(ege,{}),(0,xn.jsx)(Sn,{flex:1,overflowX:"hidden",height:"100%",background:"linear-gradient(180deg, rgba(0, 231, 182, 0.35) -41.53%, rgba(0, 231, 182, 0.00) 34.71%)",paddingX:6,children:e})]}),ige=r.p+"static/media/accounts.5f47a2af4c8394165d1e.png",oge=r.p+"static/media/batch.5ba4eb38fa8c4e1ed39b.png",age=r.p+"static/media/multisig.3ab2bbc3bda7df25ea83.png";var sge=r(1762);const cge=({children:e})=>{const t={background:Xv.gray[400],width:"10px",height:"10px",display:"inline-block",margin:"0 4px 60px 4px",borderRadius:"5px"};return(0,xn.jsx)(Sn,{backgroundImage:"linear-gradient(180deg, rgba(18, 18, 18, 0.00) 36.43%, rgba(18, 18, 18, 0.50) 53.65%, #121212 76.24%)",borderRightRadius:"30px",backgroundColor:"#323131",children:(0,xn.jsx)(sge.FN,{autoPlay:!0,dynamicHeight:!1,infiniteLoop:!0,interval:5e3,renderIndicator:(e,r,n)=>r?(0,xn.jsx)("li",{style:{...t,background:"#00C39A",width:"24px"}}):(0,xn.jsx)("li",{onClick:e,onKeyDown:e,role:"button",style:t,tabIndex:0,value:n},n),showArrows:!1,showStatus:!1,showThumbs:!1,transitionTime:1e3,children:e})})},lge=({item:e})=>(0,xn.jsx)(Sn,{height:"730px",paddingTop:"500px",paddingBottom:"35px",backgroundImage:e.image,backgroundSize:"cover",backgroundRepeat:"no-repeat","data-testid":`slide-${e.id}`,children:(0,xn.jsxs)(_n,{flexDirection:"column",paddingBottom:"50px",children:[(0,xn.jsx)(_$,{icon:e.icon,size:"58px"}),(0,xn.jsx)(Am,{width:"400px",margin:"16px 50px 0 50px",children:e.text})]})}),uge=()=>{const[e,t]=(0,i.useState)(!0),{onOpen:r,modalElement:n}=Ede((()=>t(!0))),o=[{id:1,text:(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Am,{as:"span",fontWeight:600,size:"md",children:"Streamline asset management:\xa0"}),(0,xn.jsx)(Am,{as:"span",size:"md",children:"one mnemonic, multiple accounts, full control."})]}),icon:(0,xn.jsx)(Zy,{}),image:ige},{id:2,text:(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Am,{as:"span",size:"md",children:"Enhance security with\xa0"}),(0,xn.jsx)(Am,{as:"span",fontWeight:600,size:"md",children:"Multi-sig"}),(0,xn.jsx)(Am,{as:"span",size:"md",children:", requiring multiple signatures for transaction executions."})]}),icon:(0,xn.jsx)(Ly,{width:"32px",height:"32px",stroke:Xv.gray[450],strokeWidth:"0.9"}),image:age},{id:3,text:(0,xn.jsxs)(xn.Fragment,{children:[(0,xn.jsx)(Am,{as:"span",size:"md",children:"Utilize the\xa0"}),(0,xn.jsx)(Am,{as:"span",fontWeight:600,size:"md",children:"Batch\xa0"}),(0,xn.jsx)(Am,{as:"span",size:"md",children:"feature to bundle transactions, improving efficiency and reducing costs."})]}),icon:(0,xn.jsx)(ny,{width:"32px",height:"32px",strokeWidth:"0.9"}),image:oge}];return(0,xn.jsxs)(_n,{height:"100vh",padding:"60px",backgroundImage:IH,backgroundSize:"cover",children:[e&&(0,xn.jsxs)(_de,{boxShadow:"0px 0px 30px rgba(0, 0, 0, 0.30)",columns:[1,1,2],children:[(0,xn.jsx)(_n,{width:"100%",maxWidth:"660px",background:Xv.gray[800],borderLeftRadius:"30px",children:(0,xn.jsxs)(jn,{maxWidth:"400px",padding:"32px",spacing:"0",children:[(0,xn.jsx)(Xme,{width:"48px",height:"48px",marginBottom:"24px"}),(0,xn.jsx)(ei,{marginBottom:"16px",size:"3xl",children:"Welcome to Umami"}),(0,xn.jsx)(Om,{maxWidth:"400px",marginBottom:"16px"}),(0,xn.jsx)(Am,{marginBottom:"32px",color:Xv.gray[450],children:"A powerful Tezos wallet"}),(0,xn.jsx)(Xn,{width:"100%",marginBottom:"24px",onClick:()=>{t(!1),r()},size:"lg",children:"Get started"}),(0,xn.jsx)(Zme,{fontSize:"13px"})]})}),(0,xn.jsx)(Sn,{maxWidth:"660px",children:(0,xn.jsx)(cge,{children:o.map((e=>(0,xn.jsx)(lge,{item:e},e.id)))})})]}),n]})},dge=()=>{(()=>{const e=a0(),t=tce(),r=(0,i.useRef)(t),n=(0,i.useRef)(e),o=(e,t)=>{const i=t.replace(":///","://");if(i.startsWith("umami://auth/")){const e=Yae(i);window.postMessage(e)}else if(i.startsWith("umami://?type=tzip10&data=")){const e=new URL(i).searchParams.get("data");e?r.current(e):n.current({title:"Linkhandler",description:"Data Payload missing"})}else n.current({title:"Linkhandler",description:"Unsupported link type"})};(0,i.useEffect)((()=>{const e=window;return e&&e.electronAPI&&e.electronAPI.onDeeplink(o),()=>{}}),[])})();return zU().length>0?(0,xn.jsx)(hge,{}):(0,xn.jsx)(fge,{})},hge=()=>{Yse();const e=o0();return(0,xn.jsx)(YQ,{children:(0,xn.jsx)(i0.Provider,{value:e,children:(0,xn.jsxs)(_se,{children:[(0,xn.jsx)(n0,{}),(0,xn.jsxs)(HQ,{children:[(0,xn.jsx)(UQ,{element:nge((0,xn.jsx)(Dpe,{})),path:"/home"}),(0,xn.jsx)(UQ,{element:nge((0,xn.jsx)(Dpe,{})),path:"/home/:ownerPkh/:nftId"}),(0,xn.jsx)(UQ,{element:nge((0,xn.jsx)(mme,{})),path:"/nfts"}),(0,xn.jsx)(UQ,{element:nge((0,xn.jsx)(gme,{})),path:"/operations"}),(0,xn.jsx)(UQ,{element:nge((0,xn.jsx)(Gme,{})),path:"/tokens"}),(0,xn.jsx)(UQ,{element:nge((0,xn.jsx)(qle,{})),path:"/address-book"}),(0,xn.jsx)(UQ,{element:nge((0,xn.jsx)(Dme,{})),path:"/settings"}),(0,xn.jsx)(UQ,{element:nge((0,xn.jsx)(Due,{})),path:"/help"}),(0,xn.jsx)(UQ,{element:nge((0,xn.jsx)(jue,{})),path:"/batch"}),(0,xn.jsx)(UQ,{element:(0,xn.jsx)(FQ,{to:"/home"}),path:"/*"})]}),e.content]})})})},fge=()=>{const e=(()=>{const e=Lb();return()=>e(dH.actions.reset())})();return(0,i.useEffect)((()=>{x3.destroy().then(e).catch(Db.noop)}),[e]),(0,xn.jsx)(YQ,{children:(0,xn.jsxs)(HQ,{children:[(0,xn.jsx)(UQ,{element:(0,xn.jsx)(FQ,{to:"/welcome"}),path:"/*"}),(0,xn.jsx)(UQ,{element:(0,xn.jsx)(uge,{}),path:"/welcome"})]})})};Object.defineProperty(window,"reduxStore",{value:EH});a.createRoot(document.getElementById("root")).render((0,xn.jsx)(i.StrictMode,{children:(0,xn.jsx)(RJ,{children:(0,xn.jsx)(xV,{children:(0,xn.jsx)(g,{loading:null,persistor:AH,children:(0,xn.jsx)(l,{fallback:(0,xn.jsx)(MH,{}),onError:(e,t)=>{const r={...ane(e),stacktrace:String(t.componentStack)};EH.dispatch(gH.actions.add(r))},children:(0,xn.jsx)(wV,{children:(0,xn.jsx)(dge,{})})})})})})}))})()})(); +//# sourceMappingURL=main.6058878c.js.map \ No newline at end of file diff --git a/static/js/main.16531fe2.js.LICENSE.txt b/static/js/main.6058878c.js.LICENSE.txt similarity index 100% rename from static/js/main.16531fe2.js.LICENSE.txt rename to static/js/main.6058878c.js.LICENSE.txt diff --git a/static/js/main.16531fe2.js.map b/static/js/main.6058878c.js.map similarity index 60% rename from static/js/main.16531fe2.js.map rename to static/js/main.6058878c.js.map index e1f1c8f17..af8ecb705 100644 --- a/static/js/main.16531fe2.js.map +++ b/static/js/main.6058878c.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/main.16531fe2.js","mappings":"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IAAO,GASvBue,IADAve,GADAme,IADAne,GADA+e,IADA/e,GADA2e,IADA3e,EAAIue,EAAKJ,EAAK,IACH,EAAIne,IAAO,IACbue,EAAK,IACF,EAAIve,IAAO,IACb2e,EAAK,IACJ,GAAK3e,IAAO,IACd+e,EAAM,IACJ,GAAK/e,IAAO,GASvB4e,IADA5e,GADAwe,IADAxe,GADAoe,IADApe,GADAgf,IADAhf,EAAI4e,EAAMJ,EAAK,IACH,EAAIxe,IAAO,IACb4e,EAAM,IACL,EAAI5e,IAAO,IACbgf,EAAM,IACJ,GAAKhf,IAAO,IACdoe,EAAK,IACF,GAAKpe,IAAO,GASxBif,IADAjf,GADA6e,IADA7e,GADAye,IADAze,GADAqe,IADAre,EAAIif,EAAMJ,EAAM,IACL,EAAI7e,IAAO,IACbif,EAAM,IACJ,EAAIjf,IAAO,IACbqe,EAAK,IACF,GAAKre,IAAO,IACdye,EAAK,IACH,GAAKze,IAAO,GASxBke,IADAle,GADAqe,IADAre,GADAoe,IADApe,GADAme,IADAne,EAAIke,EAAKG,EAAK,IACH,EAAIre,IAAO,IACbke,EAAK,IACH,EAAIle,IAAO,IACbme,EAAK,IACH,GAAKne,IAAO,IACdoe,EAAK,IACH,GAAKpe,IAAO,GASvBue,IADAve,GADAse,IADAte,GADAye,IADAze,GADAwe,IADAxe,EAAIue,EAAKD,EAAK,IACH,EAAIte,IAAO,IACbue,EAAK,IACH,EAAIve,IAAO,IACbwe,EAAK,IACH,GAAKxe,IAAO,IACdye,EAAK,IACH,GAAKze,IAAO,GASvB4e,IADA5e,GADA2e,IADA3e,GADA0e,IADA1e,GADA6e,IADA7e,EAAI4e,EAAMD,EAAK,IACH,EAAI3e,IAAO,IACb4e,EAAM,IACL,EAAI5e,IAAO,IACb6e,EAAM,IACJ,GAAK7e,IAAO,IACd0e,EAAK,IACF,GAAK1e,IAAO,GASxBif,IADAjf,GADAgf,IADAhf,GADA+e,IADA/e,GADA8e,IADA9e,EAAIif,EAAMD,EAAM,IACJ,EAAIhf,IAAO,IACbif,EAAM,IACJ,EAAIjf,IAAO,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AKte,IAAO,IACd0e,EAAK,IACJ,GAAK1e,IAAO,GASvBue,IADAve,GADAme,IADAne,GADA+e,IADA/e,GADA2e,IADA3e,EAAIue,EAAKJ,EAAK,IACH,EAAIne,IAAO,IACbue,EAAK,IACF,EAAIve,IAAO,IACb2e,EAAK,IACJ,GAAK3e,IAAO,IACd+e,EAAM,IACJ,GAAK/e,IAAO,GASvB4e,IADA5e,GADAwe,IADAxe,GADAoe,IADApe,GADAgf,IADAhf,EAAI4e,EAAMJ,EAAK,IACH,EAAIxe,IAAO,IACb4e,EAAM,IACL,EAAI5e,IAAO,IACbgf,EAAM,IACJ,GAAKhf,IAAO,IACdoe,EAAK,IACF,GAAKpe,IAAO,GASxBif,IADAjf,GADA6e,IADA7e,GADAye,IADAze,GADAqe,IADAre,EAAIif,EAAMJ,EAAM,IACL,EAAI7e,IAAO,IACbif,EAAM,IACJ,EAAIjf,IAAO,IACbqe,EAAK,IACF,GAAKre,IAAO,IACdye,EAAK,IACH,GAAKze,IAAO,GASxBke,IADAle,GADAqe,IADAre,GADAoe,IADApe,GADAme,IADAne,EAAIke,EAAKG,EAAK,IACH,EAAIre,IAAO,IACbke,EAAK,IACH,EAAIle,IAAO,IACbme,EAAK,IACH,GAAKne,IAAO,IACdoe,EAAK,IACH,GAAKpe,IAAO,GASvBue,IADAve,GADAse,IADAte,GADAye,IADAze,GADAwe,IADAxe,EAAIue,EAAKD,EAAK,IACH,EAAIte,IAAO,IACbue,EAAK,IACH,EAAIve,IAAO,IACbwe,EAAK,IACH,GAAKxe,IAAO,IACdye,EAAK,IACH,GAAKze,IAAO,GASvB4e,IADA5e,GADA2e,IADA3e,GADA0e,IADA1e,GADA6e,IADA7e,EAAI4e,EAAMD,EAAK,IACH,EAAI3e,IAAO,IACb4e,EAAM,IACL,EAAI5e,IAAO,IACb6e,EAAM,IACJ,GAAK7e,IAAO,IACd0e,EAAK,IACF,GAAK1e,IAAO,GASxBif,IADAjf,GADAgf,IADAhf,GADA+e,IADA/e,GADA8e,IADA9e,EAAIif,EAAMD,EAAM,IACJ,EAAIhf,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,CAKA,SAAS04C,EAAQ79B,EAAGC,GAClB,OAAQD,IAAMC,EAAMD,GAAM,GAAKC,CACjC,CAGA,MAAM69B,EAAa,IAAIrkC,YAAY,CACjC,WACA,WACA,WACA,WACA,WACA,WACA,UACA,aAGI2O,EAAQ,IAAInS,WAAW,CAC3B,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,EACA,EACA,EACA,GACA,GACA,EACA,EACA,GACA,EACA,EACA,GACA,EACA,EACA,EACA,GACA,EACA,GACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,EACA,EACA,EACA,GACA,EACA,EACA,GACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GACA,GACA,GACA,EACA,GACA,GACA,EACA,EACA,EACA,GACA,EACA,GACA,EACA,GACA,EACA,GACA,EACA,EACA,EACA,GACA,EACA,EACA,GACA,GACA,EACA,EACA,GACA,EACA,EACA,GACA,GACA,GACA,EACA,GACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GACA,GACA,GACA,EACA,GACA,GACA,EACA,EACA,EACA,EACA,EACA,GACA,EACA,EACA,EACA,EACA,GACA,EACA,GACA,GACA,EACA,GACA,EACA,EACA,EACA,GACA,EACA,GACA,EACA,EACA,EACA,GACA,EACA,GACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GACA,GACA,EACA,GACA,EACA,GACA,GACA,IAIIhH,EAAI,IAAIwK,YAAY,IACpB7V,EAAI,IAAI6V,YAAY,IAC1B,SAASskC,EAAiB7J,EAAK8I,GAC7B,IAAIt1C,EAAI,EACR,IAAKA,EAAI,EAAGA,EAAI,EAAGA,IAEjBuH,EAAEvH,GAAKwsC,EAAIv7B,EAAEjR,GACbuH,EAAEvH,EAAI,GAAKo2C,EAAWp2C,GAUxB,IAPAuH,EAAE,KAAOilC,EAAIz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EF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,kEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,sEAINN,IAAK,CACH1jB,IAAK,EACLgkB,OAAQ,CACN,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,iEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oGCrwBR,IAAIlC,EAAQl4D,EACRykC,EAAK9gC,EAAQ,MACb+lE,EAAY/lE,EAAQ,MACpBgmE,EAAWhmE,EAAQ,MAEvBu0D,EAAMpiD,OAAS4zD,EACfxR,EAAMnyB,QAAU4jC,EAAS5jC,QACzBmyB,EAAM0R,MAAQD,EAASC,MACvB1R,EAAMvb,MAAQgtB,EAAShtB,MACvBub,EAAM1zC,OAASmlD,EAASnlD,OA6BxB0zC,EAAMK,OA1BN,SAAgB9tD,EAAKqhB,EAAGsM,GACtB,IAAI0hC,EAAM,IAAIj2C,MAAM9M,KAAKl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ACA,WACA,WACA,eACA,SACA,SACA,YACA,WACA,YACA,cACA,QACA,UACA,QACA,SACA,aACA,YACA,WACA,OACA,QACA,OACA,QACA,QACA,MACA,QACA,OACA,OACA,YACA,OACA,WACA,SACA,SACA,YACA,WACA,OACA,WACA,OACA,SACA,WACA,SACA,SACA,WACA,SACA,WACA,UACA,QACA,QACA,SACA,UACA,iBACA,QACA,OACA,SACA,UACA,UACA,aACA,WACA,MACA,kBAEA,gBACA,SACA,SACA,YACA,WACA,QACA,WACA34G,QAAQm5G,EAAUS,oBAEbT,CACT,CAhfqBA,aCLrB,IAOIY,EACAC,EARA78G,EAAU7L,EAAO1D,QAAU,CAAC,EAUhC,SAASqsH,IACL,MAAM,IAAItrH,MAAM,kCACpB,CACA,SAASurH,IACL,MAAM,IAAIvrH,MAAM,oCACpB,CAqBA,SAASwrH,EAAWC,GAChB,GAAIL,IAAqB72B,WAErB,OAAOA,WAAWk3B,EAAK,GAG3B,IAAKL,IAAqBE,IAAqBF,IAAqB72B,WAEhE,OADA62B,EAAmB72B,WACZA,WAAWk3B,EAAK,GAE3B,IAEI,OAAOL,EAAiBK,EAAK,EACjC,CAAE,MAAM57F,GACJ,IAEI,OAAOu7F,EAAiB9mG,KAAK,KAAMmnG,EAAK,EAC5C,CAAE,MAAM57F,GAEJ,OAAOu7F,EAAiB9mG,KAAKljB,KAAMqqH,EAAK,EAC5C,CACJ,CAGJ,EA5CC,WACG,IAEQL,EADsB,oBAAf72B,WACYA,WAEA+2B,CAE3B,CAAE,MAAOz7F,GACLu7F,EAAmBE,CACvB,CACA,IAEQD,EADwB,oBAAjBj3B,aACcA,aAEAm3B,CAE7B,CAAE,MAAO17F,GACLw7F,EAAqBE,CACzB,CACH,CAnBA,GAwED,IAEIG,EAFAC,EAAQ,GACRC,GAAW,EAEXC,GAAc,EAElB,SAASC,IACAF,GAAaF,IAGlBE,GAAW,EACPF,EAAansH,OACbosH,EAAQD,EAAantE,OAAOotE,GAE5BE,GAAc,EAEdF,EAAMpsH,QACNwsH,IAER,CAEA,SAASA,IACL,IAAIH,EAAJ,CAGA,IAAII,EAAUR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","sources":["../node_modules/@chaitanyapotti/register-service-worker/index.js","../node_modules/@ledgerhq/devices/node_modules/semver/classes/comparator.js","../node_modules/@ledgerhq/devices/node_modules/semver/classes/range.js","../node_modules/@ledgerhq/devices/node_modules/semver/classes/semver.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/clean.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/cmp.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/coerce.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/compare-build.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/compare-loose.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/compare.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/diff.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/eq.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/gt.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/gte.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/inc.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/lt.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/lte.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/major.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/minor.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/neq.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/parse.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/patch.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/prerelease.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/rcompare.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/rsort.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/satisfies.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/sort.js","../node_modules/@ledgerhq/devices/node_modules/semver/functions/valid.js","../node_modules/@ledgerhq/devices/node_modules/semver/index.js","../node_modules/@ledgerhq/devices/node_modules/semver/internal/constants.js","../node_modules/@ledgerhq/devices/node_modules/semver/internal/debug.js","../node_modules/@ledgerhq/devices/node_modules/semver/internal/identifiers.js","../node_modules/@ledgerhq/devices/node_modules/semver/internal/parse-options.js","../node_modules/@ledgerhq/devices/node_modules/semver/internal/re.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/gtr.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/intersects.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/ltr.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/max-satisfying.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/min-satisfying.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/min-version.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/outside.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/simplify.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/subset.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/to-comparators.js","../node_modules/@ledgerhq/devices/node_modules/semver/ranges/valid.js","../node_modules/@noble/hashes/src/_assert.ts","../node_modules/@noble/hashes/src/_sha2.ts","../node_modules/@noble/hashes/src/_u64.ts","../node_modules/@noble/hashes/src/crypto.ts","../node_modules/@noble/hashes/src/hmac.ts","../node_modules/@noble/hashes/src/pbkdf2.ts","../node_modules/@noble/hashes/src/sha256.ts","../node_modules/@noble/hashes/src/sha3.ts","../node_modules/@noble/hashes/src/sha512.ts","../node_modules/@noble/hashes/src/utils.ts","../node_modules/@stablelib/binary/binary.ts","../node_modules/@stablelib/blake2b/blake2b.ts","../node_modules/@stablelib/bytes/bytes.ts","../node_modules/@stablelib/constant-time/constant-time.ts","../node_modules/@stablelib/ed25519/ed25519.ts","../node_modules/@stablelib/hash/hash.ts","../node_modules/@stablelib/hmac/hmac.ts","../node_modules/@stablelib/int/int.ts","../node_modules/@stablelib/nacl/box.ts","../node_modules/@stablelib/nacl/nacl.ts","../node_modules/@stablelib/nacl/secretbox.ts","../node_modules/@stablelib/poly1305/poly1305.ts","../node_modules/@stablelib/random/random.ts","../node_modules/@stablelib/random/source/browser.ts","../node_modules/@stablelib/random/source/node.ts","../node_modules/@stablelib/random/source/system.ts","../node_modules/@stablelib/salsa20/salsa20.ts","../node_modules/@stablelib/sha512/sha512.ts","../node_modules/@stablelib/utf8/utf8.ts","../node_modules/@stablelib/wipe/wipe.ts","../node_modules/@stablelib/x25519-session/keyagreement.ts","../node_modules/@stablelib/x25519-session/x25519-session.ts","../node_modules/@stablelib/x25519/x25519.ts","../node_modules/@stablelib/xsalsa20/xsalsa20.ts","../node_modules/@taquito/utils/node_modules/base-x/src/index.js","../node_modules/@taquito/utils/node_modules/bs58/index.js","../node_modules/@taquito/utils/node_modules/bs58check/base.js","../node_modules/@taquito/utils/node_modules/bs58check/index.js","../node_modules/@toruslabs/torus.js/node_modules/bn.js/lib/bn.js","../node_modules/base-x/src/index.js","../node_modules/base64-js/index.js","../node_modules/bip39/src/_wordlists.js","../node_modules/bip39/src/index.js","../node_modules/blakejs/blake2b.js","../node_modules/blakejs/blake2s.js","../node_modules/blakejs/index.js","../node_modules/blakejs/util.js","../node_modules/bn.js/lib/bn.js","../node_modules/bowser/es5.js","../node_modules/brorand/index.js","../node_modules/bs58/index.js","../node_modules/bs58check/base.js","../node_modules/bs58check/index.js","../node_modules/buffer/index.js","../node_modules/charenc/charenc.js","../node_modules/cipher-base/index.js","../node_modules/classnames/index.js","../node_modules/create-hash/browser.js","../node_modules/create-hash/md5.js","../node_modules/crypt/crypt.js","../node_modules/deepmerge/dist/cjs.js","../node_modules/elliptic/lib/elliptic.js","../node_modules/elliptic/lib/elliptic/curve/base.js","../node_modules/elliptic/lib/elliptic/curve/edwards.js","../node_modules/elliptic/lib/elliptic/curve/index.js","../node_modules/elliptic/lib/elliptic/curve/mont.js","../node_modules/elliptic/lib/elliptic/curve/short.js","../node_modules/elliptic/lib/elliptic/curves.js","../node_modules/elliptic/lib/elliptic/ec/index.js","../node_modules/elliptic/lib/elliptic/ec/key.js","../node_modules/elliptic/lib/elliptic/ec/signature.js","../node_modules/elliptic/lib/elliptic/eddsa/index.js","../node_modules/elliptic/lib/elliptic/eddsa/key.js","../node_modules/elliptic/lib/elliptic/eddsa/signature.js","../node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js","../node_modules/elliptic/lib/elliptic/utils.js","../node_modules/err-code/index.js","../node_modules/ethereum-cryptography/keccak.js","../node_modules/ethereum-cryptography/utils.js","../node_modules/events/events.js","../node_modules/fast-json-stable-stringify/index.js","../node_modules/hash-base/index.js","../node_modules/hash.js/lib/hash.js","../node_modules/hash.js/lib/hash/common.js","../node_modules/hash.js/lib/hash/hmac.js","../node_modules/hash.js/lib/hash/ripemd.js","../node_modules/hash.js/lib/hash/sha.js","../node_modules/hash.js/lib/hash/sha/1.js","../node_modules/hash.js/lib/hash/sha/224.js","../node_modules/hash.js/lib/hash/sha/256.js","../node_modules/hash.js/lib/hash/sha/384.js","../node_modules/hash.js/lib/hash/sha/512.js","../node_modules/hash.js/lib/hash/sha/common.js","../node_modules/hash.js/lib/hash/utils.js","../node_modules/hmac-drbg/lib/hmac-drbg.js","../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/hoist-non-react-statics/node_modules/react-is/index.js","../node_modules/ieee754/index.js","../node_modules/inherits/inherits_browser.js","../node_modules/is-buffer/index.js","../node_modules/json-stable-stringify/index.js","../node_modules/jsonify/index.js","../node_modules/jsonify/lib/parse.js","../node_modules/jsonify/lib/stringify.js","../node_modules/load-script/index.js","../node_modules/lodash.isequal/index.js","../node_modules/lodash.merge/index.js","../node_modules/lodash.mergewith/index.js","../node_modules/lodash/lodash.js","../node_modules/loglevel/lib/loglevel.js","../node_modules/lru-cache/index.js","../node_modules/md5.js/index.js","../node_modules/md5/md5.js","../node_modules/memoize-one/dist/memoize-one.esm.js","../node_modules/minimalistic-assert/index.js","../node_modules/minimalistic-crypto-utils/lib/utils.js","../node_modules/node-fetch/browser.js","../node_modules/ordinal/index.js","../node_modules/ordinal/indicator.js","../node_modules/papaparse/papaparse.min.js","../node_modules/pbkdf2/browser.js","../node_modules/pbkdf2/lib/async.js","../node_modules/pbkdf2/lib/default-encoding.js","../node_modules/pbkdf2/lib/precondition.js","../node_modules/pbkdf2/lib/sync-browser.js","../node_modules/pbkdf2/lib/to-buffer.js","../node_modules/pluralize/pluralize.js","../node_modules/process/browser.js","../node_modules/promise-retry/index.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/qrcode-generator/qrcode.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/client.js","../node_modules/react-dom/index.js","../node_modules/react-easy-swipe/lib/index.js","../node_modules/react-easy-swipe/lib/react-swipe.js","../node_modules/react-fast-compare/index.js","../node_modules/react-identicons/build/index.js","../node_modules/react-is/cjs/react-is.production.min.js","../node_modules/react-is/index.js","../node_modules/react-player/lib/Player.js","../node_modules/react-player/lib/ReactPlayer.js","../node_modules/react-player/lib/index.js","../node_modules/react-player/lib/patterns.js","../node_modules/react-player/lib/players/index.js","../node_modules/react-player/lib/props.js","../node_modules/react-player/lib/utils.js","../node_modules/react-qrcode-logo/dist/index.js","../node_modules/react-responsive-carousel/lib/js/CSSTranslate.js","../node_modules/react-responsive-carousel/lib/js/components/Carousel/animations.js","../node_modules/react-responsive-carousel/lib/js/components/Carousel/index.js","../node_modules/react-responsive-carousel/lib/js/components/Carousel/utils.js","../node_modules/react-responsive-carousel/lib/js/components/Thumbs.js","../node_modules/react-responsive-carousel/lib/js/cssClasses.js","../node_modules/react-responsive-carousel/lib/js/dimensions.js","../node_modules/react-responsive-carousel/lib/js/index.js","../node_modules/react-responsive-carousel/lib/js/shims/document.js","../node_modules/react-responsive-carousel/lib/js/shims/window.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/jsx-runtime.js","../node_modules/readable-stream/errors-browser.js","../node_modules/readable-stream/lib/_stream_duplex.js","../node_modules/readable-stream/lib/_stream_passthrough.js","../node_modules/readable-stream/lib/_stream_readable.js","../node_modules/readable-stream/lib/_stream_transform.js","../node_modules/readable-stream/lib/_stream_writable.js","../node_modules/readable-stream/lib/internal/streams/async_iterator.js","../node_modules/readable-stream/lib/internal/streams/buffer_list.js","../node_modules/readable-stream/lib/internal/streams/destroy.js","../node_modules/readable-stream/lib/internal/streams/end-of-stream.js","../node_modules/readable-stream/lib/internal/streams/from-browser.js","../node_modules/readable-stream/lib/internal/streams/pipeline.js","../node_modules/readable-stream/lib/internal/streams/state.js","../node_modules/readable-stream/lib/internal/streams/stream-browser.js","../node_modules/readable-stream/readable-browser.js","../node_modules/redux-persist/lib/storage/createWebStorage.js","../node_modules/redux-persist/lib/storage/getStorage.js","../node_modules/redux-persist/lib/storage/index.js","../node_modules/retry/index.js","../node_modules/retry/lib/retry.js","../node_modules/retry/lib/retry_operation.js","../node_modules/ripemd160/index.js","../node_modules/safe-buffer/index.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/sha.js/hash.js","../node_modules/sha.js/index.js","../node_modules/sha.js/sha.js","../node_modules/sha.js/sha1.js","../node_modules/sha.js/sha224.js","../node_modules/sha.js/sha256.js","../node_modules/sha.js/sha384.js","../node_modules/sha.js/sha512.js","../node_modules/stream-browserify/index.js","../node_modules/string_decoder/lib/string_decoder.js","../node_modules/typedarray-to-buffer/index.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js","../node_modules/use-sync-external-store/shim/index.js","../node_modules/use-sync-external-store/shim/with-selector.js","../node_modules/util-deprecate/browser.js","../node_modules/yallist/iterator.js","../node_modules/yallist/yallist.js","../node_modules/@toruslabs/broadcast-channel/node_modules/@babel/runtime/helpers/regeneratorRuntime.js","../node_modules/@toruslabs/broadcast-channel/node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@toruslabs/broadcast-channel/node_modules/@babel/runtime/regenerator/index.js","../webpack/bootstrap","../webpack/runtime/compat get default export","../webpack/runtime/create fake namespace object","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/global","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/node module decorator","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","../webpack/runtime/nonce","../node_modules/react-error-boundary/dist/react-error-boundary.esm.js","../node_modules/redux-persist/es/integration/react.js","../node_modules/@chakra-ui/system/src/forward-ref.tsx","../node_modules/@chakra-ui/shared-utils/dist/index.mjs","../node_modules/@chakra-ui/styled-system/dist/index.mjs","../node_modules/@chakra-ui/system/src/should-forward-prop.ts","../node_modules/@chakra-ui/color-mode/src/color-mode-context.ts","../node_modules/@chakra-ui/utils/dist/chunk-YTQ3XZ3T.mjs","../node_modules/@chakra-ui/utils/dist/chunk-M3TFMUOL.mjs","../node_modules/@chakra-ui/utils/dist/chunk-Y5FGD7DM.mjs","../node_modules/@emotion/styled/node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@emotion/memoize/dist/emotion-memoize.esm.js","../node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js","../node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","../node_modules/stylis/src/Utility.js","../node_modules/stylis/src/Tokenizer.js","../node_modules/stylis/src/Enum.js","../node_modules/stylis/src/Serializer.js","../node_modules/stylis/src/Parser.js","../node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","../node_modules/stylis/src/Middleware.js","../node_modules/@emotion/react/node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js","../node_modules/@emotion/hash/dist/emotion-hash.esm.js","../node_modules/@emotion/unitless/dist/emotion-unitless.esm.js","../node_modules/@emotion/react/node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js","../node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js","../node_modules/@emotion/react/dist/emotion-element-43c6fea0.browser.esm.js","../node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","../node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js","../node_modules/@chakra-ui/system/src/system.ts","../node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js","../node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js","../node_modules/@chakra-ui/object-utils/dist/chunk-OLTBUDV5.mjs","../node_modules/@chakra-ui/system/src/factory.ts","../node_modules/@chakra-ui/layout/src/flex.tsx","../node_modules/@chakra-ui/layout/src/center.tsx","../node_modules/@chakra-ui/layout/src/box.tsx","../node_modules/@chakra-ui/system/src/use-theme.ts","../node_modules/@chakra-ui/system/src/hooks.ts","../node_modules/@chakra-ui/system/src/use-style-config.ts","../node_modules/@chakra-ui/layout/src/heading.tsx","../node_modules/@chakra-ui/react-context/src/index.ts","../node_modules/@chakra-ui/button/src/button-context.ts","../node_modules/@chakra-ui/button/src/button-icon.tsx","../node_modules/@emotion/react/dist/emotion-react.browser.esm.js","../node_modules/@chakra-ui/spinner/src/spinner.tsx","../node_modules/@chakra-ui/button/src/button-spinner.tsx","../node_modules/@chakra-ui/react-use-merge-refs/src/index.ts","../node_modules/@chakra-ui/button/src/button.tsx","../node_modules/@chakra-ui/button/src/use-button-type.tsx","../node_modules/@chakra-ui/layout/src/link.tsx","components/ErrorPage.tsx","../node_modules/@tanstack/query-core/src/utils.ts","../node_modules/@tanstack/query-core/src/notifyManager.ts","../node_modules/@tanstack/query-core/src/subscribable.ts","../node_modules/@tanstack/query-core/src/focusManager.ts","../node_modules/@tanstack/query-core/src/onlineManager.ts","../node_modules/@tanstack/query-core/src/retryer.ts","../node_modules/@tanstack/query-core/src/removable.ts","../node_modules/@tanstack/query-core/src/query.ts","../node_modules/@tanstack/query-core/src/queryCache.ts","../node_modules/@tanstack/query-core/src/mutation.ts","../node_modules/@tanstack/query-core/src/mutationCache.ts","../node_modules/@tanstack/query-core/src/infiniteQueryBehavior.ts","../node_modules/@tanstack/query-core/src/queryClient.ts","../node_modules/@tanstack/react-query/src/QueryClientProvider.tsx","providers/ReactQueryProvider.tsx","../node_modules/react-redux/es/utils/batch.js","../node_modules/react-redux/es/components/Context.js","../node_modules/react-redux/es/hooks/useReduxContext.js","../node_modules/react-redux/es/hooks/useSelector.js","../node_modules/react-redux/es/utils/useSyncExternalStore.js","../node_modules/react-redux/es/utils/Subscription.js","../node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js","../node_modules/react-redux/es/components/connect.js","../node_modules/react-redux/es/components/Provider.js","../node_modules/react-redux/es/hooks/useStore.js","../node_modules/react-redux/es/hooks/useDispatch.js","../node_modules/immer/src/utils/errors.ts","../node_modules/immer/src/utils/common.ts","../node_modules/immer/src/utils/plugins.ts","../node_modules/immer/src/core/scope.ts","../node_modules/immer/src/core/finalize.ts","../node_modules/immer/src/core/proxy.ts","../node_modules/immer/src/core/immerClass.ts","../node_modules/immer/src/core/current.ts","../node_modules/immer/src/plugins/es5.ts","../node_modules/react-redux/es/index.js","../node_modules/immer/src/immer.ts","../node_modules/immer/src/utils/env.ts","../node_modules/redux/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/redux/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/redux/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/redux/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/redux/node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/redux/es/redux.js","../node_modules/redux-thunk/es/index.js","../node_modules/@reduxjs/toolkit/src/devtoolsExtension.ts","../node_modules/@reduxjs/toolkit/src/isPlainObject.ts","../node_modules/@reduxjs/toolkit/src/createAction.ts","../node_modules/@reduxjs/toolkit/src/utils.ts","../node_modules/@reduxjs/toolkit/src/getDefaultMiddleware.ts","../node_modules/@reduxjs/toolkit/src/mapBuilders.ts","../node_modules/@reduxjs/toolkit/src/createSlice.ts","../node_modules/@reduxjs/toolkit/src/createReducer.ts","../node_modules/@reduxjs/toolkit/src/nanoid.ts","../node_modules/@reduxjs/toolkit/src/createAsyncThunk.ts","../node_modules/@reduxjs/toolkit/src/listenerMiddleware/index.ts","../node_modules/@reduxjs/toolkit/src/listenerMiddleware/task.ts","../node_modules/@reduxjs/toolkit/src/autoBatchEnhancer.ts","../node_modules/@reduxjs/toolkit/src/index.ts","../node_modules/redux-persist/es/constants.js","../node_modules/redux-persist/es/stateReconciler/autoMergeLevel1.js","../node_modules/redux-persist/es/createPersistoid.js","../node_modules/redux-persist/es/getStoredState.js","../node_modules/redux-persist/es/purgeStoredState.js","../node_modules/redux-persist/es/persistReducer.js","../node_modules/redux-persist/es/persistStore.js","../node_modules/redux-persist/es/createMigrate.js","utils/redux/slices/announcementSlice.ts","utils/redux/migrations.ts","../node_modules/bignumber.js/bignumber.mjs","utils/crypto/AES_MODE.ts","utils/crypto/KDF.ts","utils/crypto/AES.ts","utils/redux/thunks/changeMnemonicPassword.ts","utils/redux/slices/accountsSlice.ts","../node_modules/zod/lib/index.mjs","types/Address.ts","types/Token.ts","types/TokenBalance.ts","utils/redux/slices/assetsSlice.ts","types/Network.ts","utils/redux/slices/batches.ts","utils/redux/slices/beaconSlice.ts","utils/hooks/contactsUtils.ts","utils/redux/slices/contactsSlice.ts","utils/redux/slices/errorsSlice.ts","utils/redux/slices/multisigsSlice.ts","utils/redux/slices/networks.ts","utils/redux/slices/tokensSlice.ts","utils/redux/reducer.ts","utils/redux/store.ts","../node_modules/@reduxjs/toolkit/src/configureStore.ts","providers/ReduxStore.tsx","../node_modules/@chakra-ui/css-reset/src/css-reset.tsx","../node_modules/@chakra-ui/portal/src/portal-manager.tsx","../node_modules/@chakra-ui/react-utils/dist/chunk-ITIKTQWJ.mjs","../node_modules/@chakra-ui/system/src/providers.tsx","../node_modules/@chakra-ui/color-mode/src/color-mode.utils.ts","../node_modules/@chakra-ui/color-mode/src/storage-manager.ts","../node_modules/@chakra-ui/react-use-safe-layout-effect/src/index.ts","../node_modules/@chakra-ui/color-mode/src/color-mode-provider.tsx","../node_modules/@chakra-ui/react-env/src/env.tsx","../node_modules/@chakra-ui/provider/src/chakra-provider.tsx","../node_modules/@chakra-ui/theme/src/foundations/transition.ts","../node_modules/@chakra-ui/theme/src/foundations/z-index.ts","../node_modules/@chakra-ui/theme/src/foundations/borders.ts","../node_modules/@chakra-ui/theme/src/foundations/breakpoints.ts","../node_modules/@chakra-ui/theme/src/foundations/colors.ts","../node_modules/@chakra-ui/theme/src/foundations/radius.ts","../node_modules/@chakra-ui/theme/src/foundations/shadows.ts","../node_modules/@chakra-ui/theme/src/foundations/blur.ts","../node_modules/@chakra-ui/theme/src/foundations/typography.ts","../node_modules/@chakra-ui/theme/src/foundations/spacing.ts","../node_modules/@chakra-ui/theme/src/foundations/sizes.ts","../node_modules/@chakra-ui/theme/src/foundations/index.ts","../node_modules/@chakra-ui/theme/src/components/stepper.ts","../node_modules/@chakra-ui/anatomy/src/anatomy.ts","../node_modules/@chakra-ui/anatomy/src/components.ts","../node_modules/@chakra-ui/theme-tools/src/css-var.ts","../node_modules/@chakra-ui/theme-tools/src/css-calc.ts","../node_modules/@chakra-ui/theme/src/components/switch.ts","../node_modules/@chakra-ui/theme-tools/src/component.ts","../node_modules/@chakra-ui/theme/src/components/table.ts","../node_modules/color2k/src/guard.ts","../node_modules/color2k/src/ColorError.ts","../node_modules/color2k/src/parseToRgba.ts","../node_modules/color2k/src/rgba.ts","../node_modules/color2k/src/transparentize.ts","../node_modules/@chakra-ui/theme-tools/src/color.ts","../node_modules/.pnpm/dlv@1.1.3/node_modules/dlv/index.js","../node_modules/color2k/src/toHex.ts","../node_modules/@chakra-ui/theme/src/components/tabs.ts","../node_modules/@chakra-ui/theme/src/components/badge.ts","../node_modules/@chakra-ui/theme/src/components/tag.ts","../node_modules/@chakra-ui/theme/src/components/input.ts","../node_modules/@chakra-ui/theme/src/components/textarea.ts","../node_modules/@chakra-ui/theme/src/components/tooltip.ts","../node_modules/@chakra-ui/theme/src/components/progress.ts","../node_modules/@chakra-ui/theme/src/utils/run-if-fn.ts","../node_modules/@chakra-ui/theme/src/components/checkbox.ts","../node_modules/@chakra-ui/theme/src/components/select.ts","../node_modules/@chakra-ui/theme/src/components/radio.ts","../node_modules/@chakra-ui/theme/src/components/skeleton.ts","../node_modules/@chakra-ui/theme/src/components/skip-link.ts","../node_modules/@chakra-ui/theme/src/components/slider.ts","../node_modules/@chakra-ui/theme/src/components/spinner.ts","../node_modules/@chakra-ui/theme/src/components/stat.ts","../node_modules/@chakra-ui/theme/src/components/kbd.ts","../node_modules/@chakra-ui/theme/src/components/link.ts","../node_modules/@chakra-ui/theme/src/components/list.ts","../node_modules/@chakra-ui/theme/src/components/menu.ts","../node_modules/@chakra-ui/theme/src/components/modal.ts","../node_modules/@chakra-ui/theme/src/components/number-input.ts","../node_modules/@chakra-ui/theme/src/components/pin-input.ts","../node_modules/@chakra-ui/theme/src/components/popover.ts","../node_modules/@chakra-ui/theme/src/components/drawer.ts","../node_modules/@chakra-ui/theme/src/components/editable.ts","../node_modules/@chakra-ui/theme/src/components/form-control.ts","../node_modules/@chakra-ui/theme/src/components/form-error.ts","../node_modules/@chakra-ui/theme/src/components/form-label.ts","../node_modules/@chakra-ui/theme/src/components/heading.ts","../node_modules/@chakra-ui/theme/src/components/breadcrumb.ts","../node_modules/@chakra-ui/theme/src/components/button.ts","../node_modules/@chakra-ui/theme/src/components/card.ts","../node_modules/@chakra-ui/theme/src/components/close-button.ts","../node_modules/@chakra-ui/theme/src/components/code.ts","../node_modules/@chakra-ui/theme/src/components/container.ts","../node_modules/@chakra-ui/theme/src/components/divider.ts","../node_modules/@chakra-ui/theme/src/components/accordion.ts","../node_modules/@chakra-ui/theme/src/components/alert.ts","../node_modules/@chakra-ui/theme/src/components/avatar.ts","../node_modules/@chakra-ui/theme/src/components/index.ts","../node_modules/@chakra-ui/theme/src/semantic-tokens.ts","../node_modules/@chakra-ui/theme/src/styles.ts","../node_modules/@chakra-ui/theme/src/index.ts","../node_modules/@chakra-ui/toast/src/toast.utils.ts","../node_modules/@chakra-ui/react-use-callback-ref/src/index.ts","../node_modules/@chakra-ui/react-use-update-effect/src/index.ts","../node_modules/framer-motion/dist/es/context/PresenceContext.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs","../node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs","../node_modules/framer-motion/dist/es/context/MotionContext/index.mjs","../node_modules/framer-motion/dist/es/utils/is-browser.mjs","../node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs","../node_modules/framer-motion/dist/es/context/LazyContext.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs","../node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs","../node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs","../node_modules/framer-motion/dist/es/frameloop/render-step.mjs","../node_modules/framer-motion/dist/es/frameloop/batcher.mjs","../node_modules/framer-motion/dist/es/frameloop/microtask.mjs","../node_modules/framer-motion/dist/es/utils/is-ref-object.mjs","../node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs","../node_modules/framer-motion/dist/es/render/utils/variant-props.mjs","../node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs","../node_modules/framer-motion/dist/es/context/MotionContext/create.mjs","../node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs","../node_modules/framer-motion/dist/es/motion/features/definitions.mjs","../node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs","../node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs","../node_modules/framer-motion/dist/es/motion/utils/symbol.mjs","../node_modules/framer-motion/dist/es/motion/index.mjs","../node_modules/framer-motion/dist/es/motion/features/load-features.mjs","../node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs","../node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs","../node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs","../node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs","../node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs","../node_modules/framer-motion/dist/es/render/html/utils/transform.mjs","../node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs","../node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs","../node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs","../node_modules/framer-motion/dist/es/utils/clamp.mjs","../node_modules/framer-motion/dist/es/value/types/numbers/index.mjs","../node_modules/framer-motion/dist/es/value/types/utils.mjs","../node_modules/framer-motion/dist/es/value/types/numbers/units.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs","../node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs","../node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs","../node_modules/framer-motion/dist/es/render/html/use-props.mjs","../node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/path.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs","../node_modules/framer-motion/dist/es/render/svg/use-props.mjs","../node_modules/framer-motion/dist/es/render/dom/use-render.mjs","../node_modules/framer-motion/dist/es/render/html/utils/render.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/render.mjs","../node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs","../node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs","../node_modules/framer-motion/dist/es/utils/use-constant.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs","../node_modules/framer-motion/dist/es/utils/resolve-value.mjs","../node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs","../node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs","../node_modules/framer-motion/dist/es/utils/noop.mjs","../node_modules/framer-motion/dist/es/frameloop/frame.mjs","../node_modules/framer-motion/dist/es/render/svg/config-motion.mjs","../node_modules/framer-motion/dist/es/render/html/config-motion.mjs","../node_modules/framer-motion/dist/es/events/add-dom-event.mjs","../node_modules/framer-motion/dist/es/events/utils/is-primary-pointer.mjs","../node_modules/framer-motion/dist/es/events/event-info.mjs","../node_modules/framer-motion/dist/es/events/add-pointer-event.mjs","../node_modules/framer-motion/dist/es/utils/pipe.mjs","../node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs","../node_modules/framer-motion/dist/es/motion/features/Feature.mjs","../node_modules/framer-motion/dist/es/gestures/hover.mjs","../node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs","../node_modules/framer-motion/dist/es/gestures/press.mjs","../node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs","../node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs","../node_modules/framer-motion/dist/es/motion/features/gestures.mjs","../node_modules/framer-motion/dist/es/gestures/focus.mjs","../node_modules/framer-motion/dist/es/utils/shallow-compare.mjs","../node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs","../node_modules/framer-motion/dist/es/utils/errors.mjs","../node_modules/framer-motion/dist/es/utils/time-conversion.mjs","../node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs","../node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs","../node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs","../node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs","../node_modules/framer-motion/dist/es/easing/ease.mjs","../node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs","../node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs","../node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs","../node_modules/framer-motion/dist/es/easing/circ.mjs","../node_modules/framer-motion/dist/es/easing/back.mjs","../node_modules/framer-motion/dist/es/easing/utils/map.mjs","../node_modules/framer-motion/dist/es/easing/anticipate.mjs","../node_modules/framer-motion/dist/es/utils/progress.mjs","../node_modules/framer-motion/dist/es/utils/mix/number.mjs","../node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs","../node_modules/framer-motion/dist/es/value/types/color/utils.mjs","../node_modules/framer-motion/dist/es/value/types/color/rgba.mjs","../node_modules/framer-motion/dist/es/value/types/color/hex.mjs","../node_modules/framer-motion/dist/es/value/types/color/hsla.mjs","../node_modules/framer-motion/dist/es/utils/mix/color.mjs","../node_modules/framer-motion/dist/es/value/types/color/index.mjs","../node_modules/framer-motion/dist/es/value/types/complex/index.mjs","../node_modules/framer-motion/dist/es/utils/mix/complex.mjs","../node_modules/framer-motion/dist/es/utils/mix/index.mjs","../node_modules/framer-motion/dist/es/utils/interpolate.mjs","../node_modules/framer-motion/dist/es/utils/offsets/default.mjs","../node_modules/framer-motion/dist/es/utils/offsets/fill.mjs","../node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs","../node_modules/framer-motion/dist/es/utils/offsets/time.mjs","../node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs","../node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs","../node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs","../node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs","../node_modules/framer-motion/dist/es/animation/generators/inertia.mjs","../node_modules/framer-motion/dist/es/frameloop/sync-time.mjs","../node_modules/framer-motion/dist/es/animation/animators/js/driver-frameloop.mjs","../node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs","../node_modules/framer-motion/dist/es/animation/animators/js/index.mjs","../node_modules/framer-motion/dist/es/animation/animators/waapi/create-accelerated-animation.mjs","../node_modules/framer-motion/dist/es/utils/memo.mjs","../node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs","../node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs","../node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs","../node_modules/framer-motion/dist/es/value/types/complex/filter.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs","../node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-none.mjs","../node_modules/framer-motion/dist/es/animation/utils/transitions.mjs","../node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs","../node_modules/framer-motion/dist/es/animation/utils/keyframes.mjs","../node_modules/framer-motion/dist/es/animation/animators/instant.mjs","../node_modules/framer-motion/dist/es/value/use-will-change/is.mjs","../node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs","../node_modules/framer-motion/dist/es/utils/array.mjs","../node_modules/framer-motion/dist/es/utils/subscription-manager.mjs","../node_modules/framer-motion/dist/es/value/index.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs","../node_modules/framer-motion/dist/es/render/utils/setters.mjs","../node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs","../node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs","../node_modules/framer-motion/dist/es/render/utils/animation-state.mjs","../node_modules/framer-motion/dist/es/animation/interfaces/visual-element.mjs","../node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs","../node_modules/framer-motion/dist/es/motion/features/animations.mjs","../node_modules/framer-motion/dist/es/motion/features/animation/index.mjs","../node_modules/framer-motion/dist/es/utils/distance.mjs","../node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs","../node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs","../node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs","../node_modules/framer-motion/dist/es/projection/geometry/models.mjs","../node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs","../node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs","../node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs","../node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs","../node_modules/framer-motion/dist/es/projection/utils/measure.mjs","../node_modules/framer-motion/dist/es/utils/get-context-window.mjs","../node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs","../node_modules/framer-motion/dist/es/gestures/pan/index.mjs","../node_modules/framer-motion/dist/es/projection/node/state.mjs","../node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs","../node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs","../node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs","../node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs","../node_modules/framer-motion/dist/es/projection/geometry/copy.mjs","../node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs","../node_modules/framer-motion/dist/es/projection/geometry/utils.mjs","../node_modules/framer-motion/dist/es/projection/shared/stack.mjs","../node_modules/framer-motion/dist/es/projection/styles/transform.mjs","../node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs","../node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs","../node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs","../node_modules/framer-motion/dist/es/debug/record.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs","../node_modules/framer-motion/dist/es/utils/delay.mjs","../node_modules/framer-motion/dist/es/animation/interfaces/single-value.mjs","../node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs","../node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs","../node_modules/framer-motion/dist/es/motion/features/drag.mjs","../node_modules/framer-motion/dist/es/gestures/drag/index.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/parse-dom-variant.mjs","../node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs","../node_modules/framer-motion/dist/es/render/store.mjs","../node_modules/framer-motion/dist/es/render/VisualElement.mjs","../node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs","../node_modules/framer-motion/dist/es/render/utils/motion-values.mjs","../node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs","../node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs","../node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs","../node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs","../node_modules/framer-motion/dist/es/render/dom/motion.mjs","../node_modules/framer-motion/dist/es/motion/features/layout.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs","../node_modules/@chakra-ui/toast/src/toast.component.tsx","../node_modules/@chakra-ui/react-use-timeout/src/index.ts","../node_modules/@chakra-ui/toast/src/toast.placement.ts","../node_modules/@chakra-ui/icon/src/icon.tsx","../node_modules/@chakra-ui/alert/src/icons.tsx","../node_modules/@chakra-ui/alert/src/alert-context.ts","../node_modules/@chakra-ui/alert/src/alert.tsx","../node_modules/@chakra-ui/alert/src/alert-icon.tsx","../node_modules/@chakra-ui/alert/src/alert-title.tsx","../node_modules/@chakra-ui/alert/src/alert-description.tsx","../node_modules/@chakra-ui/close-button/src/close-button.tsx","../node_modules/@chakra-ui/toast/src/toast.store.ts","../node_modules/@chakra-ui/toast/src/toast.tsx","../node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs","../node_modules/framer-motion/dist/es/utils/use-force-update.mjs","../node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs","../node_modules/@chakra-ui/portal/src/portal.tsx","../node_modules/@chakra-ui/toast/src/toast.provider.tsx","../node_modules/@chakra-ui/react/src/chakra-provider.tsx","../node_modules/@chakra-ui/color-mode/src/color-mode-script.tsx","../node_modules/@chakra-ui/theme/src/utils/is-chakra-theme.ts","../node_modules/@chakra-ui/theme-utils/dist/chunk-LIR5QAZY.mjs","style/colors.ts","style/theme/button.ts","style/theme/checkbox.ts","style/theme/drawer.ts","style/theme/list.ts","style/theme/modal.ts","style/theme/radio.ts","style/theme/tabs.ts","style/theme.ts","providers/UmamiTheme.tsx","../node_modules/@remix-run/router/history.ts","../node_modules/@remix-run/router/utils.ts","../node_modules/@remix-run/router/router.ts","../node_modules/react-router/lib/context.ts","../node_modules/react-router/lib/hooks.tsx","../node_modules/react-router/lib/components.tsx","../node_modules/react-router-dom/dom.ts","../node_modules/react-router-dom/index.tsx","../node_modules/axios/lib/helpers/bind.js","../node_modules/axios/lib/utils.js","../node_modules/axios/lib/core/AxiosError.js","../node_modules/axios/lib/helpers/toFormData.js","../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../node_modules/axios/lib/helpers/buildURL.js","../node_modules/axios/lib/core/InterceptorManager.js","../node_modules/axios/lib/defaults/transitional.js","../node_modules/axios/lib/platform/browser/index.js","../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../node_modules/axios/lib/platform/browser/classes/FormData.js","../node_modules/axios/lib/platform/browser/classes/Blob.js","../node_modules/axios/lib/platform/common/utils.js","../node_modules/axios/lib/platform/index.js","../node_modules/axios/lib/helpers/formDataToJSON.js","../node_modules/axios/lib/defaults/index.js","../node_modules/axios/lib/helpers/toURLEncodedForm.js","../node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/axios/lib/core/AxiosHeaders.js","../node_modules/axios/lib/core/transformData.js","../node_modules/axios/lib/cancel/isCancel.js","../node_modules/axios/lib/cancel/CanceledError.js","../node_modules/axios/lib/helpers/cookies.js","../node_modules/axios/lib/core/buildFullPath.js","../node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/axios/lib/helpers/combineURLs.js","../node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/axios/lib/helpers/speedometer.js","../node_modules/axios/lib/adapters/xhr.js","../node_modules/axios/lib/core/settle.js","../node_modules/axios/lib/helpers/parseProtocol.js","../node_modules/axios/lib/adapters/adapters.js","../node_modules/axios/lib/helpers/null.js","../node_modules/axios/lib/core/dispatchRequest.js","../node_modules/axios/lib/core/mergeConfig.js","../node_modules/axios/lib/env/data.js","../node_modules/axios/lib/helpers/validator.js","../node_modules/axios/lib/core/Axios.js","../node_modules/axios/lib/cancel/CancelToken.js","../node_modules/axios/lib/helpers/HttpStatusCode.js","../node_modules/axios/lib/axios.js","../node_modules/axios/lib/helpers/spread.js","../node_modules/axios/lib/helpers/isAxiosError.js","assets/icons/Accounts.tsx","assets/icons/AddAccount.tsx","assets/icons/AddContact.tsx","assets/icons/AddressBook.tsx","assets/icons/Baker.tsx","assets/icons/Batch.tsx","assets/icons/BurgerMenu.tsx","assets/icons/Checkmark.tsx","assets/icons/ChevronDown.tsx","assets/icons/ChevronRight.tsx","assets/icons/ChevronUp.tsx","assets/icons/Coin.tsx","assets/icons/Contact.tsx","assets/icons/Contract.tsx","assets/icons/CrossedCircle.tsx","assets/icons/Diamond.tsx","assets/icons/Document.tsx","assets/icons/DoubleCheckmark.tsx","assets/icons/Download.tsx","assets/icons/EditAccount.tsx","assets/icons/Exclamation.tsx","assets/icons/ExitArrow.tsx","assets/icons/ExternalLink.tsx","assets/icons/Eye.tsx","assets/icons/EyeSlash.tsx","assets/icons/FA1.2.tsx","assets/icons/FA2.tsx","assets/icons/Fetching.tsx","assets/icons/FileArrowDown.tsx","assets/icons/FileCopy.tsx","assets/icons/FlipForwardEnergy.tsx","assets/icons/Gear.tsx","assets/icons/Google.tsx","assets/icons/Help.tsx","assets/icons/Hourglass.tsx","assets/icons/OutgoingArrow.tsx","assets/icons/IncomingArrow.tsx","assets/icons/Key.tsx","assets/icons/Ledger.tsx","assets/icons/Link.tsx","assets/icons/Lock.tsx","assets/icons/Maintenance.tsx","assets/icons/Maki.tsx","assets/icons/Notice.tsx","assets/icons/OutlineExclamationCircle.tsx","assets/icons/Pen.tsx","assets/icons/Plus.tsx","assets/icons/RefreshClock.tsx","assets/icons/Rotate.tsx","assets/icons/Slash.tsx","assets/icons/Sliders.tsx","assets/icons/Social.tsx","assets/icons/Tez.tsx","assets/icons/ThreeDots.tsx","../node_modules/@chakra-ui/image/src/native-image.tsx","../node_modules/utilities/object-utils/src/omit.ts","../node_modules/@chakra-ui/image/src/image.tsx","../node_modules/@chakra-ui/image/src/use-image.ts","assets/icons/Token.tsx","assets/icons/Trash.tsx","assets/icons/UnknownContact.tsx","assets/icons/USB.tsx","assets/icons/Verified.tsx","assets/icons/WalletPlus.tsx","assets/icons/Warning.tsx","assets/icons/XMark.tsx","utils/redux/hooks.ts","components/AnnouncementBanner.tsx","../node_modules/@chakra-ui/hooks/src/use-id.ts","../node_modules/@chakra-ui/utils/dist/chunk-O3SWHQEE.mjs","../node_modules/@chakra-ui/hooks/src/use-safe-layout-effect.ts","../node_modules/@chakra-ui/hooks/src/use-callback-ref.ts","../node_modules/@chakra-ui/hooks/src/use-disclosure.ts","../node_modules/@chakra-ui/hooks/src/use-controllable.ts","../node_modules/@chakra-ui/modal/src/modal-manager.ts","../node_modules/aria-hidden/dist/es2015/index.js","../node_modules/@chakra-ui/modal/src/use-modal.ts","../node_modules/@chakra-ui/modal/src/modal.tsx","../node_modules/@chakra-ui/transition/src/transition-utils.ts","../node_modules/@chakra-ui/transition/src/fade.tsx","../node_modules/@chakra-ui/modal/src/modal-overlay.tsx","../node_modules/tslib/tslib.es6.mjs","../node_modules/react-remove-scroll-bar/dist/es2015/constants.js","../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../node_modules/use-callback-ref/dist/es2015/useRef.js","../node_modules/use-callback-ref/dist/es2015/assignRef.js","../node_modules/use-sidecar/dist/es2015/medium.js","../node_modules/react-remove-scroll/dist/es2015/medium.js","../node_modules/react-remove-scroll/dist/es2015/UI.js","../node_modules/use-sidecar/dist/es2015/exports.js","../node_modules/get-nonce/dist/es2015/index.js","../node_modules/react-style-singleton/dist/es2015/singleton.js","../node_modules/react-style-singleton/dist/es2015/component.js","../node_modules/react-style-singleton/dist/es2015/hook.js","../node_modules/react-remove-scroll-bar/dist/es2015/utils.js","../node_modules/react-remove-scroll-bar/dist/es2015/component.js","../node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js","../node_modules/react-remove-scroll/dist/es2015/handleScroll.js","../node_modules/react-remove-scroll/dist/es2015/SideEffect.js","../node_modules/react-remove-scroll/dist/es2015/sidecar.js","../node_modules/react-remove-scroll/dist/es2015/Combination.js","components/DynamicModal.tsx","../node_modules/@chakra-ui/toast/src/use-toast.tsx","../../../../src/utils/exposed-promise.ts","../../../../src/utils/keys.ts","../../../../src/utils/crypto.ts","../../../../src/utils/generate-uuid.ts","../../../../../src/types/beacon/BeaconMessageType.ts","../../../../../src/types/beacon/PermissionScope.ts","../../../../../src/types/beacon/NetworkType.ts","../../../../../src/types/tezos/OperationTypes.ts","../../../../src/types/Origin.ts","../../../../src/types/ExtensionMessageTarget.ts","../../../../src/types/BeaconErrorType.ts","../../../../../src/types/transport/TransportStatus.ts","../../../../../src/types/transport/TransportType.ts","../../../../../src/types/storage/StorageKey.ts","../../../../../src/types/storage/Storage.ts","../../../../../src/types/storage/StorageKeyReturnDefaults.ts","../../../../src/types/P2PPairingRequest.ts","../../../../../src/types/beacon/SigningType.ts","../../../../src/types/ColorMode.ts","../../../../src/types/Regions.ts","../../../../src/types/P2PPairingResponse.ts","../../../../src/types/PostMessagePairingRequest.ts","../../../../src/types/WalletConnectPairingRequest.ts","../../../src/constants.ts","../../../src/MockWindow.ts","../../../src/MockAnalytics.ts","../../../../../src/clients/beacon-client/BeaconClient.ts","../../../../src/managers/StorageManager.ts","../../../../src/utils/get-account-identifier.ts","../../../../src/managers/PermissionValidator.ts","../../../../src/managers/AccountManager.ts","../../../../src/utils/get-sender-id.ts","../../../src/debug.ts","../../../../src/utils/Logger.ts","../../../../../src/clients/client/Client.ts","../../../../src/transports/Transport.ts","../../../../src/storage/LocalStorage.ts","../../../../src/storage/getStorage.ts","../../../src/Serializer.ts","../../../../src/managers/AppMetadataManager.ts","../../../../src/managers/PermissionManager.ts","../../../../src/managers/PeerManager.ts","../../../../../src/transports/clients/CommunicationClient.ts","../../../../src/storage/IndexedDBStorage.ts","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/bind.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/utils.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/AxiosError.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/toFormData.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/buildURL.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/InterceptorManager.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/defaults/transitional.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/browser/index.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/browser/classes/FormData.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/browser/classes/Blob.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/common/utils.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/index.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/formDataToJSON.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/defaults/index.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/toURLEncodedForm.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/AxiosHeaders.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/transformData.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/cancel/isCancel.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/cancel/CanceledError.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/cookies.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/buildFullPath.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/combineURLs.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/speedometer.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/adapters/xhr.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/settle.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/parseProtocol.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/adapters/adapters.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/null.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/dispatchRequest.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/mergeConfig.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/env/data.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/validator.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/Axios.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/cancel/CancelToken.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/HttpStatusCode.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/axios.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/spread.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/isAxiosError.js","../../../../../src/matrix-client/models/MatrixMessage.ts","../../../../../src/matrix-client/utils/events.ts","../../../../../src/matrix-client/models/MatrixRoom.ts","../../../../src/matrix-client/MatrixClientStore.ts","../../../../src/matrix-client/MatrixHttpClient.ts","../../../../../src/matrix-client/services/MatrixRoomService.ts","../../../../../src/matrix-client/services/MatrixUserService.ts","../../../../../src/matrix-client/services/MatrixEventService.ts","../../../../src/matrix-client/EventEmitter.ts","../../../../../src/matrix-client/models/MatrixClientEvent.ts","../../../../src/matrix-client/MatrixClientEventEmitter.ts","../../../../src/matrix-client/MatrixClient.ts","../../../../src/communication-client/P2PCommunicationClient.ts","../../../src/P2PTransport.ts","../../../../src/transports/WalletP2PTransport.ts","../../../../src/interceptors/IncomingRequestInterceptor.ts","../../../../src/interceptors/OutgoingResponseInterceptor.ts","../../../src/index.ts","../../../../src/client/WalletClient.ts","../node_modules/@chakra-ui/transition/src/slide-fade.tsx","../node_modules/@chakra-ui/transition/src/scale-fade.tsx","../node_modules/@chakra-ui/modal/src/modal-transition.tsx","../node_modules/react-focus-lock/node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/focus-lock/dist/es2015/constants.js","../node_modules/react-focus-lock/dist/es2015/FocusGuard.js","../node_modules/react-focus-lock/dist/es2015/medium.js","../node_modules/react-focus-lock/dist/es2015/Lock.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/react-clientside-effect/lib/index.es.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/focus-lock/dist/es2015/utils/array.js","../node_modules/focus-lock/dist/es2015/utils/is.js","../node_modules/focus-lock/dist/es2015/utils/tabOrder.js","../node_modules/focus-lock/dist/es2015/utils/tabUtils.js","../node_modules/focus-lock/dist/es2015/utils/tabbables.js","../node_modules/focus-lock/dist/es2015/utils/DOMutils.js","../node_modules/focus-lock/dist/es2015/utils/getActiveElement.js","../node_modules/focus-lock/dist/es2015/utils/safe.js","../node_modules/focus-lock/dist/es2015/utils/all-affected.js","../node_modules/focus-lock/dist/es2015/focusInside.js","../node_modules/focus-lock/dist/es2015/utils/correctFocus.js","../node_modules/focus-lock/dist/es2015/utils/firstFocus.js","../node_modules/focus-lock/dist/es2015/solver.js","../node_modules/focus-lock/dist/es2015/utils/auto-focus.js","../node_modules/focus-lock/dist/es2015/utils/parenting.js","../node_modules/focus-lock/dist/es2015/focusSolver.js","../node_modules/focus-lock/dist/es2015/moveFocusInside.js","../node_modules/focus-lock/dist/es2015/commands.js","../node_modules/react-focus-lock/dist/es2015/util.js","../node_modules/react-focus-lock/dist/es2015/Trap.js","../node_modules/focus-lock/dist/es2015/focusIsHidden.js","../node_modules/focus-lock/dist/es2015/focusables.js","../node_modules/react-focus-lock/dist/es2015/Combination.js","../node_modules/react-focus-lock/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/react-focus-lock/dist/es2015/index.js","../node_modules/@chakra-ui/dom-utils/dist/chunk-3XANSPY5.mjs","../node_modules/@chakra-ui/dom-utils/dist/chunk-ROURZMX4.mjs","../node_modules/@chakra-ui/dom-utils/dist/index.mjs","../node_modules/@chakra-ui/focus-lock/src/focus-lock.tsx","../node_modules/@chakra-ui/modal/src/modal-focus.tsx","../node_modules/@chakra-ui/modal/src/modal-content.tsx","../node_modules/@chakra-ui/modal/src/modal-header.tsx","../node_modules/@chakra-ui/object-utils/dist/chunk-R3DH46PF.mjs","../node_modules/@chakra-ui/layout/src/text.tsx","../node_modules/@chakra-ui/modal/src/modal-close-button.tsx","../node_modules/@chakra-ui/modal/src/modal-body.tsx","../node_modules/@chakra-ui/breakpoint-utils/dist/chunk-G72KV6MB.mjs","../node_modules/@chakra-ui/layout/src/aspect-ratio.tsx","../node_modules/@chakra-ui/descendant/src/utils.ts","../node_modules/@chakra-ui/descendant/src/descendant.ts","../node_modules/@chakra-ui/descendant/src/use-descendant.ts","../node_modules/@chakra-ui/accordion/src/accordion-context.ts","../node_modules/@chakra-ui/react-use-controllable-state/src/index.ts","../node_modules/@chakra-ui/accordion/src/use-accordion.ts","../node_modules/@chakra-ui/accordion/src/accordion.tsx","../node_modules/@chakra-ui/accordion/src/accordion-item.tsx","../node_modules/@chakra-ui/accordion/src/accordion-button.tsx","../node_modules/@chakra-ui/accordion/src/accordion-icon.tsx","../node_modules/@chakra-ui/transition/src/collapse.tsx","../node_modules/@chakra-ui/accordion/src/accordion-panel.tsx","../node_modules/@chakra-ui/form-control/src/form-control.tsx","../node_modules/@chakra-ui/form-control/src/form-error.tsx","../node_modules/@chakra-ui/modal/src/modal-footer.tsx","../node_modules/react-hook-form/src/utils/isCheckBoxInput.ts","../node_modules/react-hook-form/src/utils/isDateObject.ts","../node_modules/react-hook-form/src/utils/isNullOrUndefined.ts","../node_modules/react-hook-form/src/utils/isObject.ts","../node_modules/react-hook-form/src/logic/getEventValue.ts","../node_modules/react-hook-form/src/logic/isNameInFieldArray.ts","../node_modules/react-hook-form/src/logic/getNodeParentName.ts","../node_modules/react-hook-form/src/utils/isPlainObject.ts","../node_modules/react-hook-form/src/utils/isWeb.ts","../node_modules/react-hook-form/src/utils/cloneObject.ts","../node_modules/react-hook-form/src/utils/compact.ts","../node_modules/react-hook-form/src/utils/isUndefined.ts","../node_modules/react-hook-form/src/utils/get.ts","../node_modules/react-hook-form/src/utils/isBoolean.ts","../node_modules/react-hook-form/src/constants.ts","../node_modules/react-hook-form/src/useFormContext.tsx","../node_modules/react-hook-form/src/logic/getProxyFormState.ts","../node_modules/react-hook-form/src/utils/isEmptyObject.ts","../node_modules/react-hook-form/src/logic/shouldRenderFormState.ts","../node_modules/react-hook-form/src/utils/convertToArrayPayload.ts","../node_modules/react-hook-form/src/useSubscribe.ts","../node_modules/react-hook-form/src/utils/isString.ts","../node_modules/react-hook-form/src/logic/generateWatchOutput.ts","../node_modules/react-hook-form/src/utils/isKey.ts","../node_modules/react-hook-form/src/utils/stringToPath.ts","../node_modules/react-hook-form/src/utils/set.ts","../node_modules/react-hook-form/src/logic/appendErrors.ts","../node_modules/react-hook-form/src/logic/generateId.ts","../node_modules/react-hook-form/src/logic/getFocusFieldName.ts","../node_modules/react-hook-form/src/logic/getValidationModes.ts","../node_modules/react-hook-form/src/logic/isWatched.ts","../node_modules/react-hook-form/src/logic/iterateFieldsByAction.ts","../node_modules/react-hook-form/src/logic/updateFieldArrayRootError.ts","../node_modules/react-hook-form/src/utils/isFileInput.ts","../node_modules/react-hook-form/src/utils/isFunction.ts","../node_modules/react-hook-form/src/utils/isHTMLElement.ts","../node_modules/react-hook-form/src/utils/isMessage.ts","../node_modules/react-hook-form/src/utils/isRadioInput.ts","../node_modules/react-hook-form/src/utils/isRegex.ts","../node_modules/react-hook-form/src/logic/getCheckboxValue.ts","../node_modules/react-hook-form/src/logic/getRadioValue.ts","../node_modules/react-hook-form/src/logic/getValidateError.ts","../node_modules/react-hook-form/src/logic/getValueAndMessage.ts","../node_modules/react-hook-form/src/logic/validateField.ts","../node_modules/react-hook-form/src/utils/append.ts","../node_modules/react-hook-form/src/utils/fillEmptyArray.ts","../node_modules/react-hook-form/src/utils/insert.ts","../node_modules/react-hook-form/src/utils/move.ts","../node_modules/react-hook-form/src/utils/prepend.ts","../node_modules/react-hook-form/src/utils/remove.ts","../node_modules/react-hook-form/src/utils/swap.ts","../node_modules/react-hook-form/src/utils/unset.ts","../node_modules/react-hook-form/src/utils/update.ts","../node_modules/react-hook-form/src/utils/createSubject.ts","../node_modules/react-hook-form/src/utils/isPrimitive.ts","../node_modules/react-hook-form/src/utils/deepEqual.ts","../node_modules/react-hook-form/src/utils/isMultipleSelect.ts","../node_modules/react-hook-form/src/utils/isRadioOrCheckbox.ts","../node_modules/react-hook-form/src/utils/live.ts","../node_modules/react-hook-form/src/utils/objectHasTruthyValue.ts","../node_modules/react-hook-form/src/utils/objectHasFunction.ts","../node_modules/react-hook-form/src/logic/getDirtyFields.ts","../node_modules/react-hook-form/src/logic/getFieldValueAs.ts","../node_modules/react-hook-form/src/logic/getFieldValue.ts","../node_modules/react-hook-form/src/logic/getResolverOptions.ts","../node_modules/react-hook-form/src/logic/getRuleValue.ts","../node_modules/react-hook-form/src/logic/hasValidation.ts","../node_modules/react-hook-form/src/logic/schemaErrorLookup.ts","../node_modules/react-hook-form/src/logic/skipValidation.ts","../node_modules/react-hook-form/src/logic/unsetEmptyArray.ts","../node_modules/react-hook-form/src/logic/createFormControl.ts","../node_modules/react-hook-form/src/useForm.ts","utils/beacon/WalletClient.tsx","../node_modules/@chakra-ui/card/src/card-context.tsx","../node_modules/@chakra-ui/card/src/card.tsx","../node_modules/@chakra-ui/card/src/card-body.tsx","components/AccountDrawer/JsValueWrap.tsx","../node_modules/@chakra-ui/form-control/src/form-label.tsx","../node_modules/@chakra-ui/react-children-utils/dist/index.mjs","../node_modules/@chakra-ui/input/src/input-group.tsx","../node_modules/@chakra-ui/form-control/src/use-form-control.ts","../node_modules/@chakra-ui/input/src/input.tsx","../node_modules/@chakra-ui/input/src/input-element.tsx","../node_modules/@chakra-ui/layout/src/list.tsx","../node_modules/@chakra-ui/tooltip/src/tooltip.transition.tsx","../node_modules/@chakra-ui/dom-utils/dist/chunk-4WEUWBTD.mjs","../node_modules/@chakra-ui/popper/src/utils.ts","../node_modules/@chakra-ui/popper/src/modifiers.ts","../node_modules/@chakra-ui/popper/src/popper.placement.ts","../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../node_modules/@popperjs/core/lib/utils/math.js","../node_modules/@popperjs/core/lib/utils/userAgent.js","../node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../node_modules/@popperjs/core/lib/enums.js","../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../node_modules/@popperjs/core/lib/utils/debounce.js","../node_modules/@popperjs/core/lib/createPopper.js","../node_modules/@popperjs/core/lib/utils/mergeByName.js","../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../node_modules/@popperjs/core/lib/utils/getVariation.js","../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../node_modules/@popperjs/core/lib/modifiers/offset.js","../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../node_modules/@popperjs/core/lib/dom-utils/contains.js","../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../node_modules/@popperjs/core/lib/modifiers/flip.js","../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../node_modules/@popperjs/core/lib/utils/within.js","../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../node_modules/@popperjs/core/lib/modifiers/arrow.js","../node_modules/@popperjs/core/lib/modifiers/hide.js","../node_modules/@popperjs/core/lib/popper.js","../node_modules/@chakra-ui/popper/src/use-popper.ts","../node_modules/@chakra-ui/react-use-disclosure/src/index.ts","../node_modules/@chakra-ui/react-use-event-listener/src/index.ts","../node_modules/@chakra-ui/tooltip/src/use-tooltip.ts","../node_modules/@chakra-ui/tooltip/src/tooltip.tsx","../node_modules/utilities/object-utils/src/pick.ts","components/Identicon.tsx","components/AddressTile/AddressTileIcon.tsx","utils/hooks/networkHooks.ts","utils/hooks/tokensHooks.ts","../node_modules/@ledgerhq/errors/src/helpers.ts","../node_modules/@ledgerhq/errors/src/index.ts","../node_modules/@ledgerhq/logs/src/index.ts","../node_modules/@ledgerhq/hw-transport/src/Transport.ts","../node_modules/@ledgerhq/devices/src/hid-framing.ts","../node_modules/@ledgerhq/devices/src/index.ts","../node_modules/@ledgerhq/hw-transport-webusb/src/webusb.ts","../node_modules/@ledgerhq/hw-transport-webusb/src/TransportWebUSB.ts","../node_modules/rxjs/src/internal/util/isFunction.ts","../node_modules/rxjs/src/internal/util/createErrorClass.ts","../node_modules/rxjs/src/internal/util/UnsubscriptionError.ts","../node_modules/rxjs/src/internal/util/arrRemove.ts","../node_modules/rxjs/src/internal/Subscription.ts","../node_modules/rxjs/src/internal/config.ts","../node_modules/rxjs/src/internal/scheduler/timeoutProvider.ts","../node_modules/rxjs/src/internal/util/reportUnhandledError.ts","../node_modules/rxjs/src/internal/util/noop.ts","../node_modules/rxjs/src/internal/NotificationFactories.ts","../node_modules/rxjs/src/internal/util/errorContext.ts","../node_modules/rxjs/src/internal/Subscriber.ts","../node_modules/rxjs/src/internal/symbol/observable.ts","../node_modules/rxjs/src/internal/util/identity.ts","../node_modules/rxjs/src/internal/util/pipe.ts","../node_modules/rxjs/src/internal/Observable.ts","../node_modules/rxjs/src/internal/util/ObjectUnsubscribedError.ts","../node_modules/rxjs/src/internal/Subject.ts","../node_modules/rxjs/src/internal/scheduler/dateTimestampProvider.ts","../node_modules/rxjs/src/internal/ReplaySubject.ts","../node_modules/rxjs/src/internal/BehaviorSubject.ts","../node_modules/rxjs/src/internal/observable/throwError.ts","../node_modules/rxjs/src/internal/util/isArrayLike.ts","../node_modules/rxjs/src/internal/util/isPromise.ts","../node_modules/rxjs/src/internal/util/isInteropObservable.ts","../node_modules/rxjs/src/internal/util/isAsyncIterable.ts","../node_modules/rxjs/src/internal/util/throwUnobservableError.ts","../node_modules/rxjs/src/internal/symbol/iterator.ts","../node_modules/rxjs/src/internal/util/isIterable.ts","../node_modules/rxjs/src/internal/util/isReadableStreamLike.ts","../node_modules/rxjs/src/internal/observable/innerFrom.ts","../node_modules/rxjs/src/internal/observable/defer.ts","../node_modules/rxjs/src/internal/observable/empty.ts","../node_modules/rxjs/src/internal/observable/range.ts","../node_modules/rxjs/src/internal/util/isScheduler.ts","../node_modules/rxjs/src/internal/util/args.ts","../node_modules/rxjs/src/internal/util/executeSchedule.ts","../node_modules/rxjs/src/internal/util/lift.ts","../node_modules/rxjs/src/internal/operators/OperatorSubscriber.ts","../node_modules/rxjs/src/internal/operators/observeOn.ts","../node_modules/rxjs/src/internal/operators/subscribeOn.ts","../node_modules/rxjs/src/internal/scheduled/scheduleAsyncIterable.ts","../node_modules/rxjs/src/internal/scheduled/scheduled.ts","../node_modules/rxjs/src/internal/scheduled/scheduleObservable.ts","../node_modules/rxjs/src/internal/scheduled/scheduleArray.ts","../node_modules/rxjs/src/internal/scheduled/schedulePromise.ts","../node_modules/rxjs/src/internal/scheduled/scheduleIterable.ts","../node_modules/rxjs/src/internal/scheduled/scheduleReadableStreamLike.ts","../node_modules/rxjs/src/internal/observable/from.ts","../node_modules/rxjs/src/internal/observable/of.ts","../node_modules/rxjs/src/internal/util/argsArgArrayOrObject.ts","../node_modules/rxjs/src/internal/operators/map.ts","../node_modules/rxjs/src/internal/util/mapOneOrManyArgs.ts","../node_modules/rxjs/src/internal/observable/combineLatest.ts","../node_modules/rxjs/src/internal/util/createObject.ts","../node_modules/rxjs/src/internal/operators/mergeMap.ts","../node_modules/rxjs/src/internal/operators/mergeInternals.ts","../node_modules/rxjs/src/internal/operators/concatAll.ts","../node_modules/rxjs/src/internal/operators/mergeAll.ts","../node_modules/rxjs/src/internal/observable/concat.ts","../node_modules/rxjs/src/internal/observable/never.ts","../node_modules/rxjs/src/internal/scheduler/Action.ts","../node_modules/rxjs/src/internal/scheduler/intervalProvider.ts","../node_modules/rxjs/src/internal/scheduler/AsyncAction.ts","../node_modules/rxjs/src/internal/Scheduler.ts","../node_modules/rxjs/src/internal/scheduler/AsyncScheduler.ts","../node_modules/rxjs/src/internal/scheduler/async.ts","../node_modules/rxjs/src/internal/util/isDate.ts","../node_modules/rxjs/src/internal/observable/timer.ts","../node_modules/rxjs/src/internal/operators/switchMap.ts","../node_modules/rxjs/src/internal/operators/timeout.ts","../node_modules/rxjs/src/internal/operators/concatMap.ts","../node_modules/rxjs/src/internal/operators/endWith.ts","../node_modules/rxjs/src/internal/operators/tap.ts","../node_modules/rxjs/src/internal/operators/share.ts","../node_modules/rxjs/src/internal/operators/shareReplay.ts","../node_modules/rxjs/src/internal/operators/filter.ts","../node_modules/rxjs/src/internal/util/EmptyError.ts","../node_modules/rxjs/src/internal/operators/throwIfEmpty.ts","../node_modules/rxjs/src/internal/operators/first.ts","../node_modules/rxjs/src/internal/operators/take.ts","../node_modules/rxjs/src/internal/operators/defaultIfEmpty.ts","../node_modules/rxjs/src/internal/operators/catchError.ts","../node_modules/rxjs/src/internal/operators/distinctUntilChanged.ts","../node_modules/rxjs/src/internal/operators/retry.ts","../node_modules/rxjs/src/internal/operators/pluck.ts","../node_modules/rxjs/src/internal/operators/refCount.ts","../node_modules/rxjs/src/internal/observable/ConnectableObservable.ts","../node_modules/rxjs/src/internal/operators/connect.ts","../node_modules/rxjs/src/internal/observable/fromSubscribable.ts","../node_modules/rxjs/src/internal/operators/publish.ts","../node_modules/rxjs/src/internal/operators/multicast.ts","../node_modules/rxjs/src/internal/operators/takeWhile.ts","../node_modules/rxjs/src/internal/operators/startWith.ts","../node_modules/rxjs/src/internal/operators/takeUntil.ts","../node_modules/rxjs/src/internal/operators/distinctUntilKeyChanged.ts","utils/tezos/fakeSigner.ts","types/Operation.ts","utils/tezos/helpers.ts","utils/tezos/estimate.ts","../node_modules/@chriscdn/promise-semaphore/src/index.ts","../node_modules/@tzkt/oazapfts/src/runtime/util.ts","../node_modules/@tzkt/oazapfts/src/runtime/query.ts","../node_modules/@tzkt/oazapfts/src/index.ts","../node_modules/@tzkt/sdk-api/src/queryParamParsers.ts","../node_modules/@tzkt/sdk-api/src/index.ts","../node_modules/@tzkt/oazapfts/src/runtime/index.ts","utils/tezos/constants.ts","utils/tezos/fetch.ts","utils/tezos/execute.ts","utils/format.ts","utils/hooks/assetsHooks.ts","utils/hooks/contactsHooks.ts","utils/hooks/multisigHooks.ts","utils/hooks/getAccountDataHooks.ts","components/AddressTile/useAddressKind.ts","components/PrettyNumber.tsx","components/AccountBalance.tsx","components/AddressTile/AddressTile.tsx","components/AddressAutocomplete/Suggestions.tsx","components/AddressAutocomplete/AddressAutocomplete.tsx","utils/beacon/PermissionRequestModal.tsx","utils/hooks/beaconHooks.ts","../node_modules/@chakra-ui/button/src/icon-button.tsx","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@toruslabs/http-helpers/src/index.ts","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/util.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/methods/native.js","../node_modules/oblivious-set/src/index.ts","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/options.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/methods/indexed-db.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/methods/localstorage.js","../node_modules/@toruslabs/broadcast-channel/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../node_modules/engine.io-parser/build/esm/commons.js","../node_modules/engine.io-parser/build/esm/encodePacket.browser.js","../node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.js","../node_modules/engine.io-parser/build/esm/decodePacket.browser.js","../node_modules/engine.io-parser/build/esm/index.js","../node_modules/@socket.io/component-emitter/index.mjs","../node_modules/engine.io-client/build/esm/globalThis.browser.js","../node_modules/engine.io-client/build/esm/util.js","../node_modules/engine.io-client/build/esm/transport.js","../node_modules/engine.io-client/build/esm/contrib/parseqs.js","../node_modules/engine.io-client/build/esm/contrib/yeast.js","../node_modules/engine.io-client/build/esm/contrib/has-cors.js","../node_modules/engine.io-client/build/esm/transports/xmlhttprequest.browser.js","../node_modules/engine.io-client/build/esm/transports/polling.js","../node_modules/engine.io-client/build/esm/transports/websocket-constructor.browser.js","../node_modules/engine.io-client/build/esm/transports/websocket.js","../node_modules/engine.io-client/build/esm/transports/webtransport.js","../node_modules/engine.io-client/build/esm/transports/index.js","../node_modules/engine.io-client/build/esm/contrib/parseuri.js","../node_modules/engine.io-client/build/esm/socket.js","../node_modules/engine.io-client/build/esm/index.js","../node_modules/socket.io-parser/build/esm/is-binary.js","../node_modules/socket.io-parser/build/esm/binary.js","../node_modules/socket.io-parser/build/esm/index.js","../node_modules/socket.io-client/build/esm/on.js","../node_modules/socket.io-client/build/esm/socket.js","../node_modules/socket.io-client/build/esm/contrib/backo2.js","../node_modules/socket.io-client/build/esm/manager.js","../node_modules/socket.io-client/build/esm/index.js","../node_modules/socket.io-client/build/esm/url.js","../node_modules/@toruslabs/eccrypto/src/index.ts","../node_modules/@toruslabs/broadcast-channel/node_modules/@toruslabs/http-helpers/src/index.ts","../node_modules/@toruslabs/broadcast-channel/node_modules/@toruslabs/metadata-helpers/src/utils.ts","../node_modules/@toruslabs/broadcast-channel/node_modules/@toruslabs/metadata-helpers/src/webAuthnShareResolver.ts","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/methods/server.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/methods/simulate.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/method-chooser.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/broadcast-channel.js","../node_modules/jwt-decode/lib/atob.js","../node_modules/jwt-decode/lib/index.js","../node_modules/jwt-decode/lib/base64_url_decode.js","../node_modules/@toruslabs/constants/src/constants.ts","../node_modules/@toruslabs/fnd-base/src/endpoints.ts","../node_modules/@toruslabs/fnd-base/src/legacyMainnetConfig.ts","../node_modules/@toruslabs/fnd-base/src/pubKeys.ts","../node_modules/@toruslabs/fnd-base/src/sapphireNetworkConfig.ts","../node_modules/@toruslabs/fetch-node-details/src/nodeDetailManager.ts","../node_modules/@toruslabs/fnd-base/src/utils.ts","../node_modules/@toruslabs/torus.js/src/constants.ts","../node_modules/@toruslabs/torus.js/src/helpers/common.ts","../node_modules/@toruslabs/torus.js/src/helpers/errorUtils.ts","../node_modules/@toruslabs/torus.js/src/loglevel.ts","../node_modules/@toruslabs/torus.js/src/helpers/keyUtils.ts","../node_modules/@toruslabs/torus.js/src/Point.ts","../node_modules/@toruslabs/torus.js/src/Share.ts","../node_modules/@toruslabs/torus.js/src/Polynomial.ts","../node_modules/@toruslabs/torus.js/src/helpers/langrangeInterpolatePoly.ts","../node_modules/@toruslabs/torus.js/src/helpers/metadataUtils.ts","../node_modules/@toruslabs/torus.js/src/config.ts","../node_modules/@toruslabs/torus.js/src/some.ts","../node_modules/@toruslabs/torus.js/src/helpers/nodeUtils.ts","../node_modules/@toruslabs/torus.js/src/torus.ts","../node_modules/@toruslabs/metadata-helpers/src/utils.ts","../node_modules/@toruslabs/metadata-helpers/src/webAuthnShareResolver.ts","../node_modules/@toruslabs/customauth/src/utils/enums.ts","../node_modules/@toruslabs/customauth/src/utils/loglevel.ts","../node_modules/@toruslabs/customauth/src/utils/helpers.ts","../node_modules/@toruslabs/customauth/src/utils/PopupHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/AbstractLoginHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/DiscordHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/FacebookHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/GoogleHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/JwtHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/MockLoginHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/PasswordlessHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/RedditHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/TwitchHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/WebAuthnHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/HandlerFactory.ts","../node_modules/@toruslabs/customauth/src/sentry.ts","../node_modules/@toruslabs/customauth/src/utils/StorageHelper.ts","../node_modules/@toruslabs/customauth/src/login.ts","../node_modules/@toruslabs/customauth/src/registerServiceWorker.ts","utils/withTimeout.ts","GoogleAuth/getGoogleCredentials.ts","utils/getErrorContext.ts","utils/hooks/useAsyncActionHandler.ts","GoogleAuth/GoogleAuth.tsx","../node_modules/pako/dist/pako.esm.mjs","../node_modules/js-base64/base64.mjs","GoogleAuth/parseTorusRedirectParams.ts","../node_modules/zipurl/index.js","components/FormErrorMessage.tsx","components/PasswordInput.tsx","components/SendFlow/SignButton.tsx","utils/beacon/SignPayloadRequestModal.tsx","components/SendFlow/FormPageHeader.tsx","../node_modules/@chakra-ui/icon/src/create-icon.tsx","../node_modules/@chakra-ui/icons/src/ArrowBack.tsx","components/ModalBackButton.tsx","components/SendFlow/SignPageHeader.tsx","components/SendFlow/Beacon/Header.tsx","assets/icons/WindowLink.tsx","components/SendFlow/SuccessStep.tsx","components/SendFlow/Beacon/useSignWithBeacon.tsx","components/SendFlow/SignPageFee.tsx","components/SendFlow/Beacon/BatchSignPage.tsx","components/AssetTiles/TezTile.tsx","components/SendFlow/Beacon/ContractCallSignPage.tsx","components/SendFlow/Beacon/DelegationSignPage.tsx","components/SendFlow/Beacon/TezSignPage.tsx","components/SendFlow/Beacon/UndelegationSignPage.tsx","components/SendFlow/Beacon/BeaconSignPage.tsx","utils/beacon/useHandleBeaconMessage.tsx","utils/beacon/BeaconProvider.tsx","../node_modules/@tanstack/query-core/src/queryObserver.ts","../node_modules/@tanstack/react-query/src/QueryErrorResetBoundary.tsx","../node_modules/@tanstack/react-query/src/isRestoring.ts","../node_modules/@tanstack/react-query/src/errorBoundaryUtils.ts","../node_modules/@tanstack/react-query/src/utils.ts","../node_modules/@tanstack/react-query/src/suspense.ts","../node_modules/@tanstack/react-query/src/useQuery.ts","../node_modules/@tanstack/react-query/src/useBaseQuery.ts","utils/multisig/fetch.ts","utils/multisig/helpers.ts","utils/useAssetsPolling.ts","utils/beacon/types.ts","utils/beacon/beacon.tsx","../node_modules/@chakra-ui/table/src/table-container.tsx","../node_modules/@chakra-ui/table/src/table.tsx","../node_modules/@chakra-ui/table/src/tbody.tsx","../node_modules/@chakra-ui/table/src/tr.tsx","../node_modules/@chakra-ui/table/src/td.tsx","components/CopyableText.tsx","components/ContactModal.tsx","../node_modules/@chakra-ui/layout/src/divider.tsx","../node_modules/@chakra-ui/react-use-animation-state/src/index.ts","../node_modules/@chakra-ui/react-use-focus-on-pointer-down/src/index.ts","../node_modules/@chakra-ui/react-use-focus-effect/src/index.ts","../node_modules/@chakra-ui/lazy-utils/dist/index.mjs","../node_modules/@chakra-ui/popover/src/use-popover.ts","../node_modules/@chakra-ui/popover/src/popover-context.ts","../node_modules/@chakra-ui/popover/src/popover.tsx","../node_modules/@chakra-ui/popover/src/popover-trigger.tsx","../node_modules/@chakra-ui/popover/src/popover-transition.tsx","../node_modules/@chakra-ui/popover/src/popover-content.tsx","../node_modules/@chakra-ui/popover/src/popover-body.tsx","components/PopoverMenu.tsx","components/RenameRemoveMenu.tsx","components/SendButton.tsx","components/SendFlow/OperationSignerSelector.tsx","types/AccountOperations.ts","utils/hooks/batchesHooks.ts","components/SendFlow/utils.tsx","components/SendFlow/Tez/SignPage.tsx","utils/redux/thunks/estimateAndUpdateBatch.ts","components/SendFlow/onSubmitFormActionHooks.tsx","components/SendFlow/Tez/FormPage.tsx","views/addressBook/ContactTable.tsx","components/ExternalLink.tsx","components/NoItems/index.tsx","../node_modules/@chakra-ui/media-query/src/use-media-query.ts","../node_modules/date-fns/_lib/getRoundingMethod.mjs","../node_modules/date-fns/toDate.mjs","../node_modules/date-fns/differenceInMilliseconds.mjs","../node_modules/date-fns/differenceInSeconds.mjs","../node_modules/date-fns/constants.mjs","../node_modules/date-fns/differenceInMinutes.mjs","../node_modules/date-fns/compareAsc.mjs","../node_modules/date-fns/differenceInCalendarMonths.mjs","../node_modules/date-fns/endOfDay.mjs","../node_modules/date-fns/endOfMonth.mjs","../node_modules/date-fns/isLastDayOfMonth.mjs","../node_modules/date-fns/differenceInMonths.mjs","../node_modules/date-fns/locale/en-US/_lib/formatDistance.mjs","../node_modules/date-fns/locale/_lib/buildFormatLongFn.mjs","../node_modules/date-fns/locale/en-US/_lib/formatLong.mjs","../node_modules/date-fns/locale/en-US/_lib/formatRelative.mjs","../node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs","../node_modules/date-fns/locale/en-US/_lib/localize.mjs","../node_modules/date-fns/locale/_lib/buildMatchFn.mjs","../node_modules/date-fns/locale/en-US/_lib/match.mjs","../node_modules/date-fns/locale/_lib/buildMatchPatternFn.mjs","../node_modules/date-fns/locale/en-US.mjs","../node_modules/date-fns/_lib/defaultOptions.mjs","../node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.mjs","../node_modules/date-fns/formatDistance.mjs","components/BuyTez/BuyTezForm.tsx","assets/icons/CheckIcon.tsx","components/TopBar.tsx","views/addressBook/AddressBookView.tsx","views/batch/AccountSmallTile.tsx","views/batch/OperationEstimationStatus.tsx","../node_modules/@chakra-ui/hooks/src/use-outside-click.ts","../node_modules/@chakra-ui/popover/src/popover-arrow.tsx","components/AddressPill/AddressPillIcon.tsx","components/AddressPill/AddressPillText.tsx","components/AddressPill/useAddressKind.ts","components/AddressPill/AddressPill.tsx","views/batch/OperationRecipient.tsx","views/batch/tokenTitle.ts","utils/token/utils.ts","views/batch/OperationView.tsx","components/AccountTile/AccountTileIcon.tsx","views/home/SelectedAccountContext.ts","components/AccountTile/AccountTile.tsx","components/ConfirmationModal.tsx","components/SendFlow/BatchModalBody.tsx","components/SendFlow/Batch/SignPage.tsx","views/batch/BatchView.tsx","utils/helpers.ts","components/CSVFileUploader/utils.ts","components/CSVFileUploader/CSVFileUploadForm.tsx","components/CSVFileUploader/index.tsx","views/batch/BatchPage.tsx","../node_modules/@chakra-ui/layout/src/grid.tsx","../node_modules/@chakra-ui/layout/src/grid-item.tsx","components/ClickableCard.tsx","views/help/HelpView.tsx","../node_modules/@chakra-ui/modal/src/drawer.tsx","../node_modules/@chakra-ui/transition/src/slide.tsx","../node_modules/@chakra-ui/modal/src/drawer-content.tsx","views/home/AccountGroupPopover.tsx","../node_modules/@chakra-ui/layout/src/stack/stack-item.tsx","../node_modules/@chakra-ui/layout/src/stack/stack.tsx","../node_modules/@chakra-ui/layout/src/stack/stack.utils.tsx","../node_modules/@chakra-ui/layout/src/stack/v-stack.tsx","components/CircleIcon.tsx","components/Onboarding/ModalContentWrapper.tsx","components/Onboarding/masterPassword/password/EnterPassword.tsx","components/Onboarding/nameAccount/NameAccountDisplay.tsx","views/home/DeriveAccountDisplay.tsx.tsx","components/NestedScroll.tsx","components/Onboarding/nameAccount/NameAccount.tsx","components/Onboarding/connectOptions/ConnectOptions.tsx","utils/account/derivationPathUtils.ts","utils/account/makeMnemonicAccount.ts","utils/mnemonic.ts","utils/redux/thunks/secretKeyAccount.ts","utils/hooks/setAccountDataHooks.ts","components/Onboarding/connectOrCreate/ConnectOrCreate.tsx","components/Select.tsx","components/Onboarding/derivationPath/DerivationPath.tsx","../node_modules/@chakra-ui/checkbox/src/checkbox-context.ts","../node_modules/@chakra-ui/checkbox/src/checkbox-icon.tsx","../node_modules/@chakra-ui/visually-hidden/src/visually-hidden.style.ts","../node_modules/@zag-js/dom-query/src/platform.ts","../node_modules/@zag-js/dom-query/src/index.ts","../node_modules/@zag-js/focus-visible/src/index.ts","../node_modules/@chakra-ui/checkbox/src/use-checkbox.ts","../node_modules/@chakra-ui/checkbox/src/checkbox.tsx","../node_modules/@chakra-ui/checkbox/src/use-initial-animation-state.tsx","components/Onboarding/eula/Eula.tsx","components/Onboarding/FakeAccount.tsx","components/Onboarding/masterPassword/password/EnterAndConfirmPassword.tsx","components/Onboarding/masterPassword/MasterPassword.tsx","components/Onboarding/notice/Notice.tsx","utils/redux/persistor.ts","components/Onboarding/restoreBackupFile/RestoreBackupFile.tsx","components/Onboarding/restoreBackupFile/utils.ts","components/Onboarding/restoreLedger/RestoreLedger.tsx","utils/ledger/pk.ts","../node_modules/@chakra-ui/icons/src/ChevronDown.tsx","../node_modules/@chakra-ui/select/src/select-field.tsx","../node_modules/@chakra-ui/select/src/select.tsx","../node_modules/utilities/object-utils/src/split.ts","components/MnemonicAutocomplete.tsx","components/Onboarding/restoreMnemonic/RestoreMnemonic.tsx","../node_modules/@chakra-ui/textarea/src/textarea.tsx","components/Onboarding/restoreSecretKey/RestoreSecretKey.tsx","../node_modules/@chakra-ui/layout/src/simple-grid.tsx","components/Onboarding/showSeedphrase/ShowSeedphrase.tsx","components/Onboarding/verifySeedphrase/VerifySeedphrase.tsx","components/Onboarding/useOnboardingModal.tsx","components/useStepHistory.tsx","components/SendFlow/MultisigAccount/SignTransactionFormPage.tsx","multisig/contract.ts","components/SendFlow/MultisigAccount/SelectApproversFormPage.tsx","../node_modules/react-hook-form/src/useFieldArray.ts","components/SendFlow/MultisigAccount/NameMultisigFormPage.tsx","views/home/AccountsList.tsx","views/home/DrawerTopButtons.tsx","../node_modules/@chakra-ui/clickable/src/use-clickable.ts","../node_modules/@chakra-ui/clickable/src/use-event-listeners.ts","../node_modules/@chakra-ui/tabs/src/use-tabs.ts","../node_modules/@chakra-ui/tabs/src/tabs.tsx","../node_modules/@chakra-ui/tabs/src/tab-list.tsx","../node_modules/@chakra-ui/tabs/src/tab-panels.tsx","../node_modules/@chakra-ui/tabs/src/tab-panel.tsx","../node_modules/date-fns/startOfDay.mjs","../node_modules/date-fns/differenceInCalendarDays.mjs","../node_modules/date-fns/constructFrom.mjs","../node_modules/date-fns/startOfYear.mjs","../node_modules/date-fns/getDayOfYear.mjs","../node_modules/date-fns/startOfWeek.mjs","../node_modules/date-fns/startOfISOWeek.mjs","../node_modules/date-fns/getISOWeekYear.mjs","../node_modules/date-fns/startOfISOWeekYear.mjs","../node_modules/date-fns/getISOWeek.mjs","../node_modules/date-fns/getWeekYear.mjs","../node_modules/date-fns/startOfWeekYear.mjs","../node_modules/date-fns/getWeek.mjs","../node_modules/date-fns/_lib/addLeadingZeros.mjs","../node_modules/date-fns/_lib/format/lightFormatters.mjs","../node_modules/date-fns/_lib/format/formatters.mjs","../node_modules/date-fns/_lib/format/longFormatters.mjs","../node_modules/date-fns/_lib/protectedTokens.mjs","../node_modules/date-fns/isDate.mjs","../node_modules/date-fns/isValid.mjs","../node_modules/date-fns/format.mjs","../node_modules/date-fns/formatRelative.mjs","components/SendFlow/Delegation/SignPage.tsx","components/SendFlow/Delegation/FormPage.tsx","components/SendFlow/Undelegation/SignPage.tsx","components/SendFlow/Undelegation/FormPage.tsx","components/AccountDrawer/AssetsPanel/DelegationDisplay.tsx","utils/hooks/delegationHooks.ts","components/AccountDrawer/AssetsPanel/MultisigPendingOperations/MultisigDecodedOperation.tsx","multisig/decode/schemas.ts","multisig/decode/UnrecognizedMichelsonError.ts","multisig/decode/decodeLambda.ts","components/AccountDrawer/AssetsPanel/MultisigPendingOperations/MultisigDecodedOperations.tsx","components/AccountDrawer/AssetsPanel/MultisigPendingOperations/MultisigActionButton.tsx","components/SendFlow/Multisig/SignPage.tsx","components/AccountDrawer/AssetsPanel/MultisigPendingOperations/MultisigSignerTile.tsx","components/AccountDrawer/AssetsPanel/MultisigPendingOperations/MultisigPendingOperation.tsx","components/AccountDrawer/AssetsPanel/MultisigPendingOperations/index.tsx","components/AccountDrawer/AssetsPanel/ViewAllLink.tsx","components/AccountDrawer/AssetsPanel/NFTsGrid.tsx","components/OperationTile/OperationTileContext.ts","components/OperationTile/Fee.tsx","components/OperationTile/OperationStatus.tsx","components/OperationTile/OperationTypeWrapper.tsx","../node_modules/date-fns/differenceInDays.mjs","components/OperationTile/Timestamp.tsx","components/OperationTile/TzktLink.tsx","components/OperationTile/useShowAddress.tsx","components/OperationTile/ContractCallTile.tsx","components/OperationTile/DelegationTile.tsx","components/OperationTile/OriginationTile.tsx","components/OperationTile/TransactionDirectionIcon.tsx","components/OperationTile/useIsOutgoingOperation.ts","components/OperationTile/TokenTransferTile.tsx","components/OperationTile/TransactionTile.tsx","components/OperationTile/OperationTile.tsx","components/AccountDrawer/AssetsPanel/OperationListDisplay.tsx","views/tokens/TokenNameWithIcon.tsx","components/AccountDrawer/AssetsPanel/TokenList.tsx","utils/tzkt/helpers.ts","views/operations/useGetOperations.tsx","../node_modules/@chakra-ui/tabs/src/tab.tsx","components/SmallTab.tsx","components/AccountDrawer/AssetsPanel/AssetsPanel.tsx","../node_modules/@chakra-ui/layout/src/wrap.tsx","components/AccountDrawer/MultisigApprovers.tsx","components/AccountDrawer/RenameAccountModal.tsx","utils/redux/thunks/renameAccount.ts","components/AccountDrawer/RenameRemoveMenuSwitch.tsx","components/TezRecapDisplay.tsx","components/AccountDrawer/AccountDrawerDisplay.tsx","types/Delegation.ts","components/ReceiveModal.tsx","components/AccountDrawer/index.tsx","views/nfts/drawer/AttributesAccordionItem.tsx","components/TruncatedTextWithTooltip.tsx","components/TzktLink.tsx","views/nfts/drawer/PropertiesAccordionItem.tsx","views/nfts/drawer/TagsSection.tsx","components/SendFlow/SendNFTRecapTile.tsx","components/SendFlow/NFT/SignPage.tsx","components/SendFlow/NFT/FormPage.tsx","views/nfts/NFTDrawerCard.tsx","views/nfts/NFTDrawerBody.tsx","views/home/AccountListWithDrawer.tsx","views/home/HomeView.tsx","views/nfts/SelectedNFTContext.ts","views/nfts/NFTCard.tsx","views/nfts/NFTGallery.tsx","../node_modules/@chakra-ui/menu/src/use-shortcut.ts","../node_modules/@chakra-ui/react-use-outside-click/src/index.ts","../node_modules/@chakra-ui/menu/src/use-menu.ts","../node_modules/@chakra-ui/menu/src/menu.tsx","../node_modules/@chakra-ui/menu/src/menu-button.tsx","../node_modules/@chakra-ui/menu/src/menu-list.tsx","../node_modules/@chakra-ui/menu/src/get-next-item-from-search.ts","../node_modules/@chakra-ui/menu/src/menu-command.tsx","../node_modules/@chakra-ui/menu/src/styled-menu-item.tsx","../node_modules/@chakra-ui/menu/src/menu-icon.tsx","../node_modules/@chakra-ui/menu/src/menu-item.tsx","components/AccountSelector/AccountListDisplay.tsx","components/useAccountsFilter.tsx","views/nfts/NftsView.tsx","views/operations/OperationsView.tsx","utils/beacon/BeaconPeers.tsx","views/settings/DAppsDrawerCard.tsx","views/settings/ErrorLogsDrawerCard.tsx","../node_modules/@chakra-ui/radio/src/use-radio-group.ts","../node_modules/@chakra-ui/radio/src/radio-group.tsx","../node_modules/@chakra-ui/radio/src/use-radio.ts","../node_modules/@chakra-ui/radio/src/radio.tsx","views/settings/network/UpsertNetworkModal.tsx","views/settings/network/NetworkSettingsDrawerBody.tsx","views/settings/network/NetworkSettingsDrawerCard.tsx","components/ChangePassword/ChangePasswordForm.tsx","components/Offboarding/OffboardingForm.tsx","views/settings/SettingsView.tsx","components/Offboarding/useOffboardingModal.tsx","components/TokenTile.tsx","components/SendFlow/Token/SignPage.tsx","components/SendFlow/Token/FormPage.tsx","views/tokens/AccountTokens.tsx","views/tokens/TokensPage.tsx","components/AppVersion.tsx","components/CollapseMenuButton/CollapseMenuButton.tsx","components/MakiLogo.tsx","components/NetworkSelector.tsx","components/UpdateAppButton.tsx","components/SideNavbar.tsx","components/CollapseMenuButton/useCollapseMenu.ts","views/withSideMenu.tsx","components/Slider.tsx","components/SliderItem.tsx","WelcomeScreen.tsx","Router.tsx","utils/useDeeplinkHandler.ts","index.tsx"],"sourcesContent":["// Register a service worker to serve assets from local cache.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\n// cached resources are updated in the background.\n\nvar isLocalhost = function () { return Boolean(\n window.location.hostname === \"localhost\" ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === \"[::1]\" ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\n ); };\n\nvar waitWindowLoad;\n// https://github.com/yyx990803/register-service-worker/pull/33#discussion_r394181861\nif (typeof window !== \"undefined\") {\n // Typically, a browser that supports `serviceWorker` should also have supported\n // `Promise`. But as this package can be used in environments without service\n // worker support (in that case it would do nothing), there's a chance that\n // `Promise` does not exist. So we must check for its existence first.\n if (typeof document !== \"undefined\" && (document.readyState === \"interactive\" || document.readyState === \"complete\")) {\n waitWindowLoad = Promise.resolve();\n } else if (typeof Promise !== \"undefined\") {\n waitWindowLoad = new Promise(function (resolve) { return window.addEventListener(\"load\", resolve); });\n } else {\n waitWindowLoad = { then: function (cb) { return window.addEventListener(\"load\", cb); } };\n }\n}\n\nexports.register = function register(swUrl, hooks) {\n if ( hooks === void 0 ) hooks = {};\n\n var registrationOptions = hooks.registrationOptions; if ( registrationOptions === void 0 ) registrationOptions = {};\n delete hooks.registrationOptions;\n\n var emit = function (hook) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n if (hooks && hooks[hook]) {\n hooks[hook].apply(hooks, args);\n }\n };\n\n if (\"serviceWorker\" in navigator) {\n waitWindowLoad.then(function () {\n if (isLocalhost()) {\n // This is running on localhost. Lets check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, emit, registrationOptions);\n navigator.serviceWorker.ready.then(function (registration) {\n emit(\"ready\", registration);\n });\n } else {\n // Is not local host. Just register service worker\n registerValidSW(swUrl, emit, registrationOptions);\n navigator.serviceWorker.ready.then(function (registration) {\n emit(\"ready\", registration);\n });\n }\n });\n }\n}\n\nfunction handleError(emit, error) {\n if (!navigator.onLine) {\n emit(\"offline\");\n }\n emit(\"error\", error);\n}\n\nfunction registerValidSW(swUrl, emit, registrationOptions) {\n navigator.serviceWorker\n .register(swUrl, registrationOptions)\n .then(function (registration) {\n emit(\"registered\", registration);\n if (registration.waiting) {\n emit(\"updated\", registration);\n return;\n }\n registration.onupdatefound = function () {\n emit(\"updatefound\", registration);\n var installingWorker = registration.installing;\n installingWorker.onstatechange = function () {\n if (installingWorker.state === \"installed\") {\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and\n // the fresh content will have been added to the cache.\n // It's the perfect time to display a \"New content is\n // available; please refresh.\" message in your web app.\n emit(\"updated\", registration);\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n emit(\"cached\", registration);\n }\n }\n };\n };\n })\n .catch(function (error) { return handleError(emit, error); });\n}\n\nfunction checkValidServiceWorker(swUrl, emit, registrationOptions) {\n // Check if the service worker can be found.\n fetch(swUrl)\n .then(function (response) {\n // Ensure service worker exists, and that we really are getting a JS file.\n if (response.status === 404) {\n // No service worker found.\n emit(\"error\", new Error((\"Service worker not found at \" + swUrl)));\n unregister();\n } else if (response.headers.get(\"content-type\").indexOf(\"javascript\") === -1) {\n emit(\"error\", new Error(\"Expected \" + swUrl + \" to have javascript content-type, \" + \"but received \" + (response.headers.get(\"content-type\"))));\n unregister();\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, emit, registrationOptions);\n }\n })\n .catch(function (error) { return handleError(emit, error); });\n}\n\nexports.unregister = function unregister() {\n if (\"serviceWorker\" in navigator) {\n navigator.serviceWorker.ready.then(function (registration) {\n registration.unregister();\n });\n }\n}\n","const ANY = Symbol('SemVer ANY')\n// hoisted class for cyclic dependency\nclass Comparator {\n static get ANY () {\n return ANY\n }\n\n constructor (comp, options) {\n options = parseOptions(options)\n\n if (comp instanceof Comparator) {\n if (comp.loose === !!options.loose) {\n return comp\n } else {\n comp = comp.value\n }\n }\n\n comp = comp.trim().split(/\\s+/).join(' ')\n debug('comparator', comp, options)\n this.options = options\n this.loose = !!options.loose\n this.parse(comp)\n\n if (this.semver === ANY) {\n this.value = ''\n } else {\n this.value = this.operator + this.semver.version\n }\n\n debug('comp', this)\n }\n\n parse (comp) {\n const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]\n const m = comp.match(r)\n\n if (!m) {\n throw new TypeError(`Invalid comparator: ${comp}`)\n }\n\n this.operator = m[1] !== undefined ? m[1] : ''\n if (this.operator === '=') {\n this.operator = ''\n }\n\n // if it literally is just '>' or '' then allow anything.\n if (!m[2]) {\n this.semver = ANY\n } else {\n this.semver = new SemVer(m[2], this.options.loose)\n }\n }\n\n toString () {\n return this.value\n }\n\n test (version) {\n debug('Comparator.test', version, this.options.loose)\n\n if (this.semver === ANY || version === ANY) {\n return true\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n return cmp(version, this.operator, this.semver, this.options)\n }\n\n intersects (comp, options) {\n if (!(comp instanceof Comparator)) {\n throw new TypeError('a Comparator is required')\n }\n\n if (this.operator === '') {\n if (this.value === '') {\n return true\n }\n return new Range(comp.value, options).test(this.value)\n } else if (comp.operator === '') {\n if (comp.value === '') {\n return true\n }\n return new Range(this.value, options).test(comp.semver)\n }\n\n options = parseOptions(options)\n\n // Special cases where nothing can possibly be lower\n if (options.includePrerelease &&\n (this.value === '<0.0.0-0' || comp.value === '<0.0.0-0')) {\n return false\n }\n if (!options.includePrerelease &&\n (this.value.startsWith('<0.0.0') || comp.value.startsWith('<0.0.0'))) {\n return false\n }\n\n // Same direction increasing (> or >=)\n if (this.operator.startsWith('>') && comp.operator.startsWith('>')) {\n return true\n }\n // Same direction decreasing (< or <=)\n if (this.operator.startsWith('<') && comp.operator.startsWith('<')) {\n return true\n }\n // same SemVer and both sides are inclusive (<= or >=)\n if (\n (this.semver.version === comp.semver.version) &&\n this.operator.includes('=') && comp.operator.includes('=')) {\n return true\n }\n // opposite directions less than\n if (cmp(this.semver, '<', comp.semver, options) &&\n this.operator.startsWith('>') && comp.operator.startsWith('<')) {\n return true\n }\n // opposite directions greater than\n if (cmp(this.semver, '>', comp.semver, options) &&\n this.operator.startsWith('<') && comp.operator.startsWith('>')) {\n return true\n }\n return false\n }\n}\n\nmodule.exports = Comparator\n\nconst parseOptions = require('../internal/parse-options')\nconst { safeRe: re, t } = require('../internal/re')\nconst cmp = require('../functions/cmp')\nconst debug = require('../internal/debug')\nconst SemVer = require('./semver')\nconst Range = require('./range')\n","// hoisted class for cyclic dependency\nclass Range {\n constructor (range, options) {\n options = parseOptions(options)\n\n if (range instanceof Range) {\n if (\n range.loose === !!options.loose &&\n range.includePrerelease === !!options.includePrerelease\n ) {\n return range\n } else {\n return new Range(range.raw, options)\n }\n }\n\n if (range instanceof Comparator) {\n // just put it in the set and return\n this.raw = range.value\n this.set = [[range]]\n this.format()\n return this\n }\n\n this.options = options\n this.loose = !!options.loose\n this.includePrerelease = !!options.includePrerelease\n\n // First reduce all whitespace as much as possible so we do not have to rely\n // on potentially slow regexes like \\s*. This is then stored and used for\n // future error messages as well.\n this.raw = range\n .trim()\n .split(/\\s+/)\n .join(' ')\n\n // First, split on ||\n this.set = this.raw\n .split('||')\n // map the range to a 2d array of comparators\n .map(r => this.parseRange(r.trim()))\n // throw out any comparator lists that are empty\n // this generally means that it was not a valid range, which is allowed\n // in loose mode, but will still throw if the WHOLE range is invalid.\n .filter(c => c.length)\n\n if (!this.set.length) {\n throw new TypeError(`Invalid SemVer Range: ${this.raw}`)\n }\n\n // if we have any that are not the null set, throw out null sets.\n if (this.set.length > 1) {\n // keep the first one, in case they're all null sets\n const first = this.set[0]\n this.set = this.set.filter(c => !isNullSet(c[0]))\n if (this.set.length === 0) {\n this.set = [first]\n } else if (this.set.length > 1) {\n // if we have any that are *, then the range is just *\n for (const c of this.set) {\n if (c.length === 1 && isAny(c[0])) {\n this.set = [c]\n break\n }\n }\n }\n }\n\n this.format()\n }\n\n format () {\n this.range = this.set\n .map((comps) => comps.join(' ').trim())\n .join('||')\n .trim()\n return this.range\n }\n\n toString () {\n return this.range\n }\n\n parseRange (range) {\n // memoize range parsing for performance.\n // this is a very hot path, and fully deterministic.\n const memoOpts =\n (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) |\n (this.options.loose && FLAG_LOOSE)\n const memoKey = memoOpts + ':' + range\n const cached = cache.get(memoKey)\n if (cached) {\n return cached\n }\n\n const loose = this.options.loose\n // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`\n const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]\n range = range.replace(hr, hyphenReplace(this.options.includePrerelease))\n debug('hyphen replace', range)\n\n // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`\n range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace)\n debug('comparator trim', range)\n\n // `~ 1.2.3` => `~1.2.3`\n range = range.replace(re[t.TILDETRIM], tildeTrimReplace)\n debug('tilde trim', range)\n\n // `^ 1.2.3` => `^1.2.3`\n range = range.replace(re[t.CARETTRIM], caretTrimReplace)\n debug('caret trim', range)\n\n // At this point, the range is completely trimmed and\n // ready to be split into comparators.\n\n let rangeList = range\n .split(' ')\n .map(comp => parseComparator(comp, this.options))\n .join(' ')\n .split(/\\s+/)\n // >=0.0.0 is equivalent to *\n .map(comp => replaceGTE0(comp, this.options))\n\n if (loose) {\n // in loose mode, throw out any that are not valid comparators\n rangeList = rangeList.filter(comp => {\n debug('loose invalid filter', comp, this.options)\n return !!comp.match(re[t.COMPARATORLOOSE])\n })\n }\n debug('range list', rangeList)\n\n // if any comparators are the null set, then replace with JUST null set\n // if more than one comparator, remove any * comparators\n // also, don't include the same comparator more than once\n const rangeMap = new Map()\n const comparators = rangeList.map(comp => new Comparator(comp, this.options))\n for (const comp of comparators) {\n if (isNullSet(comp)) {\n return [comp]\n }\n rangeMap.set(comp.value, comp)\n }\n if (rangeMap.size > 1 && rangeMap.has('')) {\n rangeMap.delete('')\n }\n\n const result = [...rangeMap.values()]\n cache.set(memoKey, result)\n return result\n }\n\n intersects (range, options) {\n if (!(range instanceof Range)) {\n throw new TypeError('a Range is required')\n }\n\n return this.set.some((thisComparators) => {\n return (\n isSatisfiable(thisComparators, options) &&\n range.set.some((rangeComparators) => {\n return (\n isSatisfiable(rangeComparators, options) &&\n thisComparators.every((thisComparator) => {\n return rangeComparators.every((rangeComparator) => {\n return thisComparator.intersects(rangeComparator, options)\n })\n })\n )\n })\n )\n })\n }\n\n // if ANY of the sets match ALL of its comparators, then pass\n test (version) {\n if (!version) {\n return false\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n for (let i = 0; i < this.set.length; i++) {\n if (testSet(this.set[i], version, this.options)) {\n return true\n }\n }\n return false\n }\n}\n\nmodule.exports = Range\n\nconst LRU = require('lru-cache')\nconst cache = new LRU({ max: 1000 })\n\nconst parseOptions = require('../internal/parse-options')\nconst Comparator = require('./comparator')\nconst debug = require('../internal/debug')\nconst SemVer = require('./semver')\nconst {\n safeRe: re,\n t,\n comparatorTrimReplace,\n tildeTrimReplace,\n caretTrimReplace,\n} = require('../internal/re')\nconst { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require('../internal/constants')\n\nconst isNullSet = c => c.value === '<0.0.0-0'\nconst isAny = c => c.value === ''\n\n// take a set of comparators and determine whether there\n// exists a version which can satisfy it\nconst isSatisfiable = (comparators, options) => {\n let result = true\n const remainingComparators = comparators.slice()\n let testComparator = remainingComparators.pop()\n\n while (result && remainingComparators.length) {\n result = remainingComparators.every((otherComparator) => {\n return testComparator.intersects(otherComparator, options)\n })\n\n testComparator = remainingComparators.pop()\n }\n\n return result\n}\n\n// comprised of xranges, tildes, stars, and gtlt's at this point.\n// already replaced the hyphen ranges\n// turn into a set of JUST comparators.\nconst parseComparator = (comp, options) => {\n debug('comp', comp, options)\n comp = replaceCarets(comp, options)\n debug('caret', comp)\n comp = replaceTildes(comp, options)\n debug('tildes', comp)\n comp = replaceXRanges(comp, options)\n debug('xrange', comp)\n comp = replaceStars(comp, options)\n debug('stars', comp)\n return comp\n}\n\nconst isX = id => !id || id.toLowerCase() === 'x' || id === '*'\n\n// ~, ~> --> * (any, kinda silly)\n// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0-0\n// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0-0\n// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0-0\n// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0\n// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0\n// ~0.0.1 --> >=0.0.1 <0.1.0-0\nconst replaceTildes = (comp, options) => {\n return comp\n .trim()\n .split(/\\s+/)\n .map((c) => replaceTilde(c, options))\n .join(' ')\n}\n\nconst replaceTilde = (comp, options) => {\n const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]\n return comp.replace(r, (_, M, m, p, pr) => {\n debug('tilde', comp, _, M, m, p, pr)\n let ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = `>=${M}.0.0 <${+M + 1}.0.0-0`\n } else if (isX(p)) {\n // ~1.2 == >=1.2.0 <1.3.0-0\n ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`\n } else if (pr) {\n debug('replaceTilde pr', pr)\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${+m + 1}.0-0`\n } else {\n // ~1.2.3 == >=1.2.3 <1.3.0-0\n ret = `>=${M}.${m}.${p\n } <${M}.${+m + 1}.0-0`\n }\n\n debug('tilde return', ret)\n return ret\n })\n}\n\n// ^ --> * (any, kinda silly)\n// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0-0\n// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0-0\n// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0-0\n// ^1.2.3 --> >=1.2.3 <2.0.0-0\n// ^1.2.0 --> >=1.2.0 <2.0.0-0\n// ^0.0.1 --> >=0.0.1 <0.0.2-0\n// ^0.1.0 --> >=0.1.0 <0.2.0-0\nconst replaceCarets = (comp, options) => {\n return comp\n .trim()\n .split(/\\s+/)\n .map((c) => replaceCaret(c, options))\n .join(' ')\n}\n\nconst replaceCaret = (comp, options) => {\n debug('caret', comp, options)\n const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]\n const z = options.includePrerelease ? '-0' : ''\n return comp.replace(r, (_, M, m, p, pr) => {\n debug('caret', comp, _, M, m, p, pr)\n let ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`\n } else if (isX(p)) {\n if (M === '0') {\n ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`\n } else {\n ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`\n }\n } else if (pr) {\n debug('replaceCaret pr', pr)\n if (M === '0') {\n if (m === '0') {\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${m}.${+p + 1}-0`\n } else {\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${+m + 1}.0-0`\n }\n } else {\n ret = `>=${M}.${m}.${p}-${pr\n } <${+M + 1}.0.0-0`\n }\n } else {\n debug('no pr')\n if (M === '0') {\n if (m === '0') {\n ret = `>=${M}.${m}.${p\n }${z} <${M}.${m}.${+p + 1}-0`\n } else {\n ret = `>=${M}.${m}.${p\n }${z} <${M}.${+m + 1}.0-0`\n }\n } else {\n ret = `>=${M}.${m}.${p\n } <${+M + 1}.0.0-0`\n }\n }\n\n debug('caret return', ret)\n return ret\n })\n}\n\nconst replaceXRanges = (comp, options) => {\n debug('replaceXRanges', comp, options)\n return comp\n .split(/\\s+/)\n .map((c) => replaceXRange(c, options))\n .join(' ')\n}\n\nconst replaceXRange = (comp, options) => {\n comp = comp.trim()\n const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]\n return comp.replace(r, (ret, gtlt, M, m, p, pr) => {\n debug('xRange', comp, ret, gtlt, M, m, p, pr)\n const xM = isX(M)\n const xm = xM || isX(m)\n const xp = xm || isX(p)\n const anyX = xp\n\n if (gtlt === '=' && anyX) {\n gtlt = ''\n }\n\n // if we're including prereleases in the match, then we need\n // to fix this to -0, the lowest possible prerelease value\n pr = options.includePrerelease ? '-0' : ''\n\n if (xM) {\n if (gtlt === '>' || gtlt === '<') {\n // nothing is allowed\n ret = '<0.0.0-0'\n } else {\n // nothing is forbidden\n ret = '*'\n }\n } else if (gtlt && anyX) {\n // we know patch is an x, because we have any x at all.\n // replace X with 0\n if (xm) {\n m = 0\n }\n p = 0\n\n if (gtlt === '>') {\n // >1 => >=2.0.0\n // >1.2 => >=1.3.0\n gtlt = '>='\n if (xm) {\n M = +M + 1\n m = 0\n p = 0\n } else {\n m = +m + 1\n p = 0\n }\n } else if (gtlt === '<=') {\n // <=0.7.x is actually <0.8.0, since any 0.7.x should\n // pass. Similarly, <=7.x is actually <8.0.0, etc.\n gtlt = '<'\n if (xm) {\n M = +M + 1\n } else {\n m = +m + 1\n }\n }\n\n if (gtlt === '<') {\n pr = '-0'\n }\n\n ret = `${gtlt + M}.${m}.${p}${pr}`\n } else if (xm) {\n ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`\n } else if (xp) {\n ret = `>=${M}.${m}.0${pr\n } <${M}.${+m + 1}.0-0`\n }\n\n debug('xRange return', ret)\n\n return ret\n })\n}\n\n// Because * is AND-ed with everything else in the comparator,\n// and '' means \"any version\", just remove the *s entirely.\nconst replaceStars = (comp, options) => {\n debug('replaceStars', comp, options)\n // Looseness is ignored here. star is always as loose as it gets!\n return comp\n .trim()\n .replace(re[t.STAR], '')\n}\n\nconst replaceGTE0 = (comp, options) => {\n debug('replaceGTE0', comp, options)\n return comp\n .trim()\n .replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '')\n}\n\n// This function is passed to string.replace(re[t.HYPHENRANGE])\n// M, m, patch, prerelease, build\n// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5\n// 1.2.3 - 3.4 => >=1.2.0 <3.5.0-0 Any 3.4.x will do\n// 1.2 - 3.4 => >=1.2.0 <3.5.0-0\nconst hyphenReplace = incPr => ($0,\n from, fM, fm, fp, fpr, fb,\n to, tM, tm, tp, tpr, tb) => {\n if (isX(fM)) {\n from = ''\n } else if (isX(fm)) {\n from = `>=${fM}.0.0${incPr ? '-0' : ''}`\n } else if (isX(fp)) {\n from = `>=${fM}.${fm}.0${incPr ? '-0' : ''}`\n } else if (fpr) {\n from = `>=${from}`\n } else {\n from = `>=${from}${incPr ? '-0' : ''}`\n }\n\n if (isX(tM)) {\n to = ''\n } else if (isX(tm)) {\n to = `<${+tM + 1}.0.0-0`\n } else if (isX(tp)) {\n to = `<${tM}.${+tm + 1}.0-0`\n } else if (tpr) {\n to = `<=${tM}.${tm}.${tp}-${tpr}`\n } else if (incPr) {\n to = `<${tM}.${tm}.${+tp + 1}-0`\n } else {\n to = `<=${to}`\n }\n\n return `${from} ${to}`.trim()\n}\n\nconst testSet = (set, version, options) => {\n for (let i = 0; i < set.length; i++) {\n if (!set[i].test(version)) {\n return false\n }\n }\n\n if (version.prerelease.length && !options.includePrerelease) {\n // Find the set of versions that are allowed to have prereleases\n // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0\n // That should allow `1.2.3-pr.2` to pass.\n // However, `1.2.4-alpha.notready` should NOT be allowed,\n // even though it's within the range set by the comparators.\n for (let i = 0; i < set.length; i++) {\n debug(set[i].semver)\n if (set[i].semver === Comparator.ANY) {\n continue\n }\n\n if (set[i].semver.prerelease.length > 0) {\n const allowed = set[i].semver\n if (allowed.major === version.major &&\n allowed.minor === version.minor &&\n allowed.patch === version.patch) {\n return true\n }\n }\n }\n\n // Version has a -pre, but it's not one of the ones we like.\n return false\n }\n\n return true\n}\n","const debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { safeRe: re, t } = require('../internal/re')\n\nconst parseOptions = require('../internal/parse-options')\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n constructor (version, options) {\n options = parseOptions(options)\n\n if (version instanceof SemVer) {\n if (version.loose === !!options.loose &&\n version.includePrerelease === !!options.includePrerelease) {\n return version\n } else {\n version = version.version\n }\n } else if (typeof version !== 'string') {\n throw new TypeError(`Invalid version. Must be a string. Got type \"${typeof version}\".`)\n }\n\n if (version.length > MAX_LENGTH) {\n throw new TypeError(\n `version is longer than ${MAX_LENGTH} characters`\n )\n }\n\n debug('SemVer', version, options)\n this.options = options\n this.loose = !!options.loose\n // this isn't actually relevant for versions, but keep it so that we\n // don't run into trouble passing this.options around.\n this.includePrerelease = !!options.includePrerelease\n\n const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])\n\n if (!m) {\n throw new TypeError(`Invalid Version: ${version}`)\n }\n\n this.raw = version\n\n // these are actually numbers\n this.major = +m[1]\n this.minor = +m[2]\n this.patch = +m[3]\n\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError('Invalid major version')\n }\n\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError('Invalid minor version')\n }\n\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError('Invalid patch version')\n }\n\n // numberify any prerelease numeric ids\n if (!m[4]) {\n this.prerelease = []\n } else {\n this.prerelease = m[4].split('.').map((id) => {\n if (/^[0-9]+$/.test(id)) {\n const num = +id\n if (num >= 0 && num < MAX_SAFE_INTEGER) {\n return num\n }\n }\n return id\n })\n }\n\n this.build = m[5] ? m[5].split('.') : []\n this.format()\n }\n\n format () {\n this.version = `${this.major}.${this.minor}.${this.patch}`\n if (this.prerelease.length) {\n this.version += `-${this.prerelease.join('.')}`\n }\n return this.version\n }\n\n toString () {\n return this.version\n }\n\n compare (other) {\n debug('SemVer.compare', this.version, this.options, other)\n if (!(other instanceof SemVer)) {\n if (typeof other === 'string' && other === this.version) {\n return 0\n }\n other = new SemVer(other, this.options)\n }\n\n if (other.version === this.version) {\n return 0\n }\n\n return this.compareMain(other) || this.comparePre(other)\n }\n\n compareMain (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n return (\n compareIdentifiers(this.major, other.major) ||\n compareIdentifiers(this.minor, other.minor) ||\n compareIdentifiers(this.patch, other.patch)\n )\n }\n\n comparePre (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n // NOT having a prerelease is > having one\n if (this.prerelease.length && !other.prerelease.length) {\n return -1\n } else if (!this.prerelease.length && other.prerelease.length) {\n return 1\n } else if (!this.prerelease.length && !other.prerelease.length) {\n return 0\n }\n\n let i = 0\n do {\n const a = this.prerelease[i]\n const b = other.prerelease[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n compareBuild (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n let i = 0\n do {\n const a = this.build[i]\n const b = other.build[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n // preminor will bump the version up to the next minor release, and immediately\n // down to pre-release. premajor and prepatch work the same way.\n inc (release, identifier, identifierBase) {\n switch (release) {\n case 'premajor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor = 0\n this.major++\n this.inc('pre', identifier, identifierBase)\n break\n case 'preminor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor++\n this.inc('pre', identifier, identifierBase)\n break\n case 'prepatch':\n // If this is already a prerelease, it will bump to the next version\n // drop any prereleases that might already exist, since they are not\n // relevant at this point.\n this.prerelease.length = 0\n this.inc('patch', identifier, identifierBase)\n this.inc('pre', identifier, identifierBase)\n break\n // If the input is a non-prerelease version, this acts the same as\n // prepatch.\n case 'prerelease':\n if (this.prerelease.length === 0) {\n this.inc('patch', identifier, identifierBase)\n }\n this.inc('pre', identifier, identifierBase)\n break\n\n case 'major':\n // If this is a pre-major version, bump up to the same major version.\n // Otherwise increment major.\n // 1.0.0-5 bumps to 1.0.0\n // 1.1.0 bumps to 2.0.0\n if (\n this.minor !== 0 ||\n this.patch !== 0 ||\n this.prerelease.length === 0\n ) {\n this.major++\n }\n this.minor = 0\n this.patch = 0\n this.prerelease = []\n break\n case 'minor':\n // If this is a pre-minor version, bump up to the same minor version.\n // Otherwise increment minor.\n // 1.2.0-5 bumps to 1.2.0\n // 1.2.1 bumps to 1.3.0\n if (this.patch !== 0 || this.prerelease.length === 0) {\n this.minor++\n }\n this.patch = 0\n this.prerelease = []\n break\n case 'patch':\n // If this is not a pre-release version, it will increment the patch.\n // If it is a pre-release it will bump up to the same patch version.\n // 1.2.0-5 patches to 1.2.0\n // 1.2.0 patches to 1.2.1\n if (this.prerelease.length === 0) {\n this.patch++\n }\n this.prerelease = []\n break\n // This probably shouldn't be used publicly.\n // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.\n case 'pre': {\n const base = Number(identifierBase) ? 1 : 0\n\n if (!identifier && identifierBase === false) {\n throw new Error('invalid increment argument: identifier is empty')\n }\n\n if (this.prerelease.length === 0) {\n this.prerelease = [base]\n } else {\n let i = this.prerelease.length\n while (--i >= 0) {\n if (typeof this.prerelease[i] === 'number') {\n this.prerelease[i]++\n i = -2\n }\n }\n if (i === -1) {\n // didn't increment anything\n if (identifier === this.prerelease.join('.') && identifierBase === false) {\n throw new Error('invalid increment argument: identifier already exists')\n }\n this.prerelease.push(base)\n }\n }\n if (identifier) {\n // 1.2.0-beta.1 bumps to 1.2.0-beta.2,\n // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0\n let prerelease = [identifier, base]\n if (identifierBase === false) {\n prerelease = [identifier]\n }\n if (compareIdentifiers(this.prerelease[0], identifier) === 0) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = prerelease\n }\n } else {\n this.prerelease = prerelease\n }\n }\n break\n }\n default:\n throw new Error(`invalid increment argument: ${release}`)\n }\n this.raw = this.format()\n if (this.build.length) {\n this.raw += `+${this.build.join('.')}`\n }\n return this\n }\n}\n\nmodule.exports = SemVer\n","const parse = require('./parse')\nconst clean = (version, options) => {\n const s = parse(version.trim().replace(/^[=v]+/, ''), options)\n return s ? s.version : null\n}\nmodule.exports = clean\n","const eq = require('./eq')\nconst neq = require('./neq')\nconst gt = require('./gt')\nconst gte = require('./gte')\nconst lt = require('./lt')\nconst lte = require('./lte')\n\nconst cmp = (a, op, b, loose) => {\n switch (op) {\n case '===':\n if (typeof a === 'object') {\n a = a.version\n }\n if (typeof b === 'object') {\n b = b.version\n }\n return a === b\n\n case '!==':\n if (typeof a === 'object') {\n a = a.version\n }\n if (typeof b === 'object') {\n b = b.version\n }\n return a !== b\n\n case '':\n case '=':\n case '==':\n return eq(a, b, loose)\n\n case '!=':\n return neq(a, b, loose)\n\n case '>':\n return gt(a, b, loose)\n\n case '>=':\n return gte(a, b, loose)\n\n case '<':\n return lt(a, b, loose)\n\n case '<=':\n return lte(a, b, loose)\n\n default:\n throw new TypeError(`Invalid operator: ${op}`)\n }\n}\nmodule.exports = cmp\n","const SemVer = require('../classes/semver')\nconst parse = require('./parse')\nconst { safeRe: re, t } = require('../internal/re')\n\nconst coerce = (version, options) => {\n if (version instanceof SemVer) {\n return version\n }\n\n if (typeof version === 'number') {\n version = String(version)\n }\n\n if (typeof version !== 'string') {\n return null\n }\n\n options = options || {}\n\n let match = null\n if (!options.rtl) {\n match = version.match(re[t.COERCE])\n } else {\n // Find the right-most coercible string that does not share\n // a terminus with a more left-ward coercible string.\n // Eg, '1.2.3.4' wants to coerce '2.3.4', not '3.4' or '4'\n //\n // Walk through the string checking with a /g regexp\n // Manually set the index so as to pick up overlapping matches.\n // Stop when we get a match that ends at the string end, since no\n // coercible string can be more right-ward without the same terminus.\n let next\n while ((next = re[t.COERCERTL].exec(version)) &&\n (!match || match.index + match[0].length !== version.length)\n ) {\n if (!match ||\n next.index + next[0].length !== match.index + match[0].length) {\n match = next\n }\n re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length\n }\n // leave it in a clean state\n re[t.COERCERTL].lastIndex = -1\n }\n\n if (match === null) {\n return null\n }\n\n return parse(`${match[2]}.${match[3] || '0'}.${match[4] || '0'}`, options)\n}\nmodule.exports = coerce\n","const SemVer = require('../classes/semver')\nconst compareBuild = (a, b, loose) => {\n const versionA = new SemVer(a, loose)\n const versionB = new SemVer(b, loose)\n return versionA.compare(versionB) || versionA.compareBuild(versionB)\n}\nmodule.exports = compareBuild\n","const compare = require('./compare')\nconst compareLoose = (a, b) => compare(a, b, true)\nmodule.exports = compareLoose\n","const SemVer = require('../classes/semver')\nconst compare = (a, b, loose) =>\n new SemVer(a, loose).compare(new SemVer(b, loose))\n\nmodule.exports = compare\n","const parse = require('./parse.js')\n\nconst diff = (version1, version2) => {\n const v1 = parse(version1, null, true)\n const v2 = parse(version2, null, true)\n const comparison = v1.compare(v2)\n\n if (comparison === 0) {\n return null\n }\n\n const v1Higher = comparison > 0\n const highVersion = v1Higher ? v1 : v2\n const lowVersion = v1Higher ? v2 : v1\n const highHasPre = !!highVersion.prerelease.length\n const lowHasPre = !!lowVersion.prerelease.length\n\n if (lowHasPre && !highHasPre) {\n // Going from prerelease -> no prerelease requires some special casing\n\n // If the low version has only a major, then it will always be a major\n // Some examples:\n // 1.0.0-1 -> 1.0.0\n // 1.0.0-1 -> 1.1.1\n // 1.0.0-1 -> 2.0.0\n if (!lowVersion.patch && !lowVersion.minor) {\n return 'major'\n }\n\n // Otherwise it can be determined by checking the high version\n\n if (highVersion.patch) {\n // anything higher than a patch bump would result in the wrong version\n return 'patch'\n }\n\n if (highVersion.minor) {\n // anything higher than a minor bump would result in the wrong version\n return 'minor'\n }\n\n // bumping major/minor/patch all have same result\n return 'major'\n }\n\n // add the `pre` prefix if we are going to a prerelease version\n const prefix = highHasPre ? 'pre' : ''\n\n if (v1.major !== v2.major) {\n return prefix + 'major'\n }\n\n if (v1.minor !== v2.minor) {\n return prefix + 'minor'\n }\n\n if (v1.patch !== v2.patch) {\n return prefix + 'patch'\n }\n\n // high and low are preleases\n return 'prerelease'\n}\n\nmodule.exports = diff\n","const compare = require('./compare')\nconst eq = (a, b, loose) => compare(a, b, loose) === 0\nmodule.exports = eq\n","const compare = require('./compare')\nconst gt = (a, b, loose) => compare(a, b, loose) > 0\nmodule.exports = gt\n","const compare = require('./compare')\nconst gte = (a, b, loose) => compare(a, b, loose) >= 0\nmodule.exports = gte\n","const SemVer = require('../classes/semver')\n\nconst inc = (version, release, options, identifier, identifierBase) => {\n if (typeof (options) === 'string') {\n identifierBase = identifier\n identifier = options\n options = undefined\n }\n\n try {\n return new SemVer(\n version instanceof SemVer ? version.version : version,\n options\n ).inc(release, identifier, identifierBase).version\n } catch (er) {\n return null\n }\n}\nmodule.exports = inc\n","const compare = require('./compare')\nconst lt = (a, b, loose) => compare(a, b, loose) < 0\nmodule.exports = lt\n","const compare = require('./compare')\nconst lte = (a, b, loose) => compare(a, b, loose) <= 0\nmodule.exports = lte\n","const SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n","const SemVer = require('../classes/semver')\nconst minor = (a, loose) => new SemVer(a, loose).minor\nmodule.exports = minor\n","const compare = require('./compare')\nconst neq = (a, b, loose) => compare(a, b, loose) !== 0\nmodule.exports = neq\n","const SemVer = require('../classes/semver')\nconst parse = (version, options, throwErrors = false) => {\n if (version instanceof SemVer) {\n return version\n }\n try {\n return new SemVer(version, options)\n } catch (er) {\n if (!throwErrors) {\n return null\n }\n throw er\n }\n}\n\nmodule.exports = parse\n","const SemVer = require('../classes/semver')\nconst patch = (a, loose) => new SemVer(a, loose).patch\nmodule.exports = patch\n","const parse = require('./parse')\nconst prerelease = (version, options) => {\n const parsed = parse(version, options)\n return (parsed && parsed.prerelease.length) ? parsed.prerelease : null\n}\nmodule.exports = prerelease\n","const compare = require('./compare')\nconst rcompare = (a, b, loose) => compare(b, a, loose)\nmodule.exports = rcompare\n","const compareBuild = require('./compare-build')\nconst rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))\nmodule.exports = rsort\n","const Range = require('../classes/range')\nconst satisfies = (version, range, options) => {\n try {\n range = new Range(range, options)\n } catch (er) {\n return false\n }\n return range.test(version)\n}\nmodule.exports = satisfies\n","const compareBuild = require('./compare-build')\nconst sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))\nmodule.exports = sort\n","const parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\n","// just pre-load all the stuff that index.js lazily exports\nconst internalRe = require('./internal/re')\nconst constants = require('./internal/constants')\nconst SemVer = require('./classes/semver')\nconst identifiers = require('./internal/identifiers')\nconst parse = require('./functions/parse')\nconst valid = require('./functions/valid')\nconst clean = require('./functions/clean')\nconst inc = require('./functions/inc')\nconst diff = require('./functions/diff')\nconst major = require('./functions/major')\nconst minor = require('./functions/minor')\nconst patch = require('./functions/patch')\nconst prerelease = require('./functions/prerelease')\nconst compare = require('./functions/compare')\nconst rcompare = require('./functions/rcompare')\nconst compareLoose = require('./functions/compare-loose')\nconst compareBuild = require('./functions/compare-build')\nconst sort = require('./functions/sort')\nconst rsort = require('./functions/rsort')\nconst gt = require('./functions/gt')\nconst lt = require('./functions/lt')\nconst eq = require('./functions/eq')\nconst neq = require('./functions/neq')\nconst gte = require('./functions/gte')\nconst lte = require('./functions/lte')\nconst cmp = require('./functions/cmp')\nconst coerce = require('./functions/coerce')\nconst Comparator = require('./classes/comparator')\nconst Range = require('./classes/range')\nconst satisfies = require('./functions/satisfies')\nconst toComparators = require('./ranges/to-comparators')\nconst maxSatisfying = require('./ranges/max-satisfying')\nconst minSatisfying = require('./ranges/min-satisfying')\nconst minVersion = require('./ranges/min-version')\nconst validRange = require('./ranges/valid')\nconst outside = require('./ranges/outside')\nconst gtr = require('./ranges/gtr')\nconst ltr = require('./ranges/ltr')\nconst intersects = require('./ranges/intersects')\nconst simplifyRange = require('./ranges/simplify')\nconst subset = require('./ranges/subset')\nmodule.exports = {\n parse,\n valid,\n clean,\n inc,\n diff,\n major,\n minor,\n patch,\n prerelease,\n compare,\n rcompare,\n compareLoose,\n compareBuild,\n sort,\n rsort,\n gt,\n lt,\n eq,\n neq,\n gte,\n lte,\n cmp,\n coerce,\n Comparator,\n Range,\n satisfies,\n toComparators,\n maxSatisfying,\n minSatisfying,\n minVersion,\n validRange,\n outside,\n gtr,\n ltr,\n intersects,\n simplifyRange,\n subset,\n SemVer,\n re: internalRe.re,\n src: internalRe.src,\n tokens: internalRe.t,\n SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION,\n RELEASE_TYPES: constants.RELEASE_TYPES,\n compareIdentifiers: identifiers.compareIdentifiers,\n rcompareIdentifiers: identifiers.rcompareIdentifiers,\n}\n","// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nconst SEMVER_SPEC_VERSION = '2.0.0'\n\nconst MAX_LENGTH = 256\nconst MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n/* istanbul ignore next */ 9007199254740991\n\n// Max safe segment length for coercion.\nconst MAX_SAFE_COMPONENT_LENGTH = 16\n\n// Max safe length for a build identifier. The max length minus 6 characters for\n// the shortest version with a build 0.0.0+BUILD.\nconst MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6\n\nconst RELEASE_TYPES = [\n 'major',\n 'premajor',\n 'minor',\n 'preminor',\n 'patch',\n 'prepatch',\n 'prerelease',\n]\n\nmodule.exports = {\n MAX_LENGTH,\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_SAFE_INTEGER,\n RELEASE_TYPES,\n SEMVER_SPEC_VERSION,\n FLAG_INCLUDE_PRERELEASE: 0b001,\n FLAG_LOOSE: 0b010,\n}\n","const debug = (\n typeof process === 'object' &&\n process.env &&\n process.env.NODE_DEBUG &&\n /\\bsemver\\b/i.test(process.env.NODE_DEBUG)\n) ? (...args) => console.error('SEMVER', ...args)\n : () => {}\n\nmodule.exports = debug\n","const numeric = /^[0-9]+$/\nconst compareIdentifiers = (a, b) => {\n const anum = numeric.test(a)\n const bnum = numeric.test(b)\n\n if (anum && bnum) {\n a = +a\n b = +b\n }\n\n return a === b ? 0\n : (anum && !bnum) ? -1\n : (bnum && !anum) ? 1\n : a < b ? -1\n : 1\n}\n\nconst rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)\n\nmodule.exports = {\n compareIdentifiers,\n rcompareIdentifiers,\n}\n","// parse out just the options we care about\nconst looseOption = Object.freeze({ loose: true })\nconst emptyOpts = Object.freeze({ })\nconst parseOptions = options => {\n if (!options) {\n return emptyOpts\n }\n\n if (typeof options !== 'object') {\n return looseOption\n }\n\n return options\n}\nmodule.exports = parseOptions\n","const {\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_LENGTH,\n} = require('./constants')\nconst debug = require('./debug')\nexports = module.exports = {}\n\n// The actual regexps go on exports.re\nconst re = exports.re = []\nconst safeRe = exports.safeRe = []\nconst src = exports.src = []\nconst t = exports.t = {}\nlet R = 0\n\nconst LETTERDASHNUMBER = '[a-zA-Z0-9-]'\n\n// Replace some greedy regex tokens to prevent regex dos issues. These regex are\n// used internally via the safeRe object since all inputs in this library get\n// normalized first to trim and collapse all extra whitespace. The original\n// regexes are exported for userland consumption and lower level usage. A\n// future breaking change could export the safer regex only with a note that\n// all input should have extra whitespace removed.\nconst safeRegexReplacements = [\n ['\\\\s', 1],\n ['\\\\d', MAX_LENGTH],\n [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH],\n]\n\nconst makeSafeRegex = (value) => {\n for (const [token, max] of safeRegexReplacements) {\n value = value\n .split(`${token}*`).join(`${token}{0,${max}}`)\n .split(`${token}+`).join(`${token}{1,${max}}`)\n }\n return value\n}\n\nconst createToken = (name, value, isGlobal) => {\n const safe = makeSafeRegex(value)\n const index = R++\n debug(name, index, value)\n t[name] = index\n src[index] = value\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined)\n safeRe[index] = new RegExp(safe, isGlobal ? 'g' : undefined)\n}\n\n// The following Regular Expressions can be used for tokenizing,\n// validating, and parsing SemVer version strings.\n\n// ## Numeric Identifier\n// A single `0`, or a non-zero digit followed by zero or more digits.\n\ncreateToken('NUMERICIDENTIFIER', '0|[1-9]\\\\d*')\ncreateToken('NUMERICIDENTIFIERLOOSE', '\\\\d+')\n\n// ## Non-numeric Identifier\n// Zero or more digits, followed by a letter or hyphen, and then zero or\n// more letters, digits, or hyphens.\n\ncreateToken('NONNUMERICIDENTIFIER', `\\\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`)\n\n// ## Main Version\n// Three dot-separated numeric identifiers.\n\ncreateToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})`)\n\n// ## Pre-release Version Identifier\n// A numeric identifier, or a non-numeric identifier.\n\ncreateToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER]\n}|${src[t.NONNUMERICIDENTIFIER]})`)\n\ncreateToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NUMERICIDENTIFIERLOOSE]\n}|${src[t.NONNUMERICIDENTIFIER]})`)\n\n// ## Pre-release Version\n// Hyphen, followed by one or more dot-separated pre-release version\n// identifiers.\n\ncreateToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIER]})*))`)\n\ncreateToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)\n\n// ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ncreateToken('BUILDIDENTIFIER', `${LETTERDASHNUMBER}+`)\n\n// ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ncreateToken('BUILD', `(?:\\\\+(${src[t.BUILDIDENTIFIER]\n}(?:\\\\.${src[t.BUILDIDENTIFIER]})*))`)\n\n// ## Full Version String\n// A main version, followed optionally by a pre-release version and\n// build metadata.\n\n// Note that the only major, minor, patch, and pre-release sections of\n// the version string are capturing groups. The build metadata is not a\n// capturing group, because it should not ever be used in version\n// comparison.\n\ncreateToken('FULLPLAIN', `v?${src[t.MAINVERSION]\n}${src[t.PRERELEASE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('FULL', `^${src[t.FULLPLAIN]}$`)\n\n// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.\n// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty\n// common in the npm registry.\ncreateToken('LOOSEPLAIN', `[v=\\\\s]*${src[t.MAINVERSIONLOOSE]\n}${src[t.PRERELEASELOOSE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)\n\ncreateToken('GTLT', '((?:<|>)?=?)')\n\n// Something like \"2.*\" or \"1.2.x\".\n// Note that \"x.x\" is a valid xRange identifer, meaning \"any version\"\n// Only the first item is strictly required.\ncreateToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\*`)\ncreateToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\\\*`)\n\ncreateToken('XRANGEPLAIN', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:${src[t.PRERELEASE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGEPLAINLOOSE', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:${src[t.PRERELEASELOOSE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAIN]}$`)\ncreateToken('XRANGELOOSE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Coercion.\n// Extract anything that could conceivably be a part of a valid semver\ncreateToken('COERCE', `${'(^|[^\\\\d])' +\n '(\\\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +\n `(?:$|[^\\\\d])`)\ncreateToken('COERCERTL', src[t.COERCE], true)\n\n// Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\ncreateToken('LONETILDE', '(?:~>?)')\n\ncreateToken('TILDETRIM', `(\\\\s*)${src[t.LONETILDE]}\\\\s+`, true)\nexports.tildeTrimReplace = '$1~'\n\ncreateToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\ncreateToken('LONECARET', '(?:\\\\^)')\n\ncreateToken('CARETTRIM', `(\\\\s*)${src[t.LONECARET]}\\\\s+`, true)\nexports.caretTrimReplace = '$1^'\n\ncreateToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\ncreateToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\\\s*(${src[t.LOOSEPLAIN]})$|^$`)\ncreateToken('COMPARATOR', `^${src[t.GTLT]}\\\\s*(${src[t.FULLPLAIN]})$|^$`)\n\n// An expression to strip any whitespace between the gtlt and the thing\n// it modifies, so that `> 1.2.3` ==> `>1.2.3`\ncreateToken('COMPARATORTRIM', `(\\\\s*)${src[t.GTLT]\n}\\\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)\nexports.comparatorTrimReplace = '$1$2$3'\n\n// Something like `1.2.3 - 1.2.4`\n// Note that these all use the loose form, because they'll be\n// checked against either the strict or loose comparator form\n// later.\ncreateToken('HYPHENRANGE', `^\\\\s*(${src[t.XRANGEPLAIN]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAIN]})` +\n `\\\\s*$`)\n\ncreateToken('HYPHENRANGELOOSE', `^\\\\s*(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s*$`)\n\n// Star ranges basically just allow anything at all.\ncreateToken('STAR', '(<|>)?=?\\\\s*\\\\*')\n// >=0.0.0 is like a star\ncreateToken('GTE0', '^\\\\s*>=\\\\s*0\\\\.0\\\\.0\\\\s*$')\ncreateToken('GTE0PRE', '^\\\\s*>=\\\\s*0\\\\.0\\\\.0-0\\\\s*$')\n","// Determine if version is greater than all the versions possible in the range.\nconst outside = require('./outside')\nconst gtr = (version, range, options) => outside(version, range, '>', options)\nmodule.exports = gtr\n","const Range = require('../classes/range')\nconst intersects = (r1, r2, options) => {\n r1 = new Range(r1, options)\n r2 = new Range(r2, options)\n return r1.intersects(r2, options)\n}\nmodule.exports = intersects\n","const outside = require('./outside')\n// Determine if version is less than all the versions possible in the range\nconst ltr = (version, range, options) => outside(version, range, '<', options)\nmodule.exports = ltr\n","const SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\n\nconst maxSatisfying = (versions, range, options) => {\n let max = null\n let maxSV = null\n let rangeObj = null\n try {\n rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach((v) => {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!max || maxSV.compare(v) === -1) {\n // compare(max, v, true)\n max = v\n maxSV = new SemVer(max, options)\n }\n }\n })\n return max\n}\nmodule.exports = maxSatisfying\n","const SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\nconst minSatisfying = (versions, range, options) => {\n let min = null\n let minSV = null\n let rangeObj = null\n try {\n rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach((v) => {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!min || minSV.compare(v) === 1) {\n // compare(min, v, true)\n min = v\n minSV = new SemVer(min, options)\n }\n }\n })\n return min\n}\nmodule.exports = minSatisfying\n","const SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\nconst gt = require('../functions/gt')\n\nconst minVersion = (range, loose) => {\n range = new Range(range, loose)\n\n let minver = new SemVer('0.0.0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = new SemVer('0.0.0-0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = null\n for (let i = 0; i < range.set.length; ++i) {\n const comparators = range.set[i]\n\n let setMin = null\n comparators.forEach((comparator) => {\n // Clone to avoid manipulating the comparator's semver object.\n const compver = new SemVer(comparator.semver.version)\n switch (comparator.operator) {\n case '>':\n if (compver.prerelease.length === 0) {\n compver.patch++\n } else {\n compver.prerelease.push(0)\n }\n compver.raw = compver.format()\n /* fallthrough */\n case '':\n case '>=':\n if (!setMin || gt(compver, setMin)) {\n setMin = compver\n }\n break\n case '<':\n case '<=':\n /* Ignore maximum versions */\n break\n /* istanbul ignore next */\n default:\n throw new Error(`Unexpected operation: ${comparator.operator}`)\n }\n })\n if (setMin && (!minver || gt(minver, setMin))) {\n minver = setMin\n }\n }\n\n if (minver && range.test(minver)) {\n return minver\n }\n\n return null\n}\nmodule.exports = minVersion\n","const SemVer = require('../classes/semver')\nconst Comparator = require('../classes/comparator')\nconst { ANY } = Comparator\nconst Range = require('../classes/range')\nconst satisfies = require('../functions/satisfies')\nconst gt = require('../functions/gt')\nconst lt = require('../functions/lt')\nconst lte = require('../functions/lte')\nconst gte = require('../functions/gte')\n\nconst outside = (version, range, hilo, options) => {\n version = new SemVer(version, options)\n range = new Range(range, options)\n\n let gtfn, ltefn, ltfn, comp, ecomp\n switch (hilo) {\n case '>':\n gtfn = gt\n ltefn = lte\n ltfn = lt\n comp = '>'\n ecomp = '>='\n break\n case '<':\n gtfn = lt\n ltefn = gte\n ltfn = gt\n comp = '<'\n ecomp = '<='\n break\n default:\n throw new TypeError('Must provide a hilo val of \"<\" or \">\"')\n }\n\n // If it satisfies the range it is not outside\n if (satisfies(version, range, options)) {\n return false\n }\n\n // From now on, variable terms are as if we're in \"gtr\" mode.\n // but note that everything is flipped for the \"ltr\" function.\n\n for (let i = 0; i < range.set.length; ++i) {\n const comparators = range.set[i]\n\n let high = null\n let low = null\n\n comparators.forEach((comparator) => {\n if (comparator.semver === ANY) {\n comparator = new Comparator('>=0.0.0')\n }\n high = high || comparator\n low = low || comparator\n if (gtfn(comparator.semver, high.semver, options)) {\n high = comparator\n } else if (ltfn(comparator.semver, low.semver, options)) {\n low = comparator\n }\n })\n\n // If the edge version comparator has a operator then our version\n // isn't outside it\n if (high.operator === comp || high.operator === ecomp) {\n return false\n }\n\n // If the lowest version comparator has an operator and our version\n // is less than it then it isn't higher than the range\n if ((!low.operator || low.operator === comp) &&\n ltefn(version, low.semver)) {\n return false\n } else if (low.operator === ecomp && ltfn(version, low.semver)) {\n return false\n }\n }\n return true\n}\n\nmodule.exports = outside\n","// given a set of versions and a range, create a \"simplified\" range\n// that includes the same versions that the original range does\n// If the original range is shorter than the simplified one, return that.\nconst satisfies = require('../functions/satisfies.js')\nconst compare = require('../functions/compare.js')\nmodule.exports = (versions, range, options) => {\n const set = []\n let first = null\n let prev = null\n const v = versions.sort((a, b) => compare(a, b, options))\n for (const version of v) {\n const included = satisfies(version, range, options)\n if (included) {\n prev = version\n if (!first) {\n first = version\n }\n } else {\n if (prev) {\n set.push([first, prev])\n }\n prev = null\n first = null\n }\n }\n if (first) {\n set.push([first, null])\n }\n\n const ranges = []\n for (const [min, max] of set) {\n if (min === max) {\n ranges.push(min)\n } else if (!max && min === v[0]) {\n ranges.push('*')\n } else if (!max) {\n ranges.push(`>=${min}`)\n } else if (min === v[0]) {\n ranges.push(`<=${max}`)\n } else {\n ranges.push(`${min} - ${max}`)\n }\n }\n const simplified = ranges.join(' || ')\n const original = typeof range.raw === 'string' ? range.raw : String(range)\n return simplified.length < original.length ? simplified : range\n}\n","const Range = require('../classes/range.js')\nconst Comparator = require('../classes/comparator.js')\nconst { ANY } = Comparator\nconst satisfies = require('../functions/satisfies.js')\nconst compare = require('../functions/compare.js')\n\n// Complex range `r1 || r2 || ...` is a subset of `R1 || R2 || ...` iff:\n// - Every simple range `r1, r2, ...` is a null set, OR\n// - Every simple range `r1, r2, ...` which is not a null set is a subset of\n// some `R1, R2, ...`\n//\n// Simple range `c1 c2 ...` is a subset of simple range `C1 C2 ...` iff:\n// - If c is only the ANY comparator\n// - If C is only the ANY comparator, return true\n// - Else if in prerelease mode, return false\n// - else replace c with `[>=0.0.0]`\n// - If C is only the ANY comparator\n// - if in prerelease mode, return true\n// - else replace C with `[>=0.0.0]`\n// - Let EQ be the set of = comparators in c\n// - If EQ is more than one, return true (null set)\n// - Let GT be the highest > or >= comparator in c\n// - Let LT be the lowest < or <= comparator in c\n// - If GT and LT, and GT.semver > LT.semver, return true (null set)\n// - If any C is a = range, and GT or LT are set, return false\n// - If EQ\n// - If GT, and EQ does not satisfy GT, return true (null set)\n// - If LT, and EQ does not satisfy LT, return true (null set)\n// - If EQ satisfies every C, return true\n// - Else return false\n// - If GT\n// - If GT.semver is lower than any > or >= comp in C, return false\n// - If GT is >=, and GT.semver does not satisfy every C, return false\n// - If GT.semver has a prerelease, and not in prerelease mode\n// - If no C has a prerelease and the GT.semver tuple, return false\n// - If LT\n// - If LT.semver is greater than any < or <= comp in C, return false\n// - If LT is <=, and LT.semver does not satisfy every C, return false\n// - If GT.semver has a prerelease, and not in prerelease mode\n// - If no C has a prerelease and the LT.semver tuple, return false\n// - Else return true\n\nconst subset = (sub, dom, options = {}) => {\n if (sub === dom) {\n return true\n }\n\n sub = new Range(sub, options)\n dom = new Range(dom, options)\n let sawNonNull = false\n\n OUTER: for (const simpleSub of sub.set) {\n for (const simpleDom of dom.set) {\n const isSub = simpleSubset(simpleSub, simpleDom, options)\n sawNonNull = sawNonNull || isSub !== null\n if (isSub) {\n continue OUTER\n }\n }\n // the null set is a subset of everything, but null simple ranges in\n // a complex range should be ignored. so if we saw a non-null range,\n // then we know this isn't a subset, but if EVERY simple range was null,\n // then it is a subset.\n if (sawNonNull) {\n return false\n }\n }\n return true\n}\n\nconst minimumVersionWithPreRelease = [new Comparator('>=0.0.0-0')]\nconst minimumVersion = [new Comparator('>=0.0.0')]\n\nconst simpleSubset = (sub, dom, options) => {\n if (sub === dom) {\n return true\n }\n\n if (sub.length === 1 && sub[0].semver === ANY) {\n if (dom.length === 1 && dom[0].semver === ANY) {\n return true\n } else if (options.includePrerelease) {\n sub = minimumVersionWithPreRelease\n } else {\n sub = minimumVersion\n }\n }\n\n if (dom.length === 1 && dom[0].semver === ANY) {\n if (options.includePrerelease) {\n return true\n } else {\n dom = minimumVersion\n }\n }\n\n const eqSet = new Set()\n let gt, lt\n for (const c of sub) {\n if (c.operator === '>' || c.operator === '>=') {\n gt = higherGT(gt, c, options)\n } else if (c.operator === '<' || c.operator === '<=') {\n lt = lowerLT(lt, c, options)\n } else {\n eqSet.add(c.semver)\n }\n }\n\n if (eqSet.size > 1) {\n return null\n }\n\n let gtltComp\n if (gt && lt) {\n gtltComp = compare(gt.semver, lt.semver, options)\n if (gtltComp > 0) {\n return null\n } else if (gtltComp === 0 && (gt.operator !== '>=' || lt.operator !== '<=')) {\n return null\n }\n }\n\n // will iterate one or zero times\n for (const eq of eqSet) {\n if (gt && !satisfies(eq, String(gt), options)) {\n return null\n }\n\n if (lt && !satisfies(eq, String(lt), options)) {\n return null\n }\n\n for (const c of dom) {\n if (!satisfies(eq, String(c), options)) {\n return false\n }\n }\n\n return true\n }\n\n let higher, lower\n let hasDomLT, hasDomGT\n // if the subset has a prerelease, we need a comparator in the superset\n // with the same tuple and a prerelease, or it's not a subset\n let needDomLTPre = lt &&\n !options.includePrerelease &&\n lt.semver.prerelease.length ? lt.semver : false\n let needDomGTPre = gt &&\n !options.includePrerelease &&\n gt.semver.prerelease.length ? gt.semver : false\n // exception: <1.2.3-0 is the same as <1.2.3\n if (needDomLTPre && needDomLTPre.prerelease.length === 1 &&\n lt.operator === '<' && needDomLTPre.prerelease[0] === 0) {\n needDomLTPre = false\n }\n\n for (const c of dom) {\n hasDomGT = hasDomGT || c.operator === '>' || c.operator === '>='\n hasDomLT = hasDomLT || c.operator === '<' || c.operator === '<='\n if (gt) {\n if (needDomGTPre) {\n if (c.semver.prerelease && c.semver.prerelease.length &&\n c.semver.major === needDomGTPre.major &&\n c.semver.minor === needDomGTPre.minor &&\n c.semver.patch === needDomGTPre.patch) {\n needDomGTPre = false\n }\n }\n if (c.operator === '>' || c.operator === '>=') {\n higher = higherGT(gt, c, options)\n if (higher === c && higher !== gt) {\n return false\n }\n } else if (gt.operator === '>=' && !satisfies(gt.semver, String(c), options)) {\n return false\n }\n }\n if (lt) {\n if (needDomLTPre) {\n if (c.semver.prerelease && c.semver.prerelease.length &&\n c.semver.major === needDomLTPre.major &&\n c.semver.minor === needDomLTPre.minor &&\n c.semver.patch === needDomLTPre.patch) {\n needDomLTPre = false\n }\n }\n if (c.operator === '<' || c.operator === '<=') {\n lower = lowerLT(lt, c, options)\n if (lower === c && lower !== lt) {\n return false\n }\n } else if (lt.operator === '<=' && !satisfies(lt.semver, String(c), options)) {\n return false\n }\n }\n if (!c.operator && (lt || gt) && gtltComp !== 0) {\n return false\n }\n }\n\n // if there was a < or >, and nothing in the dom, then must be false\n // UNLESS it was limited by another range in the other direction.\n // Eg, >1.0.0 <1.0.1 is still a subset of <2.0.0\n if (gt && hasDomLT && !lt && gtltComp !== 0) {\n return false\n }\n\n if (lt && hasDomGT && !gt && gtltComp !== 0) {\n return false\n }\n\n // we needed a prerelease range in a specific tuple, but didn't get one\n // then this isn't a subset. eg >=1.2.3-pre is not a subset of >=1.0.0,\n // because it includes prereleases in the 1.2.3 tuple\n if (needDomGTPre || needDomLTPre) {\n return false\n }\n\n return true\n}\n\n// >=1.2.3 is lower than >1.2.3\nconst higherGT = (a, b, options) => {\n if (!a) {\n return b\n }\n const comp = compare(a.semver, b.semver, options)\n return comp > 0 ? a\n : comp < 0 ? b\n : b.operator === '>' && a.operator === '>=' ? b\n : a\n}\n\n// <=1.2.3 is higher than <1.2.3\nconst lowerLT = (a, b, options) => {\n if (!a) {\n return b\n }\n const comp = compare(a.semver, b.semver, options)\n return comp < 0 ? a\n : comp > 0 ? b\n : b.operator === '<' && a.operator === '<=' ? b\n : a\n}\n\nmodule.exports = subset\n","const Range = require('../classes/range')\n\n// Mostly just for testing and legacy API reasons\nconst toComparators = (range, options) =>\n new Range(range, options).set\n .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))\n\nmodule.exports = toComparators\n","const Range = require('../classes/range')\nconst validRange = (range, options) => {\n try {\n // Return '*' instead of '' so that truthiness works.\n // This will throw if it's invalid anyway\n return new Range(range, options).range || '*'\n } catch (er) {\n return null\n }\n}\nmodule.exports = validRange\n","export function number(n: number) {\n if (!Number.isSafeInteger(n) || n < 0) throw new Error(`Wrong positive integer: ${n}`);\n}\n\nexport function bool(b: boolean) {\n if (typeof b !== 'boolean') throw new Error(`Expected boolean, not ${b}`);\n}\n\nexport function bytes(b: Uint8Array | undefined, ...lengths: number[]) {\n if (!(b instanceof Uint8Array)) throw new TypeError('Expected Uint8Array');\n if (lengths.length > 0 && !lengths.includes(b.length))\n throw new TypeError(`Expected Uint8Array of length ${lengths}, not of length=${b.length}`);\n}\n\ntype Hash = {\n (data: Uint8Array): Uint8Array;\n blockLen: number;\n outputLen: number;\n create: any;\n};\nexport function hash(hash: Hash) {\n if (typeof hash !== 'function' || typeof hash.create !== 'function')\n throw new Error('Hash should be wrapped by utils.wrapConstructor');\n number(hash.outputLen);\n number(hash.blockLen);\n}\n\nexport function exists(instance: any, checkFinished = true) {\n if (instance.destroyed) throw new Error('Hash instance has been destroyed');\n if (checkFinished && instance.finished) throw new Error('Hash#digest() has already been called');\n}\nexport function output(out: any, instance: any) {\n bytes(out);\n const min = instance.outputLen;\n if (out.length < min) {\n throw new Error(`digestInto() expects output buffer of length at least ${min}`);\n }\n}\n\nconst assert = {\n number,\n bool,\n bytes,\n hash,\n exists,\n output,\n};\n\nexport default assert;\n","import assert from './_assert.js';\nimport { Hash, createView, Input, toBytes } from './utils.js';\n\n// Polyfill for Safari 14\nfunction setBigUint64(view: DataView, byteOffset: number, value: bigint, isLE: boolean): void {\n if (typeof view.setBigUint64 === 'function') return view.setBigUint64(byteOffset, value, isLE);\n const _32n = BigInt(32);\n const _u32_max = BigInt(0xffffffff);\n const wh = Number((value >> _32n) & _u32_max);\n const wl = Number(value & _u32_max);\n const h = isLE ? 4 : 0;\n const l = isLE ? 0 : 4;\n view.setUint32(byteOffset + h, wh, isLE);\n view.setUint32(byteOffset + l, wl, isLE);\n}\n\n// Base SHA2 class (RFC 6234)\nexport abstract class SHA2> extends Hash {\n protected abstract process(buf: DataView, offset: number): void;\n protected abstract get(): number[];\n protected abstract set(...args: number[]): void;\n abstract destroy(): void;\n protected abstract roundClean(): void;\n // For partial updates less than block size\n protected buffer: Uint8Array;\n protected view: DataView;\n protected finished = false;\n protected length = 0;\n protected pos = 0;\n protected destroyed = false;\n\n constructor(\n readonly blockLen: number,\n public outputLen: number,\n readonly padOffset: number,\n readonly isLE: boolean\n ) {\n super();\n this.buffer = new Uint8Array(blockLen);\n this.view = createView(this.buffer);\n }\n update(data: Input): this {\n assert.exists(this);\n const { view, buffer, blockLen } = this;\n data = toBytes(data);\n const len = data.length;\n for (let pos = 0; pos < len; ) {\n const take = Math.min(blockLen - this.pos, len - pos);\n // Fast path: we have at least one block in input, cast it to view and process\n if (take === blockLen) {\n const dataView = createView(data);\n for (; blockLen <= len - pos; pos += blockLen) this.process(dataView, pos);\n continue;\n }\n buffer.set(data.subarray(pos, pos + take), this.pos);\n this.pos += take;\n pos += take;\n if (this.pos === blockLen) {\n this.process(view, 0);\n this.pos = 0;\n }\n }\n this.length += data.length;\n this.roundClean();\n return this;\n }\n digestInto(out: Uint8Array) {\n assert.exists(this);\n assert.output(out, this);\n this.finished = true;\n // Padding\n // We can avoid allocation of buffer for padding completely if it\n // was previously not allocated here. But it won't change performance.\n const { buffer, view, blockLen, isLE } = this;\n let { pos } = this;\n // append the bit '1' to the message\n buffer[pos++] = 0b10000000;\n this.buffer.subarray(pos).fill(0);\n // we have less than padOffset left in buffer, so we cannot put length in current block, need process it and pad again\n if (this.padOffset > blockLen - pos) {\n this.process(view, 0);\n pos = 0;\n }\n // Pad until full block byte with zeros\n for (let i = pos; i < blockLen; i++) buffer[i] = 0;\n // Note: sha512 requires length to be 128bit integer, but length in JS will overflow before that\n // You need to write around 2 exabytes (u64_max / 8 / (1024**6)) for this to happen.\n // So we just write lowest 64 bits of that value.\n setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE);\n this.process(view, 0);\n const oview = createView(out);\n const len = this.outputLen;\n // NOTE: we do division by 4 later, which should be fused in single op with modulo by JIT\n if (len % 4) throw new Error('_sha2: outputLen should be aligned to 32bit');\n const outLen = len / 4;\n const state = this.get();\n if (outLen > state.length) throw new Error('_sha2: outputLen bigger than state');\n for (let i = 0; i < outLen; i++) oview.setUint32(4 * i, state[i], isLE);\n }\n digest() {\n const { buffer, outputLen } = this;\n this.digestInto(buffer);\n const res = buffer.slice(0, outputLen);\n this.destroy();\n return res;\n }\n _cloneInto(to?: T): T {\n to ||= new (this.constructor as any)() as T;\n to.set(...this.get());\n const { blockLen, buffer, length, finished, destroyed, pos } = this;\n to.length = length;\n to.pos = pos;\n to.finished = finished;\n to.destroyed = destroyed;\n if (length % blockLen) to.buffer.set(buffer);\n return to;\n }\n}\n","const U32_MASK64 = BigInt(2 ** 32 - 1);\nconst _32n = BigInt(32);\n\n// We are not using BigUint64Array, because they are extremely slow as per 2022\nexport function fromBig(n: bigint, le = false) {\n if (le) return { h: Number(n & U32_MASK64), l: Number((n >> _32n) & U32_MASK64) };\n return { h: Number((n >> _32n) & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 };\n}\n\nexport function split(lst: bigint[], le = false) {\n let Ah = new Uint32Array(lst.length);\n let Al = new Uint32Array(lst.length);\n for (let i = 0; i < lst.length; i++) {\n const { h, l } = fromBig(lst[i], le);\n [Ah[i], Al[i]] = [h, l];\n }\n return [Ah, Al];\n}\n\nexport const toBig = (h: number, l: number) => (BigInt(h >>> 0) << _32n) | BigInt(l >>> 0);\n// for Shift in [0, 32)\nconst shrSH = (h: number, l: number, s: number) => h >>> s;\nconst shrSL = (h: number, l: number, s: number) => (h << (32 - s)) | (l >>> s);\n// Right rotate for Shift in [1, 32)\nconst rotrSH = (h: number, l: number, s: number) => (h >>> s) | (l << (32 - s));\nconst rotrSL = (h: number, l: number, s: number) => (h << (32 - s)) | (l >>> s);\n// Right rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotrBH = (h: number, l: number, s: number) => (h << (64 - s)) | (l >>> (s - 32));\nconst rotrBL = (h: number, l: number, s: number) => (h >>> (s - 32)) | (l << (64 - s));\n// Right rotate for shift===32 (just swaps l&h)\nconst rotr32H = (h: number, l: number) => l;\nconst rotr32L = (h: number, l: number) => h;\n// Left rotate for Shift in [1, 32)\nconst rotlSH = (h: number, l: number, s: number) => (h << s) | (l >>> (32 - s));\nconst rotlSL = (h: number, l: number, s: number) => (l << s) | (h >>> (32 - s));\n// Left rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotlBH = (h: number, l: number, s: number) => (l << (s - 32)) | (h >>> (64 - s));\nconst rotlBL = (h: number, l: number, s: number) => (h << (s - 32)) | (l >>> (64 - s));\n\n// JS uses 32-bit signed integers for bitwise operations which means we cannot\n// simple take carry out of low bit sum by shift, we need to use division.\n// Removing \"export\" has 5% perf penalty -_-\nexport function add(Ah: number, Al: number, Bh: number, Bl: number) {\n const l = (Al >>> 0) + (Bl >>> 0);\n return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 };\n}\n// Addition with more than 2 elements\nconst add3L = (Al: number, Bl: number, Cl: number) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0);\nconst add3H = (low: number, Ah: number, Bh: number, Ch: number) =>\n (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0;\nconst add4L = (Al: number, Bl: number, Cl: number, Dl: number) =>\n (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0);\nconst add4H = (low: number, Ah: number, Bh: number, Ch: number, Dh: number) =>\n (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0;\nconst add5L = (Al: number, Bl: number, Cl: number, Dl: number, El: number) =>\n (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0);\nconst add5H = (low: number, Ah: number, Bh: number, Ch: number, Dh: number, Eh: number) =>\n (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0;\n\n// prettier-ignore\nconst u64 = {\n fromBig, split, toBig,\n shrSH, shrSL,\n rotrSH, rotrSL, rotrBH, rotrBL,\n rotr32H, rotr32L,\n rotlSH, rotlSL, rotlBH, rotlBL,\n add, add3L, add3H, add4L, add4H, add5H, add5L,\n};\nexport default u64;\n","declare const globalThis: Record | undefined;\nexport const crypto =\n typeof globalThis === 'object' && 'crypto' in globalThis ? globalThis.crypto : undefined;\n","import assert from './_assert.js';\nimport { Hash, CHash, Input, toBytes } from './utils.js';\n// HMAC (RFC 2104)\nclass HMAC> extends Hash> {\n oHash: T;\n iHash: T;\n blockLen: number;\n outputLen: number;\n private finished = false;\n private destroyed = false;\n\n constructor(hash: CHash, _key: Input) {\n super();\n assert.hash(hash);\n const key = toBytes(_key);\n this.iHash = hash.create() as T;\n if (typeof this.iHash.update !== 'function')\n throw new TypeError('Expected instance of class which extends utils.Hash');\n this.blockLen = this.iHash.blockLen;\n this.outputLen = this.iHash.outputLen;\n const blockLen = this.blockLen;\n const pad = new Uint8Array(blockLen);\n // blockLen can be bigger than outputLen\n pad.set(key.length > blockLen ? hash.create().update(key).digest() : key);\n for (let i = 0; i < pad.length; i++) pad[i] ^= 0x36;\n this.iHash.update(pad);\n // By doing update (processing of first block) of outer hash here we can re-use it between multiple calls via clone\n this.oHash = hash.create() as T;\n // Undo internal XOR && apply outer XOR\n for (let i = 0; i < pad.length; i++) pad[i] ^= 0x36 ^ 0x5c;\n this.oHash.update(pad);\n pad.fill(0);\n }\n update(buf: Input) {\n assert.exists(this);\n this.iHash.update(buf);\n return this;\n }\n digestInto(out: Uint8Array) {\n assert.exists(this);\n assert.bytes(out, this.outputLen);\n this.finished = true;\n this.iHash.digestInto(out);\n this.oHash.update(out);\n this.oHash.digestInto(out);\n this.destroy();\n }\n digest() {\n const out = new Uint8Array(this.oHash.outputLen);\n this.digestInto(out);\n return out;\n }\n _cloneInto(to?: HMAC): HMAC {\n // Create new instance without calling constructor since key already in state and we don't know it.\n to ||= Object.create(Object.getPrototypeOf(this), {});\n const { oHash, iHash, finished, destroyed, blockLen, outputLen } = this;\n to = to as this;\n to.finished = finished;\n to.destroyed = destroyed;\n to.blockLen = blockLen;\n to.outputLen = outputLen;\n to.oHash = oHash._cloneInto(to.oHash);\n to.iHash = iHash._cloneInto(to.iHash);\n return to;\n }\n destroy() {\n this.destroyed = true;\n this.oHash.destroy();\n this.iHash.destroy();\n }\n}\n\n/**\n * HMAC: RFC2104 message authentication code.\n * @param hash - function that would be used e.g. sha256\n * @param key - message key\n * @param message - message data\n */\nexport const hmac = (hash: CHash, key: Input, message: Input): Uint8Array =>\n new HMAC(hash, key).update(message).digest();\nhmac.create = (hash: CHash, key: Input) => new HMAC(hash, key);\n","import assert from './_assert.js';\nimport { hmac } from './hmac.js';\nimport { Hash, CHash, Input, createView, toBytes, checkOpts, asyncLoop } from './utils.js';\n\n// PBKDF (RFC 2898)\nexport type Pbkdf2Opt = {\n c: number; // Iterations\n dkLen?: number; // Desired key length in bytes (Intended output length in octets of the derived key\n asyncTick?: number; // Maximum time in ms for which async function can block execution\n};\n// Common prologue and epilogue for sync/async functions\nfunction pbkdf2Init(hash: CHash, _password: Input, _salt: Input, _opts: Pbkdf2Opt) {\n assert.hash(hash);\n const opts = checkOpts({ dkLen: 32, asyncTick: 10 }, _opts);\n const { c, dkLen, asyncTick } = opts;\n assert.number(c);\n assert.number(dkLen);\n assert.number(asyncTick);\n if (c < 1) throw new Error('PBKDF2: iterations (c) should be >= 1');\n const password = toBytes(_password);\n const salt = toBytes(_salt);\n // DK = PBKDF2(PRF, Password, Salt, c, dkLen);\n const DK = new Uint8Array(dkLen);\n // U1 = PRF(Password, Salt + INT_32_BE(i))\n const PRF = hmac.create(hash, password);\n const PRFSalt = PRF._cloneInto().update(salt);\n return { c, dkLen, asyncTick, DK, PRF, PRFSalt };\n}\n\nfunction pbkdf2Output>(\n PRF: Hash,\n PRFSalt: Hash,\n DK: Uint8Array,\n prfW: Hash,\n u: Uint8Array\n) {\n PRF.destroy();\n PRFSalt.destroy();\n if (prfW) prfW.destroy();\n u.fill(0);\n return DK;\n}\n\n/**\n * PBKDF2-HMAC: RFC 2898 key derivation function\n * @param hash - hash function that would be used e.g. sha256\n * @param password - password from which a derived key is generated\n * @param salt - cryptographic salt\n * @param opts - {c, dkLen} where c is work factor and dkLen is output message size\n */\nexport function pbkdf2(hash: CHash, password: Input, salt: Input, opts: Pbkdf2Opt) {\n const { c, dkLen, DK, PRF, PRFSalt } = pbkdf2Init(hash, password, salt, opts);\n let prfW: any; // Working copy\n const arr = new Uint8Array(4);\n const view = createView(arr);\n const u = new Uint8Array(PRF.outputLen);\n // DK = T1 + T2 + ⋯ + Tdklen/hlen\n for (let ti = 1, pos = 0; pos < dkLen; ti++, pos += PRF.outputLen) {\n // Ti = F(Password, Salt, c, i)\n const Ti = DK.subarray(pos, pos + PRF.outputLen);\n view.setInt32(0, ti, false);\n // F(Password, Salt, c, i) = U1 ^ U2 ^ ⋯ ^ Uc\n // U1 = PRF(Password, Salt + INT_32_BE(i))\n (prfW = PRFSalt._cloneInto(prfW)).update(arr).digestInto(u);\n Ti.set(u.subarray(0, Ti.length));\n for (let ui = 1; ui < c; ui++) {\n // Uc = PRF(Password, Uc−1)\n PRF._cloneInto(prfW).update(u).digestInto(u);\n for (let i = 0; i < Ti.length; i++) Ti[i] ^= u[i];\n }\n }\n return pbkdf2Output(PRF, PRFSalt, DK, prfW, u);\n}\n\nexport async function pbkdf2Async(hash: CHash, password: Input, salt: Input, opts: Pbkdf2Opt) {\n const { c, dkLen, asyncTick, DK, PRF, PRFSalt } = pbkdf2Init(hash, password, salt, opts);\n let prfW: any; // Working copy\n const arr = new Uint8Array(4);\n const view = createView(arr);\n const u = new Uint8Array(PRF.outputLen);\n // DK = T1 + T2 + ⋯ + Tdklen/hlen\n for (let ti = 1, pos = 0; pos < dkLen; ti++, pos += PRF.outputLen) {\n // Ti = F(Password, Salt, c, i)\n const Ti = DK.subarray(pos, pos + PRF.outputLen);\n view.setInt32(0, ti, false);\n // F(Password, Salt, c, i) = U1 ^ U2 ^ ⋯ ^ Uc\n // U1 = PRF(Password, Salt + INT_32_BE(i))\n (prfW = PRFSalt._cloneInto(prfW)).update(arr).digestInto(u);\n Ti.set(u.subarray(0, Ti.length));\n await asyncLoop(c - 1, asyncTick, (i) => {\n // Uc = PRF(Password, Uc−1)\n PRF._cloneInto(prfW).update(u).digestInto(u);\n for (let i = 0; i < Ti.length; i++) Ti[i] ^= u[i];\n });\n }\n return pbkdf2Output(PRF, PRFSalt, DK, prfW, u);\n}\n","import { SHA2 } from './_sha2.js';\nimport { rotr, wrapConstructor } from './utils.js';\n\n// Choice: a ? b : c\nconst Chi = (a: number, b: number, c: number) => (a & b) ^ (~a & c);\n// Majority function, true if any two inpust is true\nconst Maj = (a: number, b: number, c: number) => (a & b) ^ (a & c) ^ (b & c);\n\n// Round constants:\n// first 32 bits of the fractional parts of the cube roots of the first 64 primes 2..311)\n// prettier-ignore\nconst SHA256_K = new Uint32Array([\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n]);\n\n// Initial state (first 32 bits of the fractional parts of the square roots of the first 8 primes 2..19):\n// prettier-ignore\nconst IV = new Uint32Array([\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19\n]);\n\n// Temporary buffer, not used to store anything between runs\n// Named this way because it matches specification.\nconst SHA256_W = new Uint32Array(64);\nclass SHA256 extends SHA2 {\n // We cannot use array here since array allows indexing by variable\n // which means optimizer/compiler cannot use registers.\n A = IV[0] | 0;\n B = IV[1] | 0;\n C = IV[2] | 0;\n D = IV[3] | 0;\n E = IV[4] | 0;\n F = IV[5] | 0;\n G = IV[6] | 0;\n H = IV[7] | 0;\n\n constructor() {\n super(64, 32, 8, false);\n }\n protected get(): [number, number, number, number, number, number, number, number] {\n const { A, B, C, D, E, F, G, H } = this;\n return [A, B, C, D, E, F, G, H];\n }\n // prettier-ignore\n protected set(\n A: number, B: number, C: number, D: number, E: number, F: number, G: number, H: number\n ) {\n this.A = A | 0;\n this.B = B | 0;\n this.C = C | 0;\n this.D = D | 0;\n this.E = E | 0;\n this.F = F | 0;\n this.G = G | 0;\n this.H = H | 0;\n }\n protected process(view: DataView, offset: number): void {\n // Extend the first 16 words into the remaining 48 words w[16..63] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4) SHA256_W[i] = view.getUint32(offset, false);\n for (let i = 16; i < 64; i++) {\n const W15 = SHA256_W[i - 15];\n const W2 = SHA256_W[i - 2];\n const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ (W15 >>> 3);\n const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ (W2 >>> 10);\n SHA256_W[i] = (s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16]) | 0;\n }\n // Compression function main loop, 64 rounds\n let { A, B, C, D, E, F, G, H } = this;\n for (let i = 0; i < 64; i++) {\n const sigma1 = rotr(E, 6) ^ rotr(E, 11) ^ rotr(E, 25);\n const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const sigma0 = rotr(A, 2) ^ rotr(A, 13) ^ rotr(A, 22);\n const T2 = (sigma0 + Maj(A, B, C)) | 0;\n H = G;\n G = F;\n F = E;\n E = (D + T1) | 0;\n D = C;\n C = B;\n B = A;\n A = (T1 + T2) | 0;\n }\n // Add the compressed chunk to the current hash value\n A = (A + this.A) | 0;\n B = (B + this.B) | 0;\n C = (C + this.C) | 0;\n D = (D + this.D) | 0;\n E = (E + this.E) | 0;\n F = (F + this.F) | 0;\n G = (G + this.G) | 0;\n H = (H + this.H) | 0;\n this.set(A, B, C, D, E, F, G, H);\n }\n protected roundClean() {\n SHA256_W.fill(0);\n }\n destroy() {\n this.set(0, 0, 0, 0, 0, 0, 0, 0);\n this.buffer.fill(0);\n }\n}\n// Constants from https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf\nclass SHA224 extends SHA256 {\n A = 0xc1059ed8 | 0;\n B = 0x367cd507 | 0;\n C = 0x3070dd17 | 0;\n D = 0xf70e5939 | 0;\n E = 0xffc00b31 | 0;\n F = 0x68581511 | 0;\n G = 0x64f98fa7 | 0;\n H = 0xbefa4fa4 | 0;\n constructor() {\n super();\n this.outputLen = 28;\n }\n}\n\n/**\n * SHA2-256 hash function\n * @param message - data that would be hashed\n */\nexport const sha256 = wrapConstructor(() => new SHA256());\nexport const sha224 = wrapConstructor(() => new SHA224());\n","import assert from './_assert.js';\nimport u64 from './_u64.js';\nimport {\n Hash,\n u32,\n Input,\n toBytes,\n wrapConstructor,\n wrapConstructorWithOpts,\n HashXOF,\n} from './utils.js';\n\n// Various per round constants calculations\nconst [SHA3_PI, SHA3_ROTL, _SHA3_IOTA]: [number[], number[], bigint[]] = [[], [], []];\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\nconst _2n = BigInt(2);\nconst _7n = BigInt(7);\nconst _256n = BigInt(256);\nconst _0x71n = BigInt(0x71);\nfor (let round = 0, R = _1n, x = 1, y = 0; round < 24; round++) {\n // Pi\n [x, y] = [y, (2 * x + 3 * y) % 5];\n SHA3_PI.push(2 * (5 * y + x));\n // Rotational\n SHA3_ROTL.push((((round + 1) * (round + 2)) / 2) % 64);\n // Iota\n let t = _0n;\n for (let j = 0; j < 7; j++) {\n R = ((R << _1n) ^ ((R >> _7n) * _0x71n)) % _256n;\n if (R & _2n) t ^= _1n << ((_1n << BigInt(j)) - _1n);\n }\n _SHA3_IOTA.push(t);\n}\nconst [SHA3_IOTA_H, SHA3_IOTA_L] = u64.split(_SHA3_IOTA, true);\n\n// Left rotation (without 0, 32, 64)\nconst rotlH = (h: number, l: number, s: number) =>\n s > 32 ? u64.rotlBH(h, l, s) : u64.rotlSH(h, l, s);\nconst rotlL = (h: number, l: number, s: number) =>\n s > 32 ? u64.rotlBL(h, l, s) : u64.rotlSL(h, l, s);\n\n// Same as keccakf1600, but allows to skip some rounds\nexport function keccakP(s: Uint32Array, rounds: number = 24) {\n const B = new Uint32Array(5 * 2);\n // NOTE: all indices are x2 since we store state as u32 instead of u64 (bigints to slow in js)\n for (let round = 24 - rounds; round < 24; round++) {\n // Theta θ\n for (let x = 0; x < 10; x++) B[x] = s[x] ^ s[x + 10] ^ s[x + 20] ^ s[x + 30] ^ s[x + 40];\n for (let x = 0; x < 10; x += 2) {\n const idx1 = (x + 8) % 10;\n const idx0 = (x + 2) % 10;\n const B0 = B[idx0];\n const B1 = B[idx0 + 1];\n const Th = rotlH(B0, B1, 1) ^ B[idx1];\n const Tl = rotlL(B0, B1, 1) ^ B[idx1 + 1];\n for (let y = 0; y < 50; y += 10) {\n s[x + y] ^= Th;\n s[x + y + 1] ^= Tl;\n }\n }\n // Rho (ρ) and Pi (π)\n let curH = s[2];\n let curL = s[3];\n for (let t = 0; t < 24; t++) {\n const shift = SHA3_ROTL[t];\n const Th = rotlH(curH, curL, shift);\n const Tl = rotlL(curH, curL, shift);\n const PI = SHA3_PI[t];\n curH = s[PI];\n curL = s[PI + 1];\n s[PI] = Th;\n s[PI + 1] = Tl;\n }\n // Chi (χ)\n for (let y = 0; y < 50; y += 10) {\n for (let x = 0; x < 10; x++) B[x] = s[y + x];\n for (let x = 0; x < 10; x++) s[y + x] ^= ~B[(x + 2) % 10] & B[(x + 4) % 10];\n }\n // Iota (ι)\n s[0] ^= SHA3_IOTA_H[round];\n s[1] ^= SHA3_IOTA_L[round];\n }\n B.fill(0);\n}\n\nexport class Keccak extends Hash implements HashXOF {\n protected state: Uint8Array;\n protected pos = 0;\n protected posOut = 0;\n protected finished = false;\n protected state32: Uint32Array;\n protected destroyed = false;\n // NOTE: we accept arguments in bytes instead of bits here.\n constructor(\n public blockLen: number,\n public suffix: number,\n public outputLen: number,\n protected enableXOF = false,\n protected rounds: number = 24\n ) {\n super();\n // Can be passed from user as dkLen\n assert.number(outputLen);\n // 1600 = 5x5 matrix of 64bit. 1600 bits === 200 bytes\n if (0 >= this.blockLen || this.blockLen >= 200)\n throw new Error('Sha3 supports only keccak-f1600 function');\n this.state = new Uint8Array(200);\n this.state32 = u32(this.state);\n }\n protected keccak() {\n keccakP(this.state32, this.rounds);\n this.posOut = 0;\n this.pos = 0;\n }\n update(data: Input) {\n assert.exists(this);\n const { blockLen, state } = this;\n data = toBytes(data);\n const len = data.length;\n for (let pos = 0; pos < len; ) {\n const take = Math.min(blockLen - this.pos, len - pos);\n for (let i = 0; i < take; i++) state[this.pos++] ^= data[pos++];\n if (this.pos === blockLen) this.keccak();\n }\n return this;\n }\n protected finish() {\n if (this.finished) return;\n this.finished = true;\n const { state, suffix, pos, blockLen } = this;\n // Do the padding\n state[pos] ^= suffix;\n if ((suffix & 0x80) !== 0 && pos === blockLen - 1) this.keccak();\n state[blockLen - 1] ^= 0x80;\n this.keccak();\n }\n protected writeInto(out: Uint8Array): Uint8Array {\n assert.exists(this, false);\n assert.bytes(out);\n this.finish();\n const bufferOut = this.state;\n const { blockLen } = this;\n for (let pos = 0, len = out.length; pos < len; ) {\n if (this.posOut >= blockLen) this.keccak();\n const take = Math.min(blockLen - this.posOut, len - pos);\n out.set(bufferOut.subarray(this.posOut, this.posOut + take), pos);\n this.posOut += take;\n pos += take;\n }\n return out;\n }\n xofInto(out: Uint8Array): Uint8Array {\n // Sha3/Keccak usage with XOF is probably mistake, only SHAKE instances can do XOF\n if (!this.enableXOF) throw new Error('XOF is not possible for this instance');\n return this.writeInto(out);\n }\n xof(bytes: number): Uint8Array {\n assert.number(bytes);\n return this.xofInto(new Uint8Array(bytes));\n }\n digestInto(out: Uint8Array) {\n assert.output(out, this);\n if (this.finished) throw new Error('digest() was already called');\n this.writeInto(out);\n this.destroy();\n return out;\n }\n digest() {\n return this.digestInto(new Uint8Array(this.outputLen));\n }\n destroy() {\n this.destroyed = true;\n this.state.fill(0);\n }\n _cloneInto(to?: Keccak): Keccak {\n const { blockLen, suffix, outputLen, rounds, enableXOF } = this;\n to ||= new Keccak(blockLen, suffix, outputLen, enableXOF, rounds);\n to.state32.set(this.state32);\n to.pos = this.pos;\n to.posOut = this.posOut;\n to.finished = this.finished;\n to.rounds = rounds;\n // Suffix can change in cSHAKE\n to.suffix = suffix;\n to.outputLen = outputLen;\n to.enableXOF = enableXOF;\n to.destroyed = this.destroyed;\n return to;\n }\n}\n\nconst gen = (suffix: number, blockLen: number, outputLen: number) =>\n wrapConstructor(() => new Keccak(blockLen, suffix, outputLen));\n\nexport const sha3_224 = gen(0x06, 144, 224 / 8);\n/**\n * SHA3-256 hash function\n * @param message - that would be hashed\n */\nexport const sha3_256 = gen(0x06, 136, 256 / 8);\nexport const sha3_384 = gen(0x06, 104, 384 / 8);\nexport const sha3_512 = gen(0x06, 72, 512 / 8);\nexport const keccak_224 = gen(0x01, 144, 224 / 8);\n/**\n * keccak-256 hash function. Different from SHA3-256.\n * @param message - that would be hashed\n */\nexport const keccak_256 = gen(0x01, 136, 256 / 8);\nexport const keccak_384 = gen(0x01, 104, 384 / 8);\nexport const keccak_512 = gen(0x01, 72, 512 / 8);\n\nexport type ShakeOpts = { dkLen?: number };\n\nconst genShake = (suffix: number, blockLen: number, outputLen: number) =>\n wrapConstructorWithOpts(\n (opts: ShakeOpts = {}) =>\n new Keccak(blockLen, suffix, opts.dkLen === undefined ? outputLen : opts.dkLen, true)\n );\n\nexport const shake128 = genShake(0x1f, 168, 128 / 8);\nexport const shake256 = genShake(0x1f, 136, 256 / 8);\n","import { SHA2 } from './_sha2.js';\nimport u64 from './_u64.js';\nimport { wrapConstructor } from './utils.js';\n\n// Round contants (first 32 bits of the fractional parts of the cube roots of the first 80 primes 2..409):\n// prettier-ignore\nconst [SHA512_Kh, SHA512_Kl] = u64.split([\n '0x428a2f98d728ae22', '0x7137449123ef65cd', '0xb5c0fbcfec4d3b2f', '0xe9b5dba58189dbbc',\n '0x3956c25bf348b538', '0x59f111f1b605d019', '0x923f82a4af194f9b', '0xab1c5ed5da6d8118',\n '0xd807aa98a3030242', '0x12835b0145706fbe', '0x243185be4ee4b28c', '0x550c7dc3d5ffb4e2',\n '0x72be5d74f27b896f', '0x80deb1fe3b1696b1', '0x9bdc06a725c71235', '0xc19bf174cf692694',\n '0xe49b69c19ef14ad2', '0xefbe4786384f25e3', '0x0fc19dc68b8cd5b5', '0x240ca1cc77ac9c65',\n '0x2de92c6f592b0275', '0x4a7484aa6ea6e483', '0x5cb0a9dcbd41fbd4', '0x76f988da831153b5',\n '0x983e5152ee66dfab', '0xa831c66d2db43210', '0xb00327c898fb213f', '0xbf597fc7beef0ee4',\n '0xc6e00bf33da88fc2', '0xd5a79147930aa725', '0x06ca6351e003826f', '0x142929670a0e6e70',\n '0x27b70a8546d22ffc', '0x2e1b21385c26c926', '0x4d2c6dfc5ac42aed', '0x53380d139d95b3df',\n '0x650a73548baf63de', '0x766a0abb3c77b2a8', '0x81c2c92e47edaee6', '0x92722c851482353b',\n '0xa2bfe8a14cf10364', '0xa81a664bbc423001', '0xc24b8b70d0f89791', '0xc76c51a30654be30',\n '0xd192e819d6ef5218', '0xd69906245565a910', '0xf40e35855771202a', '0x106aa07032bbd1b8',\n '0x19a4c116b8d2d0c8', '0x1e376c085141ab53', '0x2748774cdf8eeb99', '0x34b0bcb5e19b48a8',\n '0x391c0cb3c5c95a63', '0x4ed8aa4ae3418acb', '0x5b9cca4f7763e373', '0x682e6ff3d6b2b8a3',\n '0x748f82ee5defb2fc', '0x78a5636f43172f60', '0x84c87814a1f0ab72', '0x8cc702081a6439ec',\n '0x90befffa23631e28', '0xa4506cebde82bde9', '0xbef9a3f7b2c67915', '0xc67178f2e372532b',\n '0xca273eceea26619c', '0xd186b8c721c0c207', '0xeada7dd6cde0eb1e', '0xf57d4f7fee6ed178',\n '0x06f067aa72176fba', '0x0a637dc5a2c898a6', '0x113f9804bef90dae', '0x1b710b35131c471b',\n '0x28db77f523047d84', '0x32caab7b40c72493', '0x3c9ebe0a15c9bebc', '0x431d67c49c100d4c',\n '0x4cc5d4becb3e42b6', '0x597f299cfc657e2a', '0x5fcb6fab3ad6faec', '0x6c44198c4a475817'\n].map(n => BigInt(n)));\n\n// Temporary buffer, not used to store anything between runs\nconst SHA512_W_H = new Uint32Array(80);\nconst SHA512_W_L = new Uint32Array(80);\n\nexport class SHA512 extends SHA2 {\n // We cannot use array here since array allows indexing by variable which means optimizer/compiler cannot use registers.\n // Also looks cleaner and easier to verify with spec.\n // Initial state (first 32 bits of the fractional parts of the square roots of the first 8 primes 2..19):\n // h -- high 32 bits, l -- low 32 bits\n Ah = 0x6a09e667 | 0;\n Al = 0xf3bcc908 | 0;\n Bh = 0xbb67ae85 | 0;\n Bl = 0x84caa73b | 0;\n Ch = 0x3c6ef372 | 0;\n Cl = 0xfe94f82b | 0;\n Dh = 0xa54ff53a | 0;\n Dl = 0x5f1d36f1 | 0;\n Eh = 0x510e527f | 0;\n El = 0xade682d1 | 0;\n Fh = 0x9b05688c | 0;\n Fl = 0x2b3e6c1f | 0;\n Gh = 0x1f83d9ab | 0;\n Gl = 0xfb41bd6b | 0;\n Hh = 0x5be0cd19 | 0;\n Hl = 0x137e2179 | 0;\n\n constructor() {\n super(128, 64, 16, false);\n }\n // prettier-ignore\n protected get(): [\n number, number, number, number, number, number, number, number,\n number, number, number, number, number, number, number, number\n ] {\n const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl];\n }\n // prettier-ignore\n protected set(\n Ah: number, Al: number, Bh: number, Bl: number, Ch: number, Cl: number, Dh: number, Dl: number,\n Eh: number, El: number, Fh: number, Fl: number, Gh: number, Gl: number, Hh: number, Hl: number\n ) {\n this.Ah = Ah | 0;\n this.Al = Al | 0;\n this.Bh = Bh | 0;\n this.Bl = Bl | 0;\n this.Ch = Ch | 0;\n this.Cl = Cl | 0;\n this.Dh = Dh | 0;\n this.Dl = Dl | 0;\n this.Eh = Eh | 0;\n this.El = El | 0;\n this.Fh = Fh | 0;\n this.Fl = Fl | 0;\n this.Gh = Gh | 0;\n this.Gl = Gl | 0;\n this.Hh = Hh | 0;\n this.Hl = Hl | 0;\n }\n protected process(view: DataView, offset: number) {\n // Extend the first 16 words into the remaining 64 words w[16..79] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4) {\n SHA512_W_H[i] = view.getUint32(offset);\n SHA512_W_L[i] = view.getUint32((offset += 4));\n }\n for (let i = 16; i < 80; i++) {\n // s0 := (w[i-15] rightrotate 1) xor (w[i-15] rightrotate 8) xor (w[i-15] rightshift 7)\n const W15h = SHA512_W_H[i - 15] | 0;\n const W15l = SHA512_W_L[i - 15] | 0;\n const s0h = u64.rotrSH(W15h, W15l, 1) ^ u64.rotrSH(W15h, W15l, 8) ^ u64.shrSH(W15h, W15l, 7);\n const s0l = u64.rotrSL(W15h, W15l, 1) ^ u64.rotrSL(W15h, W15l, 8) ^ u64.shrSL(W15h, W15l, 7);\n // s1 := (w[i-2] rightrotate 19) xor (w[i-2] rightrotate 61) xor (w[i-2] rightshift 6)\n const W2h = SHA512_W_H[i - 2] | 0;\n const W2l = SHA512_W_L[i - 2] | 0;\n const s1h = u64.rotrSH(W2h, W2l, 19) ^ u64.rotrBH(W2h, W2l, 61) ^ u64.shrSH(W2h, W2l, 6);\n const s1l = u64.rotrSL(W2h, W2l, 19) ^ u64.rotrBL(W2h, W2l, 61) ^ u64.shrSL(W2h, W2l, 6);\n // SHA256_W[i] = s0 + s1 + SHA256_W[i - 7] + SHA256_W[i - 16];\n const SUMl = u64.add4L(s0l, s1l, SHA512_W_L[i - 7], SHA512_W_L[i - 16]);\n const SUMh = u64.add4H(SUMl, s0h, s1h, SHA512_W_H[i - 7], SHA512_W_H[i - 16]);\n SHA512_W_H[i] = SUMh | 0;\n SHA512_W_L[i] = SUMl | 0;\n }\n let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n // Compression function main loop, 80 rounds\n for (let i = 0; i < 80; i++) {\n // S1 := (e rightrotate 14) xor (e rightrotate 18) xor (e rightrotate 41)\n const sigma1h = u64.rotrSH(Eh, El, 14) ^ u64.rotrSH(Eh, El, 18) ^ u64.rotrBH(Eh, El, 41);\n const sigma1l = u64.rotrSL(Eh, El, 14) ^ u64.rotrSL(Eh, El, 18) ^ u64.rotrBL(Eh, El, 41);\n //const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const CHIh = (Eh & Fh) ^ (~Eh & Gh);\n const CHIl = (El & Fl) ^ (~El & Gl);\n // T1 = H + sigma1 + Chi(E, F, G) + SHA512_K[i] + SHA512_W[i]\n // prettier-ignore\n const T1ll = u64.add5L(Hl, sigma1l, CHIl, SHA512_Kl[i], SHA512_W_L[i]);\n const T1h = u64.add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh[i], SHA512_W_H[i]);\n const T1l = T1ll | 0;\n // S0 := (a rightrotate 28) xor (a rightrotate 34) xor (a rightrotate 39)\n const sigma0h = u64.rotrSH(Ah, Al, 28) ^ u64.rotrBH(Ah, Al, 34) ^ u64.rotrBH(Ah, Al, 39);\n const sigma0l = u64.rotrSL(Ah, Al, 28) ^ u64.rotrBL(Ah, Al, 34) ^ u64.rotrBL(Ah, Al, 39);\n const MAJh = (Ah & Bh) ^ (Ah & Ch) ^ (Bh & Ch);\n const MAJl = (Al & Bl) ^ (Al & Cl) ^ (Bl & Cl);\n Hh = Gh | 0;\n Hl = Gl | 0;\n Gh = Fh | 0;\n Gl = Fl | 0;\n Fh = Eh | 0;\n Fl = El | 0;\n ({ h: Eh, l: El } = u64.add(Dh | 0, Dl | 0, T1h | 0, T1l | 0));\n Dh = Ch | 0;\n Dl = Cl | 0;\n Ch = Bh | 0;\n Cl = Bl | 0;\n Bh = Ah | 0;\n Bl = Al | 0;\n const All = u64.add3L(T1l, sigma0l, MAJl);\n Ah = u64.add3H(All, T1h, sigma0h, MAJh);\n Al = All | 0;\n }\n // Add the compressed chunk to the current hash value\n ({ h: Ah, l: Al } = u64.add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0));\n ({ h: Bh, l: Bl } = u64.add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0));\n ({ h: Ch, l: Cl } = u64.add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0));\n ({ h: Dh, l: Dl } = u64.add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0));\n ({ h: Eh, l: El } = u64.add(this.Eh | 0, this.El | 0, Eh | 0, El | 0));\n ({ h: Fh, l: Fl } = u64.add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0));\n ({ h: Gh, l: Gl } = u64.add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0));\n ({ h: Hh, l: Hl } = u64.add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0));\n this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl);\n }\n protected roundClean() {\n SHA512_W_H.fill(0);\n SHA512_W_L.fill(0);\n }\n destroy() {\n this.buffer.fill(0);\n this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);\n }\n}\n\nclass SHA512_224 extends SHA512 {\n // h -- high 32 bits, l -- low 32 bits\n Ah = 0x8c3d37c8 | 0;\n Al = 0x19544da2 | 0;\n Bh = 0x73e19966 | 0;\n Bl = 0x89dcd4d6 | 0;\n Ch = 0x1dfab7ae | 0;\n Cl = 0x32ff9c82 | 0;\n Dh = 0x679dd514 | 0;\n Dl = 0x582f9fcf | 0;\n Eh = 0x0f6d2b69 | 0;\n El = 0x7bd44da8 | 0;\n Fh = 0x77e36f73 | 0;\n Fl = 0x04c48942 | 0;\n Gh = 0x3f9d85a8 | 0;\n Gl = 0x6a1d36c8 | 0;\n Hh = 0x1112e6ad | 0;\n Hl = 0x91d692a1 | 0;\n\n constructor() {\n super();\n this.outputLen = 28;\n }\n}\n\nclass SHA512_256 extends SHA512 {\n // h -- high 32 bits, l -- low 32 bits\n Ah = 0x22312194 | 0;\n Al = 0xfc2bf72c | 0;\n Bh = 0x9f555fa3 | 0;\n Bl = 0xc84c64c2 | 0;\n Ch = 0x2393b86b | 0;\n Cl = 0x6f53b151 | 0;\n Dh = 0x96387719 | 0;\n Dl = 0x5940eabd | 0;\n Eh = 0x96283ee2 | 0;\n El = 0xa88effe3 | 0;\n Fh = 0xbe5e1e25 | 0;\n Fl = 0x53863992 | 0;\n Gh = 0x2b0199fc | 0;\n Gl = 0x2c85b8aa | 0;\n Hh = 0x0eb72ddc | 0;\n Hl = 0x81c52ca2 | 0;\n\n constructor() {\n super();\n this.outputLen = 32;\n }\n}\n\nclass SHA384 extends SHA512 {\n // h -- high 32 bits, l -- low 32 bits\n Ah = 0xcbbb9d5d | 0;\n Al = 0xc1059ed8 | 0;\n Bh = 0x629a292a | 0;\n Bl = 0x367cd507 | 0;\n Ch = 0x9159015a | 0;\n Cl = 0x3070dd17 | 0;\n Dh = 0x152fecd8 | 0;\n Dl = 0xf70e5939 | 0;\n Eh = 0x67332667 | 0;\n El = 0xffc00b31 | 0;\n Fh = 0x8eb44a87 | 0;\n Fl = 0x68581511 | 0;\n Gh = 0xdb0c2e0d | 0;\n Gl = 0x64f98fa7 | 0;\n Hh = 0x47b5481d | 0;\n Hl = 0xbefa4fa4 | 0;\n\n constructor() {\n super();\n this.outputLen = 48;\n }\n}\n\nexport const sha512 = wrapConstructor(() => new SHA512());\nexport const sha512_224 = wrapConstructor(() => new SHA512_224());\nexport const sha512_256 = wrapConstructor(() => new SHA512_256());\nexport const sha384 = wrapConstructor(() => new SHA384());\n","/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n\n// We use `globalThis.crypto`, but node.js versions earlier than v19 don't\n// declare it in global scope. For node.js, package.json#exports field mapping\n// rewrites import from `crypto` to `cryptoNode`, which imports native module.\n// Makes the utils un-importable in browsers without a bundler.\n// Once node.js 18 is deprecated, we can just drop the import.\nimport { crypto } from '@noble/hashes/crypto';\n\n// prettier-ignore\nexport type TypedArray = Int8Array | Uint8ClampedArray | Uint8Array |\n Uint16Array | Int16Array | Uint32Array | Int32Array;\n\n// Cast array to different type\nexport const u8 = (arr: TypedArray) => new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);\nexport const u32 = (arr: TypedArray) =>\n new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));\n\n// Cast array to view\nexport const createView = (arr: TypedArray) =>\n new DataView(arr.buffer, arr.byteOffset, arr.byteLength);\n\n// The rotate right (circular right shift) operation for uint32\nexport const rotr = (word: number, shift: number) => (word << (32 - shift)) | (word >>> shift);\n\n// big-endian hardware is rare. Just in case someone still decides to run hashes:\n// early-throw an error because we don't support BE yet.\nexport const isLE = new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44;\nif (!isLE) throw new Error('Non little-endian hardware is not supported');\n\nconst hexes = Array.from({ length: 256 }, (v, i) => i.toString(16).padStart(2, '0'));\n/**\n * @example bytesToHex(Uint8Array.from([0xde, 0xad, 0xbe, 0xef])) // 'deadbeef'\n */\nexport function bytesToHex(uint8a: Uint8Array): string {\n // pre-caching improves the speed 6x\n if (!(uint8a instanceof Uint8Array)) throw new Error('Uint8Array expected');\n let hex = '';\n for (let i = 0; i < uint8a.length; i++) {\n hex += hexes[uint8a[i]];\n }\n return hex;\n}\n\n/**\n * @example hexToBytes('deadbeef') // Uint8Array.from([0xde, 0xad, 0xbe, 0xef])\n */\nexport function hexToBytes(hex: string): Uint8Array {\n if (typeof hex !== 'string') {\n throw new TypeError('hexToBytes: expected string, got ' + typeof hex);\n }\n if (hex.length % 2) throw new Error('hexToBytes: received invalid unpadded hex');\n const array = new Uint8Array(hex.length / 2);\n for (let i = 0; i < array.length; i++) {\n const j = i * 2;\n const hexByte = hex.slice(j, j + 2);\n const byte = Number.parseInt(hexByte, 16);\n if (Number.isNaN(byte) || byte < 0) throw new Error('Invalid byte sequence');\n array[i] = byte;\n }\n return array;\n}\n\n// There is no setImmediate in browser and setTimeout is slow.\n// call of async fn will return Promise, which will be fullfiled only on\n// next scheduler queue processing step and this is exactly what we need.\nexport const nextTick = async () => {};\n\n// Returns control to thread each 'tick' ms to avoid blocking\nexport async function asyncLoop(iters: number, tick: number, cb: (i: number) => void) {\n let ts = Date.now();\n for (let i = 0; i < iters; i++) {\n cb(i);\n // Date.now() is not monotonic, so in case if clock goes backwards we return return control too\n const diff = Date.now() - ts;\n if (diff >= 0 && diff < tick) continue;\n await nextTick();\n ts += diff;\n }\n}\n\n// Global symbols in both browsers and Node.js since v11\n// See https://github.com/microsoft/TypeScript/issues/31535\ndeclare const TextEncoder: any;\ndeclare const TextDecoder: any;\n\nexport function utf8ToBytes(str: string): Uint8Array {\n if (typeof str !== 'string') {\n throw new TypeError(`utf8ToBytes expected string, got ${typeof str}`);\n }\n return new TextEncoder().encode(str);\n}\n\nexport type Input = Uint8Array | string;\nexport function toBytes(data: Input): Uint8Array {\n if (typeof data === 'string') data = utf8ToBytes(data);\n if (!(data instanceof Uint8Array))\n throw new TypeError(`Expected input type is Uint8Array (got ${typeof data})`);\n return data;\n}\n\n/**\n * Concats Uint8Array-s into one; like `Buffer.concat([buf1, buf2])`\n * @example concatBytes(buf1, buf2)\n */\nexport function concatBytes(...arrays: Uint8Array[]): Uint8Array {\n if (!arrays.every((a) => a instanceof Uint8Array)) throw new Error('Uint8Array list expected');\n if (arrays.length === 1) return arrays[0];\n const length = arrays.reduce((a, arr) => a + arr.length, 0);\n const result = new Uint8Array(length);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const arr = arrays[i];\n result.set(arr, pad);\n pad += arr.length;\n }\n return result;\n}\n\n// For runtime check if class implements interface\nexport abstract class Hash> {\n abstract blockLen: number; // Bytes per block\n abstract outputLen: number; // Bytes in output\n abstract update(buf: Input): this;\n // Writes digest into buf\n abstract digestInto(buf: Uint8Array): void;\n abstract digest(): Uint8Array;\n /**\n * Resets internal state. Makes Hash instance unusable.\n * Reset is impossible for keyed hashes if key is consumed into state. If digest is not consumed\n * by user, they will need to manually call `destroy()` when zeroing is necessary.\n */\n abstract destroy(): void;\n /**\n * Clones hash instance. Unsafe: doesn't check whether `to` is valid. Can be used as `clone()`\n * when no options are passed.\n * Reasons to use `_cloneInto` instead of clone: 1) performance 2) reuse instance => all internal\n * buffers are overwritten => causes buffer overwrite which is used for digest in some cases.\n * There are no guarantees for clean-up because it's impossible in JS.\n */\n abstract _cloneInto(to?: T): T;\n // Safe version that clones internal state\n clone(): T {\n return this._cloneInto();\n }\n}\n\n/**\n * XOF: streaming API to read digest in chunks.\n * Same as 'squeeze' in keccak/k12 and 'seek' in blake3, but more generic name.\n * When hash used in XOF mode it is up to user to call '.destroy' afterwards, since we cannot\n * destroy state, next call can require more bytes.\n */\nexport type HashXOF> = Hash & {\n xof(bytes: number): Uint8Array; // Read 'bytes' bytes from digest stream\n xofInto(buf: Uint8Array): Uint8Array; // read buf.length bytes from digest stream into buf\n};\n\n// Check if object doens't have custom constructor (like Uint8Array/Array)\nconst isPlainObject = (obj: any) =>\n Object.prototype.toString.call(obj) === '[object Object]' && obj.constructor === Object;\n\ntype EmptyObj = {};\nexport function checkOpts(\n defaults: T1,\n opts?: T2\n): T1 & T2 {\n if (opts !== undefined && (typeof opts !== 'object' || !isPlainObject(opts)))\n throw new TypeError('Options should be object or undefined');\n const merged = Object.assign(defaults, opts);\n return merged as T1 & T2;\n}\n\nexport type CHash = ReturnType;\n\nexport function wrapConstructor>(hashConstructor: () => Hash) {\n const hashC = (message: Input): Uint8Array => hashConstructor().update(toBytes(message)).digest();\n const tmp = hashConstructor();\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = () => hashConstructor();\n return hashC;\n}\n\nexport function wrapConstructorWithOpts, T extends Object>(\n hashCons: (opts?: T) => Hash\n) {\n const hashC = (msg: Input, opts?: T): Uint8Array => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({} as T);\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts: T) => hashCons(opts);\n return hashC;\n}\n\n/**\n * Secure PRNG. Uses `globalThis.crypto` or node.js crypto module.\n */\nexport function randomBytes(bytesLength = 32): Uint8Array {\n if (crypto && typeof crypto.getRandomValues === 'function') {\n return crypto.getRandomValues(new Uint8Array(bytesLength));\n }\n throw new Error('crypto.getRandomValues must be defined');\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package binary provides functions for encoding and decoding numbers in byte arrays.\n */\n\nimport { isSafeInteger } from \"@stablelib/int\";\n\n// TODO(dchest): add asserts for correct value ranges and array offsets.\n\n/**\n * Reads 2 bytes from array starting at offset as big-endian\n * signed 16-bit integer and returns it.\n */\nexport function readInt16BE(array: Uint8Array, offset = 0): number {\n return (((array[offset + 0] << 8) | array[offset + 1]) << 16) >> 16;\n}\n\n/**\n * Reads 2 bytes from array starting at offset as big-endian\n * unsigned 16-bit integer and returns it.\n */\nexport function readUint16BE(array: Uint8Array, offset = 0): number {\n return ((array[offset + 0] << 8) | array[offset + 1]) >>> 0;\n}\n\n/**\n * Reads 2 bytes from array starting at offset as little-endian\n * signed 16-bit integer and returns it.\n */\nexport function readInt16LE(array: Uint8Array, offset = 0): number {\n return (((array[offset + 1] << 8) | array[offset]) << 16) >> 16;\n}\n\n/**\n * Reads 2 bytes from array starting at offset as little-endian\n * unsigned 16-bit integer and returns it.\n */\nexport function readUint16LE(array: Uint8Array, offset = 0): number {\n return ((array[offset + 1] << 8) | array[offset]) >>> 0;\n}\n\n/**\n * Writes 2-byte big-endian representation of 16-bit unsigned\n * value to byte array starting at offset.\n *\n * If byte array is not given, creates a new 2-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint16BE(value: number, out = new Uint8Array(2), offset = 0): Uint8Array {\n out[offset + 0] = value >>> 8;\n out[offset + 1] = value >>> 0;\n return out;\n}\n\nexport const writeInt16BE = writeUint16BE;\n\n/**\n * Writes 2-byte little-endian representation of 16-bit unsigned\n * value to array starting at offset.\n *\n * If byte array is not given, creates a new 2-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint16LE(value: number, out = new Uint8Array(2), offset = 0): Uint8Array {\n out[offset + 0] = value >>> 0;\n out[offset + 1] = value >>> 8;\n return out;\n}\n\nexport const writeInt16LE = writeUint16LE;\n\n/**\n * Reads 4 bytes from array starting at offset as big-endian\n * signed 32-bit integer and returns it.\n */\nexport function readInt32BE(array: Uint8Array, offset = 0): number {\n return (array[offset] << 24) |\n (array[offset + 1] << 16) |\n (array[offset + 2] << 8) |\n array[offset + 3];\n}\n\n/**\n * Reads 4 bytes from array starting at offset as big-endian\n * unsigned 32-bit integer and returns it.\n */\nexport function readUint32BE(array: Uint8Array, offset = 0): number {\n return ((array[offset] << 24) |\n (array[offset + 1] << 16) |\n (array[offset + 2] << 8) |\n array[offset + 3]) >>> 0;\n}\n\n/**\n * Reads 4 bytes from array starting at offset as little-endian\n * signed 32-bit integer and returns it.\n */\nexport function readInt32LE(array: Uint8Array, offset = 0): number {\n return (array[offset + 3] << 24) |\n (array[offset + 2] << 16) |\n (array[offset + 1] << 8) |\n array[offset];\n}\n\n/**\n * Reads 4 bytes from array starting at offset as little-endian\n * unsigned 32-bit integer and returns it.\n */\nexport function readUint32LE(array: Uint8Array, offset = 0): number {\n return ((array[offset + 3] << 24) |\n (array[offset + 2] << 16) |\n (array[offset + 1] << 8) |\n array[offset]) >>> 0;\n}\n\n/**\n * Writes 4-byte big-endian representation of 32-bit unsigned\n * value to byte array starting at offset.\n *\n * If byte array is not given, creates a new 4-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint32BE(value: number, out = new Uint8Array(4), offset = 0): Uint8Array {\n out[offset + 0] = value >>> 24;\n out[offset + 1] = value >>> 16;\n out[offset + 2] = value >>> 8;\n out[offset + 3] = value >>> 0;\n return out;\n}\n\nexport const writeInt32BE = writeUint32BE;\n\n/**\n * Writes 4-byte little-endian representation of 32-bit unsigned\n * value to array starting at offset.\n *\n * If byte array is not given, creates a new 4-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint32LE(value: number, out = new Uint8Array(4), offset = 0): Uint8Array {\n out[offset + 0] = value >>> 0;\n out[offset + 1] = value >>> 8;\n out[offset + 2] = value >>> 16;\n out[offset + 3] = value >>> 24;\n return out;\n}\n\n\nexport const writeInt32LE = writeUint32LE;\n\n/**\n * Reads 8 bytes from array starting at offset as big-endian\n * signed 64-bit integer and returns it.\n *\n * IMPORTANT: due to JavaScript limitation, supports exact\n * numbers in range -9007199254740991 to 9007199254740991.\n * If the number stored in the byte array is outside this range,\n * the result is not exact.\n */\nexport function readInt64BE(array: Uint8Array, offset = 0): number {\n const hi = readInt32BE(array, offset);\n const lo = readInt32BE(array, offset + 4);\n return hi * 0x100000000 + lo - ((lo>>31) * 0x100000000);\n}\n\n/**\n * Reads 8 bytes from array starting at offset as big-endian\n * unsigned 64-bit integer and returns it.\n *\n * IMPORTANT: due to JavaScript limitation, supports values up to 2^53-1.\n */\nexport function readUint64BE(array: Uint8Array, offset = 0): number {\n const hi = readUint32BE(array, offset);\n const lo = readUint32BE(array, offset + 4);\n return hi * 0x100000000 + lo;\n}\n\n/**\n * Reads 8 bytes from array starting at offset as little-endian\n * signed 64-bit integer and returns it.\n *\n * IMPORTANT: due to JavaScript limitation, supports exact\n * numbers in range -9007199254740991 to 9007199254740991.\n * If the number stored in the byte array is outside this range,\n * the result is not exact.\n */\nexport function readInt64LE(array: Uint8Array, offset = 0): number {\n const lo = readInt32LE(array, offset);\n const hi = readInt32LE(array, offset + 4);\n return hi * 0x100000000 + lo - ((lo>>31) * 0x100000000);\n}\n\n\n/**\n * Reads 8 bytes from array starting at offset as little-endian\n * unsigned 64-bit integer and returns it.\n *\n * IMPORTANT: due to JavaScript limitation, supports values up to 2^53-1.\n */\nexport function readUint64LE(array: Uint8Array, offset = 0): number {\n const lo = readUint32LE(array, offset);\n const hi = readUint32LE(array, offset + 4);\n return hi * 0x100000000 + lo;\n}\n\n/**\n * Writes 8-byte big-endian representation of 64-bit unsigned\n * value to byte array starting at offset.\n *\n * Due to JavaScript limitation, supports values up to 2^53-1.\n *\n * If byte array is not given, creates a new 8-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint64BE(value: number, out = new Uint8Array(8), offset = 0): Uint8Array {\n writeUint32BE(value / 0x100000000 >>> 0, out, offset);\n writeUint32BE(value >>> 0, out, offset + 4);\n return out;\n}\n\nexport const writeInt64BE = writeUint64BE;\n\n/**\n * Writes 8-byte little-endian representation of 64-bit unsigned\n * value to byte array starting at offset.\n *\n * Due to JavaScript limitation, supports values up to 2^53-1.\n *\n * If byte array is not given, creates a new 8-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint64LE(value: number, out = new Uint8Array(8), offset = 0): Uint8Array {\n writeUint32LE(value >>> 0, out, offset);\n writeUint32LE(value / 0x100000000 >>> 0, out, offset + 4);\n return out;\n}\n\nexport const writeInt64LE = writeUint64LE;\n\n/**\n * Reads bytes from array starting at offset as big-endian\n * unsigned bitLen-bit integer and returns it.\n *\n * Supports bit lengths divisible by 8, up to 48.\n */\nexport function readUintBE(bitLength: number, array: Uint8Array, offset = 0): number {\n // TODO(dchest): implement support for bitLengths non-divisible by 8\n if (bitLength % 8 !== 0) {\n throw new Error(\"readUintBE supports only bitLengths divisible by 8\");\n }\n if (bitLength / 8 > array.length - offset) {\n throw new Error(\"readUintBE: array is too short for the given bitLength\");\n }\n let result = 0;\n let mul = 1;\n for (let i = bitLength / 8 + offset - 1; i >= offset; i--) {\n result += array[i] * mul;\n mul *= 256;\n }\n return result;\n}\n\n/**\n * Reads bytes from array starting at offset as little-endian\n * unsigned bitLen-bit integer and returns it.\n *\n * Supports bit lengths divisible by 8, up to 48.\n */\nexport function readUintLE(bitLength: number, array: Uint8Array, offset = 0): number {\n // TODO(dchest): implement support for bitLengths non-divisible by 8\n if (bitLength % 8 !== 0) {\n throw new Error(\"readUintLE supports only bitLengths divisible by 8\");\n }\n if (bitLength / 8 > array.length - offset) {\n throw new Error(\"readUintLE: array is too short for the given bitLength\");\n }\n let result = 0;\n let mul = 1;\n for (let i = offset; i < offset + bitLength / 8; i++) {\n result += array[i] * mul;\n mul *= 256;\n }\n return result;\n}\n\n/**\n * Writes a big-endian representation of bitLen-bit unsigned\n * value to array starting at offset.\n *\n * Supports bit lengths divisible by 8, up to 48.\n *\n * If byte array is not given, creates a new one.\n *\n * Returns the output byte array.\n */\nexport function writeUintBE(bitLength: number, value: number,\n out = new Uint8Array(bitLength / 8), offset = 0): Uint8Array {\n // TODO(dchest): implement support for bitLengths non-divisible by 8\n if (bitLength % 8 !== 0) {\n throw new Error(\"writeUintBE supports only bitLengths divisible by 8\");\n }\n if (!isSafeInteger(value)) {\n throw new Error(\"writeUintBE value must be an integer\");\n }\n let div = 1;\n for (let i = bitLength / 8 + offset - 1; i >= offset; i--) {\n out[i] = (value / div) & 0xff;\n div *= 256;\n }\n return out;\n}\n\n/**\n * Writes a little-endian representation of bitLen-bit unsigned\n * value to array starting at offset.\n *\n * Supports bit lengths divisible by 8, up to 48.\n *\n * If byte array is not given, creates a new one.\n *\n * Returns the output byte array.\n */\nexport function writeUintLE(bitLength: number, value: number,\n out = new Uint8Array(bitLength / 8), offset = 0): Uint8Array {\n // TODO(dchest): implement support for bitLengths non-divisible by 8\n if (bitLength % 8 !== 0) {\n throw new Error(\"writeUintLE supports only bitLengths divisible by 8\");\n }\n if (!isSafeInteger(value)) {\n throw new Error(\"writeUintLE value must be an integer\");\n }\n let div = 1;\n for (let i = offset; i < offset + bitLength / 8; i++) {\n out[i] = (value / div) & 0xff;\n div *= 256;\n }\n return out;\n}\n\n/**\n * Reads 4 bytes from array starting at offset as big-endian\n * 32-bit floating-point number and returns it.\n */\nexport function readFloat32BE(array: Uint8Array, offset = 0): number {\n const view = new DataView(array.buffer, array.byteOffset, array.byteLength);\n return view.getFloat32(offset);\n}\n\n/**\n * Reads 4 bytes from array starting at offset as little-endian\n * 32-bit floating-point number and returns it.\n */\nexport function readFloat32LE(array: Uint8Array, offset = 0): number {\n const view = new DataView(array.buffer, array.byteOffset, array.byteLength);\n return view.getFloat32(offset, true);\n}\n\n/**\n * Reads 8 bytes from array starting at offset as big-endian\n * 64-bit floating-point number (\"double\") and returns it.\n */\nexport function readFloat64BE(array: Uint8Array, offset = 0): number {\n const view = new DataView(array.buffer, array.byteOffset, array.byteLength);\n return view.getFloat64(offset);\n}\n\n/**\n * Reads 8 bytes from array starting at offset as little-endian\n * 64-bit floating-point number (\"double\") and returns it.\n */\nexport function readFloat64LE(array: Uint8Array, offset = 0): number {\n const view = new DataView(array.buffer, array.byteOffset, array.byteLength);\n return view.getFloat64(offset, true);\n}\n\n/**\n * Writes 4-byte big-endian floating-point representation of value\n * to byte array starting at offset.\n *\n * If byte array is not given, creates a new 4-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeFloat32BE(value: number, out = new Uint8Array(4), offset = 0): Uint8Array {\n const view = new DataView(out.buffer, out.byteOffset, out.byteLength);\n view.setFloat32(offset, value);\n return out;\n}\n\n/**\n * Writes 4-byte little-endian floating-point representation of value\n * to byte array starting at offset.\n *\n * If byte array is not given, creates a new 4-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeFloat32LE(value: number, out = new Uint8Array(4), offset = 0): Uint8Array {\n const view = new DataView(out.buffer, out.byteOffset, out.byteLength);\n view.setFloat32(offset, value, true);\n return out;\n}\n\n/**\n * Writes 8-byte big-endian floating-point representation of value\n * to byte array starting at offset.\n *\n * If byte array is not given, creates a new 8-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeFloat64BE(value: number, out = new Uint8Array(8), offset = 0): Uint8Array {\n const view = new DataView(out.buffer, out.byteOffset, out.byteLength);\n view.setFloat64(offset, value);\n return out;\n}\n\n/**\n * Writes 8-byte little-endian floating-point representation of value\n * to byte array starting at offset.\n *\n * If byte array is not given, creates a new 8-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeFloat64LE(value: number, out = new Uint8Array(8), offset = 0): Uint8Array {\n const view = new DataView(out.buffer, out.byteOffset, out.byteLength);\n view.setFloat64(offset, value, true);\n return out;\n}\n","// Copyright (C) 2017 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package blake2b implements BLAKE2b cryptographic hash function.\n */\n\nimport { SerializableHash } from \"@stablelib/hash\";\nimport { readUint32LE, writeUint32LE } from \"@stablelib/binary\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport const BLOCK_SIZE = 128;\nexport const DIGEST_LENGTH = 64;\nexport const KEY_LENGTH = 64;\nexport const PERSONALIZATION_LENGTH = 16;\nexport const SALT_LENGTH = 16;\n\nexport const MAX_LEAF_SIZE = Math.pow(2, 32) - 1;\nexport const MAX_FANOUT = 255;\nexport const MAX_MAX_DEPTH = 255; // not a typo\n\n/**\n * Configuration for hash function.\n */\nexport type Config = {\n key?: Uint8Array;\n salt?: Uint8Array;\n personalization?: Uint8Array;\n tree?: Tree;\n};\n\n/**\n * Tree hashing parameters.\n */\nexport type Tree = {\n fanout: number; // fanout\n maxDepth: number; // maximal depth\n leafSize: number; // leaf maximal byte length (0 for unlimited)\n nodeOffsetHighBits: number; // high bits of node offset\n nodeOffsetLowBits: number; // low bits of node offset (0 for first, leftmost or leaf)\n nodeDepth: number; // node depth (0 for leaves)\n innerDigestLength: number; // inner digest length\n lastNode: boolean; // indicates processing of the last node of layer\n};\n\nconst IV = new Uint32Array([\n // low bits // high bits\n 0xf3bcc908, 0x6a09e667,\n 0x84caa73b, 0xbb67ae85,\n 0xfe94f82b, 0x3c6ef372,\n 0x5f1d36f1, 0xa54ff53a,\n 0xade682d1, 0x510e527f,\n 0x2b3e6c1f, 0x9b05688c,\n 0xfb41bd6b, 0x1f83d9ab,\n 0x137e2179, 0x5be0cd19,\n]);\n\n// Note: sigma values are doubled since we store\n// 64-bit ints as two 32-bit ints in arrays.\nconst SIGMA = [\n [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30],\n [28, 20, 8, 16, 18, 30, 26, 12, 2, 24, 0, 4, 22, 14, 10, 6],\n [22, 16, 24, 0, 10, 4, 30, 26, 20, 28, 6, 12, 14, 2, 18, 8],\n [14, 18, 6, 2, 26, 24, 22, 28, 4, 12, 10, 20, 8, 0, 30, 16],\n [18, 0, 10, 14, 4, 8, 20, 30, 28, 2, 22, 24, 12, 16, 6, 26],\n [4, 24, 12, 20, 0, 22, 16, 6, 8, 26, 14, 10, 30, 28, 2, 18],\n [24, 10, 2, 30, 28, 26, 8, 20, 0, 14, 12, 6, 18, 4, 16, 22],\n [26, 22, 14, 28, 24, 2, 6, 18, 10, 0, 30, 8, 16, 12, 4, 20],\n [12, 30, 28, 18, 22, 6, 0, 16, 24, 4, 26, 14, 2, 8, 20, 10],\n [20, 4, 16, 8, 14, 12, 2, 10, 30, 22, 18, 28, 6, 24, 26, 0],\n [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30],\n [28, 20, 8, 16, 18, 30, 26, 12, 2, 24, 0, 4, 22, 14, 10, 6]\n];\n\n/**\n * BLAKE2b hash function.\n */\nexport class BLAKE2b implements SerializableHash {\n readonly blockSize = BLOCK_SIZE;\n\n // Note: Int32Arrays for state and message are used for performance reasons.\n private _state = new Int32Array(IV); // hash state, initialized with IV\n private _buffer = new Uint8Array(BLOCK_SIZE); // buffer for data\n private _bufferLength = 0; // number of bytes in buffer\n private _ctr = new Uint32Array(4);\n private _flag = new Uint32Array(4);\n private _lastNode = false;\n private _finished = false;\n\n private _vtmp = new Uint32Array(32);\n private _mtmp = new Uint32Array(32);\n\n private _paddedKey: Uint8Array | undefined; // copy of zero-padded key if present\n private _initialState: Uint32Array; // initial state after initialization\n\n constructor(public digestLength = 64, config?: Config) {\n // Validate digest length.\n if (digestLength < 1 || digestLength > DIGEST_LENGTH) {\n throw new Error(\"blake2b: wrong digest length\");\n }\n\n // Validate config, if present.\n if (config) {\n this.validateConfig(config);\n }\n\n // Get key length from config.\n let keyLength = 0;\n if (config && config.key) {\n keyLength = config.key.length;\n }\n\n // Get tree fanout and maxDepth from config.\n let fanout = 1;\n let maxDepth = 1;\n if (config && config.tree) {\n fanout = config.tree.fanout;\n maxDepth = config.tree.maxDepth;\n }\n\n // Xor common parameters into state.\n this._state[0] ^= digestLength | (keyLength << 8) | (fanout << 16) | (maxDepth << 24);\n\n // Xor tree parameters into state.\n if (config && config.tree) {\n this._state[1] ^= config.tree.leafSize;\n\n this._state[2] ^= config.tree.nodeOffsetLowBits;\n this._state[3] ^= config.tree.nodeOffsetHighBits;\n this._state[4] ^= config.tree.nodeDepth | (config.tree.innerDigestLength << 8);\n\n this._lastNode = config.tree.lastNode;\n }\n\n // Xor salt into state.\n if (config && config.salt) {\n this._state[8] ^= readUint32LE(config.salt, 0);\n this._state[9] ^= readUint32LE(config.salt, 4);\n this._state[10] ^= readUint32LE(config.salt, 8);\n this._state[11] ^= readUint32LE(config.salt, 12);\n }\n\n // Xor personalization into state.\n if (config && config.personalization) {\n this._state[12] ^= readUint32LE(config.personalization, 0);\n this._state[13] ^= readUint32LE(config.personalization, 4);\n this._state[14] ^= readUint32LE(config.personalization, 8);\n this._state[15] ^= readUint32LE(config.personalization, 12);\n }\n\n // Save a copy of initialized state for reset.\n this._initialState = new Uint32Array(this._state);\n\n // Process key.\n if (config && config.key && keyLength > 0) {\n this._paddedKey = new Uint8Array(BLOCK_SIZE);\n this._paddedKey.set(config.key);\n\n // Put padded key into buffer.\n this._buffer.set(this._paddedKey);\n this._bufferLength = BLOCK_SIZE;\n }\n }\n\n reset(): this {\n // Restore initial state.\n this._state.set(this._initialState);\n\n if (this._paddedKey) {\n // Put padded key into buffer.\n this._buffer.set(this._paddedKey);\n this._bufferLength = BLOCK_SIZE;\n } else {\n this._bufferLength = 0;\n }\n\n // Clear counters and flags.\n wipe(this._ctr);\n wipe(this._flag);\n this._finished = false;\n\n return this;\n }\n\n validateConfig(config: Config) {\n if (config.key && config.key.length > KEY_LENGTH) {\n throw new Error(\"blake2b: wrong key length\");\n }\n if (config.salt && config.salt.length !== SALT_LENGTH) {\n throw new Error(\"blake2b: wrong salt length\");\n }\n if (config.personalization &&\n config.personalization.length !== PERSONALIZATION_LENGTH) {\n throw new Error(\"blake2b: wrong personalization length\");\n }\n if (config.tree) {\n if (config.tree.fanout < 0 || config.tree.fanout > MAX_FANOUT) {\n throw new Error(\"blake2b: wrong tree fanout\");\n }\n if (config.tree.maxDepth < 0 || config.tree.maxDepth > MAX_MAX_DEPTH) {\n throw new Error(\"blake2b: wrong tree depth\");\n }\n if (config.tree.leafSize < 0 || config.tree.leafSize > MAX_LEAF_SIZE) {\n throw new Error(\"blake2b: wrong leaf size\");\n }\n if (config.tree.innerDigestLength < 0 ||\n config.tree.innerDigestLength > DIGEST_LENGTH) {\n throw new Error(\"blake2b: wrong tree inner digest length\");\n }\n }\n }\n\n update(data: Uint8Array, dataLength = data.length): this {\n if (this._finished) {\n throw new Error(\"blake2b: can't update because hash was finished.\");\n }\n\n const left = BLOCK_SIZE - this._bufferLength;\n let dataPos = 0;\n\n if (dataLength === 0) {\n return this;\n }\n\n // Finish buffer.\n if (dataLength > left) {\n for (let i = 0; i < left; i++) {\n this._buffer[this._bufferLength + i] = data[dataPos + i];\n }\n this._processBlock(BLOCK_SIZE);\n dataPos += left;\n dataLength -= left;\n this._bufferLength = 0;\n }\n\n // Process data blocks.\n while (dataLength > BLOCK_SIZE) {\n for (let i = 0; i < BLOCK_SIZE; i++) {\n this._buffer[i] = data[dataPos + i];\n }\n this._processBlock(BLOCK_SIZE);\n dataPos += BLOCK_SIZE;\n dataLength -= BLOCK_SIZE;\n this._bufferLength = 0;\n }\n\n // Copy leftovers to buffer.\n for (let i = 0; i < dataLength; i++) {\n this._buffer[this._bufferLength + i] = data[dataPos + i];\n }\n this._bufferLength += dataLength;\n\n return this;\n }\n\n finish(out: Uint8Array): this {\n if (!this._finished) {\n for (let i = this._bufferLength; i < BLOCK_SIZE; i++) {\n this._buffer[i] = 0;\n }\n\n // Set last block flag.\n this._flag[0] = 0xffffffff;\n this._flag[1] = 0xffffffff;\n\n // Set last node flag if last node in tree.\n if (this._lastNode) {\n this._flag[2] = 0xffffffff;\n this._flag[3] = 0xffffffff;\n }\n\n this._processBlock(this._bufferLength);\n this._finished = true;\n }\n // Reuse buffer as temporary space for digest.\n const tmp = this._buffer.subarray(0, 64);\n for (let i = 0; i < 16; i++) {\n writeUint32LE(this._state[i], tmp, i * 4);\n }\n out.set(tmp.subarray(0, out.length));\n return this;\n }\n\n digest(): Uint8Array {\n const out = new Uint8Array(this.digestLength);\n this.finish(out);\n return out;\n }\n\n clean() {\n wipe(this._vtmp);\n wipe(this._mtmp);\n wipe(this._state);\n wipe(this._buffer);\n wipe(this._initialState);\n if (this._paddedKey) {\n wipe(this._paddedKey);\n }\n this._bufferLength = 0;\n wipe(this._ctr);\n wipe(this._flag);\n this._lastNode = false;\n this._finished = false;\n }\n\n saveState(): SavedState {\n if (this._finished) {\n throw new Error(\"blake2b: cannot save finished state\");\n }\n return {\n state: new Uint32Array(this._state),\n buffer: new Uint8Array(this._buffer),\n bufferLength: this._bufferLength,\n ctr: new Uint32Array(this._ctr),\n flag: new Uint32Array(this._flag),\n lastNode: this._lastNode,\n paddedKey: this._paddedKey ? new Uint8Array(this._paddedKey) : undefined,\n initialState: new Uint32Array(this._initialState)\n };\n }\n\n restoreState(savedState: SavedState): this {\n this._state.set(savedState.state);\n this._buffer.set(savedState.buffer);\n this._bufferLength = savedState.bufferLength;\n this._ctr.set(savedState.ctr);\n this._flag.set(savedState.flag);\n this._lastNode = savedState.lastNode;\n if (this._paddedKey) {\n wipe(this._paddedKey);\n }\n this._paddedKey = savedState.paddedKey ? new Uint8Array(savedState.paddedKey) : undefined;\n this._initialState.set(savedState.initialState);\n return this;\n }\n\n cleanSavedState(savedState: SavedState): void {\n wipe(savedState.state);\n wipe(savedState.buffer);\n wipe(savedState.initialState);\n if (savedState.paddedKey) {\n wipe(savedState.paddedKey);\n }\n savedState.bufferLength = 0;\n wipe(savedState.ctr);\n wipe(savedState.flag);\n savedState.lastNode = false;\n }\n\n private _G(v: Uint32Array,\n al: number, bl: number, cl: number, dl: number,\n ah: number, bh: number, ch: number, dh: number,\n ml0: number, mh0: number,\n ml1: number, mh1: number) {\n let vla = v[al],\n vha = v[ah],\n vlb = v[bl],\n vhb = v[bh],\n vlc = v[cl],\n vhc = v[ch],\n vld = v[dl],\n vhd = v[dh];\n\n // 64-bit: va += vb\n let w = vla & 0xffff,\n x = vla >>> 16,\n y = vha & 0xffff,\n z = vha >>> 16;\n\n w += vlb & 0xffff; x += vlb >>> 16;\n y += vhb & 0xffff; z += vhb >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vha = (y & 0xffff) | (z << 16);\n vla = (w & 0xffff) | (x << 16);\n\n // 64-bit: va += m[sigma[r][2 * i + 0]]\n w = vla & 0xffff; x = vla >>> 16;\n y = vha & 0xffff; z = vha >>> 16;\n\n w += ml0 & 0xffff; x += ml0 >>> 16;\n y += mh0 & 0xffff; z += mh0 >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vha = (y & 0xffff) | (z << 16);\n vla = (w & 0xffff) | (x << 16);\n\n // 64-bit: vd ^= va\n vld ^= vla; vhd ^= vha;\n\n // 64-bit: rot(vd, 32)\n w = vhd; vhd = vld; vld = w;\n\n // 64-bit: vc += vd\n w = vlc & 0xffff; x = vlc >>> 16;\n y = vhc & 0xffff; z = vhc >>> 16;\n\n w += vld & 0xffff; x += vld >>> 16;\n y += vhd & 0xffff; z += vhd >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vhc = (y & 0xffff) | (z << 16);\n vlc = (w & 0xffff) | (x << 16);\n\n // 64-bit: vb ^= vc\n vlb ^= vlc; vhb ^= vhc;\n\n // 64-bit: rot(vb, 24)\n w = vlb << 8 | vhb >>> 24;\n vlb = vhb << 8 | vlb >>> 24;\n vhb = w;\n\n // 64-bit: va += vb\n w = vla & 0xffff; x = vla >>> 16;\n y = vha & 0xffff; z = vha >>> 16;\n\n w += vlb & 0xffff; x += vlb >>> 16;\n y += vhb & 0xffff; z += vhb >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vha = (y & 0xffff) | (z << 16);\n vla = (w & 0xffff) | (x << 16);\n\n // 64-bit: va += m[sigma[r][2 * i + 1]\n w = vla & 0xffff; x = vla >>> 16;\n y = vha & 0xffff; z = vha >>> 16;\n\n w += ml1 & 0xffff; x += ml1 >>> 16;\n y += mh1 & 0xffff; z += mh1 >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vha = (y & 0xffff) | (z << 16);\n vla = (w & 0xffff) | (x << 16);\n\n // 64-bit: vd ^= va\n vld ^= vla; vhd ^= vha;\n\n // 64-bit: rot(vd, 16)\n w = vld << 16 | vhd >>> 16;\n vld = vhd << 16 | vld >>> 16;\n vhd = w;\n\n // 64-bit: vc += vd\n w = vlc & 0xffff; x = vlc >>> 16;\n y = vhc & 0xffff; z = vhc >>> 16;\n\n w += vld & 0xffff; x += vld >>> 16;\n y += vhd & 0xffff; z += vhd >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vhc = (y & 0xffff) | (z << 16);\n vlc = (w & 0xffff) | (x << 16);\n\n // 64-bit: vb ^= vc\n vlb ^= vlc; vhb ^= vhc;\n\n // 64-bit: rot(vb, 63)\n w = vhb << 1 | vlb >>> 31;\n vlb = vlb << 1 | vhb >>> 31;\n vhb = w;\n\n v[al] = vla;\n v[ah] = vha;\n v[bl] = vlb;\n v[bh] = vhb;\n v[cl] = vlc;\n v[ch] = vhc;\n v[dl] = vld;\n v[dh] = vhd;\n }\n\n private _incrementCounter(n: number) {\n for (let i = 0; i < 3; i++) {\n let a = this._ctr[i] + n;\n this._ctr[i] = a >>> 0;\n if (this._ctr[i] === a) {\n return;\n }\n n = 1;\n }\n }\n\n private _processBlock(length: number) {\n this._incrementCounter(length);\n let v = this._vtmp;\n v.set(this._state);\n v.set(IV, 16);\n v[12 * 2 + 0] ^= this._ctr[0];\n v[12 * 2 + 1] ^= this._ctr[1];\n v[13 * 2 + 0] ^= this._ctr[2];\n v[13 * 2 + 1] ^= this._ctr[3];\n v[14 * 2 + 0] ^= this._flag[0];\n v[14 * 2 + 1] ^= this._flag[1];\n v[15 * 2 + 0] ^= this._flag[2];\n v[15 * 2 + 1] ^= this._flag[3];\n\n let m = this._mtmp;\n for (let i = 0; i < 32; i++) {\n m[i] = readUint32LE(this._buffer, i * 4);\n }\n\n for (let r = 0; r < 12; r++) {\n this._G(v,\n 0, 8, 16, 24,\n 1, 9, 17, 25,\n m[SIGMA[r][0]], m[SIGMA[r][0] + 1],\n m[SIGMA[r][1]], m[SIGMA[r][1] + 1]\n );\n\n this._G(v,\n 2, 10, 18, 26,\n 3, 11, 19, 27,\n m[SIGMA[r][2]], m[SIGMA[r][2] + 1],\n m[SIGMA[r][3]], m[SIGMA[r][3] + 1]\n );\n\n this._G(v,\n 4, 12, 20, 28,\n 5, 13, 21, 29,\n m[SIGMA[r][4]], m[SIGMA[r][4] + 1],\n m[SIGMA[r][5]], m[SIGMA[r][5] + 1]\n );\n\n this._G(v,\n 6, 14, 22, 30,\n 7, 15, 23, 31,\n m[SIGMA[r][6]], m[SIGMA[r][6] + 1],\n m[SIGMA[r][7]], m[SIGMA[r][7] + 1]\n );\n\n this._G(v,\n 0, 10, 20, 30,\n 1, 11, 21, 31,\n m[SIGMA[r][8]], m[SIGMA[r][8] + 1],\n m[SIGMA[r][9]], m[SIGMA[r][9] + 1]\n );\n\n this._G(v,\n 2, 12, 22, 24,\n 3, 13, 23, 25,\n m[SIGMA[r][10]], m[SIGMA[r][10] + 1],\n m[SIGMA[r][11]], m[SIGMA[r][11] + 1]\n );\n\n this._G(v,\n 4, 14, 16, 26,\n 5, 15, 17, 27,\n m[SIGMA[r][12]], m[SIGMA[r][12] + 1],\n m[SIGMA[r][13]], m[SIGMA[r][13] + 1]\n );\n\n this._G(v,\n 6, 8, 18, 28,\n 7, 9, 19, 29,\n m[SIGMA[r][14]], m[SIGMA[r][14] + 1],\n m[SIGMA[r][15]], m[SIGMA[r][15] + 1]\n );\n }\n\n for (let i = 0; i < 16; i++) {\n this._state[i] ^= v[i] ^ v[i + 16];\n }\n }\n}\n\nexport type SavedState = {\n state: Uint32Array;\n buffer: Uint8Array;\n bufferLength: number;\n ctr: Uint32Array;\n flag: Uint32Array;\n lastNode: boolean;\n paddedKey: Uint8Array | undefined;\n initialState: Uint32Array;\n};\n\nexport function hash(data: Uint8Array, digestLength = DIGEST_LENGTH, config?: Config): Uint8Array {\n const h = new BLAKE2b(digestLength, config);\n h.update(data);\n const digest = h.digest();\n h.clean();\n return digest;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package bytes provides functions for dealing with byte arrays.\n */\n\n/**\n * Concatenates byte arrays.\n */\nexport function concat(...arrays: Uint8Array[]): Uint8Array;\nexport function concat(): Uint8Array {\n // Calculate sum of lengths of all arrays.\n let totalLength = 0;\n for (let i = 0; i < arguments.length; i++) {\n totalLength += arguments[i].length;\n }\n\n // Allocate new array of calculated length.\n const result = new Uint8Array(totalLength);\n\n // Copy all arrays into result.\n let offset = 0;\n for (let i = 0; i < arguments.length; i++) {\n const arg = arguments[i];\n result.set(arg, offset);\n offset += arg.length;\n }\n\n return result;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package constant-time provides functions for performing algorithmically constant-time operations.\n */\n\n/**\n * NOTE! Due to the inability to guarantee real constant time evaluation of\n * anything in JavaScript VM, this is module is the best effort.\n */\n\n/**\n * Returns resultIfOne if subject is 1, or resultIfZero if subject is 0.\n *\n * Supports only 32-bit integers, so resultIfOne or resultIfZero are not\n * integers, they'll be converted to them with bitwise operations.\n */\nexport function select(subject: number, resultIfOne: number, resultIfZero: number): number {\n return (~(subject - 1) & resultIfOne) | ((subject - 1) & resultIfZero);\n}\n\n/**\n * Returns 1 if a <= b, or 0 if not.\n * Arguments must be positive 32-bit integers less than or equal to 2^31 - 1.\n */\nexport function lessOrEqual(a: number, b: number): number {\n return (((a | 0) - (b | 0) - 1) >>> 31) & 1;\n}\n\n/**\n * Returns 1 if a and b are of equal length and their contents\n * are equal, or 0 otherwise.\n *\n * Note that unlike in equal(), zero-length inputs are considered\n * the same, so this function will return 1.\n */\nexport function compare(a: Uint8Array, b: Uint8Array): number {\n if (a.length !== b.length) {\n return 0;\n }\n let result = 0;\n for (let i = 0; i < a.length; i++) {\n result |= a[i] ^ b[i];\n }\n return (1 & ((result - 1) >>> 8));\n}\n\n/**\n * Returns true if a and b are of equal non-zero length,\n * and their contents are equal, or false otherwise.\n *\n * Note that unlike in compare() zero-length inputs are considered\n * _not_ equal, so this function will return false.\n */\nexport function equal(a: Uint8Array, b: Uint8Array): boolean {\n if (a.length === 0 || b.length === 0) {\n return false;\n }\n return compare(a, b) !== 0;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package ed25519 implements Ed25519 public-key signature algorithm.\n */\n\nimport { randomBytes, RandomSource } from \"@stablelib/random\";\nimport { hash, SHA512 } from \"@stablelib/sha512\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport const SIGNATURE_LENGTH = 64;\nexport const PUBLIC_KEY_LENGTH = 32;\nexport const SECRET_KEY_LENGTH = 64;\nexport const SEED_LENGTH = 32;\n\n// TODO(dchest): some functions are copies of ../kex/x25519.\n// Find a way to combine them without opening up to public.\n\n// Ported from TweetNaCl.js, which was ported from TweetNaCl\n// by Dmitry Chestnykh and Devi Mandiri.\n// Public domain.\n// https://tweetnacl.js.org\n\n// TweetNaCl contributors:\n// Daniel J. Bernstein, Bernard van Gastel, Wesley Janssen,\n// Tanja Lange, Peter Schwabe, Sjaak Smetsers.\n// Public domain.\n// https://tweetnacl.cr.yp.to/\n\ntype GF = Float64Array;\n\n// Returns new zero-filled 16-element GF (Float64Array).\n// If passed an array of numbers, prefills the returned\n// array with them.\n//\n// We use Float64Array, because we need 48-bit numbers\n// for this implementation.\nfunction gf(init?: number[]): GF {\n const r = new Float64Array(16);\n if (init) {\n for (let i = 0; i < init.length; i++) {\n r[i] = init[i];\n }\n }\n return r;\n}\n\n// Base point.\nconst _9 = new Uint8Array(32); _9[0] = 9;\n\nconst gf0 = gf();\n\nconst gf1 = gf([1]);\n\nconst D = gf([\n 0x78a3, 0x1359, 0x4dca, 0x75eb, 0xd8ab, 0x4141, 0x0a4d, 0x0070,\n 0xe898, 0x7779, 0x4079, 0x8cc7, 0xfe73, 0x2b6f, 0x6cee, 0x5203\n]);\n\nconst D2 = gf([\n 0xf159, 0x26b2, 0x9b94, 0xebd6, 0xb156, 0x8283, 0x149a, 0x00e0,\n 0xd130, 0xeef3, 0x80f2, 0x198e, 0xfce7, 0x56df, 0xd9dc, 0x2406\n]);\n\nconst X = gf([\n 0xd51a, 0x8f25, 0x2d60, 0xc956, 0xa7b2, 0x9525, 0xc760, 0x692c,\n 0xdc5c, 0xfdd6, 0xe231, 0xc0a4, 0x53fe, 0xcd6e, 0x36d3, 0x2169\n]);\n\nconst Y = gf([\n 0x6658, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666,\n 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666\n]);\n\nconst I = gf([\n 0xa0b0, 0x4a0e, 0x1b27, 0xc4ee, 0xe478, 0xad2f, 0x1806, 0x2f43,\n 0xd7a7, 0x3dfb, 0x0099, 0x2b4d, 0xdf0b, 0x4fc1, 0x2480, 0x2b83\n]);\n\nfunction set25519(r: GF, a: GF) {\n for (let i = 0; i < 16; i++) {\n r[i] = a[i] | 0;\n }\n}\n\nfunction car25519(o: GF) {\n let c = 1;\n for (let i = 0; i < 16; i++) {\n let v = o[i] + c + 65535;\n c = Math.floor(v / 65536);\n o[i] = v - c * 65536;\n }\n o[0] += c - 1 + 37 * (c - 1);\n}\n\nfunction sel25519(p: GF, q: GF, b: number) {\n const c = ~(b - 1);\n for (let i = 0; i < 16; i++) {\n const t = c & (p[i] ^ q[i]);\n p[i] ^= t;\n q[i] ^= t;\n }\n}\n\nfunction pack25519(o: Uint8Array, n: GF) {\n const m = gf();\n const t = gf();\n for (let i = 0; i < 16; i++) {\n t[i] = n[i];\n }\n car25519(t);\n car25519(t);\n car25519(t);\n for (let j = 0; j < 2; j++) {\n m[0] = t[0] - 0xffed;\n for (let i = 1; i < 15; i++) {\n m[i] = t[i] - 0xffff - ((m[i - 1] >> 16) & 1);\n m[i - 1] &= 0xffff;\n }\n m[15] = t[15] - 0x7fff - ((m[14] >> 16) & 1);\n const b = (m[15] >> 16) & 1;\n m[14] &= 0xffff;\n sel25519(t, m, 1 - b);\n }\n for (let i = 0; i < 16; i++) {\n o[2 * i] = t[i] & 0xff;\n o[2 * i + 1] = t[i] >> 8;\n }\n}\n\nfunction verify32(x: Uint8Array, y: Uint8Array) {\n let d = 0;\n for (let i = 0; i < 32; i++) {\n d |= x[i] ^ y[i];\n }\n return (1 & ((d - 1) >>> 8)) - 1;\n}\n\n\nfunction neq25519(a: GF, b: GF) {\n const c = new Uint8Array(32);\n const d = new Uint8Array(32);\n pack25519(c, a);\n pack25519(d, b);\n return verify32(c, d);\n}\n\nfunction par25519(a: GF) {\n const d = new Uint8Array(32);\n pack25519(d, a);\n return d[0] & 1;\n}\n\nfunction unpack25519(o: GF, n: Uint8Array) {\n for (let i = 0; i < 16; i++) {\n o[i] = n[2 * i] + (n[2 * i + 1] << 8);\n }\n o[15] &= 0x7fff;\n}\n\nfunction add(o: GF, a: GF, b: GF) {\n for (let i = 0; i < 16; i++) {\n o[i] = a[i] + b[i];\n }\n}\n\nfunction sub(o: GF, a: GF, b: GF) {\n for (let i = 0; i < 16; i++) {\n o[i] = a[i] - b[i];\n }\n}\n\nfunction mul(o: GF, a: GF, b: GF) {\n let v: number, c: number,\n t0 = 0, t1 = 0, t2 = 0, t3 = 0, t4 = 0, t5 = 0, t6 = 0, t7 = 0,\n t8 = 0, t9 = 0, t10 = 0, t11 = 0, t12 = 0, t13 = 0, t14 = 0, t15 = 0,\n t16 = 0, t17 = 0, t18 = 0, t19 = 0, t20 = 0, t21 = 0, t22 = 0, t23 = 0,\n t24 = 0, t25 = 0, t26 = 0, t27 = 0, t28 = 0, t29 = 0, t30 = 0,\n b0 = b[0],\n b1 = b[1],\n b2 = b[2],\n b3 = b[3],\n b4 = b[4],\n b5 = b[5],\n b6 = b[6],\n b7 = b[7],\n b8 = b[8],\n b9 = b[9],\n b10 = b[10],\n b11 = b[11],\n b12 = b[12],\n b13 = b[13],\n b14 = b[14],\n b15 = b[15];\n\n v = a[0];\n t0 += v * b0;\n t1 += v * b1;\n t2 += v * b2;\n t3 += v * b3;\n t4 += v * b4;\n t5 += v * b5;\n t6 += v * b6;\n t7 += v * b7;\n t8 += v * b8;\n t9 += v * b9;\n t10 += v * b10;\n t11 += v * b11;\n t12 += v * b12;\n t13 += v * b13;\n t14 += v * b14;\n t15 += v * b15;\n v = a[1];\n t1 += v * b0;\n t2 += v * b1;\n t3 += v * b2;\n t4 += v * b3;\n t5 += v * b4;\n t6 += v * b5;\n t7 += v * b6;\n t8 += v * b7;\n t9 += v * b8;\n t10 += v * b9;\n t11 += v * b10;\n t12 += v * b11;\n t13 += v * b12;\n t14 += v * b13;\n t15 += v * b14;\n t16 += v * b15;\n v = a[2];\n t2 += v * b0;\n t3 += v * b1;\n t4 += v * b2;\n t5 += v * b3;\n t6 += v * b4;\n t7 += v * b5;\n t8 += v * b6;\n t9 += v * b7;\n t10 += v * b8;\n t11 += v * b9;\n t12 += v * b10;\n t13 += v * b11;\n t14 += v * b12;\n t15 += v * b13;\n t16 += v * b14;\n t17 += v * b15;\n v = a[3];\n t3 += v * b0;\n t4 += v * b1;\n t5 += v * b2;\n t6 += v * b3;\n t7 += v * b4;\n t8 += v * b5;\n t9 += v * b6;\n t10 += v * b7;\n t11 += v * b8;\n t12 += v * b9;\n t13 += v * b10;\n t14 += v * b11;\n t15 += v * b12;\n t16 += v * b13;\n t17 += v * b14;\n t18 += v * b15;\n v = a[4];\n t4 += v * b0;\n t5 += v * b1;\n t6 += v * b2;\n t7 += v * b3;\n t8 += v * b4;\n t9 += v * b5;\n t10 += v * b6;\n t11 += v * b7;\n t12 += v * b8;\n t13 += v * b9;\n t14 += v * b10;\n t15 += v * b11;\n t16 += v * b12;\n t17 += v * b13;\n t18 += v * b14;\n t19 += v * b15;\n v = a[5];\n t5 += v * b0;\n t6 += v * b1;\n t7 += v * b2;\n t8 += v * b3;\n t9 += v * b4;\n t10 += v * b5;\n t11 += v * b6;\n t12 += v * b7;\n t13 += v * b8;\n t14 += v * b9;\n t15 += v * b10;\n t16 += v * b11;\n t17 += v * b12;\n t18 += v * b13;\n t19 += v * b14;\n t20 += v * b15;\n v = a[6];\n t6 += v * b0;\n t7 += v * b1;\n t8 += v * b2;\n t9 += v * b3;\n t10 += v * b4;\n t11 += v * b5;\n t12 += v * b6;\n t13 += v * b7;\n t14 += v * b8;\n t15 += v * b9;\n t16 += v * b10;\n t17 += v * b11;\n t18 += v * b12;\n t19 += v * b13;\n t20 += v * b14;\n t21 += v * b15;\n v = a[7];\n t7 += v * b0;\n t8 += v * b1;\n t9 += v * b2;\n t10 += v * b3;\n t11 += v * b4;\n t12 += v * b5;\n t13 += v * b6;\n t14 += v * b7;\n t15 += v * b8;\n t16 += v * b9;\n t17 += v * b10;\n t18 += v * b11;\n t19 += v * b12;\n t20 += v * b13;\n t21 += v * b14;\n t22 += v * b15;\n v = a[8];\n t8 += v * b0;\n t9 += v * b1;\n t10 += v * b2;\n t11 += v * b3;\n t12 += v * b4;\n t13 += v * b5;\n t14 += v * b6;\n t15 += v * b7;\n t16 += v * b8;\n t17 += v * b9;\n t18 += v * b10;\n t19 += v * b11;\n t20 += v * b12;\n t21 += v * b13;\n t22 += v * b14;\n t23 += v * b15;\n v = a[9];\n t9 += v * b0;\n t10 += v * b1;\n t11 += v * b2;\n t12 += v * b3;\n t13 += v * b4;\n t14 += v * b5;\n t15 += v * b6;\n t16 += v * b7;\n t17 += v * b8;\n t18 += v * b9;\n t19 += v * b10;\n t20 += v * b11;\n t21 += v * b12;\n t22 += v * b13;\n t23 += v * b14;\n t24 += v * b15;\n v = a[10];\n t10 += v * b0;\n t11 += v * b1;\n t12 += v * b2;\n t13 += v * b3;\n t14 += v * b4;\n t15 += v * b5;\n t16 += v * b6;\n t17 += v * b7;\n t18 += v * b8;\n t19 += v * b9;\n t20 += v * b10;\n t21 += v * b11;\n t22 += v * b12;\n t23 += v * b13;\n t24 += v * b14;\n t25 += v * b15;\n v = a[11];\n t11 += v * b0;\n t12 += v * b1;\n t13 += v * b2;\n t14 += v * b3;\n t15 += v * b4;\n t16 += v * b5;\n t17 += v * b6;\n t18 += v * b7;\n t19 += v * b8;\n t20 += v * b9;\n t21 += v * b10;\n t22 += v * b11;\n t23 += v * b12;\n t24 += v * b13;\n t25 += v * b14;\n t26 += v * b15;\n v = a[12];\n t12 += v * b0;\n t13 += v * b1;\n t14 += v * b2;\n t15 += v * b3;\n t16 += v * b4;\n t17 += v * b5;\n t18 += v * b6;\n t19 += v * b7;\n t20 += v * b8;\n t21 += v * b9;\n t22 += v * b10;\n t23 += v * b11;\n t24 += v * b12;\n t25 += v * b13;\n t26 += v * b14;\n t27 += v * b15;\n v = a[13];\n t13 += v * b0;\n t14 += v * b1;\n t15 += v * b2;\n t16 += v * b3;\n t17 += v * b4;\n t18 += v * b5;\n t19 += v * b6;\n t20 += v * b7;\n t21 += v * b8;\n t22 += v * b9;\n t23 += v * b10;\n t24 += v * b11;\n t25 += v * b12;\n t26 += v * b13;\n t27 += v * b14;\n t28 += v * b15;\n v = a[14];\n t14 += v * b0;\n t15 += v * b1;\n t16 += v * b2;\n t17 += v * b3;\n t18 += v * b4;\n t19 += v * b5;\n t20 += v * b6;\n t21 += v * b7;\n t22 += v * b8;\n t23 += v * b9;\n t24 += v * b10;\n t25 += v * b11;\n t26 += v * b12;\n t27 += v * b13;\n t28 += v * b14;\n t29 += v * b15;\n v = a[15];\n t15 += v * b0;\n t16 += v * b1;\n t17 += v * b2;\n t18 += v * b3;\n t19 += v * b4;\n t20 += v * b5;\n t21 += v * b6;\n t22 += v * b7;\n t23 += v * b8;\n t24 += v * b9;\n t25 += v * b10;\n t26 += v * b11;\n t27 += v * b12;\n t28 += v * b13;\n t29 += v * b14;\n t30 += v * b15;\n\n t0 += 38 * t16;\n t1 += 38 * t17;\n t2 += 38 * t18;\n t3 += 38 * t19;\n t4 += 38 * t20;\n t5 += 38 * t21;\n t6 += 38 * t22;\n t7 += 38 * t23;\n t8 += 38 * t24;\n t9 += 38 * t25;\n t10 += 38 * t26;\n t11 += 38 * t27;\n t12 += 38 * t28;\n t13 += 38 * t29;\n t14 += 38 * t30;\n // t15 left as is\n\n // first car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c - 1 + 37 * (c - 1);\n\n // second car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c - 1 + 37 * (c - 1);\n\n o[0] = t0;\n o[1] = t1;\n o[2] = t2;\n o[3] = t3;\n o[4] = t4;\n o[5] = t5;\n o[6] = t6;\n o[7] = t7;\n o[8] = t8;\n o[9] = t9;\n o[10] = t10;\n o[11] = t11;\n o[12] = t12;\n o[13] = t13;\n o[14] = t14;\n o[15] = t15;\n}\n\nfunction square(o: GF, a: GF) {\n mul(o, a, a);\n}\n\nfunction inv25519(o: GF, i: GF) {\n const c = gf();\n let a: number;\n for (a = 0; a < 16; a++) {\n c[a] = i[a];\n }\n for (a = 253; a >= 0; a--) {\n square(c, c);\n if (a !== 2 && a !== 4) {\n mul(c, c, i);\n }\n }\n for (a = 0; a < 16; a++) {\n o[a] = c[a];\n }\n}\n\nfunction pow2523(o: GF, i: GF) {\n const c = gf();\n let a: number;\n for (a = 0; a < 16; a++) {\n c[a] = i[a];\n }\n for (a = 250; a >= 0; a--) {\n square(c, c);\n if (a !== 1) {\n mul(c, c, i);\n }\n }\n for (a = 0; a < 16; a++) {\n o[a] = c[a];\n }\n}\n\n\nfunction edadd(p: GF[], q: GF[]) {\n const a = gf(), b = gf(), c = gf(),\n d = gf(), e = gf(), f = gf(),\n g = gf(), h = gf(), t = gf();\n\n sub(a, p[1], p[0]);\n sub(t, q[1], q[0]);\n mul(a, a, t);\n add(b, p[0], p[1]);\n add(t, q[0], q[1]);\n mul(b, b, t);\n mul(c, p[3], q[3]);\n mul(c, c, D2);\n mul(d, p[2], q[2]);\n add(d, d, d);\n sub(e, b, a);\n sub(f, d, c);\n add(g, d, c);\n add(h, b, a);\n\n mul(p[0], e, f);\n mul(p[1], h, g);\n mul(p[2], g, f);\n mul(p[3], e, h);\n}\n\nfunction cswap(p: GF[], q: GF[], b: number) {\n for (let i = 0; i < 4; i++) {\n sel25519(p[i], q[i], b);\n }\n}\n\nfunction pack(r: Uint8Array, p: GF[]) {\n const tx = gf(), ty = gf(), zi = gf();\n inv25519(zi, p[2]);\n mul(tx, p[0], zi);\n mul(ty, p[1], zi);\n pack25519(r, ty);\n r[31] ^= par25519(tx) << 7;\n}\n\nfunction scalarmult(p: GF[], q: GF[], s: Uint8Array) {\n set25519(p[0], gf0);\n set25519(p[1], gf1);\n set25519(p[2], gf1);\n set25519(p[3], gf0);\n for (let i = 255; i >= 0; --i) {\n const b = (s[(i / 8) | 0] >> (i & 7)) & 1;\n cswap(p, q, b);\n edadd(q, p);\n edadd(p, p);\n cswap(p, q, b);\n }\n}\n\nfunction scalarbase(p: GF[], s: Uint8Array) {\n const q = [gf(), gf(), gf(), gf()];\n set25519(q[0], X);\n set25519(q[1], Y);\n set25519(q[2], gf1);\n mul(q[3], X, Y);\n scalarmult(p, q, s);\n}\n\nexport interface KeyPair {\n publicKey: Uint8Array;\n secretKey: Uint8Array;\n}\n\n// Generates key pair from secret 32-byte seed.\nexport function generateKeyPairFromSeed(seed: Uint8Array): KeyPair {\n if (seed.length !== SEED_LENGTH) {\n throw new Error(`ed25519: seed must be ${SEED_LENGTH} bytes`);\n }\n\n const d = hash(seed);\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n\n const publicKey = new Uint8Array(32);\n const p = [gf(), gf(), gf(), gf()];\n scalarbase(p, d);\n pack(publicKey, p);\n\n const secretKey = new Uint8Array(64);\n secretKey.set(seed);\n secretKey.set(publicKey, 32);\n\n return {\n publicKey,\n secretKey\n };\n}\n\nexport function generateKeyPair(prng?: RandomSource): KeyPair {\n const seed = randomBytes(32, prng);\n const result = generateKeyPairFromSeed(seed);\n wipe(seed);\n return result;\n}\n\nexport function extractPublicKeyFromSecretKey(secretKey: Uint8Array): Uint8Array {\n if (secretKey.length !== SECRET_KEY_LENGTH) {\n throw new Error(`ed25519: secret key must be ${SECRET_KEY_LENGTH} bytes`);\n }\n return new Uint8Array(secretKey.subarray(32));\n}\n\nconst L = new Float64Array([\n 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2,\n 0xde, 0xf9, 0xde, 0x14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x10\n]);\n\nfunction modL(r: Uint8Array, x: Float64Array) {\n let carry: number;\n let i: number;\n let j: number;\n let k: number;\n for (i = 63; i >= 32; --i) {\n carry = 0;\n for (j = i - 32, k = i - 12; j < k; ++j) {\n x[j] += carry - 16 * x[i] * L[j - (i - 32)];\n carry = Math.floor((x[j] + 128) / 256);\n x[j] -= carry * 256;\n }\n x[j] += carry;\n x[i] = 0;\n }\n carry = 0;\n for (j = 0; j < 32; j++) {\n x[j] += carry - (x[31] >> 4) * L[j];\n carry = x[j] >> 8;\n x[j] &= 255;\n }\n for (j = 0; j < 32; j++) {\n x[j] -= carry * L[j];\n }\n for (i = 0; i < 32; i++) {\n x[i + 1] += x[i] >> 8;\n r[i] = x[i] & 255;\n }\n}\n\nfunction reduce(r: Uint8Array) {\n const x = new Float64Array(64);\n for (let i = 0; i < 64; i++) {\n x[i] = r[i];\n }\n for (let i = 0; i < 64; i++) {\n r[i] = 0;\n }\n modL(r, x);\n}\n\n// Returns 64-byte signature of the message under the 64-byte secret key.\nexport function sign(secretKey: Uint8Array, message: Uint8Array): Uint8Array {\n const x = new Float64Array(64);\n const p = [gf(), gf(), gf(), gf()];\n\n const d = hash(secretKey.subarray(0, 32));\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n\n const signature = new Uint8Array(64);\n signature.set(d.subarray(32), 32);\n\n const hs = new SHA512();\n hs.update(signature.subarray(32));\n hs.update(message);\n const r = hs.digest();\n hs.clean();\n reduce(r);\n scalarbase(p, r);\n pack(signature, p);\n\n hs.reset();\n hs.update(signature.subarray(0, 32));\n hs.update(secretKey.subarray(32));\n hs.update(message);\n const h = hs.digest();\n reduce(h);\n\n for (let i = 0; i < 32; i++) {\n x[i] = r[i];\n }\n for (let i = 0; i < 32; i++) {\n for (let j = 0; j < 32; j++) {\n x[i + j] += h[i] * d[j];\n }\n }\n modL(signature.subarray(32), x);\n\n return signature;\n}\n\nfunction unpackneg(r: GF[], p: Uint8Array) {\n const t = gf(), chk = gf(), num = gf(),\n den = gf(), den2 = gf(), den4 = gf(),\n den6 = gf();\n\n set25519(r[2], gf1);\n unpack25519(r[1], p);\n square(num, r[1]);\n mul(den, num, D);\n sub(num, num, r[2]);\n add(den, r[2], den);\n\n square(den2, den);\n square(den4, den2);\n mul(den6, den4, den2);\n mul(t, den6, num);\n mul(t, t, den);\n\n pow2523(t, t);\n mul(t, t, num);\n mul(t, t, den);\n mul(t, t, den);\n mul(r[0], t, den);\n\n square(chk, r[0]);\n mul(chk, chk, den);\n if (neq25519(chk, num)) {\n mul(r[0], r[0], I);\n }\n\n square(chk, r[0]);\n mul(chk, chk, den);\n if (neq25519(chk, num)) {\n return -1;\n }\n\n if (par25519(r[0]) === (p[31] >> 7)) {\n sub(r[0], gf0, r[0]);\n }\n\n mul(r[3], r[0], r[1]);\n return 0;\n}\n\nexport function verify(publicKey: Uint8Array, message: Uint8Array, signature: Uint8Array): boolean {\n const t = new Uint8Array(32);\n const p = [gf(), gf(), gf(), gf()];\n const q = [gf(), gf(), gf(), gf()];\n\n if (signature.length !== SIGNATURE_LENGTH) {\n throw new Error(`ed25519: signature must be ${SIGNATURE_LENGTH} bytes`);\n }\n\n if (unpackneg(q, publicKey)) {\n return false;\n }\n\n const hs = new SHA512();\n hs.update(signature.subarray(0, 32));\n hs.update(publicKey);\n hs.update(message);\n const h = hs.digest();\n reduce(h);\n scalarmult(p, q, h);\n\n scalarbase(q, signature.subarray(32));\n edadd(p, q);\n pack(t, p);\n\n if (verify32(signature, t)) {\n return false;\n }\n return true;\n}\n\n/**\n * Convert Ed25519 public key to X25519 public key.\n *\n * Throws if given an invalid public key.\n */\nexport function convertPublicKeyToX25519(publicKey: Uint8Array): Uint8Array {\n let q = [gf(), gf(), gf(), gf()];\n\n if (unpackneg(q, publicKey)) {\n throw new Error(\"Ed25519: invalid public key\");\n }\n\n // Formula: montgomeryX = (edwardsY + 1)*inverse(1 - edwardsY) mod p\n let a = gf();\n let b = gf();\n let y = q[1];\n add(a, gf1, y);\n sub(b, gf1, y);\n inv25519(b, b);\n mul(a, a, b);\n\n let z = new Uint8Array(32);\n pack25519(z, a);\n return z;\n}\n\n/**\n * Convert Ed25519 secret (private) key to X25519 secret key.\n */\nexport function convertSecretKeyToX25519(secretKey: Uint8Array): Uint8Array {\n const d = hash(secretKey.subarray(0, 32));\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n const o = new Uint8Array(d.subarray(0, 32));\n wipe(d);\n return o;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package hash provides interface for hash functions.\n */\n\n/**\n * Hash interface describes properties of\n * cryptographic hash functions.\n */\nexport interface Hash {\n readonly digestLength: number;\n readonly blockSize: number;\n update(data: Uint8Array): this;\n reset(): this;\n finish(out: Uint8Array): this;\n digest(): Uint8Array;\n clean(): void;\n}\n\nexport interface SerializableHash extends Hash {\n saveState(): any;\n restoreState(savedState: any): this;\n cleanSavedState(savedState: any): void;\n}\n\nexport function isSerializableHash(h: Hash): h is SerializableHash {\n return (\n typeof (h as SerializableHash).saveState !== \"undefined\" &&\n typeof (h as SerializableHash).restoreState !== \"undefined\" &&\n typeof (h as SerializableHash).cleanSavedState !== \"undefined\"\n );\n}\n\n// TODO(dchest): figure out the standardized interface for XOF such as\n// SHAKE and BLAKE2X.\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package hmac implements HMAC algorithm.\n */\n\nimport { Hash, SerializableHash, isSerializableHash } from \"@stablelib/hash\";\nimport { equal as constantTimeEqual } from \"@stablelib/constant-time\";\nimport { wipe } from \"@stablelib/wipe\";\n\n/**\n * HMAC implements hash-based message authentication algorithm.\n */\nexport class HMAC implements SerializableHash {\n readonly blockSize: number;\n readonly digestLength: number;\n\n private _inner: Hash; // inner hash\n private _outer: Hash; // outer hash\n\n private _finished = false; // true if HMAC was finalized\n\n // Copies of hash states after keying.\n // Need for quick reset without hashing the key again.\n private _innerKeyedState: any | undefined;\n private _outerKeyedState: any | undefined;\n\n /**\n * Constructs a new HMAC with the given Hash and secret key.\n */\n constructor(hash: new () => Hash | SerializableHash, key: Uint8Array) {\n // Initialize inner and outer hashes.\n this._inner = new hash();\n this._outer = new hash();\n\n // Set block and digest sizes for this HMAC\n // instance to values from the hash.\n this.blockSize = this._outer.blockSize;\n this.digestLength = this._outer.digestLength;\n\n // Pad temporary stores a key (or its hash) padded with zeroes.\n const pad = new Uint8Array(this.blockSize);\n\n if (key.length > this.blockSize) {\n // If key is bigger than hash block size, it must be\n // hashed and this hash is used as a key instead.\n this._inner.update(key).finish(pad).clean();\n } else {\n // Otherwise, copy the key into pad.\n pad.set(key);\n }\n\n // Now two different keys are derived from padded key\n // by xoring a different byte value to each.\n\n // To make inner hash key, xor byte 0x36 into pad.\n for (let i = 0; i < pad.length; i++) {\n pad[i] ^= 0x36;\n }\n // Update inner hash with the result.\n this._inner.update(pad);\n\n // To make outer hash key, xor byte 0x5c into pad.\n // But since we already xored 0x36 there, we must\n // first undo this by xoring it again.\n for (let i = 0; i < pad.length; i++) {\n pad[i] ^= 0x36 ^ 0x5c;\n }\n // Update outer hash with the result.\n this._outer.update(pad);\n\n // Save states of both hashes, so that we can quickly restore\n // them later in reset() without the need to remember the actual\n // key and perform this initialization again.\n if (isSerializableHash(this._inner) && isSerializableHash(this._outer)) {\n this._innerKeyedState = this._inner.saveState();\n this._outerKeyedState = this._outer.saveState();\n }\n\n // Clean pad.\n wipe(pad);\n }\n\n /**\n * Returns HMAC state to the state initialized with key\n * to make it possible to run HMAC over the other data with the same\n * key without creating a new instance.\n */\n reset(): this {\n if (!isSerializableHash(this._inner) || !isSerializableHash(this._outer)) {\n throw new Error(\"hmac: can't reset() because hash doesn't implement restoreState()\");\n }\n // Restore keyed states of inner and outer hashes.\n this._inner.restoreState(this._innerKeyedState);\n this._outer.restoreState(this._outerKeyedState);\n this._finished = false;\n return this;\n }\n\n /**\n * Cleans HMAC state.\n */\n clean() {\n if (isSerializableHash(this._inner)) {\n this._inner.cleanSavedState(this._innerKeyedState);\n }\n if (isSerializableHash(this._outer)) {\n this._outer.cleanSavedState(this._outerKeyedState);\n }\n this._inner.clean();\n this._outer.clean();\n }\n\n /**\n * Updates state with provided data.\n */\n update(data: Uint8Array): this {\n this._inner.update(data);\n return this;\n }\n\n /**\n * Finalizes HMAC and puts the result in out.\n */\n finish(out: Uint8Array): this {\n if (this._finished) {\n // If HMAC was finalized, outer hash is also finalized,\n // so it produces the same digest it produced when it\n // was finalized.\n this._outer.finish(out);\n return this;\n }\n\n // Finalize inner hash and store the result temporarily.\n this._inner.finish(out);\n\n // Update outer hash with digest of inner hash and and finalize it.\n this._outer.update(out.subarray(0, this.digestLength)).finish(out);\n this._finished = true;\n\n return this;\n }\n\n /**\n * Returns the computed message authentication code.\n */\n digest(): Uint8Array {\n const out = new Uint8Array(this.digestLength);\n this.finish(out);\n return out;\n }\n\n /**\n * Saves HMAC state.\n * This function is needed for PBKDF2 optimization.\n */\n saveState(): any {\n if (!isSerializableHash(this._inner)) {\n throw new Error(\"hmac: can't saveState() because hash doesn't implement it\");\n }\n return this._inner.saveState();\n }\n\n restoreState(savedState: any): this {\n if (!isSerializableHash(this._inner) || !isSerializableHash(this._outer)) {\n throw new Error(\"hmac: can't restoreState() because hash doesn't implement it\");\n }\n this._inner.restoreState(savedState);\n this._outer.restoreState(this._outerKeyedState);\n this._finished = false;\n return this;\n }\n\n cleanSavedState(savedState: any) {\n if (!isSerializableHash(this._inner)) {\n throw new Error(\"hmac: can't cleanSavedState() because hash doesn't implement it\");\n }\n this._inner.cleanSavedState(savedState);\n }\n}\n\n/**\n * Returns HMAC using the given hash constructor for the key over data.\n */\nexport function hmac(hash: new () => Hash, key: Uint8Array, data: Uint8Array): Uint8Array {\n const h = new HMAC(hash, key);\n h.update(data);\n const digest = h.digest();\n h.clean();\n return digest;\n}\n\n/**\n * Returns true if two HMAC digests are equal.\n * Uses constant-time comparison to avoid leaking timing information.\n *\n * Example:\n *\n * const receivedDigest = ...\n * const realDigest = hmac(SHA256, key, data);\n * if (!equal(receivedDigest, realDigest)) {\n * throw new Error(\"Authentication error\");\n * }\n */\nexport const equal = constantTimeEqual;\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package int provides helper functions for integerss.\n */\n\n// Shim using 16-bit pieces.\nfunction imulShim(a: number, b: number): number {\n const ah = (a >>> 16) & 0xffff, al = a & 0xffff;\n const bh = (b >>> 16) & 0xffff, bl = b & 0xffff;\n return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0) | 0);\n}\n\n/** 32-bit integer multiplication. */\n// Use system Math.imul if available, otherwise use our shim.\nexport const mul = (Math as { imul?(a: number, b: number): number }).imul || imulShim;\n\n/** 32-bit integer addition. */\nexport function add(a: number, b: number): number {\n return (a + b) | 0;\n}\n\n/** 32-bit integer subtraction. */\nexport function sub(a: number, b: number): number {\n return (a - b) | 0;\n}\n\n/** 32-bit integer left rotation */\nexport function rotl(x: number, n: number): number {\n return x << n | x >>> (32 - n);\n}\n\n/** 32-bit integer left rotation */\nexport function rotr(x: number, n: number): number {\n return x << (32 - n) | x >>> n;\n}\n\nfunction isIntegerShim(n: number): boolean {\n return typeof n === \"number\" && isFinite(n) && Math.floor(n) === n;\n}\n\n/**\n * Returns true if the argument is an integer number.\n *\n * In ES2015, Number.isInteger.\n */\nexport const isInteger = (Number as { isInteger?(n: number): boolean }).isInteger || isIntegerShim;\n\n/**\n * Math.pow(2, 53) - 1\n *\n * In ES2015 Number.MAX_SAFE_INTEGER.\n */\nexport const MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Returns true if the argument is a safe integer number\n * (-MIN_SAFE_INTEGER < number <= MAX_SAFE_INTEGER)\n *\n * In ES2015, Number.isSafeInteger.\n */\nexport const isSafeInteger = (n: number): boolean =>\n isInteger(n) && (n >= -MAX_SAFE_INTEGER && n <= MAX_SAFE_INTEGER);\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { scalarMult } from \"@stablelib/x25519\";\nimport { hsalsa } from \"@stablelib/xsalsa20\";\nimport { secretBox, openSecretBox } from \"./secretbox\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport { generateKeyPair } from \"@stablelib/x25519\";\n\nconst zeros16 = new Uint8Array(16);\n\nexport function precomputeSharedKey(theirPublicKey: Uint8Array, mySecretKey: Uint8Array): Uint8Array {\n // Compute scalar multiplication result.\n const key = scalarMult(mySecretKey, theirPublicKey);\n\n // Hash key with HSalsa function.\n hsalsa(key, zeros16, key);\n\n return key;\n}\n\nexport function box(theirPublicKey: Uint8Array, mySecretKey: Uint8Array,\n nonce: Uint8Array, data: Uint8Array): Uint8Array {\n const sharedKey = precomputeSharedKey(theirPublicKey, mySecretKey);\n const result = secretBox(sharedKey, nonce, data);\n wipe(sharedKey);\n return result;\n}\n\nexport function openBox(theirPublicKey: Uint8Array, mySecretKey: Uint8Array,\n nonce: Uint8Array, data: Uint8Array): Uint8Array | null {\n const sharedKey = precomputeSharedKey(theirPublicKey, mySecretKey);\n const result = openSecretBox(sharedKey, nonce, data);\n wipe(sharedKey);\n return result;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package nacl implements NaCl (Networking and Cryptography library) cryptography.\n */\n\nexport * from \"./box\";\nexport * from \"./secretbox\";\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { streamXOR, stream } from \"@stablelib/xsalsa20\";\nimport { oneTimeAuth, equal as authEqual } from \"@stablelib/poly1305\";\nimport { wipe } from \"@stablelib/wipe\";\nimport { randomBytes, RandomSource } from \"@stablelib/random\";\n\nexport function secretBox(key: Uint8Array, nonce: Uint8Array, data: Uint8Array): Uint8Array {\n if (nonce.length !== 24) {\n throw new Error(\"secretBox nonce must be 24 bytes\");\n }\n const firstBlock = new Uint8Array(64);\n\n // Allocate place for nonce and counter.\n const nonceCounter = new Uint8Array(24 + 8);\n\n // Set first bytes to nonce. Last 8 bytes will be counter.\n nonceCounter.set(nonce);\n\n // Generate first block of XSalsa20 stream, of which\n // first 32 bytes will be authentication key, and the rest\n // will be used for encryption.\n stream(key, nonceCounter, firstBlock, 8);\n\n // Allocate result, which will contain 16-byte authenticator\n // concatenated with ciphertext.\n const result = new Uint8Array(16 + data.length);\n\n // Encrypt first 32 bytes of data with last 32 bytes of generated stream.\n for (let i = 0; i < 32 && i < data.length; i++) {\n result[16 + i] = data[i] ^ firstBlock[32 + i];\n }\n\n // Encrypt the rest of data.\n if (data.length > 32) {\n streamXOR(key, nonceCounter, data.subarray(32), result.subarray(16 + 32), 8);\n }\n\n // Calculate Poly1305 authenticator of encrypted data using\n // authentication key in the first block of XSalsa20 stream.\n const auth = oneTimeAuth(firstBlock.subarray(0, 32), result.subarray(16));\n\n // Copy authenticator to the beginning of result.\n for (let i = 0; i < auth.length; i++) {\n result[i] = auth[i];\n }\n\n // Clean auth.\n wipe(auth);\n\n // Clean first block.\n wipe(firstBlock);\n\n // Clean nonceCounter.\n wipe(nonceCounter);\n\n return result;\n}\n\nexport function openSecretBox(key: Uint8Array, nonce: Uint8Array, box: Uint8Array): Uint8Array | null {\n if (nonce.length !== 24) {\n throw new Error(\"secretBox nonce must be 24 bytes\");\n }\n if (box.length < 16) {\n throw new Error(\"secretBox data must be at least 16 bytes\");\n }\n const firstBlock = new Uint8Array(64);\n\n // Allocate place for nonce and counter.\n const nonceCounter = new Uint8Array(24 + 8);\n\n // Set first bytes to nonce. Last 8 bytes will be counter.\n nonceCounter.set(nonce);\n\n // Generate first block of XSalsa20 stream, of which\n // first 32 bytes will be authentication key, and the rest\n // will be used for encryption.\n stream(key, nonceCounter, firstBlock, 8);\n\n // Calculate Poly1305 authenticator of encrypted data using\n // authentication key in the first block of XSalsa20 stream.\n const auth = oneTimeAuth(firstBlock.subarray(0, 32), box.subarray(16));\n\n // Check authenticator.\n if (!authEqual(auth, box.subarray(0, 16))) {\n // Authenticator is incorrect: ciphertext or authenticator\n // was corrupted, maybe maliciously.\n return null;\n }\n\n // Authenticator verifies, so we can decrypt ciphertext.\n const ciphertext = box.subarray(16);\n\n // Allocate result array.\n const result = new Uint8Array(ciphertext.length);\n\n // Decrypt first 32 bytes of box with last 32 bytes of generated stream.\n for (let i = 0; i < 32 && i < ciphertext.length; i++) {\n result[i] = ciphertext[i] ^ firstBlock[32 + i];\n }\n\n // Decrypt the rest of data.\n if (ciphertext.length > 32) {\n streamXOR(key, nonceCounter, ciphertext.subarray(32), result.subarray(32), 8);\n }\n\n // Clean auth.\n wipe(auth);\n\n // Clean first block.\n wipe(firstBlock);\n\n // Clean nonceCounter.\n wipe(nonceCounter);\n\n return result;\n}\n\n/** Generates a 32-byte random secret key. */\nexport function generateKey(prng?: RandomSource): Uint8Array {\n return randomBytes(32, prng);\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package poly1305 implements Poly1305 one-time message authentication algorithm.\n */\n\nimport { equal as constantTimeEqual } from \"@stablelib/constant-time\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport const DIGEST_LENGTH = 16;\n\n// Port of Andrew Moon's Poly1305-donna-16. Public domain.\n// https://github.com/floodyberry/poly1305-donna\n\n/**\n * Poly1305 computes 16-byte authenticator of message using\n * a one-time 32-byte key.\n *\n * Important: key should be used for only one message,\n * it should never repeat.\n */\nexport class Poly1305 {\n readonly digestLength = DIGEST_LENGTH;\n\n private _buffer = new Uint8Array(16);\n private _r = new Uint16Array(10);\n private _h = new Uint16Array(10);\n private _pad = new Uint16Array(8);\n private _leftover = 0;\n private _fin = 0;\n private _finished = false;\n\n constructor(key: Uint8Array) {\n let t0 = key[0] | key[1] << 8; this._r[0] = (t0) & 0x1fff;\n let t1 = key[2] | key[3] << 8; this._r[1] = ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n let t2 = key[4] | key[5] << 8; this._r[2] = ((t1 >>> 10) | (t2 << 6)) & 0x1f03;\n let t3 = key[6] | key[7] << 8; this._r[3] = ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n let t4 = key[8] | key[9] << 8; this._r[4] = ((t3 >>> 4) | (t4 << 12)) & 0x00ff;\n this._r[5] = ((t4 >>> 1)) & 0x1ffe;\n let t5 = key[10] | key[11] << 8; this._r[6] = ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n let t6 = key[12] | key[13] << 8; this._r[7] = ((t5 >>> 11) | (t6 << 5)) & 0x1f81;\n let t7 = key[14] | key[15] << 8; this._r[8] = ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n this._r[9] = ((t7 >>> 5)) & 0x007f;\n\n this._pad[0] = key[16] | key[17] << 8;\n this._pad[1] = key[18] | key[19] << 8;\n this._pad[2] = key[20] | key[21] << 8;\n this._pad[3] = key[22] | key[23] << 8;\n this._pad[4] = key[24] | key[25] << 8;\n this._pad[5] = key[26] | key[27] << 8;\n this._pad[6] = key[28] | key[29] << 8;\n this._pad[7] = key[30] | key[31] << 8;\n }\n\n private _blocks(m: Uint8Array, mpos: number, bytes: number) {\n let hibit = this._fin ? 0 : 1 << 11;\n\n let h0 = this._h[0],\n h1 = this._h[1],\n h2 = this._h[2],\n h3 = this._h[3],\n h4 = this._h[4],\n h5 = this._h[5],\n h6 = this._h[6],\n h7 = this._h[7],\n h8 = this._h[8],\n h9 = this._h[9];\n\n let r0 = this._r[0],\n r1 = this._r[1],\n r2 = this._r[2],\n r3 = this._r[3],\n r4 = this._r[4],\n r5 = this._r[5],\n r6 = this._r[6],\n r7 = this._r[7],\n r8 = this._r[8],\n r9 = this._r[9];\n\n while (bytes >= 16) {\n let t0 = m[mpos + 0] | m[mpos + 1] << 8; h0 += (t0) & 0x1fff;\n let t1 = m[mpos + 2] | m[mpos + 3] << 8; h1 += ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n let t2 = m[mpos + 4] | m[mpos + 5] << 8; h2 += ((t1 >>> 10) | (t2 << 6)) & 0x1fff;\n let t3 = m[mpos + 6] | m[mpos + 7] << 8; h3 += ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n let t4 = m[mpos + 8] | m[mpos + 9] << 8; h4 += ((t3 >>> 4) | (t4 << 12)) & 0x1fff;\n h5 += ((t4 >>> 1)) & 0x1fff;\n let t5 = m[mpos + 10] | m[mpos + 11] << 8; h6 += ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n let t6 = m[mpos + 12] | m[mpos + 13] << 8; h7 += ((t5 >>> 11) | (t6 << 5)) & 0x1fff;\n let t7 = m[mpos + 14] | m[mpos + 15] << 8; h8 += ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n h9 += ((t7 >>> 5)) | hibit;\n\n let c = 0;\n\n let d0 = c;\n d0 += h0 * r0;\n d0 += h1 * (5 * r9);\n d0 += h2 * (5 * r8);\n d0 += h3 * (5 * r7);\n d0 += h4 * (5 * r6);\n c = (d0 >>> 13); d0 &= 0x1fff;\n d0 += h5 * (5 * r5);\n d0 += h6 * (5 * r4);\n d0 += h7 * (5 * r3);\n d0 += h8 * (5 * r2);\n d0 += h9 * (5 * r1);\n c += (d0 >>> 13); d0 &= 0x1fff;\n\n let d1 = c;\n d1 += h0 * r1;\n d1 += h1 * r0;\n d1 += h2 * (5 * r9);\n d1 += h3 * (5 * r8);\n d1 += h4 * (5 * r7);\n c = (d1 >>> 13); d1 &= 0x1fff;\n d1 += h5 * (5 * r6);\n d1 += h6 * (5 * r5);\n d1 += h7 * (5 * r4);\n d1 += h8 * (5 * r3);\n d1 += h9 * (5 * r2);\n c += (d1 >>> 13); d1 &= 0x1fff;\n\n let d2 = c;\n d2 += h0 * r2;\n d2 += h1 * r1;\n d2 += h2 * r0;\n d2 += h3 * (5 * r9);\n d2 += h4 * (5 * r8);\n c = (d2 >>> 13); d2 &= 0x1fff;\n d2 += h5 * (5 * r7);\n d2 += h6 * (5 * r6);\n d2 += h7 * (5 * r5);\n d2 += h8 * (5 * r4);\n d2 += h9 * (5 * r3);\n c += (d2 >>> 13); d2 &= 0x1fff;\n\n let d3 = c;\n d3 += h0 * r3;\n d3 += h1 * r2;\n d3 += h2 * r1;\n d3 += h3 * r0;\n d3 += h4 * (5 * r9);\n c = (d3 >>> 13); d3 &= 0x1fff;\n d3 += h5 * (5 * r8);\n d3 += h6 * (5 * r7);\n d3 += h7 * (5 * r6);\n d3 += h8 * (5 * r5);\n d3 += h9 * (5 * r4);\n c += (d3 >>> 13); d3 &= 0x1fff;\n\n let d4 = c;\n d4 += h0 * r4;\n d4 += h1 * r3;\n d4 += h2 * r2;\n d4 += h3 * r1;\n d4 += h4 * r0;\n c = (d4 >>> 13); d4 &= 0x1fff;\n d4 += h5 * (5 * r9);\n d4 += h6 * (5 * r8);\n d4 += h7 * (5 * r7);\n d4 += h8 * (5 * r6);\n d4 += h9 * (5 * r5);\n c += (d4 >>> 13); d4 &= 0x1fff;\n\n let d5 = c;\n d5 += h0 * r5;\n d5 += h1 * r4;\n d5 += h2 * r3;\n d5 += h3 * r2;\n d5 += h4 * r1;\n c = (d5 >>> 13); d5 &= 0x1fff;\n d5 += h5 * r0;\n d5 += h6 * (5 * r9);\n d5 += h7 * (5 * r8);\n d5 += h8 * (5 * r7);\n d5 += h9 * (5 * r6);\n c += (d5 >>> 13); d5 &= 0x1fff;\n\n let d6 = c;\n d6 += h0 * r6;\n d6 += h1 * r5;\n d6 += h2 * r4;\n d6 += h3 * r3;\n d6 += h4 * r2;\n c = (d6 >>> 13); d6 &= 0x1fff;\n d6 += h5 * r1;\n d6 += h6 * r0;\n d6 += h7 * (5 * r9);\n d6 += h8 * (5 * r8);\n d6 += h9 * (5 * r7);\n c += (d6 >>> 13); d6 &= 0x1fff;\n\n let d7 = c;\n d7 += h0 * r7;\n d7 += h1 * r6;\n d7 += h2 * r5;\n d7 += h3 * r4;\n d7 += h4 * r3;\n c = (d7 >>> 13); d7 &= 0x1fff;\n d7 += h5 * r2;\n d7 += h6 * r1;\n d7 += h7 * r0;\n d7 += h8 * (5 * r9);\n d7 += h9 * (5 * r8);\n c += (d7 >>> 13); d7 &= 0x1fff;\n\n let d8 = c;\n d8 += h0 * r8;\n d8 += h1 * r7;\n d8 += h2 * r6;\n d8 += h3 * r5;\n d8 += h4 * r4;\n c = (d8 >>> 13); d8 &= 0x1fff;\n d8 += h5 * r3;\n d8 += h6 * r2;\n d8 += h7 * r1;\n d8 += h8 * r0;\n d8 += h9 * (5 * r9);\n c += (d8 >>> 13); d8 &= 0x1fff;\n\n let d9 = c;\n d9 += h0 * r9;\n d9 += h1 * r8;\n d9 += h2 * r7;\n d9 += h3 * r6;\n d9 += h4 * r5;\n c = (d9 >>> 13); d9 &= 0x1fff;\n d9 += h5 * r4;\n d9 += h6 * r3;\n d9 += h7 * r2;\n d9 += h8 * r1;\n d9 += h9 * r0;\n c += (d9 >>> 13); d9 &= 0x1fff;\n\n c = (((c << 2) + c)) | 0;\n c = (c + d0) | 0;\n d0 = c & 0x1fff;\n c = (c >>> 13);\n d1 += c;\n\n h0 = d0;\n h1 = d1;\n h2 = d2;\n h3 = d3;\n h4 = d4;\n h5 = d5;\n h6 = d6;\n h7 = d7;\n h8 = d8;\n h9 = d9;\n\n mpos += 16;\n bytes -= 16;\n }\n this._h[0] = h0;\n this._h[1] = h1;\n this._h[2] = h2;\n this._h[3] = h3;\n this._h[4] = h4;\n this._h[5] = h5;\n this._h[6] = h6;\n this._h[7] = h7;\n this._h[8] = h8;\n this._h[9] = h9;\n }\n\n finish(mac: Uint8Array, macpos = 0): this {\n const g = new Uint16Array(10);\n let c: number;\n let mask: number;\n let f: number;\n let i: number;\n\n if (this._leftover) {\n i = this._leftover;\n this._buffer[i++] = 1;\n for (; i < 16; i++) {\n this._buffer[i] = 0;\n }\n this._fin = 1;\n this._blocks(this._buffer, 0, 16);\n }\n\n c = this._h[1] >>> 13;\n this._h[1] &= 0x1fff;\n for (i = 2; i < 10; i++) {\n this._h[i] += c;\n c = this._h[i] >>> 13;\n this._h[i] &= 0x1fff;\n }\n this._h[0] += (c * 5);\n c = this._h[0] >>> 13;\n this._h[0] &= 0x1fff;\n this._h[1] += c;\n c = this._h[1] >>> 13;\n this._h[1] &= 0x1fff;\n this._h[2] += c;\n\n g[0] = this._h[0] + 5;\n c = g[0] >>> 13;\n g[0] &= 0x1fff;\n for (i = 1; i < 10; i++) {\n g[i] = this._h[i] + c;\n c = g[i] >>> 13;\n g[i] &= 0x1fff;\n }\n g[9] -= (1 << 13);\n\n mask = (c ^ 1) - 1;\n for (i = 0; i < 10; i++) {\n g[i] &= mask;\n }\n mask = ~mask;\n for (i = 0; i < 10; i++) {\n this._h[i] = (this._h[i] & mask) | g[i];\n }\n\n this._h[0] = ((this._h[0]) | (this._h[1] << 13)) & 0xffff;\n this._h[1] = ((this._h[1] >>> 3) | (this._h[2] << 10)) & 0xffff;\n this._h[2] = ((this._h[2] >>> 6) | (this._h[3] << 7)) & 0xffff;\n this._h[3] = ((this._h[3] >>> 9) | (this._h[4] << 4)) & 0xffff;\n this._h[4] = ((this._h[4] >>> 12) | (this._h[5] << 1) | (this._h[6] << 14)) & 0xffff;\n this._h[5] = ((this._h[6] >>> 2) | (this._h[7] << 11)) & 0xffff;\n this._h[6] = ((this._h[7] >>> 5) | (this._h[8] << 8)) & 0xffff;\n this._h[7] = ((this._h[8] >>> 8) | (this._h[9] << 5)) & 0xffff;\n\n f = this._h[0] + this._pad[0];\n this._h[0] = f & 0xffff;\n for (i = 1; i < 8; i++) {\n f = (((this._h[i] + this._pad[i]) | 0) + (f >>> 16)) | 0;\n this._h[i] = f & 0xffff;\n }\n\n mac[macpos + 0] = this._h[0] >>> 0;\n mac[macpos + 1] = this._h[0] >>> 8;\n mac[macpos + 2] = this._h[1] >>> 0;\n mac[macpos + 3] = this._h[1] >>> 8;\n mac[macpos + 4] = this._h[2] >>> 0;\n mac[macpos + 5] = this._h[2] >>> 8;\n mac[macpos + 6] = this._h[3] >>> 0;\n mac[macpos + 7] = this._h[3] >>> 8;\n mac[macpos + 8] = this._h[4] >>> 0;\n mac[macpos + 9] = this._h[4] >>> 8;\n mac[macpos + 10] = this._h[5] >>> 0;\n mac[macpos + 11] = this._h[5] >>> 8;\n mac[macpos + 12] = this._h[6] >>> 0;\n mac[macpos + 13] = this._h[6] >>> 8;\n mac[macpos + 14] = this._h[7] >>> 0;\n mac[macpos + 15] = this._h[7] >>> 8;\n\n this._finished = true;\n return this;\n }\n\n update(m: Uint8Array): this {\n let mpos = 0;\n let bytes = m.length;\n let want: number;\n\n if (this._leftover) {\n want = (16 - this._leftover);\n if (want > bytes) {\n want = bytes;\n }\n for (let i = 0; i < want; i++) {\n this._buffer[this._leftover + i] = m[mpos + i];\n }\n bytes -= want;\n mpos += want;\n this._leftover += want;\n if (this._leftover < 16) {\n return this;\n }\n this._blocks(this._buffer, 0, 16);\n this._leftover = 0;\n }\n\n if (bytes >= 16) {\n want = bytes - (bytes % 16);\n this._blocks(m, mpos, want);\n mpos += want;\n bytes -= want;\n }\n\n if (bytes) {\n for (let i = 0; i < bytes; i++) {\n this._buffer[this._leftover + i] = m[mpos + i];\n }\n this._leftover += bytes;\n }\n\n return this;\n }\n\n digest(): Uint8Array {\n // TODO(dchest): it behaves differently than other hashes/HMAC,\n // because it throws when finished — others just return saved result.\n if (this._finished) {\n throw new Error(\"Poly1305 was finished\");\n }\n let mac = new Uint8Array(16);\n this.finish(mac);\n return mac;\n }\n\n clean(): this {\n wipe(this._buffer);\n wipe(this._r);\n wipe(this._h);\n wipe(this._pad);\n this._leftover = 0;\n this._fin = 0;\n this._finished = true; // mark as finished even if not\n return this;\n }\n}\n\n/**\n * Returns 16-byte authenticator of data using a one-time 32-byte key.\n *\n * Important: key should be used for only one message, it should never repeat.\n */\nexport function oneTimeAuth(key: Uint8Array, data: Uint8Array): Uint8Array {\n const h = new Poly1305(key);\n h.update(data);\n const digest = h.digest();\n h.clean();\n return digest;\n}\n\n/**\n * Returns true if two authenticators are 16-byte long and equal.\n * Uses contant-time comparison to avoid leaking timing information.\n */\nexport function equal(a: Uint8Array, b: Uint8Array): boolean {\n if (a.length !== DIGEST_LENGTH || b.length !== DIGEST_LENGTH) {\n return false;\n }\n return constantTimeEqual(a, b);\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package random provides functions to access system's\n * cryptographically secure random byte generator.\n */\n\nimport { RandomSource } from \"./source\";\nimport { SystemRandomSource } from \"./source/system\";\nimport { readUint32LE } from \"@stablelib/binary\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport { RandomSource } from \"./source\";\n\nexport const defaultRandomSource = new SystemRandomSource();\n\nexport function randomBytes(length: number, prng: RandomSource = defaultRandomSource): Uint8Array {\n return prng.randomBytes(length);\n}\n\n/**\n * Returns a uniformly random unsigned 32-bit integer.\n */\nexport function randomUint32(prng: RandomSource = defaultRandomSource): number {\n // Generate 4-byte random buffer.\n const buf = randomBytes(4, prng);\n\n // Convert bytes from buffer into a 32-bit integer.\n // It's not important which byte order to use, since\n // the result is random.\n const result = readUint32LE(buf);\n\n // Clean the buffer.\n wipe(buf);\n\n return result;\n}\n\n/** 62 alphanumeric characters for default charset of randomString() */\nconst ALPHANUMERIC = \"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\n\n/**\n * Returns a uniform random string of the given length\n * with characters from the given charset.\n *\n * Charset must not have more than 256 characters.\n *\n * Default charset generates case-sensitive alphanumeric\n * strings (0-9, A-Z, a-z).\n */\nexport function randomString(\n length: number,\n charset = ALPHANUMERIC,\n prng: RandomSource = defaultRandomSource\n): string {\n if (charset.length < 2) {\n throw new Error(\"randomString charset is too short\");\n }\n if (charset.length > 256) {\n throw new Error(\"randomString charset is too long\");\n }\n let out = '';\n const charsLen = charset.length;\n const maxByte = 256 - (256 % charsLen);\n while (length > 0) {\n const buf = randomBytes(Math.ceil(length * 256 / maxByte), prng);\n for (let i = 0; i < buf.length && length > 0; i++) {\n const randomByte = buf[i];\n if (randomByte < maxByte) {\n out += charset.charAt(randomByte % charsLen);\n length--;\n }\n }\n wipe(buf);\n }\n return out;\n}\n\n/**\n * Returns uniform random string containing at least the given\n * number of bits of entropy.\n *\n * For example, randomStringForEntropy(128) will return a 22-character\n * alphanumeric string, while randomStringForEntropy(128, \"0123456789\")\n * will return a 39-character numeric string, both will contain at\n * least 128 bits of entropy.\n *\n * Default charset generates case-sensitive alphanumeric\n * strings (0-9, A-Z, a-z).\n */\nexport function randomStringForEntropy(\n bits: number,\n charset = ALPHANUMERIC,\n prng: RandomSource = defaultRandomSource\n): string {\n const length = Math.ceil(bits / (Math.log(charset.length) / Math.LN2));\n return randomString(length, charset, prng);\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { RandomSource } from \"./\";\n\nconst QUOTA = 65536;\n\nexport class BrowserRandomSource implements RandomSource {\n isAvailable = false;\n isInstantiated = false;\n\n private _crypto?: { getRandomValues: typeof window.crypto.getRandomValues };\n\n constructor() {\n const browserCrypto = typeof self !== 'undefined'\n ? (self.crypto || (self as { msCrypto?: any }).msCrypto) // IE11 has msCrypto\n : null;\n\n if (browserCrypto && browserCrypto.getRandomValues !== undefined) {\n this._crypto = browserCrypto;\n this.isAvailable = true;\n this.isInstantiated = true;\n }\n }\n\n randomBytes(length: number): Uint8Array {\n if (!this.isAvailable || !this._crypto) {\n throw new Error(\"Browser random byte generator is not available.\");\n }\n const out = new Uint8Array(length);\n for (let i = 0; i < out.length; i += QUOTA) {\n this._crypto.getRandomValues(out.subarray(i, i + Math.min(out.length - i, QUOTA)));\n }\n return out;\n }\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { RandomSource } from \"./\";\nimport { wipe } from \"@stablelib/wipe\";\n\ndeclare function require(name: string): any;\n\nexport class NodeRandomSource implements RandomSource {\n isAvailable = false;\n isInstantiated = false;\n\n private _crypto: { randomBytes(n: number): Uint8Array } | undefined;\n\n constructor() {\n if (typeof require !== \"undefined\") {\n const nodeCrypto = require(\"crypto\");\n if (nodeCrypto && nodeCrypto.randomBytes) {\n this._crypto = nodeCrypto;\n this.isAvailable = true;\n this.isInstantiated = true;\n }\n }\n }\n\n randomBytes(length: number): Uint8Array {\n if (!this.isAvailable || !this._crypto) {\n throw new Error(\"Node.js random byte generator is not available.\");\n }\n\n // Get random bytes (result is Buffer).\n let buffer = this._crypto.randomBytes(length);\n\n // Make sure we got the length that we requested.\n if (buffer.length !== length) {\n throw new Error(\"NodeRandomSource: got fewer bytes than requested\");\n }\n\n // Allocate output array.\n const out = new Uint8Array(length);\n\n // Copy bytes from buffer to output.\n for (let i = 0; i < out.length; i++) {\n out[i] = buffer[i];\n }\n\n // Cleanup.\n wipe(buffer);\n\n return out;\n }\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { RandomSource } from \"./\";\nimport { BrowserRandomSource } from \"./browser\";\nimport { NodeRandomSource } from \"./node\";\n\nexport class SystemRandomSource implements RandomSource {\n isAvailable = false;\n name = \"\";\n private _source: RandomSource;\n\n constructor() {\n // Try browser.\n this._source = new BrowserRandomSource();\n if (this._source.isAvailable) {\n this.isAvailable = true;\n this.name = \"Browser\";\n return;\n }\n\n // If no browser source, try Node.\n this._source = new NodeRandomSource();\n if (this._source.isAvailable) {\n this.isAvailable = true;\n this.name = \"Node\";\n return;\n }\n\n // No sources, we're out of options.\n }\n\n randomBytes(length: number): Uint8Array {\n if (!this.isAvailable) {\n throw new Error(\"System random byte generator is not available.\");\n }\n return this._source.randomBytes(length);\n }\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package salsa20 implements Salsa20 stream cipher.\n */\n\nimport { writeUint32LE } from \"@stablelib/binary\";\nimport { wipe } from \"@stablelib/wipe\";\n\n// Number of Salsa20 rounds (Salsa20/20).\nconst ROUNDS = 20;\n\n/**\n * Applies the Salsa20 core function to 16-byte input,\n * 32-byte key key, and puts the result into 64-byte array out.\n */\nfunction core(out: Uint8Array, input: Uint8Array, key: Uint8Array): void {\n let j0 = 0x61707865; // \"expa\"\n let j1 = (key[3] << 24) | (key[2] << 16) | (key[1] << 8) | key[0];\n let j2 = (key[7] << 24) | (key[6] << 16) | (key[5] << 8) | key[4];\n let j3 = (key[11] << 24) | (key[10] << 16) | (key[9] << 8) | key[8];\n let j4 = (key[15] << 24) | (key[14] << 16) | (key[13] << 8) | key[12];\n let j5 = 0x3320646E; // \"nd 3\"\n let j6 = (input[3] << 24) | (input[2] << 16) | (input[1] << 8) | input[0];\n let j7 = (input[7] << 24) | (input[6] << 16) | (input[5] << 8) | input[4];\n let j8 = (input[11] << 24) | (input[10] << 16) | (input[9] << 8) | input[8];\n let j9 = (input[15] << 24) | (input[14] << 16) | (input[13] << 8) | input[12];\n let j10 = 0x79622D32; // \"2-by\"\n let j11 = (key[19] << 24) | (key[18] << 16) | (key[17] << 8) | key[16];\n let j12 = (key[23] << 24) | (key[22] << 16) | (key[21] << 8) | key[20];\n let j13 = (key[27] << 24) | (key[26] << 16) | (key[25] << 8) | key[24];\n let j14 = (key[31] << 24) | (key[30] << 16) | (key[29] << 8) | key[28];\n let j15 = 0x6B206574; // \"te k\"\n\n let x0 = j0;\n let x1 = j1;\n let x2 = j2;\n let x3 = j3;\n let x4 = j4;\n let x5 = j5;\n let x6 = j6;\n let x7 = j7;\n let x8 = j8;\n let x9 = j9;\n let x10 = j10;\n let x11 = j11;\n let x12 = j12;\n let x13 = j13;\n let x14 = j14;\n let x15 = j15;\n let u: number;\n\n for (let i = 0; i < ROUNDS; i += 2) {\n u = x0 + x12 | 0;\n x4 ^= u << 7 | u >>> (32 - 7);\n u = x4 + x0 | 0;\n x8 ^= u << 9 | u >>> (32 - 9);\n u = x8 + x4 | 0;\n x12 ^= u << 13 | u >>> (32 - 13);\n u = x12 + x8 | 0;\n x0 ^= u << 18 | u >>> (32 - 18);\n\n u = x5 + x1 | 0;\n x9 ^= u << 7 | u >>> (32 - 7);\n u = x9 + x5 | 0;\n x13 ^= u << 9 | u >>> (32 - 9);\n u = x13 + x9 | 0;\n x1 ^= u << 13 | u >>> (32 - 13);\n u = x1 + x13 | 0;\n x5 ^= u << 18 | u >>> (32 - 18);\n\n u = x10 + x6 | 0;\n x14 ^= u << 7 | u >>> (32 - 7);\n u = x14 + x10 | 0;\n x2 ^= u << 9 | u >>> (32 - 9);\n u = x2 + x14 | 0;\n x6 ^= u << 13 | u >>> (32 - 13);\n u = x6 + x2 | 0;\n x10 ^= u << 18 | u >>> (32 - 18);\n\n u = x15 + x11 | 0;\n x3 ^= u << 7 | u >>> (32 - 7);\n u = x3 + x15 | 0;\n x7 ^= u << 9 | u >>> (32 - 9);\n u = x7 + x3 | 0;\n x11 ^= u << 13 | u >>> (32 - 13);\n u = x11 + x7 | 0;\n x15 ^= u << 18 | u >>> (32 - 18);\n\n u = x0 + x3 | 0;\n x1 ^= u << 7 | u >>> (32 - 7);\n u = x1 + x0 | 0;\n x2 ^= u << 9 | u >>> (32 - 9);\n u = x2 + x1 | 0;\n x3 ^= u << 13 | u >>> (32 - 13);\n u = x3 + x2 | 0;\n x0 ^= u << 18 | u >>> (32 - 18);\n\n u = x5 + x4 | 0;\n x6 ^= u << 7 | u >>> (32 - 7);\n u = x6 + x5 | 0;\n x7 ^= u << 9 | u >>> (32 - 9);\n u = x7 + x6 | 0;\n x4 ^= u << 13 | u >>> (32 - 13);\n u = x4 + x7 | 0;\n x5 ^= u << 18 | u >>> (32 - 18);\n\n u = x10 + x9 | 0;\n x11 ^= u << 7 | u >>> (32 - 7);\n u = x11 + x10 | 0;\n x8 ^= u << 9 | u >>> (32 - 9);\n u = x8 + x11 | 0;\n x9 ^= u << 13 | u >>> (32 - 13);\n u = x9 + x8 | 0;\n x10 ^= u << 18 | u >>> (32 - 18);\n\n u = x15 + x14 | 0;\n x12 ^= u << 7 | u >>> (32 - 7);\n u = x12 + x15 | 0;\n x13 ^= u << 9 | u >>> (32 - 9);\n u = x13 + x12 | 0;\n x14 ^= u << 13 | u >>> (32 - 13);\n u = x14 + x13 | 0;\n x15 ^= u << 18 | u >>> (32 - 18);\n }\n writeUint32LE(x0 + j0 | 0, out, 0);\n writeUint32LE(x1 + j1 | 0, out, 4);\n writeUint32LE(x2 + j2 | 0, out, 8);\n writeUint32LE(x3 + j3 | 0, out, 12);\n writeUint32LE(x4 + j4 | 0, out, 16);\n writeUint32LE(x5 + j5 | 0, out, 20);\n writeUint32LE(x6 + j6 | 0, out, 24);\n writeUint32LE(x7 + j7 | 0, out, 28);\n writeUint32LE(x8 + j8 | 0, out, 32);\n writeUint32LE(x9 + j9 | 0, out, 36);\n writeUint32LE(x10 + j10 | 0, out, 40);\n writeUint32LE(x11 + j11 | 0, out, 44);\n writeUint32LE(x12 + j12 | 0, out, 48);\n writeUint32LE(x13 + j13 | 0, out, 52);\n writeUint32LE(x14 + j14 | 0, out, 56);\n writeUint32LE(x15 + j15 | 0, out, 60);\n}\n\n/**\n * Encrypt src with Salsa20/20 stream generated for the given 32-byte key\n * and 8-byte and write the result into dst and return it.\n *\n * dst and src may be the same, but otherwise must not overlap.\n *\n * Never use the same key and nonce to encrypt more than one message.\n *\n * If nonceInplaceCounterLength is not 0, the nonce is assumed to be a 16-byte\n * array with stream counter in first nonceInplaceCounterLength bytes and nonce\n * in the last remaining bytes. The counter will be incremented inplace for\n * each Salsa20 block. This is useful if you need to encrypt one stream of data\n * in chunks.\n */\nexport function streamXOR(key: Uint8Array, nonce: Uint8Array,\n src: Uint8Array, dst: Uint8Array, nonceInplaceCounterLength = 0): Uint8Array {\n // We only support 256-bit keys.\n if (key.length !== 32) {\n throw new Error(\"Salsa20: key size must be 32 bytes\");\n }\n\n if (dst.length < src.length) {\n throw new Error(\"Salsa20: destination is shorter than source\");\n }\n\n let nc: Uint8Array;\n let counterStart: number;\n\n if (nonceInplaceCounterLength === 0) {\n if (nonce.length !== 8) {\n throw new Error(\"Salsa20 nonce must be 8 bytes\");\n }\n nc = new Uint8Array(16);\n // First bytes of nc are nonce, set it.\n nc.set(nonce);\n // Last bytes are counter.\n counterStart = nonce.length;\n } else {\n if (nonce.length !== 16) {\n throw new Error(\"Salsa20 nonce with counter must be 16 bytes\");\n }\n // This will update passed nonce with counter inplace.\n nc = nonce;\n counterStart = 16 - nonceInplaceCounterLength;\n }\n\n // Allocate temporary space for Salsa20 block.\n const block = new Uint8Array(64);\n\n for (let i = 0; i < src.length; i += 64) {\n // Generate a block.\n core(block, nc, key);\n\n // XOR block bytes with src into dst.\n for (let j = i; j < i + 64 && j < src.length; j++) {\n dst[j] = src[j] ^ block[j - i];\n }\n\n // Increment counter.\n incrementCounter(nc, counterStart, nc.length - counterStart);\n }\n\n // Cleanup temporary space.\n wipe(block);\n\n if (nonceInplaceCounterLength === 0) {\n // Cleanup counter.\n wipe(nc);\n }\n\n return dst;\n}\n\n/**\n * Generate Salsa20/20 stream for the given 32-byte key and 8-byte nonce\n * and write it into dst and return it.\n *\n * Never use the same key and nonce to generate more than one stream.\n *\n * If nonceInplaceCounterLength is not 0, it behaves the same\n * with respect to the nonce as described in streamXOR documentation.\n *\n * stream is like streamXOR with all-zero src.\n */\nexport function stream(key: Uint8Array, nonce: Uint8Array,\n dst: Uint8Array, nonceInplaceCounterLength = 0): Uint8Array {\n wipe(dst);\n return streamXOR(key, nonce, dst, dst, nonceInplaceCounterLength);\n}\n\nfunction incrementCounter(counter: Uint8Array, pos: number, len: number) {\n let carry = 1;\n while (len--) {\n carry = carry + (counter[pos] & 0xff) | 0;\n counter[pos] = carry & 0xff;\n carry >>>= 8;\n pos++;\n }\n if (carry > 0) {\n throw new Error(\"Salsa20: counter overflow\");\n }\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package sha512 implements SHA-2-512 cryptographic hash function.\n */\n\nimport { SerializableHash } from \"@stablelib/hash\";\nimport { readUint32BE, writeUint32BE } from \"@stablelib/binary\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport const DIGEST_LENGTH = 64;\nexport const BLOCK_SIZE = 128;\n\n/**\n * SHA-2-512 cryptographic hash algorithm.\n */\nexport class SHA512 implements SerializableHash {\n /** Length of hash output */\n readonly digestLength: number = DIGEST_LENGTH;\n\n /** Block size */\n readonly blockSize: number = BLOCK_SIZE;\n\n // Note: Int32Array is used instead of Uint32Array for performance reasons.\n protected _stateHi = new Int32Array(8); // hash state, high bytes\n protected _stateLo = new Int32Array(8); // hash state, low bytes\n private _tempHi = new Int32Array(16); // temporary state, high bytes\n private _tempLo = new Int32Array(16); // temporary state, low bytes\n private _buffer = new Uint8Array(256); // buffer for data to hash\n private _bufferLength = 0; // number of bytes in buffer\n private _bytesHashed = 0; // number of total bytes hashed\n private _finished = false; // indicates whether the hash was finalized\n\n constructor() {\n this.reset();\n }\n\n protected _initState() {\n this._stateHi[0] = 0x6a09e667;\n this._stateHi[1] = 0xbb67ae85;\n this._stateHi[2] = 0x3c6ef372;\n this._stateHi[3] = 0xa54ff53a;\n this._stateHi[4] = 0x510e527f;\n this._stateHi[5] = 0x9b05688c;\n this._stateHi[6] = 0x1f83d9ab;\n this._stateHi[7] = 0x5be0cd19;\n\n this._stateLo[0] = 0xf3bcc908;\n this._stateLo[1] = 0x84caa73b;\n this._stateLo[2] = 0xfe94f82b;\n this._stateLo[3] = 0x5f1d36f1;\n this._stateLo[4] = 0xade682d1;\n this._stateLo[5] = 0x2b3e6c1f;\n this._stateLo[6] = 0xfb41bd6b;\n this._stateLo[7] = 0x137e2179;\n }\n\n /**\n * Resets hash state making it possible\n * to re-use this instance to hash other data.\n */\n reset(): this {\n this._initState();\n this._bufferLength = 0;\n this._bytesHashed = 0;\n this._finished = false;\n return this;\n }\n\n /**\n * Cleans internal buffers and resets hash state.\n */\n clean() {\n wipe(this._buffer);\n wipe(this._tempHi);\n wipe(this._tempLo);\n this.reset();\n }\n\n /**\n * Updates hash state with the given data.\n *\n * Throws error when trying to update already finalized hash:\n * instance must be reset to update it again.\n */\n update(data: Uint8Array, dataLength: number = data.length): this {\n if (this._finished) {\n throw new Error(\"SHA512: can't update because hash was finished.\");\n }\n let dataPos = 0;\n this._bytesHashed += dataLength;\n if (this._bufferLength > 0) {\n while (this._bufferLength < BLOCK_SIZE && dataLength > 0) {\n this._buffer[this._bufferLength++] = data[dataPos++];\n dataLength--;\n }\n if (this._bufferLength === this.blockSize) {\n hashBlocks(this._tempHi, this._tempLo, this._stateHi, this._stateLo,\n this._buffer, 0, this.blockSize);\n this._bufferLength = 0;\n }\n }\n if (dataLength >= this.blockSize) {\n dataPos = hashBlocks(this._tempHi, this._tempLo, this._stateHi, this._stateLo,\n data, dataPos, dataLength);\n dataLength %= this.blockSize;\n }\n while (dataLength > 0) {\n this._buffer[this._bufferLength++] = data[dataPos++];\n dataLength--;\n }\n return this;\n }\n\n /**\n * Finalizes hash state and puts hash into out.\n * If hash was already finalized, puts the same value.\n */\n finish(out: Uint8Array): this {\n if (!this._finished) {\n const bytesHashed = this._bytesHashed;\n const left = this._bufferLength;\n const bitLenHi = (bytesHashed / 0x20000000) | 0;\n const bitLenLo = bytesHashed << 3;\n const padLength = (bytesHashed % 128 < 112) ? 128 : 256;\n\n this._buffer[left] = 0x80;\n for (let i = left + 1; i < padLength - 8; i++) {\n this._buffer[i] = 0;\n }\n writeUint32BE(bitLenHi, this._buffer, padLength - 8);\n writeUint32BE(bitLenLo, this._buffer, padLength - 4);\n\n hashBlocks(this._tempHi, this._tempLo, this._stateHi, this._stateLo, this._buffer, 0, padLength);\n\n this._finished = true;\n }\n\n for (let i = 0; i < this.digestLength / 8; i++) {\n writeUint32BE(this._stateHi[i], out, i * 8);\n writeUint32BE(this._stateLo[i], out, i * 8 + 4);\n }\n\n return this;\n }\n\n /**\n * Returns the final hash digest.\n */\n digest(): Uint8Array {\n const out = new Uint8Array(this.digestLength);\n this.finish(out);\n return out;\n }\n\n /**\n * Function useful for HMAC/PBKDF2 optimization. Returns hash state to be\n * used with restoreState(). Only chain value is saved, not buffers or\n * other state variables.\n */\n saveState(): SavedState {\n if (this._finished) {\n throw new Error(\"SHA256: cannot save finished state\");\n }\n return {\n stateHi: new Int32Array(this._stateHi),\n stateLo: new Int32Array(this._stateLo),\n buffer: this._bufferLength > 0 ? new Uint8Array(this._buffer) : undefined,\n bufferLength: this._bufferLength,\n bytesHashed: this._bytesHashed\n };\n }\n\n /**\n * Function useful for HMAC/PBKDF2 optimization. Restores state saved by\n * saveState() and sets bytesHashed to the given value.\n */\n restoreState(savedState: SavedState): this {\n this._stateHi.set(savedState.stateHi);\n this._stateLo.set(savedState.stateLo);\n this._bufferLength = savedState.bufferLength;\n if (savedState.buffer) {\n this._buffer.set(savedState.buffer);\n }\n this._bytesHashed = savedState.bytesHashed;\n this._finished = false;\n return this;\n }\n\n /**\n * Cleans state returned by saveState().\n */\n cleanSavedState(savedState: SavedState) {\n wipe(savedState.stateHi);\n wipe(savedState.stateLo);\n if (savedState.buffer) {\n wipe(savedState.buffer);\n }\n savedState.bufferLength = 0;\n savedState.bytesHashed = 0;\n }\n}\n\nexport type SavedState = {\n stateHi: Int32Array;\n stateLo: Int32Array;\n buffer: Uint8Array | undefined;\n bufferLength: number;\n bytesHashed: number;\n};\n\n// Constants\nconst K = new Int32Array([\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n]);\n\n\nfunction hashBlocks(wh: Int32Array, wl: Int32Array, hh: Int32Array, hl: Int32Array,\n m: Uint8Array, pos: number, len: number): number {\n\n let ah0 = hh[0],\n ah1 = hh[1],\n ah2 = hh[2],\n ah3 = hh[3],\n ah4 = hh[4],\n ah5 = hh[5],\n ah6 = hh[6],\n ah7 = hh[7],\n\n al0 = hl[0],\n al1 = hl[1],\n al2 = hl[2],\n al3 = hl[3],\n al4 = hl[4],\n al5 = hl[5],\n al6 = hl[6],\n al7 = hl[7];\n\n let h: number, l: number;\n let th: number, tl: number;\n let a: number, b: number, c: number, d: number;\n\n while (len >= 128) {\n for (let i = 0; i < 16; i++) {\n const j = 8 * i + pos;\n wh[i] = readUint32BE(m, j);\n wl[i] = readUint32BE(m, j + 4);\n }\n for (let i = 0; i < 80; i++) {\n let bh0 = ah0;\n let bh1 = ah1;\n let bh2 = ah2;\n let bh3 = ah3;\n let bh4 = ah4;\n let bh5 = ah5;\n let bh6 = ah6;\n let bh7 = ah7;\n\n let bl0 = al0;\n let bl1 = al1;\n let bl2 = al2;\n let bl3 = al3;\n let bl4 = al4;\n let bl5 = al5;\n let bl6 = al6;\n let bl7 = al7;\n\n // add\n h = ah7;\n l = al7;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n // Sigma1\n h = ((ah4 >>> 14) | (al4 << (32 - 14))) ^ ((ah4 >>> 18) |\n (al4 << (32 - 18))) ^ ((al4 >>> (41 - 32)) | (ah4 << (32 - (41 - 32))));\n l = ((al4 >>> 14) | (ah4 << (32 - 14))) ^ ((al4 >>> 18) |\n (ah4 << (32 - 18))) ^ ((ah4 >>> (41 - 32)) | (al4 << (32 - (41 - 32))));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // Ch\n h = (ah4 & ah5) ^ (~ah4 & ah6);\n l = (al4 & al5) ^ (~al4 & al6);\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // K\n h = K[i * 2];\n l = K[i * 2 + 1];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // w\n h = wh[i % 16];\n l = wl[i % 16];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n th = c & 0xffff | d << 16;\n tl = a & 0xffff | b << 16;\n\n // add\n h = th;\n l = tl;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n // Sigma0\n h = ((ah0 >>> 28) | (al0 << (32 - 28))) ^ ((al0 >>> (34 - 32)) |\n (ah0 << (32 - (34 - 32)))) ^ ((al0 >>> (39 - 32)) | (ah0 << (32 - (39 - 32))));\n l = ((al0 >>> 28) | (ah0 << (32 - 28))) ^ ((ah0 >>> (34 - 32)) |\n (al0 << (32 - (34 - 32)))) ^ ((ah0 >>> (39 - 32)) | (al0 << (32 - (39 - 32))));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // Maj\n h = (ah0 & ah1) ^ (ah0 & ah2) ^ (ah1 & ah2);\n l = (al0 & al1) ^ (al0 & al2) ^ (al1 & al2);\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n bh7 = (c & 0xffff) | (d << 16);\n bl7 = (a & 0xffff) | (b << 16);\n\n // add\n h = bh3;\n l = bl3;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = th;\n l = tl;\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n bh3 = (c & 0xffff) | (d << 16);\n bl3 = (a & 0xffff) | (b << 16);\n\n ah1 = bh0;\n ah2 = bh1;\n ah3 = bh2;\n ah4 = bh3;\n ah5 = bh4;\n ah6 = bh5;\n ah7 = bh6;\n ah0 = bh7;\n\n al1 = bl0;\n al2 = bl1;\n al3 = bl2;\n al4 = bl3;\n al5 = bl4;\n al6 = bl5;\n al7 = bl6;\n al0 = bl7;\n\n if (i % 16 === 15) {\n for (let j = 0; j < 16; j++) {\n // add\n h = wh[j];\n l = wl[j];\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = wh[(j + 9) % 16];\n l = wl[(j + 9) % 16];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // sigma0\n th = wh[(j + 1) % 16];\n tl = wl[(j + 1) % 16];\n h = ((th >>> 1) | (tl << (32 - 1))) ^ ((th >>> 8) |\n (tl << (32 - 8))) ^ (th >>> 7);\n l = ((tl >>> 1) | (th << (32 - 1))) ^ ((tl >>> 8) |\n (th << (32 - 8))) ^ ((tl >>> 7) | (th << (32 - 7)));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // sigma1\n th = wh[(j + 14) % 16];\n tl = wl[(j + 14) % 16];\n h = ((th >>> 19) | (tl << (32 - 19))) ^ ((tl >>> (61 - 32)) |\n (th << (32 - (61 - 32)))) ^ (th >>> 6);\n l = ((tl >>> 19) | (th << (32 - 19))) ^ ((th >>> (61 - 32)) |\n (tl << (32 - (61 - 32)))) ^ ((tl >>> 6) | (th << (32 - 6)));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n wh[j] = (c & 0xffff) | (d << 16);\n wl[j] = (a & 0xffff) | (b << 16);\n }\n }\n }\n\n // add\n h = ah0;\n l = al0;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[0];\n l = hl[0];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[0] = ah0 = (c & 0xffff) | (d << 16);\n hl[0] = al0 = (a & 0xffff) | (b << 16);\n\n h = ah1;\n l = al1;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[1];\n l = hl[1];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[1] = ah1 = (c & 0xffff) | (d << 16);\n hl[1] = al1 = (a & 0xffff) | (b << 16);\n\n h = ah2;\n l = al2;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[2];\n l = hl[2];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[2] = ah2 = (c & 0xffff) | (d << 16);\n hl[2] = al2 = (a & 0xffff) | (b << 16);\n\n h = ah3;\n l = al3;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[3];\n l = hl[3];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[3] = ah3 = (c & 0xffff) | (d << 16);\n hl[3] = al3 = (a & 0xffff) | (b << 16);\n\n h = ah4;\n l = al4;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[4];\n l = hl[4];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[4] = ah4 = (c & 0xffff) | (d << 16);\n hl[4] = al4 = (a & 0xffff) | (b << 16);\n\n h = ah5;\n l = al5;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[5];\n l = hl[5];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[5] = ah5 = (c & 0xffff) | (d << 16);\n hl[5] = al5 = (a & 0xffff) | (b << 16);\n\n h = ah6;\n l = al6;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[6];\n l = hl[6];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[6] = ah6 = (c & 0xffff) | (d << 16);\n hl[6] = al6 = (a & 0xffff) | (b << 16);\n\n h = ah7;\n l = al7;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[7];\n l = hl[7];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[7] = ah7 = (c & 0xffff) | (d << 16);\n hl[7] = al7 = (a & 0xffff) | (b << 16);\n\n pos += 128;\n len -= 128;\n }\n\n return pos;\n}\n\nexport function hash(data: Uint8Array): Uint8Array {\n const h = new SHA512();\n h.update(data);\n const digest = h.digest();\n h.clean();\n return digest;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package utf8 implements UTF-8 encoding and decoding.\n */\n\nconst INVALID_UTF16 = \"utf8: invalid string\";\nconst INVALID_UTF8 = \"utf8: invalid source encoding\";\n\n/**\n * Encodes the given string into UTF-8 byte array.\n * Throws if the source string has invalid UTF-16 encoding.\n */\nexport function encode(s: string): Uint8Array {\n // Calculate result length and allocate output array.\n // encodedLength() also validates string and throws errors,\n // so we don't need repeat validation here.\n const arr = new Uint8Array(encodedLength(s));\n\n let pos = 0;\n for (let i = 0; i < s.length; i++) {\n let c = s.charCodeAt(i);\n if (c < 0x80) {\n arr[pos++] = c;\n } else if (c < 0x800) {\n arr[pos++] = 0xc0 | c >> 6;\n arr[pos++] = 0x80 | c & 0x3f;\n } else if (c < 0xd800) {\n arr[pos++] = 0xe0 | c >> 12;\n arr[pos++] = 0x80 | (c >> 6) & 0x3f;\n arr[pos++] = 0x80 | c & 0x3f;\n } else {\n i++; // get one more character\n c = (c & 0x3ff) << 10;\n c |= s.charCodeAt(i) & 0x3ff;\n c += 0x10000;\n\n arr[pos++] = 0xf0 | c >> 18;\n arr[pos++] = 0x80 | (c >> 12) & 0x3f;\n arr[pos++] = 0x80 | (c >> 6) & 0x3f;\n arr[pos++] = 0x80 | c & 0x3f;\n }\n }\n return arr;\n}\n\n/**\n * Returns the number of bytes required to encode the given string into UTF-8.\n * Throws if the source string has invalid UTF-16 encoding.\n */\nexport function encodedLength(s: string): number {\n let result = 0;\n for (let i = 0; i < s.length; i++) {\n const c = s.charCodeAt(i);\n if (c < 0x80) {\n result += 1;\n } else if (c < 0x800) {\n result += 2;\n } else if (c < 0xd800) {\n result += 3;\n } else if (c <= 0xdfff) {\n if (i >= s.length - 1) {\n throw new Error(INVALID_UTF16);\n }\n i++; // \"eat\" next character\n result += 4;\n } else {\n throw new Error(INVALID_UTF16);\n }\n }\n return result;\n}\n\n/**\n * Decodes the given byte array from UTF-8 into a string.\n * Throws if encoding is invalid.\n */\nexport function decode(arr: Uint8Array): string {\n const chars: string[] = [];\n for (let i = 0; i < arr.length; i++) {\n let b = arr[i];\n\n if (b & 0x80) {\n let min;\n if (b < 0xe0) {\n // Need 1 more byte.\n if (i >= arr.length) {\n throw new Error(INVALID_UTF8);\n }\n const n1 = arr[++i];\n if ((n1 & 0xc0) !== 0x80) {\n throw new Error(INVALID_UTF8);\n }\n b = (b & 0x1f) << 6 | (n1 & 0x3f);\n min = 0x80;\n } else if (b < 0xf0) {\n // Need 2 more bytes.\n if (i >= arr.length - 1) {\n throw new Error(INVALID_UTF8);\n }\n const n1 = arr[++i];\n const n2 = arr[++i];\n if ((n1 & 0xc0) !== 0x80 || (n2 & 0xc0) !== 0x80) {\n throw new Error(INVALID_UTF8);\n }\n b = (b & 0x0f) << 12 | (n1 & 0x3f) << 6 | (n2 & 0x3f);\n min = 0x800;\n } else if (b < 0xf8) {\n // Need 3 more bytes.\n if (i >= arr.length - 2) {\n throw new Error(INVALID_UTF8);\n }\n const n1 = arr[++i];\n const n2 = arr[++i];\n const n3 = arr[++i];\n if ((n1 & 0xc0) !== 0x80 || (n2 & 0xc0) !== 0x80 || (n3 & 0xc0) !== 0x80) {\n throw new Error(INVALID_UTF8);\n }\n b = (b & 0x0f) << 18 | (n1 & 0x3f) << 12 | (n2 & 0x3f) << 6 | (n3 & 0x3f);\n min = 0x10000;\n } else {\n throw new Error(INVALID_UTF8);\n }\n\n if (b < min || (b >= 0xd800 && b <= 0xdfff)) {\n throw new Error(INVALID_UTF8);\n }\n\n if (b >= 0x10000) {\n // Surrogate pair.\n if (b > 0x10ffff) {\n throw new Error(INVALID_UTF8);\n }\n b -= 0x10000;\n chars.push(String.fromCharCode(0xd800 | (b >> 10)));\n b = 0xdc00 | (b & 0x3ff);\n }\n }\n\n chars.push(String.fromCharCode(b));\n }\n return chars.join(\"\");\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package wipe implements functions for zeroing arrays.\n */\n\nexport type NumericArray = number[] | Uint8Array | Int8Array | Uint16Array\n | Int16Array | Uint32Array | Int32Array | Float32Array | Float64Array;\n\n/**\n * Sets all values in the given array to zero and returns it.\n *\n * The fact that it sets bytes to zero can be relied on.\n *\n * There is no guarantee that this function makes data disappear from memory,\n * as runtime implementation can, for example, have copying garbage collector\n * that will make copies of sensitive data before we wipe it. Or that an\n * operating system will write our data to swap or sleep image. Another thing\n * is that an optimizing compiler can remove calls to this function or make it\n * no-op. There's nothing we can do with it, so we just do our best and hope\n * that everything will be okay and good will triumph over evil.\n */\nexport function wipe(array: NumericArray): NumericArray {\n // Right now it's similar to array.fill(0). If it turns\n // out that runtimes optimize this call away, maybe\n // we can try something else.\n for (let i = 0; i < array.length; i++) {\n array[i] = 0;\n }\n return array;\n}\n","// Copyright (C) 2020 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { KeyAgreement } from \"@stablelib/keyagreement\";\nimport { randomBytes, RandomSource } from \"@stablelib/random\";\nimport { wipe } from \"@stablelib/wipe\";\nimport { PUBLIC_KEY_LENGTH,\n SECRET_KEY_LENGTH,\n SHARED_KEY_LENGTH,\n generateKeyPairFromSeed,\n sharedKey,\n KeyPair } from \"@stablelib/x25519\";\nimport { SessionKeys, clientSessionKeysFromSharedKey, serverSessionKeysFromSharedKey } from \"./x25519-session\";\n\n/** Constants for key agreement */\nexport const OFFER_MESSAGE_LENGTH = PUBLIC_KEY_LENGTH;\nexport const ACCEPT_MESSAGE_LENGTH = PUBLIC_KEY_LENGTH;\nexport const SAVED_STATE_LENGTH = SECRET_KEY_LENGTH;\nexport const SECRET_SEED_LENGTH = SECRET_KEY_LENGTH;\n\n/**\n * X25519 key agreement using ephemeral key pairs.\n *\n * Note that unless this key agreement is combined with an authentication\n * method, such as public key signatures, it's vulnerable to man-in-the-middle\n * attacks.\n */\nexport class X25519Session implements KeyAgreement {\n readonly offerMessageLength = OFFER_MESSAGE_LENGTH;\n readonly acceptMessageLength = ACCEPT_MESSAGE_LENGTH;\n readonly sharedKeyLength = SHARED_KEY_LENGTH;\n readonly savedStateLength = SAVED_STATE_LENGTH;\n\n private _seed: Uint8Array;\n private _keyPair: KeyPair | undefined;\n private _sharedKey: Uint8Array | undefined;\n private _sessionKeys: SessionKeys | undefined;\n\n constructor(secretSeed?: Uint8Array, prng?: RandomSource) {\n this._seed = secretSeed || randomBytes(SECRET_KEY_LENGTH, prng);\n }\n\n saveState(): Uint8Array {\n return new Uint8Array(this._seed);\n }\n\n restoreState(savedState: Uint8Array): this {\n this._seed = new Uint8Array(savedState);\n return this;\n }\n\n clean(): void {\n if (this._seed) {\n wipe(this._seed);\n }\n if (this._keyPair) {\n wipe(this._keyPair.secretKey);\n wipe(this._keyPair.publicKey);\n }\n if (this._sharedKey) {\n wipe(this._sharedKey);\n }\n if (this._sessionKeys) {\n wipe(this._sessionKeys.receive);\n wipe(this._sessionKeys.send);\n }\n }\n\n offer(): Uint8Array {\n this._keyPair = generateKeyPairFromSeed(this._seed);\n return new Uint8Array(this._keyPair.publicKey);\n }\n\n accept(offerMsg: Uint8Array): Uint8Array {\n if (this._keyPair) {\n throw new Error(\"X25519Session: accept shouldn't be called by offering party\");\n }\n if (offerMsg.length !== this.offerMessageLength) {\n throw new Error(\"X25519Session: incorrect offer message length\");\n }\n if (this._sharedKey) {\n throw new Error(\"X25519Session: accept was already called\");\n }\n const keyPair = generateKeyPairFromSeed(this._seed);\n this._sharedKey = sharedKey(keyPair.secretKey, offerMsg);\n this._sessionKeys = clientSessionKeysFromSharedKey(this._sharedKey, keyPair.publicKey, offerMsg);\n wipe(keyPair.secretKey);\n return keyPair.publicKey;\n }\n\n finish(acceptMsg: Uint8Array): this {\n if (acceptMsg.length !== this.acceptMessageLength) {\n throw new Error(\"X25519Session: incorrect accept message length\");\n }\n if (!this._keyPair) {\n throw new Error(\"X25519Session: no offer state\");\n }\n if (this._sharedKey) {\n throw new Error(\"X25519Session: finish was already called\");\n }\n this._sharedKey = sharedKey(this._keyPair.secretKey, acceptMsg);\n this._sessionKeys = serverSessionKeysFromSharedKey(this._sharedKey, this._keyPair.publicKey, acceptMsg);\n return this;\n }\n\n getSharedKey(): Uint8Array {\n if (!this._sharedKey) {\n throw new Error(\"X25519Session: no shared key established\");\n }\n return new Uint8Array(this._sharedKey);\n }\n\n getSessionKeys(): SessionKeys {\n if (!this._sessionKeys) {\n throw new Error(\"X25519Session: no shared key established\");\n }\n return {\n receive: new Uint8Array(this._sessionKeys.receive),\n send: new Uint8Array(this._sessionKeys.send),\n };\n }\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package x25519-session implements libsodium compatible session keys generation based on X25519 key agreement.\n */\n\nimport { BLAKE2b } from \"@stablelib/blake2b\";\nimport { Hash } from \"@stablelib/hash\";\nimport { sharedKey, KeyPair } from \"@stablelib/x25519\";\nexport { X25519Session } from \"./keyagreement\";\n\nconst SESSION_KEY_LENGTH = 32;\n\nexport interface SessionKeys {\n receive: Uint8Array;\n send: Uint8Array;\n}\n\n/**\n * Generates server-side session encryption keys from the shared key obtained during agreement phase.\n */\nexport function serverSessionKeysFromSharedKey(sharedKey: Uint8Array,\n myPublicKey: Uint8Array,\n theirPublicKey: Uint8Array,\n hash: new() => Hash = BLAKE2b): SessionKeys {\n const state = new hash();\n if (state.digestLength !== SESSION_KEY_LENGTH * 2) {\n throw new Error(\"X25519: incorrect digest length\");\n }\n const h = state.update(sharedKey).update(theirPublicKey).update(myPublicKey).digest();\n\n return {\n send: h.subarray(0, SESSION_KEY_LENGTH),\n receive: h.subarray(SESSION_KEY_LENGTH),\n };\n}\n\n/**\n * Generates client-side session encryption keys from the shared key obtained during agreement phase.\n */\nexport function clientSessionKeysFromSharedKey(sharedKey: Uint8Array,\n myPublicKey: Uint8Array,\n theirPublicKey: Uint8Array,\n hash: new() => Hash = BLAKE2b): SessionKeys {\n const state = new hash();\n if (state.digestLength !== SESSION_KEY_LENGTH * 2) {\n throw new Error(\"X25519: incorrect digest length\");\n }\n const h = state.update(sharedKey).update(myPublicKey).update(theirPublicKey).digest();\n\n return {\n receive: h.subarray(0, SESSION_KEY_LENGTH),\n send: h.subarray(SESSION_KEY_LENGTH),\n };\n}\n\n/**\n * Generates server-side session encryption keys. Uses a key pair and a peer's public key to generate the shared key.\n */\nexport function serverSessionKeys(myKeyPair: KeyPair, theirPublicKey: Uint8Array, hash: new() => Hash = BLAKE2b): SessionKeys {\n const sk = sharedKey(myKeyPair.secretKey, theirPublicKey);\n return serverSessionKeysFromSharedKey(sk, myKeyPair.publicKey, theirPublicKey, hash);\n}\n\n/**\n * Generates client-side session encryption keys. Uses a key pair and a peer's public key to generate the shared key.\n */\nexport function clientSessionKeys(myKeyPair: KeyPair, theirPublicKey: Uint8Array, hash: new() => Hash = BLAKE2b): SessionKeys {\n const sk = sharedKey(myKeyPair.secretKey, theirPublicKey);\n return clientSessionKeysFromSharedKey(sk, myKeyPair.publicKey, theirPublicKey, hash);\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package x25519 implements X25519 key agreement.\n */\n\nimport { randomBytes, RandomSource } from \"@stablelib/random\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport const PUBLIC_KEY_LENGTH = 32;\nexport const SECRET_KEY_LENGTH = 32;\nexport const SHARED_KEY_LENGTH = 32;\n\n// TODO(dchest): some functions are copies of ../sign/ed25519.\n// Find a way to combine them without opening up to public.\n\n// Ported from TweetNaCl.js, which is ported from TweetNaCl\n// by Dmitry Chestnykh and Devi Mandiri.\n// Public domain.\n// https://tweetnacl.js.org\n\n// TweetNaCl contributors:\n// Daniel J. Bernstein, Bernard van Gastel, Wesley Janssen,\n// Tanja Lange, Peter Schwabe, Sjaak Smetsers.\n// Public domain.\n// https://tweetnacl.cr.yp.to/\n\ntype GF = Float64Array;\n\n// Returns new zero-filled 16-element GF (Float64Array).\n// If passed an array of numbers, prefills the returned\n// array with them.\n//\n// We use Float64Array, because we need 48-bit numbers\n// for this implementation.\nfunction gf(init?: number[]): GF {\n const r = new Float64Array(16);\n if (init) {\n for (let i = 0; i < init.length; i++) {\n r[i] = init[i];\n }\n }\n return r;\n}\n\n// Base point.\nconst _9 = new Uint8Array(32); _9[0] = 9;\n\nconst _121665 = gf([0xdb41, 1]);\n\nfunction car25519(o: GF) {\n let c = 1;\n for (let i = 0; i < 16; i++) {\n let v = o[i] + c + 65535;\n c = Math.floor(v / 65536);\n o[i] = v - c * 65536;\n }\n o[0] += c - 1 + 37 * (c - 1);\n}\n\nfunction sel25519(p: GF, q: GF, b: number) {\n const c = ~(b - 1);\n for (let i = 0; i < 16; i++) {\n const t = c & (p[i] ^ q[i]);\n p[i] ^= t;\n q[i] ^= t;\n }\n}\n\nfunction pack25519(o: Uint8Array, n: GF) {\n const m = gf();\n const t = gf();\n for (let i = 0; i < 16; i++) {\n t[i] = n[i];\n }\n car25519(t);\n car25519(t);\n car25519(t);\n for (let j = 0; j < 2; j++) {\n m[0] = t[0] - 0xffed;\n for (let i = 1; i < 15; i++) {\n m[i] = t[i] - 0xffff - ((m[i - 1] >> 16) & 1);\n m[i - 1] &= 0xffff;\n }\n m[15] = t[15] - 0x7fff - ((m[14] >> 16) & 1);\n const b = (m[15] >> 16) & 1;\n m[14] &= 0xffff;\n sel25519(t, m, 1 - b);\n }\n for (let i = 0; i < 16; i++) {\n o[2 * i] = t[i] & 0xff;\n o[2 * i + 1] = t[i] >> 8;\n }\n}\n\nfunction unpack25519(o: GF, n: Uint8Array) {\n for (let i = 0; i < 16; i++) {\n o[i] = n[2 * i] + (n[2 * i + 1] << 8);\n }\n o[15] &= 0x7fff;\n}\n\nfunction add(o: GF, a: GF, b: GF) {\n for (let i = 0; i < 16; i++) {\n o[i] = a[i] + b[i];\n }\n}\n\nfunction sub(o: GF, a: GF, b: GF) {\n for (let i = 0; i < 16; i++) {\n o[i] = a[i] - b[i];\n }\n}\n\nfunction mul(o: GF, a: GF, b: GF) {\n let v: number, c: number,\n t0 = 0, t1 = 0, t2 = 0, t3 = 0, t4 = 0, t5 = 0, t6 = 0, t7 = 0,\n t8 = 0, t9 = 0, t10 = 0, t11 = 0, t12 = 0, t13 = 0, t14 = 0, t15 = 0,\n t16 = 0, t17 = 0, t18 = 0, t19 = 0, t20 = 0, t21 = 0, t22 = 0, t23 = 0,\n t24 = 0, t25 = 0, t26 = 0, t27 = 0, t28 = 0, t29 = 0, t30 = 0,\n b0 = b[0],\n b1 = b[1],\n b2 = b[2],\n b3 = b[3],\n b4 = b[4],\n b5 = b[5],\n b6 = b[6],\n b7 = b[7],\n b8 = b[8],\n b9 = b[9],\n b10 = b[10],\n b11 = b[11],\n b12 = b[12],\n b13 = b[13],\n b14 = b[14],\n b15 = b[15];\n\n v = a[0];\n t0 += v * b0;\n t1 += v * b1;\n t2 += v * b2;\n t3 += v * b3;\n t4 += v * b4;\n t5 += v * b5;\n t6 += v * b6;\n t7 += v * b7;\n t8 += v * b8;\n t9 += v * b9;\n t10 += v * b10;\n t11 += v * b11;\n t12 += v * b12;\n t13 += v * b13;\n t14 += v * b14;\n t15 += v * b15;\n v = a[1];\n t1 += v * b0;\n t2 += v * b1;\n t3 += v * b2;\n t4 += v * b3;\n t5 += v * b4;\n t6 += v * b5;\n t7 += v * b6;\n t8 += v * b7;\n t9 += v * b8;\n t10 += v * b9;\n t11 += v * b10;\n t12 += v * b11;\n t13 += v * b12;\n t14 += v * b13;\n t15 += v * b14;\n t16 += v * b15;\n v = a[2];\n t2 += v * b0;\n t3 += v * b1;\n t4 += v * b2;\n t5 += v * b3;\n t6 += v * b4;\n t7 += v * b5;\n t8 += v * b6;\n t9 += v * b7;\n t10 += v * b8;\n t11 += v * b9;\n t12 += v * b10;\n t13 += v * b11;\n t14 += v * b12;\n t15 += v * b13;\n t16 += v * b14;\n t17 += v * b15;\n v = a[3];\n t3 += v * b0;\n t4 += v * b1;\n t5 += v * b2;\n t6 += v * b3;\n t7 += v * b4;\n t8 += v * b5;\n t9 += v * b6;\n t10 += v * b7;\n t11 += v * b8;\n t12 += v * b9;\n t13 += v * b10;\n t14 += v * b11;\n t15 += v * b12;\n t16 += v * b13;\n t17 += v * b14;\n t18 += v * b15;\n v = a[4];\n t4 += v * b0;\n t5 += v * b1;\n t6 += v * b2;\n t7 += v * b3;\n t8 += v * b4;\n t9 += v * b5;\n t10 += v * b6;\n t11 += v * b7;\n t12 += v * b8;\n t13 += v * b9;\n t14 += v * b10;\n t15 += v * b11;\n t16 += v * b12;\n t17 += v * b13;\n t18 += v * b14;\n t19 += v * b15;\n v = a[5];\n t5 += v * b0;\n t6 += v * b1;\n t7 += v * b2;\n t8 += v * b3;\n t9 += v * b4;\n t10 += v * b5;\n t11 += v * b6;\n t12 += v * b7;\n t13 += v * b8;\n t14 += v * b9;\n t15 += v * b10;\n t16 += v * b11;\n t17 += v * b12;\n t18 += v * b13;\n t19 += v * b14;\n t20 += v * b15;\n v = a[6];\n t6 += v * b0;\n t7 += v * b1;\n t8 += v * b2;\n t9 += v * b3;\n t10 += v * b4;\n t11 += v * b5;\n t12 += v * b6;\n t13 += v * b7;\n t14 += v * b8;\n t15 += v * b9;\n t16 += v * b10;\n t17 += v * b11;\n t18 += v * b12;\n t19 += v * b13;\n t20 += v * b14;\n t21 += v * b15;\n v = a[7];\n t7 += v * b0;\n t8 += v * b1;\n t9 += v * b2;\n t10 += v * b3;\n t11 += v * b4;\n t12 += v * b5;\n t13 += v * b6;\n t14 += v * b7;\n t15 += v * b8;\n t16 += v * b9;\n t17 += v * b10;\n t18 += v * b11;\n t19 += v * b12;\n t20 += v * b13;\n t21 += v * b14;\n t22 += v * b15;\n v = a[8];\n t8 += v * b0;\n t9 += v * b1;\n t10 += v * b2;\n t11 += v * b3;\n t12 += v * b4;\n t13 += v * b5;\n t14 += v * b6;\n t15 += v * b7;\n t16 += v * b8;\n t17 += v * b9;\n t18 += v * b10;\n t19 += v * b11;\n t20 += v * b12;\n t21 += v * b13;\n t22 += v * b14;\n t23 += v * b15;\n v = a[9];\n t9 += v * b0;\n t10 += v * b1;\n t11 += v * b2;\n t12 += v * b3;\n t13 += v * b4;\n t14 += v * b5;\n t15 += v * b6;\n t16 += v * b7;\n t17 += v * b8;\n t18 += v * b9;\n t19 += v * b10;\n t20 += v * b11;\n t21 += v * b12;\n t22 += v * b13;\n t23 += v * b14;\n t24 += v * b15;\n v = a[10];\n t10 += v * b0;\n t11 += v * b1;\n t12 += v * b2;\n t13 += v * b3;\n t14 += v * b4;\n t15 += v * b5;\n t16 += v * b6;\n t17 += v * b7;\n t18 += v * b8;\n t19 += v * b9;\n t20 += v * b10;\n t21 += v * b11;\n t22 += v * b12;\n t23 += v * b13;\n t24 += v * b14;\n t25 += v * b15;\n v = a[11];\n t11 += v * b0;\n t12 += v * b1;\n t13 += v * b2;\n t14 += v * b3;\n t15 += v * b4;\n t16 += v * b5;\n t17 += v * b6;\n t18 += v * b7;\n t19 += v * b8;\n t20 += v * b9;\n t21 += v * b10;\n t22 += v * b11;\n t23 += v * b12;\n t24 += v * b13;\n t25 += v * b14;\n t26 += v * b15;\n v = a[12];\n t12 += v * b0;\n t13 += v * b1;\n t14 += v * b2;\n t15 += v * b3;\n t16 += v * b4;\n t17 += v * b5;\n t18 += v * b6;\n t19 += v * b7;\n t20 += v * b8;\n t21 += v * b9;\n t22 += v * b10;\n t23 += v * b11;\n t24 += v * b12;\n t25 += v * b13;\n t26 += v * b14;\n t27 += v * b15;\n v = a[13];\n t13 += v * b0;\n t14 += v * b1;\n t15 += v * b2;\n t16 += v * b3;\n t17 += v * b4;\n t18 += v * b5;\n t19 += v * b6;\n t20 += v * b7;\n t21 += v * b8;\n t22 += v * b9;\n t23 += v * b10;\n t24 += v * b11;\n t25 += v * b12;\n t26 += v * b13;\n t27 += v * b14;\n t28 += v * b15;\n v = a[14];\n t14 += v * b0;\n t15 += v * b1;\n t16 += v * b2;\n t17 += v * b3;\n t18 += v * b4;\n t19 += v * b5;\n t20 += v * b6;\n t21 += v * b7;\n t22 += v * b8;\n t23 += v * b9;\n t24 += v * b10;\n t25 += v * b11;\n t26 += v * b12;\n t27 += v * b13;\n t28 += v * b14;\n t29 += v * b15;\n v = a[15];\n t15 += v * b0;\n t16 += v * b1;\n t17 += v * b2;\n t18 += v * b3;\n t19 += v * b4;\n t20 += v * b5;\n t21 += v * b6;\n t22 += v * b7;\n t23 += v * b8;\n t24 += v * b9;\n t25 += v * b10;\n t26 += v * b11;\n t27 += v * b12;\n t28 += v * b13;\n t29 += v * b14;\n t30 += v * b15;\n\n t0 += 38 * t16;\n t1 += 38 * t17;\n t2 += 38 * t18;\n t3 += 38 * t19;\n t4 += 38 * t20;\n t5 += 38 * t21;\n t6 += 38 * t22;\n t7 += 38 * t23;\n t8 += 38 * t24;\n t9 += 38 * t25;\n t10 += 38 * t26;\n t11 += 38 * t27;\n t12 += 38 * t28;\n t13 += 38 * t29;\n t14 += 38 * t30;\n // t15 left as is\n\n // first car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c - 1 + 37 * (c - 1);\n\n // second car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c - 1 + 37 * (c - 1);\n\n o[0] = t0;\n o[1] = t1;\n o[2] = t2;\n o[3] = t3;\n o[4] = t4;\n o[5] = t5;\n o[6] = t6;\n o[7] = t7;\n o[8] = t8;\n o[9] = t9;\n o[10] = t10;\n o[11] = t11;\n o[12] = t12;\n o[13] = t13;\n o[14] = t14;\n o[15] = t15;\n}\n\nfunction square(o: GF, a: GF) {\n mul(o, a, a);\n}\n\nfunction inv25519(o: GF, inp: GF) {\n const c = gf();\n for (let i = 0; i < 16; i++) {\n c[i] = inp[i];\n }\n for (let i = 253; i >= 0; i--) {\n square(c, c);\n if (i !== 2 && i !== 4) {\n mul(c, c, inp);\n }\n }\n for (let i = 0; i < 16; i++) {\n o[i] = c[i];\n }\n}\n\nexport function scalarMult(n: Uint8Array, p: Uint8Array): Uint8Array {\n const z = new Uint8Array(32);\n const x = new Float64Array(80);\n const a = gf(), b = gf(), c = gf(),\n d = gf(), e = gf(), f = gf();\n\n for (let i = 0; i < 31; i++) {\n z[i] = n[i];\n }\n z[31] = (n[31] & 127) | 64;\n z[0] &= 248;\n\n unpack25519(x, p);\n\n for (let i = 0; i < 16; i++) {\n b[i] = x[i];\n }\n\n a[0] = d[0] = 1;\n\n for (let i = 254; i >= 0; --i) {\n const r = (z[i >>> 3] >>> (i & 7)) & 1;\n sel25519(a, b, r);\n sel25519(c, d, r);\n add(e, a, c);\n sub(a, a, c);\n add(c, b, d);\n sub(b, b, d);\n square(d, e);\n square(f, a);\n mul(a, c, a);\n mul(c, b, e);\n add(e, a, c);\n sub(a, a, c);\n square(b, a);\n sub(c, d, f);\n mul(a, c, _121665);\n add(a, a, d);\n mul(c, c, a);\n mul(a, d, f);\n mul(d, b, x);\n square(b, e);\n sel25519(a, b, r);\n sel25519(c, d, r);\n }\n for (let i = 0; i < 16; i++) {\n x[i + 16] = a[i];\n x[i + 32] = c[i];\n x[i + 48] = b[i];\n x[i + 64] = d[i];\n }\n const x32 = x.subarray(32);\n const x16 = x.subarray(16);\n inv25519(x32, x32);\n mul(x16, x16, x32);\n const q = new Uint8Array(32);\n pack25519(q, x16);\n return q;\n}\n\nexport function scalarMultBase(n: Uint8Array): Uint8Array {\n return scalarMult(n, _9);\n}\n\nexport interface KeyPair {\n publicKey: Uint8Array;\n secretKey: Uint8Array;\n}\n\nexport function generateKeyPairFromSeed(seed: Uint8Array): KeyPair {\n if (seed.length !== SECRET_KEY_LENGTH) {\n throw new Error(`x25519: seed must be ${SECRET_KEY_LENGTH} bytes`);\n }\n const secretKey = new Uint8Array(seed);\n const publicKey = scalarMultBase(secretKey);\n return {\n publicKey,\n secretKey\n };\n}\n\nexport function generateKeyPair(prng?: RandomSource): KeyPair {\n const seed = randomBytes(32, prng);\n const result = generateKeyPairFromSeed(seed);\n wipe(seed);\n return result;\n}\n\n/**\n * Returns a shared key between our secret key and a peer's public key.\n *\n * Throws an error if the given keys are of wrong length.\n *\n * If rejectZero is true throws if the calculated shared key is all-zero.\n * From RFC 7748:\n *\n * > Protocol designers using Diffie-Hellman over the curves defined in\n * > this document must not assume \"contributory behavior\". Specially,\n * > contributory behavior means that both parties' private keys\n * > contribute to the resulting shared key. Since curve25519 and\n * > curve448 have cofactors of 8 and 4 (respectively), an input point of\n * > small order will eliminate any contribution from the other party's\n * > private key. This situation can be detected by checking for the all-\n * > zero output, which implementations MAY do, as specified in Section 6.\n * > However, a large number of existing implementations do not do this.\n *\n * IMPORTANT: the returned key is a raw result of scalar multiplication.\n * To use it as a key material, hash it with a cryptographic hash function.\n */\nexport function sharedKey(mySecretKey: Uint8Array, theirPublicKey: Uint8Array, rejectZero = false): Uint8Array {\n if (mySecretKey.length !== PUBLIC_KEY_LENGTH) {\n throw new Error(\"X25519: incorrect secret key length\");\n }\n if (theirPublicKey.length !== PUBLIC_KEY_LENGTH) {\n throw new Error(\"X25519: incorrect public key length\");\n }\n\n const result = scalarMult(mySecretKey, theirPublicKey);\n\n if (rejectZero) {\n let zeros = 0;\n for (let i = 0; i < result.length; i++) {\n zeros |= result[i];\n }\n if (zeros === 0) {\n throw new Error(\"X25519: invalid shared key\");\n }\n }\n\n return result;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package xsalsa20 implements XSalsa20 stream cipher.\n */\n\nimport { writeUint32LE } from \"@stablelib/binary\";\nimport { streamXOR as salsaStreamXOR } from \"@stablelib/salsa20\";\nimport { wipe } from \"@stablelib/wipe\";\n\n/**\n * Encrypt src with Salsa20/20 stream generated for the given 32-byte key\n * and 24-byte and write the result into dst and return it.\n *\n * dst and src may be the same, but otherwise must not overlap.\n *\n * Never use the same key and nonce to encrypt more than one message.\n */\nexport function streamXOR(key: Uint8Array, nonce: Uint8Array, src: Uint8Array,\n dst: Uint8Array, nonceInplaceCounterLength = 0): Uint8Array {\n\n if (nonceInplaceCounterLength === 0) {\n if (nonce.length !== 24) {\n throw new Error(\"XSalsa20 nonce must be 24 bytes\");\n }\n } else {\n if (nonce.length !== 32) {\n throw new Error(\"XSalsa20 nonce with counter must be 32 bytes\");\n }\n }\n\n // Use HSalsa one-way function to transform first 16 bytes of\n // 24-byte extended nonce and key into a new key for Salsa\n // stream -- \"subkey\".\n const subkey = hsalsa(key, nonce.subarray(0, 16), new Uint8Array(32));\n\n // Use last 8 bytes of 24-byte extended nonce as an actual nonce,\n // and a subkey derived in the previous step as key to encrypt.\n //\n // If nonceInplaceCounterLength > 0, we'll still pass the correct\n // nonce || counter, as we don't limit the end of nonce subarray.\n const result = salsaStreamXOR(subkey, nonce.subarray(16), src, dst,\n nonceInplaceCounterLength);\n\n // Clean subkey.\n wipe(subkey);\n\n return result;\n}\n\n/**\n * Generate Salsa20/20 stream for the given 32-byte key and\n * 24-byte nonce and write it into dst and return it.\n *\n * Never use the same key and nonce to generate more than one stream.\n *\n * stream is like streamXOR with all-zero src.\n */\nexport function stream(key: Uint8Array, nonce: Uint8Array, dst: Uint8Array,\n nonceInplaceCounterLength = 0): Uint8Array {\n\n wipe(dst);\n return streamXOR(key, nonce, dst, dst, nonceInplaceCounterLength);\n}\n\n// Number of Salsa20 rounds (Salsa20/20).\nconst ROUNDS = 20;\n\n/**\n * HSalsa20 is a one-way function used in XSalsa20 to extend nonce,\n * and in NaCl to hash X25519 shared keys. It takes 32-byte key and\n * 16-byte src and writes 32-byte result into dst and returns it.\n */\nexport function hsalsa(key: Uint8Array, src: Uint8Array, dst: Uint8Array): Uint8Array {\n let x0 = 0x61707865; // \"expa\"\n let x1 = (key[3] << 24) | (key[2] << 16) | (key[1] << 8) | key[0];\n let x2 = (key[7] << 24) | (key[6] << 16) | (key[5] << 8) | key[4];\n let x3 = (key[11] << 24) | (key[10] << 16) | (key[9] << 8) | key[8];\n let x4 = (key[15] << 24) | (key[14] << 16) | (key[13] << 8) | key[12];\n let x5 = 0x3320646E; // \"nd 3\"\n let x6 = (src[3] << 24) | (src[2] << 16) | (src[1] << 8) | src[0];\n let x7 = (src[7] << 24) | (src[6] << 16) | (src[5] << 8) | src[4];\n let x8 = (src[11] << 24) | (src[10] << 16) | (src[9] << 8) | src[8];\n let x9 = (src[15] << 24) | (src[14] << 16) | (src[13] << 8) | src[12];\n let x10 = 0x79622D32; // \"2-by\"\n let x11 = (key[19] << 24) | (key[18] << 16) | (key[17] << 8) | key[16];\n let x12 = (key[23] << 24) | (key[22] << 16) | (key[21] << 8) | key[20];\n let x13 = (key[27] << 24) | (key[26] << 16) | (key[25] << 8) | key[24];\n let x14 = (key[31] << 24) | (key[30] << 16) | (key[29] << 8) | key[28];\n let x15 = 0x6B206574; // \"te k\"\n\n let u: number;\n\n for (let i = 0; i < ROUNDS; i += 2) {\n u = x0 + x12 | 0;\n x4 ^= u << 7 | u >>> (32 - 7);\n u = x4 + x0 | 0;\n x8 ^= u << 9 | u >>> (32 - 9);\n u = x8 + x4 | 0;\n x12 ^= u << 13 | u >>> (32 - 13);\n u = x12 + x8 | 0;\n x0 ^= u << 18 | u >>> (32 - 18);\n\n u = x5 + x1 | 0;\n x9 ^= u << 7 | u >>> (32 - 7);\n u = x9 + x5 | 0;\n x13 ^= u << 9 | u >>> (32 - 9);\n u = x13 + x9 | 0;\n x1 ^= u << 13 | u >>> (32 - 13);\n u = x1 + x13 | 0;\n x5 ^= u << 18 | u >>> (32 - 18);\n\n u = x10 + x6 | 0;\n x14 ^= u << 7 | u >>> (32 - 7);\n u = x14 + x10 | 0;\n x2 ^= u << 9 | u >>> (32 - 9);\n u = x2 + x14 | 0;\n x6 ^= u << 13 | u >>> (32 - 13);\n u = x6 + x2 | 0;\n x10 ^= u << 18 | u >>> (32 - 18);\n\n u = x15 + x11 | 0;\n x3 ^= u << 7 | u >>> (32 - 7);\n u = x3 + x15 | 0;\n x7 ^= u << 9 | u >>> (32 - 9);\n u = x7 + x3 | 0;\n x11 ^= u << 13 | u >>> (32 - 13);\n u = x11 + x7 | 0;\n x15 ^= u << 18 | u >>> (32 - 18);\n\n u = x0 + x3 | 0;\n x1 ^= u << 7 | u >>> (32 - 7);\n u = x1 + x0 | 0;\n x2 ^= u << 9 | u >>> (32 - 9);\n u = x2 + x1 | 0;\n x3 ^= u << 13 | u >>> (32 - 13);\n u = x3 + x2 | 0;\n x0 ^= u << 18 | u >>> (32 - 18);\n\n u = x5 + x4 | 0;\n x6 ^= u << 7 | u >>> (32 - 7);\n u = x6 + x5 | 0;\n x7 ^= u << 9 | u >>> (32 - 9);\n u = x7 + x6 | 0;\n x4 ^= u << 13 | u >>> (32 - 13);\n u = x4 + x7 | 0;\n x5 ^= u << 18 | u >>> (32 - 18);\n\n u = x10 + x9 | 0;\n x11 ^= u << 7 | u >>> (32 - 7);\n u = x11 + x10 | 0;\n x8 ^= u << 9 | u >>> (32 - 9);\n u = x8 + x11 | 0;\n x9 ^= u << 13 | u >>> (32 - 13);\n u = x9 + x8 | 0;\n x10 ^= u << 18 | u >>> (32 - 18);\n\n u = x15 + x14 | 0;\n x12 ^= u << 7 | u >>> (32 - 7);\n u = x12 + x15 | 0;\n x13 ^= u << 9 | u >>> (32 - 9);\n u = x13 + x12 | 0;\n x14 ^= u << 13 | u >>> (32 - 13);\n u = x14 + x13 | 0;\n x15 ^= u << 18 | u >>> (32 - 18);\n }\n writeUint32LE(x0, dst, 0);\n writeUint32LE(x5, dst, 4);\n writeUint32LE(x10, dst, 8);\n writeUint32LE(x15, dst, 12);\n writeUint32LE(x6, dst, 16);\n writeUint32LE(x7, dst, 20);\n writeUint32LE(x8, dst, 24);\n writeUint32LE(x9, dst, 28);\n return dst;\n}\n","'use strict'\n// base-x encoding / decoding\n// Copyright (c) 2018 base-x contributors\n// Copyright (c) 2014-2018 The Bitcoin Core developers (base58.cpp)\n// Distributed under the MIT software license, see the accompanying\n// file LICENSE or http://www.opensource.org/licenses/mit-license.php.\nfunction base (ALPHABET) {\n if (ALPHABET.length >= 255) { throw new TypeError('Alphabet too long') }\n var BASE_MAP = new Uint8Array(256)\n for (var j = 0; j < BASE_MAP.length; j++) {\n BASE_MAP[j] = 255\n }\n for (var i = 0; i < ALPHABET.length; i++) {\n var x = ALPHABET.charAt(i)\n var xc = x.charCodeAt(0)\n if (BASE_MAP[xc] !== 255) { throw new TypeError(x + ' is ambiguous') }\n BASE_MAP[xc] = i\n }\n var BASE = ALPHABET.length\n var LEADER = ALPHABET.charAt(0)\n var FACTOR = Math.log(BASE) / Math.log(256) // log(BASE) / log(256), rounded up\n var iFACTOR = Math.log(256) / Math.log(BASE) // log(256) / log(BASE), rounded up\n function encode (source) {\n if (source instanceof Uint8Array) {\n } else if (ArrayBuffer.isView(source)) {\n source = new Uint8Array(source.buffer, source.byteOffset, source.byteLength)\n } else if (Array.isArray(source)) {\n source = Uint8Array.from(source)\n }\n if (!(source instanceof Uint8Array)) { throw new TypeError('Expected Uint8Array') }\n if (source.length === 0) { return '' }\n // Skip & count leading zeroes.\n var zeroes = 0\n var length = 0\n var pbegin = 0\n var pend = source.length\n while (pbegin !== pend && source[pbegin] === 0) {\n pbegin++\n zeroes++\n }\n // Allocate enough space in big-endian base58 representation.\n var size = ((pend - pbegin) * iFACTOR + 1) >>> 0\n var b58 = new Uint8Array(size)\n // Process the bytes.\n while (pbegin !== pend) {\n var carry = source[pbegin]\n // Apply \"b58 = b58 * 256 + ch\".\n var i = 0\n for (var it1 = size - 1; (carry !== 0 || i < length) && (it1 !== -1); it1--, i++) {\n carry += (256 * b58[it1]) >>> 0\n b58[it1] = (carry % BASE) >>> 0\n carry = (carry / BASE) >>> 0\n }\n if (carry !== 0) { throw new Error('Non-zero carry') }\n length = i\n pbegin++\n }\n // Skip leading zeroes in base58 result.\n var it2 = size - length\n while (it2 !== size && b58[it2] === 0) {\n it2++\n }\n // Translate the result into a string.\n var str = LEADER.repeat(zeroes)\n for (; it2 < size; ++it2) { str += ALPHABET.charAt(b58[it2]) }\n return str\n }\n function decodeUnsafe (source) {\n if (typeof source !== 'string') { throw new TypeError('Expected String') }\n if (source.length === 0) { return new Uint8Array() }\n var psz = 0\n // Skip and count leading '1's.\n var zeroes = 0\n var length = 0\n while (source[psz] === LEADER) {\n zeroes++\n psz++\n }\n // Allocate enough space in big-endian base256 representation.\n var size = (((source.length - psz) * FACTOR) + 1) >>> 0 // log(58) / log(256), rounded up.\n var b256 = new Uint8Array(size)\n // Process the characters.\n while (source[psz]) {\n // Decode character\n var carry = BASE_MAP[source.charCodeAt(psz)]\n // Invalid character\n if (carry === 255) { return }\n var i = 0\n for (var it3 = size - 1; (carry !== 0 || i < length) && (it3 !== -1); it3--, i++) {\n carry += (BASE * b256[it3]) >>> 0\n b256[it3] = (carry % 256) >>> 0\n carry = (carry / 256) >>> 0\n }\n if (carry !== 0) { throw new Error('Non-zero carry') }\n length = i\n psz++\n }\n // Skip leading zeroes in b256.\n var it4 = size - length\n while (it4 !== size && b256[it4] === 0) {\n it4++\n }\n var vch = new Uint8Array(zeroes + (size - it4))\n var j = zeroes\n while (it4 !== size) {\n vch[j++] = b256[it4++]\n }\n return vch\n }\n function decode (string) {\n var buffer = decodeUnsafe(string)\n if (buffer) { return buffer }\n throw new Error('Non-base' + BASE + ' character')\n }\n return {\n encode: encode,\n decodeUnsafe: decodeUnsafe,\n decode: decode\n }\n}\nmodule.exports = base\n","const basex = require('base-x')\nconst ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'\n\nmodule.exports = basex(ALPHABET)\n","'use strict'\n\nvar base58 = require('bs58')\n\nmodule.exports = function (checksumFn) {\n // Encode a buffer as a base58-check encoded string\n function encode (payload) {\n var payloadU8 = Uint8Array.from(payload)\n var checksum = checksumFn(payloadU8)\n var length = payloadU8.length + 4\n var both = new Uint8Array(length)\n both.set(payloadU8, 0)\n both.set(checksum.subarray(0, 4), payloadU8.length)\n return base58.encode(both, length)\n }\n\n function decodeRaw (buffer) {\n var payload = buffer.slice(0, -4)\n var checksum = buffer.slice(-4)\n var newChecksum = checksumFn(payload)\n\n if (checksum[0] ^ newChecksum[0] |\n checksum[1] ^ newChecksum[1] |\n checksum[2] ^ newChecksum[2] |\n checksum[3] ^ newChecksum[3]) return\n\n return payload\n }\n\n // Decode a base58-check encoded string to a buffer, no result if checksum is wrong\n function decodeUnsafe (string) {\n var buffer = base58.decodeUnsafe(string)\n if (!buffer) return\n\n return decodeRaw(buffer)\n }\n\n function decode (string) {\n var buffer = base58.decode(string)\n var payload = decodeRaw(buffer, checksumFn)\n if (!payload) throw new Error('Invalid checksum')\n return payload\n }\n\n return {\n encode: encode,\n decode: decode,\n decodeUnsafe: decodeUnsafe\n }\n}\n","'use strict'\n\nvar { sha256 } = require('@noble/hashes/sha256')\nvar bs58checkBase = require('./base')\n\n// SHA256(SHA256(buffer))\nfunction sha256x2 (buffer) {\n return sha256(sha256(buffer))\n}\n\nmodule.exports = bs58checkBase(sha256x2)\n","(function (module, exports) {\n 'use strict';\n\n // Utils\n function assert (val, msg) {\n if (!val) throw new Error(msg || 'Assertion failed');\n }\n\n // Could use `inherits` module, but don't want to move from single file\n // architecture yet.\n function inherits (ctor, superCtor) {\n ctor.super_ = superCtor;\n var TempCtor = function () {};\n TempCtor.prototype = superCtor.prototype;\n ctor.prototype = new TempCtor();\n ctor.prototype.constructor = ctor;\n }\n\n // BN\n\n function BN (number, base, endian) {\n if (BN.isBN(number)) {\n return number;\n }\n\n this.negative = 0;\n this.words = null;\n this.length = 0;\n\n // Reduction context\n this.red = null;\n\n if (number !== null) {\n if (base === 'le' || base === 'be') {\n endian = base;\n base = 10;\n }\n\n this._init(number || 0, base || 10, endian || 'be');\n }\n }\n if (typeof module === 'object') {\n module.exports = BN;\n } else {\n exports.BN = BN;\n }\n\n BN.BN = BN;\n BN.wordSize = 26;\n\n var Buffer;\n try {\n if (typeof window !== 'undefined' && typeof window.Buffer !== 'undefined') {\n Buffer = window.Buffer;\n } else {\n Buffer = require('buffer').Buffer;\n }\n } catch (e) {\n }\n\n BN.isBN = function isBN (num) {\n if (num instanceof BN) {\n return true;\n }\n\n return num !== null && typeof num === 'object' &&\n num.constructor.wordSize === BN.wordSize && Array.isArray(num.words);\n };\n\n BN.max = function max (left, right) {\n if (left.cmp(right) > 0) return left;\n return right;\n };\n\n BN.min = function min (left, right) {\n if (left.cmp(right) < 0) return left;\n return right;\n };\n\n BN.prototype._init = function init (number, base, endian) {\n if (typeof number === 'number') {\n return this._initNumber(number, base, endian);\n }\n\n if (typeof number === 'object') {\n return this._initArray(number, base, endian);\n }\n\n if (base === 'hex') {\n base = 16;\n }\n assert(base === (base | 0) && base >= 2 && base <= 36);\n\n number = number.toString().replace(/\\s+/g, '');\n var start = 0;\n if (number[0] === '-') {\n start++;\n this.negative = 1;\n }\n\n if (start < number.length) {\n if (base === 16) {\n this._parseHex(number, start, endian);\n } else {\n this._parseBase(number, base, start);\n if (endian === 'le') {\n this._initArray(this.toArray(), base, endian);\n }\n }\n }\n };\n\n BN.prototype._initNumber = function _initNumber (number, base, endian) {\n if (number < 0) {\n this.negative = 1;\n number = -number;\n }\n if (number < 0x4000000) {\n this.words = [number & 0x3ffffff];\n this.length = 1;\n } else if (number < 0x10000000000000) {\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff\n ];\n this.length = 2;\n } else {\n assert(number < 0x20000000000000); // 2 ^ 53 (unsafe)\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff,\n 1\n ];\n this.length = 3;\n }\n\n if (endian !== 'le') return;\n\n // Reverse the bytes\n this._initArray(this.toArray(), base, endian);\n };\n\n BN.prototype._initArray = function _initArray (number, base, endian) {\n // Perhaps a Uint8Array\n assert(typeof number.length === 'number');\n if (number.length <= 0) {\n this.words = [0];\n this.length = 1;\n return this;\n }\n\n this.length = Math.ceil(number.length / 3);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n var j, w;\n var off = 0;\n if (endian === 'be') {\n for (i = number.length - 1, j = 0; i >= 0; i -= 3) {\n w = number[i] | (number[i - 1] << 8) | (number[i - 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n } else if (endian === 'le') {\n for (i = 0, j = 0; i < number.length; i += 3) {\n w = number[i] | (number[i + 1] << 8) | (number[i + 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n }\n return this._strip();\n };\n\n function parseHex4Bits (string, index) {\n var c = string.charCodeAt(index);\n // '0' - '9'\n if (c >= 48 && c <= 57) {\n return c - 48;\n // 'A' - 'F'\n } else if (c >= 65 && c <= 70) {\n return c - 55;\n // 'a' - 'f'\n } else if (c >= 97 && c <= 102) {\n return c - 87;\n } else {\n assert(false, 'Invalid character in ' + string);\n }\n }\n\n function parseHexByte (string, lowerBound, index) {\n var r = parseHex4Bits(string, index);\n if (index - 1 >= lowerBound) {\n r |= parseHex4Bits(string, index - 1) << 4;\n }\n return r;\n }\n\n BN.prototype._parseHex = function _parseHex (number, start, endian) {\n // Create possibly bigger array to ensure that it fits the number\n this.length = Math.ceil((number.length - start) / 6);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n // 24-bits chunks\n var off = 0;\n var j = 0;\n\n var w;\n if (endian === 'be') {\n for (i = number.length - 1; i >= start; i -= 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n } else {\n var parseLength = number.length - start;\n for (i = parseLength % 2 === 0 ? start + 1 : start; i < number.length; i += 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n }\n\n this._strip();\n };\n\n function parseBase (str, start, end, mul) {\n var r = 0;\n var b = 0;\n var len = Math.min(str.length, end);\n for (var i = start; i < len; i++) {\n var c = str.charCodeAt(i) - 48;\n\n r *= mul;\n\n // 'a'\n if (c >= 49) {\n b = c - 49 + 0xa;\n\n // 'A'\n } else if (c >= 17) {\n b = c - 17 + 0xa;\n\n // '0' - '9'\n } else {\n b = c;\n }\n assert(c >= 0 && b < mul, 'Invalid character');\n r += b;\n }\n return r;\n }\n\n BN.prototype._parseBase = function _parseBase (number, base, start) {\n // Initialize as zero\n this.words = [0];\n this.length = 1;\n\n // Find length of limb in base\n for (var limbLen = 0, limbPow = 1; limbPow <= 0x3ffffff; limbPow *= base) {\n limbLen++;\n }\n limbLen--;\n limbPow = (limbPow / base) | 0;\n\n var total = number.length - start;\n var mod = total % limbLen;\n var end = Math.min(total, total - mod) + start;\n\n var word = 0;\n for (var i = start; i < end; i += limbLen) {\n word = parseBase(number, i, i + limbLen, base);\n\n this.imuln(limbPow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n if (mod !== 0) {\n var pow = 1;\n word = parseBase(number, i, number.length, base);\n\n for (i = 0; i < mod; i++) {\n pow *= base;\n }\n\n this.imuln(pow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n this._strip();\n };\n\n BN.prototype.copy = function copy (dest) {\n dest.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n dest.words[i] = this.words[i];\n }\n dest.length = this.length;\n dest.negative = this.negative;\n dest.red = this.red;\n };\n\n function move (dest, src) {\n dest.words = src.words;\n dest.length = src.length;\n dest.negative = src.negative;\n dest.red = src.red;\n }\n\n BN.prototype._move = function _move (dest) {\n move(dest, this);\n };\n\n BN.prototype.clone = function clone () {\n var r = new BN(null);\n this.copy(r);\n return r;\n };\n\n BN.prototype._expand = function _expand (size) {\n while (this.length < size) {\n this.words[this.length++] = 0;\n }\n return this;\n };\n\n // Remove leading `0` from `this`\n BN.prototype._strip = function strip () {\n while (this.length > 1 && this.words[this.length - 1] === 0) {\n this.length--;\n }\n return this._normSign();\n };\n\n BN.prototype._normSign = function _normSign () {\n // -0 = 0\n if (this.length === 1 && this.words[0] === 0) {\n this.negative = 0;\n }\n return this;\n };\n\n // Check Symbol.for because not everywhere where Symbol defined\n // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol#Browser_compatibility\n if (typeof Symbol !== 'undefined' && typeof Symbol.for === 'function') {\n try {\n BN.prototype[Symbol.for('nodejs.util.inspect.custom')] = inspect;\n } catch (e) {\n BN.prototype.inspect = inspect;\n }\n } else {\n BN.prototype.inspect = inspect;\n }\n\n function inspect () {\n return (this.red ? '';\n }\n\n /*\n\n var zeros = [];\n var groupSizes = [];\n var groupBases = [];\n\n var s = '';\n var i = -1;\n while (++i < BN.wordSize) {\n zeros[i] = s;\n s += '0';\n }\n groupSizes[0] = 0;\n groupSizes[1] = 0;\n groupBases[0] = 0;\n groupBases[1] = 0;\n var base = 2 - 1;\n while (++base < 36 + 1) {\n var groupSize = 0;\n var groupBase = 1;\n while (groupBase < (1 << BN.wordSize) / base) {\n groupBase *= base;\n groupSize += 1;\n }\n groupSizes[base] = groupSize;\n groupBases[base] = groupBase;\n }\n\n */\n\n var zeros = [\n '',\n '0',\n '00',\n '000',\n '0000',\n '00000',\n '000000',\n '0000000',\n '00000000',\n '000000000',\n '0000000000',\n '00000000000',\n '000000000000',\n '0000000000000',\n '00000000000000',\n '000000000000000',\n '0000000000000000',\n '00000000000000000',\n '000000000000000000',\n '0000000000000000000',\n '00000000000000000000',\n '000000000000000000000',\n '0000000000000000000000',\n '00000000000000000000000',\n '000000000000000000000000',\n '0000000000000000000000000'\n ];\n\n var groupSizes = [\n 0, 0,\n 25, 16, 12, 11, 10, 9, 8,\n 8, 7, 7, 7, 7, 6, 6,\n 6, 6, 6, 6, 6, 5, 5,\n 5, 5, 5, 5, 5, 5, 5,\n 5, 5, 5, 5, 5, 5, 5\n ];\n\n var groupBases = [\n 0, 0,\n 33554432, 43046721, 16777216, 48828125, 60466176, 40353607, 16777216,\n 43046721, 10000000, 19487171, 35831808, 62748517, 7529536, 11390625,\n 16777216, 24137569, 34012224, 47045881, 64000000, 4084101, 5153632,\n 6436343, 7962624, 9765625, 11881376, 14348907, 17210368, 20511149,\n 24300000, 28629151, 33554432, 39135393, 45435424, 52521875, 60466176\n ];\n\n BN.prototype.toString = function toString (base, padding) {\n base = base || 10;\n padding = padding | 0 || 1;\n\n var out;\n if (base === 16 || base === 'hex') {\n out = '';\n var off = 0;\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = this.words[i];\n var word = (((w << off) | carry) & 0xffffff).toString(16);\n carry = (w >>> (24 - off)) & 0xffffff;\n off += 2;\n if (off >= 26) {\n off -= 26;\n i--;\n }\n if (carry !== 0 || i !== this.length - 1) {\n out = zeros[6 - word.length] + word + out;\n } else {\n out = word + out;\n }\n }\n if (carry !== 0) {\n out = carry.toString(16) + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n if (base === (base | 0) && base >= 2 && base <= 36) {\n // var groupSize = Math.floor(BN.wordSize * Math.LN2 / Math.log(base));\n var groupSize = groupSizes[base];\n // var groupBase = Math.pow(base, groupSize);\n var groupBase = groupBases[base];\n out = '';\n var c = this.clone();\n c.negative = 0;\n while (!c.isZero()) {\n var r = c.modrn(groupBase).toString(base);\n c = c.idivn(groupBase);\n\n if (!c.isZero()) {\n out = zeros[groupSize - r.length] + r + out;\n } else {\n out = r + out;\n }\n }\n if (this.isZero()) {\n out = '0' + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n assert(false, 'Base should be between 2 and 36');\n };\n\n BN.prototype.toNumber = function toNumber () {\n var ret = this.words[0];\n if (this.length === 2) {\n ret += this.words[1] * 0x4000000;\n } else if (this.length === 3 && this.words[2] === 0x01) {\n // NOTE: at this stage it is known that the top bit is set\n ret += 0x10000000000000 + (this.words[1] * 0x4000000);\n } else if (this.length > 2) {\n assert(false, 'Number can only safely store up to 53 bits');\n }\n return (this.negative !== 0) ? -ret : ret;\n };\n\n BN.prototype.toJSON = function toJSON () {\n return this.toString(16, 2);\n };\n\n if (Buffer) {\n BN.prototype.toBuffer = function toBuffer (endian, length) {\n return this.toArrayLike(Buffer, endian, length);\n };\n }\n\n BN.prototype.toArray = function toArray (endian, length) {\n return this.toArrayLike(Array, endian, length);\n };\n\n var allocate = function allocate (ArrayType, size) {\n if (ArrayType.allocUnsafe) {\n return ArrayType.allocUnsafe(size);\n }\n return new ArrayType(size);\n };\n\n BN.prototype.toArrayLike = function toArrayLike (ArrayType, endian, length) {\n this._strip();\n\n var byteLength = this.byteLength();\n var reqLength = length || Math.max(1, byteLength);\n assert(byteLength <= reqLength, 'byte array longer than desired length');\n assert(reqLength > 0, 'Requested array length <= 0');\n\n var res = allocate(ArrayType, reqLength);\n var postfix = endian === 'le' ? 'LE' : 'BE';\n this['_toArrayLike' + postfix](res, byteLength);\n return res;\n };\n\n BN.prototype._toArrayLikeLE = function _toArrayLikeLE (res, byteLength) {\n var position = 0;\n var carry = 0;\n\n for (var i = 0, shift = 0; i < this.length; i++) {\n var word = (this.words[i] << shift) | carry;\n\n res[position++] = word & 0xff;\n if (position < res.length) {\n res[position++] = (word >> 8) & 0xff;\n }\n if (position < res.length) {\n res[position++] = (word >> 16) & 0xff;\n }\n\n if (shift === 6) {\n if (position < res.length) {\n res[position++] = (word >> 24) & 0xff;\n }\n carry = 0;\n shift = 0;\n } else {\n carry = word >>> 24;\n shift += 2;\n }\n }\n\n if (position < res.length) {\n res[position++] = carry;\n\n while (position < res.length) {\n res[position++] = 0;\n }\n }\n };\n\n BN.prototype._toArrayLikeBE = function _toArrayLikeBE (res, byteLength) {\n var position = res.length - 1;\n var carry = 0;\n\n for (var i = 0, shift = 0; i < this.length; i++) {\n var word = (this.words[i] << shift) | carry;\n\n res[position--] = word & 0xff;\n if (position >= 0) {\n res[position--] = (word >> 8) & 0xff;\n }\n if (position >= 0) {\n res[position--] = (word >> 16) & 0xff;\n }\n\n if (shift === 6) {\n if (position >= 0) {\n res[position--] = (word >> 24) & 0xff;\n }\n carry = 0;\n shift = 0;\n } else {\n carry = word >>> 24;\n shift += 2;\n }\n }\n\n if (position >= 0) {\n res[position--] = carry;\n\n while (position >= 0) {\n res[position--] = 0;\n }\n }\n };\n\n if (Math.clz32) {\n BN.prototype._countBits = function _countBits (w) {\n return 32 - Math.clz32(w);\n };\n } else {\n BN.prototype._countBits = function _countBits (w) {\n var t = w;\n var r = 0;\n if (t >= 0x1000) {\n r += 13;\n t >>>= 13;\n }\n if (t >= 0x40) {\n r += 7;\n t >>>= 7;\n }\n if (t >= 0x8) {\n r += 4;\n t >>>= 4;\n }\n if (t >= 0x02) {\n r += 2;\n t >>>= 2;\n }\n return r + t;\n };\n }\n\n BN.prototype._zeroBits = function _zeroBits (w) {\n // Short-cut\n if (w === 0) return 26;\n\n var t = w;\n var r = 0;\n if ((t & 0x1fff) === 0) {\n r += 13;\n t >>>= 13;\n }\n if ((t & 0x7f) === 0) {\n r += 7;\n t >>>= 7;\n }\n if ((t & 0xf) === 0) {\n r += 4;\n t >>>= 4;\n }\n if ((t & 0x3) === 0) {\n r += 2;\n t >>>= 2;\n }\n if ((t & 0x1) === 0) {\n r++;\n }\n return r;\n };\n\n // Return number of used bits in a BN\n BN.prototype.bitLength = function bitLength () {\n var w = this.words[this.length - 1];\n var hi = this._countBits(w);\n return (this.length - 1) * 26 + hi;\n };\n\n function toBitArray (num) {\n var w = new Array(num.bitLength());\n\n for (var bit = 0; bit < w.length; bit++) {\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n w[bit] = (num.words[off] >>> wbit) & 0x01;\n }\n\n return w;\n }\n\n // Number of trailing zero bits\n BN.prototype.zeroBits = function zeroBits () {\n if (this.isZero()) return 0;\n\n var r = 0;\n for (var i = 0; i < this.length; i++) {\n var b = this._zeroBits(this.words[i]);\n r += b;\n if (b !== 26) break;\n }\n return r;\n };\n\n BN.prototype.byteLength = function byteLength () {\n return Math.ceil(this.bitLength() / 8);\n };\n\n BN.prototype.toTwos = function toTwos (width) {\n if (this.negative !== 0) {\n return this.abs().inotn(width).iaddn(1);\n }\n return this.clone();\n };\n\n BN.prototype.fromTwos = function fromTwos (width) {\n if (this.testn(width - 1)) {\n return this.notn(width).iaddn(1).ineg();\n }\n return this.clone();\n };\n\n BN.prototype.isNeg = function isNeg () {\n return this.negative !== 0;\n };\n\n // Return negative clone of `this`\n BN.prototype.neg = function neg () {\n return this.clone().ineg();\n };\n\n BN.prototype.ineg = function ineg () {\n if (!this.isZero()) {\n this.negative ^= 1;\n }\n\n return this;\n };\n\n // Or `num` with `this` in-place\n BN.prototype.iuor = function iuor (num) {\n while (this.length < num.length) {\n this.words[this.length++] = 0;\n }\n\n for (var i = 0; i < num.length; i++) {\n this.words[i] = this.words[i] | num.words[i];\n }\n\n return this._strip();\n };\n\n BN.prototype.ior = function ior (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuor(num);\n };\n\n // Or `num` with `this`\n BN.prototype.or = function or (num) {\n if (this.length > num.length) return this.clone().ior(num);\n return num.clone().ior(this);\n };\n\n BN.prototype.uor = function uor (num) {\n if (this.length > num.length) return this.clone().iuor(num);\n return num.clone().iuor(this);\n };\n\n // And `num` with `this` in-place\n BN.prototype.iuand = function iuand (num) {\n // b = min-length(num, this)\n var b;\n if (this.length > num.length) {\n b = num;\n } else {\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = this.words[i] & num.words[i];\n }\n\n this.length = b.length;\n\n return this._strip();\n };\n\n BN.prototype.iand = function iand (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuand(num);\n };\n\n // And `num` with `this`\n BN.prototype.and = function and (num) {\n if (this.length > num.length) return this.clone().iand(num);\n return num.clone().iand(this);\n };\n\n BN.prototype.uand = function uand (num) {\n if (this.length > num.length) return this.clone().iuand(num);\n return num.clone().iuand(this);\n };\n\n // Xor `num` with `this` in-place\n BN.prototype.iuxor = function iuxor (num) {\n // a.length > b.length\n var a;\n var b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = a.words[i] ^ b.words[i];\n }\n\n if (this !== a) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = a.length;\n\n return this._strip();\n };\n\n BN.prototype.ixor = function ixor (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuxor(num);\n };\n\n // Xor `num` with `this`\n BN.prototype.xor = function xor (num) {\n if (this.length > num.length) return this.clone().ixor(num);\n return num.clone().ixor(this);\n };\n\n BN.prototype.uxor = function uxor (num) {\n if (this.length > num.length) return this.clone().iuxor(num);\n return num.clone().iuxor(this);\n };\n\n // Not ``this`` with ``width`` bitwidth\n BN.prototype.inotn = function inotn (width) {\n assert(typeof width === 'number' && width >= 0);\n\n var bytesNeeded = Math.ceil(width / 26) | 0;\n var bitsLeft = width % 26;\n\n // Extend the buffer with leading zeroes\n this._expand(bytesNeeded);\n\n if (bitsLeft > 0) {\n bytesNeeded--;\n }\n\n // Handle complete words\n for (var i = 0; i < bytesNeeded; i++) {\n this.words[i] = ~this.words[i] & 0x3ffffff;\n }\n\n // Handle the residue\n if (bitsLeft > 0) {\n this.words[i] = ~this.words[i] & (0x3ffffff >> (26 - bitsLeft));\n }\n\n // And remove leading zeroes\n return this._strip();\n };\n\n BN.prototype.notn = function notn (width) {\n return this.clone().inotn(width);\n };\n\n // Set `bit` of `this`\n BN.prototype.setn = function setn (bit, val) {\n assert(typeof bit === 'number' && bit >= 0);\n\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n this._expand(off + 1);\n\n if (val) {\n this.words[off] = this.words[off] | (1 << wbit);\n } else {\n this.words[off] = this.words[off] & ~(1 << wbit);\n }\n\n return this._strip();\n };\n\n // Add `num` to `this` in-place\n BN.prototype.iadd = function iadd (num) {\n var r;\n\n // negative + positive\n if (this.negative !== 0 && num.negative === 0) {\n this.negative = 0;\n r = this.isub(num);\n this.negative ^= 1;\n return this._normSign();\n\n // positive + negative\n } else if (this.negative === 0 && num.negative !== 0) {\n num.negative = 0;\n r = this.isub(num);\n num.negative = 1;\n return r._normSign();\n }\n\n // a.length > b.length\n var a, b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) + (b.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n\n this.length = a.length;\n if (carry !== 0) {\n this.words[this.length] = carry;\n this.length++;\n // Copy the rest of the words\n } else if (a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n return this;\n };\n\n // Add `num` to `this`\n BN.prototype.add = function add (num) {\n var res;\n if (num.negative !== 0 && this.negative === 0) {\n num.negative = 0;\n res = this.sub(num);\n num.negative ^= 1;\n return res;\n } else if (num.negative === 0 && this.negative !== 0) {\n this.negative = 0;\n res = num.sub(this);\n this.negative = 1;\n return res;\n }\n\n if (this.length > num.length) return this.clone().iadd(num);\n\n return num.clone().iadd(this);\n };\n\n // Subtract `num` from `this` in-place\n BN.prototype.isub = function isub (num) {\n // this - (-num) = this + num\n if (num.negative !== 0) {\n num.negative = 0;\n var r = this.iadd(num);\n num.negative = 1;\n return r._normSign();\n\n // -this - num = -(this + num)\n } else if (this.negative !== 0) {\n this.negative = 0;\n this.iadd(num);\n this.negative = 1;\n return this._normSign();\n }\n\n // At this point both numbers are positive\n var cmp = this.cmp(num);\n\n // Optimization - zeroify\n if (cmp === 0) {\n this.negative = 0;\n this.length = 1;\n this.words[0] = 0;\n return this;\n }\n\n // a > b\n var a, b;\n if (cmp > 0) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) - (b.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n\n // Copy rest of the words\n if (carry === 0 && i < a.length && a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = Math.max(this.length, i);\n\n if (a !== this) {\n this.negative = 1;\n }\n\n return this._strip();\n };\n\n // Subtract `num` from `this`\n BN.prototype.sub = function sub (num) {\n return this.clone().isub(num);\n };\n\n function smallMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n var len = (self.length + num.length) | 0;\n out.length = len;\n len = (len - 1) | 0;\n\n // Peel one iteration (compiler can't do it, because of code complexity)\n var a = self.words[0] | 0;\n var b = num.words[0] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n var carry = (r / 0x4000000) | 0;\n out.words[0] = lo;\n\n for (var k = 1; k < len; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = carry >>> 26;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = (k - j) | 0;\n a = self.words[i] | 0;\n b = num.words[j] | 0;\n r = a * b + rword;\n ncarry += (r / 0x4000000) | 0;\n rword = r & 0x3ffffff;\n }\n out.words[k] = rword | 0;\n carry = ncarry | 0;\n }\n if (carry !== 0) {\n out.words[k] = carry | 0;\n } else {\n out.length--;\n }\n\n return out._strip();\n }\n\n // TODO(indutny): it may be reasonable to omit it for users who don't need\n // to work with 256-bit numbers, otherwise it gives 20% improvement for 256-bit\n // multiplication (like elliptic secp256k1).\n var comb10MulTo = function comb10MulTo (self, num, out) {\n var a = self.words;\n var b = num.words;\n var o = out.words;\n var c = 0;\n var lo;\n var mid;\n var hi;\n var a0 = a[0] | 0;\n var al0 = a0 & 0x1fff;\n var ah0 = a0 >>> 13;\n var a1 = a[1] | 0;\n var al1 = a1 & 0x1fff;\n var ah1 = a1 >>> 13;\n var a2 = a[2] | 0;\n var al2 = a2 & 0x1fff;\n var ah2 = a2 >>> 13;\n var a3 = a[3] | 0;\n var al3 = a3 & 0x1fff;\n var ah3 = a3 >>> 13;\n var a4 = a[4] | 0;\n var al4 = a4 & 0x1fff;\n var ah4 = a4 >>> 13;\n var a5 = a[5] | 0;\n var al5 = a5 & 0x1fff;\n var ah5 = a5 >>> 13;\n var a6 = a[6] | 0;\n var al6 = a6 & 0x1fff;\n var ah6 = a6 >>> 13;\n var a7 = a[7] | 0;\n var al7 = a7 & 0x1fff;\n var ah7 = a7 >>> 13;\n var a8 = a[8] | 0;\n var al8 = a8 & 0x1fff;\n var ah8 = a8 >>> 13;\n var a9 = a[9] | 0;\n var al9 = a9 & 0x1fff;\n var ah9 = a9 >>> 13;\n var b0 = b[0] | 0;\n var bl0 = b0 & 0x1fff;\n var bh0 = b0 >>> 13;\n var b1 = b[1] | 0;\n var bl1 = b1 & 0x1fff;\n var bh1 = b1 >>> 13;\n var b2 = b[2] | 0;\n var bl2 = b2 & 0x1fff;\n var bh2 = b2 >>> 13;\n var b3 = b[3] | 0;\n var bl3 = b3 & 0x1fff;\n var bh3 = b3 >>> 13;\n var b4 = b[4] | 0;\n var bl4 = b4 & 0x1fff;\n var bh4 = b4 >>> 13;\n var b5 = b[5] | 0;\n var bl5 = b5 & 0x1fff;\n var bh5 = b5 >>> 13;\n var b6 = b[6] | 0;\n var bl6 = b6 & 0x1fff;\n var bh6 = b6 >>> 13;\n var b7 = b[7] | 0;\n var bl7 = b7 & 0x1fff;\n var bh7 = b7 >>> 13;\n var b8 = b[8] | 0;\n var bl8 = b8 & 0x1fff;\n var bh8 = b8 >>> 13;\n var b9 = b[9] | 0;\n var bl9 = b9 & 0x1fff;\n var bh9 = b9 >>> 13;\n\n out.negative = self.negative ^ num.negative;\n out.length = 19;\n /* k = 0 */\n lo = Math.imul(al0, bl0);\n mid = Math.imul(al0, bh0);\n mid = (mid + Math.imul(ah0, bl0)) | 0;\n hi = Math.imul(ah0, bh0);\n var w0 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w0 >>> 26)) | 0;\n w0 &= 0x3ffffff;\n /* k = 1 */\n lo = Math.imul(al1, bl0);\n mid = Math.imul(al1, bh0);\n mid = (mid + Math.imul(ah1, bl0)) | 0;\n hi = Math.imul(ah1, bh0);\n lo = (lo + Math.imul(al0, bl1)) | 0;\n mid = (mid + Math.imul(al0, bh1)) | 0;\n mid = (mid + Math.imul(ah0, bl1)) | 0;\n hi = (hi + Math.imul(ah0, bh1)) | 0;\n var w1 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w1 >>> 26)) | 0;\n w1 &= 0x3ffffff;\n /* k = 2 */\n lo = Math.imul(al2, bl0);\n mid = Math.imul(al2, bh0);\n mid = (mid + Math.imul(ah2, bl0)) | 0;\n hi = Math.imul(ah2, bh0);\n lo = (lo + Math.imul(al1, bl1)) | 0;\n mid = (mid + Math.imul(al1, bh1)) | 0;\n mid = (mid + Math.imul(ah1, bl1)) | 0;\n hi = (hi + Math.imul(ah1, bh1)) | 0;\n lo = (lo + Math.imul(al0, bl2)) | 0;\n mid = (mid + Math.imul(al0, bh2)) | 0;\n mid = (mid + Math.imul(ah0, bl2)) | 0;\n hi = (hi + Math.imul(ah0, bh2)) | 0;\n var w2 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w2 >>> 26)) | 0;\n w2 &= 0x3ffffff;\n /* k = 3 */\n lo = Math.imul(al3, bl0);\n mid = Math.imul(al3, bh0);\n mid = (mid + Math.imul(ah3, bl0)) | 0;\n hi = Math.imul(ah3, bh0);\n lo = (lo + Math.imul(al2, bl1)) | 0;\n mid = (mid + Math.imul(al2, bh1)) | 0;\n mid = (mid + Math.imul(ah2, bl1)) | 0;\n hi = (hi + Math.imul(ah2, bh1)) | 0;\n lo = (lo + Math.imul(al1, bl2)) | 0;\n mid = (mid + Math.imul(al1, bh2)) | 0;\n mid = (mid + Math.imul(ah1, bl2)) | 0;\n hi = (hi + Math.imul(ah1, bh2)) | 0;\n lo = (lo + Math.imul(al0, bl3)) | 0;\n mid = (mid + Math.imul(al0, bh3)) | 0;\n mid = (mid + Math.imul(ah0, bl3)) | 0;\n hi = (hi + Math.imul(ah0, bh3)) | 0;\n var w3 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w3 >>> 26)) | 0;\n w3 &= 0x3ffffff;\n /* k = 4 */\n lo = Math.imul(al4, bl0);\n mid = Math.imul(al4, bh0);\n mid = (mid + Math.imul(ah4, bl0)) | 0;\n hi = Math.imul(ah4, bh0);\n lo = (lo + Math.imul(al3, bl1)) | 0;\n mid = (mid + Math.imul(al3, bh1)) | 0;\n mid = (mid + Math.imul(ah3, bl1)) | 0;\n hi = (hi + Math.imul(ah3, bh1)) | 0;\n lo = (lo + Math.imul(al2, bl2)) | 0;\n mid = (mid + Math.imul(al2, bh2)) | 0;\n mid = (mid + Math.imul(ah2, bl2)) | 0;\n hi = (hi + Math.imul(ah2, bh2)) | 0;\n lo = (lo + Math.imul(al1, bl3)) | 0;\n mid = (mid + Math.imul(al1, bh3)) | 0;\n mid = (mid + Math.imul(ah1, bl3)) | 0;\n hi = (hi + Math.imul(ah1, bh3)) | 0;\n lo = (lo + Math.imul(al0, bl4)) | 0;\n mid = (mid + Math.imul(al0, bh4)) | 0;\n mid = (mid + Math.imul(ah0, bl4)) | 0;\n hi = (hi + Math.imul(ah0, bh4)) | 0;\n var w4 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w4 >>> 26)) | 0;\n w4 &= 0x3ffffff;\n /* k = 5 */\n lo = Math.imul(al5, bl0);\n mid = Math.imul(al5, bh0);\n mid = (mid + Math.imul(ah5, bl0)) | 0;\n hi = Math.imul(ah5, bh0);\n lo = (lo + Math.imul(al4, bl1)) | 0;\n mid = (mid + Math.imul(al4, bh1)) | 0;\n mid = (mid + Math.imul(ah4, bl1)) | 0;\n hi = (hi + Math.imul(ah4, bh1)) | 0;\n lo = (lo + Math.imul(al3, bl2)) | 0;\n mid = (mid + Math.imul(al3, bh2)) | 0;\n mid = (mid + Math.imul(ah3, bl2)) | 0;\n hi = (hi + Math.imul(ah3, bh2)) | 0;\n lo = (lo + Math.imul(al2, bl3)) | 0;\n mid = (mid + Math.imul(al2, bh3)) | 0;\n mid = (mid + Math.imul(ah2, bl3)) | 0;\n hi = (hi + Math.imul(ah2, bh3)) | 0;\n lo = (lo + Math.imul(al1, bl4)) | 0;\n mid = (mid + Math.imul(al1, bh4)) | 0;\n mid = (mid + Math.imul(ah1, bl4)) | 0;\n hi = (hi + Math.imul(ah1, bh4)) | 0;\n lo = (lo + Math.imul(al0, bl5)) | 0;\n mid = (mid + Math.imul(al0, bh5)) | 0;\n mid = (mid + Math.imul(ah0, bl5)) | 0;\n hi = (hi + Math.imul(ah0, bh5)) | 0;\n var w5 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w5 >>> 26)) | 0;\n w5 &= 0x3ffffff;\n /* k = 6 */\n lo = Math.imul(al6, bl0);\n mid = Math.imul(al6, bh0);\n mid = (mid + Math.imul(ah6, bl0)) | 0;\n hi = Math.imul(ah6, bh0);\n lo = (lo + Math.imul(al5, bl1)) | 0;\n mid = (mid + Math.imul(al5, bh1)) | 0;\n mid = (mid + Math.imul(ah5, bl1)) | 0;\n hi = (hi + Math.imul(ah5, bh1)) | 0;\n lo = (lo + Math.imul(al4, bl2)) | 0;\n mid = (mid + Math.imul(al4, bh2)) | 0;\n mid = (mid + Math.imul(ah4, bl2)) | 0;\n hi = (hi + Math.imul(ah4, bh2)) | 0;\n lo = (lo + Math.imul(al3, bl3)) | 0;\n mid = (mid + Math.imul(al3, bh3)) | 0;\n mid = (mid + Math.imul(ah3, bl3)) | 0;\n hi = (hi + Math.imul(ah3, bh3)) | 0;\n lo = (lo + Math.imul(al2, bl4)) | 0;\n mid = (mid + Math.imul(al2, bh4)) | 0;\n mid = (mid + Math.imul(ah2, bl4)) | 0;\n hi = (hi + Math.imul(ah2, bh4)) | 0;\n lo = (lo + Math.imul(al1, bl5)) | 0;\n mid = (mid + Math.imul(al1, bh5)) | 0;\n mid = (mid + Math.imul(ah1, bl5)) | 0;\n hi = (hi + Math.imul(ah1, bh5)) | 0;\n lo = (lo + Math.imul(al0, bl6)) | 0;\n mid = (mid + Math.imul(al0, bh6)) | 0;\n mid = (mid + Math.imul(ah0, bl6)) | 0;\n hi = (hi + Math.imul(ah0, bh6)) | 0;\n var w6 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w6 >>> 26)) | 0;\n w6 &= 0x3ffffff;\n /* k = 7 */\n lo = Math.imul(al7, bl0);\n mid = Math.imul(al7, bh0);\n mid = (mid + Math.imul(ah7, bl0)) | 0;\n hi = Math.imul(ah7, bh0);\n lo = (lo + Math.imul(al6, bl1)) | 0;\n mid = (mid + Math.imul(al6, bh1)) | 0;\n mid = (mid + Math.imul(ah6, bl1)) | 0;\n hi = (hi + Math.imul(ah6, bh1)) | 0;\n lo = (lo + Math.imul(al5, bl2)) | 0;\n mid = (mid + Math.imul(al5, bh2)) | 0;\n mid = (mid + Math.imul(ah5, bl2)) | 0;\n hi = (hi + Math.imul(ah5, bh2)) | 0;\n lo = (lo + Math.imul(al4, bl3)) | 0;\n mid = (mid + Math.imul(al4, bh3)) | 0;\n mid = (mid + Math.imul(ah4, bl3)) | 0;\n hi = (hi + Math.imul(ah4, bh3)) | 0;\n lo = (lo + Math.imul(al3, bl4)) | 0;\n mid = (mid + Math.imul(al3, bh4)) | 0;\n mid = (mid + Math.imul(ah3, bl4)) | 0;\n hi = (hi + Math.imul(ah3, bh4)) | 0;\n lo = (lo + Math.imul(al2, bl5)) | 0;\n mid = (mid + Math.imul(al2, bh5)) | 0;\n mid = (mid + Math.imul(ah2, bl5)) | 0;\n hi = (hi + Math.imul(ah2, bh5)) | 0;\n lo = (lo + Math.imul(al1, bl6)) | 0;\n mid = (mid + Math.imul(al1, bh6)) | 0;\n mid = (mid + Math.imul(ah1, bl6)) | 0;\n hi = (hi + Math.imul(ah1, bh6)) | 0;\n lo = (lo + Math.imul(al0, bl7)) | 0;\n mid = (mid + Math.imul(al0, bh7)) | 0;\n mid = (mid + Math.imul(ah0, bl7)) | 0;\n hi = (hi + Math.imul(ah0, bh7)) | 0;\n var w7 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w7 >>> 26)) | 0;\n w7 &= 0x3ffffff;\n /* k = 8 */\n lo = Math.imul(al8, bl0);\n mid = Math.imul(al8, bh0);\n mid = (mid + Math.imul(ah8, bl0)) | 0;\n hi = Math.imul(ah8, bh0);\n lo = (lo + Math.imul(al7, bl1)) | 0;\n mid = (mid + Math.imul(al7, bh1)) | 0;\n mid = (mid + Math.imul(ah7, bl1)) | 0;\n hi = (hi + Math.imul(ah7, bh1)) | 0;\n lo = (lo + Math.imul(al6, bl2)) | 0;\n mid = (mid + Math.imul(al6, bh2)) | 0;\n mid = (mid + Math.imul(ah6, bl2)) | 0;\n hi = (hi + Math.imul(ah6, bh2)) | 0;\n lo = (lo + Math.imul(al5, bl3)) | 0;\n mid = (mid + Math.imul(al5, bh3)) | 0;\n mid = (mid + Math.imul(ah5, bl3)) | 0;\n hi = (hi + Math.imul(ah5, bh3)) | 0;\n lo = (lo + Math.imul(al4, bl4)) | 0;\n mid = (mid + Math.imul(al4, bh4)) | 0;\n mid = (mid + Math.imul(ah4, bl4)) | 0;\n hi = (hi + Math.imul(ah4, bh4)) | 0;\n lo = (lo + Math.imul(al3, bl5)) | 0;\n mid = (mid + Math.imul(al3, bh5)) | 0;\n mid = (mid + Math.imul(ah3, bl5)) | 0;\n hi = (hi + Math.imul(ah3, bh5)) | 0;\n lo = (lo + Math.imul(al2, bl6)) | 0;\n mid = (mid + Math.imul(al2, bh6)) | 0;\n mid = (mid + Math.imul(ah2, bl6)) | 0;\n hi = (hi + Math.imul(ah2, bh6)) | 0;\n lo = (lo + Math.imul(al1, bl7)) | 0;\n mid = (mid + Math.imul(al1, bh7)) | 0;\n mid = (mid + Math.imul(ah1, bl7)) | 0;\n hi = (hi + Math.imul(ah1, bh7)) | 0;\n lo = (lo + Math.imul(al0, bl8)) | 0;\n mid = (mid + Math.imul(al0, bh8)) | 0;\n mid = (mid + Math.imul(ah0, bl8)) | 0;\n hi = (hi + Math.imul(ah0, bh8)) | 0;\n var w8 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w8 >>> 26)) | 0;\n w8 &= 0x3ffffff;\n /* k = 9 */\n lo = Math.imul(al9, bl0);\n mid = Math.imul(al9, bh0);\n mid = (mid + Math.imul(ah9, bl0)) | 0;\n hi = Math.imul(ah9, bh0);\n lo = (lo + Math.imul(al8, bl1)) | 0;\n mid = (mid + Math.imul(al8, bh1)) | 0;\n mid = (mid + Math.imul(ah8, bl1)) | 0;\n hi = (hi + Math.imul(ah8, bh1)) | 0;\n lo = (lo + Math.imul(al7, bl2)) | 0;\n mid = (mid + Math.imul(al7, bh2)) | 0;\n mid = (mid + Math.imul(ah7, bl2)) | 0;\n hi = (hi + Math.imul(ah7, bh2)) | 0;\n lo = (lo + Math.imul(al6, bl3)) | 0;\n mid = (mid + Math.imul(al6, bh3)) | 0;\n mid = (mid + Math.imul(ah6, bl3)) | 0;\n hi = (hi + Math.imul(ah6, bh3)) | 0;\n lo = (lo + Math.imul(al5, bl4)) | 0;\n mid = (mid + Math.imul(al5, bh4)) | 0;\n mid = (mid + Math.imul(ah5, bl4)) | 0;\n hi = (hi + Math.imul(ah5, bh4)) | 0;\n lo = (lo + Math.imul(al4, bl5)) | 0;\n mid = (mid + Math.imul(al4, bh5)) | 0;\n mid = (mid + Math.imul(ah4, bl5)) | 0;\n hi = (hi + Math.imul(ah4, bh5)) | 0;\n lo = (lo + Math.imul(al3, bl6)) | 0;\n mid = (mid + Math.imul(al3, bh6)) | 0;\n mid = (mid + Math.imul(ah3, bl6)) | 0;\n hi = (hi + Math.imul(ah3, bh6)) | 0;\n lo = (lo + Math.imul(al2, bl7)) | 0;\n mid = (mid + Math.imul(al2, bh7)) | 0;\n mid = (mid + Math.imul(ah2, bl7)) | 0;\n hi = (hi + Math.imul(ah2, bh7)) | 0;\n lo = (lo + Math.imul(al1, bl8)) | 0;\n mid = (mid + Math.imul(al1, bh8)) | 0;\n mid = (mid + Math.imul(ah1, bl8)) | 0;\n hi = (hi + Math.imul(ah1, bh8)) | 0;\n lo = (lo + Math.imul(al0, bl9)) | 0;\n mid = (mid + Math.imul(al0, bh9)) | 0;\n mid = (mid + Math.imul(ah0, bl9)) | 0;\n hi = (hi + Math.imul(ah0, bh9)) | 0;\n var w9 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w9 >>> 26)) | 0;\n w9 &= 0x3ffffff;\n /* k = 10 */\n lo = Math.imul(al9, bl1);\n mid = Math.imul(al9, bh1);\n mid = (mid + Math.imul(ah9, bl1)) | 0;\n hi = Math.imul(ah9, bh1);\n lo = (lo + Math.imul(al8, bl2)) | 0;\n mid = (mid + Math.imul(al8, bh2)) | 0;\n mid = (mid + Math.imul(ah8, bl2)) | 0;\n hi = (hi + Math.imul(ah8, bh2)) | 0;\n lo = (lo + Math.imul(al7, bl3)) | 0;\n mid = (mid + Math.imul(al7, bh3)) | 0;\n mid = (mid + Math.imul(ah7, bl3)) | 0;\n hi = (hi + Math.imul(ah7, bh3)) | 0;\n lo = (lo + Math.imul(al6, bl4)) | 0;\n mid = (mid + Math.imul(al6, bh4)) | 0;\n mid = (mid + Math.imul(ah6, bl4)) | 0;\n hi = (hi + Math.imul(ah6, bh4)) | 0;\n lo = (lo + Math.imul(al5, bl5)) | 0;\n mid = (mid + Math.imul(al5, bh5)) | 0;\n mid = (mid + Math.imul(ah5, bl5)) | 0;\n hi = (hi + Math.imul(ah5, bh5)) | 0;\n lo = (lo + Math.imul(al4, bl6)) | 0;\n mid = (mid + Math.imul(al4, bh6)) | 0;\n mid = (mid + Math.imul(ah4, bl6)) | 0;\n hi = (hi + Math.imul(ah4, bh6)) | 0;\n lo = (lo + Math.imul(al3, bl7)) | 0;\n mid = (mid + Math.imul(al3, bh7)) | 0;\n mid = (mid + Math.imul(ah3, bl7)) | 0;\n hi = (hi + Math.imul(ah3, bh7)) | 0;\n lo = (lo + Math.imul(al2, bl8)) | 0;\n mid = (mid + Math.imul(al2, bh8)) | 0;\n mid = (mid + Math.imul(ah2, bl8)) | 0;\n hi = (hi + Math.imul(ah2, bh8)) | 0;\n lo = (lo + Math.imul(al1, bl9)) | 0;\n mid = (mid + Math.imul(al1, bh9)) | 0;\n mid = (mid + Math.imul(ah1, bl9)) | 0;\n hi = (hi + Math.imul(ah1, bh9)) | 0;\n var w10 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w10 >>> 26)) | 0;\n w10 &= 0x3ffffff;\n /* k = 11 */\n lo = Math.imul(al9, bl2);\n mid = Math.imul(al9, bh2);\n mid = (mid + Math.imul(ah9, bl2)) | 0;\n hi = Math.imul(ah9, bh2);\n lo = (lo + Math.imul(al8, bl3)) | 0;\n mid = (mid + Math.imul(al8, bh3)) | 0;\n mid = (mid + Math.imul(ah8, bl3)) | 0;\n hi = (hi + Math.imul(ah8, bh3)) | 0;\n lo = (lo + Math.imul(al7, bl4)) | 0;\n mid = (mid + Math.imul(al7, bh4)) | 0;\n mid = (mid + Math.imul(ah7, bl4)) | 0;\n hi = (hi + Math.imul(ah7, bh4)) | 0;\n lo = (lo + Math.imul(al6, bl5)) | 0;\n mid = (mid + Math.imul(al6, bh5)) | 0;\n mid = (mid + Math.imul(ah6, bl5)) | 0;\n hi = (hi + Math.imul(ah6, bh5)) | 0;\n lo = (lo + Math.imul(al5, bl6)) | 0;\n mid = (mid + Math.imul(al5, bh6)) | 0;\n mid = (mid + Math.imul(ah5, bl6)) | 0;\n hi = (hi + Math.imul(ah5, bh6)) | 0;\n lo = (lo + Math.imul(al4, bl7)) | 0;\n mid = (mid + Math.imul(al4, bh7)) | 0;\n mid = (mid + Math.imul(ah4, bl7)) | 0;\n hi = (hi + Math.imul(ah4, bh7)) | 0;\n lo = (lo + Math.imul(al3, bl8)) | 0;\n mid = (mid + Math.imul(al3, bh8)) | 0;\n mid = (mid + Math.imul(ah3, bl8)) | 0;\n hi = (hi + Math.imul(ah3, bh8)) | 0;\n lo = (lo + Math.imul(al2, bl9)) | 0;\n mid = (mid + Math.imul(al2, bh9)) | 0;\n mid = (mid + Math.imul(ah2, bl9)) | 0;\n hi = (hi + Math.imul(ah2, bh9)) | 0;\n var w11 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w11 >>> 26)) | 0;\n w11 &= 0x3ffffff;\n /* k = 12 */\n lo = Math.imul(al9, bl3);\n mid = Math.imul(al9, bh3);\n mid = (mid + Math.imul(ah9, bl3)) | 0;\n hi = Math.imul(ah9, bh3);\n lo = (lo + Math.imul(al8, bl4)) | 0;\n mid = (mid + Math.imul(al8, bh4)) | 0;\n mid = (mid + Math.imul(ah8, bl4)) | 0;\n hi = (hi + Math.imul(ah8, bh4)) | 0;\n lo = (lo + Math.imul(al7, bl5)) | 0;\n mid = (mid + Math.imul(al7, bh5)) | 0;\n mid = (mid + Math.imul(ah7, bl5)) | 0;\n hi = (hi + Math.imul(ah7, bh5)) | 0;\n lo = (lo + Math.imul(al6, bl6)) | 0;\n mid = (mid + Math.imul(al6, bh6)) | 0;\n mid = (mid + Math.imul(ah6, bl6)) | 0;\n hi = (hi + Math.imul(ah6, bh6)) | 0;\n lo = (lo + Math.imul(al5, bl7)) | 0;\n mid = (mid + Math.imul(al5, bh7)) | 0;\n mid = (mid + Math.imul(ah5, bl7)) | 0;\n hi = (hi + Math.imul(ah5, bh7)) | 0;\n lo = (lo + Math.imul(al4, bl8)) | 0;\n mid = (mid + Math.imul(al4, bh8)) | 0;\n mid = (mid + Math.imul(ah4, bl8)) | 0;\n hi = (hi + Math.imul(ah4, bh8)) | 0;\n lo = (lo + Math.imul(al3, bl9)) | 0;\n mid = (mid + Math.imul(al3, bh9)) | 0;\n mid = (mid + Math.imul(ah3, bl9)) | 0;\n hi = (hi + Math.imul(ah3, bh9)) | 0;\n var w12 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w12 >>> 26)) | 0;\n w12 &= 0x3ffffff;\n /* k = 13 */\n lo = Math.imul(al9, bl4);\n mid = Math.imul(al9, bh4);\n mid = (mid + Math.imul(ah9, bl4)) | 0;\n hi = Math.imul(ah9, bh4);\n lo = (lo + Math.imul(al8, bl5)) | 0;\n mid = (mid + Math.imul(al8, bh5)) | 0;\n mid = (mid + Math.imul(ah8, bl5)) | 0;\n hi = (hi + Math.imul(ah8, bh5)) | 0;\n lo = (lo + Math.imul(al7, bl6)) | 0;\n mid = (mid + Math.imul(al7, bh6)) | 0;\n mid = (mid + Math.imul(ah7, bl6)) | 0;\n hi = (hi + Math.imul(ah7, bh6)) | 0;\n lo = (lo + Math.imul(al6, bl7)) | 0;\n mid = (mid + Math.imul(al6, bh7)) | 0;\n mid = (mid + Math.imul(ah6, bl7)) | 0;\n hi = (hi + Math.imul(ah6, bh7)) | 0;\n lo = (lo + Math.imul(al5, bl8)) | 0;\n mid = (mid + Math.imul(al5, bh8)) | 0;\n mid = (mid + Math.imul(ah5, bl8)) | 0;\n hi = (hi + Math.imul(ah5, bh8)) | 0;\n lo = (lo + Math.imul(al4, bl9)) | 0;\n mid = (mid + Math.imul(al4, bh9)) | 0;\n mid = (mid + Math.imul(ah4, bl9)) | 0;\n hi = (hi + Math.imul(ah4, bh9)) | 0;\n var w13 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w13 >>> 26)) | 0;\n w13 &= 0x3ffffff;\n /* k = 14 */\n lo = Math.imul(al9, bl5);\n mid = Math.imul(al9, bh5);\n mid = (mid + Math.imul(ah9, bl5)) | 0;\n hi = Math.imul(ah9, bh5);\n lo = (lo + Math.imul(al8, bl6)) | 0;\n mid = (mid + Math.imul(al8, bh6)) | 0;\n mid = (mid + Math.imul(ah8, bl6)) | 0;\n hi = (hi + Math.imul(ah8, bh6)) | 0;\n lo = (lo + Math.imul(al7, bl7)) | 0;\n mid = (mid + Math.imul(al7, bh7)) | 0;\n mid = (mid + Math.imul(ah7, bl7)) | 0;\n hi = (hi + Math.imul(ah7, bh7)) | 0;\n lo = (lo + Math.imul(al6, bl8)) | 0;\n mid = (mid + Math.imul(al6, bh8)) | 0;\n mid = (mid + Math.imul(ah6, bl8)) | 0;\n hi = (hi + Math.imul(ah6, bh8)) | 0;\n lo = (lo + Math.imul(al5, bl9)) | 0;\n mid = (mid + Math.imul(al5, bh9)) | 0;\n mid = (mid + Math.imul(ah5, bl9)) | 0;\n hi = (hi + Math.imul(ah5, bh9)) | 0;\n var w14 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w14 >>> 26)) | 0;\n w14 &= 0x3ffffff;\n /* k = 15 */\n lo = Math.imul(al9, bl6);\n mid = Math.imul(al9, bh6);\n mid = (mid + Math.imul(ah9, bl6)) | 0;\n hi = Math.imul(ah9, bh6);\n lo = (lo + Math.imul(al8, bl7)) | 0;\n mid = (mid + Math.imul(al8, bh7)) | 0;\n mid = (mid + Math.imul(ah8, bl7)) | 0;\n hi = (hi + Math.imul(ah8, bh7)) | 0;\n lo = (lo + Math.imul(al7, bl8)) | 0;\n mid = (mid + Math.imul(al7, bh8)) | 0;\n mid = (mid + Math.imul(ah7, bl8)) | 0;\n hi = (hi + Math.imul(ah7, bh8)) | 0;\n lo = (lo + Math.imul(al6, bl9)) | 0;\n mid = (mid + Math.imul(al6, bh9)) | 0;\n mid = (mid + Math.imul(ah6, bl9)) | 0;\n hi = (hi + Math.imul(ah6, bh9)) | 0;\n var w15 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w15 >>> 26)) | 0;\n w15 &= 0x3ffffff;\n /* k = 16 */\n lo = Math.imul(al9, bl7);\n mid = Math.imul(al9, bh7);\n mid = (mid + Math.imul(ah9, bl7)) | 0;\n hi = Math.imul(ah9, bh7);\n lo = (lo + Math.imul(al8, bl8)) | 0;\n mid = (mid + Math.imul(al8, bh8)) | 0;\n mid = (mid + Math.imul(ah8, bl8)) | 0;\n hi = (hi + Math.imul(ah8, bh8)) | 0;\n lo = (lo + Math.imul(al7, bl9)) | 0;\n mid = (mid + Math.imul(al7, bh9)) | 0;\n mid = (mid + Math.imul(ah7, bl9)) | 0;\n hi = (hi + Math.imul(ah7, bh9)) | 0;\n var w16 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w16 >>> 26)) | 0;\n w16 &= 0x3ffffff;\n /* k = 17 */\n lo = Math.imul(al9, bl8);\n mid = Math.imul(al9, bh8);\n mid = (mid + Math.imul(ah9, bl8)) | 0;\n hi = Math.imul(ah9, bh8);\n lo = (lo + Math.imul(al8, bl9)) | 0;\n mid = (mid + Math.imul(al8, bh9)) | 0;\n mid = (mid + Math.imul(ah8, bl9)) | 0;\n hi = (hi + Math.imul(ah8, bh9)) | 0;\n var w17 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w17 >>> 26)) | 0;\n w17 &= 0x3ffffff;\n /* k = 18 */\n lo = Math.imul(al9, bl9);\n mid = Math.imul(al9, bh9);\n mid = (mid + Math.imul(ah9, bl9)) | 0;\n hi = Math.imul(ah9, bh9);\n var w18 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w18 >>> 26)) | 0;\n w18 &= 0x3ffffff;\n o[0] = w0;\n o[1] = w1;\n o[2] = w2;\n o[3] = w3;\n o[4] = w4;\n o[5] = w5;\n o[6] = w6;\n o[7] = w7;\n o[8] = w8;\n o[9] = w9;\n o[10] = w10;\n o[11] = w11;\n o[12] = w12;\n o[13] = w13;\n o[14] = w14;\n o[15] = w15;\n o[16] = w16;\n o[17] = w17;\n o[18] = w18;\n if (c !== 0) {\n o[19] = c;\n out.length++;\n }\n return out;\n };\n\n // Polyfill comb\n if (!Math.imul) {\n comb10MulTo = smallMulTo;\n }\n\n function bigMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n out.length = self.length + num.length;\n\n var carry = 0;\n var hncarry = 0;\n for (var k = 0; k < out.length - 1; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = hncarry;\n hncarry = 0;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = k - j;\n var a = self.words[i] | 0;\n var b = num.words[j] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n ncarry = (ncarry + ((r / 0x4000000) | 0)) | 0;\n lo = (lo + rword) | 0;\n rword = lo & 0x3ffffff;\n ncarry = (ncarry + (lo >>> 26)) | 0;\n\n hncarry += ncarry >>> 26;\n ncarry &= 0x3ffffff;\n }\n out.words[k] = rword;\n carry = ncarry;\n ncarry = hncarry;\n }\n if (carry !== 0) {\n out.words[k] = carry;\n } else {\n out.length--;\n }\n\n return out._strip();\n }\n\n function jumboMulTo (self, num, out) {\n // Temporary disable, see https://github.com/indutny/bn.js/issues/211\n // var fftm = new FFTM();\n // return fftm.mulp(self, num, out);\n return bigMulTo(self, num, out);\n }\n\n BN.prototype.mulTo = function mulTo (num, out) {\n var res;\n var len = this.length + num.length;\n if (this.length === 10 && num.length === 10) {\n res = comb10MulTo(this, num, out);\n } else if (len < 63) {\n res = smallMulTo(this, num, out);\n } else if (len < 1024) {\n res = bigMulTo(this, num, out);\n } else {\n res = jumboMulTo(this, num, out);\n }\n\n return res;\n };\n\n // Cooley-Tukey algorithm for FFT\n // slightly revisited to rely on looping instead of recursion\n\n function FFTM (x, y) {\n this.x = x;\n this.y = y;\n }\n\n FFTM.prototype.makeRBT = function makeRBT (N) {\n var t = new Array(N);\n var l = BN.prototype._countBits(N) - 1;\n for (var i = 0; i < N; i++) {\n t[i] = this.revBin(i, l, N);\n }\n\n return t;\n };\n\n // Returns binary-reversed representation of `x`\n FFTM.prototype.revBin = function revBin (x, l, N) {\n if (x === 0 || x === N - 1) return x;\n\n var rb = 0;\n for (var i = 0; i < l; i++) {\n rb |= (x & 1) << (l - i - 1);\n x >>= 1;\n }\n\n return rb;\n };\n\n // Performs \"tweedling\" phase, therefore 'emulating'\n // behaviour of the recursive algorithm\n FFTM.prototype.permute = function permute (rbt, rws, iws, rtws, itws, N) {\n for (var i = 0; i < N; i++) {\n rtws[i] = rws[rbt[i]];\n itws[i] = iws[rbt[i]];\n }\n };\n\n FFTM.prototype.transform = function transform (rws, iws, rtws, itws, N, rbt) {\n this.permute(rbt, rws, iws, rtws, itws, N);\n\n for (var s = 1; s < N; s <<= 1) {\n var l = s << 1;\n\n var rtwdf = Math.cos(2 * Math.PI / l);\n var itwdf = Math.sin(2 * Math.PI / l);\n\n for (var p = 0; p < N; p += l) {\n var rtwdf_ = rtwdf;\n var itwdf_ = itwdf;\n\n for (var j = 0; j < s; j++) {\n var re = rtws[p + j];\n var ie = itws[p + j];\n\n var ro = rtws[p + j + s];\n var io = itws[p + j + s];\n\n var rx = rtwdf_ * ro - itwdf_ * io;\n\n io = rtwdf_ * io + itwdf_ * ro;\n ro = rx;\n\n rtws[p + j] = re + ro;\n itws[p + j] = ie + io;\n\n rtws[p + j + s] = re - ro;\n itws[p + j + s] = ie - io;\n\n /* jshint maxdepth : false */\n if (j !== l) {\n rx = rtwdf * rtwdf_ - itwdf * itwdf_;\n\n itwdf_ = rtwdf * itwdf_ + itwdf * rtwdf_;\n rtwdf_ = rx;\n }\n }\n }\n }\n };\n\n FFTM.prototype.guessLen13b = function guessLen13b (n, m) {\n var N = Math.max(m, n) | 1;\n var odd = N & 1;\n var i = 0;\n for (N = N / 2 | 0; N; N = N >>> 1) {\n i++;\n }\n\n return 1 << i + 1 + odd;\n };\n\n FFTM.prototype.conjugate = function conjugate (rws, iws, N) {\n if (N <= 1) return;\n\n for (var i = 0; i < N / 2; i++) {\n var t = rws[i];\n\n rws[i] = rws[N - i - 1];\n rws[N - i - 1] = t;\n\n t = iws[i];\n\n iws[i] = -iws[N - i - 1];\n iws[N - i - 1] = -t;\n }\n };\n\n FFTM.prototype.normalize13b = function normalize13b (ws, N) {\n var carry = 0;\n for (var i = 0; i < N / 2; i++) {\n var w = Math.round(ws[2 * i + 1] / N) * 0x2000 +\n Math.round(ws[2 * i] / N) +\n carry;\n\n ws[i] = w & 0x3ffffff;\n\n if (w < 0x4000000) {\n carry = 0;\n } else {\n carry = w / 0x4000000 | 0;\n }\n }\n\n return ws;\n };\n\n FFTM.prototype.convert13b = function convert13b (ws, len, rws, N) {\n var carry = 0;\n for (var i = 0; i < len; i++) {\n carry = carry + (ws[i] | 0);\n\n rws[2 * i] = carry & 0x1fff; carry = carry >>> 13;\n rws[2 * i + 1] = carry & 0x1fff; carry = carry >>> 13;\n }\n\n // Pad with zeroes\n for (i = 2 * len; i < N; ++i) {\n rws[i] = 0;\n }\n\n assert(carry === 0);\n assert((carry & ~0x1fff) === 0);\n };\n\n FFTM.prototype.stub = function stub (N) {\n var ph = new Array(N);\n for (var i = 0; i < N; i++) {\n ph[i] = 0;\n }\n\n return ph;\n };\n\n FFTM.prototype.mulp = function mulp (x, y, out) {\n var N = 2 * this.guessLen13b(x.length, y.length);\n\n var rbt = this.makeRBT(N);\n\n var _ = this.stub(N);\n\n var rws = new Array(N);\n var rwst = new Array(N);\n var iwst = new Array(N);\n\n var nrws = new Array(N);\n var nrwst = new Array(N);\n var niwst = new Array(N);\n\n var rmws = out.words;\n rmws.length = N;\n\n this.convert13b(x.words, x.length, rws, N);\n this.convert13b(y.words, y.length, nrws, N);\n\n this.transform(rws, _, rwst, iwst, N, rbt);\n this.transform(nrws, _, nrwst, niwst, N, rbt);\n\n for (var i = 0; i < N; i++) {\n var rx = rwst[i] * nrwst[i] - iwst[i] * niwst[i];\n iwst[i] = rwst[i] * niwst[i] + iwst[i] * nrwst[i];\n rwst[i] = rx;\n }\n\n this.conjugate(rwst, iwst, N);\n this.transform(rwst, iwst, rmws, _, N, rbt);\n this.conjugate(rmws, _, N);\n this.normalize13b(rmws, N);\n\n out.negative = x.negative ^ y.negative;\n out.length = x.length + y.length;\n return out._strip();\n };\n\n // Multiply `this` by `num`\n BN.prototype.mul = function mul (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return this.mulTo(num, out);\n };\n\n // Multiply employing FFT\n BN.prototype.mulf = function mulf (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return jumboMulTo(this, num, out);\n };\n\n // In-place Multiplication\n BN.prototype.imul = function imul (num) {\n return this.clone().mulTo(num, this);\n };\n\n BN.prototype.imuln = function imuln (num) {\n var isNegNum = num < 0;\n if (isNegNum) num = -num;\n\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n\n // Carry\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = (this.words[i] | 0) * num;\n var lo = (w & 0x3ffffff) + (carry & 0x3ffffff);\n carry >>= 26;\n carry += (w / 0x4000000) | 0;\n // NOTE: lo is 27bit maximum\n carry += lo >>> 26;\n this.words[i] = lo & 0x3ffffff;\n }\n\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n\n return isNegNum ? this.ineg() : this;\n };\n\n BN.prototype.muln = function muln (num) {\n return this.clone().imuln(num);\n };\n\n // `this` * `this`\n BN.prototype.sqr = function sqr () {\n return this.mul(this);\n };\n\n // `this` * `this` in-place\n BN.prototype.isqr = function isqr () {\n return this.imul(this.clone());\n };\n\n // Math.pow(`this`, `num`)\n BN.prototype.pow = function pow (num) {\n var w = toBitArray(num);\n if (w.length === 0) return new BN(1);\n\n // Skip leading zeroes\n var res = this;\n for (var i = 0; i < w.length; i++, res = res.sqr()) {\n if (w[i] !== 0) break;\n }\n\n if (++i < w.length) {\n for (var q = res.sqr(); i < w.length; i++, q = q.sqr()) {\n if (w[i] === 0) continue;\n\n res = res.mul(q);\n }\n }\n\n return res;\n };\n\n // Shift-left in-place\n BN.prototype.iushln = function iushln (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n var carryMask = (0x3ffffff >>> (26 - r)) << (26 - r);\n var i;\n\n if (r !== 0) {\n var carry = 0;\n\n for (i = 0; i < this.length; i++) {\n var newCarry = this.words[i] & carryMask;\n var c = ((this.words[i] | 0) - newCarry) << r;\n this.words[i] = c | carry;\n carry = newCarry >>> (26 - r);\n }\n\n if (carry) {\n this.words[i] = carry;\n this.length++;\n }\n }\n\n if (s !== 0) {\n for (i = this.length - 1; i >= 0; i--) {\n this.words[i + s] = this.words[i];\n }\n\n for (i = 0; i < s; i++) {\n this.words[i] = 0;\n }\n\n this.length += s;\n }\n\n return this._strip();\n };\n\n BN.prototype.ishln = function ishln (bits) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushln(bits);\n };\n\n // Shift-right in-place\n // NOTE: `hint` is a lowest bit before trailing zeroes\n // NOTE: if `extended` is present - it will be filled with destroyed bits\n BN.prototype.iushrn = function iushrn (bits, hint, extended) {\n assert(typeof bits === 'number' && bits >= 0);\n var h;\n if (hint) {\n h = (hint - (hint % 26)) / 26;\n } else {\n h = 0;\n }\n\n var r = bits % 26;\n var s = Math.min((bits - r) / 26, this.length);\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n var maskedWords = extended;\n\n h -= s;\n h = Math.max(0, h);\n\n // Extended mode, copy masked part\n if (maskedWords) {\n for (var i = 0; i < s; i++) {\n maskedWords.words[i] = this.words[i];\n }\n maskedWords.length = s;\n }\n\n if (s === 0) {\n // No-op, we should not move anything at all\n } else if (this.length > s) {\n this.length -= s;\n for (i = 0; i < this.length; i++) {\n this.words[i] = this.words[i + s];\n }\n } else {\n this.words[0] = 0;\n this.length = 1;\n }\n\n var carry = 0;\n for (i = this.length - 1; i >= 0 && (carry !== 0 || i >= h); i--) {\n var word = this.words[i] | 0;\n this.words[i] = (carry << (26 - r)) | (word >>> r);\n carry = word & mask;\n }\n\n // Push carried bits as a mask\n if (maskedWords && carry !== 0) {\n maskedWords.words[maskedWords.length++] = carry;\n }\n\n if (this.length === 0) {\n this.words[0] = 0;\n this.length = 1;\n }\n\n return this._strip();\n };\n\n BN.prototype.ishrn = function ishrn (bits, hint, extended) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushrn(bits, hint, extended);\n };\n\n // Shift-left\n BN.prototype.shln = function shln (bits) {\n return this.clone().ishln(bits);\n };\n\n BN.prototype.ushln = function ushln (bits) {\n return this.clone().iushln(bits);\n };\n\n // Shift-right\n BN.prototype.shrn = function shrn (bits) {\n return this.clone().ishrn(bits);\n };\n\n BN.prototype.ushrn = function ushrn (bits) {\n return this.clone().iushrn(bits);\n };\n\n // Test if n bit is set\n BN.prototype.testn = function testn (bit) {\n assert(typeof bit === 'number' && bit >= 0);\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) return false;\n\n // Check bit and return\n var w = this.words[s];\n\n return !!(w & q);\n };\n\n // Return only lowers bits of number (in-place)\n BN.prototype.imaskn = function imaskn (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n\n assert(this.negative === 0, 'imaskn works only with positive numbers');\n\n if (this.length <= s) {\n return this;\n }\n\n if (r !== 0) {\n s++;\n }\n this.length = Math.min(s, this.length);\n\n if (r !== 0) {\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n this.words[this.length - 1] &= mask;\n }\n\n return this._strip();\n };\n\n // Return only lowers bits of number\n BN.prototype.maskn = function maskn (bits) {\n return this.clone().imaskn(bits);\n };\n\n // Add plain number `num` to `this`\n BN.prototype.iaddn = function iaddn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.isubn(-num);\n\n // Possible sign change\n if (this.negative !== 0) {\n if (this.length === 1 && (this.words[0] | 0) <= num) {\n this.words[0] = num - (this.words[0] | 0);\n this.negative = 0;\n return this;\n }\n\n this.negative = 0;\n this.isubn(num);\n this.negative = 1;\n return this;\n }\n\n // Add without checks\n return this._iaddn(num);\n };\n\n BN.prototype._iaddn = function _iaddn (num) {\n this.words[0] += num;\n\n // Carry\n for (var i = 0; i < this.length && this.words[i] >= 0x4000000; i++) {\n this.words[i] -= 0x4000000;\n if (i === this.length - 1) {\n this.words[i + 1] = 1;\n } else {\n this.words[i + 1]++;\n }\n }\n this.length = Math.max(this.length, i + 1);\n\n return this;\n };\n\n // Subtract plain number `num` from `this`\n BN.prototype.isubn = function isubn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.iaddn(-num);\n\n if (this.negative !== 0) {\n this.negative = 0;\n this.iaddn(num);\n this.negative = 1;\n return this;\n }\n\n this.words[0] -= num;\n\n if (this.length === 1 && this.words[0] < 0) {\n this.words[0] = -this.words[0];\n this.negative = 1;\n } else {\n // Carry\n for (var i = 0; i < this.length && this.words[i] < 0; i++) {\n this.words[i] += 0x4000000;\n this.words[i + 1] -= 1;\n }\n }\n\n return this._strip();\n };\n\n BN.prototype.addn = function addn (num) {\n return this.clone().iaddn(num);\n };\n\n BN.prototype.subn = function subn (num) {\n return this.clone().isubn(num);\n };\n\n BN.prototype.iabs = function iabs () {\n this.negative = 0;\n\n return this;\n };\n\n BN.prototype.abs = function abs () {\n return this.clone().iabs();\n };\n\n BN.prototype._ishlnsubmul = function _ishlnsubmul (num, mul, shift) {\n var len = num.length + shift;\n var i;\n\n this._expand(len);\n\n var w;\n var carry = 0;\n for (i = 0; i < num.length; i++) {\n w = (this.words[i + shift] | 0) + carry;\n var right = (num.words[i] | 0) * mul;\n w -= right & 0x3ffffff;\n carry = (w >> 26) - ((right / 0x4000000) | 0);\n this.words[i + shift] = w & 0x3ffffff;\n }\n for (; i < this.length - shift; i++) {\n w = (this.words[i + shift] | 0) + carry;\n carry = w >> 26;\n this.words[i + shift] = w & 0x3ffffff;\n }\n\n if (carry === 0) return this._strip();\n\n // Subtraction overflow\n assert(carry === -1);\n carry = 0;\n for (i = 0; i < this.length; i++) {\n w = -(this.words[i] | 0) + carry;\n carry = w >> 26;\n this.words[i] = w & 0x3ffffff;\n }\n this.negative = 1;\n\n return this._strip();\n };\n\n BN.prototype._wordDiv = function _wordDiv (num, mode) {\n var shift = this.length - num.length;\n\n var a = this.clone();\n var b = num;\n\n // Normalize\n var bhi = b.words[b.length - 1] | 0;\n var bhiBits = this._countBits(bhi);\n shift = 26 - bhiBits;\n if (shift !== 0) {\n b = b.ushln(shift);\n a.iushln(shift);\n bhi = b.words[b.length - 1] | 0;\n }\n\n // Initialize quotient\n var m = a.length - b.length;\n var q;\n\n if (mode !== 'mod') {\n q = new BN(null);\n q.length = m + 1;\n q.words = new Array(q.length);\n for (var i = 0; i < q.length; i++) {\n q.words[i] = 0;\n }\n }\n\n var diff = a.clone()._ishlnsubmul(b, 1, m);\n if (diff.negative === 0) {\n a = diff;\n if (q) {\n q.words[m] = 1;\n }\n }\n\n for (var j = m - 1; j >= 0; j--) {\n var qj = (a.words[b.length + j] | 0) * 0x4000000 +\n (a.words[b.length + j - 1] | 0);\n\n // NOTE: (qj / bhi) is (0x3ffffff * 0x4000000 + 0x3ffffff) / 0x2000000 max\n // (0x7ffffff)\n qj = Math.min((qj / bhi) | 0, 0x3ffffff);\n\n a._ishlnsubmul(b, qj, j);\n while (a.negative !== 0) {\n qj--;\n a.negative = 0;\n a._ishlnsubmul(b, 1, j);\n if (!a.isZero()) {\n a.negative ^= 1;\n }\n }\n if (q) {\n q.words[j] = qj;\n }\n }\n if (q) {\n q._strip();\n }\n a._strip();\n\n // Denormalize\n if (mode !== 'div' && shift !== 0) {\n a.iushrn(shift);\n }\n\n return {\n div: q || null,\n mod: a\n };\n };\n\n // NOTE: 1) `mode` can be set to `mod` to request mod only,\n // to `div` to request div only, or be absent to\n // request both div & mod\n // 2) `positive` is true if unsigned mod is requested\n BN.prototype.divmod = function divmod (num, mode, positive) {\n assert(!num.isZero());\n\n if (this.isZero()) {\n return {\n div: new BN(0),\n mod: new BN(0)\n };\n }\n\n var div, mod, res;\n if (this.negative !== 0 && num.negative === 0) {\n res = this.neg().divmod(num, mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.iadd(num);\n }\n }\n\n return {\n div: div,\n mod: mod\n };\n }\n\n if (this.negative === 0 && num.negative !== 0) {\n res = this.divmod(num.neg(), mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n return {\n div: div,\n mod: res.mod\n };\n }\n\n if ((this.negative & num.negative) !== 0) {\n res = this.neg().divmod(num.neg(), mode);\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.isub(num);\n }\n }\n\n return {\n div: res.div,\n mod: mod\n };\n }\n\n // Both numbers are positive at this point\n\n // Strip both numbers to approximate shift value\n if (num.length > this.length || this.cmp(num) < 0) {\n return {\n div: new BN(0),\n mod: this\n };\n }\n\n // Very short reduction\n if (num.length === 1) {\n if (mode === 'div') {\n return {\n div: this.divn(num.words[0]),\n mod: null\n };\n }\n\n if (mode === 'mod') {\n return {\n div: null,\n mod: new BN(this.modrn(num.words[0]))\n };\n }\n\n return {\n div: this.divn(num.words[0]),\n mod: new BN(this.modrn(num.words[0]))\n };\n }\n\n return this._wordDiv(num, mode);\n };\n\n // Find `this` / `num`\n BN.prototype.div = function div (num) {\n return this.divmod(num, 'div', false).div;\n };\n\n // Find `this` % `num`\n BN.prototype.mod = function mod (num) {\n return this.divmod(num, 'mod', false).mod;\n };\n\n BN.prototype.umod = function umod (num) {\n return this.divmod(num, 'mod', true).mod;\n };\n\n // Find Round(`this` / `num`)\n BN.prototype.divRound = function divRound (num) {\n var dm = this.divmod(num);\n\n // Fast case - exact division\n if (dm.mod.isZero()) return dm.div;\n\n var mod = dm.div.negative !== 0 ? dm.mod.isub(num) : dm.mod;\n\n var half = num.ushrn(1);\n var r2 = num.andln(1);\n var cmp = mod.cmp(half);\n\n // Round down\n if (cmp < 0 || (r2 === 1 && cmp === 0)) return dm.div;\n\n // Round up\n return dm.div.negative !== 0 ? dm.div.isubn(1) : dm.div.iaddn(1);\n };\n\n BN.prototype.modrn = function modrn (num) {\n var isNegNum = num < 0;\n if (isNegNum) num = -num;\n\n assert(num <= 0x3ffffff);\n var p = (1 << 26) % num;\n\n var acc = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n acc = (p * acc + (this.words[i] | 0)) % num;\n }\n\n return isNegNum ? -acc : acc;\n };\n\n // WARNING: DEPRECATED\n BN.prototype.modn = function modn (num) {\n return this.modrn(num);\n };\n\n // In-place division by number\n BN.prototype.idivn = function idivn (num) {\n var isNegNum = num < 0;\n if (isNegNum) num = -num;\n\n assert(num <= 0x3ffffff);\n\n var carry = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var w = (this.words[i] | 0) + carry * 0x4000000;\n this.words[i] = (w / num) | 0;\n carry = w % num;\n }\n\n this._strip();\n return isNegNum ? this.ineg() : this;\n };\n\n BN.prototype.divn = function divn (num) {\n return this.clone().idivn(num);\n };\n\n BN.prototype.egcd = function egcd (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var x = this;\n var y = p.clone();\n\n if (x.negative !== 0) {\n x = x.umod(p);\n } else {\n x = x.clone();\n }\n\n // A * x + B * y = x\n var A = new BN(1);\n var B = new BN(0);\n\n // C * x + D * y = y\n var C = new BN(0);\n var D = new BN(1);\n\n var g = 0;\n\n while (x.isEven() && y.isEven()) {\n x.iushrn(1);\n y.iushrn(1);\n ++g;\n }\n\n var yp = y.clone();\n var xp = x.clone();\n\n while (!x.isZero()) {\n for (var i = 0, im = 1; (x.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n x.iushrn(i);\n while (i-- > 0) {\n if (A.isOdd() || B.isOdd()) {\n A.iadd(yp);\n B.isub(xp);\n }\n\n A.iushrn(1);\n B.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (y.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n y.iushrn(j);\n while (j-- > 0) {\n if (C.isOdd() || D.isOdd()) {\n C.iadd(yp);\n D.isub(xp);\n }\n\n C.iushrn(1);\n D.iushrn(1);\n }\n }\n\n if (x.cmp(y) >= 0) {\n x.isub(y);\n A.isub(C);\n B.isub(D);\n } else {\n y.isub(x);\n C.isub(A);\n D.isub(B);\n }\n }\n\n return {\n a: C,\n b: D,\n gcd: y.iushln(g)\n };\n };\n\n // This is reduced incarnation of the binary EEA\n // above, designated to invert members of the\n // _prime_ fields F(p) at a maximal speed\n BN.prototype._invmp = function _invmp (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var a = this;\n var b = p.clone();\n\n if (a.negative !== 0) {\n a = a.umod(p);\n } else {\n a = a.clone();\n }\n\n var x1 = new BN(1);\n var x2 = new BN(0);\n\n var delta = b.clone();\n\n while (a.cmpn(1) > 0 && b.cmpn(1) > 0) {\n for (var i = 0, im = 1; (a.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n a.iushrn(i);\n while (i-- > 0) {\n if (x1.isOdd()) {\n x1.iadd(delta);\n }\n\n x1.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (b.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n b.iushrn(j);\n while (j-- > 0) {\n if (x2.isOdd()) {\n x2.iadd(delta);\n }\n\n x2.iushrn(1);\n }\n }\n\n if (a.cmp(b) >= 0) {\n a.isub(b);\n x1.isub(x2);\n } else {\n b.isub(a);\n x2.isub(x1);\n }\n }\n\n var res;\n if (a.cmpn(1) === 0) {\n res = x1;\n } else {\n res = x2;\n }\n\n if (res.cmpn(0) < 0) {\n res.iadd(p);\n }\n\n return res;\n };\n\n BN.prototype.gcd = function gcd (num) {\n if (this.isZero()) return num.abs();\n if (num.isZero()) return this.abs();\n\n var a = this.clone();\n var b = num.clone();\n a.negative = 0;\n b.negative = 0;\n\n // Remove common factor of two\n for (var shift = 0; a.isEven() && b.isEven(); shift++) {\n a.iushrn(1);\n b.iushrn(1);\n }\n\n do {\n while (a.isEven()) {\n a.iushrn(1);\n }\n while (b.isEven()) {\n b.iushrn(1);\n }\n\n var r = a.cmp(b);\n if (r < 0) {\n // Swap `a` and `b` to make `a` always bigger than `b`\n var t = a;\n a = b;\n b = t;\n } else if (r === 0 || b.cmpn(1) === 0) {\n break;\n }\n\n a.isub(b);\n } while (true);\n\n return b.iushln(shift);\n };\n\n // Invert number in the field F(num)\n BN.prototype.invm = function invm (num) {\n return this.egcd(num).a.umod(num);\n };\n\n BN.prototype.isEven = function isEven () {\n return (this.words[0] & 1) === 0;\n };\n\n BN.prototype.isOdd = function isOdd () {\n return (this.words[0] & 1) === 1;\n };\n\n // And first word and num\n BN.prototype.andln = function andln (num) {\n return this.words[0] & num;\n };\n\n // Increment at the bit position in-line\n BN.prototype.bincn = function bincn (bit) {\n assert(typeof bit === 'number');\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) {\n this._expand(s + 1);\n this.words[s] |= q;\n return this;\n }\n\n // Add bit and propagate, if needed\n var carry = q;\n for (var i = s; carry !== 0 && i < this.length; i++) {\n var w = this.words[i] | 0;\n w += carry;\n carry = w >>> 26;\n w &= 0x3ffffff;\n this.words[i] = w;\n }\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n return this;\n };\n\n BN.prototype.isZero = function isZero () {\n return this.length === 1 && this.words[0] === 0;\n };\n\n BN.prototype.cmpn = function cmpn (num) {\n var negative = num < 0;\n\n if (this.negative !== 0 && !negative) return -1;\n if (this.negative === 0 && negative) return 1;\n\n this._strip();\n\n var res;\n if (this.length > 1) {\n res = 1;\n } else {\n if (negative) {\n num = -num;\n }\n\n assert(num <= 0x3ffffff, 'Number is too big');\n\n var w = this.words[0] | 0;\n res = w === num ? 0 : w < num ? -1 : 1;\n }\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Compare two numbers and return:\n // 1 - if `this` > `num`\n // 0 - if `this` == `num`\n // -1 - if `this` < `num`\n BN.prototype.cmp = function cmp (num) {\n if (this.negative !== 0 && num.negative === 0) return -1;\n if (this.negative === 0 && num.negative !== 0) return 1;\n\n var res = this.ucmp(num);\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Unsigned comparison\n BN.prototype.ucmp = function ucmp (num) {\n // At this point both numbers have the same sign\n if (this.length > num.length) return 1;\n if (this.length < num.length) return -1;\n\n var res = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var a = this.words[i] | 0;\n var b = num.words[i] | 0;\n\n if (a === b) continue;\n if (a < b) {\n res = -1;\n } else if (a > b) {\n res = 1;\n }\n break;\n }\n return res;\n };\n\n BN.prototype.gtn = function gtn (num) {\n return this.cmpn(num) === 1;\n };\n\n BN.prototype.gt = function gt (num) {\n return this.cmp(num) === 1;\n };\n\n BN.prototype.gten = function gten (num) {\n return this.cmpn(num) >= 0;\n };\n\n BN.prototype.gte = function gte (num) {\n return this.cmp(num) >= 0;\n };\n\n BN.prototype.ltn = function ltn (num) {\n return this.cmpn(num) === -1;\n };\n\n BN.prototype.lt = function lt (num) {\n return this.cmp(num) === -1;\n };\n\n BN.prototype.lten = function lten (num) {\n return this.cmpn(num) <= 0;\n };\n\n BN.prototype.lte = function lte (num) {\n return this.cmp(num) <= 0;\n };\n\n BN.prototype.eqn = function eqn (num) {\n return this.cmpn(num) === 0;\n };\n\n BN.prototype.eq = function eq (num) {\n return this.cmp(num) === 0;\n };\n\n //\n // A reduce context, could be using montgomery or something better, depending\n // on the `m` itself.\n //\n BN.red = function red (num) {\n return new Red(num);\n };\n\n BN.prototype.toRed = function toRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n assert(this.negative === 0, 'red works only with positives');\n return ctx.convertTo(this)._forceRed(ctx);\n };\n\n BN.prototype.fromRed = function fromRed () {\n assert(this.red, 'fromRed works only with numbers in reduction context');\n return this.red.convertFrom(this);\n };\n\n BN.prototype._forceRed = function _forceRed (ctx) {\n this.red = ctx;\n return this;\n };\n\n BN.prototype.forceRed = function forceRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n return this._forceRed(ctx);\n };\n\n BN.prototype.redAdd = function redAdd (num) {\n assert(this.red, 'redAdd works only with red numbers');\n return this.red.add(this, num);\n };\n\n BN.prototype.redIAdd = function redIAdd (num) {\n assert(this.red, 'redIAdd works only with red numbers');\n return this.red.iadd(this, num);\n };\n\n BN.prototype.redSub = function redSub (num) {\n assert(this.red, 'redSub works only with red numbers');\n return this.red.sub(this, num);\n };\n\n BN.prototype.redISub = function redISub (num) {\n assert(this.red, 'redISub works only with red numbers');\n return this.red.isub(this, num);\n };\n\n BN.prototype.redShl = function redShl (num) {\n assert(this.red, 'redShl works only with red numbers');\n return this.red.shl(this, num);\n };\n\n BN.prototype.redMul = function redMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.mul(this, num);\n };\n\n BN.prototype.redIMul = function redIMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.imul(this, num);\n };\n\n BN.prototype.redSqr = function redSqr () {\n assert(this.red, 'redSqr works only with red numbers');\n this.red._verify1(this);\n return this.red.sqr(this);\n };\n\n BN.prototype.redISqr = function redISqr () {\n assert(this.red, 'redISqr works only with red numbers');\n this.red._verify1(this);\n return this.red.isqr(this);\n };\n\n // Square root over p\n BN.prototype.redSqrt = function redSqrt () {\n assert(this.red, 'redSqrt works only with red numbers');\n this.red._verify1(this);\n return this.red.sqrt(this);\n };\n\n BN.prototype.redInvm = function redInvm () {\n assert(this.red, 'redInvm works only with red numbers');\n this.red._verify1(this);\n return this.red.invm(this);\n };\n\n // Return negative clone of `this` % `red modulo`\n BN.prototype.redNeg = function redNeg () {\n assert(this.red, 'redNeg works only with red numbers');\n this.red._verify1(this);\n return this.red.neg(this);\n };\n\n BN.prototype.redPow = function redPow (num) {\n assert(this.red && !num.red, 'redPow(normalNum)');\n this.red._verify1(this);\n return this.red.pow(this, num);\n };\n\n // Prime numbers with efficient reduction\n var primes = {\n k256: null,\n p224: null,\n p192: null,\n p25519: null\n };\n\n // Pseudo-Mersenne prime\n function MPrime (name, p) {\n // P = 2 ^ N - K\n this.name = name;\n this.p = new BN(p, 16);\n this.n = this.p.bitLength();\n this.k = new BN(1).iushln(this.n).isub(this.p);\n\n this.tmp = this._tmp();\n }\n\n MPrime.prototype._tmp = function _tmp () {\n var tmp = new BN(null);\n tmp.words = new Array(Math.ceil(this.n / 13));\n return tmp;\n };\n\n MPrime.prototype.ireduce = function ireduce (num) {\n // Assumes that `num` is less than `P^2`\n // num = HI * (2 ^ N - K) + HI * K + LO = HI * K + LO (mod P)\n var r = num;\n var rlen;\n\n do {\n this.split(r, this.tmp);\n r = this.imulK(r);\n r = r.iadd(this.tmp);\n rlen = r.bitLength();\n } while (rlen > this.n);\n\n var cmp = rlen < this.n ? -1 : r.ucmp(this.p);\n if (cmp === 0) {\n r.words[0] = 0;\n r.length = 1;\n } else if (cmp > 0) {\n r.isub(this.p);\n } else {\n if (r.strip !== undefined) {\n // r is a BN v4 instance\n r.strip();\n } else {\n // r is a BN v5 instance\n r._strip();\n }\n }\n\n return r;\n };\n\n MPrime.prototype.split = function split (input, out) {\n input.iushrn(this.n, 0, out);\n };\n\n MPrime.prototype.imulK = function imulK (num) {\n return num.imul(this.k);\n };\n\n function K256 () {\n MPrime.call(\n this,\n 'k256',\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f');\n }\n inherits(K256, MPrime);\n\n K256.prototype.split = function split (input, output) {\n // 256 = 9 * 26 + 22\n var mask = 0x3fffff;\n\n var outLen = Math.min(input.length, 9);\n for (var i = 0; i < outLen; i++) {\n output.words[i] = input.words[i];\n }\n output.length = outLen;\n\n if (input.length <= 9) {\n input.words[0] = 0;\n input.length = 1;\n return;\n }\n\n // Shift by 9 limbs\n var prev = input.words[9];\n output.words[output.length++] = prev & mask;\n\n for (i = 10; i < input.length; i++) {\n var next = input.words[i] | 0;\n input.words[i - 10] = ((next & mask) << 4) | (prev >>> 22);\n prev = next;\n }\n prev >>>= 22;\n input.words[i - 10] = prev;\n if (prev === 0 && input.length > 10) {\n input.length -= 10;\n } else {\n input.length -= 9;\n }\n };\n\n K256.prototype.imulK = function imulK (num) {\n // K = 0x1000003d1 = [ 0x40, 0x3d1 ]\n num.words[num.length] = 0;\n num.words[num.length + 1] = 0;\n num.length += 2;\n\n // bounded at: 0x40 * 0x3ffffff + 0x3d0 = 0x100000390\n var lo = 0;\n for (var i = 0; i < num.length; i++) {\n var w = num.words[i] | 0;\n lo += w * 0x3d1;\n num.words[i] = lo & 0x3ffffff;\n lo = w * 0x40 + ((lo / 0x4000000) | 0);\n }\n\n // Fast length reduction\n if (num.words[num.length - 1] === 0) {\n num.length--;\n if (num.words[num.length - 1] === 0) {\n num.length--;\n }\n }\n return num;\n };\n\n function P224 () {\n MPrime.call(\n this,\n 'p224',\n 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001');\n }\n inherits(P224, MPrime);\n\n function P192 () {\n MPrime.call(\n this,\n 'p192',\n 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff');\n }\n inherits(P192, MPrime);\n\n function P25519 () {\n // 2 ^ 255 - 19\n MPrime.call(\n this,\n '25519',\n '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed');\n }\n inherits(P25519, MPrime);\n\n P25519.prototype.imulK = function imulK (num) {\n // K = 0x13\n var carry = 0;\n for (var i = 0; i < num.length; i++) {\n var hi = (num.words[i] | 0) * 0x13 + carry;\n var lo = hi & 0x3ffffff;\n hi >>>= 26;\n\n num.words[i] = lo;\n carry = hi;\n }\n if (carry !== 0) {\n num.words[num.length++] = carry;\n }\n return num;\n };\n\n // Exported mostly for testing purposes, use plain name instead\n BN._prime = function prime (name) {\n // Cached version of prime\n if (primes[name]) return primes[name];\n\n var prime;\n if (name === 'k256') {\n prime = new K256();\n } else if (name === 'p224') {\n prime = new P224();\n } else if (name === 'p192') {\n prime = new P192();\n } else if (name === 'p25519') {\n prime = new P25519();\n } else {\n throw new Error('Unknown prime ' + name);\n }\n primes[name] = prime;\n\n return prime;\n };\n\n //\n // Base reduction engine\n //\n function Red (m) {\n if (typeof m === 'string') {\n var prime = BN._prime(m);\n this.m = prime.p;\n this.prime = prime;\n } else {\n assert(m.gtn(1), 'modulus must be greater than 1');\n this.m = m;\n this.prime = null;\n }\n }\n\n Red.prototype._verify1 = function _verify1 (a) {\n assert(a.negative === 0, 'red works only with positives');\n assert(a.red, 'red works only with red numbers');\n };\n\n Red.prototype._verify2 = function _verify2 (a, b) {\n assert((a.negative | b.negative) === 0, 'red works only with positives');\n assert(a.red && a.red === b.red,\n 'red works only with red numbers');\n };\n\n Red.prototype.imod = function imod (a) {\n if (this.prime) return this.prime.ireduce(a)._forceRed(this);\n\n move(a, a.umod(this.m)._forceRed(this));\n return a;\n };\n\n Red.prototype.neg = function neg (a) {\n if (a.isZero()) {\n return a.clone();\n }\n\n return this.m.sub(a)._forceRed(this);\n };\n\n Red.prototype.add = function add (a, b) {\n this._verify2(a, b);\n\n var res = a.add(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.iadd = function iadd (a, b) {\n this._verify2(a, b);\n\n var res = a.iadd(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res;\n };\n\n Red.prototype.sub = function sub (a, b) {\n this._verify2(a, b);\n\n var res = a.sub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.isub = function isub (a, b) {\n this._verify2(a, b);\n\n var res = a.isub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res;\n };\n\n Red.prototype.shl = function shl (a, num) {\n this._verify1(a);\n return this.imod(a.ushln(num));\n };\n\n Red.prototype.imul = function imul (a, b) {\n this._verify2(a, b);\n return this.imod(a.imul(b));\n };\n\n Red.prototype.mul = function mul (a, b) {\n this._verify2(a, b);\n return this.imod(a.mul(b));\n };\n\n Red.prototype.isqr = function isqr (a) {\n return this.imul(a, a.clone());\n };\n\n Red.prototype.sqr = function sqr (a) {\n return this.mul(a, a);\n };\n\n Red.prototype.sqrt = function sqrt (a) {\n if (a.isZero()) return a.clone();\n\n var mod3 = this.m.andln(3);\n assert(mod3 % 2 === 1);\n\n // Fast case\n if (mod3 === 3) {\n var pow = this.m.add(new BN(1)).iushrn(2);\n return this.pow(a, pow);\n }\n\n // Tonelli-Shanks algorithm (Totally unoptimized and slow)\n //\n // Find Q and S, that Q * 2 ^ S = (P - 1)\n var q = this.m.subn(1);\n var s = 0;\n while (!q.isZero() && q.andln(1) === 0) {\n s++;\n q.iushrn(1);\n }\n assert(!q.isZero());\n\n var one = new BN(1).toRed(this);\n var nOne = one.redNeg();\n\n // Find quadratic non-residue\n // NOTE: Max is such because of generalized Riemann hypothesis.\n var lpow = this.m.subn(1).iushrn(1);\n var z = this.m.bitLength();\n z = new BN(2 * z * z).toRed(this);\n\n while (this.pow(z, lpow).cmp(nOne) !== 0) {\n z.redIAdd(nOne);\n }\n\n var c = this.pow(z, q);\n var r = this.pow(a, q.addn(1).iushrn(1));\n var t = this.pow(a, q);\n var m = s;\n while (t.cmp(one) !== 0) {\n var tmp = t;\n for (var i = 0; tmp.cmp(one) !== 0; i++) {\n tmp = tmp.redSqr();\n }\n assert(i < m);\n var b = this.pow(c, new BN(1).iushln(m - i - 1));\n\n r = r.redMul(b);\n c = b.redSqr();\n t = t.redMul(c);\n m = i;\n }\n\n return r;\n };\n\n Red.prototype.invm = function invm (a) {\n var inv = a._invmp(this.m);\n if (inv.negative !== 0) {\n inv.negative = 0;\n return this.imod(inv).redNeg();\n } else {\n return this.imod(inv);\n }\n };\n\n Red.prototype.pow = function pow (a, num) {\n if (num.isZero()) return new BN(1).toRed(this);\n if (num.cmpn(1) === 0) return a.clone();\n\n var windowSize = 4;\n var wnd = new Array(1 << windowSize);\n wnd[0] = new BN(1).toRed(this);\n wnd[1] = a;\n for (var i = 2; i < wnd.length; i++) {\n wnd[i] = this.mul(wnd[i - 1], a);\n }\n\n var res = wnd[0];\n var current = 0;\n var currentLen = 0;\n var start = num.bitLength() % 26;\n if (start === 0) {\n start = 26;\n }\n\n for (i = num.length - 1; i >= 0; i--) {\n var word = num.words[i];\n for (var j = start - 1; j >= 0; j--) {\n var bit = (word >> j) & 1;\n if (res !== wnd[0]) {\n res = this.sqr(res);\n }\n\n if (bit === 0 && current === 0) {\n currentLen = 0;\n continue;\n }\n\n current <<= 1;\n current |= bit;\n currentLen++;\n if (currentLen !== windowSize && (i !== 0 || j !== 0)) continue;\n\n res = this.mul(res, wnd[current]);\n currentLen = 0;\n current = 0;\n }\n start = 26;\n }\n\n return res;\n };\n\n Red.prototype.convertTo = function convertTo (num) {\n var r = num.umod(this.m);\n\n return r === num ? r.clone() : r;\n };\n\n Red.prototype.convertFrom = function convertFrom (num) {\n var res = num.clone();\n res.red = null;\n return res;\n };\n\n //\n // Montgomery method engine\n //\n\n BN.mont = function mont (num) {\n return new Mont(num);\n };\n\n function Mont (m) {\n Red.call(this, m);\n\n this.shift = this.m.bitLength();\n if (this.shift % 26 !== 0) {\n this.shift += 26 - (this.shift % 26);\n }\n\n this.r = new BN(1).iushln(this.shift);\n this.r2 = this.imod(this.r.sqr());\n this.rinv = this.r._invmp(this.m);\n\n this.minv = this.rinv.mul(this.r).isubn(1).div(this.m);\n this.minv = this.minv.umod(this.r);\n this.minv = this.r.sub(this.minv);\n }\n inherits(Mont, Red);\n\n Mont.prototype.convertTo = function convertTo (num) {\n return this.imod(num.ushln(this.shift));\n };\n\n Mont.prototype.convertFrom = function convertFrom (num) {\n var r = this.imod(num.mul(this.rinv));\n r.red = null;\n return r;\n };\n\n Mont.prototype.imul = function imul (a, b) {\n if (a.isZero() || b.isZero()) {\n a.words[0] = 0;\n a.length = 1;\n return a;\n }\n\n var t = a.imul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.mul = function mul (a, b) {\n if (a.isZero() || b.isZero()) return new BN(0)._forceRed(this);\n\n var t = a.mul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.invm = function invm (a) {\n // (AR)^-1 * R^2 = (A^-1 * R^-1) * R^2 = A^-1 * R\n var res = this.imod(a._invmp(this.m).mul(this.r2));\n return res._forceRed(this);\n };\n})(typeof module === 'undefined' || module, this);\n","'use strict'\n// base-x encoding / decoding\n// Copyright (c) 2018 base-x contributors\n// Copyright (c) 2014-2018 The Bitcoin Core developers (base58.cpp)\n// Distributed under the MIT software license, see the accompanying\n// file LICENSE or http://www.opensource.org/licenses/mit-license.php.\n// @ts-ignore\nvar _Buffer = require('safe-buffer').Buffer\nfunction base (ALPHABET) {\n if (ALPHABET.length >= 255) { throw new TypeError('Alphabet too long') }\n var BASE_MAP = new Uint8Array(256)\n for (var j = 0; j < BASE_MAP.length; j++) {\n BASE_MAP[j] = 255\n }\n for (var i = 0; i < ALPHABET.length; i++) {\n var x = ALPHABET.charAt(i)\n var xc = x.charCodeAt(0)\n if (BASE_MAP[xc] !== 255) { throw new TypeError(x + ' is ambiguous') }\n BASE_MAP[xc] = i\n }\n var BASE = ALPHABET.length\n var LEADER = ALPHABET.charAt(0)\n var FACTOR = Math.log(BASE) / Math.log(256) // log(BASE) / log(256), rounded up\n var iFACTOR = Math.log(256) / Math.log(BASE) // log(256) / log(BASE), rounded up\n function encode (source) {\n if (Array.isArray(source) || source instanceof Uint8Array) { source = _Buffer.from(source) }\n if (!_Buffer.isBuffer(source)) { throw new TypeError('Expected Buffer') }\n if (source.length === 0) { return '' }\n // Skip & count leading zeroes.\n var zeroes = 0\n var length = 0\n var pbegin = 0\n var pend = source.length\n while (pbegin !== pend && source[pbegin] === 0) {\n pbegin++\n zeroes++\n }\n // Allocate enough space in big-endian base58 representation.\n var size = ((pend - pbegin) * iFACTOR + 1) >>> 0\n var b58 = new Uint8Array(size)\n // Process the bytes.\n while (pbegin !== pend) {\n var carry = source[pbegin]\n // Apply \"b58 = b58 * 256 + ch\".\n var i = 0\n for (var it1 = size - 1; (carry !== 0 || i < length) && (it1 !== -1); it1--, i++) {\n carry += (256 * b58[it1]) >>> 0\n b58[it1] = (carry % BASE) >>> 0\n carry = (carry / BASE) >>> 0\n }\n if (carry !== 0) { throw new Error('Non-zero carry') }\n length = i\n pbegin++\n }\n // Skip leading zeroes in base58 result.\n var it2 = size - length\n while (it2 !== size && b58[it2] === 0) {\n it2++\n }\n // Translate the result into a string.\n var str = LEADER.repeat(zeroes)\n for (; it2 < size; ++it2) { str += ALPHABET.charAt(b58[it2]) }\n return str\n }\n function decodeUnsafe (source) {\n if (typeof source !== 'string') { throw new TypeError('Expected String') }\n if (source.length === 0) { return _Buffer.alloc(0) }\n var psz = 0\n // Skip and count leading '1's.\n var zeroes = 0\n var length = 0\n while (source[psz] === LEADER) {\n zeroes++\n psz++\n }\n // Allocate enough space in big-endian base256 representation.\n var size = (((source.length - psz) * FACTOR) + 1) >>> 0 // log(58) / log(256), rounded up.\n var b256 = new Uint8Array(size)\n // Process the characters.\n while (source[psz]) {\n // Decode character\n var carry = BASE_MAP[source.charCodeAt(psz)]\n // Invalid character\n if (carry === 255) { return }\n var i = 0\n for (var it3 = size - 1; (carry !== 0 || i < length) && (it3 !== -1); it3--, i++) {\n carry += (BASE * b256[it3]) >>> 0\n b256[it3] = (carry % 256) >>> 0\n carry = (carry / 256) >>> 0\n }\n if (carry !== 0) { throw new Error('Non-zero carry') }\n length = i\n psz++\n }\n // Skip leading zeroes in b256.\n var it4 = size - length\n while (it4 !== size && b256[it4] === 0) {\n it4++\n }\n var vch = _Buffer.allocUnsafe(zeroes + (size - it4))\n vch.fill(0x00, 0, zeroes)\n var j = zeroes\n while (it4 !== size) {\n vch[j++] = b256[it4++]\n }\n return vch\n }\n function decode (string) {\n var buffer = decodeUnsafe(string)\n if (buffer) { return buffer }\n throw new Error('Non-base' + BASE + ' character')\n }\n return {\n encode: encode,\n decodeUnsafe: decodeUnsafe,\n decode: decode\n }\n}\nmodule.exports = base\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// browserify by default only pulls in files that are hard coded in requires\n// In order of last to first in this file, the default wordlist will be chosen\n// based on what is present. (Bundles may remove wordlists they don't need)\nconst wordlists = {};\nexports.wordlists = wordlists;\nlet _default;\nexports._default = _default;\ntry {\n exports._default = _default = require('./wordlists/czech.json');\n wordlists.czech = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/chinese_simplified.json');\n wordlists.chinese_simplified = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/chinese_traditional.json');\n wordlists.chinese_traditional = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/korean.json');\n wordlists.korean = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/french.json');\n wordlists.french = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/italian.json');\n wordlists.italian = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/spanish.json');\n wordlists.spanish = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/japanese.json');\n wordlists.japanese = _default;\n wordlists.JA = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/portuguese.json');\n wordlists.portuguese = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/english.json');\n wordlists.english = _default;\n wordlists.EN = _default;\n}\ncatch (err) { }\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst sha256_1 = require(\"@noble/hashes/sha256\");\nconst sha512_1 = require(\"@noble/hashes/sha512\");\nconst pbkdf2_1 = require(\"@noble/hashes/pbkdf2\");\nconst utils_1 = require(\"@noble/hashes/utils\");\nconst _wordlists_1 = require(\"./_wordlists\");\nlet DEFAULT_WORDLIST = _wordlists_1._default;\nconst INVALID_MNEMONIC = 'Invalid mnemonic';\nconst INVALID_ENTROPY = 'Invalid entropy';\nconst INVALID_CHECKSUM = 'Invalid mnemonic checksum';\nconst WORDLIST_REQUIRED = 'A wordlist is required but a default could not be found.\\n' +\n 'Please pass a 2048 word array explicitly.';\nfunction normalize(str) {\n return (str || '').normalize('NFKD');\n}\nfunction lpad(str, padString, length) {\n while (str.length < length) {\n str = padString + str;\n }\n return str;\n}\nfunction binaryToByte(bin) {\n return parseInt(bin, 2);\n}\nfunction bytesToBinary(bytes) {\n return bytes.map((x) => lpad(x.toString(2), '0', 8)).join('');\n}\nfunction deriveChecksumBits(entropyBuffer) {\n const ENT = entropyBuffer.length * 8;\n const CS = ENT / 32;\n const hash = sha256_1.sha256(Uint8Array.from(entropyBuffer));\n return bytesToBinary(Array.from(hash)).slice(0, CS);\n}\nfunction salt(password) {\n return 'mnemonic' + (password || '');\n}\nfunction mnemonicToSeedSync(mnemonic, password) {\n const mnemonicBuffer = Uint8Array.from(Buffer.from(normalize(mnemonic), 'utf8'));\n const saltBuffer = Uint8Array.from(Buffer.from(salt(normalize(password)), 'utf8'));\n const res = pbkdf2_1.pbkdf2(sha512_1.sha512, mnemonicBuffer, saltBuffer, {\n c: 2048,\n dkLen: 64,\n });\n return Buffer.from(res);\n}\nexports.mnemonicToSeedSync = mnemonicToSeedSync;\nfunction mnemonicToSeed(mnemonic, password) {\n const mnemonicBuffer = Uint8Array.from(Buffer.from(normalize(mnemonic), 'utf8'));\n const saltBuffer = Uint8Array.from(Buffer.from(salt(normalize(password)), 'utf8'));\n return pbkdf2_1.pbkdf2Async(sha512_1.sha512, mnemonicBuffer, saltBuffer, {\n c: 2048,\n dkLen: 64,\n }).then((res) => Buffer.from(res));\n}\nexports.mnemonicToSeed = mnemonicToSeed;\nfunction mnemonicToEntropy(mnemonic, wordlist) {\n wordlist = wordlist || DEFAULT_WORDLIST;\n if (!wordlist) {\n throw new Error(WORDLIST_REQUIRED);\n }\n const words = normalize(mnemonic).split(' ');\n if (words.length % 3 !== 0) {\n throw new Error(INVALID_MNEMONIC);\n }\n // convert word indices to 11 bit binary strings\n const bits = words\n .map((word) => {\n const index = wordlist.indexOf(word);\n if (index === -1) {\n throw new Error(INVALID_MNEMONIC);\n }\n return lpad(index.toString(2), '0', 11);\n })\n .join('');\n // split the binary string into ENT/CS\n const dividerIndex = Math.floor(bits.length / 33) * 32;\n const entropyBits = bits.slice(0, dividerIndex);\n const checksumBits = bits.slice(dividerIndex);\n // calculate the checksum and compare\n const entropyBytes = entropyBits.match(/(.{1,8})/g).map(binaryToByte);\n if (entropyBytes.length < 16) {\n throw new Error(INVALID_ENTROPY);\n }\n if (entropyBytes.length > 32) {\n throw new Error(INVALID_ENTROPY);\n }\n if (entropyBytes.length % 4 !== 0) {\n throw new Error(INVALID_ENTROPY);\n }\n const entropy = Buffer.from(entropyBytes);\n const newChecksum = deriveChecksumBits(entropy);\n if (newChecksum !== checksumBits) {\n throw new Error(INVALID_CHECKSUM);\n }\n return entropy.toString('hex');\n}\nexports.mnemonicToEntropy = mnemonicToEntropy;\nfunction entropyToMnemonic(entropy, wordlist) {\n if (!Buffer.isBuffer(entropy)) {\n entropy = Buffer.from(entropy, 'hex');\n }\n wordlist = wordlist || DEFAULT_WORDLIST;\n if (!wordlist) {\n throw new Error(WORDLIST_REQUIRED);\n }\n // 128 <= ENT <= 256\n if (entropy.length < 16) {\n throw new TypeError(INVALID_ENTROPY);\n }\n if (entropy.length > 32) {\n throw new TypeError(INVALID_ENTROPY);\n }\n if (entropy.length % 4 !== 0) {\n throw new TypeError(INVALID_ENTROPY);\n }\n const entropyBits = bytesToBinary(Array.from(entropy));\n const checksumBits = deriveChecksumBits(entropy);\n const bits = entropyBits + checksumBits;\n const chunks = bits.match(/(.{1,11})/g);\n const words = chunks.map((binary) => {\n const index = binaryToByte(binary);\n return wordlist[index];\n });\n return wordlist[0] === '\\u3042\\u3044\\u3053\\u304f\\u3057\\u3093' // Japanese wordlist\n ? words.join('\\u3000')\n : words.join(' ');\n}\nexports.entropyToMnemonic = entropyToMnemonic;\nfunction generateMnemonic(strength, rng, wordlist) {\n strength = strength || 128;\n if (strength % 32 !== 0) {\n throw new TypeError(INVALID_ENTROPY);\n }\n rng = rng || ((size) => Buffer.from(utils_1.randomBytes(size)));\n return entropyToMnemonic(rng(strength / 8), wordlist);\n}\nexports.generateMnemonic = generateMnemonic;\nfunction validateMnemonic(mnemonic, wordlist) {\n try {\n mnemonicToEntropy(mnemonic, wordlist);\n }\n catch (e) {\n return false;\n }\n return true;\n}\nexports.validateMnemonic = validateMnemonic;\nfunction setDefaultWordlist(language) {\n const result = _wordlists_1.wordlists[language];\n if (result) {\n DEFAULT_WORDLIST = result;\n }\n else {\n throw new Error('Could not find wordlist for language \"' + language + '\"');\n }\n}\nexports.setDefaultWordlist = setDefaultWordlist;\nfunction getDefaultWordlist() {\n if (!DEFAULT_WORDLIST) {\n throw new Error('No Default Wordlist set');\n }\n return Object.keys(_wordlists_1.wordlists).filter((lang) => {\n if (lang === 'JA' || lang === 'EN') {\n return false;\n }\n return _wordlists_1.wordlists[lang].every((word, index) => word === DEFAULT_WORDLIST[index]);\n })[0];\n}\nexports.getDefaultWordlist = getDefaultWordlist;\nvar _wordlists_2 = require(\"./_wordlists\");\nexports.wordlists = _wordlists_2.wordlists;\n","// Blake2B in pure Javascript\n// Adapted from the reference implementation in RFC7693\n// Ported to Javascript by DC - https://github.com/dcposch\n\nconst util = require('./util')\n\n// 64-bit unsigned addition\n// Sets v[a,a+1] += v[b,b+1]\n// v should be a Uint32Array\nfunction ADD64AA (v, a, b) {\n const o0 = v[a] + v[b]\n let o1 = v[a + 1] + v[b + 1]\n if (o0 >= 0x100000000) {\n o1++\n }\n v[a] = o0\n v[a + 1] = o1\n}\n\n// 64-bit unsigned addition\n// Sets v[a,a+1] += b\n// b0 is the low 32 bits of b, b1 represents the high 32 bits\nfunction ADD64AC (v, a, b0, b1) {\n let o0 = v[a] + b0\n if (b0 < 0) {\n o0 += 0x100000000\n }\n let o1 = v[a + 1] + b1\n if (o0 >= 0x100000000) {\n o1++\n }\n v[a] = o0\n v[a + 1] = o1\n}\n\n// Little-endian byte access\nfunction B2B_GET32 (arr, i) {\n return arr[i] ^ (arr[i + 1] << 8) ^ (arr[i + 2] << 16) ^ (arr[i + 3] << 24)\n}\n\n// G Mixing function\n// The ROTRs are inlined for speed\nfunction B2B_G (a, b, c, d, ix, iy) {\n const x0 = m[ix]\n const x1 = m[ix + 1]\n const y0 = m[iy]\n const y1 = m[iy + 1]\n\n ADD64AA(v, a, b) // v[a,a+1] += v[b,b+1] ... in JS we must store a uint64 as two uint32s\n ADD64AC(v, a, x0, x1) // v[a, a+1] += x ... x0 is the low 32 bits of x, x1 is the high 32 bits\n\n // v[d,d+1] = (v[d,d+1] xor v[a,a+1]) rotated to the right by 32 bits\n let xor0 = v[d] ^ v[a]\n let xor1 = v[d + 1] ^ v[a + 1]\n v[d] = xor1\n v[d + 1] = xor0\n\n ADD64AA(v, c, d)\n\n // v[b,b+1] = (v[b,b+1] xor v[c,c+1]) rotated right by 24 bits\n xor0 = v[b] ^ v[c]\n xor1 = v[b + 1] ^ v[c + 1]\n v[b] = (xor0 >>> 24) ^ (xor1 << 8)\n v[b + 1] = (xor1 >>> 24) ^ (xor0 << 8)\n\n ADD64AA(v, a, b)\n ADD64AC(v, a, y0, y1)\n\n // v[d,d+1] = (v[d,d+1] xor v[a,a+1]) rotated right by 16 bits\n xor0 = v[d] ^ v[a]\n xor1 = v[d + 1] ^ v[a + 1]\n v[d] = (xor0 >>> 16) ^ (xor1 << 16)\n v[d + 1] = (xor1 >>> 16) ^ (xor0 << 16)\n\n ADD64AA(v, c, d)\n\n // v[b,b+1] = (v[b,b+1] xor v[c,c+1]) rotated right by 63 bits\n xor0 = v[b] ^ v[c]\n xor1 = v[b + 1] ^ v[c + 1]\n v[b] = (xor1 >>> 31) ^ (xor0 << 1)\n v[b + 1] = (xor0 >>> 31) ^ (xor1 << 1)\n}\n\n// Initialization Vector\nconst BLAKE2B_IV32 = new Uint32Array([\n 0xf3bcc908, 0x6a09e667, 0x84caa73b, 0xbb67ae85, 0xfe94f82b, 0x3c6ef372,\n 0x5f1d36f1, 0xa54ff53a, 0xade682d1, 0x510e527f, 0x2b3e6c1f, 0x9b05688c,\n 0xfb41bd6b, 0x1f83d9ab, 0x137e2179, 0x5be0cd19\n])\n\nconst SIGMA8 = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 14, 10, 4, 8, 9, 15, 13,\n 6, 1, 12, 0, 2, 11, 7, 5, 3, 11, 8, 12, 0, 5, 2, 15, 13, 10, 14, 3, 6, 7, 1,\n 9, 4, 7, 9, 3, 1, 13, 12, 11, 14, 2, 6, 5, 10, 4, 0, 15, 8, 9, 0, 5, 7, 2, 4,\n 10, 15, 14, 1, 11, 12, 6, 8, 3, 13, 2, 12, 6, 10, 0, 11, 8, 3, 4, 13, 7, 5,\n 15, 14, 1, 9, 12, 5, 1, 15, 14, 13, 4, 10, 0, 7, 6, 3, 9, 2, 8, 11, 13, 11, 7,\n 14, 12, 1, 3, 9, 5, 0, 15, 4, 8, 6, 2, 10, 6, 15, 14, 9, 11, 3, 0, 8, 12, 2,\n 13, 7, 1, 4, 10, 5, 10, 2, 8, 4, 7, 6, 1, 5, 15, 11, 9, 14, 3, 12, 13, 0, 0,\n 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 14, 10, 4, 8, 9, 15, 13, 6,\n 1, 12, 0, 2, 11, 7, 5, 3\n]\n\n// These are offsets into a uint64 buffer.\n// Multiply them all by 2 to make them offsets into a uint32 buffer,\n// because this is Javascript and we don't have uint64s\nconst SIGMA82 = new Uint8Array(\n SIGMA8.map(function (x) {\n return x * 2\n })\n)\n\n// Compression function. 'last' flag indicates last block.\n// Note we're representing 16 uint64s as 32 uint32s\nconst v = new Uint32Array(32)\nconst m = new Uint32Array(32)\nfunction blake2bCompress (ctx, last) {\n let i = 0\n\n // init work variables\n for (i = 0; i < 16; i++) {\n v[i] = ctx.h[i]\n v[i + 16] = BLAKE2B_IV32[i]\n }\n\n // low 64 bits of offset\n v[24] = v[24] ^ ctx.t\n v[25] = v[25] ^ (ctx.t / 0x100000000)\n // high 64 bits not supported, offset may not be higher than 2**53-1\n\n // last block flag set ?\n if (last) {\n v[28] = ~v[28]\n v[29] = ~v[29]\n }\n\n // get little-endian words\n for (i = 0; i < 32; i++) {\n m[i] = B2B_GET32(ctx.b, 4 * i)\n }\n\n // twelve rounds of mixing\n // uncomment the DebugPrint calls to log the computation\n // and match the RFC sample documentation\n // util.debugPrint(' m[16]', m, 64)\n for (i = 0; i < 12; i++) {\n // util.debugPrint(' (i=' + (i < 10 ? ' ' : '') + i + ') v[16]', v, 64)\n B2B_G(0, 8, 16, 24, SIGMA82[i * 16 + 0], SIGMA82[i * 16 + 1])\n B2B_G(2, 10, 18, 26, SIGMA82[i * 16 + 2], SIGMA82[i * 16 + 3])\n B2B_G(4, 12, 20, 28, SIGMA82[i * 16 + 4], SIGMA82[i * 16 + 5])\n B2B_G(6, 14, 22, 30, SIGMA82[i * 16 + 6], SIGMA82[i * 16 + 7])\n B2B_G(0, 10, 20, 30, SIGMA82[i * 16 + 8], SIGMA82[i * 16 + 9])\n B2B_G(2, 12, 22, 24, SIGMA82[i * 16 + 10], SIGMA82[i * 16 + 11])\n B2B_G(4, 14, 16, 26, SIGMA82[i * 16 + 12], SIGMA82[i * 16 + 13])\n B2B_G(6, 8, 18, 28, SIGMA82[i * 16 + 14], SIGMA82[i * 16 + 15])\n }\n // util.debugPrint(' (i=12) v[16]', v, 64)\n\n for (i = 0; i < 16; i++) {\n ctx.h[i] = ctx.h[i] ^ v[i] ^ v[i + 16]\n }\n // util.debugPrint('h[8]', ctx.h, 64)\n}\n\n// reusable parameterBlock\nconst parameterBlock = new Uint8Array([\n 0,\n 0,\n 0,\n 0, // 0: outlen, keylen, fanout, depth\n 0,\n 0,\n 0,\n 0, // 4: leaf length, sequential mode\n 0,\n 0,\n 0,\n 0, // 8: node offset\n 0,\n 0,\n 0,\n 0, // 12: node offset\n 0,\n 0,\n 0,\n 0, // 16: node depth, inner length, rfu\n 0,\n 0,\n 0,\n 0, // 20: rfu\n 0,\n 0,\n 0,\n 0, // 24: rfu\n 0,\n 0,\n 0,\n 0, // 28: rfu\n 0,\n 0,\n 0,\n 0, // 32: salt\n 0,\n 0,\n 0,\n 0, // 36: salt\n 0,\n 0,\n 0,\n 0, // 40: salt\n 0,\n 0,\n 0,\n 0, // 44: salt\n 0,\n 0,\n 0,\n 0, // 48: personal\n 0,\n 0,\n 0,\n 0, // 52: personal\n 0,\n 0,\n 0,\n 0, // 56: personal\n 0,\n 0,\n 0,\n 0 // 60: personal\n])\n\n// Creates a BLAKE2b hashing context\n// Requires an output length between 1 and 64 bytes\n// Takes an optional Uint8Array key\n// Takes an optinal Uint8Array salt\n// Takes an optinal Uint8Array personal\nfunction blake2bInit (outlen, key, salt, personal) {\n if (outlen === 0 || outlen > 64) {\n throw new Error('Illegal output length, expected 0 < length <= 64')\n }\n if (key && key.length > 64) {\n throw new Error('Illegal key, expected Uint8Array with 0 < length <= 64')\n }\n if (salt && salt.length !== 16) {\n throw new Error('Illegal salt, expected Uint8Array with length is 16')\n }\n if (personal && personal.length !== 16) {\n throw new Error('Illegal personal, expected Uint8Array with length is 16')\n }\n\n // state, 'param block'\n const ctx = {\n b: new Uint8Array(128),\n h: new Uint32Array(16),\n t: 0, // input count\n c: 0, // pointer within buffer\n outlen: outlen // output length in bytes\n }\n\n // initialize parameterBlock before usage\n parameterBlock.fill(0)\n parameterBlock[0] = outlen\n if (key) parameterBlock[1] = key.length\n parameterBlock[2] = 1 // fanout\n parameterBlock[3] = 1 // depth\n if (salt) parameterBlock.set(salt, 32)\n if (personal) parameterBlock.set(personal, 48)\n\n // initialize hash state\n for (let i = 0; i < 16; i++) {\n ctx.h[i] = BLAKE2B_IV32[i] ^ B2B_GET32(parameterBlock, i * 4)\n }\n\n // key the hash, if applicable\n if (key) {\n blake2bUpdate(ctx, key)\n // at the end\n ctx.c = 128\n }\n\n return ctx\n}\n\n// Updates a BLAKE2b streaming hash\n// Requires hash context and Uint8Array (byte array)\nfunction blake2bUpdate (ctx, input) {\n for (let i = 0; i < input.length; i++) {\n if (ctx.c === 128) {\n // buffer full ?\n ctx.t += ctx.c // add counters\n blake2bCompress(ctx, false) // compress (not last)\n ctx.c = 0 // counter to zero\n }\n ctx.b[ctx.c++] = input[i]\n }\n}\n\n// Completes a BLAKE2b streaming hash\n// Returns a Uint8Array containing the message digest\nfunction blake2bFinal (ctx) {\n ctx.t += ctx.c // mark last block offset\n\n while (ctx.c < 128) {\n // fill up with zeros\n ctx.b[ctx.c++] = 0\n }\n blake2bCompress(ctx, true) // final block flag = 1\n\n // little endian convert and store\n const out = new Uint8Array(ctx.outlen)\n for (let i = 0; i < ctx.outlen; i++) {\n out[i] = ctx.h[i >> 2] >> (8 * (i & 3))\n }\n return out\n}\n\n// Computes the BLAKE2B hash of a string or byte array, and returns a Uint8Array\n//\n// Returns a n-byte Uint8Array\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer or Uint8Array\n// - key - optional key Uint8Array, up to 64 bytes\n// - outlen - optional output length in bytes, default 64\n// - salt - optional salt bytes, string, Buffer or Uint8Array\n// - personal - optional personal bytes, string, Buffer or Uint8Array\nfunction blake2b (input, key, outlen, salt, personal) {\n // preprocess inputs\n outlen = outlen || 64\n input = util.normalizeInput(input)\n if (salt) {\n salt = util.normalizeInput(salt)\n }\n if (personal) {\n personal = util.normalizeInput(personal)\n }\n\n // do the math\n const ctx = blake2bInit(outlen, key, salt, personal)\n blake2bUpdate(ctx, input)\n return blake2bFinal(ctx)\n}\n\n// Computes the BLAKE2B hash of a string or byte array\n//\n// Returns an n-byte hash in hex, all lowercase\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer, or Uint8Array\n// - key - optional key Uint8Array, up to 64 bytes\n// - outlen - optional output length in bytes, default 64\n// - salt - optional salt bytes, string, Buffer or Uint8Array\n// - personal - optional personal bytes, string, Buffer or Uint8Array\nfunction blake2bHex (input, key, outlen, salt, personal) {\n const output = blake2b(input, key, outlen, salt, personal)\n return util.toHex(output)\n}\n\nmodule.exports = {\n blake2b: blake2b,\n blake2bHex: blake2bHex,\n blake2bInit: blake2bInit,\n blake2bUpdate: blake2bUpdate,\n blake2bFinal: blake2bFinal\n}\n","// BLAKE2s hash function in pure Javascript\n// Adapted from the reference implementation in RFC7693\n// Ported to Javascript by DC - https://github.com/dcposch\n\nconst util = require('./util')\n\n// Little-endian byte access.\n// Expects a Uint8Array and an index\n// Returns the little-endian uint32 at v[i..i+3]\nfunction B2S_GET32 (v, i) {\n return v[i] ^ (v[i + 1] << 8) ^ (v[i + 2] << 16) ^ (v[i + 3] << 24)\n}\n\n// Mixing function G.\nfunction B2S_G (a, b, c, d, x, y) {\n v[a] = v[a] + v[b] + x\n v[d] = ROTR32(v[d] ^ v[a], 16)\n v[c] = v[c] + v[d]\n v[b] = ROTR32(v[b] ^ v[c], 12)\n v[a] = v[a] + v[b] + y\n v[d] = ROTR32(v[d] ^ v[a], 8)\n v[c] = v[c] + v[d]\n v[b] = ROTR32(v[b] ^ v[c], 7)\n}\n\n// 32-bit right rotation\n// x should be a uint32\n// y must be between 1 and 31, inclusive\nfunction ROTR32 (x, y) {\n return (x >>> y) ^ (x << (32 - y))\n}\n\n// Initialization Vector.\nconst BLAKE2S_IV = new Uint32Array([\n 0x6a09e667,\n 0xbb67ae85,\n 0x3c6ef372,\n 0xa54ff53a,\n 0x510e527f,\n 0x9b05688c,\n 0x1f83d9ab,\n 0x5be0cd19\n])\n\nconst SIGMA = new Uint8Array([\n 0,\n 1,\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n 12,\n 13,\n 14,\n 15,\n 14,\n 10,\n 4,\n 8,\n 9,\n 15,\n 13,\n 6,\n 1,\n 12,\n 0,\n 2,\n 11,\n 7,\n 5,\n 3,\n 11,\n 8,\n 12,\n 0,\n 5,\n 2,\n 15,\n 13,\n 10,\n 14,\n 3,\n 6,\n 7,\n 1,\n 9,\n 4,\n 7,\n 9,\n 3,\n 1,\n 13,\n 12,\n 11,\n 14,\n 2,\n 6,\n 5,\n 10,\n 4,\n 0,\n 15,\n 8,\n 9,\n 0,\n 5,\n 7,\n 2,\n 4,\n 10,\n 15,\n 14,\n 1,\n 11,\n 12,\n 6,\n 8,\n 3,\n 13,\n 2,\n 12,\n 6,\n 10,\n 0,\n 11,\n 8,\n 3,\n 4,\n 13,\n 7,\n 5,\n 15,\n 14,\n 1,\n 9,\n 12,\n 5,\n 1,\n 15,\n 14,\n 13,\n 4,\n 10,\n 0,\n 7,\n 6,\n 3,\n 9,\n 2,\n 8,\n 11,\n 13,\n 11,\n 7,\n 14,\n 12,\n 1,\n 3,\n 9,\n 5,\n 0,\n 15,\n 4,\n 8,\n 6,\n 2,\n 10,\n 6,\n 15,\n 14,\n 9,\n 11,\n 3,\n 0,\n 8,\n 12,\n 2,\n 13,\n 7,\n 1,\n 4,\n 10,\n 5,\n 10,\n 2,\n 8,\n 4,\n 7,\n 6,\n 1,\n 5,\n 15,\n 11,\n 9,\n 14,\n 3,\n 12,\n 13,\n 0\n])\n\n// Compression function. \"last\" flag indicates last block\nconst v = new Uint32Array(16)\nconst m = new Uint32Array(16)\nfunction blake2sCompress (ctx, last) {\n let i = 0\n for (i = 0; i < 8; i++) {\n // init work variables\n v[i] = ctx.h[i]\n v[i + 8] = BLAKE2S_IV[i]\n }\n\n v[12] ^= ctx.t // low 32 bits of offset\n v[13] ^= ctx.t / 0x100000000 // high 32 bits\n if (last) {\n // last block flag set ?\n v[14] = ~v[14]\n }\n\n for (i = 0; i < 16; i++) {\n // get little-endian words\n m[i] = B2S_GET32(ctx.b, 4 * i)\n }\n\n // ten rounds of mixing\n // uncomment the DebugPrint calls to log the computation\n // and match the RFC sample documentation\n // util.debugPrint(' m[16]', m, 32)\n for (i = 0; i < 10; i++) {\n // util.debugPrint(' (i=' + i + ') v[16]', v, 32)\n B2S_G(0, 4, 8, 12, m[SIGMA[i * 16 + 0]], m[SIGMA[i * 16 + 1]])\n B2S_G(1, 5, 9, 13, m[SIGMA[i * 16 + 2]], m[SIGMA[i * 16 + 3]])\n B2S_G(2, 6, 10, 14, m[SIGMA[i * 16 + 4]], m[SIGMA[i * 16 + 5]])\n B2S_G(3, 7, 11, 15, m[SIGMA[i * 16 + 6]], m[SIGMA[i * 16 + 7]])\n B2S_G(0, 5, 10, 15, m[SIGMA[i * 16 + 8]], m[SIGMA[i * 16 + 9]])\n B2S_G(1, 6, 11, 12, m[SIGMA[i * 16 + 10]], m[SIGMA[i * 16 + 11]])\n B2S_G(2, 7, 8, 13, m[SIGMA[i * 16 + 12]], m[SIGMA[i * 16 + 13]])\n B2S_G(3, 4, 9, 14, m[SIGMA[i * 16 + 14]], m[SIGMA[i * 16 + 15]])\n }\n // util.debugPrint(' (i=10) v[16]', v, 32)\n\n for (i = 0; i < 8; i++) {\n ctx.h[i] ^= v[i] ^ v[i + 8]\n }\n // util.debugPrint('h[8]', ctx.h, 32)\n}\n\n// Creates a BLAKE2s hashing context\n// Requires an output length between 1 and 32 bytes\n// Takes an optional Uint8Array key\nfunction blake2sInit (outlen, key) {\n if (!(outlen > 0 && outlen <= 32)) {\n throw new Error('Incorrect output length, should be in [1, 32]')\n }\n const keylen = key ? key.length : 0\n if (key && !(keylen > 0 && keylen <= 32)) {\n throw new Error('Incorrect key length, should be in [1, 32]')\n }\n\n const ctx = {\n h: new Uint32Array(BLAKE2S_IV), // hash state\n b: new Uint8Array(64), // input block\n c: 0, // pointer within block\n t: 0, // input count\n outlen: outlen // output length in bytes\n }\n ctx.h[0] ^= 0x01010000 ^ (keylen << 8) ^ outlen\n\n if (keylen > 0) {\n blake2sUpdate(ctx, key)\n ctx.c = 64 // at the end\n }\n\n return ctx\n}\n\n// Updates a BLAKE2s streaming hash\n// Requires hash context and Uint8Array (byte array)\nfunction blake2sUpdate (ctx, input) {\n for (let i = 0; i < input.length; i++) {\n if (ctx.c === 64) {\n // buffer full ?\n ctx.t += ctx.c // add counters\n blake2sCompress(ctx, false) // compress (not last)\n ctx.c = 0 // counter to zero\n }\n ctx.b[ctx.c++] = input[i]\n }\n}\n\n// Completes a BLAKE2s streaming hash\n// Returns a Uint8Array containing the message digest\nfunction blake2sFinal (ctx) {\n ctx.t += ctx.c // mark last block offset\n while (ctx.c < 64) {\n // fill up with zeros\n ctx.b[ctx.c++] = 0\n }\n blake2sCompress(ctx, true) // final block flag = 1\n\n // little endian convert and store\n const out = new Uint8Array(ctx.outlen)\n for (let i = 0; i < ctx.outlen; i++) {\n out[i] = (ctx.h[i >> 2] >> (8 * (i & 3))) & 0xff\n }\n return out\n}\n\n// Computes the BLAKE2S hash of a string or byte array, and returns a Uint8Array\n//\n// Returns a n-byte Uint8Array\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer, or Uint8Array\n// - key - optional key Uint8Array, up to 32 bytes\n// - outlen - optional output length in bytes, default 64\nfunction blake2s (input, key, outlen) {\n // preprocess inputs\n outlen = outlen || 32\n input = util.normalizeInput(input)\n\n // do the math\n const ctx = blake2sInit(outlen, key)\n blake2sUpdate(ctx, input)\n return blake2sFinal(ctx)\n}\n\n// Computes the BLAKE2S hash of a string or byte array\n//\n// Returns an n-byte hash in hex, all lowercase\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer, or Uint8Array\n// - key - optional key Uint8Array, up to 32 bytes\n// - outlen - optional output length in bytes, default 64\nfunction blake2sHex (input, key, outlen) {\n const output = blake2s(input, key, outlen)\n return util.toHex(output)\n}\n\nmodule.exports = {\n blake2s: blake2s,\n blake2sHex: blake2sHex,\n blake2sInit: blake2sInit,\n blake2sUpdate: blake2sUpdate,\n blake2sFinal: blake2sFinal\n}\n","const b2b = require('./blake2b')\nconst b2s = require('./blake2s')\n\nmodule.exports = {\n blake2b: b2b.blake2b,\n blake2bHex: b2b.blake2bHex,\n blake2bInit: b2b.blake2bInit,\n blake2bUpdate: b2b.blake2bUpdate,\n blake2bFinal: b2b.blake2bFinal,\n blake2s: b2s.blake2s,\n blake2sHex: b2s.blake2sHex,\n blake2sInit: b2s.blake2sInit,\n blake2sUpdate: b2s.blake2sUpdate,\n blake2sFinal: b2s.blake2sFinal\n}\n","const ERROR_MSG_INPUT = 'Input must be an string, Buffer or Uint8Array'\n\n// For convenience, let people hash a string, not just a Uint8Array\nfunction normalizeInput (input) {\n let ret\n if (input instanceof Uint8Array) {\n ret = input\n } else if (typeof input === 'string') {\n const encoder = new TextEncoder()\n ret = encoder.encode(input)\n } else {\n throw new Error(ERROR_MSG_INPUT)\n }\n return ret\n}\n\n// Converts a Uint8Array to a hexadecimal string\n// For example, toHex([255, 0, 255]) returns \"ff00ff\"\nfunction toHex (bytes) {\n return Array.prototype.map\n .call(bytes, function (n) {\n return (n < 16 ? '0' : '') + n.toString(16)\n })\n .join('')\n}\n\n// Converts any value in [0...2^32-1] to an 8-character hex string\nfunction uint32ToHex (val) {\n return (0x100000000 + val).toString(16).substring(1)\n}\n\n// For debugging: prints out hash state in the same format as the RFC\n// sample computation exactly, so that you can diff\nfunction debugPrint (label, arr, size) {\n let msg = '\\n' + label + ' = '\n for (let i = 0; i < arr.length; i += 2) {\n if (size === 32) {\n msg += uint32ToHex(arr[i]).toUpperCase()\n msg += ' '\n msg += uint32ToHex(arr[i + 1]).toUpperCase()\n } else if (size === 64) {\n msg += uint32ToHex(arr[i + 1]).toUpperCase()\n msg += uint32ToHex(arr[i]).toUpperCase()\n } else throw new Error('Invalid size ' + size)\n if (i % 6 === 4) {\n msg += '\\n' + new Array(label.length + 4).join(' ')\n } else if (i < arr.length - 2) {\n msg += ' '\n }\n }\n console.log(msg)\n}\n\n// For performance testing: generates N bytes of input, hashes M times\n// Measures and prints MB/second hash performance each time\nfunction testSpeed (hashFn, N, M) {\n let startMs = new Date().getTime()\n\n const input = new Uint8Array(N)\n for (let i = 0; i < N; i++) {\n input[i] = i % 256\n }\n const genMs = new Date().getTime()\n console.log('Generated random input in ' + (genMs - startMs) + 'ms')\n startMs = genMs\n\n for (let i = 0; i < M; i++) {\n const hashHex = hashFn(input)\n const hashMs = new Date().getTime()\n const ms = hashMs - startMs\n startMs = hashMs\n console.log('Hashed in ' + ms + 'ms: ' + hashHex.substring(0, 20) + '...')\n console.log(\n Math.round((N / (1 << 20) / (ms / 1000)) * 100) / 100 + ' MB PER SECOND'\n )\n }\n}\n\nmodule.exports = {\n normalizeInput: normalizeInput,\n toHex: toHex,\n debugPrint: debugPrint,\n testSpeed: testSpeed\n}\n","(function (module, exports) {\n 'use strict';\n\n // Utils\n function assert (val, msg) {\n if (!val) throw new Error(msg || 'Assertion failed');\n }\n\n // Could use `inherits` module, but don't want to move from single file\n // architecture yet.\n function inherits (ctor, superCtor) {\n ctor.super_ = superCtor;\n var TempCtor = function () {};\n TempCtor.prototype = superCtor.prototype;\n ctor.prototype = new TempCtor();\n ctor.prototype.constructor = ctor;\n }\n\n // BN\n\n function BN (number, base, endian) {\n if (BN.isBN(number)) {\n return number;\n }\n\n this.negative = 0;\n this.words = null;\n this.length = 0;\n\n // Reduction context\n this.red = null;\n\n if (number !== null) {\n if (base === 'le' || base === 'be') {\n endian = base;\n base = 10;\n }\n\n this._init(number || 0, base || 10, endian || 'be');\n }\n }\n if (typeof module === 'object') {\n module.exports = BN;\n } else {\n exports.BN = BN;\n }\n\n BN.BN = BN;\n BN.wordSize = 26;\n\n var Buffer;\n try {\n if (typeof window !== 'undefined' && typeof window.Buffer !== 'undefined') {\n Buffer = window.Buffer;\n } else {\n Buffer = require('buffer').Buffer;\n }\n } catch (e) {\n }\n\n BN.isBN = function isBN (num) {\n if (num instanceof BN) {\n return true;\n }\n\n return num !== null && typeof num === 'object' &&\n num.constructor.wordSize === BN.wordSize && Array.isArray(num.words);\n };\n\n BN.max = function max (left, right) {\n if (left.cmp(right) > 0) return left;\n return right;\n };\n\n BN.min = function min (left, right) {\n if (left.cmp(right) < 0) return left;\n return right;\n };\n\n BN.prototype._init = function init (number, base, endian) {\n if (typeof number === 'number') {\n return this._initNumber(number, base, endian);\n }\n\n if (typeof number === 'object') {\n return this._initArray(number, base, endian);\n }\n\n if (base === 'hex') {\n base = 16;\n }\n assert(base === (base | 0) && base >= 2 && base <= 36);\n\n number = number.toString().replace(/\\s+/g, '');\n var start = 0;\n if (number[0] === '-') {\n start++;\n this.negative = 1;\n }\n\n if (start < number.length) {\n if (base === 16) {\n this._parseHex(number, start, endian);\n } else {\n this._parseBase(number, base, start);\n if (endian === 'le') {\n this._initArray(this.toArray(), base, endian);\n }\n }\n }\n };\n\n BN.prototype._initNumber = function _initNumber (number, base, endian) {\n if (number < 0) {\n this.negative = 1;\n number = -number;\n }\n if (number < 0x4000000) {\n this.words = [ number & 0x3ffffff ];\n this.length = 1;\n } else if (number < 0x10000000000000) {\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff\n ];\n this.length = 2;\n } else {\n assert(number < 0x20000000000000); // 2 ^ 53 (unsafe)\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff,\n 1\n ];\n this.length = 3;\n }\n\n if (endian !== 'le') return;\n\n // Reverse the bytes\n this._initArray(this.toArray(), base, endian);\n };\n\n BN.prototype._initArray = function _initArray (number, base, endian) {\n // Perhaps a Uint8Array\n assert(typeof number.length === 'number');\n if (number.length <= 0) {\n this.words = [ 0 ];\n this.length = 1;\n return this;\n }\n\n this.length = Math.ceil(number.length / 3);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n var j, w;\n var off = 0;\n if (endian === 'be') {\n for (i = number.length - 1, j = 0; i >= 0; i -= 3) {\n w = number[i] | (number[i - 1] << 8) | (number[i - 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n } else if (endian === 'le') {\n for (i = 0, j = 0; i < number.length; i += 3) {\n w = number[i] | (number[i + 1] << 8) | (number[i + 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n }\n return this.strip();\n };\n\n function parseHex4Bits (string, index) {\n var c = string.charCodeAt(index);\n // 'A' - 'F'\n if (c >= 65 && c <= 70) {\n return c - 55;\n // 'a' - 'f'\n } else if (c >= 97 && c <= 102) {\n return c - 87;\n // '0' - '9'\n } else {\n return (c - 48) & 0xf;\n }\n }\n\n function parseHexByte (string, lowerBound, index) {\n var r = parseHex4Bits(string, index);\n if (index - 1 >= lowerBound) {\n r |= parseHex4Bits(string, index - 1) << 4;\n }\n return r;\n }\n\n BN.prototype._parseHex = function _parseHex (number, start, endian) {\n // Create possibly bigger array to ensure that it fits the number\n this.length = Math.ceil((number.length - start) / 6);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n // 24-bits chunks\n var off = 0;\n var j = 0;\n\n var w;\n if (endian === 'be') {\n for (i = number.length - 1; i >= start; i -= 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n } else {\n var parseLength = number.length - start;\n for (i = parseLength % 2 === 0 ? start + 1 : start; i < number.length; i += 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n }\n\n this.strip();\n };\n\n function parseBase (str, start, end, mul) {\n var r = 0;\n var len = Math.min(str.length, end);\n for (var i = start; i < len; i++) {\n var c = str.charCodeAt(i) - 48;\n\n r *= mul;\n\n // 'a'\n if (c >= 49) {\n r += c - 49 + 0xa;\n\n // 'A'\n } else if (c >= 17) {\n r += c - 17 + 0xa;\n\n // '0' - '9'\n } else {\n r += c;\n }\n }\n return r;\n }\n\n BN.prototype._parseBase = function _parseBase (number, base, start) {\n // Initialize as zero\n this.words = [ 0 ];\n this.length = 1;\n\n // Find length of limb in base\n for (var limbLen = 0, limbPow = 1; limbPow <= 0x3ffffff; limbPow *= base) {\n limbLen++;\n }\n limbLen--;\n limbPow = (limbPow / base) | 0;\n\n var total = number.length - start;\n var mod = total % limbLen;\n var end = Math.min(total, total - mod) + start;\n\n var word = 0;\n for (var i = start; i < end; i += limbLen) {\n word = parseBase(number, i, i + limbLen, base);\n\n this.imuln(limbPow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n if (mod !== 0) {\n var pow = 1;\n word = parseBase(number, i, number.length, base);\n\n for (i = 0; i < mod; i++) {\n pow *= base;\n }\n\n this.imuln(pow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n this.strip();\n };\n\n BN.prototype.copy = function copy (dest) {\n dest.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n dest.words[i] = this.words[i];\n }\n dest.length = this.length;\n dest.negative = this.negative;\n dest.red = this.red;\n };\n\n BN.prototype.clone = function clone () {\n var r = new BN(null);\n this.copy(r);\n return r;\n };\n\n BN.prototype._expand = function _expand (size) {\n while (this.length < size) {\n this.words[this.length++] = 0;\n }\n return this;\n };\n\n // Remove leading `0` from `this`\n BN.prototype.strip = function strip () {\n while (this.length > 1 && this.words[this.length - 1] === 0) {\n this.length--;\n }\n return this._normSign();\n };\n\n BN.prototype._normSign = function _normSign () {\n // -0 = 0\n if (this.length === 1 && this.words[0] === 0) {\n this.negative = 0;\n }\n return this;\n };\n\n BN.prototype.inspect = function inspect () {\n return (this.red ? '';\n };\n\n /*\n\n var zeros = [];\n var groupSizes = [];\n var groupBases = [];\n\n var s = '';\n var i = -1;\n while (++i < BN.wordSize) {\n zeros[i] = s;\n s += '0';\n }\n groupSizes[0] = 0;\n groupSizes[1] = 0;\n groupBases[0] = 0;\n groupBases[1] = 0;\n var base = 2 - 1;\n while (++base < 36 + 1) {\n var groupSize = 0;\n var groupBase = 1;\n while (groupBase < (1 << BN.wordSize) / base) {\n groupBase *= base;\n groupSize += 1;\n }\n groupSizes[base] = groupSize;\n groupBases[base] = groupBase;\n }\n\n */\n\n var zeros = [\n '',\n '0',\n '00',\n '000',\n '0000',\n '00000',\n '000000',\n '0000000',\n '00000000',\n '000000000',\n '0000000000',\n '00000000000',\n '000000000000',\n '0000000000000',\n '00000000000000',\n '000000000000000',\n '0000000000000000',\n '00000000000000000',\n '000000000000000000',\n '0000000000000000000',\n '00000000000000000000',\n '000000000000000000000',\n '0000000000000000000000',\n '00000000000000000000000',\n '000000000000000000000000',\n '0000000000000000000000000'\n ];\n\n var groupSizes = [\n 0, 0,\n 25, 16, 12, 11, 10, 9, 8,\n 8, 7, 7, 7, 7, 6, 6,\n 6, 6, 6, 6, 6, 5, 5,\n 5, 5, 5, 5, 5, 5, 5,\n 5, 5, 5, 5, 5, 5, 5\n ];\n\n var groupBases = [\n 0, 0,\n 33554432, 43046721, 16777216, 48828125, 60466176, 40353607, 16777216,\n 43046721, 10000000, 19487171, 35831808, 62748517, 7529536, 11390625,\n 16777216, 24137569, 34012224, 47045881, 64000000, 4084101, 5153632,\n 6436343, 7962624, 9765625, 11881376, 14348907, 17210368, 20511149,\n 24300000, 28629151, 33554432, 39135393, 45435424, 52521875, 60466176\n ];\n\n BN.prototype.toString = function toString (base, padding) {\n base = base || 10;\n padding = padding | 0 || 1;\n\n var out;\n if (base === 16 || base === 'hex') {\n out = '';\n var off = 0;\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = this.words[i];\n var word = (((w << off) | carry) & 0xffffff).toString(16);\n carry = (w >>> (24 - off)) & 0xffffff;\n if (carry !== 0 || i !== this.length - 1) {\n out = zeros[6 - word.length] + word + out;\n } else {\n out = word + out;\n }\n off += 2;\n if (off >= 26) {\n off -= 26;\n i--;\n }\n }\n if (carry !== 0) {\n out = carry.toString(16) + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n if (base === (base | 0) && base >= 2 && base <= 36) {\n // var groupSize = Math.floor(BN.wordSize * Math.LN2 / Math.log(base));\n var groupSize = groupSizes[base];\n // var groupBase = Math.pow(base, groupSize);\n var groupBase = groupBases[base];\n out = '';\n var c = this.clone();\n c.negative = 0;\n while (!c.isZero()) {\n var r = c.modn(groupBase).toString(base);\n c = c.idivn(groupBase);\n\n if (!c.isZero()) {\n out = zeros[groupSize - r.length] + r + out;\n } else {\n out = r + out;\n }\n }\n if (this.isZero()) {\n out = '0' + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n assert(false, 'Base should be between 2 and 36');\n };\n\n BN.prototype.toNumber = function toNumber () {\n var ret = this.words[0];\n if (this.length === 2) {\n ret += this.words[1] * 0x4000000;\n } else if (this.length === 3 && this.words[2] === 0x01) {\n // NOTE: at this stage it is known that the top bit is set\n ret += 0x10000000000000 + (this.words[1] * 0x4000000);\n } else if (this.length > 2) {\n assert(false, 'Number can only safely store up to 53 bits');\n }\n return (this.negative !== 0) ? -ret : ret;\n };\n\n BN.prototype.toJSON = function toJSON () {\n return this.toString(16);\n };\n\n BN.prototype.toBuffer = function toBuffer (endian, length) {\n assert(typeof Buffer !== 'undefined');\n return this.toArrayLike(Buffer, endian, length);\n };\n\n BN.prototype.toArray = function toArray (endian, length) {\n return this.toArrayLike(Array, endian, length);\n };\n\n BN.prototype.toArrayLike = function toArrayLike (ArrayType, endian, length) {\n var byteLength = this.byteLength();\n var reqLength = length || Math.max(1, byteLength);\n assert(byteLength <= reqLength, 'byte array longer than desired length');\n assert(reqLength > 0, 'Requested array length <= 0');\n\n this.strip();\n var littleEndian = endian === 'le';\n var res = new ArrayType(reqLength);\n\n var b, i;\n var q = this.clone();\n if (!littleEndian) {\n // Assume big-endian\n for (i = 0; i < reqLength - byteLength; i++) {\n res[i] = 0;\n }\n\n for (i = 0; !q.isZero(); i++) {\n b = q.andln(0xff);\n q.iushrn(8);\n\n res[reqLength - i - 1] = b;\n }\n } else {\n for (i = 0; !q.isZero(); i++) {\n b = q.andln(0xff);\n q.iushrn(8);\n\n res[i] = b;\n }\n\n for (; i < reqLength; i++) {\n res[i] = 0;\n }\n }\n\n return res;\n };\n\n if (Math.clz32) {\n BN.prototype._countBits = function _countBits (w) {\n return 32 - Math.clz32(w);\n };\n } else {\n BN.prototype._countBits = function _countBits (w) {\n var t = w;\n var r = 0;\n if (t >= 0x1000) {\n r += 13;\n t >>>= 13;\n }\n if (t >= 0x40) {\n r += 7;\n t >>>= 7;\n }\n if (t >= 0x8) {\n r += 4;\n t >>>= 4;\n }\n if (t >= 0x02) {\n r += 2;\n t >>>= 2;\n }\n return r + t;\n };\n }\n\n BN.prototype._zeroBits = function _zeroBits (w) {\n // Short-cut\n if (w === 0) return 26;\n\n var t = w;\n var r = 0;\n if ((t & 0x1fff) === 0) {\n r += 13;\n t >>>= 13;\n }\n if ((t & 0x7f) === 0) {\n r += 7;\n t >>>= 7;\n }\n if ((t & 0xf) === 0) {\n r += 4;\n t >>>= 4;\n }\n if ((t & 0x3) === 0) {\n r += 2;\n t >>>= 2;\n }\n if ((t & 0x1) === 0) {\n r++;\n }\n return r;\n };\n\n // Return number of used bits in a BN\n BN.prototype.bitLength = function bitLength () {\n var w = this.words[this.length - 1];\n var hi = this._countBits(w);\n return (this.length - 1) * 26 + hi;\n };\n\n function toBitArray (num) {\n var w = new Array(num.bitLength());\n\n for (var bit = 0; bit < w.length; bit++) {\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n w[bit] = (num.words[off] & (1 << wbit)) >>> wbit;\n }\n\n return w;\n }\n\n // Number of trailing zero bits\n BN.prototype.zeroBits = function zeroBits () {\n if (this.isZero()) return 0;\n\n var r = 0;\n for (var i = 0; i < this.length; i++) {\n var b = this._zeroBits(this.words[i]);\n r += b;\n if (b !== 26) break;\n }\n return r;\n };\n\n BN.prototype.byteLength = function byteLength () {\n return Math.ceil(this.bitLength() / 8);\n };\n\n BN.prototype.toTwos = function toTwos (width) {\n if (this.negative !== 0) {\n return this.abs().inotn(width).iaddn(1);\n }\n return this.clone();\n };\n\n BN.prototype.fromTwos = function fromTwos (width) {\n if (this.testn(width - 1)) {\n return this.notn(width).iaddn(1).ineg();\n }\n return this.clone();\n };\n\n BN.prototype.isNeg = function isNeg () {\n return this.negative !== 0;\n };\n\n // Return negative clone of `this`\n BN.prototype.neg = function neg () {\n return this.clone().ineg();\n };\n\n BN.prototype.ineg = function ineg () {\n if (!this.isZero()) {\n this.negative ^= 1;\n }\n\n return this;\n };\n\n // Or `num` with `this` in-place\n BN.prototype.iuor = function iuor (num) {\n while (this.length < num.length) {\n this.words[this.length++] = 0;\n }\n\n for (var i = 0; i < num.length; i++) {\n this.words[i] = this.words[i] | num.words[i];\n }\n\n return this.strip();\n };\n\n BN.prototype.ior = function ior (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuor(num);\n };\n\n // Or `num` with `this`\n BN.prototype.or = function or (num) {\n if (this.length > num.length) return this.clone().ior(num);\n return num.clone().ior(this);\n };\n\n BN.prototype.uor = function uor (num) {\n if (this.length > num.length) return this.clone().iuor(num);\n return num.clone().iuor(this);\n };\n\n // And `num` with `this` in-place\n BN.prototype.iuand = function iuand (num) {\n // b = min-length(num, this)\n var b;\n if (this.length > num.length) {\n b = num;\n } else {\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = this.words[i] & num.words[i];\n }\n\n this.length = b.length;\n\n return this.strip();\n };\n\n BN.prototype.iand = function iand (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuand(num);\n };\n\n // And `num` with `this`\n BN.prototype.and = function and (num) {\n if (this.length > num.length) return this.clone().iand(num);\n return num.clone().iand(this);\n };\n\n BN.prototype.uand = function uand (num) {\n if (this.length > num.length) return this.clone().iuand(num);\n return num.clone().iuand(this);\n };\n\n // Xor `num` with `this` in-place\n BN.prototype.iuxor = function iuxor (num) {\n // a.length > b.length\n var a;\n var b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = a.words[i] ^ b.words[i];\n }\n\n if (this !== a) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = a.length;\n\n return this.strip();\n };\n\n BN.prototype.ixor = function ixor (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuxor(num);\n };\n\n // Xor `num` with `this`\n BN.prototype.xor = function xor (num) {\n if (this.length > num.length) return this.clone().ixor(num);\n return num.clone().ixor(this);\n };\n\n BN.prototype.uxor = function uxor (num) {\n if (this.length > num.length) return this.clone().iuxor(num);\n return num.clone().iuxor(this);\n };\n\n // Not ``this`` with ``width`` bitwidth\n BN.prototype.inotn = function inotn (width) {\n assert(typeof width === 'number' && width >= 0);\n\n var bytesNeeded = Math.ceil(width / 26) | 0;\n var bitsLeft = width % 26;\n\n // Extend the buffer with leading zeroes\n this._expand(bytesNeeded);\n\n if (bitsLeft > 0) {\n bytesNeeded--;\n }\n\n // Handle complete words\n for (var i = 0; i < bytesNeeded; i++) {\n this.words[i] = ~this.words[i] & 0x3ffffff;\n }\n\n // Handle the residue\n if (bitsLeft > 0) {\n this.words[i] = ~this.words[i] & (0x3ffffff >> (26 - bitsLeft));\n }\n\n // And remove leading zeroes\n return this.strip();\n };\n\n BN.prototype.notn = function notn (width) {\n return this.clone().inotn(width);\n };\n\n // Set `bit` of `this`\n BN.prototype.setn = function setn (bit, val) {\n assert(typeof bit === 'number' && bit >= 0);\n\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n this._expand(off + 1);\n\n if (val) {\n this.words[off] = this.words[off] | (1 << wbit);\n } else {\n this.words[off] = this.words[off] & ~(1 << wbit);\n }\n\n return this.strip();\n };\n\n // Add `num` to `this` in-place\n BN.prototype.iadd = function iadd (num) {\n var r;\n\n // negative + positive\n if (this.negative !== 0 && num.negative === 0) {\n this.negative = 0;\n r = this.isub(num);\n this.negative ^= 1;\n return this._normSign();\n\n // positive + negative\n } else if (this.negative === 0 && num.negative !== 0) {\n num.negative = 0;\n r = this.isub(num);\n num.negative = 1;\n return r._normSign();\n }\n\n // a.length > b.length\n var a, b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) + (b.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n\n this.length = a.length;\n if (carry !== 0) {\n this.words[this.length] = carry;\n this.length++;\n // Copy the rest of the words\n } else if (a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n return this;\n };\n\n // Add `num` to `this`\n BN.prototype.add = function add (num) {\n var res;\n if (num.negative !== 0 && this.negative === 0) {\n num.negative = 0;\n res = this.sub(num);\n num.negative ^= 1;\n return res;\n } else if (num.negative === 0 && this.negative !== 0) {\n this.negative = 0;\n res = num.sub(this);\n this.negative = 1;\n return res;\n }\n\n if (this.length > num.length) return this.clone().iadd(num);\n\n return num.clone().iadd(this);\n };\n\n // Subtract `num` from `this` in-place\n BN.prototype.isub = function isub (num) {\n // this - (-num) = this + num\n if (num.negative !== 0) {\n num.negative = 0;\n var r = this.iadd(num);\n num.negative = 1;\n return r._normSign();\n\n // -this - num = -(this + num)\n } else if (this.negative !== 0) {\n this.negative = 0;\n this.iadd(num);\n this.negative = 1;\n return this._normSign();\n }\n\n // At this point both numbers are positive\n var cmp = this.cmp(num);\n\n // Optimization - zeroify\n if (cmp === 0) {\n this.negative = 0;\n this.length = 1;\n this.words[0] = 0;\n return this;\n }\n\n // a > b\n var a, b;\n if (cmp > 0) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) - (b.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n\n // Copy rest of the words\n if (carry === 0 && i < a.length && a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = Math.max(this.length, i);\n\n if (a !== this) {\n this.negative = 1;\n }\n\n return this.strip();\n };\n\n // Subtract `num` from `this`\n BN.prototype.sub = function sub (num) {\n return this.clone().isub(num);\n };\n\n function smallMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n var len = (self.length + num.length) | 0;\n out.length = len;\n len = (len - 1) | 0;\n\n // Peel one iteration (compiler can't do it, because of code complexity)\n var a = self.words[0] | 0;\n var b = num.words[0] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n var carry = (r / 0x4000000) | 0;\n out.words[0] = lo;\n\n for (var k = 1; k < len; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = carry >>> 26;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = (k - j) | 0;\n a = self.words[i] | 0;\n b = num.words[j] | 0;\n r = a * b + rword;\n ncarry += (r / 0x4000000) | 0;\n rword = r & 0x3ffffff;\n }\n out.words[k] = rword | 0;\n carry = ncarry | 0;\n }\n if (carry !== 0) {\n out.words[k] = carry | 0;\n } else {\n out.length--;\n }\n\n return out.strip();\n }\n\n // TODO(indutny): it may be reasonable to omit it for users who don't need\n // to work with 256-bit numbers, otherwise it gives 20% improvement for 256-bit\n // multiplication (like elliptic secp256k1).\n var comb10MulTo = function comb10MulTo (self, num, out) {\n var a = self.words;\n var b = num.words;\n var o = out.words;\n var c = 0;\n var lo;\n var mid;\n var hi;\n var a0 = a[0] | 0;\n var al0 = a0 & 0x1fff;\n var ah0 = a0 >>> 13;\n var a1 = a[1] | 0;\n var al1 = a1 & 0x1fff;\n var ah1 = a1 >>> 13;\n var a2 = a[2] | 0;\n var al2 = a2 & 0x1fff;\n var ah2 = a2 >>> 13;\n var a3 = a[3] | 0;\n var al3 = a3 & 0x1fff;\n var ah3 = a3 >>> 13;\n var a4 = a[4] | 0;\n var al4 = a4 & 0x1fff;\n var ah4 = a4 >>> 13;\n var a5 = a[5] | 0;\n var al5 = a5 & 0x1fff;\n var ah5 = a5 >>> 13;\n var a6 = a[6] | 0;\n var al6 = a6 & 0x1fff;\n var ah6 = a6 >>> 13;\n var a7 = a[7] | 0;\n var al7 = a7 & 0x1fff;\n var ah7 = a7 >>> 13;\n var a8 = a[8] | 0;\n var al8 = a8 & 0x1fff;\n var ah8 = a8 >>> 13;\n var a9 = a[9] | 0;\n var al9 = a9 & 0x1fff;\n var ah9 = a9 >>> 13;\n var b0 = b[0] | 0;\n var bl0 = b0 & 0x1fff;\n var bh0 = b0 >>> 13;\n var b1 = b[1] | 0;\n var bl1 = b1 & 0x1fff;\n var bh1 = b1 >>> 13;\n var b2 = b[2] | 0;\n var bl2 = b2 & 0x1fff;\n var bh2 = b2 >>> 13;\n var b3 = b[3] | 0;\n var bl3 = b3 & 0x1fff;\n var bh3 = b3 >>> 13;\n var b4 = b[4] | 0;\n var bl4 = b4 & 0x1fff;\n var bh4 = b4 >>> 13;\n var b5 = b[5] | 0;\n var bl5 = b5 & 0x1fff;\n var bh5 = b5 >>> 13;\n var b6 = b[6] | 0;\n var bl6 = b6 & 0x1fff;\n var bh6 = b6 >>> 13;\n var b7 = b[7] | 0;\n var bl7 = b7 & 0x1fff;\n var bh7 = b7 >>> 13;\n var b8 = b[8] | 0;\n var bl8 = b8 & 0x1fff;\n var bh8 = b8 >>> 13;\n var b9 = b[9] | 0;\n var bl9 = b9 & 0x1fff;\n var bh9 = b9 >>> 13;\n\n out.negative = self.negative ^ num.negative;\n out.length = 19;\n /* k = 0 */\n lo = Math.imul(al0, bl0);\n mid = Math.imul(al0, bh0);\n mid = (mid + Math.imul(ah0, bl0)) | 0;\n hi = Math.imul(ah0, bh0);\n var w0 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w0 >>> 26)) | 0;\n w0 &= 0x3ffffff;\n /* k = 1 */\n lo = Math.imul(al1, bl0);\n mid = Math.imul(al1, bh0);\n mid = (mid + Math.imul(ah1, bl0)) | 0;\n hi = Math.imul(ah1, bh0);\n lo = (lo + Math.imul(al0, bl1)) | 0;\n mid = (mid + Math.imul(al0, bh1)) | 0;\n mid = (mid + Math.imul(ah0, bl1)) | 0;\n hi = (hi + Math.imul(ah0, bh1)) | 0;\n var w1 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w1 >>> 26)) | 0;\n w1 &= 0x3ffffff;\n /* k = 2 */\n lo = Math.imul(al2, bl0);\n mid = Math.imul(al2, bh0);\n mid = (mid + Math.imul(ah2, bl0)) | 0;\n hi = Math.imul(ah2, bh0);\n lo = (lo + Math.imul(al1, bl1)) | 0;\n mid = (mid + Math.imul(al1, bh1)) | 0;\n mid = (mid + Math.imul(ah1, bl1)) | 0;\n hi = (hi + Math.imul(ah1, bh1)) | 0;\n lo = (lo + Math.imul(al0, bl2)) | 0;\n mid = (mid + Math.imul(al0, bh2)) | 0;\n mid = (mid + Math.imul(ah0, bl2)) | 0;\n hi = (hi + Math.imul(ah0, bh2)) | 0;\n var w2 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w2 >>> 26)) | 0;\n w2 &= 0x3ffffff;\n /* k = 3 */\n lo = Math.imul(al3, bl0);\n mid = Math.imul(al3, bh0);\n mid = (mid + Math.imul(ah3, bl0)) | 0;\n hi = Math.imul(ah3, bh0);\n lo = (lo + Math.imul(al2, bl1)) | 0;\n mid = (mid + Math.imul(al2, bh1)) | 0;\n mid = (mid + Math.imul(ah2, bl1)) | 0;\n hi = (hi + Math.imul(ah2, bh1)) | 0;\n lo = (lo + Math.imul(al1, bl2)) | 0;\n mid = (mid + Math.imul(al1, bh2)) | 0;\n mid = (mid + Math.imul(ah1, bl2)) | 0;\n hi = (hi + Math.imul(ah1, bh2)) | 0;\n lo = (lo + Math.imul(al0, bl3)) | 0;\n mid = (mid + Math.imul(al0, bh3)) | 0;\n mid = (mid + Math.imul(ah0, bl3)) | 0;\n hi = (hi + Math.imul(ah0, bh3)) | 0;\n var w3 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w3 >>> 26)) | 0;\n w3 &= 0x3ffffff;\n /* k = 4 */\n lo = Math.imul(al4, bl0);\n mid = Math.imul(al4, bh0);\n mid = (mid + Math.imul(ah4, bl0)) | 0;\n hi = Math.imul(ah4, bh0);\n lo = (lo + Math.imul(al3, bl1)) | 0;\n mid = (mid + Math.imul(al3, bh1)) | 0;\n mid = (mid + Math.imul(ah3, bl1)) | 0;\n hi = (hi + Math.imul(ah3, bh1)) | 0;\n lo = (lo + Math.imul(al2, bl2)) | 0;\n mid = (mid + Math.imul(al2, bh2)) | 0;\n mid = (mid + Math.imul(ah2, bl2)) | 0;\n hi = (hi + Math.imul(ah2, bh2)) | 0;\n lo = (lo + Math.imul(al1, bl3)) | 0;\n mid = (mid + Math.imul(al1, bh3)) | 0;\n mid = (mid + Math.imul(ah1, bl3)) | 0;\n hi = (hi + Math.imul(ah1, bh3)) | 0;\n lo = (lo + Math.imul(al0, bl4)) | 0;\n mid = (mid + Math.imul(al0, bh4)) | 0;\n mid = (mid + Math.imul(ah0, bl4)) | 0;\n hi = (hi + Math.imul(ah0, bh4)) | 0;\n var w4 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w4 >>> 26)) | 0;\n w4 &= 0x3ffffff;\n /* k = 5 */\n lo = Math.imul(al5, bl0);\n mid = Math.imul(al5, bh0);\n mid = (mid + Math.imul(ah5, bl0)) | 0;\n hi = Math.imul(ah5, bh0);\n lo = (lo + Math.imul(al4, bl1)) | 0;\n mid = (mid + Math.imul(al4, bh1)) | 0;\n mid = (mid + Math.imul(ah4, bl1)) | 0;\n hi = (hi + Math.imul(ah4, bh1)) | 0;\n lo = (lo + Math.imul(al3, bl2)) | 0;\n mid = (mid + Math.imul(al3, bh2)) | 0;\n mid = (mid + Math.imul(ah3, bl2)) | 0;\n hi = (hi + Math.imul(ah3, bh2)) | 0;\n lo = (lo + Math.imul(al2, bl3)) | 0;\n mid = (mid + Math.imul(al2, bh3)) | 0;\n mid = (mid + Math.imul(ah2, bl3)) | 0;\n hi = (hi + Math.imul(ah2, bh3)) | 0;\n lo = (lo + Math.imul(al1, bl4)) | 0;\n mid = (mid + Math.imul(al1, bh4)) | 0;\n mid = (mid + Math.imul(ah1, bl4)) | 0;\n hi = (hi + Math.imul(ah1, bh4)) | 0;\n lo = (lo + Math.imul(al0, bl5)) | 0;\n mid = (mid + Math.imul(al0, bh5)) | 0;\n mid = (mid + Math.imul(ah0, bl5)) | 0;\n hi = (hi + Math.imul(ah0, bh5)) | 0;\n var w5 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w5 >>> 26)) | 0;\n w5 &= 0x3ffffff;\n /* k = 6 */\n lo = Math.imul(al6, bl0);\n mid = Math.imul(al6, bh0);\n mid = (mid + Math.imul(ah6, bl0)) | 0;\n hi = Math.imul(ah6, bh0);\n lo = (lo + Math.imul(al5, bl1)) | 0;\n mid = (mid + Math.imul(al5, bh1)) | 0;\n mid = (mid + Math.imul(ah5, bl1)) | 0;\n hi = (hi + Math.imul(ah5, bh1)) | 0;\n lo = (lo + Math.imul(al4, bl2)) | 0;\n mid = (mid + Math.imul(al4, bh2)) | 0;\n mid = (mid + Math.imul(ah4, bl2)) | 0;\n hi = (hi + Math.imul(ah4, bh2)) | 0;\n lo = (lo + Math.imul(al3, bl3)) | 0;\n mid = (mid + Math.imul(al3, bh3)) | 0;\n mid = (mid + Math.imul(ah3, bl3)) | 0;\n hi = (hi + Math.imul(ah3, bh3)) | 0;\n lo = (lo + Math.imul(al2, bl4)) | 0;\n mid = (mid + Math.imul(al2, bh4)) | 0;\n mid = (mid + Math.imul(ah2, bl4)) | 0;\n hi = (hi + Math.imul(ah2, bh4)) | 0;\n lo = (lo + Math.imul(al1, bl5)) | 0;\n mid = (mid + Math.imul(al1, bh5)) | 0;\n mid = (mid + Math.imul(ah1, bl5)) | 0;\n hi = (hi + Math.imul(ah1, bh5)) | 0;\n lo = (lo + Math.imul(al0, bl6)) | 0;\n mid = (mid + Math.imul(al0, bh6)) | 0;\n mid = (mid + Math.imul(ah0, bl6)) | 0;\n hi = (hi + Math.imul(ah0, bh6)) | 0;\n var w6 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w6 >>> 26)) | 0;\n w6 &= 0x3ffffff;\n /* k = 7 */\n lo = Math.imul(al7, bl0);\n mid = Math.imul(al7, bh0);\n mid = (mid + Math.imul(ah7, bl0)) | 0;\n hi = Math.imul(ah7, bh0);\n lo = (lo + Math.imul(al6, bl1)) | 0;\n mid = (mid + Math.imul(al6, bh1)) | 0;\n mid = (mid + Math.imul(ah6, bl1)) | 0;\n hi = (hi + Math.imul(ah6, bh1)) | 0;\n lo = (lo + Math.imul(al5, bl2)) | 0;\n mid = (mid + Math.imul(al5, bh2)) | 0;\n mid = (mid + Math.imul(ah5, bl2)) | 0;\n hi = (hi + Math.imul(ah5, bh2)) | 0;\n lo = (lo + Math.imul(al4, bl3)) | 0;\n mid = (mid + Math.imul(al4, bh3)) | 0;\n mid = (mid + Math.imul(ah4, bl3)) | 0;\n hi = (hi + Math.imul(ah4, bh3)) | 0;\n lo = (lo + Math.imul(al3, bl4)) | 0;\n mid = (mid + Math.imul(al3, bh4)) | 0;\n mid = (mid + Math.imul(ah3, bl4)) | 0;\n hi = (hi + Math.imul(ah3, bh4)) | 0;\n lo = (lo + Math.imul(al2, bl5)) | 0;\n mid = (mid + Math.imul(al2, bh5)) | 0;\n mid = (mid + Math.imul(ah2, bl5)) | 0;\n hi = (hi + Math.imul(ah2, bh5)) | 0;\n lo = (lo + Math.imul(al1, bl6)) | 0;\n mid = (mid + Math.imul(al1, bh6)) | 0;\n mid = (mid + Math.imul(ah1, bl6)) | 0;\n hi = (hi + Math.imul(ah1, bh6)) | 0;\n lo = (lo + Math.imul(al0, bl7)) | 0;\n mid = (mid + Math.imul(al0, bh7)) | 0;\n mid = (mid + Math.imul(ah0, bl7)) | 0;\n hi = (hi + Math.imul(ah0, bh7)) | 0;\n var w7 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w7 >>> 26)) | 0;\n w7 &= 0x3ffffff;\n /* k = 8 */\n lo = Math.imul(al8, bl0);\n mid = Math.imul(al8, bh0);\n mid = (mid + Math.imul(ah8, bl0)) | 0;\n hi = Math.imul(ah8, bh0);\n lo = (lo + Math.imul(al7, bl1)) | 0;\n mid = (mid + Math.imul(al7, bh1)) | 0;\n mid = (mid + Math.imul(ah7, bl1)) | 0;\n hi = (hi + Math.imul(ah7, bh1)) | 0;\n lo = (lo + Math.imul(al6, bl2)) | 0;\n mid = (mid + Math.imul(al6, bh2)) | 0;\n mid = (mid + Math.imul(ah6, bl2)) | 0;\n hi = (hi + Math.imul(ah6, bh2)) | 0;\n lo = (lo + Math.imul(al5, bl3)) | 0;\n mid = (mid + Math.imul(al5, bh3)) | 0;\n mid = (mid + Math.imul(ah5, bl3)) | 0;\n hi = (hi + Math.imul(ah5, bh3)) | 0;\n lo = (lo + Math.imul(al4, bl4)) | 0;\n mid = (mid + Math.imul(al4, bh4)) | 0;\n mid = (mid + Math.imul(ah4, bl4)) | 0;\n hi = (hi + Math.imul(ah4, bh4)) | 0;\n lo = (lo + Math.imul(al3, bl5)) | 0;\n mid = (mid + Math.imul(al3, bh5)) | 0;\n mid = (mid + Math.imul(ah3, bl5)) | 0;\n hi = (hi + Math.imul(ah3, bh5)) | 0;\n lo = (lo + Math.imul(al2, bl6)) | 0;\n mid = (mid + Math.imul(al2, bh6)) | 0;\n mid = (mid + Math.imul(ah2, bl6)) | 0;\n hi = (hi + Math.imul(ah2, bh6)) | 0;\n lo = (lo + Math.imul(al1, bl7)) | 0;\n mid = (mid + Math.imul(al1, bh7)) | 0;\n mid = (mid + Math.imul(ah1, bl7)) | 0;\n hi = (hi + Math.imul(ah1, bh7)) | 0;\n lo = (lo + Math.imul(al0, bl8)) | 0;\n mid = (mid + Math.imul(al0, bh8)) | 0;\n mid = (mid + Math.imul(ah0, bl8)) | 0;\n hi = (hi + Math.imul(ah0, bh8)) | 0;\n var w8 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w8 >>> 26)) | 0;\n w8 &= 0x3ffffff;\n /* k = 9 */\n lo = Math.imul(al9, bl0);\n mid = Math.imul(al9, bh0);\n mid = (mid + Math.imul(ah9, bl0)) | 0;\n hi = Math.imul(ah9, bh0);\n lo = (lo + Math.imul(al8, bl1)) | 0;\n mid = (mid + Math.imul(al8, bh1)) | 0;\n mid = (mid + Math.imul(ah8, bl1)) | 0;\n hi = (hi + Math.imul(ah8, bh1)) | 0;\n lo = (lo + Math.imul(al7, bl2)) | 0;\n mid = (mid + Math.imul(al7, bh2)) | 0;\n mid = (mid + Math.imul(ah7, bl2)) | 0;\n hi = (hi + Math.imul(ah7, bh2)) | 0;\n lo = (lo + Math.imul(al6, bl3)) | 0;\n mid = (mid + Math.imul(al6, bh3)) | 0;\n mid = (mid + Math.imul(ah6, bl3)) | 0;\n hi = (hi + Math.imul(ah6, bh3)) | 0;\n lo = (lo + Math.imul(al5, bl4)) | 0;\n mid = (mid + Math.imul(al5, bh4)) | 0;\n mid = (mid + Math.imul(ah5, bl4)) | 0;\n hi = (hi + Math.imul(ah5, bh4)) | 0;\n lo = (lo + Math.imul(al4, bl5)) | 0;\n mid = (mid + Math.imul(al4, bh5)) | 0;\n mid = (mid + Math.imul(ah4, bl5)) | 0;\n hi = (hi + Math.imul(ah4, bh5)) | 0;\n lo = (lo + Math.imul(al3, bl6)) | 0;\n mid = (mid + Math.imul(al3, bh6)) | 0;\n mid = (mid + Math.imul(ah3, bl6)) | 0;\n hi = (hi + Math.imul(ah3, bh6)) | 0;\n lo = (lo + Math.imul(al2, bl7)) | 0;\n mid = (mid + Math.imul(al2, bh7)) | 0;\n mid = (mid + Math.imul(ah2, bl7)) | 0;\n hi = (hi + Math.imul(ah2, bh7)) | 0;\n lo = (lo + Math.imul(al1, bl8)) | 0;\n mid = (mid + Math.imul(al1, bh8)) | 0;\n mid = (mid + Math.imul(ah1, bl8)) | 0;\n hi = (hi + Math.imul(ah1, bh8)) | 0;\n lo = (lo + Math.imul(al0, bl9)) | 0;\n mid = (mid + Math.imul(al0, bh9)) | 0;\n mid = (mid + Math.imul(ah0, bl9)) | 0;\n hi = (hi + Math.imul(ah0, bh9)) | 0;\n var w9 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w9 >>> 26)) | 0;\n w9 &= 0x3ffffff;\n /* k = 10 */\n lo = Math.imul(al9, bl1);\n mid = Math.imul(al9, bh1);\n mid = (mid + Math.imul(ah9, bl1)) | 0;\n hi = Math.imul(ah9, bh1);\n lo = (lo + Math.imul(al8, bl2)) | 0;\n mid = (mid + Math.imul(al8, bh2)) | 0;\n mid = (mid + Math.imul(ah8, bl2)) | 0;\n hi = (hi + Math.imul(ah8, bh2)) | 0;\n lo = (lo + Math.imul(al7, bl3)) | 0;\n mid = (mid + Math.imul(al7, bh3)) | 0;\n mid = (mid + Math.imul(ah7, bl3)) | 0;\n hi = (hi + Math.imul(ah7, bh3)) | 0;\n lo = (lo + Math.imul(al6, bl4)) | 0;\n mid = (mid + Math.imul(al6, bh4)) | 0;\n mid = (mid + Math.imul(ah6, bl4)) | 0;\n hi = (hi + Math.imul(ah6, bh4)) | 0;\n lo = (lo + Math.imul(al5, bl5)) | 0;\n mid = (mid + Math.imul(al5, bh5)) | 0;\n mid = (mid + Math.imul(ah5, bl5)) | 0;\n hi = (hi + Math.imul(ah5, bh5)) | 0;\n lo = (lo + Math.imul(al4, bl6)) | 0;\n mid = (mid + Math.imul(al4, bh6)) | 0;\n mid = (mid + Math.imul(ah4, bl6)) | 0;\n hi = (hi + Math.imul(ah4, bh6)) | 0;\n lo = (lo + Math.imul(al3, bl7)) | 0;\n mid = (mid + Math.imul(al3, bh7)) | 0;\n mid = (mid + Math.imul(ah3, bl7)) | 0;\n hi = (hi + Math.imul(ah3, bh7)) | 0;\n lo = (lo + Math.imul(al2, bl8)) | 0;\n mid = (mid + Math.imul(al2, bh8)) | 0;\n mid = (mid + Math.imul(ah2, bl8)) | 0;\n hi = (hi + Math.imul(ah2, bh8)) | 0;\n lo = (lo + Math.imul(al1, bl9)) | 0;\n mid = (mid + Math.imul(al1, bh9)) | 0;\n mid = (mid + Math.imul(ah1, bl9)) | 0;\n hi = (hi + Math.imul(ah1, bh9)) | 0;\n var w10 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w10 >>> 26)) | 0;\n w10 &= 0x3ffffff;\n /* k = 11 */\n lo = Math.imul(al9, bl2);\n mid = Math.imul(al9, bh2);\n mid = (mid + Math.imul(ah9, bl2)) | 0;\n hi = Math.imul(ah9, bh2);\n lo = (lo + Math.imul(al8, bl3)) | 0;\n mid = (mid + Math.imul(al8, bh3)) | 0;\n mid = (mid + Math.imul(ah8, bl3)) | 0;\n hi = (hi + Math.imul(ah8, bh3)) | 0;\n lo = (lo + Math.imul(al7, bl4)) | 0;\n mid = (mid + Math.imul(al7, bh4)) | 0;\n mid = (mid + Math.imul(ah7, bl4)) | 0;\n hi = (hi + Math.imul(ah7, bh4)) | 0;\n lo = (lo + Math.imul(al6, bl5)) | 0;\n mid = (mid + Math.imul(al6, bh5)) | 0;\n mid = (mid + Math.imul(ah6, bl5)) | 0;\n hi = (hi + Math.imul(ah6, bh5)) | 0;\n lo = (lo + Math.imul(al5, bl6)) | 0;\n mid = (mid + Math.imul(al5, bh6)) | 0;\n mid = (mid + Math.imul(ah5, bl6)) | 0;\n hi = (hi + Math.imul(ah5, bh6)) | 0;\n lo = (lo + Math.imul(al4, bl7)) | 0;\n mid = (mid + Math.imul(al4, bh7)) | 0;\n mid = (mid + Math.imul(ah4, bl7)) | 0;\n hi = (hi + Math.imul(ah4, bh7)) | 0;\n lo = (lo + Math.imul(al3, bl8)) | 0;\n mid = (mid + Math.imul(al3, bh8)) | 0;\n mid = (mid + Math.imul(ah3, bl8)) | 0;\n hi = (hi + Math.imul(ah3, bh8)) | 0;\n lo = (lo + Math.imul(al2, bl9)) | 0;\n mid = (mid + Math.imul(al2, bh9)) | 0;\n mid = (mid + Math.imul(ah2, bl9)) | 0;\n hi = (hi + Math.imul(ah2, bh9)) | 0;\n var w11 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w11 >>> 26)) | 0;\n w11 &= 0x3ffffff;\n /* k = 12 */\n lo = Math.imul(al9, bl3);\n mid = Math.imul(al9, bh3);\n mid = (mid + Math.imul(ah9, bl3)) | 0;\n hi = Math.imul(ah9, bh3);\n lo = (lo + Math.imul(al8, bl4)) | 0;\n mid = (mid + Math.imul(al8, bh4)) | 0;\n mid = (mid + Math.imul(ah8, bl4)) | 0;\n hi = (hi + Math.imul(ah8, bh4)) | 0;\n lo = (lo + Math.imul(al7, bl5)) | 0;\n mid = (mid + Math.imul(al7, bh5)) | 0;\n mid = (mid + Math.imul(ah7, bl5)) | 0;\n hi = (hi + Math.imul(ah7, bh5)) | 0;\n lo = (lo + Math.imul(al6, bl6)) | 0;\n mid = (mid + Math.imul(al6, bh6)) | 0;\n mid = (mid + Math.imul(ah6, bl6)) | 0;\n hi = (hi + Math.imul(ah6, bh6)) | 0;\n lo = (lo + Math.imul(al5, bl7)) | 0;\n mid = (mid + Math.imul(al5, bh7)) | 0;\n mid = (mid + Math.imul(ah5, bl7)) | 0;\n hi = (hi + Math.imul(ah5, bh7)) | 0;\n lo = (lo + Math.imul(al4, bl8)) | 0;\n mid = (mid + Math.imul(al4, bh8)) | 0;\n mid = (mid + Math.imul(ah4, bl8)) | 0;\n hi = (hi + Math.imul(ah4, bh8)) | 0;\n lo = (lo + Math.imul(al3, bl9)) | 0;\n mid = (mid + Math.imul(al3, bh9)) | 0;\n mid = (mid + Math.imul(ah3, bl9)) | 0;\n hi = (hi + Math.imul(ah3, bh9)) | 0;\n var w12 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w12 >>> 26)) | 0;\n w12 &= 0x3ffffff;\n /* k = 13 */\n lo = Math.imul(al9, bl4);\n mid = Math.imul(al9, bh4);\n mid = (mid + Math.imul(ah9, bl4)) | 0;\n hi = Math.imul(ah9, bh4);\n lo = (lo + Math.imul(al8, bl5)) | 0;\n mid = (mid + Math.imul(al8, bh5)) | 0;\n mid = (mid + Math.imul(ah8, bl5)) | 0;\n hi = (hi + Math.imul(ah8, bh5)) | 0;\n lo = (lo + Math.imul(al7, bl6)) | 0;\n mid = (mid + Math.imul(al7, bh6)) | 0;\n mid = (mid + Math.imul(ah7, bl6)) | 0;\n hi = (hi + Math.imul(ah7, bh6)) | 0;\n lo = (lo + Math.imul(al6, bl7)) | 0;\n mid = (mid + Math.imul(al6, bh7)) | 0;\n mid = (mid + Math.imul(ah6, bl7)) | 0;\n hi = (hi + Math.imul(ah6, bh7)) | 0;\n lo = (lo + Math.imul(al5, bl8)) | 0;\n mid = (mid + Math.imul(al5, bh8)) | 0;\n mid = (mid + Math.imul(ah5, bl8)) | 0;\n hi = (hi + Math.imul(ah5, bh8)) | 0;\n lo = (lo + Math.imul(al4, bl9)) | 0;\n mid = (mid + Math.imul(al4, bh9)) | 0;\n mid = (mid + Math.imul(ah4, bl9)) | 0;\n hi = (hi + Math.imul(ah4, bh9)) | 0;\n var w13 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w13 >>> 26)) | 0;\n w13 &= 0x3ffffff;\n /* k = 14 */\n lo = Math.imul(al9, bl5);\n mid = Math.imul(al9, bh5);\n mid = (mid + Math.imul(ah9, bl5)) | 0;\n hi = Math.imul(ah9, bh5);\n lo = (lo + Math.imul(al8, bl6)) | 0;\n mid = (mid + Math.imul(al8, bh6)) | 0;\n mid = (mid + Math.imul(ah8, bl6)) | 0;\n hi = (hi + Math.imul(ah8, bh6)) | 0;\n lo = (lo + Math.imul(al7, bl7)) | 0;\n mid = (mid + Math.imul(al7, bh7)) | 0;\n mid = (mid + Math.imul(ah7, bl7)) | 0;\n hi = (hi + Math.imul(ah7, bh7)) | 0;\n lo = (lo + Math.imul(al6, bl8)) | 0;\n mid = (mid + Math.imul(al6, bh8)) | 0;\n mid = (mid + Math.imul(ah6, bl8)) | 0;\n hi = (hi + Math.imul(ah6, bh8)) | 0;\n lo = (lo + Math.imul(al5, bl9)) | 0;\n mid = (mid + Math.imul(al5, bh9)) | 0;\n mid = (mid + Math.imul(ah5, bl9)) | 0;\n hi = (hi + Math.imul(ah5, bh9)) | 0;\n var w14 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w14 >>> 26)) | 0;\n w14 &= 0x3ffffff;\n /* k = 15 */\n lo = Math.imul(al9, bl6);\n mid = Math.imul(al9, bh6);\n mid = (mid + Math.imul(ah9, bl6)) | 0;\n hi = Math.imul(ah9, bh6);\n lo = (lo + Math.imul(al8, bl7)) | 0;\n mid = (mid + Math.imul(al8, bh7)) | 0;\n mid = (mid + Math.imul(ah8, bl7)) | 0;\n hi = (hi + Math.imul(ah8, bh7)) | 0;\n lo = (lo + Math.imul(al7, bl8)) | 0;\n mid = (mid + Math.imul(al7, bh8)) | 0;\n mid = (mid + Math.imul(ah7, bl8)) | 0;\n hi = (hi + Math.imul(ah7, bh8)) | 0;\n lo = (lo + Math.imul(al6, bl9)) | 0;\n mid = (mid + Math.imul(al6, bh9)) | 0;\n mid = (mid + Math.imul(ah6, bl9)) | 0;\n hi = (hi + Math.imul(ah6, bh9)) | 0;\n var w15 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w15 >>> 26)) | 0;\n w15 &= 0x3ffffff;\n /* k = 16 */\n lo = Math.imul(al9, bl7);\n mid = Math.imul(al9, bh7);\n mid = (mid + Math.imul(ah9, bl7)) | 0;\n hi = Math.imul(ah9, bh7);\n lo = (lo + Math.imul(al8, bl8)) | 0;\n mid = (mid + Math.imul(al8, bh8)) | 0;\n mid = (mid + Math.imul(ah8, bl8)) | 0;\n hi = (hi + Math.imul(ah8, bh8)) | 0;\n lo = (lo + Math.imul(al7, bl9)) | 0;\n mid = (mid + Math.imul(al7, bh9)) | 0;\n mid = (mid + Math.imul(ah7, bl9)) | 0;\n hi = (hi + Math.imul(ah7, bh9)) | 0;\n var w16 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w16 >>> 26)) | 0;\n w16 &= 0x3ffffff;\n /* k = 17 */\n lo = Math.imul(al9, bl8);\n mid = Math.imul(al9, bh8);\n mid = (mid + Math.imul(ah9, bl8)) | 0;\n hi = Math.imul(ah9, bh8);\n lo = (lo + Math.imul(al8, bl9)) | 0;\n mid = (mid + Math.imul(al8, bh9)) | 0;\n mid = (mid + Math.imul(ah8, bl9)) | 0;\n hi = (hi + Math.imul(ah8, bh9)) | 0;\n var w17 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w17 >>> 26)) | 0;\n w17 &= 0x3ffffff;\n /* k = 18 */\n lo = Math.imul(al9, bl9);\n mid = Math.imul(al9, bh9);\n mid = (mid + Math.imul(ah9, bl9)) | 0;\n hi = Math.imul(ah9, bh9);\n var w18 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w18 >>> 26)) | 0;\n w18 &= 0x3ffffff;\n o[0] = w0;\n o[1] = w1;\n o[2] = w2;\n o[3] = w3;\n o[4] = w4;\n o[5] = w5;\n o[6] = w6;\n o[7] = w7;\n o[8] = w8;\n o[9] = w9;\n o[10] = w10;\n o[11] = w11;\n o[12] = w12;\n o[13] = w13;\n o[14] = w14;\n o[15] = w15;\n o[16] = w16;\n o[17] = w17;\n o[18] = w18;\n if (c !== 0) {\n o[19] = c;\n out.length++;\n }\n return out;\n };\n\n // Polyfill comb\n if (!Math.imul) {\n comb10MulTo = smallMulTo;\n }\n\n function bigMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n out.length = self.length + num.length;\n\n var carry = 0;\n var hncarry = 0;\n for (var k = 0; k < out.length - 1; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = hncarry;\n hncarry = 0;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = k - j;\n var a = self.words[i] | 0;\n var b = num.words[j] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n ncarry = (ncarry + ((r / 0x4000000) | 0)) | 0;\n lo = (lo + rword) | 0;\n rword = lo & 0x3ffffff;\n ncarry = (ncarry + (lo >>> 26)) | 0;\n\n hncarry += ncarry >>> 26;\n ncarry &= 0x3ffffff;\n }\n out.words[k] = rword;\n carry = ncarry;\n ncarry = hncarry;\n }\n if (carry !== 0) {\n out.words[k] = carry;\n } else {\n out.length--;\n }\n\n return out.strip();\n }\n\n function jumboMulTo (self, num, out) {\n var fftm = new FFTM();\n return fftm.mulp(self, num, out);\n }\n\n BN.prototype.mulTo = function mulTo (num, out) {\n var res;\n var len = this.length + num.length;\n if (this.length === 10 && num.length === 10) {\n res = comb10MulTo(this, num, out);\n } else if (len < 63) {\n res = smallMulTo(this, num, out);\n } else if (len < 1024) {\n res = bigMulTo(this, num, out);\n } else {\n res = jumboMulTo(this, num, out);\n }\n\n return res;\n };\n\n // Cooley-Tukey algorithm for FFT\n // slightly revisited to rely on looping instead of recursion\n\n function FFTM (x, y) {\n this.x = x;\n this.y = y;\n }\n\n FFTM.prototype.makeRBT = function makeRBT (N) {\n var t = new Array(N);\n var l = BN.prototype._countBits(N) - 1;\n for (var i = 0; i < N; i++) {\n t[i] = this.revBin(i, l, N);\n }\n\n return t;\n };\n\n // Returns binary-reversed representation of `x`\n FFTM.prototype.revBin = function revBin (x, l, N) {\n if (x === 0 || x === N - 1) return x;\n\n var rb = 0;\n for (var i = 0; i < l; i++) {\n rb |= (x & 1) << (l - i - 1);\n x >>= 1;\n }\n\n return rb;\n };\n\n // Performs \"tweedling\" phase, therefore 'emulating'\n // behaviour of the recursive algorithm\n FFTM.prototype.permute = function permute (rbt, rws, iws, rtws, itws, N) {\n for (var i = 0; i < N; i++) {\n rtws[i] = rws[rbt[i]];\n itws[i] = iws[rbt[i]];\n }\n };\n\n FFTM.prototype.transform = function transform (rws, iws, rtws, itws, N, rbt) {\n this.permute(rbt, rws, iws, rtws, itws, N);\n\n for (var s = 1; s < N; s <<= 1) {\n var l = s << 1;\n\n var rtwdf = Math.cos(2 * Math.PI / l);\n var itwdf = Math.sin(2 * Math.PI / l);\n\n for (var p = 0; p < N; p += l) {\n var rtwdf_ = rtwdf;\n var itwdf_ = itwdf;\n\n for (var j = 0; j < s; j++) {\n var re = rtws[p + j];\n var ie = itws[p + j];\n\n var ro = rtws[p + j + s];\n var io = itws[p + j + s];\n\n var rx = rtwdf_ * ro - itwdf_ * io;\n\n io = rtwdf_ * io + itwdf_ * ro;\n ro = rx;\n\n rtws[p + j] = re + ro;\n itws[p + j] = ie + io;\n\n rtws[p + j + s] = re - ro;\n itws[p + j + s] = ie - io;\n\n /* jshint maxdepth : false */\n if (j !== l) {\n rx = rtwdf * rtwdf_ - itwdf * itwdf_;\n\n itwdf_ = rtwdf * itwdf_ + itwdf * rtwdf_;\n rtwdf_ = rx;\n }\n }\n }\n }\n };\n\n FFTM.prototype.guessLen13b = function guessLen13b (n, m) {\n var N = Math.max(m, n) | 1;\n var odd = N & 1;\n var i = 0;\n for (N = N / 2 | 0; N; N = N >>> 1) {\n i++;\n }\n\n return 1 << i + 1 + odd;\n };\n\n FFTM.prototype.conjugate = function conjugate (rws, iws, N) {\n if (N <= 1) return;\n\n for (var i = 0; i < N / 2; i++) {\n var t = rws[i];\n\n rws[i] = rws[N - i - 1];\n rws[N - i - 1] = t;\n\n t = iws[i];\n\n iws[i] = -iws[N - i - 1];\n iws[N - i - 1] = -t;\n }\n };\n\n FFTM.prototype.normalize13b = function normalize13b (ws, N) {\n var carry = 0;\n for (var i = 0; i < N / 2; i++) {\n var w = Math.round(ws[2 * i + 1] / N) * 0x2000 +\n Math.round(ws[2 * i] / N) +\n carry;\n\n ws[i] = w & 0x3ffffff;\n\n if (w < 0x4000000) {\n carry = 0;\n } else {\n carry = w / 0x4000000 | 0;\n }\n }\n\n return ws;\n };\n\n FFTM.prototype.convert13b = function convert13b (ws, len, rws, N) {\n var carry = 0;\n for (var i = 0; i < len; i++) {\n carry = carry + (ws[i] | 0);\n\n rws[2 * i] = carry & 0x1fff; carry = carry >>> 13;\n rws[2 * i + 1] = carry & 0x1fff; carry = carry >>> 13;\n }\n\n // Pad with zeroes\n for (i = 2 * len; i < N; ++i) {\n rws[i] = 0;\n }\n\n assert(carry === 0);\n assert((carry & ~0x1fff) === 0);\n };\n\n FFTM.prototype.stub = function stub (N) {\n var ph = new Array(N);\n for (var i = 0; i < N; i++) {\n ph[i] = 0;\n }\n\n return ph;\n };\n\n FFTM.prototype.mulp = function mulp (x, y, out) {\n var N = 2 * this.guessLen13b(x.length, y.length);\n\n var rbt = this.makeRBT(N);\n\n var _ = this.stub(N);\n\n var rws = new Array(N);\n var rwst = new Array(N);\n var iwst = new Array(N);\n\n var nrws = new Array(N);\n var nrwst = new Array(N);\n var niwst = new Array(N);\n\n var rmws = out.words;\n rmws.length = N;\n\n this.convert13b(x.words, x.length, rws, N);\n this.convert13b(y.words, y.length, nrws, N);\n\n this.transform(rws, _, rwst, iwst, N, rbt);\n this.transform(nrws, _, nrwst, niwst, N, rbt);\n\n for (var i = 0; i < N; i++) {\n var rx = rwst[i] * nrwst[i] - iwst[i] * niwst[i];\n iwst[i] = rwst[i] * niwst[i] + iwst[i] * nrwst[i];\n rwst[i] = rx;\n }\n\n this.conjugate(rwst, iwst, N);\n this.transform(rwst, iwst, rmws, _, N, rbt);\n this.conjugate(rmws, _, N);\n this.normalize13b(rmws, N);\n\n out.negative = x.negative ^ y.negative;\n out.length = x.length + y.length;\n return out.strip();\n };\n\n // Multiply `this` by `num`\n BN.prototype.mul = function mul (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return this.mulTo(num, out);\n };\n\n // Multiply employing FFT\n BN.prototype.mulf = function mulf (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return jumboMulTo(this, num, out);\n };\n\n // In-place Multiplication\n BN.prototype.imul = function imul (num) {\n return this.clone().mulTo(num, this);\n };\n\n BN.prototype.imuln = function imuln (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n\n // Carry\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = (this.words[i] | 0) * num;\n var lo = (w & 0x3ffffff) + (carry & 0x3ffffff);\n carry >>= 26;\n carry += (w / 0x4000000) | 0;\n // NOTE: lo is 27bit maximum\n carry += lo >>> 26;\n this.words[i] = lo & 0x3ffffff;\n }\n\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n\n return this;\n };\n\n BN.prototype.muln = function muln (num) {\n return this.clone().imuln(num);\n };\n\n // `this` * `this`\n BN.prototype.sqr = function sqr () {\n return this.mul(this);\n };\n\n // `this` * `this` in-place\n BN.prototype.isqr = function isqr () {\n return this.imul(this.clone());\n };\n\n // Math.pow(`this`, `num`)\n BN.prototype.pow = function pow (num) {\n var w = toBitArray(num);\n if (w.length === 0) return new BN(1);\n\n // Skip leading zeroes\n var res = this;\n for (var i = 0; i < w.length; i++, res = res.sqr()) {\n if (w[i] !== 0) break;\n }\n\n if (++i < w.length) {\n for (var q = res.sqr(); i < w.length; i++, q = q.sqr()) {\n if (w[i] === 0) continue;\n\n res = res.mul(q);\n }\n }\n\n return res;\n };\n\n // Shift-left in-place\n BN.prototype.iushln = function iushln (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n var carryMask = (0x3ffffff >>> (26 - r)) << (26 - r);\n var i;\n\n if (r !== 0) {\n var carry = 0;\n\n for (i = 0; i < this.length; i++) {\n var newCarry = this.words[i] & carryMask;\n var c = ((this.words[i] | 0) - newCarry) << r;\n this.words[i] = c | carry;\n carry = newCarry >>> (26 - r);\n }\n\n if (carry) {\n this.words[i] = carry;\n this.length++;\n }\n }\n\n if (s !== 0) {\n for (i = this.length - 1; i >= 0; i--) {\n this.words[i + s] = this.words[i];\n }\n\n for (i = 0; i < s; i++) {\n this.words[i] = 0;\n }\n\n this.length += s;\n }\n\n return this.strip();\n };\n\n BN.prototype.ishln = function ishln (bits) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushln(bits);\n };\n\n // Shift-right in-place\n // NOTE: `hint` is a lowest bit before trailing zeroes\n // NOTE: if `extended` is present - it will be filled with destroyed bits\n BN.prototype.iushrn = function iushrn (bits, hint, extended) {\n assert(typeof bits === 'number' && bits >= 0);\n var h;\n if (hint) {\n h = (hint - (hint % 26)) / 26;\n } else {\n h = 0;\n }\n\n var r = bits % 26;\n var s = Math.min((bits - r) / 26, this.length);\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n var maskedWords = extended;\n\n h -= s;\n h = Math.max(0, h);\n\n // Extended mode, copy masked part\n if (maskedWords) {\n for (var i = 0; i < s; i++) {\n maskedWords.words[i] = this.words[i];\n }\n maskedWords.length = s;\n }\n\n if (s === 0) {\n // No-op, we should not move anything at all\n } else if (this.length > s) {\n this.length -= s;\n for (i = 0; i < this.length; i++) {\n this.words[i] = this.words[i + s];\n }\n } else {\n this.words[0] = 0;\n this.length = 1;\n }\n\n var carry = 0;\n for (i = this.length - 1; i >= 0 && (carry !== 0 || i >= h); i--) {\n var word = this.words[i] | 0;\n this.words[i] = (carry << (26 - r)) | (word >>> r);\n carry = word & mask;\n }\n\n // Push carried bits as a mask\n if (maskedWords && carry !== 0) {\n maskedWords.words[maskedWords.length++] = carry;\n }\n\n if (this.length === 0) {\n this.words[0] = 0;\n this.length = 1;\n }\n\n return this.strip();\n };\n\n BN.prototype.ishrn = function ishrn (bits, hint, extended) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushrn(bits, hint, extended);\n };\n\n // Shift-left\n BN.prototype.shln = function shln (bits) {\n return this.clone().ishln(bits);\n };\n\n BN.prototype.ushln = function ushln (bits) {\n return this.clone().iushln(bits);\n };\n\n // Shift-right\n BN.prototype.shrn = function shrn (bits) {\n return this.clone().ishrn(bits);\n };\n\n BN.prototype.ushrn = function ushrn (bits) {\n return this.clone().iushrn(bits);\n };\n\n // Test if n bit is set\n BN.prototype.testn = function testn (bit) {\n assert(typeof bit === 'number' && bit >= 0);\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) return false;\n\n // Check bit and return\n var w = this.words[s];\n\n return !!(w & q);\n };\n\n // Return only lowers bits of number (in-place)\n BN.prototype.imaskn = function imaskn (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n\n assert(this.negative === 0, 'imaskn works only with positive numbers');\n\n if (this.length <= s) {\n return this;\n }\n\n if (r !== 0) {\n s++;\n }\n this.length = Math.min(s, this.length);\n\n if (r !== 0) {\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n this.words[this.length - 1] &= mask;\n }\n\n return this.strip();\n };\n\n // Return only lowers bits of number\n BN.prototype.maskn = function maskn (bits) {\n return this.clone().imaskn(bits);\n };\n\n // Add plain number `num` to `this`\n BN.prototype.iaddn = function iaddn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.isubn(-num);\n\n // Possible sign change\n if (this.negative !== 0) {\n if (this.length === 1 && (this.words[0] | 0) < num) {\n this.words[0] = num - (this.words[0] | 0);\n this.negative = 0;\n return this;\n }\n\n this.negative = 0;\n this.isubn(num);\n this.negative = 1;\n return this;\n }\n\n // Add without checks\n return this._iaddn(num);\n };\n\n BN.prototype._iaddn = function _iaddn (num) {\n this.words[0] += num;\n\n // Carry\n for (var i = 0; i < this.length && this.words[i] >= 0x4000000; i++) {\n this.words[i] -= 0x4000000;\n if (i === this.length - 1) {\n this.words[i + 1] = 1;\n } else {\n this.words[i + 1]++;\n }\n }\n this.length = Math.max(this.length, i + 1);\n\n return this;\n };\n\n // Subtract plain number `num` from `this`\n BN.prototype.isubn = function isubn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.iaddn(-num);\n\n if (this.negative !== 0) {\n this.negative = 0;\n this.iaddn(num);\n this.negative = 1;\n return this;\n }\n\n this.words[0] -= num;\n\n if (this.length === 1 && this.words[0] < 0) {\n this.words[0] = -this.words[0];\n this.negative = 1;\n } else {\n // Carry\n for (var i = 0; i < this.length && this.words[i] < 0; i++) {\n this.words[i] += 0x4000000;\n this.words[i + 1] -= 1;\n }\n }\n\n return this.strip();\n };\n\n BN.prototype.addn = function addn (num) {\n return this.clone().iaddn(num);\n };\n\n BN.prototype.subn = function subn (num) {\n return this.clone().isubn(num);\n };\n\n BN.prototype.iabs = function iabs () {\n this.negative = 0;\n\n return this;\n };\n\n BN.prototype.abs = function abs () {\n return this.clone().iabs();\n };\n\n BN.prototype._ishlnsubmul = function _ishlnsubmul (num, mul, shift) {\n var len = num.length + shift;\n var i;\n\n this._expand(len);\n\n var w;\n var carry = 0;\n for (i = 0; i < num.length; i++) {\n w = (this.words[i + shift] | 0) + carry;\n var right = (num.words[i] | 0) * mul;\n w -= right & 0x3ffffff;\n carry = (w >> 26) - ((right / 0x4000000) | 0);\n this.words[i + shift] = w & 0x3ffffff;\n }\n for (; i < this.length - shift; i++) {\n w = (this.words[i + shift] | 0) + carry;\n carry = w >> 26;\n this.words[i + shift] = w & 0x3ffffff;\n }\n\n if (carry === 0) return this.strip();\n\n // Subtraction overflow\n assert(carry === -1);\n carry = 0;\n for (i = 0; i < this.length; i++) {\n w = -(this.words[i] | 0) + carry;\n carry = w >> 26;\n this.words[i] = w & 0x3ffffff;\n }\n this.negative = 1;\n\n return this.strip();\n };\n\n BN.prototype._wordDiv = function _wordDiv (num, mode) {\n var shift = this.length - num.length;\n\n var a = this.clone();\n var b = num;\n\n // Normalize\n var bhi = b.words[b.length - 1] | 0;\n var bhiBits = this._countBits(bhi);\n shift = 26 - bhiBits;\n if (shift !== 0) {\n b = b.ushln(shift);\n a.iushln(shift);\n bhi = b.words[b.length - 1] | 0;\n }\n\n // Initialize quotient\n var m = a.length - b.length;\n var q;\n\n if (mode !== 'mod') {\n q = new BN(null);\n q.length = m + 1;\n q.words = new Array(q.length);\n for (var i = 0; i < q.length; i++) {\n q.words[i] = 0;\n }\n }\n\n var diff = a.clone()._ishlnsubmul(b, 1, m);\n if (diff.negative === 0) {\n a = diff;\n if (q) {\n q.words[m] = 1;\n }\n }\n\n for (var j = m - 1; j >= 0; j--) {\n var qj = (a.words[b.length + j] | 0) * 0x4000000 +\n (a.words[b.length + j - 1] | 0);\n\n // NOTE: (qj / bhi) is (0x3ffffff * 0x4000000 + 0x3ffffff) / 0x2000000 max\n // (0x7ffffff)\n qj = Math.min((qj / bhi) | 0, 0x3ffffff);\n\n a._ishlnsubmul(b, qj, j);\n while (a.negative !== 0) {\n qj--;\n a.negative = 0;\n a._ishlnsubmul(b, 1, j);\n if (!a.isZero()) {\n a.negative ^= 1;\n }\n }\n if (q) {\n q.words[j] = qj;\n }\n }\n if (q) {\n q.strip();\n }\n a.strip();\n\n // Denormalize\n if (mode !== 'div' && shift !== 0) {\n a.iushrn(shift);\n }\n\n return {\n div: q || null,\n mod: a\n };\n };\n\n // NOTE: 1) `mode` can be set to `mod` to request mod only,\n // to `div` to request div only, or be absent to\n // request both div & mod\n // 2) `positive` is true if unsigned mod is requested\n BN.prototype.divmod = function divmod (num, mode, positive) {\n assert(!num.isZero());\n\n if (this.isZero()) {\n return {\n div: new BN(0),\n mod: new BN(0)\n };\n }\n\n var div, mod, res;\n if (this.negative !== 0 && num.negative === 0) {\n res = this.neg().divmod(num, mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.iadd(num);\n }\n }\n\n return {\n div: div,\n mod: mod\n };\n }\n\n if (this.negative === 0 && num.negative !== 0) {\n res = this.divmod(num.neg(), mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n return {\n div: div,\n mod: res.mod\n };\n }\n\n if ((this.negative & num.negative) !== 0) {\n res = this.neg().divmod(num.neg(), mode);\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.isub(num);\n }\n }\n\n return {\n div: res.div,\n mod: mod\n };\n }\n\n // Both numbers are positive at this point\n\n // Strip both numbers to approximate shift value\n if (num.length > this.length || this.cmp(num) < 0) {\n return {\n div: new BN(0),\n mod: this\n };\n }\n\n // Very short reduction\n if (num.length === 1) {\n if (mode === 'div') {\n return {\n div: this.divn(num.words[0]),\n mod: null\n };\n }\n\n if (mode === 'mod') {\n return {\n div: null,\n mod: new BN(this.modn(num.words[0]))\n };\n }\n\n return {\n div: this.divn(num.words[0]),\n mod: new BN(this.modn(num.words[0]))\n };\n }\n\n return this._wordDiv(num, mode);\n };\n\n // Find `this` / `num`\n BN.prototype.div = function div (num) {\n return this.divmod(num, 'div', false).div;\n };\n\n // Find `this` % `num`\n BN.prototype.mod = function mod (num) {\n return this.divmod(num, 'mod', false).mod;\n };\n\n BN.prototype.umod = function umod (num) {\n return this.divmod(num, 'mod', true).mod;\n };\n\n // Find Round(`this` / `num`)\n BN.prototype.divRound = function divRound (num) {\n var dm = this.divmod(num);\n\n // Fast case - exact division\n if (dm.mod.isZero()) return dm.div;\n\n var mod = dm.div.negative !== 0 ? dm.mod.isub(num) : dm.mod;\n\n var half = num.ushrn(1);\n var r2 = num.andln(1);\n var cmp = mod.cmp(half);\n\n // Round down\n if (cmp < 0 || r2 === 1 && cmp === 0) return dm.div;\n\n // Round up\n return dm.div.negative !== 0 ? dm.div.isubn(1) : dm.div.iaddn(1);\n };\n\n BN.prototype.modn = function modn (num) {\n assert(num <= 0x3ffffff);\n var p = (1 << 26) % num;\n\n var acc = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n acc = (p * acc + (this.words[i] | 0)) % num;\n }\n\n return acc;\n };\n\n // In-place division by number\n BN.prototype.idivn = function idivn (num) {\n assert(num <= 0x3ffffff);\n\n var carry = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var w = (this.words[i] | 0) + carry * 0x4000000;\n this.words[i] = (w / num) | 0;\n carry = w % num;\n }\n\n return this.strip();\n };\n\n BN.prototype.divn = function divn (num) {\n return this.clone().idivn(num);\n };\n\n BN.prototype.egcd = function egcd (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var x = this;\n var y = p.clone();\n\n if (x.negative !== 0) {\n x = x.umod(p);\n } else {\n x = x.clone();\n }\n\n // A * x + B * y = x\n var A = new BN(1);\n var B = new BN(0);\n\n // C * x + D * y = y\n var C = new BN(0);\n var D = new BN(1);\n\n var g = 0;\n\n while (x.isEven() && y.isEven()) {\n x.iushrn(1);\n y.iushrn(1);\n ++g;\n }\n\n var yp = y.clone();\n var xp = x.clone();\n\n while (!x.isZero()) {\n for (var i = 0, im = 1; (x.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n x.iushrn(i);\n while (i-- > 0) {\n if (A.isOdd() || B.isOdd()) {\n A.iadd(yp);\n B.isub(xp);\n }\n\n A.iushrn(1);\n B.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (y.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n y.iushrn(j);\n while (j-- > 0) {\n if (C.isOdd() || D.isOdd()) {\n C.iadd(yp);\n D.isub(xp);\n }\n\n C.iushrn(1);\n D.iushrn(1);\n }\n }\n\n if (x.cmp(y) >= 0) {\n x.isub(y);\n A.isub(C);\n B.isub(D);\n } else {\n y.isub(x);\n C.isub(A);\n D.isub(B);\n }\n }\n\n return {\n a: C,\n b: D,\n gcd: y.iushln(g)\n };\n };\n\n // This is reduced incarnation of the binary EEA\n // above, designated to invert members of the\n // _prime_ fields F(p) at a maximal speed\n BN.prototype._invmp = function _invmp (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var a = this;\n var b = p.clone();\n\n if (a.negative !== 0) {\n a = a.umod(p);\n } else {\n a = a.clone();\n }\n\n var x1 = new BN(1);\n var x2 = new BN(0);\n\n var delta = b.clone();\n\n while (a.cmpn(1) > 0 && b.cmpn(1) > 0) {\n for (var i = 0, im = 1; (a.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n a.iushrn(i);\n while (i-- > 0) {\n if (x1.isOdd()) {\n x1.iadd(delta);\n }\n\n x1.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (b.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n b.iushrn(j);\n while (j-- > 0) {\n if (x2.isOdd()) {\n x2.iadd(delta);\n }\n\n x2.iushrn(1);\n }\n }\n\n if (a.cmp(b) >= 0) {\n a.isub(b);\n x1.isub(x2);\n } else {\n b.isub(a);\n x2.isub(x1);\n }\n }\n\n var res;\n if (a.cmpn(1) === 0) {\n res = x1;\n } else {\n res = x2;\n }\n\n if (res.cmpn(0) < 0) {\n res.iadd(p);\n }\n\n return res;\n };\n\n BN.prototype.gcd = function gcd (num) {\n if (this.isZero()) return num.abs();\n if (num.isZero()) return this.abs();\n\n var a = this.clone();\n var b = num.clone();\n a.negative = 0;\n b.negative = 0;\n\n // Remove common factor of two\n for (var shift = 0; a.isEven() && b.isEven(); shift++) {\n a.iushrn(1);\n b.iushrn(1);\n }\n\n do {\n while (a.isEven()) {\n a.iushrn(1);\n }\n while (b.isEven()) {\n b.iushrn(1);\n }\n\n var r = a.cmp(b);\n if (r < 0) {\n // Swap `a` and `b` to make `a` always bigger than `b`\n var t = a;\n a = b;\n b = t;\n } else if (r === 0 || b.cmpn(1) === 0) {\n break;\n }\n\n a.isub(b);\n } while (true);\n\n return b.iushln(shift);\n };\n\n // Invert number in the field F(num)\n BN.prototype.invm = function invm (num) {\n return this.egcd(num).a.umod(num);\n };\n\n BN.prototype.isEven = function isEven () {\n return (this.words[0] & 1) === 0;\n };\n\n BN.prototype.isOdd = function isOdd () {\n return (this.words[0] & 1) === 1;\n };\n\n // And first word and num\n BN.prototype.andln = function andln (num) {\n return this.words[0] & num;\n };\n\n // Increment at the bit position in-line\n BN.prototype.bincn = function bincn (bit) {\n assert(typeof bit === 'number');\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) {\n this._expand(s + 1);\n this.words[s] |= q;\n return this;\n }\n\n // Add bit and propagate, if needed\n var carry = q;\n for (var i = s; carry !== 0 && i < this.length; i++) {\n var w = this.words[i] | 0;\n w += carry;\n carry = w >>> 26;\n w &= 0x3ffffff;\n this.words[i] = w;\n }\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n return this;\n };\n\n BN.prototype.isZero = function isZero () {\n return this.length === 1 && this.words[0] === 0;\n };\n\n BN.prototype.cmpn = function cmpn (num) {\n var negative = num < 0;\n\n if (this.negative !== 0 && !negative) return -1;\n if (this.negative === 0 && negative) return 1;\n\n this.strip();\n\n var res;\n if (this.length > 1) {\n res = 1;\n } else {\n if (negative) {\n num = -num;\n }\n\n assert(num <= 0x3ffffff, 'Number is too big');\n\n var w = this.words[0] | 0;\n res = w === num ? 0 : w < num ? -1 : 1;\n }\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Compare two numbers and return:\n // 1 - if `this` > `num`\n // 0 - if `this` == `num`\n // -1 - if `this` < `num`\n BN.prototype.cmp = function cmp (num) {\n if (this.negative !== 0 && num.negative === 0) return -1;\n if (this.negative === 0 && num.negative !== 0) return 1;\n\n var res = this.ucmp(num);\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Unsigned comparison\n BN.prototype.ucmp = function ucmp (num) {\n // At this point both numbers have the same sign\n if (this.length > num.length) return 1;\n if (this.length < num.length) return -1;\n\n var res = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var a = this.words[i] | 0;\n var b = num.words[i] | 0;\n\n if (a === b) continue;\n if (a < b) {\n res = -1;\n } else if (a > b) {\n res = 1;\n }\n break;\n }\n return res;\n };\n\n BN.prototype.gtn = function gtn (num) {\n return this.cmpn(num) === 1;\n };\n\n BN.prototype.gt = function gt (num) {\n return this.cmp(num) === 1;\n };\n\n BN.prototype.gten = function gten (num) {\n return this.cmpn(num) >= 0;\n };\n\n BN.prototype.gte = function gte (num) {\n return this.cmp(num) >= 0;\n };\n\n BN.prototype.ltn = function ltn (num) {\n return this.cmpn(num) === -1;\n };\n\n BN.prototype.lt = function lt (num) {\n return this.cmp(num) === -1;\n };\n\n BN.prototype.lten = function lten (num) {\n return this.cmpn(num) <= 0;\n };\n\n BN.prototype.lte = function lte (num) {\n return this.cmp(num) <= 0;\n };\n\n BN.prototype.eqn = function eqn (num) {\n return this.cmpn(num) === 0;\n };\n\n BN.prototype.eq = function eq (num) {\n return this.cmp(num) === 0;\n };\n\n //\n // A reduce context, could be using montgomery or something better, depending\n // on the `m` itself.\n //\n BN.red = function red (num) {\n return new Red(num);\n };\n\n BN.prototype.toRed = function toRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n assert(this.negative === 0, 'red works only with positives');\n return ctx.convertTo(this)._forceRed(ctx);\n };\n\n BN.prototype.fromRed = function fromRed () {\n assert(this.red, 'fromRed works only with numbers in reduction context');\n return this.red.convertFrom(this);\n };\n\n BN.prototype._forceRed = function _forceRed (ctx) {\n this.red = ctx;\n return this;\n };\n\n BN.prototype.forceRed = function forceRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n return this._forceRed(ctx);\n };\n\n BN.prototype.redAdd = function redAdd (num) {\n assert(this.red, 'redAdd works only with red numbers');\n return this.red.add(this, num);\n };\n\n BN.prototype.redIAdd = function redIAdd (num) {\n assert(this.red, 'redIAdd works only with red numbers');\n return this.red.iadd(this, num);\n };\n\n BN.prototype.redSub = function redSub (num) {\n assert(this.red, 'redSub works only with red numbers');\n return this.red.sub(this, num);\n };\n\n BN.prototype.redISub = function redISub (num) {\n assert(this.red, 'redISub works only with red numbers');\n return this.red.isub(this, num);\n };\n\n BN.prototype.redShl = function redShl (num) {\n assert(this.red, 'redShl works only with red numbers');\n return this.red.shl(this, num);\n };\n\n BN.prototype.redMul = function redMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.mul(this, num);\n };\n\n BN.prototype.redIMul = function redIMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.imul(this, num);\n };\n\n BN.prototype.redSqr = function redSqr () {\n assert(this.red, 'redSqr works only with red numbers');\n this.red._verify1(this);\n return this.red.sqr(this);\n };\n\n BN.prototype.redISqr = function redISqr () {\n assert(this.red, 'redISqr works only with red numbers');\n this.red._verify1(this);\n return this.red.isqr(this);\n };\n\n // Square root over p\n BN.prototype.redSqrt = function redSqrt () {\n assert(this.red, 'redSqrt works only with red numbers');\n this.red._verify1(this);\n return this.red.sqrt(this);\n };\n\n BN.prototype.redInvm = function redInvm () {\n assert(this.red, 'redInvm works only with red numbers');\n this.red._verify1(this);\n return this.red.invm(this);\n };\n\n // Return negative clone of `this` % `red modulo`\n BN.prototype.redNeg = function redNeg () {\n assert(this.red, 'redNeg works only with red numbers');\n this.red._verify1(this);\n return this.red.neg(this);\n };\n\n BN.prototype.redPow = function redPow (num) {\n assert(this.red && !num.red, 'redPow(normalNum)');\n this.red._verify1(this);\n return this.red.pow(this, num);\n };\n\n // Prime numbers with efficient reduction\n var primes = {\n k256: null,\n p224: null,\n p192: null,\n p25519: null\n };\n\n // Pseudo-Mersenne prime\n function MPrime (name, p) {\n // P = 2 ^ N - K\n this.name = name;\n this.p = new BN(p, 16);\n this.n = this.p.bitLength();\n this.k = new BN(1).iushln(this.n).isub(this.p);\n\n this.tmp = this._tmp();\n }\n\n MPrime.prototype._tmp = function _tmp () {\n var tmp = new BN(null);\n tmp.words = new Array(Math.ceil(this.n / 13));\n return tmp;\n };\n\n MPrime.prototype.ireduce = function ireduce (num) {\n // Assumes that `num` is less than `P^2`\n // num = HI * (2 ^ N - K) + HI * K + LO = HI * K + LO (mod P)\n var r = num;\n var rlen;\n\n do {\n this.split(r, this.tmp);\n r = this.imulK(r);\n r = r.iadd(this.tmp);\n rlen = r.bitLength();\n } while (rlen > this.n);\n\n var cmp = rlen < this.n ? -1 : r.ucmp(this.p);\n if (cmp === 0) {\n r.words[0] = 0;\n r.length = 1;\n } else if (cmp > 0) {\n r.isub(this.p);\n } else {\n if (r.strip !== undefined) {\n // r is BN v4 instance\n r.strip();\n } else {\n // r is BN v5 instance\n r._strip();\n }\n }\n\n return r;\n };\n\n MPrime.prototype.split = function split (input, out) {\n input.iushrn(this.n, 0, out);\n };\n\n MPrime.prototype.imulK = function imulK (num) {\n return num.imul(this.k);\n };\n\n function K256 () {\n MPrime.call(\n this,\n 'k256',\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f');\n }\n inherits(K256, MPrime);\n\n K256.prototype.split = function split (input, output) {\n // 256 = 9 * 26 + 22\n var mask = 0x3fffff;\n\n var outLen = Math.min(input.length, 9);\n for (var i = 0; i < outLen; i++) {\n output.words[i] = input.words[i];\n }\n output.length = outLen;\n\n if (input.length <= 9) {\n input.words[0] = 0;\n input.length = 1;\n return;\n }\n\n // Shift by 9 limbs\n var prev = input.words[9];\n output.words[output.length++] = prev & mask;\n\n for (i = 10; i < input.length; i++) {\n var next = input.words[i] | 0;\n input.words[i - 10] = ((next & mask) << 4) | (prev >>> 22);\n prev = next;\n }\n prev >>>= 22;\n input.words[i - 10] = prev;\n if (prev === 0 && input.length > 10) {\n input.length -= 10;\n } else {\n input.length -= 9;\n }\n };\n\n K256.prototype.imulK = function imulK (num) {\n // K = 0x1000003d1 = [ 0x40, 0x3d1 ]\n num.words[num.length] = 0;\n num.words[num.length + 1] = 0;\n num.length += 2;\n\n // bounded at: 0x40 * 0x3ffffff + 0x3d0 = 0x100000390\n var lo = 0;\n for (var i = 0; i < num.length; i++) {\n var w = num.words[i] | 0;\n lo += w * 0x3d1;\n num.words[i] = lo & 0x3ffffff;\n lo = w * 0x40 + ((lo / 0x4000000) | 0);\n }\n\n // Fast length reduction\n if (num.words[num.length - 1] === 0) {\n num.length--;\n if (num.words[num.length - 1] === 0) {\n num.length--;\n }\n }\n return num;\n };\n\n function P224 () {\n MPrime.call(\n this,\n 'p224',\n 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001');\n }\n inherits(P224, MPrime);\n\n function P192 () {\n MPrime.call(\n this,\n 'p192',\n 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff');\n }\n inherits(P192, MPrime);\n\n function P25519 () {\n // 2 ^ 255 - 19\n MPrime.call(\n this,\n '25519',\n '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed');\n }\n inherits(P25519, MPrime);\n\n P25519.prototype.imulK = function imulK (num) {\n // K = 0x13\n var carry = 0;\n for (var i = 0; i < num.length; i++) {\n var hi = (num.words[i] | 0) * 0x13 + carry;\n var lo = hi & 0x3ffffff;\n hi >>>= 26;\n\n num.words[i] = lo;\n carry = hi;\n }\n if (carry !== 0) {\n num.words[num.length++] = carry;\n }\n return num;\n };\n\n // Exported mostly for testing purposes, use plain name instead\n BN._prime = function prime (name) {\n // Cached version of prime\n if (primes[name]) return primes[name];\n\n var prime;\n if (name === 'k256') {\n prime = new K256();\n } else if (name === 'p224') {\n prime = new P224();\n } else if (name === 'p192') {\n prime = new P192();\n } else if (name === 'p25519') {\n prime = new P25519();\n } else {\n throw new Error('Unknown prime ' + name);\n }\n primes[name] = prime;\n\n return prime;\n };\n\n //\n // Base reduction engine\n //\n function Red (m) {\n if (typeof m === 'string') {\n var prime = BN._prime(m);\n this.m = prime.p;\n this.prime = prime;\n } else {\n assert(m.gtn(1), 'modulus must be greater than 1');\n this.m = m;\n this.prime = null;\n }\n }\n\n Red.prototype._verify1 = function _verify1 (a) {\n assert(a.negative === 0, 'red works only with positives');\n assert(a.red, 'red works only with red numbers');\n };\n\n Red.prototype._verify2 = function _verify2 (a, b) {\n assert((a.negative | b.negative) === 0, 'red works only with positives');\n assert(a.red && a.red === b.red,\n 'red works only with red numbers');\n };\n\n Red.prototype.imod = function imod (a) {\n if (this.prime) return this.prime.ireduce(a)._forceRed(this);\n return a.umod(this.m)._forceRed(this);\n };\n\n Red.prototype.neg = function neg (a) {\n if (a.isZero()) {\n return a.clone();\n }\n\n return this.m.sub(a)._forceRed(this);\n };\n\n Red.prototype.add = function add (a, b) {\n this._verify2(a, b);\n\n var res = a.add(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.iadd = function iadd (a, b) {\n this._verify2(a, b);\n\n var res = a.iadd(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res;\n };\n\n Red.prototype.sub = function sub (a, b) {\n this._verify2(a, b);\n\n var res = a.sub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.isub = function isub (a, b) {\n this._verify2(a, b);\n\n var res = a.isub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res;\n };\n\n Red.prototype.shl = function shl (a, num) {\n this._verify1(a);\n return this.imod(a.ushln(num));\n };\n\n Red.prototype.imul = function imul (a, b) {\n this._verify2(a, b);\n return this.imod(a.imul(b));\n };\n\n Red.prototype.mul = function mul (a, b) {\n this._verify2(a, b);\n return this.imod(a.mul(b));\n };\n\n Red.prototype.isqr = function isqr (a) {\n return this.imul(a, a.clone());\n };\n\n Red.prototype.sqr = function sqr (a) {\n return this.mul(a, a);\n };\n\n Red.prototype.sqrt = function sqrt (a) {\n if (a.isZero()) return a.clone();\n\n var mod3 = this.m.andln(3);\n assert(mod3 % 2 === 1);\n\n // Fast case\n if (mod3 === 3) {\n var pow = this.m.add(new BN(1)).iushrn(2);\n return this.pow(a, pow);\n }\n\n // Tonelli-Shanks algorithm (Totally unoptimized and slow)\n //\n // Find Q and S, that Q * 2 ^ S = (P - 1)\n var q = this.m.subn(1);\n var s = 0;\n while (!q.isZero() && q.andln(1) === 0) {\n s++;\n q.iushrn(1);\n }\n assert(!q.isZero());\n\n var one = new BN(1).toRed(this);\n var nOne = one.redNeg();\n\n // Find quadratic non-residue\n // NOTE: Max is such because of generalized Riemann hypothesis.\n var lpow = this.m.subn(1).iushrn(1);\n var z = this.m.bitLength();\n z = new BN(2 * z * z).toRed(this);\n\n while (this.pow(z, lpow).cmp(nOne) !== 0) {\n z.redIAdd(nOne);\n }\n\n var c = this.pow(z, q);\n var r = this.pow(a, q.addn(1).iushrn(1));\n var t = this.pow(a, q);\n var m = s;\n while (t.cmp(one) !== 0) {\n var tmp = t;\n for (var i = 0; tmp.cmp(one) !== 0; i++) {\n tmp = tmp.redSqr();\n }\n assert(i < m);\n var b = this.pow(c, new BN(1).iushln(m - i - 1));\n\n r = r.redMul(b);\n c = b.redSqr();\n t = t.redMul(c);\n m = i;\n }\n\n return r;\n };\n\n Red.prototype.invm = function invm (a) {\n var inv = a._invmp(this.m);\n if (inv.negative !== 0) {\n inv.negative = 0;\n return this.imod(inv).redNeg();\n } else {\n return this.imod(inv);\n }\n };\n\n Red.prototype.pow = function pow (a, num) {\n if (num.isZero()) return new BN(1).toRed(this);\n if (num.cmpn(1) === 0) return a.clone();\n\n var windowSize = 4;\n var wnd = new Array(1 << windowSize);\n wnd[0] = new BN(1).toRed(this);\n wnd[1] = a;\n for (var i = 2; i < wnd.length; i++) {\n wnd[i] = this.mul(wnd[i - 1], a);\n }\n\n var res = wnd[0];\n var current = 0;\n var currentLen = 0;\n var start = num.bitLength() % 26;\n if (start === 0) {\n start = 26;\n }\n\n for (i = num.length - 1; i >= 0; i--) {\n var word = num.words[i];\n for (var j = start - 1; j >= 0; j--) {\n var bit = (word >> j) & 1;\n if (res !== wnd[0]) {\n res = this.sqr(res);\n }\n\n if (bit === 0 && current === 0) {\n currentLen = 0;\n continue;\n }\n\n current <<= 1;\n current |= bit;\n currentLen++;\n if (currentLen !== windowSize && (i !== 0 || j !== 0)) continue;\n\n res = this.mul(res, wnd[current]);\n currentLen = 0;\n current = 0;\n }\n start = 26;\n }\n\n return res;\n };\n\n Red.prototype.convertTo = function convertTo (num) {\n var r = num.umod(this.m);\n\n return r === num ? r.clone() : r;\n };\n\n Red.prototype.convertFrom = function convertFrom (num) {\n var res = num.clone();\n res.red = null;\n return res;\n };\n\n //\n // Montgomery method engine\n //\n\n BN.mont = function mont (num) {\n return new Mont(num);\n };\n\n function Mont (m) {\n Red.call(this, m);\n\n this.shift = this.m.bitLength();\n if (this.shift % 26 !== 0) {\n this.shift += 26 - (this.shift % 26);\n }\n\n this.r = new BN(1).iushln(this.shift);\n this.r2 = this.imod(this.r.sqr());\n this.rinv = this.r._invmp(this.m);\n\n this.minv = this.rinv.mul(this.r).isubn(1).div(this.m);\n this.minv = this.minv.umod(this.r);\n this.minv = this.r.sub(this.minv);\n }\n inherits(Mont, Red);\n\n Mont.prototype.convertTo = function convertTo (num) {\n return this.imod(num.ushln(this.shift));\n };\n\n Mont.prototype.convertFrom = function convertFrom (num) {\n var r = this.imod(num.mul(this.rinv));\n r.red = null;\n return r;\n };\n\n Mont.prototype.imul = function imul (a, b) {\n if (a.isZero() || b.isZero()) {\n a.words[0] = 0;\n a.length = 1;\n return a;\n }\n\n var t = a.imul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.mul = function mul (a, b) {\n if (a.isZero() || b.isZero()) return new BN(0)._forceRed(this);\n\n var t = a.mul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.invm = function invm (a) {\n // (AR)^-1 * R^2 = (A^-1 * R^-1) * R^2 = A^-1 * R\n var res = this.imod(a._invmp(this.m).mul(this.r2));\n return res._forceRed(this);\n };\n})(typeof module === 'undefined' || module, this);\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.bowser=t():e.bowser=t()}(this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=90)}({17:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||\"\"},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||\"\"},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case\"NT\":return\"NT\";case\"XP\":return\"XP\";case\"NT 5.0\":return\"2000\";case\"NT 5.1\":return\"XP\";case\"NT 5.2\":return\"2003\";case\"NT 6.0\":return\"Vista\";case\"NT 6.1\":return\"7\";case\"NT 6.2\":return\"8\";case\"NT 6.3\":return\"8.1\";case\"NT 10.0\":return\"10\";default:return}},e.getMacOSVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return\"Leopard\";case 6:return\"Snow Leopard\";case 7:return\"Lion\";case 8:return\"Mountain Lion\";case 9:return\"Mavericks\";case 10:return\"Yosemite\";case 11:return\"El Capitan\";case 12:return\"Sierra\";case 13:return\"High Sierra\";case 14:return\"Mojave\";case 15:return\"Catalina\";default:return}},e.getAndroidVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?\"Cupcake\":1===t[0]&&t[1]>=6?\"Donut\":2===t[0]&&t[1]<2?\"Eclair\":2===t[0]&&2===t[1]?\"Froyo\":2===t[0]&&t[1]>2?\"Gingerbread\":3===t[0]?\"Honeycomb\":4===t[0]&&t[1]<1?\"Ice Cream Sandwich\":4===t[0]&&t[1]<4?\"Jelly Bean\":4===t[0]&&t[1]>=4?\"KitKat\":5===t[0]?\"Lollipop\":6===t[0]?\"Marshmallow\":7===t[0]?\"Nougat\":8===t[0]?\"Oreo\":9===t[0]?\"Pie\":void 0},e.getVersionPrecision=function(e){return e.split(\".\").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),s=e.getVersionPrecision(r),a=Math.max(i,s),o=0,u=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(\".0\");return e.map(n.split(\".\"),(function(e){return new Array(20-e.length).join(\"0\")+e})).reverse()}));for(n&&(o=a-Math.min(i,s)),a-=1;a>=o;){if(u[0][a]>u[1][a])return 1;if(u[0][a]===u[1][a]){if(a===o)return 0;a-=1}else if(u[0][a]1?i-1:0),a=1;a0){var a=Object.keys(r),u=o.default.find(a,(function(e){return t.isOS(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}var c=o.default.find(a,(function(e){return t.isPlatform(e)}));if(c){var f=this.satisfies(r[c]);if(void 0!==f)return f}}if(s>0){var l=Object.keys(i),h=o.default.find(l,(function(e){return t.isBrowser(e,!0)}));if(void 0!==h)return this.compareVersion(i[h])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=o.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if(\"string\"==typeof i)return\">\"===e[0]||\"<\"===e[0]?(r=e.substr(1),\"=\"===e[1]?(n=!0,r=e.substr(2)):t=[],\">\"===e[0]?t.push(1):t.push(-1)):\"=\"===e[0]?r=e.substr(1):\"~\"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(o.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=d,e.exports=t.default},92:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n};var s=/version\\/(\\d+(\\.?_?\\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:\"Googlebot\"},r=i.default.getFirstMatch(/googlebot\\/(\\d+(\\.\\d+))/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\\/|opios/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(/(?:opr|opios)[\\s/](\\S+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:\"Samsung Internet for Android\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:\"NAVER Whale Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:whale)[\\s/](\\d+(?:\\.\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:\"MZ Browser\"},r=i.default.getFirstMatch(/(?:MZBrowser)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:\"Focus\"},r=i.default.getFirstMatch(/(?:focus)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:\"Swing\"},r=i.default.getFirstMatch(/(?:swing)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:\"Opera Coast\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:coast)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\\/\\d+(?:.?_?\\d+)+/i],describe:function(e){var t={name:\"Opera Touch\"},r=i.default.getFirstMatch(/(?:opt)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:\"Yandex Browser\"},r=i.default.getFirstMatch(/(?:yabrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:\"UC Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:ucbrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:\"Maxthon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:\"Epiphany\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:epiphany)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:\"Puffin\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:puffin)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:\"Sleipnir\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:sleipnir)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:\"K-Meleon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:k-meleon)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:\"WeChat\"},r=i.default.getFirstMatch(/(?:micromessenger)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?\"QQ Browser Lite\":\"QQ Browser\"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:\"Internet Explorer\"},r=i.default.getFirstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\\sedg\\//i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getFirstMatch(/\\sedg\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getSecondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:\"Vivaldi\"},r=i.default.getFirstMatch(/vivaldi\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:\"SeaMonkey\"},r=i.default.getFirstMatch(/seamonkey\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:\"Sailfish\"},r=i.default.getFirstMatch(/sailfish\\s?browser\\/(\\d+(\\.\\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:\"Amazon Silk\"},r=i.default.getFirstMatch(/silk\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:\"PhantomJS\"},r=i.default.getFirstMatch(/phantomjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:\"SlimerJS\"},r=i.default.getFirstMatch(/slimerjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t={name:\"BlackBerry\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/blackberry[\\d]+\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:\"WebOS Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:\"Bada\"},r=i.default.getFirstMatch(/dolfin\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:\"Tizen\"},r=i.default.getFirstMatch(/(?:tizen\\s?)?browser\\/(\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:\"QupZilla\"},r=i.default.getFirstMatch(/(?:qupzilla)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:\"Firefox\"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:\"Electron\"},r=i.default.getFirstMatch(/(?:electron)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:\"Miui\"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:\"Chromium\"},r=i.default.getFirstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:\"Chrome\"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:\"Google Search\"},r=i.default.getFirstMatch(/(?:GSA)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:\"Android Browser\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:\"PlayStation 4\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:\"Safari\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search(\"\\\\(\")?/^(.*)\\/(.*)[ \\t]\\((.*)/:/^(.*)\\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/Roku\\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\\/DVP-(\\d+\\.\\d+)/i,e);return{name:s.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\\s?(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \\d\\d?.\\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:s.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(e){var t={name:s.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\\/)(\\d[\\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\\d+(\\.?_?\\d+)+)/i,e).replace(/[_\\s]/g,\".\"),r=i.default.getMacOSVersionName(t),n={name:s.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\\d+([_\\s]\\d+)*) like mac os x/i,e).replace(/[_\\s]/g,\".\");return{name:s.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\\s/-](\\d+(\\.\\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:s.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\\/(\\d+(\\.\\d+)*)/i,e),r={name:s.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\\stablet\\sos\\s(\\d+(\\.\\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\\d+\\/(\\d+([_\\s]\\d+)*)/i,e)||i.default.getFirstMatch(/\\bbb(\\d+)/i,e);return{name:s.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\\/(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:s.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:s.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/googlebot/i],describe:function(){return{type:\"bot\",vendor:\"Google\"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&\"Nova\",r={type:s.PLATFORMS_MAP.mobile,vendor:\"Huawei\"};return t&&(r.model=t),r}},{test:[/nexus\\s*(?:7|8|9|10).*/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Nexus\"}}},{test:[/ipad/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/kftt build/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\",model:\"Kindle Fire HD 7\"}}},{test:[/silk/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:s.PLATFORMS_MAP.mobile,vendor:\"Apple\",model:t}}},{test:[/nexus\\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Nexus\"}}},{test:[/[^-]mobi/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"blackberry\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"BlackBerry\"}}},{test:function(e){return\"bada\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"windows phone\"===e.getBrowserName()},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Microsoft\"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(\".\")[0]);return\"android\"===e.getOSName(!0)&&t>=3},describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){return\"android\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"macos\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop,vendor:\"Apple\"}}},{test:function(e){return\"windows\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"linux\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"playstation 4\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}},{test:function(e){return\"roku\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:function(e){return\"microsoft edge\"===e.getBrowserName(!0)},describe:function(e){if(/\\sedg\\//i.test(e))return{name:s.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\\/(\\d+(\\.?_?\\d+)+)/i,e);return{name:s.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:s.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:s.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:s.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\\/537\\.36/i],describe:function(){return{name:s.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:s.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})}));","var r;\n\nmodule.exports = function rand(len) {\n if (!r)\n r = new Rand(null);\n\n return r.generate(len);\n};\n\nfunction Rand(rand) {\n this.rand = rand;\n}\nmodule.exports.Rand = Rand;\n\nRand.prototype.generate = function generate(len) {\n return this._rand(len);\n};\n\n// Emulate crypto API using randy\nRand.prototype._rand = function _rand(n) {\n if (this.rand.getBytes)\n return this.rand.getBytes(n);\n\n var res = new Uint8Array(n);\n for (var i = 0; i < res.length; i++)\n res[i] = this.rand.getByte();\n return res;\n};\n\nif (typeof self === 'object') {\n if (self.crypto && self.crypto.getRandomValues) {\n // Modern browsers\n Rand.prototype._rand = function _rand(n) {\n var arr = new Uint8Array(n);\n self.crypto.getRandomValues(arr);\n return arr;\n };\n } else if (self.msCrypto && self.msCrypto.getRandomValues) {\n // IE\n Rand.prototype._rand = function _rand(n) {\n var arr = new Uint8Array(n);\n self.msCrypto.getRandomValues(arr);\n return arr;\n };\n\n // Safari's WebWorkers do not have `crypto`\n } else if (typeof window === 'object') {\n // Old junk\n Rand.prototype._rand = function() {\n throw new Error('Not implemented yet');\n };\n }\n} else {\n // Node.js or Web worker with no crypto support\n try {\n var crypto = require('crypto');\n if (typeof crypto.randomBytes !== 'function')\n throw new Error('Not supported');\n\n Rand.prototype._rand = function _rand(n) {\n return crypto.randomBytes(n);\n };\n } catch (e) {\n }\n}\n","var basex = require('base-x')\nvar ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'\n\nmodule.exports = basex(ALPHABET)\n","'use strict'\n\nvar base58 = require('bs58')\nvar Buffer = require('safe-buffer').Buffer\n\nmodule.exports = function (checksumFn) {\n // Encode a buffer as a base58-check encoded string\n function encode (payload) {\n var checksum = checksumFn(payload)\n\n return base58.encode(Buffer.concat([\n payload,\n checksum\n ], payload.length + 4))\n }\n\n function decodeRaw (buffer) {\n var payload = buffer.slice(0, -4)\n var checksum = buffer.slice(-4)\n var newChecksum = checksumFn(payload)\n\n if (checksum[0] ^ newChecksum[0] |\n checksum[1] ^ newChecksum[1] |\n checksum[2] ^ newChecksum[2] |\n checksum[3] ^ newChecksum[3]) return\n\n return payload\n }\n\n // Decode a base58-check encoded string to a buffer, no result if checksum is wrong\n function decodeUnsafe (string) {\n var buffer = base58.decodeUnsafe(string)\n if (!buffer) return\n\n return decodeRaw(buffer)\n }\n\n function decode (string) {\n var buffer = base58.decode(string)\n var payload = decodeRaw(buffer, checksumFn)\n if (!payload) throw new Error('Invalid checksum')\n return payload\n }\n\n return {\n encode: encode,\n decode: decode,\n decodeUnsafe: decodeUnsafe\n }\n}\n","'use strict'\n\nvar createHash = require('create-hash')\nvar bs58checkBase = require('./base')\n\n// SHA256(SHA256(buffer))\nfunction sha256x2 (buffer) {\n var tmp = createHash('sha256').update(buffer).digest()\n return createHash('sha256').update(tmp).digest()\n}\n\nmodule.exports = bs58checkBase(sha256x2)\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return ''\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\n}\n","var charenc = {\n // UTF-8 encoding\n utf8: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n return charenc.bin.stringToBytes(unescape(encodeURIComponent(str)));\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n return decodeURIComponent(escape(charenc.bin.bytesToString(bytes)));\n }\n },\n\n // Binary encoding\n bin: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n for (var bytes = [], i = 0; i < str.length; i++)\n bytes.push(str.charCodeAt(i) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n for (var str = [], i = 0; i < bytes.length; i++)\n str.push(String.fromCharCode(bytes[i]));\n return str.join('');\n }\n }\n};\n\nmodule.exports = charenc;\n","var Buffer = require('safe-buffer').Buffer\nvar Transform = require('stream').Transform\nvar StringDecoder = require('string_decoder').StringDecoder\nvar inherits = require('inherits')\n\nfunction CipherBase (hashMode) {\n Transform.call(this)\n this.hashMode = typeof hashMode === 'string'\n if (this.hashMode) {\n this[hashMode] = this._finalOrDigest\n } else {\n this.final = this._finalOrDigest\n }\n if (this._final) {\n this.__final = this._final\n this._final = null\n }\n this._decoder = null\n this._encoding = null\n}\ninherits(CipherBase, Transform)\n\nCipherBase.prototype.update = function (data, inputEnc, outputEnc) {\n if (typeof data === 'string') {\n data = Buffer.from(data, inputEnc)\n }\n\n var outData = this._update(data)\n if (this.hashMode) return this\n\n if (outputEnc) {\n outData = this._toString(outData, outputEnc)\n }\n\n return outData\n}\n\nCipherBase.prototype.setAutoPadding = function () {}\nCipherBase.prototype.getAuthTag = function () {\n throw new Error('trying to get auth tag in unsupported state')\n}\n\nCipherBase.prototype.setAuthTag = function () {\n throw new Error('trying to set auth tag in unsupported state')\n}\n\nCipherBase.prototype.setAAD = function () {\n throw new Error('trying to set aad in unsupported state')\n}\n\nCipherBase.prototype._transform = function (data, _, next) {\n var err\n try {\n if (this.hashMode) {\n this._update(data)\n } else {\n this.push(this._update(data))\n }\n } catch (e) {\n err = e\n } finally {\n next(err)\n }\n}\nCipherBase.prototype._flush = function (done) {\n var err\n try {\n this.push(this.__final())\n } catch (e) {\n err = e\n }\n\n done(err)\n}\nCipherBase.prototype._finalOrDigest = function (outputEnc) {\n var outData = this.__final() || Buffer.alloc(0)\n if (outputEnc) {\n outData = this._toString(outData, outputEnc, true)\n }\n return outData\n}\n\nCipherBase.prototype._toString = function (value, enc, fin) {\n if (!this._decoder) {\n this._decoder = new StringDecoder(enc)\n this._encoding = enc\n }\n\n if (this._encoding !== enc) throw new Error('can\\'t switch encodings')\n\n var out = this._decoder.write(value)\n if (fin) {\n out += this._decoder.end()\n }\n\n return out\n}\n\nmodule.exports = CipherBase\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","'use strict'\nvar inherits = require('inherits')\nvar MD5 = require('md5.js')\nvar RIPEMD160 = require('ripemd160')\nvar sha = require('sha.js')\nvar Base = require('cipher-base')\n\nfunction Hash (hash) {\n Base.call(this, 'digest')\n\n this._hash = hash\n}\n\ninherits(Hash, Base)\n\nHash.prototype._update = function (data) {\n this._hash.update(data)\n}\n\nHash.prototype._final = function () {\n return this._hash.digest()\n}\n\nmodule.exports = function createHash (alg) {\n alg = alg.toLowerCase()\n if (alg === 'md5') return new MD5()\n if (alg === 'rmd160' || alg === 'ripemd160') return new RIPEMD160()\n\n return new Hash(sha(alg))\n}\n","var MD5 = require('md5.js')\n\nmodule.exports = function (buffer) {\n return new MD5().update(buffer).digest()\n}\n","(function() {\n var base64map\n = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n\n crypt = {\n // Bit-wise rotation left\n rotl: function(n, b) {\n return (n << b) | (n >>> (32 - b));\n },\n\n // Bit-wise rotation right\n rotr: function(n, b) {\n return (n << (32 - b)) | (n >>> b);\n },\n\n // Swap big-endian to little-endian and vice versa\n endian: function(n) {\n // If number given, swap endian\n if (n.constructor == Number) {\n return crypt.rotl(n, 8) & 0x00FF00FF | crypt.rotl(n, 24) & 0xFF00FF00;\n }\n\n // Else, assume array and swap all items\n for (var i = 0; i < n.length; i++)\n n[i] = crypt.endian(n[i]);\n return n;\n },\n\n // Generate an array of any length of random bytes\n randomBytes: function(n) {\n for (var bytes = []; n > 0; n--)\n bytes.push(Math.floor(Math.random() * 256));\n return bytes;\n },\n\n // Convert a byte array to big-endian 32-bit words\n bytesToWords: function(bytes) {\n for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)\n words[b >>> 5] |= bytes[i] << (24 - b % 32);\n return words;\n },\n\n // Convert big-endian 32-bit words to a byte array\n wordsToBytes: function(words) {\n for (var bytes = [], b = 0; b < words.length * 32; b += 8)\n bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a hex string\n bytesToHex: function(bytes) {\n for (var hex = [], i = 0; i < bytes.length; i++) {\n hex.push((bytes[i] >>> 4).toString(16));\n hex.push((bytes[i] & 0xF).toString(16));\n }\n return hex.join('');\n },\n\n // Convert a hex string to a byte array\n hexToBytes: function(hex) {\n for (var bytes = [], c = 0; c < hex.length; c += 2)\n bytes.push(parseInt(hex.substr(c, 2), 16));\n return bytes;\n },\n\n // Convert a byte array to a base-64 string\n bytesToBase64: function(bytes) {\n for (var base64 = [], i = 0; i < bytes.length; i += 3) {\n var triplet = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];\n for (var j = 0; j < 4; j++)\n if (i * 8 + j * 6 <= bytes.length * 8)\n base64.push(base64map.charAt((triplet >>> 6 * (3 - j)) & 0x3F));\n else\n base64.push('=');\n }\n return base64.join('');\n },\n\n // Convert a base-64 string to a byte array\n base64ToBytes: function(base64) {\n // Remove non-base-64 characters\n base64 = base64.replace(/[^A-Z0-9+\\/]/ig, '');\n\n for (var bytes = [], i = 0, imod4 = 0; i < base64.length;\n imod4 = ++i % 4) {\n if (imod4 == 0) continue;\n bytes.push(((base64map.indexOf(base64.charAt(i - 1))\n & (Math.pow(2, -2 * imod4 + 8) - 1)) << (imod4 * 2))\n | (base64map.indexOf(base64.charAt(i)) >>> (6 - imod4 * 2)));\n }\n return bytes;\n }\n };\n\n module.exports = crypt;\n})();\n","'use strict';\n\nvar isMergeableObject = function isMergeableObject(value) {\n\treturn isNonNullObject(value)\n\t\t&& !isSpecial(value)\n};\n\nfunction isNonNullObject(value) {\n\treturn !!value && typeof value === 'object'\n}\n\nfunction isSpecial(value) {\n\tvar stringValue = Object.prototype.toString.call(value);\n\n\treturn stringValue === '[object RegExp]'\n\t\t|| stringValue === '[object Date]'\n\t\t|| isReactElement(value)\n}\n\n// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n\treturn value.$$typeof === REACT_ELEMENT_TYPE\n}\n\nfunction emptyTarget(val) {\n\treturn Array.isArray(val) ? [] : {}\n}\n\nfunction cloneUnlessOtherwiseSpecified(value, options) {\n\treturn (options.clone !== false && options.isMergeableObject(value))\n\t\t? deepmerge(emptyTarget(value), value, options)\n\t\t: value\n}\n\nfunction defaultArrayMerge(target, source, options) {\n\treturn target.concat(source).map(function(element) {\n\t\treturn cloneUnlessOtherwiseSpecified(element, options)\n\t})\n}\n\nfunction getMergeFunction(key, options) {\n\tif (!options.customMerge) {\n\t\treturn deepmerge\n\t}\n\tvar customMerge = options.customMerge(key);\n\treturn typeof customMerge === 'function' ? customMerge : deepmerge\n}\n\nfunction getEnumerableOwnPropertySymbols(target) {\n\treturn Object.getOwnPropertySymbols\n\t\t? Object.getOwnPropertySymbols(target).filter(function(symbol) {\n\t\t\treturn Object.propertyIsEnumerable.call(target, symbol)\n\t\t})\n\t\t: []\n}\n\nfunction getKeys(target) {\n\treturn Object.keys(target).concat(getEnumerableOwnPropertySymbols(target))\n}\n\nfunction propertyIsOnObject(object, property) {\n\ttry {\n\t\treturn property in object\n\t} catch(_) {\n\t\treturn false\n\t}\n}\n\n// Protects from prototype poisoning and unexpected merging up the prototype chain.\nfunction propertyIsUnsafe(target, key) {\n\treturn propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,\n\t\t&& !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,\n\t\t\t&& Object.propertyIsEnumerable.call(target, key)) // and also unsafe if they're nonenumerable.\n}\n\nfunction mergeObject(target, source, options) {\n\tvar destination = {};\n\tif (options.isMergeableObject(target)) {\n\t\tgetKeys(target).forEach(function(key) {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(target[key], options);\n\t\t});\n\t}\n\tgetKeys(source).forEach(function(key) {\n\t\tif (propertyIsUnsafe(target, key)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {\n\t\t\tdestination[key] = getMergeFunction(key, options)(target[key], source[key], options);\n\t\t} else {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(source[key], options);\n\t\t}\n\t});\n\treturn destination\n}\n\nfunction deepmerge(target, source, options) {\n\toptions = options || {};\n\toptions.arrayMerge = options.arrayMerge || defaultArrayMerge;\n\toptions.isMergeableObject = options.isMergeableObject || isMergeableObject;\n\t// cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()\n\t// implementations can use it. The caller may not replace it.\n\toptions.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;\n\n\tvar sourceIsArray = Array.isArray(source);\n\tvar targetIsArray = Array.isArray(target);\n\tvar sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n\tif (!sourceAndTargetTypesMatch) {\n\t\treturn cloneUnlessOtherwiseSpecified(source, options)\n\t} else if (sourceIsArray) {\n\t\treturn options.arrayMerge(target, source, options)\n\t} else {\n\t\treturn mergeObject(target, source, options)\n\t}\n}\n\ndeepmerge.all = function deepmergeAll(array, options) {\n\tif (!Array.isArray(array)) {\n\t\tthrow new Error('first argument should be an array')\n\t}\n\n\treturn array.reduce(function(prev, next) {\n\t\treturn deepmerge(prev, next, options)\n\t}, {})\n};\n\nvar deepmerge_1 = deepmerge;\n\nmodule.exports = deepmerge_1;\n","'use strict';\n\nvar elliptic = exports;\n\nelliptic.version = require('../package.json').version;\nelliptic.utils = require('./elliptic/utils');\nelliptic.rand = require('brorand');\nelliptic.curve = require('./elliptic/curve');\nelliptic.curves = require('./elliptic/curves');\n\n// Protocols\nelliptic.ec = require('./elliptic/ec');\nelliptic.eddsa = require('./elliptic/eddsa');\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar getNAF = utils.getNAF;\nvar getJSF = utils.getJSF;\nvar assert = utils.assert;\n\nfunction BaseCurve(type, conf) {\n this.type = type;\n this.p = new BN(conf.p, 16);\n\n // Use Montgomery, when there is no fast reduction for the prime\n this.red = conf.prime ? BN.red(conf.prime) : BN.mont(this.p);\n\n // Useful for many curves\n this.zero = new BN(0).toRed(this.red);\n this.one = new BN(1).toRed(this.red);\n this.two = new BN(2).toRed(this.red);\n\n // Curve configuration, optional\n this.n = conf.n && new BN(conf.n, 16);\n this.g = conf.g && this.pointFromJSON(conf.g, conf.gRed);\n\n // Temporary arrays\n this._wnafT1 = new Array(4);\n this._wnafT2 = new Array(4);\n this._wnafT3 = new Array(4);\n this._wnafT4 = new Array(4);\n\n this._bitLength = this.n ? this.n.bitLength() : 0;\n\n // Generalized Greg Maxwell's trick\n var adjustCount = this.n && this.p.div(this.n);\n if (!adjustCount || adjustCount.cmpn(100) > 0) {\n this.redN = null;\n } else {\n this._maxwellTrick = true;\n this.redN = this.n.toRed(this.red);\n }\n}\nmodule.exports = BaseCurve;\n\nBaseCurve.prototype.point = function point() {\n throw new Error('Not implemented');\n};\n\nBaseCurve.prototype.validate = function validate() {\n throw new Error('Not implemented');\n};\n\nBaseCurve.prototype._fixedNafMul = function _fixedNafMul(p, k) {\n assert(p.precomputed);\n var doubles = p._getDoubles();\n\n var naf = getNAF(k, 1, this._bitLength);\n var I = (1 << (doubles.step + 1)) - (doubles.step % 2 === 0 ? 2 : 1);\n I /= 3;\n\n // Translate into more windowed form\n var repr = [];\n var j;\n var nafW;\n for (j = 0; j < naf.length; j += doubles.step) {\n nafW = 0;\n for (var l = j + doubles.step - 1; l >= j; l--)\n nafW = (nafW << 1) + naf[l];\n repr.push(nafW);\n }\n\n var a = this.jpoint(null, null, null);\n var b = this.jpoint(null, null, null);\n for (var i = I; i > 0; i--) {\n for (j = 0; j < repr.length; j++) {\n nafW = repr[j];\n if (nafW === i)\n b = b.mixedAdd(doubles.points[j]);\n else if (nafW === -i)\n b = b.mixedAdd(doubles.points[j].neg());\n }\n a = a.add(b);\n }\n return a.toP();\n};\n\nBaseCurve.prototype._wnafMul = function _wnafMul(p, k) {\n var w = 4;\n\n // Precompute window\n var nafPoints = p._getNAFPoints(w);\n w = nafPoints.wnd;\n var wnd = nafPoints.points;\n\n // Get NAF form\n var naf = getNAF(k, w, this._bitLength);\n\n // Add `this`*(N+1) for every w-NAF index\n var acc = this.jpoint(null, null, null);\n for (var i = naf.length - 1; i >= 0; i--) {\n // Count zeroes\n for (var l = 0; i >= 0 && naf[i] === 0; i--)\n l++;\n if (i >= 0)\n l++;\n acc = acc.dblp(l);\n\n if (i < 0)\n break;\n var z = naf[i];\n assert(z !== 0);\n if (p.type === 'affine') {\n // J +- P\n if (z > 0)\n acc = acc.mixedAdd(wnd[(z - 1) >> 1]);\n else\n acc = acc.mixedAdd(wnd[(-z - 1) >> 1].neg());\n } else {\n // J +- J\n if (z > 0)\n acc = acc.add(wnd[(z - 1) >> 1]);\n else\n acc = acc.add(wnd[(-z - 1) >> 1].neg());\n }\n }\n return p.type === 'affine' ? acc.toP() : acc;\n};\n\nBaseCurve.prototype._wnafMulAdd = function _wnafMulAdd(defW,\n points,\n coeffs,\n len,\n jacobianResult) {\n var wndWidth = this._wnafT1;\n var wnd = this._wnafT2;\n var naf = this._wnafT3;\n\n // Fill all arrays\n var max = 0;\n var i;\n var j;\n var p;\n for (i = 0; i < len; i++) {\n p = points[i];\n var nafPoints = p._getNAFPoints(defW);\n wndWidth[i] = nafPoints.wnd;\n wnd[i] = nafPoints.points;\n }\n\n // Comb small window NAFs\n for (i = len - 1; i >= 1; i -= 2) {\n var a = i - 1;\n var b = i;\n if (wndWidth[a] !== 1 || wndWidth[b] !== 1) {\n naf[a] = getNAF(coeffs[a], wndWidth[a], this._bitLength);\n naf[b] = getNAF(coeffs[b], wndWidth[b], this._bitLength);\n max = Math.max(naf[a].length, max);\n max = Math.max(naf[b].length, max);\n continue;\n }\n\n var comb = [\n points[a], /* 1 */\n null, /* 3 */\n null, /* 5 */\n points[b], /* 7 */\n ];\n\n // Try to avoid Projective points, if possible\n if (points[a].y.cmp(points[b].y) === 0) {\n comb[1] = points[a].add(points[b]);\n comb[2] = points[a].toJ().mixedAdd(points[b].neg());\n } else if (points[a].y.cmp(points[b].y.redNeg()) === 0) {\n comb[1] = points[a].toJ().mixedAdd(points[b]);\n comb[2] = points[a].add(points[b].neg());\n } else {\n comb[1] = points[a].toJ().mixedAdd(points[b]);\n comb[2] = points[a].toJ().mixedAdd(points[b].neg());\n }\n\n var index = [\n -3, /* -1 -1 */\n -1, /* -1 0 */\n -5, /* -1 1 */\n -7, /* 0 -1 */\n 0, /* 0 0 */\n 7, /* 0 1 */\n 5, /* 1 -1 */\n 1, /* 1 0 */\n 3, /* 1 1 */\n ];\n\n var jsf = getJSF(coeffs[a], coeffs[b]);\n max = Math.max(jsf[0].length, max);\n naf[a] = new Array(max);\n naf[b] = new Array(max);\n for (j = 0; j < max; j++) {\n var ja = jsf[0][j] | 0;\n var jb = jsf[1][j] | 0;\n\n naf[a][j] = index[(ja + 1) * 3 + (jb + 1)];\n naf[b][j] = 0;\n wnd[a] = comb;\n }\n }\n\n var acc = this.jpoint(null, null, null);\n var tmp = this._wnafT4;\n for (i = max; i >= 0; i--) {\n var k = 0;\n\n while (i >= 0) {\n var zero = true;\n for (j = 0; j < len; j++) {\n tmp[j] = naf[j][i] | 0;\n if (tmp[j] !== 0)\n zero = false;\n }\n if (!zero)\n break;\n k++;\n i--;\n }\n if (i >= 0)\n k++;\n acc = acc.dblp(k);\n if (i < 0)\n break;\n\n for (j = 0; j < len; j++) {\n var z = tmp[j];\n p;\n if (z === 0)\n continue;\n else if (z > 0)\n p = wnd[j][(z - 1) >> 1];\n else if (z < 0)\n p = wnd[j][(-z - 1) >> 1].neg();\n\n if (p.type === 'affine')\n acc = acc.mixedAdd(p);\n else\n acc = acc.add(p);\n }\n }\n // Zeroify references\n for (i = 0; i < len; i++)\n wnd[i] = null;\n\n if (jacobianResult)\n return acc;\n else\n return acc.toP();\n};\n\nfunction BasePoint(curve, type) {\n this.curve = curve;\n this.type = type;\n this.precomputed = null;\n}\nBaseCurve.BasePoint = BasePoint;\n\nBasePoint.prototype.eq = function eq(/*other*/) {\n throw new Error('Not implemented');\n};\n\nBasePoint.prototype.validate = function validate() {\n return this.curve.validate(this);\n};\n\nBaseCurve.prototype.decodePoint = function decodePoint(bytes, enc) {\n bytes = utils.toArray(bytes, enc);\n\n var len = this.p.byteLength();\n\n // uncompressed, hybrid-odd, hybrid-even\n if ((bytes[0] === 0x04 || bytes[0] === 0x06 || bytes[0] === 0x07) &&\n bytes.length - 1 === 2 * len) {\n if (bytes[0] === 0x06)\n assert(bytes[bytes.length - 1] % 2 === 0);\n else if (bytes[0] === 0x07)\n assert(bytes[bytes.length - 1] % 2 === 1);\n\n var res = this.point(bytes.slice(1, 1 + len),\n bytes.slice(1 + len, 1 + 2 * len));\n\n return res;\n } else if ((bytes[0] === 0x02 || bytes[0] === 0x03) &&\n bytes.length - 1 === len) {\n return this.pointFromX(bytes.slice(1, 1 + len), bytes[0] === 0x03);\n }\n throw new Error('Unknown point format');\n};\n\nBasePoint.prototype.encodeCompressed = function encodeCompressed(enc) {\n return this.encode(enc, true);\n};\n\nBasePoint.prototype._encode = function _encode(compact) {\n var len = this.curve.p.byteLength();\n var x = this.getX().toArray('be', len);\n\n if (compact)\n return [ this.getY().isEven() ? 0x02 : 0x03 ].concat(x);\n\n return [ 0x04 ].concat(x, this.getY().toArray('be', len));\n};\n\nBasePoint.prototype.encode = function encode(enc, compact) {\n return utils.encode(this._encode(compact), enc);\n};\n\nBasePoint.prototype.precompute = function precompute(power) {\n if (this.precomputed)\n return this;\n\n var precomputed = {\n doubles: null,\n naf: null,\n beta: null,\n };\n precomputed.naf = this._getNAFPoints(8);\n precomputed.doubles = this._getDoubles(4, power);\n precomputed.beta = this._getBeta();\n this.precomputed = precomputed;\n\n return this;\n};\n\nBasePoint.prototype._hasDoubles = function _hasDoubles(k) {\n if (!this.precomputed)\n return false;\n\n var doubles = this.precomputed.doubles;\n if (!doubles)\n return false;\n\n return doubles.points.length >= Math.ceil((k.bitLength() + 1) / doubles.step);\n};\n\nBasePoint.prototype._getDoubles = function _getDoubles(step, power) {\n if (this.precomputed && this.precomputed.doubles)\n return this.precomputed.doubles;\n\n var doubles = [ this ];\n var acc = this;\n for (var i = 0; i < power; i += step) {\n for (var j = 0; j < step; j++)\n acc = acc.dbl();\n doubles.push(acc);\n }\n return {\n step: step,\n points: doubles,\n };\n};\n\nBasePoint.prototype._getNAFPoints = function _getNAFPoints(wnd) {\n if (this.precomputed && this.precomputed.naf)\n return this.precomputed.naf;\n\n var res = [ this ];\n var max = (1 << wnd) - 1;\n var dbl = max === 1 ? null : this.dbl();\n for (var i = 1; i < max; i++)\n res[i] = res[i - 1].add(dbl);\n return {\n wnd: wnd,\n points: res,\n };\n};\n\nBasePoint.prototype._getBeta = function _getBeta() {\n return null;\n};\n\nBasePoint.prototype.dblp = function dblp(k) {\n var r = this;\n for (var i = 0; i < k; i++)\n r = r.dbl();\n return r;\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar BN = require('bn.js');\nvar inherits = require('inherits');\nvar Base = require('./base');\n\nvar assert = utils.assert;\n\nfunction EdwardsCurve(conf) {\n // NOTE: Important as we are creating point in Base.call()\n this.twisted = (conf.a | 0) !== 1;\n this.mOneA = this.twisted && (conf.a | 0) === -1;\n this.extended = this.mOneA;\n\n Base.call(this, 'edwards', conf);\n\n this.a = new BN(conf.a, 16).umod(this.red.m);\n this.a = this.a.toRed(this.red);\n this.c = new BN(conf.c, 16).toRed(this.red);\n this.c2 = this.c.redSqr();\n this.d = new BN(conf.d, 16).toRed(this.red);\n this.dd = this.d.redAdd(this.d);\n\n assert(!this.twisted || this.c.fromRed().cmpn(1) === 0);\n this.oneC = (conf.c | 0) === 1;\n}\ninherits(EdwardsCurve, Base);\nmodule.exports = EdwardsCurve;\n\nEdwardsCurve.prototype._mulA = function _mulA(num) {\n if (this.mOneA)\n return num.redNeg();\n else\n return this.a.redMul(num);\n};\n\nEdwardsCurve.prototype._mulC = function _mulC(num) {\n if (this.oneC)\n return num;\n else\n return this.c.redMul(num);\n};\n\n// Just for compatibility with Short curve\nEdwardsCurve.prototype.jpoint = function jpoint(x, y, z, t) {\n return this.point(x, y, z, t);\n};\n\nEdwardsCurve.prototype.pointFromX = function pointFromX(x, odd) {\n x = new BN(x, 16);\n if (!x.red)\n x = x.toRed(this.red);\n\n var x2 = x.redSqr();\n var rhs = this.c2.redSub(this.a.redMul(x2));\n var lhs = this.one.redSub(this.c2.redMul(this.d).redMul(x2));\n\n var y2 = rhs.redMul(lhs.redInvm());\n var y = y2.redSqrt();\n if (y.redSqr().redSub(y2).cmp(this.zero) !== 0)\n throw new Error('invalid point');\n\n var isOdd = y.fromRed().isOdd();\n if (odd && !isOdd || !odd && isOdd)\n y = y.redNeg();\n\n return this.point(x, y);\n};\n\nEdwardsCurve.prototype.pointFromY = function pointFromY(y, odd) {\n y = new BN(y, 16);\n if (!y.red)\n y = y.toRed(this.red);\n\n // x^2 = (y^2 - c^2) / (c^2 d y^2 - a)\n var y2 = y.redSqr();\n var lhs = y2.redSub(this.c2);\n var rhs = y2.redMul(this.d).redMul(this.c2).redSub(this.a);\n var x2 = lhs.redMul(rhs.redInvm());\n\n if (x2.cmp(this.zero) === 0) {\n if (odd)\n throw new Error('invalid point');\n else\n return this.point(this.zero, y);\n }\n\n var x = x2.redSqrt();\n if (x.redSqr().redSub(x2).cmp(this.zero) !== 0)\n throw new Error('invalid point');\n\n if (x.fromRed().isOdd() !== odd)\n x = x.redNeg();\n\n return this.point(x, y);\n};\n\nEdwardsCurve.prototype.validate = function validate(point) {\n if (point.isInfinity())\n return true;\n\n // Curve: A * X^2 + Y^2 = C^2 * (1 + D * X^2 * Y^2)\n point.normalize();\n\n var x2 = point.x.redSqr();\n var y2 = point.y.redSqr();\n var lhs = x2.redMul(this.a).redAdd(y2);\n var rhs = this.c2.redMul(this.one.redAdd(this.d.redMul(x2).redMul(y2)));\n\n return lhs.cmp(rhs) === 0;\n};\n\nfunction Point(curve, x, y, z, t) {\n Base.BasePoint.call(this, curve, 'projective');\n if (x === null && y === null && z === null) {\n this.x = this.curve.zero;\n this.y = this.curve.one;\n this.z = this.curve.one;\n this.t = this.curve.zero;\n this.zOne = true;\n } else {\n this.x = new BN(x, 16);\n this.y = new BN(y, 16);\n this.z = z ? new BN(z, 16) : this.curve.one;\n this.t = t && new BN(t, 16);\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.y.red)\n this.y = this.y.toRed(this.curve.red);\n if (!this.z.red)\n this.z = this.z.toRed(this.curve.red);\n if (this.t && !this.t.red)\n this.t = this.t.toRed(this.curve.red);\n this.zOne = this.z === this.curve.one;\n\n // Use extended coordinates\n if (this.curve.extended && !this.t) {\n this.t = this.x.redMul(this.y);\n if (!this.zOne)\n this.t = this.t.redMul(this.z.redInvm());\n }\n }\n}\ninherits(Point, Base.BasePoint);\n\nEdwardsCurve.prototype.pointFromJSON = function pointFromJSON(obj) {\n return Point.fromJSON(this, obj);\n};\n\nEdwardsCurve.prototype.point = function point(x, y, z, t) {\n return new Point(this, x, y, z, t);\n};\n\nPoint.fromJSON = function fromJSON(curve, obj) {\n return new Point(curve, obj[0], obj[1], obj[2]);\n};\n\nPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nPoint.prototype.isInfinity = function isInfinity() {\n // XXX This code assumes that zero is always zero in red\n return this.x.cmpn(0) === 0 &&\n (this.y.cmp(this.z) === 0 ||\n (this.zOne && this.y.cmp(this.curve.c) === 0));\n};\n\nPoint.prototype._extDbl = function _extDbl() {\n // hyperelliptic.org/EFD/g1p/auto-twisted-extended-1.html\n // #doubling-dbl-2008-hwcd\n // 4M + 4S\n\n // A = X1^2\n var a = this.x.redSqr();\n // B = Y1^2\n var b = this.y.redSqr();\n // C = 2 * Z1^2\n var c = this.z.redSqr();\n c = c.redIAdd(c);\n // D = a * A\n var d = this.curve._mulA(a);\n // E = (X1 + Y1)^2 - A - B\n var e = this.x.redAdd(this.y).redSqr().redISub(a).redISub(b);\n // G = D + B\n var g = d.redAdd(b);\n // F = G - C\n var f = g.redSub(c);\n // H = D - B\n var h = d.redSub(b);\n // X3 = E * F\n var nx = e.redMul(f);\n // Y3 = G * H\n var ny = g.redMul(h);\n // T3 = E * H\n var nt = e.redMul(h);\n // Z3 = F * G\n var nz = f.redMul(g);\n return this.curve.point(nx, ny, nz, nt);\n};\n\nPoint.prototype._projDbl = function _projDbl() {\n // hyperelliptic.org/EFD/g1p/auto-twisted-projective.html\n // #doubling-dbl-2008-bbjlp\n // #doubling-dbl-2007-bl\n // and others\n // Generally 3M + 4S or 2M + 4S\n\n // B = (X1 + Y1)^2\n var b = this.x.redAdd(this.y).redSqr();\n // C = X1^2\n var c = this.x.redSqr();\n // D = Y1^2\n var d = this.y.redSqr();\n\n var nx;\n var ny;\n var nz;\n var e;\n var h;\n var j;\n if (this.curve.twisted) {\n // E = a * C\n e = this.curve._mulA(c);\n // F = E + D\n var f = e.redAdd(d);\n if (this.zOne) {\n // X3 = (B - C - D) * (F - 2)\n nx = b.redSub(c).redSub(d).redMul(f.redSub(this.curve.two));\n // Y3 = F * (E - D)\n ny = f.redMul(e.redSub(d));\n // Z3 = F^2 - 2 * F\n nz = f.redSqr().redSub(f).redSub(f);\n } else {\n // H = Z1^2\n h = this.z.redSqr();\n // J = F - 2 * H\n j = f.redSub(h).redISub(h);\n // X3 = (B-C-D)*J\n nx = b.redSub(c).redISub(d).redMul(j);\n // Y3 = F * (E - D)\n ny = f.redMul(e.redSub(d));\n // Z3 = F * J\n nz = f.redMul(j);\n }\n } else {\n // E = C + D\n e = c.redAdd(d);\n // H = (c * Z1)^2\n h = this.curve._mulC(this.z).redSqr();\n // J = E - 2 * H\n j = e.redSub(h).redSub(h);\n // X3 = c * (B - E) * J\n nx = this.curve._mulC(b.redISub(e)).redMul(j);\n // Y3 = c * E * (C - D)\n ny = this.curve._mulC(e).redMul(c.redISub(d));\n // Z3 = E * J\n nz = e.redMul(j);\n }\n return this.curve.point(nx, ny, nz);\n};\n\nPoint.prototype.dbl = function dbl() {\n if (this.isInfinity())\n return this;\n\n // Double in extended coordinates\n if (this.curve.extended)\n return this._extDbl();\n else\n return this._projDbl();\n};\n\nPoint.prototype._extAdd = function _extAdd(p) {\n // hyperelliptic.org/EFD/g1p/auto-twisted-extended-1.html\n // #addition-add-2008-hwcd-3\n // 8M\n\n // A = (Y1 - X1) * (Y2 - X2)\n var a = this.y.redSub(this.x).redMul(p.y.redSub(p.x));\n // B = (Y1 + X1) * (Y2 + X2)\n var b = this.y.redAdd(this.x).redMul(p.y.redAdd(p.x));\n // C = T1 * k * T2\n var c = this.t.redMul(this.curve.dd).redMul(p.t);\n // D = Z1 * 2 * Z2\n var d = this.z.redMul(p.z.redAdd(p.z));\n // E = B - A\n var e = b.redSub(a);\n // F = D - C\n var f = d.redSub(c);\n // G = D + C\n var g = d.redAdd(c);\n // H = B + A\n var h = b.redAdd(a);\n // X3 = E * F\n var nx = e.redMul(f);\n // Y3 = G * H\n var ny = g.redMul(h);\n // T3 = E * H\n var nt = e.redMul(h);\n // Z3 = F * G\n var nz = f.redMul(g);\n return this.curve.point(nx, ny, nz, nt);\n};\n\nPoint.prototype._projAdd = function _projAdd(p) {\n // hyperelliptic.org/EFD/g1p/auto-twisted-projective.html\n // #addition-add-2008-bbjlp\n // #addition-add-2007-bl\n // 10M + 1S\n\n // A = Z1 * Z2\n var a = this.z.redMul(p.z);\n // B = A^2\n var b = a.redSqr();\n // C = X1 * X2\n var c = this.x.redMul(p.x);\n // D = Y1 * Y2\n var d = this.y.redMul(p.y);\n // E = d * C * D\n var e = this.curve.d.redMul(c).redMul(d);\n // F = B - E\n var f = b.redSub(e);\n // G = B + E\n var g = b.redAdd(e);\n // X3 = A * F * ((X1 + Y1) * (X2 + Y2) - C - D)\n var tmp = this.x.redAdd(this.y).redMul(p.x.redAdd(p.y)).redISub(c).redISub(d);\n var nx = a.redMul(f).redMul(tmp);\n var ny;\n var nz;\n if (this.curve.twisted) {\n // Y3 = A * G * (D - a * C)\n ny = a.redMul(g).redMul(d.redSub(this.curve._mulA(c)));\n // Z3 = F * G\n nz = f.redMul(g);\n } else {\n // Y3 = A * G * (D - C)\n ny = a.redMul(g).redMul(d.redSub(c));\n // Z3 = c * F * G\n nz = this.curve._mulC(f).redMul(g);\n }\n return this.curve.point(nx, ny, nz);\n};\n\nPoint.prototype.add = function add(p) {\n if (this.isInfinity())\n return p;\n if (p.isInfinity())\n return this;\n\n if (this.curve.extended)\n return this._extAdd(p);\n else\n return this._projAdd(p);\n};\n\nPoint.prototype.mul = function mul(k) {\n if (this._hasDoubles(k))\n return this.curve._fixedNafMul(this, k);\n else\n return this.curve._wnafMul(this, k);\n};\n\nPoint.prototype.mulAdd = function mulAdd(k1, p, k2) {\n return this.curve._wnafMulAdd(1, [ this, p ], [ k1, k2 ], 2, false);\n};\n\nPoint.prototype.jmulAdd = function jmulAdd(k1, p, k2) {\n return this.curve._wnafMulAdd(1, [ this, p ], [ k1, k2 ], 2, true);\n};\n\nPoint.prototype.normalize = function normalize() {\n if (this.zOne)\n return this;\n\n // Normalize coordinates\n var zi = this.z.redInvm();\n this.x = this.x.redMul(zi);\n this.y = this.y.redMul(zi);\n if (this.t)\n this.t = this.t.redMul(zi);\n this.z = this.curve.one;\n this.zOne = true;\n return this;\n};\n\nPoint.prototype.neg = function neg() {\n return this.curve.point(this.x.redNeg(),\n this.y,\n this.z,\n this.t && this.t.redNeg());\n};\n\nPoint.prototype.getX = function getX() {\n this.normalize();\n return this.x.fromRed();\n};\n\nPoint.prototype.getY = function getY() {\n this.normalize();\n return this.y.fromRed();\n};\n\nPoint.prototype.eq = function eq(other) {\n return this === other ||\n this.getX().cmp(other.getX()) === 0 &&\n this.getY().cmp(other.getY()) === 0;\n};\n\nPoint.prototype.eqXToP = function eqXToP(x) {\n var rx = x.toRed(this.curve.red).redMul(this.z);\n if (this.x.cmp(rx) === 0)\n return true;\n\n var xc = x.clone();\n var t = this.curve.redN.redMul(this.z);\n for (;;) {\n xc.iadd(this.curve.n);\n if (xc.cmp(this.curve.p) >= 0)\n return false;\n\n rx.redIAdd(t);\n if (this.x.cmp(rx) === 0)\n return true;\n }\n};\n\n// Compatibility with BaseCurve\nPoint.prototype.toP = Point.prototype.normalize;\nPoint.prototype.mixedAdd = Point.prototype.add;\n","'use strict';\n\nvar curve = exports;\n\ncurve.base = require('./base');\ncurve.short = require('./short');\ncurve.mont = require('./mont');\ncurve.edwards = require('./edwards');\n","'use strict';\n\nvar BN = require('bn.js');\nvar inherits = require('inherits');\nvar Base = require('./base');\n\nvar utils = require('../utils');\n\nfunction MontCurve(conf) {\n Base.call(this, 'mont', conf);\n\n this.a = new BN(conf.a, 16).toRed(this.red);\n this.b = new BN(conf.b, 16).toRed(this.red);\n this.i4 = new BN(4).toRed(this.red).redInvm();\n this.two = new BN(2).toRed(this.red);\n this.a24 = this.i4.redMul(this.a.redAdd(this.two));\n}\ninherits(MontCurve, Base);\nmodule.exports = MontCurve;\n\nMontCurve.prototype.validate = function validate(point) {\n var x = point.normalize().x;\n var x2 = x.redSqr();\n var rhs = x2.redMul(x).redAdd(x2.redMul(this.a)).redAdd(x);\n var y = rhs.redSqrt();\n\n return y.redSqr().cmp(rhs) === 0;\n};\n\nfunction Point(curve, x, z) {\n Base.BasePoint.call(this, curve, 'projective');\n if (x === null && z === null) {\n this.x = this.curve.one;\n this.z = this.curve.zero;\n } else {\n this.x = new BN(x, 16);\n this.z = new BN(z, 16);\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.z.red)\n this.z = this.z.toRed(this.curve.red);\n }\n}\ninherits(Point, Base.BasePoint);\n\nMontCurve.prototype.decodePoint = function decodePoint(bytes, enc) {\n return this.point(utils.toArray(bytes, enc), 1);\n};\n\nMontCurve.prototype.point = function point(x, z) {\n return new Point(this, x, z);\n};\n\nMontCurve.prototype.pointFromJSON = function pointFromJSON(obj) {\n return Point.fromJSON(this, obj);\n};\n\nPoint.prototype.precompute = function precompute() {\n // No-op\n};\n\nPoint.prototype._encode = function _encode() {\n return this.getX().toArray('be', this.curve.p.byteLength());\n};\n\nPoint.fromJSON = function fromJSON(curve, obj) {\n return new Point(curve, obj[0], obj[1] || curve.one);\n};\n\nPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nPoint.prototype.isInfinity = function isInfinity() {\n // XXX This code assumes that zero is always zero in red\n return this.z.cmpn(0) === 0;\n};\n\nPoint.prototype.dbl = function dbl() {\n // http://hyperelliptic.org/EFD/g1p/auto-montgom-xz.html#doubling-dbl-1987-m-3\n // 2M + 2S + 4A\n\n // A = X1 + Z1\n var a = this.x.redAdd(this.z);\n // AA = A^2\n var aa = a.redSqr();\n // B = X1 - Z1\n var b = this.x.redSub(this.z);\n // BB = B^2\n var bb = b.redSqr();\n // C = AA - BB\n var c = aa.redSub(bb);\n // X3 = AA * BB\n var nx = aa.redMul(bb);\n // Z3 = C * (BB + A24 * C)\n var nz = c.redMul(bb.redAdd(this.curve.a24.redMul(c)));\n return this.curve.point(nx, nz);\n};\n\nPoint.prototype.add = function add() {\n throw new Error('Not supported on Montgomery curve');\n};\n\nPoint.prototype.diffAdd = function diffAdd(p, diff) {\n // http://hyperelliptic.org/EFD/g1p/auto-montgom-xz.html#diffadd-dadd-1987-m-3\n // 4M + 2S + 6A\n\n // A = X2 + Z2\n var a = this.x.redAdd(this.z);\n // B = X2 - Z2\n var b = this.x.redSub(this.z);\n // C = X3 + Z3\n var c = p.x.redAdd(p.z);\n // D = X3 - Z3\n var d = p.x.redSub(p.z);\n // DA = D * A\n var da = d.redMul(a);\n // CB = C * B\n var cb = c.redMul(b);\n // X5 = Z1 * (DA + CB)^2\n var nx = diff.z.redMul(da.redAdd(cb).redSqr());\n // Z5 = X1 * (DA - CB)^2\n var nz = diff.x.redMul(da.redISub(cb).redSqr());\n return this.curve.point(nx, nz);\n};\n\nPoint.prototype.mul = function mul(k) {\n var t = k.clone();\n var a = this; // (N / 2) * Q + Q\n var b = this.curve.point(null, null); // (N / 2) * Q\n var c = this; // Q\n\n for (var bits = []; t.cmpn(0) !== 0; t.iushrn(1))\n bits.push(t.andln(1));\n\n for (var i = bits.length - 1; i >= 0; i--) {\n if (bits[i] === 0) {\n // N * Q + Q = ((N / 2) * Q + Q)) + (N / 2) * Q\n a = a.diffAdd(b, c);\n // N * Q = 2 * ((N / 2) * Q + Q))\n b = b.dbl();\n } else {\n // N * Q = ((N / 2) * Q + Q) + ((N / 2) * Q)\n b = a.diffAdd(b, c);\n // N * Q + Q = 2 * ((N / 2) * Q + Q)\n a = a.dbl();\n }\n }\n return b;\n};\n\nPoint.prototype.mulAdd = function mulAdd() {\n throw new Error('Not supported on Montgomery curve');\n};\n\nPoint.prototype.jumlAdd = function jumlAdd() {\n throw new Error('Not supported on Montgomery curve');\n};\n\nPoint.prototype.eq = function eq(other) {\n return this.getX().cmp(other.getX()) === 0;\n};\n\nPoint.prototype.normalize = function normalize() {\n this.x = this.x.redMul(this.z.redInvm());\n this.z = this.curve.one;\n return this;\n};\n\nPoint.prototype.getX = function getX() {\n // Normalize coordinates\n this.normalize();\n\n return this.x.fromRed();\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar BN = require('bn.js');\nvar inherits = require('inherits');\nvar Base = require('./base');\n\nvar assert = utils.assert;\n\nfunction ShortCurve(conf) {\n Base.call(this, 'short', conf);\n\n this.a = new BN(conf.a, 16).toRed(this.red);\n this.b = new BN(conf.b, 16).toRed(this.red);\n this.tinv = this.two.redInvm();\n\n this.zeroA = this.a.fromRed().cmpn(0) === 0;\n this.threeA = this.a.fromRed().sub(this.p).cmpn(-3) === 0;\n\n // If the curve is endomorphic, precalculate beta and lambda\n this.endo = this._getEndomorphism(conf);\n this._endoWnafT1 = new Array(4);\n this._endoWnafT2 = new Array(4);\n}\ninherits(ShortCurve, Base);\nmodule.exports = ShortCurve;\n\nShortCurve.prototype._getEndomorphism = function _getEndomorphism(conf) {\n // No efficient endomorphism\n if (!this.zeroA || !this.g || !this.n || this.p.modn(3) !== 1)\n return;\n\n // Compute beta and lambda, that lambda * P = (beta * Px; Py)\n var beta;\n var lambda;\n if (conf.beta) {\n beta = new BN(conf.beta, 16).toRed(this.red);\n } else {\n var betas = this._getEndoRoots(this.p);\n // Choose the smallest beta\n beta = betas[0].cmp(betas[1]) < 0 ? betas[0] : betas[1];\n beta = beta.toRed(this.red);\n }\n if (conf.lambda) {\n lambda = new BN(conf.lambda, 16);\n } else {\n // Choose the lambda that is matching selected beta\n var lambdas = this._getEndoRoots(this.n);\n if (this.g.mul(lambdas[0]).x.cmp(this.g.x.redMul(beta)) === 0) {\n lambda = lambdas[0];\n } else {\n lambda = lambdas[1];\n assert(this.g.mul(lambda).x.cmp(this.g.x.redMul(beta)) === 0);\n }\n }\n\n // Get basis vectors, used for balanced length-two representation\n var basis;\n if (conf.basis) {\n basis = conf.basis.map(function(vec) {\n return {\n a: new BN(vec.a, 16),\n b: new BN(vec.b, 16),\n };\n });\n } else {\n basis = this._getEndoBasis(lambda);\n }\n\n return {\n beta: beta,\n lambda: lambda,\n basis: basis,\n };\n};\n\nShortCurve.prototype._getEndoRoots = function _getEndoRoots(num) {\n // Find roots of for x^2 + x + 1 in F\n // Root = (-1 +- Sqrt(-3)) / 2\n //\n var red = num === this.p ? this.red : BN.mont(num);\n var tinv = new BN(2).toRed(red).redInvm();\n var ntinv = tinv.redNeg();\n\n var s = new BN(3).toRed(red).redNeg().redSqrt().redMul(tinv);\n\n var l1 = ntinv.redAdd(s).fromRed();\n var l2 = ntinv.redSub(s).fromRed();\n return [ l1, l2 ];\n};\n\nShortCurve.prototype._getEndoBasis = function _getEndoBasis(lambda) {\n // aprxSqrt >= sqrt(this.n)\n var aprxSqrt = this.n.ushrn(Math.floor(this.n.bitLength() / 2));\n\n // 3.74\n // Run EGCD, until r(L + 1) < aprxSqrt\n var u = lambda;\n var v = this.n.clone();\n var x1 = new BN(1);\n var y1 = new BN(0);\n var x2 = new BN(0);\n var y2 = new BN(1);\n\n // NOTE: all vectors are roots of: a + b * lambda = 0 (mod n)\n var a0;\n var b0;\n // First vector\n var a1;\n var b1;\n // Second vector\n var a2;\n var b2;\n\n var prevR;\n var i = 0;\n var r;\n var x;\n while (u.cmpn(0) !== 0) {\n var q = v.div(u);\n r = v.sub(q.mul(u));\n x = x2.sub(q.mul(x1));\n var y = y2.sub(q.mul(y1));\n\n if (!a1 && r.cmp(aprxSqrt) < 0) {\n a0 = prevR.neg();\n b0 = x1;\n a1 = r.neg();\n b1 = x;\n } else if (a1 && ++i === 2) {\n break;\n }\n prevR = r;\n\n v = u;\n u = r;\n x2 = x1;\n x1 = x;\n y2 = y1;\n y1 = y;\n }\n a2 = r.neg();\n b2 = x;\n\n var len1 = a1.sqr().add(b1.sqr());\n var len2 = a2.sqr().add(b2.sqr());\n if (len2.cmp(len1) >= 0) {\n a2 = a0;\n b2 = b0;\n }\n\n // Normalize signs\n if (a1.negative) {\n a1 = a1.neg();\n b1 = b1.neg();\n }\n if (a2.negative) {\n a2 = a2.neg();\n b2 = b2.neg();\n }\n\n return [\n { a: a1, b: b1 },\n { a: a2, b: b2 },\n ];\n};\n\nShortCurve.prototype._endoSplit = function _endoSplit(k) {\n var basis = this.endo.basis;\n var v1 = basis[0];\n var v2 = basis[1];\n\n var c1 = v2.b.mul(k).divRound(this.n);\n var c2 = v1.b.neg().mul(k).divRound(this.n);\n\n var p1 = c1.mul(v1.a);\n var p2 = c2.mul(v2.a);\n var q1 = c1.mul(v1.b);\n var q2 = c2.mul(v2.b);\n\n // Calculate answer\n var k1 = k.sub(p1).sub(p2);\n var k2 = q1.add(q2).neg();\n return { k1: k1, k2: k2 };\n};\n\nShortCurve.prototype.pointFromX = function pointFromX(x, odd) {\n x = new BN(x, 16);\n if (!x.red)\n x = x.toRed(this.red);\n\n var y2 = x.redSqr().redMul(x).redIAdd(x.redMul(this.a)).redIAdd(this.b);\n var y = y2.redSqrt();\n if (y.redSqr().redSub(y2).cmp(this.zero) !== 0)\n throw new Error('invalid point');\n\n // XXX Is there any way to tell if the number is odd without converting it\n // to non-red form?\n var isOdd = y.fromRed().isOdd();\n if (odd && !isOdd || !odd && isOdd)\n y = y.redNeg();\n\n return this.point(x, y);\n};\n\nShortCurve.prototype.validate = function validate(point) {\n if (point.inf)\n return true;\n\n var x = point.x;\n var y = point.y;\n\n var ax = this.a.redMul(x);\n var rhs = x.redSqr().redMul(x).redIAdd(ax).redIAdd(this.b);\n return y.redSqr().redISub(rhs).cmpn(0) === 0;\n};\n\nShortCurve.prototype._endoWnafMulAdd =\n function _endoWnafMulAdd(points, coeffs, jacobianResult) {\n var npoints = this._endoWnafT1;\n var ncoeffs = this._endoWnafT2;\n for (var i = 0; i < points.length; i++) {\n var split = this._endoSplit(coeffs[i]);\n var p = points[i];\n var beta = p._getBeta();\n\n if (split.k1.negative) {\n split.k1.ineg();\n p = p.neg(true);\n }\n if (split.k2.negative) {\n split.k2.ineg();\n beta = beta.neg(true);\n }\n\n npoints[i * 2] = p;\n npoints[i * 2 + 1] = beta;\n ncoeffs[i * 2] = split.k1;\n ncoeffs[i * 2 + 1] = split.k2;\n }\n var res = this._wnafMulAdd(1, npoints, ncoeffs, i * 2, jacobianResult);\n\n // Clean-up references to points and coefficients\n for (var j = 0; j < i * 2; j++) {\n npoints[j] = null;\n ncoeffs[j] = null;\n }\n return res;\n };\n\nfunction Point(curve, x, y, isRed) {\n Base.BasePoint.call(this, curve, 'affine');\n if (x === null && y === null) {\n this.x = null;\n this.y = null;\n this.inf = true;\n } else {\n this.x = new BN(x, 16);\n this.y = new BN(y, 16);\n // Force redgomery representation when loading from JSON\n if (isRed) {\n this.x.forceRed(this.curve.red);\n this.y.forceRed(this.curve.red);\n }\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.y.red)\n this.y = this.y.toRed(this.curve.red);\n this.inf = false;\n }\n}\ninherits(Point, Base.BasePoint);\n\nShortCurve.prototype.point = function point(x, y, isRed) {\n return new Point(this, x, y, isRed);\n};\n\nShortCurve.prototype.pointFromJSON = function pointFromJSON(obj, red) {\n return Point.fromJSON(this, obj, red);\n};\n\nPoint.prototype._getBeta = function _getBeta() {\n if (!this.curve.endo)\n return;\n\n var pre = this.precomputed;\n if (pre && pre.beta)\n return pre.beta;\n\n var beta = this.curve.point(this.x.redMul(this.curve.endo.beta), this.y);\n if (pre) {\n var curve = this.curve;\n var endoMul = function(p) {\n return curve.point(p.x.redMul(curve.endo.beta), p.y);\n };\n pre.beta = beta;\n beta.precomputed = {\n beta: null,\n naf: pre.naf && {\n wnd: pre.naf.wnd,\n points: pre.naf.points.map(endoMul),\n },\n doubles: pre.doubles && {\n step: pre.doubles.step,\n points: pre.doubles.points.map(endoMul),\n },\n };\n }\n return beta;\n};\n\nPoint.prototype.toJSON = function toJSON() {\n if (!this.precomputed)\n return [ this.x, this.y ];\n\n return [ this.x, this.y, this.precomputed && {\n doubles: this.precomputed.doubles && {\n step: this.precomputed.doubles.step,\n points: this.precomputed.doubles.points.slice(1),\n },\n naf: this.precomputed.naf && {\n wnd: this.precomputed.naf.wnd,\n points: this.precomputed.naf.points.slice(1),\n },\n } ];\n};\n\nPoint.fromJSON = function fromJSON(curve, obj, red) {\n if (typeof obj === 'string')\n obj = JSON.parse(obj);\n var res = curve.point(obj[0], obj[1], red);\n if (!obj[2])\n return res;\n\n function obj2point(obj) {\n return curve.point(obj[0], obj[1], red);\n }\n\n var pre = obj[2];\n res.precomputed = {\n beta: null,\n doubles: pre.doubles && {\n step: pre.doubles.step,\n points: [ res ].concat(pre.doubles.points.map(obj2point)),\n },\n naf: pre.naf && {\n wnd: pre.naf.wnd,\n points: [ res ].concat(pre.naf.points.map(obj2point)),\n },\n };\n return res;\n};\n\nPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nPoint.prototype.isInfinity = function isInfinity() {\n return this.inf;\n};\n\nPoint.prototype.add = function add(p) {\n // O + P = P\n if (this.inf)\n return p;\n\n // P + O = P\n if (p.inf)\n return this;\n\n // P + P = 2P\n if (this.eq(p))\n return this.dbl();\n\n // P + (-P) = O\n if (this.neg().eq(p))\n return this.curve.point(null, null);\n\n // P + Q = O\n if (this.x.cmp(p.x) === 0)\n return this.curve.point(null, null);\n\n var c = this.y.redSub(p.y);\n if (c.cmpn(0) !== 0)\n c = c.redMul(this.x.redSub(p.x).redInvm());\n var nx = c.redSqr().redISub(this.x).redISub(p.x);\n var ny = c.redMul(this.x.redSub(nx)).redISub(this.y);\n return this.curve.point(nx, ny);\n};\n\nPoint.prototype.dbl = function dbl() {\n if (this.inf)\n return this;\n\n // 2P = O\n var ys1 = this.y.redAdd(this.y);\n if (ys1.cmpn(0) === 0)\n return this.curve.point(null, null);\n\n var a = this.curve.a;\n\n var x2 = this.x.redSqr();\n var dyinv = ys1.redInvm();\n var c = x2.redAdd(x2).redIAdd(x2).redIAdd(a).redMul(dyinv);\n\n var nx = c.redSqr().redISub(this.x.redAdd(this.x));\n var ny = c.redMul(this.x.redSub(nx)).redISub(this.y);\n return this.curve.point(nx, ny);\n};\n\nPoint.prototype.getX = function getX() {\n return this.x.fromRed();\n};\n\nPoint.prototype.getY = function getY() {\n return this.y.fromRed();\n};\n\nPoint.prototype.mul = function mul(k) {\n k = new BN(k, 16);\n if (this.isInfinity())\n return this;\n else if (this._hasDoubles(k))\n return this.curve._fixedNafMul(this, k);\n else if (this.curve.endo)\n return this.curve._endoWnafMulAdd([ this ], [ k ]);\n else\n return this.curve._wnafMul(this, k);\n};\n\nPoint.prototype.mulAdd = function mulAdd(k1, p2, k2) {\n var points = [ this, p2 ];\n var coeffs = [ k1, k2 ];\n if (this.curve.endo)\n return this.curve._endoWnafMulAdd(points, coeffs);\n else\n return this.curve._wnafMulAdd(1, points, coeffs, 2);\n};\n\nPoint.prototype.jmulAdd = function jmulAdd(k1, p2, k2) {\n var points = [ this, p2 ];\n var coeffs = [ k1, k2 ];\n if (this.curve.endo)\n return this.curve._endoWnafMulAdd(points, coeffs, true);\n else\n return this.curve._wnafMulAdd(1, points, coeffs, 2, true);\n};\n\nPoint.prototype.eq = function eq(p) {\n return this === p ||\n this.inf === p.inf &&\n (this.inf || this.x.cmp(p.x) === 0 && this.y.cmp(p.y) === 0);\n};\n\nPoint.prototype.neg = function neg(_precompute) {\n if (this.inf)\n return this;\n\n var res = this.curve.point(this.x, this.y.redNeg());\n if (_precompute && this.precomputed) {\n var pre = this.precomputed;\n var negate = function(p) {\n return p.neg();\n };\n res.precomputed = {\n naf: pre.naf && {\n wnd: pre.naf.wnd,\n points: pre.naf.points.map(negate),\n },\n doubles: pre.doubles && {\n step: pre.doubles.step,\n points: pre.doubles.points.map(negate),\n },\n };\n }\n return res;\n};\n\nPoint.prototype.toJ = function toJ() {\n if (this.inf)\n return this.curve.jpoint(null, null, null);\n\n var res = this.curve.jpoint(this.x, this.y, this.curve.one);\n return res;\n};\n\nfunction JPoint(curve, x, y, z) {\n Base.BasePoint.call(this, curve, 'jacobian');\n if (x === null && y === null && z === null) {\n this.x = this.curve.one;\n this.y = this.curve.one;\n this.z = new BN(0);\n } else {\n this.x = new BN(x, 16);\n this.y = new BN(y, 16);\n this.z = new BN(z, 16);\n }\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.y.red)\n this.y = this.y.toRed(this.curve.red);\n if (!this.z.red)\n this.z = this.z.toRed(this.curve.red);\n\n this.zOne = this.z === this.curve.one;\n}\ninherits(JPoint, Base.BasePoint);\n\nShortCurve.prototype.jpoint = function jpoint(x, y, z) {\n return new JPoint(this, x, y, z);\n};\n\nJPoint.prototype.toP = function toP() {\n if (this.isInfinity())\n return this.curve.point(null, null);\n\n var zinv = this.z.redInvm();\n var zinv2 = zinv.redSqr();\n var ax = this.x.redMul(zinv2);\n var ay = this.y.redMul(zinv2).redMul(zinv);\n\n return this.curve.point(ax, ay);\n};\n\nJPoint.prototype.neg = function neg() {\n return this.curve.jpoint(this.x, this.y.redNeg(), this.z);\n};\n\nJPoint.prototype.add = function add(p) {\n // O + P = P\n if (this.isInfinity())\n return p;\n\n // P + O = P\n if (p.isInfinity())\n return this;\n\n // 12M + 4S + 7A\n var pz2 = p.z.redSqr();\n var z2 = this.z.redSqr();\n var u1 = this.x.redMul(pz2);\n var u2 = p.x.redMul(z2);\n var s1 = this.y.redMul(pz2.redMul(p.z));\n var s2 = p.y.redMul(z2.redMul(this.z));\n\n var h = u1.redSub(u2);\n var r = s1.redSub(s2);\n if (h.cmpn(0) === 0) {\n if (r.cmpn(0) !== 0)\n return this.curve.jpoint(null, null, null);\n else\n return this.dbl();\n }\n\n var h2 = h.redSqr();\n var h3 = h2.redMul(h);\n var v = u1.redMul(h2);\n\n var nx = r.redSqr().redIAdd(h3).redISub(v).redISub(v);\n var ny = r.redMul(v.redISub(nx)).redISub(s1.redMul(h3));\n var nz = this.z.redMul(p.z).redMul(h);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.mixedAdd = function mixedAdd(p) {\n // O + P = P\n if (this.isInfinity())\n return p.toJ();\n\n // P + O = P\n if (p.isInfinity())\n return this;\n\n // 8M + 3S + 7A\n var z2 = this.z.redSqr();\n var u1 = this.x;\n var u2 = p.x.redMul(z2);\n var s1 = this.y;\n var s2 = p.y.redMul(z2).redMul(this.z);\n\n var h = u1.redSub(u2);\n var r = s1.redSub(s2);\n if (h.cmpn(0) === 0) {\n if (r.cmpn(0) !== 0)\n return this.curve.jpoint(null, null, null);\n else\n return this.dbl();\n }\n\n var h2 = h.redSqr();\n var h3 = h2.redMul(h);\n var v = u1.redMul(h2);\n\n var nx = r.redSqr().redIAdd(h3).redISub(v).redISub(v);\n var ny = r.redMul(v.redISub(nx)).redISub(s1.redMul(h3));\n var nz = this.z.redMul(h);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.dblp = function dblp(pow) {\n if (pow === 0)\n return this;\n if (this.isInfinity())\n return this;\n if (!pow)\n return this.dbl();\n\n var i;\n if (this.curve.zeroA || this.curve.threeA) {\n var r = this;\n for (i = 0; i < pow; i++)\n r = r.dbl();\n return r;\n }\n\n // 1M + 2S + 1A + N * (4S + 5M + 8A)\n // N = 1 => 6M + 6S + 9A\n var a = this.curve.a;\n var tinv = this.curve.tinv;\n\n var jx = this.x;\n var jy = this.y;\n var jz = this.z;\n var jz4 = jz.redSqr().redSqr();\n\n // Reuse results\n var jyd = jy.redAdd(jy);\n for (i = 0; i < pow; i++) {\n var jx2 = jx.redSqr();\n var jyd2 = jyd.redSqr();\n var jyd4 = jyd2.redSqr();\n var c = jx2.redAdd(jx2).redIAdd(jx2).redIAdd(a.redMul(jz4));\n\n var t1 = jx.redMul(jyd2);\n var nx = c.redSqr().redISub(t1.redAdd(t1));\n var t2 = t1.redISub(nx);\n var dny = c.redMul(t2);\n dny = dny.redIAdd(dny).redISub(jyd4);\n var nz = jyd.redMul(jz);\n if (i + 1 < pow)\n jz4 = jz4.redMul(jyd4);\n\n jx = nx;\n jz = nz;\n jyd = dny;\n }\n\n return this.curve.jpoint(jx, jyd.redMul(tinv), jz);\n};\n\nJPoint.prototype.dbl = function dbl() {\n if (this.isInfinity())\n return this;\n\n if (this.curve.zeroA)\n return this._zeroDbl();\n else if (this.curve.threeA)\n return this._threeDbl();\n else\n return this._dbl();\n};\n\nJPoint.prototype._zeroDbl = function _zeroDbl() {\n var nx;\n var ny;\n var nz;\n // Z = 1\n if (this.zOne) {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html\n // #doubling-mdbl-2007-bl\n // 1M + 5S + 14A\n\n // XX = X1^2\n var xx = this.x.redSqr();\n // YY = Y1^2\n var yy = this.y.redSqr();\n // YYYY = YY^2\n var yyyy = yy.redSqr();\n // S = 2 * ((X1 + YY)^2 - XX - YYYY)\n var s = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy);\n s = s.redIAdd(s);\n // M = 3 * XX + a; a = 0\n var m = xx.redAdd(xx).redIAdd(xx);\n // T = M ^ 2 - 2*S\n var t = m.redSqr().redISub(s).redISub(s);\n\n // 8 * YYYY\n var yyyy8 = yyyy.redIAdd(yyyy);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n\n // X3 = T\n nx = t;\n // Y3 = M * (S - T) - 8 * YYYY\n ny = m.redMul(s.redISub(t)).redISub(yyyy8);\n // Z3 = 2*Y1\n nz = this.y.redAdd(this.y);\n } else {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html\n // #doubling-dbl-2009-l\n // 2M + 5S + 13A\n\n // A = X1^2\n var a = this.x.redSqr();\n // B = Y1^2\n var b = this.y.redSqr();\n // C = B^2\n var c = b.redSqr();\n // D = 2 * ((X1 + B)^2 - A - C)\n var d = this.x.redAdd(b).redSqr().redISub(a).redISub(c);\n d = d.redIAdd(d);\n // E = 3 * A\n var e = a.redAdd(a).redIAdd(a);\n // F = E^2\n var f = e.redSqr();\n\n // 8 * C\n var c8 = c.redIAdd(c);\n c8 = c8.redIAdd(c8);\n c8 = c8.redIAdd(c8);\n\n // X3 = F - 2 * D\n nx = f.redISub(d).redISub(d);\n // Y3 = E * (D - X3) - 8 * C\n ny = e.redMul(d.redISub(nx)).redISub(c8);\n // Z3 = 2 * Y1 * Z1\n nz = this.y.redMul(this.z);\n nz = nz.redIAdd(nz);\n }\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype._threeDbl = function _threeDbl() {\n var nx;\n var ny;\n var nz;\n // Z = 1\n if (this.zOne) {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-3.html\n // #doubling-mdbl-2007-bl\n // 1M + 5S + 15A\n\n // XX = X1^2\n var xx = this.x.redSqr();\n // YY = Y1^2\n var yy = this.y.redSqr();\n // YYYY = YY^2\n var yyyy = yy.redSqr();\n // S = 2 * ((X1 + YY)^2 - XX - YYYY)\n var s = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy);\n s = s.redIAdd(s);\n // M = 3 * XX + a\n var m = xx.redAdd(xx).redIAdd(xx).redIAdd(this.curve.a);\n // T = M^2 - 2 * S\n var t = m.redSqr().redISub(s).redISub(s);\n // X3 = T\n nx = t;\n // Y3 = M * (S - T) - 8 * YYYY\n var yyyy8 = yyyy.redIAdd(yyyy);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n ny = m.redMul(s.redISub(t)).redISub(yyyy8);\n // Z3 = 2 * Y1\n nz = this.y.redAdd(this.y);\n } else {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-3.html#doubling-dbl-2001-b\n // 3M + 5S\n\n // delta = Z1^2\n var delta = this.z.redSqr();\n // gamma = Y1^2\n var gamma = this.y.redSqr();\n // beta = X1 * gamma\n var beta = this.x.redMul(gamma);\n // alpha = 3 * (X1 - delta) * (X1 + delta)\n var alpha = this.x.redSub(delta).redMul(this.x.redAdd(delta));\n alpha = alpha.redAdd(alpha).redIAdd(alpha);\n // X3 = alpha^2 - 8 * beta\n var beta4 = beta.redIAdd(beta);\n beta4 = beta4.redIAdd(beta4);\n var beta8 = beta4.redAdd(beta4);\n nx = alpha.redSqr().redISub(beta8);\n // Z3 = (Y1 + Z1)^2 - gamma - delta\n nz = this.y.redAdd(this.z).redSqr().redISub(gamma).redISub(delta);\n // Y3 = alpha * (4 * beta - X3) - 8 * gamma^2\n var ggamma8 = gamma.redSqr();\n ggamma8 = ggamma8.redIAdd(ggamma8);\n ggamma8 = ggamma8.redIAdd(ggamma8);\n ggamma8 = ggamma8.redIAdd(ggamma8);\n ny = alpha.redMul(beta4.redISub(nx)).redISub(ggamma8);\n }\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype._dbl = function _dbl() {\n var a = this.curve.a;\n\n // 4M + 6S + 10A\n var jx = this.x;\n var jy = this.y;\n var jz = this.z;\n var jz4 = jz.redSqr().redSqr();\n\n var jx2 = jx.redSqr();\n var jy2 = jy.redSqr();\n\n var c = jx2.redAdd(jx2).redIAdd(jx2).redIAdd(a.redMul(jz4));\n\n var jxd4 = jx.redAdd(jx);\n jxd4 = jxd4.redIAdd(jxd4);\n var t1 = jxd4.redMul(jy2);\n var nx = c.redSqr().redISub(t1.redAdd(t1));\n var t2 = t1.redISub(nx);\n\n var jyd8 = jy2.redSqr();\n jyd8 = jyd8.redIAdd(jyd8);\n jyd8 = jyd8.redIAdd(jyd8);\n jyd8 = jyd8.redIAdd(jyd8);\n var ny = c.redMul(t2).redISub(jyd8);\n var nz = jy.redAdd(jy).redMul(jz);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.trpl = function trpl() {\n if (!this.curve.zeroA)\n return this.dbl().add(this);\n\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html#tripling-tpl-2007-bl\n // 5M + 10S + ...\n\n // XX = X1^2\n var xx = this.x.redSqr();\n // YY = Y1^2\n var yy = this.y.redSqr();\n // ZZ = Z1^2\n var zz = this.z.redSqr();\n // YYYY = YY^2\n var yyyy = yy.redSqr();\n // M = 3 * XX + a * ZZ2; a = 0\n var m = xx.redAdd(xx).redIAdd(xx);\n // MM = M^2\n var mm = m.redSqr();\n // E = 6 * ((X1 + YY)^2 - XX - YYYY) - MM\n var e = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy);\n e = e.redIAdd(e);\n e = e.redAdd(e).redIAdd(e);\n e = e.redISub(mm);\n // EE = E^2\n var ee = e.redSqr();\n // T = 16*YYYY\n var t = yyyy.redIAdd(yyyy);\n t = t.redIAdd(t);\n t = t.redIAdd(t);\n t = t.redIAdd(t);\n // U = (M + E)^2 - MM - EE - T\n var u = m.redIAdd(e).redSqr().redISub(mm).redISub(ee).redISub(t);\n // X3 = 4 * (X1 * EE - 4 * YY * U)\n var yyu4 = yy.redMul(u);\n yyu4 = yyu4.redIAdd(yyu4);\n yyu4 = yyu4.redIAdd(yyu4);\n var nx = this.x.redMul(ee).redISub(yyu4);\n nx = nx.redIAdd(nx);\n nx = nx.redIAdd(nx);\n // Y3 = 8 * Y1 * (U * (T - U) - E * EE)\n var ny = this.y.redMul(u.redMul(t.redISub(u)).redISub(e.redMul(ee)));\n ny = ny.redIAdd(ny);\n ny = ny.redIAdd(ny);\n ny = ny.redIAdd(ny);\n // Z3 = (Z1 + E)^2 - ZZ - EE\n var nz = this.z.redAdd(e).redSqr().redISub(zz).redISub(ee);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.mul = function mul(k, kbase) {\n k = new BN(k, kbase);\n\n return this.curve._wnafMul(this, k);\n};\n\nJPoint.prototype.eq = function eq(p) {\n if (p.type === 'affine')\n return this.eq(p.toJ());\n\n if (this === p)\n return true;\n\n // x1 * z2^2 == x2 * z1^2\n var z2 = this.z.redSqr();\n var pz2 = p.z.redSqr();\n if (this.x.redMul(pz2).redISub(p.x.redMul(z2)).cmpn(0) !== 0)\n return false;\n\n // y1 * z2^3 == y2 * z1^3\n var z3 = z2.redMul(this.z);\n var pz3 = pz2.redMul(p.z);\n return this.y.redMul(pz3).redISub(p.y.redMul(z3)).cmpn(0) === 0;\n};\n\nJPoint.prototype.eqXToP = function eqXToP(x) {\n var zs = this.z.redSqr();\n var rx = x.toRed(this.curve.red).redMul(zs);\n if (this.x.cmp(rx) === 0)\n return true;\n\n var xc = x.clone();\n var t = this.curve.redN.redMul(zs);\n for (;;) {\n xc.iadd(this.curve.n);\n if (xc.cmp(this.curve.p) >= 0)\n return false;\n\n rx.redIAdd(t);\n if (this.x.cmp(rx) === 0)\n return true;\n }\n};\n\nJPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nJPoint.prototype.isInfinity = function isInfinity() {\n // XXX This code assumes that zero is always zero in red\n return this.z.cmpn(0) === 0;\n};\n","'use strict';\n\nvar curves = exports;\n\nvar hash = require('hash.js');\nvar curve = require('./curve');\nvar utils = require('./utils');\n\nvar assert = utils.assert;\n\nfunction PresetCurve(options) {\n if (options.type === 'short')\n this.curve = new curve.short(options);\n else if (options.type === 'edwards')\n this.curve = new curve.edwards(options);\n else\n this.curve = new curve.mont(options);\n this.g = this.curve.g;\n this.n = this.curve.n;\n this.hash = options.hash;\n\n assert(this.g.validate(), 'Invalid curve');\n assert(this.g.mul(this.n).isInfinity(), 'Invalid curve, G*N != O');\n}\ncurves.PresetCurve = PresetCurve;\n\nfunction defineCurve(name, options) {\n Object.defineProperty(curves, name, {\n configurable: true,\n enumerable: true,\n get: function() {\n var curve = new PresetCurve(options);\n Object.defineProperty(curves, name, {\n configurable: true,\n enumerable: true,\n value: curve,\n });\n return curve;\n },\n });\n}\n\ndefineCurve('p192', {\n type: 'short',\n prime: 'p192',\n p: 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff',\n a: 'ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc',\n b: '64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1',\n n: 'ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831',\n hash: hash.sha256,\n gRed: false,\n g: [\n '188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012',\n '07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811',\n ],\n});\n\ndefineCurve('p224', {\n type: 'short',\n prime: 'p224',\n p: 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001',\n a: 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe',\n b: 'b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4',\n n: 'ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d',\n hash: hash.sha256,\n gRed: false,\n g: [\n 'b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21',\n 'bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34',\n ],\n});\n\ndefineCurve('p256', {\n type: 'short',\n prime: null,\n p: 'ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff',\n a: 'ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc',\n b: '5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b',\n n: 'ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551',\n hash: hash.sha256,\n gRed: false,\n g: [\n '6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296',\n '4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5',\n ],\n});\n\ndefineCurve('p384', {\n type: 'short',\n prime: null,\n p: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'fffffffe ffffffff 00000000 00000000 ffffffff',\n a: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'fffffffe ffffffff 00000000 00000000 fffffffc',\n b: 'b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f ' +\n '5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef',\n n: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 ' +\n 'f4372ddf 581a0db2 48b0a77a ecec196a ccc52973',\n hash: hash.sha384,\n gRed: false,\n g: [\n 'aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 ' +\n '5502f25d bf55296c 3a545e38 72760ab7',\n '3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 ' +\n '0a60b1ce 1d7e819d 7a431d7c 90ea0e5f',\n ],\n});\n\ndefineCurve('p521', {\n type: 'short',\n prime: null,\n p: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff',\n a: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff fffffffc',\n b: '00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b ' +\n '99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd ' +\n '3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00',\n n: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 ' +\n 'f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409',\n hash: hash.sha512,\n gRed: false,\n g: [\n '000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 ' +\n '053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 ' +\n 'a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66',\n '00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 ' +\n '579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 ' +\n '3fad0761 353c7086 a272c240 88be9476 9fd16650',\n ],\n});\n\ndefineCurve('curve25519', {\n type: 'mont',\n prime: 'p25519',\n p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed',\n a: '76d06',\n b: '1',\n n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed',\n hash: hash.sha256,\n gRed: false,\n g: [\n '9',\n ],\n});\n\ndefineCurve('ed25519', {\n type: 'edwards',\n prime: 'p25519',\n p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed',\n a: '-1',\n c: '1',\n // -121665 * (121666^(-1)) (mod P)\n d: '52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3',\n n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed',\n hash: hash.sha256,\n gRed: false,\n g: [\n '216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a',\n\n // 4/5\n '6666666666666666666666666666666666666666666666666666666666666658',\n ],\n});\n\nvar pre;\ntry {\n pre = require('./precomputed/secp256k1');\n} catch (e) {\n pre = undefined;\n}\n\ndefineCurve('secp256k1', {\n type: 'short',\n prime: 'k256',\n p: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f',\n a: '0',\n b: '7',\n n: 'ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141',\n h: '1',\n hash: hash.sha256,\n\n // Precomputed endomorphism\n beta: '7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee',\n lambda: '5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72',\n basis: [\n {\n a: '3086d221a7d46bcde86c90e49284eb15',\n b: '-e4437ed6010e88286f547fa90abfe4c3',\n },\n {\n a: '114ca50f7a8e2f3f657c1108d9d44cfd8',\n b: '3086d221a7d46bcde86c90e49284eb15',\n },\n ],\n\n gRed: false,\n g: [\n '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798',\n '483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8',\n pre,\n ],\n});\n","'use strict';\n\nvar BN = require('bn.js');\nvar HmacDRBG = require('hmac-drbg');\nvar utils = require('../utils');\nvar curves = require('../curves');\nvar rand = require('brorand');\nvar assert = utils.assert;\n\nvar KeyPair = require('./key');\nvar Signature = require('./signature');\n\nfunction EC(options) {\n if (!(this instanceof EC))\n return new EC(options);\n\n // Shortcut `elliptic.ec(curve-name)`\n if (typeof options === 'string') {\n assert(Object.prototype.hasOwnProperty.call(curves, options),\n 'Unknown curve ' + options);\n\n options = curves[options];\n }\n\n // Shortcut for `elliptic.ec(elliptic.curves.curveName)`\n if (options instanceof curves.PresetCurve)\n options = { curve: options };\n\n this.curve = options.curve.curve;\n this.n = this.curve.n;\n this.nh = this.n.ushrn(1);\n this.g = this.curve.g;\n\n // Point on curve\n this.g = options.curve.g;\n this.g.precompute(options.curve.n.bitLength() + 1);\n\n // Hash for function for DRBG\n this.hash = options.hash || options.curve.hash;\n}\nmodule.exports = EC;\n\nEC.prototype.keyPair = function keyPair(options) {\n return new KeyPair(this, options);\n};\n\nEC.prototype.keyFromPrivate = function keyFromPrivate(priv, enc) {\n return KeyPair.fromPrivate(this, priv, enc);\n};\n\nEC.prototype.keyFromPublic = function keyFromPublic(pub, enc) {\n return KeyPair.fromPublic(this, pub, enc);\n};\n\nEC.prototype.genKeyPair = function genKeyPair(options) {\n if (!options)\n options = {};\n\n // Instantiate Hmac_DRBG\n var drbg = new HmacDRBG({\n hash: this.hash,\n pers: options.pers,\n persEnc: options.persEnc || 'utf8',\n entropy: options.entropy || rand(this.hash.hmacStrength),\n entropyEnc: options.entropy && options.entropyEnc || 'utf8',\n nonce: this.n.toArray(),\n });\n\n var bytes = this.n.byteLength();\n var ns2 = this.n.sub(new BN(2));\n for (;;) {\n var priv = new BN(drbg.generate(bytes));\n if (priv.cmp(ns2) > 0)\n continue;\n\n priv.iaddn(1);\n return this.keyFromPrivate(priv);\n }\n};\n\nEC.prototype._truncateToN = function _truncateToN(msg, truncOnly) {\n var delta = msg.byteLength() * 8 - this.n.bitLength();\n if (delta > 0)\n msg = msg.ushrn(delta);\n if (!truncOnly && msg.cmp(this.n) >= 0)\n return msg.sub(this.n);\n else\n return msg;\n};\n\nEC.prototype.sign = function sign(msg, key, enc, options) {\n if (typeof enc === 'object') {\n options = enc;\n enc = null;\n }\n if (!options)\n options = {};\n\n key = this.keyFromPrivate(key, enc);\n msg = this._truncateToN(new BN(msg, 16));\n\n // Zero-extend key to provide enough entropy\n var bytes = this.n.byteLength();\n var bkey = key.getPrivate().toArray('be', bytes);\n\n // Zero-extend nonce to have the same byte size as N\n var nonce = msg.toArray('be', bytes);\n\n // Instantiate Hmac_DRBG\n var drbg = new HmacDRBG({\n hash: this.hash,\n entropy: bkey,\n nonce: nonce,\n pers: options.pers,\n persEnc: options.persEnc || 'utf8',\n });\n\n // Number of bytes to generate\n var ns1 = this.n.sub(new BN(1));\n\n for (var iter = 0; ; iter++) {\n var k = options.k ?\n options.k(iter) :\n new BN(drbg.generate(this.n.byteLength()));\n k = this._truncateToN(k, true);\n if (k.cmpn(1) <= 0 || k.cmp(ns1) >= 0)\n continue;\n\n var kp = this.g.mul(k);\n if (kp.isInfinity())\n continue;\n\n var kpX = kp.getX();\n var r = kpX.umod(this.n);\n if (r.cmpn(0) === 0)\n continue;\n\n var s = k.invm(this.n).mul(r.mul(key.getPrivate()).iadd(msg));\n s = s.umod(this.n);\n if (s.cmpn(0) === 0)\n continue;\n\n var recoveryParam = (kp.getY().isOdd() ? 1 : 0) |\n (kpX.cmp(r) !== 0 ? 2 : 0);\n\n // Use complement of `s`, if it is > `n / 2`\n if (options.canonical && s.cmp(this.nh) > 0) {\n s = this.n.sub(s);\n recoveryParam ^= 1;\n }\n\n return new Signature({ r: r, s: s, recoveryParam: recoveryParam });\n }\n};\n\nEC.prototype.verify = function verify(msg, signature, key, enc) {\n msg = this._truncateToN(new BN(msg, 16));\n key = this.keyFromPublic(key, enc);\n signature = new Signature(signature, 'hex');\n\n // Perform primitive values validation\n var r = signature.r;\n var s = signature.s;\n if (r.cmpn(1) < 0 || r.cmp(this.n) >= 0)\n return false;\n if (s.cmpn(1) < 0 || s.cmp(this.n) >= 0)\n return false;\n\n // Validate signature\n var sinv = s.invm(this.n);\n var u1 = sinv.mul(msg).umod(this.n);\n var u2 = sinv.mul(r).umod(this.n);\n var p;\n\n if (!this.curve._maxwellTrick) {\n p = this.g.mulAdd(u1, key.getPublic(), u2);\n if (p.isInfinity())\n return false;\n\n return p.getX().umod(this.n).cmp(r) === 0;\n }\n\n // NOTE: Greg Maxwell's trick, inspired by:\n // https://git.io/vad3K\n\n p = this.g.jmulAdd(u1, key.getPublic(), u2);\n if (p.isInfinity())\n return false;\n\n // Compare `p.x` of Jacobian point with `r`,\n // this will do `p.x == r * p.z^2` instead of multiplying `p.x` by the\n // inverse of `p.z^2`\n return p.eqXToP(r);\n};\n\nEC.prototype.recoverPubKey = function(msg, signature, j, enc) {\n assert((3 & j) === j, 'The recovery param is more than two bits');\n signature = new Signature(signature, enc);\n\n var n = this.n;\n var e = new BN(msg);\n var r = signature.r;\n var s = signature.s;\n\n // A set LSB signifies that the y-coordinate is odd\n var isYOdd = j & 1;\n var isSecondKey = j >> 1;\n if (r.cmp(this.curve.p.umod(this.curve.n)) >= 0 && isSecondKey)\n throw new Error('Unable to find sencond key candinate');\n\n // 1.1. Let x = r + jn.\n if (isSecondKey)\n r = this.curve.pointFromX(r.add(this.curve.n), isYOdd);\n else\n r = this.curve.pointFromX(r, isYOdd);\n\n var rInv = signature.r.invm(n);\n var s1 = n.sub(e).mul(rInv).umod(n);\n var s2 = s.mul(rInv).umod(n);\n\n // 1.6.1 Compute Q = r^-1 (sR - eG)\n // Q = r^-1 (sR + -eG)\n return this.g.mulAdd(s1, r, s2);\n};\n\nEC.prototype.getKeyRecoveryParam = function(e, signature, Q, enc) {\n signature = new Signature(signature, enc);\n if (signature.recoveryParam !== null)\n return signature.recoveryParam;\n\n for (var i = 0; i < 4; i++) {\n var Qprime;\n try {\n Qprime = this.recoverPubKey(e, signature, i);\n } catch (e) {\n continue;\n }\n\n if (Qprime.eq(Q))\n return i;\n }\n throw new Error('Unable to find valid recovery factor');\n};\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar assert = utils.assert;\n\nfunction KeyPair(ec, options) {\n this.ec = ec;\n this.priv = null;\n this.pub = null;\n\n // KeyPair(ec, { priv: ..., pub: ... })\n if (options.priv)\n this._importPrivate(options.priv, options.privEnc);\n if (options.pub)\n this._importPublic(options.pub, options.pubEnc);\n}\nmodule.exports = KeyPair;\n\nKeyPair.fromPublic = function fromPublic(ec, pub, enc) {\n if (pub instanceof KeyPair)\n return pub;\n\n return new KeyPair(ec, {\n pub: pub,\n pubEnc: enc,\n });\n};\n\nKeyPair.fromPrivate = function fromPrivate(ec, priv, enc) {\n if (priv instanceof KeyPair)\n return priv;\n\n return new KeyPair(ec, {\n priv: priv,\n privEnc: enc,\n });\n};\n\nKeyPair.prototype.validate = function validate() {\n var pub = this.getPublic();\n\n if (pub.isInfinity())\n return { result: false, reason: 'Invalid public key' };\n if (!pub.validate())\n return { result: false, reason: 'Public key is not a point' };\n if (!pub.mul(this.ec.curve.n).isInfinity())\n return { result: false, reason: 'Public key * N != O' };\n\n return { result: true, reason: null };\n};\n\nKeyPair.prototype.getPublic = function getPublic(compact, enc) {\n // compact is optional argument\n if (typeof compact === 'string') {\n enc = compact;\n compact = null;\n }\n\n if (!this.pub)\n this.pub = this.ec.g.mul(this.priv);\n\n if (!enc)\n return this.pub;\n\n return this.pub.encode(enc, compact);\n};\n\nKeyPair.prototype.getPrivate = function getPrivate(enc) {\n if (enc === 'hex')\n return this.priv.toString(16, 2);\n else\n return this.priv;\n};\n\nKeyPair.prototype._importPrivate = function _importPrivate(key, enc) {\n this.priv = new BN(key, enc || 16);\n\n // Ensure that the priv won't be bigger than n, otherwise we may fail\n // in fixed multiplication method\n this.priv = this.priv.umod(this.ec.curve.n);\n};\n\nKeyPair.prototype._importPublic = function _importPublic(key, enc) {\n if (key.x || key.y) {\n // Montgomery points only have an `x` coordinate.\n // Weierstrass/Edwards points on the other hand have both `x` and\n // `y` coordinates.\n if (this.ec.curve.type === 'mont') {\n assert(key.x, 'Need x coordinate');\n } else if (this.ec.curve.type === 'short' ||\n this.ec.curve.type === 'edwards') {\n assert(key.x && key.y, 'Need both x and y coordinate');\n }\n this.pub = this.ec.curve.point(key.x, key.y);\n return;\n }\n this.pub = this.ec.curve.decodePoint(key, enc);\n};\n\n// ECDH\nKeyPair.prototype.derive = function derive(pub) {\n if(!pub.validate()) {\n assert(pub.validate(), 'public point not validated');\n }\n return pub.mul(this.priv).getX();\n};\n\n// ECDSA\nKeyPair.prototype.sign = function sign(msg, enc, options) {\n return this.ec.sign(msg, this, enc, options);\n};\n\nKeyPair.prototype.verify = function verify(msg, signature) {\n return this.ec.verify(msg, signature, this);\n};\n\nKeyPair.prototype.inspect = function inspect() {\n return '';\n};\n","'use strict';\n\nvar BN = require('bn.js');\n\nvar utils = require('../utils');\nvar assert = utils.assert;\n\nfunction Signature(options, enc) {\n if (options instanceof Signature)\n return options;\n\n if (this._importDER(options, enc))\n return;\n\n assert(options.r && options.s, 'Signature without r or s');\n this.r = new BN(options.r, 16);\n this.s = new BN(options.s, 16);\n if (options.recoveryParam === undefined)\n this.recoveryParam = null;\n else\n this.recoveryParam = options.recoveryParam;\n}\nmodule.exports = Signature;\n\nfunction Position() {\n this.place = 0;\n}\n\nfunction getLength(buf, p) {\n var initial = buf[p.place++];\n if (!(initial & 0x80)) {\n return initial;\n }\n var octetLen = initial & 0xf;\n\n // Indefinite length or overflow\n if (octetLen === 0 || octetLen > 4) {\n return false;\n }\n\n var val = 0;\n for (var i = 0, off = p.place; i < octetLen; i++, off++) {\n val <<= 8;\n val |= buf[off];\n val >>>= 0;\n }\n\n // Leading zeroes\n if (val <= 0x7f) {\n return false;\n }\n\n p.place = off;\n return val;\n}\n\nfunction rmPadding(buf) {\n var i = 0;\n var len = buf.length - 1;\n while (!buf[i] && !(buf[i + 1] & 0x80) && i < len) {\n i++;\n }\n if (i === 0) {\n return buf;\n }\n return buf.slice(i);\n}\n\nSignature.prototype._importDER = function _importDER(data, enc) {\n data = utils.toArray(data, enc);\n var p = new Position();\n if (data[p.place++] !== 0x30) {\n return false;\n }\n var len = getLength(data, p);\n if (len === false) {\n return false;\n }\n if ((len + p.place) !== data.length) {\n return false;\n }\n if (data[p.place++] !== 0x02) {\n return false;\n }\n var rlen = getLength(data, p);\n if (rlen === false) {\n return false;\n }\n var r = data.slice(p.place, rlen + p.place);\n p.place += rlen;\n if (data[p.place++] !== 0x02) {\n return false;\n }\n var slen = getLength(data, p);\n if (slen === false) {\n return false;\n }\n if (data.length !== slen + p.place) {\n return false;\n }\n var s = data.slice(p.place, slen + p.place);\n if (r[0] === 0) {\n if (r[1] & 0x80) {\n r = r.slice(1);\n } else {\n // Leading zeroes\n return false;\n }\n }\n if (s[0] === 0) {\n if (s[1] & 0x80) {\n s = s.slice(1);\n } else {\n // Leading zeroes\n return false;\n }\n }\n\n this.r = new BN(r);\n this.s = new BN(s);\n this.recoveryParam = null;\n\n return true;\n};\n\nfunction constructLength(arr, len) {\n if (len < 0x80) {\n arr.push(len);\n return;\n }\n var octets = 1 + (Math.log(len) / Math.LN2 >>> 3);\n arr.push(octets | 0x80);\n while (--octets) {\n arr.push((len >>> (octets << 3)) & 0xff);\n }\n arr.push(len);\n}\n\nSignature.prototype.toDER = function toDER(enc) {\n var r = this.r.toArray();\n var s = this.s.toArray();\n\n // Pad values\n if (r[0] & 0x80)\n r = [ 0 ].concat(r);\n // Pad values\n if (s[0] & 0x80)\n s = [ 0 ].concat(s);\n\n r = rmPadding(r);\n s = rmPadding(s);\n\n while (!s[0] && !(s[1] & 0x80)) {\n s = s.slice(1);\n }\n var arr = [ 0x02 ];\n constructLength(arr, r.length);\n arr = arr.concat(r);\n arr.push(0x02);\n constructLength(arr, s.length);\n var backHalf = arr.concat(s);\n var res = [ 0x30 ];\n constructLength(res, backHalf.length);\n res = res.concat(backHalf);\n return utils.encode(res, enc);\n};\n","'use strict';\n\nvar hash = require('hash.js');\nvar curves = require('../curves');\nvar utils = require('../utils');\nvar assert = utils.assert;\nvar parseBytes = utils.parseBytes;\nvar KeyPair = require('./key');\nvar Signature = require('./signature');\n\nfunction EDDSA(curve) {\n assert(curve === 'ed25519', 'only tested with ed25519 so far');\n\n if (!(this instanceof EDDSA))\n return new EDDSA(curve);\n\n curve = curves[curve].curve;\n this.curve = curve;\n this.g = curve.g;\n this.g.precompute(curve.n.bitLength() + 1);\n\n this.pointClass = curve.point().constructor;\n this.encodingLength = Math.ceil(curve.n.bitLength() / 8);\n this.hash = hash.sha512;\n}\n\nmodule.exports = EDDSA;\n\n/**\n* @param {Array|String} message - message bytes\n* @param {Array|String|KeyPair} secret - secret bytes or a keypair\n* @returns {Signature} - signature\n*/\nEDDSA.prototype.sign = function sign(message, secret) {\n message = parseBytes(message);\n var key = this.keyFromSecret(secret);\n var r = this.hashInt(key.messagePrefix(), message);\n var R = this.g.mul(r);\n var Rencoded = this.encodePoint(R);\n var s_ = this.hashInt(Rencoded, key.pubBytes(), message)\n .mul(key.priv());\n var S = r.add(s_).umod(this.curve.n);\n return this.makeSignature({ R: R, S: S, Rencoded: Rencoded });\n};\n\n/**\n* @param {Array} message - message bytes\n* @param {Array|String|Signature} sig - sig bytes\n* @param {Array|String|Point|KeyPair} pub - public key\n* @returns {Boolean} - true if public key matches sig of message\n*/\nEDDSA.prototype.verify = function verify(message, sig, pub) {\n message = parseBytes(message);\n sig = this.makeSignature(sig);\n var key = this.keyFromPublic(pub);\n var h = this.hashInt(sig.Rencoded(), key.pubBytes(), message);\n var SG = this.g.mul(sig.S());\n var RplusAh = sig.R().add(key.pub().mul(h));\n return RplusAh.eq(SG);\n};\n\nEDDSA.prototype.hashInt = function hashInt() {\n var hash = this.hash();\n for (var i = 0; i < arguments.length; i++)\n hash.update(arguments[i]);\n return utils.intFromLE(hash.digest()).umod(this.curve.n);\n};\n\nEDDSA.prototype.keyFromPublic = function keyFromPublic(pub) {\n return KeyPair.fromPublic(this, pub);\n};\n\nEDDSA.prototype.keyFromSecret = function keyFromSecret(secret) {\n return KeyPair.fromSecret(this, secret);\n};\n\nEDDSA.prototype.makeSignature = function makeSignature(sig) {\n if (sig instanceof Signature)\n return sig;\n return new Signature(this, sig);\n};\n\n/**\n* * https://tools.ietf.org/html/draft-josefsson-eddsa-ed25519-03#section-5.2\n*\n* EDDSA defines methods for encoding and decoding points and integers. These are\n* helper convenience methods, that pass along to utility functions implied\n* parameters.\n*\n*/\nEDDSA.prototype.encodePoint = function encodePoint(point) {\n var enc = point.getY().toArray('le', this.encodingLength);\n enc[this.encodingLength - 1] |= point.getX().isOdd() ? 0x80 : 0;\n return enc;\n};\n\nEDDSA.prototype.decodePoint = function decodePoint(bytes) {\n bytes = utils.parseBytes(bytes);\n\n var lastIx = bytes.length - 1;\n var normed = bytes.slice(0, lastIx).concat(bytes[lastIx] & ~0x80);\n var xIsOdd = (bytes[lastIx] & 0x80) !== 0;\n\n var y = utils.intFromLE(normed);\n return this.curve.pointFromY(y, xIsOdd);\n};\n\nEDDSA.prototype.encodeInt = function encodeInt(num) {\n return num.toArray('le', this.encodingLength);\n};\n\nEDDSA.prototype.decodeInt = function decodeInt(bytes) {\n return utils.intFromLE(bytes);\n};\n\nEDDSA.prototype.isPoint = function isPoint(val) {\n return val instanceof this.pointClass;\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar assert = utils.assert;\nvar parseBytes = utils.parseBytes;\nvar cachedProperty = utils.cachedProperty;\n\n/**\n* @param {EDDSA} eddsa - instance\n* @param {Object} params - public/private key parameters\n*\n* @param {Array} [params.secret] - secret seed bytes\n* @param {Point} [params.pub] - public key point (aka `A` in eddsa terms)\n* @param {Array} [params.pub] - public key point encoded as bytes\n*\n*/\nfunction KeyPair(eddsa, params) {\n this.eddsa = eddsa;\n this._secret = parseBytes(params.secret);\n if (eddsa.isPoint(params.pub))\n this._pub = params.pub;\n else\n this._pubBytes = parseBytes(params.pub);\n}\n\nKeyPair.fromPublic = function fromPublic(eddsa, pub) {\n if (pub instanceof KeyPair)\n return pub;\n return new KeyPair(eddsa, { pub: pub });\n};\n\nKeyPair.fromSecret = function fromSecret(eddsa, secret) {\n if (secret instanceof KeyPair)\n return secret;\n return new KeyPair(eddsa, { secret: secret });\n};\n\nKeyPair.prototype.secret = function secret() {\n return this._secret;\n};\n\ncachedProperty(KeyPair, 'pubBytes', function pubBytes() {\n return this.eddsa.encodePoint(this.pub());\n});\n\ncachedProperty(KeyPair, 'pub', function pub() {\n if (this._pubBytes)\n return this.eddsa.decodePoint(this._pubBytes);\n return this.eddsa.g.mul(this.priv());\n});\n\ncachedProperty(KeyPair, 'privBytes', function privBytes() {\n var eddsa = this.eddsa;\n var hash = this.hash();\n var lastIx = eddsa.encodingLength - 1;\n\n var a = hash.slice(0, eddsa.encodingLength);\n a[0] &= 248;\n a[lastIx] &= 127;\n a[lastIx] |= 64;\n\n return a;\n});\n\ncachedProperty(KeyPair, 'priv', function priv() {\n return this.eddsa.decodeInt(this.privBytes());\n});\n\ncachedProperty(KeyPair, 'hash', function hash() {\n return this.eddsa.hash().update(this.secret()).digest();\n});\n\ncachedProperty(KeyPair, 'messagePrefix', function messagePrefix() {\n return this.hash().slice(this.eddsa.encodingLength);\n});\n\nKeyPair.prototype.sign = function sign(message) {\n assert(this._secret, 'KeyPair can only verify');\n return this.eddsa.sign(message, this);\n};\n\nKeyPair.prototype.verify = function verify(message, sig) {\n return this.eddsa.verify(message, sig, this);\n};\n\nKeyPair.prototype.getSecret = function getSecret(enc) {\n assert(this._secret, 'KeyPair is public only');\n return utils.encode(this.secret(), enc);\n};\n\nKeyPair.prototype.getPublic = function getPublic(enc) {\n return utils.encode(this.pubBytes(), enc);\n};\n\nmodule.exports = KeyPair;\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar assert = utils.assert;\nvar cachedProperty = utils.cachedProperty;\nvar parseBytes = utils.parseBytes;\n\n/**\n* @param {EDDSA} eddsa - eddsa instance\n* @param {Array|Object} sig -\n* @param {Array|Point} [sig.R] - R point as Point or bytes\n* @param {Array|bn} [sig.S] - S scalar as bn or bytes\n* @param {Array} [sig.Rencoded] - R point encoded\n* @param {Array} [sig.Sencoded] - S scalar encoded\n*/\nfunction Signature(eddsa, sig) {\n this.eddsa = eddsa;\n\n if (typeof sig !== 'object')\n sig = parseBytes(sig);\n\n if (Array.isArray(sig)) {\n sig = {\n R: sig.slice(0, eddsa.encodingLength),\n S: sig.slice(eddsa.encodingLength),\n };\n }\n\n assert(sig.R && sig.S, 'Signature without R or S');\n\n if (eddsa.isPoint(sig.R))\n this._R = sig.R;\n if (sig.S instanceof BN)\n this._S = sig.S;\n\n this._Rencoded = Array.isArray(sig.R) ? sig.R : sig.Rencoded;\n this._Sencoded = Array.isArray(sig.S) ? sig.S : sig.Sencoded;\n}\n\ncachedProperty(Signature, 'S', function S() {\n return this.eddsa.decodeInt(this.Sencoded());\n});\n\ncachedProperty(Signature, 'R', function R() {\n return this.eddsa.decodePoint(this.Rencoded());\n});\n\ncachedProperty(Signature, 'Rencoded', function Rencoded() {\n return this.eddsa.encodePoint(this.R());\n});\n\ncachedProperty(Signature, 'Sencoded', function Sencoded() {\n return this.eddsa.encodeInt(this.S());\n});\n\nSignature.prototype.toBytes = function toBytes() {\n return this.Rencoded().concat(this.Sencoded());\n};\n\nSignature.prototype.toHex = function toHex() {\n return utils.encode(this.toBytes(), 'hex').toUpperCase();\n};\n\nmodule.exports = Signature;\n","module.exports = {\n doubles: {\n step: 4,\n points: [\n [\n 'e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a',\n 'f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821',\n ],\n [\n '8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508',\n '11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf',\n ],\n [\n '175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739',\n 'd3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695',\n ],\n [\n '363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640',\n '4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9',\n ],\n [\n '8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c',\n '4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36',\n ],\n [\n '723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda',\n '96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f',\n ],\n [\n 'eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa',\n '5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999',\n ],\n [\n '100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0',\n 'cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09',\n ],\n [\n 'e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d',\n '9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d',\n ],\n [\n 'feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d',\n 'e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088',\n ],\n [\n 'da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1',\n '9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d',\n ],\n [\n '53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0',\n '5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8',\n ],\n [\n '8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047',\n '10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a',\n ],\n [\n '385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862',\n '283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453',\n ],\n [\n '6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7',\n '7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160',\n ],\n [\n '3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd',\n '56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0',\n ],\n [\n '85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83',\n '7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6',\n ],\n [\n '948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a',\n '53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589',\n ],\n [\n '6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8',\n 'bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17',\n ],\n [\n 'e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d',\n '4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda',\n ],\n [\n 'e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725',\n '7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd',\n ],\n [\n '213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754',\n '4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2',\n ],\n [\n '4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c',\n '17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6',\n ],\n [\n 'fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6',\n '6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f',\n ],\n [\n '76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39',\n 'c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01',\n ],\n [\n 'c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891',\n '893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3',\n ],\n [\n 'd895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b',\n 'febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f',\n ],\n [\n 'b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03',\n '2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7',\n ],\n [\n 'e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d',\n 'eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78',\n ],\n [\n 'a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070',\n '7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1',\n ],\n [\n '90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4',\n 'e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150',\n ],\n [\n '8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da',\n '662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82',\n ],\n [\n 'e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11',\n '1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc',\n ],\n [\n '8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e',\n 'efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b',\n ],\n [\n 'e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41',\n '2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51',\n ],\n [\n 'b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef',\n '67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45',\n ],\n [\n 'd68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8',\n 'db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120',\n ],\n [\n '324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d',\n '648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84',\n ],\n [\n '4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96',\n '35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d',\n ],\n [\n '9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd',\n 'ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d',\n ],\n [\n '6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5',\n '9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8',\n ],\n [\n 'a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266',\n '40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8',\n ],\n [\n '7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71',\n '34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac',\n ],\n [\n '928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac',\n 'c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f',\n ],\n [\n '85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751',\n '1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962',\n ],\n [\n 'ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e',\n '493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907',\n ],\n [\n '827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241',\n 'c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec',\n ],\n [\n 'eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3',\n 'be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d',\n ],\n [\n 'e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f',\n '4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414',\n ],\n [\n '1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19',\n 'aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd',\n ],\n [\n '146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be',\n 'b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0',\n ],\n [\n 'fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9',\n '6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811',\n ],\n [\n 'da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2',\n '8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1',\n ],\n [\n 'a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13',\n '7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c',\n ],\n [\n '174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c',\n 'ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73',\n ],\n [\n '959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba',\n '2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd',\n ],\n [\n 'd2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151',\n 'e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405',\n ],\n [\n '64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073',\n 'd99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589',\n ],\n [\n '8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458',\n '38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e',\n ],\n [\n '13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b',\n '69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27',\n ],\n [\n 'bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366',\n 'd3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1',\n ],\n [\n '8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa',\n '40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482',\n ],\n [\n '8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0',\n '620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945',\n ],\n [\n 'dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787',\n '7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573',\n ],\n [\n 'f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e',\n 'ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82',\n ],\n ],\n },\n naf: {\n wnd: 7,\n points: [\n [\n 'f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9',\n '388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672',\n ],\n [\n '2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4',\n 'd8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6',\n ],\n [\n '5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc',\n '6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da',\n ],\n [\n 'acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe',\n 'cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37',\n ],\n [\n '774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb',\n 'd984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b',\n ],\n [\n 'f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8',\n 'ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81',\n ],\n [\n 'd7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e',\n '581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58',\n ],\n [\n 'defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34',\n '4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77',\n ],\n [\n '2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c',\n '85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a',\n ],\n [\n '352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5',\n '321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c',\n ],\n [\n '2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f',\n '2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67',\n ],\n [\n '9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714',\n '73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402',\n ],\n [\n 'daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729',\n 'a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55',\n ],\n [\n 'c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db',\n '2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482',\n ],\n [\n '6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4',\n 'e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82',\n ],\n [\n '1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5',\n 'b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396',\n ],\n [\n '605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479',\n '2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49',\n ],\n [\n '62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d',\n '80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf',\n ],\n [\n '80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f',\n '1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a',\n ],\n [\n '7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb',\n 'd0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7',\n ],\n [\n 'd528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9',\n 'eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933',\n ],\n [\n '49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963',\n '758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a',\n ],\n [\n '77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74',\n '958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6',\n ],\n [\n 'f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530',\n 'e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37',\n ],\n [\n '463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b',\n '5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e',\n ],\n [\n 'f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247',\n 'cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6',\n ],\n [\n 'caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1',\n 'cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476',\n ],\n [\n '2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120',\n '4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40',\n ],\n [\n '7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435',\n '91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61',\n ],\n [\n '754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18',\n '673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683',\n ],\n [\n 'e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8',\n '59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5',\n ],\n [\n '186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb',\n '3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b',\n ],\n [\n 'df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f',\n '55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417',\n ],\n [\n '5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143',\n 'efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868',\n ],\n [\n '290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba',\n 'e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a',\n ],\n [\n 'af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45',\n 'f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6',\n ],\n [\n '766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a',\n '744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996',\n ],\n [\n '59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e',\n 'c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e',\n ],\n [\n 'f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8',\n 'e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d',\n ],\n [\n '7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c',\n '30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2',\n ],\n [\n '948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519',\n 'e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e',\n ],\n [\n '7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab',\n '100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437',\n ],\n [\n '3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca',\n 'ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311',\n ],\n [\n 'd3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf',\n '8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4',\n ],\n [\n '1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610',\n '68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575',\n ],\n [\n '733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4',\n 'f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d',\n ],\n [\n '15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c',\n 'd56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d',\n ],\n [\n 'a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940',\n 'edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629',\n ],\n [\n 'e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980',\n 'a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06',\n ],\n [\n '311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3',\n '66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374',\n ],\n [\n '34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf',\n '9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee',\n ],\n [\n 'f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63',\n '4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1',\n ],\n [\n 'd7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448',\n 'fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b',\n ],\n [\n '32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf',\n '5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661',\n ],\n [\n '7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5',\n '8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6',\n ],\n [\n 'ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6',\n '8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e',\n ],\n [\n '16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5',\n '5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d',\n ],\n [\n 'eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99',\n 'f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc',\n ],\n [\n '78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51',\n 'f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4',\n ],\n [\n '494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5',\n '42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c',\n ],\n [\n 'a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5',\n '204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b',\n ],\n [\n 'c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997',\n '4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913',\n ],\n [\n '841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881',\n '73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154',\n ],\n [\n '5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5',\n '39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865',\n ],\n [\n '36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66',\n 'd2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc',\n ],\n [\n '336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726',\n 'ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224',\n ],\n [\n '8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede',\n '6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e',\n ],\n [\n '1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94',\n '60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6',\n ],\n [\n '85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31',\n '3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511',\n ],\n [\n '29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51',\n 'b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b',\n ],\n [\n 'a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252',\n 'ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2',\n ],\n [\n '4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5',\n 'cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c',\n ],\n [\n 'd24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b',\n '6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3',\n ],\n [\n 'ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4',\n '322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d',\n ],\n [\n 'af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f',\n '6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700',\n ],\n [\n 'e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889',\n '2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4',\n ],\n [\n '591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246',\n 'b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196',\n ],\n [\n '11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984',\n '998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4',\n ],\n [\n '3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a',\n 'b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257',\n ],\n [\n 'cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030',\n 'bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13',\n ],\n [\n 'c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197',\n '6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096',\n ],\n [\n 'c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593',\n 'c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38',\n ],\n [\n 'a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef',\n '21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f',\n ],\n [\n '347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38',\n '60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448',\n ],\n [\n 'da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a',\n '49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a',\n ],\n [\n 'c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111',\n '5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4',\n ],\n [\n '4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502',\n '7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437',\n ],\n [\n '3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea',\n 'be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7',\n ],\n [\n 'cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26',\n '8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d',\n ],\n [\n 'b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986',\n '39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a',\n ],\n [\n 'd4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e',\n '62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54',\n ],\n [\n '48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4',\n '25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77',\n ],\n [\n 'dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda',\n 'ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517',\n ],\n [\n '6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859',\n 'cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10',\n ],\n [\n 'e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f',\n 'f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125',\n ],\n [\n 'eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c',\n '6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e',\n ],\n [\n '13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942',\n 'fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1',\n ],\n [\n 'ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a',\n '1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2',\n ],\n [\n 'b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80',\n '5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423',\n ],\n [\n 'ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d',\n '438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8',\n ],\n [\n '8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1',\n 'cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758',\n ],\n [\n '52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63',\n 'c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375',\n ],\n [\n 'e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352',\n '6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d',\n ],\n [\n '7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193',\n 'ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec',\n ],\n [\n '5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00',\n '9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0',\n ],\n [\n '32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58',\n 'ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c',\n ],\n [\n 'e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7',\n 'd3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4',\n ],\n [\n '8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8',\n 'c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f',\n ],\n [\n '4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e',\n '67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649',\n ],\n [\n '3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d',\n 'cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826',\n ],\n [\n '674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b',\n '299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5',\n ],\n [\n 'd32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f',\n 'f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87',\n ],\n [\n '30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6',\n '462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b',\n ],\n [\n 'be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297',\n '62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc',\n ],\n [\n '93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a',\n '7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c',\n ],\n [\n 'b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c',\n 'ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f',\n ],\n [\n 'd5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52',\n '4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a',\n ],\n [\n 'd3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb',\n 'bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46',\n ],\n [\n '463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065',\n 'bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f',\n ],\n [\n '7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917',\n '603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03',\n ],\n [\n '74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9',\n 'cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08',\n ],\n [\n '30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3',\n '553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8',\n ],\n [\n '9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57',\n '712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373',\n ],\n [\n '176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66',\n 'ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3',\n ],\n [\n '75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8',\n '9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8',\n ],\n [\n '809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721',\n '9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1',\n ],\n [\n '1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180',\n '4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9',\n ],\n ],\n },\n};\n","'use strict';\n\nvar utils = exports;\nvar BN = require('bn.js');\nvar minAssert = require('minimalistic-assert');\nvar minUtils = require('minimalistic-crypto-utils');\n\nutils.assert = minAssert;\nutils.toArray = minUtils.toArray;\nutils.zero2 = minUtils.zero2;\nutils.toHex = minUtils.toHex;\nutils.encode = minUtils.encode;\n\n// Represent num in a w-NAF form\nfunction getNAF(num, w, bits) {\n var naf = new Array(Math.max(num.bitLength(), bits) + 1);\n naf.fill(0);\n\n var ws = 1 << (w + 1);\n var k = num.clone();\n\n for (var i = 0; i < naf.length; i++) {\n var z;\n var mod = k.andln(ws - 1);\n if (k.isOdd()) {\n if (mod > (ws >> 1) - 1)\n z = (ws >> 1) - mod;\n else\n z = mod;\n k.isubn(z);\n } else {\n z = 0;\n }\n\n naf[i] = z;\n k.iushrn(1);\n }\n\n return naf;\n}\nutils.getNAF = getNAF;\n\n// Represent k1, k2 in a Joint Sparse Form\nfunction getJSF(k1, k2) {\n var jsf = [\n [],\n [],\n ];\n\n k1 = k1.clone();\n k2 = k2.clone();\n var d1 = 0;\n var d2 = 0;\n var m8;\n while (k1.cmpn(-d1) > 0 || k2.cmpn(-d2) > 0) {\n // First phase\n var m14 = (k1.andln(3) + d1) & 3;\n var m24 = (k2.andln(3) + d2) & 3;\n if (m14 === 3)\n m14 = -1;\n if (m24 === 3)\n m24 = -1;\n var u1;\n if ((m14 & 1) === 0) {\n u1 = 0;\n } else {\n m8 = (k1.andln(7) + d1) & 7;\n if ((m8 === 3 || m8 === 5) && m24 === 2)\n u1 = -m14;\n else\n u1 = m14;\n }\n jsf[0].push(u1);\n\n var u2;\n if ((m24 & 1) === 0) {\n u2 = 0;\n } else {\n m8 = (k2.andln(7) + d2) & 7;\n if ((m8 === 3 || m8 === 5) && m14 === 2)\n u2 = -m24;\n else\n u2 = m24;\n }\n jsf[1].push(u2);\n\n // Second phase\n if (2 * d1 === u1 + 1)\n d1 = 1 - d1;\n if (2 * d2 === u2 + 1)\n d2 = 1 - d2;\n k1.iushrn(1);\n k2.iushrn(1);\n }\n\n return jsf;\n}\nutils.getJSF = getJSF;\n\nfunction cachedProperty(obj, name, computer) {\n var key = '_' + name;\n obj.prototype[name] = function cachedProperty() {\n return this[key] !== undefined ? this[key] :\n this[key] = computer.call(this);\n };\n}\nutils.cachedProperty = cachedProperty;\n\nfunction parseBytes(bytes) {\n return typeof bytes === 'string' ? utils.toArray(bytes, 'hex') :\n bytes;\n}\nutils.parseBytes = parseBytes;\n\nfunction intFromLE(bytes) {\n return new BN(bytes, 'hex', 'le');\n}\nutils.intFromLE = intFromLE;\n\n","'use strict';\n\nfunction assign(obj, props) {\n for (const key in props) {\n Object.defineProperty(obj, key, {\n value: props[key],\n enumerable: true,\n configurable: true,\n });\n }\n\n return obj;\n}\n\nfunction createError(err, code, props) {\n if (!err || typeof err === 'string') {\n throw new TypeError('Please pass an Error to err-code');\n }\n\n if (!props) {\n props = {};\n }\n\n if (typeof code === 'object') {\n props = code;\n code = undefined;\n }\n\n if (code != null) {\n props.code = code;\n }\n\n try {\n return assign(err, props);\n } catch (_) {\n props.message = err.message;\n props.stack = err.stack;\n\n const ErrClass = function () {};\n\n ErrClass.prototype = Object.create(Object.getPrototypeOf(err));\n\n return assign(new ErrClass(), props);\n }\n}\n\nmodule.exports = createError;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.keccak512 = exports.keccak384 = exports.keccak256 = exports.keccak224 = void 0;\nconst sha3_1 = require(\"@noble/hashes/sha3\");\nconst utils_1 = require(\"./utils\");\nexports.keccak224 = (0, utils_1.wrapHash)(sha3_1.keccak_224);\nexports.keccak256 = (() => {\n const k = (0, utils_1.wrapHash)(sha3_1.keccak_256);\n k.create = sha3_1.keccak_256.create;\n return k;\n})();\nexports.keccak384 = (0, utils_1.wrapHash)(sha3_1.keccak_384);\nexports.keccak512 = (0, utils_1.wrapHash)(sha3_1.keccak_512);\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.crypto = exports.wrapHash = exports.equalsBytes = exports.hexToBytes = exports.bytesToUtf8 = exports.utf8ToBytes = exports.createView = exports.concatBytes = exports.toHex = exports.bytesToHex = exports.assertBytes = exports.assertBool = void 0;\n// buf.toString('hex') -> toHex(buf)\nconst _assert_1 = __importDefault(require(\"@noble/hashes/_assert\"));\nconst utils_1 = require(\"@noble/hashes/utils\");\nconst assertBool = _assert_1.default.bool;\nexports.assertBool = assertBool;\nconst assertBytes = _assert_1.default.bytes;\nexports.assertBytes = assertBytes;\nvar utils_2 = require(\"@noble/hashes/utils\");\nObject.defineProperty(exports, \"bytesToHex\", { enumerable: true, get: function () { return utils_2.bytesToHex; } });\nObject.defineProperty(exports, \"toHex\", { enumerable: true, get: function () { return utils_2.bytesToHex; } });\nObject.defineProperty(exports, \"concatBytes\", { enumerable: true, get: function () { return utils_2.concatBytes; } });\nObject.defineProperty(exports, \"createView\", { enumerable: true, get: function () { return utils_2.createView; } });\nObject.defineProperty(exports, \"utf8ToBytes\", { enumerable: true, get: function () { return utils_2.utf8ToBytes; } });\n// buf.toString('utf8') -> bytesToUtf8(buf)\nfunction bytesToUtf8(data) {\n if (!(data instanceof Uint8Array)) {\n throw new TypeError(`bytesToUtf8 expected Uint8Array, got ${typeof data}`);\n }\n return new TextDecoder().decode(data);\n}\nexports.bytesToUtf8 = bytesToUtf8;\nfunction hexToBytes(data) {\n const sliced = data.startsWith(\"0x\") ? data.substring(2) : data;\n return (0, utils_1.hexToBytes)(sliced);\n}\nexports.hexToBytes = hexToBytes;\n// buf.equals(buf2) -> equalsBytes(buf, buf2)\nfunction equalsBytes(a, b) {\n if (a.length !== b.length) {\n return false;\n }\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) {\n return false;\n }\n }\n return true;\n}\nexports.equalsBytes = equalsBytes;\n// Internal utils\nfunction wrapHash(hash) {\n return (msg) => {\n _assert_1.default.bytes(msg);\n return hash(msg);\n };\n}\nexports.wrapHash = wrapHash;\nexports.crypto = (() => {\n const webCrypto = typeof self === \"object\" && \"crypto\" in self ? self.crypto : undefined;\n const nodeRequire = typeof module !== \"undefined\" &&\n typeof module.require === \"function\" &&\n module.require.bind(module);\n return {\n node: nodeRequire && !webCrypto ? nodeRequire(\"crypto\") : undefined,\n web: webCrypto\n };\n})();\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar R = typeof Reflect === 'object' ? Reflect : null\nvar ReflectApply = R && typeof R.apply === 'function'\n ? R.apply\n : function ReflectApply(target, receiver, args) {\n return Function.prototype.apply.call(target, receiver, args);\n }\n\nvar ReflectOwnKeys\nif (R && typeof R.ownKeys === 'function') {\n ReflectOwnKeys = R.ownKeys\n} else if (Object.getOwnPropertySymbols) {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target)\n .concat(Object.getOwnPropertySymbols(target));\n };\n} else {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target);\n };\n}\n\nfunction ProcessEmitWarning(warning) {\n if (console && console.warn) console.warn(warning);\n}\n\nvar NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {\n return value !== value;\n}\n\nfunction EventEmitter() {\n EventEmitter.init.call(this);\n}\nmodule.exports = EventEmitter;\nmodule.exports.once = once;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._eventsCount = 0;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nfunction checkListener(listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n}\n\nObject.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + arg + '.');\n }\n defaultMaxListeners = arg;\n }\n});\n\nEventEmitter.init = function() {\n\n if (this._events === undefined ||\n this._events === Object.getPrototypeOf(this)._events) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n};\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + n + '.');\n }\n this._maxListeners = n;\n return this;\n};\n\nfunction _getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return _getMaxListeners(this);\n};\n\nEventEmitter.prototype.emit = function emit(type) {\n var args = [];\n for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);\n var doError = (type === 'error');\n\n var events = this._events;\n if (events !== undefined)\n doError = (doError && events.error === undefined);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n var er;\n if (args.length > 0)\n er = args[0];\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n\n var handler = events[type];\n\n if (handler === undefined)\n return false;\n\n if (typeof handler === 'function') {\n ReflectApply(handler, this, args);\n } else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n ReflectApply(listeners[i], this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n checkListener(listener);\n\n events = target._events;\n if (events === undefined) {\n events = target._events = Object.create(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener !== undefined) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (existing === undefined) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n // If we've already got an array, just append.\n } else if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n\n // Check for listener leak\n m = _getMaxListeners(target);\n if (m > 0 && existing.length > m && !existing.warned) {\n existing.warned = true;\n // No error code for this since it is a Warning\n // eslint-disable-next-line no-restricted-syntax\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' ' + String(type) + ' listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n ProcessEmitWarning(w);\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n if (arguments.length === 0)\n return this.listener.call(this.target);\n return this.listener.apply(this.target, arguments);\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = onceWrapper.bind(state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n checkListener(listener);\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n checkListener(listener);\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n checkListener(listener);\n\n events = this._events;\n if (events === undefined)\n return this;\n\n list = events[type];\n if (list === undefined)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else {\n spliceOne(list, position);\n }\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener !== undefined)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (events === undefined)\n return this;\n\n // not listening for removeListener, no need to emit\n if (events.removeListener === undefined) {\n if (arguments.length === 0) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n } else if (events[type] !== undefined) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = Object.keys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = Object.create(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners !== undefined) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (events === undefined)\n return [];\n\n var evlistener = events[type];\n if (evlistener === undefined)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ?\n unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events !== undefined) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener !== undefined) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];\n};\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction spliceOne(list, index) {\n for (; index + 1 < list.length; index++)\n list[index] = list[index + 1];\n list.pop();\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n\nfunction once(emitter, name) {\n return new Promise(function (resolve, reject) {\n function errorListener(err) {\n emitter.removeListener(name, resolver);\n reject(err);\n }\n\n function resolver() {\n if (typeof emitter.removeListener === 'function') {\n emitter.removeListener('error', errorListener);\n }\n resolve([].slice.call(arguments));\n };\n\n eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });\n if (name !== 'error') {\n addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });\n }\n });\n}\n\nfunction addErrorHandlerIfEventEmitter(emitter, handler, flags) {\n if (typeof emitter.on === 'function') {\n eventTargetAgnosticAddListener(emitter, 'error', handler, flags);\n }\n}\n\nfunction eventTargetAgnosticAddListener(emitter, name, listener, flags) {\n if (typeof emitter.on === 'function') {\n if (flags.once) {\n emitter.once(name, listener);\n } else {\n emitter.on(name, listener);\n }\n } else if (typeof emitter.addEventListener === 'function') {\n // EventTarget does not have `error` event semantics like Node\n // EventEmitters, we do not listen for `error` events here.\n emitter.addEventListener(name, function wrapListener(arg) {\n // IE does not have builtin `{ once: true }` support so we\n // have to do it manually.\n if (flags.once) {\n emitter.removeEventListener(name, wrapListener);\n }\n listener(arg);\n });\n } else {\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof emitter);\n }\n}\n","'use strict';\n\nmodule.exports = function (data, opts) {\n if (!opts) opts = {};\n if (typeof opts === 'function') opts = { cmp: opts };\n var cycles = (typeof opts.cycles === 'boolean') ? opts.cycles : false;\n\n var cmp = opts.cmp && (function (f) {\n return function (node) {\n return function (a, b) {\n var aobj = { key: a, value: node[a] };\n var bobj = { key: b, value: node[b] };\n return f(aobj, bobj);\n };\n };\n })(opts.cmp);\n\n var seen = [];\n return (function stringify (node) {\n if (node && node.toJSON && typeof node.toJSON === 'function') {\n node = node.toJSON();\n }\n\n if (node === undefined) return;\n if (typeof node == 'number') return isFinite(node) ? '' + node : 'null';\n if (typeof node !== 'object') return JSON.stringify(node);\n\n var i, out;\n if (Array.isArray(node)) {\n out = '[';\n for (i = 0; i < node.length; i++) {\n if (i) out += ',';\n out += stringify(node[i]) || 'null';\n }\n return out + ']';\n }\n\n if (node === null) return 'null';\n\n if (seen.indexOf(node) !== -1) {\n if (cycles) return JSON.stringify('__cycle__');\n throw new TypeError('Converting circular structure to JSON');\n }\n\n var seenIndex = seen.push(node) - 1;\n var keys = Object.keys(node).sort(cmp && cmp(node));\n out = '';\n for (i = 0; i < keys.length; i++) {\n var key = keys[i];\n var value = stringify(node[key]);\n\n if (!value) continue;\n if (out) out += ',';\n out += JSON.stringify(key) + ':' + value;\n }\n seen.splice(seenIndex, 1);\n return '{' + out + '}';\n })(data);\n};\n","'use strict'\nvar Buffer = require('safe-buffer').Buffer\nvar Transform = require('readable-stream').Transform\nvar inherits = require('inherits')\n\nfunction throwIfNotStringOrBuffer (val, prefix) {\n if (!Buffer.isBuffer(val) && typeof val !== 'string') {\n throw new TypeError(prefix + ' must be a string or a buffer')\n }\n}\n\nfunction HashBase (blockSize) {\n Transform.call(this)\n\n this._block = Buffer.allocUnsafe(blockSize)\n this._blockSize = blockSize\n this._blockOffset = 0\n this._length = [0, 0, 0, 0]\n\n this._finalized = false\n}\n\ninherits(HashBase, Transform)\n\nHashBase.prototype._transform = function (chunk, encoding, callback) {\n var error = null\n try {\n this.update(chunk, encoding)\n } catch (err) {\n error = err\n }\n\n callback(error)\n}\n\nHashBase.prototype._flush = function (callback) {\n var error = null\n try {\n this.push(this.digest())\n } catch (err) {\n error = err\n }\n\n callback(error)\n}\n\nHashBase.prototype.update = function (data, encoding) {\n throwIfNotStringOrBuffer(data, 'Data')\n if (this._finalized) throw new Error('Digest already called')\n if (!Buffer.isBuffer(data)) data = Buffer.from(data, encoding)\n\n // consume data\n var block = this._block\n var offset = 0\n while (this._blockOffset + data.length - offset >= this._blockSize) {\n for (var i = this._blockOffset; i < this._blockSize;) block[i++] = data[offset++]\n this._update()\n this._blockOffset = 0\n }\n while (offset < data.length) block[this._blockOffset++] = data[offset++]\n\n // update length\n for (var j = 0, carry = data.length * 8; carry > 0; ++j) {\n this._length[j] += carry\n carry = (this._length[j] / 0x0100000000) | 0\n if (carry > 0) this._length[j] -= 0x0100000000 * carry\n }\n\n return this\n}\n\nHashBase.prototype._update = function () {\n throw new Error('_update is not implemented')\n}\n\nHashBase.prototype.digest = function (encoding) {\n if (this._finalized) throw new Error('Digest already called')\n this._finalized = true\n\n var digest = this._digest()\n if (encoding !== undefined) digest = digest.toString(encoding)\n\n // reset state\n this._block.fill(0)\n this._blockOffset = 0\n for (var i = 0; i < 4; ++i) this._length[i] = 0\n\n return digest\n}\n\nHashBase.prototype._digest = function () {\n throw new Error('_digest is not implemented')\n}\n\nmodule.exports = HashBase\n","var hash = exports;\n\nhash.utils = require('./hash/utils');\nhash.common = require('./hash/common');\nhash.sha = require('./hash/sha');\nhash.ripemd = require('./hash/ripemd');\nhash.hmac = require('./hash/hmac');\n\n// Proxy hash functions to the main object\nhash.sha1 = hash.sha.sha1;\nhash.sha256 = hash.sha.sha256;\nhash.sha224 = hash.sha.sha224;\nhash.sha384 = hash.sha.sha384;\nhash.sha512 = hash.sha.sha512;\nhash.ripemd160 = hash.ripemd.ripemd160;\n","'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction BlockHash() {\n this.pending = null;\n this.pendingTotal = 0;\n this.blockSize = this.constructor.blockSize;\n this.outSize = this.constructor.outSize;\n this.hmacStrength = this.constructor.hmacStrength;\n this.padLength = this.constructor.padLength / 8;\n this.endian = 'big';\n\n this._delta8 = this.blockSize / 8;\n this._delta32 = this.blockSize / 32;\n}\nexports.BlockHash = BlockHash;\n\nBlockHash.prototype.update = function update(msg, enc) {\n // Convert message to array, pad it, and join into 32bit blocks\n msg = utils.toArray(msg, enc);\n if (!this.pending)\n this.pending = msg;\n else\n this.pending = this.pending.concat(msg);\n this.pendingTotal += msg.length;\n\n // Enough data, try updating\n if (this.pending.length >= this._delta8) {\n msg = this.pending;\n\n // Process pending data in blocks\n var r = msg.length % this._delta8;\n this.pending = msg.slice(msg.length - r, msg.length);\n if (this.pending.length === 0)\n this.pending = null;\n\n msg = utils.join32(msg, 0, msg.length - r, this.endian);\n for (var i = 0; i < msg.length; i += this._delta32)\n this._update(msg, i, i + this._delta32);\n }\n\n return this;\n};\n\nBlockHash.prototype.digest = function digest(enc) {\n this.update(this._pad());\n assert(this.pending === null);\n\n return this._digest(enc);\n};\n\nBlockHash.prototype._pad = function pad() {\n var len = this.pendingTotal;\n var bytes = this._delta8;\n var k = bytes - ((len + this.padLength) % bytes);\n var res = new Array(k + this.padLength);\n res[0] = 0x80;\n for (var i = 1; i < k; i++)\n res[i] = 0;\n\n // Append length\n len <<= 3;\n if (this.endian === 'big') {\n for (var t = 8; t < this.padLength; t++)\n res[i++] = 0;\n\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = len & 0xff;\n } else {\n res[i++] = len & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n\n for (t = 8; t < this.padLength; t++)\n res[i++] = 0;\n }\n\n return res;\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction Hmac(hash, key, enc) {\n if (!(this instanceof Hmac))\n return new Hmac(hash, key, enc);\n this.Hash = hash;\n this.blockSize = hash.blockSize / 8;\n this.outSize = hash.outSize / 8;\n this.inner = null;\n this.outer = null;\n\n this._init(utils.toArray(key, enc));\n}\nmodule.exports = Hmac;\n\nHmac.prototype._init = function init(key) {\n // Shorten key, if needed\n if (key.length > this.blockSize)\n key = new this.Hash().update(key).digest();\n assert(key.length <= this.blockSize);\n\n // Add padding to key\n for (var i = key.length; i < this.blockSize; i++)\n key.push(0);\n\n for (i = 0; i < key.length; i++)\n key[i] ^= 0x36;\n this.inner = new this.Hash().update(key);\n\n // 0x36 ^ 0x5c = 0x6a\n for (i = 0; i < key.length; i++)\n key[i] ^= 0x6a;\n this.outer = new this.Hash().update(key);\n};\n\nHmac.prototype.update = function update(msg, enc) {\n this.inner.update(msg, enc);\n return this;\n};\n\nHmac.prototype.digest = function digest(enc) {\n this.outer.update(this.inner.digest());\n return this.outer.digest(enc);\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar common = require('./common');\n\nvar rotl32 = utils.rotl32;\nvar sum32 = utils.sum32;\nvar sum32_3 = utils.sum32_3;\nvar sum32_4 = utils.sum32_4;\nvar BlockHash = common.BlockHash;\n\nfunction RIPEMD160() {\n if (!(this instanceof RIPEMD160))\n return new RIPEMD160();\n\n BlockHash.call(this);\n\n this.h = [ 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0 ];\n this.endian = 'little';\n}\nutils.inherits(RIPEMD160, BlockHash);\nexports.ripemd160 = RIPEMD160;\n\nRIPEMD160.blockSize = 512;\nRIPEMD160.outSize = 160;\nRIPEMD160.hmacStrength = 192;\nRIPEMD160.padLength = 64;\n\nRIPEMD160.prototype._update = function update(msg, start) {\n var A = this.h[0];\n var B = this.h[1];\n var C = this.h[2];\n var D = this.h[3];\n var E = this.h[4];\n var Ah = A;\n var Bh = B;\n var Ch = C;\n var Dh = D;\n var Eh = E;\n for (var j = 0; j < 80; j++) {\n var T = sum32(\n rotl32(\n sum32_4(A, f(j, B, C, D), msg[r[j] + start], K(j)),\n s[j]),\n E);\n A = E;\n E = D;\n D = rotl32(C, 10);\n C = B;\n B = T;\n T = sum32(\n rotl32(\n sum32_4(Ah, f(79 - j, Bh, Ch, Dh), msg[rh[j] + start], Kh(j)),\n sh[j]),\n Eh);\n Ah = Eh;\n Eh = Dh;\n Dh = rotl32(Ch, 10);\n Ch = Bh;\n Bh = T;\n }\n T = sum32_3(this.h[1], C, Dh);\n this.h[1] = sum32_3(this.h[2], D, Eh);\n this.h[2] = sum32_3(this.h[3], E, Ah);\n this.h[3] = sum32_3(this.h[4], A, Bh);\n this.h[4] = sum32_3(this.h[0], B, Ch);\n this.h[0] = T;\n};\n\nRIPEMD160.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'little');\n else\n return utils.split32(this.h, 'little');\n};\n\nfunction f(j, x, y, z) {\n if (j <= 15)\n return x ^ y ^ z;\n else if (j <= 31)\n return (x & y) | ((~x) & z);\n else if (j <= 47)\n return (x | (~y)) ^ z;\n else if (j <= 63)\n return (x & z) | (y & (~z));\n else\n return x ^ (y | (~z));\n}\n\nfunction K(j) {\n if (j <= 15)\n return 0x00000000;\n else if (j <= 31)\n return 0x5a827999;\n else if (j <= 47)\n return 0x6ed9eba1;\n else if (j <= 63)\n return 0x8f1bbcdc;\n else\n return 0xa953fd4e;\n}\n\nfunction Kh(j) {\n if (j <= 15)\n return 0x50a28be6;\n else if (j <= 31)\n return 0x5c4dd124;\n else if (j <= 47)\n return 0x6d703ef3;\n else if (j <= 63)\n return 0x7a6d76e9;\n else\n return 0x00000000;\n}\n\nvar r = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,\n 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,\n 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12,\n 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2,\n 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13\n];\n\nvar rh = [\n 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12,\n 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2,\n 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13,\n 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14,\n 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11\n];\n\nvar s = [\n 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8,\n 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12,\n 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5,\n 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12,\n 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6\n];\n\nvar sh = [\n 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6,\n 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11,\n 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5,\n 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8,\n 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11\n];\n","'use strict';\n\nexports.sha1 = require('./sha/1');\nexports.sha224 = require('./sha/224');\nexports.sha256 = require('./sha/256');\nexports.sha384 = require('./sha/384');\nexports.sha512 = require('./sha/512');\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar shaCommon = require('./common');\n\nvar rotl32 = utils.rotl32;\nvar sum32 = utils.sum32;\nvar sum32_5 = utils.sum32_5;\nvar ft_1 = shaCommon.ft_1;\nvar BlockHash = common.BlockHash;\n\nvar sha1_K = [\n 0x5A827999, 0x6ED9EBA1,\n 0x8F1BBCDC, 0xCA62C1D6\n];\n\nfunction SHA1() {\n if (!(this instanceof SHA1))\n return new SHA1();\n\n BlockHash.call(this);\n this.h = [\n 0x67452301, 0xefcdab89, 0x98badcfe,\n 0x10325476, 0xc3d2e1f0 ];\n this.W = new Array(80);\n}\n\nutils.inherits(SHA1, BlockHash);\nmodule.exports = SHA1;\n\nSHA1.blockSize = 512;\nSHA1.outSize = 160;\nSHA1.hmacStrength = 80;\nSHA1.padLength = 64;\n\nSHA1.prototype._update = function _update(msg, start) {\n var W = this.W;\n\n for (var i = 0; i < 16; i++)\n W[i] = msg[start + i];\n\n for(; i < W.length; i++)\n W[i] = rotl32(W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16], 1);\n\n var a = this.h[0];\n var b = this.h[1];\n var c = this.h[2];\n var d = this.h[3];\n var e = this.h[4];\n\n for (i = 0; i < W.length; i++) {\n var s = ~~(i / 20);\n var t = sum32_5(rotl32(a, 5), ft_1(s, b, c, d), e, W[i], sha1_K[s]);\n e = d;\n d = c;\n c = rotl32(b, 30);\n b = a;\n a = t;\n }\n\n this.h[0] = sum32(this.h[0], a);\n this.h[1] = sum32(this.h[1], b);\n this.h[2] = sum32(this.h[2], c);\n this.h[3] = sum32(this.h[3], d);\n this.h[4] = sum32(this.h[4], e);\n};\n\nSHA1.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar SHA256 = require('./256');\n\nfunction SHA224() {\n if (!(this instanceof SHA224))\n return new SHA224();\n\n SHA256.call(this);\n this.h = [\n 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939,\n 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4 ];\n}\nutils.inherits(SHA224, SHA256);\nmodule.exports = SHA224;\n\nSHA224.blockSize = 512;\nSHA224.outSize = 224;\nSHA224.hmacStrength = 192;\nSHA224.padLength = 64;\n\nSHA224.prototype._digest = function digest(enc) {\n // Just truncate output\n if (enc === 'hex')\n return utils.toHex32(this.h.slice(0, 7), 'big');\n else\n return utils.split32(this.h.slice(0, 7), 'big');\n};\n\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar shaCommon = require('./common');\nvar assert = require('minimalistic-assert');\n\nvar sum32 = utils.sum32;\nvar sum32_4 = utils.sum32_4;\nvar sum32_5 = utils.sum32_5;\nvar ch32 = shaCommon.ch32;\nvar maj32 = shaCommon.maj32;\nvar s0_256 = shaCommon.s0_256;\nvar s1_256 = shaCommon.s1_256;\nvar g0_256 = shaCommon.g0_256;\nvar g1_256 = shaCommon.g1_256;\n\nvar BlockHash = common.BlockHash;\n\nvar sha256_K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,\n 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,\n 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc,\n 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7,\n 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,\n 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3,\n 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5,\n 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,\n 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n];\n\nfunction SHA256() {\n if (!(this instanceof SHA256))\n return new SHA256();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a,\n 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19\n ];\n this.k = sha256_K;\n this.W = new Array(64);\n}\nutils.inherits(SHA256, BlockHash);\nmodule.exports = SHA256;\n\nSHA256.blockSize = 512;\nSHA256.outSize = 256;\nSHA256.hmacStrength = 192;\nSHA256.padLength = 64;\n\nSHA256.prototype._update = function _update(msg, start) {\n var W = this.W;\n\n for (var i = 0; i < 16; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i++)\n W[i] = sum32_4(g1_256(W[i - 2]), W[i - 7], g0_256(W[i - 15]), W[i - 16]);\n\n var a = this.h[0];\n var b = this.h[1];\n var c = this.h[2];\n var d = this.h[3];\n var e = this.h[4];\n var f = this.h[5];\n var g = this.h[6];\n var h = this.h[7];\n\n assert(this.k.length === W.length);\n for (i = 0; i < W.length; i++) {\n var T1 = sum32_5(h, s1_256(e), ch32(e, f, g), this.k[i], W[i]);\n var T2 = sum32(s0_256(a), maj32(a, b, c));\n h = g;\n g = f;\n f = e;\n e = sum32(d, T1);\n d = c;\n c = b;\n b = a;\n a = sum32(T1, T2);\n }\n\n this.h[0] = sum32(this.h[0], a);\n this.h[1] = sum32(this.h[1], b);\n this.h[2] = sum32(this.h[2], c);\n this.h[3] = sum32(this.h[3], d);\n this.h[4] = sum32(this.h[4], e);\n this.h[5] = sum32(this.h[5], f);\n this.h[6] = sum32(this.h[6], g);\n this.h[7] = sum32(this.h[7], h);\n};\n\nSHA256.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\n\nvar SHA512 = require('./512');\n\nfunction SHA384() {\n if (!(this instanceof SHA384))\n return new SHA384();\n\n SHA512.call(this);\n this.h = [\n 0xcbbb9d5d, 0xc1059ed8,\n 0x629a292a, 0x367cd507,\n 0x9159015a, 0x3070dd17,\n 0x152fecd8, 0xf70e5939,\n 0x67332667, 0xffc00b31,\n 0x8eb44a87, 0x68581511,\n 0xdb0c2e0d, 0x64f98fa7,\n 0x47b5481d, 0xbefa4fa4 ];\n}\nutils.inherits(SHA384, SHA512);\nmodule.exports = SHA384;\n\nSHA384.blockSize = 1024;\nSHA384.outSize = 384;\nSHA384.hmacStrength = 192;\nSHA384.padLength = 128;\n\nSHA384.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h.slice(0, 12), 'big');\n else\n return utils.split32(this.h.slice(0, 12), 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar assert = require('minimalistic-assert');\n\nvar rotr64_hi = utils.rotr64_hi;\nvar rotr64_lo = utils.rotr64_lo;\nvar shr64_hi = utils.shr64_hi;\nvar shr64_lo = utils.shr64_lo;\nvar sum64 = utils.sum64;\nvar sum64_hi = utils.sum64_hi;\nvar sum64_lo = utils.sum64_lo;\nvar sum64_4_hi = utils.sum64_4_hi;\nvar sum64_4_lo = utils.sum64_4_lo;\nvar sum64_5_hi = utils.sum64_5_hi;\nvar sum64_5_lo = utils.sum64_5_lo;\n\nvar BlockHash = common.BlockHash;\n\nvar sha512_K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n];\n\nfunction SHA512() {\n if (!(this instanceof SHA512))\n return new SHA512();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xf3bcc908,\n 0xbb67ae85, 0x84caa73b,\n 0x3c6ef372, 0xfe94f82b,\n 0xa54ff53a, 0x5f1d36f1,\n 0x510e527f, 0xade682d1,\n 0x9b05688c, 0x2b3e6c1f,\n 0x1f83d9ab, 0xfb41bd6b,\n 0x5be0cd19, 0x137e2179 ];\n this.k = sha512_K;\n this.W = new Array(160);\n}\nutils.inherits(SHA512, BlockHash);\nmodule.exports = SHA512;\n\nSHA512.blockSize = 1024;\nSHA512.outSize = 512;\nSHA512.hmacStrength = 192;\nSHA512.padLength = 128;\n\nSHA512.prototype._prepareBlock = function _prepareBlock(msg, start) {\n var W = this.W;\n\n // 32 x 32bit words\n for (var i = 0; i < 32; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i += 2) {\n var c0_hi = g1_512_hi(W[i - 4], W[i - 3]); // i - 2\n var c0_lo = g1_512_lo(W[i - 4], W[i - 3]);\n var c1_hi = W[i - 14]; // i - 7\n var c1_lo = W[i - 13];\n var c2_hi = g0_512_hi(W[i - 30], W[i - 29]); // i - 15\n var c2_lo = g0_512_lo(W[i - 30], W[i - 29]);\n var c3_hi = W[i - 32]; // i - 16\n var c3_lo = W[i - 31];\n\n W[i] = sum64_4_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n W[i + 1] = sum64_4_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n }\n};\n\nSHA512.prototype._update = function _update(msg, start) {\n this._prepareBlock(msg, start);\n\n var W = this.W;\n\n var ah = this.h[0];\n var al = this.h[1];\n var bh = this.h[2];\n var bl = this.h[3];\n var ch = this.h[4];\n var cl = this.h[5];\n var dh = this.h[6];\n var dl = this.h[7];\n var eh = this.h[8];\n var el = this.h[9];\n var fh = this.h[10];\n var fl = this.h[11];\n var gh = this.h[12];\n var gl = this.h[13];\n var hh = this.h[14];\n var hl = this.h[15];\n\n assert(this.k.length === W.length);\n for (var i = 0; i < W.length; i += 2) {\n var c0_hi = hh;\n var c0_lo = hl;\n var c1_hi = s1_512_hi(eh, el);\n var c1_lo = s1_512_lo(eh, el);\n var c2_hi = ch64_hi(eh, el, fh, fl, gh, gl);\n var c2_lo = ch64_lo(eh, el, fh, fl, gh, gl);\n var c3_hi = this.k[i];\n var c3_lo = this.k[i + 1];\n var c4_hi = W[i];\n var c4_lo = W[i + 1];\n\n var T1_hi = sum64_5_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n var T1_lo = sum64_5_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n\n c0_hi = s0_512_hi(ah, al);\n c0_lo = s0_512_lo(ah, al);\n c1_hi = maj64_hi(ah, al, bh, bl, ch, cl);\n c1_lo = maj64_lo(ah, al, bh, bl, ch, cl);\n\n var T2_hi = sum64_hi(c0_hi, c0_lo, c1_hi, c1_lo);\n var T2_lo = sum64_lo(c0_hi, c0_lo, c1_hi, c1_lo);\n\n hh = gh;\n hl = gl;\n\n gh = fh;\n gl = fl;\n\n fh = eh;\n fl = el;\n\n eh = sum64_hi(dh, dl, T1_hi, T1_lo);\n el = sum64_lo(dl, dl, T1_hi, T1_lo);\n\n dh = ch;\n dl = cl;\n\n ch = bh;\n cl = bl;\n\n bh = ah;\n bl = al;\n\n ah = sum64_hi(T1_hi, T1_lo, T2_hi, T2_lo);\n al = sum64_lo(T1_hi, T1_lo, T2_hi, T2_lo);\n }\n\n sum64(this.h, 0, ah, al);\n sum64(this.h, 2, bh, bl);\n sum64(this.h, 4, ch, cl);\n sum64(this.h, 6, dh, dl);\n sum64(this.h, 8, eh, el);\n sum64(this.h, 10, fh, fl);\n sum64(this.h, 12, gh, gl);\n sum64(this.h, 14, hh, hl);\n};\n\nSHA512.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n\nfunction ch64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ ((~xh) & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction ch64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ ((~xl) & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ (xh & zh) ^ (yh & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ (xl & zl) ^ (yl & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 28);\n var c1_hi = rotr64_hi(xl, xh, 2); // 34\n var c2_hi = rotr64_hi(xl, xh, 7); // 39\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 28);\n var c1_lo = rotr64_lo(xl, xh, 2); // 34\n var c2_lo = rotr64_lo(xl, xh, 7); // 39\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 14);\n var c1_hi = rotr64_hi(xh, xl, 18);\n var c2_hi = rotr64_hi(xl, xh, 9); // 41\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 14);\n var c1_lo = rotr64_lo(xh, xl, 18);\n var c2_lo = rotr64_lo(xl, xh, 9); // 41\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 1);\n var c1_hi = rotr64_hi(xh, xl, 8);\n var c2_hi = shr64_hi(xh, xl, 7);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 1);\n var c1_lo = rotr64_lo(xh, xl, 8);\n var c2_lo = shr64_lo(xh, xl, 7);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 19);\n var c1_hi = rotr64_hi(xl, xh, 29); // 61\n var c2_hi = shr64_hi(xh, xl, 6);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 19);\n var c1_lo = rotr64_lo(xl, xh, 29); // 61\n var c2_lo = shr64_lo(xh, xl, 6);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n","'use strict';\n\nvar utils = require('../utils');\nvar rotr32 = utils.rotr32;\n\nfunction ft_1(s, x, y, z) {\n if (s === 0)\n return ch32(x, y, z);\n if (s === 1 || s === 3)\n return p32(x, y, z);\n if (s === 2)\n return maj32(x, y, z);\n}\nexports.ft_1 = ft_1;\n\nfunction ch32(x, y, z) {\n return (x & y) ^ ((~x) & z);\n}\nexports.ch32 = ch32;\n\nfunction maj32(x, y, z) {\n return (x & y) ^ (x & z) ^ (y & z);\n}\nexports.maj32 = maj32;\n\nfunction p32(x, y, z) {\n return x ^ y ^ z;\n}\nexports.p32 = p32;\n\nfunction s0_256(x) {\n return rotr32(x, 2) ^ rotr32(x, 13) ^ rotr32(x, 22);\n}\nexports.s0_256 = s0_256;\n\nfunction s1_256(x) {\n return rotr32(x, 6) ^ rotr32(x, 11) ^ rotr32(x, 25);\n}\nexports.s1_256 = s1_256;\n\nfunction g0_256(x) {\n return rotr32(x, 7) ^ rotr32(x, 18) ^ (x >>> 3);\n}\nexports.g0_256 = g0_256;\n\nfunction g1_256(x) {\n return rotr32(x, 17) ^ rotr32(x, 19) ^ (x >>> 10);\n}\nexports.g1_256 = g1_256;\n","'use strict';\n\nvar assert = require('minimalistic-assert');\nvar inherits = require('inherits');\n\nexports.inherits = inherits;\n\nfunction isSurrogatePair(msg, i) {\n if ((msg.charCodeAt(i) & 0xFC00) !== 0xD800) {\n return false;\n }\n if (i < 0 || i + 1 >= msg.length) {\n return false;\n }\n return (msg.charCodeAt(i + 1) & 0xFC00) === 0xDC00;\n}\n\nfunction toArray(msg, enc) {\n if (Array.isArray(msg))\n return msg.slice();\n if (!msg)\n return [];\n var res = [];\n if (typeof msg === 'string') {\n if (!enc) {\n // Inspired by stringToUtf8ByteArray() in closure-library by Google\n // https://github.com/google/closure-library/blob/8598d87242af59aac233270742c8984e2b2bdbe0/closure/goog/crypt/crypt.js#L117-L143\n // Apache License 2.0\n // https://github.com/google/closure-library/blob/master/LICENSE\n var p = 0;\n for (var i = 0; i < msg.length; i++) {\n var c = msg.charCodeAt(i);\n if (c < 128) {\n res[p++] = c;\n } else if (c < 2048) {\n res[p++] = (c >> 6) | 192;\n res[p++] = (c & 63) | 128;\n } else if (isSurrogatePair(msg, i)) {\n c = 0x10000 + ((c & 0x03FF) << 10) + (msg.charCodeAt(++i) & 0x03FF);\n res[p++] = (c >> 18) | 240;\n res[p++] = ((c >> 12) & 63) | 128;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n } else {\n res[p++] = (c >> 12) | 224;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n }\n }\n } else if (enc === 'hex') {\n msg = msg.replace(/[^a-z0-9]+/ig, '');\n if (msg.length % 2 !== 0)\n msg = '0' + msg;\n for (i = 0; i < msg.length; i += 2)\n res.push(parseInt(msg[i] + msg[i + 1], 16));\n }\n } else {\n for (i = 0; i < msg.length; i++)\n res[i] = msg[i] | 0;\n }\n return res;\n}\nexports.toArray = toArray;\n\nfunction toHex(msg) {\n var res = '';\n for (var i = 0; i < msg.length; i++)\n res += zero2(msg[i].toString(16));\n return res;\n}\nexports.toHex = toHex;\n\nfunction htonl(w) {\n var res = (w >>> 24) |\n ((w >>> 8) & 0xff00) |\n ((w << 8) & 0xff0000) |\n ((w & 0xff) << 24);\n return res >>> 0;\n}\nexports.htonl = htonl;\n\nfunction toHex32(msg, endian) {\n var res = '';\n for (var i = 0; i < msg.length; i++) {\n var w = msg[i];\n if (endian === 'little')\n w = htonl(w);\n res += zero8(w.toString(16));\n }\n return res;\n}\nexports.toHex32 = toHex32;\n\nfunction zero2(word) {\n if (word.length === 1)\n return '0' + word;\n else\n return word;\n}\nexports.zero2 = zero2;\n\nfunction zero8(word) {\n if (word.length === 7)\n return '0' + word;\n else if (word.length === 6)\n return '00' + word;\n else if (word.length === 5)\n return '000' + word;\n else if (word.length === 4)\n return '0000' + word;\n else if (word.length === 3)\n return '00000' + word;\n else if (word.length === 2)\n return '000000' + word;\n else if (word.length === 1)\n return '0000000' + word;\n else\n return word;\n}\nexports.zero8 = zero8;\n\nfunction join32(msg, start, end, endian) {\n var len = end - start;\n assert(len % 4 === 0);\n var res = new Array(len / 4);\n for (var i = 0, k = start; i < res.length; i++, k += 4) {\n var w;\n if (endian === 'big')\n w = (msg[k] << 24) | (msg[k + 1] << 16) | (msg[k + 2] << 8) | msg[k + 3];\n else\n w = (msg[k + 3] << 24) | (msg[k + 2] << 16) | (msg[k + 1] << 8) | msg[k];\n res[i] = w >>> 0;\n }\n return res;\n}\nexports.join32 = join32;\n\nfunction split32(msg, endian) {\n var res = new Array(msg.length * 4);\n for (var i = 0, k = 0; i < msg.length; i++, k += 4) {\n var m = msg[i];\n if (endian === 'big') {\n res[k] = m >>> 24;\n res[k + 1] = (m >>> 16) & 0xff;\n res[k + 2] = (m >>> 8) & 0xff;\n res[k + 3] = m & 0xff;\n } else {\n res[k + 3] = m >>> 24;\n res[k + 2] = (m >>> 16) & 0xff;\n res[k + 1] = (m >>> 8) & 0xff;\n res[k] = m & 0xff;\n }\n }\n return res;\n}\nexports.split32 = split32;\n\nfunction rotr32(w, b) {\n return (w >>> b) | (w << (32 - b));\n}\nexports.rotr32 = rotr32;\n\nfunction rotl32(w, b) {\n return (w << b) | (w >>> (32 - b));\n}\nexports.rotl32 = rotl32;\n\nfunction sum32(a, b) {\n return (a + b) >>> 0;\n}\nexports.sum32 = sum32;\n\nfunction sum32_3(a, b, c) {\n return (a + b + c) >>> 0;\n}\nexports.sum32_3 = sum32_3;\n\nfunction sum32_4(a, b, c, d) {\n return (a + b + c + d) >>> 0;\n}\nexports.sum32_4 = sum32_4;\n\nfunction sum32_5(a, b, c, d, e) {\n return (a + b + c + d + e) >>> 0;\n}\nexports.sum32_5 = sum32_5;\n\nfunction sum64(buf, pos, ah, al) {\n var bh = buf[pos];\n var bl = buf[pos + 1];\n\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n buf[pos] = hi >>> 0;\n buf[pos + 1] = lo;\n}\nexports.sum64 = sum64;\n\nfunction sum64_hi(ah, al, bh, bl) {\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n return hi >>> 0;\n}\nexports.sum64_hi = sum64_hi;\n\nfunction sum64_lo(ah, al, bh, bl) {\n var lo = al + bl;\n return lo >>> 0;\n}\nexports.sum64_lo = sum64_lo;\n\nfunction sum64_4_hi(ah, al, bh, bl, ch, cl, dh, dl) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n\n var hi = ah + bh + ch + dh + carry;\n return hi >>> 0;\n}\nexports.sum64_4_hi = sum64_4_hi;\n\nfunction sum64_4_lo(ah, al, bh, bl, ch, cl, dh, dl) {\n var lo = al + bl + cl + dl;\n return lo >>> 0;\n}\nexports.sum64_4_lo = sum64_4_lo;\n\nfunction sum64_5_hi(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n lo = (lo + el) >>> 0;\n carry += lo < el ? 1 : 0;\n\n var hi = ah + bh + ch + dh + eh + carry;\n return hi >>> 0;\n}\nexports.sum64_5_hi = sum64_5_hi;\n\nfunction sum64_5_lo(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var lo = al + bl + cl + dl + el;\n\n return lo >>> 0;\n}\nexports.sum64_5_lo = sum64_5_lo;\n\nfunction rotr64_hi(ah, al, num) {\n var r = (al << (32 - num)) | (ah >>> num);\n return r >>> 0;\n}\nexports.rotr64_hi = rotr64_hi;\n\nfunction rotr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.rotr64_lo = rotr64_lo;\n\nfunction shr64_hi(ah, al, num) {\n return ah >>> num;\n}\nexports.shr64_hi = shr64_hi;\n\nfunction shr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.shr64_lo = shr64_lo;\n","'use strict';\n\nvar hash = require('hash.js');\nvar utils = require('minimalistic-crypto-utils');\nvar assert = require('minimalistic-assert');\n\nfunction HmacDRBG(options) {\n if (!(this instanceof HmacDRBG))\n return new HmacDRBG(options);\n this.hash = options.hash;\n this.predResist = !!options.predResist;\n\n this.outLen = this.hash.outSize;\n this.minEntropy = options.minEntropy || this.hash.hmacStrength;\n\n this._reseed = null;\n this.reseedInterval = null;\n this.K = null;\n this.V = null;\n\n var entropy = utils.toArray(options.entropy, options.entropyEnc || 'hex');\n var nonce = utils.toArray(options.nonce, options.nonceEnc || 'hex');\n var pers = utils.toArray(options.pers, options.persEnc || 'hex');\n assert(entropy.length >= (this.minEntropy / 8),\n 'Not enough entropy. Minimum is: ' + this.minEntropy + ' bits');\n this._init(entropy, nonce, pers);\n}\nmodule.exports = HmacDRBG;\n\nHmacDRBG.prototype._init = function init(entropy, nonce, pers) {\n var seed = entropy.concat(nonce).concat(pers);\n\n this.K = new Array(this.outLen / 8);\n this.V = new Array(this.outLen / 8);\n for (var i = 0; i < this.V.length; i++) {\n this.K[i] = 0x00;\n this.V[i] = 0x01;\n }\n\n this._update(seed);\n this._reseed = 1;\n this.reseedInterval = 0x1000000000000; // 2^48\n};\n\nHmacDRBG.prototype._hmac = function hmac() {\n return new hash.hmac(this.hash, this.K);\n};\n\nHmacDRBG.prototype._update = function update(seed) {\n var kmac = this._hmac()\n .update(this.V)\n .update([ 0x00 ]);\n if (seed)\n kmac = kmac.update(seed);\n this.K = kmac.digest();\n this.V = this._hmac().update(this.V).digest();\n if (!seed)\n return;\n\n this.K = this._hmac()\n .update(this.V)\n .update([ 0x01 ])\n .update(seed)\n .digest();\n this.V = this._hmac().update(this.V).digest();\n};\n\nHmacDRBG.prototype.reseed = function reseed(entropy, entropyEnc, add, addEnc) {\n // Optional entropy enc\n if (typeof entropyEnc !== 'string') {\n addEnc = add;\n add = entropyEnc;\n entropyEnc = null;\n }\n\n entropy = utils.toArray(entropy, entropyEnc);\n add = utils.toArray(add, addEnc);\n\n assert(entropy.length >= (this.minEntropy / 8),\n 'Not enough entropy. Minimum is: ' + this.minEntropy + ' bits');\n\n this._update(entropy.concat(add || []));\n this._reseed = 1;\n};\n\nHmacDRBG.prototype.generate = function generate(len, enc, add, addEnc) {\n if (this._reseed > this.reseedInterval)\n throw new Error('Reseed is required');\n\n // Optional encoding\n if (typeof enc !== 'string') {\n addEnc = add;\n add = enc;\n enc = null;\n }\n\n // Optional additional data\n if (add) {\n add = utils.toArray(add, addEnc || 'hex');\n this._update(add);\n }\n\n var temp = [];\n while (temp.length < len) {\n this.V = this._hmac().update(this.V).digest();\n temp = temp.concat(this.V);\n }\n\n var res = temp.slice(0, len);\n this._update(add);\n this._reseed++;\n return utils.encode(res, enc);\n};\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n","'use strict';\n\nvar json = typeof JSON !== 'undefined' ? JSON : require('jsonify');\n\nvar isArray = Array.isArray || function (x) {\n\treturn {}.toString.call(x) === '[object Array]';\n};\n\nvar objectKeys = Object.keys || function (obj) {\n\tvar has = Object.prototype.hasOwnProperty || function () { return true; };\n\tvar keys = [];\n\tfor (var key in obj) {\n\t\tif (has.call(obj, key)) { keys.push(key); }\n\t}\n\treturn keys;\n};\n\nmodule.exports = function (obj, opts) {\n\tif (!opts) { opts = {}; }\n\tif (typeof opts === 'function') { opts = { cmp: opts }; }\n\tvar space = opts.space || '';\n\tif (typeof space === 'number') { space = Array(space + 1).join(' '); }\n\tvar cycles = typeof opts.cycles === 'boolean' ? opts.cycles : false;\n\tvar replacer = opts.replacer || function (key, value) { return value; };\n\n\tvar cmp = opts.cmp && (function (f) {\n\t\treturn function (node) {\n\t\t\treturn function (a, b) {\n\t\t\t\tvar aobj = { key: a, value: node[a] };\n\t\t\t\tvar bobj = { key: b, value: node[b] };\n\t\t\t\treturn f(aobj, bobj);\n\t\t\t};\n\t\t};\n\t}(opts.cmp));\n\n\tvar seen = [];\n\treturn (function stringify(parent, key, node, level) {\n\t\tvar indent = space ? '\\n' + new Array(level + 1).join(space) : '';\n\t\tvar colonSeparator = space ? ': ' : ':';\n\n\t\tif (node && node.toJSON && typeof node.toJSON === 'function') {\n\t\t\tnode = node.toJSON();\n\t\t}\n\n\t\tnode = replacer.call(parent, key, node);\n\n\t\tif (node === undefined) {\n\t\t\treturn;\n\t\t}\n\t\tif (typeof node !== 'object' || node === null) {\n\t\t\treturn json.stringify(node);\n\t\t}\n\t\tif (isArray(node)) {\n\t\t\tvar out = [];\n\t\t\tfor (var i = 0; i < node.length; i++) {\n\t\t\t\tvar item = stringify(node, i, node[i], level + 1) || json.stringify(null);\n\t\t\t\tout.push(indent + space + item);\n\t\t\t}\n\t\t\treturn '[' + out.join(',') + indent + ']';\n\t\t}\n\n\t\tif (seen.indexOf(node) !== -1) {\n\t\t\tif (cycles) { return json.stringify('__cycle__'); }\n\t\t\tthrow new TypeError('Converting circular structure to JSON');\n\t\t} else { seen.push(node); }\n\n\t\tvar keys = objectKeys(node).sort(cmp && cmp(node));\n\t\tvar out = [];\n\t\tfor (var i = 0; i < keys.length; i++) {\n\t\t\tvar key = keys[i];\n\t\t\tvar value = stringify(node, key, node[key], level + 1);\n\n\t\t\tif (!value) { continue; }\n\n\t\t\tvar keyValue = json.stringify(key)\n\t\t\t\t\t+ colonSeparator\n\t\t\t\t\t+ value;\n\n\t\t\tout.push(indent + space + keyValue);\n\t\t}\n\t\tseen.splice(seen.indexOf(node), 1);\n\t\treturn '{' + out.join(',') + indent + '}';\n\n\t}({ '': obj }, '', obj, 0));\n};\n","'use strict';\n\nexports.parse = require('./lib/parse');\nexports.stringify = require('./lib/stringify');\n","'use strict';\n\nvar at; // The index of the current character\nvar ch; // The current character\nvar escapee = {\n\t'\"': '\"',\n\t'\\\\': '\\\\',\n\t'/': '/',\n\tb: '\\b',\n\tf: '\\f',\n\tn: '\\n',\n\tr: '\\r',\n\tt: '\\t'\n};\nvar text;\n\n// Call error when something is wrong.\nfunction error(m) {\n\tthrow {\n\t\tname: 'SyntaxError',\n\t\tmessage: m,\n\t\tat: at,\n\t\ttext: text\n\t};\n}\n\nfunction next(c) {\n\t// If a c parameter is provided, verify that it matches the current character.\n\tif (c && c !== ch) {\n\t\terror(\"Expected '\" + c + \"' instead of '\" + ch + \"'\");\n\t}\n\n\t// Get the next character. When there are no more characters, return the empty string.\n\n\tch = text.charAt(at);\n\tat += 1;\n\treturn ch;\n}\n\nfunction number() {\n\t// Parse a number value.\n\tvar num;\n\tvar str = '';\n\n\tif (ch === '-') {\n\t\tstr = '-';\n\t\tnext('-');\n\t}\n\twhile (ch >= '0' && ch <= '9') {\n\t\tstr += ch;\n\t\tnext();\n\t}\n\tif (ch === '.') {\n\t\tstr += '.';\n\t\twhile (next() && ch >= '0' && ch <= '9') {\n\t\t\tstr += ch;\n\t\t}\n\t}\n\tif (ch === 'e' || ch === 'E') {\n\t\tstr += ch;\n\t\tnext();\n\t\tif (ch === '-' || ch === '+') {\n\t\t\tstr += ch;\n\t\t\tnext();\n\t\t}\n\t\twhile (ch >= '0' && ch <= '9') {\n\t\t\tstr += ch;\n\t\t\tnext();\n\t\t}\n\t}\n\tnum = Number(str);\n\tif (!isFinite(num)) {\n\t\terror('Bad number');\n\t}\n\treturn num;\n}\n\nfunction string() {\n\t// Parse a string value.\n\tvar hex;\n\tvar i;\n\tvar str = '';\n\tvar uffff;\n\n\t// When parsing for string values, we must look for \" and \\ characters.\n\tif (ch === '\"') {\n\t\twhile (next()) {\n\t\t\tif (ch === '\"') {\n\t\t\t\tnext();\n\t\t\t\treturn str;\n\t\t\t} else if (ch === '\\\\') {\n\t\t\t\tnext();\n\t\t\t\tif (ch === 'u') {\n\t\t\t\t\tuffff = 0;\n\t\t\t\t\tfor (i = 0; i < 4; i += 1) {\n\t\t\t\t\t\thex = parseInt(next(), 16);\n\t\t\t\t\t\tif (!isFinite(hex)) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tuffff = (uffff * 16) + hex;\n\t\t\t\t\t}\n\t\t\t\t\tstr += String.fromCharCode(uffff);\n\t\t\t\t} else if (typeof escapee[ch] === 'string') {\n\t\t\t\t\tstr += escapee[ch];\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tstr += ch;\n\t\t\t}\n\t\t}\n\t}\n\terror('Bad string');\n}\n\n// Skip whitespace.\nfunction white() {\n\twhile (ch && ch <= ' ') {\n\t\tnext();\n\t}\n}\n\n// true, false, or null.\nfunction word() {\n\tswitch (ch) {\n\t\tcase 't':\n\t\t\tnext('t');\n\t\t\tnext('r');\n\t\t\tnext('u');\n\t\t\tnext('e');\n\t\t\treturn true;\n\t\tcase 'f':\n\t\t\tnext('f');\n\t\t\tnext('a');\n\t\t\tnext('l');\n\t\t\tnext('s');\n\t\t\tnext('e');\n\t\t\treturn false;\n\t\tcase 'n':\n\t\t\tnext('n');\n\t\t\tnext('u');\n\t\t\tnext('l');\n\t\t\tnext('l');\n\t\t\treturn null;\n\t\tdefault:\n\t\t\terror(\"Unexpected '\" + ch + \"'\");\n\t}\n}\n\n// Parse an array value.\nfunction array() {\n\tvar arr = [];\n\n\tif (ch === '[') {\n\t\tnext('[');\n\t\twhite();\n\t\tif (ch === ']') {\n\t\t\tnext(']');\n\t\t\treturn arr; // empty array\n\t\t}\n\t\twhile (ch) {\n\t\t\tarr.push(value()); // eslint-disable-line no-use-before-define\n\t\t\twhite();\n\t\t\tif (ch === ']') {\n\t\t\t\tnext(']');\n\t\t\t\treturn arr;\n\t\t\t}\n\t\t\tnext(',');\n\t\t\twhite();\n\t\t}\n\t}\n\terror('Bad array');\n}\n\n// Parse an object value.\nfunction object() {\n\tvar key;\n\tvar obj = {};\n\n\tif (ch === '{') {\n\t\tnext('{');\n\t\twhite();\n\t\tif (ch === '}') {\n\t\t\tnext('}');\n\t\t\treturn obj; // empty object\n\t\t}\n\t\twhile (ch) {\n\t\t\tkey = string();\n\t\t\twhite();\n\t\t\tnext(':');\n\t\t\tif (Object.prototype.hasOwnProperty.call(obj, key)) {\n\t\t\t\terror('Duplicate key \"' + key + '\"');\n\t\t\t}\n\t\t\tobj[key] = value(); // eslint-disable-line no-use-before-define\n\t\t\twhite();\n\t\t\tif (ch === '}') {\n\t\t\t\tnext('}');\n\t\t\t\treturn obj;\n\t\t\t}\n\t\t\tnext(',');\n\t\t\twhite();\n\t\t}\n\t}\n\terror('Bad object');\n}\n\n// Parse a JSON value. It could be an object, an array, a string, a number, or a word.\nfunction value() {\n\twhite();\n\tswitch (ch) {\n\t\tcase '{':\n\t\t\treturn object();\n\t\tcase '[':\n\t\t\treturn array();\n\t\tcase '\"':\n\t\t\treturn string();\n\t\tcase '-':\n\t\t\treturn number();\n\t\tdefault:\n\t\t\treturn ch >= '0' && ch <= '9' ? number() : word();\n\t}\n}\n\n// Return the json_parse function. It will have access to all of the above functions and variables.\nmodule.exports = function (source, reviver) {\n\tvar result;\n\n\ttext = source;\n\tat = 0;\n\tch = ' ';\n\tresult = value();\n\twhite();\n\tif (ch) {\n\t\terror('Syntax error');\n\t}\n\n\t// If there is a reviver function, we recursively walk the new structure,\n\t// passing each name/value pair to the reviver function for possible\n\t// transformation, starting with a temporary root object that holds the result\n\t// in an empty key. If there is not a reviver function, we simply return the\n\t// result.\n\n\treturn typeof reviver === 'function' ? (function walk(holder, key) {\n\t\tvar k;\n\t\tvar v;\n\t\tvar val = holder[key];\n\t\tif (val && typeof val === 'object') {\n\t\t\tfor (k in value) {\n\t\t\t\tif (Object.prototype.hasOwnProperty.call(val, k)) {\n\t\t\t\t\tv = walk(val, k);\n\t\t\t\t\tif (typeof v === 'undefined') {\n\t\t\t\t\t\tdelete val[k];\n\t\t\t\t\t} else {\n\t\t\t\t\t\tval[k] = v;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn reviver.call(holder, key, val);\n\t}({ '': result }, '')) : result;\n};\n","'use strict';\n\nvar escapable = /[\\\\\"\\x00-\\x1f\\x7f-\\x9f\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g;\nvar gap;\nvar indent;\nvar meta = { // table of character substitutions\n\t'\\b': '\\\\b',\n\t'\\t': '\\\\t',\n\t'\\n': '\\\\n',\n\t'\\f': '\\\\f',\n\t'\\r': '\\\\r',\n\t'\"': '\\\\\"',\n\t'\\\\': '\\\\\\\\'\n};\nvar rep;\n\nfunction quote(string) {\n\t// If the string contains no control characters, no quote characters, and no\n\t// backslash characters, then we can safely slap some quotes around it.\n\t// Otherwise we must also replace the offending characters with safe escape sequences.\n\n\tescapable.lastIndex = 0;\n\treturn escapable.test(string) ? '\"' + string.replace(escapable, function (a) {\n\t\tvar c = meta[a];\n\t\treturn typeof c === 'string' ? c\n\t\t\t: '\\\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);\n\t}) + '\"' : '\"' + string + '\"';\n}\n\nfunction str(key, holder) {\n\t// Produce a string from holder[key].\n\tvar i; // The loop counter.\n\tvar k; // The member key.\n\tvar v; // The member value.\n\tvar length;\n\tvar mind = gap;\n\tvar partial;\n\tvar value = holder[key];\n\n\t// If the value has a toJSON method, call it to obtain a replacement value.\n\tif (value && typeof value === 'object' && typeof value.toJSON === 'function') {\n\t\tvalue = value.toJSON(key);\n\t}\n\n\t// If we were called with a replacer function, then call the replacer to obtain a replacement value.\n\tif (typeof rep === 'function') {\n\t\tvalue = rep.call(holder, key, value);\n\t}\n\n\t// What happens next depends on the value's type.\n\tswitch (typeof value) {\n\t\tcase 'string':\n\t\t\treturn quote(value);\n\n\t\tcase 'number':\n\t\t\t// JSON numbers must be finite. Encode non-finite numbers as null.\n\t\t\treturn isFinite(value) ? String(value) : 'null';\n\n\t\tcase 'boolean':\n\t\tcase 'null':\n\t\t\t// If the value is a boolean or null, convert it to a string. Note:\n\t\t\t// typeof null does not produce 'null'. The case is included here in\n\t\t\t// the remote chance that this gets fixed someday.\n\t\t\treturn String(value);\n\n\t\tcase 'object':\n\t\t\tif (!value) {\n\t\t\t\treturn 'null';\n\t\t\t}\n\t\t\tgap += indent;\n\t\t\tpartial = [];\n\n\t\t\t// Array.isArray\n\t\t\tif (Object.prototype.toString.apply(value) === '[object Array]') {\n\t\t\t\tlength = value.length;\n\t\t\t\tfor (i = 0; i < length; i += 1) {\n\t\t\t\t\tpartial[i] = str(i, value) || 'null';\n\t\t\t\t}\n\n\t\t\t\t// Join all of the elements together, separated with commas, and wrap them in brackets.\n\t\t\t\tv = partial.length === 0 ? '[]' : gap\n\t\t\t\t\t? '[\\n' + gap + partial.join(',\\n' + gap) + '\\n' + mind + ']'\n\t\t\t\t\t: '[' + partial.join(',') + ']';\n\t\t\t\tgap = mind;\n\t\t\t\treturn v;\n\t\t\t}\n\n\t\t\t// If the replacer is an array, use it to select the members to be stringified.\n\t\t\tif (rep && typeof rep === 'object') {\n\t\t\t\tlength = rep.length;\n\t\t\t\tfor (i = 0; i < length; i += 1) {\n\t\t\t\t\tk = rep[i];\n\t\t\t\t\tif (typeof k === 'string') {\n\t\t\t\t\t\tv = str(k, value);\n\t\t\t\t\t\tif (v) {\n\t\t\t\t\t\t\tpartial.push(quote(k) + (gap ? ': ' : ':') + v);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Otherwise, iterate through all of the keys in the object.\n\t\t\t\tfor (k in value) {\n\t\t\t\t\tif (Object.prototype.hasOwnProperty.call(value, k)) {\n\t\t\t\t\t\tv = str(k, value);\n\t\t\t\t\t\tif (v) {\n\t\t\t\t\t\t\tpartial.push(quote(k) + (gap ? ': ' : ':') + v);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Join all of the member texts together, separated with commas, and wrap them in braces.\n\n\t\t\tv = partial.length === 0 ? '{}' : gap\n\t\t\t\t? '{\\n' + gap + partial.join(',\\n' + gap) + '\\n' + mind + '}'\n\t\t\t\t: '{' + partial.join(',') + '}';\n\t\t\tgap = mind;\n\t\t\treturn v;\n\t\tdefault:\n\t}\n}\n\nmodule.exports = function (value, replacer, space) {\n\tvar i;\n\tgap = '';\n\tindent = '';\n\n\t// If the space parameter is a number, make an indent string containing that many spaces.\n\tif (typeof space === 'number') {\n\t\tfor (i = 0; i < space; i += 1) {\n\t\t\tindent += ' ';\n\t\t}\n\t} else if (typeof space === 'string') {\n\t\t// If the space parameter is a string, it will be used as the indent string.\n\t\tindent = space;\n\t}\n\n\t// If there is a replacer, it must be a function or an array. Otherwise, throw an error.\n\trep = replacer;\n\tif (\n\t\treplacer\n\t\t&& typeof replacer !== 'function'\n\t\t&& (typeof replacer !== 'object' || typeof replacer.length !== 'number')\n\t) {\n\t\tthrow new Error('JSON.stringify');\n\t}\n\n\t// Make a fake root object containing our value under the key of ''.\n\t// Return the result of stringifying the value.\n\treturn str('', { '': value });\n};\n","\nmodule.exports = function load (src, opts, cb) {\n var head = document.head || document.getElementsByTagName('head')[0]\n var script = document.createElement('script')\n\n if (typeof opts === 'function') {\n cb = opts\n opts = {}\n }\n\n opts = opts || {}\n cb = cb || function() {}\n\n script.type = opts.type || 'text/javascript'\n script.charset = opts.charset || 'utf8';\n script.async = 'async' in opts ? !!opts.async : true\n script.src = src\n\n if (opts.attrs) {\n setAttributes(script, opts.attrs)\n }\n\n if (opts.text) {\n script.text = '' + opts.text\n }\n\n var onend = 'onload' in script ? stdOnEnd : ieOnEnd\n onend(script, cb)\n\n // some good legacy browsers (firefox) fail the 'in' detection above\n // so as a fallback we always set onload\n // old IE will ignore this and new IE will set onload\n if (!script.onload) {\n stdOnEnd(script, cb);\n }\n\n head.appendChild(script)\n}\n\nfunction setAttributes(script, attrs) {\n for (var attr in attrs) {\n script.setAttribute(attr, attrs[attr]);\n }\n}\n\nfunction stdOnEnd (script, cb) {\n script.onload = function () {\n this.onerror = this.onload = null\n cb(null, script)\n }\n script.onerror = function () {\n // this.onload = null here is necessary\n // because even IE9 works not like others\n this.onerror = this.onload = null\n cb(new Error('Failed to load ' + this.src), script)\n }\n}\n\nfunction ieOnEnd (script, cb) {\n script.onreadystatechange = function () {\n if (this.readyState != 'complete' && this.readyState != 'loaded') return\n this.onreadystatechange = null\n cb(null, script) // there is no way to catch loading errors in IE8\n }\n}\n","/**\n * Lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright JS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\n/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\n/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\n/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\n/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\n/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\n/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\n/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n Symbol = root.Symbol,\n Uint8Array = root.Uint8Array,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols,\n nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeKeys = overArg(Object.keys, Object);\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView'),\n Map = getNative(root, 'Map'),\n Promise = getNative(root, 'Promise'),\n Set = getNative(root, 'Set'),\n WeakMap = getNative(root, 'WeakMap'),\n nativeCreate = getNative(Object, 'create');\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\n/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\n/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\n/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(array);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n length = length == null ? MAX_SAFE_INTEGER : length;\n return !!length &&\n (typeof value == 'number' || reIsUint.test(value)) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\n/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\n/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = isEqual;\n","/**\n * Lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\n/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\n/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n Symbol = root.Symbol,\n Uint8Array = root.Uint8Array,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n getPrototype = overArg(Object.getPrototypeOf, Object),\n objectCreate = Object.create,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeMax = Math.max,\n nativeNow = Date.now;\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map'),\n nativeCreate = getNative(Object, 'create');\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\n/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\n/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\n/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\n/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\n/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\n/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n});\n\n/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\n/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\n/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = merge;\n","/**\n * Lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\n/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\n/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n Symbol = root.Symbol,\n Uint8Array = root.Uint8Array,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n getPrototype = overArg(Object.getPrototypeOf, Object),\n objectCreate = Object.create,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeMax = Math.max,\n nativeNow = Date.now;\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map'),\n nativeCreate = getNative(Object, 'create');\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\n/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\n/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\n/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\n/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\n/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\n/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\n/**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\nvar mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n});\n\n/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\n/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\n/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = mergeWith;\n","/**\n * @license\n * Lodash \n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n;(function() {\n\n /** Used as a safe reference for `undefined` in pre-ES5 environments. */\n var undefined;\n\n /** Used as the semantic version number. */\n var VERSION = '4.17.21';\n\n /** Used as the size to enable large array optimizations. */\n var LARGE_ARRAY_SIZE = 200;\n\n /** Error message constants. */\n var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.',\n FUNC_ERROR_TEXT = 'Expected a function',\n INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`';\n\n /** Used to stand-in for `undefined` hash values. */\n var HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n /** Used as the maximum memoize cache size. */\n var MAX_MEMOIZE_SIZE = 500;\n\n /** Used as the internal argument placeholder. */\n var PLACEHOLDER = '__lodash_placeholder__';\n\n /** Used to compose bitmasks for cloning. */\n var CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n /** Used to compose bitmasks for value comparisons. */\n var COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n /** Used to compose bitmasks for function metadata. */\n var WRAP_BIND_FLAG = 1,\n WRAP_BIND_KEY_FLAG = 2,\n WRAP_CURRY_BOUND_FLAG = 4,\n WRAP_CURRY_FLAG = 8,\n WRAP_CURRY_RIGHT_FLAG = 16,\n WRAP_PARTIAL_FLAG = 32,\n WRAP_PARTIAL_RIGHT_FLAG = 64,\n WRAP_ARY_FLAG = 128,\n WRAP_REARG_FLAG = 256,\n WRAP_FLIP_FLAG = 512;\n\n /** Used as default options for `_.truncate`. */\n var DEFAULT_TRUNC_LENGTH = 30,\n DEFAULT_TRUNC_OMISSION = '...';\n\n /** Used to detect hot functions by number of calls within a span of milliseconds. */\n var HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n /** Used to indicate the type of lazy iteratees. */\n var LAZY_FILTER_FLAG = 1,\n LAZY_MAP_FLAG = 2,\n LAZY_WHILE_FLAG = 3;\n\n /** Used as references for various `Number` constants. */\n var INFINITY = 1 / 0,\n MAX_SAFE_INTEGER = 9007199254740991,\n MAX_INTEGER = 1.7976931348623157e+308,\n NAN = 0 / 0;\n\n /** Used as references for the maximum length and index of an array. */\n var MAX_ARRAY_LENGTH = 4294967295,\n MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1,\n HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;\n\n /** Used to associate wrap methods with their bit flags. */\n var wrapFlags = [\n ['ary', WRAP_ARY_FLAG],\n ['bind', WRAP_BIND_FLAG],\n ['bindKey', WRAP_BIND_KEY_FLAG],\n ['curry', WRAP_CURRY_FLAG],\n ['curryRight', WRAP_CURRY_RIGHT_FLAG],\n ['flip', WRAP_FLIP_FLAG],\n ['partial', WRAP_PARTIAL_FLAG],\n ['partialRight', WRAP_PARTIAL_RIGHT_FLAG],\n ['rearg', WRAP_REARG_FLAG]\n ];\n\n /** `Object#toString` result references. */\n var argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n domExcTag = '[object DOMException]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]',\n weakSetTag = '[object WeakSet]';\n\n var arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n /** Used to match empty string literals in compiled template source. */\n var reEmptyStringLeading = /\\b__p \\+= '';/g,\n reEmptyStringMiddle = /\\b(__p \\+=) '' \\+/g,\n reEmptyStringTrailing = /(__e\\(.*?\\)|\\b__t\\)) \\+\\n'';/g;\n\n /** Used to match HTML entities and HTML characters. */\n var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g,\n reUnescapedHtml = /[&<>\"']/g,\n reHasEscapedHtml = RegExp(reEscapedHtml.source),\n reHasUnescapedHtml = RegExp(reUnescapedHtml.source);\n\n /** Used to match template delimiters. */\n var reEscape = /<%-([\\s\\S]+?)%>/g,\n reEvaluate = /<%([\\s\\S]+?)%>/g,\n reInterpolate = /<%=([\\s\\S]+?)%>/g;\n\n /** Used to match property names within property paths. */\n var reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n /**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\n var reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g,\n reHasRegExpChar = RegExp(reRegExpChar.source);\n\n /** Used to match leading whitespace. */\n var reTrimStart = /^\\s+/;\n\n /** Used to match a single whitespace character. */\n var reWhitespace = /\\s/;\n\n /** Used to match wrap detail comments. */\n var reWrapComment = /\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/,\n reWrapDetails = /\\{\\n\\/\\* \\[wrapped with (.+)\\] \\*/,\n reSplitDetails = /,? & /;\n\n /** Used to match words composed of alphanumeric characters. */\n var reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n /**\n * Used to validate the `validate` option in `_.template` variable.\n *\n * Forbids characters which could potentially change the meaning of the function argument definition:\n * - \"(),\" (modification of function parameters)\n * - \"=\" (default value)\n * - \"[]{}\" (destructuring of function parameters)\n * - \"/\" (beginning of a comment)\n * - whitespace\n */\n var reForbiddenIdentifierChars = /[()=,{}\\[\\]\\/\\s]/;\n\n /** Used to match backslashes in property paths. */\n var reEscapeChar = /\\\\(\\\\)?/g;\n\n /**\n * Used to match\n * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components).\n */\n var reEsTemplate = /\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g;\n\n /** Used to match `RegExp` flags from their coerced string values. */\n var reFlags = /\\w*$/;\n\n /** Used to detect bad signed hexadecimal string values. */\n var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n /** Used to detect binary string values. */\n var reIsBinary = /^0b[01]+$/i;\n\n /** Used to detect host constructors (Safari). */\n var reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n /** Used to detect octal string values. */\n var reIsOctal = /^0o[0-7]+$/i;\n\n /** Used to detect unsigned integer values. */\n var reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n /** Used to match Latin Unicode letters (excluding mathematical operators). */\n var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n /** Used to ensure capturing order of template delimiters. */\n var reNoMatch = /($^)/;\n\n /** Used to match unescaped characters in compiled string literals. */\n var reUnescapedString = /['\\n\\r\\u2028\\u2029\\\\]/g;\n\n /** Used to compose unicode character classes. */\n var rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n /** Used to compose unicode capture groups. */\n var rsApos = \"['\\u2019]\",\n rsAstral = '[' + rsAstralRange + ']',\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n /** Used to compose unicode regexes. */\n var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsOrdLower = '\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])',\n rsOrdUpper = '\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq,\n rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';\n\n /** Used to match apostrophes. */\n var reApos = RegExp(rsApos, 'g');\n\n /**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\n var reComboMark = RegExp(rsCombo, 'g');\n\n /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */\n var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');\n\n /** Used to match complex or compound words. */\n var reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n rsUpper + '+' + rsOptContrUpper,\n rsOrdUpper,\n rsOrdLower,\n rsDigits,\n rsEmoji\n ].join('|'), 'g');\n\n /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */\n var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']');\n\n /** Used to detect strings that need a more robust regexp to match words. */\n var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n /** Used to assign default `context` object properties. */\n var contextProps = [\n 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array',\n 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object',\n 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array',\n 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap',\n '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout'\n ];\n\n /** Used to make template sourceURLs easier to identify. */\n var templateCounter = -1;\n\n /** Used to identify `toStringTag` values of typed arrays. */\n var typedArrayTags = {};\n typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\n typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\n typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\n typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\n typedArrayTags[uint32Tag] = true;\n typedArrayTags[argsTag] = typedArrayTags[arrayTag] =\n typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\n typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\n typedArrayTags[errorTag] = typedArrayTags[funcTag] =\n typedArrayTags[mapTag] = typedArrayTags[numberTag] =\n typedArrayTags[objectTag] = typedArrayTags[regexpTag] =\n typedArrayTags[setTag] = typedArrayTags[stringTag] =\n typedArrayTags[weakMapTag] = false;\n\n /** Used to identify `toStringTag` values supported by `_.clone`. */\n var cloneableTags = {};\n cloneableTags[argsTag] = cloneableTags[arrayTag] =\n cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\n cloneableTags[boolTag] = cloneableTags[dateTag] =\n cloneableTags[float32Tag] = cloneableTags[float64Tag] =\n cloneableTags[int8Tag] = cloneableTags[int16Tag] =\n cloneableTags[int32Tag] = cloneableTags[mapTag] =\n cloneableTags[numberTag] = cloneableTags[objectTag] =\n cloneableTags[regexpTag] = cloneableTags[setTag] =\n cloneableTags[stringTag] = cloneableTags[symbolTag] =\n cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\n cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\n cloneableTags[errorTag] = cloneableTags[funcTag] =\n cloneableTags[weakMapTag] = false;\n\n /** Used to map Latin Unicode letters to basic Latin letters. */\n var deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 's'\n };\n\n /** Used to map characters to HTML entities. */\n var htmlEscapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n };\n\n /** Used to map HTML entities to characters. */\n var htmlUnescapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\"\n };\n\n /** Used to escape characters for inclusion in compiled string literals. */\n var stringEscapes = {\n '\\\\': '\\\\',\n \"'\": \"'\",\n '\\n': 'n',\n '\\r': 'r',\n '\\u2028': 'u2028',\n '\\u2029': 'u2029'\n };\n\n /** Built-in method references without a dependency on `root`. */\n var freeParseFloat = parseFloat,\n freeParseInt = parseInt;\n\n /** Detect free variable `global` from Node.js. */\n var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n /** Detect free variable `self`. */\n var freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n /** Used as a reference to the global object. */\n var root = freeGlobal || freeSelf || Function('return this')();\n\n /** Detect free variable `exports`. */\n var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n /** Detect free variable `module`. */\n var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n /** Detect the popular CommonJS extension `module.exports`. */\n var moduleExports = freeModule && freeModule.exports === freeExports;\n\n /** Detect free variable `process` from Node.js. */\n var freeProcess = moduleExports && freeGlobal.process;\n\n /** Used to access faster Node.js helpers. */\n var nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n }());\n\n /* Node.js helper references. */\n var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer,\n nodeIsDate = nodeUtil && nodeUtil.isDate,\n nodeIsMap = nodeUtil && nodeUtil.isMap,\n nodeIsRegExp = nodeUtil && nodeUtil.isRegExp,\n nodeIsSet = nodeUtil && nodeUtil.isSet,\n nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\n function apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n }\n\n /**\n * A specialized version of `baseAggregator` for arrays.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function arrayAggregator(array, setter, iteratee, accumulator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n var value = array[index];\n setter(accumulator, value, iteratee(value), array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.forEach` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEach(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (iteratee(array[index], index, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.forEachRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEachRight(array, iteratee) {\n var length = array == null ? 0 : array.length;\n\n while (length--) {\n if (iteratee(array[length], length, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.every` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n */\n function arrayEvery(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (!predicate(array[index], index, array)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.includes` for arrays without support for\n * specifying an index to search from.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludes(array, value) {\n var length = array == null ? 0 : array.length;\n return !!length && baseIndexOf(array, value, 0) > -1;\n }\n\n /**\n * This function is like `arrayIncludes` except that it accepts a comparator.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludesWith(array, value, comparator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (comparator(value, array[index])) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n }\n\n /**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\n function arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n }\n\n /**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.reduceRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the last element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduceRight(array, iteratee, accumulator, initAccum) {\n var length = array == null ? 0 : array.length;\n if (initAccum && length) {\n accumulator = array[--length];\n }\n while (length--) {\n accumulator = iteratee(accumulator, array[length], length, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * Gets the size of an ASCII `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n var asciiSize = baseProperty('length');\n\n /**\n * Converts an ASCII `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function asciiToArray(string) {\n return string.split('');\n }\n\n /**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function asciiWords(string) {\n return string.match(reAsciiWord) || [];\n }\n\n /**\n * The base implementation of methods like `_.findKey` and `_.findLastKey`,\n * without support for iteratee shorthands, which iterates over `collection`\n * using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the found element or its key, else `undefined`.\n */\n function baseFindKey(collection, predicate, eachFunc) {\n var result;\n eachFunc(collection, function(value, key, collection) {\n if (predicate(value, key, collection)) {\n result = key;\n return false;\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseFindIndex(array, predicate, fromIndex, fromRight) {\n var length = array.length,\n index = fromIndex + (fromRight ? 1 : -1);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (predicate(array[index], index, array)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.indexOf` without `fromIndex` bounds checks.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOf(array, value, fromIndex) {\n return value === value\n ? strictIndexOf(array, value, fromIndex)\n : baseFindIndex(array, baseIsNaN, fromIndex);\n }\n\n /**\n * This function is like `baseIndexOf` except that it accepts a comparator.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOfWith(array, value, fromIndex, comparator) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (comparator(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.isNaN` without support for number objects.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n */\n function baseIsNaN(value) {\n return value !== value;\n }\n\n /**\n * The base implementation of `_.mean` and `_.meanBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the mean.\n */\n function baseMean(array, iteratee) {\n var length = array == null ? 0 : array.length;\n return length ? (baseSum(array, iteratee) / length) : NAN;\n }\n\n /**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function baseProperty(key) {\n return function(object) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.reduce` and `_.reduceRight`, without support\n * for iteratee shorthands, which iterates over `collection` using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} accumulator The initial value.\n * @param {boolean} initAccum Specify using the first or last element of\n * `collection` as the initial value.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the accumulated value.\n */\n function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {\n eachFunc(collection, function(value, index, collection) {\n accumulator = initAccum\n ? (initAccum = false, value)\n : iteratee(accumulator, value, index, collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.sortBy` which uses `comparer` to define the\n * sort order of `array` and replaces criteria objects with their corresponding\n * values.\n *\n * @private\n * @param {Array} array The array to sort.\n * @param {Function} comparer The function to define sort order.\n * @returns {Array} Returns `array`.\n */\n function baseSortBy(array, comparer) {\n var length = array.length;\n\n array.sort(comparer);\n while (length--) {\n array[length] = array[length].value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.sum` and `_.sumBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the sum.\n */\n function baseSum(array, iteratee) {\n var result,\n index = -1,\n length = array.length;\n\n while (++index < length) {\n var current = iteratee(array[index]);\n if (current !== undefined) {\n result = result === undefined ? current : (result + current);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\n function baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array\n * of key-value pairs for `object` corresponding to the property names of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the key-value pairs.\n */\n function baseToPairs(object, props) {\n return arrayMap(props, function(key) {\n return [key, object[key]];\n });\n }\n\n /**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\n function baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n }\n\n /**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\n function baseUnary(func) {\n return function(value) {\n return func(value);\n };\n }\n\n /**\n * The base implementation of `_.values` and `_.valuesIn` which creates an\n * array of `object` property values corresponding to the property names\n * of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the array of property values.\n */\n function baseValues(object, props) {\n return arrayMap(props, function(key) {\n return object[key];\n });\n }\n\n /**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function cacheHas(cache, key) {\n return cache.has(key);\n }\n\n /**\n * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the first unmatched string symbol.\n */\n function charsStartIndex(strSymbols, chrSymbols) {\n var index = -1,\n length = strSymbols.length;\n\n while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the last unmatched string symbol.\n */\n function charsEndIndex(strSymbols, chrSymbols) {\n var index = strSymbols.length;\n\n while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Gets the number of `placeholder` occurrences in `array`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} placeholder The placeholder to search for.\n * @returns {number} Returns the placeholder count.\n */\n function countHolders(array, placeholder) {\n var length = array.length,\n result = 0;\n\n while (length--) {\n if (array[length] === placeholder) {\n ++result;\n }\n }\n return result;\n }\n\n /**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\n var deburrLetter = basePropertyOf(deburredLetters);\n\n /**\n * Used by `_.escape` to convert characters to HTML entities.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n var escapeHtmlChar = basePropertyOf(htmlEscapes);\n\n /**\n * Used by `_.template` to escape characters for inclusion in compiled string literals.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n function escapeStringChar(chr) {\n return '\\\\' + stringEscapes[chr];\n }\n\n /**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function getValue(object, key) {\n return object == null ? undefined : object[key];\n }\n\n /**\n * Checks if `string` contains Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a symbol is found, else `false`.\n */\n function hasUnicode(string) {\n return reHasUnicode.test(string);\n }\n\n /**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\n function hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n }\n\n /**\n * Converts `iterator` to an array.\n *\n * @private\n * @param {Object} iterator The iterator to convert.\n * @returns {Array} Returns the converted array.\n */\n function iteratorToArray(iterator) {\n var data,\n result = [];\n\n while (!(data = iterator.next()).done) {\n result.push(data.value);\n }\n return result;\n }\n\n /**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\n function mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n }\n\n /**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\n function overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n }\n\n /**\n * Replaces all `placeholder` elements in `array` with an internal placeholder\n * and returns an array of their indexes.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {*} placeholder The placeholder to replace.\n * @returns {Array} Returns the new array of placeholder indexes.\n */\n function replaceHolders(array, placeholder) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value === placeholder || value === PLACEHOLDER) {\n array[index] = PLACEHOLDER;\n result[resIndex++] = index;\n }\n }\n return result;\n }\n\n /**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\n function setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n }\n\n /**\n * Converts `set` to its value-value pairs.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the value-value pairs.\n */\n function setToPairs(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = [value, value];\n });\n return result;\n }\n\n /**\n * A specialized version of `_.indexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictIndexOf(array, value, fromIndex) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (array[index] === value) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * A specialized version of `_.lastIndexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictLastIndexOf(array, value, fromIndex) {\n var index = fromIndex + 1;\n while (index--) {\n if (array[index] === value) {\n return index;\n }\n }\n return index;\n }\n\n /**\n * Gets the number of symbols in `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the string size.\n */\n function stringSize(string) {\n return hasUnicode(string)\n ? unicodeSize(string)\n : asciiSize(string);\n }\n\n /**\n * Converts `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function stringToArray(string) {\n return hasUnicode(string)\n ? unicodeToArray(string)\n : asciiToArray(string);\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\n function trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n }\n\n /**\n * Used by `_.unescape` to convert HTML entities to characters.\n *\n * @private\n * @param {string} chr The matched character to unescape.\n * @returns {string} Returns the unescaped character.\n */\n var unescapeHtmlChar = basePropertyOf(htmlUnescapes);\n\n /**\n * Gets the size of a Unicode `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n function unicodeSize(string) {\n var result = reUnicode.lastIndex = 0;\n while (reUnicode.test(string)) {\n ++result;\n }\n return result;\n }\n\n /**\n * Converts a Unicode `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function unicodeToArray(string) {\n return string.match(reUnicode) || [];\n }\n\n /**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n }\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * Create a new pristine `lodash` function using the `context` object.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Util\n * @param {Object} [context=root] The context object.\n * @returns {Function} Returns a new `lodash` function.\n * @example\n *\n * _.mixin({ 'foo': _.constant('foo') });\n *\n * var lodash = _.runInContext();\n * lodash.mixin({ 'bar': lodash.constant('bar') });\n *\n * _.isFunction(_.foo);\n * // => true\n * _.isFunction(_.bar);\n * // => false\n *\n * lodash.isFunction(lodash.foo);\n * // => false\n * lodash.isFunction(lodash.bar);\n * // => true\n *\n * // Create a suped-up `defer` in Node.js.\n * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer;\n */\n var runInContext = (function runInContext(context) {\n context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps));\n\n /** Built-in constructor references. */\n var Array = context.Array,\n Date = context.Date,\n Error = context.Error,\n Function = context.Function,\n Math = context.Math,\n Object = context.Object,\n RegExp = context.RegExp,\n String = context.String,\n TypeError = context.TypeError;\n\n /** Used for built-in method references. */\n var arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n /** Used to detect overreaching core-js shims. */\n var coreJsData = context['__core-js_shared__'];\n\n /** Used to resolve the decompiled source of functions. */\n var funcToString = funcProto.toString;\n\n /** Used to check objects for own properties. */\n var hasOwnProperty = objectProto.hasOwnProperty;\n\n /** Used to generate unique IDs. */\n var idCounter = 0;\n\n /** Used to detect methods masquerading as native. */\n var maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n }());\n\n /**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\n var nativeObjectToString = objectProto.toString;\n\n /** Used to infer the `Object` constructor. */\n var objectCtorString = funcToString.call(Object);\n\n /** Used to restore the original `_` reference in `_.noConflict`. */\n var oldDash = root._;\n\n /** Used to detect if a method is native. */\n var reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n );\n\n /** Built-in value references. */\n var Buffer = moduleExports ? context.Buffer : undefined,\n Symbol = context.Symbol,\n Uint8Array = context.Uint8Array,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n getPrototype = overArg(Object.getPrototypeOf, Object),\n objectCreate = Object.create,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined,\n symIterator = Symbol ? Symbol.iterator : undefined,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n var defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n }());\n\n /** Mocked built-ins. */\n var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout,\n ctxNow = Date && Date.now !== root.Date.now && Date.now,\n ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout;\n\n /* Built-in method references for those with the same name as other `lodash` methods. */\n var nativeCeil = Math.ceil,\n nativeFloor = Math.floor,\n nativeGetSymbols = Object.getOwnPropertySymbols,\n nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeIsFinite = context.isFinite,\n nativeJoin = arrayProto.join,\n nativeKeys = overArg(Object.keys, Object),\n nativeMax = Math.max,\n nativeMin = Math.min,\n nativeNow = Date.now,\n nativeParseInt = context.parseInt,\n nativeRandom = Math.random,\n nativeReverse = arrayProto.reverse;\n\n /* Built-in method references that are verified to be native. */\n var DataView = getNative(context, 'DataView'),\n Map = getNative(context, 'Map'),\n Promise = getNative(context, 'Promise'),\n Set = getNative(context, 'Set'),\n WeakMap = getNative(context, 'WeakMap'),\n nativeCreate = getNative(Object, 'create');\n\n /** Used to store function metadata. */\n var metaMap = WeakMap && new WeakMap;\n\n /** Used to lookup unminified function names. */\n var realNames = {};\n\n /** Used to detect maps, sets, and weakmaps. */\n var dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n /** Used to convert symbols to primitives and strings. */\n var symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` object which wraps `value` to enable implicit method\n * chain sequences. Methods that operate on and return arrays, collections,\n * and functions can be chained together. Methods that retrieve a single value\n * or may return a primitive value will automatically end the chain sequence\n * and return the unwrapped value. Otherwise, the value must be unwrapped\n * with `_#value`.\n *\n * Explicit chain sequences, which must be unwrapped with `_#value`, may be\n * enabled using `_.chain`.\n *\n * The execution of chained methods is lazy, that is, it's deferred until\n * `_#value` is implicitly or explicitly called.\n *\n * Lazy evaluation allows several methods to support shortcut fusion.\n * Shortcut fusion is an optimization to merge iteratee calls; this avoids\n * the creation of intermediate arrays and can greatly reduce the number of\n * iteratee executions. Sections of a chain sequence qualify for shortcut\n * fusion if the section is applied to an array and iteratees accept only\n * one argument. The heuristic for whether a section qualifies for shortcut\n * fusion is subject to change.\n *\n * Chaining is supported in custom builds as long as the `_#value` method is\n * directly or indirectly included in the build.\n *\n * In addition to lodash methods, wrappers have `Array` and `String` methods.\n *\n * The wrapper `Array` methods are:\n * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift`\n *\n * The wrapper `String` methods are:\n * `replace` and `split`\n *\n * The wrapper methods that support shortcut fusion are:\n * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`,\n * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`,\n * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray`\n *\n * The chainable wrapper methods are:\n * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`,\n * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`,\n * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`,\n * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`,\n * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`,\n * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`,\n * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`,\n * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`,\n * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`,\n * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`,\n * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`,\n * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`,\n * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`,\n * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`,\n * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`,\n * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`,\n * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`,\n * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`,\n * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`,\n * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`,\n * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`,\n * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`,\n * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`,\n * `zipObject`, `zipObjectDeep`, and `zipWith`\n *\n * The wrapper methods that are **not** chainable by default are:\n * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`,\n * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`,\n * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`,\n * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`,\n * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`,\n * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`,\n * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`,\n * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`,\n * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`,\n * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`,\n * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`,\n * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`,\n * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`,\n * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`,\n * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`,\n * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`,\n * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`,\n * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`,\n * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`,\n * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`,\n * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`,\n * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`,\n * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`,\n * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`,\n * `upperFirst`, `value`, and `words`\n *\n * @name _\n * @constructor\n * @category Seq\n * @param {*} value The value to wrap in a `lodash` instance.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2, 3]);\n *\n * // Returns an unwrapped value.\n * wrapped.reduce(_.add);\n * // => 6\n *\n * // Returns a wrapped value.\n * var squares = wrapped.map(square);\n *\n * _.isArray(squares);\n * // => false\n *\n * _.isArray(squares.value());\n * // => true\n */\n function lodash(value) {\n if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {\n if (value instanceof LodashWrapper) {\n return value;\n }\n if (hasOwnProperty.call(value, '__wrapped__')) {\n return wrapperClone(value);\n }\n }\n return new LodashWrapper(value);\n }\n\n /**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\n var baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n }());\n\n /**\n * The function whose prototype chain sequence wrappers inherit from.\n *\n * @private\n */\n function baseLodash() {\n // No operation performed.\n }\n\n /**\n * The base constructor for creating `lodash` wrapper objects.\n *\n * @private\n * @param {*} value The value to wrap.\n * @param {boolean} [chainAll] Enable explicit method chain sequences.\n */\n function LodashWrapper(value, chainAll) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__chain__ = !!chainAll;\n this.__index__ = 0;\n this.__values__ = undefined;\n }\n\n /**\n * By default, the template delimiters used by lodash are like those in\n * embedded Ruby (ERB) as well as ES2015 template strings. Change the\n * following template settings to use alternative delimiters.\n *\n * @static\n * @memberOf _\n * @type {Object}\n */\n lodash.templateSettings = {\n\n /**\n * Used to detect `data` property values to be HTML-escaped.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'escape': reEscape,\n\n /**\n * Used to detect code to be evaluated.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'evaluate': reEvaluate,\n\n /**\n * Used to detect `data` property values to inject.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'interpolate': reInterpolate,\n\n /**\n * Used to reference the data object in the template text.\n *\n * @memberOf _.templateSettings\n * @type {string}\n */\n 'variable': '',\n\n /**\n * Used to import variables into the compiled template.\n *\n * @memberOf _.templateSettings\n * @type {Object}\n */\n 'imports': {\n\n /**\n * A reference to the `lodash` function.\n *\n * @memberOf _.templateSettings.imports\n * @type {Function}\n */\n '_': lodash\n }\n };\n\n // Ensure wrappers are instances of `baseLodash`.\n lodash.prototype = baseLodash.prototype;\n lodash.prototype.constructor = lodash;\n\n LodashWrapper.prototype = baseCreate(baseLodash.prototype);\n LodashWrapper.prototype.constructor = LodashWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.\n *\n * @private\n * @constructor\n * @param {*} value The value to wrap.\n */\n function LazyWrapper(value) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__dir__ = 1;\n this.__filtered__ = false;\n this.__iteratees__ = [];\n this.__takeCount__ = MAX_ARRAY_LENGTH;\n this.__views__ = [];\n }\n\n /**\n * Creates a clone of the lazy wrapper object.\n *\n * @private\n * @name clone\n * @memberOf LazyWrapper\n * @returns {Object} Returns the cloned `LazyWrapper` object.\n */\n function lazyClone() {\n var result = new LazyWrapper(this.__wrapped__);\n result.__actions__ = copyArray(this.__actions__);\n result.__dir__ = this.__dir__;\n result.__filtered__ = this.__filtered__;\n result.__iteratees__ = copyArray(this.__iteratees__);\n result.__takeCount__ = this.__takeCount__;\n result.__views__ = copyArray(this.__views__);\n return result;\n }\n\n /**\n * Reverses the direction of lazy iteration.\n *\n * @private\n * @name reverse\n * @memberOf LazyWrapper\n * @returns {Object} Returns the new reversed `LazyWrapper` object.\n */\n function lazyReverse() {\n if (this.__filtered__) {\n var result = new LazyWrapper(this);\n result.__dir__ = -1;\n result.__filtered__ = true;\n } else {\n result = this.clone();\n result.__dir__ *= -1;\n }\n return result;\n }\n\n /**\n * Extracts the unwrapped value from its lazy wrapper.\n *\n * @private\n * @name value\n * @memberOf LazyWrapper\n * @returns {*} Returns the unwrapped value.\n */\n function lazyValue() {\n var array = this.__wrapped__.value(),\n dir = this.__dir__,\n isArr = isArray(array),\n isRight = dir < 0,\n arrLength = isArr ? array.length : 0,\n view = getView(0, arrLength, this.__views__),\n start = view.start,\n end = view.end,\n length = end - start,\n index = isRight ? end : (start - 1),\n iteratees = this.__iteratees__,\n iterLength = iteratees.length,\n resIndex = 0,\n takeCount = nativeMin(length, this.__takeCount__);\n\n if (!isArr || (!isRight && arrLength == length && takeCount == length)) {\n return baseWrapperValue(array, this.__actions__);\n }\n var result = [];\n\n outer:\n while (length-- && resIndex < takeCount) {\n index += dir;\n\n var iterIndex = -1,\n value = array[index];\n\n while (++iterIndex < iterLength) {\n var data = iteratees[iterIndex],\n iteratee = data.iteratee,\n type = data.type,\n computed = iteratee(value);\n\n if (type == LAZY_MAP_FLAG) {\n value = computed;\n } else if (!computed) {\n if (type == LAZY_FILTER_FLAG) {\n continue outer;\n } else {\n break outer;\n }\n }\n }\n result[resIndex++] = value;\n }\n return result;\n }\n\n // Ensure `LazyWrapper` is an instance of `baseLodash`.\n LazyWrapper.prototype = baseCreate(baseLodash.prototype);\n LazyWrapper.prototype.constructor = LazyWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\n function hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n }\n\n /**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n }\n\n /**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\n function hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n }\n\n // Add methods to `Hash`.\n Hash.prototype.clear = hashClear;\n Hash.prototype['delete'] = hashDelete;\n Hash.prototype.get = hashGet;\n Hash.prototype.has = hashHas;\n Hash.prototype.set = hashSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\n function listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n }\n\n /**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n }\n\n /**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n }\n\n /**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\n function listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n }\n\n // Add methods to `ListCache`.\n ListCache.prototype.clear = listCacheClear;\n ListCache.prototype['delete'] = listCacheDelete;\n ListCache.prototype.get = listCacheGet;\n ListCache.prototype.has = listCacheHas;\n ListCache.prototype.set = listCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\n function mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n }\n\n /**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function mapCacheGet(key) {\n return getMapData(this, key).get(key);\n }\n\n /**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function mapCacheHas(key) {\n return getMapData(this, key).has(key);\n }\n\n /**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\n function mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n }\n\n // Add methods to `MapCache`.\n MapCache.prototype.clear = mapCacheClear;\n MapCache.prototype['delete'] = mapCacheDelete;\n MapCache.prototype.get = mapCacheGet;\n MapCache.prototype.has = mapCacheHas;\n MapCache.prototype.set = mapCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\n function SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n }\n\n /**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\n function setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n }\n\n /**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\n function setCacheHas(value) {\n return this.__data__.has(value);\n }\n\n // Add methods to `SetCache`.\n SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\n SetCache.prototype.has = setCacheHas;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n }\n\n /**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\n function stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n }\n\n /**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function stackGet(key) {\n return this.__data__.get(key);\n }\n\n /**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function stackHas(key) {\n return this.__data__.has(key);\n }\n\n /**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\n function stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n }\n\n // Add methods to `Stack`.\n Stack.prototype.clear = stackClear;\n Stack.prototype['delete'] = stackDelete;\n Stack.prototype.get = stackGet;\n Stack.prototype.has = stackHas;\n Stack.prototype.set = stackSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\n function arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.sample` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @returns {*} Returns the random element.\n */\n function arraySample(array) {\n var length = array.length;\n return length ? array[baseRandom(0, length - 1)] : undefined;\n }\n\n /**\n * A specialized version of `_.sampleSize` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function arraySampleSize(array, n) {\n return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length));\n }\n\n /**\n * A specialized version of `_.shuffle` for arrays.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function arrayShuffle(array) {\n return shuffleSelf(copyArray(array));\n }\n\n /**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n }\n\n /**\n * Aggregates elements of `collection` on `accumulator` with keys transformed\n * by `iteratee` and values set by `setter`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseAggregator(collection, setter, iteratee, accumulator) {\n baseEach(collection, function(value, key, collection) {\n setter(accumulator, value, iteratee(value), collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.assign` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssign(object, source) {\n return object && copyObject(source, keys(source), object);\n }\n\n /**\n * The base implementation of `_.assignIn` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssignIn(object, source) {\n return object && copyObject(source, keysIn(source), object);\n }\n\n /**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n }\n\n /**\n * The base implementation of `_.at` without support for individual paths.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {string[]} paths The property paths to pick.\n * @returns {Array} Returns the picked elements.\n */\n function baseAt(object, paths) {\n var index = -1,\n length = paths.length,\n result = Array(length),\n skip = object == null;\n\n while (++index < length) {\n result[index] = skip ? undefined : get(object, paths[index]);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.clamp` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n */\n function baseClamp(number, lower, upper) {\n if (number === number) {\n if (upper !== undefined) {\n number = number <= upper ? number : upper;\n }\n if (lower !== undefined) {\n number = number >= lower ? number : lower;\n }\n }\n return number;\n }\n\n /**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\n function baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n if (isSet(value)) {\n value.forEach(function(subValue) {\n result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n });\n } else if (isMap(value)) {\n value.forEach(function(subValue, key) {\n result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n }\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n }\n\n /**\n * The base implementation of `_.conforms` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property predicates to conform to.\n * @returns {Function} Returns the new spec function.\n */\n function baseConforms(source) {\n var props = keys(source);\n return function(object) {\n return baseConformsTo(object, source, props);\n };\n }\n\n /**\n * The base implementation of `_.conformsTo` which accepts `props` to check.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n */\n function baseConformsTo(object, source, props) {\n var length = props.length;\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (length--) {\n var key = props[length],\n predicate = source[key],\n value = object[key];\n\n if ((value === undefined && !(key in object)) || !predicate(value)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.delay` and `_.defer` which accepts `args`\n * to provide to `func`.\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {Array} args The arguments to provide to `func`.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n function baseDelay(func, wait, args) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return setTimeout(function() { func.apply(undefined, args); }, wait);\n }\n\n /**\n * The base implementation of methods like `_.difference` without support\n * for excluding multiple arrays or iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Array} values The values to exclude.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n */\n function baseDifference(array, values, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n isCommon = true,\n length = array.length,\n result = [],\n valuesLength = values.length;\n\n if (!length) {\n return result;\n }\n if (iteratee) {\n values = arrayMap(values, baseUnary(iteratee));\n }\n if (comparator) {\n includes = arrayIncludesWith;\n isCommon = false;\n }\n else if (values.length >= LARGE_ARRAY_SIZE) {\n includes = cacheHas;\n isCommon = false;\n values = new SetCache(values);\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee == null ? value : iteratee(value);\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var valuesIndex = valuesLength;\n while (valuesIndex--) {\n if (values[valuesIndex] === computed) {\n continue outer;\n }\n }\n result.push(value);\n }\n else if (!includes(values, computed, comparator)) {\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEach = createBaseEach(baseForOwn);\n\n /**\n * The base implementation of `_.forEachRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEachRight = createBaseEach(baseForOwnRight, true);\n\n /**\n * The base implementation of `_.every` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`\n */\n function baseEvery(collection, predicate) {\n var result = true;\n baseEach(collection, function(value, index, collection) {\n result = !!predicate(value, index, collection);\n return result;\n });\n return result;\n }\n\n /**\n * The base implementation of methods like `_.max` and `_.min` which accepts a\n * `comparator` to determine the extremum value.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The iteratee invoked per iteration.\n * @param {Function} comparator The comparator used to compare values.\n * @returns {*} Returns the extremum value.\n */\n function baseExtremum(array, iteratee, comparator) {\n var index = -1,\n length = array.length;\n\n while (++index < length) {\n var value = array[index],\n current = iteratee(value);\n\n if (current != null && (computed === undefined\n ? (current === current && !isSymbol(current))\n : comparator(current, computed)\n )) {\n var computed = current,\n result = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.fill` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n */\n function baseFill(array, value, start, end) {\n var length = array.length;\n\n start = toInteger(start);\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = (end === undefined || end > length) ? length : toInteger(end);\n if (end < 0) {\n end += length;\n }\n end = start > end ? 0 : toLength(end);\n while (start < end) {\n array[start++] = value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.filter` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function baseFilter(collection, predicate) {\n var result = [];\n baseEach(collection, function(value, index, collection) {\n if (predicate(value, index, collection)) {\n result.push(value);\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.flatten` with support for restricting flattening.\n *\n * @private\n * @param {Array} array The array to flatten.\n * @param {number} depth The maximum recursion depth.\n * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.\n * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.\n * @param {Array} [result=[]] The initial result value.\n * @returns {Array} Returns the new flattened array.\n */\n function baseFlatten(array, depth, predicate, isStrict, result) {\n var index = -1,\n length = array.length;\n\n predicate || (predicate = isFlattenable);\n result || (result = []);\n\n while (++index < length) {\n var value = array[index];\n if (depth > 0 && predicate(value)) {\n if (depth > 1) {\n // Recursively flatten arrays (susceptible to call stack limits).\n baseFlatten(value, depth - 1, predicate, isStrict, result);\n } else {\n arrayPush(result, value);\n }\n } else if (!isStrict) {\n result[result.length] = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseFor = createBaseFor();\n\n /**\n * This function is like `baseFor` except that it iterates over properties\n * in the opposite order.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseForRight = createBaseFor(true);\n\n /**\n * The base implementation of `_.forOwn` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwn(object, iteratee) {\n return object && baseFor(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.forOwnRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwnRight(object, iteratee) {\n return object && baseForRight(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.functions` which creates an array of\n * `object` function property names filtered from `props`.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Array} props The property names to filter.\n * @returns {Array} Returns the function names.\n */\n function baseFunctions(object, props) {\n return arrayFilter(props, function(key) {\n return isFunction(object[key]);\n });\n }\n\n /**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\n function baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n }\n\n /**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n }\n\n /**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n function baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n }\n\n /**\n * The base implementation of `_.gt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n */\n function baseGt(value, other) {\n return value > other;\n }\n\n /**\n * The base implementation of `_.has` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHas(object, key) {\n return object != null && hasOwnProperty.call(object, key);\n }\n\n /**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHasIn(object, key) {\n return object != null && key in Object(object);\n }\n\n /**\n * The base implementation of `_.inRange` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to check.\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n */\n function baseInRange(number, start, end) {\n return number >= nativeMin(start, end) && number < nativeMax(start, end);\n }\n\n /**\n * The base implementation of methods like `_.intersection`, without support\n * for iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of shared values.\n */\n function baseIntersection(arrays, iteratee, comparator) {\n var includes = comparator ? arrayIncludesWith : arrayIncludes,\n length = arrays[0].length,\n othLength = arrays.length,\n othIndex = othLength,\n caches = Array(othLength),\n maxLength = Infinity,\n result = [];\n\n while (othIndex--) {\n var array = arrays[othIndex];\n if (othIndex && iteratee) {\n array = arrayMap(array, baseUnary(iteratee));\n }\n maxLength = nativeMin(array.length, maxLength);\n caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120))\n ? new SetCache(othIndex && array)\n : undefined;\n }\n array = arrays[0];\n\n var index = -1,\n seen = caches[0];\n\n outer:\n while (++index < length && result.length < maxLength) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (!(seen\n ? cacheHas(seen, computed)\n : includes(result, computed, comparator)\n )) {\n othIndex = othLength;\n while (--othIndex) {\n var cache = caches[othIndex];\n if (!(cache\n ? cacheHas(cache, computed)\n : includes(arrays[othIndex], computed, comparator))\n ) {\n continue outer;\n }\n }\n if (seen) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.invert` and `_.invertBy` which inverts\n * `object` with values transformed by `iteratee` and set by `setter`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform values.\n * @param {Object} accumulator The initial inverted object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseInverter(object, setter, iteratee, accumulator) {\n baseForOwn(object, function(value, key, object) {\n setter(accumulator, iteratee(value), key, object);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.invoke` without support for individual\n * method arguments.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {Array} args The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n */\n function baseInvoke(object, path, args) {\n path = castPath(path, object);\n object = parent(object, path);\n var func = object == null ? object : object[toKey(last(path))];\n return func == null ? undefined : apply(func, object, args);\n }\n\n /**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\n function baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n }\n\n /**\n * The base implementation of `_.isArrayBuffer` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n */\n function baseIsArrayBuffer(value) {\n return isObjectLike(value) && baseGetTag(value) == arrayBufferTag;\n }\n\n /**\n * The base implementation of `_.isDate` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n */\n function baseIsDate(value) {\n return isObjectLike(value) && baseGetTag(value) == dateTag;\n }\n\n /**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\n function baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n }\n\n /**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n }\n\n /**\n * The base implementation of `_.isMap` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n */\n function baseIsMap(value) {\n return isObjectLike(value) && getTag(value) == mapTag;\n }\n\n /**\n * The base implementation of `_.isMatch` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Array} matchData The property names, values, and compare flags to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n */\n function baseIsMatch(object, source, matchData, customizer) {\n var index = matchData.length,\n length = index,\n noCustomizer = !customizer;\n\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (index--) {\n var data = matchData[index];\n if ((noCustomizer && data[2])\n ? data[1] !== object[data[0]]\n : !(data[0] in object)\n ) {\n return false;\n }\n }\n while (++index < length) {\n data = matchData[index];\n var key = data[0],\n objValue = object[key],\n srcValue = data[1];\n\n if (noCustomizer && data[2]) {\n if (objValue === undefined && !(key in object)) {\n return false;\n }\n } else {\n var stack = new Stack;\n if (customizer) {\n var result = customizer(objValue, srcValue, key, object, source, stack);\n }\n if (!(result === undefined\n ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n : result\n )) {\n return false;\n }\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\n function baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n }\n\n /**\n * The base implementation of `_.isRegExp` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n */\n function baseIsRegExp(value) {\n return isObjectLike(value) && baseGetTag(value) == regexpTag;\n }\n\n /**\n * The base implementation of `_.isSet` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n */\n function baseIsSet(value) {\n return isObjectLike(value) && getTag(value) == setTag;\n }\n\n /**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\n function baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n }\n\n /**\n * The base implementation of `_.iteratee`.\n *\n * @private\n * @param {*} [value=_.identity] The value to convert to an iteratee.\n * @returns {Function} Returns the iteratee.\n */\n function baseIteratee(value) {\n // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n if (typeof value == 'function') {\n return value;\n }\n if (value == null) {\n return identity;\n }\n if (typeof value == 'object') {\n return isArray(value)\n ? baseMatchesProperty(value[0], value[1])\n : baseMatches(value);\n }\n return property(value);\n }\n\n /**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.lt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n */\n function baseLt(value, other) {\n return value < other;\n }\n\n /**\n * The base implementation of `_.map` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function baseMap(collection, iteratee) {\n var index = -1,\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value, key, collection) {\n result[++index] = iteratee(value, key, collection);\n });\n return result;\n }\n\n /**\n * The base implementation of `_.matches` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property values to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatches(source) {\n var matchData = getMatchData(source);\n if (matchData.length == 1 && matchData[0][2]) {\n return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n }\n return function(object) {\n return object === source || baseIsMatch(object, source, matchData);\n };\n }\n\n /**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatchesProperty(path, srcValue) {\n if (isKey(path) && isStrictComparable(srcValue)) {\n return matchesStrictComparable(toKey(path), srcValue);\n }\n return function(object) {\n var objValue = get(object, path);\n return (objValue === undefined && objValue === srcValue)\n ? hasIn(object, path)\n : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n };\n }\n\n /**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n }\n\n /**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n }\n\n /**\n * The base implementation of `_.nth` which doesn't coerce arguments.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {number} n The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n */\n function baseNth(array, n) {\n var length = array.length;\n if (!length) {\n return;\n }\n n += n < 0 ? length : 0;\n return isIndex(n, length) ? array[n] : undefined;\n }\n\n /**\n * The base implementation of `_.orderBy` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.\n * @param {string[]} orders The sort orders of `iteratees`.\n * @returns {Array} Returns the new sorted array.\n */\n function baseOrderBy(collection, iteratees, orders) {\n if (iteratees.length) {\n iteratees = arrayMap(iteratees, function(iteratee) {\n if (isArray(iteratee)) {\n return function(value) {\n return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee);\n }\n }\n return iteratee;\n });\n } else {\n iteratees = [identity];\n }\n\n var index = -1;\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n\n var result = baseMap(collection, function(value, key, collection) {\n var criteria = arrayMap(iteratees, function(iteratee) {\n return iteratee(value);\n });\n return { 'criteria': criteria, 'index': ++index, 'value': value };\n });\n\n return baseSortBy(result, function(object, other) {\n return compareMultiple(object, other, orders);\n });\n }\n\n /**\n * The base implementation of `_.pick` without support for individual\n * property identifiers.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @returns {Object} Returns the new object.\n */\n function basePick(object, paths) {\n return basePickBy(object, paths, function(value, path) {\n return hasIn(object, path);\n });\n }\n\n /**\n * The base implementation of `_.pickBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @param {Function} predicate The function invoked per property.\n * @returns {Object} Returns the new object.\n */\n function basePickBy(object, paths, predicate) {\n var index = -1,\n length = paths.length,\n result = {};\n\n while (++index < length) {\n var path = paths[index],\n value = baseGet(object, path);\n\n if (predicate(value, path)) {\n baseSet(result, castPath(path, object), value);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyDeep(path) {\n return function(object) {\n return baseGet(object, path);\n };\n }\n\n /**\n * The base implementation of `_.pullAllBy` without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n */\n function basePullAll(array, values, iteratee, comparator) {\n var indexOf = comparator ? baseIndexOfWith : baseIndexOf,\n index = -1,\n length = values.length,\n seen = array;\n\n if (array === values) {\n values = copyArray(values);\n }\n if (iteratee) {\n seen = arrayMap(array, baseUnary(iteratee));\n }\n while (++index < length) {\n var fromIndex = 0,\n value = values[index],\n computed = iteratee ? iteratee(value) : value;\n\n while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) {\n if (seen !== array) {\n splice.call(seen, fromIndex, 1);\n }\n splice.call(array, fromIndex, 1);\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.pullAt` without support for individual\n * indexes or capturing the removed elements.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {number[]} indexes The indexes of elements to remove.\n * @returns {Array} Returns `array`.\n */\n function basePullAt(array, indexes) {\n var length = array ? indexes.length : 0,\n lastIndex = length - 1;\n\n while (length--) {\n var index = indexes[length];\n if (length == lastIndex || index !== previous) {\n var previous = index;\n if (isIndex(index)) {\n splice.call(array, index, 1);\n } else {\n baseUnset(array, index);\n }\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.random` without support for returning\n * floating-point numbers.\n *\n * @private\n * @param {number} lower The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the random number.\n */\n function baseRandom(lower, upper) {\n return lower + nativeFloor(nativeRandom() * (upper - lower + 1));\n }\n\n /**\n * The base implementation of `_.range` and `_.rangeRight` which doesn't\n * coerce arguments.\n *\n * @private\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @param {number} step The value to increment or decrement by.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the range of numbers.\n */\n function baseRange(start, end, step, fromRight) {\n var index = -1,\n length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),\n result = Array(length);\n\n while (length--) {\n result[fromRight ? length : ++index] = start;\n start += step;\n }\n return result;\n }\n\n /**\n * The base implementation of `_.repeat` which doesn't coerce arguments.\n *\n * @private\n * @param {string} string The string to repeat.\n * @param {number} n The number of times to repeat the string.\n * @returns {string} Returns the repeated string.\n */\n function baseRepeat(string, n) {\n var result = '';\n if (!string || n < 1 || n > MAX_SAFE_INTEGER) {\n return result;\n }\n // Leverage the exponentiation by squaring algorithm for a faster repeat.\n // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.\n do {\n if (n % 2) {\n result += string;\n }\n n = nativeFloor(n / 2);\n if (n) {\n string += string;\n }\n } while (n);\n\n return result;\n }\n\n /**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\n function baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n }\n\n /**\n * The base implementation of `_.sample`.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n */\n function baseSample(collection) {\n return arraySample(values(collection));\n }\n\n /**\n * The base implementation of `_.sampleSize` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function baseSampleSize(collection, n) {\n var array = values(collection);\n return shuffleSelf(array, baseClamp(n, 0, array.length));\n }\n\n /**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n }\n\n /**\n * The base implementation of `setData` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var baseSetData = !metaMap ? identity : function(func, data) {\n metaMap.set(func, data);\n return func;\n };\n\n /**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n };\n\n /**\n * The base implementation of `_.shuffle`.\n *\n * @private\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function baseShuffle(collection) {\n return shuffleSelf(values(collection));\n }\n\n /**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n }\n\n /**\n * The base implementation of `_.some` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function baseSome(collection, predicate) {\n var result;\n\n baseEach(collection, function(value, index, collection) {\n result = predicate(value, index, collection);\n return !result;\n });\n return !!result;\n }\n\n /**\n * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which\n * performs a binary search of `array` to determine the index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndex(array, value, retHighest) {\n var low = 0,\n high = array == null ? low : array.length;\n\n if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {\n while (low < high) {\n var mid = (low + high) >>> 1,\n computed = array[mid];\n\n if (computed !== null && !isSymbol(computed) &&\n (retHighest ? (computed <= value) : (computed < value))) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return high;\n }\n return baseSortedIndexBy(array, value, identity, retHighest);\n }\n\n /**\n * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy`\n * which invokes `iteratee` for `value` and each element of `array` to compute\n * their sort ranking. The iteratee is invoked with one argument; (value).\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} iteratee The iteratee invoked per element.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndexBy(array, value, iteratee, retHighest) {\n var low = 0,\n high = array == null ? 0 : array.length;\n if (high === 0) {\n return 0;\n }\n\n value = iteratee(value);\n var valIsNaN = value !== value,\n valIsNull = value === null,\n valIsSymbol = isSymbol(value),\n valIsUndefined = value === undefined;\n\n while (low < high) {\n var mid = nativeFloor((low + high) / 2),\n computed = iteratee(array[mid]),\n othIsDefined = computed !== undefined,\n othIsNull = computed === null,\n othIsReflexive = computed === computed,\n othIsSymbol = isSymbol(computed);\n\n if (valIsNaN) {\n var setLow = retHighest || othIsReflexive;\n } else if (valIsUndefined) {\n setLow = othIsReflexive && (retHighest || othIsDefined);\n } else if (valIsNull) {\n setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull);\n } else if (valIsSymbol) {\n setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol);\n } else if (othIsNull || othIsSymbol) {\n setLow = false;\n } else {\n setLow = retHighest ? (computed <= value) : (computed < value);\n }\n if (setLow) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return nativeMin(high, MAX_ARRAY_INDEX);\n }\n\n /**\n * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseSortedUniq(array, iteratee) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n if (!index || !eq(computed, seen)) {\n var seen = computed;\n result[resIndex++] = value === 0 ? 0 : value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toNumber` which doesn't ensure correct\n * conversions of binary, hexadecimal, or octal string values.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n */\n function baseToNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n return +value;\n }\n\n /**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\n function baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * The base implementation of `_.uniqBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseUniq(array, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n length = array.length,\n isCommon = true,\n result = [],\n seen = result;\n\n if (comparator) {\n isCommon = false;\n includes = arrayIncludesWith;\n }\n else if (length >= LARGE_ARRAY_SIZE) {\n var set = iteratee ? null : createSet(array);\n if (set) {\n return setToArray(set);\n }\n isCommon = false;\n includes = cacheHas;\n seen = new SetCache;\n }\n else {\n seen = iteratee ? [] : result;\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var seenIndex = seen.length;\n while (seenIndex--) {\n if (seen[seenIndex] === computed) {\n continue outer;\n }\n }\n if (iteratee) {\n seen.push(computed);\n }\n result.push(value);\n }\n else if (!includes(seen, computed, comparator)) {\n if (seen !== result) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.unset`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The property path to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n */\n function baseUnset(object, path) {\n path = castPath(path, object);\n object = parent(object, path);\n return object == null || delete object[toKey(last(path))];\n }\n\n /**\n * The base implementation of `_.update`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to update.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseUpdate(object, path, updater, customizer) {\n return baseSet(object, path, updater(baseGet(object, path)), customizer);\n }\n\n /**\n * The base implementation of methods like `_.dropWhile` and `_.takeWhile`\n * without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {Function} predicate The function invoked per iteration.\n * @param {boolean} [isDrop] Specify dropping elements instead of taking them.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseWhile(array, predicate, isDrop, fromRight) {\n var length = array.length,\n index = fromRight ? length : -1;\n\n while ((fromRight ? index-- : ++index < length) &&\n predicate(array[index], index, array)) {}\n\n return isDrop\n ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))\n : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));\n }\n\n /**\n * The base implementation of `wrapperValue` which returns the result of\n * performing a sequence of actions on the unwrapped `value`, where each\n * successive action is supplied the return value of the previous.\n *\n * @private\n * @param {*} value The unwrapped value.\n * @param {Array} actions Actions to perform to resolve the unwrapped value.\n * @returns {*} Returns the resolved value.\n */\n function baseWrapperValue(value, actions) {\n var result = value;\n if (result instanceof LazyWrapper) {\n result = result.value();\n }\n return arrayReduce(actions, function(result, action) {\n return action.func.apply(action.thisArg, arrayPush([result], action.args));\n }, result);\n }\n\n /**\n * The base implementation of methods like `_.xor`, without support for\n * iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of values.\n */\n function baseXor(arrays, iteratee, comparator) {\n var length = arrays.length;\n if (length < 2) {\n return length ? baseUniq(arrays[0]) : [];\n }\n var index = -1,\n result = Array(length);\n\n while (++index < length) {\n var array = arrays[index],\n othIndex = -1;\n\n while (++othIndex < length) {\n if (othIndex != index) {\n result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator);\n }\n }\n }\n return baseUniq(baseFlatten(result, 1), iteratee, comparator);\n }\n\n /**\n * This base implementation of `_.zipObject` which assigns values using `assignFunc`.\n *\n * @private\n * @param {Array} props The property identifiers.\n * @param {Array} values The property values.\n * @param {Function} assignFunc The function to assign values.\n * @returns {Object} Returns the new object.\n */\n function baseZipObject(props, values, assignFunc) {\n var index = -1,\n length = props.length,\n valsLength = values.length,\n result = {};\n\n while (++index < length) {\n var value = index < valsLength ? values[index] : undefined;\n assignFunc(result, props[index], value);\n }\n return result;\n }\n\n /**\n * Casts `value` to an empty array if it's not an array like object.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array|Object} Returns the cast array-like object.\n */\n function castArrayLikeObject(value) {\n return isArrayLikeObject(value) ? value : [];\n }\n\n /**\n * Casts `value` to `identity` if it's not a function.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Function} Returns cast function.\n */\n function castFunction(value) {\n return typeof value == 'function' ? value : identity;\n }\n\n /**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\n function castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n }\n\n /**\n * A `baseRest` alias which can be replaced with `identity` by module\n * replacement plugins.\n *\n * @private\n * @type {Function}\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n var castRest = baseRest;\n\n /**\n * Casts `array` to a slice if it's needed.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {number} start The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the cast slice.\n */\n function castSlice(array, start, end) {\n var length = array.length;\n end = end === undefined ? length : end;\n return (!start && end >= length) ? array : baseSlice(array, start, end);\n }\n\n /**\n * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout).\n *\n * @private\n * @param {number|Object} id The timer id or timeout object of the timer to clear.\n */\n var clearTimeout = ctxClearTimeout || function(id) {\n return root.clearTimeout(id);\n };\n\n /**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\n function cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n }\n\n /**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\n function cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n }\n\n /**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\n function cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n }\n\n /**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\n function cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n }\n\n /**\n * Creates a clone of the `symbol` object.\n *\n * @private\n * @param {Object} symbol The symbol object to clone.\n * @returns {Object} Returns the cloned symbol object.\n */\n function cloneSymbol(symbol) {\n return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n }\n\n /**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\n function cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n }\n\n /**\n * Compares values to sort them in ascending order.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {number} Returns the sort order indicator for `value`.\n */\n function compareAscending(value, other) {\n if (value !== other) {\n var valIsDefined = value !== undefined,\n valIsNull = value === null,\n valIsReflexive = value === value,\n valIsSymbol = isSymbol(value);\n\n var othIsDefined = other !== undefined,\n othIsNull = other === null,\n othIsReflexive = other === other,\n othIsSymbol = isSymbol(other);\n\n if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||\n (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||\n (valIsNull && othIsDefined && othIsReflexive) ||\n (!valIsDefined && othIsReflexive) ||\n !valIsReflexive) {\n return 1;\n }\n if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||\n (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||\n (othIsNull && valIsDefined && valIsReflexive) ||\n (!othIsDefined && valIsReflexive) ||\n !othIsReflexive) {\n return -1;\n }\n }\n return 0;\n }\n\n /**\n * Used by `_.orderBy` to compare multiple properties of a value to another\n * and stable sort them.\n *\n * If `orders` is unspecified, all values are sorted in ascending order. Otherwise,\n * specify an order of \"desc\" for descending or \"asc\" for ascending sort order\n * of corresponding values.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {boolean[]|string[]} orders The order to sort by for each property.\n * @returns {number} Returns the sort order indicator for `object`.\n */\n function compareMultiple(object, other, orders) {\n var index = -1,\n objCriteria = object.criteria,\n othCriteria = other.criteria,\n length = objCriteria.length,\n ordersLength = orders.length;\n\n while (++index < length) {\n var result = compareAscending(objCriteria[index], othCriteria[index]);\n if (result) {\n if (index >= ordersLength) {\n return result;\n }\n var order = orders[index];\n return result * (order == 'desc' ? -1 : 1);\n }\n }\n // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications\n // that causes it, under certain circumstances, to provide the same value for\n // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247\n // for more details.\n //\n // This also ensures a stable sort in V8 and other engines.\n // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details.\n return object.index - other.index;\n }\n\n /**\n * Creates an array that is the composition of partially applied arguments,\n * placeholders, and provided arguments into a single array of arguments.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to prepend to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgs(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersLength = holders.length,\n leftIndex = -1,\n leftLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(leftLength + rangeLength),\n isUncurried = !isCurried;\n\n while (++leftIndex < leftLength) {\n result[leftIndex] = partials[leftIndex];\n }\n while (++argsIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[holders[argsIndex]] = args[argsIndex];\n }\n }\n while (rangeLength--) {\n result[leftIndex++] = args[argsIndex++];\n }\n return result;\n }\n\n /**\n * This function is like `composeArgs` except that the arguments composition\n * is tailored for `_.partialRight`.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to append to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgsRight(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersIndex = -1,\n holdersLength = holders.length,\n rightIndex = -1,\n rightLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(rangeLength + rightLength),\n isUncurried = !isCurried;\n\n while (++argsIndex < rangeLength) {\n result[argsIndex] = args[argsIndex];\n }\n var offset = argsIndex;\n while (++rightIndex < rightLength) {\n result[offset + rightIndex] = partials[rightIndex];\n }\n while (++holdersIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[offset + holders[holdersIndex]] = args[argsIndex++];\n }\n }\n return result;\n }\n\n /**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\n function copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n }\n\n /**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\n function copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n }\n\n /**\n * Copies own symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbols(source, object) {\n return copyObject(source, getSymbols(source), object);\n }\n\n /**\n * Copies own and inherited symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbolsIn(source, object) {\n return copyObject(source, getSymbolsIn(source), object);\n }\n\n /**\n * Creates a function like `_.groupBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} [initializer] The accumulator object initializer.\n * @returns {Function} Returns the new aggregator function.\n */\n function createAggregator(setter, initializer) {\n return function(collection, iteratee) {\n var func = isArray(collection) ? arrayAggregator : baseAggregator,\n accumulator = initializer ? initializer() : {};\n\n return func(collection, setter, getIteratee(iteratee, 2), accumulator);\n };\n }\n\n /**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\n function createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n }\n\n /**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n }\n\n /**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the optional `this`\n * binding of `thisArg`.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createBind(func, bitmask, thisArg) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return fn.apply(isBind ? thisArg : this, arguments);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.lowerFirst`.\n *\n * @private\n * @param {string} methodName The name of the `String` case method to use.\n * @returns {Function} Returns the new case function.\n */\n function createCaseFirst(methodName) {\n return function(string) {\n string = toString(string);\n\n var strSymbols = hasUnicode(string)\n ? stringToArray(string)\n : undefined;\n\n var chr = strSymbols\n ? strSymbols[0]\n : string.charAt(0);\n\n var trailing = strSymbols\n ? castSlice(strSymbols, 1).join('')\n : string.slice(1);\n\n return chr[methodName]() + trailing;\n };\n }\n\n /**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\n function createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n }\n\n /**\n * Creates a function that produces an instance of `Ctor` regardless of\n * whether it was invoked as part of a `new` expression or by `call` or `apply`.\n *\n * @private\n * @param {Function} Ctor The constructor to wrap.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCtor(Ctor) {\n return function() {\n // Use a `switch` statement to work with class constructors. See\n // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist\n // for more details.\n var args = arguments;\n switch (args.length) {\n case 0: return new Ctor;\n case 1: return new Ctor(args[0]);\n case 2: return new Ctor(args[0], args[1]);\n case 3: return new Ctor(args[0], args[1], args[2]);\n case 4: return new Ctor(args[0], args[1], args[2], args[3]);\n case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);\n case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);\n case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);\n }\n var thisBinding = baseCreate(Ctor.prototype),\n result = Ctor.apply(thisBinding, args);\n\n // Mimic the constructor's `return` behavior.\n // See https://es5.github.io/#x13.2.2 for more details.\n return isObject(result) ? result : thisBinding;\n };\n }\n\n /**\n * Creates a function that wraps `func` to enable currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {number} arity The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCurry(func, bitmask, arity) {\n var Ctor = createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length,\n placeholder = getHolder(wrapper);\n\n while (index--) {\n args[index] = arguments[index];\n }\n var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder)\n ? []\n : replaceHolders(args, placeholder);\n\n length -= holders.length;\n if (length < arity) {\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, undefined,\n args, holders, undefined, undefined, arity - length);\n }\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return apply(fn, this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.find` or `_.findLast` function.\n *\n * @private\n * @param {Function} findIndexFunc The function to find the collection index.\n * @returns {Function} Returns the new find function.\n */\n function createFind(findIndexFunc) {\n return function(collection, predicate, fromIndex) {\n var iterable = Object(collection);\n if (!isArrayLike(collection)) {\n var iteratee = getIteratee(predicate, 3);\n collection = keys(collection);\n predicate = function(key) { return iteratee(iterable[key], key, iterable); };\n }\n var index = findIndexFunc(collection, predicate, fromIndex);\n return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined;\n };\n }\n\n /**\n * Creates a `_.flow` or `_.flowRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new flow function.\n */\n function createFlow(fromRight) {\n return flatRest(function(funcs) {\n var length = funcs.length,\n index = length,\n prereq = LodashWrapper.prototype.thru;\n\n if (fromRight) {\n funcs.reverse();\n }\n while (index--) {\n var func = funcs[index];\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (prereq && !wrapper && getFuncName(func) == 'wrapper') {\n var wrapper = new LodashWrapper([], true);\n }\n }\n index = wrapper ? index : length;\n while (++index < length) {\n func = funcs[index];\n\n var funcName = getFuncName(func),\n data = funcName == 'wrapper' ? getData(func) : undefined;\n\n if (data && isLaziable(data[0]) &&\n data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) &&\n !data[4].length && data[9] == 1\n ) {\n wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);\n } else {\n wrapper = (func.length == 1 && isLaziable(func))\n ? wrapper[funcName]()\n : wrapper.thru(func);\n }\n }\n return function() {\n var args = arguments,\n value = args[0];\n\n if (wrapper && args.length == 1 && isArray(value)) {\n return wrapper.plant(value).value();\n }\n var index = 0,\n result = length ? funcs[index].apply(this, args) : value;\n\n while (++index < length) {\n result = funcs[index].call(this, result);\n }\n return result;\n };\n });\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with optional `this`\n * binding of `thisArg`, partial application, and currying.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [partialsRight] The arguments to append to those provided\n * to the new function.\n * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {\n var isAry = bitmask & WRAP_ARY_FLAG,\n isBind = bitmask & WRAP_BIND_FLAG,\n isBindKey = bitmask & WRAP_BIND_KEY_FLAG,\n isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG),\n isFlip = bitmask & WRAP_FLIP_FLAG,\n Ctor = isBindKey ? undefined : createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length;\n\n while (index--) {\n args[index] = arguments[index];\n }\n if (isCurried) {\n var placeholder = getHolder(wrapper),\n holdersCount = countHolders(args, placeholder);\n }\n if (partials) {\n args = composeArgs(args, partials, holders, isCurried);\n }\n if (partialsRight) {\n args = composeArgsRight(args, partialsRight, holdersRight, isCurried);\n }\n length -= holdersCount;\n if (isCurried && length < arity) {\n var newHolders = replaceHolders(args, placeholder);\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, thisArg,\n args, newHolders, argPos, ary, arity - length\n );\n }\n var thisBinding = isBind ? thisArg : this,\n fn = isBindKey ? thisBinding[func] : func;\n\n length = args.length;\n if (argPos) {\n args = reorder(args, argPos);\n } else if (isFlip && length > 1) {\n args.reverse();\n }\n if (isAry && ary < length) {\n args.length = ary;\n }\n if (this && this !== root && this instanceof wrapper) {\n fn = Ctor || createCtor(fn);\n }\n return fn.apply(thisBinding, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.invertBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} toIteratee The function to resolve iteratees.\n * @returns {Function} Returns the new inverter function.\n */\n function createInverter(setter, toIteratee) {\n return function(object, iteratee) {\n return baseInverter(object, setter, toIteratee(iteratee), {});\n };\n }\n\n /**\n * Creates a function that performs a mathematical operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @param {number} [defaultValue] The value used for `undefined` arguments.\n * @returns {Function} Returns the new mathematical operation function.\n */\n function createMathOperation(operator, defaultValue) {\n return function(value, other) {\n var result;\n if (value === undefined && other === undefined) {\n return defaultValue;\n }\n if (value !== undefined) {\n result = value;\n }\n if (other !== undefined) {\n if (result === undefined) {\n return other;\n }\n if (typeof value == 'string' || typeof other == 'string') {\n value = baseToString(value);\n other = baseToString(other);\n } else {\n value = baseToNumber(value);\n other = baseToNumber(other);\n }\n result = operator(value, other);\n }\n return result;\n };\n }\n\n /**\n * Creates a function like `_.over`.\n *\n * @private\n * @param {Function} arrayFunc The function to iterate over iteratees.\n * @returns {Function} Returns the new over function.\n */\n function createOver(arrayFunc) {\n return flatRest(function(iteratees) {\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n return baseRest(function(args) {\n var thisArg = this;\n return arrayFunc(iteratees, function(iteratee) {\n return apply(iteratee, thisArg, args);\n });\n });\n });\n }\n\n /**\n * Creates the padding for `string` based on `length`. The `chars` string\n * is truncated if the number of characters exceeds `length`.\n *\n * @private\n * @param {number} length The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padding for `string`.\n */\n function createPadding(length, chars) {\n chars = chars === undefined ? ' ' : baseToString(chars);\n\n var charsLength = chars.length;\n if (charsLength < 2) {\n return charsLength ? baseRepeat(chars, length) : chars;\n }\n var result = baseRepeat(chars, nativeCeil(length / stringSize(chars)));\n return hasUnicode(chars)\n ? castSlice(stringToArray(result), 0, length).join('')\n : result.slice(0, length);\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the `this` binding\n * of `thisArg` and `partials` prepended to the arguments it receives.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} partials The arguments to prepend to those provided to\n * the new function.\n * @returns {Function} Returns the new wrapped function.\n */\n function createPartial(func, bitmask, thisArg, partials) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var argsIndex = -1,\n argsLength = arguments.length,\n leftIndex = -1,\n leftLength = partials.length,\n args = Array(leftLength + argsLength),\n fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n\n while (++leftIndex < leftLength) {\n args[leftIndex] = partials[leftIndex];\n }\n while (argsLength--) {\n args[leftIndex++] = arguments[++argsIndex];\n }\n return apply(fn, isBind ? thisArg : this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.range` or `_.rangeRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new range function.\n */\n function createRange(fromRight) {\n return function(start, end, step) {\n if (step && typeof step != 'number' && isIterateeCall(start, end, step)) {\n end = step = undefined;\n }\n // Ensure the sign of `-0` is preserved.\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n step = step === undefined ? (start < end ? 1 : -1) : toFinite(step);\n return baseRange(start, end, step, fromRight);\n };\n }\n\n /**\n * Creates a function that performs a relational operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @returns {Function} Returns the new relational operation function.\n */\n function createRelationalOperation(operator) {\n return function(value, other) {\n if (!(typeof value == 'string' && typeof other == 'string')) {\n value = toNumber(value);\n other = toNumber(other);\n }\n return operator(value, other);\n };\n }\n\n /**\n * Creates a function that wraps `func` to continue currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {Function} wrapFunc The function to create the `func` wrapper.\n * @param {*} placeholder The placeholder value.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) {\n var isCurry = bitmask & WRAP_CURRY_FLAG,\n newHolders = isCurry ? holders : undefined,\n newHoldersRight = isCurry ? undefined : holders,\n newPartials = isCurry ? partials : undefined,\n newPartialsRight = isCurry ? undefined : partials;\n\n bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG);\n bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG);\n\n if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) {\n bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG);\n }\n var newData = [\n func, bitmask, thisArg, newPartials, newHolders, newPartialsRight,\n newHoldersRight, argPos, ary, arity\n ];\n\n var result = wrapFunc.apply(undefined, newData);\n if (isLaziable(func)) {\n setData(result, newData);\n }\n result.placeholder = placeholder;\n return setWrapToString(result, func, bitmask);\n }\n\n /**\n * Creates a function like `_.round`.\n *\n * @private\n * @param {string} methodName The name of the `Math` method to use when rounding.\n * @returns {Function} Returns the new round function.\n */\n function createRound(methodName) {\n var func = Math[methodName];\n return function(number, precision) {\n number = toNumber(number);\n precision = precision == null ? 0 : nativeMin(toInteger(precision), 292);\n if (precision && nativeIsFinite(number)) {\n // Shift with exponential notation to avoid floating-point issues.\n // See [MDN](https://mdn.io/round#Examples) for more details.\n var pair = (toString(number) + 'e').split('e'),\n value = func(pair[0] + 'e' + (+pair[1] + precision));\n\n pair = (toString(value) + 'e').split('e');\n return +(pair[0] + 'e' + (+pair[1] - precision));\n }\n return func(number);\n };\n }\n\n /**\n * Creates a set object of `values`.\n *\n * @private\n * @param {Array} values The values to add to the set.\n * @returns {Object} Returns the new set.\n */\n var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {\n return new Set(values);\n };\n\n /**\n * Creates a `_.toPairs` or `_.toPairsIn` function.\n *\n * @private\n * @param {Function} keysFunc The function to get the keys of a given object.\n * @returns {Function} Returns the new pairs function.\n */\n function createToPairs(keysFunc) {\n return function(object) {\n var tag = getTag(object);\n if (tag == mapTag) {\n return mapToArray(object);\n }\n if (tag == setTag) {\n return setToPairs(object);\n }\n return baseToPairs(object, keysFunc(object));\n };\n }\n\n /**\n * Creates a function that either curries or invokes `func` with optional\n * `this` binding and partially applied arguments.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags.\n * 1 - `_.bind`\n * 2 - `_.bindKey`\n * 4 - `_.curry` or `_.curryRight` of a bound function\n * 8 - `_.curry`\n * 16 - `_.curryRight`\n * 32 - `_.partial`\n * 64 - `_.partialRight`\n * 128 - `_.rearg`\n * 256 - `_.ary`\n * 512 - `_.flip`\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to be partially applied.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {\n var isBindKey = bitmask & WRAP_BIND_KEY_FLAG;\n if (!isBindKey && typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var length = partials ? partials.length : 0;\n if (!length) {\n bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG);\n partials = holders = undefined;\n }\n ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0);\n arity = arity === undefined ? arity : toInteger(arity);\n length -= holders ? holders.length : 0;\n\n if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {\n var partialsRight = partials,\n holdersRight = holders;\n\n partials = holders = undefined;\n }\n var data = isBindKey ? undefined : getData(func);\n\n var newData = [\n func, bitmask, thisArg, partials, holders, partialsRight, holdersRight,\n argPos, ary, arity\n ];\n\n if (data) {\n mergeData(newData, data);\n }\n func = newData[0];\n bitmask = newData[1];\n thisArg = newData[2];\n partials = newData[3];\n holders = newData[4];\n arity = newData[9] = newData[9] === undefined\n ? (isBindKey ? 0 : func.length)\n : nativeMax(newData[9] - length, 0);\n\n if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) {\n bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG);\n }\n if (!bitmask || bitmask == WRAP_BIND_FLAG) {\n var result = createBind(func, bitmask, thisArg);\n } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) {\n result = createCurry(func, bitmask, arity);\n } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) {\n result = createPartial(func, bitmask, thisArg, partials);\n } else {\n result = createHybrid.apply(undefined, newData);\n }\n var setter = data ? baseSetData : setData;\n return setWrapToString(setter(result, newData), func, bitmask);\n }\n\n /**\n * Used by `_.defaults` to customize its `_.assignIn` use to assign properties\n * of source objects to the destination object for all destination properties\n * that resolve to `undefined`.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to assign.\n * @param {Object} object The parent object of `objValue`.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsAssignIn(objValue, srcValue, key, object) {\n if (objValue === undefined ||\n (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n return srcValue;\n }\n return objValue;\n }\n\n /**\n * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source\n * objects into destination objects that are passed thru.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to merge.\n * @param {Object} object The parent object of `objValue`.\n * @param {Object} source The parent object of `srcValue`.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsMerge(objValue, srcValue, key, object, source, stack) {\n if (isObject(objValue) && isObject(srcValue)) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, objValue);\n baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack);\n stack['delete'](srcValue);\n }\n return objValue;\n }\n\n /**\n * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain\n * objects.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {string} key The key of the property to inspect.\n * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.\n */\n function customOmitClone(value) {\n return isPlainObject(value) ? undefined : value;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\n function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseRest` which flattens the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n function flatRest(func) {\n return setToString(overRest(func, undefined, flatten), func + '');\n }\n\n /**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n }\n\n /**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n }\n\n /**\n * Gets metadata for `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {*} Returns the metadata for `func`.\n */\n var getData = !metaMap ? noop : function(func) {\n return metaMap.get(func);\n };\n\n /**\n * Gets the name of `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {string} Returns the function name.\n */\n function getFuncName(func) {\n var result = (func.name + ''),\n array = realNames[result],\n length = hasOwnProperty.call(realNames, result) ? array.length : 0;\n\n while (length--) {\n var data = array[length],\n otherFunc = data.func;\n if (otherFunc == null || otherFunc == func) {\n return data.name;\n }\n }\n return result;\n }\n\n /**\n * Gets the argument placeholder value for `func`.\n *\n * @private\n * @param {Function} func The function to inspect.\n * @returns {*} Returns the placeholder value.\n */\n function getHolder(func) {\n var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func;\n return object.placeholder;\n }\n\n /**\n * Gets the appropriate \"iteratee\" function. If `_.iteratee` is customized,\n * this function returns the custom method, otherwise it returns `baseIteratee`.\n * If arguments are provided, the chosen function is invoked with them and\n * its result is returned.\n *\n * @private\n * @param {*} [value] The value to convert to an iteratee.\n * @param {number} [arity] The arity of the created iteratee.\n * @returns {Function} Returns the chosen function or its result.\n */\n function getIteratee() {\n var result = lodash.iteratee || iteratee;\n result = result === iteratee ? baseIteratee : result;\n return arguments.length ? result(arguments[0], arguments[1]) : result;\n }\n\n /**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\n function getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n }\n\n /**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\n function getMatchData(object) {\n var result = keys(object),\n length = result.length;\n\n while (length--) {\n var key = result[length],\n value = object[key];\n\n result[length] = [key, value, isStrictComparable(value)];\n }\n return result;\n }\n\n /**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\n function getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n }\n\n /**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\n function getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n }\n\n /**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n };\n\n /**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n var result = [];\n while (object) {\n arrayPush(result, getSymbols(object));\n object = getPrototype(object);\n }\n return result;\n };\n\n /**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n var getTag = baseGetTag;\n\n // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\n if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n }\n\n /**\n * Gets the view, applying any `transforms` to the `start` and `end` positions.\n *\n * @private\n * @param {number} start The start of the view.\n * @param {number} end The end of the view.\n * @param {Array} transforms The transformations to apply to the view.\n * @returns {Object} Returns an object containing the `start` and `end`\n * positions of the view.\n */\n function getView(start, end, transforms) {\n var index = -1,\n length = transforms.length;\n\n while (++index < length) {\n var data = transforms[index],\n size = data.size;\n\n switch (data.type) {\n case 'drop': start += size; break;\n case 'dropRight': end -= size; break;\n case 'take': end = nativeMin(end, start + size); break;\n case 'takeRight': start = nativeMax(start, end - size); break;\n }\n }\n return { 'start': start, 'end': end };\n }\n\n /**\n * Extracts wrapper details from the `source` body comment.\n *\n * @private\n * @param {string} source The source to inspect.\n * @returns {Array} Returns the wrapper details.\n */\n function getWrapDetails(source) {\n var match = source.match(reWrapDetails);\n return match ? match[1].split(reSplitDetails) : [];\n }\n\n /**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\n function hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n }\n\n /**\n * Initializes an array clone.\n *\n * @private\n * @param {Array} array The array to clone.\n * @returns {Array} Returns the initialized clone.\n */\n function initCloneArray(array) {\n var length = array.length,\n result = new array.constructor(length);\n\n // Add properties assigned by `RegExp#exec`.\n if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n result.index = array.index;\n result.input = array.input;\n }\n return result;\n }\n\n /**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n }\n\n /**\n * Initializes an object clone based on its `toStringTag`.\n *\n * **Note:** This function only supports cloning values with tags of\n * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.\n *\n * @private\n * @param {Object} object The object to clone.\n * @param {string} tag The `toStringTag` of the object to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneByTag(object, tag, isDeep) {\n var Ctor = object.constructor;\n switch (tag) {\n case arrayBufferTag:\n return cloneArrayBuffer(object);\n\n case boolTag:\n case dateTag:\n return new Ctor(+object);\n\n case dataViewTag:\n return cloneDataView(object, isDeep);\n\n case float32Tag: case float64Tag:\n case int8Tag: case int16Tag: case int32Tag:\n case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n return cloneTypedArray(object, isDeep);\n\n case mapTag:\n return new Ctor;\n\n case numberTag:\n case stringTag:\n return new Ctor(object);\n\n case regexpTag:\n return cloneRegExp(object);\n\n case setTag:\n return new Ctor;\n\n case symbolTag:\n return cloneSymbol(object);\n }\n }\n\n /**\n * Inserts wrapper `details` in a comment at the top of the `source` body.\n *\n * @private\n * @param {string} source The source to modify.\n * @returns {Array} details The details to insert.\n * @returns {string} Returns the modified source.\n */\n function insertWrapDetails(source, details) {\n var length = details.length;\n if (!length) {\n return source;\n }\n var lastIndex = length - 1;\n details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];\n details = details.join(length > 2 ? ', ' : ' ');\n return source.replace(reWrapComment, '{\\n/* [wrapped with ' + details + '] */\\n');\n }\n\n /**\n * Checks if `value` is a flattenable `arguments` object or array.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.\n */\n function isFlattenable(value) {\n return isArray(value) || isArguments(value) ||\n !!(spreadableSymbol && value && value[spreadableSymbol]);\n }\n\n /**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\n function isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n }\n\n /**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\n function isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n }\n\n /**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\n function isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n }\n\n /**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\n function isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n }\n\n /**\n * Checks if `func` has a lazy counterpart.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` has a lazy counterpart,\n * else `false`.\n */\n function isLaziable(func) {\n var funcName = getFuncName(func),\n other = lodash[funcName];\n\n if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {\n return false;\n }\n if (func === other) {\n return true;\n }\n var data = getData(other);\n return !!data && func === data[0];\n }\n\n /**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\n function isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n }\n\n /**\n * Checks if `func` is capable of being masked.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `func` is maskable, else `false`.\n */\n var isMaskable = coreJsData ? isFunction : stubFalse;\n\n /**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\n function isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n }\n\n /**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n * equality comparisons, else `false`.\n */\n function isStrictComparable(value) {\n return value === value && !isObject(value);\n }\n\n /**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function matchesStrictComparable(key, srcValue) {\n return function(object) {\n if (object == null) {\n return false;\n }\n return object[key] === srcValue &&\n (srcValue !== undefined || (key in Object(object)));\n };\n }\n\n /**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\n function memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n }\n\n /**\n * Merges the function metadata of `source` into `data`.\n *\n * Merging metadata reduces the number of wrappers used to invoke a function.\n * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`\n * may be applied regardless of execution order. Methods like `_.ary` and\n * `_.rearg` modify function arguments, making the order in which they are\n * executed important, preventing the merging of metadata. However, we make\n * an exception for a safe combined case where curried functions have `_.ary`\n * and or `_.rearg` applied.\n *\n * @private\n * @param {Array} data The destination metadata.\n * @param {Array} source The source metadata.\n * @returns {Array} Returns `data`.\n */\n function mergeData(data, source) {\n var bitmask = data[1],\n srcBitmask = source[1],\n newBitmask = bitmask | srcBitmask,\n isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG);\n\n var isCombo =\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) ||\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) ||\n ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG));\n\n // Exit early if metadata can't be merged.\n if (!(isCommon || isCombo)) {\n return data;\n }\n // Use source `thisArg` if available.\n if (srcBitmask & WRAP_BIND_FLAG) {\n data[2] = source[2];\n // Set when currying a bound function.\n newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG;\n }\n // Compose partial arguments.\n var value = source[3];\n if (value) {\n var partials = data[3];\n data[3] = partials ? composeArgs(partials, value, source[4]) : value;\n data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4];\n }\n // Compose partial right arguments.\n value = source[5];\n if (value) {\n partials = data[5];\n data[5] = partials ? composeArgsRight(partials, value, source[6]) : value;\n data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6];\n }\n // Use source `argPos` if available.\n value = source[7];\n if (value) {\n data[7] = value;\n }\n // Use source `ary` if it's smaller.\n if (srcBitmask & WRAP_ARY_FLAG) {\n data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);\n }\n // Use source `arity` if one is not provided.\n if (data[9] == null) {\n data[9] = source[9];\n }\n // Use source `func` and merge bitmasks.\n data[0] = source[0];\n data[1] = newBitmask;\n\n return data;\n }\n\n /**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\n function objectToString(value) {\n return nativeObjectToString.call(value);\n }\n\n /**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\n function overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n }\n\n /**\n * Gets the parent value at `path` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} path The path to get the parent value of.\n * @returns {*} Returns the parent value.\n */\n function parent(object, path) {\n return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));\n }\n\n /**\n * Reorder `array` according to the specified indexes where the element at\n * the first index is assigned as the first element, the element at\n * the second index is assigned as the second element, and so on.\n *\n * @private\n * @param {Array} array The array to reorder.\n * @param {Array} indexes The arranged array indexes.\n * @returns {Array} Returns `array`.\n */\n function reorder(array, indexes) {\n var arrLength = array.length,\n length = nativeMin(indexes.length, arrLength),\n oldArray = copyArray(array);\n\n while (length--) {\n var index = indexes[length];\n array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;\n }\n return array;\n }\n\n /**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n }\n\n /**\n * Sets metadata for `func`.\n *\n * **Note:** If this function becomes hot, i.e. is invoked a lot in a short\n * period of time, it will trip its breaker and transition to an identity\n * function to avoid garbage collection pauses in V8. See\n * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)\n * for more details.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var setData = shortOut(baseSetData);\n\n /**\n * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout).\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n var setTimeout = ctxSetTimeout || function(func, wait) {\n return root.setTimeout(func, wait);\n };\n\n /**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var setToString = shortOut(baseSetToString);\n\n /**\n * Sets the `toString` method of `wrapper` to mimic the source of `reference`\n * with wrapper details in a comment at the top of the source body.\n *\n * @private\n * @param {Function} wrapper The function to modify.\n * @param {Function} reference The reference function.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Function} Returns `wrapper`.\n */\n function setWrapToString(wrapper, reference, bitmask) {\n var source = (reference + '');\n return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask)));\n }\n\n /**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\n function shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n }\n\n /**\n * A specialized version of `_.shuffle` which mutates and sets the size of `array`.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @param {number} [size=array.length] The size of `array`.\n * @returns {Array} Returns `array`.\n */\n function shuffleSelf(array, size) {\n var index = -1,\n length = array.length,\n lastIndex = length - 1;\n\n size = size === undefined ? length : size;\n while (++index < size) {\n var rand = baseRandom(index, lastIndex),\n value = array[rand];\n\n array[rand] = array[index];\n array[index] = value;\n }\n array.length = size;\n return array;\n }\n\n /**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\n var stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n });\n\n /**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\n function toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\n function toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n }\n\n /**\n * Updates wrapper `details` based on `bitmask` flags.\n *\n * @private\n * @returns {Array} details The details to modify.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Array} Returns `details`.\n */\n function updateWrapDetails(details, bitmask) {\n arrayEach(wrapFlags, function(pair) {\n var value = '_.' + pair[0];\n if ((bitmask & pair[1]) && !arrayIncludes(details, value)) {\n details.push(value);\n }\n });\n return details.sort();\n }\n\n /**\n * Creates a clone of `wrapper`.\n *\n * @private\n * @param {Object} wrapper The wrapper to clone.\n * @returns {Object} Returns the cloned wrapper.\n */\n function wrapperClone(wrapper) {\n if (wrapper instanceof LazyWrapper) {\n return wrapper.clone();\n }\n var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__);\n result.__actions__ = copyArray(wrapper.__actions__);\n result.__index__ = wrapper.__index__;\n result.__values__ = wrapper.__values__;\n return result;\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of elements split into groups the length of `size`.\n * If `array` can't be split evenly, the final chunk will be the remaining\n * elements.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to process.\n * @param {number} [size=1] The length of each chunk\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the new array of chunks.\n * @example\n *\n * _.chunk(['a', 'b', 'c', 'd'], 2);\n * // => [['a', 'b'], ['c', 'd']]\n *\n * _.chunk(['a', 'b', 'c', 'd'], 3);\n * // => [['a', 'b', 'c'], ['d']]\n */\n function chunk(array, size, guard) {\n if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) {\n size = 1;\n } else {\n size = nativeMax(toInteger(size), 0);\n }\n var length = array == null ? 0 : array.length;\n if (!length || size < 1) {\n return [];\n }\n var index = 0,\n resIndex = 0,\n result = Array(nativeCeil(length / size));\n\n while (index < length) {\n result[resIndex++] = baseSlice(array, index, (index += size));\n }\n return result;\n }\n\n /**\n * Creates an array with all falsey values removed. The values `false`, `null`,\n * `0`, `\"\"`, `undefined`, and `NaN` are falsey.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to compact.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.compact([0, 1, false, 2, '', 3]);\n * // => [1, 2, 3]\n */\n function compact(array) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * Creates a new array concatenating `array` with any additional arrays\n * and/or values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to concatenate.\n * @param {...*} [values] The values to concatenate.\n * @returns {Array} Returns the new concatenated array.\n * @example\n *\n * var array = [1];\n * var other = _.concat(array, 2, [3], [[4]]);\n *\n * console.log(other);\n * // => [1, 2, 3, [4]]\n *\n * console.log(array);\n * // => [1]\n */\n function concat() {\n var length = arguments.length;\n if (!length) {\n return [];\n }\n var args = Array(length - 1),\n array = arguments[0],\n index = length;\n\n while (index--) {\n args[index - 1] = arguments[index];\n }\n return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1));\n }\n\n /**\n * Creates an array of `array` values not included in the other given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * **Note:** Unlike `_.pullAll`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.without, _.xor\n * @example\n *\n * _.difference([2, 1], [2, 3]);\n * // => [1]\n */\n var difference = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `iteratee` which\n * is invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * **Note:** Unlike `_.pullAllBy`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var differenceBy = baseRest(function(array, values) {\n var iteratee = last(values);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `comparator`\n * which is invoked to compare elements of `array` to `values`. The order and\n * references of result values are determined by the first array. The comparator\n * is invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.pullAllWith`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n *\n * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }]\n */\n var differenceWith = baseRest(function(array, values) {\n var comparator = last(values);\n if (isArrayLikeObject(comparator)) {\n comparator = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator)\n : [];\n });\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.drop([1, 2, 3]);\n * // => [2, 3]\n *\n * _.drop([1, 2, 3], 2);\n * // => [3]\n *\n * _.drop([1, 2, 3], 5);\n * // => []\n *\n * _.drop([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function drop(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.dropRight([1, 2, 3]);\n * // => [1, 2]\n *\n * _.dropRight([1, 2, 3], 2);\n * // => [1]\n *\n * _.dropRight([1, 2, 3], 5);\n * // => []\n *\n * _.dropRight([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function dropRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the end.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.dropRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropRightWhile(users, ['active', false]);\n * // => objects for ['barney']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropRightWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the beginning.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.dropWhile(users, function(o) { return !o.active; });\n * // => objects for ['pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropWhile(users, ['active', false]);\n * // => objects for ['pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true)\n : [];\n }\n\n /**\n * Fills elements of `array` with `value` from `start` up to, but not\n * including, `end`.\n *\n * **Note:** This method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Array\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.fill(array, 'a');\n * console.log(array);\n * // => ['a', 'a', 'a']\n *\n * _.fill(Array(3), 2);\n * // => [2, 2, 2]\n *\n * _.fill([4, 6, 8, 10], '*', 1, 3);\n * // => [4, '*', '*', 10]\n */\n function fill(array, value, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {\n start = 0;\n end = length;\n }\n return baseFill(array, value, start, end);\n }\n\n /**\n * This method is like `_.find` except that it returns the index of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.findIndex(users, function(o) { return o.user == 'barney'; });\n * // => 0\n *\n * // The `_.matches` iteratee shorthand.\n * _.findIndex(users, { 'user': 'fred', 'active': false });\n * // => 1\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findIndex(users, ['active', false]);\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.findIndex(users, 'active');\n * // => 2\n */\n function findIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index);\n }\n\n /**\n * This method is like `_.findIndex` except that it iterates over elements\n * of `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; });\n * // => 2\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastIndex(users, { 'user': 'barney', 'active': true });\n * // => 0\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastIndex(users, ['active', false]);\n * // => 2\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastIndex(users, 'active');\n * // => 0\n */\n function findLastIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length - 1;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = fromIndex < 0\n ? nativeMax(length + index, 0)\n : nativeMin(index, length - 1);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index, true);\n }\n\n /**\n * Flattens `array` a single level deep.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flatten([1, [2, [3, [4]], 5]]);\n * // => [1, 2, [3, [4]], 5]\n */\n function flatten(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, 1) : [];\n }\n\n /**\n * Recursively flattens `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flattenDeep([1, [2, [3, [4]], 5]]);\n * // => [1, 2, 3, 4, 5]\n */\n function flattenDeep(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, INFINITY) : [];\n }\n\n /**\n * Recursively flatten `array` up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * var array = [1, [2, [3, [4]], 5]];\n *\n * _.flattenDepth(array, 1);\n * // => [1, 2, [3, [4]], 5]\n *\n * _.flattenDepth(array, 2);\n * // => [1, 2, 3, [4], 5]\n */\n function flattenDepth(array, depth) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(array, depth);\n }\n\n /**\n * The inverse of `_.toPairs`; this method returns an object composed\n * from key-value `pairs`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} pairs The key-value pairs.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.fromPairs([['a', 1], ['b', 2]]);\n * // => { 'a': 1, 'b': 2 }\n */\n function fromPairs(pairs) {\n var index = -1,\n length = pairs == null ? 0 : pairs.length,\n result = {};\n\n while (++index < length) {\n var pair = pairs[index];\n result[pair[0]] = pair[1];\n }\n return result;\n }\n\n /**\n * Gets the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias first\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the first element of `array`.\n * @example\n *\n * _.head([1, 2, 3]);\n * // => 1\n *\n * _.head([]);\n * // => undefined\n */\n function head(array) {\n return (array && array.length) ? array[0] : undefined;\n }\n\n /**\n * Gets the index at which the first occurrence of `value` is found in `array`\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. If `fromIndex` is negative, it's used as the\n * offset from the end of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.indexOf([1, 2, 1, 2], 2);\n * // => 1\n *\n * // Search from the `fromIndex`.\n * _.indexOf([1, 2, 1, 2], 2, 2);\n * // => 3\n */\n function indexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseIndexOf(array, value, index);\n }\n\n /**\n * Gets all but the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.initial([1, 2, 3]);\n * // => [1, 2]\n */\n function initial(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 0, -1) : [];\n }\n\n /**\n * Creates an array of unique values that are included in all given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersection([2, 1], [2, 3]);\n * // => [2]\n */\n var intersection = baseRest(function(arrays) {\n var mapped = arrayMap(arrays, castArrayLikeObject);\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped)\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `iteratee`\n * which is invoked for each element of each `arrays` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [2.1]\n *\n * // The `_.property` iteratee shorthand.\n * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }]\n */\n var intersectionBy = baseRest(function(arrays) {\n var iteratee = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n if (iteratee === last(mapped)) {\n iteratee = undefined;\n } else {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `comparator`\n * which is invoked to compare elements of `arrays`. The order and references\n * of result values are determined by the first array. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.intersectionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }]\n */\n var intersectionWith = baseRest(function(arrays) {\n var comparator = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n comparator = typeof comparator == 'function' ? comparator : undefined;\n if (comparator) {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, undefined, comparator)\n : [];\n });\n\n /**\n * Converts all elements in `array` into a string separated by `separator`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to convert.\n * @param {string} [separator=','] The element separator.\n * @returns {string} Returns the joined string.\n * @example\n *\n * _.join(['a', 'b', 'c'], '~');\n * // => 'a~b~c'\n */\n function join(array, separator) {\n return array == null ? '' : nativeJoin.call(array, separator);\n }\n\n /**\n * Gets the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the last element of `array`.\n * @example\n *\n * _.last([1, 2, 3]);\n * // => 3\n */\n function last(array) {\n var length = array == null ? 0 : array.length;\n return length ? array[length - 1] : undefined;\n }\n\n /**\n * This method is like `_.indexOf` except that it iterates over elements of\n * `array` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.lastIndexOf([1, 2, 1, 2], 2);\n * // => 3\n *\n * // Search from the `fromIndex`.\n * _.lastIndexOf([1, 2, 1, 2], 2, 2);\n * // => 1\n */\n function lastIndexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1);\n }\n return value === value\n ? strictLastIndexOf(array, value, index)\n : baseFindIndex(array, baseIsNaN, index, true);\n }\n\n /**\n * Gets the element at index `n` of `array`. If `n` is negative, the nth\n * element from the end is returned.\n *\n * @static\n * @memberOf _\n * @since 4.11.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=0] The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n *\n * _.nth(array, 1);\n * // => 'b'\n *\n * _.nth(array, -2);\n * // => 'c';\n */\n function nth(array, n) {\n return (array && array.length) ? baseNth(array, toInteger(n)) : undefined;\n }\n\n /**\n * Removes all given values from `array` using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove`\n * to remove elements from an array by predicate.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...*} [values] The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pull(array, 'a', 'c');\n * console.log(array);\n * // => ['b', 'b']\n */\n var pull = baseRest(pullAll);\n\n /**\n * This method is like `_.pull` except that it accepts an array of values to remove.\n *\n * **Note:** Unlike `_.difference`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pullAll(array, ['a', 'c']);\n * console.log(array);\n * // => ['b', 'b']\n */\n function pullAll(array, values) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values)\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `iteratee` which is\n * invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The iteratee is invoked with one argument: (value).\n *\n * **Note:** Unlike `_.differenceBy`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }];\n *\n * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x');\n * console.log(array);\n * // => [{ 'x': 2 }]\n */\n function pullAllBy(array, values, iteratee) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, getIteratee(iteratee, 2))\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `comparator` which\n * is invoked to compare elements of `array` to `values`. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.differenceWith`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }];\n *\n * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual);\n * console.log(array);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }]\n */\n function pullAllWith(array, values, comparator) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, undefined, comparator)\n : array;\n }\n\n /**\n * Removes elements from `array` corresponding to `indexes` and returns an\n * array of removed elements.\n *\n * **Note:** Unlike `_.at`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...(number|number[])} [indexes] The indexes of elements to remove.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n * var pulled = _.pullAt(array, [1, 3]);\n *\n * console.log(array);\n * // => ['a', 'c']\n *\n * console.log(pulled);\n * // => ['b', 'd']\n */\n var pullAt = flatRest(function(array, indexes) {\n var length = array == null ? 0 : array.length,\n result = baseAt(array, indexes);\n\n basePullAt(array, arrayMap(indexes, function(index) {\n return isIndex(index, length) ? +index : index;\n }).sort(compareAscending));\n\n return result;\n });\n\n /**\n * Removes all elements from `array` that `predicate` returns truthy for\n * and returns an array of the removed elements. The predicate is invoked\n * with three arguments: (value, index, array).\n *\n * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`\n * to pull elements from an array by value.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = [1, 2, 3, 4];\n * var evens = _.remove(array, function(n) {\n * return n % 2 == 0;\n * });\n *\n * console.log(array);\n * // => [1, 3]\n *\n * console.log(evens);\n * // => [2, 4]\n */\n function remove(array, predicate) {\n var result = [];\n if (!(array && array.length)) {\n return result;\n }\n var index = -1,\n indexes = [],\n length = array.length;\n\n predicate = getIteratee(predicate, 3);\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result.push(value);\n indexes.push(index);\n }\n }\n basePullAt(array, indexes);\n return result;\n }\n\n /**\n * Reverses `array` so that the first element becomes the last, the second\n * element becomes the second to last, and so on.\n *\n * **Note:** This method mutates `array` and is based on\n * [`Array#reverse`](https://mdn.io/Array/reverse).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.reverse(array);\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function reverse(array) {\n return array == null ? array : nativeReverse.call(array);\n }\n\n /**\n * Creates a slice of `array` from `start` up to, but not including, `end`.\n *\n * **Note:** This method is used instead of\n * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are\n * returned.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function slice(array, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {\n start = 0;\n end = length;\n }\n else {\n start = start == null ? 0 : toInteger(start);\n end = end === undefined ? length : toInteger(end);\n }\n return baseSlice(array, start, end);\n }\n\n /**\n * Uses a binary search to determine the lowest index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedIndex([30, 50], 40);\n * // => 1\n */\n function sortedIndex(array, value) {\n return baseSortedIndex(array, value);\n }\n\n /**\n * This method is like `_.sortedIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedIndexBy(objects, { 'x': 4 }, 'x');\n * // => 0\n */\n function sortedIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2));\n }\n\n /**\n * This method is like `_.indexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedIndexOf([4, 5, 5, 5, 6], 5);\n * // => 1\n */\n function sortedIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value);\n if (index < length && eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.sortedIndex` except that it returns the highest\n * index at which `value` should be inserted into `array` in order to\n * maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedLastIndex([4, 5, 5, 5, 6], 5);\n * // => 4\n */\n function sortedLastIndex(array, value) {\n return baseSortedIndex(array, value, true);\n }\n\n /**\n * This method is like `_.sortedLastIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 1\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x');\n * // => 1\n */\n function sortedLastIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true);\n }\n\n /**\n * This method is like `_.lastIndexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5);\n * // => 3\n */\n function sortedLastIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value, true) - 1;\n if (eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.uniq` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniq([1, 1, 2]);\n * // => [1, 2]\n */\n function sortedUniq(array) {\n return (array && array.length)\n ? baseSortedUniq(array)\n : [];\n }\n\n /**\n * This method is like `_.uniqBy` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor);\n * // => [1.1, 2.3]\n */\n function sortedUniqBy(array, iteratee) {\n return (array && array.length)\n ? baseSortedUniq(array, getIteratee(iteratee, 2))\n : [];\n }\n\n /**\n * Gets all but the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.tail([1, 2, 3]);\n * // => [2, 3]\n */\n function tail(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 1, length) : [];\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.take([1, 2, 3]);\n * // => [1]\n *\n * _.take([1, 2, 3], 2);\n * // => [1, 2]\n *\n * _.take([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.take([1, 2, 3], 0);\n * // => []\n */\n function take(array, n, guard) {\n if (!(array && array.length)) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.takeRight([1, 2, 3]);\n * // => [3]\n *\n * _.takeRight([1, 2, 3], 2);\n * // => [2, 3]\n *\n * _.takeRight([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.takeRight([1, 2, 3], 0);\n * // => []\n */\n function takeRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with elements taken from the end. Elements are\n * taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.takeRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeRightWhile(users, ['active', false]);\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeRightWhile(users, 'active');\n * // => []\n */\n function takeRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), false, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` with elements taken from the beginning. Elements\n * are taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.takeWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeWhile(users, ['active', false]);\n * // => objects for ['barney', 'fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeWhile(users, 'active');\n * // => []\n */\n function takeWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3))\n : [];\n }\n\n /**\n * Creates an array of unique values, in order, from all given arrays using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.union([2], [1, 2]);\n * // => [2, 1]\n */\n var union = baseRest(function(arrays) {\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true));\n });\n\n /**\n * This method is like `_.union` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which uniqueness is computed. Result values are chosen from the first\n * array in which the value occurs. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.unionBy([2.1], [1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n var unionBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.union` except that it accepts `comparator` which\n * is invoked to compare elements of `arrays`. Result values are chosen from\n * the first array in which the value occurs. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.unionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var unionWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator);\n });\n\n /**\n * Creates a duplicate-free version of an array, using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons, in which only the first occurrence of each element\n * is kept. The order of result values is determined by the order they occur\n * in the array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniq([2, 1, 2]);\n * // => [2, 1]\n */\n function uniq(array) {\n return (array && array.length) ? baseUniq(array) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `iteratee` which is\n * invoked for each element in `array` to generate the criterion by which\n * uniqueness is computed. The order of result values is determined by the\n * order they occur in the array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniqBy([2.1, 1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n function uniqBy(array, iteratee) {\n return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `comparator` which\n * is invoked to compare elements of `array`. The order of result values is\n * determined by the order they occur in the array.The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.uniqWith(objects, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]\n */\n function uniqWith(array, comparator) {\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return (array && array.length) ? baseUniq(array, undefined, comparator) : [];\n }\n\n /**\n * This method is like `_.zip` except that it accepts an array of grouped\n * elements and creates an array regrouping the elements to their pre-zip\n * configuration.\n *\n * @static\n * @memberOf _\n * @since 1.2.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n *\n * _.unzip(zipped);\n * // => [['a', 'b'], [1, 2], [true, false]]\n */\n function unzip(array) {\n if (!(array && array.length)) {\n return [];\n }\n var length = 0;\n array = arrayFilter(array, function(group) {\n if (isArrayLikeObject(group)) {\n length = nativeMax(group.length, length);\n return true;\n }\n });\n return baseTimes(length, function(index) {\n return arrayMap(array, baseProperty(index));\n });\n }\n\n /**\n * This method is like `_.unzip` except that it accepts `iteratee` to specify\n * how regrouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * regrouped values.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip([1, 2], [10, 20], [100, 200]);\n * // => [[1, 10, 100], [2, 20, 200]]\n *\n * _.unzipWith(zipped, _.add);\n * // => [3, 30, 300]\n */\n function unzipWith(array, iteratee) {\n if (!(array && array.length)) {\n return [];\n }\n var result = unzip(array);\n if (iteratee == null) {\n return result;\n }\n return arrayMap(result, function(group) {\n return apply(iteratee, undefined, group);\n });\n }\n\n /**\n * Creates an array excluding all given values using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.pull`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...*} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.xor\n * @example\n *\n * _.without([2, 1, 2, 3], 1, 2);\n * // => [3]\n */\n var without = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, values)\n : [];\n });\n\n /**\n * Creates an array of unique values that is the\n * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)\n * of the given arrays. The order of result values is determined by the order\n * they occur in the arrays.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.without\n * @example\n *\n * _.xor([2, 1], [2, 3]);\n * // => [1, 3]\n */\n var xor = baseRest(function(arrays) {\n return baseXor(arrayFilter(arrays, isArrayLikeObject));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which by which they're compared. The order of result values is determined\n * by the order they occur in the arrays. The iteratee is invoked with one\n * argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2, 3.4]\n *\n * // The `_.property` iteratee shorthand.\n * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var xorBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `comparator` which is\n * invoked to compare elements of `arrays`. The order of result values is\n * determined by the order they occur in the arrays. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.xorWith(objects, others, _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var xorWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator);\n });\n\n /**\n * Creates an array of grouped elements, the first of which contains the\n * first elements of the given arrays, the second of which contains the\n * second elements of the given arrays, and so on.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n */\n var zip = baseRest(unzip);\n\n /**\n * This method is like `_.fromPairs` except that it accepts two arrays,\n * one of property identifiers and one of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 0.4.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObject(['a', 'b'], [1, 2]);\n * // => { 'a': 1, 'b': 2 }\n */\n function zipObject(props, values) {\n return baseZipObject(props || [], values || [], assignValue);\n }\n\n /**\n * This method is like `_.zipObject` except that it supports property paths.\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]);\n * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } }\n */\n function zipObjectDeep(props, values) {\n return baseZipObject(props || [], values || [], baseSet);\n }\n\n /**\n * This method is like `_.zip` except that it accepts `iteratee` to specify\n * how grouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * grouped values.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) {\n * return a + b + c;\n * });\n * // => [111, 222]\n */\n var zipWith = baseRest(function(arrays) {\n var length = arrays.length,\n iteratee = length > 1 ? arrays[length - 1] : undefined;\n\n iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined;\n return unzipWith(arrays, iteratee);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` wrapper instance that wraps `value` with explicit method\n * chain sequences enabled. The result of such sequences must be unwrapped\n * with `_#value`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Seq\n * @param {*} value The value to wrap.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'pebbles', 'age': 1 }\n * ];\n *\n * var youngest = _\n * .chain(users)\n * .sortBy('age')\n * .map(function(o) {\n * return o.user + ' is ' + o.age;\n * })\n * .head()\n * .value();\n * // => 'pebbles is 1'\n */\n function chain(value) {\n var result = lodash(value);\n result.__chain__ = true;\n return result;\n }\n\n /**\n * This method invokes `interceptor` and returns `value`. The interceptor\n * is invoked with one argument; (value). The purpose of this method is to\n * \"tap into\" a method chain sequence in order to modify intermediate results.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns `value`.\n * @example\n *\n * _([1, 2, 3])\n * .tap(function(array) {\n * // Mutate input array.\n * array.pop();\n * })\n * .reverse()\n * .value();\n * // => [2, 1]\n */\n function tap(value, interceptor) {\n interceptor(value);\n return value;\n }\n\n /**\n * This method is like `_.tap` except that it returns the result of `interceptor`.\n * The purpose of this method is to \"pass thru\" values replacing intermediate\n * results in a method chain sequence.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns the result of `interceptor`.\n * @example\n *\n * _(' abc ')\n * .chain()\n * .trim()\n * .thru(function(value) {\n * return [value];\n * })\n * .value();\n * // => ['abc']\n */\n function thru(value, interceptor) {\n return interceptor(value);\n }\n\n /**\n * This method is the wrapper version of `_.at`.\n *\n * @name at\n * @memberOf _\n * @since 1.0.0\n * @category Seq\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _(object).at(['a[0].b.c', 'a[1]']).value();\n * // => [3, 4]\n */\n var wrapperAt = flatRest(function(paths) {\n var length = paths.length,\n start = length ? paths[0] : 0,\n value = this.__wrapped__,\n interceptor = function(object) { return baseAt(object, paths); };\n\n if (length > 1 || this.__actions__.length ||\n !(value instanceof LazyWrapper) || !isIndex(start)) {\n return this.thru(interceptor);\n }\n value = value.slice(start, +start + (length ? 1 : 0));\n value.__actions__.push({\n 'func': thru,\n 'args': [interceptor],\n 'thisArg': undefined\n });\n return new LodashWrapper(value, this.__chain__).thru(function(array) {\n if (length && !array.length) {\n array.push(undefined);\n }\n return array;\n });\n });\n\n /**\n * Creates a `lodash` wrapper instance with explicit method chain sequences enabled.\n *\n * @name chain\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 }\n * ];\n *\n * // A sequence without explicit chaining.\n * _(users).head();\n * // => { 'user': 'barney', 'age': 36 }\n *\n * // A sequence with explicit chaining.\n * _(users)\n * .chain()\n * .head()\n * .pick('user')\n * .value();\n * // => { 'user': 'barney' }\n */\n function wrapperChain() {\n return chain(this);\n }\n\n /**\n * Executes the chain sequence and returns the wrapped result.\n *\n * @name commit\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2];\n * var wrapped = _(array).push(3);\n *\n * console.log(array);\n * // => [1, 2]\n *\n * wrapped = wrapped.commit();\n * console.log(array);\n * // => [1, 2, 3]\n *\n * wrapped.last();\n * // => 3\n *\n * console.log(array);\n * // => [1, 2, 3]\n */\n function wrapperCommit() {\n return new LodashWrapper(this.value(), this.__chain__);\n }\n\n /**\n * Gets the next value on a wrapped object following the\n * [iterator protocol](https://mdn.io/iteration_protocols#iterator).\n *\n * @name next\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the next iterator value.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 1 }\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 2 }\n *\n * wrapped.next();\n * // => { 'done': true, 'value': undefined }\n */\n function wrapperNext() {\n if (this.__values__ === undefined) {\n this.__values__ = toArray(this.value());\n }\n var done = this.__index__ >= this.__values__.length,\n value = done ? undefined : this.__values__[this.__index__++];\n\n return { 'done': done, 'value': value };\n }\n\n /**\n * Enables the wrapper to be iterable.\n *\n * @name Symbol.iterator\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the wrapper object.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped[Symbol.iterator]() === wrapped;\n * // => true\n *\n * Array.from(wrapped);\n * // => [1, 2]\n */\n function wrapperToIterator() {\n return this;\n }\n\n /**\n * Creates a clone of the chain sequence planting `value` as the wrapped value.\n *\n * @name plant\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @param {*} value The value to plant.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2]).map(square);\n * var other = wrapped.plant([3, 4]);\n *\n * other.value();\n * // => [9, 16]\n *\n * wrapped.value();\n * // => [1, 4]\n */\n function wrapperPlant(value) {\n var result,\n parent = this;\n\n while (parent instanceof baseLodash) {\n var clone = wrapperClone(parent);\n clone.__index__ = 0;\n clone.__values__ = undefined;\n if (result) {\n previous.__wrapped__ = clone;\n } else {\n result = clone;\n }\n var previous = clone;\n parent = parent.__wrapped__;\n }\n previous.__wrapped__ = value;\n return result;\n }\n\n /**\n * This method is the wrapper version of `_.reverse`.\n *\n * **Note:** This method mutates the wrapped array.\n *\n * @name reverse\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _(array).reverse().value()\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function wrapperReverse() {\n var value = this.__wrapped__;\n if (value instanceof LazyWrapper) {\n var wrapped = value;\n if (this.__actions__.length) {\n wrapped = new LazyWrapper(this);\n }\n wrapped = wrapped.reverse();\n wrapped.__actions__.push({\n 'func': thru,\n 'args': [reverse],\n 'thisArg': undefined\n });\n return new LodashWrapper(wrapped, this.__chain__);\n }\n return this.thru(reverse);\n }\n\n /**\n * Executes the chain sequence to resolve the unwrapped value.\n *\n * @name value\n * @memberOf _\n * @since 0.1.0\n * @alias toJSON, valueOf\n * @category Seq\n * @returns {*} Returns the resolved unwrapped value.\n * @example\n *\n * _([1, 2, 3]).value();\n * // => [1, 2, 3]\n */\n function wrapperValue() {\n return baseWrapperValue(this.__wrapped__, this.__actions__);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the number of times the key was returned by `iteratee`. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.countBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': 1, '6': 2 }\n *\n * // The `_.property` iteratee shorthand.\n * _.countBy(['one', 'two', 'three'], 'length');\n * // => { '3': 2, '5': 1 }\n */\n var countBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n ++result[key];\n } else {\n baseAssignValue(result, key, 1);\n }\n });\n\n /**\n * Checks if `predicate` returns truthy for **all** elements of `collection`.\n * Iteration is stopped once `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * **Note:** This method returns `true` for\n * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because\n * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of\n * elements of empty collections.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n * @example\n *\n * _.every([true, 1, null, 'yes'], Boolean);\n * // => false\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.every(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.every(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.every(users, 'active');\n * // => false\n */\n function every(collection, predicate, guard) {\n var func = isArray(collection) ? arrayEvery : baseEvery;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning an array of all elements\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * **Note:** Unlike `_.remove`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.reject\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * _.filter(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.filter(users, { 'age': 36, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.filter(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.filter(users, 'active');\n * // => objects for ['barney']\n *\n * // Combining several predicates using `_.overEvery` or `_.overSome`.\n * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]]));\n * // => objects for ['fred', 'barney']\n */\n function filter(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning the first element\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false },\n * { 'user': 'pebbles', 'age': 1, 'active': true }\n * ];\n *\n * _.find(users, function(o) { return o.age < 40; });\n * // => object for 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.find(users, { 'age': 1, 'active': true });\n * // => object for 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.find(users, ['active', false]);\n * // => object for 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.find(users, 'active');\n * // => object for 'barney'\n */\n var find = createFind(findIndex);\n\n /**\n * This method is like `_.find` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=collection.length-1] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * _.findLast([1, 2, 3, 4], function(n) {\n * return n % 2 == 1;\n * });\n * // => 3\n */\n var findLast = createFind(findLastIndex);\n\n /**\n * Creates a flattened array of values by running each element in `collection`\n * thru `iteratee` and flattening the mapped results. The iteratee is invoked\n * with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [n, n];\n * }\n *\n * _.flatMap([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMap(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), 1);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDeep([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMapDeep(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), INFINITY);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDepth([1, 2], duplicate, 2);\n * // => [[1, 1], [2, 2]]\n */\n function flatMapDepth(collection, iteratee, depth) {\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(map(collection, iteratee), depth);\n }\n\n /**\n * Iterates over elements of `collection` and invokes `iteratee` for each element.\n * The iteratee is invoked with three arguments: (value, index|key, collection).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * **Note:** As with other \"Collections\" methods, objects with a \"length\"\n * property are iterated like arrays. To avoid this behavior use `_.forIn`\n * or `_.forOwn` for object iteration.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias each\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEachRight\n * @example\n *\n * _.forEach([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `1` then `2`.\n *\n * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forEach(collection, iteratee) {\n var func = isArray(collection) ? arrayEach : baseEach;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forEach` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @alias eachRight\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEach\n * @example\n *\n * _.forEachRight([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `2` then `1`.\n */\n function forEachRight(collection, iteratee) {\n var func = isArray(collection) ? arrayEachRight : baseEachRight;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The order of grouped values\n * is determined by the order they occur in `collection`. The corresponding\n * value of each key is an array of elements responsible for generating the\n * key. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.groupBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': [4.2], '6': [6.1, 6.3] }\n *\n * // The `_.property` iteratee shorthand.\n * _.groupBy(['one', 'two', 'three'], 'length');\n * // => { '3': ['one', 'two'], '5': ['three'] }\n */\n var groupBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n result[key].push(value);\n } else {\n baseAssignValue(result, key, [value]);\n }\n });\n\n /**\n * Checks if `value` is in `collection`. If `collection` is a string, it's\n * checked for a substring of `value`, otherwise\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * is used for equality comparisons. If `fromIndex` is negative, it's used as\n * the offset from the end of `collection`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {boolean} Returns `true` if `value` is found, else `false`.\n * @example\n *\n * _.includes([1, 2, 3], 1);\n * // => true\n *\n * _.includes([1, 2, 3], 1, 2);\n * // => false\n *\n * _.includes({ 'a': 1, 'b': 2 }, 1);\n * // => true\n *\n * _.includes('abcd', 'bc');\n * // => true\n */\n function includes(collection, value, fromIndex, guard) {\n collection = isArrayLike(collection) ? collection : values(collection);\n fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0;\n\n var length = collection.length;\n if (fromIndex < 0) {\n fromIndex = nativeMax(length + fromIndex, 0);\n }\n return isString(collection)\n ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)\n : (!!length && baseIndexOf(collection, value, fromIndex) > -1);\n }\n\n /**\n * Invokes the method at `path` of each element in `collection`, returning\n * an array of the results of each invoked method. Any additional arguments\n * are provided to each invoked method. If `path` is a function, it's invoked\n * for, and `this` bound to, each element in `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array|Function|string} path The path of the method to invoke or\n * the function invoked per iteration.\n * @param {...*} [args] The arguments to invoke each method with.\n * @returns {Array} Returns the array of results.\n * @example\n *\n * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort');\n * // => [[1, 5, 7], [1, 2, 3]]\n *\n * _.invokeMap([123, 456], String.prototype.split, '');\n * // => [['1', '2', '3'], ['4', '5', '6']]\n */\n var invokeMap = baseRest(function(collection, path, args) {\n var index = -1,\n isFunc = typeof path == 'function',\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value) {\n result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args);\n });\n return result;\n });\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the last element responsible for generating the key. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * var array = [\n * { 'dir': 'left', 'code': 97 },\n * { 'dir': 'right', 'code': 100 }\n * ];\n *\n * _.keyBy(array, function(o) {\n * return String.fromCharCode(o.code);\n * });\n * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }\n *\n * _.keyBy(array, 'dir');\n * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }\n */\n var keyBy = createAggregator(function(result, value, key) {\n baseAssignValue(result, key, value);\n });\n\n /**\n * Creates an array of values by running each element in `collection` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.\n *\n * The guarded methods are:\n * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,\n * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,\n * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,\n * `template`, `trim`, `trimEnd`, `trimStart`, and `words`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * _.map([4, 8], square);\n * // => [16, 64]\n *\n * _.map({ 'a': 4, 'b': 8 }, square);\n * // => [16, 64] (iteration order is not guaranteed)\n *\n * var users = [\n * { 'user': 'barney' },\n * { 'user': 'fred' }\n * ];\n *\n * // The `_.property` iteratee shorthand.\n * _.map(users, 'user');\n * // => ['barney', 'fred']\n */\n function map(collection, iteratee) {\n var func = isArray(collection) ? arrayMap : baseMap;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.sortBy` except that it allows specifying the sort\n * orders of the iteratees to sort by. If `orders` is unspecified, all values\n * are sorted in ascending order. Otherwise, specify an order of \"desc\" for\n * descending or \"asc\" for ascending sort order of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @param {string[]} [orders] The sort orders of `iteratees`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 34 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'barney', 'age': 36 }\n * ];\n *\n * // Sort by `user` in ascending order and by `age` in descending order.\n * _.orderBy(users, ['user', 'age'], ['asc', 'desc']);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]\n */\n function orderBy(collection, iteratees, orders, guard) {\n if (collection == null) {\n return [];\n }\n if (!isArray(iteratees)) {\n iteratees = iteratees == null ? [] : [iteratees];\n }\n orders = guard ? undefined : orders;\n if (!isArray(orders)) {\n orders = orders == null ? [] : [orders];\n }\n return baseOrderBy(collection, iteratees, orders);\n }\n\n /**\n * Creates an array of elements split into two groups, the first of which\n * contains elements `predicate` returns truthy for, the second of which\n * contains elements `predicate` returns falsey for. The predicate is\n * invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the array of grouped elements.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true },\n * { 'user': 'pebbles', 'age': 1, 'active': false }\n * ];\n *\n * _.partition(users, function(o) { return o.active; });\n * // => objects for [['fred'], ['barney', 'pebbles']]\n *\n * // The `_.matches` iteratee shorthand.\n * _.partition(users, { 'age': 1, 'active': false });\n * // => objects for [['pebbles'], ['barney', 'fred']]\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.partition(users, ['active', false]);\n * // => objects for [['barney', 'pebbles'], ['fred']]\n *\n * // The `_.property` iteratee shorthand.\n * _.partition(users, 'active');\n * // => objects for [['fred'], ['barney', 'pebbles']]\n */\n var partition = createAggregator(function(result, value, key) {\n result[key ? 0 : 1].push(value);\n }, function() { return [[], []]; });\n\n /**\n * Reduces `collection` to a value which is the accumulated result of running\n * each element in `collection` thru `iteratee`, where each successive\n * invocation is supplied the return value of the previous. If `accumulator`\n * is not given, the first element of `collection` is used as the initial\n * value. The iteratee is invoked with four arguments:\n * (accumulator, value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.reduce`, `_.reduceRight`, and `_.transform`.\n *\n * The guarded methods are:\n * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,\n * and `sortBy`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduceRight\n * @example\n *\n * _.reduce([1, 2], function(sum, n) {\n * return sum + n;\n * }, 0);\n * // => 3\n *\n * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * return result;\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)\n */\n function reduce(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduce : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach);\n }\n\n /**\n * This method is like `_.reduce` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduce\n * @example\n *\n * var array = [[0, 1], [2, 3], [4, 5]];\n *\n * _.reduceRight(array, function(flattened, other) {\n * return flattened.concat(other);\n * }, []);\n * // => [4, 5, 2, 3, 0, 1]\n */\n function reduceRight(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduceRight : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight);\n }\n\n /**\n * The opposite of `_.filter`; this method returns the elements of `collection`\n * that `predicate` does **not** return truthy for.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.filter\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true }\n * ];\n *\n * _.reject(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.reject(users, { 'age': 40, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.reject(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.reject(users, 'active');\n * // => objects for ['barney']\n */\n function reject(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, negate(getIteratee(predicate, 3)));\n }\n\n /**\n * Gets a random element from `collection`.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n * @example\n *\n * _.sample([1, 2, 3, 4]);\n * // => 2\n */\n function sample(collection) {\n var func = isArray(collection) ? arraySample : baseSample;\n return func(collection);\n }\n\n /**\n * Gets `n` random elements at unique keys from `collection` up to the\n * size of `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @param {number} [n=1] The number of elements to sample.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the random elements.\n * @example\n *\n * _.sampleSize([1, 2, 3], 2);\n * // => [3, 1]\n *\n * _.sampleSize([1, 2, 3], 4);\n * // => [2, 3, 1]\n */\n function sampleSize(collection, n, guard) {\n if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n var func = isArray(collection) ? arraySampleSize : baseSampleSize;\n return func(collection, n);\n }\n\n /**\n * Creates an array of shuffled values, using a version of the\n * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n * @example\n *\n * _.shuffle([1, 2, 3, 4]);\n * // => [4, 1, 3, 2]\n */\n function shuffle(collection) {\n var func = isArray(collection) ? arrayShuffle : baseShuffle;\n return func(collection);\n }\n\n /**\n * Gets the size of `collection` by returning its length for array-like\n * values or the number of own enumerable string keyed properties for objects.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @returns {number} Returns the collection size.\n * @example\n *\n * _.size([1, 2, 3]);\n * // => 3\n *\n * _.size({ 'a': 1, 'b': 2 });\n * // => 2\n *\n * _.size('pebbles');\n * // => 7\n */\n function size(collection) {\n if (collection == null) {\n return 0;\n }\n if (isArrayLike(collection)) {\n return isString(collection) ? stringSize(collection) : collection.length;\n }\n var tag = getTag(collection);\n if (tag == mapTag || tag == setTag) {\n return collection.size;\n }\n return baseKeys(collection).length;\n }\n\n /**\n * Checks if `predicate` returns truthy for **any** element of `collection`.\n * Iteration is stopped once `predicate` returns truthy. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n * @example\n *\n * _.some([null, 0, 'yes', false], Boolean);\n * // => true\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.some(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.some(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.some(users, 'active');\n * // => true\n */\n function some(collection, predicate, guard) {\n var func = isArray(collection) ? arraySome : baseSome;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Creates an array of elements, sorted in ascending order by the results of\n * running each element in a collection thru each iteratee. This method\n * performs a stable sort, that is, it preserves the original sort order of\n * equal elements. The iteratees are invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {...(Function|Function[])} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 30 },\n * { 'user': 'barney', 'age': 34 }\n * ];\n *\n * _.sortBy(users, [function(o) { return o.user; }]);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]]\n *\n * _.sortBy(users, ['user', 'age']);\n * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]]\n */\n var sortBy = baseRest(function(collection, iteratees) {\n if (collection == null) {\n return [];\n }\n var length = iteratees.length;\n if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) {\n iteratees = [];\n } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) {\n iteratees = [iteratees[0]];\n }\n return baseOrderBy(collection, baseFlatten(iteratees, 1), []);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\n var now = ctxNow || function() {\n return root.Date.now();\n };\n\n /*------------------------------------------------------------------------*/\n\n /**\n * The opposite of `_.before`; this method creates a function that invokes\n * `func` once it's called `n` or more times.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {number} n The number of calls before `func` is invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var saves = ['profile', 'settings'];\n *\n * var done = _.after(saves.length, function() {\n * console.log('done saving!');\n * });\n *\n * _.forEach(saves, function(type) {\n * asyncSave({ 'type': type, 'complete': done });\n * });\n * // => Logs 'done saving!' after the two async saves have completed.\n */\n function after(n, func) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n < 1) {\n return func.apply(this, arguments);\n }\n };\n }\n\n /**\n * Creates a function that invokes `func`, with up to `n` arguments,\n * ignoring any additional arguments.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @param {number} [n=func.length] The arity cap.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.ary(parseInt, 1));\n * // => [6, 8, 10]\n */\n function ary(func, n, guard) {\n n = guard ? undefined : n;\n n = (func && n == null) ? func.length : n;\n return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n);\n }\n\n /**\n * Creates a function that invokes `func`, with the `this` binding and arguments\n * of the created function, while it's called less than `n` times. Subsequent\n * calls to the created function return the result of the last `func` invocation.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {number} n The number of calls at which `func` is no longer invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * jQuery(element).on('click', _.before(5, addContactToList));\n * // => Allows adding up to 4 contacts to the list.\n */\n function before(n, func) {\n var result;\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n > 0) {\n result = func.apply(this, arguments);\n }\n if (n <= 1) {\n func = undefined;\n }\n return result;\n };\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of `thisArg`\n * and `partials` prepended to the arguments it receives.\n *\n * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for partially applied arguments.\n *\n * **Note:** Unlike native `Function#bind`, this method doesn't set the \"length\"\n * property of bound functions.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to bind.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * function greet(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n *\n * var object = { 'user': 'fred' };\n *\n * var bound = _.bind(greet, object, 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bind(greet, object, _, '!');\n * bound('hi');\n * // => 'hi fred!'\n */\n var bind = baseRest(function(func, thisArg, partials) {\n var bitmask = WRAP_BIND_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bind));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(func, bitmask, thisArg, partials, holders);\n });\n\n /**\n * Creates a function that invokes the method at `object[key]` with `partials`\n * prepended to the arguments it receives.\n *\n * This method differs from `_.bind` by allowing bound functions to reference\n * methods that may be redefined or don't yet exist. See\n * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern)\n * for more details.\n *\n * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Function\n * @param {Object} object The object to invoke the method on.\n * @param {string} key The key of the method.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * var object = {\n * 'user': 'fred',\n * 'greet': function(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n * };\n *\n * var bound = _.bindKey(object, 'greet', 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * object.greet = function(greeting, punctuation) {\n * return greeting + 'ya ' + this.user + punctuation;\n * };\n *\n * bound('!');\n * // => 'hiya fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bindKey(object, 'greet', _, '!');\n * bound('hi');\n * // => 'hiya fred!'\n */\n var bindKey = baseRest(function(object, key, partials) {\n var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bindKey));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(key, bitmask, object, partials, holders);\n });\n\n /**\n * Creates a function that accepts arguments of `func` and either invokes\n * `func` returning its result, if at least `arity` number of arguments have\n * been provided, or returns a function that accepts the remaining `func`\n * arguments, and so on. The arity of `func` may be specified if `func.length`\n * is not sufficient.\n *\n * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curry(abc);\n *\n * curried(1)(2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(1)(_, 3)(2);\n * // => [1, 2, 3]\n */\n function curry(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curry.placeholder;\n return result;\n }\n\n /**\n * This method is like `_.curry` except that arguments are applied to `func`\n * in the manner of `_.partialRight` instead of `_.partial`.\n *\n * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curryRight(abc);\n *\n * curried(3)(2)(1);\n * // => [1, 2, 3]\n *\n * curried(2, 3)(1);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(3)(1, _)(2);\n * // => [1, 2, 3]\n */\n function curryRight(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curryRight.placeholder;\n return result;\n }\n\n /**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\n function debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n }\n\n /**\n * Defers invoking the `func` until the current call stack has cleared. Any\n * additional arguments are provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to defer.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.defer(function(text) {\n * console.log(text);\n * }, 'deferred');\n * // => Logs 'deferred' after one millisecond.\n */\n var defer = baseRest(function(func, args) {\n return baseDelay(func, 1, args);\n });\n\n /**\n * Invokes `func` after `wait` milliseconds. Any additional arguments are\n * provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.delay(function(text) {\n * console.log(text);\n * }, 1000, 'later');\n * // => Logs 'later' after one second.\n */\n var delay = baseRest(function(func, wait, args) {\n return baseDelay(func, toNumber(wait) || 0, args);\n });\n\n /**\n * Creates a function that invokes `func` with arguments reversed.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to flip arguments for.\n * @returns {Function} Returns the new flipped function.\n * @example\n *\n * var flipped = _.flip(function() {\n * return _.toArray(arguments);\n * });\n *\n * flipped('a', 'b', 'c', 'd');\n * // => ['d', 'c', 'b', 'a']\n */\n function flip(func) {\n return createWrap(func, WRAP_FLIP_FLAG);\n }\n\n /**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\n function memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n }\n\n // Expose `MapCache`.\n memoize.Cache = MapCache;\n\n /**\n * Creates a function that negates the result of the predicate `func`. The\n * `func` predicate is invoked with the `this` binding and arguments of the\n * created function.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} predicate The predicate to negate.\n * @returns {Function} Returns the new negated function.\n * @example\n *\n * function isEven(n) {\n * return n % 2 == 0;\n * }\n *\n * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));\n * // => [1, 3, 5]\n */\n function negate(predicate) {\n if (typeof predicate != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return function() {\n var args = arguments;\n switch (args.length) {\n case 0: return !predicate.call(this);\n case 1: return !predicate.call(this, args[0]);\n case 2: return !predicate.call(this, args[0], args[1]);\n case 3: return !predicate.call(this, args[0], args[1], args[2]);\n }\n return !predicate.apply(this, args);\n };\n }\n\n /**\n * Creates a function that is restricted to invoking `func` once. Repeat calls\n * to the function return the value of the first invocation. The `func` is\n * invoked with the `this` binding and arguments of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var initialize = _.once(createApplication);\n * initialize();\n * initialize();\n * // => `createApplication` is invoked once\n */\n function once(func) {\n return before(2, func);\n }\n\n /**\n * Creates a function that invokes `func` with its arguments transformed.\n *\n * @static\n * @since 4.0.0\n * @memberOf _\n * @category Function\n * @param {Function} func The function to wrap.\n * @param {...(Function|Function[])} [transforms=[_.identity]]\n * The argument transforms.\n * @returns {Function} Returns the new function.\n * @example\n *\n * function doubled(n) {\n * return n * 2;\n * }\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var func = _.overArgs(function(x, y) {\n * return [x, y];\n * }, [square, doubled]);\n *\n * func(9, 3);\n * // => [81, 6]\n *\n * func(10, 5);\n * // => [100, 10]\n */\n var overArgs = castRest(function(func, transforms) {\n transforms = (transforms.length == 1 && isArray(transforms[0]))\n ? arrayMap(transforms[0], baseUnary(getIteratee()))\n : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee()));\n\n var funcsLength = transforms.length;\n return baseRest(function(args) {\n var index = -1,\n length = nativeMin(args.length, funcsLength);\n\n while (++index < length) {\n args[index] = transforms[index].call(this, args[index]);\n }\n return apply(func, this, args);\n });\n });\n\n /**\n * Creates a function that invokes `func` with `partials` prepended to the\n * arguments it receives. This method is like `_.bind` except it does **not**\n * alter the `this` binding.\n *\n * The `_.partial.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 0.2.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var sayHelloTo = _.partial(greet, 'hello');\n * sayHelloTo('fred');\n * // => 'hello fred'\n *\n * // Partially applied with placeholders.\n * var greetFred = _.partial(greet, _, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n */\n var partial = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partial));\n return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders);\n });\n\n /**\n * This method is like `_.partial` except that partially applied arguments\n * are appended to the arguments it receives.\n *\n * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var greetFred = _.partialRight(greet, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n *\n * // Partially applied with placeholders.\n * var sayHelloTo = _.partialRight(greet, 'hello', _);\n * sayHelloTo('fred');\n * // => 'hello fred'\n */\n var partialRight = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partialRight));\n return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders);\n });\n\n /**\n * Creates a function that invokes `func` with arguments arranged according\n * to the specified `indexes` where the argument value at the first index is\n * provided as the first argument, the argument value at the second index is\n * provided as the second argument, and so on.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to rearrange arguments for.\n * @param {...(number|number[])} indexes The arranged argument indexes.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var rearged = _.rearg(function(a, b, c) {\n * return [a, b, c];\n * }, [2, 0, 1]);\n *\n * rearged('b', 'c', 'a')\n * // => ['a', 'b', 'c']\n */\n var rearg = flatRest(function(func, indexes) {\n return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes);\n });\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * created function and arguments from `start` and beyond provided as\n * an array.\n *\n * **Note:** This method is based on the\n * [rest parameter](https://mdn.io/rest_parameters).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.rest(function(what, names) {\n * return what + ' ' + _.initial(names).join(', ') +\n * (_.size(names) > 1 ? ', & ' : '') + _.last(names);\n * });\n *\n * say('hello', 'fred', 'barney', 'pebbles');\n * // => 'hello fred, barney, & pebbles'\n */\n function rest(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start === undefined ? start : toInteger(start);\n return baseRest(func, start);\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * create function and an array of arguments much like\n * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply).\n *\n * **Note:** This method is based on the\n * [spread operator](https://mdn.io/spread_operator).\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Function\n * @param {Function} func The function to spread arguments over.\n * @param {number} [start=0] The start position of the spread.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.spread(function(who, what) {\n * return who + ' says ' + what;\n * });\n *\n * say(['fred', 'hello']);\n * // => 'fred says hello'\n *\n * var numbers = Promise.all([\n * Promise.resolve(40),\n * Promise.resolve(36)\n * ]);\n *\n * numbers.then(_.spread(function(x, y) {\n * return x + y;\n * }));\n * // => a Promise of 76\n */\n function spread(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start == null ? 0 : nativeMax(toInteger(start), 0);\n return baseRest(function(args) {\n var array = args[start],\n otherArgs = castSlice(args, 0, start);\n\n if (array) {\n arrayPush(otherArgs, array);\n }\n return apply(func, this, otherArgs);\n });\n }\n\n /**\n * Creates a throttled function that only invokes `func` at most once per\n * every `wait` milliseconds. The throttled function comes with a `cancel`\n * method to cancel delayed `func` invocations and a `flush` method to\n * immediately invoke them. Provide `options` to indicate whether `func`\n * should be invoked on the leading and/or trailing edge of the `wait`\n * timeout. The `func` is invoked with the last arguments provided to the\n * throttled function. Subsequent calls to the throttled function return the\n * result of the last `func` invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the throttled function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.throttle` and `_.debounce`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to throttle.\n * @param {number} [wait=0] The number of milliseconds to throttle invocations to.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=true]\n * Specify invoking on the leading edge of the timeout.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new throttled function.\n * @example\n *\n * // Avoid excessively updating the position while scrolling.\n * jQuery(window).on('scroll', _.throttle(updatePosition, 100));\n *\n * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.\n * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });\n * jQuery(element).on('click', throttled);\n *\n * // Cancel the trailing throttled invocation.\n * jQuery(window).on('popstate', throttled.cancel);\n */\n function throttle(func, wait, options) {\n var leading = true,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (isObject(options)) {\n leading = 'leading' in options ? !!options.leading : leading;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n return debounce(func, wait, {\n 'leading': leading,\n 'maxWait': wait,\n 'trailing': trailing\n });\n }\n\n /**\n * Creates a function that accepts up to one argument, ignoring any\n * additional arguments.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.unary(parseInt));\n * // => [6, 8, 10]\n */\n function unary(func) {\n return ary(func, 1);\n }\n\n /**\n * Creates a function that provides `value` to `wrapper` as its first\n * argument. Any additional arguments provided to the function are appended\n * to those provided to the `wrapper`. The wrapper is invoked with the `this`\n * binding of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {*} value The value to wrap.\n * @param {Function} [wrapper=identity] The wrapper function.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var p = _.wrap(_.escape, function(func, text) {\n * return '

' + func(text) + '

';\n * });\n *\n * p('fred, barney, & pebbles');\n * // => '

fred, barney, & pebbles

'\n */\n function wrap(value, wrapper) {\n return partial(castFunction(wrapper), value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Casts `value` as an array if it's not one.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Lang\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast array.\n * @example\n *\n * _.castArray(1);\n * // => [1]\n *\n * _.castArray({ 'a': 1 });\n * // => [{ 'a': 1 }]\n *\n * _.castArray('abc');\n * // => ['abc']\n *\n * _.castArray(null);\n * // => [null]\n *\n * _.castArray(undefined);\n * // => [undefined]\n *\n * _.castArray();\n * // => []\n *\n * var array = [1, 2, 3];\n * console.log(_.castArray(array) === array);\n * // => true\n */\n function castArray() {\n if (!arguments.length) {\n return [];\n }\n var value = arguments[0];\n return isArray(value) ? value : [value];\n }\n\n /**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\n function clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.clone` except that it accepts `customizer` which\n * is invoked to produce the cloned value. If `customizer` returns `undefined`,\n * cloning is handled by the method instead. The `customizer` is invoked with\n * up to four arguments; (value [, index|key, object, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeepWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(false);\n * }\n * }\n *\n * var el = _.cloneWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 0\n */\n function cloneWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * This method is like `_.clone` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @returns {*} Returns the deep cloned value.\n * @see _.clone\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var deep = _.cloneDeep(objects);\n * console.log(deep[0] === objects[0]);\n * // => false\n */\n function cloneDeep(value) {\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.cloneWith` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the deep cloned value.\n * @see _.cloneWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(true);\n * }\n * }\n *\n * var el = _.cloneDeepWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 20\n */\n function cloneDeepWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * Checks if `object` conforms to `source` by invoking the predicate\n * properties of `source` with the corresponding property values of `object`.\n *\n * **Note:** This method is equivalent to `_.conforms` when `source` is\n * partially applied.\n *\n * @static\n * @memberOf _\n * @since 4.14.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 1; } });\n * // => true\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 2; } });\n * // => false\n */\n function conformsTo(object, source) {\n return source == null || baseConformsTo(object, source, keys(source));\n }\n\n /**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\n function eq(value, other) {\n return value === other || (value !== value && other !== other);\n }\n\n /**\n * Checks if `value` is greater than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n * @see _.lt\n * @example\n *\n * _.gt(3, 1);\n * // => true\n *\n * _.gt(3, 3);\n * // => false\n *\n * _.gt(1, 3);\n * // => false\n */\n var gt = createRelationalOperation(baseGt);\n\n /**\n * Checks if `value` is greater than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than or equal to\n * `other`, else `false`.\n * @see _.lte\n * @example\n *\n * _.gte(3, 1);\n * // => true\n *\n * _.gte(3, 3);\n * // => true\n *\n * _.gte(1, 3);\n * // => false\n */\n var gte = createRelationalOperation(function(value, other) {\n return value >= other;\n });\n\n /**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\n var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n };\n\n /**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\n var isArray = Array.isArray;\n\n /**\n * Checks if `value` is classified as an `ArrayBuffer` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n * @example\n *\n * _.isArrayBuffer(new ArrayBuffer(2));\n * // => true\n *\n * _.isArrayBuffer(new Array(2));\n * // => false\n */\n var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer;\n\n /**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\n function isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n }\n\n /**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\n function isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n }\n\n /**\n * Checks if `value` is classified as a boolean primitive or object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n * @example\n *\n * _.isBoolean(false);\n * // => true\n *\n * _.isBoolean(null);\n * // => false\n */\n function isBoolean(value) {\n return value === true || value === false ||\n (isObjectLike(value) && baseGetTag(value) == boolTag);\n }\n\n /**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\n var isBuffer = nativeIsBuffer || stubFalse;\n\n /**\n * Checks if `value` is classified as a `Date` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n * @example\n *\n * _.isDate(new Date);\n * // => true\n *\n * _.isDate('Mon April 23 2012');\n * // => false\n */\n var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate;\n\n /**\n * Checks if `value` is likely a DOM element.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.\n * @example\n *\n * _.isElement(document.body);\n * // => true\n *\n * _.isElement('');\n * // => false\n */\n function isElement(value) {\n return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value);\n }\n\n /**\n * Checks if `value` is an empty object, collection, map, or set.\n *\n * Objects are considered empty if they have no own enumerable string keyed\n * properties.\n *\n * Array-like values such as `arguments` objects, arrays, buffers, strings, or\n * jQuery-like collections are considered empty if they have a `length` of `0`.\n * Similarly, maps and sets are considered empty if they have a `size` of `0`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is empty, else `false`.\n * @example\n *\n * _.isEmpty(null);\n * // => true\n *\n * _.isEmpty(true);\n * // => true\n *\n * _.isEmpty(1);\n * // => true\n *\n * _.isEmpty([1, 2, 3]);\n * // => false\n *\n * _.isEmpty({ 'a': 1 });\n * // => false\n */\n function isEmpty(value) {\n if (value == null) {\n return true;\n }\n if (isArrayLike(value) &&\n (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||\n isBuffer(value) || isTypedArray(value) || isArguments(value))) {\n return !value.length;\n }\n var tag = getTag(value);\n if (tag == mapTag || tag == setTag) {\n return !value.size;\n }\n if (isPrototype(value)) {\n return !baseKeys(value).length;\n }\n for (var key in value) {\n if (hasOwnProperty.call(value, key)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\n function isEqual(value, other) {\n return baseIsEqual(value, other);\n }\n\n /**\n * This method is like `_.isEqual` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with up to\n * six arguments: (objValue, othValue [, index|key, object, other, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, othValue) {\n * if (isGreeting(objValue) && isGreeting(othValue)) {\n * return true;\n * }\n * }\n *\n * var array = ['hello', 'goodbye'];\n * var other = ['hi', 'goodbye'];\n *\n * _.isEqualWith(array, other, customizer);\n * // => true\n */\n function isEqualWith(value, other, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n var result = customizer ? customizer(value, other) : undefined;\n return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result;\n }\n\n /**\n * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,\n * `SyntaxError`, `TypeError`, or `URIError` object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an error object, else `false`.\n * @example\n *\n * _.isError(new Error);\n * // => true\n *\n * _.isError(Error);\n * // => false\n */\n function isError(value) {\n if (!isObjectLike(value)) {\n return false;\n }\n var tag = baseGetTag(value);\n return tag == errorTag || tag == domExcTag ||\n (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value));\n }\n\n /**\n * Checks if `value` is a finite primitive number.\n *\n * **Note:** This method is based on\n * [`Number.isFinite`](https://mdn.io/Number/isFinite).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a finite number, else `false`.\n * @example\n *\n * _.isFinite(3);\n * // => true\n *\n * _.isFinite(Number.MIN_VALUE);\n * // => true\n *\n * _.isFinite(Infinity);\n * // => false\n *\n * _.isFinite('3');\n * // => false\n */\n function isFinite(value) {\n return typeof value == 'number' && nativeIsFinite(value);\n }\n\n /**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\n function isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n }\n\n /**\n * Checks if `value` is an integer.\n *\n * **Note:** This method is based on\n * [`Number.isInteger`](https://mdn.io/Number/isInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an integer, else `false`.\n * @example\n *\n * _.isInteger(3);\n * // => true\n *\n * _.isInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isInteger(Infinity);\n * // => false\n *\n * _.isInteger('3');\n * // => false\n */\n function isInteger(value) {\n return typeof value == 'number' && value == toInteger(value);\n }\n\n /**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\n function isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\n function isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n }\n\n /**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\n function isObjectLike(value) {\n return value != null && typeof value == 'object';\n }\n\n /**\n * Checks if `value` is classified as a `Map` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n * @example\n *\n * _.isMap(new Map);\n * // => true\n *\n * _.isMap(new WeakMap);\n * // => false\n */\n var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\n\n /**\n * Performs a partial deep comparison between `object` and `source` to\n * determine if `object` contains equivalent property values.\n *\n * **Note:** This method is equivalent to `_.matches` when `source` is\n * partially applied.\n *\n * Partial comparisons will match empty array and empty object `source`\n * values against any array or object value, respectively. See `_.isEqual`\n * for a list of supported value comparisons.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.isMatch(object, { 'b': 2 });\n * // => true\n *\n * _.isMatch(object, { 'b': 1 });\n * // => false\n */\n function isMatch(object, source) {\n return object === source || baseIsMatch(object, source, getMatchData(source));\n }\n\n /**\n * This method is like `_.isMatch` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with five\n * arguments: (objValue, srcValue, index|key, object, source).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, srcValue) {\n * if (isGreeting(objValue) && isGreeting(srcValue)) {\n * return true;\n * }\n * }\n *\n * var object = { 'greeting': 'hello' };\n * var source = { 'greeting': 'hi' };\n *\n * _.isMatchWith(object, source, customizer);\n * // => true\n */\n function isMatchWith(object, source, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseIsMatch(object, source, getMatchData(source), customizer);\n }\n\n /**\n * Checks if `value` is `NaN`.\n *\n * **Note:** This method is based on\n * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as\n * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for\n * `undefined` and other non-number values.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n * @example\n *\n * _.isNaN(NaN);\n * // => true\n *\n * _.isNaN(new Number(NaN));\n * // => true\n *\n * isNaN(undefined);\n * // => true\n *\n * _.isNaN(undefined);\n * // => false\n */\n function isNaN(value) {\n // An `NaN` primitive is the only value that is not equal to itself.\n // Perform the `toStringTag` check first to avoid errors with some\n // ActiveX objects in IE.\n return isNumber(value) && value != +value;\n }\n\n /**\n * Checks if `value` is a pristine native function.\n *\n * **Note:** This method can't reliably detect native functions in the presence\n * of the core-js package because core-js circumvents this kind of detection.\n * Despite multiple requests, the core-js maintainer has made it clear: any\n * attempt to fix the detection will be obstructed. As a result, we're left\n * with little choice but to throw an error. Unfortunately, this also affects\n * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill),\n * which rely on core-js.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n * @example\n *\n * _.isNative(Array.prototype.push);\n * // => true\n *\n * _.isNative(_);\n * // => false\n */\n function isNative(value) {\n if (isMaskable(value)) {\n throw new Error(CORE_ERROR_TEXT);\n }\n return baseIsNative(value);\n }\n\n /**\n * Checks if `value` is `null`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `null`, else `false`.\n * @example\n *\n * _.isNull(null);\n * // => true\n *\n * _.isNull(void 0);\n * // => false\n */\n function isNull(value) {\n return value === null;\n }\n\n /**\n * Checks if `value` is `null` or `undefined`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is nullish, else `false`.\n * @example\n *\n * _.isNil(null);\n * // => true\n *\n * _.isNil(void 0);\n * // => true\n *\n * _.isNil(NaN);\n * // => false\n */\n function isNil(value) {\n return value == null;\n }\n\n /**\n * Checks if `value` is classified as a `Number` primitive or object.\n *\n * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are\n * classified as numbers, use the `_.isFinite` method.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a number, else `false`.\n * @example\n *\n * _.isNumber(3);\n * // => true\n *\n * _.isNumber(Number.MIN_VALUE);\n * // => true\n *\n * _.isNumber(Infinity);\n * // => true\n *\n * _.isNumber('3');\n * // => false\n */\n function isNumber(value) {\n return typeof value == 'number' ||\n (isObjectLike(value) && baseGetTag(value) == numberTag);\n }\n\n /**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\n function isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n }\n\n /**\n * Checks if `value` is classified as a `RegExp` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n * @example\n *\n * _.isRegExp(/abc/);\n * // => true\n *\n * _.isRegExp('/abc/');\n * // => false\n */\n var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp;\n\n /**\n * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754\n * double precision number which isn't the result of a rounded unsafe integer.\n *\n * **Note:** This method is based on\n * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`.\n * @example\n *\n * _.isSafeInteger(3);\n * // => true\n *\n * _.isSafeInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isSafeInteger(Infinity);\n * // => false\n *\n * _.isSafeInteger('3');\n * // => false\n */\n function isSafeInteger(value) {\n return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is classified as a `Set` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n * @example\n *\n * _.isSet(new Set);\n * // => true\n *\n * _.isSet(new WeakSet);\n * // => false\n */\n var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\n\n /**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\n function isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n }\n\n /**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\n function isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n }\n\n /**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\n var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n /**\n * Checks if `value` is `undefined`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.\n * @example\n *\n * _.isUndefined(void 0);\n * // => true\n *\n * _.isUndefined(null);\n * // => false\n */\n function isUndefined(value) {\n return value === undefined;\n }\n\n /**\n * Checks if `value` is classified as a `WeakMap` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak map, else `false`.\n * @example\n *\n * _.isWeakMap(new WeakMap);\n * // => true\n *\n * _.isWeakMap(new Map);\n * // => false\n */\n function isWeakMap(value) {\n return isObjectLike(value) && getTag(value) == weakMapTag;\n }\n\n /**\n * Checks if `value` is classified as a `WeakSet` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak set, else `false`.\n * @example\n *\n * _.isWeakSet(new WeakSet);\n * // => true\n *\n * _.isWeakSet(new Set);\n * // => false\n */\n function isWeakSet(value) {\n return isObjectLike(value) && baseGetTag(value) == weakSetTag;\n }\n\n /**\n * Checks if `value` is less than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n * @see _.gt\n * @example\n *\n * _.lt(1, 3);\n * // => true\n *\n * _.lt(3, 3);\n * // => false\n *\n * _.lt(3, 1);\n * // => false\n */\n var lt = createRelationalOperation(baseLt);\n\n /**\n * Checks if `value` is less than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than or equal to\n * `other`, else `false`.\n * @see _.gte\n * @example\n *\n * _.lte(1, 3);\n * // => true\n *\n * _.lte(3, 3);\n * // => true\n *\n * _.lte(3, 1);\n * // => false\n */\n var lte = createRelationalOperation(function(value, other) {\n return value <= other;\n });\n\n /**\n * Converts `value` to an array.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Array} Returns the converted array.\n * @example\n *\n * _.toArray({ 'a': 1, 'b': 2 });\n * // => [1, 2]\n *\n * _.toArray('abc');\n * // => ['a', 'b', 'c']\n *\n * _.toArray(1);\n * // => []\n *\n * _.toArray(null);\n * // => []\n */\n function toArray(value) {\n if (!value) {\n return [];\n }\n if (isArrayLike(value)) {\n return isString(value) ? stringToArray(value) : copyArray(value);\n }\n if (symIterator && value[symIterator]) {\n return iteratorToArray(value[symIterator]());\n }\n var tag = getTag(value),\n func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values);\n\n return func(value);\n }\n\n /**\n * Converts `value` to a finite number.\n *\n * @static\n * @memberOf _\n * @since 4.12.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted number.\n * @example\n *\n * _.toFinite(3.2);\n * // => 3.2\n *\n * _.toFinite(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toFinite(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toFinite('3.2');\n * // => 3.2\n */\n function toFinite(value) {\n if (!value) {\n return value === 0 ? value : 0;\n }\n value = toNumber(value);\n if (value === INFINITY || value === -INFINITY) {\n var sign = (value < 0 ? -1 : 1);\n return sign * MAX_INTEGER;\n }\n return value === value ? value : 0;\n }\n\n /**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\n function toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n }\n\n /**\n * Converts `value` to an integer suitable for use as the length of an\n * array-like object.\n *\n * **Note:** This method is based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toLength(3.2);\n * // => 3\n *\n * _.toLength(Number.MIN_VALUE);\n * // => 0\n *\n * _.toLength(Infinity);\n * // => 4294967295\n *\n * _.toLength('3.2');\n * // => 3\n */\n function toLength(value) {\n return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0;\n }\n\n /**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\n function toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n }\n\n /**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\n function toPlainObject(value) {\n return copyObject(value, keysIn(value));\n }\n\n /**\n * Converts `value` to a safe integer. A safe integer can be compared and\n * represented correctly.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toSafeInteger(3.2);\n * // => 3\n *\n * _.toSafeInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toSafeInteger(Infinity);\n * // => 9007199254740991\n *\n * _.toSafeInteger('3.2');\n * // => 3\n */\n function toSafeInteger(value) {\n return value\n ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER)\n : (value === 0 ? value : 0);\n }\n\n /**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\n function toString(value) {\n return value == null ? '' : baseToString(value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Assigns own enumerable string keyed properties of source objects to the\n * destination object. Source objects are applied from left to right.\n * Subsequent sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object` and is loosely based on\n * [`Object.assign`](https://mdn.io/Object/assign).\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assignIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assign({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'c': 3 }\n */\n var assign = createAssigner(function(object, source) {\n if (isPrototype(source) || isArrayLike(source)) {\n copyObject(source, keys(source), object);\n return;\n }\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n assignValue(object, key, source[key]);\n }\n }\n });\n\n /**\n * This method is like `_.assign` except that it iterates over own and\n * inherited source properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extend\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assign\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assignIn({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 }\n */\n var assignIn = createAssigner(function(object, source) {\n copyObject(source, keysIn(source), object);\n });\n\n /**\n * This method is like `_.assignIn` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extendWith\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignInWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignInWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keysIn(source), object, customizer);\n });\n\n /**\n * This method is like `_.assign` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignInWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keys(source), object, customizer);\n });\n\n /**\n * Creates an array of values corresponding to `paths` of `object`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Array} Returns the picked values.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _.at(object, ['a[0].b.c', 'a[1]']);\n * // => [3, 4]\n */\n var at = flatRest(baseAt);\n\n /**\n * Creates an object that inherits from the `prototype` object. If a\n * `properties` object is given, its own enumerable string keyed properties\n * are assigned to the created object.\n *\n * @static\n * @memberOf _\n * @since 2.3.0\n * @category Object\n * @param {Object} prototype The object to inherit from.\n * @param {Object} [properties] The properties to assign to the object.\n * @returns {Object} Returns the new object.\n * @example\n *\n * function Shape() {\n * this.x = 0;\n * this.y = 0;\n * }\n *\n * function Circle() {\n * Shape.call(this);\n * }\n *\n * Circle.prototype = _.create(Shape.prototype, {\n * 'constructor': Circle\n * });\n *\n * var circle = new Circle;\n * circle instanceof Circle;\n * // => true\n *\n * circle instanceof Shape;\n * // => true\n */\n function create(prototype, properties) {\n var result = baseCreate(prototype);\n return properties == null ? result : baseAssign(result, properties);\n }\n\n /**\n * Assigns own and inherited enumerable string keyed properties of source\n * objects to the destination object for all destination properties that\n * resolve to `undefined`. Source objects are applied from left to right.\n * Once a property is set, additional values of the same property are ignored.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaultsDeep\n * @example\n *\n * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var defaults = baseRest(function(object, sources) {\n object = Object(object);\n\n var index = -1;\n var length = sources.length;\n var guard = length > 2 ? sources[2] : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n length = 1;\n }\n\n while (++index < length) {\n var source = sources[index];\n var props = keysIn(source);\n var propsIndex = -1;\n var propsLength = props.length;\n\n while (++propsIndex < propsLength) {\n var key = props[propsIndex];\n var value = object[key];\n\n if (value === undefined ||\n (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n object[key] = source[key];\n }\n }\n }\n\n return object;\n });\n\n /**\n * This method is like `_.defaults` except that it recursively assigns\n * default properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaults\n * @example\n *\n * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } });\n * // => { 'a': { 'b': 2, 'c': 3 } }\n */\n var defaultsDeep = baseRest(function(args) {\n args.push(undefined, customDefaultsMerge);\n return apply(mergeWith, undefined, args);\n });\n\n /**\n * This method is like `_.find` except that it returns the key of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findKey(users, function(o) { return o.age < 40; });\n * // => 'barney' (iteration order is not guaranteed)\n *\n * // The `_.matches` iteratee shorthand.\n * _.findKey(users, { 'age': 1, 'active': true });\n * // => 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findKey(users, 'active');\n * // => 'barney'\n */\n function findKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwn);\n }\n\n /**\n * This method is like `_.findKey` except that it iterates over elements of\n * a collection in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findLastKey(users, function(o) { return o.age < 40; });\n * // => returns 'pebbles' assuming `_.findKey` returns 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastKey(users, { 'age': 36, 'active': true });\n * // => 'barney'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastKey(users, 'active');\n * // => 'pebbles'\n */\n function findLastKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight);\n }\n\n /**\n * Iterates over own and inherited enumerable string keyed properties of an\n * object and invokes `iteratee` for each property. The iteratee is invoked\n * with three arguments: (value, key, object). Iteratee functions may exit\n * iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forInRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forIn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed).\n */\n function forIn(object, iteratee) {\n return object == null\n ? object\n : baseFor(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * This method is like `_.forIn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forInRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'.\n */\n function forInRight(object, iteratee) {\n return object == null\n ? object\n : baseForRight(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * Iterates over own enumerable string keyed properties of an object and\n * invokes `iteratee` for each property. The iteratee is invoked with three\n * arguments: (value, key, object). Iteratee functions may exit iteration\n * early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwnRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forOwn(object, iteratee) {\n return object && baseForOwn(object, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forOwn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwnRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'.\n */\n function forOwnRight(object, iteratee) {\n return object && baseForOwnRight(object, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an array of function property names from own enumerable properties\n * of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functionsIn\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functions(new Foo);\n * // => ['a', 'b']\n */\n function functions(object) {\n return object == null ? [] : baseFunctions(object, keys(object));\n }\n\n /**\n * Creates an array of function property names from own and inherited\n * enumerable properties of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functions\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functionsIn(new Foo);\n * // => ['a', 'b', 'c']\n */\n function functionsIn(object) {\n return object == null ? [] : baseFunctions(object, keysIn(object));\n }\n\n /**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\n function get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n }\n\n /**\n * Checks if `path` is a direct property of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = { 'a': { 'b': 2 } };\n * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.has(object, 'a');\n * // => true\n *\n * _.has(object, 'a.b');\n * // => true\n *\n * _.has(object, ['a', 'b']);\n * // => true\n *\n * _.has(other, 'a');\n * // => false\n */\n function has(object, path) {\n return object != null && hasPath(object, path, baseHas);\n }\n\n /**\n * Checks if `path` is a direct or inherited property of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.hasIn(object, 'a');\n * // => true\n *\n * _.hasIn(object, 'a.b');\n * // => true\n *\n * _.hasIn(object, ['a', 'b']);\n * // => true\n *\n * _.hasIn(object, 'b');\n * // => false\n */\n function hasIn(object, path) {\n return object != null && hasPath(object, path, baseHasIn);\n }\n\n /**\n * Creates an object composed of the inverted keys and values of `object`.\n * If `object` contains duplicate values, subsequent values overwrite\n * property assignments of previous values.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Object\n * @param {Object} object The object to invert.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invert(object);\n * // => { '1': 'c', '2': 'b' }\n */\n var invert = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n result[value] = key;\n }, constant(identity));\n\n /**\n * This method is like `_.invert` except that the inverted object is generated\n * from the results of running each element of `object` thru `iteratee`. The\n * corresponding inverted value of each inverted key is an array of keys\n * responsible for generating the inverted value. The iteratee is invoked\n * with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Object\n * @param {Object} object The object to invert.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invertBy(object);\n * // => { '1': ['a', 'c'], '2': ['b'] }\n *\n * _.invertBy(object, function(value) {\n * return 'group' + value;\n * });\n * // => { 'group1': ['a', 'c'], 'group2': ['b'] }\n */\n var invertBy = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n if (hasOwnProperty.call(result, value)) {\n result[value].push(key);\n } else {\n result[value] = [key];\n }\n }, getIteratee);\n\n /**\n * Invokes the method at `path` of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {...*} [args] The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] };\n *\n * _.invoke(object, 'a[0].b.c.slice', 1, 3);\n * // => [2, 3]\n */\n var invoke = baseRest(baseInvoke);\n\n /**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\n function keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n }\n\n /**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\n function keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n }\n\n /**\n * The opposite of `_.mapValues`; this method creates an object with the\n * same values as `object` and keys generated by running each own enumerable\n * string keyed property of `object` thru `iteratee`. The iteratee is invoked\n * with three arguments: (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapValues\n * @example\n *\n * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) {\n * return key + value;\n * });\n * // => { 'a1': 1, 'b2': 2 }\n */\n function mapKeys(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, iteratee(value, key, object), value);\n });\n return result;\n }\n\n /**\n * Creates an object with the same keys as `object` and values generated\n * by running each own enumerable string keyed property of `object` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapKeys\n * @example\n *\n * var users = {\n * 'fred': { 'user': 'fred', 'age': 40 },\n * 'pebbles': { 'user': 'pebbles', 'age': 1 }\n * };\n *\n * _.mapValues(users, function(o) { return o.age; });\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n *\n * // The `_.property` iteratee shorthand.\n * _.mapValues(users, 'age');\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n */\n function mapValues(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, key, iteratee(value, key, object));\n });\n return result;\n }\n\n /**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\n var merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n });\n\n /**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\n var mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n });\n\n /**\n * The opposite of `_.pick`; this method creates an object composed of the\n * own and inherited enumerable property paths of `object` that are not omitted.\n *\n * **Note:** This method is considerably slower than `_.pick`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to omit.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omit(object, ['a', 'c']);\n * // => { 'b': '2' }\n */\n var omit = flatRest(function(object, paths) {\n var result = {};\n if (object == null) {\n return result;\n }\n var isDeep = false;\n paths = arrayMap(paths, function(path) {\n path = castPath(path, object);\n isDeep || (isDeep = path.length > 1);\n return path;\n });\n copyObject(object, getAllKeysIn(object), result);\n if (isDeep) {\n result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);\n }\n var length = paths.length;\n while (length--) {\n baseUnset(result, paths[length]);\n }\n return result;\n });\n\n /**\n * The opposite of `_.pickBy`; this method creates an object composed of\n * the own and inherited enumerable string keyed properties of `object` that\n * `predicate` doesn't return truthy for. The predicate is invoked with two\n * arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omitBy(object, _.isNumber);\n * // => { 'b': '2' }\n */\n function omitBy(object, predicate) {\n return pickBy(object, negate(getIteratee(predicate)));\n }\n\n /**\n * Creates an object composed of the picked `object` properties.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pick(object, ['a', 'c']);\n * // => { 'a': 1, 'c': 3 }\n */\n var pick = flatRest(function(object, paths) {\n return object == null ? {} : basePick(object, paths);\n });\n\n /**\n * Creates an object composed of the `object` properties `predicate` returns\n * truthy for. The predicate is invoked with two arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pickBy(object, _.isNumber);\n * // => { 'a': 1, 'c': 3 }\n */\n function pickBy(object, predicate) {\n if (object == null) {\n return {};\n }\n var props = arrayMap(getAllKeysIn(object), function(prop) {\n return [prop];\n });\n predicate = getIteratee(predicate);\n return basePickBy(object, props, function(value, path) {\n return predicate(value, path[0]);\n });\n }\n\n /**\n * This method is like `_.get` except that if the resolved value is a\n * function it's invoked with the `this` binding of its parent object and\n * its result is returned.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to resolve.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };\n *\n * _.result(object, 'a[0].b.c1');\n * // => 3\n *\n * _.result(object, 'a[0].b.c2');\n * // => 4\n *\n * _.result(object, 'a[0].b.c3', 'default');\n * // => 'default'\n *\n * _.result(object, 'a[0].b.c3', _.constant('default'));\n * // => 'default'\n */\n function result(object, path, defaultValue) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length;\n\n // Ensure the loop is entered when path is empty.\n if (!length) {\n length = 1;\n object = undefined;\n }\n while (++index < length) {\n var value = object == null ? undefined : object[toKey(path[index])];\n if (value === undefined) {\n index = length;\n value = defaultValue;\n }\n object = isFunction(value) ? value.call(object) : value;\n }\n return object;\n }\n\n /**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\n function set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n }\n\n /**\n * This method is like `_.set` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.setWith(object, '[0][1]', 'a', Object);\n * // => { '0': { '1': 'a' } }\n */\n function setWith(object, path, value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseSet(object, path, value, customizer);\n }\n\n /**\n * Creates an array of own enumerable string keyed-value pairs for `object`\n * which can be consumed by `_.fromPairs`. If `object` is a map or set, its\n * entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entries\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairs(new Foo);\n * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed)\n */\n var toPairs = createToPairs(keys);\n\n /**\n * Creates an array of own and inherited enumerable string keyed-value pairs\n * for `object` which can be consumed by `_.fromPairs`. If `object` is a map\n * or set, its entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entriesIn\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairsIn(new Foo);\n * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed)\n */\n var toPairsIn = createToPairs(keysIn);\n\n /**\n * An alternative to `_.reduce`; this method transforms `object` to a new\n * `accumulator` object which is the result of running each of its own\n * enumerable string keyed properties thru `iteratee`, with each invocation\n * potentially mutating the `accumulator` object. If `accumulator` is not\n * provided, a new object with the same `[[Prototype]]` will be used. The\n * iteratee is invoked with four arguments: (accumulator, value, key, object).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The custom accumulator value.\n * @returns {*} Returns the accumulated value.\n * @example\n *\n * _.transform([2, 3, 4], function(result, n) {\n * result.push(n *= n);\n * return n % 2 == 0;\n * }, []);\n * // => [4, 9]\n *\n * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] }\n */\n function transform(object, iteratee, accumulator) {\n var isArr = isArray(object),\n isArrLike = isArr || isBuffer(object) || isTypedArray(object);\n\n iteratee = getIteratee(iteratee, 4);\n if (accumulator == null) {\n var Ctor = object && object.constructor;\n if (isArrLike) {\n accumulator = isArr ? new Ctor : [];\n }\n else if (isObject(object)) {\n accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {};\n }\n else {\n accumulator = {};\n }\n }\n (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) {\n return iteratee(accumulator, value, index, object);\n });\n return accumulator;\n }\n\n /**\n * Removes the property at `path` of `object`.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 7 } }] };\n * _.unset(object, 'a[0].b.c');\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n *\n * _.unset(object, ['a', '0', 'b', 'c']);\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n */\n function unset(object, path) {\n return object == null ? true : baseUnset(object, path);\n }\n\n /**\n * This method is like `_.set` except that accepts `updater` to produce the\n * value to set. Use `_.updateWith` to customize `path` creation. The `updater`\n * is invoked with one argument: (value).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.update(object, 'a[0].b.c', function(n) { return n * n; });\n * console.log(object.a[0].b.c);\n * // => 9\n *\n * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; });\n * console.log(object.x[0].y.z);\n * // => 0\n */\n function update(object, path, updater) {\n return object == null ? object : baseUpdate(object, path, castFunction(updater));\n }\n\n /**\n * This method is like `_.update` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.updateWith(object, '[0][1]', _.constant('a'), Object);\n * // => { '0': { '1': 'a' } }\n */\n function updateWith(object, path, updater, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer);\n }\n\n /**\n * Creates an array of the own enumerable string keyed property values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.values(new Foo);\n * // => [1, 2] (iteration order is not guaranteed)\n *\n * _.values('hi');\n * // => ['h', 'i']\n */\n function values(object) {\n return object == null ? [] : baseValues(object, keys(object));\n }\n\n /**\n * Creates an array of the own and inherited enumerable string keyed property\n * values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.valuesIn(new Foo);\n * // => [1, 2, 3] (iteration order is not guaranteed)\n */\n function valuesIn(object) {\n return object == null ? [] : baseValues(object, keysIn(object));\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Clamps `number` within the inclusive `lower` and `upper` bounds.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Number\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n * @example\n *\n * _.clamp(-10, -5, 5);\n * // => -5\n *\n * _.clamp(10, -5, 5);\n * // => 5\n */\n function clamp(number, lower, upper) {\n if (upper === undefined) {\n upper = lower;\n lower = undefined;\n }\n if (upper !== undefined) {\n upper = toNumber(upper);\n upper = upper === upper ? upper : 0;\n }\n if (lower !== undefined) {\n lower = toNumber(lower);\n lower = lower === lower ? lower : 0;\n }\n return baseClamp(toNumber(number), lower, upper);\n }\n\n /**\n * Checks if `n` is between `start` and up to, but not including, `end`. If\n * `end` is not specified, it's set to `start` with `start` then set to `0`.\n * If `start` is greater than `end` the params are swapped to support\n * negative ranges.\n *\n * @static\n * @memberOf _\n * @since 3.3.0\n * @category Number\n * @param {number} number The number to check.\n * @param {number} [start=0] The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n * @see _.range, _.rangeRight\n * @example\n *\n * _.inRange(3, 2, 4);\n * // => true\n *\n * _.inRange(4, 8);\n * // => true\n *\n * _.inRange(4, 2);\n * // => false\n *\n * _.inRange(2, 2);\n * // => false\n *\n * _.inRange(1.2, 2);\n * // => true\n *\n * _.inRange(5.2, 4);\n * // => false\n *\n * _.inRange(-3, -2, -6);\n * // => true\n */\n function inRange(number, start, end) {\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n number = toNumber(number);\n return baseInRange(number, start, end);\n }\n\n /**\n * Produces a random number between the inclusive `lower` and `upper` bounds.\n * If only one argument is provided a number between `0` and the given number\n * is returned. If `floating` is `true`, or either `lower` or `upper` are\n * floats, a floating-point number is returned instead of an integer.\n *\n * **Note:** JavaScript follows the IEEE-754 standard for resolving\n * floating-point values which can produce unexpected results.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Number\n * @param {number} [lower=0] The lower bound.\n * @param {number} [upper=1] The upper bound.\n * @param {boolean} [floating] Specify returning a floating-point number.\n * @returns {number} Returns the random number.\n * @example\n *\n * _.random(0, 5);\n * // => an integer between 0 and 5\n *\n * _.random(5);\n * // => also an integer between 0 and 5\n *\n * _.random(5, true);\n * // => a floating-point number between 0 and 5\n *\n * _.random(1.2, 5.2);\n * // => a floating-point number between 1.2 and 5.2\n */\n function random(lower, upper, floating) {\n if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) {\n upper = floating = undefined;\n }\n if (floating === undefined) {\n if (typeof upper == 'boolean') {\n floating = upper;\n upper = undefined;\n }\n else if (typeof lower == 'boolean') {\n floating = lower;\n lower = undefined;\n }\n }\n if (lower === undefined && upper === undefined) {\n lower = 0;\n upper = 1;\n }\n else {\n lower = toFinite(lower);\n if (upper === undefined) {\n upper = lower;\n lower = 0;\n } else {\n upper = toFinite(upper);\n }\n }\n if (lower > upper) {\n var temp = lower;\n lower = upper;\n upper = temp;\n }\n if (floating || lower % 1 || upper % 1) {\n var rand = nativeRandom();\n return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper);\n }\n return baseRandom(lower, upper);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the camel cased string.\n * @example\n *\n * _.camelCase('Foo Bar');\n * // => 'fooBar'\n *\n * _.camelCase('--foo-bar--');\n * // => 'fooBar'\n *\n * _.camelCase('__FOO_BAR__');\n * // => 'fooBar'\n */\n var camelCase = createCompounder(function(result, word, index) {\n word = word.toLowerCase();\n return result + (index ? capitalize(word) : word);\n });\n\n /**\n * Converts the first character of `string` to upper case and the remaining\n * to lower case.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to capitalize.\n * @returns {string} Returns the capitalized string.\n * @example\n *\n * _.capitalize('FRED');\n * // => 'Fred'\n */\n function capitalize(string) {\n return upperFirst(toString(string).toLowerCase());\n }\n\n /**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\n function deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n }\n\n /**\n * Checks if `string` ends with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=string.length] The position to search up to.\n * @returns {boolean} Returns `true` if `string` ends with `target`,\n * else `false`.\n * @example\n *\n * _.endsWith('abc', 'c');\n * // => true\n *\n * _.endsWith('abc', 'b');\n * // => false\n *\n * _.endsWith('abc', 'b', 2);\n * // => true\n */\n function endsWith(string, target, position) {\n string = toString(string);\n target = baseToString(target);\n\n var length = string.length;\n position = position === undefined\n ? length\n : baseClamp(toInteger(position), 0, length);\n\n var end = position;\n position -= target.length;\n return position >= 0 && string.slice(position, end) == target;\n }\n\n /**\n * Converts the characters \"&\", \"<\", \">\", '\"', and \"'\" in `string` to their\n * corresponding HTML entities.\n *\n * **Note:** No other characters are escaped. To escape additional\n * characters use a third-party library like [_he_](https://mths.be/he).\n *\n * Though the \">\" character is escaped for symmetry, characters like\n * \">\" and \"/\" don't need escaping in HTML and have no special meaning\n * unless they're part of a tag or unquoted attribute value. See\n * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)\n * (under \"semi-related fun fact\") for more details.\n *\n * When working with HTML you should always\n * [quote attribute values](http://wonko.com/post/html-escaping) to reduce\n * XSS vectors.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escape('fred, barney, & pebbles');\n * // => 'fred, barney, & pebbles'\n */\n function escape(string) {\n string = toString(string);\n return (string && reHasUnescapedHtml.test(string))\n ? string.replace(reUnescapedHtml, escapeHtmlChar)\n : string;\n }\n\n /**\n * Escapes the `RegExp` special characters \"^\", \"$\", \"\\\", \".\", \"*\", \"+\",\n * \"?\", \"(\", \")\", \"[\", \"]\", \"{\", \"}\", and \"|\" in `string`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escapeRegExp('[lodash](https://lodash.com/)');\n * // => '\\[lodash\\]\\(https://lodash\\.com/\\)'\n */\n function escapeRegExp(string) {\n string = toString(string);\n return (string && reHasRegExpChar.test(string))\n ? string.replace(reRegExpChar, '\\\\$&')\n : string;\n }\n\n /**\n * Converts `string` to\n * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the kebab cased string.\n * @example\n *\n * _.kebabCase('Foo Bar');\n * // => 'foo-bar'\n *\n * _.kebabCase('fooBar');\n * // => 'foo-bar'\n *\n * _.kebabCase('__FOO_BAR__');\n * // => 'foo-bar'\n */\n var kebabCase = createCompounder(function(result, word, index) {\n return result + (index ? '-' : '') + word.toLowerCase();\n });\n\n /**\n * Converts `string`, as space separated words, to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the lower cased string.\n * @example\n *\n * _.lowerCase('--Foo-Bar--');\n * // => 'foo bar'\n *\n * _.lowerCase('fooBar');\n * // => 'foo bar'\n *\n * _.lowerCase('__FOO_BAR__');\n * // => 'foo bar'\n */\n var lowerCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + word.toLowerCase();\n });\n\n /**\n * Converts the first character of `string` to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.lowerFirst('Fred');\n * // => 'fred'\n *\n * _.lowerFirst('FRED');\n * // => 'fRED'\n */\n var lowerFirst = createCaseFirst('toLowerCase');\n\n /**\n * Pads `string` on the left and right sides if it's shorter than `length`.\n * Padding characters are truncated if they can't be evenly divided by `length`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.pad('abc', 8);\n * // => ' abc '\n *\n * _.pad('abc', 8, '_-');\n * // => '_-abc_-_'\n *\n * _.pad('abc', 3);\n * // => 'abc'\n */\n function pad(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n if (!length || strLength >= length) {\n return string;\n }\n var mid = (length - strLength) / 2;\n return (\n createPadding(nativeFloor(mid), chars) +\n string +\n createPadding(nativeCeil(mid), chars)\n );\n }\n\n /**\n * Pads `string` on the right side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padEnd('abc', 6);\n * // => 'abc '\n *\n * _.padEnd('abc', 6, '_-');\n * // => 'abc_-_'\n *\n * _.padEnd('abc', 3);\n * // => 'abc'\n */\n function padEnd(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (string + createPadding(length - strLength, chars))\n : string;\n }\n\n /**\n * Pads `string` on the left side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padStart('abc', 6);\n * // => ' abc'\n *\n * _.padStart('abc', 6, '_-');\n * // => '_-_abc'\n *\n * _.padStart('abc', 3);\n * // => 'abc'\n */\n function padStart(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (createPadding(length - strLength, chars) + string)\n : string;\n }\n\n /**\n * Converts `string` to an integer of the specified radix. If `radix` is\n * `undefined` or `0`, a `radix` of `10` is used unless `value` is a\n * hexadecimal, in which case a `radix` of `16` is used.\n *\n * **Note:** This method aligns with the\n * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category String\n * @param {string} string The string to convert.\n * @param {number} [radix=10] The radix to interpret `value` by.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.parseInt('08');\n * // => 8\n *\n * _.map(['6', '08', '10'], _.parseInt);\n * // => [6, 8, 10]\n */\n function parseInt(string, radix, guard) {\n if (guard || radix == null) {\n radix = 0;\n } else if (radix) {\n radix = +radix;\n }\n return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0);\n }\n\n /**\n * Repeats the given string `n` times.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to repeat.\n * @param {number} [n=1] The number of times to repeat the string.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {string} Returns the repeated string.\n * @example\n *\n * _.repeat('*', 3);\n * // => '***'\n *\n * _.repeat('abc', 2);\n * // => 'abcabc'\n *\n * _.repeat('abc', 0);\n * // => ''\n */\n function repeat(string, n, guard) {\n if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n return baseRepeat(toString(string), n);\n }\n\n /**\n * Replaces matches for `pattern` in `string` with `replacement`.\n *\n * **Note:** This method is based on\n * [`String#replace`](https://mdn.io/String/replace).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to modify.\n * @param {RegExp|string} pattern The pattern to replace.\n * @param {Function|string} replacement The match replacement.\n * @returns {string} Returns the modified string.\n * @example\n *\n * _.replace('Hi Fred', 'Fred', 'Barney');\n * // => 'Hi Barney'\n */\n function replace() {\n var args = arguments,\n string = toString(args[0]);\n\n return args.length < 3 ? string : string.replace(args[1], args[2]);\n }\n\n /**\n * Converts `string` to\n * [snake case](https://en.wikipedia.org/wiki/Snake_case).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the snake cased string.\n * @example\n *\n * _.snakeCase('Foo Bar');\n * // => 'foo_bar'\n *\n * _.snakeCase('fooBar');\n * // => 'foo_bar'\n *\n * _.snakeCase('--FOO-BAR--');\n * // => 'foo_bar'\n */\n var snakeCase = createCompounder(function(result, word, index) {\n return result + (index ? '_' : '') + word.toLowerCase();\n });\n\n /**\n * Splits `string` by `separator`.\n *\n * **Note:** This method is based on\n * [`String#split`](https://mdn.io/String/split).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to split.\n * @param {RegExp|string} separator The separator pattern to split by.\n * @param {number} [limit] The length to truncate results to.\n * @returns {Array} Returns the string segments.\n * @example\n *\n * _.split('a-b-c', '-', 2);\n * // => ['a', 'b']\n */\n function split(string, separator, limit) {\n if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) {\n separator = limit = undefined;\n }\n limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0;\n if (!limit) {\n return [];\n }\n string = toString(string);\n if (string && (\n typeof separator == 'string' ||\n (separator != null && !isRegExp(separator))\n )) {\n separator = baseToString(separator);\n if (!separator && hasUnicode(string)) {\n return castSlice(stringToArray(string), 0, limit);\n }\n }\n return string.split(separator, limit);\n }\n\n /**\n * Converts `string` to\n * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).\n *\n * @static\n * @memberOf _\n * @since 3.1.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the start cased string.\n * @example\n *\n * _.startCase('--foo-bar--');\n * // => 'Foo Bar'\n *\n * _.startCase('fooBar');\n * // => 'Foo Bar'\n *\n * _.startCase('__FOO_BAR__');\n * // => 'FOO BAR'\n */\n var startCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + upperFirst(word);\n });\n\n /**\n * Checks if `string` starts with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=0] The position to search from.\n * @returns {boolean} Returns `true` if `string` starts with `target`,\n * else `false`.\n * @example\n *\n * _.startsWith('abc', 'a');\n * // => true\n *\n * _.startsWith('abc', 'b');\n * // => false\n *\n * _.startsWith('abc', 'b', 1);\n * // => true\n */\n function startsWith(string, target, position) {\n string = toString(string);\n position = position == null\n ? 0\n : baseClamp(toInteger(position), 0, string.length);\n\n target = baseToString(target);\n return string.slice(position, position + target.length) == target;\n }\n\n /**\n * Creates a compiled template function that can interpolate data properties\n * in \"interpolate\" delimiters, HTML-escape interpolated data properties in\n * \"escape\" delimiters, and execute JavaScript in \"evaluate\" delimiters. Data\n * properties may be accessed as free variables in the template. If a setting\n * object is given, it takes precedence over `_.templateSettings` values.\n *\n * **Note:** In the development build `_.template` utilizes\n * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)\n * for easier debugging.\n *\n * For more information on precompiling templates see\n * [lodash's custom builds documentation](https://lodash.com/custom-builds).\n *\n * For more information on Chrome extension sandboxes see\n * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The template string.\n * @param {Object} [options={}] The options object.\n * @param {RegExp} [options.escape=_.templateSettings.escape]\n * The HTML \"escape\" delimiter.\n * @param {RegExp} [options.evaluate=_.templateSettings.evaluate]\n * The \"evaluate\" delimiter.\n * @param {Object} [options.imports=_.templateSettings.imports]\n * An object to import into the template as free variables.\n * @param {RegExp} [options.interpolate=_.templateSettings.interpolate]\n * The \"interpolate\" delimiter.\n * @param {string} [options.sourceURL='lodash.templateSources[n]']\n * The sourceURL of the compiled template.\n * @param {string} [options.variable='obj']\n * The data object variable name.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the compiled template function.\n * @example\n *\n * // Use the \"interpolate\" delimiter to create a compiled template.\n * var compiled = _.template('hello <%= user %>!');\n * compiled({ 'user': 'fred' });\n * // => 'hello fred!'\n *\n * // Use the HTML \"escape\" delimiter to escape data property values.\n * var compiled = _.template('<%- value %>');\n * compiled({ 'value': '