@depay/widgets 12.12.0 → 12.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -84,7 +84,7 @@ Zf((function(t,e){}));var ek=Zf((function(t){t.exports=tk})),nk=ek.createContext
84
84
  * https://github.com/MikeMcl/decimal.js
85
85
  * Copyright (c) 2022 Michael Mclaughlin <M8ch88l@gmail.com>
86
86
  * MIT Licence
87
- */function rT(t){var e,n,r,i=t.length-1,o="",a=t[0];if(i>0){for(o+=a,e=1;e<i;e++)(n=7-(r=t[e]+"").length)&&(o+=pT(n)),o+=r;(n=7-(r=(a=t[e])+"").length)&&(o+=pT(n))}else if(0===a)return"0";for(;a%10==0;)a/=10;return o+a}function iT(t,e,n){if(t!==~~t||t<e||t>n)throw Error(Vk+t)}function oT(t,e,n,r){var i,o,a,s;for(o=t[0];o>=10;o/=10)--e;return--e<0?(e+=7,i=0):(i=Math.ceil((e+1)/7),e%=7),o=qk(10,7-e),s=t[i]%o|0,null==r?e<3?(0==e?s=s/100|0:1==e&&(s=s/10|0),a=n<4&&99999==s||n>3&&49999==s||5e4==s||0==s):a=(n<4&&s+1==o||n>3&&s+1==o/2)&&(t[i+1]/o/100|0)==qk(10,e-2)-1||(s==o/2||0==s)&&0==(t[i+1]/o/100|0):e<4?(0==e?s=s/1e3|0:1==e?s=s/100|0:2==e&&(s=s/10|0),a=(r||n<4)&&9999==s||!r&&n>3&&4999==s):a=((r||n<4)&&s+1==o||!r&&n>3&&s+1==o/2)&&(t[i+1]/o/1e3|0)==qk(10,e-3)-1,a}function aT(t,e,n){for(var r,i,o=[0],a=0,s=t.length;a<s;){for(i=o.length;i--;)o[i]*=e;for(o[0]+=Uk.indexOf(t.charAt(a++)),r=0;r<o.length;r++)o[r]>n-1&&(void 0===o[r+1]&&(o[r+1]=0),o[r+1]+=o[r]/n|0,o[r]%=n)}return o.reverse()}nT.absoluteValue=nT.abs=function(){var t=new this.constructor(this);return t.s<0&&(t.s=1),uT(t)},nT.ceil=function(){return uT(new this.constructor(this),this.e+1,2)},nT.clampedTo=nT.clamp=function(t,e){var n=this,r=n.constructor;if(t=new r(t),e=new r(e),!t.s||!e.s)return new r(NaN);if(t.gt(e))throw Error(Vk+e);return n.cmp(t)<0?t:n.cmp(e)>0?e:new r(n)},nT.comparedTo=nT.cmp=function(t){var e,n,r,i,o=this,a=o.d,s=(t=new o.constructor(t)).d,u=o.s,c=t.s;if(!a||!s)return u&&c?u!==c?u:a===s?0:!a^u<0?1:-1:NaN;if(!a[0]||!s[0])return a[0]?u:s[0]?-c:0;if(u!==c)return u;if(o.e!==t.e)return o.e>t.e^u<0?1:-1;for(e=0,n=(r=a.length)<(i=s.length)?r:i;e<n;++e)if(a[e]!==s[e])return a[e]>s[e]^u<0?1:-1;return r===i?0:r>i^u<0?1:-1},nT.cosine=nT.cos=function(){var t,e,n=this,r=n.constructor;return n.d?n.d[0]?(t=r.precision,e=r.rounding,r.precision=t+Math.max(n.e,n.sd())+7,r.rounding=1,n=function(t,e){var n,r,i;if(e.isZero())return e;(r=e.d.length)<32?i=(1/NT(4,n=Math.ceil(r/3))).toString():(n=16,i="2.3283064365386962890625e-10");t.precision+=n,e=IT(t,1,e.times(i),new t(1));for(var o=n;o--;){var a=e.times(e);e=a.times(a).minus(a).times(8).plus(1)}return t.precision-=n,e}(r,ET(r,n)),r.precision=t,r.rounding=e,uT(2==_k||3==_k?n.neg():n,t,e,!0)):new r(1):new r(NaN)},nT.cubeRoot=nT.cbrt=function(){var t,e,n,r,i,o,a,s,u,c,l=this,h=l.constructor;if(!l.isFinite()||l.isZero())return new h(l);for(Fk=!1,(o=l.s*qk(l.s*l,1/3))&&Math.abs(o)!=1/0?r=new h(o.toString()):(n=rT(l.d),(o=((t=l.e)-n.length+1)%3)&&(n+=1==o||-2==o?"0":"00"),o=qk(n,1/3),t=Gk((t+1)/3)-(t%3==(t<0?-1:2)),(r=new h(n=o==1/0?"5e"+t:(n=o.toExponential()).slice(0,n.indexOf("e")+1)+t)).s=l.s),a=(t=h.precision)+3;;)if(c=(u=(s=r).times(s).times(s)).plus(l),r=sT(c.plus(l).times(s),c.plus(u),a+2,1),rT(s.d).slice(0,a)===(n=rT(r.d)).slice(0,a)){if("9999"!=(n=n.slice(a-3,a+1))&&(i||"4999"!=n)){+n&&(+n.slice(1)||"5"!=n.charAt(0))||(uT(r,t+1,1),e=!r.times(r).times(r).eq(l));break}if(!i&&(uT(s,t+1,0),s.times(s).times(s).eq(l))){r=s;break}a+=4,i=1}return Fk=!0,uT(r,t,h.rounding,e)},nT.decimalPlaces=nT.dp=function(){var t,e=this.d,n=NaN;if(e){if(n=7*((t=e.length-1)-Gk(this.e/7)),t=e[t])for(;t%10==0;t/=10)n--;n<0&&(n=0)}return n},nT.dividedBy=nT.div=function(t){return sT(this,new this.constructor(t))},nT.dividedToIntegerBy=nT.divToInt=function(t){var e=this.constructor;return uT(sT(this,new e(t),0,1,1),e.precision,e.rounding)},nT.equals=nT.eq=function(t){return 0===this.cmp(t)},nT.floor=function(){return uT(new this.constructor(this),this.e+1,3)},nT.greaterThan=nT.gt=function(t){return this.cmp(t)>0},nT.greaterThanOrEqualTo=nT.gte=function(t){var e=this.cmp(t);return 1==e||0===e},nT.hyperbolicCosine=nT.cosh=function(){var t,e,n,r,i,o=this,a=o.constructor,s=new a(1);if(!o.isFinite())return new a(o.s?1/0:NaN);if(o.isZero())return s;n=a.precision,r=a.rounding,a.precision=n+Math.max(o.e,o.sd())+4,a.rounding=1,(i=o.d.length)<32?e=(1/NT(4,t=Math.ceil(i/3))).toString():(t=16,e="2.3283064365386962890625e-10"),o=IT(a,1,o.times(e),new a(1),!0);for(var u,c=t,l=new a(8);c--;)u=o.times(o),o=s.minus(u.times(l.minus(u.times(l))));return uT(o,a.precision=n,a.rounding=r,!0)},nT.hyperbolicSine=nT.sinh=function(){var t,e,n,r,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(e=o.precision,n=o.rounding,o.precision=e+Math.max(i.e,i.sd())+4,o.rounding=1,(r=i.d.length)<3)i=IT(o,2,i,i,!0);else{t=(t=1.4*Math.sqrt(r))>16?16:0|t,i=IT(o,2,i=i.times(1/NT(5,t)),i,!0);for(var a,s=new o(5),u=new o(16),c=new o(20);t--;)a=i.times(i),i=i.times(s.plus(a.times(u.times(a).plus(c))))}return o.precision=e,o.rounding=n,uT(i,e,n,!0)},nT.hyperbolicTangent=nT.tanh=function(){var t,e,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(t=r.precision,e=r.rounding,r.precision=t+7,r.rounding=1,sT(n.sinh(),n.cosh(),r.precision=t,r.rounding=e)):new r(n.s)},nT.inverseCosine=nT.acos=function(){var t,e=this,n=e.constructor,r=e.abs().cmp(1),i=n.precision,o=n.rounding;return-1!==r?0===r?e.isNeg()?dT(n,i,o):new n(0):new n(NaN):e.isZero()?dT(n,i+4,o).times(.5):(n.precision=i+6,n.rounding=1,e=e.asin(),t=dT(n,i+4,o).times(.5),n.precision=i,n.rounding=o,t.minus(e))},nT.inverseHyperbolicCosine=nT.acosh=function(){var t,e,n=this,r=n.constructor;return n.lte(1)?new r(n.eq(1)?0:NaN):n.isFinite()?(t=r.precision,e=r.rounding,r.precision=t+Math.max(Math.abs(n.e),n.sd())+4,r.rounding=1,Fk=!1,n=n.times(n).minus(1).sqrt().plus(n),Fk=!0,r.precision=t,r.rounding=e,n.ln()):new r(n)},nT.inverseHyperbolicSine=nT.asinh=function(){var t,e,n=this,r=n.constructor;return!n.isFinite()||n.isZero()?new r(n):(t=r.precision,e=r.rounding,r.precision=t+2*Math.max(Math.abs(n.e),n.sd())+6,r.rounding=1,Fk=!1,n=n.times(n).plus(1).sqrt().plus(n),Fk=!0,r.precision=t,r.rounding=e,n.ln())},nT.inverseHyperbolicTangent=nT.atanh=function(){var t,e,n,r,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(t=o.precision,e=o.rounding,r=i.sd(),Math.max(r,t)<2*-i.e-1?uT(new o(i),t,e,!0):(o.precision=n=r-i.e,i=sT(i.plus(1),new o(1).minus(i),n+t,1),o.precision=t+4,o.rounding=1,i=i.ln(),o.precision=t,o.rounding=e,i.times(.5))):new o(NaN)},nT.inverseSine=nT.asin=function(){var t,e,n,r,i=this,o=i.constructor;return i.isZero()?new o(i):(e=i.abs().cmp(1),n=o.precision,r=o.rounding,-1!==e?0===e?((t=dT(o,n+4,r).times(.5)).s=i.s,t):new o(NaN):(o.precision=n+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=n,o.rounding=r,i.times(2)))},nT.inverseTangent=nT.atan=function(){var t,e,n,r,i,o,a,s,u,c=this,l=c.constructor,h=l.precision,d=l.rounding;if(c.isFinite()){if(c.isZero())return new l(c);if(c.abs().eq(1)&&h+4<=eT)return(a=dT(l,h+4,d).times(.25)).s=c.s,a}else{if(!c.s)return new l(NaN);if(h+4<=eT)return(a=dT(l,h+4,d).times(.5)).s=c.s,a}for(l.precision=s=h+10,l.rounding=1,t=n=Math.min(28,s/7+2|0);t;--t)c=c.div(c.times(c).plus(1).sqrt().plus(1));for(Fk=!1,e=Math.ceil(s/7),r=1,u=c.times(c),a=new l(c),i=c;-1!==t;)if(i=i.times(u),o=a.minus(i.div(r+=2)),i=i.times(u),void 0!==(a=o.plus(i.div(r+=2))).d[e])for(t=e;a.d[t]===o.d[t]&&t--;);return n&&(a=a.times(2<<n-1)),Fk=!0,uT(a,l.precision=h,l.rounding=d,!0)},nT.isFinite=function(){return!!this.d},nT.isInteger=nT.isInt=function(){return!!this.d&&Gk(this.e/7)>this.d.length-2},nT.isNaN=function(){return!this.s},nT.isNegative=nT.isNeg=function(){return this.s<0},nT.isPositive=nT.isPos=function(){return this.s>0},nT.isZero=function(){return!!this.d&&0===this.d[0]},nT.lessThan=nT.lt=function(t){return this.cmp(t)<0},nT.lessThanOrEqualTo=nT.lte=function(t){return this.cmp(t)<1},nT.logarithm=nT.log=function(t){var e,n,r,i,o,a,s,u,c=this,l=c.constructor,h=l.precision,d=l.rounding;if(null==t)t=new l(10),e=!0;else{if(n=(t=new l(t)).d,t.s<0||!n||!n[0]||t.eq(1))return new l(NaN);e=t.eq(10)}if(n=c.d,c.s<0||!n||!n[0]||c.eq(1))return new l(n&&!n[0]?-1/0:1!=c.s?NaN:n?0:1/0);if(e)if(n.length>1)o=!0;else{for(i=n[0];i%10==0;)i/=10;o=1!==i}if(Fk=!1,a=wT(c,s=h+5),r=e?hT(l,s+10):wT(t,s),oT((u=sT(a,r,s,1)).d,i=h,d))do{if(a=wT(c,s+=10),r=e?hT(l,s+10):wT(t,s),u=sT(a,r,s,1),!o){+rT(u.d).slice(i+1,i+15)+1==1e14&&(u=uT(u,h+1,0));break}}while(oT(u.d,i+=10,d));return Fk=!0,uT(u,h,d)},nT.minus=nT.sub=function(t){var e,n,r,i,o,a,s,u,c,l,h,d,f=this,p=f.constructor;if(t=new p(t),!f.d||!t.d)return f.s&&t.s?f.d?t.s=-t.s:t=new p(t.d||f.s!==t.s?f:NaN):t=new p(NaN),t;if(f.s!=t.s)return t.s=-t.s,f.plus(t);if(c=f.d,d=t.d,s=p.precision,u=p.rounding,!c[0]||!d[0]){if(d[0])t.s=-t.s;else{if(!c[0])return new p(3===u?-0:0);t=new p(f)}return Fk?uT(t,s,u):t}if(n=Gk(t.e/7),l=Gk(f.e/7),c=c.slice(),o=l-n){for((h=o<0)?(e=c,o=-o,a=d.length):(e=d,n=l,a=c.length),o>(r=Math.max(Math.ceil(s/7),a)+2)&&(o=r,e.length=1),e.reverse(),r=o;r--;)e.push(0);e.reverse()}else{for((h=(r=c.length)<(a=d.length))&&(a=r),r=0;r<a;r++)if(c[r]!=d[r]){h=c[r]<d[r];break}o=0}for(h&&(e=c,c=d,d=e,t.s=-t.s),a=c.length,r=d.length-a;r>0;--r)c[a++]=0;for(r=d.length;r>o;){if(c[--r]<d[r]){for(i=r;i&&0===c[--i];)c[i]=$k-1;--c[i],c[r]+=$k}c[r]-=d[r]}for(;0===c[--a];)c.pop();for(;0===c[0];c.shift())--n;return c[0]?(t.d=c,t.e=lT(c,n),Fk?uT(t,s,u):t):new p(3===u?-0:0)},nT.modulo=nT.mod=function(t){var e,n=this,r=n.constructor;return t=new r(t),!n.d||!t.s||t.d&&!t.d[0]?new r(NaN):!t.d||n.d&&!n.d[0]?uT(new r(n),r.precision,r.rounding):(Fk=!1,9==r.modulo?(e=sT(n,t.abs(),0,3,1)).s*=t.s:e=sT(n,t,0,r.modulo,1),e=e.times(t),Fk=!0,n.minus(e))},nT.naturalExponential=nT.exp=function(){return vT(this)},nT.naturalLogarithm=nT.ln=function(){return wT(this)},nT.negated=nT.neg=function(){var t=new this.constructor(this);return t.s=-t.s,uT(t)},nT.plus=nT.add=function(t){var e,n,r,i,o,a,s,u,c,l,h=this,d=h.constructor;if(t=new d(t),!h.d||!t.d)return h.s&&t.s?h.d||(t=new d(t.d||h.s===t.s?h:NaN)):t=new d(NaN),t;if(h.s!=t.s)return t.s=-t.s,h.minus(t);if(c=h.d,l=t.d,s=d.precision,u=d.rounding,!c[0]||!l[0])return l[0]||(t=new d(h)),Fk?uT(t,s,u):t;if(o=Gk(h.e/7),r=Gk(t.e/7),c=c.slice(),i=o-r){for(i<0?(n=c,i=-i,a=l.length):(n=l,r=o,a=c.length),i>(a=(o=Math.ceil(s/7))>a?o+1:a+1)&&(i=a,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for((a=c.length)-(i=l.length)<0&&(i=a,n=l,l=c,c=n),e=0;i;)e=(c[--i]=c[i]+l[i]+e)/$k|0,c[i]%=$k;for(e&&(c.unshift(e),++r),a=c.length;0==c[--a];)c.pop();return t.d=c,t.e=lT(c,r),Fk?uT(t,s,u):t},nT.precision=nT.sd=function(t){var e,n=this;if(void 0!==t&&t!==!!t&&1!==t&&0!==t)throw Error(Vk+t);return n.d?(e=fT(n.d),t&&n.e+1>e&&(e=n.e+1)):e=NaN,e},nT.round=function(){var t=this,e=t.constructor;return uT(new e(t),t.e+1,e.rounding)},nT.sine=nT.sin=function(){var t,e,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(t=r.precision,e=r.rounding,r.precision=t+Math.max(n.e,n.sd())+7,r.rounding=1,n=function(t,e){var n,r=e.d.length;if(r<3)return e.isZero()?e:IT(t,2,e,e);n=(n=1.4*Math.sqrt(r))>16?16:0|n,e=e.times(1/NT(5,n)),e=IT(t,2,e,e);for(var i,o=new t(5),a=new t(16),s=new t(20);n--;)i=e.times(e),e=e.times(o.plus(i.times(a.times(i).minus(s))));return e}(r,ET(r,n)),r.precision=t,r.rounding=e,uT(_k>2?n.neg():n,t,e,!0)):new r(NaN)},nT.squareRoot=nT.sqrt=function(){var t,e,n,r,i,o,a=this,s=a.d,u=a.e,c=a.s,l=a.constructor;if(1!==c||!s||!s[0])return new l(!c||c<0&&(!s||s[0])?NaN:s?a:1/0);for(Fk=!1,0==(c=Math.sqrt(+a))||c==1/0?(((e=rT(s)).length+u)%2==0&&(e+="0"),c=Math.sqrt(e),u=Gk((u+1)/2)-(u<0||u%2),r=new l(e=c==1/0?"5e"+u:(e=c.toExponential()).slice(0,e.indexOf("e")+1)+u)):r=new l(c.toString()),n=(u=l.precision)+3;;)if(r=(o=r).plus(sT(a,o,n+2,1)).times(.5),rT(o.d).slice(0,n)===(e=rT(r.d)).slice(0,n)){if("9999"!=(e=e.slice(n-3,n+1))&&(i||"4999"!=e)){+e&&(+e.slice(1)||"5"!=e.charAt(0))||(uT(r,u+1,1),t=!r.times(r).eq(a));break}if(!i&&(uT(o,u+1,0),o.times(o).eq(a))){r=o;break}n+=4,i=1}return Fk=!0,uT(r,u,l.rounding,t)},nT.tangent=nT.tan=function(){var t,e,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(t=r.precision,e=r.rounding,r.precision=t+10,r.rounding=1,(n=n.sin()).s=1,n=sT(n,new r(1).minus(n.times(n)).sqrt(),t+10,0),r.precision=t,r.rounding=e,uT(2==_k||4==_k?n.neg():n,t,e,!0)):new r(NaN)},nT.times=nT.mul=function(t){var e,n,r,i,o,a,s,u,c,l=this,h=l.constructor,d=l.d,f=(t=new h(t)).d;if(t.s*=l.s,!(d&&d[0]&&f&&f[0]))return new h(!t.s||d&&!d[0]&&!f||f&&!f[0]&&!d?NaN:d&&f?0*t.s:t.s/0);for(n=Gk(l.e/7)+Gk(t.e/7),(u=d.length)<(c=f.length)&&(o=d,d=f,f=o,a=u,u=c,c=a),o=[],r=a=u+c;r--;)o.push(0);for(r=c;--r>=0;){for(e=0,i=u+r;i>r;)s=o[i]+f[r]*d[i-r-1]+e,o[i--]=s%$k|0,e=s/$k|0;o[i]=(o[i]+e)%$k|0}for(;!o[--a];)o.pop();return e?++n:o.shift(),t.d=o,t.e=lT(o,n),Fk?uT(t,h.precision,h.rounding):t},nT.toBinary=function(t,e){return xT(this,2,t,e)},nT.toDecimalPlaces=nT.toDP=function(t,e){var n=this,r=n.constructor;return n=new r(n),void 0===t?n:(iT(t,0,1e9),void 0===e?e=r.rounding:iT(e,0,8),uT(n,t+n.e+1,e))},nT.toExponential=function(t,e){var n,r=this,i=r.constructor;return void 0===t?n=cT(r,!0):(iT(t,0,1e9),void 0===e?e=i.rounding:iT(e,0,8),n=cT(r=uT(new i(r),t+1,e),!0,t+1)),r.isNeg()&&!r.isZero()?"-"+n:n},nT.toFixed=function(t,e){var n,r,i=this,o=i.constructor;return void 0===t?n=cT(i):(iT(t,0,1e9),void 0===e?e=o.rounding:iT(e,0,8),n=cT(r=uT(new o(i),t+i.e+1,e),!1,t+r.e+1)),i.isNeg()&&!i.isZero()?"-"+n:n},nT.toFraction=function(t){var e,n,r,i,o,a,s,u,c,l,h,d,f=this,p=f.d,y=f.constructor;if(!p)return new y(f);if(c=n=new y(1),r=u=new y(0),a=(o=(e=new y(r)).e=fT(p)-f.e-1)%7,e.d[0]=qk(10,a<0?7+a:a),null==t)t=o>0?e:c;else{if(!(s=new y(t)).isInt()||s.lt(c))throw Error(Vk+s);t=s.gt(e)?o>0?e:c:s}for(Fk=!1,s=new y(rT(p)),l=y.precision,y.precision=o=7*p.length*2;h=sT(s,e,0,1,1),1!=(i=n.plus(h.times(r))).cmp(t);)n=r,r=i,i=c,c=u.plus(h.times(i)),u=i,i=e,e=s.minus(h.times(i)),s=i;return i=sT(t.minus(n),r,0,1,1),u=u.plus(i.times(c)),n=n.plus(i.times(r)),u.s=c.s=f.s,d=sT(c,r,o,1).minus(f).abs().cmp(sT(u,n,o,1).minus(f).abs())<1?[c,r]:[u,n],y.precision=l,Fk=!0,d},nT.toHexadecimal=nT.toHex=function(t,e){return xT(this,16,t,e)},nT.toNearest=function(t,e){var n=this,r=n.constructor;if(n=new r(n),null==t){if(!n.d)return n;t=new r(1),e=r.rounding}else{if(t=new r(t),void 0===e?e=r.rounding:iT(e,0,8),!n.d)return t.s?n:t;if(!t.d)return t.s&&(t.s=n.s),t}return t.d[0]?(Fk=!1,n=sT(n,t,0,e,1).times(t),Fk=!0,uT(n)):(t.s=n.s,n=t),n},nT.toNumber=function(){return+this},nT.toOctal=function(t,e){return xT(this,8,t,e)},nT.toPower=nT.pow=function(t){var e,n,r,i,o,a,s=this,u=s.constructor,c=+(t=new u(t));if(!(s.d&&t.d&&s.d[0]&&t.d[0]))return new u(qk(+s,c));if((s=new u(s)).eq(1))return s;if(r=u.precision,o=u.rounding,t.eq(1))return uT(s,r,o);if((e=Gk(t.e/7))>=t.d.length-1&&(n=c<0?-c:c)<=9007199254740991)return i=yT(u,s,n,r),t.s<0?new u(1).div(i):uT(i,r,o);if((a=s.s)<0){if(e<t.d.length-1)return new u(NaN);if(0==(1&t.d[e])&&(a=1),0==s.e&&1==s.d[0]&&1==s.d.length)return s.s=a,s}return(e=0!=(n=qk(+s,c))&&isFinite(n)?new u(n+"").e:Gk(c*(Math.log("0."+rT(s.d))/Math.LN10+s.e+1)))>u.maxE+1||e<u.minE-1?new u(e>0?a/0:0):(Fk=!1,u.rounding=s.s=1,n=Math.min(12,(e+"").length),(i=vT(t.times(wT(s,r+n)),r)).d&&oT((i=uT(i,r+5,1)).d,r,o)&&(e=r+10,+rT((i=uT(vT(t.times(wT(s,e+n)),e),e+5,1)).d).slice(r+1,r+15)+1==1e14&&(i=uT(i,r+1,0))),i.s=a,Fk=!0,u.rounding=o,uT(i,r,o))},nT.toPrecision=function(t,e){var n,r=this,i=r.constructor;return void 0===t?n=cT(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(iT(t,1,1e9),void 0===e?e=i.rounding:iT(e,0,8),n=cT(r=uT(new i(r),t,e),t<=r.e||r.e<=i.toExpNeg,t)),r.isNeg()&&!r.isZero()?"-"+n:n},nT.toSignificantDigits=nT.toSD=function(t,e){var n=this.constructor;return void 0===t?(t=n.precision,e=n.rounding):(iT(t,1,1e9),void 0===e?e=n.rounding:iT(e,0,8)),uT(new n(this),t,e)},nT.toString=function(){var t=this,e=t.constructor,n=cT(t,t.e<=e.toExpNeg||t.e>=e.toExpPos);return t.isNeg()&&!t.isZero()?"-"+n:n},nT.truncated=nT.trunc=function(){return uT(new this.constructor(this),this.e+1,1)},nT.valueOf=nT.toJSON=function(){var t=this,e=t.constructor,n=cT(t,t.e<=e.toExpNeg||t.e>=e.toExpPos);return t.isNeg()?"-"+n:n};var sT=function(){function t(t,e,n){var r,i=0,o=t.length;for(t=t.slice();o--;)r=t[o]*e+i,t[o]=r%n|0,i=r/n|0;return i&&t.unshift(i),t}function e(t,e,n,r){var i,o;if(n!=r)o=n>r?1:-1;else for(i=o=0;i<n;i++)if(t[i]!=e[i]){o=t[i]>e[i]?1:-1;break}return o}function n(t,e,n,r){for(var i=0;n--;)t[n]-=i,i=t[n]<e[n]?1:0,t[n]=i*r+t[n]-e[n];for(;!t[0]&&t.length>1;)t.shift()}return function(r,i,o,a,s,u){var c,l,h,d,f,p,y,m,g,v,w,b,M,A,I,N,E,x,k,T,L=r.constructor,S=r.s==i.s?1:-1,j=r.d,D=i.d;if(!(j&&j[0]&&D&&D[0]))return new L(r.s&&i.s&&(j?!D||j[0]!=D[0]:D)?j&&0==j[0]||!D?0*S:S/0:NaN);for(u?(f=1,l=r.e-i.e):(u=$k,f=7,l=Gk(r.e/f)-Gk(i.e/f)),k=D.length,E=j.length,v=(g=new L(S)).d=[],h=0;D[h]==(j[h]||0);h++);if(D[h]>(j[h]||0)&&l--,null==o?(A=o=L.precision,a=L.rounding):A=s?o+(r.e-i.e)+1:o,A<0)v.push(1),p=!0;else{if(A=A/f+2|0,h=0,1==k){for(d=0,D=D[0],A++;(h<E||d)&&A--;h++)I=d*u+(j[h]||0),v[h]=I/D|0,d=I%D|0;p=d||h<E}else{for((d=u/(D[0]+1)|0)>1&&(D=t(D,d,u),j=t(j,d,u),k=D.length,E=j.length),N=k,b=(w=j.slice(0,k)).length;b<k;)w[b++]=0;(T=D.slice()).unshift(0),x=D[0],D[1]>=u/2&&++x;do{d=0,(c=e(D,w,k,b))<0?(M=w[0],k!=b&&(M=M*u+(w[1]||0)),(d=M/x|0)>1?(d>=u&&(d=u-1),1==(c=e(y=t(D,d,u),w,m=y.length,b=w.length))&&(d--,n(y,k<m?T:D,m,u))):(0==d&&(c=d=1),y=D.slice()),(m=y.length)<b&&y.unshift(0),n(w,y,b,u),-1==c&&(c=e(D,w,k,b=w.length))<1&&(d++,n(w,k<b?T:D,b,u)),b=w.length):0===c&&(d++,w=[0]),v[h++]=d,c&&w[0]?w[b++]=j[N]||0:(w=[j[N]],b=1)}while((N++<E||void 0!==w[0])&&A--);p=void 0!==w[0]}v[0]||v.shift()}if(1==f)g.e=l,Pk=p;else{for(h=1,d=v[0];d>=10;d/=10)h++;g.e=h+l*f-1,uT(g,s?o+g.e+1:o,a,p)}return g}}();function uT(t,e,n,r){var i,o,a,s,u,c,l,h,d,f=t.constructor;t:if(null!=e){if(!(h=t.d))return t;for(i=1,s=h[0];s>=10;s/=10)i++;if((o=e-i)<0)o+=7,a=e,u=(l=h[d=0])/qk(10,i-a-1)%10|0;else if((d=Math.ceil((o+1)/7))>=(s=h.length)){if(!r)break t;for(;s++<=d;)h.push(0);l=u=0,i=1,a=(o%=7)-7+1}else{for(l=s=h[d],i=1;s>=10;s/=10)i++;u=(a=(o%=7)-7+i)<0?0:l/qk(10,i-a-1)%10|0}if(r=r||e<0||void 0!==h[d+1]||(a<0?l:l%qk(10,i-a-1)),c=n<4?(u||r)&&(0==n||n==(t.s<0?3:2)):u>5||5==u&&(4==n||r||6==n&&(o>0?a>0?l/qk(10,i-a):0:h[d-1])%10&1||n==(t.s<0?8:7)),e<1||!h[0])return h.length=0,c?(e-=t.e+1,h[0]=qk(10,(7-e%7)%7),t.e=-e||0):h[0]=t.e=0,t;if(0==o?(h.length=d,s=1,d--):(h.length=d+1,s=qk(10,7-o),h[d]=a>0?(l/qk(10,i-a)%qk(10,a)|0)*s:0),c)for(;;){if(0==d){for(o=1,a=h[0];a>=10;a/=10)o++;for(a=h[0]+=s,s=1;a>=10;a/=10)s++;o!=s&&(t.e++,h[0]==$k&&(h[0]=1));break}if(h[d]+=s,h[d]!=$k)break;h[d--]=0,s=1}for(o=h.length;0===h[--o];)h.pop()}return Fk&&(t.e>f.maxE?(t.d=null,t.e=NaN):t.e<f.minE&&(t.e=0,t.d=[0])),t}function cT(t,e,n){if(!t.isFinite())return bT(t);var r,i=t.e,o=rT(t.d),a=o.length;return e?(n&&(r=n-a)>0?o=o.charAt(0)+"."+o.slice(1)+pT(r):a>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(t.e<0?"e":"e+")+t.e):i<0?(o="0."+pT(-i-1)+o,n&&(r=n-a)>0&&(o+=pT(r))):i>=a?(o+=pT(i+1-a),n&&(r=n-i-1)>0&&(o=o+"."+pT(r))):((r=i+1)<a&&(o=o.slice(0,r)+"."+o.slice(r)),n&&(r=n-a)>0&&(i+1===a&&(o+="."),o+=pT(r))),o}function lT(t,e){var n=t[0];for(e*=7;n>=10;n/=10)e++;return e}function hT(t,e,n){if(e>tT)throw Fk=!0,n&&(t.precision=n),Error("[DecimalError] Precision limit exceeded");return uT(new t(Qk),e,1,!0)}function dT(t,e,n){if(e>eT)throw Error("[DecimalError] Precision limit exceeded");return uT(new t(Yk),e,n,!0)}function fT(t){var e=t.length-1,n=7*e+1;if(e=t[e]){for(;e%10==0;e/=10)n--;for(e=t[0];e>=10;e/=10)n++}return n}function pT(t){for(var e="";t--;)e+="0";return e}function yT(t,e,n,r){var i,o=new t(1),a=Math.ceil(r/7+4);for(Fk=!1;;){if(n%2&&kT((o=o.times(e)).d,a)&&(i=!0),0===(n=Gk(n/2))){n=o.d.length-1,i&&0===o.d[n]&&++o.d[n];break}kT((e=e.times(e)).d,a)}return Fk=!0,o}function mT(t){return 1&t.d[t.d.length-1]}function gT(t,e,n){for(var r,i=new t(e[0]),o=0;++o<e.length;){if(!(r=new t(e[o])).s){i=r;break}i[n](r)&&(i=r)}return i}function vT(t,e){var n,r,i,o,a,s,u,c=0,l=0,h=0,d=t.constructor,f=d.rounding,p=d.precision;if(!t.d||!t.d[0]||t.e>17)return new d(t.d?t.d[0]?t.s<0?0:1/0:1:t.s?t.s<0?0:t:NaN);for(null==e?(Fk=!1,u=p):u=e,s=new d(.03125);t.e>-2;)t=t.times(s),h+=5;for(u+=r=Math.log(qk(2,h))/Math.LN10*2+5|0,n=o=a=new d(1),d.precision=u;;){if(o=uT(o.times(t),u,1),n=n.times(++l),rT((s=a.plus(sT(o,n,u,1))).d).slice(0,u)===rT(a.d).slice(0,u)){for(i=h;i--;)a=uT(a.times(a),u,1);if(null!=e)return d.precision=p,a;if(!(c<3&&oT(a.d,u-r,f,c)))return uT(a,d.precision=p,f,Fk=!0);d.precision=u+=10,n=o=s=new d(1),l=0,c++}a=s}}function wT(t,e){var n,r,i,o,a,s,u,c,l,h,d,f=1,p=t,y=p.d,m=p.constructor,g=m.rounding,v=m.precision;if(p.s<0||!y||!y[0]||!p.e&&1==y[0]&&1==y.length)return new m(y&&!y[0]?-1/0:1!=p.s?NaN:y?0:p);if(null==e?(Fk=!1,l=v):l=e,m.precision=l+=10,r=(n=rT(y)).charAt(0),!(Math.abs(o=p.e)<15e14))return c=hT(m,l+2,v).times(o+""),p=wT(new m(r+"."+n.slice(1)),l-10).plus(c),m.precision=v,null==e?uT(p,v,g,Fk=!0):p;for(;r<7&&1!=r||1==r&&n.charAt(1)>3;)r=(n=rT((p=p.times(t)).d)).charAt(0),f++;for(o=p.e,r>1?(p=new m("0."+n),o++):p=new m(r+"."+n.slice(1)),h=p,u=a=p=sT(p.minus(1),p.plus(1),l,1),d=uT(p.times(p),l,1),i=3;;){if(a=uT(a.times(d),l,1),rT((c=u.plus(sT(a,new m(i),l,1))).d).slice(0,l)===rT(u.d).slice(0,l)){if(u=u.times(2),0!==o&&(u=u.plus(hT(m,l+2,v).times(o+""))),u=sT(u,new m(f),l,1),null!=e)return m.precision=v,u;if(!oT(u.d,l-10,g,s))return uT(u,m.precision=v,g,Fk=!0);m.precision=l+=10,c=a=p=sT(h.minus(1),h.plus(1),l,1),d=uT(p.times(p),l,1),i=s=1}u=c,i+=2}}function bT(t){return String(t.s*t.s/0)}function MT(t,e){var n,r,i;for((n=e.indexOf("."))>-1&&(e=e.replace(".","")),(r=e.search(/e/i))>0?(n<0&&(n=r),n+=+e.slice(r+1),e=e.substring(0,r)):n<0&&(n=e.length),r=0;48===e.charCodeAt(r);r++);for(i=e.length;48===e.charCodeAt(i-1);--i);if(e=e.slice(r,i)){if(i-=r,t.e=n=n-r-1,t.d=[],r=(n+1)%7,n<0&&(r+=7),r<i){for(r&&t.d.push(+e.slice(0,r)),i-=7;r<i;)t.d.push(+e.slice(r,r+=7));r=7-(e=e.slice(r)).length}else r-=i;for(;r--;)e+="0";t.d.push(+e),Fk&&(t.e>t.constructor.maxE?(t.d=null,t.e=NaN):t.e<t.constructor.minE&&(t.e=0,t.d=[0]))}else t.e=0,t.d=[0];return t}function AT(t,e){var n,r,i,o,a,s,u,c,l;if(e.indexOf("_")>-1){if(e=e.replace(/(\d)_(?=\d)/g,"$1"),Kk.test(e))return MT(t,e)}else if("Infinity"===e||"NaN"===e)return+e||(t.s=NaN),t.e=NaN,t.d=null,t;if(Jk.test(e))n=16,e=e.toLowerCase();else if(Zk.test(e))n=2;else{if(!Xk.test(e))throw Error(Vk+e);n=8}for((o=e.search(/p/i))>0?(u=+e.slice(o+1),e=e.substring(2,o)):e=e.slice(2),a=(o=e.indexOf("."))>=0,r=t.constructor,a&&(o=(s=(e=e.replace(".","")).length)-o,i=yT(r,new r(n),o,2*o)),o=l=(c=aT(e,n,$k)).length-1;0===c[o];--o)c.pop();return o<0?new r(0*t.s):(t.e=lT(c,l),t.d=c,Fk=!1,a&&(t=sT(t,i,4*s)),u&&(t=t.times(Math.abs(u)<54?qk(2,u):pL.pow(2,u))),Fk=!0,t)}function IT(t,e,n,r,i){var o,a,s,u,c=t.precision,l=Math.ceil(c/7);for(Fk=!1,u=n.times(n),s=new t(r);;){if(a=sT(s.times(u),new t(e++*e++),c,1),s=i?r.plus(a):r.minus(a),r=sT(a.times(u),new t(e++*e++),c,1),void 0!==(a=s.plus(r)).d[l]){for(o=l;a.d[o]===s.d[o]&&o--;);if(-1==o)break}o=s,s=r,r=a,a=o}return Fk=!0,a.d.length=l+1,a}function NT(t,e){for(var n=t;--e;)n*=t;return n}function ET(t,e){var n,r=e.s<0,i=dT(t,t.precision,1),o=i.times(.5);if((e=e.abs()).lte(o))return _k=r?4:1,e;if((n=e.divToInt(i)).isZero())_k=r?3:2;else{if((e=e.minus(n.times(i))).lte(o))return _k=mT(n)?r?2:3:r?4:1,e;_k=mT(n)?r?1:4:r?3:2}return e.minus(i).abs()}function xT(t,e,n,r){var i,o,a,s,u,c,l,h,d,f=t.constructor,p=void 0!==n;if(p?(iT(n,1,1e9),void 0===r?r=f.rounding:iT(r,0,8)):(n=f.precision,r=f.rounding),t.isFinite()){for(p?(i=2,16==e?n=4*n-3:8==e&&(n=3*n-2)):i=e,(a=(l=cT(t)).indexOf("."))>=0&&(l=l.replace(".",""),(d=new f(1)).e=l.length-a,d.d=aT(cT(d),10,i),d.e=d.d.length),o=u=(h=aT(l,10,i)).length;0==h[--u];)h.pop();if(h[0]){if(a<0?o--:((t=new f(t)).d=h,t.e=o,h=(t=sT(t,d,n,r,0,i)).d,o=t.e,c=Pk),a=h[n],s=i/2,c=c||void 0!==h[n+1],c=r<4?(void 0!==a||c)&&(0===r||r===(t.s<0?3:2)):a>s||a===s&&(4===r||c||6===r&&1&h[n-1]||r===(t.s<0?8:7)),h.length=n,c)for(;++h[--n]>i-1;)h[n]=0,n||(++o,h.unshift(1));for(u=h.length;!h[u-1];--u);for(a=0,l="";a<u;a++)l+=Uk.charAt(h[a]);if(p){if(u>1)if(16==e||8==e){for(a=16==e?4:3,--u;u%a;u++)l+="0";for(u=(h=aT(l,i,e)).length;!h[u-1];--u);for(a=1,l="1.";a<u;a++)l+=Uk.charAt(h[a])}else l=l.charAt(0)+"."+l.slice(1);l=l+(o<0?"p":"p+")+o}else if(o<0){for(;++o;)l="0"+l;l="0."+l}else if(++o>u)for(o-=u;o--;)l+="0";else o<u&&(l=l.slice(0,o)+"."+l.slice(o))}else l=p?"0p+0":"0";l=(16==e?"0x":2==e?"0b":8==e?"0o":"")+l}else l=bT(t);return t.s<0?"-"+l:l}function kT(t,e){if(t.length>e)return t.length=e,!0}function TT(t){return new this(t).abs()}function LT(t){return new this(t).acos()}function ST(t){return new this(t).acosh()}function jT(t,e){return new this(t).plus(e)}function DT(t){return new this(t).asin()}function CT(t){return new this(t).asinh()}function OT(t){return new this(t).atan()}function zT(t){return new this(t).atanh()}function PT(t,e){t=new this(t),e=new this(e);var n,r=this.precision,i=this.rounding,o=r+4;return t.s&&e.s?t.d||e.d?!e.d||t.isZero()?(n=e.s<0?dT(this,r,i):new this(0)).s=t.s:!t.d||e.isZero()?(n=dT(this,o,1).times(.5)).s=t.s:e.s<0?(this.precision=o,this.rounding=1,n=this.atan(sT(t,e,o,1)),e=dT(this,o,1),this.precision=r,this.rounding=i,n=t.s<0?n.minus(e):n.plus(e)):n=this.atan(sT(t,e,o,1)):(n=dT(this,o,1).times(e.s>0?.25:.75)).s=t.s:n=new this(NaN),n}function _T(t){return new this(t).cbrt()}function BT(t){return uT(t=new this(t),t.e+1,2)}function RT(t,e,n){return new this(t).clamp(e,n)}function UT(t){if(!t||"object"!=typeof t)throw Error("[DecimalError] Object expected");var e,n,r,i=!0===t.defaults,o=["precision",1,1e9,"rounding",0,8,"toExpNeg",-Rk,0,"toExpPos",0,Rk,"maxE",0,Rk,"minE",-Rk,0,"modulo",0,9];for(e=0;e<o.length;e+=3)if(n=o[e],i&&(this[n]=Wk[n]),void 0!==(r=t[n])){if(!(Gk(r)===r&&r>=o[e+1]&&r<=o[e+2]))throw Error(Vk+n+": "+r);this[n]=r}if(n="crypto",i&&(this[n]=Wk[n]),void 0!==(r=t[n])){if(!0!==r&&!1!==r&&0!==r&&1!==r)throw Error(Vk+n+": "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw Error("[DecimalError] crypto unavailable");this[n]=!0}else this[n]=!1}return this}function QT(t){return new this(t).cos()}function YT(t){return new this(t).cosh()}function WT(t,e){return new this(t).div(e)}function FT(t){return new this(t).exp()}function VT(t){return uT(t=new this(t),t.e+1,3)}function HT(){var t,e,n=new this(0);for(Fk=!1,t=0;t<arguments.length;)if((e=new this(arguments[t++])).d)n.d&&(n=n.plus(e.times(e)));else{if(e.s)return Fk=!0,new this(1/0);n=e}return Fk=!0,n.sqrt()}function GT(t){return t instanceof pL||t&&t.toStringTag===Hk||!1}function qT(t){return new this(t).ln()}function ZT(t,e){return new this(t).log(e)}function JT(t){return new this(t).log(2)}function XT(t){return new this(t).log(10)}function KT(){return gT(this,arguments,"lt")}function $T(){return gT(this,arguments,"gt")}function tL(t,e){return new this(t).mod(e)}function eL(t,e){return new this(t).mul(e)}function nL(t,e){return new this(t).pow(e)}function rL(t){var e,n,r,i,o=0,a=new this(1),s=[];if(void 0===t?t=this.precision:iT(t,1,1e9),r=Math.ceil(t/7),this.crypto)if(crypto.getRandomValues)for(e=crypto.getRandomValues(new Uint32Array(r));o<r;)(i=e[o])>=429e7?e[o]=crypto.getRandomValues(new Uint32Array(1))[0]:s[o++]=i%1e7;else{if(!crypto.randomBytes)throw Error("[DecimalError] crypto unavailable");for(e=crypto.randomBytes(r*=4);o<r;)(i=e[o]+(e[o+1]<<8)+(e[o+2]<<16)+((127&e[o+3])<<24))>=214e7?crypto.randomBytes(4).copy(e,o):(s.push(i%1e7),o+=4);o=r/4}else for(;o<r;)s[o++]=1e7*Math.random()|0;for(t%=7,(r=s[--o])&&t&&(i=qk(10,7-t),s[o]=(r/i|0)*i);0===s[o];o--)s.pop();if(o<0)n=0,s=[0];else{for(n=-1;0===s[0];n-=7)s.shift();for(r=1,i=s[0];i>=10;i/=10)r++;r<7&&(n-=7-r)}return a.e=n,a.d=s,a}function iL(t){return uT(t=new this(t),t.e+1,this.rounding)}function oL(t){return(t=new this(t)).d?t.d[0]?t.s:0*t.s:t.s||NaN}function aL(t){return new this(t).sin()}function sL(t){return new this(t).sinh()}function uL(t){return new this(t).sqrt()}function cL(t,e){return new this(t).sub(e)}function lL(){var t=0,e=arguments,n=new this(e[t]);for(Fk=!1;n.s&&++t<e.length;)n=n.plus(e[t]);return Fk=!0,uT(n,this.precision,this.rounding)}function hL(t){return new this(t).tan()}function dL(t){return new this(t).tanh()}function fL(t){return uT(t=new this(t),t.e+1,1)}nT[Symbol.for("nodejs.util.inspect.custom")]=nT.toString,nT[Symbol.toStringTag]="Decimal";var pL=nT.constructor=function t(e){var n,r,i;function o(t){var e,n,r,i=this;if(!(i instanceof o))return new o(t);if(i.constructor=o,GT(t))return i.s=t.s,void(Fk?!t.d||t.e>o.maxE?(i.e=NaN,i.d=null):t.e<o.minE?(i.e=0,i.d=[0]):(i.e=t.e,i.d=t.d.slice()):(i.e=t.e,i.d=t.d?t.d.slice():t.d));if("number"===(r=typeof t)){if(0===t)return i.s=1/t<0?-1:1,i.e=0,void(i.d=[0]);if(t<0?(t=-t,i.s=-1):i.s=1,t===~~t&&t<1e7){for(e=0,n=t;n>=10;n/=10)e++;return void(Fk?e>o.maxE?(i.e=NaN,i.d=null):e<o.minE?(i.e=0,i.d=[0]):(i.e=e,i.d=[t]):(i.e=e,i.d=[t]))}return 0*t!=0?(t||(i.s=NaN),i.e=NaN,void(i.d=null)):MT(i,t.toString())}if("string"!==r)throw Error(Vk+t);return 45===(n=t.charCodeAt(0))?(t=t.slice(1),i.s=-1):(43===n&&(t=t.slice(1)),i.s=1),Kk.test(t)?MT(i,t):AT(i,t)}if(o.prototype=nT,o.ROUND_UP=0,o.ROUND_DOWN=1,o.ROUND_CEIL=2,o.ROUND_FLOOR=3,o.ROUND_HALF_UP=4,o.ROUND_HALF_DOWN=5,o.ROUND_HALF_EVEN=6,o.ROUND_HALF_CEIL=7,o.ROUND_HALF_FLOOR=8,o.EUCLID=9,o.config=o.set=UT,o.clone=t,o.isDecimal=GT,o.abs=TT,o.acos=LT,o.acosh=ST,o.add=jT,o.asin=DT,o.asinh=CT,o.atan=OT,o.atanh=zT,o.atan2=PT,o.cbrt=_T,o.ceil=BT,o.clamp=RT,o.cos=QT,o.cosh=YT,o.div=WT,o.exp=FT,o.floor=VT,o.hypot=HT,o.ln=qT,o.log=ZT,o.log10=XT,o.log2=JT,o.max=KT,o.min=$T,o.mod=tL,o.mul=eL,o.pow=nL,o.random=rL,o.round=iL,o.sign=oL,o.sin=aL,o.sinh=sL,o.sqrt=uL,o.sub=cL,o.sum=lL,o.tan=hL,o.tanh=dL,o.trunc=fL,void 0===e&&(e={}),e&&!0!==e.defaults)for(i=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],n=0;n<i.length;)e.hasOwnProperty(r=i[n++])||(e[r]=this[r]);return o.config(e),o}(Wk);function yL(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}Qk=new pL(Qk),Yk=new pL(Yk);class mL{constructor({blockchain:t,tokenIn:e,decimalsIn:n,tokenOut:r,decimalsOut:i,path:o,pools:a,amountIn:s,amountInMax:u,amountOut:c,amountOutMin:l,exchange:h,approvalRequired:d,getApproval:f,getPrep:p,getTransaction:y}){this.blockchain=t,this.tokenIn=e,this.decimalsIn=n,this.tokenOut=r,this.decimalsOut=i,this.path=o,this.pools=a,this.amountIn=yL([s,"optionalAccess",t=>t.toString,"call",t=>t()]),this.amountOutMin=yL([l,"optionalAccess",t=>t.toString,"call",t=>t()]),this.amountOut=yL([c,"optionalAccess",t=>t.toString,"call",t=>t()]),this.amountInMax=yL([u,"optionalAccess",t=>t.toString,"call",t=>t()]),this.exchange=h,this.getPrep=p,this.getTransaction=y}}let gL=["ethereum","bsc","polygon","solana","fantom","arbitrum","avalanche","gnosis","optimism","base"];gL.evm=["ethereum","bsc","polygon","fantom","arbitrum","avalanche","gnosis","optimism","base"],gL.solana=["solana"];const vL=async({exchange:t,blockchain:e,pools:n,exchangePath:r,amountIn:i,amountOut:o})=>{let a=i.add(i.mul(100*parseFloat("0.5")).div(1e4));if(!gL.evm.includes(t.blockchain||e))return a;const s=await PI({blockchain:t.blockchain||e,method:"latestBlockNumber"});let u=[];for(var c=0;c<=2;c++)u.push(s-c);const l=await Promise.all(u.map((async i=>{let{amountIn:a}=await t.getAmounts({exchange:t,blockchain:e,path:r,pools:n,amountOut:o,block:i});return a})));if(!l[0]||!l[1]||!l[2])return a;let h;if(l[0].gt(l[1])&&l[1].gt(l[2])){const t=l[0].sub(l[1]),e=l[1].sub(l[2]),n=t.add(e).div(2);if(h=l[0].add(n),h.gt(a))return h}else if(!l[0].eq(l[1])&&!l[1].eq(l[2])){const t=l[0].sub(l[1]).abs(),e=l[1].sub(l[2]).abs();let n,r;if(n=t.lt(e)?t:e,r=l[0].gt(l[1])&&l[0].gt(l[2])?l[0]:l[1].gt(l[2])&&l[1].gt(l[0])?l[1]:l[2],h=r.add(n),h.gt(a))return h}return a},wL=async({exchange:t,blockchain:e,pools:n,exchangePath:r,amounts:i,tokenIn:o,tokenOut:a,amountIn:s,amountInMax:u,amountOut:c,amountOutMin:l,amountInInput:h,amountOutInput:d,amountInMaxInput:f,amountOutMinInput:p})=>{if(p||d){if(gL.evm.includes(t.blockchain||e))s=u=await vL({exchange:t,blockchain:e,pools:n,exchangePath:r,amountIn:s,amountOut:p||c});else if(gL.solana.includes(t.blockchain||e)){let e=[];await Promise.all(r.map(((o,a)=>{if(0!=a){let o=vL({exchange:t,pools:n,exchangePath:[r[a-1],r[a]],amountIn:i[a-1],amountOut:i[a]});return o.then((t=>e.push(t))),o}}))),e.push(i[i.length-1]),s=u=(i=e)[0]}}else if((f||h)&&gL.solana.includes(t.blockchain||e)){let e=[];await Promise.all(r.map(((n,o)=>{if(0!==o&&o<r.length-1)e.unshift(i[o]);else if(o===r.length-1){let n=(async({exchange:t,exchangePath:e,amountOut:n,amountIn:r})=>n.sub(n.mul(100*parseFloat("0.5")).div(1e4)))({exchange:t,exchangePath:[r[o-1],r[o]],amountIn:i[o-1],amountOut:i[o]});return n.then((t=>(e.unshift(t),t))),n}}))),e.push(i[0]),c=l=(i=e.slice().reverse())[i.length-1]}return{amountIn:s,amountInMax:u,amountOut:c,amountOutMin:l,amounts:i}},bL=t=>t.match("0x")?am(t):t;let ML=async({amount:t,blockchain:e,address:n})=>await Tk.BigNumber({amount:t,blockchain:e,address:n}),AL=async({blockchain:t,exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s})=>{let u={exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s};return o&&"number"==typeof o&&(u.amountOut=await ML({amount:o,blockchain:t,address:r})),s&&"number"==typeof s&&(u.amountOutMin=await ML({amount:s,blockchain:t,address:r})),i&&"number"==typeof i&&(u.amountIn=await ML({amount:i,blockchain:t,address:n})),a&&"number"==typeof a&&(u.amountInMax=await ML({amount:a,blockchain:t,address:n})),u};class IL{constructor(...t){Object.assign(this,...t)}async route({blockchain:t,tokenIn:e,tokenOut:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a}){return e===n?Promise.resolve():(void 0===t&&(this.scope?t=this.scope:1===this.blockchains.length&&(t=this.blockchains[0])),(({blockchain:t,exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s})=>{if(void 0===t&&null!=e.blockchains&&e.blockchains.length>1)throw"You need to provide a blockchain when calling route on an exchange that supports multiple blockchains!";if(void 0!==o&&void 0!==i)throw"You cannot set amountIn and amountOut at the same time, use amountInMax or amountOutMin to describe the non exact part of the swap!";if(void 0!==a&&void 0!==s)throw"You cannot set amountInMax and amountOutMin at the same time, use amountIn or amountOut to describe the part of the swap that needs to be exact!";if(void 0!==i&&void 0!==a)throw"Setting amountIn and amountInMax at the same time makes no sense. Decide if amountIn needs to be exact or not!";if(void 0!==o&&void 0!==s)throw"Setting amountOut and amountOutMin at the same time makes no sense. Decide if amountOut needs to be exact or not!"})({blockchain:t,exchange:this,tokenIn:e,tokenOut:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a}),await(({blockchain:t,exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s,findPath:u,getAmounts:c,getPrep:l,getTransaction:h,slippage:d})=>{if(n=bL(n),r=bL(r),[i,o,a,s].filter(Boolean).length>1)throw"You can only pass one: amountIn, amountOut, amountInMax or amountOutMin";if([i,o,a,s].filter(Boolean).length<1)throw"You need to pass exactly one: amountIn, amountOut, amountInMax or amountOutMin";return new Promise((async f=>{let{path:p,exchangePath:y,pools:m}=await u({blockchain:t,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s});if(void 0===p||0==p.length)return f();let g,[v,w,b,M]=[i,o,a,s];try{({amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s,amounts:g}=await c({exchange:e,blockchain:t,path:p,pools:m,tokenIn:n,tokenOut:r,amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s}))}catch(t){return f()}if([i,a,o,s].every((t=>null==t)))return f();if(d||e.slippage)try{({amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s,amounts:g}=await wL({exchange:e,blockchain:t,pools:m,exchangePath:y,amounts:g,tokenIn:n,tokenOut:r,amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s,amountInInput:v,amountOutInput:w,amountInMaxInput:b,amountOutMinInput:M}))}catch(t){return f()}const A=await new Tk({blockchain:t,address:n}).decimals(),I=await new Tk({blockchain:t,address:r}).decimals();f(new mL({blockchain:t,tokenIn:n,decimalsIn:A,tokenOut:r,decimalsOut:I,path:p,pools:m,amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s,exchange:e,getPrep:async({account:o})=>await l({exchange:e,blockchain:t,tokenIn:n,tokenOut:r,amountIn:i||a,account:o}),getTransaction:async({account:n,permit2:r,inputTokenPushed:u})=>await h({exchange:e,blockchain:t,pools:m,path:p,amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s,amounts:g,amountInInput:v,amountOutInput:w,amountInMaxInput:b,amountOutMinInput:M,account:n,permit2:r,inputTokenPushed:u})}))}))})({...await AL({blockchain:t,exchange:this,tokenIn:e,tokenOut:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a}),blockchain:t,findPath:this.findPath,getAmounts:this.getAmounts,getPrep:this.getPrep,getTransaction:this.getTransaction,slippage:this.slippage}))}}function NL(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}const EL=({blockchain:t,exchange:e,path:n})=>{if(!n)return;let r=n.map(((e,r)=>e===Hf[t].currency.address&&n[r+1]!=Hf[t].wrapped.address&&n[r-1]!=Hf[t].wrapped.address?Hf[t].wrapped.address:e));return r[0]==Hf[t].currency.address&&r[1]==Hf[t].wrapped.address?r.splice(0,1):r[r.length-1]==Hf[t].currency.address&&r[r.length-2]==Hf[t].wrapped.address&&r.splice(r.length-1,1),r},xL=({reserves:t,min:e,token:n,token0:r,token1:i,decimals:o})=>r.toLowerCase()==n.toLowerCase()?t[0].gte(cI(e.toString(),o)):i.toLowerCase()==n.toLowerCase()&&t[1].gte(cI(e.toString(),o)),kL=async({blockchain:t,exchange:e,path:n})=>{const r=EL({blockchain:t,exchange:e,path:n});if(!r||1===r.length)return!1;try{let i=await PI({blockchain:t,address:e[t].factory.address,method:"getPair",api:e[t].factory.api,cache:36e5,params:EL({blockchain:t,exchange:e,path:n})});if(!i||i==Hf[t].zero)return!1;let[o,a,s]=await Promise.all([PI({blockchain:t,address:i,method:"getReserves",api:e[t].pair.api,cache:36e5}),PI({blockchain:t,address:i,method:"token0",api:e[t].pair.api,cache:36e5}),PI({blockchain:t,address:i,method:"token1",api:e[t].pair.api,cache:36e5})]);if(r.includes(Hf[t].wrapped.address))return xL({min:1,token:Hf[t].wrapped.address,decimals:Hf[t].currency.decimals,reserves:o,token0:a,token1:s});if(n.find((e=>Hf[t].stables.usd.includes(e)))){let e=n.find((e=>Hf[t].stables.usd.includes(e))),r=new Tk({blockchain:t,address:e}),i=await r.decimals();return xL({min:1e3,token:e,decimals:i,reserves:o,token0:a,token1:s})}return!0}catch(t){return console.log("e",t),!1}};let TL=({blockchain:t,exchange:e,path:n,amountIn:r,tokenIn:i,tokenOut:o})=>new Promise((i=>{PI({blockchain:t,address:e[t].router.address,method:"getAmountsOut",api:e[t].router.api,params:{amountIn:r,path:EL({blockchain:t,exchange:e,path:n})}}).then((t=>{i(t[t.length-1])})).catch((()=>i()))})),LL=({blockchain:t,exchange:e,path:n,amountOut:r,block:i})=>new Promise((o=>{PI({blockchain:t,address:e[t].router.address,method:"getAmountsIn",api:e[t].router.api,params:{amountOut:r,path:EL({blockchain:t,exchange:e,path:n})},block:i}).then((t=>o(t[0]))).catch((()=>o()))}));var SL={findPath:async({blockchain:t,exchange:e,tokenIn:n,tokenOut:r})=>{if([n,r].includes(Hf[t].currency.address)&&[n,r].includes(Hf[t].wrapped.address))return{path:void 0,exchangePath:void 0};let i;if(await kL({blockchain:t,exchange:e,path:[n,r]}))i=[n,r];else if(n!=Hf[t].wrapped.address&&await kL({blockchain:t,exchange:e,path:[n,Hf[t].wrapped.address]})&&r!=Hf[t].wrapped.address&&await kL({blockchain:t,exchange:e,path:[r,Hf[t].wrapped.address]}))i=[n,Hf[t].wrapped.address,r];else if(!Hf[t].stables.usd.includes(n)&&(await Promise.all(Hf[t].stables.usd.map((r=>kL({blockchain:t,exchange:e,path:[n,r]}))))).filter(Boolean).length&&r!=Hf[t].wrapped.address&&await kL({blockchain:t,exchange:e,path:[Hf[t].wrapped.address,r]})){let o=(await Promise.all(Hf[t].stables.usd.map((async r=>await kL({blockchain:t,exchange:e,path:[n,r]})?r:void 0)))).find(Boolean);i=[n,o,Hf[t].wrapped.address,r]}else if(n!=Hf[t].wrapped.address&&await kL({blockchain:t,exchange:e,path:[n,Hf[t].wrapped.address]})&&!Hf[t].stables.usd.includes(r)&&(await Promise.all(Hf[t].stables.usd.map((n=>kL({blockchain:t,exchange:e,path:[n,r]}))))).filter(Boolean).length){let o=(await Promise.all(Hf[t].stables.usd.map((async n=>await kL({blockchain:t,exchange:e,path:[n,r]})?n:void 0)))).find(Boolean);i=[n,Hf[t].wrapped.address,o,r]}return NL([i,"optionalAccess",t=>t.length])&&i[0]==Hf[t].currency.address?i.splice(1,0,Hf[t].wrapped.address):NL([i,"optionalAccess",t=>t.length])&&i[i.length-1]==Hf[t].currency.address&&i.splice(i.length-1,0,Hf[t].wrapped.address),{path:i,exchangePath:EL({blockchain:t,exchange:e,path:i})}},pathExists:kL,getAmounts:async({blockchain:t,exchange:e,path:n,block:r,tokenIn:i,tokenOut:o,amountOut:a,amountIn:s,amountInMax:u,amountOutMin:c})=>{if(a){if(null==(s=await LL({blockchain:t,exchange:e,block:r,path:n,amountOut:a,tokenIn:i,tokenOut:o}))||u&&s.gt(u))return{};void 0===u&&(u=s)}else if(s){if(null==(a=await TL({blockchain:t,exchange:e,path:n,amountIn:s,tokenIn:i,tokenOut:o}))||c&&a.lt(c))return{};void 0===c&&(c=a)}else if(c){if(null==(s=await LL({blockchain:t,exchange:e,block:r,path:n,amountOut:c,tokenIn:i,tokenOut:o}))||u&&s.gt(u))return{};void 0===u&&(u=s)}else if(u){if(null==(a=await TL({blockchain:t,exchange:e,path:n,amountIn:u,tokenIn:i,tokenOut:o}))||c&&a.lt(c))return{};void 0===c&&(c=a)}return{amountOut:a,amountIn:s,amountInMax:u,amountOutMin:c}},getPrep:async({exchange:t,blockchain:e,tokenIn:n,amountIn:r,account:i})=>{if(n===Hf[e].currency.address)return;const o=await PI({blockchain:e,address:n,method:"allowance",api:Tk[e][20],params:[i,t[e].router.address]});if(o.gte(r))return;return{transaction:{blockchain:e,from:i,to:n,api:Tk[e][20],method:"approve",params:[t[e].router.address,r.sub(o)]}}},getTransaction:({exchange:t,blockchain:e,path:n,amountIn:r,amountInMax:i,amountOut:o,amountOutMin:a,amountInInput:s,amountOutInput:u,amountInMaxInput:c,amountOutMinInput:l,account:h})=>{let d={blockchain:e,from:h,to:t[e].router.address,api:t[e].router.api};return n[0]===Hf[e].currency.address?s||l?(d.method="swapExactETHForTokens",d.value=r.toString(),d.params={amountOutMin:a.toString()}):(u||c)&&(d.method="swapETHForExactTokens",d.value=i.toString(),d.params={amountOut:o.toString()}):n[n.length-1]===Hf[e].currency.address?s||l?(d.method="swapExactTokensForETH",d.params={amountIn:r.toString(),amountOutMin:a.toString()}):(u||c)&&(d.method="swapTokensForExactETH",d.params={amountInMax:i.toString(),amountOut:o.toString()}):s||l?(d.method="swapExactTokensForTokens",d.params={amountIn:r.toString(),amountOutMin:a.toString()}):(u||c)&&(d.method="swapTokensForExactTokens",d.params={amountInMax:i.toString(),amountOut:o.toString()}),d.params=Object.assign({},d.params,{path:EL({blockchain:e,exchange:t,path:n}),to:h,deadline:Math.round(Date.now()/1e3)+86400}),d},ROUTER:[{inputs:[{internalType:"address",name:"_factory",type:"address"},{internalType:"address",name:"_WETH",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"WETH",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"},{internalType:"uint256",name:"amountADesired",type:"uint256"},{internalType:"uint256",name:"amountBDesired",type:"uint256"},{internalType:"uint256",name:"amountAMin",type:"uint256"},{internalType:"uint256",name:"amountBMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"addLiquidity",outputs:[{internalType:"uint256",name:"amountA",type:"uint256"},{internalType:"uint256",name:"amountB",type:"uint256"},{internalType:"uint256",name:"liquidity",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountTokenDesired",type:"uint256"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountETHMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"addLiquidityETH",outputs:[{internalType:"uint256",name:"amountToken",type:"uint256"},{internalType:"uint256",name:"amountETH",type:"uint256"},{internalType:"uint256",name:"liquidity",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"reserveIn",type:"uint256"},{internalType:"uint256",name:"reserveOut",type:"uint256"}],name:"getAmountIn",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"reserveIn",type:"uint256"},{internalType:"uint256",name:"reserveOut",type:"uint256"}],name:"getAmountOut",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"}],name:"getAmountsIn",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"}],name:"getAmountsOut",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amountA",type:"uint256"},{internalType:"uint256",name:"reserveA",type:"uint256"},{internalType:"uint256",name:"reserveB",type:"uint256"}],name:"quote",outputs:[{internalType:"uint256",name:"amountB",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountAMin",type:"uint256"},{internalType:"uint256",name:"amountBMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"removeLiquidity",outputs:[{internalType:"uint256",name:"amountA",type:"uint256"},{internalType:"uint256",name:"amountB",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountETHMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"removeLiquidityETH",outputs:[{internalType:"uint256",name:"amountToken",type:"uint256"},{internalType:"uint256",name:"amountETH",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountETHMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"removeLiquidityETHSupportingFeeOnTransferTokens",outputs:[{internalType:"uint256",name:"amountETH",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountETHMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"bool",name:"approveMax",type:"bool"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"removeLiquidityETHWithPermit",outputs:[{internalType:"uint256",name:"amountToken",type:"uint256"},{internalType:"uint256",name:"amountETH",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountETHMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"bool",name:"approveMax",type:"bool"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"removeLiquidityETHWithPermitSupportingFeeOnTransferTokens",outputs:[{internalType:"uint256",name:"amountETH",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountAMin",type:"uint256"},{internalType:"uint256",name:"amountBMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"bool",name:"approveMax",type:"bool"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"removeLiquidityWithPermit",outputs:[{internalType:"uint256",name:"amountA",type:"uint256"},{internalType:"uint256",name:"amountB",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapETHForExactTokens",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactETHForTokens",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactETHForTokensSupportingFeeOnTransferTokens",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForETH",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForETHSupportingFeeOnTransferTokens",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForTokens",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForTokensSupportingFeeOnTransferTokens",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapTokensForExactETH",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapTokensForExactTokens",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}],FACTORY:[{inputs:[{internalType:"address",name:"_feeToSetter",type:"address"}],payable:!1,stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token0",type:"address"},{indexed:!0,internalType:"address",name:"token1",type:"address"},{indexed:!1,internalType:"address",name:"pair",type:"address"},{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"PairCreated",type:"event"},{constant:!0,inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"allPairs",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"allPairsLength",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"}],name:"createPair",outputs:[{internalType:"address",name:"pair",type:"address"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"feeTo",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"feeToSetter",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"getPair",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"_feeTo",type:"address"}],name:"setFeeTo",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"_feeToSetter",type:"address"}],name:"setFeeToSetter",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"}],PAIR:[{inputs:[],payable:!1,stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"},{indexed:!0,internalType:"address",name:"to",type:"address"}],name:"Burn",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"}],name:"Mint",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint256",name:"amount0In",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1In",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount0Out",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1Out",type:"uint256"},{indexed:!0,internalType:"address",name:"to",type:"address"}],name:"Swap",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint112",name:"reserve0",type:"uint112"},{indexed:!1,internalType:"uint112",name:"reserve1",type:"uint112"}],name:"Sync",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{constant:!0,inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"MINIMUM_LIQUIDITY",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"PERMIT_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[{internalType:"address",name:"",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"to",type:"address"}],name:"burn",outputs:[{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"getReserves",outputs:[{internalType:"uint112",name:"_reserve0",type:"uint112"},{internalType:"uint112",name:"_reserve1",type:"uint112"},{internalType:"uint32",name:"_blockTimestampLast",type:"uint32"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"_token0",type:"address"},{internalType:"address",name:"_token1",type:"address"}],name:"initialize",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"kLast",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"to",type:"address"}],name:"mint",outputs:[{internalType:"uint256",name:"liquidity",type:"uint256"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{internalType:"address",name:"",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"price0CumulativeLast",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"price1CumulativeLast",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"to",type:"address"}],name:"skim",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{internalType:"uint256",name:"amount0Out",type:"uint256"},{internalType:"uint256",name:"amount1Out",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"bytes",name:"data",type:"bytes"}],name:"swap",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[],name:"sync",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"token0",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"token1",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"}]};const jL={name:"honeyswap",label:"Honeyswap",logo:"data:image/png;base64,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",protocol:"uniswap_v2",slippage:!0,blockchains:["gnosis"],gnosis:{router:{address:"0x1C232F01118CB8B424793ae03F870aa7D0ac7f77",api:SL.ROUTER},factory:{address:"0xA818b4F111Ccac7AA31D0BCc0806d64F2E0737D7",api:SL.FACTORY},pair:{api:SL.PAIR}}};var DL=t=>new IL(Object.assign(jL,{scope:t,findPath:t=>SL.findPath({...t,exchange:jL}),pathExists:t=>SL.pathExists({...t,exchange:jL}),getAmounts:t=>SL.getAmounts({...t,exchange:jL}),getPrep:t=>SL.getPrep({...t,exchange:jL}),getTransaction:t=>SL.getTransaction({...t,exchange:jL})}));const CL="79226673515401279992447579055",OL=t=>-t;class zL{static priceToSqrtPriceX64(t,e,n){return r=t.mul(pL.pow(10,n-e)).sqrt(),new rf(r.mul(pL.pow(2,64)).floor().toFixed());var r}static sqrtPriceX64ToPrice(t,e,n){return(r=t,new pL(r.toString()).mul(pL.pow(2,-64))).pow(2).mul(pL.pow(10,e-n));var r}static tickIndexToSqrtPriceX64(t){return new rf(t>0?function(t){let e;e=new rf(0!=(1&t)?"79232123823359799118286999567":"79228162514264337593543950336");0!=(2&t)&&(e=PL(e.mul(new rf("79236085330515764027303304731")),96,256));0!=(4&t)&&(e=PL(e.mul(new rf("79244008939048815603706035061")),96,256));0!=(8&t)&&(e=PL(e.mul(new rf("79259858533276714757314932305")),96,256));0!=(16&t)&&(e=PL(e.mul(new rf("79291567232598584799939703904")),96,256));0!=(32&t)&&(e=PL(e.mul(new rf("79355022692464371645785046466")),96,256));0!=(64&t)&&(e=PL(e.mul(new rf("79482085999252804386437311141")),96,256));0!=(128&t)&&(e=PL(e.mul(new rf("79736823300114093921829183326")),96,256));0!=(256&t)&&(e=PL(e.mul(new rf("80248749790819932309965073892")),96,256));0!=(512&t)&&(e=PL(e.mul(new rf("81282483887344747381513967011")),96,256));0!=(1024&t)&&(e=PL(e.mul(new rf("83390072131320151908154831281")),96,256));0!=(2048&t)&&(e=PL(e.mul(new rf("87770609709833776024991924138")),96,256));0!=(4096&t)&&(e=PL(e.mul(new rf("97234110755111693312479820773")),96,256));0!=(8192&t)&&(e=PL(e.mul(new rf("119332217159966728226237229890")),96,256));0!=(16384&t)&&(e=PL(e.mul(new rf("179736315981702064433883588727")),96,256));0!=(32768&t)&&(e=PL(e.mul(new rf("407748233172238350107850275304")),96,256));0!=(65536&t)&&(e=PL(e.mul(new rf("2098478828474011932436660412517")),96,256));0!=(131072&t)&&(e=PL(e.mul(new rf("55581415166113811149459800483533")),96,256));0!=(262144&t)&&(e=PL(e.mul(new rf("38992368544603139932233054999993551")),96,256));return PL(e,32,256)}(t):function(t){let e,n=Math.abs(t);e=new rf(0!=(1&n)?"18445821805675392311":"18446744073709551616");0!=(2&n)&&(e=PL(e.mul(new rf("18444899583751176498")),64,256));0!=(4&n)&&(e=PL(e.mul(new rf("18443055278223354162")),64,256));0!=(8&n)&&(e=PL(e.mul(new rf("18439367220385604838")),64,256));0!=(16&n)&&(e=PL(e.mul(new rf("18431993317065449817")),64,256));0!=(32&n)&&(e=PL(e.mul(new rf("18417254355718160513")),64,256));0!=(64&n)&&(e=PL(e.mul(new rf("18387811781193591352")),64,256));0!=(128&n)&&(e=PL(e.mul(new rf("18329067761203520168")),64,256));0!=(256&n)&&(e=PL(e.mul(new rf("18212142134806087854")),64,256));0!=(512&n)&&(e=PL(e.mul(new rf("17980523815641551639")),64,256));0!=(1024&n)&&(e=PL(e.mul(new rf("17526086738831147013")),64,256));0!=(2048&n)&&(e=PL(e.mul(new rf("16651378430235024244")),64,256));0!=(4096&n)&&(e=PL(e.mul(new rf("15030750278693429944")),64,256));0!=(8192&n)&&(e=PL(e.mul(new rf("12247334978882834399")),64,256));0!=(16384&n)&&(e=PL(e.mul(new rf("8131365268884726200")),64,256));0!=(32768&n)&&(e=PL(e.mul(new rf("3584323654723342297")),64,256));0!=(65536&n)&&(e=PL(e.mul(new rf("696457651847595233")),64,256));0!=(131072&n)&&(e=PL(e.mul(new rf("26294789957452057")),64,256));0!=(262144&n)&&(e=PL(e.mul(new rf("37481735321082")),64,256));return e}(t))}static sqrtPriceX64ToTickIndex(t){if(t.gt(new rf(CL))||t.lt(new rf("4295048016")))throw new Error("Provided sqrtPrice is not within the supported sqrtPrice range.");const e=t.bitLength()-1,n=function(t,e,n){let r=t.toTwos(n).shln(e);return r.imaskn(n+1),r.fromTwos(n)}(new rf(e-64),32,128);let r=new rf("8000000000000000","hex"),i=0,o=new rf(0),a=e>=64?t.shrn(e-63):t.shln(63-e);for(;r.gt(new rf(0))&&i<14;){a=a.mul(a);let t=a.shrn(127);a=a.shrn(63+t.toNumber()),o=o.add(r.mul(t)),r=r.shrn(1),i+=1}const s=o.shrn(32),u=n.add(s).mul(new rf("59543866431248")),c=PL(u.sub(new rf("184467440737095516")),64,128).toNumber(),l=PL(u.add(new rf("15793534762490258745")),64,128).toNumber();if(c==l)return c;return zL.tickIndexToSqrtPriceX64(l).lte(t)?l:c}static tickIndexToPrice(t,e,n){return zL.sqrtPriceX64ToPrice(zL.tickIndexToSqrtPriceX64(t),e,n)}static priceToTickIndex(t,e,n){return zL.sqrtPriceX64ToTickIndex(zL.priceToSqrtPriceX64(t,e,n))}static priceToInitializableTickIndex(t,e,n,r){return((t,e)=>t-t%e)(zL.priceToTickIndex(t,e,n),r)}static invertPrice(t,e,n){const r=zL.priceToTickIndex(t,e,n),i=OL(r);return zL.tickIndexToPrice(i,n,e)}static invertSqrtPriceX64(t){const e=zL.sqrtPriceX64ToTickIndex(t),n=OL(e);return zL.tickIndexToSqrtPriceX64(n)}}function PL(t,e,n){let r=t.toTwos(n).shrn(e);return r.imaskn(n-e+1),r.fromTwos(n-e)}const _L=new rf(1e4),BL=new rf(1e6),RL=new rf(0),UL=new rf(1),QL=new rf(2),YL=QL.pow(new rf(64)).sub(UL);class WL extends rf{toBuffer(){const t=super.toArray().reverse(),e=buffer.Buffer.from(t);if(8===e.length)return e;assert__default.default(e.length<8,"u64 too large");const n=buffer.Buffer.alloc(8);return e.copy(n),n}static fromBuffer(t){return assert__default.default(8===t.length,`Invalid buffer length: ${t.length}`),new WL([...t].reverse().map((t=>`00${t.toString(16)}`.slice(-2))).join(""),16)}}class FL{static mul(t,e,n){const r=t.mul(e);if(this.isOverLimit(r,n))throw new Error(`Mul result higher than u${n}`);return r}static mulDiv(t,e,n,r){return this.mulDivRoundUpIf(t,e,n,!1,r)}static mulDivRoundUp(t,e,n,r){return this.mulDivRoundUpIf(t,e,n,!0,r)}static mulDivRoundUpIf(t,e,n,r,i){if(n.eq(RL))throw new Error("mulDiv denominator is zero");const o=this.mul(t,e,i),a=o.div(n);return r&&o.mod(n).gt(RL)?a.add(UL):a}static checked_mul_shift_right(t,e,n){return this.checked_mul_shift_right_round_up_if(t,e,!1,n)}static checked_mul_shift_right_round_up_if(t,e,n,r){if(t.eq(RL)||e.eq(RL))return RL;const i=this.mul(t,e,r);if(this.isOverLimit(i,r))throw new Error(`MulShiftRight overflowed u${r}.`);const o=i.div(new rf(2).pow(new rf(64)));const a=n&&o.and(YL).gt(RL);if(a&&o.eq(YL))throw new Error(`MulShiftRight overflowed u${r}.`);return a?o.add(UL):o}static isOverLimit(t,e){const n=QL.pow(new rf(e)).sub(UL);return t.gt(n)}static divRoundUp(t,e){return this.divRoundUpIf(t,e,!0)}static divRoundUpIf(t,e,n){if(e.eq(RL))throw new Error("divRoundUpIf - divide by zero");let r=t.div(e);return n&&t.mod(e).gt(RL)?r.add(UL):r}}const VL=(t,e,n)=>{const r=zL.tickIndexToSqrtPriceX64(t);return{nextTickPrice:r,nextSqrtPriceLimit:n?rf.max(e,r):rf.min(e,r)}},HL=(t,e)=>t.gt(e)?[e,t]:[t,e],GL=(t,e,n,r)=>{let[i,o]=HL(t,e),a=o.sub(i),s=n.mul(a).shln(64),u=i.mul(o),c=s.div(u),l=s.mod(u),h=r&&!l.eq(RL)?c.add(UL):c;if(h.gt(YL))throw new Error("Results larger than U64");return h},qL=(t,e,n,r)=>{let[i,o]=HL(t,e),a=o.sub(i);return FL.checked_mul_shift_right_round_up_if(n,a,r,128)},ZL=(t,e,n,r,i)=>r===i?((t,e,n,r)=>{if(n.eq(RL))return t;let i=FL.mul(t,n,256),o=FL.mul(e,t,256).shln(64);if(FL.isOverLimit(o,256))throw new Error("getNextSqrtPriceFromARoundUp - numerator overflow u256");let a=e.shln(64);if(!r&&a.lte(i))throw new Error("getNextSqrtPriceFromARoundUp - Unable to divide currLiquidityX64 by product");let s=r?a.add(i):a.sub(i),u=FL.divRoundUp(o,s);if(u.lt(new rf("4295048016")))throw new Error("getNextSqrtPriceFromARoundUp - price less than min sqrt price");if(u.gt(new rf(CL)))throw new Error("getNextSqrtPriceFromARoundUp - price less than max sqrt price");return u})(t,e,n,r):((t,e,n,r)=>{let i=n.shln(64),o=FL.divRoundUpIf(i,e,!r);return r?t.add(o):t.sub(o)})(t,e,n,r),JL=(t,e,n,r,i)=>i===r?GL(t,e,n,r):qL(t,e,n,r),XL=(t,e,n,r,i,o,a)=>{let s=JL(r,i,n,o,a),u=t;if(o){u=FL.mulDiv(t,BL.sub(new rf(e)),BL,128)}let c=u.gte(s)?i:ZL(r,n,u,o,a),l=c.eq(i),h=((t,e,n,r,i)=>i===r?qL(t,e,n,!r):GL(t,e,n,!r))(r,c,n,o,a);l||(s=JL(r,c,n,o,a));let d,f=o?s:h,p=o?h:s;if(!o&&p.gt(t)&&(p=t),o&&!l)d=t.sub(f);else{const t=new rf(e);d=FL.mulDivRoundUp(f,t,BL.sub(t),128)}return{amountIn:f,amountOut:p,nextPrice:c,feeAmount:d}},KL=(t,e,n)=>n?e.sub(t):e.add(t),$L=(t,e,n,r,i)=>{let o=r,a=i,s=t;if(e>0){let t=((t,e)=>t.mul(new WL(e).div(_L)))(s,e);s=s.sub(t),o=o.add(r)}if(n.gt(RL)){const t=s.shln(64).div(n);a=a.add(t)}return{nextProtocolFee:o,nextFeeGrowthGlobalInput:a}},tS=pf([hf("mint"),hf("vault"),hf("authority"),yf("emissionsPerSecondX64"),yf("growthGlobalX64")]),eS=pf([vf("anchorDiscriminator"),hf("whirlpoolsConfig"),Kd(wf(),1,"whirlpoolBump"),mf("tickSpacing"),Kd(wf(),2,"tickSpacingSeed"),mf("feeRate"),mf("protocolFeeRate"),yf("liquidity"),yf("sqrtPrice"),uf("tickCurrentIndex"),vf("protocolFeeOwedA"),vf("protocolFeeOwedB"),hf("tokenMintA"),hf("tokenVaultA"),yf("feeGrowthGlobalA"),hf("tokenMintB"),hf("tokenVaultB"),yf("feeGrowthGlobalB"),vf("rewardLastUpdatedTimestamp"),Kd(tS,3,"rewardInfos")]),nS=pf([af("initialized"),sf("liquidityNet"),yf("liquidityGross"),yf("feeGrowthOutsideA"),yf("feeGrowthOutsideB"),Kd(yf(),3,"reward_growths_outside")]),rS=pf([vf("anchorDiscriminator"),uf("startTickIndex"),Kd(nS,88,"ticks"),hf("whirlpool")]),iS=(t,e,n)=>{const r=(Math.floor(t/e/88)+n)*e*88,i=88*e;if(r<-443636-(-443636%i+i))throw`startTickIndex is too small - - ${r}`;if(r>443636)throw`startTickIndex is too large - ${r}`;return r},oS=async({pool:t,freshWhirlpoolData:e,aToB:n})=>{const r=await(async({aToB:t,pool:e,tickSpacing:n,tickCurrentIndex:r})=>{const i=t?0:n;let o=0,a=[];for(let s=0;s<3;s++){let s;try{s=iS(r+i,n,o)}catch(t){return a}const u=(await Xs.findProgramAddress([nf.from("tick_array"),new Xs(e.toString()).toBuffer(),nf.from(s.toString())],new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc")))[0];a.push(u),o=t?o-1:o+1}return a})({aToB:n,pool:t,tickSpacing:e.tickSpacing,tickCurrentIndex:e.tickCurrentIndex});return await Promise.all(r.map((async(t,e)=>{let n;try{n=await PI({blockchain:"solana",address:t.toString(),api:rS,cache:10})}catch(t){}return{address:t,data:n}})))};class aS{static fromTickIndex(t,e){const n=Math.floor(Math.floor(t/e)/88);let r=Math.floor(t%(88*e)/e);return r<0&&(r=88+r),new aS(n,r,e)}constructor(t,e,n){if(e>=88)throw new Error("Invalid offsetIndex - value has to be smaller than TICK_ARRAY_SIZE");if(e<0)throw new Error("Invalid offsetIndex - value is smaller than 0");if(n<0)throw new Error("Invalid tickSpacing - value is less than 0");this.arrayIndex=t,this.offsetIndex=e,this.tickSpacing=n}toTickIndex(){return 88*this.arrayIndex*this.tickSpacing+this.offsetIndex*this.tickSpacing}toNextInitializableTickIndex(){return aS.fromTickIndex(this.toTickIndex()+this.tickSpacing,this.tickSpacing)}toPrevInitializableTickIndex(){return aS.fromTickIndex(this.toTickIndex()-this.tickSpacing,this.tickSpacing)}}class sS{constructor(t,e,n){if(!t[0]||!t[0].data)throw new Error("TickArray index 0 must be initialized");this.sequence=[];for(const e of t){if(!e||!e.data)break;this.sequence.push({address:e.address,data:e.data})}this.tickArrays=t,this.tickSpacing=e,this.aToB=n,this.touchedArrays=[...Array(this.sequence.length).fill(!1)],this.startArrayIndex=aS.fromTickIndex(this.sequence[0].data.startTickIndex,this.tickSpacing).arrayIndex}isValidTickArray0(t){const e=this.aToB?0:this.tickSpacing,n=this.sequence[0].data;return this.checkIfIndexIsInTickArrayRange(n.startTickIndex,t+e)}getNumOfTouchedArrays(){return this.touchedArrays.filter((t=>!!t)).length}getTouchedArrays(t){let e=this.touchedArrays.reduce(((t,e,n)=>(e&&t.push(this.sequence[n].address),t)),[]);if(0===e.length)return[];const n=t-e.length;return n>0&&(e=e.concat(Array(n).fill(e[e.length-1]))),e}getTick(t){const e=aS.fromTickIndex(t,this.tickSpacing);if(!this.isArrayIndexInBounds(e,this.aToB))throw new Error("Provided tick index is out of bounds for this sequence.");const n=this.getLocalArrayIndex(e.arrayIndex,this.aToB),r=this.sequence[n].data;if(this.touchedArrays[n]=!0,!r)throw new Error(`TickArray at index ${n} is not initialized.`);if(!this.checkIfIndexIsInTickArrayRange(r.startTickIndex,t))throw new Error(`TickArray at index ${n} is unexpected for this sequence.`);return r.ticks[e.offsetIndex]}findNextInitializedTickIndex(t){const e=this.aToB?t:t+this.tickSpacing;let n=aS.fromTickIndex(e,this.tickSpacing);if(!this.isArrayIndexInBounds(n,this.aToB))throw new Error(`Swap input value traversed too many arrays. Out of bounds at attempt to traverse tick index - ${n.toTickIndex()}.`);for(;this.isArrayIndexInBounds(n,this.aToB);){const t=this.getTick(n.toTickIndex());if(t.initialized)return{nextIndex:n.toTickIndex(),nextTickData:t};n=this.aToB?n.toPrevInitializableTickIndex():n.toNextInitializableTickIndex()}return{nextIndex:Math.max(Math.min(this.aToB?n.toTickIndex()+this.tickSpacing:n.toTickIndex()-1,443636),-443636),nextTickData:null}}getLocalArrayIndex(t,e){return e?this.startArrayIndex-t:t-this.startArrayIndex}isArrayIndexInBounds(t,e){const n=this.getLocalArrayIndex(t.arrayIndex,e),r=this.sequence.length;return n>=0&&n<r}checkIfIndexIsInTickArrayRange(t,e){const n=t+88*this.tickSpacing;return e>=t&&e<n}}const uS=async({account:t,tokenIn:e,tokenOut:n,amountIn:r,amountInMax:i,amountOut:o,amountOutMin:a})=>{try{const n=await PI({blockchain:"solana",address:t.pubkey.toString(),api:eS,cache:10}),s=n.tokenMintA.toString()===e,u=await oS({pool:t.pubkey,freshWhirlpoolData:n,aToB:s}),c=new sS(u,n.tickSpacing,s),l=new rf(s?"4295048016":CL),h=!(!r&&!i);return{price:(({tokenAmount:t,aToB:e,freshWhirlpoolData:n,tickSequence:r,sqrtPriceLimit:i,amountSpecifiedIsInput:o})=>{let a=t,s=RL,u=n.sqrtPrice,c=n.liquidity,l=n.tickCurrentIndex,h=RL;const d=n.feeRate,f=n.protocolFeeRate;let p=new WL(0),y=e?n.feeGrowthGlobalA:n.feeGrowthGlobalB;for(;a.gt(RL)&&!i.eq(u);){let{nextIndex:t}=r.findNextInitializedTickIndex(l),{nextTickPrice:n,nextSqrtPriceLimit:m}=VL(t,i,e);const g=XL(a,d,c,u,m,o,e);h=h.add(g.feeAmount),o?(a=a.sub(g.amountIn),a=a.sub(g.feeAmount),s=s.add(g.amountOut)):(a=a.sub(g.amountOut),s=s.add(g.amountIn),s=s.add(g.feeAmount));let{nextProtocolFee:v,nextFeeGrowthGlobalInput:w}=$L(g.feeAmount,f,c,p,y);if(p=v,y=w,g.nextPrice.eq(n)){const n=r.getTick(t);n.initialized&&(c=KL(n.liquidityNet,c,e)),l=e?t-1:t}else l=zL.sqrtPriceX64ToTickIndex(g.nextPrice);u=g.nextPrice}return s})({tokenAmount:new rf((r||i||o||a).toString()),aToB:s,freshWhirlpoolData:n,tickSequence:c,sqrtPriceLimit:l,amountSpecifiedIsInput:h}).toString(),tickArrays:u,aToB:s,sqrtPriceLimit:l}}catch(t){return{price:void 0,tickArrays:void 0,aToB:void 0,sqrtPriceLimit:void 0}}};let cS=async(t,e)=>{if(e===Hf.solana.wrapped.address)return[];return await PI("solana://whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc/getProgramAccounts",{params:{filters:[{dataSize:eS.span},{memcmp:{offset:8,bytes:"2LecshUwdy9xi7meFgHtFJQNSKk4KdTrcpvaB56dP2NQ"}},{memcmp:{offset:101,bytes:t}},{memcmp:{offset:181,bytes:e}}]},api:eS,cache:86400,cacheKey:["whirlpool",t.toString(),e.toString()].join("-")})},lS=async({tokenIn:t,tokenOut:e,amountIn:n,amountInMax:r,amountOut:i,amountOutMin:o})=>{try{let a=await cS(t,e);return 0===a.length&&(a=await cS(e,t)),a=a.filter((t=>t.data.liquidity.gt(1))),a=(await Promise.all(a.map((async a=>{const{price:s,tickArrays:u,sqrtPriceLimit:c,aToB:l}=await uS({account:a,tokenIn:t,tokenOut:e,amountIn:n,amountInMax:r,amountOut:i,amountOutMin:o});return void 0!==s&&{pubkey:a.pubkey,price:s,tickArrays:u,sqrtPriceLimit:c,aToB:l,data:{tokenVaultA:a.data.tokenVaultA,tokenVaultB:a.data.tokenVaultB}}})))).filter(Boolean),a}catch(t){return[]}},hS=async({tokenIn:t,tokenOut:e,amountIn:n,amountInMax:r,amountOut:i,amountOutMin:o})=>{const a=await lS({tokenIn:t,tokenOut:e,amountIn:n,amountInMax:r,amountOut:i,amountOutMin:o});if(!a||0===a.length)return;let s;return s=n||r?(t=>t.reduce(((t,e)=>Fp.from(e.price).gt(Fp.from(t.price))?e:t)))(a):(t=>t.reduce(((t,e)=>Fp.from(e.price).lt(Fp.from(t.price))?e:t)))(a),s};function dS(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}const fS=Hf.solana;let pS=({path:t})=>{if(!t)return;let e=t.map(((e,n)=>e===fS.currency.address&&t[n+1]!=fS.wrapped.address&&t[n-1]!=fS.wrapped.address?fS.wrapped.address:e));return e[0]==fS.currency.address&&e[1]==fS.wrapped.address?e.splice(0,1):e[e.length-1]==fS.currency.address&&e[e.length-2]==fS.wrapped.address&&e.splice(e.length-1,1),e},yS=async({path:t,amountIn:e,amountInMax:n,amountOut:r,amountOutMin:i})=>1!=t.length&&(t=pS({path:t}),(await lS({tokenIn:t[0],tokenOut:t[1],amountIn:e,amountInMax:n,amountOut:r,amountOutMin:i})).length>0),mS=async({path:t,amountIn:e,amountInMax:n})=>{let r=[Fp.from(e||n)];if(r.push(Fp.from((await hS({tokenIn:t[0],tokenOut:t[1],amountIn:e,amountInMax:n})).price)),3===t.length&&r.push(Fp.from((await hS({tokenIn:t[1],tokenOut:t[2],amountIn:e?r[1]:void 0,amountInMax:n?r[1]:void 0})).price)),r.length==t.length)return r},gS=async({path:t,amountOut:e,amountOutMin:n})=>{t=t.slice().reverse();let r=[Fp.from(e||n)];if(r.push(Fp.from((await hS({tokenIn:t[1],tokenOut:t[0],amountOut:e,amountOutMin:n})).price)),3===t.length&&r.push(Fp.from((await hS({tokenIn:t[2],tokenOut:t[1],amountOut:e?r[1]:void 0,amountOutMin:n?r[1]:void 0})).price)),r.length==t.length)return r.slice().reverse()};const vS=Hf.solana,wS=new rf("14449647541112719096"),bS=new rf("16635068063392030915"),MS=async({instructions:t,owner:e,token:n,account:r})=>{let i;try{i=!!await PI({blockchain:"solana",address:r.toString()})}catch(t){}i||t.push(await Tk.solana.createAssociatedTokenAccountInstruction({token:n,owner:e,payer:e}))},AS=async({account:t,poolOne:e,tickArraysOne:n,tokenAccountOneA:r,tokenVaultOneA:i,tokenAccountOneB:o,tokenVaultOneB:a,poolTwo:s,tickArraysTwo:u,tokenAccountTwoA:c,tokenVaultTwoA:l,tokenAccountTwoB:h,tokenVaultTwoB:d})=>{let f=!1;const p=n.map(((t,e)=>!1!==f?n[f]:t.data?t:(f=e-1,n[e-1])));let y=!1;const m=u.map(((t,e)=>!1!==y?u[y]:t.data?t:(y=e-1,u[e-1])));return[{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isWritable:!1,isSigner:!1},{pubkey:new Xs(t),isWritable:!1,isSigner:!0},{pubkey:new Xs(e.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(s.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(r.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(i.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(o.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(a.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(c.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(l.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(h.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(d.toString()),isWritable:!0,isSigner:!1},{pubkey:p[0].address,isWritable:!0,isSigner:!1},{pubkey:p[1].address,isWritable:!0,isSigner:!1},{pubkey:p[2].address,isWritable:!0,isSigner:!1},{pubkey:m[0].address,isWritable:!0,isSigner:!1},{pubkey:m[1].address,isWritable:!0,isSigner:!1},{pubkey:m[2].address,isWritable:!0,isSigner:!1},{pubkey:(await Xs.findProgramAddress([nf.from("oracle"),new Xs(e.toString()).toBuffer()],new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc")))[0],isWritable:!1,isSigner:!1},{pubkey:(await Xs.findProgramAddress([nf.from("oracle"),new Xs(s.toString()).toBuffer()],new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc")))[0],isWritable:!1,isSigner:!1}]},IS=({amount:t,otherAmountThreshold:e,amountSpecifiedIsInput:n,aToBOne:r,aToBTwo:i,sqrtPriceLimitOne:o,sqrtPriceLimitTwo:a})=>{let s,u;return s=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),af("amountSpecifiedIsInput"),af("aToBOne"),af("aToBTwo"),yf("sqrtPriceLimitOne"),yf("sqrtPriceLimitTwo")]),u=nf.alloc(s.span),s.encode({anchorDiscriminator:bS,amount:new rf(t.toString()),otherAmountThreshold:new rf(e.toString()),amountSpecifiedIsInput:n,aToBOne:r,aToBTwo:i,sqrtPriceLimitOne:o,sqrtPriceLimitTwo:a},u),u},NS=async({account:t,pool:e,tokenAccountA:n,tokenVaultA:r,tokenAccountB:i,tokenVaultB:o,tickArrays:a})=>{let s=!1;const u=a.map(((t,e)=>!1!==s?a[s]:t.data?t:(s=e-1,a[e-1])));return[{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isWritable:!1,isSigner:!1},{pubkey:new Xs(t),isWritable:!1,isSigner:!0},{pubkey:new Xs(e.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(n.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(r.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(i.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(o.toString()),isWritable:!0,isSigner:!1},{pubkey:u[0].address,isWritable:!0,isSigner:!1},{pubkey:u[1].address,isWritable:!0,isSigner:!1},{pubkey:u[2].address,isWritable:!0,isSigner:!1},{pubkey:(await Xs.findProgramAddress([nf.from("oracle"),new Xs(e.toString()).toBuffer()],new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc")))[0],isWritable:!1,isSigner:!1}]},ES=({amount:t,otherAmountThreshold:e,sqrtPriceLimit:n,amountSpecifiedIsInput:r,aToB:i})=>{let o,a;return o=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),yf("sqrtPriceLimit"),af("amountSpecifiedIsInput"),af("aToB")]),a=nf.alloc(o.span),o.encode({anchorDiscriminator:wS,amount:new rf(t.toString()),otherAmountThreshold:new rf(e.toString()),sqrtPriceLimit:n,amountSpecifiedIsInput:r,aToB:i},a),a};var xS={findPath:async({tokenIn:t,tokenOut:e,amountIn:n,amountOut:r,amountInMax:i,amountOutMin:o})=>{if([t,e].includes(fS.currency.address)&&[t,e].includes(fS.wrapped.address))return{path:void 0,exchangePath:void 0};let a,s,u,c;return await yS({path:[t,e],amountIn:n,amountInMax:i,amountOut:r,amountOutMin:o})?a=[t,e]:t!=fS.wrapped.address&&t!=fS.currency.address&&await yS({path:[t,fS.wrapped.address],amountIn:n,amountInMax:i,amountOut:r,amountOutMin:o})&&e!=fS.wrapped.address&&e!=fS.currency.address&&await yS({path:[e,fS.wrapped.address],amountIn:r||o,amountInMax:r||o,amountOut:n||i,amountOutMin:n||i})?a=[t,fS.wrapped.address,e]:!fS.stables.usd.includes(t)&&(s=(await Promise.all(fS.stables.usd.map((async e=>await yS({path:[t,e],amountIn:n,amountInMax:i,amountOut:r,amountOutMin:o})?e:void 0)))).filter(Boolean))&&!fS.stables.usd.includes(e)&&(u=(await Promise.all(fS.stables.usd.map((async t=>await yS({path:[e,t],amountIn:r||o,amountInMax:r||o,amountOut:n||i,amountOutMin:n||i})?t:void 0)))).filter(Boolean))&&(c=s.filter((t=>u.includes(t)))[0])&&(a=[t,c,e]),dS([a,"optionalAccess",t=>t.length])&&a[0]==fS.currency.address?a.splice(1,0,fS.wrapped.address):dS([a,"optionalAccess",t=>t.length])&&a[a.length-1]==fS.currency.address&&a.splice(a.length-1,0,fS.wrapped.address),{path:a,exchangePath:pS({path:a})}},pathExists:yS,getAmounts:async({path:t,tokenIn:e,tokenOut:n,amountOut:r,amountIn:i,amountInMax:o,amountOutMin:a})=>{let s;if(t=pS({path:t}),r){if(s=await gS({path:t,amountOut:r,tokenIn:e,tokenOut:n}),null==(i=s?s[0]:void 0)||o&&i.gt(o))return{};void 0===o&&(o=i)}else if(i){if(s=await mS({path:t,amountIn:i,tokenIn:e,tokenOut:n}),null==(r=s?s[s.length-1]:void 0)||a&&r.lt(a))return{};void 0===a&&(a=r)}else if(a){if(s=await gS({path:t,amountOutMin:a,tokenIn:e,tokenOut:n}),null==(i=s?s[0]:void 0)||o&&i.gt(o))return{};void 0===o&&(o=i)}else if(o){if(s=await mS({path:t,amountInMax:o,tokenIn:e,tokenOut:n}),null==(r=s?s[s.length-1]:void 0)||a&&r.lt(a))return{};void 0===a&&(a=r)}return{amountOut:r||a,amountIn:i||o,amountInMax:o||i,amountOutMin:a||r,amounts:s}},getTransaction:async({path:t,amountIn:e,amountInMax:n,amountOut:r,amountOutMin:i,amounts:o,amountInInput:a,amountOutInput:s,amountInMaxInput:u,amountOutMinInput:c,account:l})=>{let h={blockchain:"solana"},d=[];const f=pS({path:t});if(f.length>3)throw"Orca can only handle fixed paths with a max length of 3 (2 pools)!";const p=f[0],y=3==f.length?f[1]:void 0,m=f[f.length-1];let g;2==f.length?g=[await hS({tokenIn:p,tokenOut:m,amountIn:a||u,amountOut:s||c})]:a||u?(g=[await hS({tokenIn:p,tokenOut:y,amountIn:a||u})],g.push(await hS({tokenIn:y,tokenOut:m,amountIn:g[0].price}))):(g=[await hS({tokenIn:y,tokenOut:m,amountOut:s||c})],g.unshift(await hS({tokenIn:p,tokenOut:y,amountOut:g[0].price})));let v,w=t[0]===vS.currency.address&&f[0]===vS.wrapped.address,b=t[t.length-1]===vS.currency.address&&f[f.length-1]===vS.wrapped.address;const M=await LI("solana");if(w||b){const t=await M.getMinimumBalanceForRentExemption(Tk.solana.TOKEN_LAYOUT.span),n=Zl.generate();v=n.publicKey.toString();const r=w?new rf(e.toString()).add(new rf(t)):new rf(t);let i=Wu.createAccount({fromPubkey:new Xs(l),newAccountPubkey:new Xs(v),programId:new Xs(Tk.solana.TOKEN_PROGRAM),space:Tk.solana.TOKEN_LAYOUT.span,lamports:r});i.signers=[n],d.push(i),d.push(Tk.solana.initializeAccountInstruction({account:v,token:vS.wrapped.address,owner:l}))}if(1===g.length){let t=!(!a&&!c),o=t?e:r,s=t?i:n,u=new Xs(w?v:await Tk.solana.findProgramAddress({owner:l,token:p})),h=new Xs(b?v:await Tk.solana.findProgramAddress({owner:l,token:m}));b||await MS({instructions:d,owner:l,token:m,account:h}),d.push(new gu({programId:new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"),keys:await NS({account:l,pool:g[0].pubkey,tokenAccountA:g[0].aToB?u:h,tokenVaultA:g[0].data.tokenVaultA,tokenAccountB:g[0].aToB?h:u,tokenVaultB:g[0].data.tokenVaultB,tickArrays:g[0].tickArrays}),data:ES({amount:o,otherAmountThreshold:s,sqrtPriceLimit:g[0].sqrtPriceLimit,amountSpecifiedIsInput:t,aToB:g[0].aToB})}))}else if(2===g.length){let t=!(!a&&!c),o=t?e:r,s=t?i:n,u=new Xs(w?v:await Tk.solana.findProgramAddress({owner:l,token:p})),h=f[1],y=new Xs(await Tk.solana.findProgramAddress({owner:l,token:h}));await MS({instructions:d,owner:l,token:h,account:y});let M=new Xs(b?v:await Tk.solana.findProgramAddress({owner:l,token:m}));b||await MS({instructions:d,owner:l,token:m,account:M}),d.push(new gu({programId:new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"),keys:await AS({account:l,poolOne:g[0].pubkey,tickArraysOne:g[0].tickArrays,tokenAccountOneA:g[0].aToB?u:y,tokenVaultOneA:g[0].data.tokenVaultA,tokenAccountOneB:g[0].aToB?y:u,tokenVaultOneB:g[0].data.tokenVaultB,poolTwo:g[1].pubkey,tickArraysTwo:g[1].tickArrays,tokenAccountTwoA:g[1].aToB?y:M,tokenVaultTwoA:g[1].data.tokenVaultA,tokenAccountTwoB:g[1].aToB?M:y,tokenVaultTwoB:g[1].data.tokenVaultB}),data:IS({amount:o,otherAmountThreshold:s,amountSpecifiedIsInput:t,aToBOne:g[0].aToB,aToBTwo:g[1].aToB,sqrtPriceLimitOne:g[0].sqrtPriceLimit,sqrtPriceLimitTwo:g[1].sqrtPriceLimit})}))}return(w||b)&&d.push(Tk.solana.closeAccountInstruction({account:v,owner:l})),h.instructions=d,h},WHIRLPOOL_LAYOUT:eS};const kS={name:"orca",label:"Orca",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI3LjIuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9ImthdG1hbl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNjAwIDQ1MCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNjAwIDQ1MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8cGF0aCBmaWxsPSIjRkZEMTVDIiBkPSJNNDg4LjQsMjIyLjljMCwxMDMuOC04NC4xLDE4Ny45LTE4Ny45LDE4Ny45Yy0xMDMuOCwwLTE4Ny45LTg0LjEtMTg3LjktMTg3LjlDMTEyLjYsMTE5LjEsMTk2LjcsMzUsMzAwLjUsMzUKCUM0MDQuMiwzNSw0ODguNCwxMTkuMSw0ODguNCwyMjIuOXoiLz4KPHBhdGggZmlsbD0iI0ZGRkZGRiIgc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjE3LjY3NTUiIGQ9Ik0yMDkuNSwyOTkuOGMxLjYtMS4xLDMuMS0yLjgsMy45LTUuMWMwLjgtMi42LDAuMy00LjksMC02LjJjMCwwLDAtMC4xLDAtMC4xbDAuMy0xLjhjMC45LDAuNSwxLjksMS4xLDMsMS45CgljMC4zLDAuMiwwLjcsMC41LDEuMSwwLjdjMC41LDAuNCwxLjEsMC44LDEuNCwxYzAuNiwwLjQsMS41LDEsMi41LDEuNWMyNS4xLDE1LjYsNDUuOCwyMiw2Mi4yLDIxLjJjMTctMC44LDI4LjktOS40LDM1LjEtMjEuOQoJYzUuOS0xMi4xLDYuMi0yNywyLTQwLjljLTQuMi0xMy45LTEzLTI3LjUtMjYuMi0zNi45Yy0yMi4yLTE1LjgtNDIuNS0zOS44LTUyLjctNjAuM2MtNS4yLTEwLjQtNy4zLTE4LjctNi43LTI0LjIKCWMwLjMtMi41LDEtNC4xLDItNS4xYzAuOS0xLDIuNi0yLjEsNS45LTIuNmM2LjktMS4xLDE1LTMuNiwyMy4xLTYuMmMzLjItMSw2LjMtMiw5LjUtMi45YzExLjctMy40LDI0LjItNi4zLDM3LjItNi4zCgljMjUuMywwLDU1LDExLDg2LjMsNTYuOGM0MC4yLDU4LjgsMTguMSwxMjQuNC0yOC4yLDE1OC45Yy0yMy4xLDE3LjItNTEuOSwyNi4zLTgxLjUsMjIuOUMyNjIuOSwzNDEuMywyMzQuOSwzMjcuOSwyMDkuNSwyOTkuOHoKCSBNMjE0LjIsMjg0LjZDMjE0LjIsMjg0LjYsMjE0LjIsMjg0LjcsMjE0LjIsMjg0LjZDMjE0LjEsMjg0LjcsMjE0LjIsMjg0LjYsMjE0LjIsMjg0LjZ6IE0yMTEuNiwyODUuOAoJQzIxMS42LDI4NS44LDIxMS43LDI4NS44LDIxMS42LDI4NS44QzIxMS43LDI4NS44LDIxMS42LDI4NS44LDIxMS42LDI4NS44eiIvPgo8cGF0aCBkPSJNMjMyLjUsMTI0LjNjMCwwLDcxLjgtMTkuMSw4Ny41LTE5LjFjMTUuNywwLDc4LjYsMzAuNSw5Ni45LDg2LjNjMjYsNzktNDQuNywxMzAuOS01Mi43LDEyNS44CgljNzYuMS02Mi45LTQ4LjQtMTc5LjEtMTA5LjYtMTcwLjRjLTcuNiwxLjEtMy40LDcuNi0zLjQsNy42bC0xLjcsMTdsLTEyLjctMjEuMkwyMzIuNSwxMjQuM3oiLz4KPHBhdGggZD0iTTQwNi41LDE2Ny42YzIyLjcsMzkuOSwxOCwxNy4xLDEyLjksNjIuN2M5LjMtMTUuMSwyMy45LTMuOCwyOS45LDJjMS4xLDEsMi45LDAuNCwyLjgtMS4xYy0wLjItNi44LTIuMi0yMS40LTEzLjQtMzcuMQoJQzQyMy40LDE3Mi42LDQwNi41LDE2Ny42LDQwNi41LDE2Ny42eiIvPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMC45OTMiIGQ9Ik00MTkuNCwyMzAuM2M1LTQ1LjYsOS43LTIyLjgtMTIuOS02Mi43YzAsMCwxNi45LDUsMzIuMywyNi41YzExLjIsMTUuNywxMy4xLDMwLjMsMTMuNCwzNy4xCgljMC4xLDEuNS0xLjcsMi4xLTIuOCwxLjFDNDQzLjMsMjI2LjUsNDI4LjcsMjE1LjMsNDE5LjQsMjMwLjN6IE00MTkuNCwyMzAuM2MwLjktMi4xLDIuMi01LjUsMi4yLTUuNSIvPgo8cGF0aCBkPSJNMjI0LDIyNC4yYy05LjYsMTYuMi0yOS4yLDE1LTI4LjgsMzQuM2MxNy41LDM5LDE3LjYsMzYuMiwxNy42LDM2LjJjMzIuNS0xOC4yLDE5LjEtNTguNSwxNC4zLTcwLjQKCUMyMjYuNiwyMjMsMjI0LjcsMjIzLDIyNCwyMjQuMnoiLz4KPHBhdGggZD0iTTE1MC40LDI2MC4xYzE4LjcsMi40LDI5LjgtMTMuOCw0NC44LTEuNmMxOS45LDM3LjgsMTcuNiwzNi4yLDE3LjYsMzYuMmMtMzQuNCwxNC40LTU3LjktMjEtNjQuMy0zMi4xCglDMTQ3LjgsMjYxLjMsMTQ5LDI1OS45LDE1MC40LDI2MC4xeiIvPgo8cGF0aCBkPSJNMzA2LjksMjM2YzAsMCwxOC43LDE5LjEsOC45LDIyLjFjLTEyLjItNy41LTM0LTEuNy00NC43LDEuOWMtMi42LDAuOS01LjItMS40LTQuMy00LjFjMy42LTEwLDEyLjYtMjguNiwyOS45LTMxCglDMzA2LjksMjIyLjQsMzA2LjksMjM2LDMwNi45LDIzNnoiLz4KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTMxOC4zLDE0Mi41Yy0yLjEtMy02LjQtMTEsNi44LTExYzEzLjIsMCwzMy4zLDE0LjksMzcuNCwyMC40Yy0xLjMsMy40LTkuOCw0LjEtMTQsMy44Yy00LjItMC4zLTExLjUtMS0xNy0zLjgKCUMzMjYsMTQ5LjIsMzIwLjUsMTQ1LjUsMzE4LjMsMTQyLjV6Ii8+Cjwvc3ZnPgo=",protocol:"orca",slippage:!0,blockchains:["solana"],solana:{router:{address:"whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc",api:xS.WHIRLPOOL_LAYOUT}}};var TS=t=>new IL(Object.assign(kS,{scope:t,findPath:t=>xS.findPath({...t,exchange:kS}),pathExists:t=>xS.pathExists({...t,exchange:kS}),getAmounts:t=>xS.getAmounts({...t,exchange:kS}),getPrep:t=>{},getTransaction:t=>xS.getTransaction({...t,exchange:kS})}));const LS={name:"pancakeswap",label:"PancakeSwap",logo:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTk4IiBoZWlnaHQ9IjE5OSIgdmlld0JveD0iMCAwIDE5OCAxOTkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOTguNTUyIDE5OC42MDdDNjkuMDYxMyAxOTguNTg1IDQ1LjMwNiAxOTEuNTggMjguNzA3OSAxNzguOTk4QzExLjkxMDggMTY2LjI2NSAzIDE0OC4xOTUgMyAxMjcuNzQ4QzMgMTA4LjA0NyAxMS44OTEzIDkzLjg0MTEgMjEuOTUxNyA4NC4yMzg1QzI5LjgzNTkgNzYuNzEzMiAzOC41MzYzIDcxLjg5MzYgNDQuNTk0NSA2OS4xMjEzQzQzLjIyNDUgNjQuOTU5NCA0MS41MTUzIDU5LjUxMDggMzkuOTg2MSA1My44ODMyQzM3LjkzOTkgNDYuMzUyNyAzNS45MzI1IDM3LjUxNzQgMzUuOTMyNSAzMS4wNDI5QzM1LjkzMjUgMjMuMzc5NSAzNy42MjA0IDE1LjY4MzMgNDIuMTcxNCA5LjcwMzA2QzQ2Ljk3OTcgMy4zODQ3NiA1NC4yMTgyIDAgNjIuOTI2NCAwQzY5LjczMjIgMCA3NS41MTAzIDIuNDk5MDMgODAuMDMzOSA2LjgxMDExQzg0LjM1NzkgMTAuOTMwOSA4Ny4yMzU3IDE2LjQwMzQgODkuMjIyNyAyMi4xMDgyQzkyLjcxNDMgMzIuMTMyNSA5NC4wNzM4IDQ0LjcyNjQgOTQuNDU1MSA1Ny4yOTQ1SDEwMi43OTZDMTAzLjE3OCA0NC43MjY0IDEwNC41MzcgMzIuMTMyNSAxMDguMDI5IDIyLjEwODJDMTEwLjAxNiAxNi40MDM0IDExMi44OTQgMTAuOTMwOSAxMTcuMjE4IDYuODEwMTFDMTIxLjc0MSAyLjQ5OTAzIDEyNy41MTkgMCAxMzQuMzI1IDBDMTQzLjAzMyAwIDE1MC4yNzIgMy4zODQ3NiAxNTUuMDggOS43MDMwNkMxNTkuNjMxIDE1LjY4MzMgMTYxLjMxOSAyMy4zNzk1IDE2MS4zMTkgMzEuMDQyOUMxNjEuMzE5IDM3LjUxNzQgMTU5LjMxMiA0Ni4zNTI3IDE1Ny4yNjUgNTMuODgzMkMxNTUuNzM2IDU5LjUxMDggMTU0LjAyNyA2NC45NTk0IDE1Mi42NTcgNjkuMTIxM0MxNTguNzE1IDcxLjg5MzYgMTY3LjQxNiA3Ni43MTMyIDE3NS4zIDg0LjIzODVDMTg1LjM2IDkzLjg0MTEgMTk0LjI1MiAxMDguMDQ3IDE5NC4yNTIgMTI3Ljc0OEMxOTQuMjUyIDE0OC4xOTUgMTg1LjM0MSAxNjYuMjY1IDE2OC41NDQgMTc4Ljk5OEMxNTEuOTQ1IDE5MS41OCAxMjguMTkgMTk4LjU4NSA5OC42OTk2IDE5OC42MDdIOTguNTUyWiIgZmlsbD0iIzYzMzAwMSIvPgo8cGF0aCBkPSJNNjIuOTI2MiA3LjI4ODMzQzUwLjE3MTYgNy4yODgzMyA0NC4zMDA0IDE2LjgwMzcgNDQuMzAwNCAyOS45NjMyQzQ0LjMwMDQgNDAuNDIzMSA1MS4xMjIyIDYxLjM3MTUgNTMuOTIxMiA2OS41MjYzQzU0LjU1MDggNzEuMzYwNSA1My41NjE2IDczLjM3MDEgNTEuNzU3NCA3NC4wODE0QzQxLjUzNTEgNzguMTEyMSAxMS4zNjc5IDkyLjg3IDExLjM2NzkgMTI2LjY2OUMxMS4zNjc5IDE2Mi4yNzIgNDIuMDI0NiAxODkuMTE3IDk4LjU1ODEgMTg5LjE2Qzk4LjU4MDYgMTg5LjE2IDk4LjYwMzEgMTg5LjE1OSA5OC42MjU2IDE4OS4xNTlDOTguNjQ4MSAxODkuMTU5IDk4LjY3MDYgMTg5LjE2IDk4LjY5MzEgMTg5LjE2QzE1NS4yMjcgMTg5LjExNyAxODUuODgzIDE2Mi4yNzIgMTg1Ljg4MyAxMjYuNjY5QzE4NS44ODMgOTIuODcgMTU1LjcxNiA3OC4xMTIxIDE0NS40OTQgNzQuMDgxNEMxNDMuNjkgNzMuMzcwMSAxNDIuNyA3MS4zNjA1IDE0My4zMyA2OS41MjYzQzE0Ni4xMjkgNjEuMzcxNSAxNTIuOTUxIDQwLjQyMzEgMTUyLjk1MSAyOS45NjMyQzE1Mi45NTEgMTYuODAzNyAxNDcuMDggNy4yODgzMyAxMzQuMzI1IDcuMjg4MzNDMTE1Ljk2NSA3LjI4ODMzIDExMS4zODkgMzMuMjk1NSAxMTEuMDYyIDYxLjIwNzVDMTExLjA0IDYzLjA3MDkgMTA5LjUzNCA2NC41ODI4IDEwNy42NyA2NC41ODI4SDg5LjU4MDdDODcuNzE3MiA2NC41ODI4IDg2LjIxMDggNjMuMDcwOSA4Ni4xODkgNjEuMjA3NUM4NS44NjI2IDMzLjI5NTUgODEuMjg2IDcuMjg4MzMgNjIuOTI2MiA3LjI4ODMzWiIgZmlsbD0iI0QxODg0RiIvPgo8cGF0aCBkPSJNOTguNjkzMSAxNzcuNzU1QzU3LjE1NTEgMTc3Ljc1NSAxMS40Mzk3IDE1NS41MiAxMS4zNjgxIDEyNi43MzdDMTEuMzY4IDEyNi43ODEgMTEuMzY3OSAxMjYuODI2IDExLjM2NzkgMTI2Ljg3MUMxMS4zNjc5IDE2Mi41MDMgNDIuMDczNCAxODkuMzYyIDk4LjY5MzEgMTg5LjM2MkMxNTUuMzEzIDE4OS4zNjIgMTg2LjAxOCAxNjIuNTAzIDE4Ni4wMTggMTI2Ljg3MUMxODYuMDE4IDEyNi44MjYgMTg2LjAxOCAxMjYuNzgxIDE4Ni4wMTggMTI2LjczN0MxODUuOTQ2IDE1NS41MiAxNDAuMjMxIDE3Ny43NTUgOTguNjkzMSAxNzcuNzU1WiIgZmlsbD0iI0ZFREM5MCIvPgo8cGF0aCBkPSJNNzUuNjEzNSAxMTcuODk2Qzc1LjYxMzUgMTI3LjYxNCA3MS4wMjEgMTMyLjY3NSA2NS4zNTU4IDEzMi42NzVDNTkuNjkwNyAxMzIuNjc1IDU1LjA5ODEgMTI3LjYxNCA1NS4wOTgxIDExNy44OTZDNTUuMDk4MSAxMDguMTc4IDU5LjY5MDcgMTAzLjExNyA2NS4zNTU4IDEwMy4xMTdDNzEuMDIxIDEwMy4xMTcgNzUuNjEzNSAxMDguMTc4IDc1LjYxMzUgMTE3Ljg5NloiIGZpbGw9IiM2MzMwMDEiLz4KPHBhdGggZD0iTTE0Mi4yODggMTE3Ljg5NkMxNDIuMjg4IDEyNy42MTQgMTM3LjY5NiAxMzIuNjc1IDEzMi4wMzEgMTMyLjY3NUMxMjYuMzY1IDEzMi42NzUgMTIxLjc3MyAxMjcuNjE0IDEyMS43NzMgMTE3Ljg5NkMxMjEuNzczIDEwOC4xNzggMTI2LjM2NSAxMDMuMTE3IDEzMi4wMzEgMTAzLjExN0MxMzcuNjk2IDEwMy4xMTcgMTQyLjI4OCAxMDguMTc4IDE0Mi4yODggMTE3Ljg5NloiIGZpbGw9IiM2MzMwMDEiLz4KPC9zdmc+Cg==",protocol:"uniswap_v2",slippage:!0,blockchains:["bsc"],bsc:{router:{address:"0x10ED43C718714eb63d5aA57B78B54704E256024E",api:SL.ROUTER},factory:{address:"0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73",api:SL.FACTORY},pair:{api:SL.PAIR}}};var SS=t=>new IL(Object.assign(LS,{scope:t,findPath:t=>SL.findPath({...t,exchange:LS}),pathExists:t=>SL.pathExists({...t,exchange:LS}),getAmounts:t=>SL.getAmounts({...t,exchange:LS}),getPrep:t=>SL.getPrep({...t,exchange:LS}),getTransaction:t=>SL.getTransaction({...t,exchange:LS})}));function jS(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}const DS=({blockchain:t,exchange:e,path:n})=>{if(!n)return;let r=n.map(((e,r)=>e===Hf[t].currency.address&&n[r+1]!=Hf[t].wrapped.address&&n[r-1]!=Hf[t].wrapped.address?Hf[t].wrapped.address:e));return r[0]==Hf[t].currency.address&&r[1]==Hf[t].wrapped.address?r.splice(0,1):r[r.length-1]==Hf[t].currency.address&&r[r.length-2]==Hf[t].wrapped.address&&r.splice(r.length-1,1),r},CS=async({blockchain:t,exchange:e,path:n,amountIn:r,amountOut:i,block:o})=>{if((n=DS({blockchain:t,exchange:e,path:n})).length>2)throw"PancakeSwap V3 can only check paths for up to 2 tokens!";try{let o=(await Promise.all(e.fees.map((r=>PI({blockchain:Hf[t].name,address:e[t].factory.address,method:"getPool",api:e[t].factory.api,cache:3600,params:[n[0],n[1],r]}).then((e=>({blockchain:t,address:e,path:n,fee:r,token0:[...n].sort()[0],token1:[...n].sort()[1]}))).catch((()=>{})))))).filter(Boolean);return o=o.filter((e=>e.address!=Hf[t].zero)),o=(await Promise.all(o.map((async t=>{try{let n;return n=r?await(async({exchange:t,pool:e,inputAmount:n})=>(await PI({blockchain:e.blockchain,address:t[e.blockchain].quoter.address,api:t[e.blockchain].quoter.api,method:"quoteExactInput",params:{path:oI(["address","uint24","address"],[e.path[0],e.fee,e.path[1]]),amountIn:n},cache:5})).amountOut)({exchange:e,pool:t,inputAmount:r}):await(async({exchange:t,pool:e,outputAmount:n})=>(await PI({blockchain:e.blockchain,address:t[e.blockchain].quoter.address,api:t[e.blockchain].quoter.api,method:"quoteExactOutput",params:{path:oI(["address","uint24","address"],[e.path[1],e.fee,e.path[0]]),amountOut:n},cache:5})).amountIn)({exchange:e,pool:t,outputAmount:i}),{...t,amountIn:r||n,amountOut:i||n}}catch(t){}})))).filter(Boolean),r?o.sort(((t,e)=>e.amountOut.gt(t.amountOut)?1:-1))[0]:o.sort(((t,e)=>e.amountIn.lt(t.amountIn)?1:-1))[0]}catch(t){return}};let OS=({blockchain:t,exchange:e,path:n,pools:r,amountIn:i})=>r[r.length-1].amountOut,zS=async({blockchain:t,exchange:e,path:n,pools:r,amountOut:i,block:o})=>{if(void 0===o)return r[0].amountIn;{let n;2==r.length?n=oI(["address","uint24","address","uint24","address"],[r[1].path[1],r[1].fee,r[0].path[1],r[0].fee,r[0].path[0]]):1==r.length&&(n=oI(["address","uint24","address"],[r[0].path[1],r[0].fee,r[0].path[0]]));return(await PI({block:o,blockchain:t,address:e[t].quoter.address,api:e[t].quoter.api,method:"quoteExactOutput",params:{path:n,amountOut:i}})).amountIn}};var PS={findPath:async({blockchain:t,exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s})=>{if([n,r].includes(Hf[t].currency.address)&&[n,r].includes(Hf[t].wrapped.address))return{path:void 0,exchangePath:void 0};let u,c=[];if(c=[await CS({exchange:e,blockchain:t,path:[n,r],amountIn:i||a,amountOut:o||s})],c.filter(Boolean).length&&(u=[n,r]),u||n==Hf[t].wrapped.address||r==Hf[t].wrapped.address||(c=[],o||s?(c.push(await CS({exchange:e,blockchain:t,path:[Hf[t].wrapped.address,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await CS({exchange:e,blockchain:t,path:[n,Hf[t].wrapped.address],amountOut:c[0].amountIn}))):(c.push(await CS({exchange:e,blockchain:t,path:[n,Hf[t].wrapped.address],amountIn:i||a})),c.filter(Boolean).length&&c.push(await CS({exchange:e,blockchain:t,path:[Hf[t].wrapped.address,r],amountIn:c[0].amountOut}))),2===c.filter(Boolean).length&&(u=[n,Hf[t].wrapped.address,r])),!u){c=[];let l=(await Promise.all(Hf[t].stables.usd.map((async u=>{let c=[];if(o||s?(c.push(await CS({exchange:e,blockchain:t,path:[u,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await CS({exchange:e,blockchain:t,path:[n,u],amountOut:c[0].amountIn}))):(c.push(await CS({exchange:e,blockchain:t,path:[n,u],amountIn:i||a})),c.filter(Boolean).length&&c.push(await CS({exchange:e,blockchain:t,path:[u,r],amountIn:c[0].amountOut}))),2===c.filter(Boolean).length)return[u,c]})))).filter(Boolean)[0];l&&(u=[n,l[0],r],c=l[1])}return jS([u,"optionalAccess",t=>t.length])&&u[0]==Hf[t].currency.address?u.splice(1,0,Hf[t].wrapped.address):jS([u,"optionalAccess",t=>t.length])&&u[u.length-1]==Hf[t].currency.address&&u.splice(u.length-1,0,Hf[t].wrapped.address),u||(c=[]),{path:u,pools:c,exchangePath:DS({blockchain:t,exchange:e,path:u})}},pathExists:async({blockchain:t,exchange:e,path:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a})=>{try{return!!await CS({blockchain:t,exchange:e,path:n,amountIn:r||o,amountOut:i||a})}catch(t){return!1}},getAmounts:async({blockchain:t,exchange:e,path:n,pools:r,block:i,tokenIn:o,tokenOut:a,amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l})=>{if(s){if(null==(u=await zS({blockchain:t,exchange:e,block:i,path:n,pools:r,amountOut:s,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(u){if(null==(s=await OS({blockchain:t,exchange:e,path:n,pools:r,amountIn:u,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}else if(l){if(null==(u=await zS({blockchain:t,exchange:e,block:i,path:n,pools:r,amountOut:l,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(c){if(null==(s=await OS({blockchain:t,exchange:e,path:n,pools:r,amountIn:c,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}return{amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l}},getPrep:async({exchange:t,blockchain:e,tokenIn:n,amountIn:r,account:i,tokenOut:o})=>{if(n===Hf[e].currency.address)return;let a;a=o===Hf[e].currency.address?t[e].smartRouter.address:t[e].router.address;if((await PI({blockchain:e,address:n,method:"allowance",api:Tk[e][20],params:[i,a]})).lt(r)){return{transaction:{blockchain:e,from:i,to:n,api:Tk[e][20],method:"approve",params:[a,Hf[e].maxInt]}}}},getTransaction:async({blockchain:t,exchange:e,pools:n,path:r,amountIn:i,amountInMax:o,amountOut:a,amountOutMin:s,amountInInput:u,amountOutInput:c,amountInMaxInput:l,amountOutMinInput:h,account:d,inputTokenPushed:f})=>{const p={blockchain:t,from:d},y=Math.floor(Date.now()/1e3)+21600,m=DS({blockchain:t,exchange:e,path:r});if(r[r.length-1]===Hf[t].currency.address){p.to=e[t].smartRouter.address,p.api=e[t].smartRouter.api,p.method="multicall";const r=new Og(e[t].smartRouter.api);if(p.params={data:[]},2===m.length)u||h?p.params.data.push(r.encodeFunctionData("exactInputSingle",[{tokenIn:m[0],tokenOut:m[1],fee:n[0].fee,recipient:e[t].smartRouter.address,deadline:y,amountIn:(o||i).toString(),amountOutMinimum:(s||a).toString(),sqrtPriceLimitX96:Hf[t].zero}])):(c||l)&&p.params.data.push(r.encodeFunctionData("exactOutputSingle",[{tokenIn:m[0],tokenOut:m[1],fee:n[0].fee,recipient:e[t].smartRouter.address,deadline:y,amountInMaximum:(o||i).toString(),amountOut:(s||a).toString(),sqrtPriceLimitX96:Hf[t].zero}]));else{const d=oI(["address","uint24","address","uint24","address"],[n[0].path[0],n[0].fee,n[0].path[1],n[1].fee,n[1].path[1]]);u||h?p.params.data.push(r.encodeFunctionData("exactInput",[{path:d,recipient:e[t].smartRouter.address,deadline:y,amountIn:(o||i).toString(),amountOutMinimum:(s||a).toString()}])):(c||l)&&p.params.data.push(r.encodeFunctionData("exactOutput",[{path:d,recipient:e[t].smartRouter.address,deadline:y,amountInMaximum:(o||i).toString(),amountOut:(s||a).toString()}]))}p.params.data.push(r.encodeFunctionData("unwrapWETH9",[(s||a).toString(),d]))}else if(p.to=e[t].router.address,p.api=e[t].router.api,r[0]===Hf[t].currency.address&&(p.value=(i||o).toString()),2===m.length)u||h?(p.method="exactInputSingle",p.params={params:{tokenIn:m[0],tokenOut:m[1],fee:n[0].fee,recipient:d,deadline:y,amountIn:(o||i).toString(),amountOutMinimum:(s||a).toString(),sqrtPriceLimitX96:Hf[t].zero}}):(c||l)&&(p.method="exactOutputSingle",p.params={params:{tokenIn:m[0],tokenOut:m[1],fee:n[0].fee,recipient:d,deadline:y,amountInMaximum:(o||i).toString(),amountOut:(s||a).toString(),sqrtPriceLimitX96:Hf[t].zero}});else{const t=oI(["address","uint24","address","uint24","address"],[n[0].path[0],n[0].fee,n[0].path[1],n[1].fee,n[1].path[1]]);u||h?(p.method="exactInput",p.params={params:{path:t,recipient:d,deadline:y,amountIn:(o||i).toString(),amountOutMinimum:(s||a).toString()}}):(c||l)&&(p.method="exactOutput",p.params={params:{path:t,recipient:d,deadline:y,amountInMaximum:(o||i).toString(),amountOut:(s||a).toString()}})}return p},ROUTER:[{inputs:[{internalType:"address",name:"_deployer",type:"address"},{internalType:"address",name:"_factory",type:"address"},{internalType:"address",name:"_WETH9",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"WETH9",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"deployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinimum",type:"uint256"}],internalType:"struct ISwapRouter.ExactInputParams",name:"params",type:"tuple"}],name:"exactInput",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinimum",type:"uint256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct ISwapRouter.ExactInputSingleParams",name:"params",type:"tuple"}],name:"exactInputSingle",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMaximum",type:"uint256"}],internalType:"struct ISwapRouter.ExactOutputParams",name:"params",type:"tuple"}],name:"exactOutput",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMaximum",type:"uint256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct ISwapRouter.ExactOutputSingleParams",name:"params",type:"tuple"}],name:"exactOutputSingle",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes[]",name:"data",type:"bytes[]"}],name:"multicall",outputs:[{internalType:"bytes[]",name:"results",type:"bytes[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"int256",name:"amount0Delta",type:"int256"},{internalType:"int256",name:"amount1Delta",type:"int256"},{internalType:"bytes",name:"_data",type:"bytes"}],name:"pancakeV3SwapCallback",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"refundETH",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitAllowed",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitAllowedIfNecessary",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitIfNecessary",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"}],name:"sweepToken",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"sweepTokenWithFee",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"}],name:"unwrapWETH9",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"unwrapWETH9WithFee",outputs:[],stateMutability:"payable",type:"function"},{stateMutability:"payable",type:"receive"}],SMART_ROUTER:[{inputs:[{internalType:"address",name:"_factoryV2",type:"address"},{internalType:"address",name:"_deployer",type:"address"},{internalType:"address",name:"_factoryV3",type:"address"},{internalType:"address",name:"_positionManager",type:"address"},{internalType:"address",name:"_stableFactory",type:"address"},{internalType:"address",name:"_stableInfo",type:"address"},{internalType:"address",name:"_WETH9",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"factory",type:"address"},{indexed:!0,internalType:"address",name:"info",type:"address"}],name:"SetStableSwap",type:"event"},{inputs:[],name:"WETH9",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"approveMax",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"approveMaxMinusOne",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"approveZeroThenMax",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"approveZeroThenMaxMinusOne",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes",name:"data",type:"bytes"}],name:"callPositionManager",outputs:[{internalType:"bytes",name:"result",type:"bytes"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes[]",name:"paths",type:"bytes[]"},{internalType:"uint128[]",name:"amounts",type:"uint128[]"},{internalType:"uint24",name:"maximumTickDivergence",type:"uint24"},{internalType:"uint32",name:"secondsAgo",type:"uint32"}],name:"checkOracleSlippage",outputs:[],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"uint24",name:"maximumTickDivergence",type:"uint24"},{internalType:"uint32",name:"secondsAgo",type:"uint32"}],name:"checkOracleSlippage",outputs:[],stateMutability:"view",type:"function"},{inputs:[],name:"deployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinimum",type:"uint256"}],internalType:"struct IV3SwapRouter.ExactInputParams",name:"params",type:"tuple"}],name:"exactInput",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinimum",type:"uint256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IV3SwapRouter.ExactInputSingleParams",name:"params",type:"tuple"}],name:"exactInputSingle",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address[]",name:"path",type:"address[]"},{internalType:"uint256[]",name:"flag",type:"uint256[]"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address",name:"to",type:"address"}],name:"exactInputStableSwap",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMaximum",type:"uint256"}],internalType:"struct IV3SwapRouter.ExactOutputParams",name:"params",type:"tuple"}],name:"exactOutput",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMaximum",type:"uint256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IV3SwapRouter.ExactOutputSingleParams",name:"params",type:"tuple"}],name:"exactOutputSingle",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address[]",name:"path",type:"address[]"},{internalType:"uint256[]",name:"flag",type:"uint256[]"},{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{internalType:"address",name:"to",type:"address"}],name:"exactOutputStableSwap",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"factoryV2",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"getApprovalType",outputs:[{internalType:"enum IApproveAndCall.ApprovalType",name:"",type:"uint8"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"token0",type:"address"},{internalType:"address",name:"token1",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"},{internalType:"uint256",name:"amount0Min",type:"uint256"},{internalType:"uint256",name:"amount1Min",type:"uint256"}],internalType:"struct IApproveAndCall.IncreaseLiquidityParams",name:"params",type:"tuple"}],name:"increaseLiquidity",outputs:[{internalType:"bytes",name:"result",type:"bytes"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"token0",type:"address"},{internalType:"address",name:"token1",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint256",name:"amount0Min",type:"uint256"},{internalType:"uint256",name:"amount1Min",type:"uint256"},{internalType:"address",name:"recipient",type:"address"}],internalType:"struct IApproveAndCall.MintParams",name:"params",type:"tuple"}],name:"mint",outputs:[{internalType:"bytes",name:"result",type:"bytes"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes32",name:"previousBlockhash",type:"bytes32"},{internalType:"bytes[]",name:"data",type:"bytes[]"}],name:"multicall",outputs:[{internalType:"bytes[]",name:"",type:"bytes[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"bytes[]",name:"data",type:"bytes[]"}],name:"multicall",outputs:[{internalType:"bytes[]",name:"",type:"bytes[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes[]",name:"data",type:"bytes[]"}],name:"multicall",outputs:[{internalType:"bytes[]",name:"results",type:"bytes[]"}],stateMutability:"payable",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int256",name:"amount0Delta",type:"int256"},{internalType:"int256",name:"amount1Delta",type:"int256"},{internalType:"bytes",name:"_data",type:"bytes"}],name:"pancakeV3SwapCallback",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"positionManager",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"pull",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"refundETH",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitAllowed",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitAllowedIfNecessary",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitIfNecessary",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"_factory",type:"address"},{internalType:"address",name:"_info",type:"address"}],name:"setStableSwap",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"stableSwapFactory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"stableSwapInfo",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"}],name:"swapExactTokensForTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"}],name:"swapTokensForExactTokens",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"}],name:"sweepToken",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"}],name:"sweepToken",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"sweepTokenWithFee",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"sweepTokenWithFee",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"}],name:"unwrapWETH9",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"unwrapWETH9WithFee",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"unwrapWETH9WithFee",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"value",type:"uint256"}],name:"wrapETH",outputs:[],stateMutability:"payable",type:"function"},{stateMutability:"payable",type:"receive"}],FACTORY:[{inputs:[{internalType:"address",name:"_poolDeployer",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint24",name:"fee",type:"uint24"},{indexed:!0,internalType:"int24",name:"tickSpacing",type:"int24"}],name:"FeeAmountEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint24",name:"fee",type:"uint24"},{indexed:!1,internalType:"bool",name:"whitelistRequested",type:"bool"},{indexed:!1,internalType:"bool",name:"enabled",type:"bool"}],name:"FeeAmountExtraInfoUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnerChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token0",type:"address"},{indexed:!0,internalType:"address",name:"token1",type:"address"},{indexed:!0,internalType:"uint24",name:"fee",type:"uint24"},{indexed:!1,internalType:"int24",name:"tickSpacing",type:"int24"},{indexed:!1,internalType:"address",name:"pool",type:"address"}],name:"PoolCreated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"lmPoolDeployer",type:"address"}],name:"SetLmPoolDeployer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"bool",name:"verified",type:"bool"}],name:"WhiteListAdded",type:"event"},{inputs:[{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint128",name:"amount0Requested",type:"uint128"},{internalType:"uint128",name:"amount1Requested",type:"uint128"}],name:"collectProtocol",outputs:[{internalType:"uint128",name:"amount0",type:"uint128"},{internalType:"uint128",name:"amount1",type:"uint128"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"}],name:"createPool",outputs:[{internalType:"address",name:"pool",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"int24",name:"tickSpacing",type:"int24"}],name:"enableFeeAmount",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint24",name:"",type:"uint24"}],name:"feeAmountTickSpacing",outputs:[{internalType:"int24",name:"",type:"int24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint24",name:"",type:"uint24"}],name:"feeAmountTickSpacingExtraInfo",outputs:[{internalType:"bool",name:"whitelistRequested",type:"bool"},{internalType:"bool",name:"enabled",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint24",name:"",type:"uint24"}],name:"getPool",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"lmPoolDeployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"poolDeployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"bool",name:"whitelistRequested",type:"bool"},{internalType:"bool",name:"enabled",type:"bool"}],name:"setFeeAmountExtraInfo",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint32",name:"feeProtocol0",type:"uint32"},{internalType:"uint32",name:"feeProtocol1",type:"uint32"}],name:"setFeeProtocol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"lmPool",type:"address"}],name:"setLmPool",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_lmPoolDeployer",type:"address"}],name:"setLmPoolDeployer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_owner",type:"address"}],name:"setOwner",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"},{internalType:"bool",name:"verified",type:"bool"}],name:"setWhiteListAddress",outputs:[],stateMutability:"nonpayable",type:"function"}],POOL:[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount",type:"uint128"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"}],name:"Burn",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount0",type:"uint128"},{indexed:!1,internalType:"uint128",name:"amount1",type:"uint128"}],name:"Collect",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"uint128",name:"amount0",type:"uint128"},{indexed:!1,internalType:"uint128",name:"amount1",type:"uint128"}],name:"CollectProtocol",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"},{indexed:!1,internalType:"uint256",name:"paid0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"paid1",type:"uint256"}],name:"Flash",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint16",name:"observationCardinalityNextOld",type:"uint16"},{indexed:!1,internalType:"uint16",name:"observationCardinalityNextNew",type:"uint16"}],name:"IncreaseObservationCardinalityNext",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{indexed:!1,internalType:"int24",name:"tick",type:"int24"}],name:"Initialize",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount",type:"uint128"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"}],name:"Mint",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint32",name:"feeProtocol0Old",type:"uint32"},{indexed:!1,internalType:"uint32",name:"feeProtocol1Old",type:"uint32"},{indexed:!1,internalType:"uint32",name:"feeProtocol0New",type:"uint32"},{indexed:!1,internalType:"uint32",name:"feeProtocol1New",type:"uint32"}],name:"SetFeeProtocol",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"addr",type:"address"}],name:"SetLmPoolEvent",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"int256",name:"amount0",type:"int256"},{indexed:!1,internalType:"int256",name:"amount1",type:"int256"},{indexed:!1,internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{indexed:!1,internalType:"uint128",name:"liquidity",type:"uint128"},{indexed:!1,internalType:"int24",name:"tick",type:"int24"},{indexed:!1,internalType:"uint128",name:"protocolFeesToken0",type:"uint128"},{indexed:!1,internalType:"uint128",name:"protocolFeesToken1",type:"uint128"}],name:"Swap",type:"event"},{inputs:[{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount",type:"uint128"}],name:"burn",outputs:[{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount0Requested",type:"uint128"},{internalType:"uint128",name:"amount1Requested",type:"uint128"}],name:"collect",outputs:[{internalType:"uint128",name:"amount0",type:"uint128"},{internalType:"uint128",name:"amount1",type:"uint128"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint128",name:"amount0Requested",type:"uint128"},{internalType:"uint128",name:"amount1Requested",type:"uint128"}],name:"collectProtocol",outputs:[{internalType:"uint128",name:"amount0",type:"uint128"},{internalType:"uint128",name:"amount1",type:"uint128"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"fee",outputs:[{internalType:"uint24",name:"",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[],name:"feeGrowthGlobal0X128",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"feeGrowthGlobal1X128",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"flash",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"observationCardinalityNext",type:"uint16"}],name:"increaseObservationCardinalityNext",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint160",name:"sqrtPriceX96",type:"uint160"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"liquidity",outputs:[{internalType:"uint128",name:"",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"lmPool",outputs:[{internalType:"contract IPancakeV3LmPool",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"maxLiquidityPerTick",outputs:[{internalType:"uint128",name:"",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes",name:"data",type:"bytes"}],name:"mint",outputs:[{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"observations",outputs:[{internalType:"uint32",name:"blockTimestamp",type:"uint32"},{internalType:"int56",name:"tickCumulative",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityCumulativeX128",type:"uint160"},{internalType:"bool",name:"initialized",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint32[]",name:"secondsAgos",type:"uint32[]"}],name:"observe",outputs:[{internalType:"int56[]",name:"tickCumulatives",type:"int56[]"},{internalType:"uint160[]",name:"secondsPerLiquidityCumulativeX128s",type:"uint160[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"",type:"bytes32"}],name:"positions",outputs:[{internalType:"uint128",name:"liquidity",type:"uint128"},{internalType:"uint256",name:"feeGrowthInside0LastX128",type:"uint256"},{internalType:"uint256",name:"feeGrowthInside1LastX128",type:"uint256"},{internalType:"uint128",name:"tokensOwed0",type:"uint128"},{internalType:"uint128",name:"tokensOwed1",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"protocolFees",outputs:[{internalType:"uint128",name:"token0",type:"uint128"},{internalType:"uint128",name:"token1",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint32",name:"feeProtocol0",type:"uint32"},{internalType:"uint32",name:"feeProtocol1",type:"uint32"}],name:"setFeeProtocol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_lmPool",type:"address"}],name:"setLmPool",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"slot0",outputs:[{internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{internalType:"int24",name:"tick",type:"int24"},{internalType:"uint16",name:"observationIndex",type:"uint16"},{internalType:"uint16",name:"observationCardinality",type:"uint16"},{internalType:"uint16",name:"observationCardinalityNext",type:"uint16"},{internalType:"uint32",name:"feeProtocol",type:"uint32"},{internalType:"bool",name:"unlocked",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"}],name:"snapshotCumulativesInside",outputs:[{internalType:"int56",name:"tickCumulativeInside",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityInsideX128",type:"uint160"},{internalType:"uint32",name:"secondsInside",type:"uint32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"bool",name:"zeroForOne",type:"bool"},{internalType:"int256",name:"amountSpecified",type:"int256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"},{internalType:"bytes",name:"data",type:"bytes"}],name:"swap",outputs:[{internalType:"int256",name:"amount0",type:"int256"},{internalType:"int256",name:"amount1",type:"int256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"int16",name:"",type:"int16"}],name:"tickBitmap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"tickSpacing",outputs:[{internalType:"int24",name:"",type:"int24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int24",name:"",type:"int24"}],name:"ticks",outputs:[{internalType:"uint128",name:"liquidityGross",type:"uint128"},{internalType:"int128",name:"liquidityNet",type:"int128"},{internalType:"uint256",name:"feeGrowthOutside0X128",type:"uint256"},{internalType:"uint256",name:"feeGrowthOutside1X128",type:"uint256"},{internalType:"int56",name:"tickCumulativeOutside",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityOutsideX128",type:"uint160"},{internalType:"uint32",name:"secondsOutside",type:"uint32"},{internalType:"bool",name:"initialized",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"token0",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"token1",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"}],QUOTER:[{inputs:[{internalType:"address",name:"_deployer",type:"address"},{internalType:"address",name:"_factory",type:"address"},{internalType:"address",name:"_WETH9",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"WETH9",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"deployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int256",name:"amount0Delta",type:"int256"},{internalType:"int256",name:"amount1Delta",type:"int256"},{internalType:"bytes",name:"path",type:"bytes"}],name:"pancakeV3SwapCallback",outputs:[],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"uint256",name:"amountIn",type:"uint256"}],name:"quoteExactInput",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint160[]",name:"sqrtPriceX96AfterList",type:"uint160[]"},{internalType:"uint32[]",name:"initializedTicksCrossedList",type:"uint32[]"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IQuoterV2.QuoteExactInputSingleParams",name:"params",type:"tuple"}],name:"quoteExactInputSingle",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint160",name:"sqrtPriceX96After",type:"uint160"},{internalType:"uint32",name:"initializedTicksCrossed",type:"uint32"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"uint256",name:"amountOut",type:"uint256"}],name:"quoteExactOutput",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint160[]",name:"sqrtPriceX96AfterList",type:"uint160[]"},{internalType:"uint32[]",name:"initializedTicksCrossedList",type:"uint32[]"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IQuoterV2.QuoteExactOutputSingleParams",name:"params",type:"tuple"}],name:"quoteExactOutputSingle",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint160",name:"sqrtPriceX96After",type:"uint160"},{internalType:"uint32",name:"initializedTicksCrossed",type:"uint32"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"}]};const _S={name:"pancakeswap_v3",label:"PancakeSwap v3",logo:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTk4IiBoZWlnaHQ9IjE5OSIgdmlld0JveD0iMCAwIDE5OCAxOTkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOTguNTUyIDE5OC42MDdDNjkuMDYxMyAxOTguNTg1IDQ1LjMwNiAxOTEuNTggMjguNzA3OSAxNzguOTk4QzExLjkxMDggMTY2LjI2NSAzIDE0OC4xOTUgMyAxMjcuNzQ4QzMgMTA4LjA0NyAxMS44OTEzIDkzLjg0MTEgMjEuOTUxNyA4NC4yMzg1QzI5LjgzNTkgNzYuNzEzMiAzOC41MzYzIDcxLjg5MzYgNDQuNTk0NSA2OS4xMjEzQzQzLjIyNDUgNjQuOTU5NCA0MS41MTUzIDU5LjUxMDggMzkuOTg2MSA1My44ODMyQzM3LjkzOTkgNDYuMzUyNyAzNS45MzI1IDM3LjUxNzQgMzUuOTMyNSAzMS4wNDI5QzM1LjkzMjUgMjMuMzc5NSAzNy42MjA0IDE1LjY4MzMgNDIuMTcxNCA5LjcwMzA2QzQ2Ljk3OTcgMy4zODQ3NiA1NC4yMTgyIDAgNjIuOTI2NCAwQzY5LjczMjIgMCA3NS41MTAzIDIuNDk5MDMgODAuMDMzOSA2LjgxMDExQzg0LjM1NzkgMTAuOTMwOSA4Ny4yMzU3IDE2LjQwMzQgODkuMjIyNyAyMi4xMDgyQzkyLjcxNDMgMzIuMTMyNSA5NC4wNzM4IDQ0LjcyNjQgOTQuNDU1MSA1Ny4yOTQ1SDEwMi43OTZDMTAzLjE3OCA0NC43MjY0IDEwNC41MzcgMzIuMTMyNSAxMDguMDI5IDIyLjEwODJDMTEwLjAxNiAxNi40MDM0IDExMi44OTQgMTAuOTMwOSAxMTcuMjE4IDYuODEwMTFDMTIxLjc0MSAyLjQ5OTAzIDEyNy41MTkgMCAxMzQuMzI1IDBDMTQzLjAzMyAwIDE1MC4yNzIgMy4zODQ3NiAxNTUuMDggOS43MDMwNkMxNTkuNjMxIDE1LjY4MzMgMTYxLjMxOSAyMy4zNzk1IDE2MS4zMTkgMzEuMDQyOUMxNjEuMzE5IDM3LjUxNzQgMTU5LjMxMiA0Ni4zNTI3IDE1Ny4yNjUgNTMuODgzMkMxNTUuNzM2IDU5LjUxMDggMTU0LjAyNyA2NC45NTk0IDE1Mi42NTcgNjkuMTIxM0MxNTguNzE1IDcxLjg5MzYgMTY3LjQxNiA3Ni43MTMyIDE3NS4zIDg0LjIzODVDMTg1LjM2IDkzLjg0MTEgMTk0LjI1MiAxMDguMDQ3IDE5NC4yNTIgMTI3Ljc0OEMxOTQuMjUyIDE0OC4xOTUgMTg1LjM0MSAxNjYuMjY1IDE2OC41NDQgMTc4Ljk5OEMxNTEuOTQ1IDE5MS41OCAxMjguMTkgMTk4LjU4NSA5OC42OTk2IDE5OC42MDdIOTguNTUyWiIgZmlsbD0iIzYzMzAwMSIvPgo8cGF0aCBkPSJNNjIuOTI2MiA3LjI4ODMzQzUwLjE3MTYgNy4yODgzMyA0NC4zMDA0IDE2LjgwMzcgNDQuMzAwNCAyOS45NjMyQzQ0LjMwMDQgNDAuNDIzMSA1MS4xMjIyIDYxLjM3MTUgNTMuOTIxMiA2OS41MjYzQzU0LjU1MDggNzEuMzYwNSA1My41NjE2IDczLjM3MDEgNTEuNzU3NCA3NC4wODE0QzQxLjUzNTEgNzguMTEyMSAxMS4zNjc5IDkyLjg3IDExLjM2NzkgMTI2LjY2OUMxMS4zNjc5IDE2Mi4yNzIgNDIuMDI0NiAxODkuMTE3IDk4LjU1ODEgMTg5LjE2Qzk4LjU4MDYgMTg5LjE2IDk4LjYwMzEgMTg5LjE1OSA5OC42MjU2IDE4OS4xNTlDOTguNjQ4MSAxODkuMTU5IDk4LjY3MDYgMTg5LjE2IDk4LjY5MzEgMTg5LjE2QzE1NS4yMjcgMTg5LjExNyAxODUuODgzIDE2Mi4yNzIgMTg1Ljg4MyAxMjYuNjY5QzE4NS44ODMgOTIuODcgMTU1LjcxNiA3OC4xMTIxIDE0NS40OTQgNzQuMDgxNEMxNDMuNjkgNzMuMzcwMSAxNDIuNyA3MS4zNjA1IDE0My4zMyA2OS41MjYzQzE0Ni4xMjkgNjEuMzcxNSAxNTIuOTUxIDQwLjQyMzEgMTUyLjk1MSAyOS45NjMyQzE1Mi45NTEgMTYuODAzNyAxNDcuMDggNy4yODgzMyAxMzQuMzI1IDcuMjg4MzNDMTE1Ljk2NSA3LjI4ODMzIDExMS4zODkgMzMuMjk1NSAxMTEuMDYyIDYxLjIwNzVDMTExLjA0IDYzLjA3MDkgMTA5LjUzNCA2NC41ODI4IDEwNy42NyA2NC41ODI4SDg5LjU4MDdDODcuNzE3MiA2NC41ODI4IDg2LjIxMDggNjMuMDcwOSA4Ni4xODkgNjEuMjA3NUM4NS44NjI2IDMzLjI5NTUgODEuMjg2IDcuMjg4MzMgNjIuOTI2MiA3LjI4ODMzWiIgZmlsbD0iI0QxODg0RiIvPgo8cGF0aCBkPSJNOTguNjkzMSAxNzcuNzU1QzU3LjE1NTEgMTc3Ljc1NSAxMS40Mzk3IDE1NS41MiAxMS4zNjgxIDEyNi43MzdDMTEuMzY4IDEyNi43ODEgMTEuMzY3OSAxMjYuODI2IDExLjM2NzkgMTI2Ljg3MUMxMS4zNjc5IDE2Mi41MDMgNDIuMDczNCAxODkuMzYyIDk4LjY5MzEgMTg5LjM2MkMxNTUuMzEzIDE4OS4zNjIgMTg2LjAxOCAxNjIuNTAzIDE4Ni4wMTggMTI2Ljg3MUMxODYuMDE4IDEyNi44MjYgMTg2LjAxOCAxMjYuNzgxIDE4Ni4wMTggMTI2LjczN0MxODUuOTQ2IDE1NS41MiAxNDAuMjMxIDE3Ny43NTUgOTguNjkzMSAxNzcuNzU1WiIgZmlsbD0iI0ZFREM5MCIvPgo8cGF0aCBkPSJNNzUuNjEzNSAxMTcuODk2Qzc1LjYxMzUgMTI3LjYxNCA3MS4wMjEgMTMyLjY3NSA2NS4zNTU4IDEzMi42NzVDNTkuNjkwNyAxMzIuNjc1IDU1LjA5ODEgMTI3LjYxNCA1NS4wOTgxIDExNy44OTZDNTUuMDk4MSAxMDguMTc4IDU5LjY5MDcgMTAzLjExNyA2NS4zNTU4IDEwMy4xMTdDNzEuMDIxIDEwMy4xMTcgNzUuNjEzNSAxMDguMTc4IDc1LjYxMzUgMTE3Ljg5NloiIGZpbGw9IiM2MzMwMDEiLz4KPHBhdGggZD0iTTE0Mi4yODggMTE3Ljg5NkMxNDIuMjg4IDEyNy42MTQgMTM3LjY5NiAxMzIuNjc1IDEzMi4wMzEgMTMyLjY3NUMxMjYuMzY1IDEzMi42NzUgMTIxLjc3MyAxMjcuNjE0IDEyMS43NzMgMTE3Ljg5NkMxMjEuNzczIDEwOC4xNzggMTI2LjM2NSAxMDMuMTE3IDEzMi4wMzEgMTAzLjExN0MxMzcuNjk2IDEwMy4xMTcgMTQyLjI4OCAxMDguMTc4IDE0Mi4yODggMTE3Ljg5NloiIGZpbGw9IiM2MzMwMDEiLz4KPC9zdmc+Cg==",protocol:"pancakeswap_v3",slippage:!0,fees:[100,500,2500,1e4],blockchains:["bsc"],bsc:{router:{address:"0x1b81D678ffb9C0263b24A97847620C99d213eB14",api:PS.ROUTER},smartRouter:{address:"0x13f4EA83D0bd40E75C8222255bc855a974568Dd4",api:PS.SMART_ROUTER},factory:{address:"0x0BFbCF9fa4f9C56B0F40a671Ad40E0805A091865",api:PS.FACTORY},pair:{api:PS.POOL},quoter:{address:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997",api:PS.QUOTER}}};var BS=t=>new IL(Object.assign(_S,{scope:t,findPath:t=>PS.findPath({...t,exchange:_S}),pathExists:t=>PS.pathExists({...t,exchange:_S}),getAmounts:t=>PS.getAmounts({...t,exchange:_S}),getPrep:t=>PS.getPrep({...t,exchange:_S}),getTransaction:t=>PS.getTransaction({...t,exchange:_S})}));const RS={name:"quickswap",label:"QuickSwap",logo:"data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgNzAyLjQ1IDcwMi40NyI+PGRlZnM+PGNsaXBQYXRoIGlkPSJjbGlwLXBhdGgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIj48cmVjdCB3aWR0aD0iNzUwIiBoZWlnaHQ9Ijc1MCIgZmlsbD0ibm9uZSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwLXBhdGgpIj48cGF0aCBkPSJNMzU0Ljc0LDI0LjM3YTM1MS4yNywzNTEuMjcsMCwwLDEsMzYzLjc0LDI3NywzNTQsMzU0LDAsMCwxLDEuMjMsMTQxLjI2QTM1MS43NiwzNTEuNzYsMCwwLDEsNTEwLjEyLDY5OS4zYy03My43NywzMS0xNTguMjUsMzUuMzUtMjM0LjkxLDEyLjU0QTM1MiwzNTIsMCwwLDEsNDYuNTEsNDk5LjU2Yy0yOC03My40NS0zMC4xNi0xNTYuMzgtNi4yNC0yMzEuMjVBMzUwLjg4LDM1MC44OCwwLDAsMSwzNTQuNzQsMjQuMzciIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTE1OC44MSwzNDkuNThjMS4zOSw2LjQxLDIuMjMsMTIuOTIsMy42MSwxOS4zNS44NSwzLjkzLDIuMTMsMyw0LjE1LDEuMjgsMy44Ny0zLjI1LDcuNTktNi42OSwxMS45NC05LjMxLDEuMjMuMjQsMS44NiwxLjIyLDIuNTMsMi4xLDExLjM5LDE0Ljg3LDI2LjUzLDI0LDQ0LjM3LDI4Ljk0YTE0Ny4yMywxNDcuMjMsMCwwLDAsMjUuMTcsNC42Nyw0Mi42OCw0Mi42OCwwLDAsMS02LjYxLTkuOTVjLTIuODUtNi40MS0xLjg1LTEyLjE1LDIuOTUtMTcuMjIsNS44Ny02LjE5LDEzLjYyLTguNzYsMjEuNDgtMTAuOCwxNi40OC00LjMsMzMuMjctNC43Myw1MC4xOC0zLjUzQTIwMi4xMSwyMDIuMTEsMCwwLDEsMzU4Ljc1LDM2MmMxMSwzLjA2LDIxLjcyLDYuNzMsMzEuNDQsMTIuODgsMS4zNiwxLjA5LDIuMywyLjYsMy42MSwzLjc0LDEyLjQ5LDEzLjQxLDE5Ljc4LDI5LjI1LDIwLjI4LDQ3LjU1LjM0LDEyLjY1LTMuMTYsMjQuNzItOS41LDM1LjgyLTExLjQyLDIwLTI4LjA5LDM0LjU2LTQ4LDQ1LjcxQTE3MC41LDE3MC41LDAsMCwxLDI5MSw1MjguNDJjLTQxLjI0LDQuNDctNzkuNDUtNC40Ny0xMTQuNTktMjYuMzYtMjkuMjEtMTguMTktNTEuNjUtNDMuMDgtNzAtNzEuOTJhMzM5LjU3LDMzOS41NywwLDAsMS0yMi41Mi00Mi43NWMtLjgxLTEuOC0xLTMuODEtMS44Mi01LjI5LjUyLDEuNzUsMS40OSwzLjczLS40Myw1LjYtLjU4LTcuNDUuMDgtMTQuOS40Ny0yMi4zMWEyODcuMTMsMjg3LjEzLDAsMCwxLDkuNDgtNjAuNTRBMjkyLjkxLDI5Mi45MSwwLDAsMSwyNjYuMDYsMTA5LjA5LDI4Ny4yLDI4Ny4yLDAsMCwxLDM0Ni41OSw4OS45YzQzLjU3LTQsODUuNzksMS43MywxMjcsMTYuMzQtNi4yNywxMS44OS00Miw0My43Mi02OS44LDYyLjE1YTk0LjExLDk0LjExLDAsMCwwLTUuNDQtMjMuNTFjLS4xNC0yLDEuNjYtMi42NSwyLjc4LTMuNjFxOC42Ny03LjQ2LDE3LjQzLTE0Ljc3YTE3LjE0LDE3LjE0LDAsMCwwLDEuNjktMS40OWMuNjYtLjcxLDEuNzctMS4zLDEuNTQtMi40cy0xLjU1LTEuMTUtMi40Ny0xLjNhNDYuODIsNDYuODIsMCwwLDAtOC4xNy0xYy0zLjgxLS40NS03LjU2LTEuMy0xMS40LTEuMzgtMi45NS0uMTgtNS44NS0uOTMtOC44My0uNjlhMjguMjIsMjguMjIsMCwwLDEtNC41LS4zMmMtMi41LS43OS01LjA3LS40NC03LjYxLS40My0xLjUyLDAtMy0uMTEtNC41NiwwLTQuMzUuMjUtOC43My0uNDgtMTMuMDcuMzRhMTIuODcsMTIuODcsMCwwLDEtMy4yMS4zMmMtMS4yNiwwLTIuNTEuMDYtMy43NywwYTEyLjM1LDEyLjM1LDAsMCwwLTQuODcuNDdjLTQuNTkuNDEtOS4xOS43OC0xMy43MywxLjYxLTUuNDgsMS4xNi0xMS4wOSwxLjQ0LTE2LjUzLDIuNzktNSwxLjMtMTAuMTMsMi0xNSwzLjc0LTYuNTEsMS43OS0xMi45NSwzLjg0LTE5LjM1LDYtOS4zNCwzLjcxLTE4LjgyLDcuMS0yNy43MSwxMS44NmEyNDguNzQsMjQ4Ljc0LDAsMCwwLTU1LjY2LDM2Ljk0QTI2Ni41NSwyNjYuNTUsMCwwLDAsMTU5LjY4LDIyN2EyNTQuODcsMjU0Ljg3LDAsMCwwLTE2LjU0LDI2LjE2Yy0zLjE3LDUuOS02LjIyLDExLjg1LTksMTgtMiw0LjcxLTQuNDIsOS4yNy02LDE0LjE4LTIsNC45LTMuNjQsOS45Mi01LjIyLDE1LTEuODgsNS4wNi0zLDEwLjM1LTQuNDUsMTUuNTMtLjYzLDItMSw0LjExLTEuNTMsNi4xOC0uNjMsMi40OS0xLDUtMS40Nyw3LjU1LS43Nyw0LjI1LTEuNDgsOC41LTIuMDksMTIuNzhhMTE4LjY0LDExOC42NCwwLDAsMC0xLjU3LDEzLjI5Yy0uNzQsMi45NC0uMiw2LS43NCw5LS44MiwzLjY5LS4yOCw3LjQ1LS41MiwxMS4xNi0uMTEsMi42MS0uMTYsNS4yMy0uMDksNy44NSwwLDEuMDctLjQ5LDIuNTcuNjQsMy4wOSwxLjI5LjYsMi4yMy0uNzcsMy4xNi0xLjUzLDMuMTgtMi42LDYuMjktNS4yOSw5LjQtOCwxMC40Ny05LDIxLjA3LTE3Ljg4LDMxLjU4LTI2Ljg1LjkxLS43NywxLjktMi43OSwzLjUyLS43MSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM0MTg5YzkiLz48cGF0aCBkPSJNMzkwLjExLDM3NS43OGMtMTIuMzctNy4zNS0yNS44OS0xMS42My0zOS43Ny0xNC45MmExOTcuMjUsMTk3LjI1LDAsMCwwLTU1LjY4LTUuMWMtMTMuMjEuNjYtMjYuMzEsMi41LTM4LjQ4LDguM2EzMi42MSwzMi42MSwwLDAsMC00LjIxLDIuNDNjLTkuODUsNi42LTExLjM1LDE1LjQtNC4yMywyNC45MSwxLjQ4LDIsMy4xMiwzLjgxLDUuMSw2LjIyLTYuMzksMC0xMi4wNS0xLjE5LTE3LjY5LTIuMzEtMTUuMTItMy0yOS4zMi04LjI0LTQxLjUtMTgtNS44Ni00LjY4LTExLjIyLTkuOTMtMTUuMTQtMTYuNDUsMS42LTIuNjEsNC4yOC0zLjgzLDYuNzgtNS4yNyw0LjgyLTIsOS4xOS00LjkxLDE0LTcuMDlhMjA3LjU1LDIwNy41NSwwLDAsMSw2Ny40LTE4YzkuMzItLjg3LDE4LjY1LTEuNzYsMjgtMS40MUEzMTEuMzgsMzExLjM4LDAsMCwxLDM3NiwzNDMuMjVjNi44LDIuMTIsMTMuNTIsNC40NSwyMC41OSw2Ljg0LDAtMi0xLjE0LTMuMTktMS45LTQuNDhBOTYuMTgsOTYuMTgsMCwwLDAsMzg1LDMzMS44OGMtMS4zMy0xLjU2LTMuMTgtMi45My0zLjE0LTUuMzMsMy43My44NSw3LjQ2LDEuNjgsMTEuMTgsMi41NiwxLC4yMywyLjE3LjgzLDIuODEsMCwuODUtMS4wOC0uNDMtMi0xLTIuODQtNS40OS04LjE5LTEyLjMzLTE1LjE3LTE5LjY3LTIxLjY4LDMuODktMi4yNiw3Ljg5LS40MiwxMS42OC4wNiwzOC44Nyw1LDc0LjI5LDE4LjgxLDEwNS4xOCw0Myw0MC45LDMyLjA5LDY3LjMzLDczLjU0LDc4LjQ3LDEyNC41MUExODAuNTQsMTgwLjU0LDAsMCwxLDU3My44Nyw1MjRjLTIuMTksMzAuMTEtMTEuNjUsNTcuOS0yOS40NSw4Mi41OC0xLjE3LDEuNjItMi43NSwyLjkxLTMuNjEsNC43Ni00LDYtMTAsMTAuMDgtMTUuNDQsMTQuNTItMjkuNTUsMjQtNjQsMzYuNDYtMTAxLjE0LDQyLjI4YTMxMC4zNCwzMTAuMzQsMCwwLDEtODcuMzEsMS41NCwyODguMTcsMjg4LjE3LDAsMCwxLTEyNy4zOS00OC4xNGMtOS4yNy02LjI5LTE4LjM2LTEyLjg1LTI2LjUxLTIwLjYyYS42NS42NSwwLDAsMSwwLTFjMS43NC0uNjksMi44NC41Nyw0LDEuNDNhMTg5LjA4LDE4OS4wOCwwLDAsMCw2NSwzMS41NiwyMjguNDYsMjI4LjQ2LDAsMCwwLDIzLjg3LDQuNzVjMS44Mi42NiwzLjc1LjM1LDUuNjIuNjZhNy41NSw3LjU1LDAsMCwxLDEuMTMuMjNjMTguMjQsMi4xNiwzNi4zNy44OSw1NC4zNi0yLjI4LDM5LjU0LTcsNzQuNjYtMjMuNTUsMTA0Ljc1LTUwLjE1LDIwLjUtMTguMTIsMzYuNjgtMzkuNTMsNDUuMjQtNjUuOTVzNy4zNS01Mi4xLTQuNjctNzcuNDhjLTIuNDcsMTEuMzgtOC40NCwyMC44LTE1LjkxLDI5LjM4YTEwNi4wOSwxMDYuMDksMCwwLDEtMjYuMDcsMjEuMTljLTEuMTQuNjYtMi40LDEuOTEtMy43MS45LTEuMTMtLjg2LS40NS0yLjM3LS4xLTMuNTFhMTM5LjY0LDEzOS42NCwwLDAsMCw0Ljk0LTI0LjJjMy41LTM0LjUxLTkuODItNjEuMzctMzcuMy04MS43NGExMTkuOCwxMTkuOCwwLDAsMC0xNC4wNi05IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzI2MmY3MSIvPjxwYXRoIGQ9Ik0yNzYuMDgsNjM4LjQxYTE1MS4xNiwxNTEuMTYsMCwwLDEtMjkuODYtNi4xQTE5OC41MywxOTguNTMsMCwwLDEsMTk0LjM1LDYwOGMtMy44My0yLjUxLTcuMDctNS44Ni0xMS4yNC03Ljg5LTIuMzktLjM0LTMuMzktMi42OC01LjMtMy43LTQwLjM4LTM1LjktNjgtODAtODMuODMtMTMxLjQ4QTI4MC41NCwyODAuNTQsMCwwLDEsODEuNjMsMzg3LjdjLjEtMiwuMi0zLjkzLjM2LTcsMiw0LjM2LDMuNDgsNy44Miw1LjA1LDExLjI2LDE0LjUzLDMxLjg2LDMzLjEzLDYwLjkzLDU4Ljc0LDg1LjEyQzE3Myw1MDIuODIsMjA0LjY4LDUyMCwyNDIsNTI2YzQzLjcxLDcuMTEsODQuNjEtLjUxLDEyMi4yMi0yNC4wNiwxOC43NS0xMS43NSwzNC4xNC0yNi45NCw0My00Ny42NSwxMC43Mi0yNS4xMSw2LjY4LTQ4LjQ0LTkuNjUtNjkuOTUtMS40My0xLjg4LTIuOTUtMy42OS00LjQzLTUuNTQsMS45NC0xLjY2LDMsLjI2LDQuMDcsMS4xOGE4My4yMiw4My4yMiwwLDAsMSwyMi42LDI5LjksODgsODgsMCwwLDEsNy44NSwzNS4xOSw3OS43NSw3OS43NSwwLDAsMS04LDM1Ljg3LDUuMzksNS4zOSwwLDAsMCwzLjI0LTEuMTcsOTguMzQsOTguMzQsMCwwLDAsMTQuNjUtMTAuMzVjMS40Mi0xLjIzLDIuNjctMy4wOCw1LTIuOGExNjUuMywxNjUuMywwLDAsMS02LjA5LDI3Ljc1LDEzMS43NCwxMzEuNzQsMCwwLDAsMTcuMjctMTEuNDhjNC4zMy0zLjM4LDcuODMtNy42MiwxMi4wOC0xMS4wNiwxLjgxLjc3LDEuODEsMi41NiwyLjIzLDQuMDgsNi45MiwyNSwxLjkxLDQ4LjI4LTEwLjQyLDcwLjMtMTUsMjYuNy0zNyw0Ni41Ny02Mi42Miw2Mi42NWEyMTMuMzMsMjEzLjMzLDAsMCwxLTY3LjI3LDI3LjU1LDE0Mi4yLDE0Mi4yLDAsMCwxLTQ1LjY3LDIuNjloMGMtMS45LTEtNC4wNy4xOS02LS43MiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiMxNjFmNDIiLz48cGF0aCBkPSJNNjU0LjE3LDQ1My4wN2EyMTIsMjEyLDAsMCwwLTIwLjc3LTgyLjM1QTIxOC45LDIxOC45LDAsMCwwLDYwMywzMjRjLTEwLjktMTIuOTEtMjMuNDItMjMuOTMtMzYuNTYtMzQuMzgsMS4yMy0xLjIxLDIuNzYtMSw0LjI0LS44YTIzNi4yOCwyMzYuMjgsMCwwLDEsNTMuNzksMTIuNzhBODAuMiw4MC4yLDAsMCwxLDYzNywzMDcuNDNhNDAuMzgsNDAuMzgsMCwwLDEsNC4xNiwyLjQ0Yy4zNC4xOS41My42OSwxLC41OGExLjI3LDEuMjcsMCwwLDEtLjIxLTEuMzdjLTExLjg0LTE1LjQyLTI2LjE1LTI4LjI4LTQxLjE3LTQwLjVhMzAyLDMwMiwwLDAsMC01OC4xOC0zNi45LDI4Ny42NCwyODcuNjQsMCwwLDAtOTEuNTctMjcuNDVjLTIuODMtLjM1LTUuNzUsMC04LjUxLTEtLjI0LTEuODksMS4zNS0yLjUyLDIuNDUtMy40NCwxOC42Ny0xNS41NSwzMy42OS0zNCw0NC4yOC01NS45NGExNTcuMSwxNTcuMSwwLDAsMCw4LjE0LTIwLjUzYy42NC0yLDEtNC4xNywzLTUuNDRhMjg4LjE2LDI4OC4xNiwwLDAsMSw4OC40Nyw2NiwyOTIuMSwyOTIuMSwwLDAsMSw2Ni42NCwyNzBjLS44NC40Ni0xLS4yNi0xLjM0LS43NSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM0MTg5YzkiLz48cGF0aCBkPSJNNTQwLjgxLDYxMS4zN2MwLTIuOTQsMi4zNC00LjYsMy43OS02LjY2LDEzLjY2LTE5LjUxLDIyLTQxLjEyLDI2LjMxLTY0LjQ4LDIuNjctMTQuNDcsMi45LTI5LjA4LDItNDMuNTctMS40Ny0yMi4zNC03LjE4LTQzLjgzLTE2LjE5LTY0LjQyYTIxMi4yNSwyMTIuMjUsMCwwLDAtMjQuNzMtNDIuNTcsMjIxLjI0LDIyMS4yNCwwLDAsMC0zNi4xNi0zNy42MkEyMDcuNTYsMjA3LjU2LDAsMCwwLDQyNS4xOSwzMTRhMTk4LjEsMTk4LjEsMCwwLDAtNDIuMjUtOC42OWMtMi41OS0uMjMtNS4xNS0uODUtNy43OC0uNjktOS4xMy02LjczLTE4LjM5LTEzLjI0LTI4Ljc5LTE3Ljk0LDAtLjMzLDAtLjY3LjA3LTEsMy43NCwwLDcuNDkuMDYsMTEuMjMsMCw1Mi40My0uOTQsMTAwLjc1LDExLjkxLDE0Myw0My44NEM1NDQuNCwzNjIuNTksNTcxLjc0LDQwNi4zMiw1ODIsNDYwLjNjOC43Myw0Ni4wNSwyLDg5LjU0LTIzLjU2LDEyOS40NC01LDcuODUtMTAuNTMsMTUuNDEtMTcuNjEsMjEuNjMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjMTYxZjQyIi8+PHBhdGggZD0iTTUwMC40LDExNy45MWMtNS4yNSwxNi4wNS0xMS44NCwzMS40Ny0yMS4yNyw0NS41OWExNzIuNzgsMTcyLjc4LDAsMCwxLTM0LjQyLDM3LjczYy0uNzYuNjMtMS40NSwxLjM1LTIuMTcsMi00LjU4LDIuMzMtOC4zNSw1Ljg1LTEyLjU5LDguNjhhMjY3LjY4LDI2Ny42OCwwLDAsMS00OS4zOSwyNS41Myw4LjA5LDguMDksMCwwLDEtMS4yOS4zMmMtLjc2LTEuMTIuMTQtMS41My42LTIsOS44Mi05LjM1LDE1LjkxLTIwLjkyLDIwLTMzLjY2YTUsNSwwLDAsMSwzLjE3LTMuNjVjMzAuNTEtMTIuMDgsNTQuODYtMzIuMTUsNzQuOC01Ny45LDEuODEtMi4zNCwzLjU4LTQuNzEsNS44Mi03LjY2LTYuMTctLjEyLTEwLjksMy0xNi4xMiwzLjgyLTEsLjA2LTIuMjcuODgtMi41LTFhMjE1LjI3LDIxNS4yNywwLDAsMCw0MS44NC03NS42NWMuNTUtMS43OCwwLTQuMjMsMi40OC01LjEzYS40NC40NCwwLDAsMSwuMjUuNDVjMCwuMTgtLjA4LjI2LS4xMy4yNmEyMzAuNDksMjMwLjQ5LDAsMCwxLTguMzUsNTguNTYsMzYuODgsMzYuODgsMCwwLDAtLjY5LDMuNjMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjMTYxZjQyIi8+PHBhdGggZD0iTTM4MS44MiwzMjYuNTRhMTIwLDEyMCwwLDAsMSwxNi4wNiwyMi40Yy40My43OSwxLjU0LDEuNjguNTUsMi42MS0uNzUuNy0xLjYyLS4xNi0yLjQxLS40NmEzNDksMzQ5LDAsMCwwLTYyLjU2LTE3Yy0xMC43NS0xLjg1LTIxLjY2LTIuNjYtMzIuNTgtMy40NWExOTQuMDksMTk0LjA5LDAsMCwwLTI5LjQ1LjQyYy0yMi40MiwxLjgtNDQuMjQsNi41OS02NSwxNS41Ni02LjQsMi43Ny0xMi45NCw1LjI1LTE4Ljg5LDktLjY4LjQzLTEuNDksMS4xMy0yLjI3LjA2YTE5OS41OSwxOTkuNTksMCwwLDEsNTkuMi0yOC40MWMyOS4xNS04LjcsNTguOTMtMTAuODQsODkuMTUtOC40NmEzMjguNDIsMzI4LjQyLDAsMCwxLDQ1Ljc0LDYuOTUsMjEuOTIsMjEuOTIsMCwwLDEsMi40NC44MyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiMxNjFmNDIiLz48cGF0aCBkPSJNMzc0LjMyLDExNi4zOGg0LjVjMi40MiwxLDUuMDctLjI4LDcuNS43NGg0LjQ5Yy4zOCwyLjE3LTEuNDEsMy4wOC0yLjY1LDQuMTMtMjAuNzgsMTcuNTYtNDEuNDEsMzUuMjktNjIuMiw1Mi44My02Ljg3LDUuNzktMTMuNjgsMTEuNjUtMjAuNTQsMTcuNDVhNi4xNCw2LjE0LDAsMCwwLTIuMzUsMi44M2MtOSwzLjM3LTE3LjM2LDcuNi0yNCwxNC45NC0zLjEzLDMuNDgtNS4xOCw3LjUtNy40NCwxMS40Ni02LjE3LDQtMTEuMzYsOS4yNi0xNywxNC0xNC43NywxMi40Mi0yOS4zNSwyNS4wNi00NC4xNiwzNy40My0xLjI1LDEtMi4wNywyLjUtMy41MiwzLjMxLTIuNTUtMy44LTItOC0xLjM5LTEyLjEyLDEuODYtMy4wNiw0LjgtNSw3LjQ0LTcuMjhxMjEuNTQtMTguMjcsNDMtMzYuNTljMTQtMTEuODUsMjcuOTItMjMuNzcsNDEuOS0zNS42M3EyNC4xMi0yMC40NSw0OC4xNy00MWM4LjkzLTcuNiwxNy44LTE1LjI2LDI2Ljg2LTIyLjcxLDEuMzctMS4xMywyLjMzLTIsMS4yOC0zLjgxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzVjOTRjZSIvPjxwYXRoIGQ9Ik02MzcuNTEsMzA4LjQxYy0xNy42My04LjU2LTM2LjI3LTEzLjc4LTU1LjU0LTE2LjktNS4xNS0uODQtMTAuMy0xLjg3LTE1LjU1LTEuOTEtNi43Mi00LjI1LTEzLjMxLTguNzMtMjAuMTktMTIuN2EyMDkuNzMsMjA5LjczLDAsMCwwLTcyLjE4LTI1Ljc1LDkuMDksOS4wOSwwLDAsMS0xLjY1LS42NGM3LjY1LTEuNCwzMy42OSwyLjUxLDUxLjcyLDcuNDdhMjQzLjA3LDI0My4wNywwLDAsMSw0OC40NywxOWMtMS42Mi00Ljg1LTQuNTgtOC4xMy02LjM5LTEyLS4xOC0xLTEuNjMtMS45NC0uNjYtM3MyLjA3LjA4LDMsLjQ5YzIuNiwxLjE4LDUuMDgsMi42MSw3LjY5LDMuNzdhMzQ3LjUyLDM0Ny41MiwwLDAsMSw2MS40LDQwLjQ5YzEuMDYsMS40LDEuMDYsMS40LS4xMSwxLjY5IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzE2MWY0MiIvPjxwYXRoIGQ9Ik0zNzQuMzIsMTE2LjM4Yy40NiwxLjEsMS45Mi4zLDIuNjEsMS41My00LjE4LDMuNjItOC4zNiw3LjMtMTIuNjEsMTAuOTFxLTExLjUxLDkuNzgtMjMuMDcsMTkuNDhRMzI0Ljg3LDE2Mi4xMywzMDguNSwxNzZjLTcuNTgsNi40NC0xNS4wNSwxMy0yMi42MywxOS40Ni05LjE4LDcuOC0xOC40NSwxNS41MS0yNy42NSwyMy4zLTcuMyw2LjE5LTE0LjUzLDEyLjQ3LTIxLjgyLDE4LjY4LTcuNjcsNi41Mi0xNS4zNywxMy0yMy4wNiwxOS40OWwtNy43MSw2LjQ3LDIuMTktOS43NmMtMS4yNC0zLjE5LDEuMzUtNC42MywzLjEzLTYuMSw3LTUuODQsMTMuODgtMTEuODEsMjAuODMtMTcuNzFxMjQuMjUtMjAuNTgsNDguNDktNDEuMjIsMjAuODQtMTcuNyw0MS42Ni0zNS4zOWMxMi45Mi0xMSwyNS45My0yMS45MSwzOC43Mi0zMy4wNywxLS44NiwyLjg1LTEuODcuMTUtMyw0LjQzLTEuNjEsOS0uMzMsMTMuNTItLjczIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzY0OTdkMCIvPjxwYXRoIGQ9Ik0zNjAuOCwxMTcuMTFjMS4wNS4xOSwyLjItLjM3LDMuMy40OS0yLjY1LDMuOS02LjU1LDYuNDUtMTAsOS40NC05LjgyLDguNTYtMTkuNzksMTctMjkuNzQsMjUuMzctOS4xLDcuNjgtMTguMjksMTUuMjYtMjcuMzcsMjNzLTE4LjIzLDE1Ljc0LTI3LjQsMjMuNTQtMTguMjksMTUuMjctMjcuMzYsMjNTMjI0LDIzNy41OCwyMTQuODcsMjQ1LjQ1Yy0yLjc0LDIuMzctNi4zNyw0LTcuMDUsOC4xNS00Ljg0LjU1LTcuNCw0LjY0LTEwLjk0LDcuMTYtNS41OSw0LTkuODQsOS40Ny0xNSwxMy45NS01LjE5LDMuNjktOS43Nyw4LjEtMTQuNjEsMTIuMi0xNC4zOCwxMi4xOS0yOC43LDI0LjQ2LTQzLjEzLDM2LjU5LTIsMS42OC0zLjc3LDMuNjYtNiw1LjA2LTEsLjYyLTEuOTEsMS43OS0zLjMyLjgxYTE2LjksMTYuOSwwLDAsMSwxLjUxLTcuNTFjNy4xOS00LjU5LDEzLjE3LTEwLjY3LDE5LjY2LTE2LjEsMTcuODgtMTUsMzUuNjEtMzAuMTYsNTMuMzgtNDUuMjlzMzUuMy0zMC4xMyw1My00NS4xNXEyNi0yMiw1MS45NC00NC4wOGMxNy42OC0xNSwzNS40NC0zMCw1My00NS4xNSwzLjQ5LTMsNy4xNi01LjgzLDEwLjU2LTloMyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2ODlhZDEiLz48cGF0aCBkPSJNMzk5LjgxLDExNy44N2M0LjA3LS4wNSw4LDEsMTIsMS41LDEuMDksMi4zOS0xLDMuMzItMi4yMyw0LjQzLTUsNC4zNy0xMC4yMyw4LjQ4LTE1LjEsMTMtLjUyLS42OS0xLjA4LTEuMzYtMS41Ni0yLjA5LTEuMTEtMS42NS0xLjg5LTEuMjEtMi42MS4zMy01LjksMTIuNjYtMTYuMDUsMjEuNDYtMjcuMSwyOS4zYTIwMi4xNCwyMDIuMTQsMCwwLDEtMzkuODcsMjEuNzljLS43Ni0xLjQ0LS44My0xLjUuNDctMi44NCwyLjY5LTIuNzgsNS43Ny01LjE0LDguNzItNy42NCwyMS4yOS0xOC4xLDQyLjY0LTM2LjEyLDYzLjgxLTU0LjM3LDEuMjMtMS4wNywyLjI5LTIuMywzLjQ3LTMuNDEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNGU4ZmNjIi8+PHBhdGggZD0iTTM5OS44MSwxMTcuODdhNC41NSw0LjU1LDAsMCwxLTEuNzUsMy4xNHEtMjAuNiwxNy40My00MS4xMywzNC45My0xNS43MiwxMy40LTMxLjM2LDI2Ljg5Yy0uOTQuODItMi43MSwxLjQtMi4yMywzLjNhMTg3LjQsMTg3LjQsMCwwLDEtMjAuMjcsOC4yNGMtMi4zMy0uNjQtLjQtMS40NywwLTEuODUsNC4wOS0zLjYyLDguMjMtNy4xOCwxMi4zOS0xMC43MnExMS40Ny05Ljc1LDIzLTE5LjQ3YzcuNTctNi40LDE1LjE4LTEyLjc3LDIyLjczLTE5LjE5czE1LjEyLTEyLjg3LDIyLjU3LTE5LjQyYzIuNDEtMi4xMiw1LjM2LTMuNjgsNy02LjU5LDMuMDYtLjQ0LDYsLjYsOSwuNzQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNTU5MWNkIi8+PHBhdGggZD0iTTM0Ni42MSwyMDhjNy45Mi0zLjkyLDE2LjE5LTcuMjEsMjMuMS0xMi45MywxLjQ0LS4wNiwxLjI4Ljc2Ljk0LDEuNjktNi4zOCwyNi40Mi0yNi40Miw0My43Ny01My41Miw0Ni4zLTUuMjIuNDktMTAuNDMsMS4wOS0xNS42OS41OS42OC0xLjkzLDIuNTEtMS43Niw0LTIuMTcsNS44OC0xLjYsMTEuNzEtMy4zMSwxNy4xNi02LjEzLDEwLjIyLTUuMjgsMTcuNzEtMTMuMDcsMjItMjMuODRhOC4yMiw4LjIyLDAsMCwxLDIuMDUtMy41MSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiMxNjFmNDIiLz48cGF0aCBkPSJNMzQ2LjYxLDIwOGMtMy4yNiwxMi42LTExLjI5LDIxLjMxLTIyLjM5LDI3LjU1LTcuMTMsNC0xNSw1Ljg2LTIyLjc3LDguMS0xLjkxLTUuNTkuMTYtMTAuMzIsMy41Mi0xNC41NywzLjk0LTUsOS4zLTguMDgsMTUtMTAuNjlBMjc3LjA4LDI3Ny4wOCwwLDAsMSwzNDYuNjEsMjA4IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzQxOGFjOSIvPjxwYXRoIGQ9Ik0xMTQuOCwzMjkuMzdjNC40NS0xLjY1LDcuMzEtNS40MSwxMC44MS04LjI4LDExLjI5LTkuMjcsMjIuMzgtMTguNzgsMzMuNTEtMjguMjQsNS44NS01LDExLjYxLTEwLjA1LDE3LjQxLTE1LjA4LDEuNTgtMS4zNywzLjA1LTIuOTQsNS4zNC0zLjA2LTYsNy41Mi0xMS43MywxNS4yNC0xNiwyMy45M3EtMTcuMjUsMTQuNi0zNC40NCwyOS4yN2MtNS4zLDQuNTMtMTAuNzEsOC45NC0xNS45MywxMy41Ny0uOC43MS0xLjcsMS42LTIuOTQuNjRhNTQuMTMsNTQuMTMsMCwwLDEsMi4yNC0xMi43NSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2NDk3ZDAiLz48cGF0aCBkPSJNMTU4LjgxLDM0OS41OGMtMy41NC4yNy01LjE0LDMuNDQtNy40OCw1LjMzLTkuODUsNy45NS0xOS40NSwxNi4yMi0yOSwyNC40OS0zLjIsMi43Ni02LjMsNS42Mi05LjY5LDguMTYtMi4yMywxLjY4LTMuMDcsMS0zLTEuNTgsMC0zLjEyLDAtNi4yNCwwLTkuMzYsMy40Ni0zLjc1LDcuNjEtNi43MiwxMS40OC0xMCwxMS4xNy05LjQ4LDIyLjIzLTE5LjEsMzMuNTUtMjguNDIsMS0uOCwxLjc5LTIuMjYsMy40Ni0xLjMxbC43NSwxMi42OSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM0NjhjY2EiLz48cGF0aCBkPSJNMjA3LDI3NS40OGE0LjE3LDQuMTcsMCwwLDEsMS45MS0zLjA4YzktNy42LDE4LTE1LjE1LDI3LTIyLjc2LDcuMzktNi4yNSwxNC43Mi0xMi41NiwyMi4wNy0xOC44NywzLjg2LTMuMzEsNy42OS02LjY2LDExLjUyLTEwLC43My0uNjQsMS40MS0xLjEyLDIuMTIsMC0uODMsMy40MS0xLjgyLDYuNzktMS43MiwxMC4zNS00LDQuNDMtOC44OSw3LjkzLTEzLjQyLDExLjgtMTQsMTItMjcuOTUsMjMuOTMtNDIsMzUuNzZhMTEuMzQsMTEuMzQsMCwwLDAtMS40OCwxLjY4LDcuOTMsNy45MywwLDAsMS02LTQuODgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNTU5MWNkIi8+PHBhdGggZD0iTTExMi41NiwzNDIuMTJjMy4yNC0xLDUuMTMtMy44MSw3LjU2LTUuODIsMTMuMTctMTAuODksMjYuMTMtMjIsMzkuMTctMzMuMDgsMi4wNS0xLjczLDMuNDktNC4zMyw2LjU4LTQuNThhMTUwLjg5LDE1MC44OSwwLDAsMC02LDE4Yy0yLjM0LS4yMy0zLjUzLDEuNjQtNSwyLjg4LTEzLjU4LDExLjY3LTI3LjI4LDIzLjItNDAuOTIsMzQuOC0uODIuNjktMS41NSwxLjcxLTIuODksMS4yNmE0NC44OCw0NC44OCwwLDAsMSwxLjUtMTMuNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM1Yzk0Y2UiLz48cGF0aCBkPSJNMjEzLDI4MC4zNmMtLjkzLTEuNjguNjUtMi4yMywxLjQ3LTIuOTNxMTcuMi0xNC43MSwzNC40OS0yOS4zNCw5Ljc3LTguMjgsMTkuNTktMTYuNDlhNC4xNiw0LjE2LDAsMCwxLDEuMzgtLjQ3LDI5LjkyLDI5LjkyLDAsMCwwLDEuMzgsOWMtMy45Myw0LjU2LTguODcsOC0xMy4zOSwxMS44NnEtMTUuMTMsMTMtMzAuNDUsMjUuOTNhMy41LDMuNSwwLDAsMC0xLjU0LDJjLTQuMjYsMS41OC04LjU2LDIuMjEtMTIuOTMuNDEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNGU4ZmNjIi8+PHBhdGggZD0iTTE1OC4wNiwzMzYuODljLTQuMjEsMi40MS03LjU3LDUuOTEtMTEuMjcsOS05Ljc2LDgtMTkuMzcsMTYuMjUtMjguOTQsMjQuNS0yLjY0LDIuMjgtNSw0LjgyLTguMjgsNi4yNy4zOS00LS44NC04LjA4Ljc0LTEycTIyLjE3LTE4Ljk0LDQ0LjQ2LTM3Ljc2YzEtLjg2LDIuMDYtMS45MSwzLjY0LTEuMjMtLjEyLDMuNzUtLjIzLDcuNS0uMzUsMTEuMjYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNGU4ZmNjIi8+PHBhdGggZD0iTTE1OC40MSwzMjUuNjNjLTQuNzUsMi41NS04LjQyLDYuNS0xMi41Miw5Ljg4LTkuNjgsNy45NS0xOS4xNCwxNi4xNi0yOC43MywyNC4yMi0yLjE0LDEuODEtMy42NCw0LjU2LTYuODUsNC44OS4zOC0zLS44LTYuMTEuNzUtOXExNC0xMiwyOC4wNi0yMy45MmM2LjM0LTUuMzksMTIuNzQtMTAuNzEsMTkuMDctMTYuMSwyLTEuNzIsMS40Ny4xNywxLjY1LDEuMDhaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzU1OTFjZCIvPjxwYXRoIGQ9Ik0yMjYsMjgwYy0xLjM4LTEtLjQxLTEuNzQuMzItMi4zNSw4LjgyLTcuNCwxNy42OC0xNC43NSwyNi40OS0yMi4xNiw1LjUtNC42MywxMC45My05LjM0LDE2LjM3LTE0YTMuNjYsMy42NiwwLDAsMSwyLjItMS4yOGwyLjI1LDQuNDljLTEuNzMsMi42Ny00LjUsNC4zMy02LjQ1LDYuNzktMTAuODMsMTItMjIuOTUsMjIuMTQtMzguMjksMjcuOTFBMTkuNTMsMTkuNTMsMCwwLDEsMjI2LDI4MCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM0ODhkY2EiLz48cGF0aCBkPSJNMzk0LjQ4LDEzNi44YzEuMzYtNC4yNSw1Ljc3LTUuNDcsOC4zOC04LjQ3LDIuNzgtMy4xOSw3LjMzLTQuNjEsOC45NS05LDMuMjYsMCw2LjM4Ljg2LDkuNTUsMS40NSwyLjc0LjUxLDIuODYsMS43LDEsMy4zOS00LjA4LDMuNjQtOC4yLDcuMjYtMTIuMzQsMTAuODItMy44NiwzLjMyLTcuNzgsNi41Ny0xMS42OCw5Ljg1WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM0NjhjY2EiLz48cGF0aCBkPSJNMjA5LjM3LDMwNy44MWMuNjYsMS42Ni0xLjMzLDIuNDktMS4xLDQtMS00LjU2LTMuNTEtNi4zMy04LjA4LTUuNDJhMjMuNjUsMjMuNjUsMCwwLDAtMTIuNjQsNy4zNWMtLjk0LDEtMiwxLjg5LTMsMi44NC0uODItMSwwLTEuODcuMzMtMi43NiwyLTYuNTEsNi4zOS0xMS4xNCwxMS45My0xNC44M2ExMi41NywxMi41NywwLDAsMSw0LjA2LTEuODVjNi40Mi0xLjUzLDkuOTQsMS42MSw5LjA2LDguMTJhOC4yOCw4LjI4LDAsMCwxLS42MSwyLjUzIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzQyOGFjOSIvPjxwYXRoIGQ9Ik0yMDkuMzcsMzA3LjgxYzAtMSwuMDYtMiwuMDctMywuMTEtNi41NC0zLjYtOS05LjY3LTYuMjUtNywzLjItMTEuNDIsOC45Mi0xNC40OSwxNS43OS0uNzEuMTMtMS4wOC0uMDctLjg2LS44NiwyLjIxLTguMTYsNi40Ny0xNC45MiwxMy41Ni0xOS43M2ExNC44MiwxNC44MiwwLDAsMSw1Ljg1LTIuMjgsNi4yNSw2LjI1LDAsMCwxLDcuNDEsNC42MSwxNC44OCwxNC44OCwwLDAsMS0xLjg3LDExLjciIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjMTgyMTQ0Ii8+PHBhdGggZD0iTTI2Ny4xMywyNTEuNDFjLTEuMjYtMS0uMTUtMS40LjUyLTEuODcsMi4xMS0xLjQ3LDMuMjctNC4xLDUuOTMtNC45MiwzLjQsNS4zOCw4LjgzLDcuNzUsMTQuNDksOS43NywxLjE0LjQxLDIuMzMuNjcsNC4xOSwxLjE5LTguNzIsMi4yNy0xNi4yNCwxLjM5LTIzLjE1LTMuMzNhMywzLDAsMCwwLTItLjg0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzQ1OGNjYSIvPjxwYXRoIGQ9Ik01NzYuMjIsMjY2LjIzYy0yLjc1LS4zMi00Ljg0LTIuMi03LjM0LTMuMTMtMS0uMzYtMS44OS0xLjY0LTIuOTItLjgtLjg1LjcuNTQsMS43NC4yNCwyLjcxLTEuNTMtMS4zNC0yLjA2LTMuMjYtMi44Ni01LjIxLDQuNDYsMS44NSw4LjkxLDMuNjQsMTIuODgsNi40MyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2MzY1N2QiLz48cGF0aCBkPSJNNjM3LjUxLDMwOC40MWMuODEtLjUxLDAtMS4xMy4xMS0xLjY5bDQuMzUsMi4zNiwyLjM0LDNjLTIuODUtLjc2LTQuNzgtMi4zMS02LjgtMy42NyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiMyNjMxNTQiLz48cGF0aCBkPSJNNDY1LjE5LDI0OS4yNmExNC4yNiwxNC4yNiwwLDAsMSw2LC40NWMtMi4zMiwxLjI2LTMuOTIsMS4wOS02LS40NSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiNhMDlhYTkiLz48cGF0aCBkPSJNMTc3LjgxLDU5Ni4zNmMyLjMzLjQyLDMuMzksMi42Nyw1LjMsMy43TDE4Myw2MDFhMTQuMjIsMTQuMjIsMCwwLDEtNS4yMS00LjU5IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzQyNGE3ZiIvPjxwYXRoIGQ9Ik02NTQuMTcsNDUzLjA3bDEuMzQuNzVjLjE5LDEuNTEtLjQ1LDIuNzUtMS4zNCw0LjZaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzhjYjdkZSIvPjxwYXRoIGQ9Ik00NjUsMTM1Ljc5Yy41MSwxLjE1LDEuNjYuNjgsMi41LDFsLTQsMS41NWMtLjMxLTEuNTkuNzctMS45NSwxLjUxLTIuNTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNWE1ZDc2Ii8+PHBhdGggZD0iTTE4NC40MiwzMTMuNTFsLjg2Ljg2Yy0uMjMuNzQtLjQ1LDEuNDktLjY4LDIuMjNMMTgzLDMxOC42N2MuNDgtMi40Mi41MS0zLjksMS40My01LjE2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzRmNjY4YSIvPjxwYXRoIGQ9Ik0zNzAuNjUsMTk2LjczYy0uMjItLjYyLS4xMy0xLjQtLjk0LTEuNjkuMjQtLjU4Ljg5LTEuMzksMS4xOS0xLjEuOS44Ny41MiwxLjkxLS4yNSwyLjc5IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzU1NWE3MyIvPjxwYXRoIGQ9Ik0xMTcuOCwzMTUuODZhNjEuNDQsNjEuNDQsMCwwLDEsNC41LTE1Ljc3YzguODItNi4xNSwxNi41OC0xMy42LDI0Ljc5LTIwLjVxMjEuMzUtMTgsNDIuNTMtMzYuMTQsMTkuMzUtMTYuNTUsMzguNzktMzMsMjEtMTcuOCw0Mi0zNS42NmMxMi43NC0xMC44MywyNS41Mi0yMS42MywzOC4yMS0zMi41Myw4LjktNy42NSwxOC0xNS4wNywyNi43NC0yMi44OGE1Myw1MywwLDAsMSwxNC4yNC0xLjUyLDEuNDQsMS40NCwwLDAsMSwxLjU0LS4xOGMxLjA2LDEuODEtLjI5LDIuODQtMS4zOSwzLjc2cS0xOC4xMywxNS4zNi0zNi4xOSwzMC44MVEyOTQuMjgsMTY4LjYzLDI3NSwxODVxLTE3Ljc5LDE1LjE4LTM1LjY0LDMwLjI5UTIxNy43LDIzMy42NywxOTYsMjUyLjFjLTE4LDE1LjI1LTM1Ljg4LDMwLjU5LTUzLjksNDUuNzktNyw1Ljg3LTEzLjgxLDExLjg4LTIwLjg3LDE3LjYzLS44OC43MS0yLjA3LDMtMy40Ny4zNCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2ZDljZDIiLz48cGF0aCBkPSJNMzM1LjMxLDExOS4zOGMtMS4yNiw0LjIxLTUuMzMsNS43OS04LjIyLDguMzYtOS40Nyw4LjQyLTE5LjI2LDE2LjQ5LTI4Ljk0LDI0LjY3LTEwLjgzLDkuMTMtMjEuNzIsMTguMi0zMi41MSwyNy4zOC05LjM4LDgtMTguNjIsMTYuMTEtMjgsMjQuMS05LjA5LDcuNzQtMTguMjksMTUuMzQtMjcuMzgsMjMuMDZzLTE4LjExLDE1LjU1LTI3LjIxLDIzLjI4LTE4LjI1LDE1LjM3LTI3LjM1LDIzLjA5Yy03LjQ5LDYuMzYtMTQuOTIsMTIuNzktMjIuMzksMTkuMTYtMywyLjU4LTYuMTEsNS4xLTkuMTYsNy42NS0uNjYuNTUtMS4yNi44Mi0xLjg2LDBhNjAsNjAsMCwwLDEsNS4yNS0xNWM2LjktNC4zNSwxMi42Ny0xMC4xLDE4Ljg2LTE1LjMycTIxLjMzLTE4LDQyLjUxLTM2LjEzLDIxLjkyLTE4Ljc1LDQzLjkyLTM3LjM5LDE4LjEtMTUuNDIsMzYuMjUtMzAuNzljMTUuNzMtMTMuMywzMS4zMy0yNi43Niw0Ny4xMy00MGE2Ljk0LDYuOTQsMCwwLDAsMi41OC0zLjEzYzUuMzEtMi4wNiwxMS0xLjkzLDE2LjUxLTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNzI5ZmQ0Ii8+PHBhdGggZD0iTTMxOC44LDEyMi4zNmMyLjMzLjYxLjQzLDEuNDYsMCwxLjg1LTQuMjUsMy44Mi04LjU0LDcuNjEtMTIuODksMTEuMzEtNy41Nyw2LjQzLTE1LjIsMTIuNzktMjIuNzksMTkuMnEtMTYuNjcsMTQtMzMuMjksMjguMTNjLTkuMDksNy43My0xOC4wOCwxNS41Ni0yNy4xNiwyMy4yOS05LjM2LDgtMTguNzksMTUuODUtMjguMTYsMjMuODItOS4wOCw3LjczLTE4LjA5LDE1LjU0LTI3LjE3LDIzLjI3UzE0OS4xLDI2OC42MSwxNDAsMjc2LjI5Yy0zLjMzLDIuOC02LjY0LDUuNjItMTAsOC4zNy0uNjYuNTQtMS4zNywxLjc2LTIuNDQuNDQsMS01LjE2LDMuNzItOS42MSw2LTE0LjI0LDEyLjMzLTEwLjU0LDI0LjcyLTIxLDM3LjA2LTMxLjU2cTE5LjA4LTE2LjI5LDM4LjIxLTMyLjUyLDE4LjI1LTE1LjUzLDM2LjUzLTMxUTI2NC42LDE1OS4zOSwyODMuODYsMTQzYzYuNjUtNS42NCwxMy4wOS0xMS41NCwxOS45NS0xNyw0Ljc1LTIuMjEsOS45LTIuODMsMTUtMy43MSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM3OGEyZDUiLz48cGF0aCBkPSJNMzAzLjgxLDEyNi4wN2MtNC43Niw2LjE5LTExLjIyLDEwLjU1LTE3LDE1LjYzLTcuNTcsNi42NC0xNS4zMiwxMy4wNS0yMywxOS41NS03LjQ5LDYuMzQtMTUsMTIuNjUtMjIuNDksMTlTMjI2LjM5LDE5MywyMTguOSwxOTkuNHMtMTUuMjEsMTIuOC0yMi43OSwxOS4yM2MtNy4zOSw2LjI4LTE0LjcxLDEyLjYzLTIyLjEsMTguOTFxLTE0LjA2LDEyLTI4LjE3LDIzLjg1Yy0zLjMyLDIuODEtNi42Niw1LjYtMTAsOC40YTMuNDMsMy40MywwLDAsMS0yLjMyLDEuMDcsOTkuOTMsOTkuOTMsMCwwLDEsOS0xOGMxNy4xMi0xMy45MSwzMy43Ny0yOC40LDUwLjU3LTQyLjcsMTkuNDUtMTYuNTcsMzktMzMsNTguMzQtNDkuNzMsMTAuOTQtOS40NSwyMi4zLTE4LjQxLDMyLjg1LTI4LjMyYTExMy40MywxMTMuNDMsMCwwLDEsMTkuNS02IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzdkYTVkNiIvPjxwYXRoIGQ9Ik0yODQuMzEsMTMyLjExYy43NSwxLjM0LS42LDEuNzQtMS4xOCwyLjI2cS0xMi40OCwxMC45NC0yNS4wNiwyMS43M2MtNy4zNSw2LjMxLTE0Ljc3LDEyLjU0LTIyLjE2LDE4LjhxLTEzLjc4LDExLjY3LTI3LjU4LDIzLjM0Yy03LjQ3LDYuMzUtMTQuOSwxMi43Ni0yMi4zOCwxOS4xMS05LjM3LDgtMTguNzgsMTUuODctMjguMTUsMjMuODJxLTUuODQsNS0xMS42MSwxMGE2LjQ1LDYuNDUsMCwwLDEtMy42NCwxLjc0LDE1OS4yNiwxNTkuMjYsMCwwLDEsMTYuNTItMjYuMjRjNS44LTQuMjcsMTEuMS05LjE2LDE2LjU5LTEzLjgxcTIxLjM5LTE4LjEyLDQyLjcyLTM2LjMyLDE2LjUtMTQuMDYsMzMtMjguMTRjMS43LTEuNDUsMy44My0yLjM4LDUuMTMtNC4yOSw4LjcyLTUuMjgsMTguMy04LjUzLDI3LjgyLTExLjk1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzgxYTdkOCIvPjxwYXRoIGQ9Ik00NDIuNTUsNDY2LjY0Yy03LjU1LDYuMTYtMTQuOTUsMTIuNTQtMjUsMTYuODFhODguODYsODguODYsMCwwLDAsNi42My0xOC4yNGM1LjkyLTI2LC40My00OS42Ni0xNC44Ny03MS4yNC0zLjc4LTUuMzItOC44Ni05LjQ0LTEzLjM2LTE0LjA5LS43My0uNzUtMS41Mi0xLjY5LTIuODMtMS4wNi0xLjM1LS42Ni0yLTItMy0zLC42NS0uODMsMS4zMi0uMzcsMiwwLDE4LjEzLDEwLjI4LDMzLjI0LDIzLjYyLDQyLjQ3LDQyLjY5YTg1LjIzLDg1LjIzLDAsMCwxLDguMTgsMzAsODYuODYsODYuODYsMCwwLDEtLjE3LDE4LjE3IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzBlMWY2NiIvPjxwYXRoIGQ9Ik0xMTcuOCwzMTUuODZjMywxLjA4LDQtMS45MSw1LjU0LTMuMTQsMTUuMjEtMTIuNTksMzAuMjEtMjUuNDQsNDUuMjMtMzguMjYsMTQuMTctMTIuMSwyOC4yNS0yNC4zMSw0Mi40NS0zNi4zOCwxNS44MS0xMy40MywzMS43NC0yNi43LDQ3LjU1LTQwLjEzLDE0LjItMTIuMDcsMjguMjgtMjQuMjcsNDIuNDQtMzYuMzhRMzI0LDE0MiwzNDcsMTIyLjRjMS41Ny0xLjM0LDMuODMtMiw0LjExLTQuNTMuODYtLjgyLDIuMTMuMDgsMy0uNzNsMy43NiwwYy0xLjE1LDQtNSw1LjM5LTcuNyw3LjgxLTcuNzYsNy0xNS44NSwxMy41OS0yMy44MiwyMC4zMy05LjExLDcuNy0xOC4yNiwxNS4zNi0yNy4zNiwyMy4wOC03LjM5LDYuMjctMTQuNzIsMTIuNjItMjIuMTIsMTguOS0xMC45LDkuMjQtMjEuODUsMTguNDItMzIuNzQsMjcuNjctNy40LDYuMjgtMTQuNzIsMTIuNjQtMjIuMSwxOC45Mi05LjM4LDgtMTguOCwxNS44OC0yOC4xOCwyMy44NS03LjM5LDYuMjgtMTQuNzEsMTIuNjQtMjIuMSwxOC45Mi03LjU3LDYuNDQtMTUuMjEsMTIuODEtMjIuNzgsMTkuMjVzLTE1LjA4LDEzLTIyLjY1LDE5LjQzYy0yLjY0LDIuMjUtNS4zOCw0LjQtOC4wOCw2LjYtLjY0LjUyLTEuMjUuODUtMS44NywwYTExLjc1LDExLjc1LDAsMCwxLDEuNDktNiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2OTlhZDEiLz48cGF0aCBkPSJNMjU2LjQ5LDE0NC4wNmMtLjYzLDMuNTUtNC4wOSw0LjQ4LTYuMjksNi40Ni03LjY2LDYuODktMTUuNjMsMTMuNDMtMjMuNDksMjAuMDgtOS4yLDcuNzctMTguNDIsMTUuNS0yNy42LDIzLjI5LTcuMzksNi4yNi0xNC43MywxMi41OS0yMi4wOCwxOC44OXEtOC4wNiw2LjktMTYuMSwxMy44M2MtLjYzLjU0LTEuMjQuODctMS44NiwwYTE0MS43MiwxNDEuNzIsMCwwLDEsMTMuMTQtMTcuMTFjMTcuNjUtMjAuNSwzNy43LTM4LjMsNjAuNzMtNTIuNiw3LjYtNC43MSwxNS4xNC05LjYsMjMuNTUtMTIuODUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjODhhYmQ5Ii8+PHBhdGggZD0iTTM4Ni4zMiwxMTcuMTJjLTIuNDktLjMzLTUuMTMuNzctNy41LS43NCwyLjQ5LjMyLDUuMTItLjc4LDcuNS43NCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM1NTkxY2QiLz48cGF0aCBkPSJNMzU0LjA1LDExNy4xNGMtLjc5LDEuMDctMiwuNjItMywuNzNoLTEuNTFjMS4zMy0xLjMsMy0uNTIsNC41LS43MiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2ODlhZDEiLz48cGF0aCBkPSJNMjgyLjA2LDYzOS4xMmExODIuMywxODIuMywwLDAsMCw3MS44MS0xMS4zMSwyMTQsMjE0LDAsMCwwLDYxLjYxLTM0LjY3YzE4LjA5LTE0LjY4LDMzLjY2LTMxLjUzLDQ0LjA2LTUyLjYxYTEwMS4zNiwxMDEuMzYsMCwwLDAsMTAuMjItMzZjMS0xMS4zMS0uODgtMjItMy45NS0zMi42NC4zNC0yLjYxLDIuNzItMy44LDQuMTEtNS42Myw1LjM4LTcuMDcsOS4zNS0xNC42OSwxMS0yMy40NmEyNy40MywyNy40MywwLDAsMSwxLjIxLTMuNDMsMTExLDExMSwwLDAsMSw4LDIxLjE2YzIuNjMsMTAuMzEsNC4xMSwyMC44LDMuMzMsMzEuNGExMjMuMzEsMTIzLjMxLDAsMCwxLTE2LjA2LDUyLjMyYy05LjE2LDE2LjE1LTIxLDMwLTM0LjYsNDIuMzdhMTk5Ljg5LDE5OS44OSwwLDAsMS0zOS4zNywyNy41NCwyMTkuNSwyMTkuNSwwLDAsMS01NC4yNiwyMC43MSwyMDkuMjcsMjA5LjI3LDAsMCwxLTM2LjA1LDUuMmMtNS44NS4zMy0xMS43MS44My0xNy41Mi40Ni00LjUxLS4yOS05LjE0LDAtMTMuNTYtMS4zNyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiMwZTFmNjYiLz48L2c+PC9zdmc+",protocol:"uniswap_v2",slippage:!0,blockchains:["polygon"],polygon:{router:{address:"0xa5E0829CaCEd8fFDD4De3c43696c57F7D7A678ff",api:SL.ROUTER},factory:{address:"0x5757371414417b8C6CAad45bAeF941aBc7d3Ab32",api:SL.FACTORY},pair:{api:SL.PAIR}}};var US=t=>new IL(Object.assign(RS,{scope:t,findPath:t=>SL.findPath({...t,exchange:RS}),pathExists:t=>SL.pathExists({...t,exchange:RS}),getAmounts:t=>SL.getAmounts({...t,exchange:RS}),getPrep:t=>SL.getPrep({...t,exchange:RS}),getTransaction:t=>SL.getTransaction({...t,exchange:RS})}));const QS={name:"spookyswap",label:"SpookySwap",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNjQxIDY0MCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNjQxIDY0MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxwYXRoIGZpbGw9IiMxMjExMjIiIGQ9Ik0zNC4yLDMyMGMwLDE1OC41LDEyOC41LDI4Ni4zLDI4Ni4zLDI4Ni4zYzE1OC41LDAsMjg2LjMtMTI4LjUsMjg2LjMtMjg2LjNjMC0xNTguNS0xMjguNS0yODYuMy0yODYuMy0yODYuMwoJCUMxNjIuNywzMy43LDM0LjIsMTYyLjIsMzQuMiwzMjBMMzQuMiwzMjB6Ii8+Cgk8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZmlsbD0iI0YyRjRGOCIgZD0iTTEyMC45LDI0Ny42Yy0zLjMsMjIuMiwwLjcsNDUuNyw0LjYsNjcuOGMyLDMuMyw1LjIsNS45LDkuOCw3LjJjLTkuMSwxOS42LTE0LjMsNDAuNC0xNC4zLDYyLjYKCQljMCw5My4zLDkwLDE2OC45LDIwMS41LDE2OC45UzUyNCw0NzguNSw1MjQsMzg1LjJjMC0yMS41LTUuMi00My0xNC4zLTYyLjZjMy45LTEuMyw2LjUtMy45LDcuOC03LjJjNC42LTIyLjIsOC41LTQ1LjcsNS4yLTY3LjgKCQljLTMuMy0zMC0xMy43LTM5LjgtNDUtMzJjLTE1LjcsMy45LTM2LjUsMTMtNTIuOCwyNC4xYy0zMC0xNS02NS4yLTIzLjUtMTAyLjQtMjMuNWMtMzcuOCwwLTczLjcsOS4xLTEwMy43LDI0LjEKCQljLTE2LjMtMTEuMS0zNy4yLTIwLjktNTMuNS0yNC44QzEzNCwyMDcuOCwxMjQuMiwyMTcuNiwxMjAuOSwyNDcuNkwxMjAuOSwyNDcuNnogTTIzOC4zLDM4MC43Yy0yMy41LTEwLjQtNjMuOS03LjgtNjMuOS03LjgKCQlzMiwzNy44LDI0LjgsNTAuOWMyNy40LDE1LDc4LjksNy44LDc4LjksNy44UzI3My41LDM5Ni4zLDIzOC4zLDM4MC43TDIzOC4zLDM4MC43eiBNMzY5LjQsNDMyLjJjMCwwLDUwLjksNy44LDc4LjktNy44CgkJYzIzLjUtMTMsMjQuOC01MC45LDI0LjgtNTAuOXMtNDAuNC0yLjYtNjMuOSw3LjhDMzc0LDM5Ni4zLDM2OS40LDQzMS41LDM2OS40LDQzMi4yTDM2OS40LDQzMi4yeiBNMzEyLjcsNDU4LjkKCQljMCwyLjYsNS4yLDUuMiwxMS43LDUuMnMxMS43LTIsMTEuNy01LjJjMC0yLjYtNS4yLTUuMi0xMS43LTUuMkMzMTcuOSw0NTMuNywzMTIuNyw0NTUuNywzMTIuNyw0NTguOUwzMTIuNyw0NTguOXoiLz4KCTxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBmaWxsPSIjRjJGNEY4IiBkPSJNNTUyLjcsNDM1LjRjLTE4LjktNy4yLTM5LjEtMTEuMS01OS4zLTExLjFjLTUuMiwwLTUuMi03LjgsMC03LjhjMjAuOSwwLDQxLjcsMy45LDYxLjMsMTEuNwoJCWMyLDAuNywzLjMsMi42LDIuNiw0LjZDNTU2LjYsNDM0LjgsNTU0LjYsNDM2LjEsNTUyLjcsNDM1LjRMNTUyLjcsNDM1LjR6IE05Mi4yLDQyNy42YzE5LjYtNy44LDQwLjQtMTEuMSw2MS4zLTExLjcKCQljNS4yLDAsNS4yLDcuOCwwLDcuOGMtMjAuMiwwLTQwLjQsMy45LTU5LjMsMTEuMWMtMiwwLjctNC42LTAuNy01LjItMi42Qzg5LDQzMC45LDkwLjMsNDI4LjMsOTIuMiw0MjcuNkw5Mi4yLDQyNy42eiBNMTMyLjcsNDUwLjQKCQljOS44LTMuMywyMC4yLTQuNiwzMC01LjJjNS4yLDAsNS4yLDcuOCwwLDcuOGMtOS4xLDAtMTguOSwyLTI3LjQsNC42Yy04LjUsMi42LTE3LjYsNS45LTI0LjEsMTEuN2MtMy45LDMuMy05LjEtMi01LjktNS45CgkJQzExMy4xLDQ1NywxMjMuNSw0NTMuNywxMzIuNyw0NTAuNEwxMzIuNyw0NTAuNHogTTE3MS44LDQ2NS40Yy03LjgsMy4zLTE1LjcsNy44LTIyLjgsMTIuNGMtNy4yLDQuNi0xMy43LDEwLjQtMTguOSwxNwoJCWMtMS4zLDItMC43LDQuNiwxLjMsNS4yYzIsMS4zLDQuNiwwLjcsNS4yLTEuM2M0LjYtNS45LDExLjEtMTEuMSwxNy0xNWM3LjItNC42LDE0LjMtOC41LDIxLjUtMTEuN2MyLTEuMywyLjYtMy4zLDEuMy01LjIKCQlDMTc2LjQsNDY0LjgsMTczLjgsNDY0LjEsMTcxLjgsNDY1LjRMMTcxLjgsNDY1LjR6IE00ODMuNSw0NTMuN2M5LjEsMCwxOC45LDIsMjcuNCw0LjZjNC42LDEuMyw5LjEsMy4zLDEzLjcsNS4yCgkJYzMuOSwxLjMsNy4yLDMuOSwxMC40LDYuNWMzLjksMy4zLDkuMS0yLDUuOS01LjljLTcuMi02LjUtMTcuNi0xMC40LTI2LjctMTNjLTkuOC0zLjMtMjAuMi00LjYtMzAtNS4yCgkJQzQ3OSw0NDUuMiw0NzksNDUzLjcsNDgzLjUsNDUzLjdMNDgzLjUsNDUzLjd6IE00OTIuNyw0ODMuN2MtNy4yLTQuNi0xNC4zLTcuOC0yMS41LTExLjFsMCwwYy0yLTEuMy0yLjYtMy4zLTEuMy01LjIKCQljMS4zLTIsMy4zLTIuNiw1LjItMS4zYzE1LjcsNi41LDMyLDE1LjcsNDEuNywyOS4zYzEuMywyLDAuNyw0LjYtMS4zLDUuMmMtMiwxLjMtNC42LDAuNy01LjItMS4zCgkJQzUwNS43LDQ5Mi44LDQ5OS4yLDQ4Ny42LDQ5Mi43LDQ4My43TDQ5Mi43LDQ4My43eiIvPgoJPHBhdGggZmlsbD0iIzY2NjVERCIgZD0iTTYyLjIsMzM1LjdjMy45LTUuOSwzNS45LTIyLjgsNzUuNy0zMy4zYzguNS0yNC44LDE5LjYtNDguMywzMi03MS4xbDMyLTU4Yy05LjEtMy45LTE4LjMtOS4xLTI2LjctMTUKCQljLTEuMy0xLjMtMi42LTIuNi0zLjktMy45Yy0wLjctMS4zLTEuMy0zLjMtMS4zLTQuNnMyLTMuOSwyLjYtNC42YzItMi42LDQuNi00LjYsNy4yLTcuMmM1LjktNS4yLDEyLjQtOS44LDE5LjYtMTMuNwoJCWMzLjMtMiw2LjUtMy45LDkuOC02LjVjMjIuOC0xNC4zLDM1LjktMjUuNCw1Ni43LTM3LjhjMjAuMi0xMS43LDMwLTE4LjMsNTIuOC0xNy42YzI5LjMsMCwxMDEuNyw5Mi42LDEzNC4zLDE0MC4yCgkJYzE5LjYsMjguNyw0Ni4zLDgwLjIsNTYuMSw5OS44YzIsMC43LDQuNiwxLjMsNi41LDJjMzAsOS4xLDU4LjcsMjIuMiw2NS45LDMwLjdjNi41LDcuMi0yMS41LDEwLjQtNDguOSwxNS43CgkJYy0yNy40LDQuNi0xMjAuNyw3LjItMjEwLDcuOGMtODkuMywwLjctMTkzLjctMi42LTIxNi41LTUuOUM4My4xLDM0OS4zLDU3LjcsMzQyLjgsNjIuMiwzMzUuN0w2Mi4yLDMzNS43eiIvPgoJPHBhdGggZmlsbD0iI0ZGOTlBNSIgZD0iTTQ4My41LDI1Ni4xYzAsMC01OC43LTE1LTE2Mi40LTE1Yy0xMTEuNSwwLTE2NSwxNy0xNjUsMTdzLTYuNSwxMi40LTkuMSwxOC45Yy0yLjYsNy4yLTkuMSwyNS40LTkuMSwyNS40CgkJUzIxOC44LDI4OCwzMjIuNSwyODhjNjIuNiwwLDEyNC42LDUuMiwxODYuNSwxNS43YzAsMC05LjEtMjIuMi0xNS0zMS4zQzQ5MC43LDI2Ny4yLDQ4Ny41LDI2MS4zLDQ4My41LDI1Ni4xTDQ4My41LDI1Ni4xeiIvPgoJPHBhdGggZmlsbD0iI0ZGRTYwMCIgZD0iTTEzMy4zLDEzMS41YzYuNS0wLjcsMTUuNywxOS42LDE1LjcsMTkuNnMyMC45LTUuOSwyNC44LDBjMy4zLDUuOS0xNSwxOS42LTE1LDE5LjZzMTEuMSwxOS42LDcuMiwyMy41CgkJYy0zLjMsMy45LTIyLjgtOC41LTIyLjgtOC41cy0xNSwxNy0xOS42LDE0LjNjLTUuMi0yLjYsMC43LTI0LjgsMC43LTI0LjhzLTIxLjUtOS4xLTE5LjYtMTQuM2MxLjMtNS4yLDIzLjUtNy4yLDIzLjUtNy4yCgkJUzEyNi44LDEzMi44LDEzMy4zLDEzMS41TDEzMy4zLDEzMS41eiIvPgo8L2c+Cjwvc3ZnPgo=",protocol:"uniswap_v2",slippage:!0,blockchains:["fantom"],fantom:{router:{address:"0xF491e7B69E4244ad4002BC14e878a34207E38c29",api:SL.ROUTER},factory:{address:"0x152eE697f2E276fA89E96742e9bB9aB1F2E61bE3",api:SL.FACTORY},pair:{api:SL.PAIR}}};var YS=t=>new IL(Object.assign(QS,{scope:t,findPath:t=>SL.findPath({...t,exchange:QS}),pathExists:t=>SL.pathExists({...t,exchange:QS}),getAmounts:t=>SL.getAmounts({...t,exchange:QS}),getPrep:t=>SL.getPrep({...t,exchange:QS}),getTransaction:t=>SL.getTransaction({...t,exchange:QS})}));function WS(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}const FS=({blockchain:t,path:e})=>{if(!e)return;let n=e.map(((n,r)=>n===Hf[t].currency.address&&e[r+1]!=Hf[t].wrapped.address&&e[r-1]!=Hf[t].wrapped.address?Hf[t].wrapped.address:n));return n[0]==Hf[t].currency.address&&n[1]==Hf[t].wrapped.address?n.splice(0,1):n[n.length-1]==Hf[t].currency.address&&n[n.length-2]==Hf[t].wrapped.address&&n.splice(n.length-1,1),n},VS=async({exchange:t,blockchain:e,path:n,amountIn:r,amountOut:i,block:o})=>{let a;if(n=FS({blockchain:e,path:n}),a=r?await PI({blockchain:Hf[e].name,address:t[e].quoter.address,method:"findBestPathFromAmountIn",api:t[e].quoter.api,cache:5,block:o,params:{route:n,amountIn:r}}).catch((()=>{})):await PI({blockchain:Hf[e].name,address:t[e].quoter.address,method:"findBestPathFromAmountOut",api:t[e].quoter.api,cache:5,block:o,params:{route:n,amountOut:i}}).catch((()=>{})),a&&!a.virtualAmountsWithoutSlippage.some((t=>"0"===t.toString())))return a};let HS=async({exchange:t,blockchain:e,path:n,pools:r,amountIn:i})=>{let o=await PI({blockchain:Hf[e].name,address:t[e].quoter.address,method:"findBestPathFromAmountIn",api:t[e].quoter.api,cache:5,params:{route:FS({blockchain:e,path:n}),amountIn:i}}).catch((()=>{}));if(o)return o.virtualAmountsWithoutSlippage[o.virtualAmountsWithoutSlippage.length-1]},GS=async({exchange:t,blockchain:e,path:n,pools:r,amountOut:i,block:o})=>{let a=await PI({blockchain:Hf[e].name,address:t[e].quoter.address,method:"findBestPathFromAmountOut",api:t[e].quoter.api,cache:5,block:o,params:{route:FS({blockchain:e,path:n}),amountOut:i}}).catch((()=>{}));if(a)return a.virtualAmountsWithoutSlippage[0]};var qS={findPath:async({exchange:t,blockchain:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s})=>{if([n,r].includes(Hf[e].currency.address)&&[n,r].includes(Hf[e].wrapped.address))return{path:void 0,exchangePath:void 0};let u,c=[];if(c=[await VS({exchange:t,blockchain:e,path:[n,r],amountIn:i||a,amountOut:o||s})],c.filter(Boolean).length&&(u=[n,r]),u||n==Hf[e].wrapped.address||r==Hf[e].wrapped.address||(c=[],o||s?(c.push(await VS({exchange:t,blockchain:e,path:[Hf[e].wrapped.address,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await VS({exchange:t,blockchain:e,path:[n,Hf[e].wrapped.address],amountOut:c[0].virtualAmountsWithoutSlippage[0]}))):(c.push(await VS({exchange:t,blockchain:e,path:[n,Hf[e].wrapped.address],amountIn:i||a})),c.filter(Boolean).length&&c.push(await VS({exchange:t,blockchain:e,path:[Hf[e].wrapped.address,r],amountIn:c[0].virtualAmountsWithoutSlippage[1]}))),2===c.filter(Boolean).length&&(u=[n,Hf[e].wrapped.address,r])),!u){c=[];let l=(await Promise.all(Hf[e].stables.usd.map((async u=>{let c=[];if(o||s?(c.push(await VS({exchange:t,blockchain:e,path:[u,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await VS({exchange:t,blockchain:e,path:[n,u],amountOut:c[0].virtualAmountsWithoutSlippage[0]}))):(c.push(await VS({exchange:t,blockchain:e,path:[n,u],amountIn:i||a})),c.filter(Boolean).length&&c.push(await VS({exchange:t,blockchain:e,path:[u,r],amountIn:c[0].virtualAmountsWithoutSlippage[1]}))),2===c.filter(Boolean).length)return[u,c]})))).filter(Boolean)[0];l&&(u=[n,l[0],r],c=l[1])}return WS([u,"optionalAccess",t=>t.length])&&u[0]==Hf[e].currency.address?u.splice(1,0,Hf[e].wrapped.address):WS([u,"optionalAccess",t=>t.length])&&u[u.length-1]==Hf[e].currency.address&&u.splice(u.length-1,0,Hf[e].wrapped.address),u||(c=[]),{path:u,pools:c,exchangePath:FS({blockchain:e,path:u})}},pathExists:async({exchange:t,blockchain:e,path:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a})=>!!await VS({exchange:t,blockchain:e,path:n,amountIn:r||o,amountOut:i||a}),getAmounts:async({exchange:t,blockchain:e,path:n,pools:r,block:i,tokenIn:o,tokenOut:a,amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l})=>{if(s){if(null==(u=await GS({exchange:t,blockchain:e,block:i,path:n,pools:r,amountOut:s,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(u){if(null==(s=await HS({exchange:t,blockchain:e,path:n,pools:r,amountIn:u,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}else if(l){if(null==(u=await GS({exchange:t,blockchain:e,block:i,path:n,pools:r,amountOut:l,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(c){if(null==(s=await HS({exchange:t,blockchain:e,path:n,pools:r,amountIn:c,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}return{amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l}},getTransaction:async({exchange:t,blockchain:e,pools:n,path:r,amountIn:i,amountInMax:o,amountOut:a,amountOutMin:s,amountInInput:u,amountOutInput:c,amountInMaxInput:l,amountOutMinInput:h,account:d})=>{const f={blockchain:e,from:d,to:t[e].router.address,api:t[e].router.api},p=Math.round(Date.now()/1e3)+86400,y=[n.map((t=>t.binSteps[0])),n.map((t=>t.versions[0])),FS({blockchain:e,path:r})];return r[0]===Hf[e].currency.address?l?(f.method="swapNATIVEForExactTokens",f.params={amountOut:a,path:y,to:d,deadline:p},f.value=o):(f.method="swapExactNATIVEForTokens",f.params={amountOutMin:s||a,path:y,to:d,deadline:p},f.value=i):r[r.length-1]===Hf[e].currency.address?l?(f.method="swapTokensForExactNATIVE",f.params={amountNATIVEOut:a,amountInMax:o,path:y,to:d,deadline:p}):(f.method="swapExactTokensForNATIVE",f.params={amountIn:i,amountOutMinNATIVE:s||a,path:y,to:d,deadline:p}):l?(f.method="swapTokensForExactTokens",f.params={amountOut:a,amountInMax:o,path:y,to:d,deadline:p}):(f.method="swapExactTokensForTokens",f.params={amountIn:i,amountOutMin:s||a,path:y,to:d,deadline:p}),f},getPrep:async({exchange:t,blockchain:e,tokenIn:n,amountIn:r,account:i})=>{if(n===Hf[e].currency.address)return;const o=await PI({blockchain:e,address:n,method:"allowance",api:Tk[e][20],params:[i,t[e].router.address]});if(o.gte(r))return;return{transaction:{blockchain:e,from:i,to:n,api:Tk[e][20],method:"approve",params:[t[e].router.address,r.sub(o)]}}},ROUTER:[{inputs:[{internalType:"contract ILBFactory",name:"factory",type:"address"},{internalType:"contract IJoeFactory",name:"factoryV1",type:"address"},{internalType:"contract ILBLegacyFactory",name:"legacyFactory",type:"address"},{internalType:"contract ILBLegacyRouter",name:"legacyRouter",type:"address"},{internalType:"contract IWNATIVE",name:"wnative",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AddressHelper__CallFailed",type:"error"},{inputs:[],name:"AddressHelper__NonContract",type:"error"},{inputs:[],name:"JoeLibrary__InsufficientAmount",type:"error"},{inputs:[],name:"JoeLibrary__InsufficientLiquidity",type:"error"},{inputs:[{internalType:"uint256",name:"amountSlippage",type:"uint256"}],name:"LBRouter__AmountSlippageBPTooBig",type:"error"},{inputs:[{internalType:"uint256",name:"amountXMin",type:"uint256"},{internalType:"uint256",name:"amountX",type:"uint256"},{internalType:"uint256",name:"amountYMin",type:"uint256"},{internalType:"uint256",name:"amountY",type:"uint256"}],name:"LBRouter__AmountSlippageCaught",type:"error"},{inputs:[{internalType:"uint256",name:"id",type:"uint256"}],name:"LBRouter__BinReserveOverflows",type:"error"},{inputs:[],name:"LBRouter__BrokenSwapSafetyCheck",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint256",name:"currentTimestamp",type:"uint256"}],name:"LBRouter__DeadlineExceeded",type:"error"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"LBRouter__FailedToSendNATIVE",type:"error"},{inputs:[{internalType:"uint256",name:"idDesired",type:"uint256"},{internalType:"uint256",name:"idSlippage",type:"uint256"}],name:"LBRouter__IdDesiredOverflows",type:"error"},{inputs:[{internalType:"int256",name:"id",type:"int256"}],name:"LBRouter__IdOverflows",type:"error"},{inputs:[{internalType:"uint256",name:"activeIdDesired",type:"uint256"},{internalType:"uint256",name:"idSlippage",type:"uint256"},{internalType:"uint256",name:"activeId",type:"uint256"}],name:"LBRouter__IdSlippageCaught",type:"error"},{inputs:[{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"uint256",name:"amountOut",type:"uint256"}],name:"LBRouter__InsufficientAmountOut",type:"error"},{inputs:[{internalType:"address",name:"wrongToken",type:"address"}],name:"LBRouter__InvalidTokenPath",type:"error"},{inputs:[{internalType:"uint256",name:"version",type:"uint256"}],name:"LBRouter__InvalidVersion",type:"error"},{inputs:[],name:"LBRouter__LengthsMismatch",type:"error"},{inputs:[{internalType:"uint256",name:"amountInMax",type:"uint256"},{internalType:"uint256",name:"amountIn",type:"uint256"}],name:"LBRouter__MaxAmountInExceeded",type:"error"},{inputs:[],name:"LBRouter__NotFactoryOwner",type:"error"},{inputs:[{internalType:"address",name:"tokenX",type:"address"},{internalType:"address",name:"tokenY",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBRouter__PairNotCreated",type:"error"},{inputs:[],name:"LBRouter__SenderIsNotWNATIVE",type:"error"},{inputs:[{internalType:"uint256",name:"id",type:"uint256"}],name:"LBRouter__SwapOverflows",type:"error"},{inputs:[{internalType:"uint256",name:"excess",type:"uint256"}],name:"LBRouter__TooMuchTokensIn",type:"error"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"reserve",type:"uint256"}],name:"LBRouter__WrongAmounts",type:"error"},{inputs:[{internalType:"address",name:"tokenX",type:"address"},{internalType:"address",name:"tokenY",type:"address"},{internalType:"uint256",name:"amountX",type:"uint256"},{internalType:"uint256",name:"amountY",type:"uint256"},{internalType:"uint256",name:"msgValue",type:"uint256"}],name:"LBRouter__WrongNativeLiquidityParameters",type:"error"},{inputs:[],name:"LBRouter__WrongTokenOrder",type:"error"},{inputs:[],name:"TokenHelper__TransferFailed",type:"error"},{inputs:[{components:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"},{internalType:"uint256",name:"amountX",type:"uint256"},{internalType:"uint256",name:"amountY",type:"uint256"},{internalType:"uint256",name:"amountXMin",type:"uint256"},{internalType:"uint256",name:"amountYMin",type:"uint256"},{internalType:"uint256",name:"activeIdDesired",type:"uint256"},{internalType:"uint256",name:"idSlippage",type:"uint256"},{internalType:"int256[]",name:"deltaIds",type:"int256[]"},{internalType:"uint256[]",name:"distributionX",type:"uint256[]"},{internalType:"uint256[]",name:"distributionY",type:"uint256[]"},{internalType:"address",name:"to",type:"address"},{internalType:"address",name:"refundTo",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ILBRouter.LiquidityParameters",name:"liquidityParameters",type:"tuple"}],name:"addLiquidity",outputs:[{internalType:"uint256",name:"amountXAdded",type:"uint256"},{internalType:"uint256",name:"amountYAdded",type:"uint256"},{internalType:"uint256",name:"amountXLeft",type:"uint256"},{internalType:"uint256",name:"amountYLeft",type:"uint256"},{internalType:"uint256[]",name:"depositIds",type:"uint256[]"},{internalType:"uint256[]",name:"liquidityMinted",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"},{internalType:"uint256",name:"amountX",type:"uint256"},{internalType:"uint256",name:"amountY",type:"uint256"},{internalType:"uint256",name:"amountXMin",type:"uint256"},{internalType:"uint256",name:"amountYMin",type:"uint256"},{internalType:"uint256",name:"activeIdDesired",type:"uint256"},{internalType:"uint256",name:"idSlippage",type:"uint256"},{internalType:"int256[]",name:"deltaIds",type:"int256[]"},{internalType:"uint256[]",name:"distributionX",type:"uint256[]"},{internalType:"uint256[]",name:"distributionY",type:"uint256[]"},{internalType:"address",name:"to",type:"address"},{internalType:"address",name:"refundTo",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ILBRouter.LiquidityParameters",name:"liquidityParameters",type:"tuple"}],name:"addLiquidityNATIVE",outputs:[{internalType:"uint256",name:"amountXAdded",type:"uint256"},{internalType:"uint256",name:"amountYAdded",type:"uint256"},{internalType:"uint256",name:"amountXLeft",type:"uint256"},{internalType:"uint256",name:"amountYLeft",type:"uint256"},{internalType:"uint256[]",name:"depositIds",type:"uint256[]"},{internalType:"uint256[]",name:"liquidityMinted",type:"uint256[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint24",name:"activeId",type:"uint24"},{internalType:"uint16",name:"binStep",type:"uint16"}],name:"createLBPair",outputs:[{internalType:"contract ILBPair",name:"pair",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getFactory",outputs:[{internalType:"contract ILBFactory",name:"lbFactory",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ILBPair",name:"pair",type:"address"},{internalType:"uint256",name:"price",type:"uint256"}],name:"getIdFromPrice",outputs:[{internalType:"uint24",name:"",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLegacyFactory",outputs:[{internalType:"contract ILBLegacyFactory",name:"legacyLBfactory",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLegacyRouter",outputs:[{internalType:"contract ILBLegacyRouter",name:"legacyRouter",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ILBPair",name:"pair",type:"address"},{internalType:"uint24",name:"id",type:"uint24"}],name:"getPriceFromId",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ILBPair",name:"pair",type:"address"},{internalType:"uint128",name:"amountOut",type:"uint128"},{internalType:"bool",name:"swapForY",type:"bool"}],name:"getSwapIn",outputs:[{internalType:"uint128",name:"amountIn",type:"uint128"},{internalType:"uint128",name:"amountOutLeft",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ILBPair",name:"pair",type:"address"},{internalType:"uint128",name:"amountIn",type:"uint128"},{internalType:"bool",name:"swapForY",type:"bool"}],name:"getSwapOut",outputs:[{internalType:"uint128",name:"amountInLeft",type:"uint128"},{internalType:"uint128",name:"amountOut",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"getV1Factory",outputs:[{internalType:"contract IJoeFactory",name:"factoryV1",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getWNATIVE",outputs:[{internalType:"contract IWNATIVE",name:"wnative",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"uint256",name:"amountXMin",type:"uint256"},{internalType:"uint256",name:"amountYMin",type:"uint256"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"removeLiquidity",outputs:[{internalType:"uint256",name:"amountX",type:"uint256"},{internalType:"uint256",name:"amountY",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountNATIVEMin",type:"uint256"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"},{internalType:"address payable",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"removeLiquidityNATIVE",outputs:[{internalType:"uint256",name:"amountToken",type:"uint256"},{internalType:"uint256",name:"amountNATIVE",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOutMin",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactNATIVEForTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOutMin",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactNATIVEForTokensSupportingFeeOnTransferTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinNATIVE",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address payable",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForNATIVE",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinNATIVE",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address payable",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForNATIVESupportingFeeOnTransferTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForTokensSupportingFeeOnTransferTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapNATIVEForExactTokens",outputs:[{internalType:"uint256[]",name:"amountsIn",type:"uint256[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountNATIVEOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address payable",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapTokensForExactNATIVE",outputs:[{internalType:"uint256[]",name:"amountsIn",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapTokensForExactTokens",outputs:[{internalType:"uint256[]",name:"amountsIn",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"sweep",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ILBToken",name:"lbToken",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],name:"sweepLBToken",outputs:[],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}],FACTORY:[{inputs:[{internalType:"address",name:"feeRecipient",type:"address"},{internalType:"uint256",name:"flashLoanFee",type:"uint256"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"LBFactory__AddressZero",type:"error"},{inputs:[{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBFactory__BinStepHasNoPreset",type:"error"},{inputs:[{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBFactory__BinStepTooLow",type:"error"},{inputs:[{internalType:"uint256",name:"fees",type:"uint256"},{internalType:"uint256",name:"maxFees",type:"uint256"}],name:"LBFactory__FlashLoanFeeAboveMax",type:"error"},{inputs:[{internalType:"contract IERC20",name:"token",type:"address"}],name:"LBFactory__IdenticalAddresses",type:"error"},{inputs:[],name:"LBFactory__ImplementationNotSet",type:"error"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint256",name:"_binStep",type:"uint256"}],name:"LBFactory__LBPairAlreadyExists",type:"error"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBFactory__LBPairDoesNotExist",type:"error"},{inputs:[],name:"LBFactory__LBPairIgnoredIsAlreadyInTheSameState",type:"error"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBFactory__LBPairNotCreated",type:"error"},{inputs:[{internalType:"address",name:"LBPairImplementation",type:"address"}],name:"LBFactory__LBPairSafetyCheckFailed",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBFactory__PresetIsLockedForUsers",type:"error"},{inputs:[],name:"LBFactory__PresetOpenStateIsAlreadyInTheSameState",type:"error"},{inputs:[{internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"LBFactory__QuoteAssetAlreadyWhitelisted",type:"error"},{inputs:[{internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"LBFactory__QuoteAssetNotWhitelisted",type:"error"},{inputs:[{internalType:"address",name:"feeRecipient",type:"address"}],name:"LBFactory__SameFeeRecipient",type:"error"},{inputs:[{internalType:"uint256",name:"flashLoanFee",type:"uint256"}],name:"LBFactory__SameFlashLoanFee",type:"error"},{inputs:[{internalType:"address",name:"LBPairImplementation",type:"address"}],name:"LBFactory__SameImplementation",type:"error"},{inputs:[],name:"PairParametersHelper__InvalidParameter",type:"error"},{inputs:[],name:"PendingOwnable__AddressZero",type:"error"},{inputs:[],name:"PendingOwnable__NoPendingOwner",type:"error"},{inputs:[],name:"PendingOwnable__NotOwner",type:"error"},{inputs:[],name:"PendingOwnable__NotPendingOwner",type:"error"},{inputs:[],name:"PendingOwnable__PendingOwnerAlreadySet",type:"error"},{inputs:[],name:"SafeCast__Exceeds16Bits",type:"error"},{inputs:[{internalType:"uint256",name:"x",type:"uint256"},{internalType:"int256",name:"y",type:"int256"}],name:"Uint128x128Math__PowUnderflow",type:"error"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"oldRecipient",type:"address"},{indexed:!1,internalType:"address",name:"newRecipient",type:"address"}],name:"FeeRecipientSet",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"oldFlashLoanFee",type:"uint256"},{indexed:!1,internalType:"uint256",name:"newFlashLoanFee",type:"uint256"}],name:"FlashLoanFeeSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"contract IERC20",name:"tokenX",type:"address"},{indexed:!0,internalType:"contract IERC20",name:"tokenY",type:"address"},{indexed:!0,internalType:"uint256",name:"binStep",type:"uint256"},{indexed:!1,internalType:"contract ILBPair",name:"LBPair",type:"address"},{indexed:!1,internalType:"uint256",name:"pid",type:"uint256"}],name:"LBPairCreated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"contract ILBPair",name:"LBPair",type:"address"},{indexed:!1,internalType:"bool",name:"ignored",type:"bool"}],name:"LBPairIgnoredStateChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"oldLBPairImplementation",type:"address"},{indexed:!1,internalType:"address",name:"LBPairImplementation",type:"address"}],name:"LBPairImplementationSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"pendingOwner",type:"address"}],name:"PendingOwnerSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"binStep",type:"uint256"},{indexed:!0,internalType:"bool",name:"isOpen",type:"bool"}],name:"PresetOpenStateChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"binStep",type:"uint256"}],name:"PresetRemoved",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"binStep",type:"uint256"},{indexed:!1,internalType:"uint256",name:"baseFactor",type:"uint256"},{indexed:!1,internalType:"uint256",name:"filterPeriod",type:"uint256"},{indexed:!1,internalType:"uint256",name:"decayPeriod",type:"uint256"},{indexed:!1,internalType:"uint256",name:"reductionFactor",type:"uint256"},{indexed:!1,internalType:"uint256",name:"variableFeeControl",type:"uint256"},{indexed:!1,internalType:"uint256",name:"protocolShare",type:"uint256"},{indexed:!1,internalType:"uint256",name:"maxVolatilityAccumulator",type:"uint256"}],name:"PresetSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"QuoteAssetAdded",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"QuoteAssetRemoved",type:"event"},{inputs:[{internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"addQuoteAsset",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"becomeOwner",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint24",name:"activeId",type:"uint24"},{internalType:"uint16",name:"binStep",type:"uint16"}],name:"createLBPair",outputs:[{internalType:"contract ILBPair",name:"pair",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ILBPair",name:"pair",type:"address"}],name:"forceDecay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAllBinSteps",outputs:[{internalType:"uint256[]",name:"binStepWithPreset",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"}],name:"getAllLBPairs",outputs:[{components:[{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"contract ILBPair",name:"LBPair",type:"address"},{internalType:"bool",name:"createdByOwner",type:"bool"},{internalType:"bool",name:"ignoredForRouting",type:"bool"}],internalType:"struct ILBFactory.LBPairInformation[]",name:"lbPairsAvailable",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFeeRecipient",outputs:[{internalType:"address",name:"feeRecipient",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFlashLoanFee",outputs:[{internalType:"uint256",name:"flashLoanFee",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"index",type:"uint256"}],name:"getLBPairAtIndex",outputs:[{internalType:"contract ILBPair",name:"lbPair",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLBPairImplementation",outputs:[{internalType:"address",name:"lbPairImplementation",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenA",type:"address"},{internalType:"contract IERC20",name:"tokenB",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"}],name:"getLBPairInformation",outputs:[{components:[{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"contract ILBPair",name:"LBPair",type:"address"},{internalType:"bool",name:"createdByOwner",type:"bool"},{internalType:"bool",name:"ignoredForRouting",type:"bool"}],internalType:"struct ILBFactory.LBPairInformation",name:"lbPairInformation",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[],name:"getMaxFlashLoanFee",outputs:[{internalType:"uint256",name:"maxFee",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getMinBinStep",outputs:[{internalType:"uint256",name:"minBinStep",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getNumberOfLBPairs",outputs:[{internalType:"uint256",name:"lbPairNumber",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getNumberOfQuoteAssets",outputs:[{internalType:"uint256",name:"numberOfQuoteAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getOpenBinSteps",outputs:[{internalType:"uint256[]",name:"openBinStep",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"binStep",type:"uint256"}],name:"getPreset",outputs:[{internalType:"uint256",name:"baseFactor",type:"uint256"},{internalType:"uint256",name:"filterPeriod",type:"uint256"},{internalType:"uint256",name:"decayPeriod",type:"uint256"},{internalType:"uint256",name:"reductionFactor",type:"uint256"},{internalType:"uint256",name:"variableFeeControl",type:"uint256"},{internalType:"uint256",name:"protocolShare",type:"uint256"},{internalType:"uint256",name:"maxVolatilityAccumulator",type:"uint256"},{internalType:"bool",name:"isOpen",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"index",type:"uint256"}],name:"getQuoteAssetAtIndex",outputs:[{internalType:"contract IERC20",name:"asset",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract IERC20",name:"token",type:"address"}],name:"isQuoteAsset",outputs:[{internalType:"bool",name:"isQuote",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingOwner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"binStep",type:"uint16"}],name:"removePreset",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"removeQuoteAsset",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"revokePendingOwner",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"feeRecipient",type:"address"}],name:"setFeeRecipient",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"uint16",name:"baseFactor",type:"uint16"},{internalType:"uint16",name:"filterPeriod",type:"uint16"},{internalType:"uint16",name:"decayPeriod",type:"uint16"},{internalType:"uint16",name:"reductionFactor",type:"uint16"},{internalType:"uint24",name:"variableFeeControl",type:"uint24"},{internalType:"uint16",name:"protocolShare",type:"uint16"},{internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"}],name:"setFeesParametersOnPair",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"flashLoanFee",type:"uint256"}],name:"setFlashLoanFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"bool",name:"ignored",type:"bool"}],name:"setLBPairIgnored",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newLBPairImplementation",type:"address"}],name:"setLBPairImplementation",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"pendingOwner_",type:"address"}],name:"setPendingOwner",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"uint16",name:"baseFactor",type:"uint16"},{internalType:"uint16",name:"filterPeriod",type:"uint16"},{internalType:"uint16",name:"decayPeriod",type:"uint16"},{internalType:"uint16",name:"reductionFactor",type:"uint16"},{internalType:"uint24",name:"variableFeeControl",type:"uint24"},{internalType:"uint16",name:"protocolShare",type:"uint16"},{internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"},{internalType:"bool",name:"isOpen",type:"bool"}],name:"setPreset",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"bool",name:"isOpen",type:"bool"}],name:"setPresetOpenState",outputs:[],stateMutability:"nonpayable",type:"function"}],PAIR:[{inputs:[{internalType:"contract ILBFactory",name:"factory_",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AddressHelper__CallFailed",type:"error"},{inputs:[],name:"AddressHelper__NonContract",type:"error"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"BinHelper__CompositionFactorFlawed",type:"error"},{inputs:[],name:"BinHelper__LiquidityOverflow",type:"error"},{inputs:[],name:"FeeHelper__FeeTooLarge",type:"error"},{inputs:[],name:"LBPair__AddressZero",type:"error"},{inputs:[],name:"LBPair__AlreadyInitialized",type:"error"},{inputs:[],name:"LBPair__EmptyMarketConfigs",type:"error"},{inputs:[],name:"LBPair__FlashLoanCallbackFailed",type:"error"},{inputs:[],name:"LBPair__FlashLoanInsufficientAmount",type:"error"},{inputs:[],name:"LBPair__InsufficientAmountIn",type:"error"},{inputs:[],name:"LBPair__InsufficientAmountOut",type:"error"},{inputs:[],name:"LBPair__InvalidInput",type:"error"},{inputs:[],name:"LBPair__InvalidStaticFeeParameters",type:"error"},{inputs:[],name:"LBPair__MaxTotalFeeExceeded",type:"error"},{inputs:[],name:"LBPair__OnlyFactory",type:"error"},{inputs:[],name:"LBPair__OnlyProtocolFeeRecipient",type:"error"},{inputs:[],name:"LBPair__OutOfLiquidity",type:"error"},{inputs:[],name:"LBPair__TokenNotSupported",type:"error"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"LBPair__ZeroAmount",type:"error"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"LBPair__ZeroAmountsOut",type:"error"},{inputs:[],name:"LBPair__ZeroBorrowAmount",type:"error"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"LBPair__ZeroShares",type:"error"},{inputs:[],name:"LBToken__AddressThisOrZero",type:"error"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"id",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"LBToken__BurnExceedsBalance",type:"error"},{inputs:[],name:"LBToken__InvalidLength",type:"error"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"LBToken__SelfApproval",type:"error"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"LBToken__SpenderNotApproved",type:"error"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"id",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"LBToken__TransferExceedsBalance",type:"error"},{inputs:[],name:"LiquidityConfigurations__InvalidConfig",type:"error"},{inputs:[],name:"OracleHelper__InvalidOracleId",type:"error"},{inputs:[],name:"OracleHelper__LookUpTimestampTooOld",type:"error"},{inputs:[],name:"OracleHelper__NewLengthTooSmall",type:"error"},{inputs:[],name:"PackedUint128Math__AddOverflow",type:"error"},{inputs:[],name:"PackedUint128Math__MultiplierTooLarge",type:"error"},{inputs:[],name:"PackedUint128Math__SubUnderflow",type:"error"},{inputs:[],name:"PairParametersHelper__InvalidParameter",type:"error"},{inputs:[],name:"ReentrancyGuard__ReentrantCall",type:"error"},{inputs:[],name:"SafeCast__Exceeds128Bits",type:"error"},{inputs:[],name:"SafeCast__Exceeds24Bits",type:"error"},{inputs:[],name:"SafeCast__Exceeds40Bits",type:"error"},{inputs:[],name:"TokenHelper__TransferFailed",type:"error"},{inputs:[],name:"Uint128x128Math__LogUnderflow",type:"error"},{inputs:[{internalType:"uint256",name:"x",type:"uint256"},{internalType:"int256",name:"y",type:"int256"}],name:"Uint128x128Math__PowUnderflow",type:"error"},{inputs:[],name:"Uint256x256Math__MulDivOverflow",type:"error"},{inputs:[],name:"Uint256x256Math__MulShiftOverflow",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"bool",name:"approved",type:"bool"}],name:"ApprovalForAll",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"feeRecipient",type:"address"},{indexed:!1,internalType:"bytes32",name:"protocolFees",type:"bytes32"}],name:"CollectedProtocolFees",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint24",name:"id",type:"uint24"},{indexed:!1,internalType:"bytes32",name:"totalFees",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"protocolFees",type:"bytes32"}],name:"CompositionFees",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256[]",name:"ids",type:"uint256[]"},{indexed:!1,internalType:"bytes32[]",name:"amounts",type:"bytes32[]"}],name:"DepositedToBins",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"contract ILBFlashLoanCallback",name:"receiver",type:"address"},{indexed:!1,internalType:"uint24",name:"activeId",type:"uint24"},{indexed:!1,internalType:"bytes32",name:"amounts",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"totalFees",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"protocolFees",type:"bytes32"}],name:"FlashLoan",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint24",name:"idReference",type:"uint24"},{indexed:!1,internalType:"uint24",name:"volatilityReference",type:"uint24"}],name:"ForcedDecay",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint16",name:"oracleLength",type:"uint16"}],name:"OracleLengthIncreased",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint16",name:"baseFactor",type:"uint16"},{indexed:!1,internalType:"uint16",name:"filterPeriod",type:"uint16"},{indexed:!1,internalType:"uint16",name:"decayPeriod",type:"uint16"},{indexed:!1,internalType:"uint16",name:"reductionFactor",type:"uint16"},{indexed:!1,internalType:"uint24",name:"variableFeeControl",type:"uint24"},{indexed:!1,internalType:"uint16",name:"protocolShare",type:"uint16"},{indexed:!1,internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"}],name:"StaticFeeParametersSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint24",name:"id",type:"uint24"},{indexed:!1,internalType:"bytes32",name:"amountsIn",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"amountsOut",type:"bytes32"},{indexed:!1,internalType:"uint24",name:"volatilityAccumulator",type:"uint24"},{indexed:!1,internalType:"bytes32",name:"totalFees",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"protocolFees",type:"bytes32"}],name:"Swap",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256[]",name:"ids",type:"uint256[]"},{indexed:!1,internalType:"uint256[]",name:"amounts",type:"uint256[]"}],name:"TransferBatch",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256[]",name:"ids",type:"uint256[]"},{indexed:!1,internalType:"bytes32[]",name:"amounts",type:"bytes32[]"}],name:"WithdrawnFromBins",type:"event"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"bool",name:"approved",type:"bool"}],name:"approveForAll",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"id",type:"uint256"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"accounts",type:"address[]"},{internalType:"uint256[]",name:"ids",type:"uint256[]"}],name:"balanceOfBatch",outputs:[{internalType:"uint256[]",name:"batchBalances",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],name:"batchTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amountsToBurn",type:"uint256[]"}],name:"burn",outputs:[{internalType:"bytes32[]",name:"amounts",type:"bytes32[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"collectProtocolFees",outputs:[{internalType:"bytes32",name:"collectedProtocolFees",type:"bytes32"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ILBFlashLoanCallback",name:"receiver",type:"address"},{internalType:"bytes32",name:"amounts",type:"bytes32"},{internalType:"bytes",name:"data",type:"bytes"}],name:"flashLoan",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"forceDecay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getActiveId",outputs:[{internalType:"uint24",name:"activeId",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"getBin",outputs:[{internalType:"uint128",name:"binReserveX",type:"uint128"},{internalType:"uint128",name:"binReserveY",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBinStep",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getFactory",outputs:[{internalType:"contract ILBFactory",name:"factory",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"price",type:"uint256"}],name:"getIdFromPrice",outputs:[{internalType:"uint24",name:"id",type:"uint24"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"bool",name:"swapForY",type:"bool"},{internalType:"uint24",name:"id",type:"uint24"}],name:"getNextNonEmptyBin",outputs:[{internalType:"uint24",name:"nextId",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[],name:"getOracleParameters",outputs:[{internalType:"uint8",name:"sampleLifetime",type:"uint8"},{internalType:"uint16",name:"size",type:"uint16"},{internalType:"uint16",name:"activeSize",type:"uint16"},{internalType:"uint40",name:"lastUpdated",type:"uint40"},{internalType:"uint40",name:"firstTimestamp",type:"uint40"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint40",name:"lookupTimestamp",type:"uint40"}],name:"getOracleSampleAt",outputs:[{internalType:"uint64",name:"cumulativeId",type:"uint64"},{internalType:"uint64",name:"cumulativeVolatility",type:"uint64"},{internalType:"uint64",name:"cumulativeBinCrossed",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"getPriceFromId",outputs:[{internalType:"uint256",name:"price",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getProtocolFees",outputs:[{internalType:"uint128",name:"protocolFeeX",type:"uint128"},{internalType:"uint128",name:"protocolFeeY",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"getReserves",outputs:[{internalType:"uint128",name:"reserveX",type:"uint128"},{internalType:"uint128",name:"reserveY",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"getStaticFeeParameters",outputs:[{internalType:"uint16",name:"baseFactor",type:"uint16"},{internalType:"uint16",name:"filterPeriod",type:"uint16"},{internalType:"uint16",name:"decayPeriod",type:"uint16"},{internalType:"uint16",name:"reductionFactor",type:"uint16"},{internalType:"uint24",name:"variableFeeControl",type:"uint24"},{internalType:"uint16",name:"protocolShare",type:"uint16"},{internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint128",name:"amountOut",type:"uint128"},{internalType:"bool",name:"swapForY",type:"bool"}],name:"getSwapIn",outputs:[{internalType:"uint128",name:"amountIn",type:"uint128"},{internalType:"uint128",name:"amountOutLeft",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint128",name:"amountIn",type:"uint128"},{internalType:"bool",name:"swapForY",type:"bool"}],name:"getSwapOut",outputs:[{internalType:"uint128",name:"amountInLeft",type:"uint128"},{internalType:"uint128",name:"amountOut",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTokenX",outputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getTokenY",outputs:[{internalType:"contract IERC20",name:"tokenY",type:"address"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getVariableFeeParameters",outputs:[{internalType:"uint24",name:"volatilityAccumulator",type:"uint24"},{internalType:"uint24",name:"volatilityReference",type:"uint24"},{internalType:"uint24",name:"idReference",type:"uint24"},{internalType:"uint40",name:"timeOfLastUpdate",type:"uint40"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"newLength",type:"uint16"}],name:"increaseOracleLength",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"baseFactor",type:"uint16"},{internalType:"uint16",name:"filterPeriod",type:"uint16"},{internalType:"uint16",name:"decayPeriod",type:"uint16"},{internalType:"uint16",name:"reductionFactor",type:"uint16"},{internalType:"uint24",name:"variableFeeControl",type:"uint24"},{internalType:"uint16",name:"protocolShare",type:"uint16"},{internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"},{internalType:"uint24",name:"activeId",type:"uint24"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"isApprovedForAll",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"bytes32[]",name:"liquidityConfigs",type:"bytes32[]"},{internalType:"address",name:"refundTo",type:"address"}],name:"mint",outputs:[{internalType:"bytes32",name:"amountsReceived",type:"bytes32"},{internalType:"bytes32",name:"amountsLeft",type:"bytes32"},{internalType:"uint256[]",name:"liquidityMinted",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"baseFactor",type:"uint16"},{internalType:"uint16",name:"filterPeriod",type:"uint16"},{internalType:"uint16",name:"decayPeriod",type:"uint16"},{internalType:"uint16",name:"reductionFactor",type:"uint16"},{internalType:"uint24",name:"variableFeeControl",type:"uint24"},{internalType:"uint16",name:"protocolShare",type:"uint16"},{internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"}],name:"setStaticFeeParameters",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"swapForY",type:"bool"},{internalType:"address",name:"to",type:"address"}],name:"swap",outputs:[{internalType:"bytes32",name:"amountsOut",type:"bytes32"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"id",type:"uint256"}],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"}],QUOTER:[{inputs:[{internalType:"address",name:"factoryV1",type:"address"},{internalType:"address",name:"legacyFactoryV2",type:"address"},{internalType:"address",name:"factoryV2",type:"address"},{internalType:"address",name:"legacyRouterV2",type:"address"},{internalType:"address",name:"routerV2",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"JoeLibrary__AddressZero",type:"error"},{inputs:[],name:"JoeLibrary__IdenticalAddresses",type:"error"},{inputs:[],name:"JoeLibrary__InsufficientAmount",type:"error"},{inputs:[],name:"JoeLibrary__InsufficientLiquidity",type:"error"},{inputs:[],name:"LBQuoter_InvalidLength",type:"error"},{inputs:[],name:"SafeCast__Exceeds128Bits",type:"error"},{inputs:[],name:"SafeCast__Exceeds24Bits",type:"error"},{inputs:[{internalType:"uint256",name:"x",type:"uint256"},{internalType:"int256",name:"y",type:"int256"}],name:"Uint128x128Math__PowUnderflow",type:"error"},{inputs:[],name:"Uint256x256Math__MulDivOverflow",type:"error"},{inputs:[],name:"Uint256x256Math__MulShiftOverflow",type:"error"},{inputs:[{internalType:"address[]",name:"route",type:"address[]"},{internalType:"uint128",name:"amountIn",type:"uint128"}],name:"findBestPathFromAmountIn",outputs:[{components:[{internalType:"address[]",name:"route",type:"address[]"},{internalType:"address[]",name:"pairs",type:"address[]"},{internalType:"uint256[]",name:"binSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"uint128[]",name:"amounts",type:"uint128[]"},{internalType:"uint128[]",name:"virtualAmountsWithoutSlippage",type:"uint128[]"},{internalType:"uint128[]",name:"fees",type:"uint128[]"}],internalType:"struct LBQuoter.Quote",name:"quote",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"route",type:"address[]"},{internalType:"uint128",name:"amountOut",type:"uint128"}],name:"findBestPathFromAmountOut",outputs:[{components:[{internalType:"address[]",name:"route",type:"address[]"},{internalType:"address[]",name:"pairs",type:"address[]"},{internalType:"uint256[]",name:"binSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"uint128[]",name:"amounts",type:"uint128[]"},{internalType:"uint128[]",name:"virtualAmountsWithoutSlippage",type:"uint128[]"},{internalType:"uint128[]",name:"fees",type:"uint128[]"}],internalType:"struct LBQuoter.Quote",name:"quote",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFactoryV1",outputs:[{internalType:"address",name:"factoryV1",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFactoryV2",outputs:[{internalType:"address",name:"factoryV2",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLegacyFactoryV2",outputs:[{internalType:"address",name:"legacyFactoryV2",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLegacyRouterV2",outputs:[{internalType:"address",name:"legacyRouterV2",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRouterV2",outputs:[{internalType:"address",name:"routerV2",type:"address"}],stateMutability:"view",type:"function"}]};const ZS={name:"trader_joe_v2_1",label:"Trader Joe v2.1",logo:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHAAAABvCAYAAAA0YEQFAAABAGlDQ1BpY2MAABiVY2BgPMEABCwGDAy5eSVFQe5OChGRUQrsDxgYgRAMEpOLCxhwA6Cqb9cgai/r4lGHC3CmpBYnA+kPQKxSBLQcaKQIkC2SDmFrgNhJELYNiF1eUlACZAeA2EUhQc5AdgqQrZGOxE5CYicXFIHU9wDZNrk5pckIdzPwpOaFBgNpDiCWYShmCGJwZ3AC+R+iJH8RA4PFVwYG5gkIsaSZDAzbWxkYJG4hxFQWMDDwtzAwbDuPEEOESUFiUSJYiAWImdLSGBg+LWdg4I1kYBC+wMDAFQ0LCBxuUwC7zZ0hHwjTGXIYUoEingx5DMkMekCWEYMBgyGDGQCm1j8/yRb+6wAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAABPXpUWHRSYXcgcHJvZmlsZSB0eXBlIGljYwAAKJGdU9mtxCAM/KeKLcH4JOUkJEiv/waeuaJslP3YHYkgOWbGHkz4yzm8Klg0QEXMCSaY2qa7HsaGgmyMCJJkkRUB7GgnxjoRNCoZGfyIRlZcNVyZd8L9V8bwZf6irGKkvX8oI4wc3IXWfS808qiY1a5xTGf8LZ/yjAcztxSsE0SB+cMF2I3uylGHACYXeIwH/XTAL8BwCqShTNl9zSaztRNxepRV9BCRmTBbcQLzmPi9e+HAeI7BBVpWbESUSu+JFnhMxGWp+2ZJeoH7es8L3fPuHZTUWtk0lyfCOi9wGxcDjYYar9c//AFURzuIa5/UXVpFkcaYrbLdPPLJ/mDe2G/ezQqrd9UzLWOZV6QeVOlJ7Mrqj6kS49Fj5J/KQ05OGv4BiF6+ZwMoFgoAADX7SURBVHja7b17mB1XdSf6W2vvqjrv02+13tZblmyDLFu2wYAdwiMQM4GJHJhkbgjMmHxwYZJw79xMEi7tzP0yk3wkMxnu5Bu45INkJpCRZpLwGJyEEAmMjTGW8Uuy9bDe6m71u8/7VNXe6/5RVefRaj1stS0leH9q9TmnT1Xt2r+91v6tx15FeK29Yk0AwsgIAft57EDeTSvlSqUix2dna7cdOBAsxTXoWt/kP8YWA6fOHjzouKWpzWpi6qdC07jLMvrY2mkY2RMUlv3l6u9/v36113oNwCVsAhB27+ZJTKbTyO8yfviAP3ruJ4Og3FdO+Wh6DThiUZjSZ90g9QunC0Pfv1pJ1Nf6pv+xNBkZYUwczJTm5U2psOdfmND8RFibL856ZYz3zqOe8sFOCMcJIZIa7htV963J158UICRAXu51XwPwKpuI0NwvvbdYOXnknWT5X7CYt4Shr2szozJuzsv5YpXENYAOCWxhlUijELCcC28cHDN0NeABrwH4spuMjHDthReGK//bz71HU+qfM8utAqTCRgXzEyfkrDsjc8UGWW2IlIBYABIIAcICYdixXNlcbT9eA/AlNhkZ4ZkXfrSyfOzZ97PLHyLwRlJKwxoElTlMT7woJ9w51LM+GWWJlAWzgEnADDAJVMiARWl5vScERq+qP3ytB2RJBlWEZGTkFb2XkZERLn/gvu2lI8/8oaedH7LS/46Us4W01oCgWZ7FxORRe8SZRzkVwichwwCIAAKICJpFFAOqQdaCzmL79h9PCRQB4UsjHmbH+88/8tyqI3fe+Lra2HT/D4sZMlZsaGQqNOGpQPhskMud+6mZmfLLWWsEoGMf/yl3YNLZ5hx75mOkvQ8QqwwRA8QROCIIqiWMT78oR3WZ6q6BkBAAaAEsACUQJgFYABHohmpSiOexd6+92rH4B2NGiIDw4AhhZW2LhX1fc2LqvtH/9cMbJg+e7KlXGo61lmwEkgjBCtA0QAWCow7Rn4XWfuVdQOnKriWEBx90KkeeeSOA3yLmNxCzB1YUjVgMHgTN6jzGzh+Vw5hF2QlB2hKxQCkLrS2UsvCUEVdZuNqCA8HwM/kzuZL7vhWnpw5c7bj8gwBQRka4OTyzQSvnQRK8q/rCyczzX/obXZ2tkhGJUANgAElet44FIARfQD8wIp94L/AsRYKx6HVqo8eW2Wr1fTDyy9DqRtaOiiQtHiqmGDzAL8/J6fPP4yCVUFUWpC0xCxQLtDbQSuBpK642SCkDrSwwS1j2bP7bGv0/u+H48fmrHZvrWoWKgLD3D1K2fO4Xteh/Q5Dh6vOn1HOf+19crTaoE6z4NdkFnxEgELgCuZuI/uqrIu8B8GzXdR54wKmcP7+p8sJT7yfgg+zolXA1g1Q8JaITgbjVsWZpFmcnj+IZKaPMFswWDBFAoFiIYyFlEjhsobQIhQI97ogXqIfWnjleXooxum4BFBHClx4sGnPuPxHRPyURR6p1PvqVfVytNlpAESJxSsDsFK0E1PgtschaQ/Q7nxN539jIiPnlRx8d0J68ozR59p+zp98Ix8mQ40ZSJtQGDzF4BIgImrMTcnr6OA5IBRVloZVACAIWsIqOsQJyCKLYgpUIQSDzhOy8cw7s/OXFtMA/CgBFhOpf/OQqV+iPCHgbRDRMiKnvH6S58dkuKUtoXOdnyfsLzguQZnrzW7du+mDPI3//OpXP/ox23eWkNZPWgNaIiLkk/QCBWkxSrEVt8qwcnT8tP7J1qkfgiSGBQ2IViRDAIJAiEa0MlGNFsQiaIG/UNZma+58fP33+9FKN1XUHoIgQ/vQ3+lxLf0xEbwJEQSzQDHD+B4fRueYt/AHaEhkD1l7kiVAs5mXV+rXZ/lXDn9XptEuOJlIxcMTxt+MzWQuiZL0jWBOgMnlKDlfG5QlTp5AtNAtEAMUSKiWiInuPmGGVEtZaxGERMkLuaW2KU+n/Wsgt/6P7MXvV5sN1CaCIED77CdfmUp8iojdBrANrAWvhj8+hND5zUXXZOkcHYAwgnUphcPmgDKwcpuLQAGnXUVBKgTkCTukWKWmfVABumwnGr2Fu8pQcrk/LM0GNfBLRLAQWYRLLJFYRDLMlxYBWolhbcZQRDi3SJ5xqcSz9X4fQ85u9hw5VlnLMrisAgQfJpJ2fI2s/DEBHnEAAK6iPTSMIDHUSlE7QWiqUCFopDAz1yfIbVlFhsB9OyiNSCmACsQKYIYohxCBIpCo7T8yR1EEEQb2MuelT8lR9Vg6HDfJhRUVLpAgAIhFmGKVsoBRIKSsOi0rrQNzAhvnT7rHi+fTv1qreX/SeP1ld6hG7bgCUkRHGl+bWkPC/BsOFMZE1BwuIoD4+E2GJtmokAEKRaaYVI1vIYXjNCgysHEaqkCPSDqhF+zniJUQtdUkxYJH8xWeMtaiIhV+ZlqmZs3jaL8nRoE4BIKQgloSYRYhElIJhFsMsVrF1XW2Up8IJrylP95xO/a0edb++8czciaUiLdclgLHhzKFPH2HCBhijYAUQC9hIAmuTc7Cx3BEi15TSCinPRbGvKD1DfSgMDUAXsmQVxJcAsCFIOLlGzCojMCmJA4iF2BCw8doqFiJG/EYJk80qPd6YlwkTUkiwIAhDLDEJE0JX29Bzw6arw5qnTNVR9qgi+9ew9jvDwNltP6jXCPVXBLjrCkDcfz/jHRtuYMsfgNi26jSxeFiLoFKHBYiY4TgK+WwGub4CUsP9cAYL5HsKY0oh1AEEBrBEEICtBVkLismPslaUWHLEgolFFEEIqJsm6n5DAmOoag2NBU2cqNelbgRakWFCQ5FUlcKsVjitIIc9x55xdHA+44bjFIYnzpVw+hMPwcdVhoj+QQEYR7FhZx//BTCWQYRaNCXWmdII4GbS8HIZ8Yp56GKG9Loh+JtWwgz3wikW4BT6kM0PQKdyYC9LVmdgVWwWWAMThPCrJfhnDhJLCOs4sLF7xRiDqdGz8p3vPSLVStU3Ydg0QIUI55n5HAHHteLnlQRnmflshpyzU33Fcnn7ofDTI5CrjeldTbvmrjQBaPI/fzTbr7zvAnIzxFLEPAUILaQZIqg0MXZ2FmPzFZZ8ivK33ACvNw92XeRXbUFh/Q5wKgd2PIiNSEl0cxILsMBai8bMJGae3QcFiRkmINZAjIFYi9FzZ0vfe/TR35ienn40DZ5oVoO50p2r/M99/sBVRc1fyXbtARwZYayo3mIl3Adr8jA2Up1BCEsa4YqNUh9eR/VsD00ffJQ8qhIxoLRCz5ZdyK69GazTiNCIjO2WCo7NALEC4/uYeO4R+NNn4LguEpYp1sTCLmj6FjZV/O/pFRv/z41veceZaz02V9KuuQoFAMtyN3ybgrFAaABokdXbxWy9DVi2ll3W3Dh7mNJeAFgGxCK3chNya28BlAsJmgiqVYR+AzYMQaygtAtSDGtChM065k8eQmP8OBzFIM8DENkBzBoWQGAI6bWb4Q2seK9yU2smz537pcGVKw9f67G5XLv2AC5friQ8ejuFohBCZGidNdvvgl22limdYwui2uQo1U/8EAQLEQs3V0B+zU2wfoDy2BGUzh6BX5mHNSEoZpoUx6rFhoBYkAkgfgDjKOhMvsMOAYyxcJZvhdO3AkLsWhPemVLqQRH5IBE1rvUQXapdcwBL6vF81i9shpOxdscbrVm7TSGVUeRlyJKioDpP9fPHgKAWGdzM8HqGUZuZwPyJv4NtRp870mEGJOtgbCbACkwQRhrVWMAaQDmIAhWCcsOAqyFmZg4j3z+IXP8gBc3m28rl8u0AHr7WY3Spdk0BFBGn+e2v7ILfGAxvuMXY3iEX2iNol0hpQhggbFRhSpPJEQAIlbETkPHTERACkBWIWFgbrXdhELYFTAB0rYuAiAFBgwAEocXh54/Af+IpMDPShV7csOMurLp5ZyHd378BrwG4aKOJg/uyZ7/2mQ8K86/q/MBwLpP1HJ0iaA2wIhsGZAI/kjrrR75N1pCYrMAaWCuo1nycODOJyal5lKs+XK3heimsHO5Bf28BygZw4mQiLQBIWk5qsYJSuQK/WoWKPTrwGxh97nEUe3spPzhcFBEiouuSgQLXAEARoZPf+PyW0nN//x8lqL0VJKpZGiOVGxCV7YNiJdYaMqGPsF5DOHcO8KPYp8TM0VqgVPVRV3l859HncOjwSRCAFcuGMTDUh3ve//PIFQpgsajPTmH80I+Q9meQcwQAQ4yNgnUCzM7MR+YGEZTWMGEIv1rD6DOPNdGsvbj53buvW/CAVxlAgdChvQ8uc4P6n8CGt4kVBgMgQVidjdxaImRNiMbkSTTOPgtTm4OYsBVbtRYwBpieq8NdNoyJuSqstchnc/j5X/0VkBX0L1uGZq2ObP9y9K/eACedxejDXwO5iEmOAMQQhGg0GrGqJYxNVTA+PYeefBaOdpWET15rfC7bXlUADx3c67hP1f4fmHCnWGGBAJbiCHi0TlljqDlzBrXj34cEPsTaOFEhdv/HDudlAznUK2exfW0fTL2Cas3HN7/85+AghOd6KBbyeM8nfi0iNY0SMi4iu48QrZ1xdkTghxAR/Oj4KM5Ol7B25RqsuflWpFIIxZSva+kDXkUARYQO/c9/ux1if8aISHlu3tarVeoZ7CcvlQIpN+Ijfg21k09CAh8ARYZ5zPeJFaxE8QhXKzjZNN5wy3psXT2Ic+fncOL0OOZKPtKeg51vej8IgkZpFvXTh+AqaRMb2w4fERFCIxifLWHj1u3YduM2OFrB68kGbtVfkryVV7K9agDu379frTT+T0MoX6tWaXpskppNn9K5LLx0GuzlCCDUzx+Dqc0iTkdCJCqRQ1+S6JKJzARrozWtr6eAnkIOm9Yuw8xcFexmsWwgg/njT6M6fgphaRrKUJSgGXtfKPaMKa3AADylMHX6FJ6emsJNu26D6nHnqF4vX+8kRr0aFxGAmu97c1Y1Jz8p1mwozc5TebbM1lgU+3uQyhWQW7MDKtuD+rmDsLV5RJ6S2KZDlLpgrYVYC2Ns9Dp2kwWBgTUCZoVs2kNaA9XzZ1AZPYGwNANXUxSjFYkyxZSCyuQgAtSqNZTmS8i6DsSEKHiEDBpQtbmU9YP1L/79Nw5s/Mn7Zvbv339dgviqpNYTgGUFVgCtEhHy6z5FKpHgpVNQqTx0ti/yWSbgWWn7NePX1liYWPpMaBH6IcIghLWC0Bj4fhCBC4okNDRIpzW8tAPHVVAcO7BDHzAhWCkUiwUAwFBvFttuGMTaFb3IKJF6reqVG413hDb403vDsQ24DvzG1wxAACKhL5bYEyEyYUgCIFfMQ7sunMIysJOCtSFgwlZEXCSWvvgk1ghMaBAGJgKKNESlAScL6BTCUNCoNeHXmzChgesxPE8j0gECUgQiwBoL22yCFCOXz0I7TjQYzGAioThUH4YB1Rr+rZUg+Ff7Rj7oyXUI4qu1BtIsAAiFzEAml5FqqUK5njyYNVL9NwDsgElAjgv41Ygxttxh0XonIoDScAt9yAytg1PohxAjDAL4jRrCWgWN+WmUzryIsFZCLptFEleM0gMZlgSwFqZeBWdycFIu+gZ6MTE2AREBE0EgZEFgiBhjOAjDfwqk/t/9Ix88uW//yfDe/fsNrpPw0quzBoqQf+yQajTmfxoSrFMOi4hQsb+X3OIQCjfcDnIzINYIqjMwlZnowGSdA8FagUrlUFj3euRvuAmZwRVwMnkoLw12XSjXg3LTcPI9cIr9qFercNGE56qOhKU439MKSAxUKgOlXWhmTJyfitdIQvQPoCQTm8jNpHM/DOs47t40lNq97S77Z48//oqmSlxXAI6MjNDcRE1J8/wG69fvZiKkMmkorSmz6iakhzbG6X0AkUY4Px7lsxCB4rCsk+9HYeMuZJfdAC9bADtuO5eTFUg5IMcBs4JyXKQLPfAbPhxpgCMrsiUzBIK1NjIrUmm4rotapYZqtRbBFduazATWGm6uIIPbbzf9m7efDUr+rE4L79iWtw89fuyag/jqALh9u2quXu2Sl3qjPz96l1hfEYN0ukiF9W+EThdBrKKUZu1AiCIpFAsQoNNF5DfsQrp3OZTrxV6UyLiIVCtAzGClQNqBdlwo7UKUi3qlCmWb4NgUiRaxOPgbBmDtgl0P6bSHqYkZWGNAABRrKa5cT2vuvJdW7XyTyq5Yu11l8z+XHlymBXPPEHL++x5YEe7de+iaqtJXBcAVP/mT+uZB7YXp4gMGzrBUJjJETKnVr0dm+RYopVvqiiDQ6SI4nYeYAMwKmbW3wusdBmsnckIDre1dEkf+IgcZgVmBlAY7LpTjwbJGrVyBY5tgktiRE8NoJGKjngfHdUDMmJudByuNFTffTuvvfjsyfQNQXgqsHWLtOOyldjipnoni7OgLwFDwJ1/dH15LAF9xFioi1NvbS75T6COd3ub0rw2ameVNLi6X9PBWsHJBlMwjArEGKRde7yrk1u9CduOd8HqXg5UTSx6BlAIzg4hBTLCxnQi0wWXtwM3lkVu2GunlG1GnbJRm2kqXB0ACG/gozc2iVJpHvpCB1hrDN+7A6h1vgHJcsONBOR5Yq8h+dNyUKvR9OCwMFcPzdS9Ou7lm7dVgobR9+3ZYqr+OQEUmcrMrtvqpTNFxsr3EHEseRbYbmEFQABEUMRw320p/FxBYRV221kJIEJoQvh9GPlNEnhXiiIWQ0nCzOeSWr8Fcs4bmxFGkbD1JLAVACECoVBstf2vv6g1YveMu6HQW2ktFqplV7EwQWGOJlV6dXrn+pjW12vSevbv5fuxdsr0O1xWAIkKf//zn1e6d69ON7LKfEoijWLvZ4rDnZAusHBeEFuWL4nRATCDibczxVi8hQMVSSBBYiWzCeqWKY0/9CC8eOojQWty483as374d2nUiEqQc6HQOhdUbUQ6bMJOHwbHj3IBQDiTKZATB6hzW7rgbXr4IlUqDdUyKlIoz2wIQkYhopbzU0Jhv3Nz4sEZ7k9Sr3l5pFUo7d+5EWQ+uEqI7CVaTYsVuSmk3BW7T9PhXtDpxvL5BqUhtEoE5GkzW0Z6GaHOC4Id/9y18879/BSeOHcWWHbdBaQcnX3gBzVpUxUoAkNZwMnnkbtgGWrYZwg4sMSqhwAhBhBDCxcC2O5AbGoZOZaC1A8UaSukIRK2glANWKt45yGEmM4C02uqMvMIFFi7VXjEJHBkZ4b1799KOHTtYB/V7mGhYrGhiR2vHI2YVSV+8kYQWlLwhVmjtWlDR+hNJlILYENYazJw/j7mZaazbsAkz83PYsuNWZLJ5BM0Gmn69bccxwI4HN98DXnsLgv6VCObGwbMzcAVgL4P8ys3ILFsR2ZPKAbMGJ2utUiBrAQ1IYCFCDZbwfE/amszAKvr0Rz+KkZGRf/gAtlxNIth7//20fvly9srlfqSd+8CcI2il3JRyXA+aNSgqnAISQCj2liQbTJKtehTvKCKK1zZupUQ06nXc8RNvw6nnD+Lct/8O506ewKbtt8DxPLDWEdASObqhFJgIOl+ESqfh9i5DZo2Jz6vBXgrK8aCUhtIaRAqsGMTJxNFgQGwYComMKsE5k81COQ7t3bv3mhGZpZXAyJMhIw8+yG/56Edpol7nIVe9BUQ3A6ydVE45jktJzmYERnJsLI0xzZfYREh2yCbrpCQJuyAMLF+OMLRYXq9jePkKPPY3D+GGzTfCcR0wMywUWBgQRH5WYijtQJQGu1GkA2IjG1RHxzArMOsIOKb4fdRXa0OIiHXSqbEQTrky06T6qgqtXz/LuEbr4JLp7iRuJiK0bds2AoCtfX09IPoZYu5hpUgpxUo54JiwRIBxS7oiKhgnxBODmBPXVntLWEJ4mJEtFJHN59G3ciVuueNO1GZn8Njf/Q3CIOwiRaw0WEVraJT0Gxn72nGh4p8EtOg7HIPH8V7QuFCFiCjtmFxP/42ZzZt3ecWiBXqvBW5LC2AMHoAocAtA5fN50hnvToLcBZBiZiZW0feS3a/olEC09qJHZVhiczvezxf9ojg7jePB1dCOi1Quh7U33Yxd99yLZx99GN/52l+gUasD4Jb0MKsYSI1ERxMrsHLi3wzF0d+JGIzomFafABARpbI5h1gtZ+X9X/ldt24Ig/Oyc+cD18yldtWeGBGhB4loPyAjIyO8rLxMF9cVbQ+VC6l0/tesyE6ttVbaYaUdYqUi9QmOLIRkh2xiYCeSQ21yQ7HEtdGmOEgRHSdWQEohW+hBb28vjj33LM4cfxF9Q4NIZ3Nd52ivodwiUUwKrHUshRzbfhxLHrXsxvZnUETcJ6L6OD/wN/39/Uu6bfqltKtdAykWvdbOyTPeGbvzCCh7xx1vsdbeA2KHmCMB5EStRYdY25IFtCQzBig6OUfSyAqt7bQxU2LFkS1nAeU40GKRLuSxZtt29C1fjtNHjuCRh76B/uEVWLt5C3oHh5BKp9tslggWUTKwCXxIU5DKZOAoHUstdXQldgwwAwKOpJe1Vs67e3I9nzpz8MynV29fPXMtALxa9sQjGMGn5dPy4IMP0raD22jwo4O0eWBguS/NLxhj36K1o9O5PLmux452I4bHSUWIeGBioNBhF9ICSWz1NA4JtbKwjYUNDYIgQBj4sGEIYy2sCRE0fcxNTWLi3Dk06jUoreG6HrxMBql0Gtrz4HkessUeFHr7oHWkPkkl3qEkpJQw4IRZRRPQhAa+36yKmD+cmpv591u3bn3Vk6CuRgKjIR0BvvGNb6R37eozlW0IV9XrKpTmL4VBuEus1eylwMzExLF3pT1nEkKCWDKFEtaJLpXaWf1jYQ+YI8ml5PxaRwu7uHBTaWSLRazcsDFmohbWGhAxtBOZCxzbmwlY1NGHqE5MV5e71HikUZAVwcf7i/3N8fHx3x8eHl7yQgavCIAjAI3E5xgcHNT1es5Pp0FOLrfN98OfD0I/S0qRjmJ0xCpmmy0CEa1BUeWI5G+dc6Nr1NoIxqZEp90vMcFhpUEsMeYdBQvi322JTrw98bkTppuo8uT7aHOrjo50dIuhWEFE8gL5pLZspqenP9vf339FRfWuFYCt0d2zZw8Vi0UnfzrfuAOn5dzNa3saDfvrzVp9bTNoqN6eQdHa4WjhbxvgXa8XSCVwwduLdiPqSJwWH18D6KiudMGoU1zysR2KotYXOulwAhy1NsjQwvkEgATQKsqnCYKgIIRfl2a4ZXR09LdWrFixZNWYLtVethmxbfduAuDm83l7EAfNQ7mcrlbsR/xG451zpVlXQHAzaWJW1Ar9tIBDh51GCwSuY6Q6KPwFIHPbf8rMYM1gFQd1YxdY9D5yhUHFXp/EdEnUJbftxU493dWdmEDJAjUukeMWSms4jgMIcgL6gAv3/xs7dWq7iFzRVHy1AaTdu3cT7trtFosNPnv2rD84OEgb+nveFfrNX5mcGMuVyyX09A6I43iUOIM7Z3oLSOYLgEtUWXvgusegu/5ch5kR+0ujH449PYkkdqxlnIDXnhPdsHWbL93qtd2d1jGxe09pB67rgmCVRfhW18t9fWps6gNy5kz6lQTwJc+Q3bt3q1/dvdttDg4qAI17ABzNujf5gf/lqanzm48cfV7tvP2NdvmqtXAcj13XhU6oecvTodrgJSDFeqptvNOiAEbZanH8EBJt2ERUE8gmCMeZbC1lKJ2HL8KGOr5CHRLfpV5b62o3o5J4coiJ3HJh4KNerwNM4nmpuTBofrEy3/jsDVtvOE1ES27wvyQJFIA++q53OcXBQXXkyJEmABxKq81BGHxubm5m09PPPqX6B5fZwWUroZXDWuuOtYlic4FbAdfu6DgtUFsLiUy7da1pMWOlyLqO3XRoGfotPNEpvR1iFFuw1MF82+67topvseP4aGmB3hFNAUFpB6lUCjYMqVqa7wXUv8r35L4xcWb8l1984oniUqvVKwZQRGj/F7/oDd1wg8bkpD82NiarHGeLCcPfn5me2PHMM0/qQqEoN998m6TSGXZcF1o7bWoeu6uYqRu4hai0Bo0Wwa/9txbFb4Wk4n6250PbHYf2KbskqEMDJKBRp1Zo4Ucdxyffb58m2sIRM2vFcBwX6XQWYgVz05PKBP52x3P+Q2HFqq9Onh7ffeqZU70isiRuzCueDXv27HG3Dw66GSD84eRksLk/PUza+6Pp6Yl3Pf/CIW0guPvNbw1XrdnIruOyVgqcOKSZo5CNUh21y9DSnC1Wl7xoObnRITaJ1EirLEjynpnjilxx2oMgSsfv+E5ymeijWHa6vC3o7EiyIrcBi7FvCXF8nfahSXGi6NrWGjTrdcxMT6E8P4/+wSFkiwUBcRnGfN8E9svloPrXTz755PT999//siMZVwTgvn37dJ/ve+MA3v72tzd++M1vDnLK/MH05OTPHn3xmNP0m9h5+xvCrdt3kOumlOc6bUcwYs9+zAzb7rIYwNbLLtG5iAQirnYnsRTadoZZ/HGSwS1dmd1t0LrvvgPARJV2I9hhU3ZMoNY8ko7jbHuSxH00JkSjVsPo2dOYPD+OoeEV6B0YRLSdTjVJ7DFr7TfYBP+zXi6/uGpiooR77jEdk+uyKYuXBXDPnj1qFVa52S1lDh476fONq3ua1cbnxsdH33Py9EllrcWWG7eFO3bejUw2rx3HgUqi6Uk4iNuUHZ2mxMLB7Mwa44t0rbWYLWSn0WDaZN2zFlY6ddzCk3RKW7ckJkSqzYgTe7BdybcNZrx7I9nGmKRHxlnlJvRRLpdx8sUjOHf6NIrFHvT2D6K3vx/pTBbKcYRBJQs5BsFThPDA+dFTj5899qOj7/qFT1zWIXBJQ35kZIQHBwedIprq4OF5f83qgWWV85N/cG7s7D+Znp6GcvTM2nUbajfdcsdAJpvzWuB1UvBWTC9ZsS4cw04ic4VW/ALrOmaCHWAkZSijXbkL3HdygcjFf0u8ROj6W+dm0Bbr7HTRmJjxCrUFlaJMA1YOMpks1qxdj/LcPMZHz2FifAyO5yKdySCTyZHneQVifr014abA92+sVmYrdGzm+SsZhouOlojQsYcecrNDQ+p7x4+HXrO0pl6b+y8TkxOvbwbBiUw6+/CGDVsqW7bd8v5CsW+DE697iaM6CYomALbSI7qYZ/JfO8oOoF1w9WK9W7TqawRIi3HGW9LiGDG6tmhSW4qoY52LLk0LVPuCF8n6K+1OWGu7TZFkmRABxf7XZqOBmZlJPP/0U6XRM6enQhMSWVtnpefZ4ZNk7DEmfrruV55wBteMfuQjH7mix9ItOkQjIyP89m3bPKwC/vZvDzW3YZuu9h9bf2b0zLLSrD/d01+YvfctP7F91ep1v5PLF16nHVfr2MaLNE4c8+N2xSQkOS/JzcXSIgl4CYDRptsrl8QFllWn1pQOwiMLV9suSWwPRedVW1vyF3YlVtOJCjVhxEEoyRoXtCMaSaEhE6Jeq6FSKZXOnTj+rw8+/fRD5cZkTSpUL5RK/tiKFWZkZOQl24kXjNLIyAh/+O1v90pnz5ptu3cH8fbils756h//bm54w86bVixf/rupdPYurR2ltSbVSkWI7L5u53Xb+I7WtwVTekEc8KIE5mKtRVTQkoT2285NLdH/CW4tUDsO6Lpspym60NvWsR4aYxD6fmw2UfteE3dfUvc78NGo11Apl06MnTn94eCxxx6+d2TkqlLzL4jI79+/H8XVq839H/tY+OCDD7ZuZffu3eoLXxjxVq+59fVDQ8O/l0ql79DaUcyKiJmilAUVbzJpkxVWsZSJtEyILnusa92jlw7ewlGnhW873G1E8TqJlgboOn6h5uaLXKNzOhBAxDAmSnWM9nm0swU6yRC319herd3b5z338fU33jh2Ndu3r2SoCAA98fWvp4Y3rn1dKlP4fVJqJzPrKMquIn9nC7wkVYFjdRLta0+iEF0ZZq0rXJ7EWGMjqb5U65Ak6ViTFosntr0ycgFJXbQHnYuhLBT3KMW/Uasim81F+xlNvMZyh9FvLawxaDbraDTqUpqd2Vebnf3QrW9966mXC+ClRoQA0J49u/mJr389Nbxty71etvinynFud7TjuNplR7vkOFGUnVWUvcwcVYc3YQDTqMGvVWGNaQ/wRQfr4nNJRNCoNyCXm6fU/XJRxnvBF+jys7jrCwvYUDwZFStAgEa9Cq1VpIUgceG9+ByxPew4HjwvRblC8e5sT8//sW/fvtTLBXAxM4KAaFMmAH7bpn+SM/29HyNWv+I4bp9izZFLLM5Y7jAVQNEDMkyzCeP7sGJhxMJTGox47etaS7op/kVBFKBULkEphpe+zL12WAidQdnOz4CFQtn97gK8F6WkbRYrcUzSdT2Mj56B0i5S6QxCCeLUD4BUYlYJtFYgeIBYV6z54Apjnn3ic5/74m1XyDwvCmDiaL3//vt5165dete2beutps+4TuodjuMoTthlkjeiEm+LRLko9TpCvwljwpj5xfZth1HeokQxtW+N6yXWvjAMETSbKJdKcD2v63wXBRAXas5FNGnH32KJudR5k5edWhRt9qldF6lMFmdOvoj1W7ZCOxphGMZ1bdpEO1pmFERSgCBnrfk3uO225wF87xJdXLR1kZhDhw6p3btBb33rJ7LrBvo+4LjeF7xUdqfjuqy0BmsNav2o1i5X22ggqFcRNJswxrTAS+7b9TJdUtqeyB3mwyUAbDaaKM3PAyJwXC8Knl5K7y1up18IxIL3nW8vdRwkYtcXMFYQtNI4d+o4IEChtxesuP1MvA7exorBxHHpE+qxYm68/773/MUf/7f/9pKeLa+BWPL27uWzd93lVsbp3VkPn+J88SZWipMQkCQMUgQ2CGADHyYIYMKwDZpE5TxaZUEg0EoLqST7MLnpTj2HFju8WKtVqwjCAI7rolqpQGsNx3MufWedIHZ61Bao0sUPuoQaRfcq0GK0Mb11XRfFnn6cOXUcmVwOvUND0E5UBVGsdPWLHQWIhuu5CG1m1/CqFf/+iSee+Nhtt912xapUiwhPHT6cLbz57vuGU96vkvZeT9rRrQcdxixSmkGkJk0Ia6JK7zb2SNgOoza6sWioxNiq9hwmUKYjA6U9DIk5cQnwjDEol0qo12rwXBehcVCtVlBweqLQ1KUAvAhgnTb8BfZ8vKpdeD5qr9vo2IjT4dAGIi9M38CgjJ49RedOn0Qqk0Emn4eChsQ1TpMZRQDYceBaiyAI2Hrpf9YXmG8B+B+4QlWqQSQDImE4O3sKjveX1oR+UKlvBWwOVrSIMBLHsACC2G3U4Y1vxb6jBc4KMGWNfViTPO54qV8HUYYW1VVdXHHR1mw0UK/X4Ad+tJ5YC9/30ajVkMlmr0yVom12LuYLX+ge7TYVkhbrvm60u126AMCMdDZHuXxeJsZHiUBYv/VGZPL5aPu4FUAMOk0R5blIWQMrNg3m337yu9/df+ub3zyJK2gLtQRhzx4+f+ut/Y5S66FoGxHfKNauBaMfQjnA9gAoEMiVyIvcFGBGrD1FpJ4ByRN+YA94E2bWW5P+kJsv/B4p7VAc30s8/clP4nRebLqJCKYmJjB67hyajQZ6enuQzxeh45IkhZ5eeCn30nfYaRsCXQLTiYUsduBCBpS8WBAHbIe0Yo0UGoyPnrNPPv49Tnkp9A8OYf2WregZGGz7hWMNFjnGLcQIGtUK/MA31XL5yyfOn//Qvffee1kvTRcLJUAQBRcn4p8fxE5fPnbsmM7n8zrVbLohcyYwxtVK+WZuLnQymcZYo1E/uG2b2Q1YIpIzBw/2Zdzi64kjiwhdaqdDfV6ihWGISqWKMAi6UyII0fOUymVoVYRyLhFU6VClCWgJE75AlS48kDpAXChqrc+pG1xEarSnt5dcx5NypUwgQRgEWLthE4ZWrgQrBWgFNtHyRGBAWXjpNKy1KpPL7d5I9Fci8lUiumSw93J5oRIHFk380wRQBTB7yYNEeG701FqlnR0Uh9a73FaL0b8LTgJUK1XUa9VWCSzT4RAQAIHvo1KpolAsXN60WABi559kkdeLfqFrYNoTocMyamkV10tR/9CwmX7hOSUCGCPwfR/z83NYs2490rkckGTOWQsIQzkOUpksUKumkM///qmjR58XkcOXSoZ6RfZ279+/30276TtYqXXdGdedA3NpAIMwxNzsLALfb41kFLaxLSQEQL1WRaNWXzzb7CJAXta06Hp3cZJ1UZuSIo/L8PKVZEXEbzZRrdYwNzeL08eO4bknD2BybCxipUyAVpFZphjac5HOZuFqvbaQzX154syZdZfKn1nyPfIiQtPTZ/uV9t4GVtmOaAba9h5d7hwol0qo1SpRSazYf2qtbWVUSEucBKXSHJRWcFPepcHr7kk79BN/sHjmxSJk5gpcyESEnr4+cl1PqpUyJSGtMDTwwwC1ShnLVq7GyjVrkSsU4tipAligyINrLQW+/zpi/vyZ5449ICInFpPEJZfAvXv3cl5n7iStdlGS49da+jqc1pdovh+gXJqHCaI1PAkS26R+aMxMRCwAhjEW83Oz0c7cl9AWavJ2lOKCb10cs0UtjmiSul6K+geWWd/34fs+/KYP32+iXq9jdn4eLx45jAPffwTPP/0UpsbGEfjN1sNN3EwaXiZNjuvemx8ofGn6xInbjh49esEMXXIAb9+0KU/a+WkwL2tTTbTtPb6M9FmL0vwcatUqjLVxDc9opKLdRUlwNhlpC2KC7/soz8/HZZgvhdiVgXjpTsol9Gf7t9Iaq9esMbV6E34QIAxDhIGB3wzQqDdQrdcxMzuLY0eP4MAPHsOPHvsBzhw/jmqpDGMslOvCSaXIS3l3O7n8n/dmMv/yzMGDfSKiRkZGWABa0lppMjLC2fe86yZm/UlSqh8JAQXa26ovKX2CarmKmakpNBp1JCqXEO3CtVaQTqehdLIBkzoIbQSiYobrehcHoYMIXwDaAmHripRcJMfiAqml5E6iNxqQhx99pNRs+g4ROLGbrbEw1sAag9DYSOuUS5gcP4+JsTFUKxWYMIzj3QyldK9ifqeTytw5Pz3FG9dsHf+LW29uLNkaKCI0M3Msl7f8z+DwKihFLe5PV7b21Wt1TE1OoF6vRZgTwYqNJI4JEprYdadiL26SYyOxcDPKpRKIGNlc9rLXW+j4BjrMig7m2nrcAeQCQ771nQTE+E9MBEsCL53VG9et/+tvfutbY4MD/XcN9PRsTmfSvZ7jstYOlFJQ3N7TwaxQqdYwNT0DrY8glUrBdT1RWhsAvmIayGayG4w46c1jm2UpSQwV3OHXk1LvgdKRo5I6wesesIUt8H3MTE2iVqu2iAti/KXDcDbGwJrIdkpyf5MAMXFEdCrleTAT0tnsFfS6u08LCU13OuhFXd0XOLYTraAdTZvWb+wZm/zyvztx7Mzn1qxbsXpoaOj2Qia71Us5y1zXHdJKDzJRXintaVaktAYAw8R1MNeJ6CRgDxhrH/N9/wdqNDv28f/0cZ/eSksDoIjQ3NxcIe86v0hKrYrqFndMy8sY7YEfYHJiAuVSGcaErXR8G9fNTiSNiBGayA1lrQGDIHHFpxbjJ4IxFuX5eRAzUqnUlUkiLgRyoTTKJda9VpbhAs8OEaHYU1y/7YZN+rtPfO3E//irx4/u3Lnzu/fddx/19fXR6dOndY4oz8z92nX7WCkjgWkyuTVrTN3J5SrMXC2VSkGc9CQA5BOf/QSApTMjVMZ17yFHvRsqLifYGQa4yAAKgGaziemJCZRK8whMgM4dQEmEgwQt8mNM2DqfjR9THpXlas96IkFoDebnZkE9vfDSV7jD6xLS2ML4Qu25SFip00wRZHO55W+849b0f/nTP64BkAMHDgQHDhygkZER+sxnPuMDqAEY7zqsY95cqstXzUKjtW9muVLqfwfxQPf9LGALHURARFCv1jA1Po5yaR5hGCIpTB5FOCKmR3FRO4CEiIIwDKcBCKsoHmmNgRXTZcgnmzhNaDA3O4tGrYbL52N0A3DBR/G8Wrih+HK+dAIhk82lV61YsR7dSZDSKVELRiiZN5ft9NWbEWNj6Z5c5hfBdFcc32nTs4sEG6yNDPXpqfOoVCux2mwhGyfmIp6GJCIwInaCCH8Eaz9ujDmWLK3RE1yiJ3vaJJBMreLlMMagNDeHZuMlPIhzkX53mhddm0M7v7dguKOtIQwvlVLZfH7dVY/1Iu2qzAjZs0c1b7rpzcrRv0PMPWiVB1zsy9EvYwzmpqdRmptFrVaN0i/aaERpGK11RACiQKx9WhR/cmJq6gt13z/U29f3rKPUu4k5I7G0tpfZ7lo0BIEYg6bfhOu4kYa/vCOlA7UFbxf4Ilq0ZlHThOInhlqqVSpHhlat+uZSPwHmZa+BIkLNUmm99tzfBPEgRPiSAyMCv+ljfm4WlWoZzUYjck4nMznO3kr2/QGwpNS8GNljQ/rDZ5576liSbi4i+04dP/6LrPjPWHExeYy4BSLTU9rqK0HWmBBzM9Po7euHk3oJSWCXWRcvRWwgaO3M0kqvQueDoJaovWwVOj8/38Pp1G8S0RsQBYYvEtQDbGhRq5QxPT2BUnkezUY9SjWkuLCddBcQIKBJpJ4Ua3+dmvVPPfPCM8ceeOCBVliFiOza9esfQmh+hUCTzBzvSIoM5KT8cmJMS5wJHgYhZmdn4DeaL+1mL7MuLprWmjiL4qw9VrRm2+Dgy04fXDIAI2f1dCGbzf6WIt4NUHdEtSP13IYhaqV5TJ4fxcTEeZRL82g267DWQJham0Raj7YV8Ql4HuD/W3z87PmpqT/Z8aY3TX3kIx8JFjpyiciu3rDhT3xr3w8r56JE4ujJZBI/JCvhAdRB6YJmEzNTkxGxeakgLqJSLyh8sNBfQVEVDddLLwM3i0sN4MtRoalsNvsAET0A4AJ+LtYibDbRqNdQb9TRaNTR9P0ol6YlaSxiheKNJyIC31o5CcifK+av3HLbrS8CMJd77Ftc3nLfcwcOfCiVyfxH7TpbrDEskOiZuDZOV2w9tTMa4TAMMDs9jaKxSOeyHWVGXl7rijEucLklTgblOG5K5XoAnHvVAWxtzB8bS9sgeEAr9RuwNicxYMYYmMBHs9FAs9lA0/cRhpHz1hjTofQj21CMNSKoCHDaWnmSrH0Y1n5XXPfU615CRlYC4p49e769YmDFeweGen7P89x3W2uVRdgqwdXygnXEi4wJMT83A7/ZQL6nB7H348rQag3MAhBxoUEPRBl3qVTK6evt7VtK8K4YQERsVXzXXduYn79XjJk1Yo01YSoMjWutUUEYUmgCBKGBtdZGoR4ARIZAgYg0IJiAkSMCeoyIfijMx2XMTNz607c3rqYER7zH/PBjjz32QNGmfttzvZ+3BhmxlpglrgbVMeiSgGhQrVYQhCEKPT1wU6krJqhdqHW8Bbpdf4kHyUunHLenZ3CpAbyi/naUxuCTJ0/mfX8+mwlNusmZorbBUGCp3yDIh0ZSzAoWxrfWhgQVWIsSEM6yqElOmYmJiercd77zHf/l7IW7kvbEE084Web3OKnUb4OwiQhOUoW344bapZtje1FrF4VC8eWr1MUSoBKRtBZBo25PPvP0L9/45jd/AVdgoF9puzrlH5+jwwuy2Pmitf1Vfozpi88/v1lgP0ZC7wZhLTHrVlmtJL3QJmsjRVnSSiFfjMo4dwF+JW2xQH0HoTNBgHOHX/jUuq997XdoCSfvUgB43bajR4961vdvVyT/kojeTsRDxO1K60kxBMRPjImCx4x0Nouevr7WjuOraolTwhjMnjv7h4Pr1//aUlZselUfQ/5qt02bNjUBfO+Jb33r2Z4Vy94AkV8Sxfcyc1+UyxcZ+mIjb401URjLzM8j8H0UenqQymSujqW2DHqGl8sNff7zn1dYQmP+H7UELmwn9u1LhQMDdxLTB4jonazUShFR8fN2244gAjFHRWFTqTTy+QK8qzU3BAgazUcPHn7+bbfddttLNEIv3n6sAEzavn379Oq+vq2i+YMs+BkAayGWbRiK5bjCAhERxZWGtUImm0UmGz8yXeuXC+YppdTtRHRFafNX0n4sAUzaiAh/+OnvL28a771Q/D4huYVEstZC2WiPC8fZGsSOhoqfNZHNZpDO5uCkvJdKduaNMW/wPO/QUt3DjzWAne3gwYMuyuWNjsN3MPE91srtRDRsjc1StLmOhcCsHSjtRLuKUilkslmkokfwXD7yD4QA3qe1/vpS9fs1ABdpIkIvfPvbfZxKbSPGHZbVbQTZAivLiFBkJo+Vw6QdUo4TPfbA9eClU/AyGSjPjYupX3hqa+0nXdf9D0vV19cAvEyLnRj6kUceSS3TQTFs8hqxwRom3iZMNzLzBlZ6kB2voBydUo6rteOSk/LIy+bgpqIHcVE71v1nDz/88AfvvYKdR1fSXgPwKlpUCBDuULGYb6bTA47COiu8iR21WbFew1qvIKX7tdY5N51yUpksa9edViZ8pzcwcEW10C7XXgNwaVvkldq/X50ENHp6Us1qNQMgT46TMlapdCbtmGZ1dOOuXWeW5ILX+o5/TFprnBMfLC2RP/T/B96QkmdPWpSQAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIzLTA3LTA3VDA5OjE5OjA4KzAwOjAwC8IICQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMy0wNy0wN1QwOToxOTowOCswMDowMHqfsLUAAAAodEVYdGRhdGU6dGltZXN0YW1wADIwMjMtMDctMDdUMDk6MTk6MDgrMDA6MDAtipFqAAAAHnRFWHRpY2M6Y29weXJpZ2h0AEdvb2dsZSBJbmMuIDIwMTasCzM4AAAAFHRFWHRpY2M6ZGVzY3JpcHRpb24Ac1JHQrqQcwcAAAAASUVORK5CYII=",protocol:"trader_joe_v2_1",slippage:!0,blockchains:["avalanche"],avalanche:{router:{address:"0xb4315e873dBcf96Ffd0acd8EA43f689D8c20fB30",api:qS.ROUTER},factory:{address:"0x8e42f2F4101563bF679975178e880FD87d3eFd4e",api:qS.FACTORY},pair:{api:qS.PAIR},quoter:{address:"0x64b57F4249aA99a812212cee7DAEFEDC40B203cD",api:qS.QUOTER}}};var JS=t=>new IL(Object.assign(ZS,{scope:t,findPath:t=>qS.findPath({...t,exchange:ZS}),pathExists:t=>qS.pathExists({...t,exchange:ZS}),getAmounts:t=>qS.getAmounts({...t,exchange:ZS}),getPrep:t=>qS.getPrep({...t,exchange:ZS}),getTransaction:t=>qS.getTransaction({...t,exchange:ZS})}));const XS={name:"uniswap_v2",label:"Uniswap v2",logo:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjQxIiBoZWlnaHQ9IjY0MCIgdmlld0JveD0iMCAwIDY0MSA2NDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0yMjQuNTM0IDEyMy4yMjZDMjE4LjY5MiAxMjIuMzIgMjE4LjQ0NSAxMjIuMjEzIDIyMS4xOTUgMTIxLjc5MUMyMjYuNDY0IDEyMC45OCAyMzguOTA1IDEyMi4wODUgMjQ3LjQ3OSAxMjQuMTIzQzI2Ny40OTQgMTI4Ljg4MSAyODUuNzA3IDE0MS4wNjkgMzA1LjE0OCAxNjIuNzE0TDMxMC4zMTMgMTY4LjQ2NUwzMTcuNzAxIDE2Ny4yNzdDMzQ4LjgyOCAxNjIuMjc1IDM4MC40OTMgMTY2LjI1IDQwNi45NzggMTc4LjQ4NUM0MTQuMjY0IDE4MS44NTEgNDI1Ljc1MiAxODguNTUyIDQyNy4xODcgMTkwLjI3NEM0MjcuNjQ1IDE5MC44MjIgNDI4LjQ4NSAxOTQuMzU1IDQyOS4wNTMgMTk4LjEyNEM0MzEuMDIgMjExLjE2NCA0MzAuMDM2IDIyMS4xNiA0MjYuMDQ3IDIyOC42MjVDNDIzLjg3NyAyMzIuNjg4IDQyMy43NTYgMjMzLjk3NSA0MjUuMjE1IDIzNy40NTJDNDI2LjM4IDI0MC4yMjcgNDI5LjYyNyAyNDIuMjggNDMyLjg0MyAyNDIuMjc2QzQzOS40MjUgMjQyLjI2NyA0NDYuNTA5IDIzMS42MjcgNDQ5Ljc5MSAyMTYuODIzTDQ1MS4wOTUgMjEwLjk0M0w0NTMuNjc4IDIxMy44NjhDNDY3Ljg0NiAyMjkuOTIgNDc4Ljk3NCAyNTEuODExIDQ4MC44ODUgMjY3LjM5M0w0ODEuMzgzIDI3MS40NTVMNDc5LjAwMiAyNjcuNzYyQzQ3NC45MDMgMjYxLjQwNyA0NzAuNzg1IDI1Ny4wOCA0NjUuNTEyIDI1My41OTFDNDU2LjAwNiAyNDcuMzAxIDQ0NS45NTUgMjQ1LjE2MSA0MTkuMzM3IDI0My43NThDMzk1LjI5NiAyNDIuNDkxIDM4MS42OSAyNDAuNDM4IDM2OC4xOTggMjM2LjAzOEMzNDUuMjQ0IDIyOC41NTQgMzMzLjY3MiAyMTguNTg3IDMwNi40MDUgMTgyLjgxMkMyOTQuMjk0IDE2Ni45MjMgMjg2LjgwOCAxNTguMTMxIDI3OS4zNjIgMTUxLjA1MUMyNjIuNDQyIDEzNC45NjQgMjQ1LjgxNiAxMjYuNTI3IDIyNC41MzQgMTIzLjIyNloiIGZpbGw9IiNGRjAwN0EiLz4KPHBhdGggZD0iTTQzMi42MSAxNTguNzA0QzQzMy4yMTUgMTQ4LjA1NyA0MzQuNjU5IDE0MS4wMzMgNDM3LjU2MiAxMzQuNjJDNDM4LjcxMSAxMzIuMDgxIDQzOS43ODggMTMwLjAwMyA0MzkuOTU0IDEzMC4wMDNDNDQwLjEyIDEzMC4wMDMgNDM5LjYyMSAxMzEuODc3IDQzOC44NDQgMTM0LjE2N0M0MzYuNzMzIDE0MC4zOTIgNDM2LjM4NyAxNDguOTA1IDQzNy44NCAxNTguODExQzQzOS42ODYgMTcxLjM3OSA0NDAuNzM1IDE3My4xOTIgNDU0LjAxOSAxODYuNzY5QzQ2MC4yNSAxOTMuMTM3IDQ2Ny40OTcgMjAxLjE2OCA0NzAuMTI0IDIwNC42MTZMNDc0LjkwMSAyMTAuODg2TDQ3MC4xMjQgMjA2LjQwNUM0NjQuMjgyIDIwMC45MjYgNDUwLjg0NyAxOTAuMjQgNDQ3Ljg3OSAxODguNzEyQzQ0NS44OSAxODcuNjg4IDQ0NS41OTQgMTg3LjcwNSA0NDQuMzY2IDE4OC45MjdDNDQzLjIzNSAxOTAuMDUzIDQ0Mi45OTcgMTkxLjc0NCA0NDIuODQgMTk5Ljc0MUM0NDIuNTk2IDIxMi4yMDQgNDQwLjg5NyAyMjAuMjA0IDQzNi43OTcgMjI4LjIwM0M0MzQuNTggMjMyLjUyOSA0MzQuMjMgMjMxLjYwNiA0MzYuMjM3IDIyNi43MjNDNDM3LjczNSAyMjMuMDc3IDQzNy44ODcgMjIxLjQ3NCA0MzcuODc2IDIwOS40MDhDNDM3Ljg1MyAxODUuMTY3IDQzNC45NzUgMTc5LjMzOSA0MTguMDk3IDE2OS4zNTVDNDEzLjgyMSAxNjYuODI2IDQwNi43NzYgMTYzLjE3OCA0MDIuNDQyIDE2MS4yNDlDMzk4LjEwNyAxNTkuMzIgMzk0LjY2NCAxNTcuNjM5IDM5NC43ODkgMTU3LjUxNEMzOTUuMjY3IDE1Ny4wMzggNDExLjcyNyAxNjEuODQyIDQxOC4zNTIgMTY0LjM5QzQyOC4yMDYgMTY4LjE4MSA0MjkuODMzIDE2OC42NzIgNDMxLjAzIDE2OC4yMTVDNDMxLjgzMiAxNjcuOTA5IDQzMi4yMiAxNjUuNTcyIDQzMi42MSAxNTguNzA0WiIgZmlsbD0iI0ZGMDA3QSIvPgo8cGF0aCBkPSJNMjM1Ljg4MyAyMDAuMTc1QzIyNC4wMjIgMTgzLjg0NiAyMTYuNjg0IDE1OC44MDkgMjE4LjI3MiAxNDAuMDkzTDIxOC43NjQgMTM0LjMwMUwyMjEuNDYzIDEzNC43OTRDMjI2LjUzNCAxMzUuNzE5IDIzNS4yNzUgMTM4Ljk3MyAyMzkuMzY5IDE0MS40NTlDMjUwLjYwMiAxNDguMjgxIDI1NS40NjUgMTU3LjI2MyAyNjAuNDEzIDE4MC4zMjhDMjYxLjg2MiAxODcuMDgzIDI2My43NjMgMTk0LjcyOCAyNjQuNjM4IDE5Ny4zMTdDMjY2LjA0NyAyMDEuNDgzIDI3MS4zNjkgMjExLjIxNCAyNzUuNjk2IDIxNy41MzRDMjc4LjgxMyAyMjIuMDg1IDI3Ni43NDMgMjI0LjI0MiAyNjkuODUzIDIyMy42MkMyNTkuMzMxIDIyMi42NyAyNDUuMDc4IDIxMi44MzQgMjM1Ljg4MyAyMDAuMTc1WiIgZmlsbD0iI0ZGMDA3QSIvPgo8cGF0aCBkPSJNNDE4LjIyMyAzMjEuNzA3QzM2Mi43OTMgMjk5LjM4OSAzNDMuMjcxIDI4MC4wMTcgMzQzLjI3MSAyNDcuMzMxQzM0My4yNzEgMjQyLjUyMSAzNDMuNDM3IDIzOC41ODUgMzQzLjYzOCAyMzguNTg1QzM0My44NCAyMzguNTg1IDM0NS45ODUgMjQwLjE3MyAzNDguNDA0IDI0Mi4xMTNDMzU5LjY0NCAyNTEuMTI4IDM3Mi4yMzEgMjU0Ljk3OSA0MDcuMDc2IDI2MC4wNjJDNDI3LjU4IDI2My4wNTQgNDM5LjExOSAyNjUuNDcgNDQ5Ljc2MyAyNjlDNDgzLjU5NSAyODAuMjIgNTA0LjUyNyAzMDIuOTkgNTA5LjUxOCAzMzQuMDA0QzUxMC45NjkgMzQzLjAxNiA1MTAuMTE4IDM1OS45MTUgNTA3Ljc2NiAzNjguODIyQzUwNS45MSAzNzUuODU3IDUwMC4yNDUgMzg4LjUzNyA0OTguNzQyIDM4OS4wMjNDNDk4LjMyNSAzODkuMTU4IDQ5Ny45MTcgMzg3LjU2MiA0OTcuODEgMzg1LjM4OUM0OTcuMjQgMzczLjc0NCA0OTEuMzU1IDM2Mi40MDYgNDgxLjQ3MiAzNTMuOTEzQzQ3MC4yMzUgMzQ0LjI1NyA0NTUuMTM3IDMzNi41NjkgNDE4LjIyMyAzMjEuNzA3WiIgZmlsbD0iI0ZGMDA3QSIvPgo8cGF0aCBkPSJNMzc5LjMxIDMzMC45NzhDMzc4LjYxNSAzMjYuODQ2IDM3Ny40MTEgMzIxLjU2OCAzNzYuNjMzIDMxOS4yNUwzNzUuMjE5IDMxNS4wMzZMMzc3Ljg0NiAzMTcuOTg1QzM4MS40ODEgMzIyLjA2NSAzODQuMzU0IDMyNy4yODcgMzg2Ljc4OSAzMzQuMjQxQzM4OC42NDcgMzM5LjU0OSAzODguODU2IDM0MS4xMjcgMzg4Ljg0MiAzNDkuNzUzQzM4OC44MjggMzU4LjIyMSAzODguNTk2IDM1OS45OTYgMzg2Ljg4IDM2NC43NzNDMzg0LjE3NCAzNzIuMzA3IDM4MC44MTYgMzc3LjY0OSAzNzUuMTgxIDM4My4zODNDMzY1LjA1NiAzOTMuNjg4IDM1Mi4wMzggMzk5LjM5MyAzMzMuMjUzIDQwMS43NkMzMjkuOTg3IDQwMi4xNzEgMzIwLjQ3IDQwMi44NjQgMzEyLjEwMyA0MDMuMjk5QzI5MS4wMTYgNDA0LjM5NSAyNzcuMTM4IDQwNi42NjEgMjY0LjY2OCA0MTEuMDRDMjYyLjg3NSA0MTEuNjcgMjYxLjI3NCA0MTIuMDUyIDI2MS4xMTIgNDExLjg5QzI2MC42MDcgNDExLjM4OCAyNjkuMDk4IDQwNi4zMjYgMjc2LjExMSA0MDIuOTQ4QzI4NS45OTkgMzk4LjE4NSAyOTUuODQyIDM5NS41ODYgMzE3Ljg5NyAzOTEuOTEzQzMyOC43OTIgMzkwLjA5OCAzNDAuMDQzIDM4Ny44OTcgMzQyLjkgMzg3LjAyMUMzNjkuODggMzc4Ljc0OSAzODMuNzQ4IDM1Ny40MDIgMzc5LjMxIDMzMC45NzhaIiBmaWxsPSIjRkYwMDdBIi8+CjxwYXRoIGQ9Ik00MDQuNzE5IDM3Ni4xMDVDMzk3LjM1NSAzNjAuMjczIDM5NS42NjQgMzQ0Ljk4OCAzOTkuNjk4IDMzMC43MzJDNDAwLjEzIDMyOS4yMDkgNDAwLjgyNCAzMjcuOTYyIDQwMS4yNDIgMzI3Ljk2MkM0MDEuNjU5IDMyNy45NjIgNDAzLjM5NyAzMjguOTAyIDQwNS4xMDMgMzMwLjA1QzQwOC40OTcgMzMyLjMzNSA0MTUuMzAzIDMzNi4xODIgNDMzLjQzNyAzNDYuMDY5QzQ1Ni4wNjUgMzU4LjQwNiA0NjguOTY2IDM2Ny45NTkgNDc3Ljc0IDM3OC44NzNDNDg1LjQyMyAzODguNDMyIDQ5MC4xNzggMzk5LjMxOCA0OTIuNDY3IDQxMi41OTNDNDkzLjc2MiA0MjAuMTEzIDQ5My4wMDMgNDM4LjIwNiA0OTEuMDc0IDQ0NS43NzhDNDg0Ljk5IDQ2OS42NTMgNDcwLjg1IDQ4OC40MDYgNDUwLjY4MiA0OTkuMzQ5QzQ0Ny43MjcgNTAwLjk1MiA0NDUuMDc1IDUwMi4yNjkgNDQ0Ljc4OCA1MDIuMjc1QzQ0NC41MDEgNTAyLjI4IDQ0NS41NzcgNDk5LjU0MyA0NDcuMTggNDk2LjE5MUM0NTMuOTY1IDQ4Mi4wMDkgNDU0LjczNyA0NjguMjE0IDQ0OS42MDggNDUyLjg1OUM0NDYuNDY3IDQ0My40NTcgNDQwLjA2NCA0MzEuOTg1IDQyNy4xMzUgNDEyLjU5NkM0MTIuMTAzIDM5MC4wNTQgNDA4LjQxNyAzODQuMDU0IDQwNC43MTkgMzc2LjEwNVoiIGZpbGw9IiNGRjAwN0EiLz4KPHBhdGggZD0iTTE5Ni41MTkgNDYxLjUyNUMyMTcuMDg5IDQ0NC4xNTcgMjQyLjY4MiA0MzEuODE5IDI2NS45OTYgNDI4LjAzMkMyNzYuMDQzIDQyNi4zOTkgMjkyLjc4IDQyNy4wNDcgMzAyLjA4NCA0MjkuNDI4QzMxNi45OTggNDMzLjI0NSAzMzAuMzM4IDQ0MS43OTMgMzM3LjI3NiA0NTEuOTc4QzM0NC4wNTcgNDYxLjkzMiAzNDYuOTY2IDQ3MC42MDYgMzQ5Ljk5NSA0ODkuOTA2QzM1MS4xODkgNDk3LjUxOSAzNTIuNDg5IDUwNS4xNjQgMzUyLjg4MiA1MDYuODk1QzM1NS4xNTYgNTE2Ljg5NyAzNTkuNTgzIDUyNC44OTIgMzY1LjA2NyA1MjguOTA3QzM3My43NzkgNTM1LjI4MyAzODguNzggNTM1LjY4IDQwMy41MzYgNTI5LjkyNEM0MDYuMDQxIDUyOC45NDcgNDA4LjIxNSA1MjguMjcxIDQwOC4zNjggNTI4LjQyNEM0MDguOTAzIDUyOC45NTUgNDAxLjQ3MyA1MzMuOTMgMzk2LjIzIDUzNi41NDhDMzg5LjE3NyA1NDAuMDcxIDM4My41NjggNTQxLjQzNCAzNzYuMTE1IDU0MS40MzRDMzYyLjYgNTQxLjQzNCAzNTEuMzc5IDUzNC41NTggMzQyLjAxNiA1MjAuNTM5QzM0MC4xNzQgNTE3Ljc4IDMzNi4wMzIgNTA5LjUxNiAzMzIuODEzIDUwMi4xNzZDMzIyLjkyOCA0NzkuNjI4IDMxOC4wNDYgNDcyLjc1OSAzMDYuNTY4IDQ2NS4yNDJDMjk2LjU3OSA0NTguNzAxIDI4My42OTcgNDU3LjUzIDI3NC4wMDYgNDYyLjI4MkMyNjEuMjc2IDQ2OC41MjMgMjU3LjcyNCA0ODQuNzkxIDI2Ni44NDIgNDk1LjEwMUMyNzAuNDY1IDQ5OS4xOTggMjc3LjIyMyA1MDIuNzMyIDI4Mi43NDkgNTAzLjQxOUMyOTMuMDg2IDUwNC43MDUgMzAxLjk3IDQ5Ni44NDEgMzAxLjk3IDQ4Ni40MDRDMzAxLjk3IDQ3OS42MjcgMjk5LjM2NSA0NzUuNzYgMjkyLjgwOCA0NzIuODAxQzI4My44NTIgNDY4Ljc2IDI3NC4yMjYgNDczLjQ4MyAyNzQuMjcyIDQ4MS44OTdDMjc0LjI5MiA0ODUuNDg0IDI3NS44NTQgNDg3LjczNyAyNzkuNDUgNDg5LjM2NEMyODEuNzU3IDQ5MC40MDggMjgxLjgxMSA0OTAuNDkxIDI3OS45MjkgNDkwLjFDMjcxLjcxMiA0ODguMzk2IDI2OS43ODcgNDc4LjQ5IDI3Ni4zOTQgNDcxLjkxM0MyODQuMzI2IDQ2NC4wMTggMzAwLjcyOSA0NjcuNTAyIDMwNi4zNjIgNDc4LjI3OUMzMDguNzI4IDQ4Mi44MDUgMzA5LjAwMyA0OTEuODIgMzA2Ljk0IDQ5Ny4yNjRDMzAyLjMyMiA1MDkuNDQ4IDI4OC44NTkgNTE1Ljg1NSAyNzUuMjAxIDUxMi4zNjhDMjY1LjkwMyA1MDkuOTk0IDI2Mi4xMTcgNTA3LjQyNCAyNTAuOTA2IDQ5NS44NzZDMjMxLjQyNSA0NzUuODA5IDIyMy44NjIgNDcxLjkyIDE5NS43NzcgNDY3LjUzNkwxOTAuMzk1IDQ2Ni42OTZMMTk2LjUxOSA0NjEuNTI1WiIgZmlsbD0iI0ZGMDA3QSIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTQ5LjYyMDIgMTIuMDAzMUMxMTQuNjc4IDkwLjk2MzggMjE0Ljk3NyAyMTMuOTAxIDIxOS45NTcgMjIwLjc4NEMyMjQuMDY4IDIyNi40NjcgMjIyLjUyMSAyMzEuNTc2IDIxNS40NzggMjM1LjU4QzIxMS41NjEgMjM3LjgwNyAyMDMuNTA4IDI0MC4wNjMgMTk5LjQ3NiAyNDAuMDYzQzE5NC45MTYgMjQwLjA2MyAxODkuNzc5IDIzNy44NjcgMTg2LjAzOCAyMzQuMzE4QzE4My4zOTMgMjMxLjgxIDE3Mi43MjEgMjE1Ljg3NCAxNDguMDg0IDE3Ny42NDZDMTI5LjIzMyAxNDguMzk2IDExMy40NTcgMTI0LjEzMSAxMTMuMDI3IDEyMy43MjVDMTEyLjAzMiAxMjIuNzg1IDExMi4wNDkgMTIyLjgxNyAxNDYuMTYyIDE4My44NTRDMTY3LjU4MiAyMjIuMTgxIDE3NC44MTMgMjM1LjczMSAxNzQuODEzIDIzNy41NDNDMTc0LjgxMyAyNDEuMjI5IDE3My44MDggMjQzLjE2NiAxNjkuMjYxIDI0OC4yMzhDMTYxLjY4MSAyNTYuNjk0IDE1OC4yOTMgMjY2LjE5NSAxNTUuODQ3IDI4NS44NTlDMTUzLjEwNCAzMDcuOTAyIDE0NS4zOTQgMzIzLjQ3MyAxMjQuMDI2IDM1MC4xMjJDMTExLjUxOCAzNjUuNzIyIDEwOS40NzEgMzY4LjU4MSAxMDYuMzE1IDM3NC44NjlDMTAyLjMzOSAzODIuNzg2IDEwMS4yNDYgMzg3LjIyMSAxMDAuODAzIDM5Ny4yMTlDMTAwLjMzNSA0MDcuNzkgMTAxLjI0NyA0MTQuNjE5IDEwNC40NzcgNDI0LjcyNkMxMDcuMzA0IDQzMy41NzUgMTEwLjI1NSA0MzkuNDE3IDExNy44IDQ1MS4xMDRDMTI0LjMxMSA0NjEuMTg4IDEyOC4wNjEgNDY4LjY4MyAxMjguMDYxIDQ3MS42MTRDMTI4LjA2MSA0NzMuOTQ3IDEyOC41MDYgNDczLjk1IDEzOC41OTYgNDcxLjY3MkMxNjIuNzQxIDQ2Ni4yMTkgMTgyLjM0OCA0NTYuNjI5IDE5My4zNzUgNDQ0Ljg3N0MyMDAuMTk5IDQzNy42MDMgMjAxLjgwMSA0MzMuNTg2IDIwMS44NTMgNDIzLjYxOEMyMDEuODg3IDQxNy4wOTggMjAxLjY1OCA0MTUuNzMzIDE5OS44OTYgNDExLjk4MkMxOTcuMDI3IDQwNS44NzcgMTkxLjgwNCA0MDAuODAxIDE4MC4yOTIgMzkyLjkzMkMxNjUuMjA5IDM4Mi42MjEgMTU4Ljc2NyAzNzQuMzIgMTU2Ljk4NyAzNjIuOTA0QzE1NS41MjcgMzUzLjUzNyAxNTcuMjIxIDM0Ni45MjggMTY1LjU2NSAzMjkuNDRDMTc0LjIwMiAzMTEuMzM4IDE3Ni4zNDIgMzAzLjYyNCAxNzcuNzkgMjg1LjM3OEMxNzguNzI1IDI3My41ODkgMTgwLjAyIDI2OC45NCAxODMuNDA3IDI2NS4yMDlDMTg2LjkzOSAyNjEuMzE3IDE5MC4xMTkgMjYwIDE5OC44NjEgMjU4LjgwNUMyMTMuMTEzIDI1Ni44NTggMjIyLjE4OCAyNTMuMTcxIDIyOS42NDggMjQ2LjI5N0MyMzYuMTE5IDI0MC4zMzQgMjM4LjgyNyAyMzQuNTg4IDIzOS4yNDMgMjI1LjkzOEwyMzkuNTU4IDIxOS4zODJMMjM1Ljk0MiAyMTUuMTY2QzIyMi44NDYgMTk5Ljg5NiA0MC44NSAwIDQwLjA0NCAwQzM5Ljg3MTkgMCA0NC4xODEzIDUuNDAxNzggNDkuNjIwMiAxMi4wMDMxWk0xMzUuNDEyIDQwOS4xOEMxMzguMzczIDQwMy45MzcgMTM2LjggMzk3LjE5NSAxMzEuODQ3IDM5My45MDJDMTI3LjE2NyAzOTAuNzkgMTE5Ljg5NyAzOTIuMjU2IDExOS44OTcgMzk2LjMxMUMxMTkuODk3IDM5Ny41NDggMTIwLjU4MiAzOTguNDQ5IDEyMi4xMjQgMzk5LjI0M0MxMjQuNzIgNDAwLjU3OSAxMjQuOTA5IDQwMi4wODEgMTIyLjg2NiA0MDUuMTUyQzEyMC43OTcgNDA4LjI2MiAxMjAuOTY0IDQxMC45OTYgMTIzLjMzNyA0MTIuODU0QzEyNy4xNjIgNDE1Ljg0OSAxMzIuNTc2IDQxNC4yMDIgMTM1LjQxMiA0MDkuMThaIiBmaWxsPSIjRkYwMDdBIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQ4LjU1MiAyNjIuMjQ0QzI0MS44NjIgMjY0LjI5OSAyMzUuMzU4IDI3MS4zOSAyMzMuMzQ0IDI3OC44MjZDMjMyLjExNiAyODMuMzYyIDIzMi44MTMgMjkxLjMxOSAyMzQuNjUzIDI5My43NzZDMjM3LjYyNSAyOTcuNzQ1IDI0MC40OTkgMjk4Ljc5MSAyNDguMjgyIDI5OC43MzZDMjYzLjUxOCAyOTguNjMgMjc2Ljc2NCAyOTIuMDk1IDI3OC4zMDQgMjgzLjkyNUMyNzkuNTY3IDI3Ny4yMjkgMjczLjc0OSAyNjcuOTQ4IDI2NS43MzYgMjYzLjg3NEMyNjEuNjAxIDI2MS43NzIgMjUyLjgwNyAyNjAuOTM4IDI0OC41NTIgMjYyLjI0NFpNMjY2LjM2NCAyNzYuMTcyQzI2OC43MTQgMjcyLjgzNCAyNjcuNjg2IDI2OS4yMjUgMjYzLjY5IDI2Ni43ODVDMjU2LjA4IDI2Mi4xMzggMjQ0LjU3MSAyNjUuOTgzIDI0NC41NzEgMjczLjE3M0MyNDQuNTcxIDI3Ni43NTIgMjUwLjU3MiAyODAuNjU2IDI1Ni4wNzQgMjgwLjY1NkMyNTkuNzM1IDI4MC42NTYgMjY0Ljc0NiAyNzguNDczIDI2Ni4zNjQgMjc2LjE3MloiIGZpbGw9IiNGRjAwN0EiLz4KPC9zdmc+Cg==",protocol:"uniswap_v2",slippage:!0,blockchains:["ethereum"],ethereum:{router:{address:"0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D",api:SL.ROUTER},factory:{address:"0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f",api:SL.FACTORY},pair:{api:SL.PAIR}}};var KS=t=>new IL(Object.assign(XS,{scope:t,findPath:t=>SL.findPath({...t,exchange:XS}),pathExists:t=>SL.pathExists({...t,exchange:XS}),getAmounts:t=>SL.getAmounts({...t,exchange:XS}),getPrep:t=>SL.getPrep({...t,exchange:XS}),getTransaction:t=>SL.getTransaction({...t,exchange:XS})}));function $S(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}const tj="0x0000000000000000000000000000000000000001",ej="0x0000000000000000000000000000000000000002",nj=({blockchain:t,exchange:e,path:n})=>{if(!n)return;let r=n.map(((e,r)=>e===Hf[t].currency.address&&n[r+1]!=Hf[t].wrapped.address&&n[r-1]!=Hf[t].wrapped.address?Hf[t].wrapped.address:e));return r[0]==Hf[t].currency.address&&r[1]==Hf[t].wrapped.address?r.splice(0,1):r[r.length-1]==Hf[t].currency.address&&r[r.length-2]==Hf[t].wrapped.address&&r.splice(r.length-1,1),r},rj=async({exchange:t,pool:e,outputAmount:n})=>(await PI({blockchain:e.blockchain,address:t[e.blockchain].quoter.address,api:t[e.blockchain].quoter.api,method:"quoteExactOutput",params:{path:oI(["address","uint24","address"],[e.path[1],e.fee,e.path[0]]),amountOut:n},cache:5})).amountIn,ij=async({exchange:t,pool:e,inputAmount:n})=>(await PI({blockchain:e.blockchain,address:t[e.blockchain].quoter.address,api:t[e.blockchain].quoter.api,method:"quoteExactInput",params:{path:oI(["address","uint24","address"],[e.path[0],e.fee,e.path[1]]),amountIn:n},cache:5})).amountOut,oj=async({blockchain:t,exchange:e,path:n,amountIn:r,amountOut:i,block:o})=>{if((n=nj({blockchain:t,exchange:e,path:n})).length>2)throw"Uniswap V3 can only check paths for up to 2 tokens!";try{let o=(await Promise.all(e.fees.map((r=>PI({blockchain:Hf[t].name,address:e[t].factory.address,method:"getPool",api:e[t].factory.api,cache:3600,params:[n[0],n[1],r]}).then((e=>({blockchain:t,address:e,path:n,fee:r,token0:[...n].sort()[0],token1:[...n].sort()[1]}))).catch((()=>{})))))).filter(Boolean);return o=o.filter((e=>e.address!=Hf[t].zero)),o=(await Promise.all(o.map((async t=>{try{let n;if(r){n=await ij({exchange:e,pool:t,inputAmount:r});const i=await ij({exchange:e,pool:t,inputAmount:Fp.from(r).mul(Fp.from(10)).toString()}),o=i.div(Fp.from(10)).sub(n).abs();if(!!o.gt(n.div(Fp.from(100))))return}else{n=await rj({exchange:e,pool:t,outputAmount:i});const r=await rj({exchange:e,pool:t,outputAmount:Fp.from(i).mul(Fp.from(10)).toString()}),o=r.div(Fp.from(10)).sub(n).abs();if(!!o.gt(n.div(Fp.from(100))))return}return{...t,amountIn:r||n,amountOut:i||n}}catch(t){}})))).filter(Boolean),r?o.sort(((t,e)=>e.amountOut.gt(t.amountOut)?1:-1))[0]:o.sort(((t,e)=>e.amountIn.lt(t.amountIn)?1:-1))[0]}catch(t){return}};let aj=({blockchain:t,exchange:e,path:n,pools:r,amountIn:i})=>r[r.length-1].amountOut,sj=async({blockchain:t,exchange:e,path:n,pools:r,amountOut:i,block:o})=>{if(void 0===o)return r[0].amountIn;{let n;2==r.length?n=oI(["address","uint24","address","uint24","address"],[r[1].path[1],r[1].fee,r[0].path[1],r[0].fee,r[0].path[0]]):1==r.length&&(n=oI(["address","uint24","address"],[r[0].path[1],r[0].fee,r[0].path[0]]));return(await PI({block:o,blockchain:t,address:e[t].quoter.address,api:e[t].quoter.api,method:"quoteExactOutput",params:{path:n,amountOut:i}})).amountIn}};var uj={findPath:async({blockchain:t,exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s})=>{if([n,r].includes(Hf[t].currency.address)&&[n,r].includes(Hf[t].wrapped.address))return{path:void 0,exchangePath:void 0};let u,c=[];if(c=[await oj({exchange:e,blockchain:t,path:[n,r],amountIn:i||a,amountOut:o||s})],c.filter(Boolean).length&&(u=[n,r]),u||n==Hf[t].wrapped.address||r==Hf[t].wrapped.address||(c=[],o||s?(c.push(await oj({exchange:e,blockchain:t,path:[Hf[t].wrapped.address,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await oj({exchange:e,blockchain:t,path:[n,Hf[t].wrapped.address],amountOut:c[0].amountIn}))):(c.push(await oj({exchange:e,blockchain:t,path:[n,Hf[t].wrapped.address],amountIn:i||a})),c.filter(Boolean).length&&c.push(await oj({exchange:e,blockchain:t,path:[Hf[t].wrapped.address,r],amountIn:c[0].amountOut}))),2===c.filter(Boolean).length&&(u=[n,Hf[t].wrapped.address,r])),!u){c=[];let l=(await Promise.all(Hf[t].stables.usd.map((async u=>{let c=[];if(o||s?(c.push(await oj({exchange:e,blockchain:t,path:[u,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await oj({exchange:e,blockchain:t,path:[n,u],amountOut:c[0].amountIn}))):(c.push(await oj({exchange:e,blockchain:t,path:[n,u],amountIn:i||a})),c.filter(Boolean).length&&c.push(await oj({exchange:e,blockchain:t,path:[u,r],amountIn:c[0].amountOut}))),2===c.filter(Boolean).length)return[u,c]})))).filter(Boolean)[0];l&&(u=[n,l[0],r],c=l[1])}return $S([u,"optionalAccess",t=>t.length])&&u[0]==Hf[t].currency.address?u.splice(1,0,Hf[t].wrapped.address):$S([u,"optionalAccess",t=>t.length])&&u[u.length-1]==Hf[t].currency.address&&u.splice(u.length-1,0,Hf[t].wrapped.address),u||(c=[]),{path:u,pools:c,exchangePath:nj({blockchain:t,exchange:e,path:u})}},pathExists:async({blockchain:t,exchange:e,path:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a})=>{try{return!!await oj({blockchain:t,exchange:e,path:n,amountIn:r||o,amountOut:i||a})}catch(t){return!1}},getAmounts:async({blockchain:t,exchange:e,path:n,pools:r,block:i,tokenIn:o,tokenOut:a,amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l})=>{if(s){if(null==(u=await sj({blockchain:t,exchange:e,block:i,path:n,pools:r,amountOut:s,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(u){if(null==(s=await aj({blockchain:t,exchange:e,path:n,pools:r,amountIn:u,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}else if(l){if(null==(u=await sj({blockchain:t,exchange:e,block:i,path:n,pools:r,amountOut:l,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(c){if(null==(s=await aj({blockchain:t,exchange:e,path:n,pools:r,amountIn:c,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}return{amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l}},getPrep:async({exchange:t,blockchain:e,tokenIn:n,amountIn:r,account:i})=>{if(n===Hf[e].currency.address)return;if((await PI({blockchain:e,address:n,method:"allowance",api:Tk[e][20],params:[i,t[e].permit.address]})).lt(r)){return{transaction:{blockchain:e,from:i,to:n,api:Tk[e][20],method:"approve",params:[t[e].permit.address,Hf[e].maxInt]}}}{const o=await PI({blockchain:e,address:t[e].permit.address,method:"allowance",api:t[e].permit.api,params:[i,n,t[e].router.address]});if(o.amount.lt(r)||o.expiration-1800<Math.floor(Date.now()/1e3)){const r=Math.floor(Date.now()/1e3)+2592e3;return{signature:{types:{Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],PermitSingle:[{name:"details",type:"PermitDetails"},{name:"spender",type:"address"},{name:"sigDeadline",type:"uint256"}],PermitDetails:[{name:"token",type:"address"},{name:"amount",type:"uint160"},{name:"expiration",type:"uint48"},{name:"nonce",type:"uint48"}]},primaryType:"PermitSingle",domain:{chainId:Hf[e].networkId,name:"Permit2",verifyingContract:t[e].permit.address,version:"1"},message:{details:{token:n,amount:"1461501637330902918203684832716283019655932542975",expiration:r,nonce:o.nonce},spender:t[e].router.address,sigDeadline:r}}}}}},getTransaction:async({blockchain:t,exchange:e,pools:n,path:r,amountIn:i,amountInMax:o,amountOut:a,amountOutMin:s,amountInInput:u,amountOutInput:c,amountInMaxInput:l,amountOutMinInput:h,account:d,permit2:f,inputTokenPushed:p})=>{let y,m=[],g=[],v="0";if(f){const t=Tp(f.signature).length;let e;65!==t&&64!==t||(e=function(t){return Cp(Lp([(t=Rp(t)).r,t.s,t.recoveryParam?"0x1c":"0x1b"]))}(Rp(f.signature))),m.push("0a"),g.push(_m.encode(["((address token,uint160 amount,uint48 expiration,uint48 nonce) details,address spender,uint256 sigDeadline)","bytes"],[f,e]))}r[0]===Hf[t].currency.address&&(m.push("0b"),g.push(_m.encode(["address","uint256"],[ej,(i||o).toString()])),v=(i||o).toString()),1===n.length?y=oI(["address","uint24","address"],[n[0].path[0],n[0].fee,n[0].path[1]]):2===n.length&&(y=oI(["address","uint24","address","uint24","address"],[n[0].path[0],n[0].fee,n[0].path[1],n[1].fee,n[1].path[1]])),h||u?(m.push("00"),g.push(_m.encode(["address","uint256","uint256","bytes","bool"],[r[r.length-1]===Hf[t].currency.address?ej:tj,(i||o).toString(),(a||s).toString(),y,r[0]!==Hf[t].currency.address&&!p]))):(m.push("01"),g.push(_m.encode(["address","uint256","uint256","bytes","bool"],[r[r.length-1]===Hf[t].currency.address?ej:tj,(a||s).toString(),(i||o).toString(),y,r[0]!==Hf[t].currency.address&&!p]))),r[r.length-1]===Hf[t].currency.address&&(m.push("0c"),g.push(_m.encode(["address","uint256"],[tj,(a||s).toString()])));return{blockchain:t,from:d,to:e[t].router.address,api:e[t].router.api,method:"execute",params:{commands:`0x${m.join("")}`,inputs:g},value:v}},ROUTER:[{inputs:[{components:[{internalType:"address",name:"permit2",type:"address"},{internalType:"address",name:"weth9",type:"address"},{internalType:"address",name:"seaportV1_5",type:"address"},{internalType:"address",name:"seaportV1_4",type:"address"},{internalType:"address",name:"openseaConduit",type:"address"},{internalType:"address",name:"nftxZap",type:"address"},{internalType:"address",name:"x2y2",type:"address"},{internalType:"address",name:"foundation",type:"address"},{internalType:"address",name:"sudoswap",type:"address"},{internalType:"address",name:"elementMarket",type:"address"},{internalType:"address",name:"nft20Zap",type:"address"},{internalType:"address",name:"cryptopunks",type:"address"},{internalType:"address",name:"looksRareV2",type:"address"},{internalType:"address",name:"routerRewardsDistributor",type:"address"},{internalType:"address",name:"looksRareRewardsDistributor",type:"address"},{internalType:"address",name:"looksRareToken",type:"address"},{internalType:"address",name:"v2Factory",type:"address"},{internalType:"address",name:"v3Factory",type:"address"},{internalType:"bytes32",name:"pairInitCodeHash",type:"bytes32"},{internalType:"bytes32",name:"poolInitCodeHash",type:"bytes32"}],internalType:"struct RouterParameters",name:"params",type:"tuple"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"BalanceTooLow",type:"error"},{inputs:[],name:"BuyPunkFailed",type:"error"},{inputs:[],name:"ContractLocked",type:"error"},{inputs:[],name:"ETHNotAccepted",type:"error"},{inputs:[{internalType:"uint256",name:"commandIndex",type:"uint256"},{internalType:"bytes",name:"message",type:"bytes"}],name:"ExecutionFailed",type:"error"},{inputs:[],name:"FromAddressIsNotOwner",type:"error"},{inputs:[],name:"InsufficientETH",type:"error"},{inputs:[],name:"InsufficientToken",type:"error"},{inputs:[],name:"InvalidBips",type:"error"},{inputs:[{internalType:"uint256",name:"commandType",type:"uint256"}],name:"InvalidCommandType",type:"error"},{inputs:[],name:"InvalidOwnerERC1155",type:"error"},{inputs:[],name:"InvalidOwnerERC721",type:"error"},{inputs:[],name:"InvalidPath",type:"error"},{inputs:[],name:"InvalidReserves",type:"error"},{inputs:[],name:"InvalidSpender",type:"error"},{inputs:[],name:"LengthMismatch",type:"error"},{inputs:[],name:"SliceOutOfBounds",type:"error"},{inputs:[],name:"TransactionDeadlinePassed",type:"error"},{inputs:[],name:"UnableToClaim",type:"error"},{inputs:[],name:"UnsafeCast",type:"error"},{inputs:[],name:"V2InvalidPath",type:"error"},{inputs:[],name:"V2TooLittleReceived",type:"error"},{inputs:[],name:"V2TooMuchRequested",type:"error"},{inputs:[],name:"V3InvalidAmountOut",type:"error"},{inputs:[],name:"V3InvalidCaller",type:"error"},{inputs:[],name:"V3InvalidSwap",type:"error"},{inputs:[],name:"V3TooLittleReceived",type:"error"},{inputs:[],name:"V3TooMuchRequested",type:"error"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"RewardsSent",type:"event"},{inputs:[{internalType:"bytes",name:"looksRareClaim",type:"bytes"}],name:"collectRewards",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"commands",type:"bytes"},{internalType:"bytes[]",name:"inputs",type:"bytes[]"}],name:"execute",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes",name:"commands",type:"bytes"},{internalType:"bytes[]",name:"inputs",type:"bytes[]"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"execute",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256[]",name:"",type:"uint256[]"},{internalType:"uint256[]",name:"",type:"uint256[]"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC1155BatchReceived",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC1155Received",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC721Received",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"int256",name:"amount0Delta",type:"int256"},{internalType:"int256",name:"amount1Delta",type:"int256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"uniswapV3SwapCallback",outputs:[],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}],FACTORY:[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint24",name:"fee",type:"uint24"},{indexed:!0,internalType:"int24",name:"tickSpacing",type:"int24"}],name:"FeeAmountEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnerChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token0",type:"address"},{indexed:!0,internalType:"address",name:"token1",type:"address"},{indexed:!0,internalType:"uint24",name:"fee",type:"uint24"},{indexed:!1,internalType:"int24",name:"tickSpacing",type:"int24"},{indexed:!1,internalType:"address",name:"pool",type:"address"}],name:"PoolCreated",type:"event"},{inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"}],name:"createPool",outputs:[{internalType:"address",name:"pool",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"int24",name:"tickSpacing",type:"int24"}],name:"enableFeeAmount",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint24",name:"",type:"uint24"}],name:"feeAmountTickSpacing",outputs:[{internalType:"int24",name:"",type:"int24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint24",name:"",type:"uint24"}],name:"getPool",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"parameters",outputs:[{internalType:"address",name:"factory",type:"address"},{internalType:"address",name:"token0",type:"address"},{internalType:"address",name:"token1",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"int24",name:"tickSpacing",type:"int24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_owner",type:"address"}],name:"setOwner",outputs:[],stateMutability:"nonpayable",type:"function"}],POOL:[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount",type:"uint128"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"}],name:"Burn",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount0",type:"uint128"},{indexed:!1,internalType:"uint128",name:"amount1",type:"uint128"}],name:"Collect",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"uint128",name:"amount0",type:"uint128"},{indexed:!1,internalType:"uint128",name:"amount1",type:"uint128"}],name:"CollectProtocol",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"},{indexed:!1,internalType:"uint256",name:"paid0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"paid1",type:"uint256"}],name:"Flash",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint16",name:"observationCardinalityNextOld",type:"uint16"},{indexed:!1,internalType:"uint16",name:"observationCardinalityNextNew",type:"uint16"}],name:"IncreaseObservationCardinalityNext",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{indexed:!1,internalType:"int24",name:"tick",type:"int24"}],name:"Initialize",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount",type:"uint128"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"}],name:"Mint",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint8",name:"feeProtocol0Old",type:"uint8"},{indexed:!1,internalType:"uint8",name:"feeProtocol1Old",type:"uint8"},{indexed:!1,internalType:"uint8",name:"feeProtocol0New",type:"uint8"},{indexed:!1,internalType:"uint8",name:"feeProtocol1New",type:"uint8"}],name:"SetFeeProtocol",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"int256",name:"amount0",type:"int256"},{indexed:!1,internalType:"int256",name:"amount1",type:"int256"},{indexed:!1,internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{indexed:!1,internalType:"uint128",name:"liquidity",type:"uint128"},{indexed:!1,internalType:"int24",name:"tick",type:"int24"}],name:"Swap",type:"event"},{inputs:[{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount",type:"uint128"}],name:"burn",outputs:[{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount0Requested",type:"uint128"},{internalType:"uint128",name:"amount1Requested",type:"uint128"}],name:"collect",outputs:[{internalType:"uint128",name:"amount0",type:"uint128"},{internalType:"uint128",name:"amount1",type:"uint128"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint128",name:"amount0Requested",type:"uint128"},{internalType:"uint128",name:"amount1Requested",type:"uint128"}],name:"collectProtocol",outputs:[{internalType:"uint128",name:"amount0",type:"uint128"},{internalType:"uint128",name:"amount1",type:"uint128"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"fee",outputs:[{internalType:"uint24",name:"",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[],name:"feeGrowthGlobal0X128",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"feeGrowthGlobal1X128",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"flash",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"observationCardinalityNext",type:"uint16"}],name:"increaseObservationCardinalityNext",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint160",name:"sqrtPriceX96",type:"uint160"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"liquidity",outputs:[{internalType:"uint128",name:"",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"maxLiquidityPerTick",outputs:[{internalType:"uint128",name:"",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes",name:"data",type:"bytes"}],name:"mint",outputs:[{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"observations",outputs:[{internalType:"uint32",name:"blockTimestamp",type:"uint32"},{internalType:"int56",name:"tickCumulative",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityCumulativeX128",type:"uint160"},{internalType:"bool",name:"initialized",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint32[]",name:"secondsAgos",type:"uint32[]"}],name:"observe",outputs:[{internalType:"int56[]",name:"tickCumulatives",type:"int56[]"},{internalType:"uint160[]",name:"secondsPerLiquidityCumulativeX128s",type:"uint160[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"",type:"bytes32"}],name:"positions",outputs:[{internalType:"uint128",name:"liquidity",type:"uint128"},{internalType:"uint256",name:"feeGrowthInside0LastX128",type:"uint256"},{internalType:"uint256",name:"feeGrowthInside1LastX128",type:"uint256"},{internalType:"uint128",name:"tokensOwed0",type:"uint128"},{internalType:"uint128",name:"tokensOwed1",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"protocolFees",outputs:[{internalType:"uint128",name:"token0",type:"uint128"},{internalType:"uint128",name:"token1",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint8",name:"feeProtocol0",type:"uint8"},{internalType:"uint8",name:"feeProtocol1",type:"uint8"}],name:"setFeeProtocol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"slot0",outputs:[{internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{internalType:"int24",name:"tick",type:"int24"},{internalType:"uint16",name:"observationIndex",type:"uint16"},{internalType:"uint16",name:"observationCardinality",type:"uint16"},{internalType:"uint16",name:"observationCardinalityNext",type:"uint16"},{internalType:"uint8",name:"feeProtocol",type:"uint8"},{internalType:"bool",name:"unlocked",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"}],name:"snapshotCumulativesInside",outputs:[{internalType:"int56",name:"tickCumulativeInside",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityInsideX128",type:"uint160"},{internalType:"uint32",name:"secondsInside",type:"uint32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"bool",name:"zeroForOne",type:"bool"},{internalType:"int256",name:"amountSpecified",type:"int256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"},{internalType:"bytes",name:"data",type:"bytes"}],name:"swap",outputs:[{internalType:"int256",name:"amount0",type:"int256"},{internalType:"int256",name:"amount1",type:"int256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"int16",name:"",type:"int16"}],name:"tickBitmap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"tickSpacing",outputs:[{internalType:"int24",name:"",type:"int24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int24",name:"",type:"int24"}],name:"ticks",outputs:[{internalType:"uint128",name:"liquidityGross",type:"uint128"},{internalType:"int128",name:"liquidityNet",type:"int128"},{internalType:"uint256",name:"feeGrowthOutside0X128",type:"uint256"},{internalType:"uint256",name:"feeGrowthOutside1X128",type:"uint256"},{internalType:"int56",name:"tickCumulativeOutside",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityOutsideX128",type:"uint160"},{internalType:"uint32",name:"secondsOutside",type:"uint32"},{internalType:"bool",name:"initialized",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"token0",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"token1",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"}],QUOTER:[{inputs:[{internalType:"address",name:"_factory",type:"address"},{internalType:"address",name:"_WETH9",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"WETH9",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"uint256",name:"amountIn",type:"uint256"}],name:"quoteExactInput",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint160[]",name:"sqrtPriceX96AfterList",type:"uint160[]"},{internalType:"uint32[]",name:"initializedTicksCrossedList",type:"uint32[]"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IQuoterV2.QuoteExactInputSingleParams",name:"params",type:"tuple"}],name:"quoteExactInputSingle",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint160",name:"sqrtPriceX96After",type:"uint160"},{internalType:"uint32",name:"initializedTicksCrossed",type:"uint32"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"uint256",name:"amountOut",type:"uint256"}],name:"quoteExactOutput",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint160[]",name:"sqrtPriceX96AfterList",type:"uint160[]"},{internalType:"uint32[]",name:"initializedTicksCrossedList",type:"uint32[]"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IQuoterV2.QuoteExactOutputSingleParams",name:"params",type:"tuple"}],name:"quoteExactOutputSingle",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint160",name:"sqrtPriceX96After",type:"uint160"},{internalType:"uint32",name:"initializedTicksCrossed",type:"uint32"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"int256",name:"amount0Delta",type:"int256"},{internalType:"int256",name:"amount1Delta",type:"int256"},{internalType:"bytes",name:"path",type:"bytes"}],name:"uniswapV3SwapCallback",outputs:[],stateMutability:"view",type:"function"}],PERMIT2:[{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"AllowanceExpired",type:"error"},{inputs:[],name:"ExcessiveInvalidation",type:"error"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"InsufficientAllowance",type:"error"},{inputs:[{internalType:"uint256",name:"maxAmount",type:"uint256"}],name:"InvalidAmount",type:"error"},{inputs:[],name:"InvalidContractSignature",type:"error"},{inputs:[],name:"InvalidNonce",type:"error"},{inputs:[],name:"InvalidSignature",type:"error"},{inputs:[],name:"InvalidSignatureLength",type:"error"},{inputs:[],name:"InvalidSigner",type:"error"},{inputs:[],name:"LengthMismatch",type:"error"},{inputs:[{internalType:"uint256",name:"signatureDeadline",type:"uint256"}],name:"SignatureExpired",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint160",name:"amount",type:"uint160"},{indexed:!1,internalType:"uint48",name:"expiration",type:"uint48"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"address",name:"spender",type:"address"}],name:"Lockdown",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint48",name:"newNonce",type:"uint48"},{indexed:!1,internalType:"uint48",name:"oldNonce",type:"uint48"}],name:"NonceInvalidation",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint160",name:"amount",type:"uint160"},{indexed:!1,internalType:"uint48",name:"expiration",type:"uint48"},{indexed:!1,internalType:"uint48",name:"nonce",type:"uint48"}],name:"Permit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"uint256",name:"word",type:"uint256"},{indexed:!1,internalType:"uint256",name:"mask",type:"uint256"}],name:"UnorderedNonceInvalidation",type:"event"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"allowance",outputs:[{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"}],name:"approve",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint48",name:"newNonce",type:"uint48"}],name:"invalidateNonces",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"wordPos",type:"uint256"},{internalType:"uint256",name:"mask",type:"uint256"}],name:"invalidateUnorderedNonces",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"}],internalType:"struct IAllowanceTransfer.TokenSpenderPair[]",name:"approvals",type:"tuple[]"}],name:"lockdown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"}],name:"nonceBitmap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],internalType:"struct IAllowanceTransfer.PermitDetails[]",name:"details",type:"tuple[]"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"sigDeadline",type:"uint256"}],internalType:"struct IAllowanceTransfer.PermitBatch",name:"permitBatch",type:"tuple"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],internalType:"struct IAllowanceTransfer.PermitDetails",name:"details",type:"tuple"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"sigDeadline",type:"uint256"}],internalType:"struct IAllowanceTransfer.PermitSingle",name:"permitSingle",type:"tuple"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions",name:"permitted",type:"tuple"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails",name:"transferDetails",type:"tuple"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions[]",name:"permitted",type:"tuple[]"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitBatchTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails[]",name:"transferDetails",type:"tuple[]"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions",name:"permitted",type:"tuple"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails",name:"transferDetails",type:"tuple"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes32",name:"witness",type:"bytes32"},{internalType:"string",name:"witnessTypeString",type:"string"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitWitnessTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions[]",name:"permitted",type:"tuple[]"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitBatchTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails[]",name:"transferDetails",type:"tuple[]"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes32",name:"witness",type:"bytes32"},{internalType:"string",name:"witnessTypeString",type:"string"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitWitnessTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"address",name:"token",type:"address"}],internalType:"struct IAllowanceTransfer.AllowanceTransferDetails[]",name:"transferDetails",type:"tuple[]"}],name:"transferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"address",name:"token",type:"address"}],name:"transferFrom",outputs:[],stateMutability:"nonpayable",type:"function"}]};const cj={name:"uniswap_v3",label:"Uniswap v3",logo:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDgiIGhlaWdodD0iNDgiIGRhdGEtdGVzdGlkPSJ1bmlzd2FwLWxvZ28iIGNsYXNzPSJyZ3c2ZXo0NHAgcmd3NmV6NGVqIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjAuMzUyNiAxOS45MjQyQzIwLjI5MjggMjAuMTU0OSAyMC4xODg1IDIwLjM3MTUgMjAuMDQ1NSAyMC41NjE4QzE5Ljc3OTMgMjAuOTA4OCAxOS40MjcgMjEuMTc5NCAxOS4wMjM5IDIxLjM0NjZDMTguNjYxNCAyMS41MDM1IDE4LjI3NzQgMjEuNjA1IDE3Ljg4NDkgMjEuNjQ3NUMxNy44MDQyIDIxLjY1NzggMTcuNzIwNiAyMS42NjQxIDE3LjYzOTUgMjEuNjcwM0wxNy42MjYzIDIxLjY3MTNDMTcuMzc3NyAyMS42ODA4IDE3LjEzODcgMjEuNzcgMTYuOTQ0MiAyMS45MjU4QzE2Ljc0OTcgMjIuMDgxNyAxNi42MSAyMi4yOTYgMTYuNTQ1NSAyMi41MzczQzE2LjUxNiAyMi42NTc0IDE2LjQ5NCAyMi43NzkyIDE2LjQ3OTggMjIuOTAyMUMxNi40NTcyIDIzLjA4NzQgMTYuNDQ1NiAyMy4yNzcxIDE2LjQzMyAyMy40ODIzQzE2LjQyNCAyMy42Mjk1IDE2LjQxNDQgMjMuNzg0OCAxNi40IDIzLjk1MjFDMTYuMzE1NiAyNC42MzM3IDE2LjExOTMgMjUuMjk2NSAxNS44MTkyIDI1LjkxMzZDMTUuNzU3OSAyNi4wNDMzIDE1LjY5NTQgMjYuMTY5MSAxNS42MzM5IDI2LjI5MjZDMTUuMzA0OSAyNi45NTQ2IDE1LjAwNzYgMjcuNTUyNiAxNS4wOTI5IDI4LjM1MzVDMTUuMTU5NyAyOC45NzA2IDE1LjQ3NDQgMjkuMzg0MSAxNS44OTI1IDI5LjgxMDZDMTYuMDkxMSAzMC4wMTQ2IDE2LjM1NDQgMzAuMTg4OSAxNi42Mjc3IDMwLjM2OTlDMTcuMzkyNyAzMC44NzYzIDE4LjIzNjEgMzEuNDM0NyAxNy45NTgyIDMyLjg0MTVDMTcuNzMwOCAzMy45ODE0IDE1Ljg0OTQgMzUuMTc3NiAxMy4yMDUgMzUuNTk1NEMxMy40NjE1IDM1LjU1NjMgMTIuODk2NSAzNC41ODc5IDEyLjgzMzggMzQuNDgwNEwxMi44MyAzNC40NzM5QzEyLjc1NzEgMzQuMzU5MiAxMi42ODI0IDM0LjI0NjIgMTIuNjA3OSAzNC4xMzM0TDEyLjYwNzkgMzQuMTMzNEwxMi42MDc4IDM0LjEzMzRDMTIuMzkyNiAzMy44MDc2IDEyLjE3ODMgMzMuNDgzNSAxMi4wMTExIDMzLjEyNDFDMTEuNTY5MyAzMi4xODU2IDExLjM2NDUgMzEuMDk5OCAxMS41NDU1IDMwLjA3MTRDMTEuNzA5NSAyOS4xNDA3IDEyLjMyMjEgMjguMzk3MiAxMi45MTE4IDI3LjY4MTNMMTIuOTExOCAyNy42ODEzQzEzLjAwOCAyNy41NjQ2IDEzLjEwMzUgMjcuNDQ4NyAxMy4xOTY0IDI3LjMzMjhDMTMuOTg1MiAyNi4zNDg4IDE0LjgxMjggMjUuMDU5NSAxNC45OTU5IDIzLjc4MjJDMTUuMDExNCAyMy42NzEyIDE1LjAyNTIgMjMuNTUwMiAxNS4wMzk3IDIzLjQyMjlMMTUuMDM5NyAyMy40MjI5TDE1LjAzOTcgMjMuNDIyOUMxNS4wNjU3IDIzLjE5NSAxNS4wOTM5IDIyLjk0NjkgMTUuMTM4MiAyMi42OTk3QzE1LjIwMzkgMjIuMjcyOCAxNS4zMzcxIDIxLjg1OTEgMTUuNTMyNiAyMS40NzQzQzE1LjY2NiAyMS4yMjIgMTUuODQxNyAyMC45OTQ2IDE2LjA1MiAyMC44MDIxQzE2LjE2MTYgMjAuNjk5OSAxNi4yMzM5IDIwLjU2MzcgMTYuMjU3NCAyMC40MTUzQzE2LjI4MDggMjAuMjY3IDE2LjI1NCAyMC4xMTUgMTYuMTgxMyAxOS45ODM3TDExLjk2NTggMTIuMzY3M0wxOC4wMjA3IDE5Ljg3MzNDMTguMDg5NyAxOS45NjAzIDE4LjE3NjggMjAuMDMxIDE4LjI3NiAyMC4wODAzQzE4LjM3NTIgMjAuMTI5NiAxOC40ODQgMjAuMTU2NCAxOC41OTQ2IDIwLjE1ODhDMTguNzA1MyAyMC4xNjEyIDE4LjgxNTEgMjAuMTM5MSAxOC45MTYzIDIwLjA5NEMxOS4wMTc1IDIwLjA0OSAxOS4xMDc2IDE5Ljk4MjEgMTkuMTgwMiAxOS44OTgyQzE5LjI1NjkgMTkuODA4NCAxOS4zMDA0IDE5LjY5NDcgMTkuMzAzMyAxOS41NzYzQzE5LjMwNjMgMTkuNDU4IDE5LjI2ODUgMTkuMzQyMyAxOS4xOTYzIDE5LjI0ODdDMTguOTE0OCAxOC44ODczIDE4LjYyMTggMTguNTIxIDE4LjMzMDIgMTguMTU2M0wxOC4zMyAxOC4xNTZDMTguMjEyIDE4LjAwODUgMTguMDk0MyAxNy44NjEzIDE3Ljk3NzYgMTcuNzE0OEwxNi40NTM5IDE1LjgyMDVMMTMuMzk1NyAxMi4wMzgyTDEwIDhMMTMuNzg4IDExLjY5OTRMMTcuMDQzMyAxNS4zMTQ5TDE4LjY2NzMgMTcuMTI3QzE4LjgxNjUgMTcuMjk1OCAxOC45NjU3IDE3LjQ2MzEgMTkuMTE0OCAxNy42MzAzQzE5LjUwNDQgMTguMDY3MSAxOS44OTQgMTguNTAzOSAyMC4yODM2IDE4Ljk2NzNMMjAuMzcyIDE5LjA3NTVMMjAuMzkxNCAxOS4yNDMzQzIwLjQxNzYgMTkuNDcwOCAyMC40MDQ1IDE5LjcwMTIgMjAuMzUyNiAxOS45MjQyWk0zNS45MjQ3IDIyLjQ2OTdMMzUuOTMxMSAyMi40Nzk1QzM1LjkzIDIxLjY3MTkgMzUuNDMyMiAyMC4zMzk0IDM0LjQyNDcgMTkuMDU3N0wzNC40MDEgMTkuMDI2M0MzNC4wOTA2IDE4LjY0MSAzMy43NTI0IDE4LjI3OTIgMzMuMzg5MSAxNy45NDM4QzMzLjMyMTIgMTcuODc3OCAzMy4yNDggMTcuODEyOCAzMy4xNzM2IDE3Ljc0NzlDMzIuNzA4MSAxNy4zNDAxIDMyLjE5OTMgMTYuOTg1IDMxLjY1NjQgMTYuNjg5MkwzMS42MTc2IDE2LjY2OTdDMjkuOTExOCAxNS43MzY2IDI3LjY5MiAxNS4yNTYgMjQuOTU0OSAxNS43OTcyQzI0LjU4NzMgMTUuMzQ4OSAyNC4xOTE0IDE0LjkyNDggMjMuNzY5NiAxNC41Mjc1QzIzLjEyMzYgMTMuOTA5MSAyMi4zNjMyIDEzLjQyNDEgMjEuNTMxNSAxMy4wOTk3QzIwLjcwNzIgMTIuNzk2NiAxOS44MjQ0IDEyLjY4ODQgMTguOTUxNyAxMi43ODM2QzE5Ljc5MjkgMTIuODU5NyAyMC42MTIzIDEzLjA5NDcgMjEuMzY2NiAxMy40NzY0QzIyLjA5NTEgMTMuODY4NSAyMi43NTEyIDE0LjM4MzMgMjMuMzA2MiAxNC45OTg0QzIzLjg2ODggMTUuNjI2MyAyNC4zOTc2IDE2LjI4MzkgMjQuODkwMyAxNi45Njg1TDI1LjAxMzkgMTcuMTMwMkMyNS40OTYgMTcuNzYwOSAyNS45ODY4IDE4LjQwMyAyNi41OTgyIDE4Ljk3NDRDMjYuOTM0OCAxOS4yOTI1IDI3LjMxMDMgMTkuNTY2NCAyNy43MTU3IDE5Ljc4OTVDMjcuODIzNCAxOS44NDQ3IDI3LjkzMjMgMTkuODk2NiAyOC4wMzkgMTkuOTQyMUMyOC4xNDU2IDE5Ljk4NzYgMjguMjQ1OCAyMC4wMjk4IDI4LjM1MzYgMjAuMDY4OEMyOC41NjE2IDIwLjE0OTkgMjguNzc3MSAyMC4yMTcxIDI4Ljk5MjYgMjAuMjc4OEMyOS44NTQ3IDIwLjUyNTYgMzAuNzM3MiAyMC42MTQzIDMxLjU5OTMgMjAuNjYyQzMxLjcxOTIgMjAuNjY4MyAzMS44Mzg5IDIwLjY3NDIgMzEuOTU4MSAyMC42ODAxTDMxLjk1ODMgMjAuNjgwMUMzMi4yNjYyIDIwLjY5NTQgMzIuNTcxMyAyMC43MTA1IDMyLjg3MTkgMjAuNzMyM0MzMy4yODM3IDIwLjc1NjkgMzMuNjkyMiAyMC44MjE0IDM0LjA5MTcgMjAuOTI1QzM0LjY5MTggMjEuMDgyMiAzNS4yMjAxIDIxLjQ0MTMgMzUuNTg4NSAyMS45NDI1QzM1LjcxMzcgMjIuMTA5NSAzNS44MjYxIDIyLjI4NTcgMzUuOTI0NyAyMi40Njk3Wk0zMy40MDEzIDE3Ljk0NTFDMzMuMzU4IDE3LjkwNDkgMzMuMzEzOSAxNy44NjUxIDMzLjI3IDE3LjgyNTRMMzMuMjcgMTcuODI1NEMzMy4yNDE4IDE3Ljc5OTkgMzMuMjEzNiAxNy43NzQ1IDMzLjE4NTggMTcuNzQ5MUMzMy4yMDczIDE3Ljc2ODggMzMuMjI4OCAxNy43ODg3IDMzLjI1MDMgMTcuODA4N0MzMy4zMDA5IDE3Ljg1NTYgMzMuMzUxNCAxNy45MDI1IDMzLjQwMTMgMTcuOTQ1MVpNMzIuMzIzOCAyNS45MTcyQzI5LjU1MTYgMjQuNzg3MiAyNi42NTE4IDIzLjYwNTEgMjcuMDgzNSAyMC4yODc1QzI4LjAwOTEgMjEuMjgwMiAyOS40NjIgMjEuNDg4NCAzMS4wNDIyIDIxLjcxNDlDMzIuNDc1NyAyMS45MjAzIDM0LjAxMzkgMjIuMTQwNyAzNS4zNTgzIDIyLjk3NTNDMzguNTMwNiAyNC45NDMzIDM4LjA2NzMgMjguNzY2NiAzNi45ODk3IDMwLjE3MzlDMzcuMDg2OSAyNy44NTg3IDM0Ljc1NDQgMjYuOTA4IDMyLjMyMzggMjUuOTE3MlpNMjEuMTU1MSAyNC4yNTY3QzIxLjg4NjggMjQuMTg2MyAyMy40NDYxIDIzLjgwNDIgMjIuNzQ4OSAyMi41NzEyQzIyLjU5ODkgMjIuMzIwNCAyMi4zODE1IDIyLjExNzIgMjIuMTIxNyAyMS45ODQ4QzIxLjg2MTkgMjEuODUyNSAyMS41NzAyIDIxLjc5NjUgMjEuMjgwMSAyMS44MjMyQzIwLjk4NTggMjEuODU1IDIwLjcwODIgMjEuOTc2OSAyMC40ODUyIDIyLjE3MjVDMjAuMjYyMiAyMi4zNjgxIDIwLjEwNDQgMjIuNjI3OCAyMC4wMzM0IDIyLjkxNjVDMTkuODE2OCAyMy43MjMgMjAuMDQ2MyAyNC4zNjQ5IDIxLjE1NTEgMjQuMjU2N1pNMjAuOTQ0OCAxNC41MDE0QzIwLjQ4NTggMTMuOTY4OCAxOS43NzM1IDEzLjY4OTUgMTkuMDc1MiAxMy41ODc4QzE5LjA0OTEgMTMuNzYyNSAxOS4wMzI2IDEzLjkzODUgMTkuMDI1NyAxNC4xMTVDMTguOTk0NCAxNS41Njg3IDE5LjUwODQgMTcuMTY1NCAyMC41MDMgMTguMjc1QzIwLjgyMTIgMTguNjMzNyAyMS4yMDQ5IDE4LjkyNzYgMjEuNjMzNCAxOS4xNDFDMjEuODgxMiAxOS4yNjIyIDIyLjUzODYgMTkuNTYzMSAyMi43ODIxIDE5LjI5MjVDMjIuODAwNiAxOS4yNjc3IDIyLjgxMjMgMTkuMjM4NCAyMi44MTU5IDE5LjIwNzZDMjIuODE5NSAxOS4xNzY4IDIyLjgxNDkgMTkuMTQ1NiAyMi44MDI2IDE5LjExNzJDMjIuNzYyMiAxOS4wMDEzIDIyLjY4NDMgMTguODk2MSAyMi42MDY5IDE4Ljc5MTdDMjIuNTUyIDE4LjcxNzcgMjIuNDk3NCAxOC42NDQxIDIyLjQ1NjcgMTguNTY3MkMyMi40MTU1IDE4LjQ4OTggMjIuMzcxNCAxOC40MTQyIDIyLjMyNzQgMTguMzM4OEwyMi4zMjc0IDE4LjMzODhDMjIuMjQ0NyAxOC4xOTcgMjIuMTYyMiAxOC4wNTU1IDIyLjA5ODkgMTcuOTAxNUMyMS45MzE5IDE3LjQ5ODQgMjEuODQ1IDE3LjA2OTggMjEuNzU4MyAxNi42NDI1TDIxLjc1ODMgMTYuNjQyNEwyMS43NTgzIDE2LjY0MjRMMjEuNzU4MyAxNi42NDIzTDIxLjc1ODIgMTYuNjQyMkwyMS43NTgyIDE2LjY0MjFMMjEuNzU4MiAxNi42NDJDMjEuNzQwOSAxNi41NTY2IDIxLjcyMzYgMTYuNDcxMiAyMS43MDU2IDE2LjM4NkMyMS41NzMxIDE1LjcyNjggMjEuNDAzOSAxNS4wMzQgMjAuOTQ0OCAxNC41MDE0Wk0zMC43NTI0IDI2LjA5OEMzMC4wNDAzIDI4LjA5NDMgMzEuMTg4OCAyOS43ODA0IDMyLjMzMDYgMzEuNDU2NkMzMy42MDc3IDMzLjMzMTUgMzQuODc2NCAzNS4xOTQgMzMuNTIyOCAzNy40NjQyQzM2LjE1MzIgMzYuMzczMSAzNy40MDIxIDMzLjA3NjkgMzYuMzEwNSAzMC40NjE2QzM1LjYyMjcgMjguODA3NCAzMy45NjQ5IDI3LjkxMDYgMzIuNDI2MSAyNy4wNzgzTDMyLjQyNjEgMjcuMDc4M0wzMi40MjYgMjcuMDc4MkMzMS44MjkgMjYuNzU1MyAzMS4yNDk5IDI2LjQ0MjEgMzAuNzUyNCAyNi4wOThaTTIzLjA1NTIgMzAuODYzM0MyMi41Nzg1IDMxLjA1ODcgMjIuMTI5IDMxLjMxNTIgMjEuNzE3OSAzMS42MjY1QzIyLjY1MjcgMzEuMjg1OSAyMy42MzM5IDMxLjA5MTQgMjQuNjI3NCAzMS4wNDk1QzI0LjgwNzQgMzEuMDM4OCAyNC45ODg3IDMxLjAzMDQgMjUuMTcxNSAzMS4wMjE5TDI1LjE3MTcgMzEuMDIxOUwyNS4xNzIgMzEuMDIxOUMyNS40ODc4IDMxLjAwNzMgMjUuODA4NSAzMC45OTI1IDI2LjEzNiAzMC45NjUxQzI2LjY3MjkgMzAuOTI4NSAyNy4yMDI1IDMwLjgxOTIgMjcuNzEwMyAzMC42NDAzQzI4LjI0MjUgMzAuNDUzMyAyOC43MjY4IDMwLjE1MDEgMjkuMTI4NCAyOS43NTI3QzI5LjUzNDIgMjkuMzQyNCAyOS44MTg4IDI4LjgyNzIgMjkuOTUwNiAyOC4yNjQyQzMwLjA2NjYgMjcuNzMyNCAzMC4wNTAzIDI3LjE4MDEgMjkuOTAzMiAyNi42NTYyQzI5Ljc1NiAyNi4xMzIyIDI5LjQ4MjUgMjUuNjUyOCAyOS4xMDY5IDI1LjI2MDNDMjkuMjg4MSAyNS43MjIxIDI5LjM5OTYgMjYuMjA4NCAyOS40Mzc3IDI2LjcwMzNDMjkuNDcwNSAyNy4xNjQgMjkuNDA4MSAyNy42MjY1IDI5LjI1NDUgMjguMDYxOEMyOS4xMDQ1IDI4LjQ3NDQgMjguODU5MyAyOC44NDU0IDI4LjUzOSAyOS4xNDQzQzI4LjIwODEgMjkuNDQ2MiAyNy44MjUgMjkuNjg0NiAyNy40MDg2IDI5Ljg0NzlDMjYuODI5OSAzMC4wODIxIDI2LjE3NTUgMzAuMTc3OSAyNS40OTM5IDMwLjI3NzdDMjUuMTgzIDMwLjMyMzIgMjQuODY2NCAzMC4zNjk2IDI0LjU0ODcgMzAuNDMwM0MyNC4wMzc4IDMwLjUyNDMgMjMuNTM3NCAzMC42Njk0IDIzLjA1NTIgMzAuODYzM1pNMzEuMzE4NyAzOS4xMDQ2TDMxLjI3MyAzOS4xNDE1TDMxLjI3MyAzOS4xNDE2QzMxLjE1MjUgMzkuMjM4OSAzMS4wMzAxIDM5LjMzNzkgMzAuODk4MiAzOS40MjY4QzMwLjczMDEgMzkuNTM4IDMwLjU1NCAzOS42MzY1IDMwLjM3MTMgMzkuNzIxMkMyOS45OTA4IDM5LjkwNzcgMjkuNTcyNiA0MC4wMDI5IDI5LjE0OTMgMzkuOTk5NEMyOC4wMDI4IDM5Ljk3NzggMjcuMTkyNCAzOS4xMjA1IDI2LjcxODMgMzguMTUxNkMyNi41OTQgMzcuODk3NyAyNi40ODQ1IDM3LjYzNTkgMjYuMzc1IDM3LjM3NDFMMjYuMzc1IDM3LjM3NDFDMjYuMTk5NyAzNi45NTUxIDI2LjAyNDQgMzYuNTM2MSAyNS43ODgzIDM2LjE0OUMyNS4yMzk5IDM1LjI0OTUgMjQuMzAxMyAzNC41MjUzIDIzLjIwMjIgMzQuNjU5NUMyMi43NTM5IDM0LjcxNTggMjIuMzMzNiAzNC45MTgyIDIyLjA4NDcgMzUuMzA5QzIxLjQyOTUgMzYuMzI5OCAyMi4zNzAzIDM3Ljc1OTggMjMuNTY5NiAzNy41NTczQzIzLjY3MTYgMzcuNTQxNyAyMy43NzE0IDM3LjUxNDEgMjMuODY3IDM3LjQ3NTFDMjMuOTYyMyAzNy40MzQzIDI0LjA1MTIgMzcuMzggMjQuMTMxIDM3LjMxMzhDMjQuMjk4NiAzNy4xNzM2IDI0LjQyNDggMzYuOTkwMyAyNC40OTYzIDM2Ljc4MzRDMjQuNTc1MSAzNi41Njc2IDI0LjU5MjYgMzYuMzM0MSAyNC41NDcgMzYuMTA5QzI0LjQ5NzggMzUuODczNiAyNC4zNTk0IDM1LjY2NjggMjQuMTYxMiAzNS41MzJDMjQuMzkxNyAzNS42NDA0IDI0LjU3MTMgMzUuODM0NSAyNC42NjIzIDM2LjA3MzJDMjQuNzU2NiAzNi4zMTkgMjQuNzgwOSAzNi41ODYyIDI0LjczMjMgMzYuODQ1MUMyNC42ODUyIDM3LjExNDcgMjQuNTY2OSAzNy4zNjY3IDI0LjM4OTYgMzcuNTc0N0MyNC4yOTU1IDM3LjY4MTYgMjQuMTg2NiAzNy43NzQ2IDI0LjA2NjQgMzcuODUwN0MyMy45NDcyIDM3LjkyNTkgMjMuODE5NSAzNy45ODY2IDIzLjY4NiAzOC4wMzE1QzIzLjQxNTMgMzguMTI0NCAyMy4xMjcyIDM4LjE1NDQgMjIuODQzMyAzOC4xMTkyQzIyLjQ0NDcgMzguMDYyMSAyMi4wNjg4IDM3Ljg5ODMgMjEuNzU1IDM3LjY0NUMyMS42OTcgMzcuNTk5IDIxLjY0MTQgMzcuNTUwOCAyMS41ODc1IDM3LjUwMDhDMjEuMzc0IDM3LjMxNTggMjEuMTgwMiAzNy4xMDg3IDIxLjAwOTMgMzYuODgyOUMyMC45MzI2IDM2Ljc5ODEgMjAuODU0NyAzNi43MTQ0IDIwLjc3MzMgMzYuNjM0QzIwLjM4OTEgMzYuMjI5IDE5LjkzNTggMzUuODk2NSAxOS40MzQ5IDM1LjY1MjJDMTkuMDg5NSAzNS40OTk4IDE4LjcyOCAzNS4zODcyIDE4LjM1NzQgMzUuMzE2NkMxOC4xNzA5IDM1LjI3NzYgMTcuOTgyNCAzNS4yNDk1IDE3Ljc5MzggMzUuMjI1N0MxNy43NzMzIDM1LjIyMzYgMTcuNzM0IDM1LjIxNjcgMTcuNjg1IDM1LjIwODJMMTcuNjg0NyAzNS4yMDgxTDE3LjY4NDYgMzUuMjA4MUwxNy42ODQ2IDM1LjIwODFMMTcuNjg0NiAzNS4yMDgxTDE3LjY4NDUgMzUuMjA4MUMxNy41MjcxIDM1LjE4MDYgMTcuMjcxMSAzNS4xMzYgMTcuMjI1OSAzNS4xNzhDMTcuODA4OCAzNC42MzkgMTguNDQ0MSAzNC4xNjAzIDE5LjEyMjQgMzMuNzQ5MUMxOS44MTg5IDMzLjMzNCAyMC41NjY3IDMzLjAxMjYgMjEuMzQ2NiAzMi43OTMzQzIyLjE1NTEgMzIuNTY0NyAyMy4wMDA5IDMyLjQ5OTUgMjMuODM0NyAzMi42MDE3QzI0LjI2MzkgMzIuNjUzNSAyNC42ODQzIDMyLjc2MjcgMjUuMDg0NyAzMi45MjY0QzI1LjUwNDIgMzMuMDk0OCAyNS44OTE0IDMzLjMzNTEgMjYuMjI5MSAzMy42MzY2QzI2LjU2MzIgMzMuOTUyOCAyNi44MzMzIDM0LjMzMTEgMjcuMDI0MyAzNC43NTA0QzI3LjE5NjggMzUuMTQzMSAyNy4zMjU0IDM1LjU1MzcgMjcuNDA3OSAzNS45NzQ3QzI3LjQ1MjEgMzYuMjAxMyAyNy40ODU1IDM2LjQ1MDIgMjcuNTE5OSAzNi43MDc5TDI3LjUyIDM2LjcwNzlMMjcuNTIgMzYuNzA4TDI3LjUyIDM2LjcwOEMyNy42NzcxIDM3Ljg4MjMgMjcuODU4NSAzOS4yMzcyIDI5LjIwNDMgMzkuNDczM0MyOS4yODk4IDM5LjQ5IDI5LjM3NjEgMzkuNTAyMyAyOS40NjI5IDM5LjUxMDJMMjkuNzMxMiAzOS41MTY2QzI5LjkxNTcgMzkuNTAzNCAzMC4wOTkgMzkuNDc3IDMwLjI3OTcgMzkuNDM3NkMzMC42NTQxIDM5LjM0OTIgMzEuMDE5IDM5LjIyNDEgMzEuMzY5MSAzOS4wNjQyTDMxLjMxODcgMzkuMTA0NlpNMjEuMDgwMSAzNi45NjE5QzIxLjExMjMgMzYuOTk4OSAyMS4xNDQ5IDM3LjAzNTUgMjEuMTc3OSAzNy4wNzE4QzIxLjE2NDQgMzcuMDU2NyAyMS4xNTEgMzcuMDQxNSAyMS4xMzc1IDM3LjAyNjRMMjEuMTM3NSAzNy4wMjY0TDIxLjEzNzUgMzcuMDI2NEwyMS4xMzc1IDM3LjAyNjRDMjEuMTE4NCAzNy4wMDQ5IDIxLjA5OTMgMzYuOTgzNCAyMS4wODAxIDM2Ljk2MTlaIiBmaWxsPSJjdXJyZW50Q29sb3IiPjwvcGF0aD48L3N2Zz4K",protocol:"uniswap_v3",slippage:!0,fees:[100,500,3e3,1e4],blockchains:["ethereum","bsc","polygon","optimism","arbitrum"],ethereum:{router:{address:"0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad",api:uj.ROUTER},factory:{address:"0x1F98431c8aD98523631AE4a59f267346ea31F984",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}},bsc:{router:{address:"0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad",api:uj.ROUTER},factory:{address:"0xdB1d10011AD0Ff90774D0C6Bb92e5C5c8b4461F7",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x78D78E420Da98ad378D7799bE8f4AF69033EB077",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}},polygon:{router:{address:"0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad",api:uj.ROUTER},factory:{address:"0x1F98431c8aD98523631AE4a59f267346ea31F984",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}},optimism:{router:{address:"0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad",api:uj.ROUTER},factory:{address:"0x1F98431c8aD98523631AE4a59f267346ea31F984",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}},arbitrum:{router:{address:"0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad",api:uj.ROUTER},factory:{address:"0x1F98431c8aD98523631AE4a59f267346ea31F984",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}},base:{router:{address:"0x198EF79F1F515F02dFE9e3115eD9fC07183f02fC",api:uj.ROUTER},factory:{address:"0x33128a8fC17869897dcE68Ed026d694621f6FDfD",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}}};var lj=t=>new IL(Object.assign(cj,{scope:t,findPath:t=>uj.findPath({...t,exchange:cj}),pathExists:t=>uj.pathExists({...t,exchange:cj}),getAmounts:t=>uj.getAmounts({...t,exchange:cj}),getPrep:t=>uj.getPrep({...t,exchange:cj}),getTransaction:t=>uj.getTransaction({...t,exchange:cj})}));var hj={findPath:async({blockchain:t,tokenIn:e,tokenOut:n})=>{if(![e,n].includes(Hf[t].currency.address)||![e,n].includes(Hf[t].wrapped.address))return{path:void 0,exchangePath:void 0};let r=[e,n];return{path:r,exchangePath:r}},pathExists:async({blockchain:t,path:e})=>!(!e||2!==e.length)&&(e.includes(Hf[t].currency.address)&&e.includes(Hf[t].wrapped.address)),getAmounts:async({path:t,block:e,tokenIn:n,tokenOut:r,amountOut:i,amountIn:o,amountInMax:a,amountOutMin:s})=>(i?o=a=s=i:o?i=a=s=o:s?o=a=i=s:a&&(i=s=o=a),{amountOut:i,amountIn:o,amountInMax:a,amountOutMin:s}),getTransaction:({exchange:t,blockchain:e,path:n,amountIn:r,amountInMax:i,amountOut:o,amountOutMin:a,amountInInput:s,amountOutInput:u,amountInMaxInput:c,amountOutMinInput:l,account:h})=>{let d={blockchain:e,from:h,to:t[e].router.address,api:t[e].router.api};return n[0]===Hf[e].currency.address&&n[1]===Hf[e].wrapped.address?(d.method="deposit",d.value=r.toString(),d):n[0]===Hf[e].wrapped.address&&n[1]===Hf[e].currency.address?(d.method="withdraw",d.value=0,d.params={wad:r},d):void 0},WETH:[{constant:!0,inputs:[],name:"name",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"guy",type:"address"},{name:"wad",type:"uint256"}],name:"approve",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"src",type:"address"},{name:"dst",type:"address"},{name:"wad",type:"uint256"}],name:"transferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{name:"wad",type:"uint256"}],name:"withdraw",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{name:"",type:"uint8"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"",type:"address"}],name:"balanceOf",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"dst",type:"address"},{name:"wad",type:"uint256"}],name:"transfer",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[],name:"deposit",outputs:[],payable:!0,stateMutability:"payable",type:"function"},{constant:!0,inputs:[{name:"",type:"address"},{name:"",type:"address"}],name:"allowance",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{payable:!0,stateMutability:"payable",type:"fallback"},{anonymous:!1,inputs:[{indexed:!0,name:"src",type:"address"},{indexed:!0,name:"guy",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"src",type:"address"},{indexed:!0,name:"dst",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"dst",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"src",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Withdrawal",type:"event"}]};const dj={name:"wavax",label:"Wrapped Avax",logo:Hf.avalanche.wrapped.logo,protocol:"weth",slippage:!1,blockchains:["avalanche"],avalanche:{router:{address:Hf.avalanche.wrapped.address,api:hj.WETH}}};var fj=t=>new IL(Object.assign(dj,{scope:t,findPath:t=>hj.findPath({...t,exchange:dj}),pathExists:t=>hj.pathExists({...t,exchange:dj}),getAmounts:t=>hj.getAmounts({...t,exchange:dj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:dj})}));const pj={name:"wbnb",label:"Wrapped BNB",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxOTIgMTkyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxOTIgMTkyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuc3Qwe2ZpbGw6I0YwQjkwQjt9Cjwvc3R5bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik01NCw0MS4xbDQyLTI0LjJsNDIsMjQuMmwtMTUuNCw4LjlMOTYsMzQuOUw2OS40LDUwTDU0LDQxLjF6IE0xMzgsNzEuN2wtMTUuNC04LjlMOTYsNzhMNjkuNCw2Mi43bC0xNS40LDl2MTgKCUw4MC42LDEwNXYzMC41bDE1LjQsOWwxNS40LTlWMTA1TDEzOCw4OS43VjcxLjd6IE0xMzgsMTIwLjN2LTE4bC0xNS40LDguOXYxOEMxMjIuNiwxMjkuMSwxMzgsMTIwLjMsMTM4LDEyMC4zeiBNMTQ4LjksMTI2LjQKCWwtMjYuNiwxNS4zdjE4bDQyLTI0LjJWODdsLTE1LjQsOUMxNDguOSw5NiwxNDguOSwxMjYuNCwxNDguOSwxMjYuNHogTTEzMy41LDU2LjRsMTUuNCw5djE4bDE1LjQtOXYtMThsLTE1LjQtOUwxMzMuNSw1Ni40CglMMTMzLjUsNTYuNHogTTgwLjYsMTQ4LjN2MThsMTUuNCw5bDE1LjQtOXYtMThMOTYsMTU3LjFMODAuNiwxNDguM3ogTTU0LDEyMC4zbDE1LjQsOXYtMTguMUw1NCwxMDIuM0w1NCwxMjAuM0w1NCwxMjAuM3oKCSBNODAuNiw1Ni40bDE1LjQsOWwxNS40LTlMOTYsNDcuNUM5Niw0Ny40LDgwLjYsNTYuNCw4MC42LDU2LjRMODAuNiw1Ni40eiBNNDMuMSw2NS40bDE1LjQtOWwtMTUuNC05bC0xNS40LDl2MThsMTUuNCw5TDQzLjEsNjUuNAoJTDQzLjEsNjUuNHogTTQzLjEsOTUuOUwyNy43LDg3djQ4LjVsNDIsMjQuMnYtMThsLTI2LjYtMTUuM1Y5NS45TDQzLjEsOTUuOXoiLz4KPC9zdmc+Cg==",slippage:!1,blockchains:["bsc"],bsc:{router:{address:Hf.bsc.wrapped.address,api:hj.WETH}}};var yj=t=>new IL(Object.assign(pj,{scope:t,findPath:t=>hj.findPath({...t,exchange:pj}),pathExists:t=>hj.pathExists({...t,exchange:pj}),getAmounts:t=>hj.getAmounts({...t,exchange:pj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:pj})}));const mj={name:"weth",label:"Wrapped Ethereum",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIKCSBpZD0iTGF5ZXJfMSIgaW1hZ2UtcmVuZGVyaW5nPSJvcHRpbWl6ZVF1YWxpdHkiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIiB0ZXh0LXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIgoJIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjgzLjUgMjgzLjUiCgkgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjgzLjUgMjgzLjU7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojMzQzNDM0O30KCS5zdDF7ZmlsbDojOEM4QzhDO30KCS5zdDJ7ZmlsbDojM0MzQzNCO30KCS5zdDN7ZmlsbDojMTQxNDE0O30KCS5zdDR7ZmlsbDojMzkzOTM5O30KPC9zdHlsZT4KPGc+Cgk8Zz4KCQk8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTQxLjcsMjUuOWwtMS41LDUuMnYxNTMuM2wxLjUsMS41bDcxLjItNDIuMUwxNDEuNywyNS45eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNS45TDcwLjYsMTQzLjhsNzEuMSw0Mi4xdi03NC40VjI1Ljl6Ii8+CgkJPHBhdGggY2xhc3M9InN0MiIgZD0iTTE0MS43LDE5OS40bC0wLjgsMS4xdjU0LjZsMC44LDIuNWw3MS4yLTEwMC4zTDE0MS43LDE5OS40eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNTcuNnYtNTguMmwtNzEuMS00Mi4xTDE0MS43LDI1Ny42eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDMiIGQ9Ik0xNDEuNywxODUuOWw3MS4yLTQyLjFsLTcxLjItMzIuM1YxODUuOXoiLz4KCQk8cGF0aCBjbGFzcz0ic3Q0IiBkPSJNNzAuNiwxNDMuOGw3MS4xLDQyLjF2LTc0LjRMNzAuNiwxNDMuOHoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",protocol:"weth",slippage:!1,blockchains:["ethereum"],ethereum:{router:{address:Hf.ethereum.wrapped.address,api:hj.WETH}}};var gj=t=>new IL(Object.assign(mj,{scope:t,findPath:t=>hj.findPath({...t,exchange:mj}),pathExists:t=>hj.pathExists({...t,exchange:mj}),getAmounts:t=>hj.getAmounts({...t,exchange:mj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:mj})}));const vj={name:"weth_arbitrum",label:"Wrapped Ethereum",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIKCSBpZD0iTGF5ZXJfMSIgaW1hZ2UtcmVuZGVyaW5nPSJvcHRpbWl6ZVF1YWxpdHkiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIiB0ZXh0LXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIgoJIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjgzLjUgMjgzLjUiCgkgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjgzLjUgMjgzLjU7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojMzQzNDM0O30KCS5zdDF7ZmlsbDojOEM4QzhDO30KCS5zdDJ7ZmlsbDojM0MzQzNCO30KCS5zdDN7ZmlsbDojMTQxNDE0O30KCS5zdDR7ZmlsbDojMzkzOTM5O30KPC9zdHlsZT4KPGc+Cgk8Zz4KCQk8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTQxLjcsMjUuOWwtMS41LDUuMnYxNTMuM2wxLjUsMS41bDcxLjItNDIuMUwxNDEuNywyNS45eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNS45TDcwLjYsMTQzLjhsNzEuMSw0Mi4xdi03NC40VjI1Ljl6Ii8+CgkJPHBhdGggY2xhc3M9InN0MiIgZD0iTTE0MS43LDE5OS40bC0wLjgsMS4xdjU0LjZsMC44LDIuNWw3MS4yLTEwMC4zTDE0MS43LDE5OS40eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNTcuNnYtNTguMmwtNzEuMS00Mi4xTDE0MS43LDI1Ny42eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDMiIGQ9Ik0xNDEuNywxODUuOWw3MS4yLTQyLjFsLTcxLjItMzIuM1YxODUuOXoiLz4KCQk8cGF0aCBjbGFzcz0ic3Q0IiBkPSJNNzAuNiwxNDMuOGw3MS4xLDQyLjF2LTc0LjRMNzAuNiwxNDMuOHoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",protocol:"weth",slippage:!1,blockchains:["arbitrum"],arbitrum:{router:{address:Hf.arbitrum.wrapped.address,api:hj.WETH}}};var wj=t=>new IL(Object.assign(vj,{scope:t,findPath:t=>hj.findPath({...t,exchange:vj}),pathExists:t=>hj.pathExists({...t,exchange:vj}),getAmounts:t=>hj.getAmounts({...t,exchange:vj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:vj})}));const bj={name:"weth_optimism",label:"Wrapped Ethereum",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIKCSBpZD0iTGF5ZXJfMSIgaW1hZ2UtcmVuZGVyaW5nPSJvcHRpbWl6ZVF1YWxpdHkiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIiB0ZXh0LXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIgoJIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjgzLjUgMjgzLjUiCgkgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjgzLjUgMjgzLjU7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojMzQzNDM0O30KCS5zdDF7ZmlsbDojOEM4QzhDO30KCS5zdDJ7ZmlsbDojM0MzQzNCO30KCS5zdDN7ZmlsbDojMTQxNDE0O30KCS5zdDR7ZmlsbDojMzkzOTM5O30KPC9zdHlsZT4KPGc+Cgk8Zz4KCQk8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTQxLjcsMjUuOWwtMS41LDUuMnYxNTMuM2wxLjUsMS41bDcxLjItNDIuMUwxNDEuNywyNS45eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNS45TDcwLjYsMTQzLjhsNzEuMSw0Mi4xdi03NC40VjI1Ljl6Ii8+CgkJPHBhdGggY2xhc3M9InN0MiIgZD0iTTE0MS43LDE5OS40bC0wLjgsMS4xdjU0LjZsMC44LDIuNWw3MS4yLTEwMC4zTDE0MS43LDE5OS40eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNTcuNnYtNTguMmwtNzEuMS00Mi4xTDE0MS43LDI1Ny42eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDMiIGQ9Ik0xNDEuNywxODUuOWw3MS4yLTQyLjFsLTcxLjItMzIuM1YxODUuOXoiLz4KCQk8cGF0aCBjbGFzcz0ic3Q0IiBkPSJNNzAuNiwxNDMuOGw3MS4xLDQyLjF2LTc0LjRMNzAuNiwxNDMuOHoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",protocol:"weth",slippage:!1,blockchains:["optimism"],optimism:{router:{address:Hf.optimism.wrapped.address,api:hj.WETH}}};var Mj=t=>new IL(Object.assign(bj,{scope:t,findPath:t=>hj.findPath({...t,exchange:bj}),pathExists:t=>hj.pathExists({...t,exchange:bj}),getAmounts:t=>hj.getAmounts({...t,exchange:bj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:bj})}));const Aj={name:"weth_base",label:"Wrapped Ethereum",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIKCSBpZD0iTGF5ZXJfMSIgaW1hZ2UtcmVuZGVyaW5nPSJvcHRpbWl6ZVF1YWxpdHkiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIiB0ZXh0LXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIgoJIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjgzLjUgMjgzLjUiCgkgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjgzLjUgMjgzLjU7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojMzQzNDM0O30KCS5zdDF7ZmlsbDojOEM4QzhDO30KCS5zdDJ7ZmlsbDojM0MzQzNCO30KCS5zdDN7ZmlsbDojMTQxNDE0O30KCS5zdDR7ZmlsbDojMzkzOTM5O30KPC9zdHlsZT4KPGc+Cgk8Zz4KCQk8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTQxLjcsMjUuOWwtMS41LDUuMnYxNTMuM2wxLjUsMS41bDcxLjItNDIuMUwxNDEuNywyNS45eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNS45TDcwLjYsMTQzLjhsNzEuMSw0Mi4xdi03NC40VjI1Ljl6Ii8+CgkJPHBhdGggY2xhc3M9InN0MiIgZD0iTTE0MS43LDE5OS40bC0wLjgsMS4xdjU0LjZsMC44LDIuNWw3MS4yLTEwMC4zTDE0MS43LDE5OS40eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNTcuNnYtNTguMmwtNzEuMS00Mi4xTDE0MS43LDI1Ny42eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDMiIGQ9Ik0xNDEuNywxODUuOWw3MS4yLTQyLjFsLTcxLjItMzIuM1YxODUuOXoiLz4KCQk8cGF0aCBjbGFzcz0ic3Q0IiBkPSJNNzAuNiwxNDMuOGw3MS4xLDQyLjF2LTc0LjRMNzAuNiwxNDMuOHoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",protocol:"weth",slippage:!1,blockchains:["base"],base:{router:{address:Hf.base.wrapped.address,api:hj.WETH}}};var Ij=t=>new IL(Object.assign(Aj,{scope:t,findPath:t=>hj.findPath({...t,exchange:Aj}),pathExists:t=>hj.pathExists({...t,exchange:Aj}),getAmounts:t=>hj.getAmounts({...t,exchange:Aj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:Aj})}));const Nj={name:"wftm",label:"Wrapped Fantom",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgMTkyIDE5MiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTkyIDE5MjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8ZyBpZD0iY2lyY2xlIj4KCTxnIGlkPSJGYW50b20tY2lyY2xlIj4KCQk8Y2lyY2xlIGlkPSJPdmFsIiBmaWxsUnVsZT0iZXZlbm9kZCIgY2xpcFJ1bGU9ImV2ZW5vZGQiIGZpbGw9IiMxOTY5RkYiIGNsYXNzPSJzdDAiIGN4PSI5NiIgY3k9Ijk2IiByPSI4MC40Ii8+CgkJPHBhdGggaWQ9IlNoYXBlIiBmaWxsPSIjRkZGRkZGIiBkPSJNOTEuMSw0MS4yYzIuNy0xLjQsNi44LTEuNCw5LjUsMGwyNy42LDE0LjZjMS42LDAuOSwyLjUsMi4xLDIuNywzLjVoMHY3My4zCgkJCWMwLDEuNC0wLjksMi45LTIuNywzLjhsLTI3LjYsMTQuNmMtMi43LDEuNC02LjgsMS40LTkuNSwwbC0yNy42LTE0LjZjLTEuOC0wLjktMi42LTIuNC0yLjctMy44YzAtMC4xLDAtMC4zLDAtMC40bDAtNzIuNAoJCQljMC0wLjEsMC0wLjIsMC0wLjNsMC0wLjJoMGMwLjEtMS4zLDEtMi42LDIuNi0zLjVMOTEuMSw0MS4yeiBNMTI2LjYsOTkuOWwtMjYsMTMuN2MtMi43LDEuNC02LjgsMS40LTkuNSwwTDY1LjIsMTAwdjMyLjMKCQkJbDI1LjksMTMuNmMxLjUsMC44LDMuMSwxLjYsNC43LDEuN2wwLjEsMGMxLjUsMCwzLTAuOCw0LjYtMS41bDI2LjItMTMuOVY5OS45eiBNNTYuNSwxMzAuOWMwLDIuOCwwLjMsNC43LDEsNgoJCQljMC41LDEuMSwxLjMsMS45LDIuOCwyLjlsMC4xLDAuMWMwLjMsMC4yLDAuNywwLjQsMS4xLDAuN2wwLjUsMC4zbDEuNiwwLjlsLTIuMiwzLjdsLTEuNy0xLjFsLTAuMy0wLjJjLTAuNS0wLjMtMC45LTAuNi0xLjMtMC44CgkJCWMtNC4yLTIuOC01LjctNS45LTUuNy0xMi4zbDAtMC4ySDU2LjV6IE05My44LDgwLjVjLTAuMiwwLjEtMC40LDAuMS0wLjYsMC4yTDY1LjYsOTUuM2MwLDAtMC4xLDAtMC4xLDBsMCwwbDAsMGwwLjEsMGwyNy42LDE0LjYKCQkJYzAuMiwwLjEsMC40LDAuMiwwLjYsMC4yVjgwLjV6IE05OC4yLDgwLjV2MjkuOGMwLjItMC4xLDAuNC0wLjEsMC42LTAuMmwyNy42LTE0LjZjMCwwLDAuMSwwLDAuMSwwbDAsMGwwLDBsLTAuMSwwTDk4LjgsODAuNwoJCQlDOTguNiw4MC42LDk4LjQsODAuNSw5OC4yLDgwLjV6IE0xMjYuNiw2NC40bC0yNC44LDEzbDI0LjgsMTNWNjQuNHogTTY1LjIsNjQuNHYyNi4xbDI0LjgtMTNMNjUuMiw2NC40eiBNOTguNyw0NS4xCgkJCWMtMS40LTAuOC00LTAuOC01LjUsMEw2NS42LDU5LjdjMCwwLTAuMSwwLTAuMSwwbDAsMGwwLDBsMC4xLDBsMjcuNiwxNC42YzEuNCwwLjgsNCwwLjgsNS41LDBsMjcuNi0xNC42YzAsMCwwLjEsMCwwLjEsMGwwLDBsMCwwCgkJCWwtMC4xLDBMOTguNyw0NS4xeiBNMTMwLjcsNDYuNWwxLjcsMS4xbDAuMywwLjJjMC41LDAuMywwLjksMC42LDEuMywwLjhjNC4yLDIuOCw1LjcsNS45LDUuNywxMi4zbDAsMC4yaC00LjNjMC0yLjgtMC4zLTQuNy0xLTYKCQkJYy0wLjUtMS4xLTEuMy0xLjktMi44LTIuOWwtMC4xLTAuMWMtMC4zLTAuMi0wLjctMC40LTEuMS0wLjdsLTAuNS0wLjNsLTEuNi0wLjlMMTMwLjcsNDYuNXoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",protocol:"weth",slippage:!1,blockchains:["fantom"],fantom:{router:{address:Hf.fantom.wrapped.address,api:hj.WETH}}};var Ej=t=>new IL(Object.assign(Nj,{scope:t,findPath:t=>hj.findPath({...t,exchange:Nj}),pathExists:t=>hj.pathExists({...t,exchange:Nj}),getAmounts:t=>hj.getAmounts({...t,exchange:Nj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:Nj})}));const xj={name:"wmatic",label:"Wrapped MATIC",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA0NS40IDQ1LjQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ1LjQgNDUuNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiM4MjQ3RTU7fQo8L3N0eWxlPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMzEuOSwxNi42Yy0wLjctMC40LTEuNi0wLjQtMi4yLDBsLTUuMywzLjFsLTMuNSwybC01LjEsMy4xYy0wLjcsMC40LTEuNiwwLjQtMi4yLDBsLTQtMi40CgljLTAuNi0wLjQtMS4xLTEuMS0xLjEtMnYtNC42YzAtMC45LDAuNS0xLjYsMS4xLTJsNC0yLjNjMC43LTAuNCwxLjUtMC40LDIuMiwwbDQsMi40YzAuNywwLjQsMS4xLDEuMSwxLjEsMnYzLjFsMy41LTIuMXYtMy4yCgljMC0wLjktMC40LTEuNi0xLjEtMmwtNy41LTQuNGMtMC43LTAuNC0xLjUtMC40LTIuMiwwTDYsMTEuN2MtMC43LDAuNC0xLjEsMS4xLTEuMSwxLjh2OC43YzAsMC45LDAuNCwxLjYsMS4xLDJsNy42LDQuNAoJYzAuNywwLjQsMS41LDAuNCwyLjIsMGw1LjEtMi45bDMuNS0yLjFsNS4xLTIuOWMwLjctMC40LDEuNi0wLjQsMi4yLDBsNCwyLjNjMC43LDAuNCwxLjEsMS4xLDEuMSwydjQuNmMwLDAuOS0wLjQsMS42LTEuMSwyCglsLTMuOSwyLjNjLTAuNywwLjQtMS41LDAuNC0yLjIsMGwtNC0yLjNjLTAuNy0wLjQtMS4xLTEuMS0xLjEtMnYtMi45TDIxLDI4Ljd2My4xYzAsMC45LDAuNCwxLjYsMS4xLDJsNy41LDQuNAoJYzAuNywwLjQsMS41LDAuNCwyLjIsMGw3LjUtNC40YzAuNy0wLjQsMS4xLTEuMSwxLjEtMlYyM2MwLTAuOS0wLjQtMS42LTEuMS0yQzM5LjIsMjEsMzEuOSwxNi42LDMxLjksMTYuNnoiLz4KPC9zdmc+Cg==",protocol:"weth",slippage:!1,blockchains:["polygon"],polygon:{router:{address:Hf.polygon.wrapped.address,api:hj.WETH}}};var kj=t=>new IL(Object.assign(xj,{scope:t,findPath:t=>hj.findPath({...t,exchange:xj}),pathExists:t=>hj.pathExists({...t,exchange:xj}),getAmounts:t=>hj.getAmounts({...t,exchange:xj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:xj})}));const Tj={name:"wxdai",label:"Wrapped XDAI",logo:Hf.gnosis.wrapped.logo,protocol:"weth",slippage:!1,blockchains:["gnosis"],gnosis:{router:{address:Hf.gnosis.wrapped.address,api:hj.WETH}}};var Lj=t=>new IL(Object.assign(Tj,{scope:t,findPath:t=>hj.findPath({...t,exchange:Tj}),pathExists:t=>hj.pathExists({...t,exchange:Tj}),getAmounts:t=>hj.getAmounts({...t,exchange:Tj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:Tj})}));const Sj=[TS(),lj(),BS(),KS(),SS(),JS(),US(),YS(),DL(),gj(),Mj(),Ij(),wj(),yj(),kj(),Ej(),fj(),Lj()];Sj.forEach((t=>{Sj[t.name]=t})),Sj.ethereum=[lj("ethereum"),KS("ethereum"),gj("ethereum")],Sj.ethereum.forEach((t=>{Sj.ethereum[t.name]=t})),Sj.bsc=[BS("bsc"),lj("bsc"),SS("bsc"),yj("bsc")],Sj.bsc.forEach((t=>{Sj.bsc[t.name]=t})),Sj.polygon=[lj("polygon"),US("polygon"),kj("polygon")],Sj.polygon.forEach((t=>{Sj.polygon[t.name]=t})),Sj.solana=[TS("solana")],Sj.solana.forEach((t=>{Sj.solana[t.name]=t})),Sj.optimism=[lj("optimism"),Mj("optimism")],Sj.optimism.forEach((t=>{Sj.optimism[t.name]=t})),Sj.base=[lj("base"),Ij("base")],Sj.base.forEach((t=>{Sj.base[t.name]=t})),Sj.arbitrum=[lj("arbitrum"),wj("arbitrum")],Sj.arbitrum.forEach((t=>{Sj.arbitrum[t.name]=t})),Sj.fantom=[YS("fantom"),Ej("fantom")],Sj.fantom.forEach((t=>{Sj.fantom[t.name]=t})),Sj.avalanche=[JS("avalanche"),fj("avalanche")],Sj.avalanche.forEach((t=>{Sj.avalanche[t.name]=t})),Sj.gnosis=[DL("gnosis"),Lj("gnosis")],Sj.gnosis.forEach((t=>{Sj.gnosis[t.name]=t}));Sj.route=({blockchain:t,tokenIn:e,tokenOut:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a})=>Promise.all(Sj[t].map((t=>t.route({tokenIn:e,tokenOut:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a})))).then((t=>t.filter(Boolean).sort(((t,e)=>(r||o?BigInt(t.amountOut)<BigInt(e.amountOut):BigInt(t.amountIn)>BigInt(e.amountIn))?1:(r||o?BigInt(t.amountOut)>BigInt(e.amountOut):BigInt(t.amountIn)<BigInt(e.amountIn))?-1:0))));var jj={solana:{address:"DePayRG7ZySPWzeK9Kvq7aPeif7sdbBZNh6DHcvNj7F7",ammProgram:"whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc",alt:"EYGgx5fYCZtLN2pvnR4Bhn5KpMffKwyHCms4VhjSvF2K",api:{createPaymentsAccount:{anchorDiscriminator:new rf("8445995362644372894"),layout:pf([vf("anchorDiscriminator")])},createEscrowSolAccount:{anchorDiscriminator:new rf("2482112285991870004"),layout:pf([vf("anchorDiscriminator")])},createEscrowTokenAccount:{anchorDiscriminator:new rf("16156440424245087"),layout:pf([vf("anchorDiscriminator")])},routeSol:{anchorDiscriminator:new rf("6497164560834983274"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])},routeToken:{anchorDiscriminator:new rf("13483873682232752277"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])},routeOrcaSwap:{anchorDiscriminator:new rf("9797248061404332986"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("amountIn"),yf("sqrtPriceLimit"),af("amountSpecifiedIsInput"),af("aToB"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])},routeOrcaSwapSolOut:{anchorDiscriminator:new rf("13662217913752830165"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("amountIn"),yf("sqrtPriceLimit"),af("amountSpecifiedIsInput"),af("aToB"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])},routeOrcaTwoHopSwap:{anchorDiscriminator:new rf("15695720599845325801"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("amountIn"),af("amountSpecifiedIsInput"),af("aToBOne"),af("aToBTwo"),yf("sqrtPriceLimitOne"),yf("sqrtPriceLimitTwo"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])},routeOrcaTwoHopSwapSolOut:{anchorDiscriminator:new rf("15074061855608091530"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("amountIn"),af("amountSpecifiedIsInput"),af("aToBOne"),af("aToBTwo"),yf("sqrtPriceLimitOne"),yf("sqrtPriceLimitTwo"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])}}}};let Dj,Cj=()=>Dj||(Dj="object"==typeof r?r:window,Dj);const Oj=()=>(void 0===Cj()._Web3ClientConfiguration&&(Cj()._Web3ClientConfiguration={}),Cj()._Web3ClientConfiguration);function zj(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}class Pj extends ZA{constructor(t,e,n,r){super(t),this._network=e,this._endpoint=t,this._endpoints=n,this._failover=r,this._pendingBatch=[]}detectNetwork(){return Promise.resolve(Hf.findByName(this._network).id)}requestChunk(t,e,n){try{const r=t.map((t=>t.request));return $M(e,JSON.stringify(r)).then((e=>{t.forEach(((t,n)=>{const r=e[n];if(zj([r,"optionalAccess",t=>t.error])){const e=new Error(r.error.message);e.code=r.error.code,e.data=r.error.data,t.reject(e)}else zj([r,"optionalAccess",t=>t.result])?t.resolve(r.result):t.reject()}))})).catch((e=>{if(n<3&&e&&"SERVER_ERROR"==e.code){const e=this._endpoints.indexOf(this._endpoint)+1;this._failover(),this._endpoint=e>=this._endpoints.length?this._endpoints[0]:this._endpoints[e],this.requestChunk(t,this._endpoint,n+1)}else t.forEach((t=>{t.reject(e)}))}))}catch(e){t.forEach((t=>{t.reject()}))}}send(t,e){const n={method:t,params:e,id:this._nextId++,jsonrpc:"2.0"};null==this._pendingBatch&&(this._pendingBatch=[]);const r={request:n,resolve:null,reject:null},i=new Promise(((t,e)=>{r.resolve=t,r.reject=e}));return this._pendingBatch.push(r),this._pendingBatchAggregator||(this._pendingBatchAggregator=setTimeout((()=>{const t=this._pendingBatch;this._pendingBatch=[],this._pendingBatchAggregator=null;const e=[];for(let n=0;n<Math.ceil(t.length/99);n++)e[n]=t.slice(99*n,99*(n+1));e.forEach((t=>(t.map((t=>t.request)),this.requestChunk(t,this._endpoint,1))))}),Oj().batchInterval||10)),i}}const _j=()=>(null==Cj()._Web3ClientProviders&&(Cj()._Web3ClientProviders={}),Cj()._Web3ClientProviders),Bj=(t,e)=>{void 0===_j()[t]&&(_j()[t]=[]);const n=_j()[t].indexOf(e);n>-1&&_j()[t].splice(n,1),_j()[t].unshift(e)},Rj=async(t,e,n=!0)=>{let r;_j()[t]=e.map(((r,i)=>new Pj(r,t,e,(()=>{1===_j()[t].length?Rj(t,e,n):_j()[t].splice(i,1)}))));let i=Cj();if(null==i.fetch||void 0!==k&&k.env&&"test"==k.env.NODE_ENV||void 0!==i.cy||!1===n)r=_j()[t][0];else{let n=await Promise.all(e.map((t=>new Promise((async e=>{let n=(new Date).getTime();setTimeout((()=>e(900)),900);if(!(await fetch(t,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},referrer:"",referrerPolicy:"no-referrer",body:JSON.stringify({method:"net_version",id:1,jsonrpc:"2.0"})})).ok)return e(999);let r=(new Date).getTime();e(r-n)})))));const i=Math.min(...n),o=n.indexOf(i);r=_j()[t][o]}Bj(t,r)};var Uj=async t=>{let e=_j();if(e&&e[t])return e[t][0];let n=Cj();return n._Web3ClientGetProviderPromise&&n._Web3ClientGetProviderPromise[t]||(n._Web3ClientGetProviderPromise||(n._Web3ClientGetProviderPromise={}),n._Web3ClientGetProviderPromise[t]=new Promise((async e=>{await Rj(t,Hf[t].endpoints),e(Cj()._Web3ClientProviders[t][0])}))),await n._Web3ClientGetProviderPromise[t]},Qj=async t=>{let e=_j();if(e&&e[t])return e[t];let n=Cj();return n._Web3ClientGetProvidersPromise&&n._Web3ClientGetProvidersPromise[t]||(n._Web3ClientGetProvidersPromise||(n._Web3ClientGetProvidersPromise={}),n._Web3ClientGetProvidersPromise[t]=new Promise((async e=>{await Rj(t,Hf[t].endpoints),e(Cj()._Web3ClientProviders[t])}))),await n._Web3ClientGetProvidersPromise[t]};class Yj extends ql{constructor(t,e,n,r){super(t),this._provider=new ql(t),this._network=e,this._endpoint=t,this._endpoints=n,this._failover=r,this._pendingBatch=[],this._rpcRequest=this._rpcRequestReplacement.bind(this)}handleError(t,e,n){if(e<3&&t&&["Failed to fetch","limit reached","504","503","502","500","429","426","422","413","409","408","406","405","404","403","402","401","400"].some((e=>t.toString().match(e)))){const t=this._endpoints.indexOf(this._endpoint)+1;this._endpoint=t>=this._endpoints.length?this._endpoints[0]:this._endpoints[t],this._provider=new ql(this._endpoint),this.requestChunk(n,e+1)}else n.forEach((e=>{e.reject(t)}))}batchRequest(t,e){return new Promise(((e,n)=>{0===t.length&&e([]);const r=t.map((t=>this._rpcClient.request(t.methodName,t.args)));fetch(this._endpoint,{method:"POST",body:JSON.stringify(r),headers:{"Content-Type":"application/json"}}).then((t=>{t.ok?t.json().then((t=>{e(t)})).catch(n):n(`${t.status} ${t.text}`)})).catch(n)}))}requestChunk(t,e){const n=t.map((t=>t.request));try{return this.batchRequest(n,e).then((e=>{t.forEach(((t,n)=>{const r=e[n];if(function(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}([r,"optionalAccess",t=>t.error])){const e=new Error(r.error.message);e.code=r.error.code,e.data=r.error.data,t.reject(e)}else r?t.resolve(r):t.reject()}))})).catch((n=>this.handleError(n,e,t)))}catch(n){return this.handleError(n,e,t)}}_rpcRequestReplacement(t,e){const n={methodName:t,args:e};null==this._pendingBatch&&(this._pendingBatch=[]);const r={request:n,resolve:null,reject:null},i=new Promise(((t,e)=>{r.resolve=t,r.reject=e}));return this._pendingBatch.push(r),this._pendingBatchAggregator||(this._pendingBatchAggregator=setTimeout((()=>{const t=this._pendingBatch;this._pendingBatch=[],this._pendingBatchAggregator=null;const e=[];for(let n=0;n<Math.ceil(t.length/99);n++)e[n]=t.slice(99*n,99*(n+1));e.forEach((t=>(t.map((t=>t.request)),this.requestChunk(t,1))))}),Oj().batchInterval||10)),i}}const Wj=()=>(null==Cj()._Web3ClientProviders&&(Cj()._Web3ClientProviders={}),Cj()._Web3ClientProviders),Fj=(t,e)=>{void 0===Wj()[t]&&(Wj()[t]=[]);const n=Wj()[t].indexOf(e);n>-1&&Wj()[t].splice(n,1),Wj()[t].unshift(e)},Vj=async(t,e,n=!0)=>{let r;Wj()[t]=e.map(((r,i)=>new Yj(r,t,e,(()=>{1===Wj()[t].length?Vj(t,e,n):Wj()[t].splice(i,1)}))));let i=Cj();if(null==i.fetch||void 0!==k&&k.env&&"test"==k.env.NODE_ENV||void 0!==i.cy||!1===n)r=Wj()[t][0];else{let n=await Promise.all(e.map((t=>new Promise((async e=>{let n=(new Date).getTime();setTimeout((()=>e(900)),900);if(!(await fetch(t,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},referrer:"",referrerPolicy:"no-referrer",body:JSON.stringify({method:"getIdentity",id:1,jsonrpc:"2.0"})})).ok)return e(999);let r=(new Date).getTime();e(r-n)})))));const i=Math.min(...n),o=n.indexOf(i);r=Wj()[t][o]}Fj(t,r)};var Hj=async t=>{let e=Wj();if(e&&e[t])return e[t][0];let n=Cj();return n._Web3ClientGetProviderPromise&&n._Web3ClientGetProviderPromise[t]||(n._Web3ClientGetProviderPromise||(n._Web3ClientGetProviderPromise={}),n._Web3ClientGetProviderPromise[t]=new Promise((async e=>{await Vj(t,Hf[t].endpoints),e(Cj()._Web3ClientProviders[t][0])}))),await n._Web3ClientGetProviderPromise[t]},Gj=async t=>{let e=Wj();if(e&&e[t])return e[t];let n=Cj();return n._Web3ClientGetProvidersPromise&&n._Web3ClientGetProvidersPromise[t]||(n._Web3ClientGetProvidersPromise||(n._Web3ClientGetProvidersPromise={}),n._Web3ClientGetProvidersPromise[t]=new Promise((async e=>{await Vj(t,Hf[t].endpoints),e(Cj()._Web3ClientProviders[t])}))),await n._Web3ClientGetProvidersPromise[t]};let qj=["ethereum","bsc","polygon","solana","fantom","arbitrum","avalanche","gnosis","optimism","base"];qj.evm=["ethereum","bsc","polygon","fantom","arbitrum","avalanche","gnosis","optimism","base"],qj.solana=["solana"];let Zj=()=>(null==Cj()._Web3ClientCacheStore&&(Cj()._Web3ClientCacheStore={}),Cj()._Web3ClientCacheStore),Jj=()=>(null==Cj()._Web3ClientPromiseStore&&(Cj()._Web3ClientPromiseStore={}),Cj()._Web3ClientPromiseStore),Xj=function({key:t}){Jj()[t]=void 0},Kj=function({call:t,key:e,expires:n=0}){return new Promise(((r,i)=>{let o,a=function({key:t}){return Jj()[t]}({key:e=JSON.stringify(e)});if(a)return a.then(r).catch(i);(function({key:t,promise:e}){return Jj()[t]=e,e})({key:e,promise:new Promise(((a,s)=>0===n?t().then((t=>{r(t),a(t)})).catch((t=>{i(t),s(t)})):(o=function({key:t,expires:e}){let n=Zj()[t];if(function(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}([n,"optionalAccess",t=>t.expiresAt])>Date.now())return n.value}({key:e,expires:n}),o?(r(o),a(o),o):void t().then((t=>{t&&function({key:t,value:e,expires:n}){Zj()[t]={expiresAt:Date.now()+n,value:e}}({key:e,value:t,expires:n}),r(t),a(t)})).catch((t=>{i(t),s(t)})))))}).then((()=>{Xj({key:e})})).catch((()=>{Xj({key:e})}))}))};const $j=async t=>{if(qj.evm.includes(t))return await Uj(t);if(qj.solana.includes(t))return await Hj(t);throw"Unknown blockchain: "+t};const tD=({address:t,api:e,method:n,params:r,provider:i,block:o})=>{const a=new PM(t,e,i),s=(({contract:t,method:e,params:n})=>t.interface.fragments.find((t=>t.name==e)).inputs.map(((t,e)=>Array.isArray(n)?n[e]:n[t.name])))({contract:a,method:n,params:r}),u=a.interface.fragments.find((t=>t.name===n));return void 0===a[n]&&(n=`${n}(${u.inputs.map((t=>t.type)).join(",")})`),u&&"nonpayable"===u.stateMutability?a.callStatic[n](...s,{blockTag:o}):a[n](...s,{blockTag:o})},eD=({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:a})=>n?tD({address:e,api:n,method:r,params:i,provider:a,block:o}):"latestBlockNumber"===r?a.getBlockNumber():"balance"===r?(({address:t,provider:e})=>e.getBalance(t))({address:e,provider:a}):"transactionCount"===r?(({address:t,provider:e})=>e.getTransactionCount(t))({address:e,provider:a}):void 0;const nD=async({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:a,providers:s})=>{try{if(null==r||"getAccountInfo"===r)return null==n&&(n=of),await(async({address:t,api:e,method:n,params:r,provider:i,block:o})=>{const a=await i.getAccountInfo(new Xs(t));if(a&&a.data)return e.decode(a.data)})({address:e,api:n,method:r,params:i,provider:a,block:o});if("getProgramAccounts"===r)return await a.getProgramAccounts(new Xs(e),i).then((t=>n?t.map((t=>(t.data=n.decode(t.account.data),t))):t));if("getTokenAccountBalance"===r)return await a.getTokenAccountBalance(new Xs(e));if("latestBlockNumber"===r)return await a.getSlot(i||void 0);if("balance"===r)return await(({address:t,provider:e})=>e.getBalance(new Xs(t)))({address:e,provider:a})}catch(u){if(s&&u&&["Failed to fetch","limit reached","504","503","502","500","429","426","422","413","409","408","406","405","404","403","402","401","400"].some((t=>u.toString().match(t)))){let u=s[s.indexOf(a)+1]||s[0];return nD({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:u,providers:s})}throw u}};const rD=async function(t,e){const{blockchain:n,address:r,method:i}=(t=>{if("object"==typeof t)return t;let e=t.match(/(?<blockchain>\w+):\/\/(?<part1>[\w\d]+)(\/(?<part2>[\w\d]+)*)?/);return null==e.groups.part2?e.groups.part1.match(/\d/)?{blockchain:e.groups.blockchain,address:e.groups.part1}:{blockchain:e.groups.blockchain,method:e.groups.part1}:{blockchain:e.groups.blockchain,address:e.groups.part1,method:e.groups.part2}})(t),{api:o,params:a,cache:s,block:u,timeout:c,strategy:l,cacheKey:h}=("object"==typeof t?t:e)||{};return await Kj({expires:s||0,key:h||[n,r,i,a,u],call:async()=>{if(qj.evm.includes(n))return await(async({blockchain:t,address:e,api:n,method:r,params:i,block:o,timeout:a,strategy:s})=>{if(s=s||Oj().strategy||"failover",a=a||Oj().timeout||void 0,"fastest"===s){const s=await Qj(t);let u=[];const c=s.map((a=>new Promise((s=>{u.push(eD({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:a}).then(s))})))),l=new Promise(((t,e)=>setTimeout((()=>{e(new Error("Web3ClientTimeout"))}),a||1e4)));return u=Promise.all(u.map((t=>new Promise((e=>{t.catch(e)}))))).then((()=>{})),Promise.race([...c,l,u])}{const s=await Uj(t),u=eD({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:s});return a?(a=new Promise(((t,e)=>setTimeout((()=>{e(new Error("Web3ClientTimeout"))}),a))),Promise.race([u,a])):u}})({blockchain:n,address:r,api:o,method:i,params:a,block:u,strategy:l,timeout:c});if(qj.solana.includes(n))return await(async({blockchain:t,address:e,api:n,method:r,params:i,block:o,timeout:a,strategy:s})=>{s=s||Oj().strategy||"failover",a=a||Oj().timeout||void 0;const u=await Gj(t);if("fastest"===s){let s=[];const c=u.map((a=>new Promise((u=>{s.push(nD({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:a}).then(u))})))),l=new Promise(((t,e)=>setTimeout((()=>{e(new Error("Web3ClientTimeout"))}),a||1e4)));return s=Promise.all(s.map((t=>new Promise((e=>{t.catch(e)}))))).then((()=>{})),Promise.race([...c,l,s])}{const s=await Hj(t),c=nD({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:s,providers:u});return a?(a=new Promise(((t,e)=>setTimeout((()=>{e(new Error("Web3ClientTimeout"))}),a))),Promise.race([c,a])):c}})({blockchain:n,address:r,api:o,method:i,params:a,block:u,strategy:l,timeout:c});throw"Unknown blockchain: "+n}})},iD=async({wSolSenderAccountKeypair:t,paymentRoute:e})=>{if(!t)return;const n=e.fromToken.address===Hf.solana.currency.address?new rf(e.fromAmount):new rf("0"),r=await $j("solana"),i=new rf(await r.getMinimumBalanceForRentExemption(Tk.solana.TOKEN_LAYOUT.span)),o=e.fromAddress,a=n.add(i);return[Wu.createAccount({fromPubkey:new Xs(o),newAccountPubkey:t.publicKey,programId:new Xs(Tk.solana.TOKEN_PROGRAM),space:Tk.solana.TOKEN_LAYOUT.span,lamports:a}),Tk.solana.initializeAccountInstruction({account:t.publicKey.toString(),token:Hf.solana.wrapped.address,owner:o})]},oD=async({wSolEscrowAccountKeypair:t,paymentRoute:e})=>{if(!t)return;const n=await $j("solana"),r=new rf(await n.getMinimumBalanceForRentExemption(Tk.solana.TOKEN_LAYOUT.span)),i=await vD();return[Wu.createAccount({fromPubkey:new Xs(e.fromAddress),newAccountPubkey:t.publicKey,programId:new Xs(Tk.solana.TOKEN_PROGRAM),space:Tk.solana.TOKEN_LAYOUT.span,lamports:r}),Tk.solana.initializeAccountInstruction({account:t.publicKey.toString(),token:Hf.solana.wrapped.address,owner:i.toString()})]},aD=({paymentRoute:t})=>{let e=[...t.exchangeRoutes[0].path];return e.indexOf(Hf.solana.currency.address)>-1&&e.splice(e.indexOf(Hf.solana.currency.address),1),e.indexOf(t.fromToken.address)>-1&&e.splice(e.indexOf(t.fromToken.address),1),e.indexOf(t.toToken.address)>-1&&e.splice(e.indexOf(t.toToken.address),1),2===e.length&&e[0]===Hf.solana.wrapped.address?e[1]:e[0]},sD=async({paymentRoute:t})=>await Tk.solana.findProgramAddress({token:aD({paymentRoute:t}),owner:t.fromAddress}),uD=async({paymentRoute:t})=>{if(0===t.exchangeRoutes.length||AD(t.exchangeRoutes[0].path).length<=2)return;return await(async({paymentRoute:t})=>await rD({blockchain:"solana",address:await sD({paymentRoute:t}),api:Tk.solana.TOKEN_LAYOUT,cache:1e3}))({paymentRoute:t})?void 0:Tk.solana.createAssociatedTokenAccountInstruction({token:aD({paymentRoute:t}),owner:t.fromAddress,payer:t.fromAddress})},cD=async({wSolSenderAccountKeypair:t,paymentRoute:e})=>{if(t)return Tk.solana.closeAccountInstruction({account:t.publicKey.toString(),owner:e.fromAddress})},lD=async({from:t})=>{let e=[nf.from("payments"),new Xs(t).toBuffer()],[n]=await Xs.findProgramAddress(e,new Xs(jj.solana.address));return n},hD=async({from:t})=>{let e=(await lD({from:t})).toString();return await rD({blockchain:"solana",address:e,api:pf([vf("anchorDiscriminator"),vf("nonce")]),cache:1e3})},dD=async({from:t})=>{if(await hD({from:t}))return;const e=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(t),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t}),isSigner:!1,isWritable:!0}],n=nf.alloc(jj.solana.api.createPaymentsAccount.layout.span);return jj.solana.api.createPaymentsAccount.layout.encode({anchorDiscriminator:jj.solana.api.createPaymentsAccount.anchorDiscriminator},n),new gu({keys:e,programId:new Xs(jj.solana.address),data:n})},fD=async({paymentRoute:t})=>await Tk.solana.findProgramAddress({token:t.fromToken.address,owner:t.fromAddress}),pD=async({paymentRoute:t})=>await Tk.solana.findProgramAddress({token:t.toToken.address,owner:t.toAddress}),yD=async({paymentRoute:t})=>{if(t.toToken.address===Hf.solana.currency.address){const e=await rD({blockchain:"solana",method:"balance",address:t.toAddress}),n=await $j("solana"),r=new rf(await n.getMinimumBalanceForRentExemption(0)),i=new rf(t.toAmount);if(new rf(e).add(i).gt(r))return;return Wu.transfer({fromPubkey:new Xs(t.fromAddress),toPubkey:new Xs(t.toAddress),lamports:r.sub(i)})}{const e=t.toToken.address;if(await(async({paymentRoute:t})=>await Tk.solana.findAccount({token:t.toToken.address,owner:t.toAddress}))({paymentRoute:t}))return;return Tk.solana.createAssociatedTokenAccountInstruction({token:e,owner:t.toAddress,payer:t.fromAddress})}},mD=async({paymentRoute:t})=>await Tk.solana.findProgramAddress({token:t.toToken.address,owner:t.fee.receiver}),gD=async({paymentRoute:t})=>{if(t.fee){if(t.toToken.address===Hf.solana.currency.address){const e=await rD({blockchain:"solana",method:"balance",address:t.fee.receiver}),n=await $j("solana"),r=new rf(await n.getMinimumBalanceForRentExemption(0)),i=new rf(t.feeAmount);if(new rf(e).add(i).gt(r))return;return Wu.transfer({fromPubkey:new Xs(t.fromAddress),toPubkey:new Xs(t.fee.receiver),lamports:r.sub(i)})}{const e=t.toToken.address;if(await(async({paymentRoute:t})=>await Tk.solana.findAccount({token:t.toToken.address,owner:t.fee.receiver}))({paymentRoute:t}))return;return Tk.solana.createAssociatedTokenAccountInstruction({token:e,owner:t.fee.receiver,payer:t.fromAddress})}}},vD=async()=>{let t=[nf.from("escrow_sol")],[e,n]=await Xs.findProgramAddress(t,new Xs(jj.solana.address));return e},wD=async({paymentRoute:t})=>{let e=[nf.from("escrow"),new Xs(t.toToken.address===Hf.solana.currency.address?Hf.solana.wrapped.address:t.toToken.address).toBuffer()],[n,r]=await Xs.findProgramAddress(e,new Xs(jj.solana.address));return n},bD=async({paymentRoute:t})=>{if(0===t.exchangeRoutes.length||t.toToken.address===Hf.solana.currency.address)return;if(await(async({paymentRoute:t})=>await rD({blockchain:"solana",address:(await wD({paymentRoute:t})).toString(),api:Tk.solana.TOKEN_LAYOUT,cache:1e3}))({paymentRoute:t}))return;const e=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:new Xs(t.toToken.address===Hf.solana.currency.address?Hf.solana.wrapped.address:t.toToken.address),isSigner:!1,isWritable:!0},{pubkey:await wD({paymentRoute:t}),isSigner:!1,isWritable:!0}],n=nf.alloc(jj.solana.api.createEscrowTokenAccount.layout.span);return jj.solana.api.createEscrowTokenAccount.layout.encode({anchorDiscriminator:jj.solana.api.createEscrowTokenAccount.anchorDiscriminator},n),new gu({keys:e,programId:new Xs(jj.solana.address),data:n})},MD=async({paymentRoute:t})=>{if(0===t.exchangeRoutes.length||t.toToken.address!=Hf.solana.currency.address)return;if(await(async({paymentRoute:t})=>await rD({blockchain:"solana",address:(await vD()).toString(),api:pf([vf("amount"),hf("owner")]),cache:1e3}))({paymentRoute:t}))return;const e=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await vD(),isSigner:!1,isWritable:!0}],n=nf.alloc(jj.solana.api.createEscrowSolAccount.layout.span);return jj.solana.api.createEscrowSolAccount.layout.encode({anchorDiscriminator:jj.solana.api.createEscrowSolAccount.anchorDiscriminator},n),new gu({keys:e,programId:new Xs(jj.solana.address),data:n})},AD=t=>t.filter((t=>t!==Hf.solana.currency.address)),ID=async({paymentRoute:t,wSolSenderAccountKeypair:e,wSolEscrowAccountKeypair:n,nonce:r,deadline:i})=>{switch((({paymentRoute:t})=>{if(t.fromToken.address===Hf.solana.currency.address&&t.toToken.address===Hf.solana.currency.address)return"routeSol";if(t.fromToken.address!==Hf.solana.currency.address&&t.toToken.address!==Hf.solana.currency.address&&0===t.exchangeRoutes.length)return"routeToken";if(t.exchangeRoutes.length>0&&2===AD(t.exchangeRoutes[0].path).length)return t.toToken.address===Hf.solana.currency.address?"routeOrcaSwapSolOut":"routeOrcaSwap";if(t.exchangeRoutes.length>0&&AD(t.exchangeRoutes[0].path).length>2)return t.toToken.address===Hf.solana.currency.address?"routeOrcaTwoHopSwapSolOut":"routeOrcaTwoHopSwap";throw"Payment method does not exist!"})({paymentRoute:t})){case"routeSol":return await(async({paymentRoute:t,nonce:e,deadline:n})=>{const r=new Xs(t.toAddress),i=t.fee?new Xs(t.fee.receiver):r,o=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0}],a=nf.alloc(jj.solana.api.routeSol.layout.span);return jj.solana.api.routeSol.layout.encode({anchorDiscriminator:jj.solana.api.routeSol.anchorDiscriminator,nonce:e,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(n)},a),new gu({keys:o,programId:new Xs(jj.solana.address),data:a})})({paymentRoute:t,nonce:r,deadline:i});case"routeToken":return await(async({paymentRoute:t,nonce:e,deadline:n})=>{const r=await fD({paymentRoute:t}),i=await pD({paymentRoute:t}),o=t.fee?await mD({paymentRoute:t}):i,a=[{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},{pubkey:new Xs(r),isSigner:!1,isWritable:!0},{pubkey:new Xs(i),isSigner:!1,isWritable:!0},{pubkey:new Xs(o),isSigner:!1,isWritable:!0}],s=nf.alloc(jj.solana.api.routeToken.layout.span);return jj.solana.api.routeToken.layout.encode({anchorDiscriminator:jj.solana.api.routeToken.anchorDiscriminator,nonce:e,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(n)},s),new gu({keys:a,programId:new Xs(jj.solana.address),data:s})})({paymentRoute:t,nonce:r,deadline:i});case"routeOrcaSwap":return await(async({paymentRoute:t,nonce:e,wSolSenderAccountKeypair:n,deadline:r})=>{const i=n?n.publicKey:await fD({paymentRoute:t}),o=await pD({paymentRoute:t}),a=t.fee?await mD({paymentRoute:t}):o,s=await wD({paymentRoute:t}),u=(await t.exchangeRoutes[0].getTransaction({account:t.fromAddress})).instructions.find((t=>t.programId.toString()===jj.solana.ammProgram)),c=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),yf("sqrtPriceLimit"),af("amountSpecifiedIsInput"),af("aToB")]).decode(u.data),l=[{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(jj.solana.ammProgram),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},{pubkey:new Xs(i),isSigner:!1,isWritable:!0},u.keys[2],u.keys[4],u.keys[6],u.keys[7],u.keys[8],u.keys[9],u.keys[10],{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:new Xs(o),isSigner:!1,isWritable:!0},{pubkey:new Xs(a),isSigner:!1,isWritable:!0}],h=nf.alloc(jj.solana.api.routeOrcaSwap.layout.span);return jj.solana.api.routeOrcaSwap.layout.encode({anchorDiscriminator:jj.solana.api.routeOrcaSwap.anchorDiscriminator,nonce:e,amountIn:c.amount,sqrtPriceLimit:c.sqrtPriceLimit,amountSpecifiedIsInput:c.amountSpecifiedIsInput,aToB:c.aToB,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(r)},h),new gu({keys:l,programId:new Xs(jj.solana.address),data:h})})({paymentRoute:t,nonce:r,wSolSenderAccountKeypair:e,deadline:i});case"routeOrcaSwapSolOut":return await(async({paymentRoute:t,nonce:e,wSolEscrowAccountKeypair:n,deadline:r})=>{const i=await fD({paymentRoute:t}),o=n.publicKey,a=(await t.exchangeRoutes[0].getTransaction({account:t.fromAddress})).instructions.find((t=>t.programId.toString()===jj.solana.ammProgram)),s=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),yf("sqrtPriceLimit"),af("amountSpecifiedIsInput"),af("aToB")]).decode(a.data),u=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(jj.solana.ammProgram),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},{pubkey:new Xs(i),isSigner:!1,isWritable:!0},a.keys[2],a.keys[4],a.keys[6],a.keys[7],a.keys[8],a.keys[9],a.keys[10],{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:await vD(),isSigner:!1,isWritable:!0},{pubkey:new Xs(t.toAddress),isSigner:!1,isWritable:!0},{pubkey:new Xs(t.fee?t.fee.receiver:t.toAddress),isSigner:!1,isWritable:!0}],c=nf.alloc(jj.solana.api.routeOrcaSwapSolOut.layout.span);return jj.solana.api.routeOrcaSwapSolOut.layout.encode({anchorDiscriminator:jj.solana.api.routeOrcaSwapSolOut.anchorDiscriminator,nonce:e,amountIn:s.amount,sqrtPriceLimit:s.sqrtPriceLimit,amountSpecifiedIsInput:s.amountSpecifiedIsInput,aToB:s.aToB,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(r)},c),new gu({keys:u,programId:new Xs(jj.solana.address),data:c})})({paymentRoute:t,nonce:r,wSolEscrowAccountKeypair:n,deadline:i});case"routeOrcaTwoHopSwap":return await(async({paymentRoute:t,nonce:e,wSolSenderAccountKeypair:n,deadline:r})=>{const i=new Xs(await pD({paymentRoute:t})),o=t.fee?new Xs(await mD({paymentRoute:t})):i,a=await wD({paymentRoute:t}),s=new Xs(await sD({paymentRoute:t})),u=(await t.exchangeRoutes[0].getTransaction({account:t.fromAddress})).instructions.find((t=>t.programId.toString()===jj.solana.ammProgram)),c=n?n.publicKey:new Xs(await fD({paymentRoute:t})),l=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),af("amountSpecifiedIsInput"),af("aToBOne"),af("aToBTwo"),yf("sqrtPriceLimitOne"),yf("sqrtPriceLimitTwo")]).decode(u.data),h=[{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(jj.solana.ammProgram),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},u.keys[2],u.keys[3],{pubkey:c,isSigner:!1,isWritable:!0},u.keys[5],u.keys[7],{pubkey:s,isSigner:!1,isWritable:!0},u.keys[9],u.keys[11],u.keys[12],u.keys[13],u.keys[14],u.keys[15],u.keys[16],u.keys[17],u.keys[18],u.keys[19],{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0}],d=nf.alloc(jj.solana.api.routeOrcaTwoHopSwap.layout.span);return jj.solana.api.routeOrcaTwoHopSwap.layout.encode({anchorDiscriminator:jj.solana.api.routeOrcaTwoHopSwap.anchorDiscriminator,nonce:e,amountIn:l.amount,amountSpecifiedIsInput:l.amountSpecifiedIsInput,aToBOne:l.aToBOne,aToBTwo:l.aToBTwo,sqrtPriceLimitOne:l.sqrtPriceLimitOne,sqrtPriceLimitTwo:l.sqrtPriceLimitTwo,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(r)},d),new gu({keys:h,programId:new Xs(jj.solana.address),data:d})})({paymentRoute:t,nonce:r,wSolSenderAccountKeypair:e,deadline:i});case"routeOrcaTwoHopSwapSolOut":return await(async({paymentRoute:t,nonce:e,wSolEscrowAccountKeypair:n,deadline:r})=>{const i=new Xs(await sD({paymentRoute:t})),o=(await t.exchangeRoutes[0].getTransaction({account:t.fromAddress})).instructions.find((t=>t.programId.toString()===jj.solana.ammProgram)),a=new Xs(await fD({paymentRoute:t})),s=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),af("amountSpecifiedIsInput"),af("aToBOne"),af("aToBTwo"),yf("sqrtPriceLimitOne"),yf("sqrtPriceLimitTwo")]).decode(o.data),u=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(jj.solana.ammProgram),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},{pubkey:a,isSigner:!1,isWritable:!0},o.keys[2],o.keys[3],o.keys[5],o.keys[7],{pubkey:i,isSigner:!1,isWritable:!0},o.keys[9],o.keys[11],o.keys[12],o.keys[13],o.keys[14],o.keys[15],o.keys[16],o.keys[17],o.keys[18],o.keys[19],{pubkey:n.publicKey,isSigner:!1,isWritable:!0},{pubkey:await vD(),isSigner:!1,isWritable:!0},{pubkey:new Xs(t.toAddress),isSigner:!1,isWritable:!0},{pubkey:new Xs(t.fee?t.fee.receiver:t.toAddress),isSigner:!1,isWritable:!0}],c=nf.alloc(jj.solana.api.routeOrcaTwoHopSwapSolOut.layout.span);return jj.solana.api.routeOrcaTwoHopSwapSolOut.layout.encode({anchorDiscriminator:jj.solana.api.routeOrcaTwoHopSwapSolOut.anchorDiscriminator,nonce:e,amountIn:s.amount,amountSpecifiedIsInput:s.amountSpecifiedIsInput,aToBOne:s.aToBOne,aToBTwo:s.aToBTwo,sqrtPriceLimitOne:s.sqrtPriceLimitOne,sqrtPriceLimitTwo:s.sqrtPriceLimitTwo,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(r)},c),new gu({keys:u,programId:new Xs(jj.solana.address),data:c})})({paymentRoute:t,nonce:r,wSolEscrowAccountKeypair:n,deadline:i})}},ND=async({paymentRoute:t})=>{const e=await hD({from:t.fromAddress}),n=Math.ceil((new Date).getTime()/1e3)+1800,r=(t=>t?t.nonce:new rf("0"))(e),i=await(async({paymentRoute:t})=>{if(t.fromToken.address===Hf.solana.currency.address&&t.toToken.address!==Hf.solana.currency.address)return Zl.generate()})({paymentRoute:t}),o=await(async({paymentRoute:t})=>{if(t.fromToken.address!==Hf.solana.currency.address&&t.toToken.address===Hf.solana.currency.address)return Zl.generate()})({paymentRoute:t});let a=(await Promise.all([dD({from:t.fromAddress}),iD({paymentRoute:t,wSolSenderAccountKeypair:i}),uD({paymentRoute:t}),yD({paymentRoute:t}),gD({paymentRoute:t}),MD({paymentRoute:t}),oD({paymentRoute:t,wSolEscrowAccountKeypair:o}),bD({paymentRoute:t}),ID({paymentRoute:t,wSolSenderAccountKeypair:i,wSolEscrowAccountKeypair:o,nonce:r,deadline:n}),cD({paymentRoute:t,wSolSenderAccountKeypair:i})])).filter(Boolean).flat();const s={blockchain:t.blockchain,instructions:a,signers:[i,o].filter(Boolean),alts:[jj.solana.alt]};return s.deadline=n,s.nonce=r.toString(),s},ED=[{inputs:[{internalType:"address",name:"_PERMIT2",type:"address"},{internalType:"address",name:"_FORWARDER",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"ExchangeCallFailed",type:"error"},{inputs:[],name:"ExchangeCallMissing",type:"error"},{inputs:[],name:"ExchangeNotApproved",type:"error"},{inputs:[],name:"ForwardingPaymentFailed",type:"error"},{inputs:[],name:"InsufficientBalanceInAfterPayment",type:"error"},{inputs:[],name:"InsufficientBalanceOutAfterPayment",type:"error"},{inputs:[],name:"NativeFeePaymentFailed",type:"error"},{inputs:[],name:"NativePaymentFailed",type:"error"},{inputs:[],name:"PaymentDeadlineReached",type:"error"},{inputs:[],name:"PaymentToZeroAddressNotAllowed",type:"error"},{inputs:[],name:"WrongAmountPaidIn",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"exchange",type:"address"}],name:"Disabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"exchange",type:"address"}],name:"Enabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"InternalTransfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferStarted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{inputs:[],name:"FORWARDER",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"PERMIT2",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"exchange",type:"address"},{internalType:"bool",name:"enabled",type:"bool"}],name:"enable",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"exchanges",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"bool",name:"permit2",type:"bool"},{internalType:"uint256",name:"paymentAmount",type:"uint256"},{internalType:"uint256",name:"feeAmount",type:"uint256"},{internalType:"address",name:"tokenInAddress",type:"address"},{internalType:"address",name:"exchangeAddress",type:"address"},{internalType:"address",name:"tokenOutAddress",type:"address"},{internalType:"address",name:"paymentReceiverAddress",type:"address"},{internalType:"address",name:"feeReceiverAddress",type:"address"},{internalType:"uint8",name:"exchangeType",type:"uint8"},{internalType:"uint8",name:"receiverType",type:"uint8"},{internalType:"bytes",name:"exchangeCallData",type:"bytes"},{internalType:"bytes",name:"receiverCallData",type:"bytes"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct IDePayRouterV2.Payment",name:"payment",type:"tuple"}],name:"pay",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"bool",name:"permit2",type:"bool"},{internalType:"uint256",name:"paymentAmount",type:"uint256"},{internalType:"uint256",name:"feeAmount",type:"uint256"},{internalType:"address",name:"tokenInAddress",type:"address"},{internalType:"address",name:"exchangeAddress",type:"address"},{internalType:"address",name:"tokenOutAddress",type:"address"},{internalType:"address",name:"paymentReceiverAddress",type:"address"},{internalType:"address",name:"feeReceiverAddress",type:"address"},{internalType:"uint8",name:"exchangeType",type:"uint8"},{internalType:"uint8",name:"receiverType",type:"uint8"},{internalType:"bytes",name:"exchangeCallData",type:"bytes"},{internalType:"bytes",name:"receiverCallData",type:"bytes"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct IDePayRouterV2.Payment",name:"payment",type:"tuple"},{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],internalType:"struct IPermit2.PermitDetails",name:"details",type:"tuple"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"sigDeadline",type:"uint256"}],internalType:"struct IPermit2.PermitSingle",name:"permitSingle",type:"tuple"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"pay",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"payable",type:"function"},{inputs:[],name:"pendingOwner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"withdraw",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}];var xD={ethereum:{address:"0x6466F27B169C908Ba8174d80aEfa7173CbC3D0c7",api:ED},bsc:{address:"0x7ea09401db4692a8AEF4111b75bD32AE758f552A",api:ED},polygon:{address:"0x50CFAB577623B1359602E11514a9482B061A941e",api:ED},fantom:{address:"0xFee05C41195985909DDfc9127Db1f94559c46db3",api:ED},avalanche:{address:"0xFee05C41195985909DDfc9127Db1f94559c46db3",api:ED},gnosis:{address:"0xFee05C41195985909DDfc9127Db1f94559c46db3",api:ED},arbitrum:{address:"0xA1cfbeeF344A52e18f748fd6a126f9426A40fbc7",api:ED},optimism:{address:"0x8698E529E9867eEbcC68b4792daC627cd8870736",api:ED},base:{address:"0x8B127D169D232D5F3ebE1C3D06CE343FD7C1AA11",api:ED}},kD={...xD,...jj},TD="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==r?r:"undefined"!=typeof self?self:{},LD="object"==typeof TD&&TD&&TD.Object===Object&&TD,SD="object"==typeof self&&self&&self.Object===Object&&self,jD=(LD||SD||Function("return this")()).Symbol;jD&&jD.toStringTag,jD&&jD.toStringTag;const DD=t=>{switch(t){case"solana":return 125e-6;case"gnosis":return.009;case"base":return.0095;case"optimism":return.0096;case"polygon":return.011;case"fantom":return.05;case"avalanche":return.1;case"arbitrum":return.11;case"bsc":return.2;case"ethereum":return 10;default:return 100}},CD={arbitrum:{[Hf.arbitrum.wrapped.address]:"0x7E655088214d0657251A51aDccE9109CFd23B5B5"},avalanche:{[Hf.avalanche.wrapped.address]:"0x2d0a6275eaDa0d03226919ce6D93661E589B2d59"},base:{[Hf.base.wrapped.address]:"0xD1711710843B125a6a01FfDF9b95fDc3064BeF7A"},bsc:{[Hf.bsc.wrapped.address]:"0xeEb80d14abfB058AA78DE38813fe705c3e3b243E"},ethereum:{[Hf.ethereum.wrapped.address]:"0x298f4980525594b3b982779cf74ba76819708D43"},fantom:{[Hf.fantom.wrapped.address]:"0x2d0a6275eaDa0d03226919ce6D93661E589B2d59"},gnosis:{[Hf.gnosis.wrapped.address]:"0x2d0a6275eaDa0d03226919ce6D93661E589B2d59"},optimism:{[Hf.optimism.wrapped.address]:"0x69594057e2C0224deb1180c7a5Df9ec9d5B611B5"},polygon:{[Hf.polygon.wrapped.address]:"0xaE59C9d3E055BdFAa583E169aA5Ebe395689476a"},solana:{}},OD=({paymentRoute:t})=>t.directTransfer&&!t.fee?t.toToken.address==Hf[t.blockchain].currency.address?t.toAddress:t.toToken.address:xD[t.blockchain].address,zD=({paymentRoute:t})=>t.directTransfer&&!t.fee?t.toToken.address==Hf[t.blockchain].currency.address?void 0:Tk[t.blockchain].DEFAULT:xD[t.blockchain].api,PD=({paymentRoute:t})=>t.directTransfer&&!t.fee?t.toToken.address==Hf[t.blockchain].currency.address?void 0:"transfer":"pay",_D=async({paymentRoute:t})=>{if(t.directTransfer&&!t.fee)return t.toToken.address==Hf[t.blockchain].currency.address?void 0:[t.toAddress,t.toAmount];{const e=Math.ceil(new Date/1e3)+3600,n=t.exchangeRoutes[0],r=(({exchangeRoute:t,blockchain:e})=>void 0===t?0:"uniswap_v3"===t.exchange.name||t.exchange[e].router.address===Hf[e].wrapped.address?2:1)({exchangeRoute:n,blockchain:t.blockchain}),i=n?await n.getTransaction({account:xD[t.blockchain].address,inputTokenPushed:2===r}):void 0,o=i?(({exchangeTransaction:t})=>{const e=new PM(t.to,t.api),n=t.method,r=t.params;let i,o,a;return o=e.interface.fragments.find((t=>!(t.name!=n||t.inputs&&r&&"object"==typeof r&&t.inputs.length!=Object.keys(r).length))),1===o.inputs.length&&"tuple"===o.inputs[0].type?(i=n,a=[r[o.inputs[0].name]]):(i=`${n}(${o.inputs.map((t=>t.type)).join(",")})`,a=o.inputs.map((t=>{if("tuple"===t.type){let e={};return t.components.forEach(((n,i)=>{e[n.name]=r[t.name][i]})),i=n,e}return r[t.name]}))),e.interface.encodeFunctionData(i,a)})({exchangeTransaction:i}):Hf[t.blockchain].zero;let a=Hf[t.blockchain].zero;return n&&(a="bsc"===t.blockchain&&"pancakeswap_v3"===n.exchange.name&&t.toToken.address===Hf[t.blockchain].currency.address?n.exchange[t.blockchain].smartRouter.address:CD[i.blockchain][n.exchange[t.blockchain].router.address]||n.exchange[t.blockchain].router.address),{payment:{amountIn:t.fromAmount,paymentAmount:t.toAmount,feeAmount:t.feeAmount||0,tokenInAddress:t.fromToken.address,exchangeAddress:a,tokenOutAddress:t.toToken.address,paymentReceiverAddress:t.toAddress,feeReceiverAddress:t.fee?t.fee.receiver:Hf[t.blockchain].zero,exchangeType:r,receiverType:0,exchangeCallData:o,receiverCallData:Hf[t.blockchain].zero,deadline:e}}}},BD=({paymentRoute:t})=>t.fromToken.address==Hf[t.blockchain].currency.address?t.directTransfer?t.toAmount.toString():t.fromAmount.toString():Fp.from("0").toString();let RD=["ethereum","bsc","polygon","solana","fantom","arbitrum","avalanche","gnosis","optimism","base"];RD.evm=["ethereum","bsc","polygon","fantom","arbitrum","avalanche","gnosis","optimism","base"],RD.solana=["solana"];const UD=({paymentRoute:t,fee:e})=>{if(RD.evm.includes(t.blockchain))return(async({paymentRoute:t})=>({blockchain:t.blockchain,to:OD({paymentRoute:t}),api:zD({paymentRoute:t}),method:PD({paymentRoute:t}),params:await _D({paymentRoute:t}),value:BD({paymentRoute:t})}))({paymentRoute:t,fee:e});if(RD.solana.includes(t.blockchain))return ND({paymentRoute:t,fee:e});throw"Blockchain not supported!"};function QD(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}class YD{constructor({blockchain:t,fromAddress:e,fromToken:n,fromAmount:r,fromDecimals:i,fromBalance:o,toToken:a,toAmount:s,toDecimals:u,toAddress:c,fee:l,feeAmount:h,exchangeRoutes:d,approvalRequired:f,approvalTransaction:p,directTransfer:y}){this.blockchain=t,this.fromAddress=e,this.fromToken=n,this.fromAmount=QD([r||s,"optionalAccess",t=>t.toString,"call",t=>t()]),this.fromDecimals=i,this.fromBalance=o,this.toToken=a,this.toAmount=QD([s,"optionalAccess",t=>t.toString,"call",t=>t()]),this.toDecimals=u,this.toAddress=c,this.fee=l,this.feeAmount=h,this.exchangeRoutes=d||[],this.approvalRequired=f,this.approvalTransaction=p,this.directTransfer=y,this.getTransaction=async()=>await UD({paymentRoute:this})}}function WD({assets:t,blacklist:e,accept:n,from:r}){return Promise.resolve(VD({assets:t,blacklist:e})).then((t=>function({assets:t,accept:e,from:n}){return Promise.all(t.map((async t=>{let r=e.filter((e=>e.blockchain==t.blockchain)),i=new Tk(t);return Promise.all(r.map((async e=>{if(e.token&&e.amount){let r=e.blockchain,o=t.decimals,a=new Tk({blockchain:r,address:e.token}),s=await a.decimals(),u=(await a.BigNumber(e.amount)).toString();return new YD({blockchain:r,fromToken:i,fromDecimals:o,toToken:a,toAmount:u,toDecimals:s,fromBalance:t.balance,fromAddress:n[e.blockchain],toAddress:e.toAddress,fee:e.fee})}if(e.fromToken&&e.fromAmount&&i.address.toLowerCase()==e.fromToken.toLowerCase()){let r=e.blockchain,o=(await i.BigNumber(e.fromAmount)).toString(),a=t.decimals,s=new Tk({blockchain:r,address:e.toToken}),u=await s.decimals();return new YD({blockchain:r,fromToken:i,fromDecimals:a,fromAmount:o,toToken:s,toDecimals:u,fromBalance:t.balance,fromAddress:n[e.blockchain],toAddress:e.toAddress,fee:e.fee})}})))}))).then((t=>t.flat().filter((t=>t))))}({assets:t,accept:n,from:r}))).then((t=>JD({routes:t}))).then(HD).then(GD).then(qD).then((t=>tC({routes:t}))).then(ZD).then(nC).then(eC).then((t=>t.map((t=>new YD(t)))))}function FD({accept:t,from:e,whitelist:n,blacklist:r,drip:i}){if(t.some((t=>t&&t.fee&&"string"==typeof t.fee.amount&&t.fee.amount.match(/\.\d\d+\%/))))throw"Only up to 1 decimal is supported for fee amounts!";return new Promise((async(o,a)=>{let s=[],u=[];if(n)for(const t in n)(n[t]||[]).forEach((e=>{u.push(t),s.push({blockchain:t,address:e})}));else t.forEach((t=>{u.push(t.blockchain),s.push({blockchain:t.blockchain,address:t.token||t.toToken})}));[...new Set(u)].forEach((t=>{s.find((e=>e.blockchain===t&&e.address===Hf[t].currency.address))||s.push({blockchain:t,address:Hf[t].currency.address})})),s.sort(((t,e)=>DD(t.blockchain)<DD(e.blockchain)?-1:DD(e.blockchain)<DD(t.blockchain)?1:t.address.toLowerCase()===Hf[t.blockchain].currency.address.toLowerCase()?-1:e.address.toLowerCase()===Hf[e.blockchain].currency.address.toLowerCase()?1:0));let c=0;const l=[],h=[],d=s.map((t=>[t.blockchain,t.address.toLowerCase()].join(""))),f=()=>Math.ceil(new Date),p=f();setTimeout((()=>{l.forEach((t=>y(FD,!1)))}),3e3);const y=(t,e=!0)=>{try{const n={blockchain:t.blockchain,address:t.fromToken.address},r=[n.blockchain,n.address.toLowerCase()].join(""),o=f()-p>3e3;if(h.indexOf(r)>-1)return;if(d.indexOf(r)===c){if(h.push(r),i(t),c+=1,!e)return;l.forEach((e=>y(t,!1)))}else c>=d.length||o?(-1===d.indexOf(r)||c>=d.length||o)&&(h.push(r),i(t)):l.find((t=>t.blockchain===n.blockchain&&t.address.toLowerCase()===n.address.toLowerCase()))||(l.push(n),l.sort(((t,e)=>((t,e,n)=>{if(!t||0===t.length)return 0;let r=t.indexOf([e.blockchain,e.address.toLowerCase()].join("")),i=t.indexOf([n.blockchain,n.address.toLowerCase()].join(""));return-1!==r&&-1===i?-1:-1!==i&&-1===r?1:r<i?-1:i<r?1:0})(d,t,e))))}catch(t){}},m=await Bk({accounts:e,priority:s,only:n,exclude:r,drip:i?n=>{WD({assets:[n],blacklist:r,accept:t,from:e}).then((t=>{QD([t,"optionalAccess",t=>t.length])&&y(t[0])}))}:void 0});let g=await WD({assets:m,blacklist:r,accept:t,from:e})||[];g.assets=m,o(g)}))}let VD=({assets:t,blacklist:e})=>null==e?t:t.filter((t=>null==e[t.blockchain]||!e[t.blockchain].find((e=>e.toLowerCase()==t.address.toLowerCase())))),HD=async t=>await Promise.all(t.map((t=>t.directTransfer?[]:t.toToken&&t.toAmount?Sj.route({blockchain:t.blockchain,tokenIn:t.fromToken.address,tokenOut:t.toToken.address,amountOutMin:t.toAmount,fromAddress:t.fromAddress,toAddress:t.toAddress}):t.fromToken&&t.fromAmount?Sj.route({blockchain:t.blockchain,tokenIn:t.fromToken.address,tokenOut:t.toToken.address,amountIn:t.fromAmount,fromAddress:t.fromAddress,toAddress:t.toAddress}):void 0))).then((e=>t.map(((t,n)=>(t.exchangeRoutes=e[n],t))))),GD=t=>t.filter((t=>0!=t.exchangeRoutes.length||t.fromToken.address.toLowerCase()==t.toToken.address.toLowerCase())),qD=async t=>t.filter((t=>t.fromToken.address.toLowerCase()==t.toToken.address.toLowerCase()?Fp.from(t.fromBalance).gte(Fp.from(t.toAmount)):t.fromAmount&&t.toAmount?Fp.from(t.fromBalance).gte(Fp.from(t.exchangeRoutes[0].amountInMax)):t.exchangeRoutes[0]&&t.exchangeRoutes[0].amountIn?Fp.from(t.fromBalance).gte(Fp.from(t.exchangeRoutes[0].amountIn)):void 0)),ZD=t=>Promise.all(t.map((t=>"solana"===t.blockchain?Promise.resolve(Hf.solana.maxInt):t.fromToken.allowance(t.fromAddress,kD[t.blockchain].address).catch((()=>{}))))).then((e=>(t.map(((n,r)=>{void 0===e[r]||n.directTransfer||n.fromToken.address.toLowerCase()==Hf[n.blockchain].currency.address.toLowerCase()||"solana"===n.blockchain?t[r].approvalRequired=!1:(t[r].approvalRequired=Fp.from(n.fromAmount).gte(Fp.from(e[r])),t[r].approvalRequired&&(t[r].approvalTransaction={blockchain:n.blockchain,to:n.fromToken.address,api:Tk[n.blockchain].DEFAULT,method:"approve",params:[kD[n.blockchain].address,Hf[n.blockchain].maxInt]}))})),t))),JD=({routes:t})=>t.map((t=>(RD.evm.includes(t.blockchain)?t.directTransfer=t.fromToken.address.toLowerCase()==t.toToken.address.toLowerCase()&&null==t.fee:"solana"===t.blockchain&&(t.directTransfer=t.fromToken.address.toLowerCase()==t.toToken.address.toLowerCase()),t))),XD=({paymentRoute:t,exchangeRoute:e})=>{let n,r,i;return e?(e&&e.exchange.wrapper,n=e.amountIn.toString(),r=KD({amount:e.amountOutMin.toString(),paymentRoute:t})):(n=t.fromAmount,r=KD({amount:t.fromAmount,paymentRoute:t})),t.fee&&(i=$D({paymentRoute:t})),{fromAmount:n,toAmount:r,feeAmount:i}},KD=({amount:t,paymentRoute:e})=>{if(e.fee){let n=$D({paymentRoute:e});return Fp.from(t).sub(n).toString()}return t},$D=({paymentRoute:t})=>{if("string"==typeof t.fee.amount&&t.fee.amount.match("%"))return Fp.from(t.toAmount).mul(10*parseFloat(t.fee.amount)).div(1e3).toString();if("string"==typeof t.fee.amount)return t.fee.amount;if("number"==typeof t.fee.amount)return cI(t.fee.amount.toString(),t.toDecimals).toString();throw"Unknown fee amount type!"},tC=({routes:t})=>t.map((t=>{if(RD.evm.includes(t.blockchain))if(t.directTransfer&&!t.fee)t.fromAmount=t.toAmount;else{let{fromAmount:e,toAmount:n,feeAmount:r}=XD({paymentRoute:t,exchangeRoute:t.exchangeRoutes[0]});t.fromAmount=e,t.toAmount=n,t.fee&&(t.feeAmount=r)}else if(RD.solana.includes(t.blockchain)){let{fromAmount:e,toAmount:n,feeAmount:r}=XD({paymentRoute:t,exchangeRoute:t.exchangeRoutes[0]});t.fromAmount=e,t.toAmount=n,t.fee&&(t.feeAmount=r)}return t})),eC=t=>t.filter(((e,n)=>null==t.find(((t,r)=>e.fromToken.address==t.fromToken.address&&(e.fromToken.blockchain==t.fromToken.blockchain&&(!(!t.directTransfer||e.directTransfer)||(!(!Fp.from(t.fromAmount).lt(Fp.from(e.fromAmount))||e.directTransfer)||(t.fromAmount==e.fromAmount&&r<n||void 0)))))))),nC=t=>{let e=-1;return t.sort(((t,n)=>DD(t.fromToken.blockchain)<DD(n.fromToken.blockchain)?e:DD(n.fromToken.blockchain)<DD(t.fromToken.blockchain)?1:t.fromToken.address.toLowerCase()==t.toToken.address.toLowerCase()?e:n.fromToken.address.toLowerCase()==n.toToken.address.toLowerCase()||t.approvalRequired&&!n.approvalRequired?1:n.approvalRequired&&!t.approvalRequired||JSON.stringify([t.fromToken.address.toLowerCase(),t.toToken.address.toLowerCase()].sort())==JSON.stringify([Hf[t.blockchain].currency.address.toLowerCase(),Hf[t.blockchain].wrapped.address.toLowerCase()].sort())?e:JSON.stringify([n.fromToken.address.toLowerCase(),n.toToken.address.toLowerCase()].sort())==JSON.stringify([Hf[n.blockchain].currency.address.toLowerCase(),Hf[n.blockchain].wrapped.address.toLowerCase()].sort())?1:t.fromToken.address.toLowerCase()==Hf[t.blockchain].currency.address.toLowerCase()?e:n.fromToken.address.toLowerCase()==Hf[n.blockchain].currency.address.toLowerCase()?1:t.fromToken.address<n.fromToken.address?e:1))};var rC=ek.createContext({accept:[]});
87
+ */function rT(t){var e,n,r,i=t.length-1,o="",a=t[0];if(i>0){for(o+=a,e=1;e<i;e++)(n=7-(r=t[e]+"").length)&&(o+=pT(n)),o+=r;(n=7-(r=(a=t[e])+"").length)&&(o+=pT(n))}else if(0===a)return"0";for(;a%10==0;)a/=10;return o+a}function iT(t,e,n){if(t!==~~t||t<e||t>n)throw Error(Vk+t)}function oT(t,e,n,r){var i,o,a,s;for(o=t[0];o>=10;o/=10)--e;return--e<0?(e+=7,i=0):(i=Math.ceil((e+1)/7),e%=7),o=qk(10,7-e),s=t[i]%o|0,null==r?e<3?(0==e?s=s/100|0:1==e&&(s=s/10|0),a=n<4&&99999==s||n>3&&49999==s||5e4==s||0==s):a=(n<4&&s+1==o||n>3&&s+1==o/2)&&(t[i+1]/o/100|0)==qk(10,e-2)-1||(s==o/2||0==s)&&0==(t[i+1]/o/100|0):e<4?(0==e?s=s/1e3|0:1==e?s=s/100|0:2==e&&(s=s/10|0),a=(r||n<4)&&9999==s||!r&&n>3&&4999==s):a=((r||n<4)&&s+1==o||!r&&n>3&&s+1==o/2)&&(t[i+1]/o/1e3|0)==qk(10,e-3)-1,a}function aT(t,e,n){for(var r,i,o=[0],a=0,s=t.length;a<s;){for(i=o.length;i--;)o[i]*=e;for(o[0]+=Uk.indexOf(t.charAt(a++)),r=0;r<o.length;r++)o[r]>n-1&&(void 0===o[r+1]&&(o[r+1]=0),o[r+1]+=o[r]/n|0,o[r]%=n)}return o.reverse()}nT.absoluteValue=nT.abs=function(){var t=new this.constructor(this);return t.s<0&&(t.s=1),uT(t)},nT.ceil=function(){return uT(new this.constructor(this),this.e+1,2)},nT.clampedTo=nT.clamp=function(t,e){var n=this,r=n.constructor;if(t=new r(t),e=new r(e),!t.s||!e.s)return new r(NaN);if(t.gt(e))throw Error(Vk+e);return n.cmp(t)<0?t:n.cmp(e)>0?e:new r(n)},nT.comparedTo=nT.cmp=function(t){var e,n,r,i,o=this,a=o.d,s=(t=new o.constructor(t)).d,u=o.s,c=t.s;if(!a||!s)return u&&c?u!==c?u:a===s?0:!a^u<0?1:-1:NaN;if(!a[0]||!s[0])return a[0]?u:s[0]?-c:0;if(u!==c)return u;if(o.e!==t.e)return o.e>t.e^u<0?1:-1;for(e=0,n=(r=a.length)<(i=s.length)?r:i;e<n;++e)if(a[e]!==s[e])return a[e]>s[e]^u<0?1:-1;return r===i?0:r>i^u<0?1:-1},nT.cosine=nT.cos=function(){var t,e,n=this,r=n.constructor;return n.d?n.d[0]?(t=r.precision,e=r.rounding,r.precision=t+Math.max(n.e,n.sd())+7,r.rounding=1,n=function(t,e){var n,r,i;if(e.isZero())return e;(r=e.d.length)<32?i=(1/NT(4,n=Math.ceil(r/3))).toString():(n=16,i="2.3283064365386962890625e-10");t.precision+=n,e=IT(t,1,e.times(i),new t(1));for(var o=n;o--;){var a=e.times(e);e=a.times(a).minus(a).times(8).plus(1)}return t.precision-=n,e}(r,ET(r,n)),r.precision=t,r.rounding=e,uT(2==_k||3==_k?n.neg():n,t,e,!0)):new r(1):new r(NaN)},nT.cubeRoot=nT.cbrt=function(){var t,e,n,r,i,o,a,s,u,c,l=this,h=l.constructor;if(!l.isFinite()||l.isZero())return new h(l);for(Fk=!1,(o=l.s*qk(l.s*l,1/3))&&Math.abs(o)!=1/0?r=new h(o.toString()):(n=rT(l.d),(o=((t=l.e)-n.length+1)%3)&&(n+=1==o||-2==o?"0":"00"),o=qk(n,1/3),t=Gk((t+1)/3)-(t%3==(t<0?-1:2)),(r=new h(n=o==1/0?"5e"+t:(n=o.toExponential()).slice(0,n.indexOf("e")+1)+t)).s=l.s),a=(t=h.precision)+3;;)if(c=(u=(s=r).times(s).times(s)).plus(l),r=sT(c.plus(l).times(s),c.plus(u),a+2,1),rT(s.d).slice(0,a)===(n=rT(r.d)).slice(0,a)){if("9999"!=(n=n.slice(a-3,a+1))&&(i||"4999"!=n)){+n&&(+n.slice(1)||"5"!=n.charAt(0))||(uT(r,t+1,1),e=!r.times(r).times(r).eq(l));break}if(!i&&(uT(s,t+1,0),s.times(s).times(s).eq(l))){r=s;break}a+=4,i=1}return Fk=!0,uT(r,t,h.rounding,e)},nT.decimalPlaces=nT.dp=function(){var t,e=this.d,n=NaN;if(e){if(n=7*((t=e.length-1)-Gk(this.e/7)),t=e[t])for(;t%10==0;t/=10)n--;n<0&&(n=0)}return n},nT.dividedBy=nT.div=function(t){return sT(this,new this.constructor(t))},nT.dividedToIntegerBy=nT.divToInt=function(t){var e=this.constructor;return uT(sT(this,new e(t),0,1,1),e.precision,e.rounding)},nT.equals=nT.eq=function(t){return 0===this.cmp(t)},nT.floor=function(){return uT(new this.constructor(this),this.e+1,3)},nT.greaterThan=nT.gt=function(t){return this.cmp(t)>0},nT.greaterThanOrEqualTo=nT.gte=function(t){var e=this.cmp(t);return 1==e||0===e},nT.hyperbolicCosine=nT.cosh=function(){var t,e,n,r,i,o=this,a=o.constructor,s=new a(1);if(!o.isFinite())return new a(o.s?1/0:NaN);if(o.isZero())return s;n=a.precision,r=a.rounding,a.precision=n+Math.max(o.e,o.sd())+4,a.rounding=1,(i=o.d.length)<32?e=(1/NT(4,t=Math.ceil(i/3))).toString():(t=16,e="2.3283064365386962890625e-10"),o=IT(a,1,o.times(e),new a(1),!0);for(var u,c=t,l=new a(8);c--;)u=o.times(o),o=s.minus(u.times(l.minus(u.times(l))));return uT(o,a.precision=n,a.rounding=r,!0)},nT.hyperbolicSine=nT.sinh=function(){var t,e,n,r,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(e=o.precision,n=o.rounding,o.precision=e+Math.max(i.e,i.sd())+4,o.rounding=1,(r=i.d.length)<3)i=IT(o,2,i,i,!0);else{t=(t=1.4*Math.sqrt(r))>16?16:0|t,i=IT(o,2,i=i.times(1/NT(5,t)),i,!0);for(var a,s=new o(5),u=new o(16),c=new o(20);t--;)a=i.times(i),i=i.times(s.plus(a.times(u.times(a).plus(c))))}return o.precision=e,o.rounding=n,uT(i,e,n,!0)},nT.hyperbolicTangent=nT.tanh=function(){var t,e,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(t=r.precision,e=r.rounding,r.precision=t+7,r.rounding=1,sT(n.sinh(),n.cosh(),r.precision=t,r.rounding=e)):new r(n.s)},nT.inverseCosine=nT.acos=function(){var t,e=this,n=e.constructor,r=e.abs().cmp(1),i=n.precision,o=n.rounding;return-1!==r?0===r?e.isNeg()?dT(n,i,o):new n(0):new n(NaN):e.isZero()?dT(n,i+4,o).times(.5):(n.precision=i+6,n.rounding=1,e=e.asin(),t=dT(n,i+4,o).times(.5),n.precision=i,n.rounding=o,t.minus(e))},nT.inverseHyperbolicCosine=nT.acosh=function(){var t,e,n=this,r=n.constructor;return n.lte(1)?new r(n.eq(1)?0:NaN):n.isFinite()?(t=r.precision,e=r.rounding,r.precision=t+Math.max(Math.abs(n.e),n.sd())+4,r.rounding=1,Fk=!1,n=n.times(n).minus(1).sqrt().plus(n),Fk=!0,r.precision=t,r.rounding=e,n.ln()):new r(n)},nT.inverseHyperbolicSine=nT.asinh=function(){var t,e,n=this,r=n.constructor;return!n.isFinite()||n.isZero()?new r(n):(t=r.precision,e=r.rounding,r.precision=t+2*Math.max(Math.abs(n.e),n.sd())+6,r.rounding=1,Fk=!1,n=n.times(n).plus(1).sqrt().plus(n),Fk=!0,r.precision=t,r.rounding=e,n.ln())},nT.inverseHyperbolicTangent=nT.atanh=function(){var t,e,n,r,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(t=o.precision,e=o.rounding,r=i.sd(),Math.max(r,t)<2*-i.e-1?uT(new o(i),t,e,!0):(o.precision=n=r-i.e,i=sT(i.plus(1),new o(1).minus(i),n+t,1),o.precision=t+4,o.rounding=1,i=i.ln(),o.precision=t,o.rounding=e,i.times(.5))):new o(NaN)},nT.inverseSine=nT.asin=function(){var t,e,n,r,i=this,o=i.constructor;return i.isZero()?new o(i):(e=i.abs().cmp(1),n=o.precision,r=o.rounding,-1!==e?0===e?((t=dT(o,n+4,r).times(.5)).s=i.s,t):new o(NaN):(o.precision=n+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=n,o.rounding=r,i.times(2)))},nT.inverseTangent=nT.atan=function(){var t,e,n,r,i,o,a,s,u,c=this,l=c.constructor,h=l.precision,d=l.rounding;if(c.isFinite()){if(c.isZero())return new l(c);if(c.abs().eq(1)&&h+4<=eT)return(a=dT(l,h+4,d).times(.25)).s=c.s,a}else{if(!c.s)return new l(NaN);if(h+4<=eT)return(a=dT(l,h+4,d).times(.5)).s=c.s,a}for(l.precision=s=h+10,l.rounding=1,t=n=Math.min(28,s/7+2|0);t;--t)c=c.div(c.times(c).plus(1).sqrt().plus(1));for(Fk=!1,e=Math.ceil(s/7),r=1,u=c.times(c),a=new l(c),i=c;-1!==t;)if(i=i.times(u),o=a.minus(i.div(r+=2)),i=i.times(u),void 0!==(a=o.plus(i.div(r+=2))).d[e])for(t=e;a.d[t]===o.d[t]&&t--;);return n&&(a=a.times(2<<n-1)),Fk=!0,uT(a,l.precision=h,l.rounding=d,!0)},nT.isFinite=function(){return!!this.d},nT.isInteger=nT.isInt=function(){return!!this.d&&Gk(this.e/7)>this.d.length-2},nT.isNaN=function(){return!this.s},nT.isNegative=nT.isNeg=function(){return this.s<0},nT.isPositive=nT.isPos=function(){return this.s>0},nT.isZero=function(){return!!this.d&&0===this.d[0]},nT.lessThan=nT.lt=function(t){return this.cmp(t)<0},nT.lessThanOrEqualTo=nT.lte=function(t){return this.cmp(t)<1},nT.logarithm=nT.log=function(t){var e,n,r,i,o,a,s,u,c=this,l=c.constructor,h=l.precision,d=l.rounding;if(null==t)t=new l(10),e=!0;else{if(n=(t=new l(t)).d,t.s<0||!n||!n[0]||t.eq(1))return new l(NaN);e=t.eq(10)}if(n=c.d,c.s<0||!n||!n[0]||c.eq(1))return new l(n&&!n[0]?-1/0:1!=c.s?NaN:n?0:1/0);if(e)if(n.length>1)o=!0;else{for(i=n[0];i%10==0;)i/=10;o=1!==i}if(Fk=!1,a=wT(c,s=h+5),r=e?hT(l,s+10):wT(t,s),oT((u=sT(a,r,s,1)).d,i=h,d))do{if(a=wT(c,s+=10),r=e?hT(l,s+10):wT(t,s),u=sT(a,r,s,1),!o){+rT(u.d).slice(i+1,i+15)+1==1e14&&(u=uT(u,h+1,0));break}}while(oT(u.d,i+=10,d));return Fk=!0,uT(u,h,d)},nT.minus=nT.sub=function(t){var e,n,r,i,o,a,s,u,c,l,h,d,f=this,p=f.constructor;if(t=new p(t),!f.d||!t.d)return f.s&&t.s?f.d?t.s=-t.s:t=new p(t.d||f.s!==t.s?f:NaN):t=new p(NaN),t;if(f.s!=t.s)return t.s=-t.s,f.plus(t);if(c=f.d,d=t.d,s=p.precision,u=p.rounding,!c[0]||!d[0]){if(d[0])t.s=-t.s;else{if(!c[0])return new p(3===u?-0:0);t=new p(f)}return Fk?uT(t,s,u):t}if(n=Gk(t.e/7),l=Gk(f.e/7),c=c.slice(),o=l-n){for((h=o<0)?(e=c,o=-o,a=d.length):(e=d,n=l,a=c.length),o>(r=Math.max(Math.ceil(s/7),a)+2)&&(o=r,e.length=1),e.reverse(),r=o;r--;)e.push(0);e.reverse()}else{for((h=(r=c.length)<(a=d.length))&&(a=r),r=0;r<a;r++)if(c[r]!=d[r]){h=c[r]<d[r];break}o=0}for(h&&(e=c,c=d,d=e,t.s=-t.s),a=c.length,r=d.length-a;r>0;--r)c[a++]=0;for(r=d.length;r>o;){if(c[--r]<d[r]){for(i=r;i&&0===c[--i];)c[i]=$k-1;--c[i],c[r]+=$k}c[r]-=d[r]}for(;0===c[--a];)c.pop();for(;0===c[0];c.shift())--n;return c[0]?(t.d=c,t.e=lT(c,n),Fk?uT(t,s,u):t):new p(3===u?-0:0)},nT.modulo=nT.mod=function(t){var e,n=this,r=n.constructor;return t=new r(t),!n.d||!t.s||t.d&&!t.d[0]?new r(NaN):!t.d||n.d&&!n.d[0]?uT(new r(n),r.precision,r.rounding):(Fk=!1,9==r.modulo?(e=sT(n,t.abs(),0,3,1)).s*=t.s:e=sT(n,t,0,r.modulo,1),e=e.times(t),Fk=!0,n.minus(e))},nT.naturalExponential=nT.exp=function(){return vT(this)},nT.naturalLogarithm=nT.ln=function(){return wT(this)},nT.negated=nT.neg=function(){var t=new this.constructor(this);return t.s=-t.s,uT(t)},nT.plus=nT.add=function(t){var e,n,r,i,o,a,s,u,c,l,h=this,d=h.constructor;if(t=new d(t),!h.d||!t.d)return h.s&&t.s?h.d||(t=new d(t.d||h.s===t.s?h:NaN)):t=new d(NaN),t;if(h.s!=t.s)return t.s=-t.s,h.minus(t);if(c=h.d,l=t.d,s=d.precision,u=d.rounding,!c[0]||!l[0])return l[0]||(t=new d(h)),Fk?uT(t,s,u):t;if(o=Gk(h.e/7),r=Gk(t.e/7),c=c.slice(),i=o-r){for(i<0?(n=c,i=-i,a=l.length):(n=l,r=o,a=c.length),i>(a=(o=Math.ceil(s/7))>a?o+1:a+1)&&(i=a,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for((a=c.length)-(i=l.length)<0&&(i=a,n=l,l=c,c=n),e=0;i;)e=(c[--i]=c[i]+l[i]+e)/$k|0,c[i]%=$k;for(e&&(c.unshift(e),++r),a=c.length;0==c[--a];)c.pop();return t.d=c,t.e=lT(c,r),Fk?uT(t,s,u):t},nT.precision=nT.sd=function(t){var e,n=this;if(void 0!==t&&t!==!!t&&1!==t&&0!==t)throw Error(Vk+t);return n.d?(e=fT(n.d),t&&n.e+1>e&&(e=n.e+1)):e=NaN,e},nT.round=function(){var t=this,e=t.constructor;return uT(new e(t),t.e+1,e.rounding)},nT.sine=nT.sin=function(){var t,e,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(t=r.precision,e=r.rounding,r.precision=t+Math.max(n.e,n.sd())+7,r.rounding=1,n=function(t,e){var n,r=e.d.length;if(r<3)return e.isZero()?e:IT(t,2,e,e);n=(n=1.4*Math.sqrt(r))>16?16:0|n,e=e.times(1/NT(5,n)),e=IT(t,2,e,e);for(var i,o=new t(5),a=new t(16),s=new t(20);n--;)i=e.times(e),e=e.times(o.plus(i.times(a.times(i).minus(s))));return e}(r,ET(r,n)),r.precision=t,r.rounding=e,uT(_k>2?n.neg():n,t,e,!0)):new r(NaN)},nT.squareRoot=nT.sqrt=function(){var t,e,n,r,i,o,a=this,s=a.d,u=a.e,c=a.s,l=a.constructor;if(1!==c||!s||!s[0])return new l(!c||c<0&&(!s||s[0])?NaN:s?a:1/0);for(Fk=!1,0==(c=Math.sqrt(+a))||c==1/0?(((e=rT(s)).length+u)%2==0&&(e+="0"),c=Math.sqrt(e),u=Gk((u+1)/2)-(u<0||u%2),r=new l(e=c==1/0?"5e"+u:(e=c.toExponential()).slice(0,e.indexOf("e")+1)+u)):r=new l(c.toString()),n=(u=l.precision)+3;;)if(r=(o=r).plus(sT(a,o,n+2,1)).times(.5),rT(o.d).slice(0,n)===(e=rT(r.d)).slice(0,n)){if("9999"!=(e=e.slice(n-3,n+1))&&(i||"4999"!=e)){+e&&(+e.slice(1)||"5"!=e.charAt(0))||(uT(r,u+1,1),t=!r.times(r).eq(a));break}if(!i&&(uT(o,u+1,0),o.times(o).eq(a))){r=o;break}n+=4,i=1}return Fk=!0,uT(r,u,l.rounding,t)},nT.tangent=nT.tan=function(){var t,e,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(t=r.precision,e=r.rounding,r.precision=t+10,r.rounding=1,(n=n.sin()).s=1,n=sT(n,new r(1).minus(n.times(n)).sqrt(),t+10,0),r.precision=t,r.rounding=e,uT(2==_k||4==_k?n.neg():n,t,e,!0)):new r(NaN)},nT.times=nT.mul=function(t){var e,n,r,i,o,a,s,u,c,l=this,h=l.constructor,d=l.d,f=(t=new h(t)).d;if(t.s*=l.s,!(d&&d[0]&&f&&f[0]))return new h(!t.s||d&&!d[0]&&!f||f&&!f[0]&&!d?NaN:d&&f?0*t.s:t.s/0);for(n=Gk(l.e/7)+Gk(t.e/7),(u=d.length)<(c=f.length)&&(o=d,d=f,f=o,a=u,u=c,c=a),o=[],r=a=u+c;r--;)o.push(0);for(r=c;--r>=0;){for(e=0,i=u+r;i>r;)s=o[i]+f[r]*d[i-r-1]+e,o[i--]=s%$k|0,e=s/$k|0;o[i]=(o[i]+e)%$k|0}for(;!o[--a];)o.pop();return e?++n:o.shift(),t.d=o,t.e=lT(o,n),Fk?uT(t,h.precision,h.rounding):t},nT.toBinary=function(t,e){return xT(this,2,t,e)},nT.toDecimalPlaces=nT.toDP=function(t,e){var n=this,r=n.constructor;return n=new r(n),void 0===t?n:(iT(t,0,1e9),void 0===e?e=r.rounding:iT(e,0,8),uT(n,t+n.e+1,e))},nT.toExponential=function(t,e){var n,r=this,i=r.constructor;return void 0===t?n=cT(r,!0):(iT(t,0,1e9),void 0===e?e=i.rounding:iT(e,0,8),n=cT(r=uT(new i(r),t+1,e),!0,t+1)),r.isNeg()&&!r.isZero()?"-"+n:n},nT.toFixed=function(t,e){var n,r,i=this,o=i.constructor;return void 0===t?n=cT(i):(iT(t,0,1e9),void 0===e?e=o.rounding:iT(e,0,8),n=cT(r=uT(new o(i),t+i.e+1,e),!1,t+r.e+1)),i.isNeg()&&!i.isZero()?"-"+n:n},nT.toFraction=function(t){var e,n,r,i,o,a,s,u,c,l,h,d,f=this,p=f.d,y=f.constructor;if(!p)return new y(f);if(c=n=new y(1),r=u=new y(0),a=(o=(e=new y(r)).e=fT(p)-f.e-1)%7,e.d[0]=qk(10,a<0?7+a:a),null==t)t=o>0?e:c;else{if(!(s=new y(t)).isInt()||s.lt(c))throw Error(Vk+s);t=s.gt(e)?o>0?e:c:s}for(Fk=!1,s=new y(rT(p)),l=y.precision,y.precision=o=7*p.length*2;h=sT(s,e,0,1,1),1!=(i=n.plus(h.times(r))).cmp(t);)n=r,r=i,i=c,c=u.plus(h.times(i)),u=i,i=e,e=s.minus(h.times(i)),s=i;return i=sT(t.minus(n),r,0,1,1),u=u.plus(i.times(c)),n=n.plus(i.times(r)),u.s=c.s=f.s,d=sT(c,r,o,1).minus(f).abs().cmp(sT(u,n,o,1).minus(f).abs())<1?[c,r]:[u,n],y.precision=l,Fk=!0,d},nT.toHexadecimal=nT.toHex=function(t,e){return xT(this,16,t,e)},nT.toNearest=function(t,e){var n=this,r=n.constructor;if(n=new r(n),null==t){if(!n.d)return n;t=new r(1),e=r.rounding}else{if(t=new r(t),void 0===e?e=r.rounding:iT(e,0,8),!n.d)return t.s?n:t;if(!t.d)return t.s&&(t.s=n.s),t}return t.d[0]?(Fk=!1,n=sT(n,t,0,e,1).times(t),Fk=!0,uT(n)):(t.s=n.s,n=t),n},nT.toNumber=function(){return+this},nT.toOctal=function(t,e){return xT(this,8,t,e)},nT.toPower=nT.pow=function(t){var e,n,r,i,o,a,s=this,u=s.constructor,c=+(t=new u(t));if(!(s.d&&t.d&&s.d[0]&&t.d[0]))return new u(qk(+s,c));if((s=new u(s)).eq(1))return s;if(r=u.precision,o=u.rounding,t.eq(1))return uT(s,r,o);if((e=Gk(t.e/7))>=t.d.length-1&&(n=c<0?-c:c)<=9007199254740991)return i=yT(u,s,n,r),t.s<0?new u(1).div(i):uT(i,r,o);if((a=s.s)<0){if(e<t.d.length-1)return new u(NaN);if(0==(1&t.d[e])&&(a=1),0==s.e&&1==s.d[0]&&1==s.d.length)return s.s=a,s}return(e=0!=(n=qk(+s,c))&&isFinite(n)?new u(n+"").e:Gk(c*(Math.log("0."+rT(s.d))/Math.LN10+s.e+1)))>u.maxE+1||e<u.minE-1?new u(e>0?a/0:0):(Fk=!1,u.rounding=s.s=1,n=Math.min(12,(e+"").length),(i=vT(t.times(wT(s,r+n)),r)).d&&oT((i=uT(i,r+5,1)).d,r,o)&&(e=r+10,+rT((i=uT(vT(t.times(wT(s,e+n)),e),e+5,1)).d).slice(r+1,r+15)+1==1e14&&(i=uT(i,r+1,0))),i.s=a,Fk=!0,u.rounding=o,uT(i,r,o))},nT.toPrecision=function(t,e){var n,r=this,i=r.constructor;return void 0===t?n=cT(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(iT(t,1,1e9),void 0===e?e=i.rounding:iT(e,0,8),n=cT(r=uT(new i(r),t,e),t<=r.e||r.e<=i.toExpNeg,t)),r.isNeg()&&!r.isZero()?"-"+n:n},nT.toSignificantDigits=nT.toSD=function(t,e){var n=this.constructor;return void 0===t?(t=n.precision,e=n.rounding):(iT(t,1,1e9),void 0===e?e=n.rounding:iT(e,0,8)),uT(new n(this),t,e)},nT.toString=function(){var t=this,e=t.constructor,n=cT(t,t.e<=e.toExpNeg||t.e>=e.toExpPos);return t.isNeg()&&!t.isZero()?"-"+n:n},nT.truncated=nT.trunc=function(){return uT(new this.constructor(this),this.e+1,1)},nT.valueOf=nT.toJSON=function(){var t=this,e=t.constructor,n=cT(t,t.e<=e.toExpNeg||t.e>=e.toExpPos);return t.isNeg()?"-"+n:n};var sT=function(){function t(t,e,n){var r,i=0,o=t.length;for(t=t.slice();o--;)r=t[o]*e+i,t[o]=r%n|0,i=r/n|0;return i&&t.unshift(i),t}function e(t,e,n,r){var i,o;if(n!=r)o=n>r?1:-1;else for(i=o=0;i<n;i++)if(t[i]!=e[i]){o=t[i]>e[i]?1:-1;break}return o}function n(t,e,n,r){for(var i=0;n--;)t[n]-=i,i=t[n]<e[n]?1:0,t[n]=i*r+t[n]-e[n];for(;!t[0]&&t.length>1;)t.shift()}return function(r,i,o,a,s,u){var c,l,h,d,f,p,y,m,g,v,w,b,M,A,I,N,E,x,k,T,L=r.constructor,S=r.s==i.s?1:-1,j=r.d,D=i.d;if(!(j&&j[0]&&D&&D[0]))return new L(r.s&&i.s&&(j?!D||j[0]!=D[0]:D)?j&&0==j[0]||!D?0*S:S/0:NaN);for(u?(f=1,l=r.e-i.e):(u=$k,f=7,l=Gk(r.e/f)-Gk(i.e/f)),k=D.length,E=j.length,v=(g=new L(S)).d=[],h=0;D[h]==(j[h]||0);h++);if(D[h]>(j[h]||0)&&l--,null==o?(A=o=L.precision,a=L.rounding):A=s?o+(r.e-i.e)+1:o,A<0)v.push(1),p=!0;else{if(A=A/f+2|0,h=0,1==k){for(d=0,D=D[0],A++;(h<E||d)&&A--;h++)I=d*u+(j[h]||0),v[h]=I/D|0,d=I%D|0;p=d||h<E}else{for((d=u/(D[0]+1)|0)>1&&(D=t(D,d,u),j=t(j,d,u),k=D.length,E=j.length),N=k,b=(w=j.slice(0,k)).length;b<k;)w[b++]=0;(T=D.slice()).unshift(0),x=D[0],D[1]>=u/2&&++x;do{d=0,(c=e(D,w,k,b))<0?(M=w[0],k!=b&&(M=M*u+(w[1]||0)),(d=M/x|0)>1?(d>=u&&(d=u-1),1==(c=e(y=t(D,d,u),w,m=y.length,b=w.length))&&(d--,n(y,k<m?T:D,m,u))):(0==d&&(c=d=1),y=D.slice()),(m=y.length)<b&&y.unshift(0),n(w,y,b,u),-1==c&&(c=e(D,w,k,b=w.length))<1&&(d++,n(w,k<b?T:D,b,u)),b=w.length):0===c&&(d++,w=[0]),v[h++]=d,c&&w[0]?w[b++]=j[N]||0:(w=[j[N]],b=1)}while((N++<E||void 0!==w[0])&&A--);p=void 0!==w[0]}v[0]||v.shift()}if(1==f)g.e=l,Pk=p;else{for(h=1,d=v[0];d>=10;d/=10)h++;g.e=h+l*f-1,uT(g,s?o+g.e+1:o,a,p)}return g}}();function uT(t,e,n,r){var i,o,a,s,u,c,l,h,d,f=t.constructor;t:if(null!=e){if(!(h=t.d))return t;for(i=1,s=h[0];s>=10;s/=10)i++;if((o=e-i)<0)o+=7,a=e,u=(l=h[d=0])/qk(10,i-a-1)%10|0;else if((d=Math.ceil((o+1)/7))>=(s=h.length)){if(!r)break t;for(;s++<=d;)h.push(0);l=u=0,i=1,a=(o%=7)-7+1}else{for(l=s=h[d],i=1;s>=10;s/=10)i++;u=(a=(o%=7)-7+i)<0?0:l/qk(10,i-a-1)%10|0}if(r=r||e<0||void 0!==h[d+1]||(a<0?l:l%qk(10,i-a-1)),c=n<4?(u||r)&&(0==n||n==(t.s<0?3:2)):u>5||5==u&&(4==n||r||6==n&&(o>0?a>0?l/qk(10,i-a):0:h[d-1])%10&1||n==(t.s<0?8:7)),e<1||!h[0])return h.length=0,c?(e-=t.e+1,h[0]=qk(10,(7-e%7)%7),t.e=-e||0):h[0]=t.e=0,t;if(0==o?(h.length=d,s=1,d--):(h.length=d+1,s=qk(10,7-o),h[d]=a>0?(l/qk(10,i-a)%qk(10,a)|0)*s:0),c)for(;;){if(0==d){for(o=1,a=h[0];a>=10;a/=10)o++;for(a=h[0]+=s,s=1;a>=10;a/=10)s++;o!=s&&(t.e++,h[0]==$k&&(h[0]=1));break}if(h[d]+=s,h[d]!=$k)break;h[d--]=0,s=1}for(o=h.length;0===h[--o];)h.pop()}return Fk&&(t.e>f.maxE?(t.d=null,t.e=NaN):t.e<f.minE&&(t.e=0,t.d=[0])),t}function cT(t,e,n){if(!t.isFinite())return bT(t);var r,i=t.e,o=rT(t.d),a=o.length;return e?(n&&(r=n-a)>0?o=o.charAt(0)+"."+o.slice(1)+pT(r):a>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(t.e<0?"e":"e+")+t.e):i<0?(o="0."+pT(-i-1)+o,n&&(r=n-a)>0&&(o+=pT(r))):i>=a?(o+=pT(i+1-a),n&&(r=n-i-1)>0&&(o=o+"."+pT(r))):((r=i+1)<a&&(o=o.slice(0,r)+"."+o.slice(r)),n&&(r=n-a)>0&&(i+1===a&&(o+="."),o+=pT(r))),o}function lT(t,e){var n=t[0];for(e*=7;n>=10;n/=10)e++;return e}function hT(t,e,n){if(e>tT)throw Fk=!0,n&&(t.precision=n),Error("[DecimalError] Precision limit exceeded");return uT(new t(Qk),e,1,!0)}function dT(t,e,n){if(e>eT)throw Error("[DecimalError] Precision limit exceeded");return uT(new t(Yk),e,n,!0)}function fT(t){var e=t.length-1,n=7*e+1;if(e=t[e]){for(;e%10==0;e/=10)n--;for(e=t[0];e>=10;e/=10)n++}return n}function pT(t){for(var e="";t--;)e+="0";return e}function yT(t,e,n,r){var i,o=new t(1),a=Math.ceil(r/7+4);for(Fk=!1;;){if(n%2&&kT((o=o.times(e)).d,a)&&(i=!0),0===(n=Gk(n/2))){n=o.d.length-1,i&&0===o.d[n]&&++o.d[n];break}kT((e=e.times(e)).d,a)}return Fk=!0,o}function mT(t){return 1&t.d[t.d.length-1]}function gT(t,e,n){for(var r,i=new t(e[0]),o=0;++o<e.length;){if(!(r=new t(e[o])).s){i=r;break}i[n](r)&&(i=r)}return i}function vT(t,e){var n,r,i,o,a,s,u,c=0,l=0,h=0,d=t.constructor,f=d.rounding,p=d.precision;if(!t.d||!t.d[0]||t.e>17)return new d(t.d?t.d[0]?t.s<0?0:1/0:1:t.s?t.s<0?0:t:NaN);for(null==e?(Fk=!1,u=p):u=e,s=new d(.03125);t.e>-2;)t=t.times(s),h+=5;for(u+=r=Math.log(qk(2,h))/Math.LN10*2+5|0,n=o=a=new d(1),d.precision=u;;){if(o=uT(o.times(t),u,1),n=n.times(++l),rT((s=a.plus(sT(o,n,u,1))).d).slice(0,u)===rT(a.d).slice(0,u)){for(i=h;i--;)a=uT(a.times(a),u,1);if(null!=e)return d.precision=p,a;if(!(c<3&&oT(a.d,u-r,f,c)))return uT(a,d.precision=p,f,Fk=!0);d.precision=u+=10,n=o=s=new d(1),l=0,c++}a=s}}function wT(t,e){var n,r,i,o,a,s,u,c,l,h,d,f=1,p=t,y=p.d,m=p.constructor,g=m.rounding,v=m.precision;if(p.s<0||!y||!y[0]||!p.e&&1==y[0]&&1==y.length)return new m(y&&!y[0]?-1/0:1!=p.s?NaN:y?0:p);if(null==e?(Fk=!1,l=v):l=e,m.precision=l+=10,r=(n=rT(y)).charAt(0),!(Math.abs(o=p.e)<15e14))return c=hT(m,l+2,v).times(o+""),p=wT(new m(r+"."+n.slice(1)),l-10).plus(c),m.precision=v,null==e?uT(p,v,g,Fk=!0):p;for(;r<7&&1!=r||1==r&&n.charAt(1)>3;)r=(n=rT((p=p.times(t)).d)).charAt(0),f++;for(o=p.e,r>1?(p=new m("0."+n),o++):p=new m(r+"."+n.slice(1)),h=p,u=a=p=sT(p.minus(1),p.plus(1),l,1),d=uT(p.times(p),l,1),i=3;;){if(a=uT(a.times(d),l,1),rT((c=u.plus(sT(a,new m(i),l,1))).d).slice(0,l)===rT(u.d).slice(0,l)){if(u=u.times(2),0!==o&&(u=u.plus(hT(m,l+2,v).times(o+""))),u=sT(u,new m(f),l,1),null!=e)return m.precision=v,u;if(!oT(u.d,l-10,g,s))return uT(u,m.precision=v,g,Fk=!0);m.precision=l+=10,c=a=p=sT(h.minus(1),h.plus(1),l,1),d=uT(p.times(p),l,1),i=s=1}u=c,i+=2}}function bT(t){return String(t.s*t.s/0)}function MT(t,e){var n,r,i;for((n=e.indexOf("."))>-1&&(e=e.replace(".","")),(r=e.search(/e/i))>0?(n<0&&(n=r),n+=+e.slice(r+1),e=e.substring(0,r)):n<0&&(n=e.length),r=0;48===e.charCodeAt(r);r++);for(i=e.length;48===e.charCodeAt(i-1);--i);if(e=e.slice(r,i)){if(i-=r,t.e=n=n-r-1,t.d=[],r=(n+1)%7,n<0&&(r+=7),r<i){for(r&&t.d.push(+e.slice(0,r)),i-=7;r<i;)t.d.push(+e.slice(r,r+=7));r=7-(e=e.slice(r)).length}else r-=i;for(;r--;)e+="0";t.d.push(+e),Fk&&(t.e>t.constructor.maxE?(t.d=null,t.e=NaN):t.e<t.constructor.minE&&(t.e=0,t.d=[0]))}else t.e=0,t.d=[0];return t}function AT(t,e){var n,r,i,o,a,s,u,c,l;if(e.indexOf("_")>-1){if(e=e.replace(/(\d)_(?=\d)/g,"$1"),Kk.test(e))return MT(t,e)}else if("Infinity"===e||"NaN"===e)return+e||(t.s=NaN),t.e=NaN,t.d=null,t;if(Jk.test(e))n=16,e=e.toLowerCase();else if(Zk.test(e))n=2;else{if(!Xk.test(e))throw Error(Vk+e);n=8}for((o=e.search(/p/i))>0?(u=+e.slice(o+1),e=e.substring(2,o)):e=e.slice(2),a=(o=e.indexOf("."))>=0,r=t.constructor,a&&(o=(s=(e=e.replace(".","")).length)-o,i=yT(r,new r(n),o,2*o)),o=l=(c=aT(e,n,$k)).length-1;0===c[o];--o)c.pop();return o<0?new r(0*t.s):(t.e=lT(c,l),t.d=c,Fk=!1,a&&(t=sT(t,i,4*s)),u&&(t=t.times(Math.abs(u)<54?qk(2,u):pL.pow(2,u))),Fk=!0,t)}function IT(t,e,n,r,i){var o,a,s,u,c=t.precision,l=Math.ceil(c/7);for(Fk=!1,u=n.times(n),s=new t(r);;){if(a=sT(s.times(u),new t(e++*e++),c,1),s=i?r.plus(a):r.minus(a),r=sT(a.times(u),new t(e++*e++),c,1),void 0!==(a=s.plus(r)).d[l]){for(o=l;a.d[o]===s.d[o]&&o--;);if(-1==o)break}o=s,s=r,r=a,a=o}return Fk=!0,a.d.length=l+1,a}function NT(t,e){for(var n=t;--e;)n*=t;return n}function ET(t,e){var n,r=e.s<0,i=dT(t,t.precision,1),o=i.times(.5);if((e=e.abs()).lte(o))return _k=r?4:1,e;if((n=e.divToInt(i)).isZero())_k=r?3:2;else{if((e=e.minus(n.times(i))).lte(o))return _k=mT(n)?r?2:3:r?4:1,e;_k=mT(n)?r?1:4:r?3:2}return e.minus(i).abs()}function xT(t,e,n,r){var i,o,a,s,u,c,l,h,d,f=t.constructor,p=void 0!==n;if(p?(iT(n,1,1e9),void 0===r?r=f.rounding:iT(r,0,8)):(n=f.precision,r=f.rounding),t.isFinite()){for(p?(i=2,16==e?n=4*n-3:8==e&&(n=3*n-2)):i=e,(a=(l=cT(t)).indexOf("."))>=0&&(l=l.replace(".",""),(d=new f(1)).e=l.length-a,d.d=aT(cT(d),10,i),d.e=d.d.length),o=u=(h=aT(l,10,i)).length;0==h[--u];)h.pop();if(h[0]){if(a<0?o--:((t=new f(t)).d=h,t.e=o,h=(t=sT(t,d,n,r,0,i)).d,o=t.e,c=Pk),a=h[n],s=i/2,c=c||void 0!==h[n+1],c=r<4?(void 0!==a||c)&&(0===r||r===(t.s<0?3:2)):a>s||a===s&&(4===r||c||6===r&&1&h[n-1]||r===(t.s<0?8:7)),h.length=n,c)for(;++h[--n]>i-1;)h[n]=0,n||(++o,h.unshift(1));for(u=h.length;!h[u-1];--u);for(a=0,l="";a<u;a++)l+=Uk.charAt(h[a]);if(p){if(u>1)if(16==e||8==e){for(a=16==e?4:3,--u;u%a;u++)l+="0";for(u=(h=aT(l,i,e)).length;!h[u-1];--u);for(a=1,l="1.";a<u;a++)l+=Uk.charAt(h[a])}else l=l.charAt(0)+"."+l.slice(1);l=l+(o<0?"p":"p+")+o}else if(o<0){for(;++o;)l="0"+l;l="0."+l}else if(++o>u)for(o-=u;o--;)l+="0";else o<u&&(l=l.slice(0,o)+"."+l.slice(o))}else l=p?"0p+0":"0";l=(16==e?"0x":2==e?"0b":8==e?"0o":"")+l}else l=bT(t);return t.s<0?"-"+l:l}function kT(t,e){if(t.length>e)return t.length=e,!0}function TT(t){return new this(t).abs()}function LT(t){return new this(t).acos()}function ST(t){return new this(t).acosh()}function jT(t,e){return new this(t).plus(e)}function DT(t){return new this(t).asin()}function CT(t){return new this(t).asinh()}function OT(t){return new this(t).atan()}function zT(t){return new this(t).atanh()}function PT(t,e){t=new this(t),e=new this(e);var n,r=this.precision,i=this.rounding,o=r+4;return t.s&&e.s?t.d||e.d?!e.d||t.isZero()?(n=e.s<0?dT(this,r,i):new this(0)).s=t.s:!t.d||e.isZero()?(n=dT(this,o,1).times(.5)).s=t.s:e.s<0?(this.precision=o,this.rounding=1,n=this.atan(sT(t,e,o,1)),e=dT(this,o,1),this.precision=r,this.rounding=i,n=t.s<0?n.minus(e):n.plus(e)):n=this.atan(sT(t,e,o,1)):(n=dT(this,o,1).times(e.s>0?.25:.75)).s=t.s:n=new this(NaN),n}function _T(t){return new this(t).cbrt()}function BT(t){return uT(t=new this(t),t.e+1,2)}function RT(t,e,n){return new this(t).clamp(e,n)}function UT(t){if(!t||"object"!=typeof t)throw Error("[DecimalError] Object expected");var e,n,r,i=!0===t.defaults,o=["precision",1,1e9,"rounding",0,8,"toExpNeg",-Rk,0,"toExpPos",0,Rk,"maxE",0,Rk,"minE",-Rk,0,"modulo",0,9];for(e=0;e<o.length;e+=3)if(n=o[e],i&&(this[n]=Wk[n]),void 0!==(r=t[n])){if(!(Gk(r)===r&&r>=o[e+1]&&r<=o[e+2]))throw Error(Vk+n+": "+r);this[n]=r}if(n="crypto",i&&(this[n]=Wk[n]),void 0!==(r=t[n])){if(!0!==r&&!1!==r&&0!==r&&1!==r)throw Error(Vk+n+": "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw Error("[DecimalError] crypto unavailable");this[n]=!0}else this[n]=!1}return this}function QT(t){return new this(t).cos()}function YT(t){return new this(t).cosh()}function WT(t,e){return new this(t).div(e)}function FT(t){return new this(t).exp()}function VT(t){return uT(t=new this(t),t.e+1,3)}function HT(){var t,e,n=new this(0);for(Fk=!1,t=0;t<arguments.length;)if((e=new this(arguments[t++])).d)n.d&&(n=n.plus(e.times(e)));else{if(e.s)return Fk=!0,new this(1/0);n=e}return Fk=!0,n.sqrt()}function GT(t){return t instanceof pL||t&&t.toStringTag===Hk||!1}function qT(t){return new this(t).ln()}function ZT(t,e){return new this(t).log(e)}function JT(t){return new this(t).log(2)}function XT(t){return new this(t).log(10)}function KT(){return gT(this,arguments,"lt")}function $T(){return gT(this,arguments,"gt")}function tL(t,e){return new this(t).mod(e)}function eL(t,e){return new this(t).mul(e)}function nL(t,e){return new this(t).pow(e)}function rL(t){var e,n,r,i,o=0,a=new this(1),s=[];if(void 0===t?t=this.precision:iT(t,1,1e9),r=Math.ceil(t/7),this.crypto)if(crypto.getRandomValues)for(e=crypto.getRandomValues(new Uint32Array(r));o<r;)(i=e[o])>=429e7?e[o]=crypto.getRandomValues(new Uint32Array(1))[0]:s[o++]=i%1e7;else{if(!crypto.randomBytes)throw Error("[DecimalError] crypto unavailable");for(e=crypto.randomBytes(r*=4);o<r;)(i=e[o]+(e[o+1]<<8)+(e[o+2]<<16)+((127&e[o+3])<<24))>=214e7?crypto.randomBytes(4).copy(e,o):(s.push(i%1e7),o+=4);o=r/4}else for(;o<r;)s[o++]=1e7*Math.random()|0;for(t%=7,(r=s[--o])&&t&&(i=qk(10,7-t),s[o]=(r/i|0)*i);0===s[o];o--)s.pop();if(o<0)n=0,s=[0];else{for(n=-1;0===s[0];n-=7)s.shift();for(r=1,i=s[0];i>=10;i/=10)r++;r<7&&(n-=7-r)}return a.e=n,a.d=s,a}function iL(t){return uT(t=new this(t),t.e+1,this.rounding)}function oL(t){return(t=new this(t)).d?t.d[0]?t.s:0*t.s:t.s||NaN}function aL(t){return new this(t).sin()}function sL(t){return new this(t).sinh()}function uL(t){return new this(t).sqrt()}function cL(t,e){return new this(t).sub(e)}function lL(){var t=0,e=arguments,n=new this(e[t]);for(Fk=!1;n.s&&++t<e.length;)n=n.plus(e[t]);return Fk=!0,uT(n,this.precision,this.rounding)}function hL(t){return new this(t).tan()}function dL(t){return new this(t).tanh()}function fL(t){return uT(t=new this(t),t.e+1,1)}nT[Symbol.for("nodejs.util.inspect.custom")]=nT.toString,nT[Symbol.toStringTag]="Decimal";var pL=nT.constructor=function t(e){var n,r,i;function o(t){var e,n,r,i=this;if(!(i instanceof o))return new o(t);if(i.constructor=o,GT(t))return i.s=t.s,void(Fk?!t.d||t.e>o.maxE?(i.e=NaN,i.d=null):t.e<o.minE?(i.e=0,i.d=[0]):(i.e=t.e,i.d=t.d.slice()):(i.e=t.e,i.d=t.d?t.d.slice():t.d));if("number"===(r=typeof t)){if(0===t)return i.s=1/t<0?-1:1,i.e=0,void(i.d=[0]);if(t<0?(t=-t,i.s=-1):i.s=1,t===~~t&&t<1e7){for(e=0,n=t;n>=10;n/=10)e++;return void(Fk?e>o.maxE?(i.e=NaN,i.d=null):e<o.minE?(i.e=0,i.d=[0]):(i.e=e,i.d=[t]):(i.e=e,i.d=[t]))}return 0*t!=0?(t||(i.s=NaN),i.e=NaN,void(i.d=null)):MT(i,t.toString())}if("string"!==r)throw Error(Vk+t);return 45===(n=t.charCodeAt(0))?(t=t.slice(1),i.s=-1):(43===n&&(t=t.slice(1)),i.s=1),Kk.test(t)?MT(i,t):AT(i,t)}if(o.prototype=nT,o.ROUND_UP=0,o.ROUND_DOWN=1,o.ROUND_CEIL=2,o.ROUND_FLOOR=3,o.ROUND_HALF_UP=4,o.ROUND_HALF_DOWN=5,o.ROUND_HALF_EVEN=6,o.ROUND_HALF_CEIL=7,o.ROUND_HALF_FLOOR=8,o.EUCLID=9,o.config=o.set=UT,o.clone=t,o.isDecimal=GT,o.abs=TT,o.acos=LT,o.acosh=ST,o.add=jT,o.asin=DT,o.asinh=CT,o.atan=OT,o.atanh=zT,o.atan2=PT,o.cbrt=_T,o.ceil=BT,o.clamp=RT,o.cos=QT,o.cosh=YT,o.div=WT,o.exp=FT,o.floor=VT,o.hypot=HT,o.ln=qT,o.log=ZT,o.log10=XT,o.log2=JT,o.max=KT,o.min=$T,o.mod=tL,o.mul=eL,o.pow=nL,o.random=rL,o.round=iL,o.sign=oL,o.sin=aL,o.sinh=sL,o.sqrt=uL,o.sub=cL,o.sum=lL,o.tan=hL,o.tanh=dL,o.trunc=fL,void 0===e&&(e={}),e&&!0!==e.defaults)for(i=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],n=0;n<i.length;)e.hasOwnProperty(r=i[n++])||(e[r]=this[r]);return o.config(e),o}(Wk);function yL(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}Qk=new pL(Qk),Yk=new pL(Yk);class mL{constructor({blockchain:t,tokenIn:e,decimalsIn:n,tokenOut:r,decimalsOut:i,path:o,pools:a,amountIn:s,amountInMax:u,amountOut:c,amountOutMin:l,exchange:h,approvalRequired:d,getApproval:f,getPrep:p,getTransaction:y}){this.blockchain=t,this.tokenIn=e,this.decimalsIn=n,this.tokenOut=r,this.decimalsOut=i,this.path=o,this.pools=a,this.amountIn=yL([s,"optionalAccess",t=>t.toString,"call",t=>t()]),this.amountOutMin=yL([l,"optionalAccess",t=>t.toString,"call",t=>t()]),this.amountOut=yL([c,"optionalAccess",t=>t.toString,"call",t=>t()]),this.amountInMax=yL([u,"optionalAccess",t=>t.toString,"call",t=>t()]),this.exchange=h,this.getPrep=p,this.getTransaction=y}}let gL=["ethereum","bsc","polygon","solana","fantom","arbitrum","avalanche","gnosis","optimism","base"];gL.evm=["ethereum","bsc","polygon","fantom","arbitrum","avalanche","gnosis","optimism","base"],gL.solana=["solana"];const vL=async({exchange:t,blockchain:e,pools:n,exchangePath:r,amountIn:i,amountOut:o})=>{let a=i.add(i.mul(100*parseFloat("0.5")).div(1e4));if(!gL.evm.includes(t.blockchain||e))return a;const s=await PI({blockchain:t.blockchain||e,method:"latestBlockNumber"});let u=[];for(var c=0;c<=2;c++)u.push(s-c);const l=await Promise.all(u.map((async i=>{let{amountIn:a}=await t.getAmounts({exchange:t,blockchain:e,path:r,pools:n,amountOut:o,block:i});return a})));if(!l[0]||!l[1]||!l[2])return a;let h;if(l[0].gt(l[1])&&l[1].gt(l[2])){const t=l[0].sub(l[1]),e=l[1].sub(l[2]),n=t.add(e).div(2);if(h=l[0].add(n),h.gt(a))return h}else if(!l[0].eq(l[1])&&!l[1].eq(l[2])){const t=l[0].sub(l[1]).abs(),e=l[1].sub(l[2]).abs();let n,r;if(n=t.lt(e)?t:e,r=l[0].gt(l[1])&&l[0].gt(l[2])?l[0]:l[1].gt(l[2])&&l[1].gt(l[0])?l[1]:l[2],h=r.add(n),h.gt(a))return h}return a},wL=async({exchange:t,blockchain:e,pools:n,exchangePath:r,amounts:i,tokenIn:o,tokenOut:a,amountIn:s,amountInMax:u,amountOut:c,amountOutMin:l,amountInInput:h,amountOutInput:d,amountInMaxInput:f,amountOutMinInput:p})=>{if(p||d){if(gL.evm.includes(t.blockchain||e))s=u=await vL({exchange:t,blockchain:e,pools:n,exchangePath:r,amountIn:s,amountOut:p||c});else if(gL.solana.includes(t.blockchain||e)){let e=[];await Promise.all(r.map(((o,a)=>{if(0!=a){let o=vL({exchange:t,pools:n,exchangePath:[r[a-1],r[a]],amountIn:i[a-1],amountOut:i[a]});return o.then((t=>e.push(t))),o}}))),e.push(i[i.length-1]),s=u=(i=e)[0]}}else if((f||h)&&gL.solana.includes(t.blockchain||e)){let e=[];await Promise.all(r.map(((n,o)=>{if(0!==o&&o<r.length-1)e.unshift(i[o]);else if(o===r.length-1){let n=(async({exchange:t,exchangePath:e,amountOut:n,amountIn:r})=>n.sub(n.mul(100*parseFloat("0.5")).div(1e4)))({exchange:t,exchangePath:[r[o-1],r[o]],amountIn:i[o-1],amountOut:i[o]});return n.then((t=>(e.unshift(t),t))),n}}))),e.push(i[0]),c=l=(i=e.slice().reverse())[i.length-1]}return{amountIn:s,amountInMax:u,amountOut:c,amountOutMin:l,amounts:i}},bL=t=>t.match("0x")?am(t):t;let ML=async({amount:t,blockchain:e,address:n})=>await Tk.BigNumber({amount:t,blockchain:e,address:n}),AL=async({blockchain:t,exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s})=>{let u={exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s};return o&&"number"==typeof o&&(u.amountOut=await ML({amount:o,blockchain:t,address:r})),s&&"number"==typeof s&&(u.amountOutMin=await ML({amount:s,blockchain:t,address:r})),i&&"number"==typeof i&&(u.amountIn=await ML({amount:i,blockchain:t,address:n})),a&&"number"==typeof a&&(u.amountInMax=await ML({amount:a,blockchain:t,address:n})),u};class IL{constructor(...t){Object.assign(this,...t)}async route({blockchain:t,tokenIn:e,tokenOut:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a}){return e===n?Promise.resolve():(void 0===t&&(this.scope?t=this.scope:1===this.blockchains.length&&(t=this.blockchains[0])),(({blockchain:t,exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s})=>{if(void 0===t&&null!=e.blockchains&&e.blockchains.length>1)throw"You need to provide a blockchain when calling route on an exchange that supports multiple blockchains!";if(void 0!==o&&void 0!==i)throw"You cannot set amountIn and amountOut at the same time, use amountInMax or amountOutMin to describe the non exact part of the swap!";if(void 0!==a&&void 0!==s)throw"You cannot set amountInMax and amountOutMin at the same time, use amountIn or amountOut to describe the part of the swap that needs to be exact!";if(void 0!==i&&void 0!==a)throw"Setting amountIn and amountInMax at the same time makes no sense. Decide if amountIn needs to be exact or not!";if(void 0!==o&&void 0!==s)throw"Setting amountOut and amountOutMin at the same time makes no sense. Decide if amountOut needs to be exact or not!"})({blockchain:t,exchange:this,tokenIn:e,tokenOut:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a}),await(({blockchain:t,exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s,findPath:u,getAmounts:c,getPrep:l,getTransaction:h,slippage:d})=>{if(n=bL(n),r=bL(r),[i,o,a,s].filter(Boolean).length>1)throw"You can only pass one: amountIn, amountOut, amountInMax or amountOutMin";if([i,o,a,s].filter(Boolean).length<1)throw"You need to pass exactly one: amountIn, amountOut, amountInMax or amountOutMin";return new Promise((async f=>{let{path:p,exchangePath:y,pools:m}=await u({blockchain:t,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s});if(void 0===p||0==p.length)return f();let g,[v,w,b,M]=[i,o,a,s];try{({amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s,amounts:g}=await c({exchange:e,blockchain:t,path:p,pools:m,tokenIn:n,tokenOut:r,amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s}))}catch(t){return f()}if([i,a,o,s].every((t=>null==t)))return f();if(d||e.slippage)try{({amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s,amounts:g}=await wL({exchange:e,blockchain:t,pools:m,exchangePath:y,amounts:g,tokenIn:n,tokenOut:r,amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s,amountInInput:v,amountOutInput:w,amountInMaxInput:b,amountOutMinInput:M}))}catch(t){return f()}const A=await new Tk({blockchain:t,address:n}).decimals(),I=await new Tk({blockchain:t,address:r}).decimals();f(new mL({blockchain:t,tokenIn:n,decimalsIn:A,tokenOut:r,decimalsOut:I,path:p,pools:m,amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s,exchange:e,getPrep:async({account:o})=>await l({exchange:e,blockchain:t,tokenIn:n,tokenOut:r,amountIn:i||a,account:o}),getTransaction:async({account:n,permit2:r,inputTokenPushed:u})=>await h({exchange:e,blockchain:t,pools:m,path:p,amountIn:i,amountInMax:a,amountOut:o,amountOutMin:s,amounts:g,amountInInput:v,amountOutInput:w,amountInMaxInput:b,amountOutMinInput:M,account:n,permit2:r,inputTokenPushed:u})}))}))})({...await AL({blockchain:t,exchange:this,tokenIn:e,tokenOut:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a}),blockchain:t,findPath:this.findPath,getAmounts:this.getAmounts,getPrep:this.getPrep,getTransaction:this.getTransaction,slippage:this.slippage}))}}function NL(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}const EL=({blockchain:t,exchange:e,path:n})=>{if(!n)return;let r=n.map(((e,r)=>e===Hf[t].currency.address&&n[r+1]!=Hf[t].wrapped.address&&n[r-1]!=Hf[t].wrapped.address?Hf[t].wrapped.address:e));return r[0]==Hf[t].currency.address&&r[1]==Hf[t].wrapped.address?r.splice(0,1):r[r.length-1]==Hf[t].currency.address&&r[r.length-2]==Hf[t].wrapped.address&&r.splice(r.length-1,1),r},xL=({reserves:t,min:e,token:n,token0:r,token1:i,decimals:o})=>r.toLowerCase()==n.toLowerCase()?t[0].gte(cI(e.toString(),o)):i.toLowerCase()==n.toLowerCase()&&t[1].gte(cI(e.toString(),o)),kL=async({blockchain:t,exchange:e,path:n})=>{const r=EL({blockchain:t,exchange:e,path:n});if(!r||1===r.length)return!1;try{let i=await PI({blockchain:t,address:e[t].factory.address,method:"getPair",api:e[t].factory.api,cache:36e5,params:EL({blockchain:t,exchange:e,path:n})});if(!i||i==Hf[t].zero)return!1;let[o,a,s]=await Promise.all([PI({blockchain:t,address:i,method:"getReserves",api:e[t].pair.api,cache:36e5}),PI({blockchain:t,address:i,method:"token0",api:e[t].pair.api,cache:36e5}),PI({blockchain:t,address:i,method:"token1",api:e[t].pair.api,cache:36e5})]);if(r.includes(Hf[t].wrapped.address))return xL({min:1,token:Hf[t].wrapped.address,decimals:Hf[t].currency.decimals,reserves:o,token0:a,token1:s});if(n.find((e=>Hf[t].stables.usd.includes(e)))){let e=n.find((e=>Hf[t].stables.usd.includes(e))),r=new Tk({blockchain:t,address:e}),i=await r.decimals();return xL({min:1e3,token:e,decimals:i,reserves:o,token0:a,token1:s})}return!0}catch(t){return console.log("e",t),!1}};let TL=({blockchain:t,exchange:e,path:n,amountIn:r,tokenIn:i,tokenOut:o})=>new Promise((i=>{PI({blockchain:t,address:e[t].router.address,method:"getAmountsOut",api:e[t].router.api,params:{amountIn:r,path:EL({blockchain:t,exchange:e,path:n})}}).then((t=>{i(t[t.length-1])})).catch((()=>i()))})),LL=({blockchain:t,exchange:e,path:n,amountOut:r,block:i})=>new Promise((o=>{PI({blockchain:t,address:e[t].router.address,method:"getAmountsIn",api:e[t].router.api,params:{amountOut:r,path:EL({blockchain:t,exchange:e,path:n})},block:i}).then((t=>o(t[0]))).catch((()=>o()))}));var SL={findPath:async({blockchain:t,exchange:e,tokenIn:n,tokenOut:r})=>{if([n,r].includes(Hf[t].currency.address)&&[n,r].includes(Hf[t].wrapped.address))return{path:void 0,exchangePath:void 0};let i;if(await kL({blockchain:t,exchange:e,path:[n,r]}))i=[n,r];else if(n!=Hf[t].wrapped.address&&await kL({blockchain:t,exchange:e,path:[n,Hf[t].wrapped.address]})&&r!=Hf[t].wrapped.address&&await kL({blockchain:t,exchange:e,path:[r,Hf[t].wrapped.address]}))i=[n,Hf[t].wrapped.address,r];else if(!Hf[t].stables.usd.includes(n)&&(await Promise.all(Hf[t].stables.usd.map((r=>kL({blockchain:t,exchange:e,path:[n,r]}))))).filter(Boolean).length&&r!=Hf[t].wrapped.address&&await kL({blockchain:t,exchange:e,path:[Hf[t].wrapped.address,r]})){let o=(await Promise.all(Hf[t].stables.usd.map((async r=>await kL({blockchain:t,exchange:e,path:[n,r]})?r:void 0)))).find(Boolean);i=[n,o,Hf[t].wrapped.address,r]}else if(n!=Hf[t].wrapped.address&&await kL({blockchain:t,exchange:e,path:[n,Hf[t].wrapped.address]})&&!Hf[t].stables.usd.includes(r)&&(await Promise.all(Hf[t].stables.usd.map((n=>kL({blockchain:t,exchange:e,path:[n,r]}))))).filter(Boolean).length){let o=(await Promise.all(Hf[t].stables.usd.map((async n=>await kL({blockchain:t,exchange:e,path:[n,r]})?n:void 0)))).find(Boolean);i=[n,Hf[t].wrapped.address,o,r]}return NL([i,"optionalAccess",t=>t.length])&&i[0]==Hf[t].currency.address?i.splice(1,0,Hf[t].wrapped.address):NL([i,"optionalAccess",t=>t.length])&&i[i.length-1]==Hf[t].currency.address&&i.splice(i.length-1,0,Hf[t].wrapped.address),{path:i,exchangePath:EL({blockchain:t,exchange:e,path:i})}},pathExists:kL,getAmounts:async({blockchain:t,exchange:e,path:n,block:r,tokenIn:i,tokenOut:o,amountOut:a,amountIn:s,amountInMax:u,amountOutMin:c})=>{if(a){if(null==(s=await LL({blockchain:t,exchange:e,block:r,path:n,amountOut:a,tokenIn:i,tokenOut:o}))||u&&s.gt(u))return{};void 0===u&&(u=s)}else if(s){if(null==(a=await TL({blockchain:t,exchange:e,path:n,amountIn:s,tokenIn:i,tokenOut:o}))||c&&a.lt(c))return{};void 0===c&&(c=a)}else if(c){if(null==(s=await LL({blockchain:t,exchange:e,block:r,path:n,amountOut:c,tokenIn:i,tokenOut:o}))||u&&s.gt(u))return{};void 0===u&&(u=s)}else if(u){if(null==(a=await TL({blockchain:t,exchange:e,path:n,amountIn:u,tokenIn:i,tokenOut:o}))||c&&a.lt(c))return{};void 0===c&&(c=a)}return{amountOut:a,amountIn:s,amountInMax:u,amountOutMin:c}},getPrep:async({exchange:t,blockchain:e,tokenIn:n,amountIn:r,account:i})=>{if(n===Hf[e].currency.address)return;const o=await PI({blockchain:e,address:n,method:"allowance",api:Tk[e][20],params:[i,t[e].router.address]});if(o.gte(r))return;return{transaction:{blockchain:e,from:i,to:n,api:Tk[e][20],method:"approve",params:[t[e].router.address,r.sub(o)]}}},getTransaction:({exchange:t,blockchain:e,path:n,amountIn:r,amountInMax:i,amountOut:o,amountOutMin:a,amountInInput:s,amountOutInput:u,amountInMaxInput:c,amountOutMinInput:l,account:h})=>{let d={blockchain:e,from:h,to:t[e].router.address,api:t[e].router.api};return n[0]===Hf[e].currency.address?s||l?(d.method="swapExactETHForTokens",d.value=r.toString(),d.params={amountOutMin:a.toString()}):(u||c)&&(d.method="swapETHForExactTokens",d.value=i.toString(),d.params={amountOut:o.toString()}):n[n.length-1]===Hf[e].currency.address?s||l?(d.method="swapExactTokensForETH",d.params={amountIn:r.toString(),amountOutMin:a.toString()}):(u||c)&&(d.method="swapTokensForExactETH",d.params={amountInMax:i.toString(),amountOut:o.toString()}):s||l?(d.method="swapExactTokensForTokens",d.params={amountIn:r.toString(),amountOutMin:a.toString()}):(u||c)&&(d.method="swapTokensForExactTokens",d.params={amountInMax:i.toString(),amountOut:o.toString()}),d.params=Object.assign({},d.params,{path:EL({blockchain:e,exchange:t,path:n}),to:h,deadline:Math.round(Date.now()/1e3)+86400}),d},ROUTER:[{inputs:[{internalType:"address",name:"_factory",type:"address"},{internalType:"address",name:"_WETH",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"WETH",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"},{internalType:"uint256",name:"amountADesired",type:"uint256"},{internalType:"uint256",name:"amountBDesired",type:"uint256"},{internalType:"uint256",name:"amountAMin",type:"uint256"},{internalType:"uint256",name:"amountBMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"addLiquidity",outputs:[{internalType:"uint256",name:"amountA",type:"uint256"},{internalType:"uint256",name:"amountB",type:"uint256"},{internalType:"uint256",name:"liquidity",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountTokenDesired",type:"uint256"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountETHMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"addLiquidityETH",outputs:[{internalType:"uint256",name:"amountToken",type:"uint256"},{internalType:"uint256",name:"amountETH",type:"uint256"},{internalType:"uint256",name:"liquidity",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"reserveIn",type:"uint256"},{internalType:"uint256",name:"reserveOut",type:"uint256"}],name:"getAmountIn",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"reserveIn",type:"uint256"},{internalType:"uint256",name:"reserveOut",type:"uint256"}],name:"getAmountOut",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"}],name:"getAmountsIn",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"}],name:"getAmountsOut",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amountA",type:"uint256"},{internalType:"uint256",name:"reserveA",type:"uint256"},{internalType:"uint256",name:"reserveB",type:"uint256"}],name:"quote",outputs:[{internalType:"uint256",name:"amountB",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountAMin",type:"uint256"},{internalType:"uint256",name:"amountBMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"removeLiquidity",outputs:[{internalType:"uint256",name:"amountA",type:"uint256"},{internalType:"uint256",name:"amountB",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountETHMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"removeLiquidityETH",outputs:[{internalType:"uint256",name:"amountToken",type:"uint256"},{internalType:"uint256",name:"amountETH",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountETHMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"removeLiquidityETHSupportingFeeOnTransferTokens",outputs:[{internalType:"uint256",name:"amountETH",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountETHMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"bool",name:"approveMax",type:"bool"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"removeLiquidityETHWithPermit",outputs:[{internalType:"uint256",name:"amountToken",type:"uint256"},{internalType:"uint256",name:"amountETH",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountETHMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"bool",name:"approveMax",type:"bool"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"removeLiquidityETHWithPermitSupportingFeeOnTransferTokens",outputs:[{internalType:"uint256",name:"amountETH",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"},{internalType:"uint256",name:"liquidity",type:"uint256"},{internalType:"uint256",name:"amountAMin",type:"uint256"},{internalType:"uint256",name:"amountBMin",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"bool",name:"approveMax",type:"bool"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"removeLiquidityWithPermit",outputs:[{internalType:"uint256",name:"amountA",type:"uint256"},{internalType:"uint256",name:"amountB",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapETHForExactTokens",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactETHForTokens",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactETHForTokensSupportingFeeOnTransferTokens",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForETH",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForETHSupportingFeeOnTransferTokens",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForTokens",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForTokensSupportingFeeOnTransferTokens",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapTokensForExactETH",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapTokensForExactTokens",outputs:[{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}],FACTORY:[{inputs:[{internalType:"address",name:"_feeToSetter",type:"address"}],payable:!1,stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token0",type:"address"},{indexed:!0,internalType:"address",name:"token1",type:"address"},{indexed:!1,internalType:"address",name:"pair",type:"address"},{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"PairCreated",type:"event"},{constant:!0,inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"allPairs",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"allPairsLength",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"}],name:"createPair",outputs:[{internalType:"address",name:"pair",type:"address"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"feeTo",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"feeToSetter",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"getPair",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"_feeTo",type:"address"}],name:"setFeeTo",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"_feeToSetter",type:"address"}],name:"setFeeToSetter",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"}],PAIR:[{inputs:[],payable:!1,stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"},{indexed:!0,internalType:"address",name:"to",type:"address"}],name:"Burn",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"}],name:"Mint",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint256",name:"amount0In",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1In",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount0Out",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1Out",type:"uint256"},{indexed:!0,internalType:"address",name:"to",type:"address"}],name:"Swap",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint112",name:"reserve0",type:"uint112"},{indexed:!1,internalType:"uint112",name:"reserve1",type:"uint112"}],name:"Sync",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{constant:!0,inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"MINIMUM_LIQUIDITY",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"PERMIT_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[{internalType:"address",name:"",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"to",type:"address"}],name:"burn",outputs:[{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"getReserves",outputs:[{internalType:"uint112",name:"_reserve0",type:"uint112"},{internalType:"uint112",name:"_reserve1",type:"uint112"},{internalType:"uint32",name:"_blockTimestampLast",type:"uint32"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"_token0",type:"address"},{internalType:"address",name:"_token1",type:"address"}],name:"initialize",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"kLast",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"to",type:"address"}],name:"mint",outputs:[{internalType:"uint256",name:"liquidity",type:"uint256"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{internalType:"address",name:"",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"price0CumulativeLast",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"price1CumulativeLast",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"to",type:"address"}],name:"skim",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{internalType:"uint256",name:"amount0Out",type:"uint256"},{internalType:"uint256",name:"amount1Out",type:"uint256"},{internalType:"address",name:"to",type:"address"},{internalType:"bytes",name:"data",type:"bytes"}],name:"swap",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[],name:"sync",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"token0",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"token1",outputs:[{internalType:"address",name:"",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"}]};const jL={name:"honeyswap",label:"Honeyswap",logo:"data:image/png;base64,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",protocol:"uniswap_v2",slippage:!0,blockchains:["gnosis"],gnosis:{router:{address:"0x1C232F01118CB8B424793ae03F870aa7D0ac7f77",api:SL.ROUTER},factory:{address:"0xA818b4F111Ccac7AA31D0BCc0806d64F2E0737D7",api:SL.FACTORY},pair:{api:SL.PAIR}}};var DL=t=>new IL(Object.assign(jL,{scope:t,findPath:t=>SL.findPath({...t,exchange:jL}),pathExists:t=>SL.pathExists({...t,exchange:jL}),getAmounts:t=>SL.getAmounts({...t,exchange:jL}),getPrep:t=>SL.getPrep({...t,exchange:jL}),getTransaction:t=>SL.getTransaction({...t,exchange:jL})}));const CL="79226673515401279992447579055",OL=t=>-t;class zL{static priceToSqrtPriceX64(t,e,n){return r=t.mul(pL.pow(10,n-e)).sqrt(),new rf(r.mul(pL.pow(2,64)).floor().toFixed());var r}static sqrtPriceX64ToPrice(t,e,n){return(r=t,new pL(r.toString()).mul(pL.pow(2,-64))).pow(2).mul(pL.pow(10,e-n));var r}static tickIndexToSqrtPriceX64(t){return new rf(t>0?function(t){let e;e=new rf(0!=(1&t)?"79232123823359799118286999567":"79228162514264337593543950336");0!=(2&t)&&(e=PL(e.mul(new rf("79236085330515764027303304731")),96,256));0!=(4&t)&&(e=PL(e.mul(new rf("79244008939048815603706035061")),96,256));0!=(8&t)&&(e=PL(e.mul(new rf("79259858533276714757314932305")),96,256));0!=(16&t)&&(e=PL(e.mul(new rf("79291567232598584799939703904")),96,256));0!=(32&t)&&(e=PL(e.mul(new rf("79355022692464371645785046466")),96,256));0!=(64&t)&&(e=PL(e.mul(new rf("79482085999252804386437311141")),96,256));0!=(128&t)&&(e=PL(e.mul(new rf("79736823300114093921829183326")),96,256));0!=(256&t)&&(e=PL(e.mul(new rf("80248749790819932309965073892")),96,256));0!=(512&t)&&(e=PL(e.mul(new rf("81282483887344747381513967011")),96,256));0!=(1024&t)&&(e=PL(e.mul(new rf("83390072131320151908154831281")),96,256));0!=(2048&t)&&(e=PL(e.mul(new rf("87770609709833776024991924138")),96,256));0!=(4096&t)&&(e=PL(e.mul(new rf("97234110755111693312479820773")),96,256));0!=(8192&t)&&(e=PL(e.mul(new rf("119332217159966728226237229890")),96,256));0!=(16384&t)&&(e=PL(e.mul(new rf("179736315981702064433883588727")),96,256));0!=(32768&t)&&(e=PL(e.mul(new rf("407748233172238350107850275304")),96,256));0!=(65536&t)&&(e=PL(e.mul(new rf("2098478828474011932436660412517")),96,256));0!=(131072&t)&&(e=PL(e.mul(new rf("55581415166113811149459800483533")),96,256));0!=(262144&t)&&(e=PL(e.mul(new rf("38992368544603139932233054999993551")),96,256));return PL(e,32,256)}(t):function(t){let e,n=Math.abs(t);e=new rf(0!=(1&n)?"18445821805675392311":"18446744073709551616");0!=(2&n)&&(e=PL(e.mul(new rf("18444899583751176498")),64,256));0!=(4&n)&&(e=PL(e.mul(new rf("18443055278223354162")),64,256));0!=(8&n)&&(e=PL(e.mul(new rf("18439367220385604838")),64,256));0!=(16&n)&&(e=PL(e.mul(new rf("18431993317065449817")),64,256));0!=(32&n)&&(e=PL(e.mul(new rf("18417254355718160513")),64,256));0!=(64&n)&&(e=PL(e.mul(new rf("18387811781193591352")),64,256));0!=(128&n)&&(e=PL(e.mul(new rf("18329067761203520168")),64,256));0!=(256&n)&&(e=PL(e.mul(new rf("18212142134806087854")),64,256));0!=(512&n)&&(e=PL(e.mul(new rf("17980523815641551639")),64,256));0!=(1024&n)&&(e=PL(e.mul(new rf("17526086738831147013")),64,256));0!=(2048&n)&&(e=PL(e.mul(new rf("16651378430235024244")),64,256));0!=(4096&n)&&(e=PL(e.mul(new rf("15030750278693429944")),64,256));0!=(8192&n)&&(e=PL(e.mul(new rf("12247334978882834399")),64,256));0!=(16384&n)&&(e=PL(e.mul(new rf("8131365268884726200")),64,256));0!=(32768&n)&&(e=PL(e.mul(new rf("3584323654723342297")),64,256));0!=(65536&n)&&(e=PL(e.mul(new rf("696457651847595233")),64,256));0!=(131072&n)&&(e=PL(e.mul(new rf("26294789957452057")),64,256));0!=(262144&n)&&(e=PL(e.mul(new rf("37481735321082")),64,256));return e}(t))}static sqrtPriceX64ToTickIndex(t){if(t.gt(new rf(CL))||t.lt(new rf("4295048016")))throw new Error("Provided sqrtPrice is not within the supported sqrtPrice range.");const e=t.bitLength()-1,n=function(t,e,n){let r=t.toTwos(n).shln(e);return r.imaskn(n+1),r.fromTwos(n)}(new rf(e-64),32,128);let r=new rf("8000000000000000","hex"),i=0,o=new rf(0),a=e>=64?t.shrn(e-63):t.shln(63-e);for(;r.gt(new rf(0))&&i<14;){a=a.mul(a);let t=a.shrn(127);a=a.shrn(63+t.toNumber()),o=o.add(r.mul(t)),r=r.shrn(1),i+=1}const s=o.shrn(32),u=n.add(s).mul(new rf("59543866431248")),c=PL(u.sub(new rf("184467440737095516")),64,128).toNumber(),l=PL(u.add(new rf("15793534762490258745")),64,128).toNumber();if(c==l)return c;return zL.tickIndexToSqrtPriceX64(l).lte(t)?l:c}static tickIndexToPrice(t,e,n){return zL.sqrtPriceX64ToPrice(zL.tickIndexToSqrtPriceX64(t),e,n)}static priceToTickIndex(t,e,n){return zL.sqrtPriceX64ToTickIndex(zL.priceToSqrtPriceX64(t,e,n))}static priceToInitializableTickIndex(t,e,n,r){return((t,e)=>t-t%e)(zL.priceToTickIndex(t,e,n),r)}static invertPrice(t,e,n){const r=zL.priceToTickIndex(t,e,n),i=OL(r);return zL.tickIndexToPrice(i,n,e)}static invertSqrtPriceX64(t){const e=zL.sqrtPriceX64ToTickIndex(t),n=OL(e);return zL.tickIndexToSqrtPriceX64(n)}}function PL(t,e,n){let r=t.toTwos(n).shrn(e);return r.imaskn(n-e+1),r.fromTwos(n-e)}const _L=new rf(1e4),BL=new rf(1e6),RL=new rf(0),UL=new rf(1),QL=new rf(2),YL=QL.pow(new rf(64)).sub(UL);class WL extends rf{toBuffer(){const t=super.toArray().reverse(),e=buffer.Buffer.from(t);if(8===e.length)return e;assert__default.default(e.length<8,"u64 too large");const n=buffer.Buffer.alloc(8);return e.copy(n),n}static fromBuffer(t){return assert__default.default(8===t.length,`Invalid buffer length: ${t.length}`),new WL([...t].reverse().map((t=>`00${t.toString(16)}`.slice(-2))).join(""),16)}}class FL{static mul(t,e,n){const r=t.mul(e);if(this.isOverLimit(r,n))throw new Error(`Mul result higher than u${n}`);return r}static mulDiv(t,e,n,r){return this.mulDivRoundUpIf(t,e,n,!1,r)}static mulDivRoundUp(t,e,n,r){return this.mulDivRoundUpIf(t,e,n,!0,r)}static mulDivRoundUpIf(t,e,n,r,i){if(n.eq(RL))throw new Error("mulDiv denominator is zero");const o=this.mul(t,e,i),a=o.div(n);return r&&o.mod(n).gt(RL)?a.add(UL):a}static checked_mul_shift_right(t,e,n){return this.checked_mul_shift_right_round_up_if(t,e,!1,n)}static checked_mul_shift_right_round_up_if(t,e,n,r){if(t.eq(RL)||e.eq(RL))return RL;const i=this.mul(t,e,r);if(this.isOverLimit(i,r))throw new Error(`MulShiftRight overflowed u${r}.`);const o=i.div(new rf(2).pow(new rf(64)));const a=n&&o.and(YL).gt(RL);if(a&&o.eq(YL))throw new Error(`MulShiftRight overflowed u${r}.`);return a?o.add(UL):o}static isOverLimit(t,e){const n=QL.pow(new rf(e)).sub(UL);return t.gt(n)}static divRoundUp(t,e){return this.divRoundUpIf(t,e,!0)}static divRoundUpIf(t,e,n){if(e.eq(RL))throw new Error("divRoundUpIf - divide by zero");let r=t.div(e);return n&&t.mod(e).gt(RL)?r.add(UL):r}}const VL=(t,e,n)=>{const r=zL.tickIndexToSqrtPriceX64(t);return{nextTickPrice:r,nextSqrtPriceLimit:n?rf.max(e,r):rf.min(e,r)}},HL=(t,e)=>t.gt(e)?[e,t]:[t,e],GL=(t,e,n,r)=>{let[i,o]=HL(t,e),a=o.sub(i),s=n.mul(a).shln(64),u=i.mul(o),c=s.div(u),l=s.mod(u),h=r&&!l.eq(RL)?c.add(UL):c;if(h.gt(YL))throw new Error("Results larger than U64");return h},qL=(t,e,n,r)=>{let[i,o]=HL(t,e),a=o.sub(i);return FL.checked_mul_shift_right_round_up_if(n,a,r,128)},ZL=(t,e,n,r,i)=>r===i?((t,e,n,r)=>{if(n.eq(RL))return t;let i=FL.mul(t,n,256),o=FL.mul(e,t,256).shln(64);if(FL.isOverLimit(o,256))throw new Error("getNextSqrtPriceFromARoundUp - numerator overflow u256");let a=e.shln(64);if(!r&&a.lte(i))throw new Error("getNextSqrtPriceFromARoundUp - Unable to divide currLiquidityX64 by product");let s=r?a.add(i):a.sub(i),u=FL.divRoundUp(o,s);if(u.lt(new rf("4295048016")))throw new Error("getNextSqrtPriceFromARoundUp - price less than min sqrt price");if(u.gt(new rf(CL)))throw new Error("getNextSqrtPriceFromARoundUp - price less than max sqrt price");return u})(t,e,n,r):((t,e,n,r)=>{let i=n.shln(64),o=FL.divRoundUpIf(i,e,!r);return r?t.add(o):t.sub(o)})(t,e,n,r),JL=(t,e,n,r,i)=>i===r?GL(t,e,n,r):qL(t,e,n,r),XL=(t,e,n,r,i,o,a)=>{let s=JL(r,i,n,o,a),u=t;if(o){u=FL.mulDiv(t,BL.sub(new rf(e)),BL,128)}let c=u.gte(s)?i:ZL(r,n,u,o,a),l=c.eq(i),h=((t,e,n,r,i)=>i===r?qL(t,e,n,!r):GL(t,e,n,!r))(r,c,n,o,a);l||(s=JL(r,c,n,o,a));let d,f=o?s:h,p=o?h:s;if(!o&&p.gt(t)&&(p=t),o&&!l)d=t.sub(f);else{const t=new rf(e);d=FL.mulDivRoundUp(f,t,BL.sub(t),128)}return{amountIn:f,amountOut:p,nextPrice:c,feeAmount:d}},KL=(t,e,n)=>n?e.sub(t):e.add(t),$L=(t,e,n,r,i)=>{let o=r,a=i,s=t;if(e>0){let t=((t,e)=>t.mul(new WL(e).div(_L)))(s,e);s=s.sub(t),o=o.add(r)}if(n.gt(RL)){const t=s.shln(64).div(n);a=a.add(t)}return{nextProtocolFee:o,nextFeeGrowthGlobalInput:a}},tS=pf([hf("mint"),hf("vault"),hf("authority"),yf("emissionsPerSecondX64"),yf("growthGlobalX64")]),eS=pf([vf("anchorDiscriminator"),hf("whirlpoolsConfig"),Kd(wf(),1,"whirlpoolBump"),mf("tickSpacing"),Kd(wf(),2,"tickSpacingSeed"),mf("feeRate"),mf("protocolFeeRate"),yf("liquidity"),yf("sqrtPrice"),uf("tickCurrentIndex"),vf("protocolFeeOwedA"),vf("protocolFeeOwedB"),hf("tokenMintA"),hf("tokenVaultA"),yf("feeGrowthGlobalA"),hf("tokenMintB"),hf("tokenVaultB"),yf("feeGrowthGlobalB"),vf("rewardLastUpdatedTimestamp"),Kd(tS,3,"rewardInfos")]),nS=pf([af("initialized"),sf("liquidityNet"),yf("liquidityGross"),yf("feeGrowthOutsideA"),yf("feeGrowthOutsideB"),Kd(yf(),3,"reward_growths_outside")]),rS=pf([vf("anchorDiscriminator"),uf("startTickIndex"),Kd(nS,88,"ticks"),hf("whirlpool")]),iS=(t,e,n)=>{const r=(Math.floor(t/e/88)+n)*e*88,i=88*e;if(r<-443636-(-443636%i+i))throw`startTickIndex is too small - - ${r}`;if(r>443636)throw`startTickIndex is too large - ${r}`;return r},oS=async({pool:t,freshWhirlpoolData:e,aToB:n})=>{const r=await(async({aToB:t,pool:e,tickSpacing:n,tickCurrentIndex:r})=>{const i=t?0:n;let o=0,a=[];for(let s=0;s<3;s++){let s;try{s=iS(r+i,n,o)}catch(t){return a}const u=(await Xs.findProgramAddress([nf.from("tick_array"),new Xs(e.toString()).toBuffer(),nf.from(s.toString())],new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc")))[0];a.push(u),o=t?o-1:o+1}return a})({aToB:n,pool:t,tickSpacing:e.tickSpacing,tickCurrentIndex:e.tickCurrentIndex});return await Promise.all(r.map((async(t,e)=>{let n;try{n=await PI({blockchain:"solana",address:t.toString(),api:rS,cache:10})}catch(t){}return{address:t,data:n}})))};class aS{static fromTickIndex(t,e){const n=Math.floor(Math.floor(t/e)/88);let r=Math.floor(t%(88*e)/e);return r<0&&(r=88+r),new aS(n,r,e)}constructor(t,e,n){if(e>=88)throw new Error("Invalid offsetIndex - value has to be smaller than TICK_ARRAY_SIZE");if(e<0)throw new Error("Invalid offsetIndex - value is smaller than 0");if(n<0)throw new Error("Invalid tickSpacing - value is less than 0");this.arrayIndex=t,this.offsetIndex=e,this.tickSpacing=n}toTickIndex(){return 88*this.arrayIndex*this.tickSpacing+this.offsetIndex*this.tickSpacing}toNextInitializableTickIndex(){return aS.fromTickIndex(this.toTickIndex()+this.tickSpacing,this.tickSpacing)}toPrevInitializableTickIndex(){return aS.fromTickIndex(this.toTickIndex()-this.tickSpacing,this.tickSpacing)}}class sS{constructor(t,e,n){if(!t[0]||!t[0].data)throw new Error("TickArray index 0 must be initialized");this.sequence=[];for(const e of t){if(!e||!e.data)break;this.sequence.push({address:e.address,data:e.data})}this.tickArrays=t,this.tickSpacing=e,this.aToB=n,this.touchedArrays=[...Array(this.sequence.length).fill(!1)],this.startArrayIndex=aS.fromTickIndex(this.sequence[0].data.startTickIndex,this.tickSpacing).arrayIndex}isValidTickArray0(t){const e=this.aToB?0:this.tickSpacing,n=this.sequence[0].data;return this.checkIfIndexIsInTickArrayRange(n.startTickIndex,t+e)}getNumOfTouchedArrays(){return this.touchedArrays.filter((t=>!!t)).length}getTouchedArrays(t){let e=this.touchedArrays.reduce(((t,e,n)=>(e&&t.push(this.sequence[n].address),t)),[]);if(0===e.length)return[];const n=t-e.length;return n>0&&(e=e.concat(Array(n).fill(e[e.length-1]))),e}getTick(t){const e=aS.fromTickIndex(t,this.tickSpacing);if(!this.isArrayIndexInBounds(e,this.aToB))throw new Error("Provided tick index is out of bounds for this sequence.");const n=this.getLocalArrayIndex(e.arrayIndex,this.aToB),r=this.sequence[n].data;if(this.touchedArrays[n]=!0,!r)throw new Error(`TickArray at index ${n} is not initialized.`);if(!this.checkIfIndexIsInTickArrayRange(r.startTickIndex,t))throw new Error(`TickArray at index ${n} is unexpected for this sequence.`);return r.ticks[e.offsetIndex]}findNextInitializedTickIndex(t){const e=this.aToB?t:t+this.tickSpacing;let n=aS.fromTickIndex(e,this.tickSpacing);if(!this.isArrayIndexInBounds(n,this.aToB))throw new Error(`Swap input value traversed too many arrays. Out of bounds at attempt to traverse tick index - ${n.toTickIndex()}.`);for(;this.isArrayIndexInBounds(n,this.aToB);){const t=this.getTick(n.toTickIndex());if(t.initialized)return{nextIndex:n.toTickIndex(),nextTickData:t};n=this.aToB?n.toPrevInitializableTickIndex():n.toNextInitializableTickIndex()}return{nextIndex:Math.max(Math.min(this.aToB?n.toTickIndex()+this.tickSpacing:n.toTickIndex()-1,443636),-443636),nextTickData:null}}getLocalArrayIndex(t,e){return e?this.startArrayIndex-t:t-this.startArrayIndex}isArrayIndexInBounds(t,e){const n=this.getLocalArrayIndex(t.arrayIndex,e),r=this.sequence.length;return n>=0&&n<r}checkIfIndexIsInTickArrayRange(t,e){const n=t+88*this.tickSpacing;return e>=t&&e<n}}const uS=async({account:t,tokenIn:e,tokenOut:n,amountIn:r,amountInMax:i,amountOut:o,amountOutMin:a})=>{try{const n=await PI({blockchain:"solana",address:t.pubkey.toString(),api:eS,cache:10}),s=n.tokenMintA.toString()===e,u=await oS({pool:t.pubkey,freshWhirlpoolData:n,aToB:s}),c=new sS(u,n.tickSpacing,s),l=new rf(s?"4295048016":CL),h=!(!r&&!i);return{price:(({tokenAmount:t,aToB:e,freshWhirlpoolData:n,tickSequence:r,sqrtPriceLimit:i,amountSpecifiedIsInput:o})=>{let a=t,s=RL,u=n.sqrtPrice,c=n.liquidity,l=n.tickCurrentIndex,h=RL;const d=n.feeRate,f=n.protocolFeeRate;let p=new WL(0),y=e?n.feeGrowthGlobalA:n.feeGrowthGlobalB;for(;a.gt(RL)&&!i.eq(u);){let{nextIndex:t}=r.findNextInitializedTickIndex(l),{nextTickPrice:n,nextSqrtPriceLimit:m}=VL(t,i,e);const g=XL(a,d,c,u,m,o,e);h=h.add(g.feeAmount),o?(a=a.sub(g.amountIn),a=a.sub(g.feeAmount),s=s.add(g.amountOut)):(a=a.sub(g.amountOut),s=s.add(g.amountIn),s=s.add(g.feeAmount));let{nextProtocolFee:v,nextFeeGrowthGlobalInput:w}=$L(g.feeAmount,f,c,p,y);if(p=v,y=w,g.nextPrice.eq(n)){const n=r.getTick(t);n.initialized&&(c=KL(n.liquidityNet,c,e)),l=e?t-1:t}else l=zL.sqrtPriceX64ToTickIndex(g.nextPrice);u=g.nextPrice}return s})({tokenAmount:new rf((r||i||o||a).toString()),aToB:s,freshWhirlpoolData:n,tickSequence:c,sqrtPriceLimit:l,amountSpecifiedIsInput:h}).toString(),tickArrays:u,aToB:s,sqrtPriceLimit:l}}catch(t){return{price:void 0,tickArrays:void 0,aToB:void 0,sqrtPriceLimit:void 0}}};let cS=async(t,e)=>{if(e===Hf.solana.wrapped.address)return[];return await PI("solana://whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc/getProgramAccounts",{params:{filters:[{dataSize:eS.span},{memcmp:{offset:8,bytes:"2LecshUwdy9xi7meFgHtFJQNSKk4KdTrcpvaB56dP2NQ"}},{memcmp:{offset:101,bytes:t}},{memcmp:{offset:181,bytes:e}}]},api:eS,cache:86400,cacheKey:["whirlpool",t.toString(),e.toString()].join("-")})},lS=async({tokenIn:t,tokenOut:e,amountIn:n,amountInMax:r,amountOut:i,amountOutMin:o})=>{try{let a=await cS(t,e);return 0===a.length&&(a=await cS(e,t)),a=a.filter((t=>t.data.liquidity.gt(1))),a=(await Promise.all(a.map((async a=>{const{price:s,tickArrays:u,sqrtPriceLimit:c,aToB:l}=await uS({account:a,tokenIn:t,tokenOut:e,amountIn:n,amountInMax:r,amountOut:i,amountOutMin:o});return void 0!==s&&{pubkey:a.pubkey,price:s,tickArrays:u,sqrtPriceLimit:c,aToB:l,data:{tokenVaultA:a.data.tokenVaultA,tokenVaultB:a.data.tokenVaultB}}})))).filter(Boolean),a}catch(t){return[]}},hS=async({tokenIn:t,tokenOut:e,amountIn:n,amountInMax:r,amountOut:i,amountOutMin:o})=>{const a=await lS({tokenIn:t,tokenOut:e,amountIn:n,amountInMax:r,amountOut:i,amountOutMin:o});if(!a||0===a.length)return;let s;return s=n||r?(t=>t.reduce(((t,e)=>Fp.from(e.price).gt(Fp.from(t.price))?e:t)))(a):(t=>t.reduce(((t,e)=>Fp.from(e.price).lt(Fp.from(t.price))?e:t)))(a),s};function dS(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}const fS=Hf.solana;let pS=({path:t})=>{if(!t)return;let e=t.map(((e,n)=>e===fS.currency.address&&t[n+1]!=fS.wrapped.address&&t[n-1]!=fS.wrapped.address?fS.wrapped.address:e));return e[0]==fS.currency.address&&e[1]==fS.wrapped.address?e.splice(0,1):e[e.length-1]==fS.currency.address&&e[e.length-2]==fS.wrapped.address&&e.splice(e.length-1,1),e},yS=async({path:t,amountIn:e,amountInMax:n,amountOut:r,amountOutMin:i})=>1!=t.length&&(t=pS({path:t}),(await lS({tokenIn:t[0],tokenOut:t[1],amountIn:e,amountInMax:n,amountOut:r,amountOutMin:i})).length>0),mS=async({path:t,amountIn:e,amountInMax:n})=>{let r=[Fp.from(e||n)];if(r.push(Fp.from((await hS({tokenIn:t[0],tokenOut:t[1],amountIn:e,amountInMax:n})).price)),3===t.length&&r.push(Fp.from((await hS({tokenIn:t[1],tokenOut:t[2],amountIn:e?r[1]:void 0,amountInMax:n?r[1]:void 0})).price)),r.length==t.length)return r},gS=async({path:t,amountOut:e,amountOutMin:n})=>{t=t.slice().reverse();let r=[Fp.from(e||n)];if(r.push(Fp.from((await hS({tokenIn:t[1],tokenOut:t[0],amountOut:e,amountOutMin:n})).price)),3===t.length&&r.push(Fp.from((await hS({tokenIn:t[2],tokenOut:t[1],amountOut:e?r[1]:void 0,amountOutMin:n?r[1]:void 0})).price)),r.length==t.length)return r.slice().reverse()};const vS=Hf.solana,wS=new rf("14449647541112719096"),bS=new rf("16635068063392030915"),MS=async({instructions:t,owner:e,token:n,account:r})=>{let i;try{i=!!await PI({blockchain:"solana",address:r.toString()})}catch(t){}i||t.push(await Tk.solana.createAssociatedTokenAccountInstruction({token:n,owner:e,payer:e}))},AS=async({account:t,poolOne:e,tickArraysOne:n,tokenAccountOneA:r,tokenVaultOneA:i,tokenAccountOneB:o,tokenVaultOneB:a,poolTwo:s,tickArraysTwo:u,tokenAccountTwoA:c,tokenVaultTwoA:l,tokenAccountTwoB:h,tokenVaultTwoB:d})=>{let f=!1;const p=n.map(((t,e)=>!1!==f?n[f]:t.data?t:(f=e-1,n[e-1])));let y=!1;const m=u.map(((t,e)=>!1!==y?u[y]:t.data?t:(y=e-1,u[e-1])));return[{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isWritable:!1,isSigner:!1},{pubkey:new Xs(t),isWritable:!1,isSigner:!0},{pubkey:new Xs(e.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(s.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(r.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(i.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(o.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(a.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(c.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(l.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(h.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(d.toString()),isWritable:!0,isSigner:!1},{pubkey:p[0].address,isWritable:!0,isSigner:!1},{pubkey:p[1].address,isWritable:!0,isSigner:!1},{pubkey:p[2].address,isWritable:!0,isSigner:!1},{pubkey:m[0].address,isWritable:!0,isSigner:!1},{pubkey:m[1].address,isWritable:!0,isSigner:!1},{pubkey:m[2].address,isWritable:!0,isSigner:!1},{pubkey:(await Xs.findProgramAddress([nf.from("oracle"),new Xs(e.toString()).toBuffer()],new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc")))[0],isWritable:!1,isSigner:!1},{pubkey:(await Xs.findProgramAddress([nf.from("oracle"),new Xs(s.toString()).toBuffer()],new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc")))[0],isWritable:!1,isSigner:!1}]},IS=({amount:t,otherAmountThreshold:e,amountSpecifiedIsInput:n,aToBOne:r,aToBTwo:i,sqrtPriceLimitOne:o,sqrtPriceLimitTwo:a})=>{let s,u;return s=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),af("amountSpecifiedIsInput"),af("aToBOne"),af("aToBTwo"),yf("sqrtPriceLimitOne"),yf("sqrtPriceLimitTwo")]),u=nf.alloc(s.span),s.encode({anchorDiscriminator:bS,amount:new rf(t.toString()),otherAmountThreshold:new rf(e.toString()),amountSpecifiedIsInput:n,aToBOne:r,aToBTwo:i,sqrtPriceLimitOne:o,sqrtPriceLimitTwo:a},u),u},NS=async({account:t,pool:e,tokenAccountA:n,tokenVaultA:r,tokenAccountB:i,tokenVaultB:o,tickArrays:a})=>{let s=!1;const u=a.map(((t,e)=>!1!==s?a[s]:t.data?t:(s=e-1,a[e-1])));return[{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isWritable:!1,isSigner:!1},{pubkey:new Xs(t),isWritable:!1,isSigner:!0},{pubkey:new Xs(e.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(n.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(r.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(i.toString()),isWritable:!0,isSigner:!1},{pubkey:new Xs(o.toString()),isWritable:!0,isSigner:!1},{pubkey:u[0].address,isWritable:!0,isSigner:!1},{pubkey:u[1].address,isWritable:!0,isSigner:!1},{pubkey:u[2].address,isWritable:!0,isSigner:!1},{pubkey:(await Xs.findProgramAddress([nf.from("oracle"),new Xs(e.toString()).toBuffer()],new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc")))[0],isWritable:!1,isSigner:!1}]},ES=({amount:t,otherAmountThreshold:e,sqrtPriceLimit:n,amountSpecifiedIsInput:r,aToB:i})=>{let o,a;return o=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),yf("sqrtPriceLimit"),af("amountSpecifiedIsInput"),af("aToB")]),a=nf.alloc(o.span),o.encode({anchorDiscriminator:wS,amount:new rf(t.toString()),otherAmountThreshold:new rf(e.toString()),sqrtPriceLimit:n,amountSpecifiedIsInput:r,aToB:i},a),a};var xS={findPath:async({tokenIn:t,tokenOut:e,amountIn:n,amountOut:r,amountInMax:i,amountOutMin:o})=>{if([t,e].includes(fS.currency.address)&&[t,e].includes(fS.wrapped.address))return{path:void 0,exchangePath:void 0};let a,s,u,c;return await yS({path:[t,e],amountIn:n,amountInMax:i,amountOut:r,amountOutMin:o})?a=[t,e]:t!=fS.wrapped.address&&t!=fS.currency.address&&await yS({path:[t,fS.wrapped.address],amountIn:n,amountInMax:i,amountOut:r,amountOutMin:o})&&e!=fS.wrapped.address&&e!=fS.currency.address&&await yS({path:[e,fS.wrapped.address],amountIn:r||o,amountInMax:r||o,amountOut:n||i,amountOutMin:n||i})?a=[t,fS.wrapped.address,e]:!fS.stables.usd.includes(t)&&(s=(await Promise.all(fS.stables.usd.map((async e=>await yS({path:[t,e],amountIn:n,amountInMax:i,amountOut:r,amountOutMin:o})?e:void 0)))).filter(Boolean))&&!fS.stables.usd.includes(e)&&(u=(await Promise.all(fS.stables.usd.map((async t=>await yS({path:[e,t],amountIn:r||o,amountInMax:r||o,amountOut:n||i,amountOutMin:n||i})?t:void 0)))).filter(Boolean))&&(c=s.filter((t=>u.includes(t)))[0])&&(a=[t,c,e]),dS([a,"optionalAccess",t=>t.length])&&a[0]==fS.currency.address?a.splice(1,0,fS.wrapped.address):dS([a,"optionalAccess",t=>t.length])&&a[a.length-1]==fS.currency.address&&a.splice(a.length-1,0,fS.wrapped.address),{path:a,exchangePath:pS({path:a})}},pathExists:yS,getAmounts:async({path:t,tokenIn:e,tokenOut:n,amountOut:r,amountIn:i,amountInMax:o,amountOutMin:a})=>{let s;if(t=pS({path:t}),r){if(s=await gS({path:t,amountOut:r,tokenIn:e,tokenOut:n}),null==(i=s?s[0]:void 0)||o&&i.gt(o))return{};void 0===o&&(o=i)}else if(i){if(s=await mS({path:t,amountIn:i,tokenIn:e,tokenOut:n}),null==(r=s?s[s.length-1]:void 0)||a&&r.lt(a))return{};void 0===a&&(a=r)}else if(a){if(s=await gS({path:t,amountOutMin:a,tokenIn:e,tokenOut:n}),null==(i=s?s[0]:void 0)||o&&i.gt(o))return{};void 0===o&&(o=i)}else if(o){if(s=await mS({path:t,amountInMax:o,tokenIn:e,tokenOut:n}),null==(r=s?s[s.length-1]:void 0)||a&&r.lt(a))return{};void 0===a&&(a=r)}return{amountOut:r||a,amountIn:i||o,amountInMax:o||i,amountOutMin:a||r,amounts:s}},getTransaction:async({path:t,amountIn:e,amountInMax:n,amountOut:r,amountOutMin:i,amounts:o,amountInInput:a,amountOutInput:s,amountInMaxInput:u,amountOutMinInput:c,account:l})=>{let h={blockchain:"solana"},d=[];const f=pS({path:t});if(f.length>3)throw"Orca can only handle fixed paths with a max length of 3 (2 pools)!";const p=f[0],y=3==f.length?f[1]:void 0,m=f[f.length-1];let g;2==f.length?g=[await hS({tokenIn:p,tokenOut:m,amountIn:a||u,amountOut:s||c})]:a||u?(g=[await hS({tokenIn:p,tokenOut:y,amountIn:a||u})],g.push(await hS({tokenIn:y,tokenOut:m,amountIn:g[0].price}))):(g=[await hS({tokenIn:y,tokenOut:m,amountOut:s||c})],g.unshift(await hS({tokenIn:p,tokenOut:y,amountOut:g[0].price})));let v,w=t[0]===vS.currency.address&&f[0]===vS.wrapped.address,b=t[t.length-1]===vS.currency.address&&f[f.length-1]===vS.wrapped.address;const M=await LI("solana");if(w||b){const t=await M.getMinimumBalanceForRentExemption(Tk.solana.TOKEN_LAYOUT.span),n=Zl.generate();v=n.publicKey.toString();const r=w?new rf(e.toString()).add(new rf(t)):new rf(t);let i=Wu.createAccount({fromPubkey:new Xs(l),newAccountPubkey:new Xs(v),programId:new Xs(Tk.solana.TOKEN_PROGRAM),space:Tk.solana.TOKEN_LAYOUT.span,lamports:r});i.signers=[n],d.push(i),d.push(Tk.solana.initializeAccountInstruction({account:v,token:vS.wrapped.address,owner:l}))}if(1===g.length){let t=!(!a&&!c),o=t?e:r,s=t?i:n,u=new Xs(w?v:await Tk.solana.findProgramAddress({owner:l,token:p})),h=new Xs(b?v:await Tk.solana.findProgramAddress({owner:l,token:m}));b||await MS({instructions:d,owner:l,token:m,account:h}),d.push(new gu({programId:new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"),keys:await NS({account:l,pool:g[0].pubkey,tokenAccountA:g[0].aToB?u:h,tokenVaultA:g[0].data.tokenVaultA,tokenAccountB:g[0].aToB?h:u,tokenVaultB:g[0].data.tokenVaultB,tickArrays:g[0].tickArrays}),data:ES({amount:o,otherAmountThreshold:s,sqrtPriceLimit:g[0].sqrtPriceLimit,amountSpecifiedIsInput:t,aToB:g[0].aToB})}))}else if(2===g.length){let t=!(!a&&!c),o=t?e:r,s=t?i:n,u=new Xs(w?v:await Tk.solana.findProgramAddress({owner:l,token:p})),h=f[1],y=new Xs(await Tk.solana.findProgramAddress({owner:l,token:h}));await MS({instructions:d,owner:l,token:h,account:y});let M=new Xs(b?v:await Tk.solana.findProgramAddress({owner:l,token:m}));b||await MS({instructions:d,owner:l,token:m,account:M}),d.push(new gu({programId:new Xs("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"),keys:await AS({account:l,poolOne:g[0].pubkey,tickArraysOne:g[0].tickArrays,tokenAccountOneA:g[0].aToB?u:y,tokenVaultOneA:g[0].data.tokenVaultA,tokenAccountOneB:g[0].aToB?y:u,tokenVaultOneB:g[0].data.tokenVaultB,poolTwo:g[1].pubkey,tickArraysTwo:g[1].tickArrays,tokenAccountTwoA:g[1].aToB?y:M,tokenVaultTwoA:g[1].data.tokenVaultA,tokenAccountTwoB:g[1].aToB?M:y,tokenVaultTwoB:g[1].data.tokenVaultB}),data:IS({amount:o,otherAmountThreshold:s,amountSpecifiedIsInput:t,aToBOne:g[0].aToB,aToBTwo:g[1].aToB,sqrtPriceLimitOne:g[0].sqrtPriceLimit,sqrtPriceLimitTwo:g[1].sqrtPriceLimit})}))}return(w||b)&&d.push(Tk.solana.closeAccountInstruction({account:v,owner:l})),h.instructions=d,h},WHIRLPOOL_LAYOUT:eS};const kS={name:"orca",label:"Orca",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI3LjIuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9ImthdG1hbl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNjAwIDQ1MCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNjAwIDQ1MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8cGF0aCBmaWxsPSIjRkZEMTVDIiBkPSJNNDg4LjQsMjIyLjljMCwxMDMuOC04NC4xLDE4Ny45LTE4Ny45LDE4Ny45Yy0xMDMuOCwwLTE4Ny45LTg0LjEtMTg3LjktMTg3LjlDMTEyLjYsMTE5LjEsMTk2LjcsMzUsMzAwLjUsMzUKCUM0MDQuMiwzNSw0ODguNCwxMTkuMSw0ODguNCwyMjIuOXoiLz4KPHBhdGggZmlsbD0iI0ZGRkZGRiIgc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjE3LjY3NTUiIGQ9Ik0yMDkuNSwyOTkuOGMxLjYtMS4xLDMuMS0yLjgsMy45LTUuMWMwLjgtMi42LDAuMy00LjksMC02LjJjMCwwLDAtMC4xLDAtMC4xbDAuMy0xLjhjMC45LDAuNSwxLjksMS4xLDMsMS45CgljMC4zLDAuMiwwLjcsMC41LDEuMSwwLjdjMC41LDAuNCwxLjEsMC44LDEuNCwxYzAuNiwwLjQsMS41LDEsMi41LDEuNWMyNS4xLDE1LjYsNDUuOCwyMiw2Mi4yLDIxLjJjMTctMC44LDI4LjktOS40LDM1LjEtMjEuOQoJYzUuOS0xMi4xLDYuMi0yNywyLTQwLjljLTQuMi0xMy45LTEzLTI3LjUtMjYuMi0zNi45Yy0yMi4yLTE1LjgtNDIuNS0zOS44LTUyLjctNjAuM2MtNS4yLTEwLjQtNy4zLTE4LjctNi43LTI0LjIKCWMwLjMtMi41LDEtNC4xLDItNS4xYzAuOS0xLDIuNi0yLjEsNS45LTIuNmM2LjktMS4xLDE1LTMuNiwyMy4xLTYuMmMzLjItMSw2LjMtMiw5LjUtMi45YzExLjctMy40LDI0LjItNi4zLDM3LjItNi4zCgljMjUuMywwLDU1LDExLDg2LjMsNTYuOGM0MC4yLDU4LjgsMTguMSwxMjQuNC0yOC4yLDE1OC45Yy0yMy4xLDE3LjItNTEuOSwyNi4zLTgxLjUsMjIuOUMyNjIuOSwzNDEuMywyMzQuOSwzMjcuOSwyMDkuNSwyOTkuOHoKCSBNMjE0LjIsMjg0LjZDMjE0LjIsMjg0LjYsMjE0LjIsMjg0LjcsMjE0LjIsMjg0LjZDMjE0LjEsMjg0LjcsMjE0LjIsMjg0LjYsMjE0LjIsMjg0LjZ6IE0yMTEuNiwyODUuOAoJQzIxMS42LDI4NS44LDIxMS43LDI4NS44LDIxMS42LDI4NS44QzIxMS43LDI4NS44LDIxMS42LDI4NS44LDIxMS42LDI4NS44eiIvPgo8cGF0aCBkPSJNMjMyLjUsMTI0LjNjMCwwLDcxLjgtMTkuMSw4Ny41LTE5LjFjMTUuNywwLDc4LjYsMzAuNSw5Ni45LDg2LjNjMjYsNzktNDQuNywxMzAuOS01Mi43LDEyNS44CgljNzYuMS02Mi45LTQ4LjQtMTc5LjEtMTA5LjYtMTcwLjRjLTcuNiwxLjEtMy40LDcuNi0zLjQsNy42bC0xLjcsMTdsLTEyLjctMjEuMkwyMzIuNSwxMjQuM3oiLz4KPHBhdGggZD0iTTQwNi41LDE2Ny42YzIyLjcsMzkuOSwxOCwxNy4xLDEyLjksNjIuN2M5LjMtMTUuMSwyMy45LTMuOCwyOS45LDJjMS4xLDEsMi45LDAuNCwyLjgtMS4xYy0wLjItNi44LTIuMi0yMS40LTEzLjQtMzcuMQoJQzQyMy40LDE3Mi42LDQwNi41LDE2Ny42LDQwNi41LDE2Ny42eiIvPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMC45OTMiIGQ9Ik00MTkuNCwyMzAuM2M1LTQ1LjYsOS43LTIyLjgtMTIuOS02Mi43YzAsMCwxNi45LDUsMzIuMywyNi41YzExLjIsMTUuNywxMy4xLDMwLjMsMTMuNCwzNy4xCgljMC4xLDEuNS0xLjcsMi4xLTIuOCwxLjFDNDQzLjMsMjI2LjUsNDI4LjcsMjE1LjMsNDE5LjQsMjMwLjN6IE00MTkuNCwyMzAuM2MwLjktMi4xLDIuMi01LjUsMi4yLTUuNSIvPgo8cGF0aCBkPSJNMjI0LDIyNC4yYy05LjYsMTYuMi0yOS4yLDE1LTI4LjgsMzQuM2MxNy41LDM5LDE3LjYsMzYuMiwxNy42LDM2LjJjMzIuNS0xOC4yLDE5LjEtNTguNSwxNC4zLTcwLjQKCUMyMjYuNiwyMjMsMjI0LjcsMjIzLDIyNCwyMjQuMnoiLz4KPHBhdGggZD0iTTE1MC40LDI2MC4xYzE4LjcsMi40LDI5LjgtMTMuOCw0NC44LTEuNmMxOS45LDM3LjgsMTcuNiwzNi4yLDE3LjYsMzYuMmMtMzQuNCwxNC40LTU3LjktMjEtNjQuMy0zMi4xCglDMTQ3LjgsMjYxLjMsMTQ5LDI1OS45LDE1MC40LDI2MC4xeiIvPgo8cGF0aCBkPSJNMzA2LjksMjM2YzAsMCwxOC43LDE5LjEsOC45LDIyLjFjLTEyLjItNy41LTM0LTEuNy00NC43LDEuOWMtMi42LDAuOS01LjItMS40LTQuMy00LjFjMy42LTEwLDEyLjYtMjguNiwyOS45LTMxCglDMzA2LjksMjIyLjQsMzA2LjksMjM2LDMwNi45LDIzNnoiLz4KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTMxOC4zLDE0Mi41Yy0yLjEtMy02LjQtMTEsNi44LTExYzEzLjIsMCwzMy4zLDE0LjksMzcuNCwyMC40Yy0xLjMsMy40LTkuOCw0LjEtMTQsMy44Yy00LjItMC4zLTExLjUtMS0xNy0zLjgKCUMzMjYsMTQ5LjIsMzIwLjUsMTQ1LjUsMzE4LjMsMTQyLjV6Ii8+Cjwvc3ZnPgo=",protocol:"orca",slippage:!0,blockchains:["solana"],solana:{router:{address:"whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc",api:xS.WHIRLPOOL_LAYOUT}}};var TS=t=>new IL(Object.assign(kS,{scope:t,findPath:t=>xS.findPath({...t,exchange:kS}),pathExists:t=>xS.pathExists({...t,exchange:kS}),getAmounts:t=>xS.getAmounts({...t,exchange:kS}),getPrep:t=>{},getTransaction:t=>xS.getTransaction({...t,exchange:kS})}));const LS={name:"pancakeswap",label:"PancakeSwap",logo:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTk4IiBoZWlnaHQ9IjE5OSIgdmlld0JveD0iMCAwIDE5OCAxOTkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOTguNTUyIDE5OC42MDdDNjkuMDYxMyAxOTguNTg1IDQ1LjMwNiAxOTEuNTggMjguNzA3OSAxNzguOTk4QzExLjkxMDggMTY2LjI2NSAzIDE0OC4xOTUgMyAxMjcuNzQ4QzMgMTA4LjA0NyAxMS44OTEzIDkzLjg0MTEgMjEuOTUxNyA4NC4yMzg1QzI5LjgzNTkgNzYuNzEzMiAzOC41MzYzIDcxLjg5MzYgNDQuNTk0NSA2OS4xMjEzQzQzLjIyNDUgNjQuOTU5NCA0MS41MTUzIDU5LjUxMDggMzkuOTg2MSA1My44ODMyQzM3LjkzOTkgNDYuMzUyNyAzNS45MzI1IDM3LjUxNzQgMzUuOTMyNSAzMS4wNDI5QzM1LjkzMjUgMjMuMzc5NSAzNy42MjA0IDE1LjY4MzMgNDIuMTcxNCA5LjcwMzA2QzQ2Ljk3OTcgMy4zODQ3NiA1NC4yMTgyIDAgNjIuOTI2NCAwQzY5LjczMjIgMCA3NS41MTAzIDIuNDk5MDMgODAuMDMzOSA2LjgxMDExQzg0LjM1NzkgMTAuOTMwOSA4Ny4yMzU3IDE2LjQwMzQgODkuMjIyNyAyMi4xMDgyQzkyLjcxNDMgMzIuMTMyNSA5NC4wNzM4IDQ0LjcyNjQgOTQuNDU1MSA1Ny4yOTQ1SDEwMi43OTZDMTAzLjE3OCA0NC43MjY0IDEwNC41MzcgMzIuMTMyNSAxMDguMDI5IDIyLjEwODJDMTEwLjAxNiAxNi40MDM0IDExMi44OTQgMTAuOTMwOSAxMTcuMjE4IDYuODEwMTFDMTIxLjc0MSAyLjQ5OTAzIDEyNy41MTkgMCAxMzQuMzI1IDBDMTQzLjAzMyAwIDE1MC4yNzIgMy4zODQ3NiAxNTUuMDggOS43MDMwNkMxNTkuNjMxIDE1LjY4MzMgMTYxLjMxOSAyMy4zNzk1IDE2MS4zMTkgMzEuMDQyOUMxNjEuMzE5IDM3LjUxNzQgMTU5LjMxMiA0Ni4zNTI3IDE1Ny4yNjUgNTMuODgzMkMxNTUuNzM2IDU5LjUxMDggMTU0LjAyNyA2NC45NTk0IDE1Mi42NTcgNjkuMTIxM0MxNTguNzE1IDcxLjg5MzYgMTY3LjQxNiA3Ni43MTMyIDE3NS4zIDg0LjIzODVDMTg1LjM2IDkzLjg0MTEgMTk0LjI1MiAxMDguMDQ3IDE5NC4yNTIgMTI3Ljc0OEMxOTQuMjUyIDE0OC4xOTUgMTg1LjM0MSAxNjYuMjY1IDE2OC41NDQgMTc4Ljk5OEMxNTEuOTQ1IDE5MS41OCAxMjguMTkgMTk4LjU4NSA5OC42OTk2IDE5OC42MDdIOTguNTUyWiIgZmlsbD0iIzYzMzAwMSIvPgo8cGF0aCBkPSJNNjIuOTI2MiA3LjI4ODMzQzUwLjE3MTYgNy4yODgzMyA0NC4zMDA0IDE2LjgwMzcgNDQuMzAwNCAyOS45NjMyQzQ0LjMwMDQgNDAuNDIzMSA1MS4xMjIyIDYxLjM3MTUgNTMuOTIxMiA2OS41MjYzQzU0LjU1MDggNzEuMzYwNSA1My41NjE2IDczLjM3MDEgNTEuNzU3NCA3NC4wODE0QzQxLjUzNTEgNzguMTEyMSAxMS4zNjc5IDkyLjg3IDExLjM2NzkgMTI2LjY2OUMxMS4zNjc5IDE2Mi4yNzIgNDIuMDI0NiAxODkuMTE3IDk4LjU1ODEgMTg5LjE2Qzk4LjU4MDYgMTg5LjE2IDk4LjYwMzEgMTg5LjE1OSA5OC42MjU2IDE4OS4xNTlDOTguNjQ4MSAxODkuMTU5IDk4LjY3MDYgMTg5LjE2IDk4LjY5MzEgMTg5LjE2QzE1NS4yMjcgMTg5LjExNyAxODUuODgzIDE2Mi4yNzIgMTg1Ljg4MyAxMjYuNjY5QzE4NS44ODMgOTIuODcgMTU1LjcxNiA3OC4xMTIxIDE0NS40OTQgNzQuMDgxNEMxNDMuNjkgNzMuMzcwMSAxNDIuNyA3MS4zNjA1IDE0My4zMyA2OS41MjYzQzE0Ni4xMjkgNjEuMzcxNSAxNTIuOTUxIDQwLjQyMzEgMTUyLjk1MSAyOS45NjMyQzE1Mi45NTEgMTYuODAzNyAxNDcuMDggNy4yODgzMyAxMzQuMzI1IDcuMjg4MzNDMTE1Ljk2NSA3LjI4ODMzIDExMS4zODkgMzMuMjk1NSAxMTEuMDYyIDYxLjIwNzVDMTExLjA0IDYzLjA3MDkgMTA5LjUzNCA2NC41ODI4IDEwNy42NyA2NC41ODI4SDg5LjU4MDdDODcuNzE3MiA2NC41ODI4IDg2LjIxMDggNjMuMDcwOSA4Ni4xODkgNjEuMjA3NUM4NS44NjI2IDMzLjI5NTUgODEuMjg2IDcuMjg4MzMgNjIuOTI2MiA3LjI4ODMzWiIgZmlsbD0iI0QxODg0RiIvPgo8cGF0aCBkPSJNOTguNjkzMSAxNzcuNzU1QzU3LjE1NTEgMTc3Ljc1NSAxMS40Mzk3IDE1NS41MiAxMS4zNjgxIDEyNi43MzdDMTEuMzY4IDEyNi43ODEgMTEuMzY3OSAxMjYuODI2IDExLjM2NzkgMTI2Ljg3MUMxMS4zNjc5IDE2Mi41MDMgNDIuMDczNCAxODkuMzYyIDk4LjY5MzEgMTg5LjM2MkMxNTUuMzEzIDE4OS4zNjIgMTg2LjAxOCAxNjIuNTAzIDE4Ni4wMTggMTI2Ljg3MUMxODYuMDE4IDEyNi44MjYgMTg2LjAxOCAxMjYuNzgxIDE4Ni4wMTggMTI2LjczN0MxODUuOTQ2IDE1NS41MiAxNDAuMjMxIDE3Ny43NTUgOTguNjkzMSAxNzcuNzU1WiIgZmlsbD0iI0ZFREM5MCIvPgo8cGF0aCBkPSJNNzUuNjEzNSAxMTcuODk2Qzc1LjYxMzUgMTI3LjYxNCA3MS4wMjEgMTMyLjY3NSA2NS4zNTU4IDEzMi42NzVDNTkuNjkwNyAxMzIuNjc1IDU1LjA5ODEgMTI3LjYxNCA1NS4wOTgxIDExNy44OTZDNTUuMDk4MSAxMDguMTc4IDU5LjY5MDcgMTAzLjExNyA2NS4zNTU4IDEwMy4xMTdDNzEuMDIxIDEwMy4xMTcgNzUuNjEzNSAxMDguMTc4IDc1LjYxMzUgMTE3Ljg5NloiIGZpbGw9IiM2MzMwMDEiLz4KPHBhdGggZD0iTTE0Mi4yODggMTE3Ljg5NkMxNDIuMjg4IDEyNy42MTQgMTM3LjY5NiAxMzIuNjc1IDEzMi4wMzEgMTMyLjY3NUMxMjYuMzY1IDEzMi42NzUgMTIxLjc3MyAxMjcuNjE0IDEyMS43NzMgMTE3Ljg5NkMxMjEuNzczIDEwOC4xNzggMTI2LjM2NSAxMDMuMTE3IDEzMi4wMzEgMTAzLjExN0MxMzcuNjk2IDEwMy4xMTcgMTQyLjI4OCAxMDguMTc4IDE0Mi4yODggMTE3Ljg5NloiIGZpbGw9IiM2MzMwMDEiLz4KPC9zdmc+Cg==",protocol:"uniswap_v2",slippage:!0,blockchains:["bsc"],bsc:{router:{address:"0x10ED43C718714eb63d5aA57B78B54704E256024E",api:SL.ROUTER},factory:{address:"0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73",api:SL.FACTORY},pair:{api:SL.PAIR}}};var SS=t=>new IL(Object.assign(LS,{scope:t,findPath:t=>SL.findPath({...t,exchange:LS}),pathExists:t=>SL.pathExists({...t,exchange:LS}),getAmounts:t=>SL.getAmounts({...t,exchange:LS}),getPrep:t=>SL.getPrep({...t,exchange:LS}),getTransaction:t=>SL.getTransaction({...t,exchange:LS})}));function jS(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}const DS=({blockchain:t,exchange:e,path:n})=>{if(!n)return;let r=n.map(((e,r)=>e===Hf[t].currency.address&&n[r+1]!=Hf[t].wrapped.address&&n[r-1]!=Hf[t].wrapped.address?Hf[t].wrapped.address:e));return r[0]==Hf[t].currency.address&&r[1]==Hf[t].wrapped.address?r.splice(0,1):r[r.length-1]==Hf[t].currency.address&&r[r.length-2]==Hf[t].wrapped.address&&r.splice(r.length-1,1),r},CS=async({blockchain:t,exchange:e,path:n,amountIn:r,amountOut:i,block:o})=>{if((n=DS({blockchain:t,exchange:e,path:n})).length>2)throw"PancakeSwap V3 can only check paths for up to 2 tokens!";try{let o=(await Promise.all(e.fees.map((r=>PI({blockchain:Hf[t].name,address:e[t].factory.address,method:"getPool",api:e[t].factory.api,cache:3600,params:[n[0],n[1],r]}).then((e=>({blockchain:t,address:e,path:n,fee:r,token0:[...n].sort()[0],token1:[...n].sort()[1]}))).catch((()=>{})))))).filter(Boolean);return o=o.filter((e=>e.address!=Hf[t].zero)),o=(await Promise.all(o.map((async t=>{try{let n;return n=r?await(async({exchange:t,pool:e,inputAmount:n})=>(await PI({blockchain:e.blockchain,address:t[e.blockchain].quoter.address,api:t[e.blockchain].quoter.api,method:"quoteExactInput",params:{path:oI(["address","uint24","address"],[e.path[0],e.fee,e.path[1]]),amountIn:n},cache:5})).amountOut)({exchange:e,pool:t,inputAmount:r}):await(async({exchange:t,pool:e,outputAmount:n})=>(await PI({blockchain:e.blockchain,address:t[e.blockchain].quoter.address,api:t[e.blockchain].quoter.api,method:"quoteExactOutput",params:{path:oI(["address","uint24","address"],[e.path[1],e.fee,e.path[0]]),amountOut:n},cache:5})).amountIn)({exchange:e,pool:t,outputAmount:i}),{...t,amountIn:r||n,amountOut:i||n}}catch(t){}})))).filter(Boolean),r?o.sort(((t,e)=>e.amountOut.gt(t.amountOut)?1:-1))[0]:o.sort(((t,e)=>e.amountIn.lt(t.amountIn)?1:-1))[0]}catch(t){return}};let OS=({blockchain:t,exchange:e,path:n,pools:r,amountIn:i})=>r[r.length-1].amountOut,zS=async({blockchain:t,exchange:e,path:n,pools:r,amountOut:i,block:o})=>{if(void 0===o)return r[0].amountIn;{let n;2==r.length?n=oI(["address","uint24","address","uint24","address"],[r[1].path[1],r[1].fee,r[0].path[1],r[0].fee,r[0].path[0]]):1==r.length&&(n=oI(["address","uint24","address"],[r[0].path[1],r[0].fee,r[0].path[0]]));return(await PI({block:o,blockchain:t,address:e[t].quoter.address,api:e[t].quoter.api,method:"quoteExactOutput",params:{path:n,amountOut:i}})).amountIn}};var PS={findPath:async({blockchain:t,exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s})=>{if([n,r].includes(Hf[t].currency.address)&&[n,r].includes(Hf[t].wrapped.address))return{path:void 0,exchangePath:void 0};let u,c=[];if(c=[await CS({exchange:e,blockchain:t,path:[n,r],amountIn:i||a,amountOut:o||s})],c.filter(Boolean).length&&(u=[n,r]),u||n==Hf[t].wrapped.address||r==Hf[t].wrapped.address||(c=[],o||s?(c.push(await CS({exchange:e,blockchain:t,path:[Hf[t].wrapped.address,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await CS({exchange:e,blockchain:t,path:[n,Hf[t].wrapped.address],amountOut:c[0].amountIn}))):(c.push(await CS({exchange:e,blockchain:t,path:[n,Hf[t].wrapped.address],amountIn:i||a})),c.filter(Boolean).length&&c.push(await CS({exchange:e,blockchain:t,path:[Hf[t].wrapped.address,r],amountIn:c[0].amountOut}))),2===c.filter(Boolean).length&&(u=[n,Hf[t].wrapped.address,r])),!u){c=[];let l=(await Promise.all(Hf[t].stables.usd.map((async u=>{let c=[];if(o||s?(c.push(await CS({exchange:e,blockchain:t,path:[u,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await CS({exchange:e,blockchain:t,path:[n,u],amountOut:c[0].amountIn}))):(c.push(await CS({exchange:e,blockchain:t,path:[n,u],amountIn:i||a})),c.filter(Boolean).length&&c.push(await CS({exchange:e,blockchain:t,path:[u,r],amountIn:c[0].amountOut}))),2===c.filter(Boolean).length)return[u,c]})))).filter(Boolean)[0];l&&(u=[n,l[0],r],c=l[1])}return jS([u,"optionalAccess",t=>t.length])&&u[0]==Hf[t].currency.address?u.splice(1,0,Hf[t].wrapped.address):jS([u,"optionalAccess",t=>t.length])&&u[u.length-1]==Hf[t].currency.address&&u.splice(u.length-1,0,Hf[t].wrapped.address),u||(c=[]),{path:u,pools:c,exchangePath:DS({blockchain:t,exchange:e,path:u})}},pathExists:async({blockchain:t,exchange:e,path:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a})=>{try{return!!await CS({blockchain:t,exchange:e,path:n,amountIn:r||o,amountOut:i||a})}catch(t){return!1}},getAmounts:async({blockchain:t,exchange:e,path:n,pools:r,block:i,tokenIn:o,tokenOut:a,amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l})=>{if(s){if(null==(u=await zS({blockchain:t,exchange:e,block:i,path:n,pools:r,amountOut:s,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(u){if(null==(s=await OS({blockchain:t,exchange:e,path:n,pools:r,amountIn:u,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}else if(l){if(null==(u=await zS({blockchain:t,exchange:e,block:i,path:n,pools:r,amountOut:l,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(c){if(null==(s=await OS({blockchain:t,exchange:e,path:n,pools:r,amountIn:c,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}return{amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l}},getPrep:async({exchange:t,blockchain:e,tokenIn:n,amountIn:r,account:i,tokenOut:o})=>{if(n===Hf[e].currency.address)return;let a;a=o===Hf[e].currency.address?t[e].smartRouter.address:t[e].router.address;if((await PI({blockchain:e,address:n,method:"allowance",api:Tk[e][20],params:[i,a]})).lt(r)){return{transaction:{blockchain:e,from:i,to:n,api:Tk[e][20],method:"approve",params:[a,Hf[e].maxInt]}}}},getTransaction:async({blockchain:t,exchange:e,pools:n,path:r,amountIn:i,amountInMax:o,amountOut:a,amountOutMin:s,amountInInput:u,amountOutInput:c,amountInMaxInput:l,amountOutMinInput:h,account:d,inputTokenPushed:f})=>{const p={blockchain:t,from:d},y=Math.floor(Date.now()/1e3)+21600,m=DS({blockchain:t,exchange:e,path:r});if(r[r.length-1]===Hf[t].currency.address){p.to=e[t].smartRouter.address,p.api=e[t].smartRouter.api,p.method="multicall";const r=new Og(e[t].smartRouter.api);if(p.params={data:[]},2===m.length)u||h?p.params.data.push(r.encodeFunctionData("exactInputSingle",[{tokenIn:m[0],tokenOut:m[1],fee:n[0].fee,recipient:e[t].smartRouter.address,deadline:y,amountIn:(o||i).toString(),amountOutMinimum:(s||a).toString(),sqrtPriceLimitX96:Hf[t].zero}])):(c||l)&&p.params.data.push(r.encodeFunctionData("exactOutputSingle",[{tokenIn:m[0],tokenOut:m[1],fee:n[0].fee,recipient:e[t].smartRouter.address,deadline:y,amountInMaximum:(o||i).toString(),amountOut:(s||a).toString(),sqrtPriceLimitX96:Hf[t].zero}]));else{const d=oI(["address","uint24","address","uint24","address"],[n[0].path[0],n[0].fee,n[0].path[1],n[1].fee,n[1].path[1]]);u||h?p.params.data.push(r.encodeFunctionData("exactInput",[{path:d,recipient:e[t].smartRouter.address,deadline:y,amountIn:(o||i).toString(),amountOutMinimum:(s||a).toString()}])):(c||l)&&p.params.data.push(r.encodeFunctionData("exactOutput",[{path:d,recipient:e[t].smartRouter.address,deadline:y,amountInMaximum:(o||i).toString(),amountOut:(s||a).toString()}]))}p.params.data.push(r.encodeFunctionData("unwrapWETH9",[(s||a).toString(),d]))}else if(p.to=e[t].router.address,p.api=e[t].router.api,r[0]===Hf[t].currency.address&&(p.value=(i||o).toString()),2===m.length)u||h?(p.method="exactInputSingle",p.params={params:{tokenIn:m[0],tokenOut:m[1],fee:n[0].fee,recipient:d,deadline:y,amountIn:(o||i).toString(),amountOutMinimum:(s||a).toString(),sqrtPriceLimitX96:Hf[t].zero}}):(c||l)&&(p.method="exactOutputSingle",p.params={params:{tokenIn:m[0],tokenOut:m[1],fee:n[0].fee,recipient:d,deadline:y,amountInMaximum:(o||i).toString(),amountOut:(s||a).toString(),sqrtPriceLimitX96:Hf[t].zero}});else{const t=oI(["address","uint24","address","uint24","address"],[n[0].path[0],n[0].fee,n[0].path[1],n[1].fee,n[1].path[1]]);u||h?(p.method="exactInput",p.params={params:{path:t,recipient:d,deadline:y,amountIn:(o||i).toString(),amountOutMinimum:(s||a).toString()}}):(c||l)&&(p.method="exactOutput",p.params={params:{path:t,recipient:d,deadline:y,amountInMaximum:(o||i).toString(),amountOut:(s||a).toString()}})}return p},ROUTER:[{inputs:[{internalType:"address",name:"_deployer",type:"address"},{internalType:"address",name:"_factory",type:"address"},{internalType:"address",name:"_WETH9",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"WETH9",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"deployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinimum",type:"uint256"}],internalType:"struct ISwapRouter.ExactInputParams",name:"params",type:"tuple"}],name:"exactInput",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinimum",type:"uint256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct ISwapRouter.ExactInputSingleParams",name:"params",type:"tuple"}],name:"exactInputSingle",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMaximum",type:"uint256"}],internalType:"struct ISwapRouter.ExactOutputParams",name:"params",type:"tuple"}],name:"exactOutput",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMaximum",type:"uint256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct ISwapRouter.ExactOutputSingleParams",name:"params",type:"tuple"}],name:"exactOutputSingle",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes[]",name:"data",type:"bytes[]"}],name:"multicall",outputs:[{internalType:"bytes[]",name:"results",type:"bytes[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"int256",name:"amount0Delta",type:"int256"},{internalType:"int256",name:"amount1Delta",type:"int256"},{internalType:"bytes",name:"_data",type:"bytes"}],name:"pancakeV3SwapCallback",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"refundETH",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitAllowed",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitAllowedIfNecessary",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitIfNecessary",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"}],name:"sweepToken",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"sweepTokenWithFee",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"}],name:"unwrapWETH9",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"unwrapWETH9WithFee",outputs:[],stateMutability:"payable",type:"function"},{stateMutability:"payable",type:"receive"}],SMART_ROUTER:[{inputs:[{internalType:"address",name:"_factoryV2",type:"address"},{internalType:"address",name:"_deployer",type:"address"},{internalType:"address",name:"_factoryV3",type:"address"},{internalType:"address",name:"_positionManager",type:"address"},{internalType:"address",name:"_stableFactory",type:"address"},{internalType:"address",name:"_stableInfo",type:"address"},{internalType:"address",name:"_WETH9",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"factory",type:"address"},{indexed:!0,internalType:"address",name:"info",type:"address"}],name:"SetStableSwap",type:"event"},{inputs:[],name:"WETH9",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"approveMax",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"approveMaxMinusOne",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"approveZeroThenMax",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"approveZeroThenMaxMinusOne",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes",name:"data",type:"bytes"}],name:"callPositionManager",outputs:[{internalType:"bytes",name:"result",type:"bytes"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes[]",name:"paths",type:"bytes[]"},{internalType:"uint128[]",name:"amounts",type:"uint128[]"},{internalType:"uint24",name:"maximumTickDivergence",type:"uint24"},{internalType:"uint32",name:"secondsAgo",type:"uint32"}],name:"checkOracleSlippage",outputs:[],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"uint24",name:"maximumTickDivergence",type:"uint24"},{internalType:"uint32",name:"secondsAgo",type:"uint32"}],name:"checkOracleSlippage",outputs:[],stateMutability:"view",type:"function"},{inputs:[],name:"deployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinimum",type:"uint256"}],internalType:"struct IV3SwapRouter.ExactInputParams",name:"params",type:"tuple"}],name:"exactInput",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinimum",type:"uint256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IV3SwapRouter.ExactInputSingleParams",name:"params",type:"tuple"}],name:"exactInputSingle",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address[]",name:"path",type:"address[]"},{internalType:"uint256[]",name:"flag",type:"uint256[]"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address",name:"to",type:"address"}],name:"exactInputStableSwap",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMaximum",type:"uint256"}],internalType:"struct IV3SwapRouter.ExactOutputParams",name:"params",type:"tuple"}],name:"exactOutput",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMaximum",type:"uint256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IV3SwapRouter.ExactOutputSingleParams",name:"params",type:"tuple"}],name:"exactOutputSingle",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address[]",name:"path",type:"address[]"},{internalType:"uint256[]",name:"flag",type:"uint256[]"},{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{internalType:"address",name:"to",type:"address"}],name:"exactOutputStableSwap",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"factoryV2",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"getApprovalType",outputs:[{internalType:"enum IApproveAndCall.ApprovalType",name:"",type:"uint8"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"token0",type:"address"},{internalType:"address",name:"token1",type:"address"},{internalType:"uint256",name:"tokenId",type:"uint256"},{internalType:"uint256",name:"amount0Min",type:"uint256"},{internalType:"uint256",name:"amount1Min",type:"uint256"}],internalType:"struct IApproveAndCall.IncreaseLiquidityParams",name:"params",type:"tuple"}],name:"increaseLiquidity",outputs:[{internalType:"bytes",name:"result",type:"bytes"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"token0",type:"address"},{internalType:"address",name:"token1",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint256",name:"amount0Min",type:"uint256"},{internalType:"uint256",name:"amount1Min",type:"uint256"},{internalType:"address",name:"recipient",type:"address"}],internalType:"struct IApproveAndCall.MintParams",name:"params",type:"tuple"}],name:"mint",outputs:[{internalType:"bytes",name:"result",type:"bytes"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes32",name:"previousBlockhash",type:"bytes32"},{internalType:"bytes[]",name:"data",type:"bytes[]"}],name:"multicall",outputs:[{internalType:"bytes[]",name:"",type:"bytes[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"bytes[]",name:"data",type:"bytes[]"}],name:"multicall",outputs:[{internalType:"bytes[]",name:"",type:"bytes[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes[]",name:"data",type:"bytes[]"}],name:"multicall",outputs:[{internalType:"bytes[]",name:"results",type:"bytes[]"}],stateMutability:"payable",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int256",name:"amount0Delta",type:"int256"},{internalType:"int256",name:"amount1Delta",type:"int256"},{internalType:"bytes",name:"_data",type:"bytes"}],name:"pancakeV3SwapCallback",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"positionManager",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"pull",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"refundETH",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitAllowed",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"expiry",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitAllowedIfNecessary",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"selfPermitIfNecessary",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"_factory",type:"address"},{internalType:"address",name:"_info",type:"address"}],name:"setStableSwap",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"stableSwapFactory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"stableSwapInfo",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"}],name:"swapExactTokensForTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{internalType:"address[]",name:"path",type:"address[]"},{internalType:"address",name:"to",type:"address"}],name:"swapTokensForExactTokens",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"}],name:"sweepToken",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"}],name:"sweepToken",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"sweepTokenWithFee",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"sweepTokenWithFee",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"}],name:"unwrapWETH9",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"unwrapWETH9WithFee",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountMinimum",type:"uint256"},{internalType:"uint256",name:"feeBips",type:"uint256"},{internalType:"address",name:"feeRecipient",type:"address"}],name:"unwrapWETH9WithFee",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"value",type:"uint256"}],name:"wrapETH",outputs:[],stateMutability:"payable",type:"function"},{stateMutability:"payable",type:"receive"}],FACTORY:[{inputs:[{internalType:"address",name:"_poolDeployer",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint24",name:"fee",type:"uint24"},{indexed:!0,internalType:"int24",name:"tickSpacing",type:"int24"}],name:"FeeAmountEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint24",name:"fee",type:"uint24"},{indexed:!1,internalType:"bool",name:"whitelistRequested",type:"bool"},{indexed:!1,internalType:"bool",name:"enabled",type:"bool"}],name:"FeeAmountExtraInfoUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnerChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token0",type:"address"},{indexed:!0,internalType:"address",name:"token1",type:"address"},{indexed:!0,internalType:"uint24",name:"fee",type:"uint24"},{indexed:!1,internalType:"int24",name:"tickSpacing",type:"int24"},{indexed:!1,internalType:"address",name:"pool",type:"address"}],name:"PoolCreated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"lmPoolDeployer",type:"address"}],name:"SetLmPoolDeployer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"bool",name:"verified",type:"bool"}],name:"WhiteListAdded",type:"event"},{inputs:[{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"recipient",type:"address"},{internalType:"uint128",name:"amount0Requested",type:"uint128"},{internalType:"uint128",name:"amount1Requested",type:"uint128"}],name:"collectProtocol",outputs:[{internalType:"uint128",name:"amount0",type:"uint128"},{internalType:"uint128",name:"amount1",type:"uint128"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"}],name:"createPool",outputs:[{internalType:"address",name:"pool",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"int24",name:"tickSpacing",type:"int24"}],name:"enableFeeAmount",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint24",name:"",type:"uint24"}],name:"feeAmountTickSpacing",outputs:[{internalType:"int24",name:"",type:"int24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint24",name:"",type:"uint24"}],name:"feeAmountTickSpacingExtraInfo",outputs:[{internalType:"bool",name:"whitelistRequested",type:"bool"},{internalType:"bool",name:"enabled",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint24",name:"",type:"uint24"}],name:"getPool",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"lmPoolDeployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"poolDeployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"bool",name:"whitelistRequested",type:"bool"},{internalType:"bool",name:"enabled",type:"bool"}],name:"setFeeAmountExtraInfo",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint32",name:"feeProtocol0",type:"uint32"},{internalType:"uint32",name:"feeProtocol1",type:"uint32"}],name:"setFeeProtocol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"lmPool",type:"address"}],name:"setLmPool",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_lmPoolDeployer",type:"address"}],name:"setLmPoolDeployer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_owner",type:"address"}],name:"setOwner",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"},{internalType:"bool",name:"verified",type:"bool"}],name:"setWhiteListAddress",outputs:[],stateMutability:"nonpayable",type:"function"}],POOL:[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount",type:"uint128"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"}],name:"Burn",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount0",type:"uint128"},{indexed:!1,internalType:"uint128",name:"amount1",type:"uint128"}],name:"Collect",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"uint128",name:"amount0",type:"uint128"},{indexed:!1,internalType:"uint128",name:"amount1",type:"uint128"}],name:"CollectProtocol",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"},{indexed:!1,internalType:"uint256",name:"paid0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"paid1",type:"uint256"}],name:"Flash",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint16",name:"observationCardinalityNextOld",type:"uint16"},{indexed:!1,internalType:"uint16",name:"observationCardinalityNextNew",type:"uint16"}],name:"IncreaseObservationCardinalityNext",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{indexed:!1,internalType:"int24",name:"tick",type:"int24"}],name:"Initialize",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount",type:"uint128"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"}],name:"Mint",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint32",name:"feeProtocol0Old",type:"uint32"},{indexed:!1,internalType:"uint32",name:"feeProtocol1Old",type:"uint32"},{indexed:!1,internalType:"uint32",name:"feeProtocol0New",type:"uint32"},{indexed:!1,internalType:"uint32",name:"feeProtocol1New",type:"uint32"}],name:"SetFeeProtocol",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"addr",type:"address"}],name:"SetLmPoolEvent",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"int256",name:"amount0",type:"int256"},{indexed:!1,internalType:"int256",name:"amount1",type:"int256"},{indexed:!1,internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{indexed:!1,internalType:"uint128",name:"liquidity",type:"uint128"},{indexed:!1,internalType:"int24",name:"tick",type:"int24"},{indexed:!1,internalType:"uint128",name:"protocolFeesToken0",type:"uint128"},{indexed:!1,internalType:"uint128",name:"protocolFeesToken1",type:"uint128"}],name:"Swap",type:"event"},{inputs:[{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount",type:"uint128"}],name:"burn",outputs:[{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount0Requested",type:"uint128"},{internalType:"uint128",name:"amount1Requested",type:"uint128"}],name:"collect",outputs:[{internalType:"uint128",name:"amount0",type:"uint128"},{internalType:"uint128",name:"amount1",type:"uint128"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint128",name:"amount0Requested",type:"uint128"},{internalType:"uint128",name:"amount1Requested",type:"uint128"}],name:"collectProtocol",outputs:[{internalType:"uint128",name:"amount0",type:"uint128"},{internalType:"uint128",name:"amount1",type:"uint128"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"fee",outputs:[{internalType:"uint24",name:"",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[],name:"feeGrowthGlobal0X128",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"feeGrowthGlobal1X128",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"flash",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"observationCardinalityNext",type:"uint16"}],name:"increaseObservationCardinalityNext",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint160",name:"sqrtPriceX96",type:"uint160"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"liquidity",outputs:[{internalType:"uint128",name:"",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"lmPool",outputs:[{internalType:"contract IPancakeV3LmPool",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"maxLiquidityPerTick",outputs:[{internalType:"uint128",name:"",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes",name:"data",type:"bytes"}],name:"mint",outputs:[{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"observations",outputs:[{internalType:"uint32",name:"blockTimestamp",type:"uint32"},{internalType:"int56",name:"tickCumulative",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityCumulativeX128",type:"uint160"},{internalType:"bool",name:"initialized",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint32[]",name:"secondsAgos",type:"uint32[]"}],name:"observe",outputs:[{internalType:"int56[]",name:"tickCumulatives",type:"int56[]"},{internalType:"uint160[]",name:"secondsPerLiquidityCumulativeX128s",type:"uint160[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"",type:"bytes32"}],name:"positions",outputs:[{internalType:"uint128",name:"liquidity",type:"uint128"},{internalType:"uint256",name:"feeGrowthInside0LastX128",type:"uint256"},{internalType:"uint256",name:"feeGrowthInside1LastX128",type:"uint256"},{internalType:"uint128",name:"tokensOwed0",type:"uint128"},{internalType:"uint128",name:"tokensOwed1",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"protocolFees",outputs:[{internalType:"uint128",name:"token0",type:"uint128"},{internalType:"uint128",name:"token1",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint32",name:"feeProtocol0",type:"uint32"},{internalType:"uint32",name:"feeProtocol1",type:"uint32"}],name:"setFeeProtocol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_lmPool",type:"address"}],name:"setLmPool",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"slot0",outputs:[{internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{internalType:"int24",name:"tick",type:"int24"},{internalType:"uint16",name:"observationIndex",type:"uint16"},{internalType:"uint16",name:"observationCardinality",type:"uint16"},{internalType:"uint16",name:"observationCardinalityNext",type:"uint16"},{internalType:"uint32",name:"feeProtocol",type:"uint32"},{internalType:"bool",name:"unlocked",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"}],name:"snapshotCumulativesInside",outputs:[{internalType:"int56",name:"tickCumulativeInside",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityInsideX128",type:"uint160"},{internalType:"uint32",name:"secondsInside",type:"uint32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"bool",name:"zeroForOne",type:"bool"},{internalType:"int256",name:"amountSpecified",type:"int256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"},{internalType:"bytes",name:"data",type:"bytes"}],name:"swap",outputs:[{internalType:"int256",name:"amount0",type:"int256"},{internalType:"int256",name:"amount1",type:"int256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"int16",name:"",type:"int16"}],name:"tickBitmap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"tickSpacing",outputs:[{internalType:"int24",name:"",type:"int24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int24",name:"",type:"int24"}],name:"ticks",outputs:[{internalType:"uint128",name:"liquidityGross",type:"uint128"},{internalType:"int128",name:"liquidityNet",type:"int128"},{internalType:"uint256",name:"feeGrowthOutside0X128",type:"uint256"},{internalType:"uint256",name:"feeGrowthOutside1X128",type:"uint256"},{internalType:"int56",name:"tickCumulativeOutside",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityOutsideX128",type:"uint160"},{internalType:"uint32",name:"secondsOutside",type:"uint32"},{internalType:"bool",name:"initialized",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"token0",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"token1",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"}],QUOTER:[{inputs:[{internalType:"address",name:"_deployer",type:"address"},{internalType:"address",name:"_factory",type:"address"},{internalType:"address",name:"_WETH9",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"WETH9",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"deployer",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int256",name:"amount0Delta",type:"int256"},{internalType:"int256",name:"amount1Delta",type:"int256"},{internalType:"bytes",name:"path",type:"bytes"}],name:"pancakeV3SwapCallback",outputs:[],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"uint256",name:"amountIn",type:"uint256"}],name:"quoteExactInput",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint160[]",name:"sqrtPriceX96AfterList",type:"uint160[]"},{internalType:"uint32[]",name:"initializedTicksCrossedList",type:"uint32[]"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IQuoterV2.QuoteExactInputSingleParams",name:"params",type:"tuple"}],name:"quoteExactInputSingle",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint160",name:"sqrtPriceX96After",type:"uint160"},{internalType:"uint32",name:"initializedTicksCrossed",type:"uint32"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"uint256",name:"amountOut",type:"uint256"}],name:"quoteExactOutput",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint160[]",name:"sqrtPriceX96AfterList",type:"uint160[]"},{internalType:"uint32[]",name:"initializedTicksCrossedList",type:"uint32[]"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IQuoterV2.QuoteExactOutputSingleParams",name:"params",type:"tuple"}],name:"quoteExactOutputSingle",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint160",name:"sqrtPriceX96After",type:"uint160"},{internalType:"uint32",name:"initializedTicksCrossed",type:"uint32"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"}]};const _S={name:"pancakeswap_v3",label:"PancakeSwap v3",logo:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTk4IiBoZWlnaHQ9IjE5OSIgdmlld0JveD0iMCAwIDE5OCAxOTkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOTguNTUyIDE5OC42MDdDNjkuMDYxMyAxOTguNTg1IDQ1LjMwNiAxOTEuNTggMjguNzA3OSAxNzguOTk4QzExLjkxMDggMTY2LjI2NSAzIDE0OC4xOTUgMyAxMjcuNzQ4QzMgMTA4LjA0NyAxMS44OTEzIDkzLjg0MTEgMjEuOTUxNyA4NC4yMzg1QzI5LjgzNTkgNzYuNzEzMiAzOC41MzYzIDcxLjg5MzYgNDQuNTk0NSA2OS4xMjEzQzQzLjIyNDUgNjQuOTU5NCA0MS41MTUzIDU5LjUxMDggMzkuOTg2MSA1My44ODMyQzM3LjkzOTkgNDYuMzUyNyAzNS45MzI1IDM3LjUxNzQgMzUuOTMyNSAzMS4wNDI5QzM1LjkzMjUgMjMuMzc5NSAzNy42MjA0IDE1LjY4MzMgNDIuMTcxNCA5LjcwMzA2QzQ2Ljk3OTcgMy4zODQ3NiA1NC4yMTgyIDAgNjIuOTI2NCAwQzY5LjczMjIgMCA3NS41MTAzIDIuNDk5MDMgODAuMDMzOSA2LjgxMDExQzg0LjM1NzkgMTAuOTMwOSA4Ny4yMzU3IDE2LjQwMzQgODkuMjIyNyAyMi4xMDgyQzkyLjcxNDMgMzIuMTMyNSA5NC4wNzM4IDQ0LjcyNjQgOTQuNDU1MSA1Ny4yOTQ1SDEwMi43OTZDMTAzLjE3OCA0NC43MjY0IDEwNC41MzcgMzIuMTMyNSAxMDguMDI5IDIyLjEwODJDMTEwLjAxNiAxNi40MDM0IDExMi44OTQgMTAuOTMwOSAxMTcuMjE4IDYuODEwMTFDMTIxLjc0MSAyLjQ5OTAzIDEyNy41MTkgMCAxMzQuMzI1IDBDMTQzLjAzMyAwIDE1MC4yNzIgMy4zODQ3NiAxNTUuMDggOS43MDMwNkMxNTkuNjMxIDE1LjY4MzMgMTYxLjMxOSAyMy4zNzk1IDE2MS4zMTkgMzEuMDQyOUMxNjEuMzE5IDM3LjUxNzQgMTU5LjMxMiA0Ni4zNTI3IDE1Ny4yNjUgNTMuODgzMkMxNTUuNzM2IDU5LjUxMDggMTU0LjAyNyA2NC45NTk0IDE1Mi42NTcgNjkuMTIxM0MxNTguNzE1IDcxLjg5MzYgMTY3LjQxNiA3Ni43MTMyIDE3NS4zIDg0LjIzODVDMTg1LjM2IDkzLjg0MTEgMTk0LjI1MiAxMDguMDQ3IDE5NC4yNTIgMTI3Ljc0OEMxOTQuMjUyIDE0OC4xOTUgMTg1LjM0MSAxNjYuMjY1IDE2OC41NDQgMTc4Ljk5OEMxNTEuOTQ1IDE5MS41OCAxMjguMTkgMTk4LjU4NSA5OC42OTk2IDE5OC42MDdIOTguNTUyWiIgZmlsbD0iIzYzMzAwMSIvPgo8cGF0aCBkPSJNNjIuOTI2MiA3LjI4ODMzQzUwLjE3MTYgNy4yODgzMyA0NC4zMDA0IDE2LjgwMzcgNDQuMzAwNCAyOS45NjMyQzQ0LjMwMDQgNDAuNDIzMSA1MS4xMjIyIDYxLjM3MTUgNTMuOTIxMiA2OS41MjYzQzU0LjU1MDggNzEuMzYwNSA1My41NjE2IDczLjM3MDEgNTEuNzU3NCA3NC4wODE0QzQxLjUzNTEgNzguMTEyMSAxMS4zNjc5IDkyLjg3IDExLjM2NzkgMTI2LjY2OUMxMS4zNjc5IDE2Mi4yNzIgNDIuMDI0NiAxODkuMTE3IDk4LjU1ODEgMTg5LjE2Qzk4LjU4MDYgMTg5LjE2IDk4LjYwMzEgMTg5LjE1OSA5OC42MjU2IDE4OS4xNTlDOTguNjQ4MSAxODkuMTU5IDk4LjY3MDYgMTg5LjE2IDk4LjY5MzEgMTg5LjE2QzE1NS4yMjcgMTg5LjExNyAxODUuODgzIDE2Mi4yNzIgMTg1Ljg4MyAxMjYuNjY5QzE4NS44ODMgOTIuODcgMTU1LjcxNiA3OC4xMTIxIDE0NS40OTQgNzQuMDgxNEMxNDMuNjkgNzMuMzcwMSAxNDIuNyA3MS4zNjA1IDE0My4zMyA2OS41MjYzQzE0Ni4xMjkgNjEuMzcxNSAxNTIuOTUxIDQwLjQyMzEgMTUyLjk1MSAyOS45NjMyQzE1Mi45NTEgMTYuODAzNyAxNDcuMDggNy4yODgzMyAxMzQuMzI1IDcuMjg4MzNDMTE1Ljk2NSA3LjI4ODMzIDExMS4zODkgMzMuMjk1NSAxMTEuMDYyIDYxLjIwNzVDMTExLjA0IDYzLjA3MDkgMTA5LjUzNCA2NC41ODI4IDEwNy42NyA2NC41ODI4SDg5LjU4MDdDODcuNzE3MiA2NC41ODI4IDg2LjIxMDggNjMuMDcwOSA4Ni4xODkgNjEuMjA3NUM4NS44NjI2IDMzLjI5NTUgODEuMjg2IDcuMjg4MzMgNjIuOTI2MiA3LjI4ODMzWiIgZmlsbD0iI0QxODg0RiIvPgo8cGF0aCBkPSJNOTguNjkzMSAxNzcuNzU1QzU3LjE1NTEgMTc3Ljc1NSAxMS40Mzk3IDE1NS41MiAxMS4zNjgxIDEyNi43MzdDMTEuMzY4IDEyNi43ODEgMTEuMzY3OSAxMjYuODI2IDExLjM2NzkgMTI2Ljg3MUMxMS4zNjc5IDE2Mi41MDMgNDIuMDczNCAxODkuMzYyIDk4LjY5MzEgMTg5LjM2MkMxNTUuMzEzIDE4OS4zNjIgMTg2LjAxOCAxNjIuNTAzIDE4Ni4wMTggMTI2Ljg3MUMxODYuMDE4IDEyNi44MjYgMTg2LjAxOCAxMjYuNzgxIDE4Ni4wMTggMTI2LjczN0MxODUuOTQ2IDE1NS41MiAxNDAuMjMxIDE3Ny43NTUgOTguNjkzMSAxNzcuNzU1WiIgZmlsbD0iI0ZFREM5MCIvPgo8cGF0aCBkPSJNNzUuNjEzNSAxMTcuODk2Qzc1LjYxMzUgMTI3LjYxNCA3MS4wMjEgMTMyLjY3NSA2NS4zNTU4IDEzMi42NzVDNTkuNjkwNyAxMzIuNjc1IDU1LjA5ODEgMTI3LjYxNCA1NS4wOTgxIDExNy44OTZDNTUuMDk4MSAxMDguMTc4IDU5LjY5MDcgMTAzLjExNyA2NS4zNTU4IDEwMy4xMTdDNzEuMDIxIDEwMy4xMTcgNzUuNjEzNSAxMDguMTc4IDc1LjYxMzUgMTE3Ljg5NloiIGZpbGw9IiM2MzMwMDEiLz4KPHBhdGggZD0iTTE0Mi4yODggMTE3Ljg5NkMxNDIuMjg4IDEyNy42MTQgMTM3LjY5NiAxMzIuNjc1IDEzMi4wMzEgMTMyLjY3NUMxMjYuMzY1IDEzMi42NzUgMTIxLjc3MyAxMjcuNjE0IDEyMS43NzMgMTE3Ljg5NkMxMjEuNzczIDEwOC4xNzggMTI2LjM2NSAxMDMuMTE3IDEzMi4wMzEgMTAzLjExN0MxMzcuNjk2IDEwMy4xMTcgMTQyLjI4OCAxMDguMTc4IDE0Mi4yODggMTE3Ljg5NloiIGZpbGw9IiM2MzMwMDEiLz4KPC9zdmc+Cg==",protocol:"pancakeswap_v3",slippage:!0,fees:[100,500,2500,1e4],blockchains:["bsc"],bsc:{router:{address:"0x1b81D678ffb9C0263b24A97847620C99d213eB14",api:PS.ROUTER},smartRouter:{address:"0x13f4EA83D0bd40E75C8222255bc855a974568Dd4",api:PS.SMART_ROUTER},factory:{address:"0x0BFbCF9fa4f9C56B0F40a671Ad40E0805A091865",api:PS.FACTORY},pair:{api:PS.POOL},quoter:{address:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997",api:PS.QUOTER}}};var BS=t=>new IL(Object.assign(_S,{scope:t,findPath:t=>PS.findPath({...t,exchange:_S}),pathExists:t=>PS.pathExists({...t,exchange:_S}),getAmounts:t=>PS.getAmounts({...t,exchange:_S}),getPrep:t=>PS.getPrep({...t,exchange:_S}),getTransaction:t=>PS.getTransaction({...t,exchange:_S})}));const RS={name:"quickswap",label:"QuickSwap",logo:"data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgNzAyLjQ1IDcwMi40NyI+PGRlZnM+PGNsaXBQYXRoIGlkPSJjbGlwLXBhdGgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIj48cmVjdCB3aWR0aD0iNzUwIiBoZWlnaHQ9Ijc1MCIgZmlsbD0ibm9uZSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwLXBhdGgpIj48cGF0aCBkPSJNMzU0Ljc0LDI0LjM3YTM1MS4yNywzNTEuMjcsMCwwLDEsMzYzLjc0LDI3NywzNTQsMzU0LDAsMCwxLDEuMjMsMTQxLjI2QTM1MS43NiwzNTEuNzYsMCwwLDEsNTEwLjEyLDY5OS4zYy03My43NywzMS0xNTguMjUsMzUuMzUtMjM0LjkxLDEyLjU0QTM1MiwzNTIsMCwwLDEsNDYuNTEsNDk5LjU2Yy0yOC03My40NS0zMC4xNi0xNTYuMzgtNi4yNC0yMzEuMjVBMzUwLjg4LDM1MC44OCwwLDAsMSwzNTQuNzQsMjQuMzciIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTE1OC44MSwzNDkuNThjMS4zOSw2LjQxLDIuMjMsMTIuOTIsMy42MSwxOS4zNS44NSwzLjkzLDIuMTMsMyw0LjE1LDEuMjgsMy44Ny0zLjI1LDcuNTktNi42OSwxMS45NC05LjMxLDEuMjMuMjQsMS44NiwxLjIyLDIuNTMsMi4xLDExLjM5LDE0Ljg3LDI2LjUzLDI0LDQ0LjM3LDI4Ljk0YTE0Ny4yMywxNDcuMjMsMCwwLDAsMjUuMTcsNC42Nyw0Mi42OCw0Mi42OCwwLDAsMS02LjYxLTkuOTVjLTIuODUtNi40MS0xLjg1LTEyLjE1LDIuOTUtMTcuMjIsNS44Ny02LjE5LDEzLjYyLTguNzYsMjEuNDgtMTAuOCwxNi40OC00LjMsMzMuMjctNC43Myw1MC4xOC0zLjUzQTIwMi4xMSwyMDIuMTEsMCwwLDEsMzU4Ljc1LDM2MmMxMSwzLjA2LDIxLjcyLDYuNzMsMzEuNDQsMTIuODgsMS4zNiwxLjA5LDIuMywyLjYsMy42MSwzLjc0LDEyLjQ5LDEzLjQxLDE5Ljc4LDI5LjI1LDIwLjI4LDQ3LjU1LjM0LDEyLjY1LTMuMTYsMjQuNzItOS41LDM1LjgyLTExLjQyLDIwLTI4LjA5LDM0LjU2LTQ4LDQ1LjcxQTE3MC41LDE3MC41LDAsMCwxLDI5MSw1MjguNDJjLTQxLjI0LDQuNDctNzkuNDUtNC40Ny0xMTQuNTktMjYuMzYtMjkuMjEtMTguMTktNTEuNjUtNDMuMDgtNzAtNzEuOTJhMzM5LjU3LDMzOS41NywwLDAsMS0yMi41Mi00Mi43NWMtLjgxLTEuOC0xLTMuODEtMS44Mi01LjI5LjUyLDEuNzUsMS40OSwzLjczLS40Myw1LjYtLjU4LTcuNDUuMDgtMTQuOS40Ny0yMi4zMWEyODcuMTMsMjg3LjEzLDAsMCwxLDkuNDgtNjAuNTRBMjkyLjkxLDI5Mi45MSwwLDAsMSwyNjYuMDYsMTA5LjA5LDI4Ny4yLDI4Ny4yLDAsMCwxLDM0Ni41OSw4OS45YzQzLjU3LTQsODUuNzksMS43MywxMjcsMTYuMzQtNi4yNywxMS44OS00Miw0My43Mi02OS44LDYyLjE1YTk0LjExLDk0LjExLDAsMCwwLTUuNDQtMjMuNTFjLS4xNC0yLDEuNjYtMi42NSwyLjc4LTMuNjFxOC42Ny03LjQ2LDE3LjQzLTE0Ljc3YTE3LjE0LDE3LjE0LDAsMCwwLDEuNjktMS40OWMuNjYtLjcxLDEuNzctMS4zLDEuNTQtMi40cy0xLjU1LTEuMTUtMi40Ny0xLjNhNDYuODIsNDYuODIsMCwwLDAtOC4xNy0xYy0zLjgxLS40NS03LjU2LTEuMy0xMS40LTEuMzgtMi45NS0uMTgtNS44NS0uOTMtOC44My0uNjlhMjguMjIsMjguMjIsMCwwLDEtNC41LS4zMmMtMi41LS43OS01LjA3LS40NC03LjYxLS40My0xLjUyLDAtMy0uMTEtNC41NiwwLTQuMzUuMjUtOC43My0uNDgtMTMuMDcuMzRhMTIuODcsMTIuODcsMCwwLDEtMy4yMS4zMmMtMS4yNiwwLTIuNTEuMDYtMy43NywwYTEyLjM1LDEyLjM1LDAsMCwwLTQuODcuNDdjLTQuNTkuNDEtOS4xOS43OC0xMy43MywxLjYxLTUuNDgsMS4xNi0xMS4wOSwxLjQ0LTE2LjUzLDIuNzktNSwxLjMtMTAuMTMsMi0xNSwzLjc0LTYuNTEsMS43OS0xMi45NSwzLjg0LTE5LjM1LDYtOS4zNCwzLjcxLTE4LjgyLDcuMS0yNy43MSwxMS44NmEyNDguNzQsMjQ4Ljc0LDAsMCwwLTU1LjY2LDM2Ljk0QTI2Ni41NSwyNjYuNTUsMCwwLDAsMTU5LjY4LDIyN2EyNTQuODcsMjU0Ljg3LDAsMCwwLTE2LjU0LDI2LjE2Yy0zLjE3LDUuOS02LjIyLDExLjg1LTksMTgtMiw0LjcxLTQuNDIsOS4yNy02LDE0LjE4LTIsNC45LTMuNjQsOS45Mi01LjIyLDE1LTEuODgsNS4wNi0zLDEwLjM1LTQuNDUsMTUuNTMtLjYzLDItMSw0LjExLTEuNTMsNi4xOC0uNjMsMi40OS0xLDUtMS40Nyw3LjU1LS43Nyw0LjI1LTEuNDgsOC41LTIuMDksMTIuNzhhMTE4LjY0LDExOC42NCwwLDAsMC0xLjU3LDEzLjI5Yy0uNzQsMi45NC0uMiw2LS43NCw5LS44MiwzLjY5LS4yOCw3LjQ1LS41MiwxMS4xNi0uMTEsMi42MS0uMTYsNS4yMy0uMDksNy44NSwwLDEuMDctLjQ5LDIuNTcuNjQsMy4wOSwxLjI5LjYsMi4yMy0uNzcsMy4xNi0xLjUzLDMuMTgtMi42LDYuMjktNS4yOSw5LjQtOCwxMC40Ny05LDIxLjA3LTE3Ljg4LDMxLjU4LTI2Ljg1LjkxLS43NywxLjktMi43OSwzLjUyLS43MSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM0MTg5YzkiLz48cGF0aCBkPSJNMzkwLjExLDM3NS43OGMtMTIuMzctNy4zNS0yNS44OS0xMS42My0zOS43Ny0xNC45MmExOTcuMjUsMTk3LjI1LDAsMCwwLTU1LjY4LTUuMWMtMTMuMjEuNjYtMjYuMzEsMi41LTM4LjQ4LDguM2EzMi42MSwzMi42MSwwLDAsMC00LjIxLDIuNDNjLTkuODUsNi42LTExLjM1LDE1LjQtNC4yMywyNC45MSwxLjQ4LDIsMy4xMiwzLjgxLDUuMSw2LjIyLTYuMzksMC0xMi4wNS0xLjE5LTE3LjY5LTIuMzEtMTUuMTItMy0yOS4zMi04LjI0LTQxLjUtMTgtNS44Ni00LjY4LTExLjIyLTkuOTMtMTUuMTQtMTYuNDUsMS42LTIuNjEsNC4yOC0zLjgzLDYuNzgtNS4yNyw0LjgyLTIsOS4xOS00LjkxLDE0LTcuMDlhMjA3LjU1LDIwNy41NSwwLDAsMSw2Ny40LTE4YzkuMzItLjg3LDE4LjY1LTEuNzYsMjgtMS40MUEzMTEuMzgsMzExLjM4LDAsMCwxLDM3NiwzNDMuMjVjNi44LDIuMTIsMTMuNTIsNC40NSwyMC41OSw2Ljg0LDAtMi0xLjE0LTMuMTktMS45LTQuNDhBOTYuMTgsOTYuMTgsMCwwLDAsMzg1LDMzMS44OGMtMS4zMy0xLjU2LTMuMTgtMi45My0zLjE0LTUuMzMsMy43My44NSw3LjQ2LDEuNjgsMTEuMTgsMi41NiwxLC4yMywyLjE3LjgzLDIuODEsMCwuODUtMS4wOC0uNDMtMi0xLTIuODQtNS40OS04LjE5LTEyLjMzLTE1LjE3LTE5LjY3LTIxLjY4LDMuODktMi4yNiw3Ljg5LS40MiwxMS42OC4wNiwzOC44Nyw1LDc0LjI5LDE4LjgxLDEwNS4xOCw0Myw0MC45LDMyLjA5LDY3LjMzLDczLjU0LDc4LjQ3LDEyNC41MUExODAuNTQsMTgwLjU0LDAsMCwxLDU3My44Nyw1MjRjLTIuMTksMzAuMTEtMTEuNjUsNTcuOS0yOS40NSw4Mi41OC0xLjE3LDEuNjItMi43NSwyLjkxLTMuNjEsNC43Ni00LDYtMTAsMTAuMDgtMTUuNDQsMTQuNTItMjkuNTUsMjQtNjQsMzYuNDYtMTAxLjE0LDQyLjI4YTMxMC4zNCwzMTAuMzQsMCwwLDEtODcuMzEsMS41NCwyODguMTcsMjg4LjE3LDAsMCwxLTEyNy4zOS00OC4xNGMtOS4yNy02LjI5LTE4LjM2LTEyLjg1LTI2LjUxLTIwLjYyYS42NS42NSwwLDAsMSwwLTFjMS43NC0uNjksMi44NC41Nyw0LDEuNDNhMTg5LjA4LDE4OS4wOCwwLDAsMCw2NSwzMS41NiwyMjguNDYsMjI4LjQ2LDAsMCwwLDIzLjg3LDQuNzVjMS44Mi42NiwzLjc1LjM1LDUuNjIuNjZhNy41NSw3LjU1LDAsMCwxLDEuMTMuMjNjMTguMjQsMi4xNiwzNi4zNy44OSw1NC4zNi0yLjI4LDM5LjU0LTcsNzQuNjYtMjMuNTUsMTA0Ljc1LTUwLjE1LDIwLjUtMTguMTIsMzYuNjgtMzkuNTMsNDUuMjQtNjUuOTVzNy4zNS01Mi4xLTQuNjctNzcuNDhjLTIuNDcsMTEuMzgtOC40NCwyMC44LTE1LjkxLDI5LjM4YTEwNi4wOSwxMDYuMDksMCwwLDEtMjYuMDcsMjEuMTljLTEuMTQuNjYtMi40LDEuOTEtMy43MS45LTEuMTMtLjg2LS40NS0yLjM3LS4xLTMuNTFhMTM5LjY0LDEzOS42NCwwLDAsMCw0Ljk0LTI0LjJjMy41LTM0LjUxLTkuODItNjEuMzctMzcuMy04MS43NGExMTkuOCwxMTkuOCwwLDAsMC0xNC4wNi05IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzI2MmY3MSIvPjxwYXRoIGQ9Ik0yNzYuMDgsNjM4LjQxYTE1MS4xNiwxNTEuMTYsMCwwLDEtMjkuODYtNi4xQTE5OC41MywxOTguNTMsMCwwLDEsMTk0LjM1LDYwOGMtMy44My0yLjUxLTcuMDctNS44Ni0xMS4yNC03Ljg5LTIuMzktLjM0LTMuMzktMi42OC01LjMtMy43LTQwLjM4LTM1LjktNjgtODAtODMuODMtMTMxLjQ4QTI4MC41NCwyODAuNTQsMCwwLDEsODEuNjMsMzg3LjdjLjEtMiwuMi0zLjkzLjM2LTcsMiw0LjM2LDMuNDgsNy44Miw1LjA1LDExLjI2LDE0LjUzLDMxLjg2LDMzLjEzLDYwLjkzLDU4Ljc0LDg1LjEyQzE3Myw1MDIuODIsMjA0LjY4LDUyMCwyNDIsNTI2YzQzLjcxLDcuMTEsODQuNjEtLjUxLDEyMi4yMi0yNC4wNiwxOC43NS0xMS43NSwzNC4xNC0yNi45NCw0My00Ny42NSwxMC43Mi0yNS4xMSw2LjY4LTQ4LjQ0LTkuNjUtNjkuOTUtMS40My0xLjg4LTIuOTUtMy42OS00LjQzLTUuNTQsMS45NC0xLjY2LDMsLjI2LDQuMDcsMS4xOGE4My4yMiw4My4yMiwwLDAsMSwyMi42LDI5LjksODgsODgsMCwwLDEsNy44NSwzNS4xOSw3OS43NSw3OS43NSwwLDAsMS04LDM1Ljg3LDUuMzksNS4zOSwwLDAsMCwzLjI0LTEuMTcsOTguMzQsOTguMzQsMCwwLDAsMTQuNjUtMTAuMzVjMS40Mi0xLjIzLDIuNjctMy4wOCw1LTIuOGExNjUuMywxNjUuMywwLDAsMS02LjA5LDI3Ljc1LDEzMS43NCwxMzEuNzQsMCwwLDAsMTcuMjctMTEuNDhjNC4zMy0zLjM4LDcuODMtNy42MiwxMi4wOC0xMS4wNiwxLjgxLjc3LDEuODEsMi41NiwyLjIzLDQuMDgsNi45MiwyNSwxLjkxLDQ4LjI4LTEwLjQyLDcwLjMtMTUsMjYuNy0zNyw0Ni41Ny02Mi42Miw2Mi42NWEyMTMuMzMsMjEzLjMzLDAsMCwxLTY3LjI3LDI3LjU1LDE0Mi4yLDE0Mi4yLDAsMCwxLTQ1LjY3LDIuNjloMGMtMS45LTEtNC4wNy4xOS02LS43MiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiMxNjFmNDIiLz48cGF0aCBkPSJNNjU0LjE3LDQ1My4wN2EyMTIsMjEyLDAsMCwwLTIwLjc3LTgyLjM1QTIxOC45LDIxOC45LDAsMCwwLDYwMywzMjRjLTEwLjktMTIuOTEtMjMuNDItMjMuOTMtMzYuNTYtMzQuMzgsMS4yMy0xLjIxLDIuNzYtMSw0LjI0LS44YTIzNi4yOCwyMzYuMjgsMCwwLDEsNTMuNzksMTIuNzhBODAuMiw4MC4yLDAsMCwxLDYzNywzMDcuNDNhNDAuMzgsNDAuMzgsMCwwLDEsNC4xNiwyLjQ0Yy4zNC4xOS41My42OSwxLC41OGExLjI3LDEuMjcsMCwwLDEtLjIxLTEuMzdjLTExLjg0LTE1LjQyLTI2LjE1LTI4LjI4LTQxLjE3LTQwLjVhMzAyLDMwMiwwLDAsMC01OC4xOC0zNi45LDI4Ny42NCwyODcuNjQsMCwwLDAtOTEuNTctMjcuNDVjLTIuODMtLjM1LTUuNzUsMC04LjUxLTEtLjI0LTEuODksMS4zNS0yLjUyLDIuNDUtMy40NCwxOC42Ny0xNS41NSwzMy42OS0zNCw0NC4yOC01NS45NGExNTcuMSwxNTcuMSwwLDAsMCw4LjE0LTIwLjUzYy42NC0yLDEtNC4xNywzLTUuNDRhMjg4LjE2LDI4OC4xNiwwLDAsMSw4OC40Nyw2NiwyOTIuMSwyOTIuMSwwLDAsMSw2Ni42NCwyNzBjLS44NC40Ni0xLS4yNi0xLjM0LS43NSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM0MTg5YzkiLz48cGF0aCBkPSJNNTQwLjgxLDYxMS4zN2MwLTIuOTQsMi4zNC00LjYsMy43OS02LjY2LDEzLjY2LTE5LjUxLDIyLTQxLjEyLDI2LjMxLTY0LjQ4LDIuNjctMTQuNDcsMi45LTI5LjA4LDItNDMuNTctMS40Ny0yMi4zNC03LjE4LTQzLjgzLTE2LjE5LTY0LjQyYTIxMi4yNSwyMTIuMjUsMCwwLDAtMjQuNzMtNDIuNTcsMjIxLjI0LDIyMS4yNCwwLDAsMC0zNi4xNi0zNy42MkEyMDcuNTYsMjA3LjU2LDAsMCwwLDQyNS4xOSwzMTRhMTk4LjEsMTk4LjEsMCwwLDAtNDIuMjUtOC42OWMtMi41OS0uMjMtNS4xNS0uODUtNy43OC0uNjktOS4xMy02LjczLTE4LjM5LTEzLjI0LTI4Ljc5LTE3Ljk0LDAtLjMzLDAtLjY3LjA3LTEsMy43NCwwLDcuNDkuMDYsMTEuMjMsMCw1Mi40My0uOTQsMTAwLjc1LDExLjkxLDE0Myw0My44NEM1NDQuNCwzNjIuNTksNTcxLjc0LDQwNi4zMiw1ODIsNDYwLjNjOC43Myw0Ni4wNSwyLDg5LjU0LTIzLjU2LDEyOS40NC01LDcuODUtMTAuNTMsMTUuNDEtMTcuNjEsMjEuNjMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjMTYxZjQyIi8+PHBhdGggZD0iTTUwMC40LDExNy45MWMtNS4yNSwxNi4wNS0xMS44NCwzMS40Ny0yMS4yNyw0NS41OWExNzIuNzgsMTcyLjc4LDAsMCwxLTM0LjQyLDM3LjczYy0uNzYuNjMtMS40NSwxLjM1LTIuMTcsMi00LjU4LDIuMzMtOC4zNSw1Ljg1LTEyLjU5LDguNjhhMjY3LjY4LDI2Ny42OCwwLDAsMS00OS4zOSwyNS41Myw4LjA5LDguMDksMCwwLDEtMS4yOS4zMmMtLjc2LTEuMTIuMTQtMS41My42LTIsOS44Mi05LjM1LDE1LjkxLTIwLjkyLDIwLTMzLjY2YTUsNSwwLDAsMSwzLjE3LTMuNjVjMzAuNTEtMTIuMDgsNTQuODYtMzIuMTUsNzQuOC01Ny45LDEuODEtMi4zNCwzLjU4LTQuNzEsNS44Mi03LjY2LTYuMTctLjEyLTEwLjksMy0xNi4xMiwzLjgyLTEsLjA2LTIuMjcuODgtMi41LTFhMjE1LjI3LDIxNS4yNywwLDAsMCw0MS44NC03NS42NWMuNTUtMS43OCwwLTQuMjMsMi40OC01LjEzYS40NC40NCwwLDAsMSwuMjUuNDVjMCwuMTgtLjA4LjI2LS4xMy4yNmEyMzAuNDksMjMwLjQ5LDAsMCwxLTguMzUsNTguNTYsMzYuODgsMzYuODgsMCwwLDAtLjY5LDMuNjMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjMTYxZjQyIi8+PHBhdGggZD0iTTM4MS44MiwzMjYuNTRhMTIwLDEyMCwwLDAsMSwxNi4wNiwyMi40Yy40My43OSwxLjU0LDEuNjguNTUsMi42MS0uNzUuNy0xLjYyLS4xNi0yLjQxLS40NmEzNDksMzQ5LDAsMCwwLTYyLjU2LTE3Yy0xMC43NS0xLjg1LTIxLjY2LTIuNjYtMzIuNTgtMy40NWExOTQuMDksMTk0LjA5LDAsMCwwLTI5LjQ1LjQyYy0yMi40MiwxLjgtNDQuMjQsNi41OS02NSwxNS41Ni02LjQsMi43Ny0xMi45NCw1LjI1LTE4Ljg5LDktLjY4LjQzLTEuNDksMS4xMy0yLjI3LjA2YTE5OS41OSwxOTkuNTksMCwwLDEsNTkuMi0yOC40MWMyOS4xNS04LjcsNTguOTMtMTAuODQsODkuMTUtOC40NmEzMjguNDIsMzI4LjQyLDAsMCwxLDQ1Ljc0LDYuOTUsMjEuOTIsMjEuOTIsMCwwLDEsMi40NC44MyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiMxNjFmNDIiLz48cGF0aCBkPSJNMzc0LjMyLDExNi4zOGg0LjVjMi40MiwxLDUuMDctLjI4LDcuNS43NGg0LjQ5Yy4zOCwyLjE3LTEuNDEsMy4wOC0yLjY1LDQuMTMtMjAuNzgsMTcuNTYtNDEuNDEsMzUuMjktNjIuMiw1Mi44My02Ljg3LDUuNzktMTMuNjgsMTEuNjUtMjAuNTQsMTcuNDVhNi4xNCw2LjE0LDAsMCwwLTIuMzUsMi44M2MtOSwzLjM3LTE3LjM2LDcuNi0yNCwxNC45NC0zLjEzLDMuNDgtNS4xOCw3LjUtNy40NCwxMS40Ni02LjE3LDQtMTEuMzYsOS4yNi0xNywxNC0xNC43NywxMi40Mi0yOS4zNSwyNS4wNi00NC4xNiwzNy40My0xLjI1LDEtMi4wNywyLjUtMy41MiwzLjMxLTIuNTUtMy44LTItOC0xLjM5LTEyLjEyLDEuODYtMy4wNiw0LjgtNSw3LjQ0LTcuMjhxMjEuNTQtMTguMjcsNDMtMzYuNTljMTQtMTEuODUsMjcuOTItMjMuNzcsNDEuOS0zNS42M3EyNC4xMi0yMC40NSw0OC4xNy00MWM4LjkzLTcuNiwxNy44LTE1LjI2LDI2Ljg2LTIyLjcxLDEuMzctMS4xMywyLjMzLTIsMS4yOC0zLjgxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzVjOTRjZSIvPjxwYXRoIGQ9Ik02MzcuNTEsMzA4LjQxYy0xNy42My04LjU2LTM2LjI3LTEzLjc4LTU1LjU0LTE2LjktNS4xNS0uODQtMTAuMy0xLjg3LTE1LjU1LTEuOTEtNi43Mi00LjI1LTEzLjMxLTguNzMtMjAuMTktMTIuN2EyMDkuNzMsMjA5LjczLDAsMCwwLTcyLjE4LTI1Ljc1LDkuMDksOS4wOSwwLDAsMS0xLjY1LS42NGM3LjY1LTEuNCwzMy42OSwyLjUxLDUxLjcyLDcuNDdhMjQzLjA3LDI0My4wNywwLDAsMSw0OC40NywxOWMtMS42Mi00Ljg1LTQuNTgtOC4xMy02LjM5LTEyLS4xOC0xLTEuNjMtMS45NC0uNjYtM3MyLjA3LjA4LDMsLjQ5YzIuNiwxLjE4LDUuMDgsMi42MSw3LjY5LDMuNzdhMzQ3LjUyLDM0Ny41MiwwLDAsMSw2MS40LDQwLjQ5YzEuMDYsMS40LDEuMDYsMS40LS4xMSwxLjY5IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzE2MWY0MiIvPjxwYXRoIGQ9Ik0zNzQuMzIsMTE2LjM4Yy40NiwxLjEsMS45Mi4zLDIuNjEsMS41My00LjE4LDMuNjItOC4zNiw3LjMtMTIuNjEsMTAuOTFxLTExLjUxLDkuNzgtMjMuMDcsMTkuNDhRMzI0Ljg3LDE2Mi4xMywzMDguNSwxNzZjLTcuNTgsNi40NC0xNS4wNSwxMy0yMi42MywxOS40Ni05LjE4LDcuOC0xOC40NSwxNS41MS0yNy42NSwyMy4zLTcuMyw2LjE5LTE0LjUzLDEyLjQ3LTIxLjgyLDE4LjY4LTcuNjcsNi41Mi0xNS4zNywxMy0yMy4wNiwxOS40OWwtNy43MSw2LjQ3LDIuMTktOS43NmMtMS4yNC0zLjE5LDEuMzUtNC42MywzLjEzLTYuMSw3LTUuODQsMTMuODgtMTEuODEsMjAuODMtMTcuNzFxMjQuMjUtMjAuNTgsNDguNDktNDEuMjIsMjAuODQtMTcuNyw0MS42Ni0zNS4zOWMxMi45Mi0xMSwyNS45My0yMS45MSwzOC43Mi0zMy4wNywxLS44NiwyLjg1LTEuODcuMTUtMyw0LjQzLTEuNjEsOS0uMzMsMTMuNTItLjczIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzY0OTdkMCIvPjxwYXRoIGQ9Ik0zNjAuOCwxMTcuMTFjMS4wNS4xOSwyLjItLjM3LDMuMy40OS0yLjY1LDMuOS02LjU1LDYuNDUtMTAsOS40NC05LjgyLDguNTYtMTkuNzksMTctMjkuNzQsMjUuMzctOS4xLDcuNjgtMTguMjksMTUuMjYtMjcuMzcsMjNzLTE4LjIzLDE1Ljc0LTI3LjQsMjMuNTQtMTguMjksMTUuMjctMjcuMzYsMjNTMjI0LDIzNy41OCwyMTQuODcsMjQ1LjQ1Yy0yLjc0LDIuMzctNi4zNyw0LTcuMDUsOC4xNS00Ljg0LjU1LTcuNCw0LjY0LTEwLjk0LDcuMTYtNS41OSw0LTkuODQsOS40Ny0xNSwxMy45NS01LjE5LDMuNjktOS43Nyw4LjEtMTQuNjEsMTIuMi0xNC4zOCwxMi4xOS0yOC43LDI0LjQ2LTQzLjEzLDM2LjU5LTIsMS42OC0zLjc3LDMuNjYtNiw1LjA2LTEsLjYyLTEuOTEsMS43OS0zLjMyLjgxYTE2LjksMTYuOSwwLDAsMSwxLjUxLTcuNTFjNy4xOS00LjU5LDEzLjE3LTEwLjY3LDE5LjY2LTE2LjEsMTcuODgtMTUsMzUuNjEtMzAuMTYsNTMuMzgtNDUuMjlzMzUuMy0zMC4xMyw1My00NS4xNXEyNi0yMiw1MS45NC00NC4wOGMxNy42OC0xNSwzNS40NC0zMCw1My00NS4xNSwzLjQ5LTMsNy4xNi01LjgzLDEwLjU2LTloMyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2ODlhZDEiLz48cGF0aCBkPSJNMzk5LjgxLDExNy44N2M0LjA3LS4wNSw4LDEsMTIsMS41LDEuMDksMi4zOS0xLDMuMzItMi4yMyw0LjQzLTUsNC4zNy0xMC4yMyw4LjQ4LTE1LjEsMTMtLjUyLS42OS0xLjA4LTEuMzYtMS41Ni0yLjA5LTEuMTEtMS42NS0xLjg5LTEuMjEtMi42MS4zMy01LjksMTIuNjYtMTYuMDUsMjEuNDYtMjcuMSwyOS4zYTIwMi4xNCwyMDIuMTQsMCwwLDEtMzkuODcsMjEuNzljLS43Ni0xLjQ0LS44My0xLjUuNDctMi44NCwyLjY5LTIuNzgsNS43Ny01LjE0LDguNzItNy42NCwyMS4yOS0xOC4xLDQyLjY0LTM2LjEyLDYzLjgxLTU0LjM3LDEuMjMtMS4wNywyLjI5LTIuMywzLjQ3LTMuNDEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNGU4ZmNjIi8+PHBhdGggZD0iTTM5OS44MSwxMTcuODdhNC41NSw0LjU1LDAsMCwxLTEuNzUsMy4xNHEtMjAuNiwxNy40My00MS4xMywzNC45My0xNS43MiwxMy40LTMxLjM2LDI2Ljg5Yy0uOTQuODItMi43MSwxLjQtMi4yMywzLjNhMTg3LjQsMTg3LjQsMCwwLDEtMjAuMjcsOC4yNGMtMi4zMy0uNjQtLjQtMS40NywwLTEuODUsNC4wOS0zLjYyLDguMjMtNy4xOCwxMi4zOS0xMC43MnExMS40Ny05Ljc1LDIzLTE5LjQ3YzcuNTctNi40LDE1LjE4LTEyLjc3LDIyLjczLTE5LjE5czE1LjEyLTEyLjg3LDIyLjU3LTE5LjQyYzIuNDEtMi4xMiw1LjM2LTMuNjgsNy02LjU5LDMuMDYtLjQ0LDYsLjYsOSwuNzQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNTU5MWNkIi8+PHBhdGggZD0iTTM0Ni42MSwyMDhjNy45Mi0zLjkyLDE2LjE5LTcuMjEsMjMuMS0xMi45MywxLjQ0LS4wNiwxLjI4Ljc2Ljk0LDEuNjktNi4zOCwyNi40Mi0yNi40Miw0My43Ny01My41Miw0Ni4zLTUuMjIuNDktMTAuNDMsMS4wOS0xNS42OS41OS42OC0xLjkzLDIuNTEtMS43Niw0LTIuMTcsNS44OC0xLjYsMTEuNzEtMy4zMSwxNy4xNi02LjEzLDEwLjIyLTUuMjgsMTcuNzEtMTMuMDcsMjItMjMuODRhOC4yMiw4LjIyLDAsMCwxLDIuMDUtMy41MSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiMxNjFmNDIiLz48cGF0aCBkPSJNMzQ2LjYxLDIwOGMtMy4yNiwxMi42LTExLjI5LDIxLjMxLTIyLjM5LDI3LjU1LTcuMTMsNC0xNSw1Ljg2LTIyLjc3LDguMS0xLjkxLTUuNTkuMTYtMTAuMzIsMy41Mi0xNC41NywzLjk0LTUsOS4zLTguMDgsMTUtMTAuNjlBMjc3LjA4LDI3Ny4wOCwwLDAsMSwzNDYuNjEsMjA4IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzQxOGFjOSIvPjxwYXRoIGQ9Ik0xMTQuOCwzMjkuMzdjNC40NS0xLjY1LDcuMzEtNS40MSwxMC44MS04LjI4LDExLjI5LTkuMjcsMjIuMzgtMTguNzgsMzMuNTEtMjguMjQsNS44NS01LDExLjYxLTEwLjA1LDE3LjQxLTE1LjA4LDEuNTgtMS4zNywzLjA1LTIuOTQsNS4zNC0zLjA2LTYsNy41Mi0xMS43MywxNS4yNC0xNiwyMy45M3EtMTcuMjUsMTQuNi0zNC40NCwyOS4yN2MtNS4zLDQuNTMtMTAuNzEsOC45NC0xNS45MywxMy41Ny0uOC43MS0xLjcsMS42LTIuOTQuNjRhNTQuMTMsNTQuMTMsMCwwLDEsMi4yNC0xMi43NSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2NDk3ZDAiLz48cGF0aCBkPSJNMTU4LjgxLDM0OS41OGMtMy41NC4yNy01LjE0LDMuNDQtNy40OCw1LjMzLTkuODUsNy45NS0xOS40NSwxNi4yMi0yOSwyNC40OS0zLjIsMi43Ni02LjMsNS42Mi05LjY5LDguMTYtMi4yMywxLjY4LTMuMDcsMS0zLTEuNTgsMC0zLjEyLDAtNi4yNCwwLTkuMzYsMy40Ni0zLjc1LDcuNjEtNi43MiwxMS40OC0xMCwxMS4xNy05LjQ4LDIyLjIzLTE5LjEsMzMuNTUtMjguNDIsMS0uOCwxLjc5LTIuMjYsMy40Ni0xLjMxbC43NSwxMi42OSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM0NjhjY2EiLz48cGF0aCBkPSJNMjA3LDI3NS40OGE0LjE3LDQuMTcsMCwwLDEsMS45MS0zLjA4YzktNy42LDE4LTE1LjE1LDI3LTIyLjc2LDcuMzktNi4yNSwxNC43Mi0xMi41NiwyMi4wNy0xOC44NywzLjg2LTMuMzEsNy42OS02LjY2LDExLjUyLTEwLC43My0uNjQsMS40MS0xLjEyLDIuMTIsMC0uODMsMy40MS0xLjgyLDYuNzktMS43MiwxMC4zNS00LDQuNDMtOC44OSw3LjkzLTEzLjQyLDExLjgtMTQsMTItMjcuOTUsMjMuOTMtNDIsMzUuNzZhMTEuMzQsMTEuMzQsMCwwLDAtMS40OCwxLjY4LDcuOTMsNy45MywwLDAsMS02LTQuODgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNTU5MWNkIi8+PHBhdGggZD0iTTExMi41NiwzNDIuMTJjMy4yNC0xLDUuMTMtMy44MSw3LjU2LTUuODIsMTMuMTctMTAuODksMjYuMTMtMjIsMzkuMTctMzMuMDgsMi4wNS0xLjczLDMuNDktNC4zMyw2LjU4LTQuNThhMTUwLjg5LDE1MC44OSwwLDAsMC02LDE4Yy0yLjM0LS4yMy0zLjUzLDEuNjQtNSwyLjg4LTEzLjU4LDExLjY3LTI3LjI4LDIzLjItNDAuOTIsMzQuOC0uODIuNjktMS41NSwxLjcxLTIuODksMS4yNmE0NC44OCw0NC44OCwwLDAsMSwxLjUtMTMuNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM1Yzk0Y2UiLz48cGF0aCBkPSJNMjEzLDI4MC4zNmMtLjkzLTEuNjguNjUtMi4yMywxLjQ3LTIuOTNxMTcuMi0xNC43MSwzNC40OS0yOS4zNCw5Ljc3LTguMjgsMTkuNTktMTYuNDlhNC4xNiw0LjE2LDAsMCwxLDEuMzgtLjQ3LDI5LjkyLDI5LjkyLDAsMCwwLDEuMzgsOWMtMy45Myw0LjU2LTguODcsOC0xMy4zOSwxMS44NnEtMTUuMTMsMTMtMzAuNDUsMjUuOTNhMy41LDMuNSwwLDAsMC0xLjU0LDJjLTQuMjYsMS41OC04LjU2LDIuMjEtMTIuOTMuNDEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNGU4ZmNjIi8+PHBhdGggZD0iTTE1OC4wNiwzMzYuODljLTQuMjEsMi40MS03LjU3LDUuOTEtMTEuMjcsOS05Ljc2LDgtMTkuMzcsMTYuMjUtMjguOTQsMjQuNS0yLjY0LDIuMjgtNSw0LjgyLTguMjgsNi4yNy4zOS00LS44NC04LjA4Ljc0LTEycTIyLjE3LTE4Ljk0LDQ0LjQ2LTM3Ljc2YzEtLjg2LDIuMDYtMS45MSwzLjY0LTEuMjMtLjEyLDMuNzUtLjIzLDcuNS0uMzUsMTEuMjYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNGU4ZmNjIi8+PHBhdGggZD0iTTE1OC40MSwzMjUuNjNjLTQuNzUsMi41NS04LjQyLDYuNS0xMi41Miw5Ljg4LTkuNjgsNy45NS0xOS4xNCwxNi4xNi0yOC43MywyNC4yMi0yLjE0LDEuODEtMy42NCw0LjU2LTYuODUsNC44OS4zOC0zLS44LTYuMTEuNzUtOXExNC0xMiwyOC4wNi0yMy45MmM2LjM0LTUuMzksMTIuNzQtMTAuNzEsMTkuMDctMTYuMSwyLTEuNzIsMS40Ny4xNywxLjY1LDEuMDhaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzU1OTFjZCIvPjxwYXRoIGQ9Ik0yMjYsMjgwYy0xLjM4LTEtLjQxLTEuNzQuMzItMi4zNSw4LjgyLTcuNCwxNy42OC0xNC43NSwyNi40OS0yMi4xNiw1LjUtNC42MywxMC45My05LjM0LDE2LjM3LTE0YTMuNjYsMy42NiwwLDAsMSwyLjItMS4yOGwyLjI1LDQuNDljLTEuNzMsMi42Ny00LjUsNC4zMy02LjQ1LDYuNzktMTAuODMsMTItMjIuOTUsMjIuMTQtMzguMjksMjcuOTFBMTkuNTMsMTkuNTMsMCwwLDEsMjI2LDI4MCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM0ODhkY2EiLz48cGF0aCBkPSJNMzk0LjQ4LDEzNi44YzEuMzYtNC4yNSw1Ljc3LTUuNDcsOC4zOC04LjQ3LDIuNzgtMy4xOSw3LjMzLTQuNjEsOC45NS05LDMuMjYsMCw2LjM4Ljg2LDkuNTUsMS40NSwyLjc0LjUxLDIuODYsMS43LDEsMy4zOS00LjA4LDMuNjQtOC4yLDcuMjYtMTIuMzQsMTAuODItMy44NiwzLjMyLTcuNzgsNi41Ny0xMS42OCw5Ljg1WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM0NjhjY2EiLz48cGF0aCBkPSJNMjA5LjM3LDMwNy44MWMuNjYsMS42Ni0xLjMzLDIuNDktMS4xLDQtMS00LjU2LTMuNTEtNi4zMy04LjA4LTUuNDJhMjMuNjUsMjMuNjUsMCwwLDAtMTIuNjQsNy4zNWMtLjk0LDEtMiwxLjg5LTMsMi44NC0uODItMSwwLTEuODcuMzMtMi43NiwyLTYuNTEsNi4zOS0xMS4xNCwxMS45My0xNC44M2ExMi41NywxMi41NywwLDAsMSw0LjA2LTEuODVjNi40Mi0xLjUzLDkuOTQsMS42MSw5LjA2LDguMTJhOC4yOCw4LjI4LDAsMCwxLS42MSwyLjUzIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzQyOGFjOSIvPjxwYXRoIGQ9Ik0yMDkuMzcsMzA3LjgxYzAtMSwuMDYtMiwuMDctMywuMTEtNi41NC0zLjYtOS05LjY3LTYuMjUtNywzLjItMTEuNDIsOC45Mi0xNC40OSwxNS43OS0uNzEuMTMtMS4wOC0uMDctLjg2LS44NiwyLjIxLTguMTYsNi40Ny0xNC45MiwxMy41Ni0xOS43M2ExNC44MiwxNC44MiwwLDAsMSw1Ljg1LTIuMjgsNi4yNSw2LjI1LDAsMCwxLDcuNDEsNC42MSwxNC44OCwxNC44OCwwLDAsMS0xLjg3LDExLjciIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjMTgyMTQ0Ii8+PHBhdGggZD0iTTI2Ny4xMywyNTEuNDFjLTEuMjYtMS0uMTUtMS40LjUyLTEuODcsMi4xMS0xLjQ3LDMuMjctNC4xLDUuOTMtNC45MiwzLjQsNS4zOCw4LjgzLDcuNzUsMTQuNDksOS43NywxLjE0LjQxLDIuMzMuNjcsNC4xOSwxLjE5LTguNzIsMi4yNy0xNi4yNCwxLjM5LTIzLjE1LTMuMzNhMywzLDAsMCwwLTItLjg0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzQ1OGNjYSIvPjxwYXRoIGQ9Ik01NzYuMjIsMjY2LjIzYy0yLjc1LS4zMi00Ljg0LTIuMi03LjM0LTMuMTMtMS0uMzYtMS44OS0xLjY0LTIuOTItLjgtLjg1LjcuNTQsMS43NC4yNCwyLjcxLTEuNTMtMS4zNC0yLjA2LTMuMjYtMi44Ni01LjIxLDQuNDYsMS44NSw4LjkxLDMuNjQsMTIuODgsNi40MyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2MzY1N2QiLz48cGF0aCBkPSJNNjM3LjUxLDMwOC40MWMuODEtLjUxLDAtMS4xMy4xMS0xLjY5bDQuMzUsMi4zNiwyLjM0LDNjLTIuODUtLjc2LTQuNzgtMi4zMS02LjgtMy42NyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiMyNjMxNTQiLz48cGF0aCBkPSJNNDY1LjE5LDI0OS4yNmExNC4yNiwxNC4yNiwwLDAsMSw2LC40NWMtMi4zMiwxLjI2LTMuOTIsMS4wOS02LS40NSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiNhMDlhYTkiLz48cGF0aCBkPSJNMTc3LjgxLDU5Ni4zNmMyLjMzLjQyLDMuMzksMi42Nyw1LjMsMy43TDE4Myw2MDFhMTQuMjIsMTQuMjIsMCwwLDEtNS4yMS00LjU5IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzQyNGE3ZiIvPjxwYXRoIGQ9Ik02NTQuMTcsNDUzLjA3bDEuMzQuNzVjLjE5LDEuNTEtLjQ1LDIuNzUtMS4zNCw0LjZaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzhjYjdkZSIvPjxwYXRoIGQ9Ik00NjUsMTM1Ljc5Yy41MSwxLjE1LDEuNjYuNjgsMi41LDFsLTQsMS41NWMtLjMxLTEuNTkuNzctMS45NSwxLjUxLTIuNTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNWE1ZDc2Ii8+PHBhdGggZD0iTTE4NC40MiwzMTMuNTFsLjg2Ljg2Yy0uMjMuNzQtLjQ1LDEuNDktLjY4LDIuMjNMMTgzLDMxOC42N2MuNDgtMi40Mi41MS0zLjksMS40My01LjE2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzRmNjY4YSIvPjxwYXRoIGQ9Ik0zNzAuNjUsMTk2LjczYy0uMjItLjYyLS4xMy0xLjQtLjk0LTEuNjkuMjQtLjU4Ljg5LTEuMzksMS4xOS0xLjEuOS44Ny41MiwxLjkxLS4yNSwyLjc5IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzU1NWE3MyIvPjxwYXRoIGQ9Ik0xMTcuOCwzMTUuODZhNjEuNDQsNjEuNDQsMCwwLDEsNC41LTE1Ljc3YzguODItNi4xNSwxNi41OC0xMy42LDI0Ljc5LTIwLjVxMjEuMzUtMTgsNDIuNTMtMzYuMTQsMTkuMzUtMTYuNTUsMzguNzktMzMsMjEtMTcuOCw0Mi0zNS42NmMxMi43NC0xMC44MywyNS41Mi0yMS42MywzOC4yMS0zMi41Myw4LjktNy42NSwxOC0xNS4wNywyNi43NC0yMi44OGE1Myw1MywwLDAsMSwxNC4yNC0xLjUyLDEuNDQsMS40NCwwLDAsMSwxLjU0LS4xOGMxLjA2LDEuODEtLjI5LDIuODQtMS4zOSwzLjc2cS0xOC4xMywxNS4zNi0zNi4xOSwzMC44MVEyOTQuMjgsMTY4LjYzLDI3NSwxODVxLTE3Ljc5LDE1LjE4LTM1LjY0LDMwLjI5UTIxNy43LDIzMy42NywxOTYsMjUyLjFjLTE4LDE1LjI1LTM1Ljg4LDMwLjU5LTUzLjksNDUuNzktNyw1Ljg3LTEzLjgxLDExLjg4LTIwLjg3LDE3LjYzLS44OC43MS0yLjA3LDMtMy40Ny4zNCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2ZDljZDIiLz48cGF0aCBkPSJNMzM1LjMxLDExOS4zOGMtMS4yNiw0LjIxLTUuMzMsNS43OS04LjIyLDguMzYtOS40Nyw4LjQyLTE5LjI2LDE2LjQ5LTI4Ljk0LDI0LjY3LTEwLjgzLDkuMTMtMjEuNzIsMTguMi0zMi41MSwyNy4zOC05LjM4LDgtMTguNjIsMTYuMTEtMjgsMjQuMS05LjA5LDcuNzQtMTguMjksMTUuMzQtMjcuMzgsMjMuMDZzLTE4LjExLDE1LjU1LTI3LjIxLDIzLjI4LTE4LjI1LDE1LjM3LTI3LjM1LDIzLjA5Yy03LjQ5LDYuMzYtMTQuOTIsMTIuNzktMjIuMzksMTkuMTYtMywyLjU4LTYuMTEsNS4xLTkuMTYsNy42NS0uNjYuNTUtMS4yNi44Mi0xLjg2LDBhNjAsNjAsMCwwLDEsNS4yNS0xNWM2LjktNC4zNSwxMi42Ny0xMC4xLDE4Ljg2LTE1LjMycTIxLjMzLTE4LDQyLjUxLTM2LjEzLDIxLjkyLTE4Ljc1LDQzLjkyLTM3LjM5LDE4LjEtMTUuNDIsMzYuMjUtMzAuNzljMTUuNzMtMTMuMywzMS4zMy0yNi43Niw0Ny4xMy00MGE2Ljk0LDYuOTQsMCwwLDAsMi41OC0zLjEzYzUuMzEtMi4wNiwxMS0xLjkzLDE2LjUxLTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjNzI5ZmQ0Ii8+PHBhdGggZD0iTTMxOC44LDEyMi4zNmMyLjMzLjYxLjQzLDEuNDYsMCwxLjg1LTQuMjUsMy44Mi04LjU0LDcuNjEtMTIuODksMTEuMzEtNy41Nyw2LjQzLTE1LjIsMTIuNzktMjIuNzksMTkuMnEtMTYuNjcsMTQtMzMuMjksMjguMTNjLTkuMDksNy43My0xOC4wOCwxNS41Ni0yNy4xNiwyMy4yOS05LjM2LDgtMTguNzksMTUuODUtMjguMTYsMjMuODItOS4wOCw3LjczLTE4LjA5LDE1LjU0LTI3LjE3LDIzLjI3UzE0OS4xLDI2OC42MSwxNDAsMjc2LjI5Yy0zLjMzLDIuOC02LjY0LDUuNjItMTAsOC4zNy0uNjYuNTQtMS4zNywxLjc2LTIuNDQuNDQsMS01LjE2LDMuNzItOS42MSw2LTE0LjI0LDEyLjMzLTEwLjU0LDI0LjcyLTIxLDM3LjA2LTMxLjU2cTE5LjA4LTE2LjI5LDM4LjIxLTMyLjUyLDE4LjI1LTE1LjUzLDM2LjUzLTMxUTI2NC42LDE1OS4zOSwyODMuODYsMTQzYzYuNjUtNS42NCwxMy4wOS0xMS41NCwxOS45NS0xNyw0Ljc1LTIuMjEsOS45LTIuODMsMTUtMy43MSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM3OGEyZDUiLz48cGF0aCBkPSJNMzAzLjgxLDEyNi4wN2MtNC43Niw2LjE5LTExLjIyLDEwLjU1LTE3LDE1LjYzLTcuNTcsNi42NC0xNS4zMiwxMy4wNS0yMywxOS41NS03LjQ5LDYuMzQtMTUsMTIuNjUtMjIuNDksMTlTMjI2LjM5LDE5MywyMTguOSwxOTkuNHMtMTUuMjEsMTIuOC0yMi43OSwxOS4yM2MtNy4zOSw2LjI4LTE0LjcxLDEyLjYzLTIyLjEsMTguOTFxLTE0LjA2LDEyLTI4LjE3LDIzLjg1Yy0zLjMyLDIuODEtNi42Niw1LjYtMTAsOC40YTMuNDMsMy40MywwLDAsMS0yLjMyLDEuMDcsOTkuOTMsOTkuOTMsMCwwLDEsOS0xOGMxNy4xMi0xMy45MSwzMy43Ny0yOC40LDUwLjU3LTQyLjcsMTkuNDUtMTYuNTcsMzktMzMsNTguMzQtNDkuNzMsMTAuOTQtOS40NSwyMi4zLTE4LjQxLDMyLjg1LTI4LjMyYTExMy40MywxMTMuNDMsMCwwLDEsMTkuNS02IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzdkYTVkNiIvPjxwYXRoIGQ9Ik0yODQuMzEsMTMyLjExYy43NSwxLjM0LS42LDEuNzQtMS4xOCwyLjI2cS0xMi40OCwxMC45NC0yNS4wNiwyMS43M2MtNy4zNSw2LjMxLTE0Ljc3LDEyLjU0LTIyLjE2LDE4LjhxLTEzLjc4LDExLjY3LTI3LjU4LDIzLjM0Yy03LjQ3LDYuMzUtMTQuOSwxMi43Ni0yMi4zOCwxOS4xMS05LjM3LDgtMTguNzgsMTUuODctMjguMTUsMjMuODJxLTUuODQsNS0xMS42MSwxMGE2LjQ1LDYuNDUsMCwwLDEtMy42NCwxLjc0LDE1OS4yNiwxNTkuMjYsMCwwLDEsMTYuNTItMjYuMjRjNS44LTQuMjcsMTEuMS05LjE2LDE2LjU5LTEzLjgxcTIxLjM5LTE4LjEyLDQyLjcyLTM2LjMyLDE2LjUtMTQuMDYsMzMtMjguMTRjMS43LTEuNDUsMy44My0yLjM4LDUuMTMtNC4yOSw4LjcyLTUuMjgsMTguMy04LjUzLDI3LjgyLTExLjk1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzgxYTdkOCIvPjxwYXRoIGQ9Ik00NDIuNTUsNDY2LjY0Yy03LjU1LDYuMTYtMTQuOTUsMTIuNTQtMjUsMTYuODFhODguODYsODguODYsMCwwLDAsNi42My0xOC4yNGM1LjkyLTI2LC40My00OS42Ni0xNC44Ny03MS4yNC0zLjc4LTUuMzItOC44Ni05LjQ0LTEzLjM2LTE0LjA5LS43My0uNzUtMS41Mi0xLjY5LTIuODMtMS4wNi0xLjM1LS42Ni0yLTItMy0zLC42NS0uODMsMS4zMi0uMzcsMiwwLDE4LjEzLDEwLjI4LDMzLjI0LDIzLjYyLDQyLjQ3LDQyLjY5YTg1LjIzLDg1LjIzLDAsMCwxLDguMTgsMzAsODYuODYsODYuODYsMCwwLDEtLjE3LDE4LjE3IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuNzggLTIzLjc3KSIgZmlsbD0iIzBlMWY2NiIvPjxwYXRoIGQ9Ik0xMTcuOCwzMTUuODZjMywxLjA4LDQtMS45MSw1LjU0LTMuMTQsMTUuMjEtMTIuNTksMzAuMjEtMjUuNDQsNDUuMjMtMzguMjYsMTQuMTctMTIuMSwyOC4yNS0yNC4zMSw0Mi40NS0zNi4zOCwxNS44MS0xMy40MywzMS43NC0yNi43LDQ3LjU1LTQwLjEzLDE0LjItMTIuMDcsMjguMjgtMjQuMjcsNDIuNDQtMzYuMzhRMzI0LDE0MiwzNDcsMTIyLjRjMS41Ny0xLjM0LDMuODMtMiw0LjExLTQuNTMuODYtLjgyLDIuMTMuMDgsMy0uNzNsMy43NiwwYy0xLjE1LDQtNSw1LjM5LTcuNyw3LjgxLTcuNzYsNy0xNS44NSwxMy41OS0yMy44MiwyMC4zMy05LjExLDcuNy0xOC4yNiwxNS4zNi0yNy4zNiwyMy4wOC03LjM5LDYuMjctMTQuNzIsMTIuNjItMjIuMTIsMTguOS0xMC45LDkuMjQtMjEuODUsMTguNDItMzIuNzQsMjcuNjctNy40LDYuMjgtMTQuNzIsMTIuNjQtMjIuMSwxOC45Mi05LjM4LDgtMTguOCwxNS44OC0yOC4xOCwyMy44NS03LjM5LDYuMjgtMTQuNzEsMTIuNjQtMjIuMSwxOC45Mi03LjU3LDYuNDQtMTUuMjEsMTIuODEtMjIuNzgsMTkuMjVzLTE1LjA4LDEzLTIyLjY1LDE5LjQzYy0yLjY0LDIuMjUtNS4zOCw0LjQtOC4wOCw2LjYtLjY0LjUyLTEuMjUuODUtMS44NywwYTExLjc1LDExLjc1LDAsMCwxLDEuNDktNiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2OTlhZDEiLz48cGF0aCBkPSJNMjU2LjQ5LDE0NC4wNmMtLjYzLDMuNTUtNC4wOSw0LjQ4LTYuMjksNi40Ni03LjY2LDYuODktMTUuNjMsMTMuNDMtMjMuNDksMjAuMDgtOS4yLDcuNzctMTguNDIsMTUuNS0yNy42LDIzLjI5LTcuMzksNi4yNi0xNC43MywxMi41OS0yMi4wOCwxOC44OXEtOC4wNiw2LjktMTYuMSwxMy44M2MtLjYzLjU0LTEuMjQuODctMS44NiwwYTE0MS43MiwxNDEuNzIsMCwwLDEsMTMuMTQtMTcuMTFjMTcuNjUtMjAuNSwzNy43LTM4LjMsNjAuNzMtNTIuNiw3LjYtNC43MSwxNS4xNC05LjYsMjMuNTUtMTIuODUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMy43OCAtMjMuNzcpIiBmaWxsPSIjODhhYmQ5Ii8+PHBhdGggZD0iTTM4Ni4zMiwxMTcuMTJjLTIuNDktLjMzLTUuMTMuNzctNy41LS43NCwyLjQ5LjMyLDUuMTItLjc4LDcuNS43NCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM1NTkxY2QiLz48cGF0aCBkPSJNMzU0LjA1LDExNy4xNGMtLjc5LDEuMDctMiwuNjItMywuNzNoLTEuNTFjMS4zMy0xLjMsMy0uNTIsNC41LS43MiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiM2ODlhZDEiLz48cGF0aCBkPSJNMjgyLjA2LDYzOS4xMmExODIuMywxODIuMywwLDAsMCw3MS44MS0xMS4zMSwyMTQsMjE0LDAsMCwwLDYxLjYxLTM0LjY3YzE4LjA5LTE0LjY4LDMzLjY2LTMxLjUzLDQ0LjA2LTUyLjYxYTEwMS4zNiwxMDEuMzYsMCwwLDAsMTAuMjItMzZjMS0xMS4zMS0uODgtMjItMy45NS0zMi42NC4zNC0yLjYxLDIuNzItMy44LDQuMTEtNS42Myw1LjM4LTcuMDcsOS4zNS0xNC42OSwxMS0yMy40NmEyNy40MywyNy40MywwLDAsMSwxLjIxLTMuNDMsMTExLDExMSwwLDAsMSw4LDIxLjE2YzIuNjMsMTAuMzEsNC4xMSwyMC44LDMuMzMsMzEuNGExMjMuMzEsMTIzLjMxLDAsMCwxLTE2LjA2LDUyLjMyYy05LjE2LDE2LjE1LTIxLDMwLTM0LjYsNDIuMzdhMTk5Ljg5LDE5OS44OSwwLDAsMS0zOS4zNywyNy41NCwyMTkuNSwyMTkuNSwwLDAsMS01NC4yNiwyMC43MSwyMDkuMjcsMjA5LjI3LDAsMCwxLTM2LjA1LDUuMmMtNS44NS4zMy0xMS43MS44My0xNy41Mi40Ni00LjUxLS4yOS05LjE0LDAtMTMuNTYtMS4zNyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjc4IC0yMy43NykiIGZpbGw9IiMwZTFmNjYiLz48L2c+PC9zdmc+",protocol:"uniswap_v2",slippage:!0,blockchains:["polygon"],polygon:{router:{address:"0xa5E0829CaCEd8fFDD4De3c43696c57F7D7A678ff",api:SL.ROUTER},factory:{address:"0x5757371414417b8C6CAad45bAeF941aBc7d3Ab32",api:SL.FACTORY},pair:{api:SL.PAIR}}};var US=t=>new IL(Object.assign(RS,{scope:t,findPath:t=>SL.findPath({...t,exchange:RS}),pathExists:t=>SL.pathExists({...t,exchange:RS}),getAmounts:t=>SL.getAmounts({...t,exchange:RS}),getPrep:t=>SL.getPrep({...t,exchange:RS}),getTransaction:t=>SL.getTransaction({...t,exchange:RS})}));const QS={name:"spookyswap",label:"SpookySwap",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNjQxIDY0MCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNjQxIDY0MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxwYXRoIGZpbGw9IiMxMjExMjIiIGQ9Ik0zNC4yLDMyMGMwLDE1OC41LDEyOC41LDI4Ni4zLDI4Ni4zLDI4Ni4zYzE1OC41LDAsMjg2LjMtMTI4LjUsMjg2LjMtMjg2LjNjMC0xNTguNS0xMjguNS0yODYuMy0yODYuMy0yODYuMwoJCUMxNjIuNywzMy43LDM0LjIsMTYyLjIsMzQuMiwzMjBMMzQuMiwzMjB6Ii8+Cgk8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZmlsbD0iI0YyRjRGOCIgZD0iTTEyMC45LDI0Ny42Yy0zLjMsMjIuMiwwLjcsNDUuNyw0LjYsNjcuOGMyLDMuMyw1LjIsNS45LDkuOCw3LjJjLTkuMSwxOS42LTE0LjMsNDAuNC0xNC4zLDYyLjYKCQljMCw5My4zLDkwLDE2OC45LDIwMS41LDE2OC45UzUyNCw0NzguNSw1MjQsMzg1LjJjMC0yMS41LTUuMi00My0xNC4zLTYyLjZjMy45LTEuMyw2LjUtMy45LDcuOC03LjJjNC42LTIyLjIsOC41LTQ1LjcsNS4yLTY3LjgKCQljLTMuMy0zMC0xMy43LTM5LjgtNDUtMzJjLTE1LjcsMy45LTM2LjUsMTMtNTIuOCwyNC4xYy0zMC0xNS02NS4yLTIzLjUtMTAyLjQtMjMuNWMtMzcuOCwwLTczLjcsOS4xLTEwMy43LDI0LjEKCQljLTE2LjMtMTEuMS0zNy4yLTIwLjktNTMuNS0yNC44QzEzNCwyMDcuOCwxMjQuMiwyMTcuNiwxMjAuOSwyNDcuNkwxMjAuOSwyNDcuNnogTTIzOC4zLDM4MC43Yy0yMy41LTEwLjQtNjMuOS03LjgtNjMuOS03LjgKCQlzMiwzNy44LDI0LjgsNTAuOWMyNy40LDE1LDc4LjksNy44LDc4LjksNy44UzI3My41LDM5Ni4zLDIzOC4zLDM4MC43TDIzOC4zLDM4MC43eiBNMzY5LjQsNDMyLjJjMCwwLDUwLjksNy44LDc4LjktNy44CgkJYzIzLjUtMTMsMjQuOC01MC45LDI0LjgtNTAuOXMtNDAuNC0yLjYtNjMuOSw3LjhDMzc0LDM5Ni4zLDM2OS40LDQzMS41LDM2OS40LDQzMi4yTDM2OS40LDQzMi4yeiBNMzEyLjcsNDU4LjkKCQljMCwyLjYsNS4yLDUuMiwxMS43LDUuMnMxMS43LTIsMTEuNy01LjJjMC0yLjYtNS4yLTUuMi0xMS43LTUuMkMzMTcuOSw0NTMuNywzMTIuNyw0NTUuNywzMTIuNyw0NTguOUwzMTIuNyw0NTguOXoiLz4KCTxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBmaWxsPSIjRjJGNEY4IiBkPSJNNTUyLjcsNDM1LjRjLTE4LjktNy4yLTM5LjEtMTEuMS01OS4zLTExLjFjLTUuMiwwLTUuMi03LjgsMC03LjhjMjAuOSwwLDQxLjcsMy45LDYxLjMsMTEuNwoJCWMyLDAuNywzLjMsMi42LDIuNiw0LjZDNTU2LjYsNDM0LjgsNTU0LjYsNDM2LjEsNTUyLjcsNDM1LjRMNTUyLjcsNDM1LjR6IE05Mi4yLDQyNy42YzE5LjYtNy44LDQwLjQtMTEuMSw2MS4zLTExLjcKCQljNS4yLDAsNS4yLDcuOCwwLDcuOGMtMjAuMiwwLTQwLjQsMy45LTU5LjMsMTEuMWMtMiwwLjctNC42LTAuNy01LjItMi42Qzg5LDQzMC45LDkwLjMsNDI4LjMsOTIuMiw0MjcuNkw5Mi4yLDQyNy42eiBNMTMyLjcsNDUwLjQKCQljOS44LTMuMywyMC4yLTQuNiwzMC01LjJjNS4yLDAsNS4yLDcuOCwwLDcuOGMtOS4xLDAtMTguOSwyLTI3LjQsNC42Yy04LjUsMi42LTE3LjYsNS45LTI0LjEsMTEuN2MtMy45LDMuMy05LjEtMi01LjktNS45CgkJQzExMy4xLDQ1NywxMjMuNSw0NTMuNywxMzIuNyw0NTAuNEwxMzIuNyw0NTAuNHogTTE3MS44LDQ2NS40Yy03LjgsMy4zLTE1LjcsNy44LTIyLjgsMTIuNGMtNy4yLDQuNi0xMy43LDEwLjQtMTguOSwxNwoJCWMtMS4zLDItMC43LDQuNiwxLjMsNS4yYzIsMS4zLDQuNiwwLjcsNS4yLTEuM2M0LjYtNS45LDExLjEtMTEuMSwxNy0xNWM3LjItNC42LDE0LjMtOC41LDIxLjUtMTEuN2MyLTEuMywyLjYtMy4zLDEuMy01LjIKCQlDMTc2LjQsNDY0LjgsMTczLjgsNDY0LjEsMTcxLjgsNDY1LjRMMTcxLjgsNDY1LjR6IE00ODMuNSw0NTMuN2M5LjEsMCwxOC45LDIsMjcuNCw0LjZjNC42LDEuMyw5LjEsMy4zLDEzLjcsNS4yCgkJYzMuOSwxLjMsNy4yLDMuOSwxMC40LDYuNWMzLjksMy4zLDkuMS0yLDUuOS01LjljLTcuMi02LjUtMTcuNi0xMC40LTI2LjctMTNjLTkuOC0zLjMtMjAuMi00LjYtMzAtNS4yCgkJQzQ3OSw0NDUuMiw0NzksNDUzLjcsNDgzLjUsNDUzLjdMNDgzLjUsNDUzLjd6IE00OTIuNyw0ODMuN2MtNy4yLTQuNi0xNC4zLTcuOC0yMS41LTExLjFsMCwwYy0yLTEuMy0yLjYtMy4zLTEuMy01LjIKCQljMS4zLTIsMy4zLTIuNiw1LjItMS4zYzE1LjcsNi41LDMyLDE1LjcsNDEuNywyOS4zYzEuMywyLDAuNyw0LjYtMS4zLDUuMmMtMiwxLjMtNC42LDAuNy01LjItMS4zCgkJQzUwNS43LDQ5Mi44LDQ5OS4yLDQ4Ny42LDQ5Mi43LDQ4My43TDQ5Mi43LDQ4My43eiIvPgoJPHBhdGggZmlsbD0iIzY2NjVERCIgZD0iTTYyLjIsMzM1LjdjMy45LTUuOSwzNS45LTIyLjgsNzUuNy0zMy4zYzguNS0yNC44LDE5LjYtNDguMywzMi03MS4xbDMyLTU4Yy05LjEtMy45LTE4LjMtOS4xLTI2LjctMTUKCQljLTEuMy0xLjMtMi42LTIuNi0zLjktMy45Yy0wLjctMS4zLTEuMy0zLjMtMS4zLTQuNnMyLTMuOSwyLjYtNC42YzItMi42LDQuNi00LjYsNy4yLTcuMmM1LjktNS4yLDEyLjQtOS44LDE5LjYtMTMuNwoJCWMzLjMtMiw2LjUtMy45LDkuOC02LjVjMjIuOC0xNC4zLDM1LjktMjUuNCw1Ni43LTM3LjhjMjAuMi0xMS43LDMwLTE4LjMsNTIuOC0xNy42YzI5LjMsMCwxMDEuNyw5Mi42LDEzNC4zLDE0MC4yCgkJYzE5LjYsMjguNyw0Ni4zLDgwLjIsNTYuMSw5OS44YzIsMC43LDQuNiwxLjMsNi41LDJjMzAsOS4xLDU4LjcsMjIuMiw2NS45LDMwLjdjNi41LDcuMi0yMS41LDEwLjQtNDguOSwxNS43CgkJYy0yNy40LDQuNi0xMjAuNyw3LjItMjEwLDcuOGMtODkuMywwLjctMTkzLjctMi42LTIxNi41LTUuOUM4My4xLDM0OS4zLDU3LjcsMzQyLjgsNjIuMiwzMzUuN0w2Mi4yLDMzNS43eiIvPgoJPHBhdGggZmlsbD0iI0ZGOTlBNSIgZD0iTTQ4My41LDI1Ni4xYzAsMC01OC43LTE1LTE2Mi40LTE1Yy0xMTEuNSwwLTE2NSwxNy0xNjUsMTdzLTYuNSwxMi40LTkuMSwxOC45Yy0yLjYsNy4yLTkuMSwyNS40LTkuMSwyNS40CgkJUzIxOC44LDI4OCwzMjIuNSwyODhjNjIuNiwwLDEyNC42LDUuMiwxODYuNSwxNS43YzAsMC05LjEtMjIuMi0xNS0zMS4zQzQ5MC43LDI2Ny4yLDQ4Ny41LDI2MS4zLDQ4My41LDI1Ni4xTDQ4My41LDI1Ni4xeiIvPgoJPHBhdGggZmlsbD0iI0ZGRTYwMCIgZD0iTTEzMy4zLDEzMS41YzYuNS0wLjcsMTUuNywxOS42LDE1LjcsMTkuNnMyMC45LTUuOSwyNC44LDBjMy4zLDUuOS0xNSwxOS42LTE1LDE5LjZzMTEuMSwxOS42LDcuMiwyMy41CgkJYy0zLjMsMy45LTIyLjgtOC41LTIyLjgtOC41cy0xNSwxNy0xOS42LDE0LjNjLTUuMi0yLjYsMC43LTI0LjgsMC43LTI0LjhzLTIxLjUtOS4xLTE5LjYtMTQuM2MxLjMtNS4yLDIzLjUtNy4yLDIzLjUtNy4yCgkJUzEyNi44LDEzMi44LDEzMy4zLDEzMS41TDEzMy4zLDEzMS41eiIvPgo8L2c+Cjwvc3ZnPgo=",protocol:"uniswap_v2",slippage:!0,blockchains:["fantom"],fantom:{router:{address:"0xF491e7B69E4244ad4002BC14e878a34207E38c29",api:SL.ROUTER},factory:{address:"0x152eE697f2E276fA89E96742e9bB9aB1F2E61bE3",api:SL.FACTORY},pair:{api:SL.PAIR}}};var YS=t=>new IL(Object.assign(QS,{scope:t,findPath:t=>SL.findPath({...t,exchange:QS}),pathExists:t=>SL.pathExists({...t,exchange:QS}),getAmounts:t=>SL.getAmounts({...t,exchange:QS}),getPrep:t=>SL.getPrep({...t,exchange:QS}),getTransaction:t=>SL.getTransaction({...t,exchange:QS})}));function WS(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}const FS=({blockchain:t,path:e})=>{if(!e)return;let n=e.map(((n,r)=>n===Hf[t].currency.address&&e[r+1]!=Hf[t].wrapped.address&&e[r-1]!=Hf[t].wrapped.address?Hf[t].wrapped.address:n));return n[0]==Hf[t].currency.address&&n[1]==Hf[t].wrapped.address?n.splice(0,1):n[n.length-1]==Hf[t].currency.address&&n[n.length-2]==Hf[t].wrapped.address&&n.splice(n.length-1,1),n},VS=async({exchange:t,blockchain:e,path:n,amountIn:r,amountOut:i,block:o})=>{let a;if(n=FS({blockchain:e,path:n}),a=r?await PI({blockchain:Hf[e].name,address:t[e].quoter.address,method:"findBestPathFromAmountIn",api:t[e].quoter.api,cache:5,block:o,params:{route:n,amountIn:r}}).catch((()=>{})):await PI({blockchain:Hf[e].name,address:t[e].quoter.address,method:"findBestPathFromAmountOut",api:t[e].quoter.api,cache:5,block:o,params:{route:n,amountOut:i}}).catch((()=>{})),a&&!a.virtualAmountsWithoutSlippage.some((t=>"0"===t.toString())))return a};let HS=async({exchange:t,blockchain:e,path:n,pools:r,amountIn:i})=>{let o=await PI({blockchain:Hf[e].name,address:t[e].quoter.address,method:"findBestPathFromAmountIn",api:t[e].quoter.api,cache:5,params:{route:FS({blockchain:e,path:n}),amountIn:i}}).catch((()=>{}));if(o)return o.virtualAmountsWithoutSlippage[o.virtualAmountsWithoutSlippage.length-1]},GS=async({exchange:t,blockchain:e,path:n,pools:r,amountOut:i,block:o})=>{let a=await PI({blockchain:Hf[e].name,address:t[e].quoter.address,method:"findBestPathFromAmountOut",api:t[e].quoter.api,cache:5,block:o,params:{route:FS({blockchain:e,path:n}),amountOut:i}}).catch((()=>{}));if(a)return a.virtualAmountsWithoutSlippage[0]};var qS={findPath:async({exchange:t,blockchain:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s})=>{if([n,r].includes(Hf[e].currency.address)&&[n,r].includes(Hf[e].wrapped.address))return{path:void 0,exchangePath:void 0};let u,c=[];if(c=[await VS({exchange:t,blockchain:e,path:[n,r],amountIn:i||a,amountOut:o||s})],c.filter(Boolean).length&&(u=[n,r]),u||n==Hf[e].wrapped.address||r==Hf[e].wrapped.address||(c=[],o||s?(c.push(await VS({exchange:t,blockchain:e,path:[Hf[e].wrapped.address,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await VS({exchange:t,blockchain:e,path:[n,Hf[e].wrapped.address],amountOut:c[0].virtualAmountsWithoutSlippage[0]}))):(c.push(await VS({exchange:t,blockchain:e,path:[n,Hf[e].wrapped.address],amountIn:i||a})),c.filter(Boolean).length&&c.push(await VS({exchange:t,blockchain:e,path:[Hf[e].wrapped.address,r],amountIn:c[0].virtualAmountsWithoutSlippage[1]}))),2===c.filter(Boolean).length&&(u=[n,Hf[e].wrapped.address,r])),!u){c=[];let l=(await Promise.all(Hf[e].stables.usd.map((async u=>{let c=[];if(o||s?(c.push(await VS({exchange:t,blockchain:e,path:[u,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await VS({exchange:t,blockchain:e,path:[n,u],amountOut:c[0].virtualAmountsWithoutSlippage[0]}))):(c.push(await VS({exchange:t,blockchain:e,path:[n,u],amountIn:i||a})),c.filter(Boolean).length&&c.push(await VS({exchange:t,blockchain:e,path:[u,r],amountIn:c[0].virtualAmountsWithoutSlippage[1]}))),2===c.filter(Boolean).length)return[u,c]})))).filter(Boolean)[0];l&&(u=[n,l[0],r],c=l[1])}return WS([u,"optionalAccess",t=>t.length])&&u[0]==Hf[e].currency.address?u.splice(1,0,Hf[e].wrapped.address):WS([u,"optionalAccess",t=>t.length])&&u[u.length-1]==Hf[e].currency.address&&u.splice(u.length-1,0,Hf[e].wrapped.address),u||(c=[]),{path:u,pools:c,exchangePath:FS({blockchain:e,path:u})}},pathExists:async({exchange:t,blockchain:e,path:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a})=>!!await VS({exchange:t,blockchain:e,path:n,amountIn:r||o,amountOut:i||a}),getAmounts:async({exchange:t,blockchain:e,path:n,pools:r,block:i,tokenIn:o,tokenOut:a,amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l})=>{if(s){if(null==(u=await GS({exchange:t,blockchain:e,block:i,path:n,pools:r,amountOut:s,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(u){if(null==(s=await HS({exchange:t,blockchain:e,path:n,pools:r,amountIn:u,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}else if(l){if(null==(u=await GS({exchange:t,blockchain:e,block:i,path:n,pools:r,amountOut:l,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(c){if(null==(s=await HS({exchange:t,blockchain:e,path:n,pools:r,amountIn:c,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}return{amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l}},getTransaction:async({exchange:t,blockchain:e,pools:n,path:r,amountIn:i,amountInMax:o,amountOut:a,amountOutMin:s,amountInInput:u,amountOutInput:c,amountInMaxInput:l,amountOutMinInput:h,account:d})=>{const f={blockchain:e,from:d,to:t[e].router.address,api:t[e].router.api},p=Math.round(Date.now()/1e3)+86400,y=[n.map((t=>t.binSteps[0])),n.map((t=>t.versions[0])),FS({blockchain:e,path:r})];return r[0]===Hf[e].currency.address?l?(f.method="swapNATIVEForExactTokens",f.params={amountOut:a,path:y,to:d,deadline:p},f.value=o):(f.method="swapExactNATIVEForTokens",f.params={amountOutMin:s||a,path:y,to:d,deadline:p},f.value=i):r[r.length-1]===Hf[e].currency.address?l?(f.method="swapTokensForExactNATIVE",f.params={amountNATIVEOut:a,amountInMax:o,path:y,to:d,deadline:p}):(f.method="swapExactTokensForNATIVE",f.params={amountIn:i,amountOutMinNATIVE:s||a,path:y,to:d,deadline:p}):l?(f.method="swapTokensForExactTokens",f.params={amountOut:a,amountInMax:o,path:y,to:d,deadline:p}):(f.method="swapExactTokensForTokens",f.params={amountIn:i,amountOutMin:s||a,path:y,to:d,deadline:p}),f},getPrep:async({exchange:t,blockchain:e,tokenIn:n,amountIn:r,account:i})=>{if(n===Hf[e].currency.address)return;const o=await PI({blockchain:e,address:n,method:"allowance",api:Tk[e][20],params:[i,t[e].router.address]});if(o.gte(r))return;return{transaction:{blockchain:e,from:i,to:n,api:Tk[e][20],method:"approve",params:[t[e].router.address,r.sub(o)]}}},ROUTER:[{inputs:[{internalType:"contract ILBFactory",name:"factory",type:"address"},{internalType:"contract IJoeFactory",name:"factoryV1",type:"address"},{internalType:"contract ILBLegacyFactory",name:"legacyFactory",type:"address"},{internalType:"contract ILBLegacyRouter",name:"legacyRouter",type:"address"},{internalType:"contract IWNATIVE",name:"wnative",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AddressHelper__CallFailed",type:"error"},{inputs:[],name:"AddressHelper__NonContract",type:"error"},{inputs:[],name:"JoeLibrary__InsufficientAmount",type:"error"},{inputs:[],name:"JoeLibrary__InsufficientLiquidity",type:"error"},{inputs:[{internalType:"uint256",name:"amountSlippage",type:"uint256"}],name:"LBRouter__AmountSlippageBPTooBig",type:"error"},{inputs:[{internalType:"uint256",name:"amountXMin",type:"uint256"},{internalType:"uint256",name:"amountX",type:"uint256"},{internalType:"uint256",name:"amountYMin",type:"uint256"},{internalType:"uint256",name:"amountY",type:"uint256"}],name:"LBRouter__AmountSlippageCaught",type:"error"},{inputs:[{internalType:"uint256",name:"id",type:"uint256"}],name:"LBRouter__BinReserveOverflows",type:"error"},{inputs:[],name:"LBRouter__BrokenSwapSafetyCheck",type:"error"},{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint256",name:"currentTimestamp",type:"uint256"}],name:"LBRouter__DeadlineExceeded",type:"error"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"LBRouter__FailedToSendNATIVE",type:"error"},{inputs:[{internalType:"uint256",name:"idDesired",type:"uint256"},{internalType:"uint256",name:"idSlippage",type:"uint256"}],name:"LBRouter__IdDesiredOverflows",type:"error"},{inputs:[{internalType:"int256",name:"id",type:"int256"}],name:"LBRouter__IdOverflows",type:"error"},{inputs:[{internalType:"uint256",name:"activeIdDesired",type:"uint256"},{internalType:"uint256",name:"idSlippage",type:"uint256"},{internalType:"uint256",name:"activeId",type:"uint256"}],name:"LBRouter__IdSlippageCaught",type:"error"},{inputs:[{internalType:"uint256",name:"amountOutMin",type:"uint256"},{internalType:"uint256",name:"amountOut",type:"uint256"}],name:"LBRouter__InsufficientAmountOut",type:"error"},{inputs:[{internalType:"address",name:"wrongToken",type:"address"}],name:"LBRouter__InvalidTokenPath",type:"error"},{inputs:[{internalType:"uint256",name:"version",type:"uint256"}],name:"LBRouter__InvalidVersion",type:"error"},{inputs:[],name:"LBRouter__LengthsMismatch",type:"error"},{inputs:[{internalType:"uint256",name:"amountInMax",type:"uint256"},{internalType:"uint256",name:"amountIn",type:"uint256"}],name:"LBRouter__MaxAmountInExceeded",type:"error"},{inputs:[],name:"LBRouter__NotFactoryOwner",type:"error"},{inputs:[{internalType:"address",name:"tokenX",type:"address"},{internalType:"address",name:"tokenY",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBRouter__PairNotCreated",type:"error"},{inputs:[],name:"LBRouter__SenderIsNotWNATIVE",type:"error"},{inputs:[{internalType:"uint256",name:"id",type:"uint256"}],name:"LBRouter__SwapOverflows",type:"error"},{inputs:[{internalType:"uint256",name:"excess",type:"uint256"}],name:"LBRouter__TooMuchTokensIn",type:"error"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"reserve",type:"uint256"}],name:"LBRouter__WrongAmounts",type:"error"},{inputs:[{internalType:"address",name:"tokenX",type:"address"},{internalType:"address",name:"tokenY",type:"address"},{internalType:"uint256",name:"amountX",type:"uint256"},{internalType:"uint256",name:"amountY",type:"uint256"},{internalType:"uint256",name:"msgValue",type:"uint256"}],name:"LBRouter__WrongNativeLiquidityParameters",type:"error"},{inputs:[],name:"LBRouter__WrongTokenOrder",type:"error"},{inputs:[],name:"TokenHelper__TransferFailed",type:"error"},{inputs:[{components:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"},{internalType:"uint256",name:"amountX",type:"uint256"},{internalType:"uint256",name:"amountY",type:"uint256"},{internalType:"uint256",name:"amountXMin",type:"uint256"},{internalType:"uint256",name:"amountYMin",type:"uint256"},{internalType:"uint256",name:"activeIdDesired",type:"uint256"},{internalType:"uint256",name:"idSlippage",type:"uint256"},{internalType:"int256[]",name:"deltaIds",type:"int256[]"},{internalType:"uint256[]",name:"distributionX",type:"uint256[]"},{internalType:"uint256[]",name:"distributionY",type:"uint256[]"},{internalType:"address",name:"to",type:"address"},{internalType:"address",name:"refundTo",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ILBRouter.LiquidityParameters",name:"liquidityParameters",type:"tuple"}],name:"addLiquidity",outputs:[{internalType:"uint256",name:"amountXAdded",type:"uint256"},{internalType:"uint256",name:"amountYAdded",type:"uint256"},{internalType:"uint256",name:"amountXLeft",type:"uint256"},{internalType:"uint256",name:"amountYLeft",type:"uint256"},{internalType:"uint256[]",name:"depositIds",type:"uint256[]"},{internalType:"uint256[]",name:"liquidityMinted",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"},{internalType:"uint256",name:"amountX",type:"uint256"},{internalType:"uint256",name:"amountY",type:"uint256"},{internalType:"uint256",name:"amountXMin",type:"uint256"},{internalType:"uint256",name:"amountYMin",type:"uint256"},{internalType:"uint256",name:"activeIdDesired",type:"uint256"},{internalType:"uint256",name:"idSlippage",type:"uint256"},{internalType:"int256[]",name:"deltaIds",type:"int256[]"},{internalType:"uint256[]",name:"distributionX",type:"uint256[]"},{internalType:"uint256[]",name:"distributionY",type:"uint256[]"},{internalType:"address",name:"to",type:"address"},{internalType:"address",name:"refundTo",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ILBRouter.LiquidityParameters",name:"liquidityParameters",type:"tuple"}],name:"addLiquidityNATIVE",outputs:[{internalType:"uint256",name:"amountXAdded",type:"uint256"},{internalType:"uint256",name:"amountYAdded",type:"uint256"},{internalType:"uint256",name:"amountXLeft",type:"uint256"},{internalType:"uint256",name:"amountYLeft",type:"uint256"},{internalType:"uint256[]",name:"depositIds",type:"uint256[]"},{internalType:"uint256[]",name:"liquidityMinted",type:"uint256[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint24",name:"activeId",type:"uint24"},{internalType:"uint16",name:"binStep",type:"uint16"}],name:"createLBPair",outputs:[{internalType:"contract ILBPair",name:"pair",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getFactory",outputs:[{internalType:"contract ILBFactory",name:"lbFactory",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ILBPair",name:"pair",type:"address"},{internalType:"uint256",name:"price",type:"uint256"}],name:"getIdFromPrice",outputs:[{internalType:"uint24",name:"",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLegacyFactory",outputs:[{internalType:"contract ILBLegacyFactory",name:"legacyLBfactory",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLegacyRouter",outputs:[{internalType:"contract ILBLegacyRouter",name:"legacyRouter",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ILBPair",name:"pair",type:"address"},{internalType:"uint24",name:"id",type:"uint24"}],name:"getPriceFromId",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ILBPair",name:"pair",type:"address"},{internalType:"uint128",name:"amountOut",type:"uint128"},{internalType:"bool",name:"swapForY",type:"bool"}],name:"getSwapIn",outputs:[{internalType:"uint128",name:"amountIn",type:"uint128"},{internalType:"uint128",name:"amountOutLeft",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract ILBPair",name:"pair",type:"address"},{internalType:"uint128",name:"amountIn",type:"uint128"},{internalType:"bool",name:"swapForY",type:"bool"}],name:"getSwapOut",outputs:[{internalType:"uint128",name:"amountInLeft",type:"uint128"},{internalType:"uint128",name:"amountOut",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"getV1Factory",outputs:[{internalType:"contract IJoeFactory",name:"factoryV1",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getWNATIVE",outputs:[{internalType:"contract IWNATIVE",name:"wnative",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"uint256",name:"amountXMin",type:"uint256"},{internalType:"uint256",name:"amountYMin",type:"uint256"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"removeLiquidity",outputs:[{internalType:"uint256",name:"amountX",type:"uint256"},{internalType:"uint256",name:"amountY",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"uint256",name:"amountTokenMin",type:"uint256"},{internalType:"uint256",name:"amountNATIVEMin",type:"uint256"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"},{internalType:"address payable",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"removeLiquidityNATIVE",outputs:[{internalType:"uint256",name:"amountToken",type:"uint256"},{internalType:"uint256",name:"amountNATIVE",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOutMin",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactNATIVEForTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOutMin",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactNATIVEForTokensSupportingFeeOnTransferTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinNATIVE",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address payable",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForNATIVE",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMinNATIVE",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address payable",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForNATIVESupportingFeeOnTransferTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint256",name:"amountOutMin",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapExactTokensForTokensSupportingFeeOnTransferTokens",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapNATIVEForExactTokens",outputs:[{internalType:"uint256[]",name:"amountsIn",type:"uint256[]"}],stateMutability:"payable",type:"function"},{inputs:[{internalType:"uint256",name:"amountNATIVEOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address payable",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapTokensForExactNATIVE",outputs:[{internalType:"uint256[]",name:"amountsIn",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint256",name:"amountInMax",type:"uint256"},{components:[{internalType:"uint256[]",name:"pairBinSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"contract IERC20[]",name:"tokenPath",type:"address[]"}],internalType:"struct ILBRouter.Path",name:"path",type:"tuple"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"swapTokensForExactTokens",outputs:[{internalType:"uint256[]",name:"amountsIn",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"sweep",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ILBToken",name:"lbToken",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],name:"sweepLBToken",outputs:[],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}],FACTORY:[{inputs:[{internalType:"address",name:"feeRecipient",type:"address"},{internalType:"uint256",name:"flashLoanFee",type:"uint256"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"LBFactory__AddressZero",type:"error"},{inputs:[{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBFactory__BinStepHasNoPreset",type:"error"},{inputs:[{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBFactory__BinStepTooLow",type:"error"},{inputs:[{internalType:"uint256",name:"fees",type:"uint256"},{internalType:"uint256",name:"maxFees",type:"uint256"}],name:"LBFactory__FlashLoanFeeAboveMax",type:"error"},{inputs:[{internalType:"contract IERC20",name:"token",type:"address"}],name:"LBFactory__IdenticalAddresses",type:"error"},{inputs:[],name:"LBFactory__ImplementationNotSet",type:"error"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint256",name:"_binStep",type:"uint256"}],name:"LBFactory__LBPairAlreadyExists",type:"error"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBFactory__LBPairDoesNotExist",type:"error"},{inputs:[],name:"LBFactory__LBPairIgnoredIsAlreadyInTheSameState",type:"error"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBFactory__LBPairNotCreated",type:"error"},{inputs:[{internalType:"address",name:"LBPairImplementation",type:"address"}],name:"LBFactory__LBPairSafetyCheckFailed",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"}],name:"LBFactory__PresetIsLockedForUsers",type:"error"},{inputs:[],name:"LBFactory__PresetOpenStateIsAlreadyInTheSameState",type:"error"},{inputs:[{internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"LBFactory__QuoteAssetAlreadyWhitelisted",type:"error"},{inputs:[{internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"LBFactory__QuoteAssetNotWhitelisted",type:"error"},{inputs:[{internalType:"address",name:"feeRecipient",type:"address"}],name:"LBFactory__SameFeeRecipient",type:"error"},{inputs:[{internalType:"uint256",name:"flashLoanFee",type:"uint256"}],name:"LBFactory__SameFlashLoanFee",type:"error"},{inputs:[{internalType:"address",name:"LBPairImplementation",type:"address"}],name:"LBFactory__SameImplementation",type:"error"},{inputs:[],name:"PairParametersHelper__InvalidParameter",type:"error"},{inputs:[],name:"PendingOwnable__AddressZero",type:"error"},{inputs:[],name:"PendingOwnable__NoPendingOwner",type:"error"},{inputs:[],name:"PendingOwnable__NotOwner",type:"error"},{inputs:[],name:"PendingOwnable__NotPendingOwner",type:"error"},{inputs:[],name:"PendingOwnable__PendingOwnerAlreadySet",type:"error"},{inputs:[],name:"SafeCast__Exceeds16Bits",type:"error"},{inputs:[{internalType:"uint256",name:"x",type:"uint256"},{internalType:"int256",name:"y",type:"int256"}],name:"Uint128x128Math__PowUnderflow",type:"error"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"oldRecipient",type:"address"},{indexed:!1,internalType:"address",name:"newRecipient",type:"address"}],name:"FeeRecipientSet",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"oldFlashLoanFee",type:"uint256"},{indexed:!1,internalType:"uint256",name:"newFlashLoanFee",type:"uint256"}],name:"FlashLoanFeeSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"contract IERC20",name:"tokenX",type:"address"},{indexed:!0,internalType:"contract IERC20",name:"tokenY",type:"address"},{indexed:!0,internalType:"uint256",name:"binStep",type:"uint256"},{indexed:!1,internalType:"contract ILBPair",name:"LBPair",type:"address"},{indexed:!1,internalType:"uint256",name:"pid",type:"uint256"}],name:"LBPairCreated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"contract ILBPair",name:"LBPair",type:"address"},{indexed:!1,internalType:"bool",name:"ignored",type:"bool"}],name:"LBPairIgnoredStateChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"oldLBPairImplementation",type:"address"},{indexed:!1,internalType:"address",name:"LBPairImplementation",type:"address"}],name:"LBPairImplementationSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"pendingOwner",type:"address"}],name:"PendingOwnerSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"binStep",type:"uint256"},{indexed:!0,internalType:"bool",name:"isOpen",type:"bool"}],name:"PresetOpenStateChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"binStep",type:"uint256"}],name:"PresetRemoved",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint256",name:"binStep",type:"uint256"},{indexed:!1,internalType:"uint256",name:"baseFactor",type:"uint256"},{indexed:!1,internalType:"uint256",name:"filterPeriod",type:"uint256"},{indexed:!1,internalType:"uint256",name:"decayPeriod",type:"uint256"},{indexed:!1,internalType:"uint256",name:"reductionFactor",type:"uint256"},{indexed:!1,internalType:"uint256",name:"variableFeeControl",type:"uint256"},{indexed:!1,internalType:"uint256",name:"protocolShare",type:"uint256"},{indexed:!1,internalType:"uint256",name:"maxVolatilityAccumulator",type:"uint256"}],name:"PresetSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"QuoteAssetAdded",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"QuoteAssetRemoved",type:"event"},{inputs:[{internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"addQuoteAsset",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"becomeOwner",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint24",name:"activeId",type:"uint24"},{internalType:"uint16",name:"binStep",type:"uint16"}],name:"createLBPair",outputs:[{internalType:"contract ILBPair",name:"pair",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ILBPair",name:"pair",type:"address"}],name:"forceDecay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAllBinSteps",outputs:[{internalType:"uint256[]",name:"binStepWithPreset",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"}],name:"getAllLBPairs",outputs:[{components:[{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"contract ILBPair",name:"LBPair",type:"address"},{internalType:"bool",name:"createdByOwner",type:"bool"},{internalType:"bool",name:"ignoredForRouting",type:"bool"}],internalType:"struct ILBFactory.LBPairInformation[]",name:"lbPairsAvailable",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFeeRecipient",outputs:[{internalType:"address",name:"feeRecipient",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFlashLoanFee",outputs:[{internalType:"uint256",name:"flashLoanFee",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"index",type:"uint256"}],name:"getLBPairAtIndex",outputs:[{internalType:"contract ILBPair",name:"lbPair",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLBPairImplementation",outputs:[{internalType:"address",name:"lbPairImplementation",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenA",type:"address"},{internalType:"contract IERC20",name:"tokenB",type:"address"},{internalType:"uint256",name:"binStep",type:"uint256"}],name:"getLBPairInformation",outputs:[{components:[{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"contract ILBPair",name:"LBPair",type:"address"},{internalType:"bool",name:"createdByOwner",type:"bool"},{internalType:"bool",name:"ignoredForRouting",type:"bool"}],internalType:"struct ILBFactory.LBPairInformation",name:"lbPairInformation",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[],name:"getMaxFlashLoanFee",outputs:[{internalType:"uint256",name:"maxFee",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getMinBinStep",outputs:[{internalType:"uint256",name:"minBinStep",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getNumberOfLBPairs",outputs:[{internalType:"uint256",name:"lbPairNumber",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getNumberOfQuoteAssets",outputs:[{internalType:"uint256",name:"numberOfQuoteAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getOpenBinSteps",outputs:[{internalType:"uint256[]",name:"openBinStep",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"binStep",type:"uint256"}],name:"getPreset",outputs:[{internalType:"uint256",name:"baseFactor",type:"uint256"},{internalType:"uint256",name:"filterPeriod",type:"uint256"},{internalType:"uint256",name:"decayPeriod",type:"uint256"},{internalType:"uint256",name:"reductionFactor",type:"uint256"},{internalType:"uint256",name:"variableFeeControl",type:"uint256"},{internalType:"uint256",name:"protocolShare",type:"uint256"},{internalType:"uint256",name:"maxVolatilityAccumulator",type:"uint256"},{internalType:"bool",name:"isOpen",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"index",type:"uint256"}],name:"getQuoteAssetAtIndex",outputs:[{internalType:"contract IERC20",name:"asset",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"contract IERC20",name:"token",type:"address"}],name:"isQuoteAsset",outputs:[{internalType:"bool",name:"isQuote",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pendingOwner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"binStep",type:"uint16"}],name:"removePreset",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"quoteAsset",type:"address"}],name:"removeQuoteAsset",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"revokePendingOwner",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"feeRecipient",type:"address"}],name:"setFeeRecipient",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"uint16",name:"baseFactor",type:"uint16"},{internalType:"uint16",name:"filterPeriod",type:"uint16"},{internalType:"uint16",name:"decayPeriod",type:"uint16"},{internalType:"uint16",name:"reductionFactor",type:"uint16"},{internalType:"uint24",name:"variableFeeControl",type:"uint24"},{internalType:"uint16",name:"protocolShare",type:"uint16"},{internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"}],name:"setFeesParametersOnPair",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"flashLoanFee",type:"uint256"}],name:"setFlashLoanFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"},{internalType:"contract IERC20",name:"tokenY",type:"address"},{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"bool",name:"ignored",type:"bool"}],name:"setLBPairIgnored",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newLBPairImplementation",type:"address"}],name:"setLBPairImplementation",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"pendingOwner_",type:"address"}],name:"setPendingOwner",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"uint16",name:"baseFactor",type:"uint16"},{internalType:"uint16",name:"filterPeriod",type:"uint16"},{internalType:"uint16",name:"decayPeriod",type:"uint16"},{internalType:"uint16",name:"reductionFactor",type:"uint16"},{internalType:"uint24",name:"variableFeeControl",type:"uint24"},{internalType:"uint16",name:"protocolShare",type:"uint16"},{internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"},{internalType:"bool",name:"isOpen",type:"bool"}],name:"setPreset",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"binStep",type:"uint16"},{internalType:"bool",name:"isOpen",type:"bool"}],name:"setPresetOpenState",outputs:[],stateMutability:"nonpayable",type:"function"}],PAIR:[{inputs:[{internalType:"contract ILBFactory",name:"factory_",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"AddressHelper__CallFailed",type:"error"},{inputs:[],name:"AddressHelper__NonContract",type:"error"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"BinHelper__CompositionFactorFlawed",type:"error"},{inputs:[],name:"BinHelper__LiquidityOverflow",type:"error"},{inputs:[],name:"FeeHelper__FeeTooLarge",type:"error"},{inputs:[],name:"LBPair__AddressZero",type:"error"},{inputs:[],name:"LBPair__AlreadyInitialized",type:"error"},{inputs:[],name:"LBPair__EmptyMarketConfigs",type:"error"},{inputs:[],name:"LBPair__FlashLoanCallbackFailed",type:"error"},{inputs:[],name:"LBPair__FlashLoanInsufficientAmount",type:"error"},{inputs:[],name:"LBPair__InsufficientAmountIn",type:"error"},{inputs:[],name:"LBPair__InsufficientAmountOut",type:"error"},{inputs:[],name:"LBPair__InvalidInput",type:"error"},{inputs:[],name:"LBPair__InvalidStaticFeeParameters",type:"error"},{inputs:[],name:"LBPair__MaxTotalFeeExceeded",type:"error"},{inputs:[],name:"LBPair__OnlyFactory",type:"error"},{inputs:[],name:"LBPair__OnlyProtocolFeeRecipient",type:"error"},{inputs:[],name:"LBPair__OutOfLiquidity",type:"error"},{inputs:[],name:"LBPair__TokenNotSupported",type:"error"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"LBPair__ZeroAmount",type:"error"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"LBPair__ZeroAmountsOut",type:"error"},{inputs:[],name:"LBPair__ZeroBorrowAmount",type:"error"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"LBPair__ZeroShares",type:"error"},{inputs:[],name:"LBToken__AddressThisOrZero",type:"error"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"id",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"LBToken__BurnExceedsBalance",type:"error"},{inputs:[],name:"LBToken__InvalidLength",type:"error"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"LBToken__SelfApproval",type:"error"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"LBToken__SpenderNotApproved",type:"error"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"uint256",name:"id",type:"uint256"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"LBToken__TransferExceedsBalance",type:"error"},{inputs:[],name:"LiquidityConfigurations__InvalidConfig",type:"error"},{inputs:[],name:"OracleHelper__InvalidOracleId",type:"error"},{inputs:[],name:"OracleHelper__LookUpTimestampTooOld",type:"error"},{inputs:[],name:"OracleHelper__NewLengthTooSmall",type:"error"},{inputs:[],name:"PackedUint128Math__AddOverflow",type:"error"},{inputs:[],name:"PackedUint128Math__MultiplierTooLarge",type:"error"},{inputs:[],name:"PackedUint128Math__SubUnderflow",type:"error"},{inputs:[],name:"PairParametersHelper__InvalidParameter",type:"error"},{inputs:[],name:"ReentrancyGuard__ReentrantCall",type:"error"},{inputs:[],name:"SafeCast__Exceeds128Bits",type:"error"},{inputs:[],name:"SafeCast__Exceeds24Bits",type:"error"},{inputs:[],name:"SafeCast__Exceeds40Bits",type:"error"},{inputs:[],name:"TokenHelper__TransferFailed",type:"error"},{inputs:[],name:"Uint128x128Math__LogUnderflow",type:"error"},{inputs:[{internalType:"uint256",name:"x",type:"uint256"},{internalType:"int256",name:"y",type:"int256"}],name:"Uint128x128Math__PowUnderflow",type:"error"},{inputs:[],name:"Uint256x256Math__MulDivOverflow",type:"error"},{inputs:[],name:"Uint256x256Math__MulShiftOverflow",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"bool",name:"approved",type:"bool"}],name:"ApprovalForAll",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"feeRecipient",type:"address"},{indexed:!1,internalType:"bytes32",name:"protocolFees",type:"bytes32"}],name:"CollectedProtocolFees",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint24",name:"id",type:"uint24"},{indexed:!1,internalType:"bytes32",name:"totalFees",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"protocolFees",type:"bytes32"}],name:"CompositionFees",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256[]",name:"ids",type:"uint256[]"},{indexed:!1,internalType:"bytes32[]",name:"amounts",type:"bytes32[]"}],name:"DepositedToBins",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"contract ILBFlashLoanCallback",name:"receiver",type:"address"},{indexed:!1,internalType:"uint24",name:"activeId",type:"uint24"},{indexed:!1,internalType:"bytes32",name:"amounts",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"totalFees",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"protocolFees",type:"bytes32"}],name:"FlashLoan",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint24",name:"idReference",type:"uint24"},{indexed:!1,internalType:"uint24",name:"volatilityReference",type:"uint24"}],name:"ForcedDecay",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint16",name:"oracleLength",type:"uint16"}],name:"OracleLengthIncreased",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"uint16",name:"baseFactor",type:"uint16"},{indexed:!1,internalType:"uint16",name:"filterPeriod",type:"uint16"},{indexed:!1,internalType:"uint16",name:"decayPeriod",type:"uint16"},{indexed:!1,internalType:"uint16",name:"reductionFactor",type:"uint16"},{indexed:!1,internalType:"uint24",name:"variableFeeControl",type:"uint24"},{indexed:!1,internalType:"uint16",name:"protocolShare",type:"uint16"},{indexed:!1,internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"}],name:"StaticFeeParametersSet",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint24",name:"id",type:"uint24"},{indexed:!1,internalType:"bytes32",name:"amountsIn",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"amountsOut",type:"bytes32"},{indexed:!1,internalType:"uint24",name:"volatilityAccumulator",type:"uint24"},{indexed:!1,internalType:"bytes32",name:"totalFees",type:"bytes32"},{indexed:!1,internalType:"bytes32",name:"protocolFees",type:"bytes32"}],name:"Swap",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256[]",name:"ids",type:"uint256[]"},{indexed:!1,internalType:"uint256[]",name:"amounts",type:"uint256[]"}],name:"TransferBatch",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256[]",name:"ids",type:"uint256[]"},{indexed:!1,internalType:"bytes32[]",name:"amounts",type:"bytes32[]"}],name:"WithdrawnFromBins",type:"event"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"bool",name:"approved",type:"bool"}],name:"approveForAll",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"id",type:"uint256"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"accounts",type:"address[]"},{internalType:"uint256[]",name:"ids",type:"uint256[]"}],name:"balanceOfBatch",outputs:[{internalType:"uint256[]",name:"batchBalances",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"}],name:"batchTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"amountsToBurn",type:"uint256[]"}],name:"burn",outputs:[{internalType:"bytes32[]",name:"amounts",type:"bytes32[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"collectProtocolFees",outputs:[{internalType:"bytes32",name:"collectedProtocolFees",type:"bytes32"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ILBFlashLoanCallback",name:"receiver",type:"address"},{internalType:"bytes32",name:"amounts",type:"bytes32"},{internalType:"bytes",name:"data",type:"bytes"}],name:"flashLoan",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"forceDecay",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getActiveId",outputs:[{internalType:"uint24",name:"activeId",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"getBin",outputs:[{internalType:"uint128",name:"binReserveX",type:"uint128"},{internalType:"uint128",name:"binReserveY",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBinStep",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getFactory",outputs:[{internalType:"contract ILBFactory",name:"factory",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"price",type:"uint256"}],name:"getIdFromPrice",outputs:[{internalType:"uint24",name:"id",type:"uint24"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"bool",name:"swapForY",type:"bool"},{internalType:"uint24",name:"id",type:"uint24"}],name:"getNextNonEmptyBin",outputs:[{internalType:"uint24",name:"nextId",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[],name:"getOracleParameters",outputs:[{internalType:"uint8",name:"sampleLifetime",type:"uint8"},{internalType:"uint16",name:"size",type:"uint16"},{internalType:"uint16",name:"activeSize",type:"uint16"},{internalType:"uint40",name:"lastUpdated",type:"uint40"},{internalType:"uint40",name:"firstTimestamp",type:"uint40"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint40",name:"lookupTimestamp",type:"uint40"}],name:"getOracleSampleAt",outputs:[{internalType:"uint64",name:"cumulativeId",type:"uint64"},{internalType:"uint64",name:"cumulativeVolatility",type:"uint64"},{internalType:"uint64",name:"cumulativeBinCrossed",type:"uint64"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint24",name:"id",type:"uint24"}],name:"getPriceFromId",outputs:[{internalType:"uint256",name:"price",type:"uint256"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getProtocolFees",outputs:[{internalType:"uint128",name:"protocolFeeX",type:"uint128"},{internalType:"uint128",name:"protocolFeeY",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"getReserves",outputs:[{internalType:"uint128",name:"reserveX",type:"uint128"},{internalType:"uint128",name:"reserveY",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"getStaticFeeParameters",outputs:[{internalType:"uint16",name:"baseFactor",type:"uint16"},{internalType:"uint16",name:"filterPeriod",type:"uint16"},{internalType:"uint16",name:"decayPeriod",type:"uint16"},{internalType:"uint16",name:"reductionFactor",type:"uint16"},{internalType:"uint24",name:"variableFeeControl",type:"uint24"},{internalType:"uint16",name:"protocolShare",type:"uint16"},{internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint128",name:"amountOut",type:"uint128"},{internalType:"bool",name:"swapForY",type:"bool"}],name:"getSwapIn",outputs:[{internalType:"uint128",name:"amountIn",type:"uint128"},{internalType:"uint128",name:"amountOutLeft",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint128",name:"amountIn",type:"uint128"},{internalType:"bool",name:"swapForY",type:"bool"}],name:"getSwapOut",outputs:[{internalType:"uint128",name:"amountInLeft",type:"uint128"},{internalType:"uint128",name:"amountOut",type:"uint128"},{internalType:"uint128",name:"fee",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"getTokenX",outputs:[{internalType:"contract IERC20",name:"tokenX",type:"address"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getTokenY",outputs:[{internalType:"contract IERC20",name:"tokenY",type:"address"}],stateMutability:"pure",type:"function"},{inputs:[],name:"getVariableFeeParameters",outputs:[{internalType:"uint24",name:"volatilityAccumulator",type:"uint24"},{internalType:"uint24",name:"volatilityReference",type:"uint24"},{internalType:"uint24",name:"idReference",type:"uint24"},{internalType:"uint40",name:"timeOfLastUpdate",type:"uint40"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"newLength",type:"uint16"}],name:"increaseOracleLength",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"baseFactor",type:"uint16"},{internalType:"uint16",name:"filterPeriod",type:"uint16"},{internalType:"uint16",name:"decayPeriod",type:"uint16"},{internalType:"uint16",name:"reductionFactor",type:"uint16"},{internalType:"uint24",name:"variableFeeControl",type:"uint24"},{internalType:"uint16",name:"protocolShare",type:"uint16"},{internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"},{internalType:"uint24",name:"activeId",type:"uint24"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"isApprovedForAll",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"bytes32[]",name:"liquidityConfigs",type:"bytes32[]"},{internalType:"address",name:"refundTo",type:"address"}],name:"mint",outputs:[{internalType:"bytes32",name:"amountsReceived",type:"bytes32"},{internalType:"bytes32",name:"amountsLeft",type:"bytes32"},{internalType:"uint256[]",name:"liquidityMinted",type:"uint256[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"baseFactor",type:"uint16"},{internalType:"uint16",name:"filterPeriod",type:"uint16"},{internalType:"uint16",name:"decayPeriod",type:"uint16"},{internalType:"uint16",name:"reductionFactor",type:"uint16"},{internalType:"uint24",name:"variableFeeControl",type:"uint24"},{internalType:"uint16",name:"protocolShare",type:"uint16"},{internalType:"uint24",name:"maxVolatilityAccumulator",type:"uint24"}],name:"setStaticFeeParameters",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"swapForY",type:"bool"},{internalType:"address",name:"to",type:"address"}],name:"swap",outputs:[{internalType:"bytes32",name:"amountsOut",type:"bytes32"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"id",type:"uint256"}],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"}],QUOTER:[{inputs:[{internalType:"address",name:"factoryV1",type:"address"},{internalType:"address",name:"legacyFactoryV2",type:"address"},{internalType:"address",name:"factoryV2",type:"address"},{internalType:"address",name:"legacyRouterV2",type:"address"},{internalType:"address",name:"routerV2",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"JoeLibrary__AddressZero",type:"error"},{inputs:[],name:"JoeLibrary__IdenticalAddresses",type:"error"},{inputs:[],name:"JoeLibrary__InsufficientAmount",type:"error"},{inputs:[],name:"JoeLibrary__InsufficientLiquidity",type:"error"},{inputs:[],name:"LBQuoter_InvalidLength",type:"error"},{inputs:[],name:"SafeCast__Exceeds128Bits",type:"error"},{inputs:[],name:"SafeCast__Exceeds24Bits",type:"error"},{inputs:[{internalType:"uint256",name:"x",type:"uint256"},{internalType:"int256",name:"y",type:"int256"}],name:"Uint128x128Math__PowUnderflow",type:"error"},{inputs:[],name:"Uint256x256Math__MulDivOverflow",type:"error"},{inputs:[],name:"Uint256x256Math__MulShiftOverflow",type:"error"},{inputs:[{internalType:"address[]",name:"route",type:"address[]"},{internalType:"uint128",name:"amountIn",type:"uint128"}],name:"findBestPathFromAmountIn",outputs:[{components:[{internalType:"address[]",name:"route",type:"address[]"},{internalType:"address[]",name:"pairs",type:"address[]"},{internalType:"uint256[]",name:"binSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"uint128[]",name:"amounts",type:"uint128[]"},{internalType:"uint128[]",name:"virtualAmountsWithoutSlippage",type:"uint128[]"},{internalType:"uint128[]",name:"fees",type:"uint128[]"}],internalType:"struct LBQuoter.Quote",name:"quote",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"route",type:"address[]"},{internalType:"uint128",name:"amountOut",type:"uint128"}],name:"findBestPathFromAmountOut",outputs:[{components:[{internalType:"address[]",name:"route",type:"address[]"},{internalType:"address[]",name:"pairs",type:"address[]"},{internalType:"uint256[]",name:"binSteps",type:"uint256[]"},{internalType:"enum ILBRouter.Version[]",name:"versions",type:"uint8[]"},{internalType:"uint128[]",name:"amounts",type:"uint128[]"},{internalType:"uint128[]",name:"virtualAmountsWithoutSlippage",type:"uint128[]"},{internalType:"uint128[]",name:"fees",type:"uint128[]"}],internalType:"struct LBQuoter.Quote",name:"quote",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFactoryV1",outputs:[{internalType:"address",name:"factoryV1",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFactoryV2",outputs:[{internalType:"address",name:"factoryV2",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLegacyFactoryV2",outputs:[{internalType:"address",name:"legacyFactoryV2",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLegacyRouterV2",outputs:[{internalType:"address",name:"legacyRouterV2",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRouterV2",outputs:[{internalType:"address",name:"routerV2",type:"address"}],stateMutability:"view",type:"function"}]};const ZS={name:"trader_joe_v2_1",label:"Trader Joe v2.1",logo:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHAAAABvCAYAAAA0YEQFAAABAGlDQ1BpY2MAABiVY2BgPMEABCwGDAy5eSVFQe5OChGRUQrsDxgYgRAMEpOLCxhwA6Cqb9cgai/r4lGHC3CmpBYnA+kPQKxSBLQcaKQIkC2SDmFrgNhJELYNiF1eUlACZAeA2EUhQc5AdgqQrZGOxE5CYicXFIHU9wDZNrk5pckIdzPwpOaFBgNpDiCWYShmCGJwZ3AC+R+iJH8RA4PFVwYG5gkIsaSZDAzbWxkYJG4hxFQWMDDwtzAwbDuPEEOESUFiUSJYiAWImdLSGBg+LWdg4I1kYBC+wMDAFQ0LCBxuUwC7zZ0hHwjTGXIYUoEingx5DMkMekCWEYMBgyGDGQCm1j8/yRb+6wAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAABPXpUWHRSYXcgcHJvZmlsZSB0eXBlIGljYwAAKJGdU9mtxCAM/KeKLcH4JOUkJEiv/waeuaJslP3YHYkgOWbGHkz4yzm8Klg0QEXMCSaY2qa7HsaGgmyMCJJkkRUB7GgnxjoRNCoZGfyIRlZcNVyZd8L9V8bwZf6irGKkvX8oI4wc3IXWfS808qiY1a5xTGf8LZ/yjAcztxSsE0SB+cMF2I3uylGHACYXeIwH/XTAL8BwCqShTNl9zSaztRNxepRV9BCRmTBbcQLzmPi9e+HAeI7BBVpWbESUSu+JFnhMxGWp+2ZJeoH7es8L3fPuHZTUWtk0lyfCOi9wGxcDjYYar9c//AFURzuIa5/UXVpFkcaYrbLdPPLJ/mDe2G/ezQqrd9UzLWOZV6QeVOlJ7Mrqj6kS49Fj5J/KQ05OGv4BiF6+ZwMoFgoAADX7SURBVHja7b17mB1XdSf6W2vvqjrv02+13tZblmyDLFu2wYAdwiMQM4GJHJhkbgjMmHxwYZJw79xMEi7tzP0yk3wkMxnu5Bu45INkJpCRZpLwGJyEEAmMjTGW8Uuy9bDe6m71u8/7VNXe6/5RVefRaj1stS0leH9q9TmnT1Xt2r+91v6tx15FeK29Yk0AwsgIAft57EDeTSvlSqUix2dna7cdOBAsxTXoWt/kP8YWA6fOHjzouKWpzWpi6qdC07jLMvrY2mkY2RMUlv3l6u9/v36113oNwCVsAhB27+ZJTKbTyO8yfviAP3ruJ4Og3FdO+Wh6DThiUZjSZ90g9QunC0Pfv1pJ1Nf6pv+xNBkZYUwczJTm5U2psOdfmND8RFibL856ZYz3zqOe8sFOCMcJIZIa7htV963J158UICRAXu51XwPwKpuI0NwvvbdYOXnknWT5X7CYt4Shr2szozJuzsv5YpXENYAOCWxhlUijELCcC28cHDN0NeABrwH4spuMjHDthReGK//bz71HU+qfM8utAqTCRgXzEyfkrDsjc8UGWW2IlIBYABIIAcICYdixXNlcbT9eA/AlNhkZ4ZkXfrSyfOzZ97PLHyLwRlJKwxoElTlMT7woJ9w51LM+GWWJlAWzgEnADDAJVMiARWl5vScERq+qP3ytB2RJBlWEZGTkFb2XkZERLn/gvu2lI8/8oaedH7LS/46Us4W01oCgWZ7FxORRe8SZRzkVwichwwCIAAKICJpFFAOqQdaCzmL79h9PCRQB4UsjHmbH+88/8tyqI3fe+Lra2HT/D4sZMlZsaGQqNOGpQPhskMud+6mZmfLLWWsEoGMf/yl3YNLZ5hx75mOkvQ8QqwwRA8QROCIIqiWMT78oR3WZ6q6BkBAAaAEsACUQJgFYABHohmpSiOexd6+92rH4B2NGiIDw4AhhZW2LhX1fc2LqvtH/9cMbJg+e7KlXGo61lmwEkgjBCtA0QAWCow7Rn4XWfuVdQOnKriWEBx90KkeeeSOA3yLmNxCzB1YUjVgMHgTN6jzGzh+Vw5hF2QlB2hKxQCkLrS2UsvCUEVdZuNqCA8HwM/kzuZL7vhWnpw5c7bj8gwBQRka4OTyzQSvnQRK8q/rCyczzX/obXZ2tkhGJUANgAElet44FIARfQD8wIp94L/AsRYKx6HVqo8eW2Wr1fTDyy9DqRtaOiiQtHiqmGDzAL8/J6fPP4yCVUFUWpC0xCxQLtDbQSuBpK642SCkDrSwwS1j2bP7bGv0/u+H48fmrHZvrWoWKgLD3D1K2fO4Xteh/Q5Dh6vOn1HOf+19crTaoE6z4NdkFnxEgELgCuZuI/uqrIu8B8GzXdR54wKmcP7+p8sJT7yfgg+zolXA1g1Q8JaITgbjVsWZpFmcnj+IZKaPMFswWDBFAoFiIYyFlEjhsobQIhQI97ogXqIfWnjleXooxum4BFBHClx4sGnPuPxHRPyURR6p1PvqVfVytNlpAESJxSsDsFK0E1PgtschaQ/Q7nxN539jIiPnlRx8d0J68ozR59p+zp98Ix8mQ40ZSJtQGDzF4BIgImrMTcnr6OA5IBRVloZVACAIWsIqOsQJyCKLYgpUIQSDzhOy8cw7s/OXFtMA/CgBFhOpf/OQqV+iPCHgbRDRMiKnvH6S58dkuKUtoXOdnyfsLzguQZnrzW7du+mDPI3//OpXP/ox23eWkNZPWgNaIiLkk/QCBWkxSrEVt8qwcnT8tP7J1qkfgiSGBQ2IViRDAIJAiEa0MlGNFsQiaIG/UNZma+58fP33+9FKN1XUHoIgQ/vQ3+lxLf0xEbwJEQSzQDHD+B4fRueYt/AHaEhkD1l7kiVAs5mXV+rXZ/lXDn9XptEuOJlIxcMTxt+MzWQuiZL0jWBOgMnlKDlfG5QlTp5AtNAtEAMUSKiWiInuPmGGVEtZaxGERMkLuaW2KU+n/Wsgt/6P7MXvV5sN1CaCIED77CdfmUp8iojdBrANrAWvhj8+hND5zUXXZOkcHYAwgnUphcPmgDKwcpuLQAGnXUVBKgTkCTukWKWmfVABumwnGr2Fu8pQcrk/LM0GNfBLRLAQWYRLLJFYRDLMlxYBWolhbcZQRDi3SJ5xqcSz9X4fQ85u9hw5VlnLMrisAgQfJpJ2fI2s/DEBHnEAAK6iPTSMIDHUSlE7QWiqUCFopDAz1yfIbVlFhsB9OyiNSCmACsQKYIYohxCBIpCo7T8yR1EEEQb2MuelT8lR9Vg6HDfJhRUVLpAgAIhFmGKVsoBRIKSsOi0rrQNzAhvnT7rHi+fTv1qreX/SeP1ld6hG7bgCUkRHGl+bWkPC/BsOFMZE1BwuIoD4+E2GJtmokAEKRaaYVI1vIYXjNCgysHEaqkCPSDqhF+zniJUQtdUkxYJH8xWeMtaiIhV+ZlqmZs3jaL8nRoE4BIKQgloSYRYhElIJhFsMsVrF1XW2Up8IJrylP95xO/a0edb++8czciaUiLdclgLHhzKFPH2HCBhijYAUQC9hIAmuTc7Cx3BEi15TSCinPRbGvKD1DfSgMDUAXsmQVxJcAsCFIOLlGzCojMCmJA4iF2BCw8doqFiJG/EYJk80qPd6YlwkTUkiwIAhDLDEJE0JX29Bzw6arw5qnTNVR9qgi+9ew9jvDwNltP6jXCPVXBLjrCkDcfz/jHRtuYMsfgNi26jSxeFiLoFKHBYiY4TgK+WwGub4CUsP9cAYL5HsKY0oh1AEEBrBEEICtBVkLismPslaUWHLEgolFFEEIqJsm6n5DAmOoag2NBU2cqNelbgRakWFCQ5FUlcKsVjitIIc9x55xdHA+44bjFIYnzpVw+hMPwcdVhoj+QQEYR7FhZx//BTCWQYRaNCXWmdII4GbS8HIZ8Yp56GKG9Loh+JtWwgz3wikW4BT6kM0PQKdyYC9LVmdgVWwWWAMThPCrJfhnDhJLCOs4sLF7xRiDqdGz8p3vPSLVStU3Ydg0QIUI55n5HAHHteLnlQRnmflshpyzU33Fcnn7ofDTI5CrjeldTbvmrjQBaPI/fzTbr7zvAnIzxFLEPAUILaQZIqg0MXZ2FmPzFZZ8ivK33ACvNw92XeRXbUFh/Q5wKgd2PIiNSEl0cxILsMBai8bMJGae3QcFiRkmINZAjIFYi9FzZ0vfe/TR35ienn40DZ5oVoO50p2r/M99/sBVRc1fyXbtARwZYayo3mIl3Adr8jA2Up1BCEsa4YqNUh9eR/VsD00ffJQ8qhIxoLRCz5ZdyK69GazTiNCIjO2WCo7NALEC4/uYeO4R+NNn4LguEpYp1sTCLmj6FjZV/O/pFRv/z41veceZaz02V9KuuQoFAMtyN3ybgrFAaABokdXbxWy9DVi2ll3W3Dh7mNJeAFgGxCK3chNya28BlAsJmgiqVYR+AzYMQaygtAtSDGtChM065k8eQmP8OBzFIM8DENkBzBoWQGAI6bWb4Q2seK9yU2smz537pcGVKw9f67G5XLv2AC5friQ8ejuFohBCZGidNdvvgl22limdYwui2uQo1U/8EAQLEQs3V0B+zU2wfoDy2BGUzh6BX5mHNSEoZpoUx6rFhoBYkAkgfgDjKOhMvsMOAYyxcJZvhdO3AkLsWhPemVLqQRH5IBE1rvUQXapdcwBL6vF81i9shpOxdscbrVm7TSGVUeRlyJKioDpP9fPHgKAWGdzM8HqGUZuZwPyJv4NtRp870mEGJOtgbCbACkwQRhrVWMAaQDmIAhWCcsOAqyFmZg4j3z+IXP8gBc3m28rl8u0AHr7WY3Spdk0BFBGn+e2v7ILfGAxvuMXY3iEX2iNol0hpQhggbFRhSpPJEQAIlbETkPHTERACkBWIWFgbrXdhELYFTAB0rYuAiAFBgwAEocXh54/Af+IpMDPShV7csOMurLp5ZyHd378BrwG4aKOJg/uyZ7/2mQ8K86/q/MBwLpP1HJ0iaA2wIhsGZAI/kjrrR75N1pCYrMAaWCuo1nycODOJyal5lKs+XK3heimsHO5Bf28BygZw4mQiLQBIWk5qsYJSuQK/WoWKPTrwGxh97nEUe3spPzhcFBEiouuSgQLXAEARoZPf+PyW0nN//x8lqL0VJKpZGiOVGxCV7YNiJdYaMqGPsF5DOHcO8KPYp8TM0VqgVPVRV3l859HncOjwSRCAFcuGMTDUh3ve//PIFQpgsajPTmH80I+Q9meQcwQAQ4yNgnUCzM7MR+YGEZTWMGEIv1rD6DOPNdGsvbj53buvW/CAVxlAgdChvQ8uc4P6n8CGt4kVBgMgQVidjdxaImRNiMbkSTTOPgtTm4OYsBVbtRYwBpieq8NdNoyJuSqstchnc/j5X/0VkBX0L1uGZq2ObP9y9K/eACedxejDXwO5iEmOAMQQhGg0GrGqJYxNVTA+PYeefBaOdpWET15rfC7bXlUADx3c67hP1f4fmHCnWGGBAJbiCHi0TlljqDlzBrXj34cEPsTaOFEhdv/HDudlAznUK2exfW0fTL2Cas3HN7/85+AghOd6KBbyeM8nfi0iNY0SMi4iu48QrZ1xdkTghxAR/Oj4KM5Ol7B25RqsuflWpFIIxZSva+kDXkUARYQO/c9/ux1if8aISHlu3tarVeoZ7CcvlQIpN+Ijfg21k09CAh8ARYZ5zPeJFaxE8QhXKzjZNN5wy3psXT2Ic+fncOL0OOZKPtKeg51vej8IgkZpFvXTh+AqaRMb2w4fERFCIxifLWHj1u3YduM2OFrB68kGbtVfkryVV7K9agDu379frTT+T0MoX6tWaXpskppNn9K5LLx0GuzlCCDUzx+Dqc0iTkdCJCqRQ1+S6JKJzARrozWtr6eAnkIOm9Yuw8xcFexmsWwgg/njT6M6fgphaRrKUJSgGXtfKPaMKa3AADylMHX6FJ6emsJNu26D6nHnqF4vX+8kRr0aFxGAmu97c1Y1Jz8p1mwozc5TebbM1lgU+3uQyhWQW7MDKtuD+rmDsLV5RJ6S2KZDlLpgrYVYC2Ns9Dp2kwWBgTUCZoVs2kNaA9XzZ1AZPYGwNANXUxSjFYkyxZSCyuQgAtSqNZTmS8i6DsSEKHiEDBpQtbmU9YP1L/79Nw5s/Mn7Zvbv339dgviqpNYTgGUFVgCtEhHy6z5FKpHgpVNQqTx0ti/yWSbgWWn7NePX1liYWPpMaBH6IcIghLWC0Bj4fhCBC4okNDRIpzW8tAPHVVAcO7BDHzAhWCkUiwUAwFBvFttuGMTaFb3IKJF6reqVG413hDb403vDsQ24DvzG1wxAACKhL5bYEyEyYUgCIFfMQ7sunMIysJOCtSFgwlZEXCSWvvgk1ghMaBAGJgKKNESlAScL6BTCUNCoNeHXmzChgesxPE8j0gECUgQiwBoL22yCFCOXz0I7TjQYzGAioThUH4YB1Rr+rZUg+Ff7Rj7oyXUI4qu1BtIsAAiFzEAml5FqqUK5njyYNVL9NwDsgElAjgv41Ygxttxh0XonIoDScAt9yAytg1PohxAjDAL4jRrCWgWN+WmUzryIsFZCLptFEleM0gMZlgSwFqZeBWdycFIu+gZ6MTE2AREBE0EgZEFgiBhjOAjDfwqk/t/9Ix88uW//yfDe/fsNrpPw0quzBoqQf+yQajTmfxoSrFMOi4hQsb+X3OIQCjfcDnIzINYIqjMwlZnowGSdA8FagUrlUFj3euRvuAmZwRVwMnkoLw12XSjXg3LTcPI9cIr9qFercNGE56qOhKU439MKSAxUKgOlXWhmTJyfitdIQvQPoCQTm8jNpHM/DOs47t40lNq97S77Z48//oqmSlxXAI6MjNDcRE1J8/wG69fvZiKkMmkorSmz6iakhzbG6X0AkUY4Px7lsxCB4rCsk+9HYeMuZJfdAC9bADtuO5eTFUg5IMcBs4JyXKQLPfAbPhxpgCMrsiUzBIK1NjIrUmm4rotapYZqtRbBFduazATWGm6uIIPbbzf9m7efDUr+rE4L79iWtw89fuyag/jqALh9u2quXu2Sl3qjPz96l1hfEYN0ukiF9W+EThdBrKKUZu1AiCIpFAsQoNNF5DfsQrp3OZTrxV6UyLiIVCtAzGClQNqBdlwo7UKUi3qlCmWb4NgUiRaxOPgbBmDtgl0P6bSHqYkZWGNAABRrKa5cT2vuvJdW7XyTyq5Yu11l8z+XHlymBXPPEHL++x5YEe7de+iaqtJXBcAVP/mT+uZB7YXp4gMGzrBUJjJETKnVr0dm+RYopVvqiiDQ6SI4nYeYAMwKmbW3wusdBmsnckIDre1dEkf+IgcZgVmBlAY7LpTjwbJGrVyBY5tgktiRE8NoJGKjngfHdUDMmJudByuNFTffTuvvfjsyfQNQXgqsHWLtOOyldjipnoni7OgLwFDwJ1/dH15LAF9xFioi1NvbS75T6COd3ub0rw2ameVNLi6X9PBWsHJBlMwjArEGKRde7yrk1u9CduOd8HqXg5UTSx6BlAIzg4hBTLCxnQi0wWXtwM3lkVu2GunlG1GnbJRm2kqXB0ACG/gozc2iVJpHvpCB1hrDN+7A6h1vgHJcsONBOR5Yq8h+dNyUKvR9OCwMFcPzdS9Ou7lm7dVgobR9+3ZYqr+OQEUmcrMrtvqpTNFxsr3EHEseRbYbmEFQABEUMRw320p/FxBYRV221kJIEJoQvh9GPlNEnhXiiIWQ0nCzOeSWr8Fcs4bmxFGkbD1JLAVACECoVBstf2vv6g1YveMu6HQW2ktFqplV7EwQWGOJlV6dXrn+pjW12vSevbv5fuxdsr0O1xWAIkKf//zn1e6d69ON7LKfEoijWLvZ4rDnZAusHBeEFuWL4nRATCDibczxVi8hQMVSSBBYiWzCeqWKY0/9CC8eOojQWty483as374d2nUiEqQc6HQOhdUbUQ6bMJOHwbHj3IBQDiTKZATB6hzW7rgbXr4IlUqDdUyKlIoz2wIQkYhopbzU0Jhv3Nz4sEZ7k9Sr3l5pFUo7d+5EWQ+uEqI7CVaTYsVuSmk3BW7T9PhXtDpxvL5BqUhtEoE5GkzW0Z6GaHOC4Id/9y18879/BSeOHcWWHbdBaQcnX3gBzVpUxUoAkNZwMnnkbtgGWrYZwg4sMSqhwAhBhBDCxcC2O5AbGoZOZaC1A8UaSukIRK2glANWKt45yGEmM4C02uqMvMIFFi7VXjEJHBkZ4b1799KOHTtYB/V7mGhYrGhiR2vHI2YVSV+8kYQWlLwhVmjtWlDR+hNJlILYENYazJw/j7mZaazbsAkz83PYsuNWZLJ5BM0Gmn69bccxwI4HN98DXnsLgv6VCObGwbMzcAVgL4P8ys3ILFsR2ZPKAbMGJ2utUiBrAQ1IYCFCDZbwfE/amszAKvr0Rz+KkZGRf/gAtlxNIth7//20fvly9srlfqSd+8CcI2il3JRyXA+aNSgqnAISQCj2liQbTJKtehTvKCKK1zZupUQ06nXc8RNvw6nnD+Lct/8O506ewKbtt8DxPLDWEdASObqhFJgIOl+ESqfh9i5DZo2Jz6vBXgrK8aCUhtIaRAqsGMTJxNFgQGwYComMKsE5k81COQ7t3bv3mhGZpZXAyJMhIw8+yG/56Edpol7nIVe9BUQ3A6ydVE45jktJzmYERnJsLI0xzZfYREh2yCbrpCQJuyAMLF+OMLRYXq9jePkKPPY3D+GGzTfCcR0wMywUWBgQRH5WYijtQJQGu1GkA2IjG1RHxzArMOsIOKb4fdRXa0OIiHXSqbEQTrky06T6qgqtXz/LuEbr4JLp7iRuJiK0bds2AoCtfX09IPoZYu5hpUgpxUo54JiwRIBxS7oiKhgnxBODmBPXVntLWEJ4mJEtFJHN59G3ciVuueNO1GZn8Njf/Q3CIOwiRaw0WEVraJT0Gxn72nGh4p8EtOg7HIPH8V7QuFCFiCjtmFxP/42ZzZt3ecWiBXqvBW5LC2AMHoAocAtA5fN50hnvToLcBZBiZiZW0feS3a/olEC09qJHZVhiczvezxf9ojg7jePB1dCOi1Quh7U33Yxd99yLZx99GN/52l+gUasD4Jb0MKsYSI1ERxMrsHLi3wzF0d+JGIzomFafABARpbI5h1gtZ+X9X/ldt24Ig/Oyc+cD18yldtWeGBGhB4loPyAjIyO8rLxMF9cVbQ+VC6l0/tesyE6ttVbaYaUdYqUi9QmOLIRkh2xiYCeSQ21yQ7HEtdGmOEgRHSdWQEohW+hBb28vjj33LM4cfxF9Q4NIZ3Nd52ivodwiUUwKrHUshRzbfhxLHrXsxvZnUETcJ6L6OD/wN/39/Uu6bfqltKtdAykWvdbOyTPeGbvzCCh7xx1vsdbeA2KHmCMB5EStRYdY25IFtCQzBig6OUfSyAqt7bQxU2LFkS1nAeU40GKRLuSxZtt29C1fjtNHjuCRh76B/uEVWLt5C3oHh5BKp9tslggWUTKwCXxIU5DKZOAoHUstdXQldgwwAwKOpJe1Vs67e3I9nzpz8MynV29fPXMtALxa9sQjGMGn5dPy4IMP0raD22jwo4O0eWBguS/NLxhj36K1o9O5PLmux452I4bHSUWIeGBioNBhF9ICSWz1NA4JtbKwjYUNDYIgQBj4sGEIYy2sCRE0fcxNTWLi3Dk06jUoreG6HrxMBql0Gtrz4HkessUeFHr7oHWkPkkl3qEkpJQw4IRZRRPQhAa+36yKmD+cmpv591u3bn3Vk6CuRgKjIR0BvvGNb6R37eozlW0IV9XrKpTmL4VBuEus1eylwMzExLF3pT1nEkKCWDKFEtaJLpXaWf1jYQ+YI8ml5PxaRwu7uHBTaWSLRazcsDFmohbWGhAxtBOZCxzbmwlY1NGHqE5MV5e71HikUZAVwcf7i/3N8fHx3x8eHl7yQgavCIAjAI3E5xgcHNT1es5Pp0FOLrfN98OfD0I/S0qRjmJ0xCpmmy0CEa1BUeWI5G+dc6Nr1NoIxqZEp90vMcFhpUEsMeYdBQvi322JTrw98bkTppuo8uT7aHOrjo50dIuhWEFE8gL5pLZspqenP9vf339FRfWuFYCt0d2zZw8Vi0UnfzrfuAOn5dzNa3saDfvrzVp9bTNoqN6eQdHa4WjhbxvgXa8XSCVwwduLdiPqSJwWH18D6KiudMGoU1zysR2KotYXOulwAhy1NsjQwvkEgATQKsqnCYKgIIRfl2a4ZXR09LdWrFixZNWYLtVethmxbfduAuDm83l7EAfNQ7mcrlbsR/xG451zpVlXQHAzaWJW1Ar9tIBDh51GCwSuY6Q6KPwFIHPbf8rMYM1gFQd1YxdY9D5yhUHFXp/EdEnUJbftxU493dWdmEDJAjUukeMWSms4jgMIcgL6gAv3/xs7dWq7iFzRVHy1AaTdu3cT7trtFosNPnv2rD84OEgb+nveFfrNX5mcGMuVyyX09A6I43iUOIM7Z3oLSOYLgEtUWXvgusegu/5ch5kR+0ujH449PYkkdqxlnIDXnhPdsHWbL93qtd2d1jGxe09pB67rgmCVRfhW18t9fWps6gNy5kz6lQTwJc+Q3bt3q1/dvdttDg4qAI17ABzNujf5gf/lqanzm48cfV7tvP2NdvmqtXAcj13XhU6oecvTodrgJSDFeqptvNOiAEbZanH8EBJt2ERUE8gmCMeZbC1lKJ2HL8KGOr5CHRLfpV5b62o3o5J4coiJ3HJh4KNerwNM4nmpuTBofrEy3/jsDVtvOE1ES27wvyQJFIA++q53OcXBQXXkyJEmABxKq81BGHxubm5m09PPPqX6B5fZwWUroZXDWuuOtYlic4FbAdfu6DgtUFsLiUy7da1pMWOlyLqO3XRoGfotPNEpvR1iFFuw1MF82+67topvseP4aGmB3hFNAUFpB6lUCjYMqVqa7wXUv8r35L4xcWb8l1984oniUqvVKwZQRGj/F7/oDd1wg8bkpD82NiarHGeLCcPfn5me2PHMM0/qQqEoN998m6TSGXZcF1o7bWoeu6uYqRu4hai0Bo0Wwa/9txbFb4Wk4n6250PbHYf2KbskqEMDJKBRp1Zo4Ucdxyffb58m2sIRM2vFcBwX6XQWYgVz05PKBP52x3P+Q2HFqq9Onh7ffeqZU70isiRuzCueDXv27HG3Dw66GSD84eRksLk/PUza+6Pp6Yl3Pf/CIW0guPvNbw1XrdnIruOyVgqcOKSZo5CNUh21y9DSnC1Wl7xoObnRITaJ1EirLEjynpnjilxx2oMgSsfv+E5ymeijWHa6vC3o7EiyIrcBi7FvCXF8nfahSXGi6NrWGjTrdcxMT6E8P4/+wSFkiwUBcRnGfN8E9svloPrXTz755PT999//siMZVwTgvn37dJ/ve+MA3v72tzd++M1vDnLK/MH05OTPHn3xmNP0m9h5+xvCrdt3kOumlOc6bUcwYs9+zAzb7rIYwNbLLtG5iAQirnYnsRTadoZZ/HGSwS1dmd1t0LrvvgPARJV2I9hhU3ZMoNY8ko7jbHuSxH00JkSjVsPo2dOYPD+OoeEV6B0YRLSdTjVJ7DFr7TfYBP+zXi6/uGpiooR77jEdk+uyKYuXBXDPnj1qFVa52S1lDh476fONq3ua1cbnxsdH33Py9EllrcWWG7eFO3bejUw2rx3HgUqi6Uk4iNuUHZ2mxMLB7Mwa44t0rbWYLWSn0WDaZN2zFlY6ddzCk3RKW7ckJkSqzYgTe7BdybcNZrx7I9nGmKRHxlnlJvRRLpdx8sUjOHf6NIrFHvT2D6K3vx/pTBbKcYRBJQs5BsFThPDA+dFTj5899qOj7/qFT1zWIXBJQ35kZIQHBwedIprq4OF5f83qgWWV85N/cG7s7D+Znp6GcvTM2nUbajfdcsdAJpvzWuB1UvBWTC9ZsS4cw04ic4VW/ALrOmaCHWAkZSijXbkL3HdygcjFf0u8ROj6W+dm0Bbr7HTRmJjxCrUFlaJMA1YOMpks1qxdj/LcPMZHz2FifAyO5yKdySCTyZHneQVifr014abA92+sVmYrdGzm+SsZhouOlojQsYcecrNDQ+p7x4+HXrO0pl6b+y8TkxOvbwbBiUw6+/CGDVsqW7bd8v5CsW+DE697iaM6CYomALbSI7qYZ/JfO8oOoF1w9WK9W7TqawRIi3HGW9LiGDG6tmhSW4qoY52LLk0LVPuCF8n6K+1OWGu7TZFkmRABxf7XZqOBmZlJPP/0U6XRM6enQhMSWVtnpefZ4ZNk7DEmfrruV55wBteMfuQjH7mix9ItOkQjIyP89m3bPKwC/vZvDzW3YZuu9h9bf2b0zLLSrD/d01+YvfctP7F91ep1v5PLF16nHVfr2MaLNE4c8+N2xSQkOS/JzcXSIgl4CYDRptsrl8QFllWn1pQOwiMLV9suSWwPRedVW1vyF3YlVtOJCjVhxEEoyRoXtCMaSaEhE6Jeq6FSKZXOnTj+rw8+/fRD5cZkTSpUL5RK/tiKFWZkZOQl24kXjNLIyAh/+O1v90pnz5ptu3cH8fbils756h//bm54w86bVixf/rupdPYurR2ltSbVSkWI7L5u53Xb+I7WtwVTekEc8KIE5mKtRVTQkoT2285NLdH/CW4tUDsO6Lpspym60NvWsR4aYxD6fmw2UfteE3dfUvc78NGo11Apl06MnTn94eCxxx6+d2TkqlLzL4jI79+/H8XVq839H/tY+OCDD7ZuZffu3eoLXxjxVq+59fVDQ8O/l0ql79DaUcyKiJmilAUVbzJpkxVWsZSJtEyILnusa92jlw7ewlGnhW873G1E8TqJlgboOn6h5uaLXKNzOhBAxDAmSnWM9nm0swU6yRC319herd3b5z338fU33jh2Ndu3r2SoCAA98fWvp4Y3rn1dKlP4fVJqJzPrKMquIn9nC7wkVYFjdRLta0+iEF0ZZq0rXJ7EWGMjqb5U65Ak6ViTFosntr0ycgFJXbQHnYuhLBT3KMW/Uasim81F+xlNvMZyh9FvLawxaDbraDTqUpqd2Vebnf3QrW9966mXC+ClRoQA0J49u/mJr389Nbxty71etvinynFud7TjuNplR7vkOFGUnVWUvcwcVYc3YQDTqMGvVWGNaQ/wRQfr4nNJRNCoNyCXm6fU/XJRxnvBF+jys7jrCwvYUDwZFStAgEa9Cq1VpIUgceG9+ByxPew4HjwvRblC8e5sT8//sW/fvtTLBXAxM4KAaFMmAH7bpn+SM/29HyNWv+I4bp9izZFLLM5Y7jAVQNEDMkyzCeP7sGJhxMJTGox47etaS7op/kVBFKBULkEphpe+zL12WAidQdnOz4CFQtn97gK8F6WkbRYrcUzSdT2Mj56B0i5S6QxCCeLUD4BUYlYJtFYgeIBYV6z54Apjnn3ic5/74m1XyDwvCmDiaL3//vt5165dete2beutps+4TuodjuMoTthlkjeiEm+LRLko9TpCvwljwpj5xfZth1HeokQxtW+N6yXWvjAMETSbKJdKcD2v63wXBRAXas5FNGnH32KJudR5k5edWhRt9qldF6lMFmdOvoj1W7ZCOxphGMZ1bdpEO1pmFERSgCBnrfk3uO225wF87xJdXLR1kZhDhw6p3btBb33rJ7LrBvo+4LjeF7xUdqfjuqy0BmsNav2o1i5X22ggqFcRNJswxrTAS+7b9TJdUtqeyB3mwyUAbDaaKM3PAyJwXC8Knl5K7y1up18IxIL3nW8vdRwkYtcXMFYQtNI4d+o4IEChtxesuP1MvA7exorBxHHpE+qxYm68/773/MUf/7f/9pKeLa+BWPL27uWzd93lVsbp3VkPn+J88SZWipMQkCQMUgQ2CGADHyYIYMKwDZpE5TxaZUEg0EoLqST7MLnpTj2HFju8WKtVqwjCAI7rolqpQGsNx3MufWedIHZ61Bao0sUPuoQaRfcq0GK0Mb11XRfFnn6cOXUcmVwOvUND0E5UBVGsdPWLHQWIhuu5CG1m1/CqFf/+iSee+Nhtt912xapUiwhPHT6cLbz57vuGU96vkvZeT9rRrQcdxixSmkGkJk0Ia6JK7zb2SNgOoza6sWioxNiq9hwmUKYjA6U9DIk5cQnwjDEol0qo12rwXBehcVCtVlBweqLQ1KUAvAhgnTb8BfZ8vKpdeD5qr9vo2IjT4dAGIi9M38CgjJ49RedOn0Qqk0Emn4eChsQ1TpMZRQDYceBaiyAI2Hrpf9YXmG8B+B+4QlWqQSQDImE4O3sKjveX1oR+UKlvBWwOVrSIMBLHsACC2G3U4Y1vxb6jBc4KMGWNfViTPO54qV8HUYYW1VVdXHHR1mw0UK/X4Ad+tJ5YC9/30ajVkMlmr0yVom12LuYLX+ge7TYVkhbrvm60u126AMCMdDZHuXxeJsZHiUBYv/VGZPL5aPu4FUAMOk0R5blIWQMrNg3m337yu9/df+ub3zyJK2gLtQRhzx4+f+ut/Y5S66FoGxHfKNauBaMfQjnA9gAoEMiVyIvcFGBGrD1FpJ4ByRN+YA94E2bWW5P+kJsv/B4p7VAc30s8/clP4nRebLqJCKYmJjB67hyajQZ6enuQzxeh45IkhZ5eeCn30nfYaRsCXQLTiYUsduBCBpS8WBAHbIe0Yo0UGoyPnrNPPv49Tnkp9A8OYf2WregZGGz7hWMNFjnGLcQIGtUK/MA31XL5yyfOn//Qvffee1kvTRcLJUAQBRcn4p8fxE5fPnbsmM7n8zrVbLohcyYwxtVK+WZuLnQymcZYo1E/uG2b2Q1YIpIzBw/2Zdzi64kjiwhdaqdDfV6ihWGISqWKMAi6UyII0fOUymVoVYRyLhFU6VClCWgJE75AlS48kDpAXChqrc+pG1xEarSnt5dcx5NypUwgQRgEWLthE4ZWrgQrBWgFNtHyRGBAWXjpNKy1KpPL7d5I9Fci8lUiumSw93J5oRIHFk380wRQBTB7yYNEeG701FqlnR0Uh9a73FaL0b8LTgJUK1XUa9VWCSzT4RAQAIHvo1KpolAsXN60WABi559kkdeLfqFrYNoTocMyamkV10tR/9CwmX7hOSUCGCPwfR/z83NYs2490rkckGTOWQsIQzkOUpksUKumkM///qmjR58XkcOXSoZ6RfZ279+/30276TtYqXXdGdedA3NpAIMwxNzsLALfb41kFLaxLSQEQL1WRaNWXzzb7CJAXta06Hp3cZJ1UZuSIo/L8PKVZEXEbzZRrdYwNzeL08eO4bknD2BybCxipUyAVpFZphjac5HOZuFqvbaQzX154syZdZfKn1nyPfIiQtPTZ/uV9t4GVtmOaAba9h5d7hwol0qo1SpRSazYf2qtbWVUSEucBKXSHJRWcFPepcHr7kk79BN/sHjmxSJk5gpcyESEnr4+cl1PqpUyJSGtMDTwwwC1ShnLVq7GyjVrkSsU4tipAligyINrLQW+/zpi/vyZ5449ICInFpPEJZfAvXv3cl5n7iStdlGS49da+jqc1pdovh+gXJqHCaI1PAkS26R+aMxMRCwAhjEW83Oz0c7cl9AWavJ2lOKCb10cs0UtjmiSul6K+geWWd/34fs+/KYP32+iXq9jdn4eLx45jAPffwTPP/0UpsbGEfjN1sNN3EwaXiZNjuvemx8ofGn6xInbjh49esEMXXIAb9+0KU/a+WkwL2tTTbTtPb6M9FmL0vwcatUqjLVxDc9opKLdRUlwNhlpC2KC7/soz8/HZZgvhdiVgXjpTsol9Gf7t9Iaq9esMbV6E34QIAxDhIGB3wzQqDdQrdcxMzuLY0eP4MAPHsOPHvsBzhw/jmqpDGMslOvCSaXIS3l3O7n8n/dmMv/yzMGDfSKiRkZGWABa0lppMjLC2fe86yZm/UlSqh8JAQXa26ovKX2CarmKmakpNBp1JCqXEO3CtVaQTqehdLIBkzoIbQSiYobrehcHoYMIXwDaAmHripRcJMfiAqml5E6iNxqQhx99pNRs+g4ROLGbrbEw1sAag9DYSOuUS5gcP4+JsTFUKxWYMIzj3QyldK9ifqeTytw5Pz3FG9dsHf+LW29uLNkaKCI0M3Msl7f8z+DwKihFLe5PV7b21Wt1TE1OoF6vRZgTwYqNJI4JEprYdadiL26SYyOxcDPKpRKIGNlc9rLXW+j4BjrMig7m2nrcAeQCQ771nQTE+E9MBEsCL53VG9et/+tvfutbY4MD/XcN9PRsTmfSvZ7jstYOlFJQ3N7TwaxQqdYwNT0DrY8glUrBdT1RWhsAvmIayGayG4w46c1jm2UpSQwV3OHXk1LvgdKRo5I6wesesIUt8H3MTE2iVqu2iAti/KXDcDbGwJrIdkpyf5MAMXFEdCrleTAT0tnsFfS6u08LCU13OuhFXd0XOLYTraAdTZvWb+wZm/zyvztx7Mzn1qxbsXpoaOj2Qia71Us5y1zXHdJKDzJRXintaVaktAYAw8R1MNeJ6CRgDxhrH/N9/wdqNDv28f/0cZ/eSksDoIjQ3NxcIe86v0hKrYrqFndMy8sY7YEfYHJiAuVSGcaErXR8G9fNTiSNiBGayA1lrQGDIHHFpxbjJ4IxFuX5eRAzUqnUlUkiLgRyoTTKJda9VpbhAs8OEaHYU1y/7YZN+rtPfO3E//irx4/u3Lnzu/fddx/19fXR6dOndY4oz8z92nX7WCkjgWkyuTVrTN3J5SrMXC2VSkGc9CQA5BOf/QSApTMjVMZ17yFHvRsqLifYGQa4yAAKgGaziemJCZRK8whMgM4dQEmEgwQt8mNM2DqfjR9THpXlas96IkFoDebnZkE9vfDSV7jD6xLS2ML4Qu25SFip00wRZHO55W+849b0f/nTP64BkAMHDgQHDhygkZER+sxnPuMDqAEY7zqsY95cqstXzUKjtW9muVLqfwfxQPf9LGALHURARFCv1jA1Po5yaR5hGCIpTB5FOCKmR3FRO4CEiIIwDKcBCKsoHmmNgRXTZcgnmzhNaDA3O4tGrYbL52N0A3DBR/G8Wrih+HK+dAIhk82lV61YsR7dSZDSKVELRiiZN5ft9NWbEWNj6Z5c5hfBdFcc32nTs4sEG6yNDPXpqfOoVCux2mwhGyfmIp6GJCIwInaCCH8Eaz9ujDmWLK3RE1yiJ3vaJJBMreLlMMagNDeHZuMlPIhzkX53mhddm0M7v7dguKOtIQwvlVLZfH7dVY/1Iu2qzAjZs0c1b7rpzcrRv0PMPWiVB1zsy9EvYwzmpqdRmptFrVaN0i/aaERpGK11RACiQKx9WhR/cmJq6gt13z/U29f3rKPUu4k5I7G0tpfZ7lo0BIEYg6bfhOu4kYa/vCOlA7UFbxf4Ilq0ZlHThOInhlqqVSpHhlat+uZSPwHmZa+BIkLNUmm99tzfBPEgRPiSAyMCv+ljfm4WlWoZzUYjck4nMznO3kr2/QGwpNS8GNljQ/rDZ5576liSbi4i+04dP/6LrPjPWHExeYy4BSLTU9rqK0HWmBBzM9Po7euHk3oJSWCXWRcvRWwgaO3M0kqvQueDoJaovWwVOj8/38Pp1G8S0RsQBYYvEtQDbGhRq5QxPT2BUnkezUY9SjWkuLCddBcQIKBJpJ4Ua3+dmvVPPfPCM8ceeOCBVliFiOza9esfQmh+hUCTzBzvSIoM5KT8cmJMS5wJHgYhZmdn4DeaL+1mL7MuLprWmjiL4qw9VrRm2+Dgy04fXDIAI2f1dCGbzf6WIt4NUHdEtSP13IYhaqV5TJ4fxcTEeZRL82g267DWQJham0Raj7YV8Ql4HuD/W3z87PmpqT/Z8aY3TX3kIx8JFjpyiciu3rDhT3xr3w8r56JE4ujJZBI/JCvhAdRB6YJmEzNTkxGxeakgLqJSLyh8sNBfQVEVDddLLwM3i0sN4MtRoalsNvsAET0A4AJ+LtYibDbRqNdQb9TRaNTR9P0ol6YlaSxiheKNJyIC31o5CcifK+av3HLbrS8CMJd77Ftc3nLfcwcOfCiVyfxH7TpbrDEskOiZuDZOV2w9tTMa4TAMMDs9jaKxSOeyHWVGXl7rijEucLklTgblOG5K5XoAnHvVAWxtzB8bS9sgeEAr9RuwNicxYMYYmMBHs9FAs9lA0/cRhpHz1hjTofQj21CMNSKoCHDaWnmSrH0Y1n5XXPfU615CRlYC4p49e769YmDFeweGen7P89x3W2uVRdgqwdXygnXEi4wJMT83A7/ZQL6nB7H348rQag3MAhBxoUEPRBl3qVTK6evt7VtK8K4YQERsVXzXXduYn79XjJk1Yo01YSoMjWutUUEYUmgCBKGBtdZGoR4ARIZAgYg0IJiAkSMCeoyIfijMx2XMTNz607c3rqYER7zH/PBjjz32QNGmfttzvZ+3BhmxlpglrgbVMeiSgGhQrVYQhCEKPT1wU6krJqhdqHW8Bbpdf4kHyUunHLenZ3CpAbyi/naUxuCTJ0/mfX8+mwlNusmZorbBUGCp3yDIh0ZSzAoWxrfWhgQVWIsSEM6yqElOmYmJiercd77zHf/l7IW7kvbEE084Web3OKnUb4OwiQhOUoW344bapZtje1FrF4VC8eWr1MUSoBKRtBZBo25PPvP0L9/45jd/AVdgoF9puzrlH5+jwwuy2Pmitf1Vfozpi88/v1lgP0ZC7wZhLTHrVlmtJL3QJmsjRVnSSiFfjMo4dwF+JW2xQH0HoTNBgHOHX/jUuq997XdoCSfvUgB43bajR4961vdvVyT/kojeTsRDxO1K60kxBMRPjImCx4x0Nouevr7WjuOraolTwhjMnjv7h4Pr1//aUlZselUfQ/5qt02bNjUBfO+Jb33r2Z4Vy94AkV8Sxfcyc1+UyxcZ+mIjb401URjLzM8j8H0UenqQymSujqW2DHqGl8sNff7zn1dYQmP+H7UELmwn9u1LhQMDdxLTB4jonazUShFR8fN2244gAjFHRWFTqTTy+QK8qzU3BAgazUcPHn7+bbfddttLNEIv3n6sAEzavn379Oq+vq2i+YMs+BkAayGWbRiK5bjCAhERxZWGtUImm0UmGz8yXeuXC+YppdTtRHRFafNX0n4sAUzaiAh/+OnvL28a771Q/D4huYVEstZC2WiPC8fZGsSOhoqfNZHNZpDO5uCkvJdKduaNMW/wPO/QUt3DjzWAne3gwYMuyuWNjsN3MPE91srtRDRsjc1StLmOhcCsHSjtRLuKUilkslmkokfwXD7yD4QA3qe1/vpS9fs1ABdpIkIvfPvbfZxKbSPGHZbVbQTZAivLiFBkJo+Vw6QdUo4TPfbA9eClU/AyGSjPjYupX3hqa+0nXdf9D0vV19cAvEyLnRj6kUceSS3TQTFs8hqxwRom3iZMNzLzBlZ6kB2voBydUo6rteOSk/LIy+bgpqIHcVE71v1nDz/88AfvvYKdR1fSXgPwKlpUCBDuULGYb6bTA47COiu8iR21WbFew1qvIKX7tdY5N51yUpksa9edViZ8pzcwcEW10C7XXgNwaVvkldq/X50ENHp6Us1qNQMgT46TMlapdCbtmGZ1dOOuXWeW5ILX+o5/TFprnBMfLC2RP/T/B96QkmdPWpSQAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIzLTA3LTA3VDA5OjE5OjA4KzAwOjAwC8IICQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMy0wNy0wN1QwOToxOTowOCswMDowMHqfsLUAAAAodEVYdGRhdGU6dGltZXN0YW1wADIwMjMtMDctMDdUMDk6MTk6MDgrMDA6MDAtipFqAAAAHnRFWHRpY2M6Y29weXJpZ2h0AEdvb2dsZSBJbmMuIDIwMTasCzM4AAAAFHRFWHRpY2M6ZGVzY3JpcHRpb24Ac1JHQrqQcwcAAAAASUVORK5CYII=",protocol:"trader_joe_v2_1",slippage:!0,blockchains:["avalanche"],avalanche:{router:{address:"0xb4315e873dBcf96Ffd0acd8EA43f689D8c20fB30",api:qS.ROUTER},factory:{address:"0x8e42f2F4101563bF679975178e880FD87d3eFd4e",api:qS.FACTORY},pair:{api:qS.PAIR},quoter:{address:"0x64b57F4249aA99a812212cee7DAEFEDC40B203cD",api:qS.QUOTER}}};var JS=t=>new IL(Object.assign(ZS,{scope:t,findPath:t=>qS.findPath({...t,exchange:ZS}),pathExists:t=>qS.pathExists({...t,exchange:ZS}),getAmounts:t=>qS.getAmounts({...t,exchange:ZS}),getPrep:t=>qS.getPrep({...t,exchange:ZS}),getTransaction:t=>qS.getTransaction({...t,exchange:ZS})}));const XS={name:"uniswap_v2",label:"Uniswap v2",logo:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjQxIiBoZWlnaHQ9IjY0MCIgdmlld0JveD0iMCAwIDY0MSA2NDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0yMjQuNTM0IDEyMy4yMjZDMjE4LjY5MiAxMjIuMzIgMjE4LjQ0NSAxMjIuMjEzIDIyMS4xOTUgMTIxLjc5MUMyMjYuNDY0IDEyMC45OCAyMzguOTA1IDEyMi4wODUgMjQ3LjQ3OSAxMjQuMTIzQzI2Ny40OTQgMTI4Ljg4MSAyODUuNzA3IDE0MS4wNjkgMzA1LjE0OCAxNjIuNzE0TDMxMC4zMTMgMTY4LjQ2NUwzMTcuNzAxIDE2Ny4yNzdDMzQ4LjgyOCAxNjIuMjc1IDM4MC40OTMgMTY2LjI1IDQwNi45NzggMTc4LjQ4NUM0MTQuMjY0IDE4MS44NTEgNDI1Ljc1MiAxODguNTUyIDQyNy4xODcgMTkwLjI3NEM0MjcuNjQ1IDE5MC44MjIgNDI4LjQ4NSAxOTQuMzU1IDQyOS4wNTMgMTk4LjEyNEM0MzEuMDIgMjExLjE2NCA0MzAuMDM2IDIyMS4xNiA0MjYuMDQ3IDIyOC42MjVDNDIzLjg3NyAyMzIuNjg4IDQyMy43NTYgMjMzLjk3NSA0MjUuMjE1IDIzNy40NTJDNDI2LjM4IDI0MC4yMjcgNDI5LjYyNyAyNDIuMjggNDMyLjg0MyAyNDIuMjc2QzQzOS40MjUgMjQyLjI2NyA0NDYuNTA5IDIzMS42MjcgNDQ5Ljc5MSAyMTYuODIzTDQ1MS4wOTUgMjEwLjk0M0w0NTMuNjc4IDIxMy44NjhDNDY3Ljg0NiAyMjkuOTIgNDc4Ljk3NCAyNTEuODExIDQ4MC44ODUgMjY3LjM5M0w0ODEuMzgzIDI3MS40NTVMNDc5LjAwMiAyNjcuNzYyQzQ3NC45MDMgMjYxLjQwNyA0NzAuNzg1IDI1Ny4wOCA0NjUuNTEyIDI1My41OTFDNDU2LjAwNiAyNDcuMzAxIDQ0NS45NTUgMjQ1LjE2MSA0MTkuMzM3IDI0My43NThDMzk1LjI5NiAyNDIuNDkxIDM4MS42OSAyNDAuNDM4IDM2OC4xOTggMjM2LjAzOEMzNDUuMjQ0IDIyOC41NTQgMzMzLjY3MiAyMTguNTg3IDMwNi40MDUgMTgyLjgxMkMyOTQuMjk0IDE2Ni45MjMgMjg2LjgwOCAxNTguMTMxIDI3OS4zNjIgMTUxLjA1MUMyNjIuNDQyIDEzNC45NjQgMjQ1LjgxNiAxMjYuNTI3IDIyNC41MzQgMTIzLjIyNloiIGZpbGw9IiNGRjAwN0EiLz4KPHBhdGggZD0iTTQzMi42MSAxNTguNzA0QzQzMy4yMTUgMTQ4LjA1NyA0MzQuNjU5IDE0MS4wMzMgNDM3LjU2MiAxMzQuNjJDNDM4LjcxMSAxMzIuMDgxIDQzOS43ODggMTMwLjAwMyA0MzkuOTU0IDEzMC4wMDNDNDQwLjEyIDEzMC4wMDMgNDM5LjYyMSAxMzEuODc3IDQzOC44NDQgMTM0LjE2N0M0MzYuNzMzIDE0MC4zOTIgNDM2LjM4NyAxNDguOTA1IDQzNy44NCAxNTguODExQzQzOS42ODYgMTcxLjM3OSA0NDAuNzM1IDE3My4xOTIgNDU0LjAxOSAxODYuNzY5QzQ2MC4yNSAxOTMuMTM3IDQ2Ny40OTcgMjAxLjE2OCA0NzAuMTI0IDIwNC42MTZMNDc0LjkwMSAyMTAuODg2TDQ3MC4xMjQgMjA2LjQwNUM0NjQuMjgyIDIwMC45MjYgNDUwLjg0NyAxOTAuMjQgNDQ3Ljg3OSAxODguNzEyQzQ0NS44OSAxODcuNjg4IDQ0NS41OTQgMTg3LjcwNSA0NDQuMzY2IDE4OC45MjdDNDQzLjIzNSAxOTAuMDUzIDQ0Mi45OTcgMTkxLjc0NCA0NDIuODQgMTk5Ljc0MUM0NDIuNTk2IDIxMi4yMDQgNDQwLjg5NyAyMjAuMjA0IDQzNi43OTcgMjI4LjIwM0M0MzQuNTggMjMyLjUyOSA0MzQuMjMgMjMxLjYwNiA0MzYuMjM3IDIyNi43MjNDNDM3LjczNSAyMjMuMDc3IDQzNy44ODcgMjIxLjQ3NCA0MzcuODc2IDIwOS40MDhDNDM3Ljg1MyAxODUuMTY3IDQzNC45NzUgMTc5LjMzOSA0MTguMDk3IDE2OS4zNTVDNDEzLjgyMSAxNjYuODI2IDQwNi43NzYgMTYzLjE3OCA0MDIuNDQyIDE2MS4yNDlDMzk4LjEwNyAxNTkuMzIgMzk0LjY2NCAxNTcuNjM5IDM5NC43ODkgMTU3LjUxNEMzOTUuMjY3IDE1Ny4wMzggNDExLjcyNyAxNjEuODQyIDQxOC4zNTIgMTY0LjM5QzQyOC4yMDYgMTY4LjE4MSA0MjkuODMzIDE2OC42NzIgNDMxLjAzIDE2OC4yMTVDNDMxLjgzMiAxNjcuOTA5IDQzMi4yMiAxNjUuNTcyIDQzMi42MSAxNTguNzA0WiIgZmlsbD0iI0ZGMDA3QSIvPgo8cGF0aCBkPSJNMjM1Ljg4MyAyMDAuMTc1QzIyNC4wMjIgMTgzLjg0NiAyMTYuNjg0IDE1OC44MDkgMjE4LjI3MiAxNDAuMDkzTDIxOC43NjQgMTM0LjMwMUwyMjEuNDYzIDEzNC43OTRDMjI2LjUzNCAxMzUuNzE5IDIzNS4yNzUgMTM4Ljk3MyAyMzkuMzY5IDE0MS40NTlDMjUwLjYwMiAxNDguMjgxIDI1NS40NjUgMTU3LjI2MyAyNjAuNDEzIDE4MC4zMjhDMjYxLjg2MiAxODcuMDgzIDI2My43NjMgMTk0LjcyOCAyNjQuNjM4IDE5Ny4zMTdDMjY2LjA0NyAyMDEuNDgzIDI3MS4zNjkgMjExLjIxNCAyNzUuNjk2IDIxNy41MzRDMjc4LjgxMyAyMjIuMDg1IDI3Ni43NDMgMjI0LjI0MiAyNjkuODUzIDIyMy42MkMyNTkuMzMxIDIyMi42NyAyNDUuMDc4IDIxMi44MzQgMjM1Ljg4MyAyMDAuMTc1WiIgZmlsbD0iI0ZGMDA3QSIvPgo8cGF0aCBkPSJNNDE4LjIyMyAzMjEuNzA3QzM2Mi43OTMgMjk5LjM4OSAzNDMuMjcxIDI4MC4wMTcgMzQzLjI3MSAyNDcuMzMxQzM0My4yNzEgMjQyLjUyMSAzNDMuNDM3IDIzOC41ODUgMzQzLjYzOCAyMzguNTg1QzM0My44NCAyMzguNTg1IDM0NS45ODUgMjQwLjE3MyAzNDguNDA0IDI0Mi4xMTNDMzU5LjY0NCAyNTEuMTI4IDM3Mi4yMzEgMjU0Ljk3OSA0MDcuMDc2IDI2MC4wNjJDNDI3LjU4IDI2My4wNTQgNDM5LjExOSAyNjUuNDcgNDQ5Ljc2MyAyNjlDNDgzLjU5NSAyODAuMjIgNTA0LjUyNyAzMDIuOTkgNTA5LjUxOCAzMzQuMDA0QzUxMC45NjkgMzQzLjAxNiA1MTAuMTE4IDM1OS45MTUgNTA3Ljc2NiAzNjguODIyQzUwNS45MSAzNzUuODU3IDUwMC4yNDUgMzg4LjUzNyA0OTguNzQyIDM4OS4wMjNDNDk4LjMyNSAzODkuMTU4IDQ5Ny45MTcgMzg3LjU2MiA0OTcuODEgMzg1LjM4OUM0OTcuMjQgMzczLjc0NCA0OTEuMzU1IDM2Mi40MDYgNDgxLjQ3MiAzNTMuOTEzQzQ3MC4yMzUgMzQ0LjI1NyA0NTUuMTM3IDMzNi41NjkgNDE4LjIyMyAzMjEuNzA3WiIgZmlsbD0iI0ZGMDA3QSIvPgo8cGF0aCBkPSJNMzc5LjMxIDMzMC45NzhDMzc4LjYxNSAzMjYuODQ2IDM3Ny40MTEgMzIxLjU2OCAzNzYuNjMzIDMxOS4yNUwzNzUuMjE5IDMxNS4wMzZMMzc3Ljg0NiAzMTcuOTg1QzM4MS40ODEgMzIyLjA2NSAzODQuMzU0IDMyNy4yODcgMzg2Ljc4OSAzMzQuMjQxQzM4OC42NDcgMzM5LjU0OSAzODguODU2IDM0MS4xMjcgMzg4Ljg0MiAzNDkuNzUzQzM4OC44MjggMzU4LjIyMSAzODguNTk2IDM1OS45OTYgMzg2Ljg4IDM2NC43NzNDMzg0LjE3NCAzNzIuMzA3IDM4MC44MTYgMzc3LjY0OSAzNzUuMTgxIDM4My4zODNDMzY1LjA1NiAzOTMuNjg4IDM1Mi4wMzggMzk5LjM5MyAzMzMuMjUzIDQwMS43NkMzMjkuOTg3IDQwMi4xNzEgMzIwLjQ3IDQwMi44NjQgMzEyLjEwMyA0MDMuMjk5QzI5MS4wMTYgNDA0LjM5NSAyNzcuMTM4IDQwNi42NjEgMjY0LjY2OCA0MTEuMDRDMjYyLjg3NSA0MTEuNjcgMjYxLjI3NCA0MTIuMDUyIDI2MS4xMTIgNDExLjg5QzI2MC42MDcgNDExLjM4OCAyNjkuMDk4IDQwNi4zMjYgMjc2LjExMSA0MDIuOTQ4QzI4NS45OTkgMzk4LjE4NSAyOTUuODQyIDM5NS41ODYgMzE3Ljg5NyAzOTEuOTEzQzMyOC43OTIgMzkwLjA5OCAzNDAuMDQzIDM4Ny44OTcgMzQyLjkgMzg3LjAyMUMzNjkuODggMzc4Ljc0OSAzODMuNzQ4IDM1Ny40MDIgMzc5LjMxIDMzMC45NzhaIiBmaWxsPSIjRkYwMDdBIi8+CjxwYXRoIGQ9Ik00MDQuNzE5IDM3Ni4xMDVDMzk3LjM1NSAzNjAuMjczIDM5NS42NjQgMzQ0Ljk4OCAzOTkuNjk4IDMzMC43MzJDNDAwLjEzIDMyOS4yMDkgNDAwLjgyNCAzMjcuOTYyIDQwMS4yNDIgMzI3Ljk2MkM0MDEuNjU5IDMyNy45NjIgNDAzLjM5NyAzMjguOTAyIDQwNS4xMDMgMzMwLjA1QzQwOC40OTcgMzMyLjMzNSA0MTUuMzAzIDMzNi4xODIgNDMzLjQzNyAzNDYuMDY5QzQ1Ni4wNjUgMzU4LjQwNiA0NjguOTY2IDM2Ny45NTkgNDc3Ljc0IDM3OC44NzNDNDg1LjQyMyAzODguNDMyIDQ5MC4xNzggMzk5LjMxOCA0OTIuNDY3IDQxMi41OTNDNDkzLjc2MiA0MjAuMTEzIDQ5My4wMDMgNDM4LjIwNiA0OTEuMDc0IDQ0NS43NzhDNDg0Ljk5IDQ2OS42NTMgNDcwLjg1IDQ4OC40MDYgNDUwLjY4MiA0OTkuMzQ5QzQ0Ny43MjcgNTAwLjk1MiA0NDUuMDc1IDUwMi4yNjkgNDQ0Ljc4OCA1MDIuMjc1QzQ0NC41MDEgNTAyLjI4IDQ0NS41NzcgNDk5LjU0MyA0NDcuMTggNDk2LjE5MUM0NTMuOTY1IDQ4Mi4wMDkgNDU0LjczNyA0NjguMjE0IDQ0OS42MDggNDUyLjg1OUM0NDYuNDY3IDQ0My40NTcgNDQwLjA2NCA0MzEuOTg1IDQyNy4xMzUgNDEyLjU5NkM0MTIuMTAzIDM5MC4wNTQgNDA4LjQxNyAzODQuMDU0IDQwNC43MTkgMzc2LjEwNVoiIGZpbGw9IiNGRjAwN0EiLz4KPHBhdGggZD0iTTE5Ni41MTkgNDYxLjUyNUMyMTcuMDg5IDQ0NC4xNTcgMjQyLjY4MiA0MzEuODE5IDI2NS45OTYgNDI4LjAzMkMyNzYuMDQzIDQyNi4zOTkgMjkyLjc4IDQyNy4wNDcgMzAyLjA4NCA0MjkuNDI4QzMxNi45OTggNDMzLjI0NSAzMzAuMzM4IDQ0MS43OTMgMzM3LjI3NiA0NTEuOTc4QzM0NC4wNTcgNDYxLjkzMiAzNDYuOTY2IDQ3MC42MDYgMzQ5Ljk5NSA0ODkuOTA2QzM1MS4xODkgNDk3LjUxOSAzNTIuNDg5IDUwNS4xNjQgMzUyLjg4MiA1MDYuODk1QzM1NS4xNTYgNTE2Ljg5NyAzNTkuNTgzIDUyNC44OTIgMzY1LjA2NyA1MjguOTA3QzM3My43NzkgNTM1LjI4MyAzODguNzggNTM1LjY4IDQwMy41MzYgNTI5LjkyNEM0MDYuMDQxIDUyOC45NDcgNDA4LjIxNSA1MjguMjcxIDQwOC4zNjggNTI4LjQyNEM0MDguOTAzIDUyOC45NTUgNDAxLjQ3MyA1MzMuOTMgMzk2LjIzIDUzNi41NDhDMzg5LjE3NyA1NDAuMDcxIDM4My41NjggNTQxLjQzNCAzNzYuMTE1IDU0MS40MzRDMzYyLjYgNTQxLjQzNCAzNTEuMzc5IDUzNC41NTggMzQyLjAxNiA1MjAuNTM5QzM0MC4xNzQgNTE3Ljc4IDMzNi4wMzIgNTA5LjUxNiAzMzIuODEzIDUwMi4xNzZDMzIyLjkyOCA0NzkuNjI4IDMxOC4wNDYgNDcyLjc1OSAzMDYuNTY4IDQ2NS4yNDJDMjk2LjU3OSA0NTguNzAxIDI4My42OTcgNDU3LjUzIDI3NC4wMDYgNDYyLjI4MkMyNjEuMjc2IDQ2OC41MjMgMjU3LjcyNCA0ODQuNzkxIDI2Ni44NDIgNDk1LjEwMUMyNzAuNDY1IDQ5OS4xOTggMjc3LjIyMyA1MDIuNzMyIDI4Mi43NDkgNTAzLjQxOUMyOTMuMDg2IDUwNC43MDUgMzAxLjk3IDQ5Ni44NDEgMzAxLjk3IDQ4Ni40MDRDMzAxLjk3IDQ3OS42MjcgMjk5LjM2NSA0NzUuNzYgMjkyLjgwOCA0NzIuODAxQzI4My44NTIgNDY4Ljc2IDI3NC4yMjYgNDczLjQ4MyAyNzQuMjcyIDQ4MS44OTdDMjc0LjI5MiA0ODUuNDg0IDI3NS44NTQgNDg3LjczNyAyNzkuNDUgNDg5LjM2NEMyODEuNzU3IDQ5MC40MDggMjgxLjgxMSA0OTAuNDkxIDI3OS45MjkgNDkwLjFDMjcxLjcxMiA0ODguMzk2IDI2OS43ODcgNDc4LjQ5IDI3Ni4zOTQgNDcxLjkxM0MyODQuMzI2IDQ2NC4wMTggMzAwLjcyOSA0NjcuNTAyIDMwNi4zNjIgNDc4LjI3OUMzMDguNzI4IDQ4Mi44MDUgMzA5LjAwMyA0OTEuODIgMzA2Ljk0IDQ5Ny4yNjRDMzAyLjMyMiA1MDkuNDQ4IDI4OC44NTkgNTE1Ljg1NSAyNzUuMjAxIDUxMi4zNjhDMjY1LjkwMyA1MDkuOTk0IDI2Mi4xMTcgNTA3LjQyNCAyNTAuOTA2IDQ5NS44NzZDMjMxLjQyNSA0NzUuODA5IDIyMy44NjIgNDcxLjkyIDE5NS43NzcgNDY3LjUzNkwxOTAuMzk1IDQ2Ni42OTZMMTk2LjUxOSA0NjEuNTI1WiIgZmlsbD0iI0ZGMDA3QSIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTQ5LjYyMDIgMTIuMDAzMUMxMTQuNjc4IDkwLjk2MzggMjE0Ljk3NyAyMTMuOTAxIDIxOS45NTcgMjIwLjc4NEMyMjQuMDY4IDIyNi40NjcgMjIyLjUyMSAyMzEuNTc2IDIxNS40NzggMjM1LjU4QzIxMS41NjEgMjM3LjgwNyAyMDMuNTA4IDI0MC4wNjMgMTk5LjQ3NiAyNDAuMDYzQzE5NC45MTYgMjQwLjA2MyAxODkuNzc5IDIzNy44NjcgMTg2LjAzOCAyMzQuMzE4QzE4My4zOTMgMjMxLjgxIDE3Mi43MjEgMjE1Ljg3NCAxNDguMDg0IDE3Ny42NDZDMTI5LjIzMyAxNDguMzk2IDExMy40NTcgMTI0LjEzMSAxMTMuMDI3IDEyMy43MjVDMTEyLjAzMiAxMjIuNzg1IDExMi4wNDkgMTIyLjgxNyAxNDYuMTYyIDE4My44NTRDMTY3LjU4MiAyMjIuMTgxIDE3NC44MTMgMjM1LjczMSAxNzQuODEzIDIzNy41NDNDMTc0LjgxMyAyNDEuMjI5IDE3My44MDggMjQzLjE2NiAxNjkuMjYxIDI0OC4yMzhDMTYxLjY4MSAyNTYuNjk0IDE1OC4yOTMgMjY2LjE5NSAxNTUuODQ3IDI4NS44NTlDMTUzLjEwNCAzMDcuOTAyIDE0NS4zOTQgMzIzLjQ3MyAxMjQuMDI2IDM1MC4xMjJDMTExLjUxOCAzNjUuNzIyIDEwOS40NzEgMzY4LjU4MSAxMDYuMzE1IDM3NC44NjlDMTAyLjMzOSAzODIuNzg2IDEwMS4yNDYgMzg3LjIyMSAxMDAuODAzIDM5Ny4yMTlDMTAwLjMzNSA0MDcuNzkgMTAxLjI0NyA0MTQuNjE5IDEwNC40NzcgNDI0LjcyNkMxMDcuMzA0IDQzMy41NzUgMTEwLjI1NSA0MzkuNDE3IDExNy44IDQ1MS4xMDRDMTI0LjMxMSA0NjEuMTg4IDEyOC4wNjEgNDY4LjY4MyAxMjguMDYxIDQ3MS42MTRDMTI4LjA2MSA0NzMuOTQ3IDEyOC41MDYgNDczLjk1IDEzOC41OTYgNDcxLjY3MkMxNjIuNzQxIDQ2Ni4yMTkgMTgyLjM0OCA0NTYuNjI5IDE5My4zNzUgNDQ0Ljg3N0MyMDAuMTk5IDQzNy42MDMgMjAxLjgwMSA0MzMuNTg2IDIwMS44NTMgNDIzLjYxOEMyMDEuODg3IDQxNy4wOTggMjAxLjY1OCA0MTUuNzMzIDE5OS44OTYgNDExLjk4MkMxOTcuMDI3IDQwNS44NzcgMTkxLjgwNCA0MDAuODAxIDE4MC4yOTIgMzkyLjkzMkMxNjUuMjA5IDM4Mi42MjEgMTU4Ljc2NyAzNzQuMzIgMTU2Ljk4NyAzNjIuOTA0QzE1NS41MjcgMzUzLjUzNyAxNTcuMjIxIDM0Ni45MjggMTY1LjU2NSAzMjkuNDRDMTc0LjIwMiAzMTEuMzM4IDE3Ni4zNDIgMzAzLjYyNCAxNzcuNzkgMjg1LjM3OEMxNzguNzI1IDI3My41ODkgMTgwLjAyIDI2OC45NCAxODMuNDA3IDI2NS4yMDlDMTg2LjkzOSAyNjEuMzE3IDE5MC4xMTkgMjYwIDE5OC44NjEgMjU4LjgwNUMyMTMuMTEzIDI1Ni44NTggMjIyLjE4OCAyNTMuMTcxIDIyOS42NDggMjQ2LjI5N0MyMzYuMTE5IDI0MC4zMzQgMjM4LjgyNyAyMzQuNTg4IDIzOS4yNDMgMjI1LjkzOEwyMzkuNTU4IDIxOS4zODJMMjM1Ljk0MiAyMTUuMTY2QzIyMi44NDYgMTk5Ljg5NiA0MC44NSAwIDQwLjA0NCAwQzM5Ljg3MTkgMCA0NC4xODEzIDUuNDAxNzggNDkuNjIwMiAxMi4wMDMxWk0xMzUuNDEyIDQwOS4xOEMxMzguMzczIDQwMy45MzcgMTM2LjggMzk3LjE5NSAxMzEuODQ3IDM5My45MDJDMTI3LjE2NyAzOTAuNzkgMTE5Ljg5NyAzOTIuMjU2IDExOS44OTcgMzk2LjMxMUMxMTkuODk3IDM5Ny41NDggMTIwLjU4MiAzOTguNDQ5IDEyMi4xMjQgMzk5LjI0M0MxMjQuNzIgNDAwLjU3OSAxMjQuOTA5IDQwMi4wODEgMTIyLjg2NiA0MDUuMTUyQzEyMC43OTcgNDA4LjI2MiAxMjAuOTY0IDQxMC45OTYgMTIzLjMzNyA0MTIuODU0QzEyNy4xNjIgNDE1Ljg0OSAxMzIuNTc2IDQxNC4yMDIgMTM1LjQxMiA0MDkuMThaIiBmaWxsPSIjRkYwMDdBIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQ4LjU1MiAyNjIuMjQ0QzI0MS44NjIgMjY0LjI5OSAyMzUuMzU4IDI3MS4zOSAyMzMuMzQ0IDI3OC44MjZDMjMyLjExNiAyODMuMzYyIDIzMi44MTMgMjkxLjMxOSAyMzQuNjUzIDI5My43NzZDMjM3LjYyNSAyOTcuNzQ1IDI0MC40OTkgMjk4Ljc5MSAyNDguMjgyIDI5OC43MzZDMjYzLjUxOCAyOTguNjMgMjc2Ljc2NCAyOTIuMDk1IDI3OC4zMDQgMjgzLjkyNUMyNzkuNTY3IDI3Ny4yMjkgMjczLjc0OSAyNjcuOTQ4IDI2NS43MzYgMjYzLjg3NEMyNjEuNjAxIDI2MS43NzIgMjUyLjgwNyAyNjAuOTM4IDI0OC41NTIgMjYyLjI0NFpNMjY2LjM2NCAyNzYuMTcyQzI2OC43MTQgMjcyLjgzNCAyNjcuNjg2IDI2OS4yMjUgMjYzLjY5IDI2Ni43ODVDMjU2LjA4IDI2Mi4xMzggMjQ0LjU3MSAyNjUuOTgzIDI0NC41NzEgMjczLjE3M0MyNDQuNTcxIDI3Ni43NTIgMjUwLjU3MiAyODAuNjU2IDI1Ni4wNzQgMjgwLjY1NkMyNTkuNzM1IDI4MC42NTYgMjY0Ljc0NiAyNzguNDczIDI2Ni4zNjQgMjc2LjE3MloiIGZpbGw9IiNGRjAwN0EiLz4KPC9zdmc+Cg==",protocol:"uniswap_v2",slippage:!0,blockchains:["ethereum"],ethereum:{router:{address:"0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D",api:SL.ROUTER},factory:{address:"0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f",api:SL.FACTORY},pair:{api:SL.PAIR}}};var KS=t=>new IL(Object.assign(XS,{scope:t,findPath:t=>SL.findPath({...t,exchange:XS}),pathExists:t=>SL.pathExists({...t,exchange:XS}),getAmounts:t=>SL.getAmounts({...t,exchange:XS}),getPrep:t=>SL.getPrep({...t,exchange:XS}),getTransaction:t=>SL.getTransaction({...t,exchange:XS})}));function $S(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}const tj="0x0000000000000000000000000000000000000001",ej="0x0000000000000000000000000000000000000002",nj=({blockchain:t,exchange:e,path:n})=>{if(!n)return;let r=n.map(((e,r)=>e===Hf[t].currency.address&&n[r+1]!=Hf[t].wrapped.address&&n[r-1]!=Hf[t].wrapped.address?Hf[t].wrapped.address:e));return r[0]==Hf[t].currency.address&&r[1]==Hf[t].wrapped.address?r.splice(0,1):r[r.length-1]==Hf[t].currency.address&&r[r.length-2]==Hf[t].wrapped.address&&r.splice(r.length-1,1),r},rj=async({exchange:t,pool:e,outputAmount:n})=>(await PI({blockchain:e.blockchain,address:t[e.blockchain].quoter.address,api:t[e.blockchain].quoter.api,method:"quoteExactOutput",params:{path:oI(["address","uint24","address"],[e.path[1],e.fee,e.path[0]]),amountOut:n},cache:5})).amountIn,ij=async({exchange:t,pool:e,inputAmount:n})=>(await PI({blockchain:e.blockchain,address:t[e.blockchain].quoter.address,api:t[e.blockchain].quoter.api,method:"quoteExactInput",params:{path:oI(["address","uint24","address"],[e.path[0],e.fee,e.path[1]]),amountIn:n},cache:5})).amountOut,oj=async({blockchain:t,exchange:e,path:n,amountIn:r,amountOut:i,block:o})=>{if((n=nj({blockchain:t,exchange:e,path:n})).length>2)throw"Uniswap V3 can only check paths for up to 2 tokens!";try{let o=(await Promise.all(e.fees.map((r=>PI({blockchain:Hf[t].name,address:e[t].factory.address,method:"getPool",api:e[t].factory.api,cache:3600,params:[n[0],n[1],r]}).then((e=>({blockchain:t,address:e,path:n,fee:r,token0:[...n].sort()[0],token1:[...n].sort()[1]}))).catch((()=>{})))))).filter(Boolean);return o=o.filter((e=>e.address!=Hf[t].zero)),o=(await Promise.all(o.map((async t=>{try{let n;if(r){n=await ij({exchange:e,pool:t,inputAmount:r});const i=await ij({exchange:e,pool:t,inputAmount:Fp.from(r).mul(Fp.from(10)).toString()}),o=i.div(Fp.from(10)).sub(n).abs();if(!!o.gt(n.div(Fp.from(100)).mul(Fp.from(5))))return}else{n=await rj({exchange:e,pool:t,outputAmount:i});const r=await rj({exchange:e,pool:t,outputAmount:Fp.from(i).mul(Fp.from(10)).toString()}),o=r.div(Fp.from(10)).sub(n).abs();if(!!o.gt(n.div(Fp.from(100)).mul(Fp.from(5))))return}return{...t,amountIn:r||n,amountOut:i||n}}catch(t){}})))).filter(Boolean),r?o.sort(((t,e)=>e.amountOut.gt(t.amountOut)?1:-1))[0]:o.sort(((t,e)=>e.amountIn.lt(t.amountIn)?1:-1))[0]}catch(t){return}};let aj=({blockchain:t,exchange:e,path:n,pools:r,amountIn:i})=>r[r.length-1].amountOut,sj=async({blockchain:t,exchange:e,path:n,pools:r,amountOut:i,block:o})=>{if(void 0===o)return r[0].amountIn;{let n;2==r.length?n=oI(["address","uint24","address","uint24","address"],[r[1].path[1],r[1].fee,r[0].path[1],r[0].fee,r[0].path[0]]):1==r.length&&(n=oI(["address","uint24","address"],[r[0].path[1],r[0].fee,r[0].path[0]]));return(await PI({block:o,blockchain:t,address:e[t].quoter.address,api:e[t].quoter.api,method:"quoteExactOutput",params:{path:n,amountOut:i}})).amountIn}};var uj={findPath:async({blockchain:t,exchange:e,tokenIn:n,tokenOut:r,amountIn:i,amountOut:o,amountInMax:a,amountOutMin:s})=>{if([n,r].includes(Hf[t].currency.address)&&[n,r].includes(Hf[t].wrapped.address))return{path:void 0,exchangePath:void 0};let u,c=[];if(c=[await oj({exchange:e,blockchain:t,path:[n,r],amountIn:i||a,amountOut:o||s})],c.filter(Boolean).length&&(u=[n,r]),u||n==Hf[t].wrapped.address||r==Hf[t].wrapped.address||(c=[],o||s?(c.push(await oj({exchange:e,blockchain:t,path:[Hf[t].wrapped.address,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await oj({exchange:e,blockchain:t,path:[n,Hf[t].wrapped.address],amountOut:c[0].amountIn}))):(c.push(await oj({exchange:e,blockchain:t,path:[n,Hf[t].wrapped.address],amountIn:i||a})),c.filter(Boolean).length&&c.push(await oj({exchange:e,blockchain:t,path:[Hf[t].wrapped.address,r],amountIn:c[0].amountOut}))),2===c.filter(Boolean).length&&(u=[n,Hf[t].wrapped.address,r])),!u){c=[];let l=(await Promise.all(Hf[t].stables.usd.map((async u=>{let c=[];if(o||s?(c.push(await oj({exchange:e,blockchain:t,path:[u,r],amountOut:o||s})),c.filter(Boolean).length&&c.unshift(await oj({exchange:e,blockchain:t,path:[n,u],amountOut:c[0].amountIn}))):(c.push(await oj({exchange:e,blockchain:t,path:[n,u],amountIn:i||a})),c.filter(Boolean).length&&c.push(await oj({exchange:e,blockchain:t,path:[u,r],amountIn:c[0].amountOut}))),2===c.filter(Boolean).length)return[u,c]})))).filter(Boolean)[0];l&&(u=[n,l[0],r],c=l[1])}return $S([u,"optionalAccess",t=>t.length])&&u[0]==Hf[t].currency.address?u.splice(1,0,Hf[t].wrapped.address):$S([u,"optionalAccess",t=>t.length])&&u[u.length-1]==Hf[t].currency.address&&u.splice(u.length-1,0,Hf[t].wrapped.address),u||(c=[]),{path:u,pools:c,exchangePath:nj({blockchain:t,exchange:e,path:u})}},pathExists:async({blockchain:t,exchange:e,path:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a})=>{try{return!!await oj({blockchain:t,exchange:e,path:n,amountIn:r||o,amountOut:i||a})}catch(t){return!1}},getAmounts:async({blockchain:t,exchange:e,path:n,pools:r,block:i,tokenIn:o,tokenOut:a,amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l})=>{if(s){if(null==(u=await sj({blockchain:t,exchange:e,block:i,path:n,pools:r,amountOut:s,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(u){if(null==(s=await aj({blockchain:t,exchange:e,path:n,pools:r,amountIn:u,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}else if(l){if(null==(u=await sj({blockchain:t,exchange:e,block:i,path:n,pools:r,amountOut:l,tokenIn:o,tokenOut:a}))||c&&u.gt(c))return{};void 0===c&&(c=u)}else if(c){if(null==(s=await aj({blockchain:t,exchange:e,path:n,pools:r,amountIn:c,tokenIn:o,tokenOut:a}))||l&&s.lt(l))return{};void 0===l&&(l=s)}return{amountOut:s,amountIn:u,amountInMax:c,amountOutMin:l}},getPrep:async({exchange:t,blockchain:e,tokenIn:n,amountIn:r,account:i})=>{if(n===Hf[e].currency.address)return;if((await PI({blockchain:e,address:n,method:"allowance",api:Tk[e][20],params:[i,t[e].permit.address]})).lt(r)){return{transaction:{blockchain:e,from:i,to:n,api:Tk[e][20],method:"approve",params:[t[e].permit.address,Hf[e].maxInt]}}}{const o=await PI({blockchain:e,address:t[e].permit.address,method:"allowance",api:t[e].permit.api,params:[i,n,t[e].router.address]});if(o.amount.lt(r)||o.expiration-1800<Math.floor(Date.now()/1e3)){const r=Math.floor(Date.now()/1e3)+2592e3;return{signature:{types:{Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],PermitSingle:[{name:"details",type:"PermitDetails"},{name:"spender",type:"address"},{name:"sigDeadline",type:"uint256"}],PermitDetails:[{name:"token",type:"address"},{name:"amount",type:"uint160"},{name:"expiration",type:"uint48"},{name:"nonce",type:"uint48"}]},primaryType:"PermitSingle",domain:{chainId:Hf[e].networkId,name:"Permit2",verifyingContract:t[e].permit.address,version:"1"},message:{details:{token:n,amount:"1461501637330902918203684832716283019655932542975",expiration:r,nonce:o.nonce},spender:t[e].router.address,sigDeadline:r}}}}}},getTransaction:async({blockchain:t,exchange:e,pools:n,path:r,amountIn:i,amountInMax:o,amountOut:a,amountOutMin:s,amountInInput:u,amountOutInput:c,amountInMaxInput:l,amountOutMinInput:h,account:d,permit2:f,inputTokenPushed:p})=>{let y,m=[],g=[],v="0";if(f){const t=Tp(f.signature).length;let e;65!==t&&64!==t||(e=function(t){return Cp(Lp([(t=Rp(t)).r,t.s,t.recoveryParam?"0x1c":"0x1b"]))}(Rp(f.signature))),m.push("0a"),g.push(_m.encode(["((address token,uint160 amount,uint48 expiration,uint48 nonce) details,address spender,uint256 sigDeadline)","bytes"],[f,e]))}r[0]===Hf[t].currency.address&&(m.push("0b"),g.push(_m.encode(["address","uint256"],[ej,(i||o).toString()])),v=(i||o).toString()),1===n.length?y=oI(["address","uint24","address"],[n[0].path[0],n[0].fee,n[0].path[1]]):2===n.length&&(y=oI(["address","uint24","address","uint24","address"],[n[0].path[0],n[0].fee,n[0].path[1],n[1].fee,n[1].path[1]])),h||u?(m.push("00"),g.push(_m.encode(["address","uint256","uint256","bytes","bool"],[r[r.length-1]===Hf[t].currency.address?ej:tj,(i||o).toString(),(a||s).toString(),y,r[0]!==Hf[t].currency.address&&!p]))):(m.push("01"),g.push(_m.encode(["address","uint256","uint256","bytes","bool"],[r[r.length-1]===Hf[t].currency.address?ej:tj,(a||s).toString(),(i||o).toString(),y,r[0]!==Hf[t].currency.address&&!p]))),r[r.length-1]===Hf[t].currency.address&&(m.push("0c"),g.push(_m.encode(["address","uint256"],[tj,(a||s).toString()])));return{blockchain:t,from:d,to:e[t].router.address,api:e[t].router.api,method:"execute",params:{commands:`0x${m.join("")}`,inputs:g},value:v}},ROUTER:[{inputs:[{components:[{internalType:"address",name:"permit2",type:"address"},{internalType:"address",name:"weth9",type:"address"},{internalType:"address",name:"seaportV1_5",type:"address"},{internalType:"address",name:"seaportV1_4",type:"address"},{internalType:"address",name:"openseaConduit",type:"address"},{internalType:"address",name:"nftxZap",type:"address"},{internalType:"address",name:"x2y2",type:"address"},{internalType:"address",name:"foundation",type:"address"},{internalType:"address",name:"sudoswap",type:"address"},{internalType:"address",name:"elementMarket",type:"address"},{internalType:"address",name:"nft20Zap",type:"address"},{internalType:"address",name:"cryptopunks",type:"address"},{internalType:"address",name:"looksRareV2",type:"address"},{internalType:"address",name:"routerRewardsDistributor",type:"address"},{internalType:"address",name:"looksRareRewardsDistributor",type:"address"},{internalType:"address",name:"looksRareToken",type:"address"},{internalType:"address",name:"v2Factory",type:"address"},{internalType:"address",name:"v3Factory",type:"address"},{internalType:"bytes32",name:"pairInitCodeHash",type:"bytes32"},{internalType:"bytes32",name:"poolInitCodeHash",type:"bytes32"}],internalType:"struct RouterParameters",name:"params",type:"tuple"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"BalanceTooLow",type:"error"},{inputs:[],name:"BuyPunkFailed",type:"error"},{inputs:[],name:"ContractLocked",type:"error"},{inputs:[],name:"ETHNotAccepted",type:"error"},{inputs:[{internalType:"uint256",name:"commandIndex",type:"uint256"},{internalType:"bytes",name:"message",type:"bytes"}],name:"ExecutionFailed",type:"error"},{inputs:[],name:"FromAddressIsNotOwner",type:"error"},{inputs:[],name:"InsufficientETH",type:"error"},{inputs:[],name:"InsufficientToken",type:"error"},{inputs:[],name:"InvalidBips",type:"error"},{inputs:[{internalType:"uint256",name:"commandType",type:"uint256"}],name:"InvalidCommandType",type:"error"},{inputs:[],name:"InvalidOwnerERC1155",type:"error"},{inputs:[],name:"InvalidOwnerERC721",type:"error"},{inputs:[],name:"InvalidPath",type:"error"},{inputs:[],name:"InvalidReserves",type:"error"},{inputs:[],name:"InvalidSpender",type:"error"},{inputs:[],name:"LengthMismatch",type:"error"},{inputs:[],name:"SliceOutOfBounds",type:"error"},{inputs:[],name:"TransactionDeadlinePassed",type:"error"},{inputs:[],name:"UnableToClaim",type:"error"},{inputs:[],name:"UnsafeCast",type:"error"},{inputs:[],name:"V2InvalidPath",type:"error"},{inputs:[],name:"V2TooLittleReceived",type:"error"},{inputs:[],name:"V2TooMuchRequested",type:"error"},{inputs:[],name:"V3InvalidAmountOut",type:"error"},{inputs:[],name:"V3InvalidCaller",type:"error"},{inputs:[],name:"V3InvalidSwap",type:"error"},{inputs:[],name:"V3TooLittleReceived",type:"error"},{inputs:[],name:"V3TooMuchRequested",type:"error"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"RewardsSent",type:"event"},{inputs:[{internalType:"bytes",name:"looksRareClaim",type:"bytes"}],name:"collectRewards",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"commands",type:"bytes"},{internalType:"bytes[]",name:"inputs",type:"bytes[]"}],name:"execute",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes",name:"commands",type:"bytes"},{internalType:"bytes[]",name:"inputs",type:"bytes[]"},{internalType:"uint256",name:"deadline",type:"uint256"}],name:"execute",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256[]",name:"",type:"uint256[]"},{internalType:"uint256[]",name:"",type:"uint256[]"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC1155BatchReceived",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC1155Received",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"bytes",name:"",type:"bytes"}],name:"onERC721Received",outputs:[{internalType:"bytes4",name:"",type:"bytes4"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"pure",type:"function"},{inputs:[{internalType:"int256",name:"amount0Delta",type:"int256"},{internalType:"int256",name:"amount1Delta",type:"int256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"uniswapV3SwapCallback",outputs:[],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}],FACTORY:[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"uint24",name:"fee",type:"uint24"},{indexed:!0,internalType:"int24",name:"tickSpacing",type:"int24"}],name:"FeeAmountEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnerChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"token0",type:"address"},{indexed:!0,internalType:"address",name:"token1",type:"address"},{indexed:!0,internalType:"uint24",name:"fee",type:"uint24"},{indexed:!1,internalType:"int24",name:"tickSpacing",type:"int24"},{indexed:!1,internalType:"address",name:"pool",type:"address"}],name:"PoolCreated",type:"event"},{inputs:[{internalType:"address",name:"tokenA",type:"address"},{internalType:"address",name:"tokenB",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"}],name:"createPool",outputs:[{internalType:"address",name:"pool",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"int24",name:"tickSpacing",type:"int24"}],name:"enableFeeAmount",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint24",name:"",type:"uint24"}],name:"feeAmountTickSpacing",outputs:[{internalType:"int24",name:"",type:"int24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"uint24",name:"",type:"uint24"}],name:"getPool",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"parameters",outputs:[{internalType:"address",name:"factory",type:"address"},{internalType:"address",name:"token0",type:"address"},{internalType:"address",name:"token1",type:"address"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"int24",name:"tickSpacing",type:"int24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_owner",type:"address"}],name:"setOwner",outputs:[],stateMutability:"nonpayable",type:"function"}],POOL:[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount",type:"uint128"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"}],name:"Burn",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"address",name:"recipient",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount0",type:"uint128"},{indexed:!1,internalType:"uint128",name:"amount1",type:"uint128"}],name:"Collect",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"uint128",name:"amount0",type:"uint128"},{indexed:!1,internalType:"uint128",name:"amount1",type:"uint128"}],name:"CollectProtocol",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"},{indexed:!1,internalType:"uint256",name:"paid0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"paid1",type:"uint256"}],name:"Flash",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint16",name:"observationCardinalityNextOld",type:"uint16"},{indexed:!1,internalType:"uint16",name:"observationCardinalityNextNew",type:"uint16"}],name:"IncreaseObservationCardinalityNext",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{indexed:!1,internalType:"int24",name:"tick",type:"int24"}],name:"Initialize",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"int24",name:"tickLower",type:"int24"},{indexed:!0,internalType:"int24",name:"tickUpper",type:"int24"},{indexed:!1,internalType:"uint128",name:"amount",type:"uint128"},{indexed:!1,internalType:"uint256",name:"amount0",type:"uint256"},{indexed:!1,internalType:"uint256",name:"amount1",type:"uint256"}],name:"Mint",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint8",name:"feeProtocol0Old",type:"uint8"},{indexed:!1,internalType:"uint8",name:"feeProtocol1Old",type:"uint8"},{indexed:!1,internalType:"uint8",name:"feeProtocol0New",type:"uint8"},{indexed:!1,internalType:"uint8",name:"feeProtocol1New",type:"uint8"}],name:"SetFeeProtocol",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"int256",name:"amount0",type:"int256"},{indexed:!1,internalType:"int256",name:"amount1",type:"int256"},{indexed:!1,internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{indexed:!1,internalType:"uint128",name:"liquidity",type:"uint128"},{indexed:!1,internalType:"int24",name:"tick",type:"int24"}],name:"Swap",type:"event"},{inputs:[{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount",type:"uint128"}],name:"burn",outputs:[{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount0Requested",type:"uint128"},{internalType:"uint128",name:"amount1Requested",type:"uint128"}],name:"collect",outputs:[{internalType:"uint128",name:"amount0",type:"uint128"},{internalType:"uint128",name:"amount1",type:"uint128"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint128",name:"amount0Requested",type:"uint128"},{internalType:"uint128",name:"amount1Requested",type:"uint128"}],name:"collectProtocol",outputs:[{internalType:"uint128",name:"amount0",type:"uint128"},{internalType:"uint128",name:"amount1",type:"uint128"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"fee",outputs:[{internalType:"uint24",name:"",type:"uint24"}],stateMutability:"view",type:"function"},{inputs:[],name:"feeGrowthGlobal0X128",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"feeGrowthGlobal1X128",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"flash",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"observationCardinalityNext",type:"uint16"}],name:"increaseObservationCardinalityNext",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint160",name:"sqrtPriceX96",type:"uint160"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"liquidity",outputs:[{internalType:"uint128",name:"",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"maxLiquidityPerTick",outputs:[{internalType:"uint128",name:"",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"},{internalType:"uint128",name:"amount",type:"uint128"},{internalType:"bytes",name:"data",type:"bytes"}],name:"mint",outputs:[{internalType:"uint256",name:"amount0",type:"uint256"},{internalType:"uint256",name:"amount1",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"observations",outputs:[{internalType:"uint32",name:"blockTimestamp",type:"uint32"},{internalType:"int56",name:"tickCumulative",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityCumulativeX128",type:"uint160"},{internalType:"bool",name:"initialized",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint32[]",name:"secondsAgos",type:"uint32[]"}],name:"observe",outputs:[{internalType:"int56[]",name:"tickCumulatives",type:"int56[]"},{internalType:"uint160[]",name:"secondsPerLiquidityCumulativeX128s",type:"uint160[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"",type:"bytes32"}],name:"positions",outputs:[{internalType:"uint128",name:"liquidity",type:"uint128"},{internalType:"uint256",name:"feeGrowthInside0LastX128",type:"uint256"},{internalType:"uint256",name:"feeGrowthInside1LastX128",type:"uint256"},{internalType:"uint128",name:"tokensOwed0",type:"uint128"},{internalType:"uint128",name:"tokensOwed1",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[],name:"protocolFees",outputs:[{internalType:"uint128",name:"token0",type:"uint128"},{internalType:"uint128",name:"token1",type:"uint128"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint8",name:"feeProtocol0",type:"uint8"},{internalType:"uint8",name:"feeProtocol1",type:"uint8"}],name:"setFeeProtocol",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"slot0",outputs:[{internalType:"uint160",name:"sqrtPriceX96",type:"uint160"},{internalType:"int24",name:"tick",type:"int24"},{internalType:"uint16",name:"observationIndex",type:"uint16"},{internalType:"uint16",name:"observationCardinality",type:"uint16"},{internalType:"uint16",name:"observationCardinalityNext",type:"uint16"},{internalType:"uint8",name:"feeProtocol",type:"uint8"},{internalType:"bool",name:"unlocked",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int24",name:"tickLower",type:"int24"},{internalType:"int24",name:"tickUpper",type:"int24"}],name:"snapshotCumulativesInside",outputs:[{internalType:"int56",name:"tickCumulativeInside",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityInsideX128",type:"uint160"},{internalType:"uint32",name:"secondsInside",type:"uint32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"recipient",type:"address"},{internalType:"bool",name:"zeroForOne",type:"bool"},{internalType:"int256",name:"amountSpecified",type:"int256"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"},{internalType:"bytes",name:"data",type:"bytes"}],name:"swap",outputs:[{internalType:"int256",name:"amount0",type:"int256"},{internalType:"int256",name:"amount1",type:"int256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"int16",name:"",type:"int16"}],name:"tickBitmap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"tickSpacing",outputs:[{internalType:"int24",name:"",type:"int24"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"int24",name:"",type:"int24"}],name:"ticks",outputs:[{internalType:"uint128",name:"liquidityGross",type:"uint128"},{internalType:"int128",name:"liquidityNet",type:"int128"},{internalType:"uint256",name:"feeGrowthOutside0X128",type:"uint256"},{internalType:"uint256",name:"feeGrowthOutside1X128",type:"uint256"},{internalType:"int56",name:"tickCumulativeOutside",type:"int56"},{internalType:"uint160",name:"secondsPerLiquidityOutsideX128",type:"uint160"},{internalType:"uint32",name:"secondsOutside",type:"uint32"},{internalType:"bool",name:"initialized",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"token0",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"token1",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"}],QUOTER:[{inputs:[{internalType:"address",name:"_factory",type:"address"},{internalType:"address",name:"_WETH9",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"WETH9",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"factory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"uint256",name:"amountIn",type:"uint256"}],name:"quoteExactInput",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint160[]",name:"sqrtPriceX96AfterList",type:"uint160[]"},{internalType:"uint32[]",name:"initializedTicksCrossedList",type:"uint32[]"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IQuoterV2.QuoteExactInputSingleParams",name:"params",type:"tuple"}],name:"quoteExactInputSingle",outputs:[{internalType:"uint256",name:"amountOut",type:"uint256"},{internalType:"uint160",name:"sqrtPriceX96After",type:"uint160"},{internalType:"uint32",name:"initializedTicksCrossed",type:"uint32"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes",name:"path",type:"bytes"},{internalType:"uint256",name:"amountOut",type:"uint256"}],name:"quoteExactOutput",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint160[]",name:"sqrtPriceX96AfterList",type:"uint160[]"},{internalType:"uint32[]",name:"initializedTicksCrossedList",type:"uint32[]"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"tokenIn",type:"address"},{internalType:"address",name:"tokenOut",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint24",name:"fee",type:"uint24"},{internalType:"uint160",name:"sqrtPriceLimitX96",type:"uint160"}],internalType:"struct IQuoterV2.QuoteExactOutputSingleParams",name:"params",type:"tuple"}],name:"quoteExactOutputSingle",outputs:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"uint160",name:"sqrtPriceX96After",type:"uint160"},{internalType:"uint32",name:"initializedTicksCrossed",type:"uint32"},{internalType:"uint256",name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"int256",name:"amount0Delta",type:"int256"},{internalType:"int256",name:"amount1Delta",type:"int256"},{internalType:"bytes",name:"path",type:"bytes"}],name:"uniswapV3SwapCallback",outputs:[],stateMutability:"view",type:"function"}],PERMIT2:[{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"AllowanceExpired",type:"error"},{inputs:[],name:"ExcessiveInvalidation",type:"error"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"InsufficientAllowance",type:"error"},{inputs:[{internalType:"uint256",name:"maxAmount",type:"uint256"}],name:"InvalidAmount",type:"error"},{inputs:[],name:"InvalidContractSignature",type:"error"},{inputs:[],name:"InvalidNonce",type:"error"},{inputs:[],name:"InvalidSignature",type:"error"},{inputs:[],name:"InvalidSignatureLength",type:"error"},{inputs:[],name:"InvalidSigner",type:"error"},{inputs:[],name:"LengthMismatch",type:"error"},{inputs:[{internalType:"uint256",name:"signatureDeadline",type:"uint256"}],name:"SignatureExpired",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint160",name:"amount",type:"uint160"},{indexed:!1,internalType:"uint48",name:"expiration",type:"uint48"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"address",name:"spender",type:"address"}],name:"Lockdown",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint48",name:"newNonce",type:"uint48"},{indexed:!1,internalType:"uint48",name:"oldNonce",type:"uint48"}],name:"NonceInvalidation",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint160",name:"amount",type:"uint160"},{indexed:!1,internalType:"uint48",name:"expiration",type:"uint48"},{indexed:!1,internalType:"uint48",name:"nonce",type:"uint48"}],name:"Permit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"uint256",name:"word",type:"uint256"},{indexed:!1,internalType:"uint256",name:"mask",type:"uint256"}],name:"UnorderedNonceInvalidation",type:"event"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"allowance",outputs:[{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"}],name:"approve",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint48",name:"newNonce",type:"uint48"}],name:"invalidateNonces",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"wordPos",type:"uint256"},{internalType:"uint256",name:"mask",type:"uint256"}],name:"invalidateUnorderedNonces",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"}],internalType:"struct IAllowanceTransfer.TokenSpenderPair[]",name:"approvals",type:"tuple[]"}],name:"lockdown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"}],name:"nonceBitmap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],internalType:"struct IAllowanceTransfer.PermitDetails[]",name:"details",type:"tuple[]"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"sigDeadline",type:"uint256"}],internalType:"struct IAllowanceTransfer.PermitBatch",name:"permitBatch",type:"tuple"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],internalType:"struct IAllowanceTransfer.PermitDetails",name:"details",type:"tuple"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"sigDeadline",type:"uint256"}],internalType:"struct IAllowanceTransfer.PermitSingle",name:"permitSingle",type:"tuple"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions",name:"permitted",type:"tuple"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails",name:"transferDetails",type:"tuple"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions[]",name:"permitted",type:"tuple[]"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitBatchTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails[]",name:"transferDetails",type:"tuple[]"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions",name:"permitted",type:"tuple"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails",name:"transferDetails",type:"tuple"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes32",name:"witness",type:"bytes32"},{internalType:"string",name:"witnessTypeString",type:"string"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitWitnessTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions[]",name:"permitted",type:"tuple[]"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitBatchTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails[]",name:"transferDetails",type:"tuple[]"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes32",name:"witness",type:"bytes32"},{internalType:"string",name:"witnessTypeString",type:"string"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitWitnessTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"address",name:"token",type:"address"}],internalType:"struct IAllowanceTransfer.AllowanceTransferDetails[]",name:"transferDetails",type:"tuple[]"}],name:"transferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"address",name:"token",type:"address"}],name:"transferFrom",outputs:[],stateMutability:"nonpayable",type:"function"}]};const cj={name:"uniswap_v3",label:"Uniswap v3",logo:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDgiIGhlaWdodD0iNDgiIGRhdGEtdGVzdGlkPSJ1bmlzd2FwLWxvZ28iIGNsYXNzPSJyZ3c2ZXo0NHAgcmd3NmV6NGVqIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjAuMzUyNiAxOS45MjQyQzIwLjI5MjggMjAuMTU0OSAyMC4xODg1IDIwLjM3MTUgMjAuMDQ1NSAyMC41NjE4QzE5Ljc3OTMgMjAuOTA4OCAxOS40MjcgMjEuMTc5NCAxOS4wMjM5IDIxLjM0NjZDMTguNjYxNCAyMS41MDM1IDE4LjI3NzQgMjEuNjA1IDE3Ljg4NDkgMjEuNjQ3NUMxNy44MDQyIDIxLjY1NzggMTcuNzIwNiAyMS42NjQxIDE3LjYzOTUgMjEuNjcwM0wxNy42MjYzIDIxLjY3MTNDMTcuMzc3NyAyMS42ODA4IDE3LjEzODcgMjEuNzcgMTYuOTQ0MiAyMS45MjU4QzE2Ljc0OTcgMjIuMDgxNyAxNi42MSAyMi4yOTYgMTYuNTQ1NSAyMi41MzczQzE2LjUxNiAyMi42NTc0IDE2LjQ5NCAyMi43NzkyIDE2LjQ3OTggMjIuOTAyMUMxNi40NTcyIDIzLjA4NzQgMTYuNDQ1NiAyMy4yNzcxIDE2LjQzMyAyMy40ODIzQzE2LjQyNCAyMy42Mjk1IDE2LjQxNDQgMjMuNzg0OCAxNi40IDIzLjk1MjFDMTYuMzE1NiAyNC42MzM3IDE2LjExOTMgMjUuMjk2NSAxNS44MTkyIDI1LjkxMzZDMTUuNzU3OSAyNi4wNDMzIDE1LjY5NTQgMjYuMTY5MSAxNS42MzM5IDI2LjI5MjZDMTUuMzA0OSAyNi45NTQ2IDE1LjAwNzYgMjcuNTUyNiAxNS4wOTI5IDI4LjM1MzVDMTUuMTU5NyAyOC45NzA2IDE1LjQ3NDQgMjkuMzg0MSAxNS44OTI1IDI5LjgxMDZDMTYuMDkxMSAzMC4wMTQ2IDE2LjM1NDQgMzAuMTg4OSAxNi42Mjc3IDMwLjM2OTlDMTcuMzkyNyAzMC44NzYzIDE4LjIzNjEgMzEuNDM0NyAxNy45NTgyIDMyLjg0MTVDMTcuNzMwOCAzMy45ODE0IDE1Ljg0OTQgMzUuMTc3NiAxMy4yMDUgMzUuNTk1NEMxMy40NjE1IDM1LjU1NjMgMTIuODk2NSAzNC41ODc5IDEyLjgzMzggMzQuNDgwNEwxMi44MyAzNC40NzM5QzEyLjc1NzEgMzQuMzU5MiAxMi42ODI0IDM0LjI0NjIgMTIuNjA3OSAzNC4xMzM0TDEyLjYwNzkgMzQuMTMzNEwxMi42MDc4IDM0LjEzMzRDMTIuMzkyNiAzMy44MDc2IDEyLjE3ODMgMzMuNDgzNSAxMi4wMTExIDMzLjEyNDFDMTEuNTY5MyAzMi4xODU2IDExLjM2NDUgMzEuMDk5OCAxMS41NDU1IDMwLjA3MTRDMTEuNzA5NSAyOS4xNDA3IDEyLjMyMjEgMjguMzk3MiAxMi45MTE4IDI3LjY4MTNMMTIuOTExOCAyNy42ODEzQzEzLjAwOCAyNy41NjQ2IDEzLjEwMzUgMjcuNDQ4NyAxMy4xOTY0IDI3LjMzMjhDMTMuOTg1MiAyNi4zNDg4IDE0LjgxMjggMjUuMDU5NSAxNC45OTU5IDIzLjc4MjJDMTUuMDExNCAyMy42NzEyIDE1LjAyNTIgMjMuNTUwMiAxNS4wMzk3IDIzLjQyMjlMMTUuMDM5NyAyMy40MjI5TDE1LjAzOTcgMjMuNDIyOUMxNS4wNjU3IDIzLjE5NSAxNS4wOTM5IDIyLjk0NjkgMTUuMTM4MiAyMi42OTk3QzE1LjIwMzkgMjIuMjcyOCAxNS4zMzcxIDIxLjg1OTEgMTUuNTMyNiAyMS40NzQzQzE1LjY2NiAyMS4yMjIgMTUuODQxNyAyMC45OTQ2IDE2LjA1MiAyMC44MDIxQzE2LjE2MTYgMjAuNjk5OSAxNi4yMzM5IDIwLjU2MzcgMTYuMjU3NCAyMC40MTUzQzE2LjI4MDggMjAuMjY3IDE2LjI1NCAyMC4xMTUgMTYuMTgxMyAxOS45ODM3TDExLjk2NTggMTIuMzY3M0wxOC4wMjA3IDE5Ljg3MzNDMTguMDg5NyAxOS45NjAzIDE4LjE3NjggMjAuMDMxIDE4LjI3NiAyMC4wODAzQzE4LjM3NTIgMjAuMTI5NiAxOC40ODQgMjAuMTU2NCAxOC41OTQ2IDIwLjE1ODhDMTguNzA1MyAyMC4xNjEyIDE4LjgxNTEgMjAuMTM5MSAxOC45MTYzIDIwLjA5NEMxOS4wMTc1IDIwLjA0OSAxOS4xMDc2IDE5Ljk4MjEgMTkuMTgwMiAxOS44OTgyQzE5LjI1NjkgMTkuODA4NCAxOS4zMDA0IDE5LjY5NDcgMTkuMzAzMyAxOS41NzYzQzE5LjMwNjMgMTkuNDU4IDE5LjI2ODUgMTkuMzQyMyAxOS4xOTYzIDE5LjI0ODdDMTguOTE0OCAxOC44ODczIDE4LjYyMTggMTguNTIxIDE4LjMzMDIgMTguMTU2M0wxOC4zMyAxOC4xNTZDMTguMjEyIDE4LjAwODUgMTguMDk0MyAxNy44NjEzIDE3Ljk3NzYgMTcuNzE0OEwxNi40NTM5IDE1LjgyMDVMMTMuMzk1NyAxMi4wMzgyTDEwIDhMMTMuNzg4IDExLjY5OTRMMTcuMDQzMyAxNS4zMTQ5TDE4LjY2NzMgMTcuMTI3QzE4LjgxNjUgMTcuMjk1OCAxOC45NjU3IDE3LjQ2MzEgMTkuMTE0OCAxNy42MzAzQzE5LjUwNDQgMTguMDY3MSAxOS44OTQgMTguNTAzOSAyMC4yODM2IDE4Ljk2NzNMMjAuMzcyIDE5LjA3NTVMMjAuMzkxNCAxOS4yNDMzQzIwLjQxNzYgMTkuNDcwOCAyMC40MDQ1IDE5LjcwMTIgMjAuMzUyNiAxOS45MjQyWk0zNS45MjQ3IDIyLjQ2OTdMMzUuOTMxMSAyMi40Nzk1QzM1LjkzIDIxLjY3MTkgMzUuNDMyMiAyMC4zMzk0IDM0LjQyNDcgMTkuMDU3N0wzNC40MDEgMTkuMDI2M0MzNC4wOTA2IDE4LjY0MSAzMy43NTI0IDE4LjI3OTIgMzMuMzg5MSAxNy45NDM4QzMzLjMyMTIgMTcuODc3OCAzMy4yNDggMTcuODEyOCAzMy4xNzM2IDE3Ljc0NzlDMzIuNzA4MSAxNy4zNDAxIDMyLjE5OTMgMTYuOTg1IDMxLjY1NjQgMTYuNjg5MkwzMS42MTc2IDE2LjY2OTdDMjkuOTExOCAxNS43MzY2IDI3LjY5MiAxNS4yNTYgMjQuOTU0OSAxNS43OTcyQzI0LjU4NzMgMTUuMzQ4OSAyNC4xOTE0IDE0LjkyNDggMjMuNzY5NiAxNC41Mjc1QzIzLjEyMzYgMTMuOTA5MSAyMi4zNjMyIDEzLjQyNDEgMjEuNTMxNSAxMy4wOTk3QzIwLjcwNzIgMTIuNzk2NiAxOS44MjQ0IDEyLjY4ODQgMTguOTUxNyAxMi43ODM2QzE5Ljc5MjkgMTIuODU5NyAyMC42MTIzIDEzLjA5NDcgMjEuMzY2NiAxMy40NzY0QzIyLjA5NTEgMTMuODY4NSAyMi43NTEyIDE0LjM4MzMgMjMuMzA2MiAxNC45OTg0QzIzLjg2ODggMTUuNjI2MyAyNC4zOTc2IDE2LjI4MzkgMjQuODkwMyAxNi45Njg1TDI1LjAxMzkgMTcuMTMwMkMyNS40OTYgMTcuNzYwOSAyNS45ODY4IDE4LjQwMyAyNi41OTgyIDE4Ljk3NDRDMjYuOTM0OCAxOS4yOTI1IDI3LjMxMDMgMTkuNTY2NCAyNy43MTU3IDE5Ljc4OTVDMjcuODIzNCAxOS44NDQ3IDI3LjkzMjMgMTkuODk2NiAyOC4wMzkgMTkuOTQyMUMyOC4xNDU2IDE5Ljk4NzYgMjguMjQ1OCAyMC4wMjk4IDI4LjM1MzYgMjAuMDY4OEMyOC41NjE2IDIwLjE0OTkgMjguNzc3MSAyMC4yMTcxIDI4Ljk5MjYgMjAuMjc4OEMyOS44NTQ3IDIwLjUyNTYgMzAuNzM3MiAyMC42MTQzIDMxLjU5OTMgMjAuNjYyQzMxLjcxOTIgMjAuNjY4MyAzMS44Mzg5IDIwLjY3NDIgMzEuOTU4MSAyMC42ODAxTDMxLjk1ODMgMjAuNjgwMUMzMi4yNjYyIDIwLjY5NTQgMzIuNTcxMyAyMC43MTA1IDMyLjg3MTkgMjAuNzMyM0MzMy4yODM3IDIwLjc1NjkgMzMuNjkyMiAyMC44MjE0IDM0LjA5MTcgMjAuOTI1QzM0LjY5MTggMjEuMDgyMiAzNS4yMjAxIDIxLjQ0MTMgMzUuNTg4NSAyMS45NDI1QzM1LjcxMzcgMjIuMTA5NSAzNS44MjYxIDIyLjI4NTcgMzUuOTI0NyAyMi40Njk3Wk0zMy40MDEzIDE3Ljk0NTFDMzMuMzU4IDE3LjkwNDkgMzMuMzEzOSAxNy44NjUxIDMzLjI3IDE3LjgyNTRMMzMuMjcgMTcuODI1NEMzMy4yNDE4IDE3Ljc5OTkgMzMuMjEzNiAxNy43NzQ1IDMzLjE4NTggMTcuNzQ5MUMzMy4yMDczIDE3Ljc2ODggMzMuMjI4OCAxNy43ODg3IDMzLjI1MDMgMTcuODA4N0MzMy4zMDA5IDE3Ljg1NTYgMzMuMzUxNCAxNy45MDI1IDMzLjQwMTMgMTcuOTQ1MVpNMzIuMzIzOCAyNS45MTcyQzI5LjU1MTYgMjQuNzg3MiAyNi42NTE4IDIzLjYwNTEgMjcuMDgzNSAyMC4yODc1QzI4LjAwOTEgMjEuMjgwMiAyOS40NjIgMjEuNDg4NCAzMS4wNDIyIDIxLjcxNDlDMzIuNDc1NyAyMS45MjAzIDM0LjAxMzkgMjIuMTQwNyAzNS4zNTgzIDIyLjk3NTNDMzguNTMwNiAyNC45NDMzIDM4LjA2NzMgMjguNzY2NiAzNi45ODk3IDMwLjE3MzlDMzcuMDg2OSAyNy44NTg3IDM0Ljc1NDQgMjYuOTA4IDMyLjMyMzggMjUuOTE3MlpNMjEuMTU1MSAyNC4yNTY3QzIxLjg4NjggMjQuMTg2MyAyMy40NDYxIDIzLjgwNDIgMjIuNzQ4OSAyMi41NzEyQzIyLjU5ODkgMjIuMzIwNCAyMi4zODE1IDIyLjExNzIgMjIuMTIxNyAyMS45ODQ4QzIxLjg2MTkgMjEuODUyNSAyMS41NzAyIDIxLjc5NjUgMjEuMjgwMSAyMS44MjMyQzIwLjk4NTggMjEuODU1IDIwLjcwODIgMjEuOTc2OSAyMC40ODUyIDIyLjE3MjVDMjAuMjYyMiAyMi4zNjgxIDIwLjEwNDQgMjIuNjI3OCAyMC4wMzM0IDIyLjkxNjVDMTkuODE2OCAyMy43MjMgMjAuMDQ2MyAyNC4zNjQ5IDIxLjE1NTEgMjQuMjU2N1pNMjAuOTQ0OCAxNC41MDE0QzIwLjQ4NTggMTMuOTY4OCAxOS43NzM1IDEzLjY4OTUgMTkuMDc1MiAxMy41ODc4QzE5LjA0OTEgMTMuNzYyNSAxOS4wMzI2IDEzLjkzODUgMTkuMDI1NyAxNC4xMTVDMTguOTk0NCAxNS41Njg3IDE5LjUwODQgMTcuMTY1NCAyMC41MDMgMTguMjc1QzIwLjgyMTIgMTguNjMzNyAyMS4yMDQ5IDE4LjkyNzYgMjEuNjMzNCAxOS4xNDFDMjEuODgxMiAxOS4yNjIyIDIyLjUzODYgMTkuNTYzMSAyMi43ODIxIDE5LjI5MjVDMjIuODAwNiAxOS4yNjc3IDIyLjgxMjMgMTkuMjM4NCAyMi44MTU5IDE5LjIwNzZDMjIuODE5NSAxOS4xNzY4IDIyLjgxNDkgMTkuMTQ1NiAyMi44MDI2IDE5LjExNzJDMjIuNzYyMiAxOS4wMDEzIDIyLjY4NDMgMTguODk2MSAyMi42MDY5IDE4Ljc5MTdDMjIuNTUyIDE4LjcxNzcgMjIuNDk3NCAxOC42NDQxIDIyLjQ1NjcgMTguNTY3MkMyMi40MTU1IDE4LjQ4OTggMjIuMzcxNCAxOC40MTQyIDIyLjMyNzQgMTguMzM4OEwyMi4zMjc0IDE4LjMzODhDMjIuMjQ0NyAxOC4xOTcgMjIuMTYyMiAxOC4wNTU1IDIyLjA5ODkgMTcuOTAxNUMyMS45MzE5IDE3LjQ5ODQgMjEuODQ1IDE3LjA2OTggMjEuNzU4MyAxNi42NDI1TDIxLjc1ODMgMTYuNjQyNEwyMS43NTgzIDE2LjY0MjRMMjEuNzU4MyAxNi42NDIzTDIxLjc1ODIgMTYuNjQyMkwyMS43NTgyIDE2LjY0MjFMMjEuNzU4MiAxNi42NDJDMjEuNzQwOSAxNi41NTY2IDIxLjcyMzYgMTYuNDcxMiAyMS43MDU2IDE2LjM4NkMyMS41NzMxIDE1LjcyNjggMjEuNDAzOSAxNS4wMzQgMjAuOTQ0OCAxNC41MDE0Wk0zMC43NTI0IDI2LjA5OEMzMC4wNDAzIDI4LjA5NDMgMzEuMTg4OCAyOS43ODA0IDMyLjMzMDYgMzEuNDU2NkMzMy42MDc3IDMzLjMzMTUgMzQuODc2NCAzNS4xOTQgMzMuNTIyOCAzNy40NjQyQzM2LjE1MzIgMzYuMzczMSAzNy40MDIxIDMzLjA3NjkgMzYuMzEwNSAzMC40NjE2QzM1LjYyMjcgMjguODA3NCAzMy45NjQ5IDI3LjkxMDYgMzIuNDI2MSAyNy4wNzgzTDMyLjQyNjEgMjcuMDc4M0wzMi40MjYgMjcuMDc4MkMzMS44MjkgMjYuNzU1MyAzMS4yNDk5IDI2LjQ0MjEgMzAuNzUyNCAyNi4wOThaTTIzLjA1NTIgMzAuODYzM0MyMi41Nzg1IDMxLjA1ODcgMjIuMTI5IDMxLjMxNTIgMjEuNzE3OSAzMS42MjY1QzIyLjY1MjcgMzEuMjg1OSAyMy42MzM5IDMxLjA5MTQgMjQuNjI3NCAzMS4wNDk1QzI0LjgwNzQgMzEuMDM4OCAyNC45ODg3IDMxLjAzMDQgMjUuMTcxNSAzMS4wMjE5TDI1LjE3MTcgMzEuMDIxOUwyNS4xNzIgMzEuMDIxOUMyNS40ODc4IDMxLjAwNzMgMjUuODA4NSAzMC45OTI1IDI2LjEzNiAzMC45NjUxQzI2LjY3MjkgMzAuOTI4NSAyNy4yMDI1IDMwLjgxOTIgMjcuNzEwMyAzMC42NDAzQzI4LjI0MjUgMzAuNDUzMyAyOC43MjY4IDMwLjE1MDEgMjkuMTI4NCAyOS43NTI3QzI5LjUzNDIgMjkuMzQyNCAyOS44MTg4IDI4LjgyNzIgMjkuOTUwNiAyOC4yNjQyQzMwLjA2NjYgMjcuNzMyNCAzMC4wNTAzIDI3LjE4MDEgMjkuOTAzMiAyNi42NTYyQzI5Ljc1NiAyNi4xMzIyIDI5LjQ4MjUgMjUuNjUyOCAyOS4xMDY5IDI1LjI2MDNDMjkuMjg4MSAyNS43MjIxIDI5LjM5OTYgMjYuMjA4NCAyOS40Mzc3IDI2LjcwMzNDMjkuNDcwNSAyNy4xNjQgMjkuNDA4MSAyNy42MjY1IDI5LjI1NDUgMjguMDYxOEMyOS4xMDQ1IDI4LjQ3NDQgMjguODU5MyAyOC44NDU0IDI4LjUzOSAyOS4xNDQzQzI4LjIwODEgMjkuNDQ2MiAyNy44MjUgMjkuNjg0NiAyNy40MDg2IDI5Ljg0NzlDMjYuODI5OSAzMC4wODIxIDI2LjE3NTUgMzAuMTc3OSAyNS40OTM5IDMwLjI3NzdDMjUuMTgzIDMwLjMyMzIgMjQuODY2NCAzMC4zNjk2IDI0LjU0ODcgMzAuNDMwM0MyNC4wMzc4IDMwLjUyNDMgMjMuNTM3NCAzMC42Njk0IDIzLjA1NTIgMzAuODYzM1pNMzEuMzE4NyAzOS4xMDQ2TDMxLjI3MyAzOS4xNDE1TDMxLjI3MyAzOS4xNDE2QzMxLjE1MjUgMzkuMjM4OSAzMS4wMzAxIDM5LjMzNzkgMzAuODk4MiAzOS40MjY4QzMwLjczMDEgMzkuNTM4IDMwLjU1NCAzOS42MzY1IDMwLjM3MTMgMzkuNzIxMkMyOS45OTA4IDM5LjkwNzcgMjkuNTcyNiA0MC4wMDI5IDI5LjE0OTMgMzkuOTk5NEMyOC4wMDI4IDM5Ljk3NzggMjcuMTkyNCAzOS4xMjA1IDI2LjcxODMgMzguMTUxNkMyNi41OTQgMzcuODk3NyAyNi40ODQ1IDM3LjYzNTkgMjYuMzc1IDM3LjM3NDFMMjYuMzc1IDM3LjM3NDFDMjYuMTk5NyAzNi45NTUxIDI2LjAyNDQgMzYuNTM2MSAyNS43ODgzIDM2LjE0OUMyNS4yMzk5IDM1LjI0OTUgMjQuMzAxMyAzNC41MjUzIDIzLjIwMjIgMzQuNjU5NUMyMi43NTM5IDM0LjcxNTggMjIuMzMzNiAzNC45MTgyIDIyLjA4NDcgMzUuMzA5QzIxLjQyOTUgMzYuMzI5OCAyMi4zNzAzIDM3Ljc1OTggMjMuNTY5NiAzNy41NTczQzIzLjY3MTYgMzcuNTQxNyAyMy43NzE0IDM3LjUxNDEgMjMuODY3IDM3LjQ3NTFDMjMuOTYyMyAzNy40MzQzIDI0LjA1MTIgMzcuMzggMjQuMTMxIDM3LjMxMzhDMjQuMjk4NiAzNy4xNzM2IDI0LjQyNDggMzYuOTkwMyAyNC40OTYzIDM2Ljc4MzRDMjQuNTc1MSAzNi41Njc2IDI0LjU5MjYgMzYuMzM0MSAyNC41NDcgMzYuMTA5QzI0LjQ5NzggMzUuODczNiAyNC4zNTk0IDM1LjY2NjggMjQuMTYxMiAzNS41MzJDMjQuMzkxNyAzNS42NDA0IDI0LjU3MTMgMzUuODM0NSAyNC42NjIzIDM2LjA3MzJDMjQuNzU2NiAzNi4zMTkgMjQuNzgwOSAzNi41ODYyIDI0LjczMjMgMzYuODQ1MUMyNC42ODUyIDM3LjExNDcgMjQuNTY2OSAzNy4zNjY3IDI0LjM4OTYgMzcuNTc0N0MyNC4yOTU1IDM3LjY4MTYgMjQuMTg2NiAzNy43NzQ2IDI0LjA2NjQgMzcuODUwN0MyMy45NDcyIDM3LjkyNTkgMjMuODE5NSAzNy45ODY2IDIzLjY4NiAzOC4wMzE1QzIzLjQxNTMgMzguMTI0NCAyMy4xMjcyIDM4LjE1NDQgMjIuODQzMyAzOC4xMTkyQzIyLjQ0NDcgMzguMDYyMSAyMi4wNjg4IDM3Ljg5ODMgMjEuNzU1IDM3LjY0NUMyMS42OTcgMzcuNTk5IDIxLjY0MTQgMzcuNTUwOCAyMS41ODc1IDM3LjUwMDhDMjEuMzc0IDM3LjMxNTggMjEuMTgwMiAzNy4xMDg3IDIxLjAwOTMgMzYuODgyOUMyMC45MzI2IDM2Ljc5ODEgMjAuODU0NyAzNi43MTQ0IDIwLjc3MzMgMzYuNjM0QzIwLjM4OTEgMzYuMjI5IDE5LjkzNTggMzUuODk2NSAxOS40MzQ5IDM1LjY1MjJDMTkuMDg5NSAzNS40OTk4IDE4LjcyOCAzNS4zODcyIDE4LjM1NzQgMzUuMzE2NkMxOC4xNzA5IDM1LjI3NzYgMTcuOTgyNCAzNS4yNDk1IDE3Ljc5MzggMzUuMjI1N0MxNy43NzMzIDM1LjIyMzYgMTcuNzM0IDM1LjIxNjcgMTcuNjg1IDM1LjIwODJMMTcuNjg0NyAzNS4yMDgxTDE3LjY4NDYgMzUuMjA4MUwxNy42ODQ2IDM1LjIwODFMMTcuNjg0NiAzNS4yMDgxTDE3LjY4NDUgMzUuMjA4MUMxNy41MjcxIDM1LjE4MDYgMTcuMjcxMSAzNS4xMzYgMTcuMjI1OSAzNS4xNzhDMTcuODA4OCAzNC42MzkgMTguNDQ0MSAzNC4xNjAzIDE5LjEyMjQgMzMuNzQ5MUMxOS44MTg5IDMzLjMzNCAyMC41NjY3IDMzLjAxMjYgMjEuMzQ2NiAzMi43OTMzQzIyLjE1NTEgMzIuNTY0NyAyMy4wMDA5IDMyLjQ5OTUgMjMuODM0NyAzMi42MDE3QzI0LjI2MzkgMzIuNjUzNSAyNC42ODQzIDMyLjc2MjcgMjUuMDg0NyAzMi45MjY0QzI1LjUwNDIgMzMuMDk0OCAyNS44OTE0IDMzLjMzNTEgMjYuMjI5MSAzMy42MzY2QzI2LjU2MzIgMzMuOTUyOCAyNi44MzMzIDM0LjMzMTEgMjcuMDI0MyAzNC43NTA0QzI3LjE5NjggMzUuMTQzMSAyNy4zMjU0IDM1LjU1MzcgMjcuNDA3OSAzNS45NzQ3QzI3LjQ1MjEgMzYuMjAxMyAyNy40ODU1IDM2LjQ1MDIgMjcuNTE5OSAzNi43MDc5TDI3LjUyIDM2LjcwNzlMMjcuNTIgMzYuNzA4TDI3LjUyIDM2LjcwOEMyNy42NzcxIDM3Ljg4MjMgMjcuODU4NSAzOS4yMzcyIDI5LjIwNDMgMzkuNDczM0MyOS4yODk4IDM5LjQ5IDI5LjM3NjEgMzkuNTAyMyAyOS40NjI5IDM5LjUxMDJMMjkuNzMxMiAzOS41MTY2QzI5LjkxNTcgMzkuNTAzNCAzMC4wOTkgMzkuNDc3IDMwLjI3OTcgMzkuNDM3NkMzMC42NTQxIDM5LjM0OTIgMzEuMDE5IDM5LjIyNDEgMzEuMzY5MSAzOS4wNjQyTDMxLjMxODcgMzkuMTA0NlpNMjEuMDgwMSAzNi45NjE5QzIxLjExMjMgMzYuOTk4OSAyMS4xNDQ5IDM3LjAzNTUgMjEuMTc3OSAzNy4wNzE4QzIxLjE2NDQgMzcuMDU2NyAyMS4xNTEgMzcuMDQxNSAyMS4xMzc1IDM3LjAyNjRMMjEuMTM3NSAzNy4wMjY0TDIxLjEzNzUgMzcuMDI2NEwyMS4xMzc1IDM3LjAyNjRDMjEuMTE4NCAzNy4wMDQ5IDIxLjA5OTMgMzYuOTgzNCAyMS4wODAxIDM2Ljk2MTlaIiBmaWxsPSJjdXJyZW50Q29sb3IiPjwvcGF0aD48L3N2Zz4K",protocol:"uniswap_v3",slippage:!0,fees:[100,500,3e3,1e4],blockchains:["ethereum","bsc","polygon","optimism","arbitrum"],ethereum:{router:{address:"0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad",api:uj.ROUTER},factory:{address:"0x1F98431c8aD98523631AE4a59f267346ea31F984",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}},bsc:{router:{address:"0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad",api:uj.ROUTER},factory:{address:"0xdB1d10011AD0Ff90774D0C6Bb92e5C5c8b4461F7",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x78D78E420Da98ad378D7799bE8f4AF69033EB077",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}},polygon:{router:{address:"0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad",api:uj.ROUTER},factory:{address:"0x1F98431c8aD98523631AE4a59f267346ea31F984",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}},optimism:{router:{address:"0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad",api:uj.ROUTER},factory:{address:"0x1F98431c8aD98523631AE4a59f267346ea31F984",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}},arbitrum:{router:{address:"0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad",api:uj.ROUTER},factory:{address:"0x1F98431c8aD98523631AE4a59f267346ea31F984",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}},base:{router:{address:"0x198EF79F1F515F02dFE9e3115eD9fC07183f02fC",api:uj.ROUTER},factory:{address:"0x33128a8fC17869897dcE68Ed026d694621f6FDfD",api:uj.FACTORY},pool:{api:uj.POOL},quoter:{address:"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",api:uj.QUOTER},permit:{address:"0x000000000022d473030f116ddee9f6b43ac78ba3",api:uj.PERMIT2}}};var lj=t=>new IL(Object.assign(cj,{scope:t,findPath:t=>uj.findPath({...t,exchange:cj}),pathExists:t=>uj.pathExists({...t,exchange:cj}),getAmounts:t=>uj.getAmounts({...t,exchange:cj}),getPrep:t=>uj.getPrep({...t,exchange:cj}),getTransaction:t=>uj.getTransaction({...t,exchange:cj})}));var hj={findPath:async({blockchain:t,tokenIn:e,tokenOut:n})=>{if(![e,n].includes(Hf[t].currency.address)||![e,n].includes(Hf[t].wrapped.address))return{path:void 0,exchangePath:void 0};let r=[e,n];return{path:r,exchangePath:r}},pathExists:async({blockchain:t,path:e})=>!(!e||2!==e.length)&&(e.includes(Hf[t].currency.address)&&e.includes(Hf[t].wrapped.address)),getAmounts:async({path:t,block:e,tokenIn:n,tokenOut:r,amountOut:i,amountIn:o,amountInMax:a,amountOutMin:s})=>(i?o=a=s=i:o?i=a=s=o:s?o=a=i=s:a&&(i=s=o=a),{amountOut:i,amountIn:o,amountInMax:a,amountOutMin:s}),getTransaction:({exchange:t,blockchain:e,path:n,amountIn:r,amountInMax:i,amountOut:o,amountOutMin:a,amountInInput:s,amountOutInput:u,amountInMaxInput:c,amountOutMinInput:l,account:h})=>{let d={blockchain:e,from:h,to:t[e].router.address,api:t[e].router.api};return n[0]===Hf[e].currency.address&&n[1]===Hf[e].wrapped.address?(d.method="deposit",d.value=r.toString(),d):n[0]===Hf[e].wrapped.address&&n[1]===Hf[e].currency.address?(d.method="withdraw",d.value=0,d.params={wad:r},d):void 0},WETH:[{constant:!0,inputs:[],name:"name",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"guy",type:"address"},{name:"wad",type:"uint256"}],name:"approve",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"src",type:"address"},{name:"dst",type:"address"},{name:"wad",type:"uint256"}],name:"transferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{name:"wad",type:"uint256"}],name:"withdraw",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{name:"",type:"uint8"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"",type:"address"}],name:"balanceOf",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"dst",type:"address"},{name:"wad",type:"uint256"}],name:"transfer",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[],name:"deposit",outputs:[],payable:!0,stateMutability:"payable",type:"function"},{constant:!0,inputs:[{name:"",type:"address"},{name:"",type:"address"}],name:"allowance",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{payable:!0,stateMutability:"payable",type:"fallback"},{anonymous:!1,inputs:[{indexed:!0,name:"src",type:"address"},{indexed:!0,name:"guy",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"src",type:"address"},{indexed:!0,name:"dst",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"dst",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"src",type:"address"},{indexed:!1,name:"wad",type:"uint256"}],name:"Withdrawal",type:"event"}]};const dj={name:"wavax",label:"Wrapped Avax",logo:Hf.avalanche.wrapped.logo,protocol:"weth",slippage:!1,blockchains:["avalanche"],avalanche:{router:{address:Hf.avalanche.wrapped.address,api:hj.WETH}}};var fj=t=>new IL(Object.assign(dj,{scope:t,findPath:t=>hj.findPath({...t,exchange:dj}),pathExists:t=>hj.pathExists({...t,exchange:dj}),getAmounts:t=>hj.getAmounts({...t,exchange:dj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:dj})}));const pj={name:"wbnb",label:"Wrapped BNB",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxOTIgMTkyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxOTIgMTkyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuc3Qwe2ZpbGw6I0YwQjkwQjt9Cjwvc3R5bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik01NCw0MS4xbDQyLTI0LjJsNDIsMjQuMmwtMTUuNCw4LjlMOTYsMzQuOUw2OS40LDUwTDU0LDQxLjF6IE0xMzgsNzEuN2wtMTUuNC04LjlMOTYsNzhMNjkuNCw2Mi43bC0xNS40LDl2MTgKCUw4MC42LDEwNXYzMC41bDE1LjQsOWwxNS40LTlWMTA1TDEzOCw4OS43VjcxLjd6IE0xMzgsMTIwLjN2LTE4bC0xNS40LDguOXYxOEMxMjIuNiwxMjkuMSwxMzgsMTIwLjMsMTM4LDEyMC4zeiBNMTQ4LjksMTI2LjQKCWwtMjYuNiwxNS4zdjE4bDQyLTI0LjJWODdsLTE1LjQsOUMxNDguOSw5NiwxNDguOSwxMjYuNCwxNDguOSwxMjYuNHogTTEzMy41LDU2LjRsMTUuNCw5djE4bDE1LjQtOXYtMThsLTE1LjQtOUwxMzMuNSw1Ni40CglMMTMzLjUsNTYuNHogTTgwLjYsMTQ4LjN2MThsMTUuNCw5bDE1LjQtOXYtMThMOTYsMTU3LjFMODAuNiwxNDguM3ogTTU0LDEyMC4zbDE1LjQsOXYtMTguMUw1NCwxMDIuM0w1NCwxMjAuM0w1NCwxMjAuM3oKCSBNODAuNiw1Ni40bDE1LjQsOWwxNS40LTlMOTYsNDcuNUM5Niw0Ny40LDgwLjYsNTYuNCw4MC42LDU2LjRMODAuNiw1Ni40eiBNNDMuMSw2NS40bDE1LjQtOWwtMTUuNC05bC0xNS40LDl2MThsMTUuNCw5TDQzLjEsNjUuNAoJTDQzLjEsNjUuNHogTTQzLjEsOTUuOUwyNy43LDg3djQ4LjVsNDIsMjQuMnYtMThsLTI2LjYtMTUuM1Y5NS45TDQzLjEsOTUuOXoiLz4KPC9zdmc+Cg==",slippage:!1,blockchains:["bsc"],bsc:{router:{address:Hf.bsc.wrapped.address,api:hj.WETH}}};var yj=t=>new IL(Object.assign(pj,{scope:t,findPath:t=>hj.findPath({...t,exchange:pj}),pathExists:t=>hj.pathExists({...t,exchange:pj}),getAmounts:t=>hj.getAmounts({...t,exchange:pj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:pj})}));const mj={name:"weth",label:"Wrapped Ethereum",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIKCSBpZD0iTGF5ZXJfMSIgaW1hZ2UtcmVuZGVyaW5nPSJvcHRpbWl6ZVF1YWxpdHkiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIiB0ZXh0LXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIgoJIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjgzLjUgMjgzLjUiCgkgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjgzLjUgMjgzLjU7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojMzQzNDM0O30KCS5zdDF7ZmlsbDojOEM4QzhDO30KCS5zdDJ7ZmlsbDojM0MzQzNCO30KCS5zdDN7ZmlsbDojMTQxNDE0O30KCS5zdDR7ZmlsbDojMzkzOTM5O30KPC9zdHlsZT4KPGc+Cgk8Zz4KCQk8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTQxLjcsMjUuOWwtMS41LDUuMnYxNTMuM2wxLjUsMS41bDcxLjItNDIuMUwxNDEuNywyNS45eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNS45TDcwLjYsMTQzLjhsNzEuMSw0Mi4xdi03NC40VjI1Ljl6Ii8+CgkJPHBhdGggY2xhc3M9InN0MiIgZD0iTTE0MS43LDE5OS40bC0wLjgsMS4xdjU0LjZsMC44LDIuNWw3MS4yLTEwMC4zTDE0MS43LDE5OS40eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNTcuNnYtNTguMmwtNzEuMS00Mi4xTDE0MS43LDI1Ny42eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDMiIGQ9Ik0xNDEuNywxODUuOWw3MS4yLTQyLjFsLTcxLjItMzIuM1YxODUuOXoiLz4KCQk8cGF0aCBjbGFzcz0ic3Q0IiBkPSJNNzAuNiwxNDMuOGw3MS4xLDQyLjF2LTc0LjRMNzAuNiwxNDMuOHoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",protocol:"weth",slippage:!1,blockchains:["ethereum"],ethereum:{router:{address:Hf.ethereum.wrapped.address,api:hj.WETH}}};var gj=t=>new IL(Object.assign(mj,{scope:t,findPath:t=>hj.findPath({...t,exchange:mj}),pathExists:t=>hj.pathExists({...t,exchange:mj}),getAmounts:t=>hj.getAmounts({...t,exchange:mj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:mj})}));const vj={name:"weth_arbitrum",label:"Wrapped Ethereum",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIKCSBpZD0iTGF5ZXJfMSIgaW1hZ2UtcmVuZGVyaW5nPSJvcHRpbWl6ZVF1YWxpdHkiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIiB0ZXh0LXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIgoJIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjgzLjUgMjgzLjUiCgkgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjgzLjUgMjgzLjU7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojMzQzNDM0O30KCS5zdDF7ZmlsbDojOEM4QzhDO30KCS5zdDJ7ZmlsbDojM0MzQzNCO30KCS5zdDN7ZmlsbDojMTQxNDE0O30KCS5zdDR7ZmlsbDojMzkzOTM5O30KPC9zdHlsZT4KPGc+Cgk8Zz4KCQk8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTQxLjcsMjUuOWwtMS41LDUuMnYxNTMuM2wxLjUsMS41bDcxLjItNDIuMUwxNDEuNywyNS45eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNS45TDcwLjYsMTQzLjhsNzEuMSw0Mi4xdi03NC40VjI1Ljl6Ii8+CgkJPHBhdGggY2xhc3M9InN0MiIgZD0iTTE0MS43LDE5OS40bC0wLjgsMS4xdjU0LjZsMC44LDIuNWw3MS4yLTEwMC4zTDE0MS43LDE5OS40eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNTcuNnYtNTguMmwtNzEuMS00Mi4xTDE0MS43LDI1Ny42eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDMiIGQ9Ik0xNDEuNywxODUuOWw3MS4yLTQyLjFsLTcxLjItMzIuM1YxODUuOXoiLz4KCQk8cGF0aCBjbGFzcz0ic3Q0IiBkPSJNNzAuNiwxNDMuOGw3MS4xLDQyLjF2LTc0LjRMNzAuNiwxNDMuOHoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",protocol:"weth",slippage:!1,blockchains:["arbitrum"],arbitrum:{router:{address:Hf.arbitrum.wrapped.address,api:hj.WETH}}};var wj=t=>new IL(Object.assign(vj,{scope:t,findPath:t=>hj.findPath({...t,exchange:vj}),pathExists:t=>hj.pathExists({...t,exchange:vj}),getAmounts:t=>hj.getAmounts({...t,exchange:vj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:vj})}));const bj={name:"weth_optimism",label:"Wrapped Ethereum",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIKCSBpZD0iTGF5ZXJfMSIgaW1hZ2UtcmVuZGVyaW5nPSJvcHRpbWl6ZVF1YWxpdHkiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIiB0ZXh0LXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIgoJIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjgzLjUgMjgzLjUiCgkgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjgzLjUgMjgzLjU7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojMzQzNDM0O30KCS5zdDF7ZmlsbDojOEM4QzhDO30KCS5zdDJ7ZmlsbDojM0MzQzNCO30KCS5zdDN7ZmlsbDojMTQxNDE0O30KCS5zdDR7ZmlsbDojMzkzOTM5O30KPC9zdHlsZT4KPGc+Cgk8Zz4KCQk8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTQxLjcsMjUuOWwtMS41LDUuMnYxNTMuM2wxLjUsMS41bDcxLjItNDIuMUwxNDEuNywyNS45eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNS45TDcwLjYsMTQzLjhsNzEuMSw0Mi4xdi03NC40VjI1Ljl6Ii8+CgkJPHBhdGggY2xhc3M9InN0MiIgZD0iTTE0MS43LDE5OS40bC0wLjgsMS4xdjU0LjZsMC44LDIuNWw3MS4yLTEwMC4zTDE0MS43LDE5OS40eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNTcuNnYtNTguMmwtNzEuMS00Mi4xTDE0MS43LDI1Ny42eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDMiIGQ9Ik0xNDEuNywxODUuOWw3MS4yLTQyLjFsLTcxLjItMzIuM1YxODUuOXoiLz4KCQk8cGF0aCBjbGFzcz0ic3Q0IiBkPSJNNzAuNiwxNDMuOGw3MS4xLDQyLjF2LTc0LjRMNzAuNiwxNDMuOHoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",protocol:"weth",slippage:!1,blockchains:["optimism"],optimism:{router:{address:Hf.optimism.wrapped.address,api:hj.WETH}}};var Mj=t=>new IL(Object.assign(bj,{scope:t,findPath:t=>hj.findPath({...t,exchange:bj}),pathExists:t=>hj.pathExists({...t,exchange:bj}),getAmounts:t=>hj.getAmounts({...t,exchange:bj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:bj})}));const Aj={name:"weth_base",label:"Wrapped Ethereum",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIKCSBpZD0iTGF5ZXJfMSIgaW1hZ2UtcmVuZGVyaW5nPSJvcHRpbWl6ZVF1YWxpdHkiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIiB0ZXh0LXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIgoJIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjgzLjUgMjgzLjUiCgkgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjgzLjUgMjgzLjU7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojMzQzNDM0O30KCS5zdDF7ZmlsbDojOEM4QzhDO30KCS5zdDJ7ZmlsbDojM0MzQzNCO30KCS5zdDN7ZmlsbDojMTQxNDE0O30KCS5zdDR7ZmlsbDojMzkzOTM5O30KPC9zdHlsZT4KPGc+Cgk8Zz4KCQk8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTQxLjcsMjUuOWwtMS41LDUuMnYxNTMuM2wxLjUsMS41bDcxLjItNDIuMUwxNDEuNywyNS45eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNS45TDcwLjYsMTQzLjhsNzEuMSw0Mi4xdi03NC40VjI1Ljl6Ii8+CgkJPHBhdGggY2xhc3M9InN0MiIgZD0iTTE0MS43LDE5OS40bC0wLjgsMS4xdjU0LjZsMC44LDIuNWw3MS4yLTEwMC4zTDE0MS43LDE5OS40eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNDEuNywyNTcuNnYtNTguMmwtNzEuMS00Mi4xTDE0MS43LDI1Ny42eiIvPgoJCTxwYXRoIGNsYXNzPSJzdDMiIGQ9Ik0xNDEuNywxODUuOWw3MS4yLTQyLjFsLTcxLjItMzIuM1YxODUuOXoiLz4KCQk8cGF0aCBjbGFzcz0ic3Q0IiBkPSJNNzAuNiwxNDMuOGw3MS4xLDQyLjF2LTc0LjRMNzAuNiwxNDMuOHoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",protocol:"weth",slippage:!1,blockchains:["base"],base:{router:{address:Hf.base.wrapped.address,api:hj.WETH}}};var Ij=t=>new IL(Object.assign(Aj,{scope:t,findPath:t=>hj.findPath({...t,exchange:Aj}),pathExists:t=>hj.pathExists({...t,exchange:Aj}),getAmounts:t=>hj.getAmounts({...t,exchange:Aj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:Aj})}));const Nj={name:"wftm",label:"Wrapped Fantom",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgMTkyIDE5MiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTkyIDE5MjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8ZyBpZD0iY2lyY2xlIj4KCTxnIGlkPSJGYW50b20tY2lyY2xlIj4KCQk8Y2lyY2xlIGlkPSJPdmFsIiBmaWxsUnVsZT0iZXZlbm9kZCIgY2xpcFJ1bGU9ImV2ZW5vZGQiIGZpbGw9IiMxOTY5RkYiIGNsYXNzPSJzdDAiIGN4PSI5NiIgY3k9Ijk2IiByPSI4MC40Ii8+CgkJPHBhdGggaWQ9IlNoYXBlIiBmaWxsPSIjRkZGRkZGIiBkPSJNOTEuMSw0MS4yYzIuNy0xLjQsNi44LTEuNCw5LjUsMGwyNy42LDE0LjZjMS42LDAuOSwyLjUsMi4xLDIuNywzLjVoMHY3My4zCgkJCWMwLDEuNC0wLjksMi45LTIuNywzLjhsLTI3LjYsMTQuNmMtMi43LDEuNC02LjgsMS40LTkuNSwwbC0yNy42LTE0LjZjLTEuOC0wLjktMi42LTIuNC0yLjctMy44YzAtMC4xLDAtMC4zLDAtMC40bDAtNzIuNAoJCQljMC0wLjEsMC0wLjIsMC0wLjNsMC0wLjJoMGMwLjEtMS4zLDEtMi42LDIuNi0zLjVMOTEuMSw0MS4yeiBNMTI2LjYsOTkuOWwtMjYsMTMuN2MtMi43LDEuNC02LjgsMS40LTkuNSwwTDY1LjIsMTAwdjMyLjMKCQkJbDI1LjksMTMuNmMxLjUsMC44LDMuMSwxLjYsNC43LDEuN2wwLjEsMGMxLjUsMCwzLTAuOCw0LjYtMS41bDI2LjItMTMuOVY5OS45eiBNNTYuNSwxMzAuOWMwLDIuOCwwLjMsNC43LDEsNgoJCQljMC41LDEuMSwxLjMsMS45LDIuOCwyLjlsMC4xLDAuMWMwLjMsMC4yLDAuNywwLjQsMS4xLDAuN2wwLjUsMC4zbDEuNiwwLjlsLTIuMiwzLjdsLTEuNy0xLjFsLTAuMy0wLjJjLTAuNS0wLjMtMC45LTAuNi0xLjMtMC44CgkJCWMtNC4yLTIuOC01LjctNS45LTUuNy0xMi4zbDAtMC4ySDU2LjV6IE05My44LDgwLjVjLTAuMiwwLjEtMC40LDAuMS0wLjYsMC4yTDY1LjYsOTUuM2MwLDAtMC4xLDAtMC4xLDBsMCwwbDAsMGwwLjEsMGwyNy42LDE0LjYKCQkJYzAuMiwwLjEsMC40LDAuMiwwLjYsMC4yVjgwLjV6IE05OC4yLDgwLjV2MjkuOGMwLjItMC4xLDAuNC0wLjEsMC42LTAuMmwyNy42LTE0LjZjMCwwLDAuMSwwLDAuMSwwbDAsMGwwLDBsLTAuMSwwTDk4LjgsODAuNwoJCQlDOTguNiw4MC42LDk4LjQsODAuNSw5OC4yLDgwLjV6IE0xMjYuNiw2NC40bC0yNC44LDEzbDI0LjgsMTNWNjQuNHogTTY1LjIsNjQuNHYyNi4xbDI0LjgtMTNMNjUuMiw2NC40eiBNOTguNyw0NS4xCgkJCWMtMS40LTAuOC00LTAuOC01LjUsMEw2NS42LDU5LjdjMCwwLTAuMSwwLTAuMSwwbDAsMGwwLDBsMC4xLDBsMjcuNiwxNC42YzEuNCwwLjgsNCwwLjgsNS41LDBsMjcuNi0xNC42YzAsMCwwLjEsMCwwLjEsMGwwLDBsMCwwCgkJCWwtMC4xLDBMOTguNyw0NS4xeiBNMTMwLjcsNDYuNWwxLjcsMS4xbDAuMywwLjJjMC41LDAuMywwLjksMC42LDEuMywwLjhjNC4yLDIuOCw1LjcsNS45LDUuNywxMi4zbDAsMC4yaC00LjNjMC0yLjgtMC4zLTQuNy0xLTYKCQkJYy0wLjUtMS4xLTEuMy0xLjktMi44LTIuOWwtMC4xLTAuMWMtMC4zLTAuMi0wLjctMC40LTEuMS0wLjdsLTAuNS0wLjNsLTEuNi0wLjlMMTMwLjcsNDYuNXoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",protocol:"weth",slippage:!1,blockchains:["fantom"],fantom:{router:{address:Hf.fantom.wrapped.address,api:hj.WETH}}};var Ej=t=>new IL(Object.assign(Nj,{scope:t,findPath:t=>hj.findPath({...t,exchange:Nj}),pathExists:t=>hj.pathExists({...t,exchange:Nj}),getAmounts:t=>hj.getAmounts({...t,exchange:Nj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:Nj})}));const xj={name:"wmatic",label:"Wrapped MATIC",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA0NS40IDQ1LjQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ1LjQgNDUuNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiM4MjQ3RTU7fQo8L3N0eWxlPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMzEuOSwxNi42Yy0wLjctMC40LTEuNi0wLjQtMi4yLDBsLTUuMywzLjFsLTMuNSwybC01LjEsMy4xYy0wLjcsMC40LTEuNiwwLjQtMi4yLDBsLTQtMi40CgljLTAuNi0wLjQtMS4xLTEuMS0xLjEtMnYtNC42YzAtMC45LDAuNS0xLjYsMS4xLTJsNC0yLjNjMC43LTAuNCwxLjUtMC40LDIuMiwwbDQsMi40YzAuNywwLjQsMS4xLDEuMSwxLjEsMnYzLjFsMy41LTIuMXYtMy4yCgljMC0wLjktMC40LTEuNi0xLjEtMmwtNy41LTQuNGMtMC43LTAuNC0xLjUtMC40LTIuMiwwTDYsMTEuN2MtMC43LDAuNC0xLjEsMS4xLTEuMSwxLjh2OC43YzAsMC45LDAuNCwxLjYsMS4xLDJsNy42LDQuNAoJYzAuNywwLjQsMS41LDAuNCwyLjIsMGw1LjEtMi45bDMuNS0yLjFsNS4xLTIuOWMwLjctMC40LDEuNi0wLjQsMi4yLDBsNCwyLjNjMC43LDAuNCwxLjEsMS4xLDEuMSwydjQuNmMwLDAuOS0wLjQsMS42LTEuMSwyCglsLTMuOSwyLjNjLTAuNywwLjQtMS41LDAuNC0yLjIsMGwtNC0yLjNjLTAuNy0wLjQtMS4xLTEuMS0xLjEtMnYtMi45TDIxLDI4Ljd2My4xYzAsMC45LDAuNCwxLjYsMS4xLDJsNy41LDQuNAoJYzAuNywwLjQsMS41LDAuNCwyLjIsMGw3LjUtNC40YzAuNy0wLjQsMS4xLTEuMSwxLjEtMlYyM2MwLTAuOS0wLjQtMS42LTEuMS0yQzM5LjIsMjEsMzEuOSwxNi42LDMxLjksMTYuNnoiLz4KPC9zdmc+Cg==",protocol:"weth",slippage:!1,blockchains:["polygon"],polygon:{router:{address:Hf.polygon.wrapped.address,api:hj.WETH}}};var kj=t=>new IL(Object.assign(xj,{scope:t,findPath:t=>hj.findPath({...t,exchange:xj}),pathExists:t=>hj.pathExists({...t,exchange:xj}),getAmounts:t=>hj.getAmounts({...t,exchange:xj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:xj})}));const Tj={name:"wxdai",label:"Wrapped XDAI",logo:Hf.gnosis.wrapped.logo,protocol:"weth",slippage:!1,blockchains:["gnosis"],gnosis:{router:{address:Hf.gnosis.wrapped.address,api:hj.WETH}}};var Lj=t=>new IL(Object.assign(Tj,{scope:t,findPath:t=>hj.findPath({...t,exchange:Tj}),pathExists:t=>hj.pathExists({...t,exchange:Tj}),getAmounts:t=>hj.getAmounts({...t,exchange:Tj}),getPrep:t=>{},getTransaction:t=>hj.getTransaction({...t,exchange:Tj})}));const Sj=[TS(),lj(),BS(),KS(),SS(),JS(),US(),YS(),DL(),gj(),Mj(),Ij(),wj(),yj(),kj(),Ej(),fj(),Lj()];Sj.forEach((t=>{Sj[t.name]=t})),Sj.ethereum=[lj("ethereum"),KS("ethereum"),gj("ethereum")],Sj.ethereum.forEach((t=>{Sj.ethereum[t.name]=t})),Sj.bsc=[BS("bsc"),lj("bsc"),SS("bsc"),yj("bsc")],Sj.bsc.forEach((t=>{Sj.bsc[t.name]=t})),Sj.polygon=[lj("polygon"),US("polygon"),kj("polygon")],Sj.polygon.forEach((t=>{Sj.polygon[t.name]=t})),Sj.solana=[TS("solana")],Sj.solana.forEach((t=>{Sj.solana[t.name]=t})),Sj.optimism=[lj("optimism"),Mj("optimism")],Sj.optimism.forEach((t=>{Sj.optimism[t.name]=t})),Sj.base=[lj("base"),Ij("base")],Sj.base.forEach((t=>{Sj.base[t.name]=t})),Sj.arbitrum=[lj("arbitrum"),wj("arbitrum")],Sj.arbitrum.forEach((t=>{Sj.arbitrum[t.name]=t})),Sj.fantom=[YS("fantom"),Ej("fantom")],Sj.fantom.forEach((t=>{Sj.fantom[t.name]=t})),Sj.avalanche=[JS("avalanche"),fj("avalanche")],Sj.avalanche.forEach((t=>{Sj.avalanche[t.name]=t})),Sj.gnosis=[DL("gnosis"),Lj("gnosis")],Sj.gnosis.forEach((t=>{Sj.gnosis[t.name]=t}));Sj.route=({blockchain:t,tokenIn:e,tokenOut:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a})=>Promise.all(Sj[t].map((t=>t.route({tokenIn:e,tokenOut:n,amountIn:r,amountOut:i,amountInMax:o,amountOutMin:a})))).then((t=>t.filter(Boolean).sort(((t,e)=>(r||o?BigInt(t.amountOut)<BigInt(e.amountOut):BigInt(t.amountIn)>BigInt(e.amountIn))?1:(r||o?BigInt(t.amountOut)>BigInt(e.amountOut):BigInt(t.amountIn)<BigInt(e.amountIn))?-1:0))));var jj={solana:{address:"DePayRG7ZySPWzeK9Kvq7aPeif7sdbBZNh6DHcvNj7F7",ammProgram:"whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc",alt:"EYGgx5fYCZtLN2pvnR4Bhn5KpMffKwyHCms4VhjSvF2K",api:{createPaymentsAccount:{anchorDiscriminator:new rf("8445995362644372894"),layout:pf([vf("anchorDiscriminator")])},createEscrowSolAccount:{anchorDiscriminator:new rf("2482112285991870004"),layout:pf([vf("anchorDiscriminator")])},createEscrowTokenAccount:{anchorDiscriminator:new rf("16156440424245087"),layout:pf([vf("anchorDiscriminator")])},routeSol:{anchorDiscriminator:new rf("6497164560834983274"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])},routeToken:{anchorDiscriminator:new rf("13483873682232752277"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])},routeOrcaSwap:{anchorDiscriminator:new rf("9797248061404332986"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("amountIn"),yf("sqrtPriceLimit"),af("amountSpecifiedIsInput"),af("aToB"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])},routeOrcaSwapSolOut:{anchorDiscriminator:new rf("13662217913752830165"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("amountIn"),yf("sqrtPriceLimit"),af("amountSpecifiedIsInput"),af("aToB"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])},routeOrcaTwoHopSwap:{anchorDiscriminator:new rf("15695720599845325801"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("amountIn"),af("amountSpecifiedIsInput"),af("aToBOne"),af("aToBTwo"),yf("sqrtPriceLimitOne"),yf("sqrtPriceLimitTwo"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])},routeOrcaTwoHopSwapSolOut:{anchorDiscriminator:new rf("15074061855608091530"),layout:pf([vf("anchorDiscriminator"),vf("nonce"),vf("amountIn"),af("amountSpecifiedIsInput"),af("aToBOne"),af("aToBTwo"),yf("sqrtPriceLimitOne"),yf("sqrtPriceLimitTwo"),vf("paymentAmount"),vf("feeAmount"),cf("deadline")])}}}};let Dj,Cj=()=>Dj||(Dj="object"==typeof r?r:window,Dj);const Oj=()=>(void 0===Cj()._Web3ClientConfiguration&&(Cj()._Web3ClientConfiguration={}),Cj()._Web3ClientConfiguration);function zj(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}class Pj extends ZA{constructor(t,e,n,r){super(t),this._network=e,this._endpoint=t,this._endpoints=n,this._failover=r,this._pendingBatch=[]}detectNetwork(){return Promise.resolve(Hf.findByName(this._network).id)}requestChunk(t,e,n){try{const r=t.map((t=>t.request));return $M(e,JSON.stringify(r)).then((e=>{t.forEach(((t,n)=>{const r=e[n];if(zj([r,"optionalAccess",t=>t.error])){const e=new Error(r.error.message);e.code=r.error.code,e.data=r.error.data,t.reject(e)}else zj([r,"optionalAccess",t=>t.result])?t.resolve(r.result):t.reject()}))})).catch((e=>{if(n<3&&e&&"SERVER_ERROR"==e.code){const e=this._endpoints.indexOf(this._endpoint)+1;this._failover(),this._endpoint=e>=this._endpoints.length?this._endpoints[0]:this._endpoints[e],this.requestChunk(t,this._endpoint,n+1)}else t.forEach((t=>{t.reject(e)}))}))}catch(e){t.forEach((t=>{t.reject()}))}}send(t,e){const n={method:t,params:e,id:this._nextId++,jsonrpc:"2.0"};null==this._pendingBatch&&(this._pendingBatch=[]);const r={request:n,resolve:null,reject:null},i=new Promise(((t,e)=>{r.resolve=t,r.reject=e}));return this._pendingBatch.push(r),this._pendingBatchAggregator||(this._pendingBatchAggregator=setTimeout((()=>{const t=this._pendingBatch;this._pendingBatch=[],this._pendingBatchAggregator=null;const e=[];for(let n=0;n<Math.ceil(t.length/99);n++)e[n]=t.slice(99*n,99*(n+1));e.forEach((t=>(t.map((t=>t.request)),this.requestChunk(t,this._endpoint,1))))}),Oj().batchInterval||10)),i}}const _j=()=>(null==Cj()._Web3ClientProviders&&(Cj()._Web3ClientProviders={}),Cj()._Web3ClientProviders),Bj=(t,e)=>{void 0===_j()[t]&&(_j()[t]=[]);const n=_j()[t].indexOf(e);n>-1&&_j()[t].splice(n,1),_j()[t].unshift(e)},Rj=async(t,e,n=!0)=>{let r;_j()[t]=e.map(((r,i)=>new Pj(r,t,e,(()=>{1===_j()[t].length?Rj(t,e,n):_j()[t].splice(i,1)}))));let i=Cj();if(null==i.fetch||void 0!==k&&k.env&&"test"==k.env.NODE_ENV||void 0!==i.cy||!1===n)r=_j()[t][0];else{let n=await Promise.all(e.map((t=>new Promise((async e=>{let n=(new Date).getTime();setTimeout((()=>e(900)),900);if(!(await fetch(t,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},referrer:"",referrerPolicy:"no-referrer",body:JSON.stringify({method:"net_version",id:1,jsonrpc:"2.0"})})).ok)return e(999);let r=(new Date).getTime();e(r-n)})))));const i=Math.min(...n),o=n.indexOf(i);r=_j()[t][o]}Bj(t,r)};var Uj=async t=>{let e=_j();if(e&&e[t])return e[t][0];let n=Cj();return n._Web3ClientGetProviderPromise&&n._Web3ClientGetProviderPromise[t]||(n._Web3ClientGetProviderPromise||(n._Web3ClientGetProviderPromise={}),n._Web3ClientGetProviderPromise[t]=new Promise((async e=>{await Rj(t,Hf[t].endpoints),e(Cj()._Web3ClientProviders[t][0])}))),await n._Web3ClientGetProviderPromise[t]},Qj=async t=>{let e=_j();if(e&&e[t])return e[t];let n=Cj();return n._Web3ClientGetProvidersPromise&&n._Web3ClientGetProvidersPromise[t]||(n._Web3ClientGetProvidersPromise||(n._Web3ClientGetProvidersPromise={}),n._Web3ClientGetProvidersPromise[t]=new Promise((async e=>{await Rj(t,Hf[t].endpoints),e(Cj()._Web3ClientProviders[t])}))),await n._Web3ClientGetProvidersPromise[t]};class Yj extends ql{constructor(t,e,n,r){super(t),this._provider=new ql(t),this._network=e,this._endpoint=t,this._endpoints=n,this._failover=r,this._pendingBatch=[],this._rpcRequest=this._rpcRequestReplacement.bind(this)}handleError(t,e,n){if(e<3&&t&&["Failed to fetch","limit reached","504","503","502","500","429","426","422","413","409","408","406","405","404","403","402","401","400"].some((e=>t.toString().match(e)))){const t=this._endpoints.indexOf(this._endpoint)+1;this._endpoint=t>=this._endpoints.length?this._endpoints[0]:this._endpoints[t],this._provider=new ql(this._endpoint),this.requestChunk(n,e+1)}else n.forEach((e=>{e.reject(t)}))}batchRequest(t,e){return new Promise(((e,n)=>{0===t.length&&e([]);const r=t.map((t=>this._rpcClient.request(t.methodName,t.args)));fetch(this._endpoint,{method:"POST",body:JSON.stringify(r),headers:{"Content-Type":"application/json"}}).then((t=>{t.ok?t.json().then((t=>{e(t)})).catch(n):n(`${t.status} ${t.text}`)})).catch(n)}))}requestChunk(t,e){const n=t.map((t=>t.request));try{return this.batchRequest(n,e).then((e=>{t.forEach(((t,n)=>{const r=e[n];if(function(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}([r,"optionalAccess",t=>t.error])){const e=new Error(r.error.message);e.code=r.error.code,e.data=r.error.data,t.reject(e)}else r?t.resolve(r):t.reject()}))})).catch((n=>this.handleError(n,e,t)))}catch(n){return this.handleError(n,e,t)}}_rpcRequestReplacement(t,e){const n={methodName:t,args:e};null==this._pendingBatch&&(this._pendingBatch=[]);const r={request:n,resolve:null,reject:null},i=new Promise(((t,e)=>{r.resolve=t,r.reject=e}));return this._pendingBatch.push(r),this._pendingBatchAggregator||(this._pendingBatchAggregator=setTimeout((()=>{const t=this._pendingBatch;this._pendingBatch=[],this._pendingBatchAggregator=null;const e=[];for(let n=0;n<Math.ceil(t.length/99);n++)e[n]=t.slice(99*n,99*(n+1));e.forEach((t=>(t.map((t=>t.request)),this.requestChunk(t,1))))}),Oj().batchInterval||10)),i}}const Wj=()=>(null==Cj()._Web3ClientProviders&&(Cj()._Web3ClientProviders={}),Cj()._Web3ClientProviders),Fj=(t,e)=>{void 0===Wj()[t]&&(Wj()[t]=[]);const n=Wj()[t].indexOf(e);n>-1&&Wj()[t].splice(n,1),Wj()[t].unshift(e)},Vj=async(t,e,n=!0)=>{let r;Wj()[t]=e.map(((r,i)=>new Yj(r,t,e,(()=>{1===Wj()[t].length?Vj(t,e,n):Wj()[t].splice(i,1)}))));let i=Cj();if(null==i.fetch||void 0!==k&&k.env&&"test"==k.env.NODE_ENV||void 0!==i.cy||!1===n)r=Wj()[t][0];else{let n=await Promise.all(e.map((t=>new Promise((async e=>{let n=(new Date).getTime();setTimeout((()=>e(900)),900);if(!(await fetch(t,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},referrer:"",referrerPolicy:"no-referrer",body:JSON.stringify({method:"getIdentity",id:1,jsonrpc:"2.0"})})).ok)return e(999);let r=(new Date).getTime();e(r-n)})))));const i=Math.min(...n),o=n.indexOf(i);r=Wj()[t][o]}Fj(t,r)};var Hj=async t=>{let e=Wj();if(e&&e[t])return e[t][0];let n=Cj();return n._Web3ClientGetProviderPromise&&n._Web3ClientGetProviderPromise[t]||(n._Web3ClientGetProviderPromise||(n._Web3ClientGetProviderPromise={}),n._Web3ClientGetProviderPromise[t]=new Promise((async e=>{await Vj(t,Hf[t].endpoints),e(Cj()._Web3ClientProviders[t][0])}))),await n._Web3ClientGetProviderPromise[t]},Gj=async t=>{let e=Wj();if(e&&e[t])return e[t];let n=Cj();return n._Web3ClientGetProvidersPromise&&n._Web3ClientGetProvidersPromise[t]||(n._Web3ClientGetProvidersPromise||(n._Web3ClientGetProvidersPromise={}),n._Web3ClientGetProvidersPromise[t]=new Promise((async e=>{await Vj(t,Hf[t].endpoints),e(Cj()._Web3ClientProviders[t])}))),await n._Web3ClientGetProvidersPromise[t]};let qj=["ethereum","bsc","polygon","solana","fantom","arbitrum","avalanche","gnosis","optimism","base"];qj.evm=["ethereum","bsc","polygon","fantom","arbitrum","avalanche","gnosis","optimism","base"],qj.solana=["solana"];let Zj=()=>(null==Cj()._Web3ClientCacheStore&&(Cj()._Web3ClientCacheStore={}),Cj()._Web3ClientCacheStore),Jj=()=>(null==Cj()._Web3ClientPromiseStore&&(Cj()._Web3ClientPromiseStore={}),Cj()._Web3ClientPromiseStore),Xj=function({key:t}){Jj()[t]=void 0},Kj=function({call:t,key:e,expires:n=0}){return new Promise(((r,i)=>{let o,a=function({key:t}){return Jj()[t]}({key:e=JSON.stringify(e)});if(a)return a.then(r).catch(i);(function({key:t,promise:e}){return Jj()[t]=e,e})({key:e,promise:new Promise(((a,s)=>0===n?t().then((t=>{r(t),a(t)})).catch((t=>{i(t),s(t)})):(o=function({key:t,expires:e}){let n=Zj()[t];if(function(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}([n,"optionalAccess",t=>t.expiresAt])>Date.now())return n.value}({key:e,expires:n}),o?(r(o),a(o),o):void t().then((t=>{t&&function({key:t,value:e,expires:n}){Zj()[t]={expiresAt:Date.now()+n,value:e}}({key:e,value:t,expires:n}),r(t),a(t)})).catch((t=>{i(t),s(t)})))))}).then((()=>{Xj({key:e})})).catch((()=>{Xj({key:e})}))}))};const $j=async t=>{if(qj.evm.includes(t))return await Uj(t);if(qj.solana.includes(t))return await Hj(t);throw"Unknown blockchain: "+t};const tD=({address:t,api:e,method:n,params:r,provider:i,block:o})=>{const a=new PM(t,e,i),s=(({contract:t,method:e,params:n})=>t.interface.fragments.find((t=>t.name==e)).inputs.map(((t,e)=>Array.isArray(n)?n[e]:n[t.name])))({contract:a,method:n,params:r}),u=a.interface.fragments.find((t=>t.name===n));return void 0===a[n]&&(n=`${n}(${u.inputs.map((t=>t.type)).join(",")})`),u&&"nonpayable"===u.stateMutability?a.callStatic[n](...s,{blockTag:o}):a[n](...s,{blockTag:o})},eD=({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:a})=>n?tD({address:e,api:n,method:r,params:i,provider:a,block:o}):"latestBlockNumber"===r?a.getBlockNumber():"balance"===r?(({address:t,provider:e})=>e.getBalance(t))({address:e,provider:a}):"transactionCount"===r?(({address:t,provider:e})=>e.getTransactionCount(t))({address:e,provider:a}):void 0;const nD=async({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:a,providers:s})=>{try{if(null==r||"getAccountInfo"===r)return null==n&&(n=of),await(async({address:t,api:e,method:n,params:r,provider:i,block:o})=>{const a=await i.getAccountInfo(new Xs(t));if(a&&a.data)return e.decode(a.data)})({address:e,api:n,method:r,params:i,provider:a,block:o});if("getProgramAccounts"===r)return await a.getProgramAccounts(new Xs(e),i).then((t=>n?t.map((t=>(t.data=n.decode(t.account.data),t))):t));if("getTokenAccountBalance"===r)return await a.getTokenAccountBalance(new Xs(e));if("latestBlockNumber"===r)return await a.getSlot(i||void 0);if("balance"===r)return await(({address:t,provider:e})=>e.getBalance(new Xs(t)))({address:e,provider:a})}catch(u){if(s&&u&&["Failed to fetch","limit reached","504","503","502","500","429","426","422","413","409","408","406","405","404","403","402","401","400"].some((t=>u.toString().match(t)))){let u=s[s.indexOf(a)+1]||s[0];return nD({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:u,providers:s})}throw u}};const rD=async function(t,e){const{blockchain:n,address:r,method:i}=(t=>{if("object"==typeof t)return t;let e=t.match(/(?<blockchain>\w+):\/\/(?<part1>[\w\d]+)(\/(?<part2>[\w\d]+)*)?/);return null==e.groups.part2?e.groups.part1.match(/\d/)?{blockchain:e.groups.blockchain,address:e.groups.part1}:{blockchain:e.groups.blockchain,method:e.groups.part1}:{blockchain:e.groups.blockchain,address:e.groups.part1,method:e.groups.part2}})(t),{api:o,params:a,cache:s,block:u,timeout:c,strategy:l,cacheKey:h}=("object"==typeof t?t:e)||{};return await Kj({expires:s||0,key:h||[n,r,i,a,u],call:async()=>{if(qj.evm.includes(n))return await(async({blockchain:t,address:e,api:n,method:r,params:i,block:o,timeout:a,strategy:s})=>{if(s=s||Oj().strategy||"failover",a=a||Oj().timeout||void 0,"fastest"===s){const s=await Qj(t);let u=[];const c=s.map((a=>new Promise((s=>{u.push(eD({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:a}).then(s))})))),l=new Promise(((t,e)=>setTimeout((()=>{e(new Error("Web3ClientTimeout"))}),a||1e4)));return u=Promise.all(u.map((t=>new Promise((e=>{t.catch(e)}))))).then((()=>{})),Promise.race([...c,l,u])}{const s=await Uj(t),u=eD({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:s});return a?(a=new Promise(((t,e)=>setTimeout((()=>{e(new Error("Web3ClientTimeout"))}),a))),Promise.race([u,a])):u}})({blockchain:n,address:r,api:o,method:i,params:a,block:u,strategy:l,timeout:c});if(qj.solana.includes(n))return await(async({blockchain:t,address:e,api:n,method:r,params:i,block:o,timeout:a,strategy:s})=>{s=s||Oj().strategy||"failover",a=a||Oj().timeout||void 0;const u=await Gj(t);if("fastest"===s){let s=[];const c=u.map((a=>new Promise((u=>{s.push(nD({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:a}).then(u))})))),l=new Promise(((t,e)=>setTimeout((()=>{e(new Error("Web3ClientTimeout"))}),a||1e4)));return s=Promise.all(s.map((t=>new Promise((e=>{t.catch(e)}))))).then((()=>{})),Promise.race([...c,l,s])}{const s=await Hj(t),c=nD({blockchain:t,address:e,api:n,method:r,params:i,block:o,provider:s,providers:u});return a?(a=new Promise(((t,e)=>setTimeout((()=>{e(new Error("Web3ClientTimeout"))}),a))),Promise.race([c,a])):c}})({blockchain:n,address:r,api:o,method:i,params:a,block:u,strategy:l,timeout:c});throw"Unknown blockchain: "+n}})},iD=async({wSolSenderAccountKeypair:t,paymentRoute:e})=>{if(!t)return;const n=e.fromToken.address===Hf.solana.currency.address?new rf(e.fromAmount):new rf("0"),r=await $j("solana"),i=new rf(await r.getMinimumBalanceForRentExemption(Tk.solana.TOKEN_LAYOUT.span)),o=e.fromAddress,a=n.add(i);return[Wu.createAccount({fromPubkey:new Xs(o),newAccountPubkey:t.publicKey,programId:new Xs(Tk.solana.TOKEN_PROGRAM),space:Tk.solana.TOKEN_LAYOUT.span,lamports:a}),Tk.solana.initializeAccountInstruction({account:t.publicKey.toString(),token:Hf.solana.wrapped.address,owner:o})]},oD=async({wSolEscrowAccountKeypair:t,paymentRoute:e})=>{if(!t)return;const n=await $j("solana"),r=new rf(await n.getMinimumBalanceForRentExemption(Tk.solana.TOKEN_LAYOUT.span)),i=await vD();return[Wu.createAccount({fromPubkey:new Xs(e.fromAddress),newAccountPubkey:t.publicKey,programId:new Xs(Tk.solana.TOKEN_PROGRAM),space:Tk.solana.TOKEN_LAYOUT.span,lamports:r}),Tk.solana.initializeAccountInstruction({account:t.publicKey.toString(),token:Hf.solana.wrapped.address,owner:i.toString()})]},aD=({paymentRoute:t})=>{let e=[...t.exchangeRoutes[0].path];return e.indexOf(Hf.solana.currency.address)>-1&&e.splice(e.indexOf(Hf.solana.currency.address),1),e.indexOf(t.fromToken.address)>-1&&e.splice(e.indexOf(t.fromToken.address),1),e.indexOf(t.toToken.address)>-1&&e.splice(e.indexOf(t.toToken.address),1),2===e.length&&e[0]===Hf.solana.wrapped.address?e[1]:e[0]},sD=async({paymentRoute:t})=>await Tk.solana.findProgramAddress({token:aD({paymentRoute:t}),owner:t.fromAddress}),uD=async({paymentRoute:t})=>{if(0===t.exchangeRoutes.length||AD(t.exchangeRoutes[0].path).length<=2)return;return await(async({paymentRoute:t})=>await rD({blockchain:"solana",address:await sD({paymentRoute:t}),api:Tk.solana.TOKEN_LAYOUT,cache:1e3}))({paymentRoute:t})?void 0:Tk.solana.createAssociatedTokenAccountInstruction({token:aD({paymentRoute:t}),owner:t.fromAddress,payer:t.fromAddress})},cD=async({wSolSenderAccountKeypair:t,paymentRoute:e})=>{if(t)return Tk.solana.closeAccountInstruction({account:t.publicKey.toString(),owner:e.fromAddress})},lD=async({from:t})=>{let e=[nf.from("payments"),new Xs(t).toBuffer()],[n]=await Xs.findProgramAddress(e,new Xs(jj.solana.address));return n},hD=async({from:t})=>{let e=(await lD({from:t})).toString();return await rD({blockchain:"solana",address:e,api:pf([vf("anchorDiscriminator"),vf("nonce")]),cache:1e3})},dD=async({from:t})=>{if(await hD({from:t}))return;const e=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(t),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t}),isSigner:!1,isWritable:!0}],n=nf.alloc(jj.solana.api.createPaymentsAccount.layout.span);return jj.solana.api.createPaymentsAccount.layout.encode({anchorDiscriminator:jj.solana.api.createPaymentsAccount.anchorDiscriminator},n),new gu({keys:e,programId:new Xs(jj.solana.address),data:n})},fD=async({paymentRoute:t})=>await Tk.solana.findProgramAddress({token:t.fromToken.address,owner:t.fromAddress}),pD=async({paymentRoute:t})=>await Tk.solana.findProgramAddress({token:t.toToken.address,owner:t.toAddress}),yD=async({paymentRoute:t})=>{if(t.toToken.address===Hf.solana.currency.address){const e=await rD({blockchain:"solana",method:"balance",address:t.toAddress}),n=await $j("solana"),r=new rf(await n.getMinimumBalanceForRentExemption(0)),i=new rf(t.toAmount);if(new rf(e).add(i).gt(r))return;return Wu.transfer({fromPubkey:new Xs(t.fromAddress),toPubkey:new Xs(t.toAddress),lamports:r.sub(i)})}{const e=t.toToken.address;if(await(async({paymentRoute:t})=>await Tk.solana.findAccount({token:t.toToken.address,owner:t.toAddress}))({paymentRoute:t}))return;return Tk.solana.createAssociatedTokenAccountInstruction({token:e,owner:t.toAddress,payer:t.fromAddress})}},mD=async({paymentRoute:t})=>await Tk.solana.findProgramAddress({token:t.toToken.address,owner:t.fee.receiver}),gD=async({paymentRoute:t})=>{if(t.fee){if(t.toToken.address===Hf.solana.currency.address){const e=await rD({blockchain:"solana",method:"balance",address:t.fee.receiver}),n=await $j("solana"),r=new rf(await n.getMinimumBalanceForRentExemption(0)),i=new rf(t.feeAmount);if(new rf(e).add(i).gt(r))return;return Wu.transfer({fromPubkey:new Xs(t.fromAddress),toPubkey:new Xs(t.fee.receiver),lamports:r.sub(i)})}{const e=t.toToken.address;if(await(async({paymentRoute:t})=>await Tk.solana.findAccount({token:t.toToken.address,owner:t.fee.receiver}))({paymentRoute:t}))return;return Tk.solana.createAssociatedTokenAccountInstruction({token:e,owner:t.fee.receiver,payer:t.fromAddress})}}},vD=async()=>{let t=[nf.from("escrow_sol")],[e,n]=await Xs.findProgramAddress(t,new Xs(jj.solana.address));return e},wD=async({paymentRoute:t})=>{let e=[nf.from("escrow"),new Xs(t.toToken.address===Hf.solana.currency.address?Hf.solana.wrapped.address:t.toToken.address).toBuffer()],[n,r]=await Xs.findProgramAddress(e,new Xs(jj.solana.address));return n},bD=async({paymentRoute:t})=>{if(0===t.exchangeRoutes.length||t.toToken.address===Hf.solana.currency.address)return;if(await(async({paymentRoute:t})=>await rD({blockchain:"solana",address:(await wD({paymentRoute:t})).toString(),api:Tk.solana.TOKEN_LAYOUT,cache:1e3}))({paymentRoute:t}))return;const e=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:new Xs(t.toToken.address===Hf.solana.currency.address?Hf.solana.wrapped.address:t.toToken.address),isSigner:!1,isWritable:!0},{pubkey:await wD({paymentRoute:t}),isSigner:!1,isWritable:!0}],n=nf.alloc(jj.solana.api.createEscrowTokenAccount.layout.span);return jj.solana.api.createEscrowTokenAccount.layout.encode({anchorDiscriminator:jj.solana.api.createEscrowTokenAccount.anchorDiscriminator},n),new gu({keys:e,programId:new Xs(jj.solana.address),data:n})},MD=async({paymentRoute:t})=>{if(0===t.exchangeRoutes.length||t.toToken.address!=Hf.solana.currency.address)return;if(await(async({paymentRoute:t})=>await rD({blockchain:"solana",address:(await vD()).toString(),api:pf([vf("amount"),hf("owner")]),cache:1e3}))({paymentRoute:t}))return;const e=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await vD(),isSigner:!1,isWritable:!0}],n=nf.alloc(jj.solana.api.createEscrowSolAccount.layout.span);return jj.solana.api.createEscrowSolAccount.layout.encode({anchorDiscriminator:jj.solana.api.createEscrowSolAccount.anchorDiscriminator},n),new gu({keys:e,programId:new Xs(jj.solana.address),data:n})},AD=t=>t.filter((t=>t!==Hf.solana.currency.address)),ID=async({paymentRoute:t,wSolSenderAccountKeypair:e,wSolEscrowAccountKeypair:n,nonce:r,deadline:i})=>{switch((({paymentRoute:t})=>{if(t.fromToken.address===Hf.solana.currency.address&&t.toToken.address===Hf.solana.currency.address)return"routeSol";if(t.fromToken.address!==Hf.solana.currency.address&&t.toToken.address!==Hf.solana.currency.address&&0===t.exchangeRoutes.length)return"routeToken";if(t.exchangeRoutes.length>0&&2===AD(t.exchangeRoutes[0].path).length)return t.toToken.address===Hf.solana.currency.address?"routeOrcaSwapSolOut":"routeOrcaSwap";if(t.exchangeRoutes.length>0&&AD(t.exchangeRoutes[0].path).length>2)return t.toToken.address===Hf.solana.currency.address?"routeOrcaTwoHopSwapSolOut":"routeOrcaTwoHopSwap";throw"Payment method does not exist!"})({paymentRoute:t})){case"routeSol":return await(async({paymentRoute:t,nonce:e,deadline:n})=>{const r=new Xs(t.toAddress),i=t.fee?new Xs(t.fee.receiver):r,o=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0}],a=nf.alloc(jj.solana.api.routeSol.layout.span);return jj.solana.api.routeSol.layout.encode({anchorDiscriminator:jj.solana.api.routeSol.anchorDiscriminator,nonce:e,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(n)},a),new gu({keys:o,programId:new Xs(jj.solana.address),data:a})})({paymentRoute:t,nonce:r,deadline:i});case"routeToken":return await(async({paymentRoute:t,nonce:e,deadline:n})=>{const r=await fD({paymentRoute:t}),i=await pD({paymentRoute:t}),o=t.fee?await mD({paymentRoute:t}):i,a=[{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},{pubkey:new Xs(r),isSigner:!1,isWritable:!0},{pubkey:new Xs(i),isSigner:!1,isWritable:!0},{pubkey:new Xs(o),isSigner:!1,isWritable:!0}],s=nf.alloc(jj.solana.api.routeToken.layout.span);return jj.solana.api.routeToken.layout.encode({anchorDiscriminator:jj.solana.api.routeToken.anchorDiscriminator,nonce:e,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(n)},s),new gu({keys:a,programId:new Xs(jj.solana.address),data:s})})({paymentRoute:t,nonce:r,deadline:i});case"routeOrcaSwap":return await(async({paymentRoute:t,nonce:e,wSolSenderAccountKeypair:n,deadline:r})=>{const i=n?n.publicKey:await fD({paymentRoute:t}),o=await pD({paymentRoute:t}),a=t.fee?await mD({paymentRoute:t}):o,s=await wD({paymentRoute:t}),u=(await t.exchangeRoutes[0].getTransaction({account:t.fromAddress})).instructions.find((t=>t.programId.toString()===jj.solana.ammProgram)),c=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),yf("sqrtPriceLimit"),af("amountSpecifiedIsInput"),af("aToB")]).decode(u.data),l=[{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(jj.solana.ammProgram),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},{pubkey:new Xs(i),isSigner:!1,isWritable:!0},u.keys[2],u.keys[4],u.keys[6],u.keys[7],u.keys[8],u.keys[9],u.keys[10],{pubkey:s,isSigner:!1,isWritable:!0},{pubkey:new Xs(o),isSigner:!1,isWritable:!0},{pubkey:new Xs(a),isSigner:!1,isWritable:!0}],h=nf.alloc(jj.solana.api.routeOrcaSwap.layout.span);return jj.solana.api.routeOrcaSwap.layout.encode({anchorDiscriminator:jj.solana.api.routeOrcaSwap.anchorDiscriminator,nonce:e,amountIn:c.amount,sqrtPriceLimit:c.sqrtPriceLimit,amountSpecifiedIsInput:c.amountSpecifiedIsInput,aToB:c.aToB,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(r)},h),new gu({keys:l,programId:new Xs(jj.solana.address),data:h})})({paymentRoute:t,nonce:r,wSolSenderAccountKeypair:e,deadline:i});case"routeOrcaSwapSolOut":return await(async({paymentRoute:t,nonce:e,wSolEscrowAccountKeypair:n,deadline:r})=>{const i=await fD({paymentRoute:t}),o=n.publicKey,a=(await t.exchangeRoutes[0].getTransaction({account:t.fromAddress})).instructions.find((t=>t.programId.toString()===jj.solana.ammProgram)),s=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),yf("sqrtPriceLimit"),af("amountSpecifiedIsInput"),af("aToB")]).decode(a.data),u=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(jj.solana.ammProgram),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},{pubkey:new Xs(i),isSigner:!1,isWritable:!0},a.keys[2],a.keys[4],a.keys[6],a.keys[7],a.keys[8],a.keys[9],a.keys[10],{pubkey:o,isSigner:!1,isWritable:!0},{pubkey:await vD(),isSigner:!1,isWritable:!0},{pubkey:new Xs(t.toAddress),isSigner:!1,isWritable:!0},{pubkey:new Xs(t.fee?t.fee.receiver:t.toAddress),isSigner:!1,isWritable:!0}],c=nf.alloc(jj.solana.api.routeOrcaSwapSolOut.layout.span);return jj.solana.api.routeOrcaSwapSolOut.layout.encode({anchorDiscriminator:jj.solana.api.routeOrcaSwapSolOut.anchorDiscriminator,nonce:e,amountIn:s.amount,sqrtPriceLimit:s.sqrtPriceLimit,amountSpecifiedIsInput:s.amountSpecifiedIsInput,aToB:s.aToB,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(r)},c),new gu({keys:u,programId:new Xs(jj.solana.address),data:c})})({paymentRoute:t,nonce:r,wSolEscrowAccountKeypair:n,deadline:i});case"routeOrcaTwoHopSwap":return await(async({paymentRoute:t,nonce:e,wSolSenderAccountKeypair:n,deadline:r})=>{const i=new Xs(await pD({paymentRoute:t})),o=t.fee?new Xs(await mD({paymentRoute:t})):i,a=await wD({paymentRoute:t}),s=new Xs(await sD({paymentRoute:t})),u=(await t.exchangeRoutes[0].getTransaction({account:t.fromAddress})).instructions.find((t=>t.programId.toString()===jj.solana.ammProgram)),c=n?n.publicKey:new Xs(await fD({paymentRoute:t})),l=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),af("amountSpecifiedIsInput"),af("aToBOne"),af("aToBTwo"),yf("sqrtPriceLimitOne"),yf("sqrtPriceLimitTwo")]).decode(u.data),h=[{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(jj.solana.ammProgram),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},u.keys[2],u.keys[3],{pubkey:c,isSigner:!1,isWritable:!0},u.keys[5],u.keys[7],{pubkey:s,isSigner:!1,isWritable:!0},u.keys[9],u.keys[11],u.keys[12],u.keys[13],u.keys[14],u.keys[15],u.keys[16],u.keys[17],u.keys[18],u.keys[19],{pubkey:a,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!1,isWritable:!0},{pubkey:o,isSigner:!1,isWritable:!0}],d=nf.alloc(jj.solana.api.routeOrcaTwoHopSwap.layout.span);return jj.solana.api.routeOrcaTwoHopSwap.layout.encode({anchorDiscriminator:jj.solana.api.routeOrcaTwoHopSwap.anchorDiscriminator,nonce:e,amountIn:l.amount,amountSpecifiedIsInput:l.amountSpecifiedIsInput,aToBOne:l.aToBOne,aToBTwo:l.aToBTwo,sqrtPriceLimitOne:l.sqrtPriceLimitOne,sqrtPriceLimitTwo:l.sqrtPriceLimitTwo,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(r)},d),new gu({keys:h,programId:new Xs(jj.solana.address),data:d})})({paymentRoute:t,nonce:r,wSolSenderAccountKeypair:e,deadline:i});case"routeOrcaTwoHopSwapSolOut":return await(async({paymentRoute:t,nonce:e,wSolEscrowAccountKeypair:n,deadline:r})=>{const i=new Xs(await sD({paymentRoute:t})),o=(await t.exchangeRoutes[0].getTransaction({account:t.fromAddress})).instructions.find((t=>t.programId.toString()===jj.solana.ammProgram)),a=new Xs(await fD({paymentRoute:t})),s=pf([vf("anchorDiscriminator"),vf("amount"),vf("otherAmountThreshold"),af("amountSpecifiedIsInput"),af("aToBOne"),af("aToBTwo"),yf("sqrtPriceLimitOne"),yf("sqrtPriceLimitTwo")]).decode(o.data),u=[{pubkey:Wu.programId,isSigner:!1,isWritable:!1},{pubkey:new Xs(Tk.solana.TOKEN_PROGRAM),isSigner:!1,isWritable:!1},{pubkey:new Xs(jj.solana.ammProgram),isSigner:!1,isWritable:!1},{pubkey:new Xs(t.fromAddress),isSigner:!0,isWritable:!0},{pubkey:await lD({from:t.fromAddress}),isSigner:!1,isWritable:!0},{pubkey:a,isSigner:!1,isWritable:!0},o.keys[2],o.keys[3],o.keys[5],o.keys[7],{pubkey:i,isSigner:!1,isWritable:!0},o.keys[9],o.keys[11],o.keys[12],o.keys[13],o.keys[14],o.keys[15],o.keys[16],o.keys[17],o.keys[18],o.keys[19],{pubkey:n.publicKey,isSigner:!1,isWritable:!0},{pubkey:await vD(),isSigner:!1,isWritable:!0},{pubkey:new Xs(t.toAddress),isSigner:!1,isWritable:!0},{pubkey:new Xs(t.fee?t.fee.receiver:t.toAddress),isSigner:!1,isWritable:!0}],c=nf.alloc(jj.solana.api.routeOrcaTwoHopSwapSolOut.layout.span);return jj.solana.api.routeOrcaTwoHopSwapSolOut.layout.encode({anchorDiscriminator:jj.solana.api.routeOrcaTwoHopSwapSolOut.anchorDiscriminator,nonce:e,amountIn:s.amount,amountSpecifiedIsInput:s.amountSpecifiedIsInput,aToBOne:s.aToBOne,aToBTwo:s.aToBTwo,sqrtPriceLimitOne:s.sqrtPriceLimitOne,sqrtPriceLimitTwo:s.sqrtPriceLimitTwo,paymentAmount:new rf(t.toAmount.toString()),feeAmount:new rf((t.feeAmount||"0").toString()),deadline:new rf(r)},c),new gu({keys:u,programId:new Xs(jj.solana.address),data:c})})({paymentRoute:t,nonce:r,wSolEscrowAccountKeypair:n,deadline:i})}},ND=async({paymentRoute:t})=>{const e=await hD({from:t.fromAddress}),n=Math.ceil((new Date).getTime()/1e3)+1800,r=(t=>t?t.nonce:new rf("0"))(e),i=await(async({paymentRoute:t})=>{if(t.fromToken.address===Hf.solana.currency.address&&t.toToken.address!==Hf.solana.currency.address)return Zl.generate()})({paymentRoute:t}),o=await(async({paymentRoute:t})=>{if(t.fromToken.address!==Hf.solana.currency.address&&t.toToken.address===Hf.solana.currency.address)return Zl.generate()})({paymentRoute:t});let a=(await Promise.all([dD({from:t.fromAddress}),iD({paymentRoute:t,wSolSenderAccountKeypair:i}),uD({paymentRoute:t}),yD({paymentRoute:t}),gD({paymentRoute:t}),MD({paymentRoute:t}),oD({paymentRoute:t,wSolEscrowAccountKeypair:o}),bD({paymentRoute:t}),ID({paymentRoute:t,wSolSenderAccountKeypair:i,wSolEscrowAccountKeypair:o,nonce:r,deadline:n}),cD({paymentRoute:t,wSolSenderAccountKeypair:i})])).filter(Boolean).flat();const s={blockchain:t.blockchain,instructions:a,signers:[i,o].filter(Boolean),alts:[jj.solana.alt]};return s.deadline=n,s.nonce=r.toString(),s},ED=[{inputs:[{internalType:"address",name:"_PERMIT2",type:"address"},{internalType:"address",name:"_FORWARDER",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"ExchangeCallFailed",type:"error"},{inputs:[],name:"ExchangeCallMissing",type:"error"},{inputs:[],name:"ExchangeNotApproved",type:"error"},{inputs:[],name:"ForwardingPaymentFailed",type:"error"},{inputs:[],name:"InsufficientBalanceInAfterPayment",type:"error"},{inputs:[],name:"InsufficientBalanceOutAfterPayment",type:"error"},{inputs:[],name:"NativeFeePaymentFailed",type:"error"},{inputs:[],name:"NativePaymentFailed",type:"error"},{inputs:[],name:"PaymentDeadlineReached",type:"error"},{inputs:[],name:"PaymentToZeroAddressNotAllowed",type:"error"},{inputs:[],name:"WrongAmountPaidIn",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"exchange",type:"address"}],name:"Disabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"exchange",type:"address"}],name:"Enabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"InternalTransfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferStarted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{inputs:[],name:"FORWARDER",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"PERMIT2",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"acceptOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"exchange",type:"address"},{internalType:"bool",name:"enabled",type:"bool"}],name:"enable",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"exchanges",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"bool",name:"permit2",type:"bool"},{internalType:"uint256",name:"paymentAmount",type:"uint256"},{internalType:"uint256",name:"feeAmount",type:"uint256"},{internalType:"address",name:"tokenInAddress",type:"address"},{internalType:"address",name:"exchangeAddress",type:"address"},{internalType:"address",name:"tokenOutAddress",type:"address"},{internalType:"address",name:"paymentReceiverAddress",type:"address"},{internalType:"address",name:"feeReceiverAddress",type:"address"},{internalType:"uint8",name:"exchangeType",type:"uint8"},{internalType:"uint8",name:"receiverType",type:"uint8"},{internalType:"bytes",name:"exchangeCallData",type:"bytes"},{internalType:"bytes",name:"receiverCallData",type:"bytes"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct IDePayRouterV2.Payment",name:"payment",type:"tuple"}],name:"pay",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"amountIn",type:"uint256"},{internalType:"bool",name:"permit2",type:"bool"},{internalType:"uint256",name:"paymentAmount",type:"uint256"},{internalType:"uint256",name:"feeAmount",type:"uint256"},{internalType:"address",name:"tokenInAddress",type:"address"},{internalType:"address",name:"exchangeAddress",type:"address"},{internalType:"address",name:"tokenOutAddress",type:"address"},{internalType:"address",name:"paymentReceiverAddress",type:"address"},{internalType:"address",name:"feeReceiverAddress",type:"address"},{internalType:"uint8",name:"exchangeType",type:"uint8"},{internalType:"uint8",name:"receiverType",type:"uint8"},{internalType:"bytes",name:"exchangeCallData",type:"bytes"},{internalType:"bytes",name:"receiverCallData",type:"bytes"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct IDePayRouterV2.Payment",name:"payment",type:"tuple"},{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],internalType:"struct IPermit2.PermitDetails",name:"details",type:"tuple"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"sigDeadline",type:"uint256"}],internalType:"struct IPermit2.PermitSingle",name:"permitSingle",type:"tuple"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"pay",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"payable",type:"function"},{inputs:[],name:"pendingOwner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"withdraw",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}];var xD={ethereum:{address:"0x6466F27B169C908Ba8174d80aEfa7173CbC3D0c7",api:ED},bsc:{address:"0x7ea09401db4692a8AEF4111b75bD32AE758f552A",api:ED},polygon:{address:"0x50CFAB577623B1359602E11514a9482B061A941e",api:ED},fantom:{address:"0xFee05C41195985909DDfc9127Db1f94559c46db3",api:ED},avalanche:{address:"0xFee05C41195985909DDfc9127Db1f94559c46db3",api:ED},gnosis:{address:"0xFee05C41195985909DDfc9127Db1f94559c46db3",api:ED},arbitrum:{address:"0xA1cfbeeF344A52e18f748fd6a126f9426A40fbc7",api:ED},optimism:{address:"0x8698E529E9867eEbcC68b4792daC627cd8870736",api:ED},base:{address:"0x8B127D169D232D5F3ebE1C3D06CE343FD7C1AA11",api:ED}},kD={...xD,...jj},TD="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==r?r:"undefined"!=typeof self?self:{},LD="object"==typeof TD&&TD&&TD.Object===Object&&TD,SD="object"==typeof self&&self&&self.Object===Object&&self,jD=(LD||SD||Function("return this")()).Symbol;jD&&jD.toStringTag,jD&&jD.toStringTag;const DD=t=>{switch(t){case"solana":return 125e-6;case"gnosis":return.009;case"base":return.0095;case"optimism":return.0096;case"polygon":return.011;case"fantom":return.05;case"avalanche":return.1;case"arbitrum":return.11;case"bsc":return.2;case"ethereum":return 10;default:return 100}},CD={arbitrum:{[Hf.arbitrum.wrapped.address]:"0x7E655088214d0657251A51aDccE9109CFd23B5B5"},avalanche:{[Hf.avalanche.wrapped.address]:"0x2d0a6275eaDa0d03226919ce6D93661E589B2d59"},base:{[Hf.base.wrapped.address]:"0xD1711710843B125a6a01FfDF9b95fDc3064BeF7A"},bsc:{[Hf.bsc.wrapped.address]:"0xeEb80d14abfB058AA78DE38813fe705c3e3b243E"},ethereum:{[Hf.ethereum.wrapped.address]:"0x298f4980525594b3b982779cf74ba76819708D43"},fantom:{[Hf.fantom.wrapped.address]:"0x2d0a6275eaDa0d03226919ce6D93661E589B2d59"},gnosis:{[Hf.gnosis.wrapped.address]:"0x2d0a6275eaDa0d03226919ce6D93661E589B2d59"},optimism:{[Hf.optimism.wrapped.address]:"0x69594057e2C0224deb1180c7a5Df9ec9d5B611B5"},polygon:{[Hf.polygon.wrapped.address]:"0xaE59C9d3E055BdFAa583E169aA5Ebe395689476a"},solana:{}},OD=({paymentRoute:t})=>t.directTransfer&&!t.fee?t.toToken.address==Hf[t.blockchain].currency.address?t.toAddress:t.toToken.address:xD[t.blockchain].address,zD=({paymentRoute:t})=>t.directTransfer&&!t.fee?t.toToken.address==Hf[t.blockchain].currency.address?void 0:Tk[t.blockchain].DEFAULT:xD[t.blockchain].api,PD=({paymentRoute:t})=>t.directTransfer&&!t.fee?t.toToken.address==Hf[t.blockchain].currency.address?void 0:"transfer":"pay",_D=async({paymentRoute:t})=>{if(t.directTransfer&&!t.fee)return t.toToken.address==Hf[t.blockchain].currency.address?void 0:[t.toAddress,t.toAmount];{const e=Math.ceil(new Date/1e3)+3600,n=t.exchangeRoutes[0],r=(({exchangeRoute:t,blockchain:e})=>void 0===t?0:"uniswap_v3"===t.exchange.name||t.exchange[e].router.address===Hf[e].wrapped.address?2:1)({exchangeRoute:n,blockchain:t.blockchain}),i=n?await n.getTransaction({account:xD[t.blockchain].address,inputTokenPushed:2===r}):void 0,o=i?(({exchangeTransaction:t})=>{const e=new PM(t.to,t.api),n=t.method,r=t.params;let i,o,a;return o=e.interface.fragments.find((t=>!(t.name!=n||t.inputs&&r&&"object"==typeof r&&t.inputs.length!=Object.keys(r).length))),1===o.inputs.length&&"tuple"===o.inputs[0].type?(i=n,a=[r[o.inputs[0].name]]):(i=`${n}(${o.inputs.map((t=>t.type)).join(",")})`,a=o.inputs.map((t=>{if("tuple"===t.type){let e={};return t.components.forEach(((n,i)=>{e[n.name]=r[t.name][i]})),i=n,e}return r[t.name]}))),e.interface.encodeFunctionData(i,a)})({exchangeTransaction:i}):Hf[t.blockchain].zero;let a=Hf[t.blockchain].zero;return n&&(a="bsc"===t.blockchain&&"pancakeswap_v3"===n.exchange.name&&t.toToken.address===Hf[t.blockchain].currency.address?n.exchange[t.blockchain].smartRouter.address:CD[i.blockchain][n.exchange[t.blockchain].router.address]||n.exchange[t.blockchain].router.address),{payment:{amountIn:t.fromAmount,paymentAmount:t.toAmount,feeAmount:t.feeAmount||0,tokenInAddress:t.fromToken.address,exchangeAddress:a,tokenOutAddress:t.toToken.address,paymentReceiverAddress:t.toAddress,feeReceiverAddress:t.fee?t.fee.receiver:Hf[t.blockchain].zero,exchangeType:r,receiverType:0,exchangeCallData:o,receiverCallData:Hf[t.blockchain].zero,deadline:e}}}},BD=({paymentRoute:t})=>t.fromToken.address==Hf[t.blockchain].currency.address?t.directTransfer?t.toAmount.toString():t.fromAmount.toString():Fp.from("0").toString();let RD=["ethereum","bsc","polygon","solana","fantom","arbitrum","avalanche","gnosis","optimism","base"];RD.evm=["ethereum","bsc","polygon","fantom","arbitrum","avalanche","gnosis","optimism","base"],RD.solana=["solana"];const UD=({paymentRoute:t,fee:e})=>{if(RD.evm.includes(t.blockchain))return(async({paymentRoute:t})=>({blockchain:t.blockchain,to:OD({paymentRoute:t}),api:zD({paymentRoute:t}),method:PD({paymentRoute:t}),params:await _D({paymentRoute:t}),value:BD({paymentRoute:t})}))({paymentRoute:t,fee:e});if(RD.solana.includes(t.blockchain))return ND({paymentRoute:t,fee:e});throw"Blockchain not supported!"};function QD(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],o=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=o(n)):"call"!==i&&"optionalCall"!==i||(n=o(((...t)=>n.call(e,...t))),e=void 0)}return n}class YD{constructor({blockchain:t,fromAddress:e,fromToken:n,fromAmount:r,fromDecimals:i,fromBalance:o,toToken:a,toAmount:s,toDecimals:u,toAddress:c,fee:l,feeAmount:h,exchangeRoutes:d,approvalRequired:f,approvalTransaction:p,directTransfer:y}){this.blockchain=t,this.fromAddress=e,this.fromToken=n,this.fromAmount=QD([r||s,"optionalAccess",t=>t.toString,"call",t=>t()]),this.fromDecimals=i,this.fromBalance=o,this.toToken=a,this.toAmount=QD([s,"optionalAccess",t=>t.toString,"call",t=>t()]),this.toDecimals=u,this.toAddress=c,this.fee=l,this.feeAmount=h,this.exchangeRoutes=d||[],this.approvalRequired=f,this.approvalTransaction=p,this.directTransfer=y,this.getTransaction=async()=>await UD({paymentRoute:this})}}function WD({assets:t,blacklist:e,accept:n,from:r}){return Promise.resolve(VD({assets:t,blacklist:e})).then((t=>function({assets:t,accept:e,from:n}){return Promise.all(t.map((async t=>{let r=e.filter((e=>e.blockchain==t.blockchain)),i=new Tk(t);return Promise.all(r.map((async e=>{if(e.token&&e.amount){let r=e.blockchain,o=t.decimals,a=new Tk({blockchain:r,address:e.token}),s=await a.decimals(),u=(await a.BigNumber(e.amount)).toString();return new YD({blockchain:r,fromToken:i,fromDecimals:o,toToken:a,toAmount:u,toDecimals:s,fromBalance:t.balance,fromAddress:n[e.blockchain],toAddress:e.toAddress,fee:e.fee})}if(e.fromToken&&e.fromAmount&&i.address.toLowerCase()==e.fromToken.toLowerCase()){let r=e.blockchain,o=(await i.BigNumber(e.fromAmount)).toString(),a=t.decimals,s=new Tk({blockchain:r,address:e.toToken}),u=await s.decimals();return new YD({blockchain:r,fromToken:i,fromDecimals:a,fromAmount:o,toToken:s,toDecimals:u,fromBalance:t.balance,fromAddress:n[e.blockchain],toAddress:e.toAddress,fee:e.fee})}})))}))).then((t=>t.flat().filter((t=>t))))}({assets:t,accept:n,from:r}))).then((t=>JD({routes:t}))).then(HD).then(GD).then(qD).then((t=>tC({routes:t}))).then(ZD).then(nC).then(eC).then((t=>t.map((t=>new YD(t)))))}function FD({accept:t,from:e,whitelist:n,blacklist:r,drip:i}){if(t.some((t=>t&&t.fee&&"string"==typeof t.fee.amount&&t.fee.amount.match(/\.\d\d+\%/))))throw"Only up to 1 decimal is supported for fee amounts!";return new Promise((async(o,a)=>{let s=[],u=[];if(n)for(const t in n)(n[t]||[]).forEach((e=>{u.push(t),s.push({blockchain:t,address:e})}));else t.forEach((t=>{u.push(t.blockchain),s.push({blockchain:t.blockchain,address:t.token||t.toToken})}));[...new Set(u)].forEach((t=>{s.find((e=>e.blockchain===t&&e.address===Hf[t].currency.address))||s.push({blockchain:t,address:Hf[t].currency.address})})),s.sort(((t,e)=>DD(t.blockchain)<DD(e.blockchain)?-1:DD(e.blockchain)<DD(t.blockchain)?1:t.address.toLowerCase()===Hf[t.blockchain].currency.address.toLowerCase()?-1:e.address.toLowerCase()===Hf[e.blockchain].currency.address.toLowerCase()?1:0));let c=0;const l=[],h=[],d=s.map((t=>[t.blockchain,t.address.toLowerCase()].join(""))),f=()=>Math.ceil(new Date),p=f();setTimeout((()=>{l.forEach((t=>y(FD,!1)))}),3e3);const y=(t,e=!0)=>{try{const n={blockchain:t.blockchain,address:t.fromToken.address},r=[n.blockchain,n.address.toLowerCase()].join(""),o=f()-p>3e3;if(h.indexOf(r)>-1)return;if(d.indexOf(r)===c){if(h.push(r),i(t),c+=1,!e)return;l.forEach((e=>y(t,!1)))}else c>=d.length||o?(-1===d.indexOf(r)||c>=d.length||o)&&(h.push(r),i(t)):l.find((t=>t.blockchain===n.blockchain&&t.address.toLowerCase()===n.address.toLowerCase()))||(l.push(n),l.sort(((t,e)=>((t,e,n)=>{if(!t||0===t.length)return 0;let r=t.indexOf([e.blockchain,e.address.toLowerCase()].join("")),i=t.indexOf([n.blockchain,n.address.toLowerCase()].join(""));return-1!==r&&-1===i?-1:-1!==i&&-1===r?1:r<i?-1:i<r?1:0})(d,t,e))))}catch(t){}},m=await Bk({accounts:e,priority:s,only:n,exclude:r,drip:i?n=>{WD({assets:[n],blacklist:r,accept:t,from:e}).then((t=>{QD([t,"optionalAccess",t=>t.length])&&y(t[0])}))}:void 0});let g=await WD({assets:m,blacklist:r,accept:t,from:e})||[];g.assets=m,o(g)}))}let VD=({assets:t,blacklist:e})=>null==e?t:t.filter((t=>null==e[t.blockchain]||!e[t.blockchain].find((e=>e.toLowerCase()==t.address.toLowerCase())))),HD=async t=>await Promise.all(t.map((t=>t.directTransfer?[]:t.toToken&&t.toAmount?Sj.route({blockchain:t.blockchain,tokenIn:t.fromToken.address,tokenOut:t.toToken.address,amountOutMin:t.toAmount,fromAddress:t.fromAddress,toAddress:t.toAddress}):t.fromToken&&t.fromAmount?Sj.route({blockchain:t.blockchain,tokenIn:t.fromToken.address,tokenOut:t.toToken.address,amountIn:t.fromAmount,fromAddress:t.fromAddress,toAddress:t.toAddress}):void 0))).then((e=>t.map(((t,n)=>(t.exchangeRoutes=e[n],t))))),GD=t=>t.filter((t=>0!=t.exchangeRoutes.length||t.fromToken.address.toLowerCase()==t.toToken.address.toLowerCase())),qD=async t=>t.filter((t=>t.fromToken.address.toLowerCase()==t.toToken.address.toLowerCase()?Fp.from(t.fromBalance).gte(Fp.from(t.toAmount)):t.fromAmount&&t.toAmount?Fp.from(t.fromBalance).gte(Fp.from(t.exchangeRoutes[0].amountInMax)):t.exchangeRoutes[0]&&t.exchangeRoutes[0].amountIn?Fp.from(t.fromBalance).gte(Fp.from(t.exchangeRoutes[0].amountIn)):void 0)),ZD=t=>Promise.all(t.map((t=>"solana"===t.blockchain?Promise.resolve(Hf.solana.maxInt):t.fromToken.allowance(t.fromAddress,kD[t.blockchain].address).catch((()=>{}))))).then((e=>(t.map(((n,r)=>{void 0===e[r]||n.directTransfer||n.fromToken.address.toLowerCase()==Hf[n.blockchain].currency.address.toLowerCase()||"solana"===n.blockchain?t[r].approvalRequired=!1:(t[r].approvalRequired=Fp.from(n.fromAmount).gte(Fp.from(e[r])),t[r].approvalRequired&&(t[r].approvalTransaction={blockchain:n.blockchain,to:n.fromToken.address,api:Tk[n.blockchain].DEFAULT,method:"approve",params:[kD[n.blockchain].address,Hf[n.blockchain].maxInt]}))})),t))),JD=({routes:t})=>t.map((t=>(RD.evm.includes(t.blockchain)?t.directTransfer=t.fromToken.address.toLowerCase()==t.toToken.address.toLowerCase()&&null==t.fee:"solana"===t.blockchain&&(t.directTransfer=t.fromToken.address.toLowerCase()==t.toToken.address.toLowerCase()),t))),XD=({paymentRoute:t,exchangeRoute:e})=>{let n,r,i;return e?(e&&e.exchange.wrapper,n=e.amountIn.toString(),r=KD({amount:e.amountOutMin.toString(),paymentRoute:t})):(n=t.fromAmount,r=KD({amount:t.fromAmount,paymentRoute:t})),t.fee&&(i=$D({paymentRoute:t})),{fromAmount:n,toAmount:r,feeAmount:i}},KD=({amount:t,paymentRoute:e})=>{if(e.fee){let n=$D({paymentRoute:e});return Fp.from(t).sub(n).toString()}return t},$D=({paymentRoute:t})=>{if("string"==typeof t.fee.amount&&t.fee.amount.match("%"))return Fp.from(t.toAmount).mul(10*parseFloat(t.fee.amount)).div(1e3).toString();if("string"==typeof t.fee.amount)return t.fee.amount;if("number"==typeof t.fee.amount)return cI(t.fee.amount.toString(),t.toDecimals).toString();throw"Unknown fee amount type!"},tC=({routes:t})=>t.map((t=>{if(RD.evm.includes(t.blockchain))if(t.directTransfer&&!t.fee)t.fromAmount=t.toAmount;else{let{fromAmount:e,toAmount:n,feeAmount:r}=XD({paymentRoute:t,exchangeRoute:t.exchangeRoutes[0]});t.fromAmount=e,t.toAmount=n,t.fee&&(t.feeAmount=r)}else if(RD.solana.includes(t.blockchain)){let{fromAmount:e,toAmount:n,feeAmount:r}=XD({paymentRoute:t,exchangeRoute:t.exchangeRoutes[0]});t.fromAmount=e,t.toAmount=n,t.fee&&(t.feeAmount=r)}return t})),eC=t=>t.filter(((e,n)=>null==t.find(((t,r)=>e.fromToken.address==t.fromToken.address&&(e.fromToken.blockchain==t.fromToken.blockchain&&(!(!t.directTransfer||e.directTransfer)||(!(!Fp.from(t.fromAmount).lt(Fp.from(e.fromAmount))||e.directTransfer)||(t.fromAmount==e.fromAmount&&r<n||void 0)))))))),nC=t=>{let e=-1;return t.sort(((t,n)=>DD(t.fromToken.blockchain)<DD(n.fromToken.blockchain)?e:DD(n.fromToken.blockchain)<DD(t.fromToken.blockchain)?1:t.fromToken.address.toLowerCase()==t.toToken.address.toLowerCase()?e:n.fromToken.address.toLowerCase()==n.toToken.address.toLowerCase()||t.approvalRequired&&!n.approvalRequired?1:n.approvalRequired&&!t.approvalRequired||JSON.stringify([t.fromToken.address.toLowerCase(),t.toToken.address.toLowerCase()].sort())==JSON.stringify([Hf[t.blockchain].currency.address.toLowerCase(),Hf[t.blockchain].wrapped.address.toLowerCase()].sort())?e:JSON.stringify([n.fromToken.address.toLowerCase(),n.toToken.address.toLowerCase()].sort())==JSON.stringify([Hf[n.blockchain].currency.address.toLowerCase(),Hf[n.blockchain].wrapped.address.toLowerCase()].sort())?1:t.fromToken.address.toLowerCase()==Hf[t.blockchain].currency.address.toLowerCase()?e:n.fromToken.address.toLowerCase()==Hf[n.blockchain].currency.address.toLowerCase()?1:t.fromToken.address<n.fromToken.address?e:1))};var rC=ek.createContext({accept:[]});
88
88
  /**!
89
89
  * @uiw/copy-to-clipboard v1.0.14
90
90
  * Copy to clipboard.
@@ -124,7 +124,7 @@ Zf((function(t,e){}));var sC=Zf((function(t){t.exports=aC}));
124
124
  * This source code is licensed under the MIT license found in the
125
125
  * LICENSE file in the root directory of this source tree.
126
126
  */
127
- Zf((function(t,e){}));var rF=Zf((function(t){!function t(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(t){console.error(t)}}(),t.exports=nF}));const iF="/Users/sebastian/Work/DePay/react-dialog/src/components/Dialog.jsx";class oF extends ek.Component{constructor(t){super(t),this.handler=this.onKeyDown.bind(this),this.state={open:!0}}closeDialog(){this.props.close()}onKeyDown(t){"Escape"===t.key&&this.closeDialog()}componentDidUpdate(t){!1===this.props.open&&!0===t.open&&this.setState({open:!1})}onClickBackground(t){this.closeDialog()}componentDidMount(){!1===this.props.animate?this.setState({open:!0}):this.setState({open:!1},(()=>{setTimeout((()=>{this.setState({open:!0})}),10)})),this.props.document.addEventListener("keydown",this.handler,!0)}componentWillUnmount(){this.props.document.removeEventListener("keydown",this.handler,!0)}render(){const t=["ReactDialog",this.state.open?"ReactDialogOpen":""],e=`\n .ReactDialog {\n bottom: 0;\n display: flex;\n height: 100%;\n height: 100vh;\n left: 0;\n min-height: 100%;\n min-height: 100vh;\n overflow: hidden;\n position: fixed;\n right: 0;\n top: 0;\n width: 100%;\n width: 100vw;\n }\n\n .ReactDialogInner {\n align-items: center;\n display: flex;\n flex: 1;\n justify-content: center;\n }\n\n .ReactDialogBackground {\n background: ${"object"==typeof(n={background:this.props.background})&&n.background?n.background:"rgba(0,0,0,0.4)"};\n bottom: 0;\n display: block;\n height: 100%;\n left: 0;\n opacity: 0;\n position: fixed;\n right: 0;\n top: 0;\n transition: opacity 0.4s ease;\n width: 100%;\n }\n\n .ReactDialog.ReactDialogOpen .ReactDialogBackground {\n opacity: 1;\n }\n\n .ReactDialogAnimation {\n display: inline-block;\n position: relative;\n opacity: 0;\n top: -17vh;\n transition: opacity 0.4s ease, top 0.4s ease;\n }\n\n .ReactDialog.ReactDialogOpen .ReactDialogAnimation {\n opacity: 1.0;\n top: -5vh;\n }\n `;var n;return ek.createElement("div",{key:this.props.dialogKey,className:t.join(" "),__self:this,__source:{fileName:iF,lineNumber:59}},ek.createElement("style",{__self:this,__source:{fileName:iF,lineNumber:60}},e),ek.createElement("div",{className:"ReactDialogInner",__self:this,__source:{fileName:iF,lineNumber:61}},ek.createElement("div",{className:"ReactDialogBackground",onClick:this.onClickBackground.bind(this),__self:this,__source:{fileName:iF,lineNumber:62}}),this.props.children))}}class aF extends ek.Component{constructor(t){super(t),this.state={open:t.open}}componentDidUpdate(t){!1===this.props.open&&!0===t.open?setTimeout((()=>{this.setState({open:!1})}),400):!0===this.props.open&&!1===t.open&&this.setState({open:!0})}render(){let t=this.props.document||document,e=this.props.container||t.body;return this.state.open?rF.createPortal(ek.createElement(oF,{background:this.props.background,close:this.props.close,document:t,open:this.props.open,animate:this.props.animate,__self:this,__source:{fileName:"/Users/sebastian/Work/DePay/react-dialog/src/index.jsx",lineNumber:29}},this.props.children),e):null}}var sF=ek.createContext(),uF=ek.createContext();var cF=ek.createContext();const lF="/Users/sebastian/Work/DePay/react-dialog-stack/src/index.jsx";class hF extends ek.Component{constructor(t){if(super(t),t.setNavigator&&t.setNavigator(this),t.stacked){const e="string"==typeof t.stacked?t.stacked:"forward";this.state={stack:[],animating:!1,animation:null,direction:e,animationSpeed:200},setTimeout((()=>this.navigate(t.start,e)),10)}else this.state={stack:[t.start],animating:!1,animation:null,direction:"forward",animationSpeed:200}}set(t){this.setState({stack:t})}hide(t="forward"){"backward"===t?(this.setState({stack:[null,...this.state.stack]}),setTimeout((()=>this.navigate("back")),10)):this.navigate(null)}navigate(t,e="forward"){if(!(this.state.stack.indexOf(t)>-1))return"back"===t?this.unstack():void this.setState({stack:this.state.stack.concat(t),animating:!0,direction:e,animation:setTimeout(function(){this.setState({animating:!1})}.bind(this),this.state.animationSpeed)})}unstack(){if(this.state.stack.length<=1)return;let t=[...this.state.stack];t.pop(),this.setState({animating:!0,direction:"backward",animation:setTimeout(function(){this.setState({stack:t,animating:!1})}.bind(this),this.state.animationSpeed)})}classForState(t){if(!this.state.animating)return 1===this.state.stack.length||this.state.stack.length===t+1?"active":"inactive"}classForPosition(t){return this.state.stack.length>1?this.state.stack.length===t+1?"forward"===this.state.direction?"next":"previous":this.state.stack.length-1===t+1?"forward"===this.state.direction?"previous":"next":"stale":this.state.animating&&this.props.stacked&&0===t?"next":void 0}classForAnimation(){if(this.state.animating)return"animating"}classForDirection(){return this.state.direction}renderStack(){return this.state.stack.map(function(t,e){let n=[this.classForState(e),this.classForPosition(e),this.classForAnimation(),this.classForDirection()];return ek.createElement("div",{key:e,className:["ReactDialogStack"].concat(n).join(" "),onClick:this.onClick.bind(this),__self:this,__source:{fileName:lF,lineNumber:153}},ek.createElement(uF.Provider,{value:{navigate:this.navigate.bind(this),set:this.set.bind(this),hide:this.hide.bind(this)},__self:this,__source:{fileName:lF,lineNumber:158}},ek.createElement(sF.Provider,{value:this.close.bind(this),__self:this,__source:{fileName:lF,lineNumber:161}},ek.createElement(cF.Provider,{value:this.state.stack,__self:this,__source:{fileName:lF,lineNumber:162}},ek.createElement("div",{className:"ReactDialogAnimation",__self:this,__source:{fileName:lF,lineNumber:163}},this.props.dialogs[t])))))}.bind(this))}onClick(t){t.target&&t.target.className&&t.target.className.match&&t.target.className.match("ReactDialogStack")&&(this.state.stack.length>1?this.unstack():this.close())}close(t){this.state.stack.length>1&&!t?this.unstack():(this.props.close(),setTimeout((()=>this.setState({stack:this.state.stack.slice(0,1)})),400))}render(){return ek.createElement(aF,{close:this.close.bind(this),open:this.props.open,document:this.props.document,container:this.props.container,animate:!this.props.stacked,background:this.props.background,__self:this,__source:{fileName:lF,lineNumber:199}},ek.createElement("style",{__self:this,__source:{fileName:lF,lineNumber:207}},"\n\n .ReactDialogStack {\n align-items: center;\n bottom: 0;\n display: flex;\n flex: 1;\n height: 100%;\n justify-content: center;\n position: absolute;\n top: 0;\n transition: left 0.1s ease, opacity 0.2s ease;\n width: 100%;\n }\n\n .ReactDialogStackRow {\n display: table-row;\n }\n\n .ReactDialogStackCell {\n display: table-cell;\n vertical-align: middle;\n padding: 0 0.6rem;\n }\n\n .ReactDialogStack {\n left: 0;\n opacity: 1;\n }\n\n .ReactDialogStack.inactive {\n display: none;\n }\n\n .ReactDialogStack.animating.stale {\n display: none;\n }\n\n .ReactDialogStack.animating.previous.forward {\n opacity: 0;\n left: -5rem;\n }\n\n .ReactDialogStack.animating.previous.backward {\n opacity: 0;\n left: 5rem;\n }\n\n .ReactDialogStack.animating.next.forward {\n opacity: 0;\n left: 5rem;\n }\n\n .ReactDialogStack.animating.next.backward {\n opacity: 0;\n left: -5rem;\n }\n "),this.renderStack())}}var dF=function(t){var e=ek.useContext(uF).navigate,n=ek.useContext(nk),r=n.close,i=n.closable;return ek.createElement("div",{className:["Dialog",t.className].join(" ")},ek.createElement("div",{className:["DialogHeader",t.stacked?"TextCenter":""].join(" ")},t.stacked&&ek.createElement("div",{className:"DialogHeaderActionLeft PaddingTopS PaddingLeftS PaddingRightS"},ek.createElement("button",{type:"button",onClick:function(){return e("back")},className:"ButtonCircular",title:"Go back"},ek.createElement(iC,null))),i&&!1!==t.closable&&ek.createElement("div",{className:"DialogHeaderActionRight PaddingTopS PaddingLeftS PaddingRightS"},t.alternativeHeaderAction,ek.createElement("button",{type:"button",onClick:r,className:"ButtonCircular",title:"Close dialog"},ek.createElement(oC,null))),t.header),ek.createElement("div",{ref:t.bodyRef,className:["DialogBody",t.bodyClassName].join(" ")},t.body),!1!==t.footer&&ek.createElement("div",{className:"DialogFooter"},t.footer))},fF=function(){return"undefined"!=typeof window&&Boolean(window.matchMedia("(pointer:coarse)").matches||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/.test(navigator.userAgent))},pF=qf(Zf((function(t,e){self,t.exports=(()=>{var t={192:(t,e)=>{var n,r,i=function(){var t=function(t,e){var n=t,r=a[e],i=null,o=0,u=null,m=[],g={},w=function(t,e){i=function(t){for(var e=new Array(t),n=0;n<t;n+=1){e[n]=new Array(t);for(var r=0;r<t;r+=1)e[n][r]=null}return e}(o=4*n+17),b(0,0),b(o-7,0),b(0,o-7),A(),M(),N(t,e),n>=7&&I(t),null==u&&(u=x(n,r,m)),E(u,e)},b=function(t,e){for(var n=-1;n<=7;n+=1)if(!(t+n<=-1||o<=t+n))for(var r=-1;r<=7;r+=1)e+r<=-1||o<=e+r||(i[t+n][e+r]=0<=n&&n<=6&&(0==r||6==r)||0<=r&&r<=6&&(0==n||6==n)||2<=n&&n<=4&&2<=r&&r<=4)},M=function(){for(var t=8;t<o-8;t+=1)null==i[t][6]&&(i[t][6]=t%2==0);for(var e=8;e<o-8;e+=1)null==i[6][e]&&(i[6][e]=e%2==0)},A=function(){for(var t=s.getPatternPosition(n),e=0;e<t.length;e+=1)for(var r=0;r<t.length;r+=1){var o=t[e],a=t[r];if(null==i[o][a])for(var u=-2;u<=2;u+=1)for(var c=-2;c<=2;c+=1)i[o+u][a+c]=-2==u||2==u||-2==c||2==c||0==u&&0==c}},I=function(t){for(var e=s.getBCHTypeNumber(n),r=0;r<18;r+=1){var a=!t&&1==(e>>r&1);i[Math.floor(r/3)][r%3+o-8-3]=a}for(r=0;r<18;r+=1)a=!t&&1==(e>>r&1),i[r%3+o-8-3][Math.floor(r/3)]=a},N=function(t,e){for(var n=r<<3|e,a=s.getBCHTypeInfo(n),u=0;u<15;u+=1){var c=!t&&1==(a>>u&1);u<6?i[u][8]=c:u<8?i[u+1][8]=c:i[o-15+u][8]=c}for(u=0;u<15;u+=1)c=!t&&1==(a>>u&1),u<8?i[8][o-u-1]=c:u<9?i[8][15-u-1+1]=c:i[8][15-u-1]=c;i[o-8][8]=!t},E=function(t,e){for(var n=-1,r=o-1,a=7,u=0,c=s.getMaskFunction(e),l=o-1;l>0;l-=2)for(6==l&&(l-=1);;){for(var h=0;h<2;h+=1)if(null==i[r][l-h]){var d=!1;u<t.length&&(d=1==(t[u]>>>a&1)),c(r,l-h)&&(d=!d),i[r][l-h]=d,-1==(a-=1)&&(u+=1,a=7)}if((r+=n)<0||o<=r){r-=n,n=-n;break}}},x=function(t,e,n){for(var r=l.getRSBlocks(t,e),i=h(),o=0;o<n.length;o+=1){var a=n[o];i.put(a.getMode(),4),i.put(a.getLength(),s.getLengthInBits(a.getMode(),t)),a.write(i)}var u=0;for(o=0;o<r.length;o+=1)u+=r[o].dataCount;if(i.getLengthInBits()>8*u)throw"code length overflow. ("+i.getLengthInBits()+">"+8*u+")";for(i.getLengthInBits()+4<=8*u&&i.put(0,4);i.getLengthInBits()%8!=0;)i.putBit(!1);for(;!(i.getLengthInBits()>=8*u||(i.put(236,8),i.getLengthInBits()>=8*u));)i.put(17,8);return function(t,e){for(var n=0,r=0,i=0,o=new Array(e.length),a=new Array(e.length),u=0;u<e.length;u+=1){var l=e[u].dataCount,h=e[u].totalCount-l;r=Math.max(r,l),i=Math.max(i,h),o[u]=new Array(l);for(var d=0;d<o[u].length;d+=1)o[u][d]=255&t.getBuffer()[d+n];n+=l;var f=s.getErrorCorrectPolynomial(h),p=c(o[u],f.getLength()-1).mod(f);for(a[u]=new Array(f.getLength()-1),d=0;d<a[u].length;d+=1){var y=d+p.getLength()-a[u].length;a[u][d]=y>=0?p.getAt(y):0}}var m=0;for(d=0;d<e.length;d+=1)m+=e[d].totalCount;var g=new Array(m),v=0;for(d=0;d<r;d+=1)for(u=0;u<e.length;u+=1)d<o[u].length&&(g[v]=o[u][d],v+=1);for(d=0;d<i;d+=1)for(u=0;u<e.length;u+=1)d<a[u].length&&(g[v]=a[u][d],v+=1);return g}(i,r)};g.addData=function(t,e){var n=null;switch(e=e||"Byte"){case"Numeric":n=d(t);break;case"Alphanumeric":n=f(t);break;case"Byte":n=p(t);break;case"Kanji":n=y(t);break;default:throw"mode:"+e}m.push(n),u=null},g.isDark=function(t,e){if(t<0||o<=t||e<0||o<=e)throw t+","+e;return i[t][e]},g.getModuleCount=function(){return o},g.make=function(){if(n<1){for(var t=1;t<40;t++){for(var e=l.getRSBlocks(t,r),i=h(),o=0;o<m.length;o++){var a=m[o];i.put(a.getMode(),4),i.put(a.getLength(),s.getLengthInBits(a.getMode(),t)),a.write(i)}var u=0;for(o=0;o<e.length;o++)u+=e[o].dataCount;if(i.getLengthInBits()<=8*u)break}n=t}w(!1,function(){for(var t=0,e=0,n=0;n<8;n+=1){w(!0,n);var r=s.getLostPoint(g);(0==n||t>r)&&(t=r,e=n)}return e}())},g.createTableTag=function(t,e){t=t||2;var n="";n+='<table style="',n+=" border-width: 0px; border-style: none;",n+=" border-collapse: collapse;",n+=" padding: 0px; margin: "+(e=void 0===e?4*t:e)+"px;",n+='">',n+="<tbody>";for(var r=0;r<g.getModuleCount();r+=1){n+="<tr>";for(var i=0;i<g.getModuleCount();i+=1)n+='<td style="',n+=" border-width: 0px; border-style: none;",n+=" border-collapse: collapse;",n+=" padding: 0px; margin: 0px;",n+=" width: "+t+"px;",n+=" height: "+t+"px;",n+=" background-color: ",n+=g.isDark(r,i)?"#000000":"#ffffff",n+=";",n+='"/>';n+="</tr>"}return(n+="</tbody>")+"</table>"},g.createSvgTag=function(t,e,n,r){var i={};"object"==typeof arguments[0]&&(t=(i=arguments[0]).cellSize,e=i.margin,n=i.alt,r=i.title),t=t||2,e=void 0===e?4*t:e,(n="string"==typeof n?{text:n}:n||{}).text=n.text||null,n.id=n.text?n.id||"qrcode-description":null,(r="string"==typeof r?{text:r}:r||{}).text=r.text||null,r.id=r.text?r.id||"qrcode-title":null;var o,a,s,u,c=g.getModuleCount()*t+2*e,l="";for(u="l"+t+",0 0,"+t+" -"+t+",0 0,-"+t+"z ",l+='<svg version="1.1" xmlns="http://www.w3.org/2000/svg"',l+=i.scalable?"":' width="'+c+'px" height="'+c+'px"',l+=' viewBox="0 0 '+c+" "+c+'" ',l+=' preserveAspectRatio="xMinYMin meet"',l+=r.text||n.text?' role="img" aria-labelledby="'+k([r.id,n.id].join(" ").trim())+'"':"",l+=">",l+=r.text?'<title id="'+k(r.id)+'">'+k(r.text)+"</title>":"",l+=n.text?'<description id="'+k(n.id)+'">'+k(n.text)+"</description>":"",l+='<rect width="100%" height="100%" fill="white" cx="0" cy="0"/>',l+='<path d="',a=0;a<g.getModuleCount();a+=1)for(s=a*t+e,o=0;o<g.getModuleCount();o+=1)g.isDark(a,o)&&(l+="M"+(o*t+e)+","+s+u);return(l+='" stroke="transparent" fill="black"/>')+"</svg>"},g.createDataURL=function(t,e){t=t||2,e=void 0===e?4*t:e;var n=g.getModuleCount()*t+2*e,r=e,i=n-e;return v(n,n,(function(e,n){if(r<=e&&e<i&&r<=n&&n<i){var o=Math.floor((e-r)/t),a=Math.floor((n-r)/t);return g.isDark(a,o)?0:1}return 1}))},g.createImgTag=function(t,e,n){t=t||2,e=void 0===e?4*t:e;var r=g.getModuleCount()*t+2*e,i="";return i+="<img",i+=' src="',i+=g.createDataURL(t,e),i+='"',i+=' width="',i+=r,i+='"',i+=' height="',i+=r,i+='"',n&&(i+=' alt="',i+=k(n),i+='"'),i+"/>"};var k=function(t){for(var e="",n=0;n<t.length;n+=1){var r=t.charAt(n);switch(r){case"<":e+="&lt;";break;case">":e+="&gt;";break;case"&":e+="&amp;";break;case'"':e+="&quot;";break;default:e+=r}}return e};return g.createASCII=function(t,e){if((t=t||1)<2)return function(t){t=void 0===t?2:t;var e,n,r,i,o,a=1*g.getModuleCount()+2*t,s=t,u=a-t,c={"██":"█","█ ":"▀"," █":"▄"," ":" "},l={"██":"▀","█ ":"▀"," █":" "," ":" "},h="";for(e=0;e<a;e+=2){for(r=Math.floor((e-s)/1),i=Math.floor((e+1-s)/1),n=0;n<a;n+=1)o="█",s<=n&&n<u&&s<=e&&e<u&&g.isDark(r,Math.floor((n-s)/1))&&(o=" "),s<=n&&n<u&&s<=e+1&&e+1<u&&g.isDark(i,Math.floor((n-s)/1))?o+=" ":o+="█",h+=t<1&&e+1>=u?l[o]:c[o];h+="\n"}return a%2&&t>0?h.substring(0,h.length-a-1)+Array(a+1).join("▀"):h.substring(0,h.length-1)}(e);t-=1,e=void 0===e?2*t:e;var n,r,i,o,a=g.getModuleCount()*t+2*e,s=e,u=a-e,c=Array(t+1).join("██"),l=Array(t+1).join(" "),h="",d="";for(n=0;n<a;n+=1){for(i=Math.floor((n-s)/t),d="",r=0;r<a;r+=1)o=1,s<=r&&r<u&&s<=n&&n<u&&g.isDark(i,Math.floor((r-s)/t))&&(o=0),d+=o?c:l;for(i=0;i<t;i+=1)h+=d+"\n"}return h.substring(0,h.length-1)},g.renderTo2dContext=function(t,e){e=e||2;for(var n=g.getModuleCount(),r=0;r<n;r++)for(var i=0;i<n;i++)t.fillStyle=g.isDark(r,i)?"black":"white",t.fillRect(r*e,i*e,e,e)},g};t.stringToBytes=(t.stringToBytesFuncs={default:function(t){for(var e=[],n=0;n<t.length;n+=1){var r=t.charCodeAt(n);e.push(255&r)}return e}}).default,t.createStringToBytes=function(t,e){var n=function(){for(var n=g(t),r=function(){var t=n.read();if(-1==t)throw"eof";return t},i=0,o={};;){var a=n.read();if(-1==a)break;var s=r(),u=r()<<8|r();o[String.fromCharCode(a<<8|s)]=u,i+=1}if(i!=e)throw i+" != "+e;return o}(),r="?".charCodeAt(0);return function(t){for(var e=[],i=0;i<t.length;i+=1){var o=t.charCodeAt(i);if(o<128)e.push(o);else{var a=n[t.charAt(i)];"number"==typeof a?(255&a)==a?e.push(a):(e.push(a>>>8),e.push(255&a)):e.push(r)}}return e}};var e,n,r,i,o,a={L:1,M:0,Q:3,H:2},s=(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]],n=1335,r=7973,o=function(t){for(var e=0;0!=t;)e+=1,t>>>=1;return e},(i={}).getBCHTypeInfo=function(t){for(var e=t<<10;o(e)-o(n)>=0;)e^=n<<o(e)-o(n);return 21522^(t<<10|e)},i.getBCHTypeNumber=function(t){for(var e=t<<12;o(e)-o(r)>=0;)e^=r<<o(e)-o(r);return t<<12|e},i.getPatternPosition=function(t){return e[t-1]},i.getMaskFunction=function(t){switch(t){case 0:return function(t,e){return(t+e)%2==0};case 1:return function(t,e){return t%2==0};case 2:return function(t,e){return e%3==0};case 3:return function(t,e){return(t+e)%3==0};case 4:return function(t,e){return(Math.floor(t/2)+Math.floor(e/3))%2==0};case 5:return function(t,e){return t*e%2+t*e%3==0};case 6:return function(t,e){return(t*e%2+t*e%3)%2==0};case 7:return function(t,e){return(t*e%3+(t+e)%2)%2==0};default:throw"bad maskPattern:"+t}},i.getErrorCorrectPolynomial=function(t){for(var e=c([1],0),n=0;n<t;n+=1)e=e.multiply(c([1,u.gexp(n)],0));return e},i.getLengthInBits=function(t,e){if(1<=e&&e<10)switch(t){case 1:return 10;case 2:return 9;case 4:case 8:return 8;default:throw"mode:"+t}else if(e<27)switch(t){case 1:return 12;case 2:return 11;case 4:return 16;case 8:return 10;default:throw"mode:"+t}else{if(!(e<41))throw"type:"+e;switch(t){case 1:return 14;case 2:return 13;case 4:return 16;case 8:return 12;default:throw"mode:"+t}}},i.getLostPoint=function(t){for(var e=t.getModuleCount(),n=0,r=0;r<e;r+=1)for(var i=0;i<e;i+=1){for(var o=0,a=t.isDark(r,i),s=-1;s<=1;s+=1)if(!(r+s<0||e<=r+s))for(var u=-1;u<=1;u+=1)i+u<0||e<=i+u||0==s&&0==u||a==t.isDark(r+s,i+u)&&(o+=1);o>5&&(n+=3+o-5)}for(r=0;r<e-1;r+=1)for(i=0;i<e-1;i+=1){var c=0;t.isDark(r,i)&&(c+=1),t.isDark(r+1,i)&&(c+=1),t.isDark(r,i+1)&&(c+=1),t.isDark(r+1,i+1)&&(c+=1),0!=c&&4!=c||(n+=3)}for(r=0;r<e;r+=1)for(i=0;i<e-6;i+=1)t.isDark(r,i)&&!t.isDark(r,i+1)&&t.isDark(r,i+2)&&t.isDark(r,i+3)&&t.isDark(r,i+4)&&!t.isDark(r,i+5)&&t.isDark(r,i+6)&&(n+=40);for(i=0;i<e;i+=1)for(r=0;r<e-6;r+=1)t.isDark(r,i)&&!t.isDark(r+1,i)&&t.isDark(r+2,i)&&t.isDark(r+3,i)&&t.isDark(r+4,i)&&!t.isDark(r+5,i)&&t.isDark(r+6,i)&&(n+=40);var l=0;for(i=0;i<e;i+=1)for(r=0;r<e;r+=1)t.isDark(r,i)&&(l+=1);return n+Math.abs(100*l/e/e-50)/5*10},i),u=function(){for(var t=new Array(256),e=new Array(256),n=0;n<8;n+=1)t[n]=1<<n;for(n=8;n<256;n+=1)t[n]=t[n-4]^t[n-5]^t[n-6]^t[n-8];for(n=0;n<255;n+=1)e[t[n]]=n;return{glog:function(t){if(t<1)throw"glog("+t+")";return e[t]},gexp:function(e){for(;e<0;)e+=255;for(;e>=256;)e-=255;return t[e]}}}();function c(t,e){if(void 0===t.length)throw t.length+"/"+e;var n=function(){for(var n=0;n<t.length&&0==t[n];)n+=1;for(var r=new Array(t.length-n+e),i=0;i<t.length-n;i+=1)r[i]=t[i+n];return r}(),r={getAt:function(t){return n[t]},getLength:function(){return n.length},multiply:function(t){for(var e=new Array(r.getLength()+t.getLength()-1),n=0;n<r.getLength();n+=1)for(var i=0;i<t.getLength();i+=1)e[n+i]^=u.gexp(u.glog(r.getAt(n))+u.glog(t.getAt(i)));return c(e,0)},mod:function(t){if(r.getLength()-t.getLength()<0)return r;for(var e=u.glog(r.getAt(0))-u.glog(t.getAt(0)),n=new Array(r.getLength()),i=0;i<r.getLength();i+=1)n[i]=r.getAt(i);for(i=0;i<t.getLength();i+=1)n[i]^=u.gexp(u.glog(t.getAt(i))+e);return c(n,0).mod(t)}};return r}var l=function(){var t=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],e=function(t,e){var n={};return n.totalCount=t,n.dataCount=e,n};return{getRSBlocks:function(n,r){var i=function(e,n){switch(n){case a.L:return t[4*(e-1)+0];case a.M:return t[4*(e-1)+1];case a.Q:return t[4*(e-1)+2];case a.H:return t[4*(e-1)+3];default:return}}(n,r);if(void 0===i)throw"bad rs block @ typeNumber:"+n+"/errorCorrectionLevel:"+r;for(var o=i.length/3,s=[],u=0;u<o;u+=1)for(var c=i[3*u+0],l=i[3*u+1],h=i[3*u+2],d=0;d<c;d+=1)s.push(e(l,h));return s}}}(),h=function(){var t=[],e=0,n={getBuffer:function(){return t},getAt:function(e){var n=Math.floor(e/8);return 1==(t[n]>>>7-e%8&1)},put:function(t,e){for(var r=0;r<e;r+=1)n.putBit(1==(t>>>e-r-1&1))},getLengthInBits:function(){return e},putBit:function(n){var r=Math.floor(e/8);t.length<=r&&t.push(0),n&&(t[r]|=128>>>e%8),e+=1}};return n},d=function(t){var e=t,n={getMode:function(){return 1},getLength:function(t){return e.length},write:function(t){for(var n=e,i=0;i+2<n.length;)t.put(r(n.substring(i,i+3)),10),i+=3;i<n.length&&(n.length-i==1?t.put(r(n.substring(i,i+1)),4):n.length-i==2&&t.put(r(n.substring(i,i+2)),7))}},r=function(t){for(var e=0,n=0;n<t.length;n+=1)e=10*e+i(t.charAt(n));return e},i=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-"0".charCodeAt(0);throw"illegal char :"+t};return n},f=function(t){var e=t,n={getMode:function(){return 2},getLength:function(t){return e.length},write:function(t){for(var n=e,i=0;i+1<n.length;)t.put(45*r(n.charAt(i))+r(n.charAt(i+1)),11),i+=2;i<n.length&&t.put(r(n.charAt(i)),6)}},r=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-"0".charCodeAt(0);if("A"<=t&&t<="Z")return t.charCodeAt(0)-"A".charCodeAt(0)+10;switch(t){case" ":return 36;case"$":return 37;case"%":return 38;case"*":return 39;case"+":return 40;case"-":return 41;case".":return 42;case"/":return 43;case":":return 44;default:throw"illegal char :"+t}};return n},p=function(e){var n=t.stringToBytes(e);return{getMode:function(){return 4},getLength:function(t){return n.length},write:function(t){for(var e=0;e<n.length;e+=1)t.put(n[e],8)}}},y=function(e){var n=t.stringToBytesFuncs.SJIS;if(!n)throw"sjis not supported.";!function(t,e){var r=n("友");if(2!=r.length||38726!=(r[0]<<8|r[1]))throw"sjis not supported."}();var r=n(e);return{getMode:function(){return 8},getLength:function(t){return~~(r.length/2)},write:function(t){for(var e=r,n=0;n+1<e.length;){var i=(255&e[n])<<8|255&e[n+1];if(33088<=i&&i<=40956)i-=33088;else{if(!(57408<=i&&i<=60351))throw"illegal char at "+(n+1)+"/"+i;i-=49472}i=192*(i>>>8&255)+(255&i),t.put(i,13),n+=2}if(n<e.length)throw"illegal char at "+(n+1)}}},m=function(){var t=[],e={writeByte:function(e){t.push(255&e)},writeShort:function(t){e.writeByte(t),e.writeByte(t>>>8)},writeBytes:function(t,n,r){n=n||0,r=r||t.length;for(var i=0;i<r;i+=1)e.writeByte(t[i+n])},writeString:function(t){for(var n=0;n<t.length;n+=1)e.writeByte(t.charCodeAt(n))},toByteArray:function(){return t},toString:function(){var e="";e+="[";for(var n=0;n<t.length;n+=1)n>0&&(e+=","),e+=t[n];return e+"]"}};return e},g=function(t){var e=t,n=0,r=0,i=0,o={read:function(){for(;i<8;){if(n>=e.length){if(0==i)return-1;throw"unexpected end of file./"+i}var t=e.charAt(n);if(n+=1,"="==t)return i=0,-1;t.match(/^\s$/)||(r=r<<6|a(t.charCodeAt(0)),i+=6)}var o=r>>>i-8&255;return i-=8,o}},a=function(t){if(65<=t&&t<=90)return t-65;if(97<=t&&t<=122)return t-97+26;if(48<=t&&t<=57)return t-48+52;if(43==t)return 62;if(47==t)return 63;throw"c:"+t};return o},v=function(t,e,n){for(var r=function(t,e){var n=t,r=e,i=new Array(t*e),o={setPixel:function(t,e,r){i[e*n+t]=r},write:function(t){t.writeString("GIF87a"),t.writeShort(n),t.writeShort(r),t.writeByte(128),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(255),t.writeByte(255),t.writeByte(255),t.writeString(","),t.writeShort(0),t.writeShort(0),t.writeShort(n),t.writeShort(r),t.writeByte(0);var e=a(2);t.writeByte(2);for(var i=0;e.length-i>255;)t.writeByte(255),t.writeBytes(e,i,255),i+=255;t.writeByte(e.length-i),t.writeBytes(e,i,e.length-i),t.writeByte(0),t.writeString(";")}},a=function(t){for(var e=1<<t,n=1+(1<<t),r=t+1,o=s(),a=0;a<e;a+=1)o.add(String.fromCharCode(a));o.add(String.fromCharCode(e)),o.add(String.fromCharCode(n));var u,c,l,h=m(),d=(u=h,c=0,l=0,{write:function(t,e){if(t>>>e!=0)throw"length over";for(;c+e>=8;)u.writeByte(255&(t<<c|l)),e-=8-c,t>>>=8-c,l=0,c=0;l|=t<<c,c+=e},flush:function(){c>0&&u.writeByte(l)}});d.write(e,r);var f=0,p=String.fromCharCode(i[f]);for(f+=1;f<i.length;){var y=String.fromCharCode(i[f]);f+=1,o.contains(p+y)?p+=y:(d.write(o.indexOf(p),r),o.size()<4095&&(o.size()==1<<r&&(r+=1),o.add(p+y)),p=y)}return d.write(o.indexOf(p),r),d.write(n,r),d.flush(),h.toByteArray()},s=function(){var t={},e=0,n={add:function(r){if(n.contains(r))throw"dup key:"+r;t[r]=e,e+=1},size:function(){return e},indexOf:function(e){return t[e]},contains:function(e){return void 0!==t[e]}};return n};return o}(t,e),i=0;i<e;i+=1)for(var o=0;o<t;o+=1)r.setPixel(o,i,n(o,i));var a=m();r.write(a);for(var s=function(){var t=0,e=0,n=0,r="",i={},o=function(t){r+=String.fromCharCode(a(63&t))},a=function(t){if(t<0);else{if(t<26)return 65+t;if(t<52)return t-26+97;if(t<62)return t-52+48;if(62==t)return 43;if(63==t)return 47}throw"n:"+t};return i.writeByte=function(r){for(t=t<<8|255&r,e+=8,n+=1;e>=6;)o(t>>>e-6),e-=6},i.flush=function(){if(e>0&&(o(t<<6-e),t=0,e=0),n%3!=0)for(var i=3-n%3,a=0;a<i;a+=1)r+="="},i.toString=function(){return r},i}(),u=a.toByteArray(),c=0;c<u.length;c+=1)s.writeByte(u[c]);return s.flush(),"data:image/gif;base64,"+s};return t}();i.stringToBytesFuncs["UTF-8"]=function(t){return function(t){for(var e=[],n=0;n<t.length;n++){var r=t.charCodeAt(n);r<128?e.push(r):r<2048?e.push(192|r>>6,128|63&r):r<55296||r>=57344?e.push(224|r>>12,128|r>>6&63,128|63&r):(n++,r=65536+((1023&r)<<10|1023&t.charCodeAt(n)),e.push(240|r>>18,128|r>>12&63,128|r>>6&63,128|63&r))}return e}(t)},void 0===(r="function"==typeof(n=function(){return i})?n.apply(e,[]):n)||(t.exports=r)},676:(t,e,n)=>{n.d(e,{default:()=>C});var r=function(){return(r=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)},i=function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var r=Array(t),i=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,i++)r[i]=o[a];return r},o=function(t){return!!t&&"object"==typeof t&&!Array.isArray(t)};function a(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(!e.length)return t;var s=e.shift();return void 0!==s&&o(t)&&o(s)?(t=r({},t),Object.keys(s).forEach((function(e){var n=t[e],r=s[e];Array.isArray(n)&&Array.isArray(r)?t[e]=r:o(n)&&o(r)?t[e]=a(Object.assign({},n),r):t[e]=r})),a.apply(void 0,i([t],e))):t}function s(t,e){var n=document.createElement("a");n.download=e,n.href=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function u(t){return e=this,n=void 0,i=function(){return function(t,e){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,r=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((i=(i=a.trys).length>0&&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[3])){a.label=o[1];break}if(6===o[0]&&a.label<i[1]){a.label=i[1],i=o;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(o);break}i[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],r=0}finally{n=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}}(this,(function(e){return[2,new Promise((function(e){var n=new XMLHttpRequest;n.onload=function(){var t=new FileReader;t.onloadend=function(){e(t.result)},t.readAsDataURL(n.response)},n.open("GET",t),n.responseType="blob",n.send()}))]}))},new((r=void 0)||(r=Promise))((function(t,o){function a(t){try{u(i.next(t))}catch(t){o(t)}}function s(t){try{u(i.throw(t))}catch(t){o(t)}}function u(e){var n;e.done?t(e.value):(n=e.value,n instanceof r?n:new r((function(t){t(n)}))).then(a,s)}u((i=i.apply(e,n||[])).next())}));var e,n,r,i}const c={L:.07,M:.15,Q:.25,H:.3};var l=function(){return(l=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)};const h=function(){function t(t){var e=t.svg,n=t.type;this._svg=e,this._type=n}return t.prototype.draw=function(t,e,n,r){var i;switch(this._type){case"dots":i=this._drawDot;break;case"classy":i=this._drawClassy;break;case"classy-rounded":i=this._drawClassyRounded;break;case"rounded":i=this._drawRounded;break;case"extra-rounded":i=this._drawExtraRounded;break;case"square":default:i=this._drawSquare}i.call(this,{x:t,y:e,size:n,getNeighbor:r})},t.prototype._rotateFigure=function(t){var e,n=t.x,r=t.y,i=t.size,o=t.rotation,a=void 0===o?0:o,s=n+i/2,u=r+i/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","circle"),e._element.setAttribute("cx",String(r+n/2)),e._element.setAttribute("cy",String(i+n/2)),e._element.setAttribute("r",String(n/2))}}))},t.prototype._basicSquare=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","rect"),e._element.setAttribute("x",String(r)),e._element.setAttribute("y",String(i)),e._element.setAttribute("width",String(n)),e._element.setAttribute("height",String(n))}}))},t.prototype._basicSideRounded=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+r+" "+i+"v "+n+"h "+n/2+"a "+n/2+" "+n/2+", 0, 0, 0, 0 "+-n)}}))},t.prototype._basicCornerRounded=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+r+" "+i+"v "+n+"h "+n+"v "+-n/2+"a "+n/2+" "+n/2+", 0, 0, 0, "+-n/2+" "+-n/2)}}))},t.prototype._basicCornerExtraRounded=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+r+" "+i+"v "+n+"h "+n+"a "+n+" "+n+", 0, 0, 0, "+-n+" "+-n)}}))},t.prototype._basicCornersRounded=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+r+" "+i+"v "+n/2+"a "+n/2+" "+n/2+", 0, 0, 0, "+n/2+" "+n/2+"h "+n/2+"v "+-n/2+"a "+n/2+" "+n/2+", 0, 0, 0, "+-n/2+" "+-n/2)}}))},t.prototype._drawDot=function(t){var e=t.x,n=t.y,r=t.size;this._basicDot({x:e,y:n,size:r,rotation:0})},t.prototype._drawSquare=function(t){var e=t.x,n=t.y,r=t.size;this._basicSquare({x:e,y:n,size:r,rotation:0})},t.prototype._drawRounded=function(t){var e=t.x,n=t.y,r=t.size,i=t.getNeighbor,o=i?+i(-1,0):0,a=i?+i(1,0):0,s=i?+i(0,-1):0,u=i?+i(0,1):0,c=o+a+s+u;if(0!==c)if(c>2||o&&a||s&&u)this._basicSquare({x:e,y:n,size:r,rotation:0});else{if(2===c){var l=0;return o&&s?l=Math.PI/2:s&&a?l=Math.PI:a&&u&&(l=-Math.PI/2),void this._basicCornerRounded({x:e,y:n,size:r,rotation:l})}if(1===c)return l=0,s?l=Math.PI/2:a?l=Math.PI:u&&(l=-Math.PI/2),void this._basicSideRounded({x:e,y:n,size:r,rotation:l})}else this._basicDot({x:e,y:n,size:r,rotation:0})},t.prototype._drawExtraRounded=function(t){var e=t.x,n=t.y,r=t.size,i=t.getNeighbor,o=i?+i(-1,0):0,a=i?+i(1,0):0,s=i?+i(0,-1):0,u=i?+i(0,1):0,c=o+a+s+u;if(0!==c)if(c>2||o&&a||s&&u)this._basicSquare({x:e,y:n,size:r,rotation:0});else{if(2===c){var l=0;return o&&s?l=Math.PI/2:s&&a?l=Math.PI:a&&u&&(l=-Math.PI/2),void this._basicCornerExtraRounded({x:e,y:n,size:r,rotation:l})}if(1===c)return l=0,s?l=Math.PI/2:a?l=Math.PI:u&&(l=-Math.PI/2),void this._basicSideRounded({x:e,y:n,size:r,rotation:l})}else this._basicDot({x:e,y:n,size:r,rotation:0})},t.prototype._drawClassy=function(t){var e=t.x,n=t.y,r=t.size,i=t.getNeighbor,o=i?+i(-1,0):0,a=i?+i(1,0):0,s=i?+i(0,-1):0,u=i?+i(0,1):0;0!==o+a+s+u?o||s?a||u?this._basicSquare({x:e,y:n,size:r,rotation:0}):this._basicCornerRounded({x:e,y:n,size:r,rotation:Math.PI/2}):this._basicCornerRounded({x:e,y:n,size:r,rotation:-Math.PI/2}):this._basicCornersRounded({x:e,y:n,size:r,rotation:Math.PI/2})},t.prototype._drawClassyRounded=function(t){var e=t.x,n=t.y,r=t.size,i=t.getNeighbor,o=i?+i(-1,0):0,a=i?+i(1,0):0,s=i?+i(0,-1):0,u=i?+i(0,1):0;0!==o+a+s+u?o||s?a||u?this._basicSquare({x:e,y:n,size:r,rotation:0}):this._basicCornerExtraRounded({x:e,y:n,size:r,rotation:Math.PI/2}):this._basicCornerExtraRounded({x:e,y:n,size:r,rotation:-Math.PI/2}):this._basicCornersRounded({x:e,y:n,size:r,rotation:Math.PI/2})},t}();var d=function(){return(d=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)};const f=function(){function t(t){var e=t.svg,n=t.type;this._svg=e,this._type=n}return t.prototype.draw=function(t,e,n,r){var i;switch(this._type){case"square":i=this._drawSquare;break;case"extra-rounded":i=this._drawExtraRounded;break;case"dot":default:i=this._drawDot}i.call(this,{x:t,y:e,size:n,rotation:r})},t.prototype._rotateFigure=function(t){var e,n=t.x,r=t.y,i=t.size,o=t.rotation,a=void 0===o?0:o,s=n+i/2,u=r+i/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,n=t.size,r=t.x,i=t.y,o=n/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+(r+n/2)+" "+i+"a "+n/2+" "+n/2+" 0 1 0 0.1 0zm 0 "+o+"a "+(n/2-o)+" "+(n/2-o)+" 0 1 1 -0.1 0Z")}}))},t.prototype._basicSquare=function(t){var e=this,n=t.size,r=t.x,i=t.y,o=n/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+r+" "+i+"v "+n+"h "+n+"v "+-n+"zM "+(r+o)+" "+(i+o)+"h "+(n-2*o)+"v "+(n-2*o)+"h "+(2*o-n)+"z")}}))},t.prototype._basicExtraRounded=function(t){var e=this,n=t.size,r=t.x,i=t.y,o=n/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+r+" "+(i+2.5*o)+"v "+2*o+"a "+2.5*o+" "+2.5*o+", 0, 0, 0, "+2.5*o+" "+2.5*o+"h "+2*o+"a "+2.5*o+" "+2.5*o+", 0, 0, 0, "+2.5*o+" "+2.5*-o+"v "+-2*o+"a "+2.5*o+" "+2.5*o+", 0, 0, 0, "+2.5*-o+" "+2.5*-o+"h "+-2*o+"a "+2.5*o+" "+2.5*o+", 0, 0, 0, "+2.5*-o+" "+2.5*o+"M "+(r+2.5*o)+" "+(i+o)+"h "+2*o+"a "+1.5*o+" "+1.5*o+", 0, 0, 1, "+1.5*o+" "+1.5*o+"v "+2*o+"a "+1.5*o+" "+1.5*o+", 0, 0, 1, "+1.5*-o+" "+1.5*o+"h "+-2*o+"a "+1.5*o+" "+1.5*o+", 0, 0, 1, "+1.5*-o+" "+1.5*-o+"v "+-2*o+"a "+1.5*o+" "+1.5*o+", 0, 0, 1, "+1.5*o+" "+1.5*-o)}}))},t.prototype._drawDot=function(t){var e=t.x,n=t.y,r=t.size,i=t.rotation;this._basicDot({x:e,y:n,size:r,rotation:i})},t.prototype._drawSquare=function(t){var e=t.x,n=t.y,r=t.size,i=t.rotation;this._basicSquare({x:e,y:n,size:r,rotation:i})},t.prototype._drawExtraRounded=function(t){var e=t.x,n=t.y,r=t.size,i=t.rotation;this._basicExtraRounded({x:e,y:n,size:r,rotation:i})},t}();var p=function(){return(p=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)};const y=function(){function t(t){var e=t.svg,n=t.type;this._svg=e,this._type=n}return t.prototype.draw=function(t,e,n,r){var i;switch(this._type){case"square":i=this._drawSquare;break;case"dot":default:i=this._drawDot}i.call(this,{x:t,y:e,size:n,rotation:r})},t.prototype._rotateFigure=function(t){var e,n=t.x,r=t.y,i=t.size,o=t.rotation,a=void 0===o?0:o,s=n+i/2,u=r+i/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(p(p({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","circle"),e._element.setAttribute("cx",String(r+n/2)),e._element.setAttribute("cy",String(i+n/2)),e._element.setAttribute("r",String(n/2))}}))},t.prototype._basicSquare=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(p(p({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","rect"),e._element.setAttribute("x",String(r)),e._element.setAttribute("y",String(i)),e._element.setAttribute("width",String(n)),e._element.setAttribute("height",String(n))}}))},t.prototype._drawDot=function(t){var e=t.x,n=t.y,r=t.size,i=t.rotation;this._basicDot({x:e,y:n,size:r,rotation:i})},t.prototype._drawSquare=function(t){var e=t.x,n=t.y,r=t.size,i=t.rotation;this._basicSquare({x:e,y:n,size:r,rotation:i})},t}(),m="circle";var g=function(t,e,n,r){return new(n||(n=Promise))((function(i,o){function a(t){try{u(r.next(t))}catch(t){o(t)}}function s(t){try{u(r.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(a,s)}u((r=r.apply(t,e||[])).next())}))},v=function(t,e){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,r=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((i=(i=a.trys).length>0&&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[3])){a.label=o[1];break}if(6===o[0]&&a.label<i[1]){a.label=i[1],i=o;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(o);break}i[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],r=0}finally{n=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}},w=[[1,1,1,1,1,1,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,1,1,1,1,1,1]],b=[[0,0,0,0,0,0,0],[0,0,0,0,0,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]];const M=function(){function t(t){this._element=document.createElementNS("http://www.w3.org/2000/svg","svg"),this._element.setAttribute("width",String(t.width)),this._element.setAttribute("height",String(t.height)),this._defs=document.createElementNS("http://www.w3.org/2000/svg","defs"),this._element.appendChild(this._defs),this._options=t}return Object.defineProperty(t.prototype,"width",{get:function(){return this._options.width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"height",{get:function(){return this._options.height},enumerable:!1,configurable:!0}),t.prototype.getElement=function(){return this._element},t.prototype.drawQR=function(t){return g(this,void 0,void 0,(function(){var e,n,r,i,o,a,s,u,l,h,d=this;return v(this,(function(f){switch(f.label){case 0:return e=t.getModuleCount(),n=Math.min(this._options.width,this._options.height)-2*this._options.margin,r=this._options.shape===m?n/Math.sqrt(2):n,i=Math.floor(r/e),o={hideXDots:0,hideYDots:0,width:0,height:0},this._qr=t,this._options.image?[4,this.loadImage()]:[3,2];case 1:if(f.sent(),!this._image)return[2];a=this._options,s=a.imageOptions,u=a.qrOptions,l=s.imageSize*c[u.errorCorrectionLevel],h=Math.floor(l*e*e),o=function(t){var e=t.originalHeight,n=t.originalWidth,r=t.maxHiddenDots,i=t.maxHiddenAxisDots,o=t.dotSize,a={x:0,y:0},s={x:0,y:0};if(e<=0||n<=0||r<=0||o<=0)return{height:0,width:0,hideYDots:0,hideXDots:0};var u=e/n;return a.x=Math.floor(Math.sqrt(r/u)),a.x<=0&&(a.x=1),i&&i<a.x&&(a.x=i),a.x%2==0&&a.x--,s.x=a.x*o,a.y=1+2*Math.ceil((a.x*u-1)/2),s.y=Math.round(s.x*u),(a.y*a.x>r||i&&i<a.y)&&(i&&i<a.y?(a.y=i,a.y%2==0&&a.x--):a.y-=2,s.y=a.y*o,a.x=1+2*Math.ceil((a.y/u-1)/2),s.x=Math.round(s.y/u)),{height:s.y,width:s.x,hideYDots:a.y,hideXDots:a.x}}({originalWidth:this._image.width,originalHeight:this._image.height,maxHiddenDots:h,maxHiddenAxisDots:e-14,dotSize:i}),f.label=2;case 2:return this.drawBackground(),this.drawDots((function(t,n){var r,i,a,s,u,c;return!(d._options.imageOptions.hideBackgroundDots&&t>=(e-o.hideXDots)/2&&t<(e+o.hideXDots)/2&&n>=(e-o.hideYDots)/2&&n<(e+o.hideYDots)/2||(null===(r=w[t])||void 0===r?void 0:r[n])||(null===(i=w[t-e+7])||void 0===i?void 0:i[n])||(null===(a=w[t])||void 0===a?void 0:a[n-e+7])||(null===(s=b[t])||void 0===s?void 0:s[n])||(null===(u=b[t-e+7])||void 0===u?void 0:u[n])||(null===(c=b[t])||void 0===c?void 0:c[n-e+7]))})),this.drawCorners(),this._options.image?[4,this.drawImage({width:o.width,height:o.height,count:e,dotSize:i})]:[3,4];case 3:f.sent(),f.label=4;case 4:return[2]}}))}))},t.prototype.drawBackground=function(){var t,e,n,r=this._element,i=this._options;if(r){var o=null===(t=i.backgroundOptions)||void 0===t?void 0:t.gradient,a=null===(e=i.backgroundOptions)||void 0===e?void 0:e.color;if((o||a)&&this._createColor({options:o,color:a,additionalRotation:0,x:0,y:0,height:i.height,width:i.width,name:"background-color"}),null===(n=i.backgroundOptions)||void 0===n?void 0:n.round){var s=Math.min(i.width,i.height),u=document.createElementNS("http://www.w3.org/2000/svg","rect");this._backgroundClipPath=document.createElementNS("http://www.w3.org/2000/svg","clipPath"),this._backgroundClipPath.setAttribute("id","clip-path-background-color"),this._defs.appendChild(this._backgroundClipPath),u.setAttribute("x",String((i.width-s)/2)),u.setAttribute("y",String((i.height-s)/2)),u.setAttribute("width",String(s)),u.setAttribute("height",String(s)),u.setAttribute("rx",String(s/2*i.backgroundOptions.round)),this._backgroundClipPath.appendChild(u)}}},t.prototype.drawDots=function(t){var e,n,r=this;if(!this._qr)throw"QR code is not defined";var i=this._options,o=this._qr.getModuleCount();if(o>i.width||o>i.height)throw"The canvas is too small.";var a=Math.min(i.width,i.height)-2*i.margin,s=i.shape===m?a/Math.sqrt(2):a,u=Math.floor(s/o),c=Math.floor((i.width-o*u)/2),l=Math.floor((i.height-o*u)/2),d=new h({svg:this._element,type:i.dotsOptions.type});this._dotsClipPath=document.createElementNS("http://www.w3.org/2000/svg","clipPath"),this._dotsClipPath.setAttribute("id","clip-path-dot-color"),this._defs.appendChild(this._dotsClipPath),this._createColor({options:null===(e=i.dotsOptions)||void 0===e?void 0:e.gradient,color:i.dotsOptions.color,additionalRotation:0,x:0,y:0,height:i.height,width:i.width,name:"dot-color"});for(var f=function(e){for(var i=function(i){return t&&!t(e,i)?"continue":(null===(n=p._qr)||void 0===n?void 0:n.isDark(e,i))?(d.draw(c+e*u,l+i*u,u,(function(n,a){return!(e+n<0||i+a<0||e+n>=o||i+a>=o)&&!(t&&!t(e+n,i+a))&&!!r._qr&&r._qr.isDark(e+n,i+a)})),void(d._element&&p._dotsClipPath&&p._dotsClipPath.appendChild(d._element))):"continue"},a=0;a<o;a++)i(a)},p=this,y=0;y<o;y++)f(y);if(i.shape===m){var g=Math.floor((a/u-o)/2),v=o+2*g,w=c-g*u,b=l-g*u,M=[],A=Math.floor(v/2);for(y=0;y<v;y++){M[y]=[];for(var I=0;I<v;I++)y>=g-1&&y<=v-g&&I>=g-1&&I<=v-g||Math.sqrt((y-A)*(y-A)+(I-A)*(I-A))>A?M[y][I]=0:M[y][I]=this._qr.isDark(I-2*g<0?I:I>=o?I-2*g:I-g,y-2*g<0?y:y>=o?y-2*g:y-g)?1:0}var N=function(t){for(var e=function(e){if(!M[t][e])return"continue";d.draw(w+t*u,b+e*u,u,(function(n,r){var i;return!!(null===(i=M[t+n])||void 0===i?void 0:i[e+r])})),d._element&&E._dotsClipPath&&E._dotsClipPath.appendChild(d._element)},n=0;n<v;n++)e(n)},E=this;for(y=0;y<v;y++)N(y)}},t.prototype.drawCorners=function(){var t=this;if(!this._qr)throw"QR code is not defined";var e=this._element,n=this._options;if(!e)throw"Element code is not defined";var r=this._qr.getModuleCount(),i=Math.min(n.width,n.height)-2*n.margin,o=n.shape===m?i/Math.sqrt(2):i,a=Math.floor(o/r),s=7*a,u=3*a,c=Math.floor((n.width-r*a)/2),l=Math.floor((n.height-r*a)/2);[[0,0,0],[1,0,Math.PI/2],[0,1,-Math.PI/2]].forEach((function(e){var i,o,d,p,m,g,v,M,A,I,N,E,x=e[0],k=e[1],T=e[2],L=c+x*a*(r-7),S=l+k*a*(r-7),j=t._dotsClipPath,D=t._dotsClipPath;if(((null===(i=n.cornersSquareOptions)||void 0===i?void 0:i.gradient)||(null===(o=n.cornersSquareOptions)||void 0===o?void 0:o.color))&&((j=document.createElementNS("http://www.w3.org/2000/svg","clipPath")).setAttribute("id","clip-path-corners-square-color-"+x+"-"+k),t._defs.appendChild(j),t._cornersSquareClipPath=t._cornersDotClipPath=D=j,t._createColor({options:null===(d=n.cornersSquareOptions)||void 0===d?void 0:d.gradient,color:null===(p=n.cornersSquareOptions)||void 0===p?void 0:p.color,additionalRotation:T,x:L,y:S,height:s,width:s,name:"corners-square-color-"+x+"-"+k})),null===(m=n.cornersSquareOptions)||void 0===m?void 0:m.type){var C=new f({svg:t._element,type:n.cornersSquareOptions.type});C.draw(L,S,s,T),C._element&&j&&j.appendChild(C._element)}else for(var O=new h({svg:t._element,type:n.dotsOptions.type}),z=function(t){for(var e=function(e){if(!(null===(g=w[t])||void 0===g?void 0:g[e]))return"continue";O.draw(L+t*a,S+e*a,a,(function(n,r){var i;return!!(null===(i=w[t+n])||void 0===i?void 0:i[e+r])})),O._element&&j&&j.appendChild(O._element)},n=0;n<w[t].length;n++)e(n)},P=0;P<w.length;P++)z(P);if(((null===(v=n.cornersDotOptions)||void 0===v?void 0:v.gradient)||(null===(M=n.cornersDotOptions)||void 0===M?void 0:M.color))&&((D=document.createElementNS("http://www.w3.org/2000/svg","clipPath")).setAttribute("id","clip-path-corners-dot-color-"+x+"-"+k),t._defs.appendChild(D),t._cornersDotClipPath=D,t._createColor({options:null===(A=n.cornersDotOptions)||void 0===A?void 0:A.gradient,color:null===(I=n.cornersDotOptions)||void 0===I?void 0:I.color,additionalRotation:T,x:L+2*a,y:S+2*a,height:u,width:u,name:"corners-dot-color-"+x+"-"+k})),null===(N=n.cornersDotOptions)||void 0===N?void 0:N.type){var _=new y({svg:t._element,type:n.cornersDotOptions.type});_.draw(L+2*a,S+2*a,u,T),_._element&&D&&D.appendChild(_._element)}else{O=new h({svg:t._element,type:n.dotsOptions.type});var B=function(t){for(var e=function(e){if(!(null===(E=b[t])||void 0===E?void 0:E[e]))return"continue";O.draw(L+t*a,S+e*a,a,(function(n,r){var i;return!!(null===(i=b[t+n])||void 0===i?void 0:i[e+r])})),O._element&&D&&D.appendChild(O._element)},n=0;n<b[t].length;n++)e(n)};for(P=0;P<b.length;P++)B(P)}}))},t.prototype.loadImage=function(){var t=this;return new Promise((function(e,n){var r=t._options,i=new Image;if(!r.image)return n("Image is not defined");"string"==typeof r.imageOptions.crossOrigin&&(i.crossOrigin=r.imageOptions.crossOrigin),t._image=i,i.onload=function(){e()},i.src=r.image}))},t.prototype.drawImage=function(t){var e=t.width,n=t.height,r=t.count,i=t.dotSize;return g(this,void 0,void 0,(function(){var t,o,a,s,c,l,h,d,f;return v(this,(function(p){switch(p.label){case 0:return t=this._options,o=Math.floor((t.width-r*i)/2),a=Math.floor((t.height-r*i)/2),s=o+t.imageOptions.margin+(r*i-e)/2,c=a+t.imageOptions.margin+(r*i-n)/2,l=e-2*t.imageOptions.margin,h=n-2*t.imageOptions.margin,(d=document.createElementNS("http://www.w3.org/2000/svg","image")).setAttribute("x",String(s)),d.setAttribute("y",String(c)),d.setAttribute("width",l+"px"),d.setAttribute("height",h+"px"),[4,u(t.image||"")];case 1:return f=p.sent(),d.setAttribute("href",f||""),this._element.appendChild(d),[2]}}))}))},t.prototype._createColor=function(t){var e=t.options,n=t.color,r=t.additionalRotation,i=t.x,o=t.y,a=t.height,s=t.width,u=t.name,c=s>a?s:a,l=document.createElementNS("http://www.w3.org/2000/svg","rect");if(l.setAttribute("x",String(i)),l.setAttribute("y",String(o)),l.setAttribute("height",String(a)),l.setAttribute("width",String(s)),l.setAttribute("clip-path","url('#clip-path-"+u+"')"),e){var h;if("radial"===e.type)(h=document.createElementNS("http://www.w3.org/2000/svg","radialGradient")).setAttribute("id",u),h.setAttribute("gradientUnits","userSpaceOnUse"),h.setAttribute("fx",String(i+s/2)),h.setAttribute("fy",String(o+a/2)),h.setAttribute("cx",String(i+s/2)),h.setAttribute("cy",String(o+a/2)),h.setAttribute("r",String(c/2));else{var d=((e.rotation||0)+r)%(2*Math.PI),f=(d+2*Math.PI)%(2*Math.PI),p=i+s/2,y=o+a/2,m=i+s/2,g=o+a/2;f>=0&&f<=.25*Math.PI||f>1.75*Math.PI&&f<=2*Math.PI?(p-=s/2,y-=a/2*Math.tan(d),m+=s/2,g+=a/2*Math.tan(d)):f>.25*Math.PI&&f<=.75*Math.PI?(y-=a/2,p-=s/2/Math.tan(d),g+=a/2,m+=s/2/Math.tan(d)):f>.75*Math.PI&&f<=1.25*Math.PI?(p+=s/2,y+=a/2*Math.tan(d),m-=s/2,g-=a/2*Math.tan(d)):f>1.25*Math.PI&&f<=1.75*Math.PI&&(y+=a/2,p+=s/2/Math.tan(d),g-=a/2,m-=s/2/Math.tan(d)),(h=document.createElementNS("http://www.w3.org/2000/svg","linearGradient")).setAttribute("id",u),h.setAttribute("gradientUnits","userSpaceOnUse"),h.setAttribute("x1",String(Math.round(p))),h.setAttribute("y1",String(Math.round(y))),h.setAttribute("x2",String(Math.round(m))),h.setAttribute("y2",String(Math.round(g)))}e.colorStops.forEach((function(t){var e=t.offset,n=t.color,r=document.createElementNS("http://www.w3.org/2000/svg","stop");r.setAttribute("offset",100*e+"%"),r.setAttribute("stop-color",n),h.appendChild(r)})),l.setAttribute("fill","url('#"+u+"')"),this._defs.appendChild(h)}else n&&l.setAttribute("fill",n);this._element.appendChild(l)},t}(),A="canvas";for(var I={},N=0;N<=40;N++)I[N]=N;const E={type:A,shape:"square",width:300,height:300,data:"",margin:0,qrOptions:{typeNumber:I[0],mode:void 0,errorCorrectionLevel:"Q"},imageOptions:{hideBackgroundDots:!0,imageSize:.4,crossOrigin:void 0,margin:0},dotsOptions:{type:"square",color:"#000"},backgroundOptions:{round:0,color:"#fff"}};var x=function(){return(x=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)};function k(t){var e=x({},t);if(!e.colorStops||!e.colorStops.length)throw"Field 'colorStops' is required in gradient";return e.rotation?e.rotation=Number(e.rotation):e.rotation=0,e.colorStops=e.colorStops.map((function(t){return x(x({},t),{offset:Number(t.offset)})})),e}function T(t){var e=x({},t);return e.width=Number(e.width),e.height=Number(e.height),e.margin=Number(e.margin),e.imageOptions=x(x({},e.imageOptions),{hideBackgroundDots:Boolean(e.imageOptions.hideBackgroundDots),imageSize:Number(e.imageOptions.imageSize),margin:Number(e.imageOptions.margin)}),e.margin>Math.min(e.width,e.height)&&(e.margin=Math.min(e.width,e.height)),e.dotsOptions=x({},e.dotsOptions),e.dotsOptions.gradient&&(e.dotsOptions.gradient=k(e.dotsOptions.gradient)),e.cornersSquareOptions&&(e.cornersSquareOptions=x({},e.cornersSquareOptions),e.cornersSquareOptions.gradient&&(e.cornersSquareOptions.gradient=k(e.cornersSquareOptions.gradient))),e.cornersDotOptions&&(e.cornersDotOptions=x({},e.cornersDotOptions),e.cornersDotOptions.gradient&&(e.cornersDotOptions.gradient=k(e.cornersDotOptions.gradient))),e.backgroundOptions&&(e.backgroundOptions=x({},e.backgroundOptions),e.backgroundOptions.gradient&&(e.backgroundOptions.gradient=k(e.backgroundOptions.gradient))),e}var L=n(192),S=n.n(L),j=function(t,e,n,r){return new(n||(n=Promise))((function(i,o){function a(t){try{u(r.next(t))}catch(t){o(t)}}function s(t){try{u(r.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(a,s)}u((r=r.apply(t,e||[])).next())}))},D=function(t,e){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,r=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((i=(i=a.trys).length>0&&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[3])){a.label=o[1];break}if(6===o[0]&&a.label<i[1]){a.label=i[1],i=o;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(o);break}i[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],r=0}finally{n=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};const C=function(){function t(t){this._options=t?T(a(E,t)):E,this.update()}return t._clearContainer=function(t){t&&(t.innerHTML="")},t.prototype._setupSvg=function(){var t=this;if(this._qr){var e=new M(this._options);this._svg=e.getElement(),this._svgDrawingPromise=e.drawQR(this._qr).then((function(){var n;t._svg&&(null===(n=t._extension)||void 0===n||n.call(t,e.getElement(),t._options))}))}},t.prototype._setupCanvas=function(){var t,e=this;this._qr&&(this._canvas=document.createElement("canvas"),this._canvas.width=this._options.width,this._canvas.height=this._options.height,this._setupSvg(),this._canvasDrawingPromise=null===(t=this._svgDrawingPromise)||void 0===t?void 0:t.then((function(){if(e._svg){var t=e._svg,n=(new XMLSerializer).serializeToString(t),r="data:image/svg+xml;base64,"+btoa(n),i=new Image;return new Promise((function(t){i.onload=function(){var n,r;null===(r=null===(n=e._canvas)||void 0===n?void 0:n.getContext("2d"))||void 0===r||r.drawImage(i,0,0),t()},i.src=r}))}})))},t.prototype._getElement=function(t){return void 0===t&&(t="png"),j(this,void 0,void 0,(function(){return D(this,(function(e){switch(e.label){case 0:if(!this._qr)throw"QR code is empty";return"svg"!==t.toLowerCase()?[3,2]:(this._svg&&this._svgDrawingPromise||this._setupSvg(),[4,this._svgDrawingPromise]);case 1:return e.sent(),[2,this._svg];case 2:return this._canvas&&this._canvasDrawingPromise||this._setupCanvas(),[4,this._canvasDrawingPromise];case 3:return e.sent(),[2,this._canvas]}}))}))},t.prototype.update=function(e){t._clearContainer(this._container),this._options=e?T(a(this._options,e)):this._options,this._options.data&&(this._qr=S()(this._options.qrOptions.typeNumber,this._options.qrOptions.errorCorrectionLevel),this._qr.addData(this._options.data,this._options.qrOptions.mode||function(t){switch(!0){case/^[0-9]*$/.test(t):return"Numeric";case/^[0-9A-Z $%*+\-./:]*$/.test(t):return"Alphanumeric";default:return"Byte"}}(this._options.data)),this._qr.make(),this._options.type===A?this._setupCanvas():this._setupSvg(),this.append(this._container))},t.prototype.append=function(t){if(t){if("function"!=typeof t.appendChild)throw"Container should be a single DOM node";this._options.type===A?this._canvas&&t.appendChild(this._canvas):this._svg&&t.appendChild(this._svg),this._container=t}},t.prototype.applyExtension=function(t){if(!t)throw"Extension function should be defined.";this._extension=t,this.update()},t.prototype.deleteExtension=function(){this._extension=void 0,this.update()},t.prototype.getRawData=function(t){return void 0===t&&(t="png"),j(this,void 0,void 0,(function(){var e,n,r;return D(this,(function(i){switch(i.label){case 0:if(!this._qr)throw"QR code is empty";return[4,this._getElement(t)];case 1:return(e=i.sent())?"svg"===t.toLowerCase()?(n=new XMLSerializer,r=n.serializeToString(e),[2,new Blob(['<?xml version="1.0" standalone="no"?>\r\n'+r],{type:"image/svg+xml"})]):[2,new Promise((function(n){return e.toBlob(n,"image/"+t,1)}))]:[2,null]}}))}))},t.prototype.download=function(t){return j(this,void 0,void 0,(function(){var e,n,r,i,o;return D(this,(function(a){switch(a.label){case 0:if(!this._qr)throw"QR code is empty";return e="png",n="qr","string"==typeof t?(e=t,console.warn("Extension is deprecated as argument for 'download' method, please pass object { name: '...', extension: '...' } as argument")):"object"==typeof t&&null!==t&&(t.name&&(n=t.name),t.extension&&(e=t.extension)),[4,this._getElement(e)];case 1:return(r=a.sent())?("svg"===e.toLowerCase()?(i=new XMLSerializer,o='<?xml version="1.0" standalone="no"?>\r\n'+(o=i.serializeToString(r)),s("data:image/svg+xml;charset=utf-8,"+encodeURIComponent(o),n+".svg")):s(r.toDataURL("image/"+e),n+"."+e),[2]):[2]}}))}))},t}()}},e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={exports:{}};return t[r](i,i.exports,n),i.exports}return n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n(676)})().default}))),yF=Zf((function(t,e){(function(){var n,r="Expected a function",i="__lodash_hash_undefined__",o="__lodash_placeholder__",a=16,s=32,u=64,c=128,l=256,h=1/0,d=9007199254740991,f=NaN,p=4294967295,y=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",a],["flip",512],["partial",s],["partialRight",u],["rearg",l]],m="[object Arguments]",g="[object Array]",v="[object Boolean]",w="[object Date]",b="[object Error]",M="[object Function]",A="[object GeneratorFunction]",I="[object Map]",N="[object Number]",E="[object Object]",x="[object Promise]",k="[object RegExp]",T="[object Set]",L="[object String]",S="[object Symbol]",j="[object WeakMap]",D="[object ArrayBuffer]",C="[object DataView]",O="[object Float32Array]",z="[object Float64Array]",P="[object Int8Array]",_="[object Int16Array]",B="[object Int32Array]",R="[object Uint8Array]",U="[object Uint8ClampedArray]",Q="[object Uint16Array]",Y="[object Uint32Array]",W=/\b__p \+= '';/g,F=/\b(__p \+=) '' \+/g,V=/(__e\(.*?\)|\b__t\)) \+\n'';/g,H=/&(?:amp|lt|gt|quot|#39);/g,G=/[&<>"']/g,q=RegExp(H.source),Z=RegExp(G.source),J=/<%-([\s\S]+?)%>/g,X=/<%([\s\S]+?)%>/g,K=/<%=([\s\S]+?)%>/g,$=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,tt=/^\w*$/,et=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,nt=/[\\^$.*+?()[\]{}|]/g,rt=RegExp(nt.source),it=/^\s+/,ot=/\s/,at=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,st=/\{\n\/\* \[wrapped with (.+)\] \*/,ut=/,? & /,ct=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,lt=/[()=,{}\[\]\/\s]/,ht=/\\(\\)?/g,dt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ft=/\w*$/,pt=/^[-+]0x[0-9a-f]+$/i,yt=/^0b[01]+$/i,mt=/^\[object .+?Constructor\]$/,gt=/^0o[0-7]+$/i,vt=/^(?:0|[1-9]\d*)$/,wt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,bt=/($^)/,Mt=/['\n\r\u2028\u2029\\]/g,At="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",It="\\u2700-\\u27bf",Nt="a-z\\xdf-\\xf6\\xf8-\\xff",Et="A-Z\\xc0-\\xd6\\xd8-\\xde",xt="\\ufe0e\\ufe0f",kt="\\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",Tt="['’]",Lt="[\\ud800-\\udfff]",St="["+kt+"]",jt="["+At+"]",Dt="\\d+",Ct="[\\u2700-\\u27bf]",Ot="["+Nt+"]",zt="[^\\ud800-\\udfff"+kt+Dt+It+Nt+Et+"]",Pt="\\ud83c[\\udffb-\\udfff]",_t="[^\\ud800-\\udfff]",Bt="(?:\\ud83c[\\udde6-\\uddff]){2}",Rt="[\\ud800-\\udbff][\\udc00-\\udfff]",Ut="["+Et+"]",Qt="(?:"+Ot+"|"+zt+")",Yt="(?:"+Ut+"|"+zt+")",Wt="(?:['’](?:d|ll|m|re|s|t|ve))?",Ft="(?:['’](?:D|LL|M|RE|S|T|VE))?",Vt="(?:"+jt+"|"+Pt+")"+"?",Ht="[\\ufe0e\\ufe0f]?",Gt=Ht+Vt+("(?:\\u200d(?:"+[_t,Bt,Rt].join("|")+")"+Ht+Vt+")*"),qt="(?:"+[Ct,Bt,Rt].join("|")+")"+Gt,Zt="(?:"+[_t+jt+"?",jt,Bt,Rt,Lt].join("|")+")",Jt=RegExp(Tt,"g"),Xt=RegExp(jt,"g"),Kt=RegExp(Pt+"(?="+Pt+")|"+Zt+Gt,"g"),$t=RegExp([Ut+"?"+Ot+"+"+Wt+"(?="+[St,Ut,"$"].join("|")+")",Yt+"+"+Ft+"(?="+[St,Ut+Qt,"$"].join("|")+")",Ut+"?"+Qt+"+"+Wt,Ut+"+"+Ft,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Dt,qt].join("|"),"g"),te=RegExp("[\\u200d\\ud800-\\udfff"+At+xt+"]"),ee=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ne=["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"],re=-1,ie={};ie[O]=ie[z]=ie[P]=ie[_]=ie[B]=ie[R]=ie[U]=ie[Q]=ie[Y]=!0,ie[m]=ie[g]=ie[D]=ie[v]=ie[C]=ie[w]=ie[b]=ie[M]=ie[I]=ie[N]=ie[E]=ie[k]=ie[T]=ie[L]=ie[j]=!1;var oe={};oe[m]=oe[g]=oe[D]=oe[C]=oe[v]=oe[w]=oe[O]=oe[z]=oe[P]=oe[_]=oe[B]=oe[I]=oe[N]=oe[E]=oe[k]=oe[T]=oe[L]=oe[S]=oe[R]=oe[U]=oe[Q]=oe[Y]=!0,oe[b]=oe[M]=oe[j]=!1;var ae={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},se=parseFloat,ue=parseInt,ce="object"==typeof Gf&&Gf&&Gf.Object===Object&&Gf,le="object"==typeof self&&self&&self.Object===Object&&self,he=ce||le||Function("return this")(),de=e&&!e.nodeType&&e,fe=de&&t&&!t.nodeType&&t,pe=fe&&fe.exports===de,ye=pe&&ce.process,me=function(){try{var t=fe&&fe.require&&fe.require("util").types;return t||ye&&ye.binding&&ye.binding("util")}catch(t){}}(),ge=me&&me.isArrayBuffer,ve=me&&me.isDate,we=me&&me.isMap,be=me&&me.isRegExp,Me=me&&me.isSet,Ae=me&&me.isTypedArray;function Ie(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function Ne(t,e,n,r){for(var i=-1,o=null==t?0:t.length;++i<o;){var a=t[i];e(r,a,n(a),t)}return r}function Ee(t,e){for(var n=-1,r=null==t?0:t.length;++n<r&&!1!==e(t[n],n,t););return t}function xe(t,e){for(var n=null==t?0:t.length;n--&&!1!==e(t[n],n,t););return t}function ke(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(!e(t[n],n,t))return!1;return!0}function Te(t,e){for(var n=-1,r=null==t?0:t.length,i=0,o=[];++n<r;){var a=t[n];e(a,n,t)&&(o[i++]=a)}return o}function Le(t,e){return!!(null==t?0:t.length)&&Re(t,e,0)>-1}function Se(t,e,n){for(var r=-1,i=null==t?0:t.length;++r<i;)if(n(e,t[r]))return!0;return!1}function je(t,e){for(var n=-1,r=null==t?0:t.length,i=Array(r);++n<r;)i[n]=e(t[n],n,t);return i}function De(t,e){for(var n=-1,r=e.length,i=t.length;++n<r;)t[i+n]=e[n];return t}function Ce(t,e,n,r){var i=-1,o=null==t?0:t.length;for(r&&o&&(n=t[++i]);++i<o;)n=e(n,t[i],i,t);return n}function Oe(t,e,n,r){var i=null==t?0:t.length;for(r&&i&&(n=t[--i]);i--;)n=e(n,t[i],i,t);return n}function ze(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}var Pe=We("length");function _e(t,e,n){var r;return n(t,(function(t,n,i){if(e(t,n,i))return r=n,!1})),r}function Be(t,e,n,r){for(var i=t.length,o=n+(r?1:-1);r?o--:++o<i;)if(e(t[o],o,t))return o;return-1}function Re(t,e,n){return e==e?function(t,e,n){var r=n-1,i=t.length;for(;++r<i;)if(t[r]===e)return r;return-1}(t,e,n):Be(t,Qe,n)}function Ue(t,e,n,r){for(var i=n-1,o=t.length;++i<o;)if(r(t[i],e))return i;return-1}function Qe(t){return t!=t}function Ye(t,e){var n=null==t?0:t.length;return n?He(t,e)/n:f}function We(t){return function(e){return null==e?n:e[t]}}function Fe(t){return function(e){return null==t?n:t[e]}}function Ve(t,e,n,r,i){return i(t,(function(t,i,o){n=r?(r=!1,t):e(n,t,i,o)})),n}function He(t,e){for(var r,i=-1,o=t.length;++i<o;){var a=e(t[i]);a!==n&&(r=r===n?a:r+a)}return r}function Ge(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}function qe(t){return t?t.slice(0,fn(t)+1).replace(it,""):t}function Ze(t){return function(e){return t(e)}}function Je(t,e){return je(e,(function(e){return t[e]}))}function Xe(t,e){return t.has(e)}function Ke(t,e){for(var n=-1,r=t.length;++n<r&&Re(e,t[n],0)>-1;);return n}function $e(t,e){for(var n=t.length;n--&&Re(e,t[n],0)>-1;);return n}function tn(t,e){for(var n=t.length,r=0;n--;)t[n]===e&&++r;return r}var en=Fe({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),nn=Fe({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function rn(t){return"\\"+ae[t]}function on(t){return te.test(t)}function an(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function sn(t,e){return function(n){return t(e(n))}}function un(t,e){for(var n=-1,r=t.length,i=0,a=[];++n<r;){var s=t[n];s!==e&&s!==o||(t[n]=o,a[i++]=n)}return a}function cn(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}function ln(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=[t,t]})),n}function hn(t){return on(t)?function(t){var e=Kt.lastIndex=0;for(;Kt.test(t);)++e;return e}(t):Pe(t)}function dn(t){return on(t)?function(t){return t.match(Kt)||[]}(t):function(t){return t.split("")}(t)}function fn(t){for(var e=t.length;e--&&ot.test(t.charAt(e)););return e}var pn=Fe({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"});var yn=function t(e){var ot,At=(e=null==e?he:yn.defaults(he.Object(),e,yn.pick(he,ne))).Array,It=e.Date,Nt=e.Error,Et=e.Function,xt=e.Math,kt=e.Object,Tt=e.RegExp,Lt=e.String,St=e.TypeError,jt=At.prototype,Dt=Et.prototype,Ct=kt.prototype,Ot=e["__core-js_shared__"],zt=Dt.toString,Pt=Ct.hasOwnProperty,_t=0,Bt=(ot=/[^.]+$/.exec(Ot&&Ot.keys&&Ot.keys.IE_PROTO||""))?"Symbol(src)_1."+ot:"",Rt=Ct.toString,Ut=zt.call(kt),Qt=he._,Yt=Tt("^"+zt.call(Pt).replace(nt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Wt=pe?e.Buffer:n,Ft=e.Symbol,Vt=e.Uint8Array,Ht=Wt?Wt.allocUnsafe:n,Gt=sn(kt.getPrototypeOf,kt),qt=kt.create,Zt=Ct.propertyIsEnumerable,Kt=jt.splice,te=Ft?Ft.isConcatSpreadable:n,ae=Ft?Ft.iterator:n,ce=Ft?Ft.toStringTag:n,le=function(){try{var t=po(kt,"defineProperty");return t({},"",{}),t}catch(t){}}(),de=e.clearTimeout!==he.clearTimeout&&e.clearTimeout,fe=It&&It.now!==he.Date.now&&It.now,ye=e.setTimeout!==he.setTimeout&&e.setTimeout,me=xt.ceil,Pe=xt.floor,Fe=kt.getOwnPropertySymbols,mn=Wt?Wt.isBuffer:n,gn=e.isFinite,vn=jt.join,wn=sn(kt.keys,kt),bn=xt.max,Mn=xt.min,An=It.now,In=e.parseInt,Nn=xt.random,En=jt.reverse,xn=po(e,"DataView"),kn=po(e,"Map"),Tn=po(e,"Promise"),Ln=po(e,"Set"),Sn=po(e,"WeakMap"),jn=po(kt,"create"),Dn=Sn&&new Sn,Cn={},On=Qo(xn),zn=Qo(kn),Pn=Qo(Tn),_n=Qo(Ln),Bn=Qo(Sn),Rn=Ft?Ft.prototype:n,Un=Rn?Rn.valueOf:n,Qn=Rn?Rn.toString:n;function Yn(t){if(is(t)&&!Ga(t)&&!(t instanceof Hn)){if(t instanceof Vn)return t;if(Pt.call(t,"__wrapped__"))return Yo(t)}return new Vn(t)}var Wn=function(){function t(){}return function(e){if(!rs(e))return{};if(qt)return qt(e);t.prototype=e;var r=new t;return t.prototype=n,r}}();function Fn(){}function Vn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=n}function Hn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=p,this.__views__=[]}function Gn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function qn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function Zn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function Jn(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new Zn;++e<n;)this.add(t[e])}function Xn(t){var e=this.__data__=new qn(t);this.size=e.size}function Kn(t,e){var n=Ga(t),r=!n&&Ha(t),i=!n&&!r&&Xa(t),o=!n&&!r&&!i&&ds(t),a=n||r||i||o,s=a?Ge(t.length,Lt):[],u=s.length;for(var c in t)!e&&!Pt.call(t,c)||a&&("length"==c||i&&("offset"==c||"parent"==c)||o&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||Mo(c,u))||s.push(c);return s}function $n(t){var e=t.length;return e?t[Jr(0,e-1)]:n}function tr(t,e){return Bo(ji(t),cr(e,0,t.length))}function er(t){return Bo(ji(t))}function nr(t,e,r){(r!==n&&!Wa(t[e],r)||r===n&&!(e in t))&&sr(t,e,r)}function rr(t,e,r){var i=t[e];Pt.call(t,e)&&Wa(i,r)&&(r!==n||e in t)||sr(t,e,r)}function ir(t,e){for(var n=t.length;n--;)if(Wa(t[n][0],e))return n;return-1}function or(t,e,n,r){return pr(t,(function(t,i,o){e(r,t,n(t),o)})),r}function ar(t,e){return t&&Di(e,Os(e),t)}function sr(t,e,n){"__proto__"==e&&le?le(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function ur(t,e){for(var r=-1,i=e.length,o=At(i),a=null==t;++r<i;)o[r]=a?n:Ls(t,e[r]);return o}function cr(t,e,r){return t==t&&(r!==n&&(t=t<=r?t:r),e!==n&&(t=t>=e?t:e)),t}function lr(t,e,r,i,o,a){var s,u=1&e,c=2&e,l=4&e;if(r&&(s=o?r(t,i,o,a):r(t)),s!==n)return s;if(!rs(t))return t;var h=Ga(t);if(h){if(s=function(t){var e=t.length,n=new t.constructor(e);e&&"string"==typeof t[0]&&Pt.call(t,"index")&&(n.index=t.index,n.input=t.input);return n}(t),!u)return ji(t,s)}else{var d=go(t),f=d==M||d==A;if(Xa(t))return Ei(t,u);if(d==E||d==m||f&&!o){if(s=c||f?{}:wo(t),!u)return c?function(t,e){return Di(t,mo(t),e)}(t,function(t,e){return t&&Di(e,zs(e),t)}(s,t)):function(t,e){return Di(t,yo(t),e)}(t,ar(s,t))}else{if(!oe[d])return o?t:{};s=function(t,e,n){var r=t.constructor;switch(e){case D:return xi(t);case v:case w:return new r(+t);case C:return function(t,e){var n=e?xi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case O:case z:case P:case _:case B:case R:case U:case Q:case Y:return ki(t,n);case I:return new r;case N:case L:return new r(t);case k:return function(t){var e=new t.constructor(t.source,ft.exec(t));return e.lastIndex=t.lastIndex,e}(t);case T:return new r;case S:return i=t,Un?kt(Un.call(i)):{}}var i}(t,d,u)}}a||(a=new Xn);var p=a.get(t);if(p)return p;a.set(t,s),cs(t)?t.forEach((function(n){s.add(lr(n,e,r,n,t,a))})):os(t)&&t.forEach((function(n,i){s.set(i,lr(n,e,r,i,t,a))}));var y=h?n:(l?c?ao:oo:c?zs:Os)(t);return Ee(y||t,(function(n,i){y&&(n=t[i=n]),rr(s,i,lr(n,e,r,i,t,a))})),s}function hr(t,e,r){var i=r.length;if(null==t)return!i;for(t=kt(t);i--;){var o=r[i],a=e[o],s=t[o];if(s===n&&!(o in t)||!a(s))return!1}return!0}function dr(t,e,i){if("function"!=typeof t)throw new St(r);return Oo((function(){t.apply(n,i)}),e)}function fr(t,e,n,r){var i=-1,o=Le,a=!0,s=t.length,u=[],c=e.length;if(!s)return u;n&&(e=je(e,Ze(n))),r?(o=Se,a=!1):e.length>=200&&(o=Xe,a=!1,e=new Jn(e));t:for(;++i<s;){var l=t[i],h=null==n?l:n(l);if(l=r||0!==l?l:0,a&&h==h){for(var d=c;d--;)if(e[d]===h)continue t;u.push(l)}else o(e,h,r)||u.push(l)}return u}Yn.templateSettings={escape:J,evaluate:X,interpolate:K,variable:"",imports:{_:Yn}},Yn.prototype=Fn.prototype,Yn.prototype.constructor=Yn,Vn.prototype=Wn(Fn.prototype),Vn.prototype.constructor=Vn,Hn.prototype=Wn(Fn.prototype),Hn.prototype.constructor=Hn,Gn.prototype.clear=function(){this.__data__=jn?jn(null):{},this.size=0},Gn.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},Gn.prototype.get=function(t){var e=this.__data__;if(jn){var r=e[t];return r===i?n:r}return Pt.call(e,t)?e[t]:n},Gn.prototype.has=function(t){var e=this.__data__;return jn?e[t]!==n:Pt.call(e,t)},Gn.prototype.set=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=jn&&e===n?i:e,this},qn.prototype.clear=function(){this.__data__=[],this.size=0},qn.prototype.delete=function(t){var e=this.__data__,n=ir(e,t);return!(n<0)&&(n==e.length-1?e.pop():Kt.call(e,n,1),--this.size,!0)},qn.prototype.get=function(t){var e=this.__data__,r=ir(e,t);return r<0?n:e[r][1]},qn.prototype.has=function(t){return ir(this.__data__,t)>-1},qn.prototype.set=function(t,e){var n=this.__data__,r=ir(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},Zn.prototype.clear=function(){this.size=0,this.__data__={hash:new Gn,map:new(kn||qn),string:new Gn}},Zn.prototype.delete=function(t){var e=ho(this,t).delete(t);return this.size-=e?1:0,e},Zn.prototype.get=function(t){return ho(this,t).get(t)},Zn.prototype.has=function(t){return ho(this,t).has(t)},Zn.prototype.set=function(t,e){var n=ho(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},Jn.prototype.add=Jn.prototype.push=function(t){return this.__data__.set(t,i),this},Jn.prototype.has=function(t){return this.__data__.has(t)},Xn.prototype.clear=function(){this.__data__=new qn,this.size=0},Xn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Xn.prototype.get=function(t){return this.__data__.get(t)},Xn.prototype.has=function(t){return this.__data__.has(t)},Xn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof qn){var r=n.__data__;if(!kn||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new Zn(r)}return n.set(t,e),this.size=n.size,this};var pr=zi(Ar),yr=zi(Ir,!0);function mr(t,e){var n=!0;return pr(t,(function(t,r,i){return n=!!e(t,r,i)})),n}function gr(t,e,r){for(var i=-1,o=t.length;++i<o;){var a=t[i],s=e(a);if(null!=s&&(u===n?s==s&&!hs(s):r(s,u)))var u=s,c=a}return c}function vr(t,e){var n=[];return pr(t,(function(t,r,i){e(t,r,i)&&n.push(t)})),n}function wr(t,e,n,r,i){var o=-1,a=t.length;for(n||(n=bo),i||(i=[]);++o<a;){var s=t[o];e>0&&n(s)?e>1?wr(s,e-1,n,r,i):De(i,s):r||(i[i.length]=s)}return i}var br=Pi(),Mr=Pi(!0);function Ar(t,e){return t&&br(t,e,Os)}function Ir(t,e){return t&&Mr(t,e,Os)}function Nr(t,e){return Te(e,(function(e){return ts(t[e])}))}function Er(t,e){for(var r=0,i=(e=Mi(e,t)).length;null!=t&&r<i;)t=t[Uo(e[r++])];return r&&r==i?t:n}function xr(t,e,n){var r=e(t);return Ga(t)?r:De(r,n(t))}function kr(t){return null==t?t===n?"[object Undefined]":"[object Null]":ce&&ce in kt(t)?function(t){var e=Pt.call(t,ce),r=t[ce];try{t[ce]=n;var i=!0}catch(t){}var o=Rt.call(t);i&&(e?t[ce]=r:delete t[ce]);return o}(t):function(t){return Rt.call(t)}(t)}function Tr(t,e){return t>e}function Lr(t,e){return null!=t&&Pt.call(t,e)}function Sr(t,e){return null!=t&&e in kt(t)}function jr(t,e,r){for(var i=r?Se:Le,o=t[0].length,a=t.length,s=a,u=At(a),c=1/0,l=[];s--;){var h=t[s];s&&e&&(h=je(h,Ze(e))),c=Mn(h.length,c),u[s]=!r&&(e||o>=120&&h.length>=120)?new Jn(s&&h):n}h=t[0];var d=-1,f=u[0];t:for(;++d<o&&l.length<c;){var p=h[d],y=e?e(p):p;if(p=r||0!==p?p:0,!(f?Xe(f,y):i(l,y,r))){for(s=a;--s;){var m=u[s];if(!(m?Xe(m,y):i(t[s],y,r)))continue t}f&&f.push(y),l.push(p)}}return l}function Dr(t,e,r){var i=null==(t=So(t,e=Mi(e,t)))?t:t[Uo($o(e))];return null==i?n:Ie(i,t,r)}function Cr(t){return is(t)&&kr(t)==m}function Or(t,e,r,i,o){return t===e||(null==t||null==e||!is(t)&&!is(e)?t!=t&&e!=e:function(t,e,r,i,o,a){var s=Ga(t),u=Ga(e),c=s?g:go(t),l=u?g:go(e),h=(c=c==m?E:c)==E,d=(l=l==m?E:l)==E,f=c==l;if(f&&Xa(t)){if(!Xa(e))return!1;s=!0,h=!1}if(f&&!h)return a||(a=new Xn),s||ds(t)?ro(t,e,r,i,o,a):function(t,e,n,r,i,o,a){switch(n){case C:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case D:return!(t.byteLength!=e.byteLength||!o(new Vt(t),new Vt(e)));case v:case w:case N:return Wa(+t,+e);case b:return t.name==e.name&&t.message==e.message;case k:case L:return t==e+"";case I:var s=an;case T:var u=1&r;if(s||(s=cn),t.size!=e.size&&!u)return!1;var c=a.get(t);if(c)return c==e;r|=2,a.set(t,e);var l=ro(s(t),s(e),r,i,o,a);return a.delete(t),l;case S:if(Un)return Un.call(t)==Un.call(e)}return!1}(t,e,c,r,i,o,a);if(!(1&r)){var p=h&&Pt.call(t,"__wrapped__"),y=d&&Pt.call(e,"__wrapped__");if(p||y){var M=p?t.value():t,A=y?e.value():e;return a||(a=new Xn),o(M,A,r,i,a)}}if(!f)return!1;return a||(a=new Xn),function(t,e,r,i,o,a){var s=1&r,u=oo(t),c=u.length,l=oo(e).length;if(c!=l&&!s)return!1;var h=c;for(;h--;){var d=u[h];if(!(s?d in e:Pt.call(e,d)))return!1}var f=a.get(t),p=a.get(e);if(f&&p)return f==e&&p==t;var y=!0;a.set(t,e),a.set(e,t);var m=s;for(;++h<c;){var g=t[d=u[h]],v=e[d];if(i)var w=s?i(v,g,d,e,t,a):i(g,v,d,t,e,a);if(!(w===n?g===v||o(g,v,r,i,a):w)){y=!1;break}m||(m="constructor"==d)}if(y&&!m){var b=t.constructor,M=e.constructor;b==M||!("constructor"in t)||!("constructor"in e)||"function"==typeof b&&b instanceof b&&"function"==typeof M&&M instanceof M||(y=!1)}return a.delete(t),a.delete(e),y}(t,e,r,i,o,a)}(t,e,r,i,Or,o))}function zr(t,e,r,i){var o=r.length,a=o,s=!i;if(null==t)return!a;for(t=kt(t);o--;){var u=r[o];if(s&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++o<a;){var c=(u=r[o])[0],l=t[c],h=u[1];if(s&&u[2]){if(l===n&&!(c in t))return!1}else{var d=new Xn;if(i)var f=i(l,h,c,t,e,d);if(!(f===n?Or(h,l,3,i,d):f))return!1}}return!0}function Pr(t){return!(!rs(t)||(e=t,Bt&&Bt in e))&&(ts(t)?Yt:mt).test(Qo(t));var e}function _r(t){return"function"==typeof t?t:null==t?au:"object"==typeof t?Ga(t)?Wr(t[0],t[1]):Yr(t):yu(t)}function Br(t){if(!xo(t))return wn(t);var e=[];for(var n in kt(t))Pt.call(t,n)&&"constructor"!=n&&e.push(n);return e}function Rr(t){if(!rs(t))return function(t){var e=[];if(null!=t)for(var n in kt(t))e.push(n);return e}(t);var e=xo(t),n=[];for(var r in t)("constructor"!=r||!e&&Pt.call(t,r))&&n.push(r);return n}function Ur(t,e){return t<e}function Qr(t,e){var n=-1,r=Za(t)?At(t.length):[];return pr(t,(function(t,i,o){r[++n]=e(t,i,o)})),r}function Yr(t){var e=fo(t);return 1==e.length&&e[0][2]?To(e[0][0],e[0][1]):function(n){return n===t||zr(n,t,e)}}function Wr(t,e){return Io(t)&&ko(e)?To(Uo(t),e):function(r){var i=Ls(r,t);return i===n&&i===e?Ss(r,t):Or(e,i,3)}}function Fr(t,e,r,i,o){t!==e&&br(e,(function(a,s){if(o||(o=new Xn),rs(a))!function(t,e,r,i,o,a,s){var u=Do(t,r),c=Do(e,r),l=s.get(c);if(l)return void nr(t,r,l);var h=a?a(u,c,r+"",t,e,s):n,d=h===n;if(d){var f=Ga(c),p=!f&&Xa(c),y=!f&&!p&&ds(c);h=c,f||p||y?Ga(u)?h=u:Ja(u)?h=ji(u):p?(d=!1,h=Ei(c,!0)):y?(d=!1,h=ki(c,!0)):h=[]:ss(c)||Ha(c)?(h=u,Ha(u)?h=bs(u):rs(u)&&!ts(u)||(h=wo(c))):d=!1}d&&(s.set(c,h),o(h,c,i,a,s),s.delete(c));nr(t,r,h)}(t,e,s,r,Fr,i,o);else{var u=i?i(Do(t,s),a,s+"",t,e,o):n;u===n&&(u=a),nr(t,s,u)}}),zs)}function Vr(t,e){var r=t.length;if(r)return Mo(e+=e<0?r:0,r)?t[e]:n}function Hr(t,e,n){e=e.length?je(e,(function(t){return Ga(t)?function(e){return Er(e,1===t.length?t[0]:t)}:t})):[au];var r=-1;return e=je(e,Ze(lo())),function(t,e){var n=t.length;for(t.sort(e);n--;)t[n]=t[n].value;return t}(Qr(t,(function(t,n,i){return{criteria:je(e,(function(e){return e(t)})),index:++r,value:t}})),(function(t,e){return function(t,e,n){var r=-1,i=t.criteria,o=e.criteria,a=i.length,s=n.length;for(;++r<a;){var u=Ti(i[r],o[r]);if(u)return r>=s?u:u*("desc"==n[r]?-1:1)}return t.index-e.index}(t,e,n)}))}function Gr(t,e,n){for(var r=-1,i=e.length,o={};++r<i;){var a=e[r],s=Er(t,a);n(s,a)&&ei(o,Mi(a,t),s)}return o}function qr(t,e,n,r){var i=r?Ue:Re,o=-1,a=e.length,s=t;for(t===e&&(e=ji(e)),n&&(s=je(t,Ze(n)));++o<a;)for(var u=0,c=e[o],l=n?n(c):c;(u=i(s,l,u,r))>-1;)s!==t&&Kt.call(s,u,1),Kt.call(t,u,1);return t}function Zr(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i=e[n];if(n==r||i!==o){var o=i;Mo(i)?Kt.call(t,i,1):fi(t,i)}}return t}function Jr(t,e){return t+Pe(Nn()*(e-t+1))}function Xr(t,e){var n="";if(!t||e<1||e>d)return n;do{e%2&&(n+=t),(e=Pe(e/2))&&(t+=t)}while(e);return n}function Kr(t,e){return zo(Lo(t,e,au),t+"")}function $r(t){return $n(Ws(t))}function ti(t,e){var n=Ws(t);return Bo(n,cr(e,0,n.length))}function ei(t,e,r,i){if(!rs(t))return t;for(var o=-1,a=(e=Mi(e,t)).length,s=a-1,u=t;null!=u&&++o<a;){var c=Uo(e[o]),l=r;if("__proto__"===c||"constructor"===c||"prototype"===c)return t;if(o!=s){var h=u[c];(l=i?i(h,c,u):n)===n&&(l=rs(h)?h:Mo(e[o+1])?[]:{})}rr(u,c,l),u=u[c]}return t}var ni=Dn?function(t,e){return Dn.set(t,e),t}:au,ri=le?function(t,e){return le(t,"toString",{configurable:!0,enumerable:!1,value:ru(e),writable:!0})}:au;function ii(t){return Bo(Ws(t))}function oi(t,e,n){var r=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var o=At(i);++r<i;)o[r]=t[r+e];return o}function ai(t,e){var n;return pr(t,(function(t,r,i){return!(n=e(t,r,i))})),!!n}function si(t,e,n){var r=0,i=null==t?r:t.length;if("number"==typeof e&&e==e&&i<=2147483647){for(;r<i;){var o=r+i>>>1,a=t[o];null!==a&&!hs(a)&&(n?a<=e:a<e)?r=o+1:i=o}return i}return ui(t,e,au,n)}function ui(t,e,r,i){var o=0,a=null==t?0:t.length;if(0===a)return 0;for(var s=(e=r(e))!=e,u=null===e,c=hs(e),l=e===n;o<a;){var h=Pe((o+a)/2),d=r(t[h]),f=d!==n,p=null===d,y=d==d,m=hs(d);if(s)var g=i||y;else g=l?y&&(i||f):u?y&&f&&(i||!p):c?y&&f&&!p&&(i||!m):!p&&!m&&(i?d<=e:d<e);g?o=h+1:a=h}return Mn(a,4294967294)}function ci(t,e){for(var n=-1,r=t.length,i=0,o=[];++n<r;){var a=t[n],s=e?e(a):a;if(!n||!Wa(s,u)){var u=s;o[i++]=0===a?0:a}}return o}function li(t){return"number"==typeof t?t:hs(t)?f:+t}function hi(t){if("string"==typeof t)return t;if(Ga(t))return je(t,hi)+"";if(hs(t))return Qn?Qn.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function di(t,e,n){var r=-1,i=Le,o=t.length,a=!0,s=[],u=s;if(n)a=!1,i=Se;else if(o>=200){var c=e?null:Xi(t);if(c)return cn(c);a=!1,i=Xe,u=new Jn}else u=e?[]:s;t:for(;++r<o;){var l=t[r],h=e?e(l):l;if(l=n||0!==l?l:0,a&&h==h){for(var d=u.length;d--;)if(u[d]===h)continue t;e&&u.push(h),s.push(l)}else i(u,h,n)||(u!==s&&u.push(h),s.push(l))}return s}function fi(t,e){return null==(t=So(t,e=Mi(e,t)))||delete t[Uo($o(e))]}function pi(t,e,n,r){return ei(t,e,n(Er(t,e)),r)}function yi(t,e,n,r){for(var i=t.length,o=r?i:-1;(r?o--:++o<i)&&e(t[o],o,t););return n?oi(t,r?0:o,r?o+1:i):oi(t,r?o+1:0,r?i:o)}function mi(t,e){var n=t;return n instanceof Hn&&(n=n.value()),Ce(e,(function(t,e){return e.func.apply(e.thisArg,De([t],e.args))}),n)}function gi(t,e,n){var r=t.length;if(r<2)return r?di(t[0]):[];for(var i=-1,o=At(r);++i<r;)for(var a=t[i],s=-1;++s<r;)s!=i&&(o[i]=fr(o[i]||a,t[s],e,n));return di(wr(o,1),e,n)}function vi(t,e,r){for(var i=-1,o=t.length,a=e.length,s={};++i<o;){var u=i<a?e[i]:n;r(s,t[i],u)}return s}function wi(t){return Ja(t)?t:[]}function bi(t){return"function"==typeof t?t:au}function Mi(t,e){return Ga(t)?t:Io(t,e)?[t]:Ro(Ms(t))}var Ai=Kr;function Ii(t,e,r){var i=t.length;return r=r===n?i:r,!e&&r>=i?t:oi(t,e,r)}var Ni=de||function(t){return he.clearTimeout(t)};function Ei(t,e){if(e)return t.slice();var n=t.length,r=Ht?Ht(n):new t.constructor(n);return t.copy(r),r}function xi(t){var e=new t.constructor(t.byteLength);return new Vt(e).set(new Vt(t)),e}function ki(t,e){var n=e?xi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function Ti(t,e){if(t!==e){var r=t!==n,i=null===t,o=t==t,a=hs(t),s=e!==n,u=null===e,c=e==e,l=hs(e);if(!u&&!l&&!a&&t>e||a&&s&&c&&!u&&!l||i&&s&&c||!r&&c||!o)return 1;if(!i&&!a&&!l&&t<e||l&&r&&o&&!i&&!a||u&&r&&o||!s&&o||!c)return-1}return 0}function Li(t,e,n,r){for(var i=-1,o=t.length,a=n.length,s=-1,u=e.length,c=bn(o-a,0),l=At(u+c),h=!r;++s<u;)l[s]=e[s];for(;++i<a;)(h||i<o)&&(l[n[i]]=t[i]);for(;c--;)l[s++]=t[i++];return l}function Si(t,e,n,r){for(var i=-1,o=t.length,a=-1,s=n.length,u=-1,c=e.length,l=bn(o-s,0),h=At(l+c),d=!r;++i<l;)h[i]=t[i];for(var f=i;++u<c;)h[f+u]=e[u];for(;++a<s;)(d||i<o)&&(h[f+n[a]]=t[i++]);return h}function ji(t,e){var n=-1,r=t.length;for(e||(e=At(r));++n<r;)e[n]=t[n];return e}function Di(t,e,r,i){var o=!r;r||(r={});for(var a=-1,s=e.length;++a<s;){var u=e[a],c=i?i(r[u],t[u],u,r,t):n;c===n&&(c=t[u]),o?sr(r,u,c):rr(r,u,c)}return r}function Ci(t,e){return function(n,r){var i=Ga(n)?Ne:or,o=e?e():{};return i(n,t,lo(r,2),o)}}function Oi(t){return Kr((function(e,r){var i=-1,o=r.length,a=o>1?r[o-1]:n,s=o>2?r[2]:n;for(a=t.length>3&&"function"==typeof a?(o--,a):n,s&&Ao(r[0],r[1],s)&&(a=o<3?n:a,o=1),e=kt(e);++i<o;){var u=r[i];u&&t(e,u,i,a)}return e}))}function zi(t,e){return function(n,r){if(null==n)return n;if(!Za(n))return t(n,r);for(var i=n.length,o=e?i:-1,a=kt(n);(e?o--:++o<i)&&!1!==r(a[o],o,a););return n}}function Pi(t){return function(e,n,r){for(var i=-1,o=kt(e),a=r(e),s=a.length;s--;){var u=a[t?s:++i];if(!1===n(o[u],u,o))break}return e}}function _i(t){return function(e){var r=on(e=Ms(e))?dn(e):n,i=r?r[0]:e.charAt(0),o=r?Ii(r,1).join(""):e.slice(1);return i[t]()+o}}function Bi(t){return function(e){return Ce(tu(Hs(e).replace(Jt,"")),t,"")}}function Ri(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=Wn(t.prototype),r=t.apply(n,e);return rs(r)?r:n}}function Ui(t){return function(e,r,i){var o=kt(e);if(!Za(e)){var a=lo(r,3);e=Os(e),r=function(t){return a(o[t],t,o)}}var s=t(e,r,i);return s>-1?o[a?e[s]:s]:n}}function Qi(t){return io((function(e){var i=e.length,o=i,a=Vn.prototype.thru;for(t&&e.reverse();o--;){var s=e[o];if("function"!=typeof s)throw new St(r);if(a&&!u&&"wrapper"==uo(s))var u=new Vn([],!0)}for(o=u?o:i;++o<i;){var c=uo(s=e[o]),l="wrapper"==c?so(s):n;u=l&&No(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?u[uo(l[0])].apply(u,l[3]):1==s.length&&No(s)?u[c]():u.thru(s)}return function(){var t=arguments,n=t[0];if(u&&1==t.length&&Ga(n))return u.plant(n).value();for(var r=0,o=i?e[r].apply(this,t):n;++r<i;)o=e[r].call(this,o);return o}}))}function Yi(t,e,r,i,o,a,s,u,l,h){var d=e&c,f=1&e,p=2&e,y=24&e,m=512&e,g=p?n:Ri(t);return function n(){for(var c=arguments.length,v=At(c),w=c;w--;)v[w]=arguments[w];if(y)var b=co(n),M=tn(v,b);if(i&&(v=Li(v,i,o,y)),a&&(v=Si(v,a,s,y)),c-=M,y&&c<h){var A=un(v,b);return Zi(t,e,Yi,n.placeholder,r,v,A,u,l,h-c)}var I=f?r:this,N=p?I[t]:t;return c=v.length,u?v=jo(v,u):m&&c>1&&v.reverse(),d&&l<c&&(v.length=l),this&&this!==he&&this instanceof n&&(N=g||Ri(N)),N.apply(I,v)}}function Wi(t,e){return function(n,r){return function(t,e,n,r){return Ar(t,(function(t,i,o){e(r,n(t),i,o)})),r}(n,t,e(r),{})}}function Fi(t,e){return function(r,i){var o;if(r===n&&i===n)return e;if(r!==n&&(o=r),i!==n){if(o===n)return i;"string"==typeof r||"string"==typeof i?(r=hi(r),i=hi(i)):(r=li(r),i=li(i)),o=t(r,i)}return o}}function Vi(t){return io((function(e){return e=je(e,Ze(lo())),Kr((function(n){var r=this;return t(e,(function(t){return Ie(t,r,n)}))}))}))}function Hi(t,e){var r=(e=e===n?" ":hi(e)).length;if(r<2)return r?Xr(e,t):e;var i=Xr(e,me(t/hn(e)));return on(e)?Ii(dn(i),0,t).join(""):i.slice(0,t)}function Gi(t){return function(e,r,i){return i&&"number"!=typeof i&&Ao(e,r,i)&&(r=i=n),e=ms(e),r===n?(r=e,e=0):r=ms(r),function(t,e,n,r){for(var i=-1,o=bn(me((e-t)/(n||1)),0),a=At(o);o--;)a[r?o:++i]=t,t+=n;return a}(e,r,i=i===n?e<r?1:-1:ms(i),t)}}function qi(t){return function(e,n){return"string"==typeof e&&"string"==typeof n||(e=ws(e),n=ws(n)),t(e,n)}}function Zi(t,e,r,i,o,a,c,l,h,d){var f=8&e;e|=f?s:u,4&(e&=~(f?u:s))||(e&=-4);var p=[t,e,o,f?a:n,f?c:n,f?n:a,f?n:c,l,h,d],y=r.apply(n,p);return No(t)&&Co(y,p),y.placeholder=i,Po(y,t,e)}function Ji(t){var e=xt[t];return function(t,n){if(t=ws(t),(n=null==n?0:Mn(gs(n),292))&&gn(t)){var r=(Ms(t)+"e").split("e");return+((r=(Ms(e(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return e(t)}}var Xi=Ln&&1/cn(new Ln([,-0]))[1]==h?function(t){return new Ln(t)}:hu;function Ki(t){return function(e){var n=go(e);return n==I?an(e):n==T?ln(e):function(t,e){return je(e,(function(e){return[e,t[e]]}))}(e,t(e))}}function $i(t,e,i,h,d,f,p,y){var m=2&e;if(!m&&"function"!=typeof t)throw new St(r);var g=h?h.length:0;if(g||(e&=-97,h=d=n),p=p===n?p:bn(gs(p),0),y=y===n?y:gs(y),g-=d?d.length:0,e&u){var v=h,w=d;h=d=n}var b=m?n:so(t),M=[t,e,i,h,d,v,w,f,p,y];if(b&&function(t,e){var n=t[1],r=e[1],i=n|r,a=i<131,s=r==c&&8==n||r==c&&n==l&&t[7].length<=e[8]||384==r&&e[7].length<=e[8]&&8==n;if(!a&&!s)return t;1&r&&(t[2]=e[2],i|=1&n?0:4);var u=e[3];if(u){var h=t[3];t[3]=h?Li(h,u,e[4]):u,t[4]=h?un(t[3],o):e[4]}(u=e[5])&&(h=t[5],t[5]=h?Si(h,u,e[6]):u,t[6]=h?un(t[5],o):e[6]);(u=e[7])&&(t[7]=u);r&c&&(t[8]=null==t[8]?e[8]:Mn(t[8],e[8]));null==t[9]&&(t[9]=e[9]);t[0]=e[0],t[1]=i}(M,b),t=M[0],e=M[1],i=M[2],h=M[3],d=M[4],!(y=M[9]=M[9]===n?m?0:t.length:bn(M[9]-g,0))&&24&e&&(e&=-25),e&&1!=e)A=8==e||e==a?function(t,e,r){var i=Ri(t);return function o(){for(var a=arguments.length,s=At(a),u=a,c=co(o);u--;)s[u]=arguments[u];var l=a<3&&s[0]!==c&&s[a-1]!==c?[]:un(s,c);return(a-=l.length)<r?Zi(t,e,Yi,o.placeholder,n,s,l,n,n,r-a):Ie(this&&this!==he&&this instanceof o?i:t,this,s)}}(t,e,y):e!=s&&33!=e||d.length?Yi.apply(n,M):function(t,e,n,r){var i=1&e,o=Ri(t);return function e(){for(var a=-1,s=arguments.length,u=-1,c=r.length,l=At(c+s),h=this&&this!==he&&this instanceof e?o:t;++u<c;)l[u]=r[u];for(;s--;)l[u++]=arguments[++a];return Ie(h,i?n:this,l)}}(t,e,i,h);else var A=function(t,e,n){var r=1&e,i=Ri(t);return function e(){return(this&&this!==he&&this instanceof e?i:t).apply(r?n:this,arguments)}}(t,e,i);return Po((b?ni:Co)(A,M),t,e)}function to(t,e,r,i){return t===n||Wa(t,Ct[r])&&!Pt.call(i,r)?e:t}function eo(t,e,r,i,o,a){return rs(t)&&rs(e)&&(a.set(e,t),Fr(t,e,n,eo,a),a.delete(e)),t}function no(t){return ss(t)?n:t}function ro(t,e,r,i,o,a){var s=1&r,u=t.length,c=e.length;if(u!=c&&!(s&&c>u))return!1;var l=a.get(t),h=a.get(e);if(l&&h)return l==e&&h==t;var d=-1,f=!0,p=2&r?new Jn:n;for(a.set(t,e),a.set(e,t);++d<u;){var y=t[d],m=e[d];if(i)var g=s?i(m,y,d,e,t,a):i(y,m,d,t,e,a);if(g!==n){if(g)continue;f=!1;break}if(p){if(!ze(e,(function(t,e){if(!Xe(p,e)&&(y===t||o(y,t,r,i,a)))return p.push(e)}))){f=!1;break}}else if(y!==m&&!o(y,m,r,i,a)){f=!1;break}}return a.delete(t),a.delete(e),f}function io(t){return zo(Lo(t,n,qo),t+"")}function oo(t){return xr(t,Os,yo)}function ao(t){return xr(t,zs,mo)}var so=Dn?function(t){return Dn.get(t)}:hu;function uo(t){for(var e=t.name+"",n=Cn[e],r=Pt.call(Cn,e)?n.length:0;r--;){var i=n[r],o=i.func;if(null==o||o==t)return i.name}return e}function co(t){return(Pt.call(Yn,"placeholder")?Yn:t).placeholder}function lo(){var t=Yn.iteratee||su;return t=t===su?_r:t,arguments.length?t(arguments[0],arguments[1]):t}function ho(t,e){var n=t.__data__;return function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}(e)?n["string"==typeof e?"string":"hash"]:n.map}function fo(t){for(var e=Os(t),n=e.length;n--;){var r=e[n],i=t[r];e[n]=[r,i,ko(i)]}return e}function po(t,e){var r=function(t,e){return null==t?n:t[e]}(t,e);return Pr(r)?r:n}var yo=Fe?function(t){return null==t?[]:(t=kt(t),Te(Fe(t),(function(e){return Zt.call(t,e)})))}:vu,mo=Fe?function(t){for(var e=[];t;)De(e,yo(t)),t=Gt(t);return e}:vu,go=kr;function vo(t,e,n){for(var r=-1,i=(e=Mi(e,t)).length,o=!1;++r<i;){var a=Uo(e[r]);if(!(o=null!=t&&n(t,a)))break;t=t[a]}return o||++r!=i?o:!!(i=null==t?0:t.length)&&ns(i)&&Mo(a,i)&&(Ga(t)||Ha(t))}function wo(t){return"function"!=typeof t.constructor||xo(t)?{}:Wn(Gt(t))}function bo(t){return Ga(t)||Ha(t)||!!(te&&t&&t[te])}function Mo(t,e){var n=typeof t;return!!(e=null==e?d:e)&&("number"==n||"symbol"!=n&&vt.test(t))&&t>-1&&t%1==0&&t<e}function Ao(t,e,n){if(!rs(n))return!1;var r=typeof e;return!!("number"==r?Za(n)&&Mo(e,n.length):"string"==r&&e in n)&&Wa(n[e],t)}function Io(t,e){if(Ga(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!hs(t))||(tt.test(t)||!$.test(t)||null!=e&&t in kt(e))}function No(t){var e=uo(t),n=Yn[e];if("function"!=typeof n||!(e in Hn.prototype))return!1;if(t===n)return!0;var r=so(n);return!!r&&t===r[0]}(xn&&go(new xn(new ArrayBuffer(1)))!=C||kn&&go(new kn)!=I||Tn&&go(Tn.resolve())!=x||Ln&&go(new Ln)!=T||Sn&&go(new Sn)!=j)&&(go=function(t){var e=kr(t),r=e==E?t.constructor:n,i=r?Qo(r):"";if(i)switch(i){case On:return C;case zn:return I;case Pn:return x;case _n:return T;case Bn:return j}return e});var Eo=Ot?ts:wu;function xo(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||Ct)}function ko(t){return t==t&&!rs(t)}function To(t,e){return function(r){return null!=r&&(r[t]===e&&(e!==n||t in kt(r)))}}function Lo(t,e,r){return e=bn(e===n?t.length-1:e,0),function(){for(var n=arguments,i=-1,o=bn(n.length-e,0),a=At(o);++i<o;)a[i]=n[e+i];i=-1;for(var s=At(e+1);++i<e;)s[i]=n[i];return s[e]=r(a),Ie(t,this,s)}}function So(t,e){return e.length<2?t:Er(t,oi(e,0,-1))}function jo(t,e){for(var r=t.length,i=Mn(e.length,r),o=ji(t);i--;){var a=e[i];t[i]=Mo(a,r)?o[a]:n}return t}function Do(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}var Co=_o(ni),Oo=ye||function(t,e){return he.setTimeout(t,e)},zo=_o(ri);function Po(t,e,n){var r=e+"";return zo(t,function(t,e){var n=e.length;if(!n)return t;var r=n-1;return e[r]=(n>1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(at,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return Ee(y,(function(n){var r="_."+n[0];e&n[1]&&!Le(t,r)&&t.push(r)})),t.sort()}(function(t){var e=t.match(st);return e?e[1].split(ut):[]}(r),n)))}function _o(t){var e=0,r=0;return function(){var i=An(),o=16-(i-r);if(r=i,o>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(n,arguments)}}function Bo(t,e){var r=-1,i=t.length,o=i-1;for(e=e===n?i:e;++r<e;){var a=Jr(r,o),s=t[a];t[a]=t[r],t[r]=s}return t.length=e,t}var Ro=function(t){var e=_a(t,(function(t){return 500===n.size&&n.clear(),t})),n=e.cache;return e}((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(et,(function(t,n,r,i){e.push(r?i.replace(ht,"$1"):n||t)})),e}));function Uo(t){if("string"==typeof t||hs(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Qo(t){if(null!=t){try{return zt.call(t)}catch(t){}try{return t+""}catch(t){}}return""}function Yo(t){if(t instanceof Hn)return t.clone();var e=new Vn(t.__wrapped__,t.__chain__);return e.__actions__=ji(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}var Wo=Kr((function(t,e){return Ja(t)?fr(t,wr(e,1,Ja,!0)):[]})),Fo=Kr((function(t,e){var r=$o(e);return Ja(r)&&(r=n),Ja(t)?fr(t,wr(e,1,Ja,!0),lo(r,2)):[]})),Vo=Kr((function(t,e){var r=$o(e);return Ja(r)&&(r=n),Ja(t)?fr(t,wr(e,1,Ja,!0),n,r):[]}));function Ho(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:gs(n);return i<0&&(i=bn(r+i,0)),Be(t,lo(e,3),i)}function Go(t,e,r){var i=null==t?0:t.length;if(!i)return-1;var o=i-1;return r!==n&&(o=gs(r),o=r<0?bn(i+o,0):Mn(o,i-1)),Be(t,lo(e,3),o,!0)}function qo(t){return(null==t?0:t.length)?wr(t,1):[]}function Zo(t){return t&&t.length?t[0]:n}var Jo=Kr((function(t){var e=je(t,wi);return e.length&&e[0]===t[0]?jr(e):[]})),Xo=Kr((function(t){var e=$o(t),r=je(t,wi);return e===$o(r)?e=n:r.pop(),r.length&&r[0]===t[0]?jr(r,lo(e,2)):[]})),Ko=Kr((function(t){var e=$o(t),r=je(t,wi);return(e="function"==typeof e?e:n)&&r.pop(),r.length&&r[0]===t[0]?jr(r,n,e):[]}));function $o(t){var e=null==t?0:t.length;return e?t[e-1]:n}var ta=Kr(ea);function ea(t,e){return t&&t.length&&e&&e.length?qr(t,e):t}var na=io((function(t,e){var n=null==t?0:t.length,r=ur(t,e);return Zr(t,je(e,(function(t){return Mo(t,n)?+t:t})).sort(Ti)),r}));function ra(t){return null==t?t:En.call(t)}var ia=Kr((function(t){return di(wr(t,1,Ja,!0))})),oa=Kr((function(t){var e=$o(t);return Ja(e)&&(e=n),di(wr(t,1,Ja,!0),lo(e,2))})),aa=Kr((function(t){var e=$o(t);return e="function"==typeof e?e:n,di(wr(t,1,Ja,!0),n,e)}));function sa(t){if(!t||!t.length)return[];var e=0;return t=Te(t,(function(t){if(Ja(t))return e=bn(t.length,e),!0})),Ge(e,(function(e){return je(t,We(e))}))}function ua(t,e){if(!t||!t.length)return[];var r=sa(t);return null==e?r:je(r,(function(t){return Ie(e,n,t)}))}var ca=Kr((function(t,e){return Ja(t)?fr(t,e):[]})),la=Kr((function(t){return gi(Te(t,Ja))})),ha=Kr((function(t){var e=$o(t);return Ja(e)&&(e=n),gi(Te(t,Ja),lo(e,2))})),da=Kr((function(t){var e=$o(t);return e="function"==typeof e?e:n,gi(Te(t,Ja),n,e)})),fa=Kr(sa);var pa=Kr((function(t){var e=t.length,r=e>1?t[e-1]:n;return r="function"==typeof r?(t.pop(),r):n,ua(t,r)}));function ya(t){var e=Yn(t);return e.__chain__=!0,e}function ma(t,e){return e(t)}var ga=io((function(t){var e=t.length,r=e?t[0]:0,i=this.__wrapped__,o=function(e){return ur(e,t)};return!(e>1||this.__actions__.length)&&i instanceof Hn&&Mo(r)?((i=i.slice(r,+r+(e?1:0))).__actions__.push({func:ma,args:[o],thisArg:n}),new Vn(i,this.__chain__).thru((function(t){return e&&!t.length&&t.push(n),t}))):this.thru(o)}));var va=Ci((function(t,e,n){Pt.call(t,n)?++t[n]:sr(t,n,1)}));var wa=Ui(Ho),ba=Ui(Go);function Ma(t,e){return(Ga(t)?Ee:pr)(t,lo(e,3))}function Aa(t,e){return(Ga(t)?xe:yr)(t,lo(e,3))}var Ia=Ci((function(t,e,n){Pt.call(t,n)?t[n].push(e):sr(t,n,[e])}));var Na=Kr((function(t,e,n){var r=-1,i="function"==typeof e,o=Za(t)?At(t.length):[];return pr(t,(function(t){o[++r]=i?Ie(e,t,n):Dr(t,e,n)})),o})),Ea=Ci((function(t,e,n){sr(t,n,e)}));function xa(t,e){return(Ga(t)?je:Qr)(t,lo(e,3))}var ka=Ci((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]}));var Ta=Kr((function(t,e){if(null==t)return[];var n=e.length;return n>1&&Ao(t,e[0],e[1])?e=[]:n>2&&Ao(e[0],e[1],e[2])&&(e=[e[0]]),Hr(t,wr(e,1),[])})),La=fe||function(){return he.Date.now()};function Sa(t,e,r){return e=r?n:e,e=t&&null==e?t.length:e,$i(t,c,n,n,n,n,e)}function ja(t,e){var i;if("function"!=typeof e)throw new St(r);return t=gs(t),function(){return--t>0&&(i=e.apply(this,arguments)),t<=1&&(e=n),i}}var Da=Kr((function(t,e,n){var r=1;if(n.length){var i=un(n,co(Da));r|=s}return $i(t,r,e,n,i)})),Ca=Kr((function(t,e,n){var r=3;if(n.length){var i=un(n,co(Ca));r|=s}return $i(e,r,t,n,i)}));function Oa(t,e,i){var o,a,s,u,c,l,h=0,d=!1,f=!1,p=!0;if("function"!=typeof t)throw new St(r);function y(e){var r=o,i=a;return o=a=n,h=e,u=t.apply(i,r)}function m(t){return h=t,c=Oo(v,e),d?y(t):u}function g(t){var r=t-l;return l===n||r>=e||r<0||f&&t-h>=s}function v(){var t=La();if(g(t))return w(t);c=Oo(v,function(t){var n=e-(t-l);return f?Mn(n,s-(t-h)):n}(t))}function w(t){return c=n,p&&o?y(t):(o=a=n,u)}function b(){var t=La(),r=g(t);if(o=arguments,a=this,l=t,r){if(c===n)return m(l);if(f)return Ni(c),c=Oo(v,e),y(l)}return c===n&&(c=Oo(v,e)),u}return e=ws(e)||0,rs(i)&&(d=!!i.leading,s=(f="maxWait"in i)?bn(ws(i.maxWait)||0,e):s,p="trailing"in i?!!i.trailing:p),b.cancel=function(){c!==n&&Ni(c),h=0,o=l=a=c=n},b.flush=function(){return c===n?u:w(La())},b}var za=Kr((function(t,e){return dr(t,1,e)})),Pa=Kr((function(t,e,n){return dr(t,ws(e)||0,n)}));function _a(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new St(r);var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=t.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(_a.Cache||Zn),n}function Ba(t){if("function"!=typeof t)throw new St(r);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}_a.Cache=Zn;var Ra=Ai((function(t,e){var n=(e=1==e.length&&Ga(e[0])?je(e[0],Ze(lo())):je(wr(e,1),Ze(lo()))).length;return Kr((function(r){for(var i=-1,o=Mn(r.length,n);++i<o;)r[i]=e[i].call(this,r[i]);return Ie(t,this,r)}))})),Ua=Kr((function(t,e){var r=un(e,co(Ua));return $i(t,s,n,e,r)})),Qa=Kr((function(t,e){var r=un(e,co(Qa));return $i(t,u,n,e,r)})),Ya=io((function(t,e){return $i(t,l,n,n,n,e)}));function Wa(t,e){return t===e||t!=t&&e!=e}var Fa=qi(Tr),Va=qi((function(t,e){return t>=e})),Ha=Cr(function(){return arguments}())?Cr:function(t){return is(t)&&Pt.call(t,"callee")&&!Zt.call(t,"callee")},Ga=At.isArray,qa=ge?Ze(ge):function(t){return is(t)&&kr(t)==D};function Za(t){return null!=t&&ns(t.length)&&!ts(t)}function Ja(t){return is(t)&&Za(t)}var Xa=mn||wu,Ka=ve?Ze(ve):function(t){return is(t)&&kr(t)==w};function $a(t){if(!is(t))return!1;var e=kr(t);return e==b||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!ss(t)}function ts(t){if(!rs(t))return!1;var e=kr(t);return e==M||e==A||"[object AsyncFunction]"==e||"[object Proxy]"==e}function es(t){return"number"==typeof t&&t==gs(t)}function ns(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=d}function rs(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function is(t){return null!=t&&"object"==typeof t}var os=we?Ze(we):function(t){return is(t)&&go(t)==I};function as(t){return"number"==typeof t||is(t)&&kr(t)==N}function ss(t){if(!is(t)||kr(t)!=E)return!1;var e=Gt(t);if(null===e)return!0;var n=Pt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&zt.call(n)==Ut}var us=be?Ze(be):function(t){return is(t)&&kr(t)==k};var cs=Me?Ze(Me):function(t){return is(t)&&go(t)==T};function ls(t){return"string"==typeof t||!Ga(t)&&is(t)&&kr(t)==L}function hs(t){return"symbol"==typeof t||is(t)&&kr(t)==S}var ds=Ae?Ze(Ae):function(t){return is(t)&&ns(t.length)&&!!ie[kr(t)]};var fs=qi(Ur),ps=qi((function(t,e){return t<=e}));function ys(t){if(!t)return[];if(Za(t))return ls(t)?dn(t):ji(t);if(ae&&t[ae])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[ae]());var e=go(t);return(e==I?an:e==T?cn:Ws)(t)}function ms(t){return t?(t=ws(t))===h||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function gs(t){var e=ms(t),n=e%1;return e==e?n?e-n:e:0}function vs(t){return t?cr(gs(t),0,p):0}function ws(t){if("number"==typeof t)return t;if(hs(t))return f;if(rs(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=rs(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=qe(t);var n=yt.test(t);return n||gt.test(t)?ue(t.slice(2),n?2:8):pt.test(t)?f:+t}function bs(t){return Di(t,zs(t))}function Ms(t){return null==t?"":hi(t)}var As=Oi((function(t,e){if(xo(e)||Za(e))Di(e,Os(e),t);else for(var n in e)Pt.call(e,n)&&rr(t,n,e[n])})),Is=Oi((function(t,e){Di(e,zs(e),t)})),Ns=Oi((function(t,e,n,r){Di(e,zs(e),t,r)})),Es=Oi((function(t,e,n,r){Di(e,Os(e),t,r)})),xs=io(ur);var ks=Kr((function(t,e){t=kt(t);var r=-1,i=e.length,o=i>2?e[2]:n;for(o&&Ao(e[0],e[1],o)&&(i=1);++r<i;)for(var a=e[r],s=zs(a),u=-1,c=s.length;++u<c;){var l=s[u],h=t[l];(h===n||Wa(h,Ct[l])&&!Pt.call(t,l))&&(t[l]=a[l])}return t})),Ts=Kr((function(t){return t.push(n,eo),Ie(_s,n,t)}));function Ls(t,e,r){var i=null==t?n:Er(t,e);return i===n?r:i}function Ss(t,e){return null!=t&&vo(t,e,Sr)}var js=Wi((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=Rt.call(e)),t[e]=n}),ru(au)),Ds=Wi((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=Rt.call(e)),Pt.call(t,e)?t[e].push(n):t[e]=[n]}),lo),Cs=Kr(Dr);function Os(t){return Za(t)?Kn(t):Br(t)}function zs(t){return Za(t)?Kn(t,!0):Rr(t)}var Ps=Oi((function(t,e,n){Fr(t,e,n)})),_s=Oi((function(t,e,n,r){Fr(t,e,n,r)})),Bs=io((function(t,e){var n={};if(null==t)return n;var r=!1;e=je(e,(function(e){return e=Mi(e,t),r||(r=e.length>1),e})),Di(t,ao(t),n),r&&(n=lr(n,7,no));for(var i=e.length;i--;)fi(n,e[i]);return n}));var Rs=io((function(t,e){return null==t?{}:function(t,e){return Gr(t,e,(function(e,n){return Ss(t,n)}))}(t,e)}));function Us(t,e){if(null==t)return{};var n=je(ao(t),(function(t){return[t]}));return e=lo(e),Gr(t,n,(function(t,n){return e(t,n[0])}))}var Qs=Ki(Os),Ys=Ki(zs);function Ws(t){return null==t?[]:Je(t,Os(t))}var Fs=Bi((function(t,e,n){return e=e.toLowerCase(),t+(n?Vs(e):e)}));function Vs(t){return $s(Ms(t).toLowerCase())}function Hs(t){return(t=Ms(t))&&t.replace(wt,en).replace(Xt,"")}var Gs=Bi((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),qs=Bi((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),Zs=_i("toLowerCase");var Js=Bi((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}));var Xs=Bi((function(t,e,n){return t+(n?" ":"")+$s(e)}));var Ks=Bi((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),$s=_i("toUpperCase");function tu(t,e,r){return t=Ms(t),(e=r?n:e)===n?function(t){return ee.test(t)}(t)?function(t){return t.match($t)||[]}(t):function(t){return t.match(ct)||[]}(t):t.match(e)||[]}var eu=Kr((function(t,e){try{return Ie(t,n,e)}catch(t){return $a(t)?t:new Nt(t)}})),nu=io((function(t,e){return Ee(e,(function(e){e=Uo(e),sr(t,e,Da(t[e],t))})),t}));function ru(t){return function(){return t}}var iu=Qi(),ou=Qi(!0);function au(t){return t}function su(t){return _r("function"==typeof t?t:lr(t,1))}var uu=Kr((function(t,e){return function(n){return Dr(n,t,e)}})),cu=Kr((function(t,e){return function(n){return Dr(t,n,e)}}));function lu(t,e,n){var r=Os(e),i=Nr(e,r);null!=n||rs(e)&&(i.length||!r.length)||(n=e,e=t,t=this,i=Nr(e,Os(e)));var o=!(rs(n)&&"chain"in n&&!n.chain),a=ts(t);return Ee(i,(function(n){var r=e[n];t[n]=r,a&&(t.prototype[n]=function(){var e=this.__chain__;if(o||e){var n=t(this.__wrapped__),i=n.__actions__=ji(this.__actions__);return i.push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,De([this.value()],arguments))})})),t}function hu(){}var du=Vi(je),fu=Vi(ke),pu=Vi(ze);function yu(t){return Io(t)?We(Uo(t)):function(t){return function(e){return Er(e,t)}}(t)}var mu=Gi(),gu=Gi(!0);function vu(){return[]}function wu(){return!1}var bu=Fi((function(t,e){return t+e}),0),Mu=Ji("ceil"),Au=Fi((function(t,e){return t/e}),1),Iu=Ji("floor");var Nu,Eu=Fi((function(t,e){return t*e}),1),xu=Ji("round"),ku=Fi((function(t,e){return t-e}),0);return Yn.after=function(t,e){if("function"!=typeof e)throw new St(r);return t=gs(t),function(){if(--t<1)return e.apply(this,arguments)}},Yn.ary=Sa,Yn.assign=As,Yn.assignIn=Is,Yn.assignInWith=Ns,Yn.assignWith=Es,Yn.at=xs,Yn.before=ja,Yn.bind=Da,Yn.bindAll=nu,Yn.bindKey=Ca,Yn.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Ga(t)?t:[t]},Yn.chain=ya,Yn.chunk=function(t,e,r){e=(r?Ao(t,e,r):e===n)?1:bn(gs(e),0);var i=null==t?0:t.length;if(!i||e<1)return[];for(var o=0,a=0,s=At(me(i/e));o<i;)s[a++]=oi(t,o,o+=e);return s},Yn.compact=function(t){for(var e=-1,n=null==t?0:t.length,r=0,i=[];++e<n;){var o=t[e];o&&(i[r++]=o)}return i},Yn.concat=function(){var t=arguments.length;if(!t)return[];for(var e=At(t-1),n=arguments[0],r=t;r--;)e[r-1]=arguments[r];return De(Ga(n)?ji(n):[n],wr(e,1))},Yn.cond=function(t){var e=null==t?0:t.length,n=lo();return t=e?je(t,(function(t){if("function"!=typeof t[1])throw new St(r);return[n(t[0]),t[1]]})):[],Kr((function(n){for(var r=-1;++r<e;){var i=t[r];if(Ie(i[0],this,n))return Ie(i[1],this,n)}}))},Yn.conforms=function(t){return function(t){var e=Os(t);return function(n){return hr(n,t,e)}}(lr(t,1))},Yn.constant=ru,Yn.countBy=va,Yn.create=function(t,e){var n=Wn(t);return null==e?n:ar(n,e)},Yn.curry=function t(e,r,i){var o=$i(e,8,n,n,n,n,n,r=i?n:r);return o.placeholder=t.placeholder,o},Yn.curryRight=function t(e,r,i){var o=$i(e,a,n,n,n,n,n,r=i?n:r);return o.placeholder=t.placeholder,o},Yn.debounce=Oa,Yn.defaults=ks,Yn.defaultsDeep=Ts,Yn.defer=za,Yn.delay=Pa,Yn.difference=Wo,Yn.differenceBy=Fo,Yn.differenceWith=Vo,Yn.drop=function(t,e,r){var i=null==t?0:t.length;return i?oi(t,(e=r||e===n?1:gs(e))<0?0:e,i):[]},Yn.dropRight=function(t,e,r){var i=null==t?0:t.length;return i?oi(t,0,(e=i-(e=r||e===n?1:gs(e)))<0?0:e):[]},Yn.dropRightWhile=function(t,e){return t&&t.length?yi(t,lo(e,3),!0,!0):[]},Yn.dropWhile=function(t,e){return t&&t.length?yi(t,lo(e,3),!0):[]},Yn.fill=function(t,e,r,i){var o=null==t?0:t.length;return o?(r&&"number"!=typeof r&&Ao(t,e,r)&&(r=0,i=o),function(t,e,r,i){var o=t.length;for((r=gs(r))<0&&(r=-r>o?0:o+r),(i=i===n||i>o?o:gs(i))<0&&(i+=o),i=r>i?0:vs(i);r<i;)t[r++]=e;return t}(t,e,r,i)):[]},Yn.filter=function(t,e){return(Ga(t)?Te:vr)(t,lo(e,3))},Yn.flatMap=function(t,e){return wr(xa(t,e),1)},Yn.flatMapDeep=function(t,e){return wr(xa(t,e),h)},Yn.flatMapDepth=function(t,e,r){return r=r===n?1:gs(r),wr(xa(t,e),r)},Yn.flatten=qo,Yn.flattenDeep=function(t){return(null==t?0:t.length)?wr(t,h):[]},Yn.flattenDepth=function(t,e){return(null==t?0:t.length)?wr(t,e=e===n?1:gs(e)):[]},Yn.flip=function(t){return $i(t,512)},Yn.flow=iu,Yn.flowRight=ou,Yn.fromPairs=function(t){for(var e=-1,n=null==t?0:t.length,r={};++e<n;){var i=t[e];r[i[0]]=i[1]}return r},Yn.functions=function(t){return null==t?[]:Nr(t,Os(t))},Yn.functionsIn=function(t){return null==t?[]:Nr(t,zs(t))},Yn.groupBy=Ia,Yn.initial=function(t){return(null==t?0:t.length)?oi(t,0,-1):[]},Yn.intersection=Jo,Yn.intersectionBy=Xo,Yn.intersectionWith=Ko,Yn.invert=js,Yn.invertBy=Ds,Yn.invokeMap=Na,Yn.iteratee=su,Yn.keyBy=Ea,Yn.keys=Os,Yn.keysIn=zs,Yn.map=xa,Yn.mapKeys=function(t,e){var n={};return e=lo(e,3),Ar(t,(function(t,r,i){sr(n,e(t,r,i),t)})),n},Yn.mapValues=function(t,e){var n={};return e=lo(e,3),Ar(t,(function(t,r,i){sr(n,r,e(t,r,i))})),n},Yn.matches=function(t){return Yr(lr(t,1))},Yn.matchesProperty=function(t,e){return Wr(t,lr(e,1))},Yn.memoize=_a,Yn.merge=Ps,Yn.mergeWith=_s,Yn.method=uu,Yn.methodOf=cu,Yn.mixin=lu,Yn.negate=Ba,Yn.nthArg=function(t){return t=gs(t),Kr((function(e){return Vr(e,t)}))},Yn.omit=Bs,Yn.omitBy=function(t,e){return Us(t,Ba(lo(e)))},Yn.once=function(t){return ja(2,t)},Yn.orderBy=function(t,e,r,i){return null==t?[]:(Ga(e)||(e=null==e?[]:[e]),Ga(r=i?n:r)||(r=null==r?[]:[r]),Hr(t,e,r))},Yn.over=du,Yn.overArgs=Ra,Yn.overEvery=fu,Yn.overSome=pu,Yn.partial=Ua,Yn.partialRight=Qa,Yn.partition=ka,Yn.pick=Rs,Yn.pickBy=Us,Yn.property=yu,Yn.propertyOf=function(t){return function(e){return null==t?n:Er(t,e)}},Yn.pull=ta,Yn.pullAll=ea,Yn.pullAllBy=function(t,e,n){return t&&t.length&&e&&e.length?qr(t,e,lo(n,2)):t},Yn.pullAllWith=function(t,e,r){return t&&t.length&&e&&e.length?qr(t,e,n,r):t},Yn.pullAt=na,Yn.range=mu,Yn.rangeRight=gu,Yn.rearg=Ya,Yn.reject=function(t,e){return(Ga(t)?Te:vr)(t,Ba(lo(e,3)))},Yn.remove=function(t,e){var n=[];if(!t||!t.length)return n;var r=-1,i=[],o=t.length;for(e=lo(e,3);++r<o;){var a=t[r];e(a,r,t)&&(n.push(a),i.push(r))}return Zr(t,i),n},Yn.rest=function(t,e){if("function"!=typeof t)throw new St(r);return Kr(t,e=e===n?e:gs(e))},Yn.reverse=ra,Yn.sampleSize=function(t,e,r){return e=(r?Ao(t,e,r):e===n)?1:gs(e),(Ga(t)?tr:ti)(t,e)},Yn.set=function(t,e,n){return null==t?t:ei(t,e,n)},Yn.setWith=function(t,e,r,i){return i="function"==typeof i?i:n,null==t?t:ei(t,e,r,i)},Yn.shuffle=function(t){return(Ga(t)?er:ii)(t)},Yn.slice=function(t,e,r){var i=null==t?0:t.length;return i?(r&&"number"!=typeof r&&Ao(t,e,r)?(e=0,r=i):(e=null==e?0:gs(e),r=r===n?i:gs(r)),oi(t,e,r)):[]},Yn.sortBy=Ta,Yn.sortedUniq=function(t){return t&&t.length?ci(t):[]},Yn.sortedUniqBy=function(t,e){return t&&t.length?ci(t,lo(e,2)):[]},Yn.split=function(t,e,r){return r&&"number"!=typeof r&&Ao(t,e,r)&&(e=r=n),(r=r===n?p:r>>>0)?(t=Ms(t))&&("string"==typeof e||null!=e&&!us(e))&&!(e=hi(e))&&on(t)?Ii(dn(t),0,r):t.split(e,r):[]},Yn.spread=function(t,e){if("function"!=typeof t)throw new St(r);return e=null==e?0:bn(gs(e),0),Kr((function(n){var r=n[e],i=Ii(n,0,e);return r&&De(i,r),Ie(t,this,i)}))},Yn.tail=function(t){var e=null==t?0:t.length;return e?oi(t,1,e):[]},Yn.take=function(t,e,r){return t&&t.length?oi(t,0,(e=r||e===n?1:gs(e))<0?0:e):[]},Yn.takeRight=function(t,e,r){var i=null==t?0:t.length;return i?oi(t,(e=i-(e=r||e===n?1:gs(e)))<0?0:e,i):[]},Yn.takeRightWhile=function(t,e){return t&&t.length?yi(t,lo(e,3),!1,!0):[]},Yn.takeWhile=function(t,e){return t&&t.length?yi(t,lo(e,3)):[]},Yn.tap=function(t,e){return e(t),t},Yn.throttle=function(t,e,n){var i=!0,o=!0;if("function"!=typeof t)throw new St(r);return rs(n)&&(i="leading"in n?!!n.leading:i,o="trailing"in n?!!n.trailing:o),Oa(t,e,{leading:i,maxWait:e,trailing:o})},Yn.thru=ma,Yn.toArray=ys,Yn.toPairs=Qs,Yn.toPairsIn=Ys,Yn.toPath=function(t){return Ga(t)?je(t,Uo):hs(t)?[t]:ji(Ro(Ms(t)))},Yn.toPlainObject=bs,Yn.transform=function(t,e,n){var r=Ga(t),i=r||Xa(t)||ds(t);if(e=lo(e,4),null==n){var o=t&&t.constructor;n=i?r?new o:[]:rs(t)&&ts(o)?Wn(Gt(t)):{}}return(i?Ee:Ar)(t,(function(t,r,i){return e(n,t,r,i)})),n},Yn.unary=function(t){return Sa(t,1)},Yn.union=ia,Yn.unionBy=oa,Yn.unionWith=aa,Yn.uniq=function(t){return t&&t.length?di(t):[]},Yn.uniqBy=function(t,e){return t&&t.length?di(t,lo(e,2)):[]},Yn.uniqWith=function(t,e){return e="function"==typeof e?e:n,t&&t.length?di(t,n,e):[]},Yn.unset=function(t,e){return null==t||fi(t,e)},Yn.unzip=sa,Yn.unzipWith=ua,Yn.update=function(t,e,n){return null==t?t:pi(t,e,bi(n))},Yn.updateWith=function(t,e,r,i){return i="function"==typeof i?i:n,null==t?t:pi(t,e,bi(r),i)},Yn.values=Ws,Yn.valuesIn=function(t){return null==t?[]:Je(t,zs(t))},Yn.without=ca,Yn.words=tu,Yn.wrap=function(t,e){return Ua(bi(e),t)},Yn.xor=la,Yn.xorBy=ha,Yn.xorWith=da,Yn.zip=fa,Yn.zipObject=function(t,e){return vi(t||[],e||[],rr)},Yn.zipObjectDeep=function(t,e){return vi(t||[],e||[],ei)},Yn.zipWith=pa,Yn.entries=Qs,Yn.entriesIn=Ys,Yn.extend=Is,Yn.extendWith=Ns,lu(Yn,Yn),Yn.add=bu,Yn.attempt=eu,Yn.camelCase=Fs,Yn.capitalize=Vs,Yn.ceil=Mu,Yn.clamp=function(t,e,r){return r===n&&(r=e,e=n),r!==n&&(r=(r=ws(r))==r?r:0),e!==n&&(e=(e=ws(e))==e?e:0),cr(ws(t),e,r)},Yn.clone=function(t){return lr(t,4)},Yn.cloneDeep=function(t){return lr(t,5)},Yn.cloneDeepWith=function(t,e){return lr(t,5,e="function"==typeof e?e:n)},Yn.cloneWith=function(t,e){return lr(t,4,e="function"==typeof e?e:n)},Yn.conformsTo=function(t,e){return null==e||hr(t,e,Os(e))},Yn.deburr=Hs,Yn.defaultTo=function(t,e){return null==t||t!=t?e:t},Yn.divide=Au,Yn.endsWith=function(t,e,r){t=Ms(t),e=hi(e);var i=t.length,o=r=r===n?i:cr(gs(r),0,i);return(r-=e.length)>=0&&t.slice(r,o)==e},Yn.eq=Wa,Yn.escape=function(t){return(t=Ms(t))&&Z.test(t)?t.replace(G,nn):t},Yn.escapeRegExp=function(t){return(t=Ms(t))&&rt.test(t)?t.replace(nt,"\\$&"):t},Yn.every=function(t,e,r){var i=Ga(t)?ke:mr;return r&&Ao(t,e,r)&&(e=n),i(t,lo(e,3))},Yn.find=wa,Yn.findIndex=Ho,Yn.findKey=function(t,e){return _e(t,lo(e,3),Ar)},Yn.findLast=ba,Yn.findLastIndex=Go,Yn.findLastKey=function(t,e){return _e(t,lo(e,3),Ir)},Yn.floor=Iu,Yn.forEach=Ma,Yn.forEachRight=Aa,Yn.forIn=function(t,e){return null==t?t:br(t,lo(e,3),zs)},Yn.forInRight=function(t,e){return null==t?t:Mr(t,lo(e,3),zs)},Yn.forOwn=function(t,e){return t&&Ar(t,lo(e,3))},Yn.forOwnRight=function(t,e){return t&&Ir(t,lo(e,3))},Yn.get=Ls,Yn.gt=Fa,Yn.gte=Va,Yn.has=function(t,e){return null!=t&&vo(t,e,Lr)},Yn.hasIn=Ss,Yn.head=Zo,Yn.identity=au,Yn.includes=function(t,e,n,r){t=Za(t)?t:Ws(t),n=n&&!r?gs(n):0;var i=t.length;return n<0&&(n=bn(i+n,0)),ls(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&Re(t,e,n)>-1},Yn.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:gs(n);return i<0&&(i=bn(r+i,0)),Re(t,e,i)},Yn.inRange=function(t,e,r){return e=ms(e),r===n?(r=e,e=0):r=ms(r),function(t,e,n){return t>=Mn(e,n)&&t<bn(e,n)}(t=ws(t),e,r)},Yn.invoke=Cs,Yn.isArguments=Ha,Yn.isArray=Ga,Yn.isArrayBuffer=qa,Yn.isArrayLike=Za,Yn.isArrayLikeObject=Ja,Yn.isBoolean=function(t){return!0===t||!1===t||is(t)&&kr(t)==v},Yn.isBuffer=Xa,Yn.isDate=Ka,Yn.isElement=function(t){return is(t)&&1===t.nodeType&&!ss(t)},Yn.isEmpty=function(t){if(null==t)return!0;if(Za(t)&&(Ga(t)||"string"==typeof t||"function"==typeof t.splice||Xa(t)||ds(t)||Ha(t)))return!t.length;var e=go(t);if(e==I||e==T)return!t.size;if(xo(t))return!Br(t).length;for(var n in t)if(Pt.call(t,n))return!1;return!0},Yn.isEqual=function(t,e){return Or(t,e)},Yn.isEqualWith=function(t,e,r){var i=(r="function"==typeof r?r:n)?r(t,e):n;return i===n?Or(t,e,n,r):!!i},Yn.isError=$a,Yn.isFinite=function(t){return"number"==typeof t&&gn(t)},Yn.isFunction=ts,Yn.isInteger=es,Yn.isLength=ns,Yn.isMap=os,Yn.isMatch=function(t,e){return t===e||zr(t,e,fo(e))},Yn.isMatchWith=function(t,e,r){return r="function"==typeof r?r:n,zr(t,e,fo(e),r)},Yn.isNaN=function(t){return as(t)&&t!=+t},Yn.isNative=function(t){if(Eo(t))throw new Nt("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Pr(t)},Yn.isNil=function(t){return null==t},Yn.isNull=function(t){return null===t},Yn.isNumber=as,Yn.isObject=rs,Yn.isObjectLike=is,Yn.isPlainObject=ss,Yn.isRegExp=us,Yn.isSafeInteger=function(t){return es(t)&&t>=-9007199254740991&&t<=d},Yn.isSet=cs,Yn.isString=ls,Yn.isSymbol=hs,Yn.isTypedArray=ds,Yn.isUndefined=function(t){return t===n},Yn.isWeakMap=function(t){return is(t)&&go(t)==j},Yn.isWeakSet=function(t){return is(t)&&"[object WeakSet]"==kr(t)},Yn.join=function(t,e){return null==t?"":vn.call(t,e)},Yn.kebabCase=Gs,Yn.last=$o,Yn.lastIndexOf=function(t,e,r){var i=null==t?0:t.length;if(!i)return-1;var o=i;return r!==n&&(o=(o=gs(r))<0?bn(i+o,0):Mn(o,i-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,o):Be(t,Qe,o,!0)},Yn.lowerCase=qs,Yn.lowerFirst=Zs,Yn.lt=fs,Yn.lte=ps,Yn.max=function(t){return t&&t.length?gr(t,au,Tr):n},Yn.maxBy=function(t,e){return t&&t.length?gr(t,lo(e,2),Tr):n},Yn.mean=function(t){return Ye(t,au)},Yn.meanBy=function(t,e){return Ye(t,lo(e,2))},Yn.min=function(t){return t&&t.length?gr(t,au,Ur):n},Yn.minBy=function(t,e){return t&&t.length?gr(t,lo(e,2),Ur):n},Yn.stubArray=vu,Yn.stubFalse=wu,Yn.stubObject=function(){return{}},Yn.stubString=function(){return""},Yn.stubTrue=function(){return!0},Yn.multiply=Eu,Yn.nth=function(t,e){return t&&t.length?Vr(t,gs(e)):n},Yn.noConflict=function(){return he._===this&&(he._=Qt),this},Yn.noop=hu,Yn.now=La,Yn.pad=function(t,e,n){t=Ms(t);var r=(e=gs(e))?hn(t):0;if(!e||r>=e)return t;var i=(e-r)/2;return Hi(Pe(i),n)+t+Hi(me(i),n)},Yn.padEnd=function(t,e,n){t=Ms(t);var r=(e=gs(e))?hn(t):0;return e&&r<e?t+Hi(e-r,n):t},Yn.padStart=function(t,e,n){t=Ms(t);var r=(e=gs(e))?hn(t):0;return e&&r<e?Hi(e-r,n)+t:t},Yn.parseInt=function(t,e,n){return n||null==e?e=0:e&&(e=+e),In(Ms(t).replace(it,""),e||0)},Yn.random=function(t,e,r){if(r&&"boolean"!=typeof r&&Ao(t,e,r)&&(e=r=n),r===n&&("boolean"==typeof e?(r=e,e=n):"boolean"==typeof t&&(r=t,t=n)),t===n&&e===n?(t=0,e=1):(t=ms(t),e===n?(e=t,t=0):e=ms(e)),t>e){var i=t;t=e,e=i}if(r||t%1||e%1){var o=Nn();return Mn(t+o*(e-t+se("1e-"+((o+"").length-1))),e)}return Jr(t,e)},Yn.reduce=function(t,e,n){var r=Ga(t)?Ce:Ve,i=arguments.length<3;return r(t,lo(e,4),n,i,pr)},Yn.reduceRight=function(t,e,n){var r=Ga(t)?Oe:Ve,i=arguments.length<3;return r(t,lo(e,4),n,i,yr)},Yn.repeat=function(t,e,r){return e=(r?Ao(t,e,r):e===n)?1:gs(e),Xr(Ms(t),e)},Yn.replace=function(){var t=arguments,e=Ms(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Yn.result=function(t,e,r){var i=-1,o=(e=Mi(e,t)).length;for(o||(o=1,t=n);++i<o;){var a=null==t?n:t[Uo(e[i])];a===n&&(i=o,a=r),t=ts(a)?a.call(t):a}return t},Yn.round=xu,Yn.runInContext=t,Yn.sample=function(t){return(Ga(t)?$n:$r)(t)},Yn.size=function(t){if(null==t)return 0;if(Za(t))return ls(t)?hn(t):t.length;var e=go(t);return e==I||e==T?t.size:Br(t).length},Yn.snakeCase=Js,Yn.some=function(t,e,r){var i=Ga(t)?ze:ai;return r&&Ao(t,e,r)&&(e=n),i(t,lo(e,3))},Yn.sortedIndex=function(t,e){return si(t,e)},Yn.sortedIndexBy=function(t,e,n){return ui(t,e,lo(n,2))},Yn.sortedIndexOf=function(t,e){var n=null==t?0:t.length;if(n){var r=si(t,e);if(r<n&&Wa(t[r],e))return r}return-1},Yn.sortedLastIndex=function(t,e){return si(t,e,!0)},Yn.sortedLastIndexBy=function(t,e,n){return ui(t,e,lo(n,2),!0)},Yn.sortedLastIndexOf=function(t,e){if(null==t?0:t.length){var n=si(t,e,!0)-1;if(Wa(t[n],e))return n}return-1},Yn.startCase=Xs,Yn.startsWith=function(t,e,n){return t=Ms(t),n=null==n?0:cr(gs(n),0,t.length),e=hi(e),t.slice(n,n+e.length)==e},Yn.subtract=ku,Yn.sum=function(t){return t&&t.length?He(t,au):0},Yn.sumBy=function(t,e){return t&&t.length?He(t,lo(e,2)):0},Yn.template=function(t,e,r){var i=Yn.templateSettings;r&&Ao(t,e,r)&&(e=n),t=Ms(t),e=Ns({},e,i,to);var o,a,s=Ns({},e.imports,i.imports,to),u=Os(s),c=Je(s,u),l=0,h=e.interpolate||bt,d="__p += '",f=Tt((e.escape||bt).source+"|"+h.source+"|"+(h===K?dt:bt).source+"|"+(e.evaluate||bt).source+"|$","g"),p="//# sourceURL="+(Pt.call(e,"sourceURL")?(e.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++re+"]")+"\n";t.replace(f,(function(e,n,r,i,s,u){return r||(r=i),d+=t.slice(l,u).replace(Mt,rn),n&&(o=!0,d+="' +\n__e("+n+") +\n'"),s&&(a=!0,d+="';\n"+s+";\n__p += '"),r&&(d+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),l=u+e.length,e})),d+="';\n";var y=Pt.call(e,"variable")&&e.variable;if(y){if(lt.test(y))throw new Nt("Invalid `variable` option passed into `_.template`")}else d="with (obj) {\n"+d+"\n}\n";d=(a?d.replace(W,""):d).replace(F,"$1").replace(V,"$1;"),d="function("+(y||"obj")+") {\n"+(y?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(o?", __e = _.escape":"")+(a?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var m=eu((function(){return Et(u,p+"return "+d).apply(n,c)}));if(m.source=d,$a(m))throw m;return m},Yn.times=function(t,e){if((t=gs(t))<1||t>d)return[];var n=p,r=Mn(t,p);e=lo(e),t-=p;for(var i=Ge(r,e);++n<t;)e(n);return i},Yn.toFinite=ms,Yn.toInteger=gs,Yn.toLength=vs,Yn.toLower=function(t){return Ms(t).toLowerCase()},Yn.toNumber=ws,Yn.toSafeInteger=function(t){return t?cr(gs(t),-9007199254740991,d):0===t?t:0},Yn.toString=Ms,Yn.toUpper=function(t){return Ms(t).toUpperCase()},Yn.trim=function(t,e,r){if((t=Ms(t))&&(r||e===n))return qe(t);if(!t||!(e=hi(e)))return t;var i=dn(t),o=dn(e);return Ii(i,Ke(i,o),$e(i,o)+1).join("")},Yn.trimEnd=function(t,e,r){if((t=Ms(t))&&(r||e===n))return t.slice(0,fn(t)+1);if(!t||!(e=hi(e)))return t;var i=dn(t);return Ii(i,0,$e(i,dn(e))+1).join("")},Yn.trimStart=function(t,e,r){if((t=Ms(t))&&(r||e===n))return t.replace(it,"");if(!t||!(e=hi(e)))return t;var i=dn(t);return Ii(i,Ke(i,dn(e))).join("")},Yn.truncate=function(t,e){var r=30,i="...";if(rs(e)){var o="separator"in e?e.separator:o;r="length"in e?gs(e.length):r,i="omission"in e?hi(e.omission):i}var a=(t=Ms(t)).length;if(on(t)){var s=dn(t);a=s.length}if(r>=a)return t;var u=r-hn(i);if(u<1)return i;var c=s?Ii(s,0,u).join(""):t.slice(0,u);if(o===n)return c+i;if(s&&(u+=c.length-u),us(o)){if(t.slice(u).search(o)){var l,h=c;for(o.global||(o=Tt(o.source,Ms(ft.exec(o))+"g")),o.lastIndex=0;l=o.exec(h);)var d=l.index;c=c.slice(0,d===n?u:d)}}else if(t.indexOf(hi(o),u)!=u){var f=c.lastIndexOf(o);f>-1&&(c=c.slice(0,f))}return c+i},Yn.unescape=function(t){return(t=Ms(t))&&q.test(t)?t.replace(H,pn):t},Yn.uniqueId=function(t){var e=++_t;return Ms(t)+e},Yn.upperCase=Ks,Yn.upperFirst=$s,Yn.each=Ma,Yn.eachRight=Aa,Yn.first=Zo,lu(Yn,(Nu={},Ar(Yn,(function(t,e){Pt.call(Yn.prototype,e)||(Nu[e]=t)})),Nu),{chain:!1}),Yn.VERSION="4.17.21",Ee(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){Yn[t].placeholder=Yn})),Ee(["drop","take"],(function(t,e){Hn.prototype[t]=function(r){r=r===n?1:bn(gs(r),0);var i=this.__filtered__&&!e?new Hn(this):this.clone();return i.__filtered__?i.__takeCount__=Mn(r,i.__takeCount__):i.__views__.push({size:Mn(r,p),type:t+(i.__dir__<0?"Right":"")}),i},Hn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),Ee(["filter","map","takeWhile"],(function(t,e){var n=e+1,r=1==n||3==n;Hn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:lo(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}})),Ee(["head","last"],(function(t,e){var n="take"+(e?"Right":"");Hn.prototype[t]=function(){return this[n](1).value()[0]}})),Ee(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");Hn.prototype[t]=function(){return this.__filtered__?new Hn(this):this[n](1)}})),Hn.prototype.compact=function(){return this.filter(au)},Hn.prototype.find=function(t){return this.filter(t).head()},Hn.prototype.findLast=function(t){return this.reverse().find(t)},Hn.prototype.invokeMap=Kr((function(t,e){return"function"==typeof t?new Hn(this):this.map((function(n){return Dr(n,t,e)}))})),Hn.prototype.reject=function(t){return this.filter(Ba(lo(t)))},Hn.prototype.slice=function(t,e){t=gs(t);var r=this;return r.__filtered__&&(t>0||e<0)?new Hn(r):(t<0?r=r.takeRight(-t):t&&(r=r.drop(t)),e!==n&&(r=(e=gs(e))<0?r.dropRight(-e):r.take(e-t)),r)},Hn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Hn.prototype.toArray=function(){return this.take(p)},Ar(Hn.prototype,(function(t,e){var r=/^(?:filter|find|map|reject)|While$/.test(e),i=/^(?:head|last)$/.test(e),o=Yn[i?"take"+("last"==e?"Right":""):e],a=i||/^find/.test(e);o&&(Yn.prototype[e]=function(){var e=this.__wrapped__,s=i?[1]:arguments,u=e instanceof Hn,c=s[0],l=u||Ga(e),h=function(t){var e=o.apply(Yn,De([t],s));return i&&d?e[0]:e};l&&r&&"function"==typeof c&&1!=c.length&&(u=l=!1);var d=this.__chain__,f=!!this.__actions__.length,p=a&&!d,y=u&&!f;if(!a&&l){e=y?e:new Hn(this);var m=t.apply(e,s);return m.__actions__.push({func:ma,args:[h],thisArg:n}),new Vn(m,d)}return p&&y?t.apply(this,s):(m=this.thru(h),p?i?m.value()[0]:m.value():m)})})),Ee(["pop","push","shift","sort","splice","unshift"],(function(t){var e=jt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);Yn.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var i=this.value();return e.apply(Ga(i)?i:[],t)}return this[n]((function(n){return e.apply(Ga(n)?n:[],t)}))}})),Ar(Hn.prototype,(function(t,e){var n=Yn[e];if(n){var r=n.name+"";Pt.call(Cn,r)||(Cn[r]=[]),Cn[r].push({name:e,func:n})}})),Cn[Yi(n,2).name]=[{name:"wrapper",func:n}],Hn.prototype.clone=function(){var t=new Hn(this.__wrapped__);return t.__actions__=ji(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=ji(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=ji(this.__views__),t},Hn.prototype.reverse=function(){if(this.__filtered__){var t=new Hn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},Hn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Ga(t),r=e<0,i=n?t.length:0,o=function(t,e,n){var r=-1,i=n.length;for(;++r<i;){var o=n[r],a=o.size;switch(o.type){case"drop":t+=a;break;case"dropRight":e-=a;break;case"take":e=Mn(e,t+a);break;case"takeRight":t=bn(t,e-a)}}return{start:t,end:e}}(0,i,this.__views__),a=o.start,s=o.end,u=s-a,c=r?s:a-1,l=this.__iteratees__,h=l.length,d=0,f=Mn(u,this.__takeCount__);if(!n||!r&&i==u&&f==u)return mi(t,this.__actions__);var p=[];t:for(;u--&&d<f;){for(var y=-1,m=t[c+=e];++y<h;){var g=l[y],v=g.iteratee,w=g.type,b=v(m);if(2==w)m=b;else if(!b){if(1==w)continue t;break t}}p[d++]=m}return p},Yn.prototype.at=ga,Yn.prototype.chain=function(){return ya(this)},Yn.prototype.commit=function(){return new Vn(this.value(),this.__chain__)},Yn.prototype.next=function(){this.__values__===n&&(this.__values__=ys(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?n:this.__values__[this.__index__++]}},Yn.prototype.plant=function(t){for(var e,r=this;r instanceof Fn;){var i=Yo(r);i.__index__=0,i.__values__=n,e?o.__wrapped__=i:e=i;var o=i;r=r.__wrapped__}return o.__wrapped__=t,e},Yn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Hn){var e=t;return this.__actions__.length&&(e=new Hn(this)),(e=e.reverse()).__actions__.push({func:ma,args:[ra],thisArg:n}),new Vn(e,this.__chain__)}return this.thru(ra)},Yn.prototype.toJSON=Yn.prototype.valueOf=Yn.prototype.value=function(){return mi(this.__wrapped__,this.__actions__)},Yn.prototype.first=Yn.prototype.head,ae&&(Yn.prototype[ae]=function(){return this}),Yn}();fe?((fe.exports=yn)._=yn,de._=yn):he._=yn}).call(Gf)})),mF="_DePayConnectDialogPreviouslyConnectedWallet",gF=function(t){localStorage[mF]=t},vF=function(t){var e,n,r=ek.useRef(),i=Mx(ek.useState(),2),o=i[0],a=i[1],s=Mx(ek.useState(),2),u=s[0],c=s[1],l=Mx(ek.useState(),2),h=l[0],d=l[1],f=Mx(ek.useState(),2),p=f[0],y=f[1],m=Mx(ek.useState(),2),g=m[0],v=m[1],w=Mx(ek.useState(),2),b=w[0],M=w[1],A=Mx(ek.useState(),2);A[0],A[1];var I=Mx(ek.useState(!1),2),N=I[0],E=I[1],x=Mx(ek.useState(!1),2),k=x[0],T=x[1],L=Mx(ek.useState(),2),S=L[0],j=L[1];ek.useContext(uF).navigate;var D=ek.useContext(rC).accept,C=ek.createElement("div",{className:"PaddingTopS PaddingLeftM PaddingRightM"},(null===(e=t.wallet)||void 0===e?void 0:e.logo)&&ek.createElement("div",{className:"PaddingTopXS"},ek.createElement("div",{className:"LineHeightL FontSizeL PaddingTopS"},ek.createElement("span",{className:"CardImage rounded large"},ek.createElement("img",{className:"transparent",src:t.wallet.logo}))))),O=function(){return new pF({width:340,height:340,type:"svg",dotsOptions:{type:"extra-rounded"},cornersSquareOptions:{type:"rounded"},backgroundOptions:{color:"transparent"}})},z=ek.useCallback(yF.debounce((function(){var e,n;if(null!==(e=t.platform)&&void 0!==e&&e.solanaPay&&D&&D.every((function(t){return t.amount})))return t.continueWithSolanaPay();if("function"==typeof t.platform.qr){var r=O();return r.update({data:t.platform.qr()}),void j(r)}switch(null===(n=t.platform)||void 0===n?void 0:n.qr){case"WalletConnectV1":case"WalletConnectV2":if(null==S){localStorage[atob("ZGVwYXk6d2FsbGV0czp3YzI6cHJvamVjdElk")]=atob("YjFmYzJmMDZlYTIxMDdmY2Q5OWM2OGY0MTI3MTQxYWI=");var i=new LE[t.platform.qr];i.connect({name:t.wallet.name,logo:t.wallet.logo,reconnect:!0,connect:function(t){var e=t.uri,n=O();n.update({data:e}),j(n)}}).then((function(e){t.resolve(e,i)}))}break;case"WalletLink":var o=new LE[t.platform.qr];o.connect({connect:function(t){var e=t.uri,n=O();n.update({data:e}),j(n)}}).then((function(e){t.resolve(e,o)}))}}),100),[]);return ek.useEffect((function(){mx(bx.mark((function e(){var n,r,i,o,s,u,l,h,f,p,m,g;return bx.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(l=!1,null===(n=t.wallet)||void 0===n||!n.extension){e.next=7;break}return e.next=4,LE[t.wallet.extension].isAvailable();case 4:l=e.sent,e.next=11;break;case 7:if(null===(r=t.wallet)||void 0===r||!r.extensions){e.next=11;break}return e.next=10,Promise.all(t.wallet.extensions.map(function(){var t=mx(bx.mark((function t(e){return bx.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,LE[e].isAvailable();case 2:return t.abrupt("return",t.sent);case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()));case 10:l=e.sent.filter(Boolean)[0];case 11:if(a(l),null===(i=t.platform)||void 0===i||!i.connect){e.next=21;break}return e.next=15,LE[t.platform.connect].isAvailable();case 15:if(e.t1=e.sent,e.t1){e.next=18;break}e.t1=!1;case 18:e.t0=e.t1,e.next=22;break;case 21:e.t0=!1;case 22:h=e.t0,M(h),f=!!t.platform&&t.platform.connect,c(f),p=!(null===(o=t.platform)||void 0===o||!o.copyLink),y(p),m=!!t.platform&&t.platform.open,d(m),g=(null===(s=t.platform)||void 0===s?void 0:s.solanaPay)&&D&&D.every((function(t){return t.amount}))||(null===(u=t.platform)||void 0===u?void 0:u.qr)&&(!N||"WalletLink"===t.platform.qr),v(g);case 32:case"end":return e.stop()}}),e)})))()}),[]),ek.useEffect((function(){var e,n,r,i;void 0!==b&&E(!o&&!fF()&&!(null!==(e=t.wallet)&&void 0!==e&&null!==(n=e.desktop)&&void 0!==n&&n.native)&&((null===(r=t.platform)||void 0===r?void 0:r.qr)||(null===(i=t.platform)||void 0===i?void 0:i.solanaPay)))}),[o,b]),ek.useEffect((function(){var e,n;N&&(null!==(e=t.platform)&&void 0!==e&&e.qr||null!==(n=t.platform)&&void 0!==n&&n.solanaPay)&&z()}),[N]),ek.useEffect((function(){N&&S&&r&&r.current&&(r.current.innerHTML="",S.append(r.current))}),[S]),N&&null!==(n=t.platform)&&void 0!==n&&n.solanaPay&&D&&D.every((function(t){return t.amount}))?null:ek.createElement(dF,{stacked:!0,header:C,footer:!1,body:ek.createElement("div",{className:"TextCenter PaddingBottomS"},ek.createElement("div",{className:"PaddingLeftL PaddingRightL"},ek.createElement("h1",{className:"LineHeightL Text FontSizeL FontWeightBold"},"Connect ",t.wallet.name)),!window.location.protocol.match("https")&&ek.createElement("div",{className:"PaddingTopS PaddingLeftL PaddingRightL"},ek.createElement("div",{className:"Alert FontSizeS"},ek.createElement("strong",null,"Most wallets do not connect to http!"))),!o&&!u&&!h&&!p&&!g&&ek.createElement("div",{className:"PaddingTopS PaddingBottomS PaddingLeftL PaddingRightL"},ek.createElement("div",{className:"Alert FontSizeS"},ek.createElement("strong",null,"Unable to connect to this wallet!"))),N&&ek.createElement("div",null,ek.createElement("div",{ref:r,className:"QRCode"},N&&void 0===S&&ek.createElement("div",{className:"PaddingTopS"},ek.createElement("div",{className:"Skeleton",style:{borderRadius:"18px",width:"305px",height:"305px"}},ek.createElement("div",{className:"SkeletonBackground"})))),N&&void 0===S&&ek.createElement("div",{className:"Opacity05 PaddingBottomXS PaddingTopS"},ek.createElement("small",null,"Generating QR code...")),N&&void 0!==S&&ek.createElement("div",{className:"Opacity05 PaddingBottomXS PaddingTopXS"},ek.createElement("small",null,"Scan QR code with your wallet")),(o||u||h||p)&&ek.createElement("div",null,ek.createElement("div",{className:"PaddingBottomXS PaddingTopS Opacity03",style:{display:"flex"}},ek.createElement("div",{style:{borderBottom:"1px solid black",flex:"0.4",position:"relative",top:"-9px"},className:"Opacity05"}),ek.createElement("div",{style:{flex:"0.2"},className:"PaddingLeftXS PaddingRightXS"},ek.createElement("small",null,"or")),ek.createElement("div",{style:{borderBottom:"1px solid black",flex:"0.4",position:"relative",top:"-9px"},className:"Opacity05"})))),(o||u||h||g&&!N||p)&&ek.createElement("div",{className:"PaddingLeftL PaddingRightL PaddingTopS PaddingBottomS"},o&&ek.createElement("div",{className:"PaddingBottomXS"},t.showConnectExtensionWarning&&ek.createElement("div",{className:"PaddingTopS PaddingBottomS PaddingLeftS PaddingRightS"},ek.createElement("div",{className:"Alert"},ek.createElement("span",{className:"FontWeightBold PaddingBottomXS"},"You wallet extension window is already asking to connect. It might be hidden."))),t.connectingExtension&&ek.createElement("div",{className:"Card disabled small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("div",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("div",{className:"PaddingTopXS"},ek.createElement("div",{className:"Loading Icon medium",style:{position:"relative"}}))),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Connecting extension"))),!t.connectingExtension&&ek.createElement("button",{onClick:function(){return t.connectExtension(t.wallet)},className:"Card small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("span",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("img",{className:"transparent ",title:"Connect your wallet",style:{height:"26px"},src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyNTAgMjUwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyNTAgMjUwOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxnPgoJPHBhdGggZD0iTTE3Mi44LDY4LjNjLTQuOS0yLjItNy40LTguNC00LjUtMTMuNmM1LjMtOS40LDEwLTE4LjYsNC4zLTI5LjFjLTctMTIuNy0yNC4xLTE3LjQtMzYuNi0xMGMtMTUuNCw5LjEtMTMuNCwyNS42LTUuMSwzOC45CgkJYzMuMyw1LjIsMC45LDExLjYtNC4yLDEzLjlsLTYxLjIsMC4xbDAsMC44bDAuMSwyMS44bDAuMSwzNy45Yy0xLjksNS41LTguNyw4LjQtMTQuMSw1Yy0xMy40LTguMy0yOS44LTEwLjEtMzguOSw1LjMKCQljLTcuMywxMi41LTIuNSwyOS43LDEwLjIsMzYuNWMxMC41LDUuNywxOS43LDEsMjkuMS00LjRjNS40LTMuMSwxMS45LTAuMywxMy44LDVsMC4xLDU5LjhsNTcuMi0wLjFjMC4xLDAsMC4yLDAsMC4zLDBsMy42LDAKCQljNS0yLjMsNy40LTguNyw0LjItMTMuOWMtOC4zLTEzLjMtMTAuMy0yOS44LDUuMS0zOC45YzEyLjUtNy40LDI5LjYtMi43LDM2LjYsMTBjNS43LDEwLjUsMS4xLDE5LjctNC4zLDI5LjEKCQljLTIuOSw1LjItMC41LDExLjQsNC41LDEzLjZsMy42LDBjMC4xLDAsMC4yLDAsMC4zLDBsNTYuNS0wLjFsLTAuMS01OC44Yy0xLjQtNi42LTcuOC05LjItMTQuMS01LjhjLTkuNSw1LjItMTcuOSw5LjgtMjguNCw0LjEKCQljLTEyLjgtNi45LTE4LjItMjMuNy0xMC45LTM2LjNjOS0xNS40LDI1LjUtMTMuNiwzOC45LTUuM2M1LjcsMy41LDEyLjksMC4yLDE0LjQtNS45bC0wLjEtMzUuNEwyMzMuMyw2OWwwLTAuOEwxNzIuOCw2OC4zeiIvPgo8L2c+Cjwvc3ZnPgo="})),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Connect extension")))),u&&ek.createElement("div",{className:"PaddingBottomXS"},t.connectingApp&&ek.createElement("div",{className:"Card disabled small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("div",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("div",{className:"PaddingTopXS"},ek.createElement("div",{className:"Loading Icon medium",style:{position:"relative"}}))),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Connecting app"))),!t.connectingApp&&ek.createElement("button",{onClick:function(){return t.connectViaRedirect(t.wallet)},className:"Card small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("span",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("img",{className:"transparent ",title:"Click to connect app",style:{height:"26px",width:"26px",borderRadius:"8px"},src:t.wallet.logo})),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Connect app")))),h&&ek.createElement("div",{className:"PaddingBottomXS"},ek.createElement("button",{onClick:function(){return t.openInApp(t.wallet)},className:"Card small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("span",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("img",{className:"transparent ",title:"Click to open in app",style:{height:"26px",width:"26px",borderRadius:"8px"},src:t.wallet.logo})),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Open in app")))),g&&!N&&ek.createElement("div",{className:"PaddingBottomXS"},ek.createElement("button",{onClick:function(){E(!0),z()},className:"Card small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("span",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("img",{className:"transparent ",title:"Scan QR code to connect a mobile wallet",style:{height:"26px"},src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIHN2ZyAgUFVCTElDICctLy9XM0MvL0RURCBTVkcgMS4xLy9FTicgICdodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQnPgo8c3ZnIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDEwMDAgMTAwMCIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMWUzIDFlMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1ldGFkYXRhPiBTdmcgVmVjdG9yIEljb25zIDogaHR0cDovL3d3dy5vbmxpbmV3ZWJmb250cy5jb20vaWNvbiA8L21ldGFkYXRhPgo8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDUxMSkgc2NhbGUoLjEgLS4xKSI+PHBhdGggZD0ibTEwMCAyNzk3LjF2LTIyMTIuOWg0NDI1Ljh2NDQyNS44aC00NDI1Ljh2LTIyMTIuOXptMzQ3Ny40IDB2LTEyNjQuNWgtMjUyOXYyNTI5aDI1Mjl2LTEyNjQuNXoiLz48cGF0aCBkPSJtMTY4MC42IDI3OTcuMXYtNjMyLjNoMTI2NC42djEyNjQuNmgtMTI2NC42di02MzIuM3oiLz48cGF0aCBkPSJtNTQ3NC4yIDI3OTcuMXYtMjIxMi45aDQ0MjUuOHY0NDI1LjhoLTQ0MjUuOHYtMjIxMi45em0zNDc3LjQgMHYtMTI2NC41aC0yNTI5djI1MjloMjUyOXYtMTI2NC41eiIvPjxwYXRoIGQ9Im03MDU0LjggMjc5Ny4xdi02MzIuM2gxMjY0LjZ2MTI2NC42aC0xMjY0LjZ2LTYzMi4zeiIvPjxwYXRoIGQ9Im0xMDAtMjU3Ny4xdi0yMjEyLjloNDQyNS44djQ0MjUuOGgtNDQyNS44di0yMjEyLjl6bTM0NzcuNCAwdi0xMjY0LjVoLTI1Mjl2MjUyOWgyNTI5di0xMjY0LjV6Ii8+PHBhdGggZD0ibTE2ODAuNi0yNTc3LjF2LTYzMi4zaDEyNjQuNnYxMjY0LjZoLTEyNjQuNnYtNjMyLjN6Ii8+PHBhdGggZD0ibTU0NzQuMi05MTcuNHYtNTUzLjJoMTEwNi40di0xMTA2LjRoLTExMDYuNHYtMTEwNi40aDExMDYuNHYtMTEwNi42aDExMDYuNHYxMTA2LjRoMTEwNi40di0xMTA2LjRoMTEwNi42djExMDYuNGgtMTEwNi40djExMDYuNGgxMTA2LjR2MTEwNi40aC0xMTA2LjR2MTEwNi40aC0xMTA2LjR2LTExMDYuNGgtMTEwNi40djExMDYuNGgtMTEwNi40di01NTN6bTMzMTkuMy0xMTA2LjV2LTU1My4yaC0xMTA2LjR2LTExMDYuNGgtMTEwNi40djExMDYuNGgxMTA2LjR2MTEwNi40aDExMDYuNHYtNTUzLjJ6Ii8+PC9nPgo8L3N2Zz4K"})),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Scan QR code")))),p&&ek.createElement("div",{className:"PaddingBottomXS TooltipWrapper"},ek.createElement("button",{onClick:function(){var e=new LE[t.platform.copyLink];e.connect({name:t.wallet.name,logo:t.wallet.logo,reconnect:!0,connect:function(t){!function(t,e){const n=document.createElement("textarea");n.value=t,n.setAttribute("readonly",""),n.style={position:"absolute",left:"-9999px"},document.body.appendChild(n);const r=document.getSelection().rangeCount>0&&document.getSelection().getRangeAt(0);n.select();let i=!1;try{i=!!document.execCommand("copy")}catch(t){i=!1}document.body.removeChild(n),r&&document.getSelection&&(document.getSelection().removeAllRanges(),document.getSelection().addRange(r)),e&&e(i)}(t.uri),T(!0),setTimeout((function(){return T(!1)}),3e3)}}).then((function(n){t.resolve(n,e)}))},className:"Card small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("span",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("img",{className:"transparent ",title:"Copy connection link",style:{height:"26px"},src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iNTEycHgiIGhlaWdodD0iNTEycHgiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiMwMTAxMDEiIGQ9Ik00NTkuNjU0LDIzMy4zNzNsLTkwLjUzMSw5MC41Yy00OS45NjksNTAtMTMxLjAzMSw1MC0xODEsMGMtNy44NzUtNy44NDQtMTQuMDMxLTE2LjY4OC0xOS40MzgtMjUuODEzDQoJbDQyLjA2My00Mi4wNjNjMi0yLjAxNiw0LjQ2OS0zLjE3Miw2LjgyOC00LjUzMWMyLjkwNiw5LjkzOCw3Ljk4NCwxOS4zNDQsMTUuNzk3LDI3LjE1NmMyNC45NTMsMjQuOTY5LDY1LjU2MywyNC45MzgsOTAuNSwwDQoJbDkwLjUtOTAuNWMyNC45NjktMjQuOTY5LDI0Ljk2OS02NS41NjMsMC05MC41MTZjLTI0LjkzOC0yNC45NTMtNjUuNTMxLTI0Ljk1My05MC41LDBsLTMyLjE4OCwzMi4yMTkNCgljLTI2LjEwOS0xMC4xNzItNTQuMjUtMTIuOTA2LTgxLjY0MS04Ljg5MWw2OC41NzgtNjguNTc4YzUwLTQ5Ljk4NCwxMzEuMDMxLTQ5Ljk4NCwxODEuMDMxLDANCglDNTA5LjYyMywxMDIuMzQyLDUwOS42MjMsMTgzLjM4OSw0NTkuNjU0LDIzMy4zNzN6IE0yMjAuMzI2LDM4Mi4xODZsLTMyLjIwMywzMi4yMTljLTI0Ljk1MywyNC45MzgtNjUuNTYzLDI0LjkzOC05MC41MTYsMA0KCWMtMjQuOTUzLTI0Ljk2OS0yNC45NTMtNjUuNTYzLDAtOTAuNTMxbDkwLjUxNi05MC41YzI0Ljk2OS0yNC45NjksNjUuNTQ3LTI0Ljk2OSw5MC41LDBjNy43OTcsNy43OTcsMTIuODc1LDE3LjIwMywxNS44MTMsMjcuMTI1DQoJYzIuMzc1LTEuMzc1LDQuODEzLTIuNSw2LjgxMy00LjVsNDIuMDYzLTQyLjA0N2MtNS4zNzUtOS4xNTYtMTEuNTYzLTE3Ljk2OS0xOS40MzgtMjUuODI4Yy00OS45NjktNDkuOTg0LTEzMS4wMzEtNDkuOTg0LTE4MS4wMTYsMA0KCWwtOTAuNSw5MC41Yy00OS45ODQsNTAtNDkuOTg0LDEzMS4wMzEsMCwxODEuMDMxYzQ5Ljk4NCw0OS45NjksMTMxLjAzMSw0OS45NjksMTgxLjAxNiwwbDY4LjU5NC02OC41OTQNCglDMjc0LjU2MSwzOTUuMDkyLDI0Ni40MiwzOTIuMzQyLDIyMC4zMjYsMzgyLjE4NnoiLz4NCjwvc3ZnPg0K"})),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Copy connection link"))),k&&ek.createElement("div",{className:"Tooltip absolute top"},ek.createElement("span",{className:"TooltipArrowDown"}),"Connection link copied"))))})},wF=function(){return navigator.userAgent.toLowerCase().includes("android")},bF=function(){var t=navigator.userAgent.toLowerCase();return t.includes("webview")||t.includes("wv")||navigator.userAgent.toLowerCase().match(/\) mobile\//)&&!t.includes("safari")},MF=function(t){var e,n;if(fF()){if(wF())e=null===(n=t.mobile)||void 0===n?void 0:n.android;else if(Boolean(/iPad|iPhone|iPod/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1)){var r;e=null===(r=t.mobile)||void 0===r?void 0:r.ios}}else e=t.desktop;return e},AF=function(){return ek.createElement("div",{className:"PoweredByWrapper"},ek.createElement("a",{href:"https://depay.com",rel:"noopener noreferrer",target:"_blank",className:"PoweredByLink"},"by DePay"))},IF=function(t){var e,n=t.wallet.extensions.map((function(t){return LE[t].info.blockchains})).flat();t.accept&&(n=n.filter((function(e){return t.accept.some((function(t){return t.blockchain===e}))})));return ek.createElement(dF,{header:ek.createElement("div",{className:"PaddingTopS PaddingBottomS PaddingLeftM PaddingRightM"},(null===(e=t.wallet)||void 0===e?void 0:e.logo)&&ek.createElement("div",{className:"PaddingTopXS"},ek.createElement("div",{className:"LineHeightL FontSizeL PaddingTopS"},ek.createElement("span",{className:"CardImage rounded large"},ek.createElement("img",{className:"transparent",src:t.wallet.logo})))),ek.createElement("div",null,ek.createElement("h1",{className:"LineHeightL Text FontSizeL FontWeightBold"},"Select Blockchain"))),stacked:!0,bodyClassName:"ScrollHeight",body:ek.createElement("div",null,n.map((function(e){return ek.createElement("div",{key:e,className:"Card Row TextLeft",onClick:function(){return function(e){t.onSelect(t.wallet.extensions.find((function(t){return LE[t].info.blockchains.includes(e)})))}(e)}},ek.createElement("div",{className:"CardImage"},ek.createElement("img",{className:"transparent BlockchainLogo",src:Hf[e].logo,style:{backgroundColor:Hf[e].logoBackgroundColor}})),ek.createElement("div",{className:"CardBody"},ek.createElement("span",{className:"CardText"},Hf[e].label)))}))),footer:null})};function NF(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var EF=function(t){var e=Mx(ek.useState(0),2),n=e[0],r=e[1];return ek.useEffect((function(){var e=function(){r(n+1),0!=n&&t.hide()};return window.addEventListener("click",e),function(){window.removeEventListener("click",e)}}),[t.open,n]),ek.createElement("div",{className:"DropDown ".concat(t.open?"open":"")},ek.createElement("ul",null,t.items.map((function(t,e){return ek.createElement("li",{key:e},ek.createElement("button",{className:"DropDownItem",onClick:function(){return t.action()}},t.label))}))))},xF=function(t){return ek.createElement("svg",{className:"MenuIcon Icon",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round"},ek.createElement("line",{x1:"11.6",y1:"17.6",x2:"11.6",y2:"17.6"}),ek.createElement("line",{x1:"11.6",y1:"11.8",x2:"11.6",y2:"11.8"}),ek.createElement("line",{x1:"11.6",y1:"6.2",x2:"11.6",y2:"6.2"}))};function kF(t){return Array.isArray?Array.isArray(t):"[object Array]"===OF(t)}function TF(t){return"string"==typeof t}function LF(t){return"number"==typeof t}function SF(t){return!0===t||!1===t||function(t){return jF(t)&&null!==t}(t)&&"[object Boolean]"==OF(t)}function jF(t){return"object"==typeof t}function DF(t){return null!=t}function CF(t){return!t.trim().length}function OF(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}const zF=Object.prototype.hasOwnProperty;class PF{constructor(t){this._keys=[],this._keyMap={};let e=0;t.forEach((t=>{let n=_F(t);e+=n.weight,this._keys.push(n),this._keyMap[n.id]=n,e+=n.weight})),this._keys.forEach((t=>{t.weight/=e}))}get(t){return this._keyMap[t]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function _F(t){let e=null,n=null,r=null,i=1,o=null;if(TF(t)||kF(t))r=t,e=BF(t),n=RF(t);else{if(!zF.call(t,"name"))throw new Error((t=>`Missing ${t} property in key`)("name"));const a=t.name;if(r=a,zF.call(t,"weight")&&(i=t.weight,i<=0))throw new Error((t=>`Property 'weight' in key '${t}' must be a positive integer`)(a));e=BF(a),n=RF(a),o=t.getFn}return{path:e,id:n,weight:i,src:r,getFn:o}}function BF(t){return kF(t)?t:t.split(".")}function RF(t){return kF(t)?t.join("."):t}var UF={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(t,e)=>t.score===e.score?t.idx<e.idx?-1:1:t.score<e.score?-1:1,includeMatches:!1,findAllMatches:!1,minMatchCharLength:1,location:0,threshold:.6,distance:100,...{useExtendedSearch:!1,getFn:function(t,e){let n=[],r=!1;const i=(t,e,o)=>{if(DF(t))if(e[o]){const a=t[e[o]];if(!DF(a))return;if(o===e.length-1&&(TF(a)||LF(a)||SF(a)))n.push(function(t){return null==t?"":function(t){if("string"==typeof t)return t;let e=t+"";return"0"==e&&1/t==-1/0?"-0":e}(t)}(a));else if(kF(a)){r=!0;for(let t=0,n=a.length;t<n;t+=1)i(a[t],e,o+1)}else e.length&&i(a,e,o+1)}else n.push(t)};return i(t,TF(e)?e.split("."):e,0),r?n:n[0]},ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1}};const QF=/[^ ]+/g;class YF{constructor({getFn:t=UF.getFn,fieldNormWeight:e=UF.fieldNormWeight}={}){this.norm=function(t=1,e=3){const n=new Map,r=Math.pow(10,e);return{get(e){const i=e.match(QF).length;if(n.has(i))return n.get(i);const o=1/Math.pow(i,.5*t),a=parseFloat(Math.round(o*r)/r);return n.set(i,a),a},clear(){n.clear()}}}(e,3),this.getFn=t,this.isCreated=!1,this.setIndexRecords()}setSources(t=[]){this.docs=t}setIndexRecords(t=[]){this.records=t}setKeys(t=[]){this.keys=t,this._keysMap={},t.forEach(((t,e)=>{this._keysMap[t.id]=e}))}create(){!this.isCreated&&this.docs.length&&(this.isCreated=!0,TF(this.docs[0])?this.docs.forEach(((t,e)=>{this._addString(t,e)})):this.docs.forEach(((t,e)=>{this._addObject(t,e)})),this.norm.clear())}add(t){const e=this.size();TF(t)?this._addString(t,e):this._addObject(t,e)}removeAt(t){this.records.splice(t,1);for(let e=t,n=this.size();e<n;e+=1)this.records[e].i-=1}getValueForItemAtKeyId(t,e){return t[this._keysMap[e]]}size(){return this.records.length}_addString(t,e){if(!DF(t)||CF(t))return;let n={v:t,i:e,n:this.norm.get(t)};this.records.push(n)}_addObject(t,e){let n={i:e,$:{}};this.keys.forEach(((e,r)=>{let i=e.getFn?e.getFn(t):this.getFn(t,e.path);if(DF(i))if(kF(i)){let t=[];const e=[{nestedArrIndex:-1,value:i}];for(;e.length;){const{nestedArrIndex:n,value:r}=e.pop();if(DF(r))if(TF(r)&&!CF(r)){let e={v:r,i:n,n:this.norm.get(r)};t.push(e)}else kF(r)&&r.forEach(((t,n)=>{e.push({nestedArrIndex:n,value:t})}))}n.$[r]=t}else if(TF(i)&&!CF(i)){let t={v:i,n:this.norm.get(i)};n.$[r]=t}})),this.records.push(n)}toJSON(){return{keys:this.keys,records:this.records}}}function WF(t,e,{getFn:n=UF.getFn,fieldNormWeight:r=UF.fieldNormWeight}={}){const i=new YF({getFn:n,fieldNormWeight:r});return i.setKeys(t.map(_F)),i.setSources(e),i.create(),i}function FF(t,{errors:e=0,currentLocation:n=0,expectedLocation:r=0,distance:i=UF.distance,ignoreLocation:o=UF.ignoreLocation}={}){const a=e/t.length;if(o)return a;const s=Math.abs(r-n);return i?a+s/i:s?1:a}function VF(t,e,n,{location:r=UF.location,distance:i=UF.distance,threshold:o=UF.threshold,findAllMatches:a=UF.findAllMatches,minMatchCharLength:s=UF.minMatchCharLength,includeMatches:u=UF.includeMatches,ignoreLocation:c=UF.ignoreLocation}={}){if(e.length>32)throw new Error((t=>`Pattern length exceeds max of ${t}.`)(32));const l=e.length,h=t.length,d=Math.max(0,Math.min(r,h));let f=o,p=d;const y=s>1||u,m=y?Array(h):[];let g;for(;(g=t.indexOf(e,p))>-1;){let t=FF(e,{currentLocation:g,expectedLocation:d,distance:i,ignoreLocation:c});if(f=Math.min(t,f),p=g+l,y){let t=0;for(;t<l;)m[g+t]=1,t+=1}}p=-1;let v=[],w=1,b=l+h;const M=1<<l-1;for(let r=0;r<l;r+=1){let o=0,s=b;for(;o<s;){FF(e,{errors:r,currentLocation:d+s,expectedLocation:d,distance:i,ignoreLocation:c})<=f?o=s:b=s,s=Math.floor((b-o)/2+o)}b=s;let u=Math.max(1,d-s+1),g=a?h:Math.min(d+s,h)+l,A=Array(g+2);A[g+1]=(1<<r)-1;for(let o=g;o>=u;o-=1){let a=o-1,s=n[t.charAt(a)];if(y&&(m[a]=+!!s),A[o]=(A[o+1]<<1|1)&s,r&&(A[o]|=(v[o+1]|v[o])<<1|1|v[o+1]),A[o]&M&&(w=FF(e,{errors:r,currentLocation:a,expectedLocation:d,distance:i,ignoreLocation:c}),w<=f)){if(f=w,p=a,p<=d)break;u=Math.max(1,2*d-p)}}if(FF(e,{errors:r+1,currentLocation:d,expectedLocation:d,distance:i,ignoreLocation:c})>f)break;v=A}const A={isMatch:p>=0,score:Math.max(.001,w)};if(y){const t=function(t=[],e=UF.minMatchCharLength){let n=[],r=-1,i=-1,o=0;for(let a=t.length;o<a;o+=1){let a=t[o];a&&-1===r?r=o:a||-1===r||(i=o-1,i-r+1>=e&&n.push([r,i]),r=-1)}return t[o-1]&&o-r>=e&&n.push([r,o-1]),n}(m,s);t.length?u&&(A.indices=t):A.isMatch=!1}return A}function HF(t){let e={};for(let n=0,r=t.length;n<r;n+=1){const i=t.charAt(n);e[i]=(e[i]||0)|1<<r-n-1}return e}class GF{constructor(t,{location:e=UF.location,threshold:n=UF.threshold,distance:r=UF.distance,includeMatches:i=UF.includeMatches,findAllMatches:o=UF.findAllMatches,minMatchCharLength:a=UF.minMatchCharLength,isCaseSensitive:s=UF.isCaseSensitive,ignoreLocation:u=UF.ignoreLocation}={}){if(this.options={location:e,threshold:n,distance:r,includeMatches:i,findAllMatches:o,minMatchCharLength:a,isCaseSensitive:s,ignoreLocation:u},this.pattern=s?t:t.toLowerCase(),this.chunks=[],!this.pattern.length)return;const c=(t,e)=>{this.chunks.push({pattern:t,alphabet:HF(t),startIndex:e})},l=this.pattern.length;if(l>32){let t=0;const e=l%32,n=l-e;for(;t<n;)c(this.pattern.substr(t,32),t),t+=32;if(e){const t=l-32;c(this.pattern.substr(t),t)}}else c(this.pattern,0)}searchIn(t){const{isCaseSensitive:e,includeMatches:n}=this.options;if(e||(t=t.toLowerCase()),this.pattern===t){let e={isMatch:!0,score:0};return n&&(e.indices=[[0,t.length-1]]),e}const{location:r,distance:i,threshold:o,findAllMatches:a,minMatchCharLength:s,ignoreLocation:u}=this.options;let c=[],l=0,h=!1;this.chunks.forEach((({pattern:e,alphabet:d,startIndex:f})=>{const{isMatch:p,score:y,indices:m}=VF(t,e,d,{location:r+f,distance:i,threshold:o,findAllMatches:a,minMatchCharLength:s,includeMatches:n,ignoreLocation:u});p&&(h=!0),l+=y,p&&m&&(c=[...c,...m])}));let d={isMatch:h,score:h?l/this.chunks.length:1};return h&&n&&(d.indices=c),d}}class qF{constructor(t){this.pattern=t}static isMultiMatch(t){return ZF(t,this.multiRegex)}static isSingleMatch(t){return ZF(t,this.singleRegex)}search(){}}function ZF(t,e){const n=t.match(e);return n?n[1]:null}class JF extends qF{constructor(t,{location:e=UF.location,threshold:n=UF.threshold,distance:r=UF.distance,includeMatches:i=UF.includeMatches,findAllMatches:o=UF.findAllMatches,minMatchCharLength:a=UF.minMatchCharLength,isCaseSensitive:s=UF.isCaseSensitive,ignoreLocation:u=UF.ignoreLocation}={}){super(t),this._bitapSearch=new GF(t,{location:e,threshold:n,distance:r,includeMatches:i,findAllMatches:o,minMatchCharLength:a,isCaseSensitive:s,ignoreLocation:u})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(t){return this._bitapSearch.searchIn(t)}}class XF extends qF{constructor(t){super(t)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(t){let e,n=0;const r=[],i=this.pattern.length;for(;(e=t.indexOf(this.pattern,n))>-1;)n=e+i,r.push([e,n-1]);const o=!!r.length;return{isMatch:o,score:o?0:1,indices:r}}}const KF=[class extends qF{constructor(t){super(t)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(t){const e=t===this.pattern;return{isMatch:e,score:e?0:1,indices:[0,this.pattern.length-1]}}},XF,class extends qF{constructor(t){super(t)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(t){const e=t.startsWith(this.pattern);return{isMatch:e,score:e?0:1,indices:[0,this.pattern.length-1]}}},class extends qF{constructor(t){super(t)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(t){const e=!t.startsWith(this.pattern);return{isMatch:e,score:e?0:1,indices:[0,t.length-1]}}},class extends qF{constructor(t){super(t)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(t){const e=!t.endsWith(this.pattern);return{isMatch:e,score:e?0:1,indices:[0,t.length-1]}}},class extends qF{constructor(t){super(t)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(t){const e=t.endsWith(this.pattern);return{isMatch:e,score:e?0:1,indices:[t.length-this.pattern.length,t.length-1]}}},class extends qF{constructor(t){super(t)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(t){const e=-1===t.indexOf(this.pattern);return{isMatch:e,score:e?0:1,indices:[0,t.length-1]}}},JF],$F=KF.length,tV=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/;const eV=new Set([JF.type,XF.type]);class nV{constructor(t,{isCaseSensitive:e=UF.isCaseSensitive,includeMatches:n=UF.includeMatches,minMatchCharLength:r=UF.minMatchCharLength,ignoreLocation:i=UF.ignoreLocation,findAllMatches:o=UF.findAllMatches,location:a=UF.location,threshold:s=UF.threshold,distance:u=UF.distance}={}){this.query=null,this.options={isCaseSensitive:e,includeMatches:n,minMatchCharLength:r,findAllMatches:o,ignoreLocation:i,location:a,threshold:s,distance:u},this.pattern=e?t:t.toLowerCase(),this.query=function(t,e={}){return t.split("|").map((t=>{let n=t.trim().split(tV).filter((t=>t&&!!t.trim())),r=[];for(let t=0,i=n.length;t<i;t+=1){const i=n[t];let o=!1,a=-1;for(;!o&&++a<$F;){const t=KF[a];let n=t.isMultiMatch(i);n&&(r.push(new t(n,e)),o=!0)}if(!o)for(a=-1;++a<$F;){const t=KF[a];let n=t.isSingleMatch(i);if(n){r.push(new t(n,e));break}}}return r}))}(this.pattern,this.options)}static condition(t,e){return e.useExtendedSearch}searchIn(t){const e=this.query;if(!e)return{isMatch:!1,score:1};const{includeMatches:n,isCaseSensitive:r}=this.options;t=r?t:t.toLowerCase();let i=0,o=[],a=0;for(let r=0,s=e.length;r<s;r+=1){const s=e[r];o.length=0,i=0;for(let e=0,r=s.length;e<r;e+=1){const r=s[e],{isMatch:u,indices:c,score:l}=r.search(t);if(!u){a=0,i=0,o.length=0;break}if(i+=1,a+=l,n){const t=r.constructor.type;eV.has(t)?o=[...o,...c]:o.push(c)}}if(i){let t={isMatch:!0,score:a/i};return n&&(t.indices=o),t}}return{isMatch:!1,score:1}}}const rV=[];function iV(t,e){for(let n=0,r=rV.length;n<r;n+=1){let r=rV[n];if(r.condition(t,e))return new r(t,e)}return new GF(t,e)}const oV="$and",aV="$or",sV="$path",uV="$val",cV=t=>!(!t[oV]&&!t[aV]),lV=t=>({[oV]:Object.keys(t).map((e=>({[e]:t[e]})))});function hV(t,e,{auto:n=!0}={}){const r=t=>{let i=Object.keys(t);const o=(t=>!!t[sV])(t);if(!o&&i.length>1&&!cV(t))return r(lV(t));if((t=>!kF(t)&&jF(t)&&!cV(t))(t)){const r=o?t[sV]:i[0],a=o?t[uV]:t[r];if(!TF(a))throw new Error((t=>`Invalid value for key ${t}`)(r));const s={keyId:RF(r),pattern:a};return n&&(s.searcher=iV(a,e)),s}let a={children:[],operator:i[0]};return i.forEach((e=>{const n=t[e];kF(n)&&n.forEach((t=>{a.children.push(r(t))}))})),a};return cV(t)||(t=lV(t)),r(t)}function dV(t,e){const n=t.matches;e.matches=[],DF(n)&&n.forEach((t=>{if(!DF(t.indices)||!t.indices.length)return;const{indices:n,value:r}=t;let i={indices:n,value:r};t.key&&(i.key=t.key.src),t.idx>-1&&(i.refIndex=t.idx),e.matches.push(i)}))}function fV(t,e){e.score=t.score}class pV{constructor(t,e={},n){this.options={...UF,...e},this.options.useExtendedSearch,this._keyStore=new PF(this.options.keys),this.setCollection(t,n)}setCollection(t,e){if(this._docs=t,e&&!(e instanceof YF))throw new Error("Incorrect 'index' type");this._myIndex=e||WF(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(t){DF(t)&&(this._docs.push(t),this._myIndex.add(t))}remove(t=(()=>!1)){const e=[];for(let n=0,r=this._docs.length;n<r;n+=1){const i=this._docs[n];t(i,n)&&(this.removeAt(n),n-=1,r-=1,e.push(i))}return e}removeAt(t){this._docs.splice(t,1),this._myIndex.removeAt(t)}getIndex(){return this._myIndex}search(t,{limit:e=-1}={}){const{includeMatches:n,includeScore:r,shouldSort:i,sortFn:o,ignoreFieldNorm:a}=this.options;let s=TF(t)?TF(this._docs[0])?this._searchStringList(t):this._searchObjectList(t):this._searchLogical(t);return function(t,{ignoreFieldNorm:e=UF.ignoreFieldNorm}){t.forEach((t=>{let n=1;t.matches.forEach((({key:t,norm:r,score:i})=>{const o=t?t.weight:null;n*=Math.pow(0===i&&o?Number.EPSILON:i,(o||1)*(e?1:r))})),t.score=n}))}(s,{ignoreFieldNorm:a}),i&&s.sort(o),LF(e)&&e>-1&&(s=s.slice(0,e)),function(t,e,{includeMatches:n=UF.includeMatches,includeScore:r=UF.includeScore}={}){const i=[];return n&&i.push(dV),r&&i.push(fV),t.map((t=>{const{idx:n}=t,r={item:e[n],refIndex:n};return i.length&&i.forEach((e=>{e(t,r)})),r}))}(s,this._docs,{includeMatches:n,includeScore:r})}_searchStringList(t){const e=iV(t,this.options),{records:n}=this._myIndex,r=[];return n.forEach((({v:t,i:n,n:i})=>{if(!DF(t))return;const{isMatch:o,score:a,indices:s}=e.searchIn(t);o&&r.push({item:t,idx:n,matches:[{score:a,value:t,norm:i,indices:s}]})})),r}_searchLogical(t){const e=hV(t,this.options),n=(t,e,r)=>{if(!t.children){const{keyId:n,searcher:i}=t,o=this._findMatches({key:this._keyStore.get(n),value:this._myIndex.getValueForItemAtKeyId(e,n),searcher:i});return o&&o.length?[{idx:r,item:e,matches:o}]:[]}const i=[];for(let o=0,a=t.children.length;o<a;o+=1){const a=t.children[o],s=n(a,e,r);if(s.length)i.push(...s);else if(t.operator===oV)return[]}return i},r=this._myIndex.records,i={},o=[];return r.forEach((({$:t,i:r})=>{if(DF(t)){let a=n(e,t,r);a.length&&(i[r]||(i[r]={idx:r,item:t,matches:[]},o.push(i[r])),a.forEach((({matches:t})=>{i[r].matches.push(...t)})))}})),o}_searchObjectList(t){const e=iV(t,this.options),{keys:n,records:r}=this._myIndex,i=[];return r.forEach((({$:t,i:r})=>{if(!DF(t))return;let o=[];n.forEach(((n,r)=>{o.push(...this._findMatches({key:n,value:t[r],searcher:e}))})),o.length&&i.push({idx:r,item:t,matches:o})})),i}_findMatches({key:t,value:e,searcher:n}){if(!DF(e))return[];let r=[];if(kF(e))e.forEach((({v:e,i:i,n:o})=>{if(!DF(e))return;const{isMatch:a,score:s,indices:u}=n.searchIn(e);a&&r.push({score:s,key:t,value:e,idx:i,norm:o,indices:u})}));else{const{v:i,n:o}=e,{isMatch:a,score:s,indices:u}=n.searchIn(i);a&&r.push({score:s,key:t,value:i,norm:o,indices:u})}return r}}
127
+ Zf((function(t,e){}));var rF=Zf((function(t){!function t(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(t){console.error(t)}}(),t.exports=nF}));const iF="/Users/sebastian/Work/DePay/react-dialog/src/components/Dialog.jsx";class oF extends ek.Component{constructor(t){super(t),this.handler=this.onKeyDown.bind(this),this.state={open:!0}}closeDialog(){this.props.close()}onKeyDown(t){"Escape"===t.key&&this.closeDialog()}componentDidUpdate(t){!1===this.props.open&&!0===t.open&&this.setState({open:!1})}onClickBackground(t){this.closeDialog()}componentDidMount(){!1===this.props.animate?this.setState({open:!0}):this.setState({open:!1},(()=>{setTimeout((()=>{this.setState({open:!0})}),10)})),this.props.document.addEventListener("keydown",this.handler,!0)}componentWillUnmount(){this.props.document.removeEventListener("keydown",this.handler,!0)}render(){const t=["ReactDialog",this.state.open?"ReactDialogOpen":""],e=`\n .ReactDialog {\n bottom: 0;\n display: flex;\n height: 100%;\n height: 100vh;\n left: 0;\n min-height: 100%;\n min-height: 100vh;\n overflow: hidden;\n position: fixed;\n right: 0;\n top: 0;\n width: 100%;\n width: 100vw;\n }\n\n .ReactDialogInner {\n align-items: center;\n display: flex;\n flex: 1;\n justify-content: center;\n }\n\n .ReactDialogBackground {\n background: ${"object"==typeof(n={background:this.props.background})&&n.background?n.background:"rgba(0,0,0,0.4)"};\n bottom: 0;\n display: block;\n height: 100%;\n left: 0;\n opacity: 0;\n position: fixed;\n right: 0;\n top: 0;\n transition: opacity 0.4s ease;\n width: 100%;\n }\n\n .ReactDialog.ReactDialogOpen .ReactDialogBackground {\n opacity: 1;\n }\n\n .ReactDialogAnimation {\n display: inline-block;\n position: relative;\n opacity: 0;\n top: -17vh;\n transition: opacity 0.4s ease, top 0.4s ease;\n }\n\n .ReactDialog.ReactDialogOpen .ReactDialogAnimation {\n opacity: 1.0;\n top: -5vh;\n }\n `;var n;return ek.createElement("div",{key:this.props.dialogKey,className:t.join(" "),__self:this,__source:{fileName:iF,lineNumber:59}},ek.createElement("style",{__self:this,__source:{fileName:iF,lineNumber:60}},e),ek.createElement("div",{className:"ReactDialogInner",__self:this,__source:{fileName:iF,lineNumber:61}},ek.createElement("div",{className:"ReactDialogBackground",onClick:this.onClickBackground.bind(this),__self:this,__source:{fileName:iF,lineNumber:62}}),this.props.children))}}class aF extends ek.Component{constructor(t){super(t),this.state={open:t.open}}componentDidUpdate(t){!1===this.props.open&&!0===t.open?setTimeout((()=>{this.setState({open:!1})}),400):!0===this.props.open&&!1===t.open&&this.setState({open:!0})}render(){let t=this.props.document||document,e=this.props.container||t.body;return this.state.open?rF.createPortal(ek.createElement(oF,{background:this.props.background,close:this.props.close,document:t,open:this.props.open,animate:this.props.animate,__self:this,__source:{fileName:"/Users/sebastian/Work/DePay/react-dialog/src/index.jsx",lineNumber:29}},this.props.children),e):null}}var sF=ek.createContext(),uF=ek.createContext();var cF=ek.createContext();const lF="/Users/sebastian/Work/DePay/react-dialog-stack/src/index.jsx";class hF extends ek.Component{constructor(t){if(super(t),t.setNavigator&&t.setNavigator(this),t.stacked){const e="string"==typeof t.stacked?t.stacked:"forward";this.state={stack:[],animating:!1,animation:null,direction:e,animationSpeed:200},setTimeout((()=>this.navigate(t.start,e)),10)}else this.state={stack:[t.start],animating:!1,animation:null,direction:"forward",animationSpeed:200}}set(t){this.setState({stack:t})}hide(t="forward"){"backward"===t?(this.setState({stack:[null,...this.state.stack]}),setTimeout((()=>this.navigate("back")),10)):this.navigate(null)}navigate(t,e="forward"){if(!(this.state.stack.indexOf(t)>-1))return"back"===t?this.unstack():void this.setState({stack:this.state.stack.concat(t),animating:!0,direction:e,animation:setTimeout(function(){this.setState({animating:!1})}.bind(this),this.state.animationSpeed)})}unstack(){if(this.state.stack.length<=1)return;let t=[...this.state.stack];t.pop(),this.setState({animating:!0,direction:"backward",animation:setTimeout(function(){this.setState({stack:t,animating:!1})}.bind(this),this.state.animationSpeed)})}classForState(t){if(!this.state.animating)return 1===this.state.stack.length||this.state.stack.length===t+1?"active":"inactive"}classForPosition(t){return this.state.stack.length>1?this.state.stack.length===t+1?"forward"===this.state.direction?"next":"previous":this.state.stack.length-1===t+1?"forward"===this.state.direction?"previous":"next":"stale":this.state.animating&&this.props.stacked&&0===t?"next":void 0}classForAnimation(){if(this.state.animating)return"animating"}classForDirection(){return this.state.direction}renderStack(){return this.state.stack.map(function(t,e){let n=[this.classForState(e),this.classForPosition(e),this.classForAnimation(),this.classForDirection()];return ek.createElement("div",{key:e,className:["ReactDialogStack"].concat(n).join(" "),onClick:this.onClick.bind(this),__self:this,__source:{fileName:lF,lineNumber:153}},ek.createElement(uF.Provider,{value:{navigate:this.navigate.bind(this),set:this.set.bind(this),hide:this.hide.bind(this)},__self:this,__source:{fileName:lF,lineNumber:158}},ek.createElement(sF.Provider,{value:this.close.bind(this),__self:this,__source:{fileName:lF,lineNumber:161}},ek.createElement(cF.Provider,{value:this.state.stack,__self:this,__source:{fileName:lF,lineNumber:162}},ek.createElement("div",{className:"ReactDialogAnimation",__self:this,__source:{fileName:lF,lineNumber:163}},this.props.dialogs[t])))))}.bind(this))}onClick(t){t.target&&t.target.className&&t.target.className.match&&t.target.className.match("ReactDialogStack")&&(this.state.stack.length>1?this.unstack():this.close())}close(t){this.state.stack.length>1&&!t?this.unstack():(this.props.close(),setTimeout((()=>this.setState({stack:this.state.stack.slice(0,1)})),400))}render(){return ek.createElement(aF,{close:this.close.bind(this),open:this.props.open,document:this.props.document,container:this.props.container,animate:!this.props.stacked,background:this.props.background,__self:this,__source:{fileName:lF,lineNumber:199}},ek.createElement("style",{__self:this,__source:{fileName:lF,lineNumber:207}},"\n\n .ReactDialogStack {\n align-items: center;\n bottom: 0;\n display: flex;\n flex: 1;\n height: 100%;\n justify-content: center;\n position: absolute;\n top: 0;\n transition: left 0.1s ease, opacity 0.2s ease;\n width: 100%;\n }\n\n .ReactDialogStackRow {\n display: table-row;\n }\n\n .ReactDialogStackCell {\n display: table-cell;\n vertical-align: middle;\n padding: 0 0.6rem;\n }\n\n .ReactDialogStack {\n left: 0;\n opacity: 1;\n }\n\n .ReactDialogStack.inactive {\n display: none;\n }\n\n .ReactDialogStack.animating.stale {\n display: none;\n }\n\n .ReactDialogStack.animating.previous.forward {\n opacity: 0;\n left: -5rem;\n }\n\n .ReactDialogStack.animating.previous.backward {\n opacity: 0;\n left: 5rem;\n }\n\n .ReactDialogStack.animating.next.forward {\n opacity: 0;\n left: 5rem;\n }\n\n .ReactDialogStack.animating.next.backward {\n opacity: 0;\n left: -5rem;\n }\n "),this.renderStack())}}var dF=function(t){var e=ek.useContext(uF).navigate,n=ek.useContext(nk),r=n.close,i=n.closable;return ek.createElement("div",{className:["Dialog",t.className].join(" ")},ek.createElement("div",{className:["DialogHeader",t.stacked?"TextCenter":""].join(" ")},t.stacked&&ek.createElement("div",{className:"DialogHeaderActionLeft PaddingTopS PaddingLeftS PaddingRightS"},ek.createElement("button",{type:"button",onClick:function(){return e("back")},className:"ButtonCircular",title:"Go back"},ek.createElement(iC,null))),i&&!1!==t.closable&&ek.createElement("div",{className:"DialogHeaderActionRight PaddingTopS PaddingLeftS PaddingRightS"},t.alternativeHeaderAction,ek.createElement("button",{type:"button",onClick:r,className:"ButtonCircular",title:"Close dialog"},ek.createElement(oC,null))),t.header),ek.createElement("div",{ref:t.bodyRef,className:["DialogBody",t.bodyClassName].join(" ")},t.body),!1!==t.footer&&ek.createElement("div",{className:"DialogFooter"},t.footer))},fF=function(){return"undefined"!=typeof window&&Boolean(window.matchMedia("(pointer:coarse)").matches||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/.test(navigator.userAgent))},pF=qf(Zf((function(t,e){self,t.exports=(()=>{var t={192:(t,e)=>{var n,r,i=function(){var t=function(t,e){var n=t,r=a[e],i=null,o=0,u=null,m=[],g={},w=function(t,e){i=function(t){for(var e=new Array(t),n=0;n<t;n+=1){e[n]=new Array(t);for(var r=0;r<t;r+=1)e[n][r]=null}return e}(o=4*n+17),b(0,0),b(o-7,0),b(0,o-7),A(),M(),N(t,e),n>=7&&I(t),null==u&&(u=x(n,r,m)),E(u,e)},b=function(t,e){for(var n=-1;n<=7;n+=1)if(!(t+n<=-1||o<=t+n))for(var r=-1;r<=7;r+=1)e+r<=-1||o<=e+r||(i[t+n][e+r]=0<=n&&n<=6&&(0==r||6==r)||0<=r&&r<=6&&(0==n||6==n)||2<=n&&n<=4&&2<=r&&r<=4)},M=function(){for(var t=8;t<o-8;t+=1)null==i[t][6]&&(i[t][6]=t%2==0);for(var e=8;e<o-8;e+=1)null==i[6][e]&&(i[6][e]=e%2==0)},A=function(){for(var t=s.getPatternPosition(n),e=0;e<t.length;e+=1)for(var r=0;r<t.length;r+=1){var o=t[e],a=t[r];if(null==i[o][a])for(var u=-2;u<=2;u+=1)for(var c=-2;c<=2;c+=1)i[o+u][a+c]=-2==u||2==u||-2==c||2==c||0==u&&0==c}},I=function(t){for(var e=s.getBCHTypeNumber(n),r=0;r<18;r+=1){var a=!t&&1==(e>>r&1);i[Math.floor(r/3)][r%3+o-8-3]=a}for(r=0;r<18;r+=1)a=!t&&1==(e>>r&1),i[r%3+o-8-3][Math.floor(r/3)]=a},N=function(t,e){for(var n=r<<3|e,a=s.getBCHTypeInfo(n),u=0;u<15;u+=1){var c=!t&&1==(a>>u&1);u<6?i[u][8]=c:u<8?i[u+1][8]=c:i[o-15+u][8]=c}for(u=0;u<15;u+=1)c=!t&&1==(a>>u&1),u<8?i[8][o-u-1]=c:u<9?i[8][15-u-1+1]=c:i[8][15-u-1]=c;i[o-8][8]=!t},E=function(t,e){for(var n=-1,r=o-1,a=7,u=0,c=s.getMaskFunction(e),l=o-1;l>0;l-=2)for(6==l&&(l-=1);;){for(var h=0;h<2;h+=1)if(null==i[r][l-h]){var d=!1;u<t.length&&(d=1==(t[u]>>>a&1)),c(r,l-h)&&(d=!d),i[r][l-h]=d,-1==(a-=1)&&(u+=1,a=7)}if((r+=n)<0||o<=r){r-=n,n=-n;break}}},x=function(t,e,n){for(var r=l.getRSBlocks(t,e),i=h(),o=0;o<n.length;o+=1){var a=n[o];i.put(a.getMode(),4),i.put(a.getLength(),s.getLengthInBits(a.getMode(),t)),a.write(i)}var u=0;for(o=0;o<r.length;o+=1)u+=r[o].dataCount;if(i.getLengthInBits()>8*u)throw"code length overflow. ("+i.getLengthInBits()+">"+8*u+")";for(i.getLengthInBits()+4<=8*u&&i.put(0,4);i.getLengthInBits()%8!=0;)i.putBit(!1);for(;!(i.getLengthInBits()>=8*u||(i.put(236,8),i.getLengthInBits()>=8*u));)i.put(17,8);return function(t,e){for(var n=0,r=0,i=0,o=new Array(e.length),a=new Array(e.length),u=0;u<e.length;u+=1){var l=e[u].dataCount,h=e[u].totalCount-l;r=Math.max(r,l),i=Math.max(i,h),o[u]=new Array(l);for(var d=0;d<o[u].length;d+=1)o[u][d]=255&t.getBuffer()[d+n];n+=l;var f=s.getErrorCorrectPolynomial(h),p=c(o[u],f.getLength()-1).mod(f);for(a[u]=new Array(f.getLength()-1),d=0;d<a[u].length;d+=1){var y=d+p.getLength()-a[u].length;a[u][d]=y>=0?p.getAt(y):0}}var m=0;for(d=0;d<e.length;d+=1)m+=e[d].totalCount;var g=new Array(m),v=0;for(d=0;d<r;d+=1)for(u=0;u<e.length;u+=1)d<o[u].length&&(g[v]=o[u][d],v+=1);for(d=0;d<i;d+=1)for(u=0;u<e.length;u+=1)d<a[u].length&&(g[v]=a[u][d],v+=1);return g}(i,r)};g.addData=function(t,e){var n=null;switch(e=e||"Byte"){case"Numeric":n=d(t);break;case"Alphanumeric":n=f(t);break;case"Byte":n=p(t);break;case"Kanji":n=y(t);break;default:throw"mode:"+e}m.push(n),u=null},g.isDark=function(t,e){if(t<0||o<=t||e<0||o<=e)throw t+","+e;return i[t][e]},g.getModuleCount=function(){return o},g.make=function(){if(n<1){for(var t=1;t<40;t++){for(var e=l.getRSBlocks(t,r),i=h(),o=0;o<m.length;o++){var a=m[o];i.put(a.getMode(),4),i.put(a.getLength(),s.getLengthInBits(a.getMode(),t)),a.write(i)}var u=0;for(o=0;o<e.length;o++)u+=e[o].dataCount;if(i.getLengthInBits()<=8*u)break}n=t}w(!1,function(){for(var t=0,e=0,n=0;n<8;n+=1){w(!0,n);var r=s.getLostPoint(g);(0==n||t>r)&&(t=r,e=n)}return e}())},g.createTableTag=function(t,e){t=t||2;var n="";n+='<table style="',n+=" border-width: 0px; border-style: none;",n+=" border-collapse: collapse;",n+=" padding: 0px; margin: "+(e=void 0===e?4*t:e)+"px;",n+='">',n+="<tbody>";for(var r=0;r<g.getModuleCount();r+=1){n+="<tr>";for(var i=0;i<g.getModuleCount();i+=1)n+='<td style="',n+=" border-width: 0px; border-style: none;",n+=" border-collapse: collapse;",n+=" padding: 0px; margin: 0px;",n+=" width: "+t+"px;",n+=" height: "+t+"px;",n+=" background-color: ",n+=g.isDark(r,i)?"#000000":"#ffffff",n+=";",n+='"/>';n+="</tr>"}return(n+="</tbody>")+"</table>"},g.createSvgTag=function(t,e,n,r){var i={};"object"==typeof arguments[0]&&(t=(i=arguments[0]).cellSize,e=i.margin,n=i.alt,r=i.title),t=t||2,e=void 0===e?4*t:e,(n="string"==typeof n?{text:n}:n||{}).text=n.text||null,n.id=n.text?n.id||"qrcode-description":null,(r="string"==typeof r?{text:r}:r||{}).text=r.text||null,r.id=r.text?r.id||"qrcode-title":null;var o,a,s,u,c=g.getModuleCount()*t+2*e,l="";for(u="l"+t+",0 0,"+t+" -"+t+",0 0,-"+t+"z ",l+='<svg version="1.1" xmlns="http://www.w3.org/2000/svg"',l+=i.scalable?"":' width="'+c+'px" height="'+c+'px"',l+=' viewBox="0 0 '+c+" "+c+'" ',l+=' preserveAspectRatio="xMinYMin meet"',l+=r.text||n.text?' role="img" aria-labelledby="'+k([r.id,n.id].join(" ").trim())+'"':"",l+=">",l+=r.text?'<title id="'+k(r.id)+'">'+k(r.text)+"</title>":"",l+=n.text?'<description id="'+k(n.id)+'">'+k(n.text)+"</description>":"",l+='<rect width="100%" height="100%" fill="white" cx="0" cy="0"/>',l+='<path d="',a=0;a<g.getModuleCount();a+=1)for(s=a*t+e,o=0;o<g.getModuleCount();o+=1)g.isDark(a,o)&&(l+="M"+(o*t+e)+","+s+u);return(l+='" stroke="transparent" fill="black"/>')+"</svg>"},g.createDataURL=function(t,e){t=t||2,e=void 0===e?4*t:e;var n=g.getModuleCount()*t+2*e,r=e,i=n-e;return v(n,n,(function(e,n){if(r<=e&&e<i&&r<=n&&n<i){var o=Math.floor((e-r)/t),a=Math.floor((n-r)/t);return g.isDark(a,o)?0:1}return 1}))},g.createImgTag=function(t,e,n){t=t||2,e=void 0===e?4*t:e;var r=g.getModuleCount()*t+2*e,i="";return i+="<img",i+=' src="',i+=g.createDataURL(t,e),i+='"',i+=' width="',i+=r,i+='"',i+=' height="',i+=r,i+='"',n&&(i+=' alt="',i+=k(n),i+='"'),i+"/>"};var k=function(t){for(var e="",n=0;n<t.length;n+=1){var r=t.charAt(n);switch(r){case"<":e+="&lt;";break;case">":e+="&gt;";break;case"&":e+="&amp;";break;case'"':e+="&quot;";break;default:e+=r}}return e};return g.createASCII=function(t,e){if((t=t||1)<2)return function(t){t=void 0===t?2:t;var e,n,r,i,o,a=1*g.getModuleCount()+2*t,s=t,u=a-t,c={"██":"█","█ ":"▀"," █":"▄"," ":" "},l={"██":"▀","█ ":"▀"," █":" "," ":" "},h="";for(e=0;e<a;e+=2){for(r=Math.floor((e-s)/1),i=Math.floor((e+1-s)/1),n=0;n<a;n+=1)o="█",s<=n&&n<u&&s<=e&&e<u&&g.isDark(r,Math.floor((n-s)/1))&&(o=" "),s<=n&&n<u&&s<=e+1&&e+1<u&&g.isDark(i,Math.floor((n-s)/1))?o+=" ":o+="█",h+=t<1&&e+1>=u?l[o]:c[o];h+="\n"}return a%2&&t>0?h.substring(0,h.length-a-1)+Array(a+1).join("▀"):h.substring(0,h.length-1)}(e);t-=1,e=void 0===e?2*t:e;var n,r,i,o,a=g.getModuleCount()*t+2*e,s=e,u=a-e,c=Array(t+1).join("██"),l=Array(t+1).join(" "),h="",d="";for(n=0;n<a;n+=1){for(i=Math.floor((n-s)/t),d="",r=0;r<a;r+=1)o=1,s<=r&&r<u&&s<=n&&n<u&&g.isDark(i,Math.floor((r-s)/t))&&(o=0),d+=o?c:l;for(i=0;i<t;i+=1)h+=d+"\n"}return h.substring(0,h.length-1)},g.renderTo2dContext=function(t,e){e=e||2;for(var n=g.getModuleCount(),r=0;r<n;r++)for(var i=0;i<n;i++)t.fillStyle=g.isDark(r,i)?"black":"white",t.fillRect(r*e,i*e,e,e)},g};t.stringToBytes=(t.stringToBytesFuncs={default:function(t){for(var e=[],n=0;n<t.length;n+=1){var r=t.charCodeAt(n);e.push(255&r)}return e}}).default,t.createStringToBytes=function(t,e){var n=function(){for(var n=g(t),r=function(){var t=n.read();if(-1==t)throw"eof";return t},i=0,o={};;){var a=n.read();if(-1==a)break;var s=r(),u=r()<<8|r();o[String.fromCharCode(a<<8|s)]=u,i+=1}if(i!=e)throw i+" != "+e;return o}(),r="?".charCodeAt(0);return function(t){for(var e=[],i=0;i<t.length;i+=1){var o=t.charCodeAt(i);if(o<128)e.push(o);else{var a=n[t.charAt(i)];"number"==typeof a?(255&a)==a?e.push(a):(e.push(a>>>8),e.push(255&a)):e.push(r)}}return e}};var e,n,r,i,o,a={L:1,M:0,Q:3,H:2},s=(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]],n=1335,r=7973,o=function(t){for(var e=0;0!=t;)e+=1,t>>>=1;return e},(i={}).getBCHTypeInfo=function(t){for(var e=t<<10;o(e)-o(n)>=0;)e^=n<<o(e)-o(n);return 21522^(t<<10|e)},i.getBCHTypeNumber=function(t){for(var e=t<<12;o(e)-o(r)>=0;)e^=r<<o(e)-o(r);return t<<12|e},i.getPatternPosition=function(t){return e[t-1]},i.getMaskFunction=function(t){switch(t){case 0:return function(t,e){return(t+e)%2==0};case 1:return function(t,e){return t%2==0};case 2:return function(t,e){return e%3==0};case 3:return function(t,e){return(t+e)%3==0};case 4:return function(t,e){return(Math.floor(t/2)+Math.floor(e/3))%2==0};case 5:return function(t,e){return t*e%2+t*e%3==0};case 6:return function(t,e){return(t*e%2+t*e%3)%2==0};case 7:return function(t,e){return(t*e%3+(t+e)%2)%2==0};default:throw"bad maskPattern:"+t}},i.getErrorCorrectPolynomial=function(t){for(var e=c([1],0),n=0;n<t;n+=1)e=e.multiply(c([1,u.gexp(n)],0));return e},i.getLengthInBits=function(t,e){if(1<=e&&e<10)switch(t){case 1:return 10;case 2:return 9;case 4:case 8:return 8;default:throw"mode:"+t}else if(e<27)switch(t){case 1:return 12;case 2:return 11;case 4:return 16;case 8:return 10;default:throw"mode:"+t}else{if(!(e<41))throw"type:"+e;switch(t){case 1:return 14;case 2:return 13;case 4:return 16;case 8:return 12;default:throw"mode:"+t}}},i.getLostPoint=function(t){for(var e=t.getModuleCount(),n=0,r=0;r<e;r+=1)for(var i=0;i<e;i+=1){for(var o=0,a=t.isDark(r,i),s=-1;s<=1;s+=1)if(!(r+s<0||e<=r+s))for(var u=-1;u<=1;u+=1)i+u<0||e<=i+u||0==s&&0==u||a==t.isDark(r+s,i+u)&&(o+=1);o>5&&(n+=3+o-5)}for(r=0;r<e-1;r+=1)for(i=0;i<e-1;i+=1){var c=0;t.isDark(r,i)&&(c+=1),t.isDark(r+1,i)&&(c+=1),t.isDark(r,i+1)&&(c+=1),t.isDark(r+1,i+1)&&(c+=1),0!=c&&4!=c||(n+=3)}for(r=0;r<e;r+=1)for(i=0;i<e-6;i+=1)t.isDark(r,i)&&!t.isDark(r,i+1)&&t.isDark(r,i+2)&&t.isDark(r,i+3)&&t.isDark(r,i+4)&&!t.isDark(r,i+5)&&t.isDark(r,i+6)&&(n+=40);for(i=0;i<e;i+=1)for(r=0;r<e-6;r+=1)t.isDark(r,i)&&!t.isDark(r+1,i)&&t.isDark(r+2,i)&&t.isDark(r+3,i)&&t.isDark(r+4,i)&&!t.isDark(r+5,i)&&t.isDark(r+6,i)&&(n+=40);var l=0;for(i=0;i<e;i+=1)for(r=0;r<e;r+=1)t.isDark(r,i)&&(l+=1);return n+Math.abs(100*l/e/e-50)/5*10},i),u=function(){for(var t=new Array(256),e=new Array(256),n=0;n<8;n+=1)t[n]=1<<n;for(n=8;n<256;n+=1)t[n]=t[n-4]^t[n-5]^t[n-6]^t[n-8];for(n=0;n<255;n+=1)e[t[n]]=n;return{glog:function(t){if(t<1)throw"glog("+t+")";return e[t]},gexp:function(e){for(;e<0;)e+=255;for(;e>=256;)e-=255;return t[e]}}}();function c(t,e){if(void 0===t.length)throw t.length+"/"+e;var n=function(){for(var n=0;n<t.length&&0==t[n];)n+=1;for(var r=new Array(t.length-n+e),i=0;i<t.length-n;i+=1)r[i]=t[i+n];return r}(),r={getAt:function(t){return n[t]},getLength:function(){return n.length},multiply:function(t){for(var e=new Array(r.getLength()+t.getLength()-1),n=0;n<r.getLength();n+=1)for(var i=0;i<t.getLength();i+=1)e[n+i]^=u.gexp(u.glog(r.getAt(n))+u.glog(t.getAt(i)));return c(e,0)},mod:function(t){if(r.getLength()-t.getLength()<0)return r;for(var e=u.glog(r.getAt(0))-u.glog(t.getAt(0)),n=new Array(r.getLength()),i=0;i<r.getLength();i+=1)n[i]=r.getAt(i);for(i=0;i<t.getLength();i+=1)n[i]^=u.gexp(u.glog(t.getAt(i))+e);return c(n,0).mod(t)}};return r}var l=function(){var t=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],e=function(t,e){var n={};return n.totalCount=t,n.dataCount=e,n};return{getRSBlocks:function(n,r){var i=function(e,n){switch(n){case a.L:return t[4*(e-1)+0];case a.M:return t[4*(e-1)+1];case a.Q:return t[4*(e-1)+2];case a.H:return t[4*(e-1)+3];default:return}}(n,r);if(void 0===i)throw"bad rs block @ typeNumber:"+n+"/errorCorrectionLevel:"+r;for(var o=i.length/3,s=[],u=0;u<o;u+=1)for(var c=i[3*u+0],l=i[3*u+1],h=i[3*u+2],d=0;d<c;d+=1)s.push(e(l,h));return s}}}(),h=function(){var t=[],e=0,n={getBuffer:function(){return t},getAt:function(e){var n=Math.floor(e/8);return 1==(t[n]>>>7-e%8&1)},put:function(t,e){for(var r=0;r<e;r+=1)n.putBit(1==(t>>>e-r-1&1))},getLengthInBits:function(){return e},putBit:function(n){var r=Math.floor(e/8);t.length<=r&&t.push(0),n&&(t[r]|=128>>>e%8),e+=1}};return n},d=function(t){var e=t,n={getMode:function(){return 1},getLength:function(t){return e.length},write:function(t){for(var n=e,i=0;i+2<n.length;)t.put(r(n.substring(i,i+3)),10),i+=3;i<n.length&&(n.length-i==1?t.put(r(n.substring(i,i+1)),4):n.length-i==2&&t.put(r(n.substring(i,i+2)),7))}},r=function(t){for(var e=0,n=0;n<t.length;n+=1)e=10*e+i(t.charAt(n));return e},i=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-"0".charCodeAt(0);throw"illegal char :"+t};return n},f=function(t){var e=t,n={getMode:function(){return 2},getLength:function(t){return e.length},write:function(t){for(var n=e,i=0;i+1<n.length;)t.put(45*r(n.charAt(i))+r(n.charAt(i+1)),11),i+=2;i<n.length&&t.put(r(n.charAt(i)),6)}},r=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-"0".charCodeAt(0);if("A"<=t&&t<="Z")return t.charCodeAt(0)-"A".charCodeAt(0)+10;switch(t){case" ":return 36;case"$":return 37;case"%":return 38;case"*":return 39;case"+":return 40;case"-":return 41;case".":return 42;case"/":return 43;case":":return 44;default:throw"illegal char :"+t}};return n},p=function(e){var n=t.stringToBytes(e);return{getMode:function(){return 4},getLength:function(t){return n.length},write:function(t){for(var e=0;e<n.length;e+=1)t.put(n[e],8)}}},y=function(e){var n=t.stringToBytesFuncs.SJIS;if(!n)throw"sjis not supported.";!function(t,e){var r=n("友");if(2!=r.length||38726!=(r[0]<<8|r[1]))throw"sjis not supported."}();var r=n(e);return{getMode:function(){return 8},getLength:function(t){return~~(r.length/2)},write:function(t){for(var e=r,n=0;n+1<e.length;){var i=(255&e[n])<<8|255&e[n+1];if(33088<=i&&i<=40956)i-=33088;else{if(!(57408<=i&&i<=60351))throw"illegal char at "+(n+1)+"/"+i;i-=49472}i=192*(i>>>8&255)+(255&i),t.put(i,13),n+=2}if(n<e.length)throw"illegal char at "+(n+1)}}},m=function(){var t=[],e={writeByte:function(e){t.push(255&e)},writeShort:function(t){e.writeByte(t),e.writeByte(t>>>8)},writeBytes:function(t,n,r){n=n||0,r=r||t.length;for(var i=0;i<r;i+=1)e.writeByte(t[i+n])},writeString:function(t){for(var n=0;n<t.length;n+=1)e.writeByte(t.charCodeAt(n))},toByteArray:function(){return t},toString:function(){var e="";e+="[";for(var n=0;n<t.length;n+=1)n>0&&(e+=","),e+=t[n];return e+"]"}};return e},g=function(t){var e=t,n=0,r=0,i=0,o={read:function(){for(;i<8;){if(n>=e.length){if(0==i)return-1;throw"unexpected end of file./"+i}var t=e.charAt(n);if(n+=1,"="==t)return i=0,-1;t.match(/^\s$/)||(r=r<<6|a(t.charCodeAt(0)),i+=6)}var o=r>>>i-8&255;return i-=8,o}},a=function(t){if(65<=t&&t<=90)return t-65;if(97<=t&&t<=122)return t-97+26;if(48<=t&&t<=57)return t-48+52;if(43==t)return 62;if(47==t)return 63;throw"c:"+t};return o},v=function(t,e,n){for(var r=function(t,e){var n=t,r=e,i=new Array(t*e),o={setPixel:function(t,e,r){i[e*n+t]=r},write:function(t){t.writeString("GIF87a"),t.writeShort(n),t.writeShort(r),t.writeByte(128),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(255),t.writeByte(255),t.writeByte(255),t.writeString(","),t.writeShort(0),t.writeShort(0),t.writeShort(n),t.writeShort(r),t.writeByte(0);var e=a(2);t.writeByte(2);for(var i=0;e.length-i>255;)t.writeByte(255),t.writeBytes(e,i,255),i+=255;t.writeByte(e.length-i),t.writeBytes(e,i,e.length-i),t.writeByte(0),t.writeString(";")}},a=function(t){for(var e=1<<t,n=1+(1<<t),r=t+1,o=s(),a=0;a<e;a+=1)o.add(String.fromCharCode(a));o.add(String.fromCharCode(e)),o.add(String.fromCharCode(n));var u,c,l,h=m(),d=(u=h,c=0,l=0,{write:function(t,e){if(t>>>e!=0)throw"length over";for(;c+e>=8;)u.writeByte(255&(t<<c|l)),e-=8-c,t>>>=8-c,l=0,c=0;l|=t<<c,c+=e},flush:function(){c>0&&u.writeByte(l)}});d.write(e,r);var f=0,p=String.fromCharCode(i[f]);for(f+=1;f<i.length;){var y=String.fromCharCode(i[f]);f+=1,o.contains(p+y)?p+=y:(d.write(o.indexOf(p),r),o.size()<4095&&(o.size()==1<<r&&(r+=1),o.add(p+y)),p=y)}return d.write(o.indexOf(p),r),d.write(n,r),d.flush(),h.toByteArray()},s=function(){var t={},e=0,n={add:function(r){if(n.contains(r))throw"dup key:"+r;t[r]=e,e+=1},size:function(){return e},indexOf:function(e){return t[e]},contains:function(e){return void 0!==t[e]}};return n};return o}(t,e),i=0;i<e;i+=1)for(var o=0;o<t;o+=1)r.setPixel(o,i,n(o,i));var a=m();r.write(a);for(var s=function(){var t=0,e=0,n=0,r="",i={},o=function(t){r+=String.fromCharCode(a(63&t))},a=function(t){if(t<0);else{if(t<26)return 65+t;if(t<52)return t-26+97;if(t<62)return t-52+48;if(62==t)return 43;if(63==t)return 47}throw"n:"+t};return i.writeByte=function(r){for(t=t<<8|255&r,e+=8,n+=1;e>=6;)o(t>>>e-6),e-=6},i.flush=function(){if(e>0&&(o(t<<6-e),t=0,e=0),n%3!=0)for(var i=3-n%3,a=0;a<i;a+=1)r+="="},i.toString=function(){return r},i}(),u=a.toByteArray(),c=0;c<u.length;c+=1)s.writeByte(u[c]);return s.flush(),"data:image/gif;base64,"+s};return t}();i.stringToBytesFuncs["UTF-8"]=function(t){return function(t){for(var e=[],n=0;n<t.length;n++){var r=t.charCodeAt(n);r<128?e.push(r):r<2048?e.push(192|r>>6,128|63&r):r<55296||r>=57344?e.push(224|r>>12,128|r>>6&63,128|63&r):(n++,r=65536+((1023&r)<<10|1023&t.charCodeAt(n)),e.push(240|r>>18,128|r>>12&63,128|r>>6&63,128|63&r))}return e}(t)},void 0===(r="function"==typeof(n=function(){return i})?n.apply(e,[]):n)||(t.exports=r)},676:(t,e,n)=>{n.d(e,{default:()=>C});var r=function(){return(r=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)},i=function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var r=Array(t),i=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,i++)r[i]=o[a];return r},o=function(t){return!!t&&"object"==typeof t&&!Array.isArray(t)};function a(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(!e.length)return t;var s=e.shift();return void 0!==s&&o(t)&&o(s)?(t=r({},t),Object.keys(s).forEach((function(e){var n=t[e],r=s[e];Array.isArray(n)&&Array.isArray(r)?t[e]=r:o(n)&&o(r)?t[e]=a(Object.assign({},n),r):t[e]=r})),a.apply(void 0,i([t],e))):t}function s(t,e){var n=document.createElement("a");n.download=e,n.href=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function u(t){return e=this,n=void 0,i=function(){return function(t,e){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,r=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((i=(i=a.trys).length>0&&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[3])){a.label=o[1];break}if(6===o[0]&&a.label<i[1]){a.label=i[1],i=o;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(o);break}i[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],r=0}finally{n=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}}(this,(function(e){return[2,new Promise((function(e){var n=new XMLHttpRequest;n.onload=function(){var t=new FileReader;t.onloadend=function(){e(t.result)},t.readAsDataURL(n.response)},n.open("GET",t),n.responseType="blob",n.send()}))]}))},new((r=void 0)||(r=Promise))((function(t,o){function a(t){try{u(i.next(t))}catch(t){o(t)}}function s(t){try{u(i.throw(t))}catch(t){o(t)}}function u(e){var n;e.done?t(e.value):(n=e.value,n instanceof r?n:new r((function(t){t(n)}))).then(a,s)}u((i=i.apply(e,n||[])).next())}));var e,n,r,i}const c={L:.07,M:.15,Q:.25,H:.3};var l=function(){return(l=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)};const h=function(){function t(t){var e=t.svg,n=t.type;this._svg=e,this._type=n}return t.prototype.draw=function(t,e,n,r){var i;switch(this._type){case"dots":i=this._drawDot;break;case"classy":i=this._drawClassy;break;case"classy-rounded":i=this._drawClassyRounded;break;case"rounded":i=this._drawRounded;break;case"extra-rounded":i=this._drawExtraRounded;break;case"square":default:i=this._drawSquare}i.call(this,{x:t,y:e,size:n,getNeighbor:r})},t.prototype._rotateFigure=function(t){var e,n=t.x,r=t.y,i=t.size,o=t.rotation,a=void 0===o?0:o,s=n+i/2,u=r+i/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","circle"),e._element.setAttribute("cx",String(r+n/2)),e._element.setAttribute("cy",String(i+n/2)),e._element.setAttribute("r",String(n/2))}}))},t.prototype._basicSquare=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","rect"),e._element.setAttribute("x",String(r)),e._element.setAttribute("y",String(i)),e._element.setAttribute("width",String(n)),e._element.setAttribute("height",String(n))}}))},t.prototype._basicSideRounded=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+r+" "+i+"v "+n+"h "+n/2+"a "+n/2+" "+n/2+", 0, 0, 0, 0 "+-n)}}))},t.prototype._basicCornerRounded=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+r+" "+i+"v "+n+"h "+n+"v "+-n/2+"a "+n/2+" "+n/2+", 0, 0, 0, "+-n/2+" "+-n/2)}}))},t.prototype._basicCornerExtraRounded=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+r+" "+i+"v "+n+"h "+n+"a "+n+" "+n+", 0, 0, 0, "+-n+" "+-n)}}))},t.prototype._basicCornersRounded=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(l(l({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+r+" "+i+"v "+n/2+"a "+n/2+" "+n/2+", 0, 0, 0, "+n/2+" "+n/2+"h "+n/2+"v "+-n/2+"a "+n/2+" "+n/2+", 0, 0, 0, "+-n/2+" "+-n/2)}}))},t.prototype._drawDot=function(t){var e=t.x,n=t.y,r=t.size;this._basicDot({x:e,y:n,size:r,rotation:0})},t.prototype._drawSquare=function(t){var e=t.x,n=t.y,r=t.size;this._basicSquare({x:e,y:n,size:r,rotation:0})},t.prototype._drawRounded=function(t){var e=t.x,n=t.y,r=t.size,i=t.getNeighbor,o=i?+i(-1,0):0,a=i?+i(1,0):0,s=i?+i(0,-1):0,u=i?+i(0,1):0,c=o+a+s+u;if(0!==c)if(c>2||o&&a||s&&u)this._basicSquare({x:e,y:n,size:r,rotation:0});else{if(2===c){var l=0;return o&&s?l=Math.PI/2:s&&a?l=Math.PI:a&&u&&(l=-Math.PI/2),void this._basicCornerRounded({x:e,y:n,size:r,rotation:l})}if(1===c)return l=0,s?l=Math.PI/2:a?l=Math.PI:u&&(l=-Math.PI/2),void this._basicSideRounded({x:e,y:n,size:r,rotation:l})}else this._basicDot({x:e,y:n,size:r,rotation:0})},t.prototype._drawExtraRounded=function(t){var e=t.x,n=t.y,r=t.size,i=t.getNeighbor,o=i?+i(-1,0):0,a=i?+i(1,0):0,s=i?+i(0,-1):0,u=i?+i(0,1):0,c=o+a+s+u;if(0!==c)if(c>2||o&&a||s&&u)this._basicSquare({x:e,y:n,size:r,rotation:0});else{if(2===c){var l=0;return o&&s?l=Math.PI/2:s&&a?l=Math.PI:a&&u&&(l=-Math.PI/2),void this._basicCornerExtraRounded({x:e,y:n,size:r,rotation:l})}if(1===c)return l=0,s?l=Math.PI/2:a?l=Math.PI:u&&(l=-Math.PI/2),void this._basicSideRounded({x:e,y:n,size:r,rotation:l})}else this._basicDot({x:e,y:n,size:r,rotation:0})},t.prototype._drawClassy=function(t){var e=t.x,n=t.y,r=t.size,i=t.getNeighbor,o=i?+i(-1,0):0,a=i?+i(1,0):0,s=i?+i(0,-1):0,u=i?+i(0,1):0;0!==o+a+s+u?o||s?a||u?this._basicSquare({x:e,y:n,size:r,rotation:0}):this._basicCornerRounded({x:e,y:n,size:r,rotation:Math.PI/2}):this._basicCornerRounded({x:e,y:n,size:r,rotation:-Math.PI/2}):this._basicCornersRounded({x:e,y:n,size:r,rotation:Math.PI/2})},t.prototype._drawClassyRounded=function(t){var e=t.x,n=t.y,r=t.size,i=t.getNeighbor,o=i?+i(-1,0):0,a=i?+i(1,0):0,s=i?+i(0,-1):0,u=i?+i(0,1):0;0!==o+a+s+u?o||s?a||u?this._basicSquare({x:e,y:n,size:r,rotation:0}):this._basicCornerExtraRounded({x:e,y:n,size:r,rotation:Math.PI/2}):this._basicCornerExtraRounded({x:e,y:n,size:r,rotation:-Math.PI/2}):this._basicCornersRounded({x:e,y:n,size:r,rotation:Math.PI/2})},t}();var d=function(){return(d=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)};const f=function(){function t(t){var e=t.svg,n=t.type;this._svg=e,this._type=n}return t.prototype.draw=function(t,e,n,r){var i;switch(this._type){case"square":i=this._drawSquare;break;case"extra-rounded":i=this._drawExtraRounded;break;case"dot":default:i=this._drawDot}i.call(this,{x:t,y:e,size:n,rotation:r})},t.prototype._rotateFigure=function(t){var e,n=t.x,r=t.y,i=t.size,o=t.rotation,a=void 0===o?0:o,s=n+i/2,u=r+i/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,n=t.size,r=t.x,i=t.y,o=n/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+(r+n/2)+" "+i+"a "+n/2+" "+n/2+" 0 1 0 0.1 0zm 0 "+o+"a "+(n/2-o)+" "+(n/2-o)+" 0 1 1 -0.1 0Z")}}))},t.prototype._basicSquare=function(t){var e=this,n=t.size,r=t.x,i=t.y,o=n/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+r+" "+i+"v "+n+"h "+n+"v "+-n+"zM "+(r+o)+" "+(i+o)+"h "+(n-2*o)+"v "+(n-2*o)+"h "+(2*o-n)+"z")}}))},t.prototype._basicExtraRounded=function(t){var e=this,n=t.size,r=t.x,i=t.y,o=n/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+r+" "+(i+2.5*o)+"v "+2*o+"a "+2.5*o+" "+2.5*o+", 0, 0, 0, "+2.5*o+" "+2.5*o+"h "+2*o+"a "+2.5*o+" "+2.5*o+", 0, 0, 0, "+2.5*o+" "+2.5*-o+"v "+-2*o+"a "+2.5*o+" "+2.5*o+", 0, 0, 0, "+2.5*-o+" "+2.5*-o+"h "+-2*o+"a "+2.5*o+" "+2.5*o+", 0, 0, 0, "+2.5*-o+" "+2.5*o+"M "+(r+2.5*o)+" "+(i+o)+"h "+2*o+"a "+1.5*o+" "+1.5*o+", 0, 0, 1, "+1.5*o+" "+1.5*o+"v "+2*o+"a "+1.5*o+" "+1.5*o+", 0, 0, 1, "+1.5*-o+" "+1.5*o+"h "+-2*o+"a "+1.5*o+" "+1.5*o+", 0, 0, 1, "+1.5*-o+" "+1.5*-o+"v "+-2*o+"a "+1.5*o+" "+1.5*o+", 0, 0, 1, "+1.5*o+" "+1.5*-o)}}))},t.prototype._drawDot=function(t){var e=t.x,n=t.y,r=t.size,i=t.rotation;this._basicDot({x:e,y:n,size:r,rotation:i})},t.prototype._drawSquare=function(t){var e=t.x,n=t.y,r=t.size,i=t.rotation;this._basicSquare({x:e,y:n,size:r,rotation:i})},t.prototype._drawExtraRounded=function(t){var e=t.x,n=t.y,r=t.size,i=t.rotation;this._basicExtraRounded({x:e,y:n,size:r,rotation:i})},t}();var p=function(){return(p=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)};const y=function(){function t(t){var e=t.svg,n=t.type;this._svg=e,this._type=n}return t.prototype.draw=function(t,e,n,r){var i;switch(this._type){case"square":i=this._drawSquare;break;case"dot":default:i=this._drawDot}i.call(this,{x:t,y:e,size:n,rotation:r})},t.prototype._rotateFigure=function(t){var e,n=t.x,r=t.y,i=t.size,o=t.rotation,a=void 0===o?0:o,s=n+i/2,u=r+i/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(p(p({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","circle"),e._element.setAttribute("cx",String(r+n/2)),e._element.setAttribute("cy",String(i+n/2)),e._element.setAttribute("r",String(n/2))}}))},t.prototype._basicSquare=function(t){var e=this,n=t.size,r=t.x,i=t.y;this._rotateFigure(p(p({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","rect"),e._element.setAttribute("x",String(r)),e._element.setAttribute("y",String(i)),e._element.setAttribute("width",String(n)),e._element.setAttribute("height",String(n))}}))},t.prototype._drawDot=function(t){var e=t.x,n=t.y,r=t.size,i=t.rotation;this._basicDot({x:e,y:n,size:r,rotation:i})},t.prototype._drawSquare=function(t){var e=t.x,n=t.y,r=t.size,i=t.rotation;this._basicSquare({x:e,y:n,size:r,rotation:i})},t}(),m="circle";var g=function(t,e,n,r){return new(n||(n=Promise))((function(i,o){function a(t){try{u(r.next(t))}catch(t){o(t)}}function s(t){try{u(r.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(a,s)}u((r=r.apply(t,e||[])).next())}))},v=function(t,e){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,r=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((i=(i=a.trys).length>0&&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[3])){a.label=o[1];break}if(6===o[0]&&a.label<i[1]){a.label=i[1],i=o;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(o);break}i[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],r=0}finally{n=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}},w=[[1,1,1,1,1,1,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,1,1,1,1,1,1]],b=[[0,0,0,0,0,0,0],[0,0,0,0,0,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]];const M=function(){function t(t){this._element=document.createElementNS("http://www.w3.org/2000/svg","svg"),this._element.setAttribute("width",String(t.width)),this._element.setAttribute("height",String(t.height)),this._defs=document.createElementNS("http://www.w3.org/2000/svg","defs"),this._element.appendChild(this._defs),this._options=t}return Object.defineProperty(t.prototype,"width",{get:function(){return this._options.width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"height",{get:function(){return this._options.height},enumerable:!1,configurable:!0}),t.prototype.getElement=function(){return this._element},t.prototype.drawQR=function(t){return g(this,void 0,void 0,(function(){var e,n,r,i,o,a,s,u,l,h,d=this;return v(this,(function(f){switch(f.label){case 0:return e=t.getModuleCount(),n=Math.min(this._options.width,this._options.height)-2*this._options.margin,r=this._options.shape===m?n/Math.sqrt(2):n,i=Math.floor(r/e),o={hideXDots:0,hideYDots:0,width:0,height:0},this._qr=t,this._options.image?[4,this.loadImage()]:[3,2];case 1:if(f.sent(),!this._image)return[2];a=this._options,s=a.imageOptions,u=a.qrOptions,l=s.imageSize*c[u.errorCorrectionLevel],h=Math.floor(l*e*e),o=function(t){var e=t.originalHeight,n=t.originalWidth,r=t.maxHiddenDots,i=t.maxHiddenAxisDots,o=t.dotSize,a={x:0,y:0},s={x:0,y:0};if(e<=0||n<=0||r<=0||o<=0)return{height:0,width:0,hideYDots:0,hideXDots:0};var u=e/n;return a.x=Math.floor(Math.sqrt(r/u)),a.x<=0&&(a.x=1),i&&i<a.x&&(a.x=i),a.x%2==0&&a.x--,s.x=a.x*o,a.y=1+2*Math.ceil((a.x*u-1)/2),s.y=Math.round(s.x*u),(a.y*a.x>r||i&&i<a.y)&&(i&&i<a.y?(a.y=i,a.y%2==0&&a.x--):a.y-=2,s.y=a.y*o,a.x=1+2*Math.ceil((a.y/u-1)/2),s.x=Math.round(s.y/u)),{height:s.y,width:s.x,hideYDots:a.y,hideXDots:a.x}}({originalWidth:this._image.width,originalHeight:this._image.height,maxHiddenDots:h,maxHiddenAxisDots:e-14,dotSize:i}),f.label=2;case 2:return this.drawBackground(),this.drawDots((function(t,n){var r,i,a,s,u,c;return!(d._options.imageOptions.hideBackgroundDots&&t>=(e-o.hideXDots)/2&&t<(e+o.hideXDots)/2&&n>=(e-o.hideYDots)/2&&n<(e+o.hideYDots)/2||(null===(r=w[t])||void 0===r?void 0:r[n])||(null===(i=w[t-e+7])||void 0===i?void 0:i[n])||(null===(a=w[t])||void 0===a?void 0:a[n-e+7])||(null===(s=b[t])||void 0===s?void 0:s[n])||(null===(u=b[t-e+7])||void 0===u?void 0:u[n])||(null===(c=b[t])||void 0===c?void 0:c[n-e+7]))})),this.drawCorners(),this._options.image?[4,this.drawImage({width:o.width,height:o.height,count:e,dotSize:i})]:[3,4];case 3:f.sent(),f.label=4;case 4:return[2]}}))}))},t.prototype.drawBackground=function(){var t,e,n,r=this._element,i=this._options;if(r){var o=null===(t=i.backgroundOptions)||void 0===t?void 0:t.gradient,a=null===(e=i.backgroundOptions)||void 0===e?void 0:e.color;if((o||a)&&this._createColor({options:o,color:a,additionalRotation:0,x:0,y:0,height:i.height,width:i.width,name:"background-color"}),null===(n=i.backgroundOptions)||void 0===n?void 0:n.round){var s=Math.min(i.width,i.height),u=document.createElementNS("http://www.w3.org/2000/svg","rect");this._backgroundClipPath=document.createElementNS("http://www.w3.org/2000/svg","clipPath"),this._backgroundClipPath.setAttribute("id","clip-path-background-color"),this._defs.appendChild(this._backgroundClipPath),u.setAttribute("x",String((i.width-s)/2)),u.setAttribute("y",String((i.height-s)/2)),u.setAttribute("width",String(s)),u.setAttribute("height",String(s)),u.setAttribute("rx",String(s/2*i.backgroundOptions.round)),this._backgroundClipPath.appendChild(u)}}},t.prototype.drawDots=function(t){var e,n,r=this;if(!this._qr)throw"QR code is not defined";var i=this._options,o=this._qr.getModuleCount();if(o>i.width||o>i.height)throw"The canvas is too small.";var a=Math.min(i.width,i.height)-2*i.margin,s=i.shape===m?a/Math.sqrt(2):a,u=Math.floor(s/o),c=Math.floor((i.width-o*u)/2),l=Math.floor((i.height-o*u)/2),d=new h({svg:this._element,type:i.dotsOptions.type});this._dotsClipPath=document.createElementNS("http://www.w3.org/2000/svg","clipPath"),this._dotsClipPath.setAttribute("id","clip-path-dot-color"),this._defs.appendChild(this._dotsClipPath),this._createColor({options:null===(e=i.dotsOptions)||void 0===e?void 0:e.gradient,color:i.dotsOptions.color,additionalRotation:0,x:0,y:0,height:i.height,width:i.width,name:"dot-color"});for(var f=function(e){for(var i=function(i){return t&&!t(e,i)?"continue":(null===(n=p._qr)||void 0===n?void 0:n.isDark(e,i))?(d.draw(c+e*u,l+i*u,u,(function(n,a){return!(e+n<0||i+a<0||e+n>=o||i+a>=o)&&!(t&&!t(e+n,i+a))&&!!r._qr&&r._qr.isDark(e+n,i+a)})),void(d._element&&p._dotsClipPath&&p._dotsClipPath.appendChild(d._element))):"continue"},a=0;a<o;a++)i(a)},p=this,y=0;y<o;y++)f(y);if(i.shape===m){var g=Math.floor((a/u-o)/2),v=o+2*g,w=c-g*u,b=l-g*u,M=[],A=Math.floor(v/2);for(y=0;y<v;y++){M[y]=[];for(var I=0;I<v;I++)y>=g-1&&y<=v-g&&I>=g-1&&I<=v-g||Math.sqrt((y-A)*(y-A)+(I-A)*(I-A))>A?M[y][I]=0:M[y][I]=this._qr.isDark(I-2*g<0?I:I>=o?I-2*g:I-g,y-2*g<0?y:y>=o?y-2*g:y-g)?1:0}var N=function(t){for(var e=function(e){if(!M[t][e])return"continue";d.draw(w+t*u,b+e*u,u,(function(n,r){var i;return!!(null===(i=M[t+n])||void 0===i?void 0:i[e+r])})),d._element&&E._dotsClipPath&&E._dotsClipPath.appendChild(d._element)},n=0;n<v;n++)e(n)},E=this;for(y=0;y<v;y++)N(y)}},t.prototype.drawCorners=function(){var t=this;if(!this._qr)throw"QR code is not defined";var e=this._element,n=this._options;if(!e)throw"Element code is not defined";var r=this._qr.getModuleCount(),i=Math.min(n.width,n.height)-2*n.margin,o=n.shape===m?i/Math.sqrt(2):i,a=Math.floor(o/r),s=7*a,u=3*a,c=Math.floor((n.width-r*a)/2),l=Math.floor((n.height-r*a)/2);[[0,0,0],[1,0,Math.PI/2],[0,1,-Math.PI/2]].forEach((function(e){var i,o,d,p,m,g,v,M,A,I,N,E,x=e[0],k=e[1],T=e[2],L=c+x*a*(r-7),S=l+k*a*(r-7),j=t._dotsClipPath,D=t._dotsClipPath;if(((null===(i=n.cornersSquareOptions)||void 0===i?void 0:i.gradient)||(null===(o=n.cornersSquareOptions)||void 0===o?void 0:o.color))&&((j=document.createElementNS("http://www.w3.org/2000/svg","clipPath")).setAttribute("id","clip-path-corners-square-color-"+x+"-"+k),t._defs.appendChild(j),t._cornersSquareClipPath=t._cornersDotClipPath=D=j,t._createColor({options:null===(d=n.cornersSquareOptions)||void 0===d?void 0:d.gradient,color:null===(p=n.cornersSquareOptions)||void 0===p?void 0:p.color,additionalRotation:T,x:L,y:S,height:s,width:s,name:"corners-square-color-"+x+"-"+k})),null===(m=n.cornersSquareOptions)||void 0===m?void 0:m.type){var C=new f({svg:t._element,type:n.cornersSquareOptions.type});C.draw(L,S,s,T),C._element&&j&&j.appendChild(C._element)}else for(var O=new h({svg:t._element,type:n.dotsOptions.type}),z=function(t){for(var e=function(e){if(!(null===(g=w[t])||void 0===g?void 0:g[e]))return"continue";O.draw(L+t*a,S+e*a,a,(function(n,r){var i;return!!(null===(i=w[t+n])||void 0===i?void 0:i[e+r])})),O._element&&j&&j.appendChild(O._element)},n=0;n<w[t].length;n++)e(n)},P=0;P<w.length;P++)z(P);if(((null===(v=n.cornersDotOptions)||void 0===v?void 0:v.gradient)||(null===(M=n.cornersDotOptions)||void 0===M?void 0:M.color))&&((D=document.createElementNS("http://www.w3.org/2000/svg","clipPath")).setAttribute("id","clip-path-corners-dot-color-"+x+"-"+k),t._defs.appendChild(D),t._cornersDotClipPath=D,t._createColor({options:null===(A=n.cornersDotOptions)||void 0===A?void 0:A.gradient,color:null===(I=n.cornersDotOptions)||void 0===I?void 0:I.color,additionalRotation:T,x:L+2*a,y:S+2*a,height:u,width:u,name:"corners-dot-color-"+x+"-"+k})),null===(N=n.cornersDotOptions)||void 0===N?void 0:N.type){var _=new y({svg:t._element,type:n.cornersDotOptions.type});_.draw(L+2*a,S+2*a,u,T),_._element&&D&&D.appendChild(_._element)}else{O=new h({svg:t._element,type:n.dotsOptions.type});var B=function(t){for(var e=function(e){if(!(null===(E=b[t])||void 0===E?void 0:E[e]))return"continue";O.draw(L+t*a,S+e*a,a,(function(n,r){var i;return!!(null===(i=b[t+n])||void 0===i?void 0:i[e+r])})),O._element&&D&&D.appendChild(O._element)},n=0;n<b[t].length;n++)e(n)};for(P=0;P<b.length;P++)B(P)}}))},t.prototype.loadImage=function(){var t=this;return new Promise((function(e,n){var r=t._options,i=new Image;if(!r.image)return n("Image is not defined");"string"==typeof r.imageOptions.crossOrigin&&(i.crossOrigin=r.imageOptions.crossOrigin),t._image=i,i.onload=function(){e()},i.src=r.image}))},t.prototype.drawImage=function(t){var e=t.width,n=t.height,r=t.count,i=t.dotSize;return g(this,void 0,void 0,(function(){var t,o,a,s,c,l,h,d,f;return v(this,(function(p){switch(p.label){case 0:return t=this._options,o=Math.floor((t.width-r*i)/2),a=Math.floor((t.height-r*i)/2),s=o+t.imageOptions.margin+(r*i-e)/2,c=a+t.imageOptions.margin+(r*i-n)/2,l=e-2*t.imageOptions.margin,h=n-2*t.imageOptions.margin,(d=document.createElementNS("http://www.w3.org/2000/svg","image")).setAttribute("x",String(s)),d.setAttribute("y",String(c)),d.setAttribute("width",l+"px"),d.setAttribute("height",h+"px"),[4,u(t.image||"")];case 1:return f=p.sent(),d.setAttribute("href",f||""),this._element.appendChild(d),[2]}}))}))},t.prototype._createColor=function(t){var e=t.options,n=t.color,r=t.additionalRotation,i=t.x,o=t.y,a=t.height,s=t.width,u=t.name,c=s>a?s:a,l=document.createElementNS("http://www.w3.org/2000/svg","rect");if(l.setAttribute("x",String(i)),l.setAttribute("y",String(o)),l.setAttribute("height",String(a)),l.setAttribute("width",String(s)),l.setAttribute("clip-path","url('#clip-path-"+u+"')"),e){var h;if("radial"===e.type)(h=document.createElementNS("http://www.w3.org/2000/svg","radialGradient")).setAttribute("id",u),h.setAttribute("gradientUnits","userSpaceOnUse"),h.setAttribute("fx",String(i+s/2)),h.setAttribute("fy",String(o+a/2)),h.setAttribute("cx",String(i+s/2)),h.setAttribute("cy",String(o+a/2)),h.setAttribute("r",String(c/2));else{var d=((e.rotation||0)+r)%(2*Math.PI),f=(d+2*Math.PI)%(2*Math.PI),p=i+s/2,y=o+a/2,m=i+s/2,g=o+a/2;f>=0&&f<=.25*Math.PI||f>1.75*Math.PI&&f<=2*Math.PI?(p-=s/2,y-=a/2*Math.tan(d),m+=s/2,g+=a/2*Math.tan(d)):f>.25*Math.PI&&f<=.75*Math.PI?(y-=a/2,p-=s/2/Math.tan(d),g+=a/2,m+=s/2/Math.tan(d)):f>.75*Math.PI&&f<=1.25*Math.PI?(p+=s/2,y+=a/2*Math.tan(d),m-=s/2,g-=a/2*Math.tan(d)):f>1.25*Math.PI&&f<=1.75*Math.PI&&(y+=a/2,p+=s/2/Math.tan(d),g-=a/2,m-=s/2/Math.tan(d)),(h=document.createElementNS("http://www.w3.org/2000/svg","linearGradient")).setAttribute("id",u),h.setAttribute("gradientUnits","userSpaceOnUse"),h.setAttribute("x1",String(Math.round(p))),h.setAttribute("y1",String(Math.round(y))),h.setAttribute("x2",String(Math.round(m))),h.setAttribute("y2",String(Math.round(g)))}e.colorStops.forEach((function(t){var e=t.offset,n=t.color,r=document.createElementNS("http://www.w3.org/2000/svg","stop");r.setAttribute("offset",100*e+"%"),r.setAttribute("stop-color",n),h.appendChild(r)})),l.setAttribute("fill","url('#"+u+"')"),this._defs.appendChild(h)}else n&&l.setAttribute("fill",n);this._element.appendChild(l)},t}(),A="canvas";for(var I={},N=0;N<=40;N++)I[N]=N;const E={type:A,shape:"square",width:300,height:300,data:"",margin:0,qrOptions:{typeNumber:I[0],mode:void 0,errorCorrectionLevel:"Q"},imageOptions:{hideBackgroundDots:!0,imageSize:.4,crossOrigin:void 0,margin:0},dotsOptions:{type:"square",color:"#000"},backgroundOptions:{round:0,color:"#fff"}};var x=function(){return(x=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)};function k(t){var e=x({},t);if(!e.colorStops||!e.colorStops.length)throw"Field 'colorStops' is required in gradient";return e.rotation?e.rotation=Number(e.rotation):e.rotation=0,e.colorStops=e.colorStops.map((function(t){return x(x({},t),{offset:Number(t.offset)})})),e}function T(t){var e=x({},t);return e.width=Number(e.width),e.height=Number(e.height),e.margin=Number(e.margin),e.imageOptions=x(x({},e.imageOptions),{hideBackgroundDots:Boolean(e.imageOptions.hideBackgroundDots),imageSize:Number(e.imageOptions.imageSize),margin:Number(e.imageOptions.margin)}),e.margin>Math.min(e.width,e.height)&&(e.margin=Math.min(e.width,e.height)),e.dotsOptions=x({},e.dotsOptions),e.dotsOptions.gradient&&(e.dotsOptions.gradient=k(e.dotsOptions.gradient)),e.cornersSquareOptions&&(e.cornersSquareOptions=x({},e.cornersSquareOptions),e.cornersSquareOptions.gradient&&(e.cornersSquareOptions.gradient=k(e.cornersSquareOptions.gradient))),e.cornersDotOptions&&(e.cornersDotOptions=x({},e.cornersDotOptions),e.cornersDotOptions.gradient&&(e.cornersDotOptions.gradient=k(e.cornersDotOptions.gradient))),e.backgroundOptions&&(e.backgroundOptions=x({},e.backgroundOptions),e.backgroundOptions.gradient&&(e.backgroundOptions.gradient=k(e.backgroundOptions.gradient))),e}var L=n(192),S=n.n(L),j=function(t,e,n,r){return new(n||(n=Promise))((function(i,o){function a(t){try{u(r.next(t))}catch(t){o(t)}}function s(t){try{u(r.throw(t))}catch(t){o(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(a,s)}u((r=r.apply(t,e||[])).next())}))},D=function(t,e){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,r=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((i=(i=a.trys).length>0&&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[3])){a.label=o[1];break}if(6===o[0]&&a.label<i[1]){a.label=i[1],i=o;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(o);break}i[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],r=0}finally{n=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};const C=function(){function t(t){this._options=t?T(a(E,t)):E,this.update()}return t._clearContainer=function(t){t&&(t.innerHTML="")},t.prototype._setupSvg=function(){var t=this;if(this._qr){var e=new M(this._options);this._svg=e.getElement(),this._svgDrawingPromise=e.drawQR(this._qr).then((function(){var n;t._svg&&(null===(n=t._extension)||void 0===n||n.call(t,e.getElement(),t._options))}))}},t.prototype._setupCanvas=function(){var t,e=this;this._qr&&(this._canvas=document.createElement("canvas"),this._canvas.width=this._options.width,this._canvas.height=this._options.height,this._setupSvg(),this._canvasDrawingPromise=null===(t=this._svgDrawingPromise)||void 0===t?void 0:t.then((function(){if(e._svg){var t=e._svg,n=(new XMLSerializer).serializeToString(t),r="data:image/svg+xml;base64,"+btoa(n),i=new Image;return new Promise((function(t){i.onload=function(){var n,r;null===(r=null===(n=e._canvas)||void 0===n?void 0:n.getContext("2d"))||void 0===r||r.drawImage(i,0,0),t()},i.src=r}))}})))},t.prototype._getElement=function(t){return void 0===t&&(t="png"),j(this,void 0,void 0,(function(){return D(this,(function(e){switch(e.label){case 0:if(!this._qr)throw"QR code is empty";return"svg"!==t.toLowerCase()?[3,2]:(this._svg&&this._svgDrawingPromise||this._setupSvg(),[4,this._svgDrawingPromise]);case 1:return e.sent(),[2,this._svg];case 2:return this._canvas&&this._canvasDrawingPromise||this._setupCanvas(),[4,this._canvasDrawingPromise];case 3:return e.sent(),[2,this._canvas]}}))}))},t.prototype.update=function(e){t._clearContainer(this._container),this._options=e?T(a(this._options,e)):this._options,this._options.data&&(this._qr=S()(this._options.qrOptions.typeNumber,this._options.qrOptions.errorCorrectionLevel),this._qr.addData(this._options.data,this._options.qrOptions.mode||function(t){switch(!0){case/^[0-9]*$/.test(t):return"Numeric";case/^[0-9A-Z $%*+\-./:]*$/.test(t):return"Alphanumeric";default:return"Byte"}}(this._options.data)),this._qr.make(),this._options.type===A?this._setupCanvas():this._setupSvg(),this.append(this._container))},t.prototype.append=function(t){if(t){if("function"!=typeof t.appendChild)throw"Container should be a single DOM node";this._options.type===A?this._canvas&&t.appendChild(this._canvas):this._svg&&t.appendChild(this._svg),this._container=t}},t.prototype.applyExtension=function(t){if(!t)throw"Extension function should be defined.";this._extension=t,this.update()},t.prototype.deleteExtension=function(){this._extension=void 0,this.update()},t.prototype.getRawData=function(t){return void 0===t&&(t="png"),j(this,void 0,void 0,(function(){var e,n,r;return D(this,(function(i){switch(i.label){case 0:if(!this._qr)throw"QR code is empty";return[4,this._getElement(t)];case 1:return(e=i.sent())?"svg"===t.toLowerCase()?(n=new XMLSerializer,r=n.serializeToString(e),[2,new Blob(['<?xml version="1.0" standalone="no"?>\r\n'+r],{type:"image/svg+xml"})]):[2,new Promise((function(n){return e.toBlob(n,"image/"+t,1)}))]:[2,null]}}))}))},t.prototype.download=function(t){return j(this,void 0,void 0,(function(){var e,n,r,i,o;return D(this,(function(a){switch(a.label){case 0:if(!this._qr)throw"QR code is empty";return e="png",n="qr","string"==typeof t?(e=t,console.warn("Extension is deprecated as argument for 'download' method, please pass object { name: '...', extension: '...' } as argument")):"object"==typeof t&&null!==t&&(t.name&&(n=t.name),t.extension&&(e=t.extension)),[4,this._getElement(e)];case 1:return(r=a.sent())?("svg"===e.toLowerCase()?(i=new XMLSerializer,o='<?xml version="1.0" standalone="no"?>\r\n'+(o=i.serializeToString(r)),s("data:image/svg+xml;charset=utf-8,"+encodeURIComponent(o),n+".svg")):s(r.toDataURL("image/"+e),n+"."+e),[2]):[2]}}))}))},t}()}},e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={exports:{}};return t[r](i,i.exports,n),i.exports}return n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n(676)})().default}))),yF=Zf((function(t,e){(function(){var n,r="Expected a function",i="__lodash_hash_undefined__",o="__lodash_placeholder__",a=16,s=32,u=64,c=128,l=256,h=1/0,d=9007199254740991,f=NaN,p=4294967295,y=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",a],["flip",512],["partial",s],["partialRight",u],["rearg",l]],m="[object Arguments]",g="[object Array]",v="[object Boolean]",w="[object Date]",b="[object Error]",M="[object Function]",A="[object GeneratorFunction]",I="[object Map]",N="[object Number]",E="[object Object]",x="[object Promise]",k="[object RegExp]",T="[object Set]",L="[object String]",S="[object Symbol]",j="[object WeakMap]",D="[object ArrayBuffer]",C="[object DataView]",O="[object Float32Array]",z="[object Float64Array]",P="[object Int8Array]",_="[object Int16Array]",B="[object Int32Array]",R="[object Uint8Array]",U="[object Uint8ClampedArray]",Q="[object Uint16Array]",Y="[object Uint32Array]",W=/\b__p \+= '';/g,F=/\b(__p \+=) '' \+/g,V=/(__e\(.*?\)|\b__t\)) \+\n'';/g,H=/&(?:amp|lt|gt|quot|#39);/g,G=/[&<>"']/g,q=RegExp(H.source),Z=RegExp(G.source),J=/<%-([\s\S]+?)%>/g,X=/<%([\s\S]+?)%>/g,K=/<%=([\s\S]+?)%>/g,$=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,tt=/^\w*$/,et=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,nt=/[\\^$.*+?()[\]{}|]/g,rt=RegExp(nt.source),it=/^\s+/,ot=/\s/,at=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,st=/\{\n\/\* \[wrapped with (.+)\] \*/,ut=/,? & /,ct=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,lt=/[()=,{}\[\]\/\s]/,ht=/\\(\\)?/g,dt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ft=/\w*$/,pt=/^[-+]0x[0-9a-f]+$/i,yt=/^0b[01]+$/i,mt=/^\[object .+?Constructor\]$/,gt=/^0o[0-7]+$/i,vt=/^(?:0|[1-9]\d*)$/,wt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,bt=/($^)/,Mt=/['\n\r\u2028\u2029\\]/g,At="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",It="\\u2700-\\u27bf",Nt="a-z\\xdf-\\xf6\\xf8-\\xff",Et="A-Z\\xc0-\\xd6\\xd8-\\xde",xt="\\ufe0e\\ufe0f",kt="\\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",Tt="['’]",Lt="[\\ud800-\\udfff]",St="["+kt+"]",jt="["+At+"]",Dt="\\d+",Ct="[\\u2700-\\u27bf]",Ot="["+Nt+"]",zt="[^\\ud800-\\udfff"+kt+Dt+It+Nt+Et+"]",Pt="\\ud83c[\\udffb-\\udfff]",_t="[^\\ud800-\\udfff]",Bt="(?:\\ud83c[\\udde6-\\uddff]){2}",Rt="[\\ud800-\\udbff][\\udc00-\\udfff]",Ut="["+Et+"]",Qt="(?:"+Ot+"|"+zt+")",Yt="(?:"+Ut+"|"+zt+")",Wt="(?:['’](?:d|ll|m|re|s|t|ve))?",Ft="(?:['’](?:D|LL|M|RE|S|T|VE))?",Vt="(?:"+jt+"|"+Pt+")"+"?",Ht="[\\ufe0e\\ufe0f]?",Gt=Ht+Vt+("(?:\\u200d(?:"+[_t,Bt,Rt].join("|")+")"+Ht+Vt+")*"),qt="(?:"+[Ct,Bt,Rt].join("|")+")"+Gt,Zt="(?:"+[_t+jt+"?",jt,Bt,Rt,Lt].join("|")+")",Jt=RegExp(Tt,"g"),Xt=RegExp(jt,"g"),Kt=RegExp(Pt+"(?="+Pt+")|"+Zt+Gt,"g"),$t=RegExp([Ut+"?"+Ot+"+"+Wt+"(?="+[St,Ut,"$"].join("|")+")",Yt+"+"+Ft+"(?="+[St,Ut+Qt,"$"].join("|")+")",Ut+"?"+Qt+"+"+Wt,Ut+"+"+Ft,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Dt,qt].join("|"),"g"),te=RegExp("[\\u200d\\ud800-\\udfff"+At+xt+"]"),ee=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ne=["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"],re=-1,ie={};ie[O]=ie[z]=ie[P]=ie[_]=ie[B]=ie[R]=ie[U]=ie[Q]=ie[Y]=!0,ie[m]=ie[g]=ie[D]=ie[v]=ie[C]=ie[w]=ie[b]=ie[M]=ie[I]=ie[N]=ie[E]=ie[k]=ie[T]=ie[L]=ie[j]=!1;var oe={};oe[m]=oe[g]=oe[D]=oe[C]=oe[v]=oe[w]=oe[O]=oe[z]=oe[P]=oe[_]=oe[B]=oe[I]=oe[N]=oe[E]=oe[k]=oe[T]=oe[L]=oe[S]=oe[R]=oe[U]=oe[Q]=oe[Y]=!0,oe[b]=oe[M]=oe[j]=!1;var ae={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},se=parseFloat,ue=parseInt,ce="object"==typeof Gf&&Gf&&Gf.Object===Object&&Gf,le="object"==typeof self&&self&&self.Object===Object&&self,he=ce||le||Function("return this")(),de=e&&!e.nodeType&&e,fe=de&&t&&!t.nodeType&&t,pe=fe&&fe.exports===de,ye=pe&&ce.process,me=function(){try{var t=fe&&fe.require&&fe.require("util").types;return t||ye&&ye.binding&&ye.binding("util")}catch(t){}}(),ge=me&&me.isArrayBuffer,ve=me&&me.isDate,we=me&&me.isMap,be=me&&me.isRegExp,Me=me&&me.isSet,Ae=me&&me.isTypedArray;function Ie(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function Ne(t,e,n,r){for(var i=-1,o=null==t?0:t.length;++i<o;){var a=t[i];e(r,a,n(a),t)}return r}function Ee(t,e){for(var n=-1,r=null==t?0:t.length;++n<r&&!1!==e(t[n],n,t););return t}function xe(t,e){for(var n=null==t?0:t.length;n--&&!1!==e(t[n],n,t););return t}function ke(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(!e(t[n],n,t))return!1;return!0}function Te(t,e){for(var n=-1,r=null==t?0:t.length,i=0,o=[];++n<r;){var a=t[n];e(a,n,t)&&(o[i++]=a)}return o}function Le(t,e){return!!(null==t?0:t.length)&&Re(t,e,0)>-1}function Se(t,e,n){for(var r=-1,i=null==t?0:t.length;++r<i;)if(n(e,t[r]))return!0;return!1}function je(t,e){for(var n=-1,r=null==t?0:t.length,i=Array(r);++n<r;)i[n]=e(t[n],n,t);return i}function De(t,e){for(var n=-1,r=e.length,i=t.length;++n<r;)t[i+n]=e[n];return t}function Ce(t,e,n,r){var i=-1,o=null==t?0:t.length;for(r&&o&&(n=t[++i]);++i<o;)n=e(n,t[i],i,t);return n}function Oe(t,e,n,r){var i=null==t?0:t.length;for(r&&i&&(n=t[--i]);i--;)n=e(n,t[i],i,t);return n}function ze(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}var Pe=We("length");function _e(t,e,n){var r;return n(t,(function(t,n,i){if(e(t,n,i))return r=n,!1})),r}function Be(t,e,n,r){for(var i=t.length,o=n+(r?1:-1);r?o--:++o<i;)if(e(t[o],o,t))return o;return-1}function Re(t,e,n){return e==e?function(t,e,n){var r=n-1,i=t.length;for(;++r<i;)if(t[r]===e)return r;return-1}(t,e,n):Be(t,Qe,n)}function Ue(t,e,n,r){for(var i=n-1,o=t.length;++i<o;)if(r(t[i],e))return i;return-1}function Qe(t){return t!=t}function Ye(t,e){var n=null==t?0:t.length;return n?He(t,e)/n:f}function We(t){return function(e){return null==e?n:e[t]}}function Fe(t){return function(e){return null==t?n:t[e]}}function Ve(t,e,n,r,i){return i(t,(function(t,i,o){n=r?(r=!1,t):e(n,t,i,o)})),n}function He(t,e){for(var r,i=-1,o=t.length;++i<o;){var a=e(t[i]);a!==n&&(r=r===n?a:r+a)}return r}function Ge(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}function qe(t){return t?t.slice(0,fn(t)+1).replace(it,""):t}function Ze(t){return function(e){return t(e)}}function Je(t,e){return je(e,(function(e){return t[e]}))}function Xe(t,e){return t.has(e)}function Ke(t,e){for(var n=-1,r=t.length;++n<r&&Re(e,t[n],0)>-1;);return n}function $e(t,e){for(var n=t.length;n--&&Re(e,t[n],0)>-1;);return n}function tn(t,e){for(var n=t.length,r=0;n--;)t[n]===e&&++r;return r}var en=Fe({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),nn=Fe({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function rn(t){return"\\"+ae[t]}function on(t){return te.test(t)}function an(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function sn(t,e){return function(n){return t(e(n))}}function un(t,e){for(var n=-1,r=t.length,i=0,a=[];++n<r;){var s=t[n];s!==e&&s!==o||(t[n]=o,a[i++]=n)}return a}function cn(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}function ln(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=[t,t]})),n}function hn(t){return on(t)?function(t){var e=Kt.lastIndex=0;for(;Kt.test(t);)++e;return e}(t):Pe(t)}function dn(t){return on(t)?function(t){return t.match(Kt)||[]}(t):function(t){return t.split("")}(t)}function fn(t){for(var e=t.length;e--&&ot.test(t.charAt(e)););return e}var pn=Fe({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"});var yn=function t(e){var ot,At=(e=null==e?he:yn.defaults(he.Object(),e,yn.pick(he,ne))).Array,It=e.Date,Nt=e.Error,Et=e.Function,xt=e.Math,kt=e.Object,Tt=e.RegExp,Lt=e.String,St=e.TypeError,jt=At.prototype,Dt=Et.prototype,Ct=kt.prototype,Ot=e["__core-js_shared__"],zt=Dt.toString,Pt=Ct.hasOwnProperty,_t=0,Bt=(ot=/[^.]+$/.exec(Ot&&Ot.keys&&Ot.keys.IE_PROTO||""))?"Symbol(src)_1."+ot:"",Rt=Ct.toString,Ut=zt.call(kt),Qt=he._,Yt=Tt("^"+zt.call(Pt).replace(nt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Wt=pe?e.Buffer:n,Ft=e.Symbol,Vt=e.Uint8Array,Ht=Wt?Wt.allocUnsafe:n,Gt=sn(kt.getPrototypeOf,kt),qt=kt.create,Zt=Ct.propertyIsEnumerable,Kt=jt.splice,te=Ft?Ft.isConcatSpreadable:n,ae=Ft?Ft.iterator:n,ce=Ft?Ft.toStringTag:n,le=function(){try{var t=po(kt,"defineProperty");return t({},"",{}),t}catch(t){}}(),de=e.clearTimeout!==he.clearTimeout&&e.clearTimeout,fe=It&&It.now!==he.Date.now&&It.now,ye=e.setTimeout!==he.setTimeout&&e.setTimeout,me=xt.ceil,Pe=xt.floor,Fe=kt.getOwnPropertySymbols,mn=Wt?Wt.isBuffer:n,gn=e.isFinite,vn=jt.join,wn=sn(kt.keys,kt),bn=xt.max,Mn=xt.min,An=It.now,In=e.parseInt,Nn=xt.random,En=jt.reverse,xn=po(e,"DataView"),kn=po(e,"Map"),Tn=po(e,"Promise"),Ln=po(e,"Set"),Sn=po(e,"WeakMap"),jn=po(kt,"create"),Dn=Sn&&new Sn,Cn={},On=Qo(xn),zn=Qo(kn),Pn=Qo(Tn),_n=Qo(Ln),Bn=Qo(Sn),Rn=Ft?Ft.prototype:n,Un=Rn?Rn.valueOf:n,Qn=Rn?Rn.toString:n;function Yn(t){if(is(t)&&!Ga(t)&&!(t instanceof Hn)){if(t instanceof Vn)return t;if(Pt.call(t,"__wrapped__"))return Yo(t)}return new Vn(t)}var Wn=function(){function t(){}return function(e){if(!rs(e))return{};if(qt)return qt(e);t.prototype=e;var r=new t;return t.prototype=n,r}}();function Fn(){}function Vn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=n}function Hn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=p,this.__views__=[]}function Gn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function qn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function Zn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function Jn(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new Zn;++e<n;)this.add(t[e])}function Xn(t){var e=this.__data__=new qn(t);this.size=e.size}function Kn(t,e){var n=Ga(t),r=!n&&Ha(t),i=!n&&!r&&Xa(t),o=!n&&!r&&!i&&ds(t),a=n||r||i||o,s=a?Ge(t.length,Lt):[],u=s.length;for(var c in t)!e&&!Pt.call(t,c)||a&&("length"==c||i&&("offset"==c||"parent"==c)||o&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||Mo(c,u))||s.push(c);return s}function $n(t){var e=t.length;return e?t[Jr(0,e-1)]:n}function tr(t,e){return Bo(ji(t),cr(e,0,t.length))}function er(t){return Bo(ji(t))}function nr(t,e,r){(r!==n&&!Wa(t[e],r)||r===n&&!(e in t))&&sr(t,e,r)}function rr(t,e,r){var i=t[e];Pt.call(t,e)&&Wa(i,r)&&(r!==n||e in t)||sr(t,e,r)}function ir(t,e){for(var n=t.length;n--;)if(Wa(t[n][0],e))return n;return-1}function or(t,e,n,r){return pr(t,(function(t,i,o){e(r,t,n(t),o)})),r}function ar(t,e){return t&&Di(e,Os(e),t)}function sr(t,e,n){"__proto__"==e&&le?le(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function ur(t,e){for(var r=-1,i=e.length,o=At(i),a=null==t;++r<i;)o[r]=a?n:Ls(t,e[r]);return o}function cr(t,e,r){return t==t&&(r!==n&&(t=t<=r?t:r),e!==n&&(t=t>=e?t:e)),t}function lr(t,e,r,i,o,a){var s,u=1&e,c=2&e,l=4&e;if(r&&(s=o?r(t,i,o,a):r(t)),s!==n)return s;if(!rs(t))return t;var h=Ga(t);if(h){if(s=function(t){var e=t.length,n=new t.constructor(e);e&&"string"==typeof t[0]&&Pt.call(t,"index")&&(n.index=t.index,n.input=t.input);return n}(t),!u)return ji(t,s)}else{var d=go(t),f=d==M||d==A;if(Xa(t))return Ei(t,u);if(d==E||d==m||f&&!o){if(s=c||f?{}:wo(t),!u)return c?function(t,e){return Di(t,mo(t),e)}(t,function(t,e){return t&&Di(e,zs(e),t)}(s,t)):function(t,e){return Di(t,yo(t),e)}(t,ar(s,t))}else{if(!oe[d])return o?t:{};s=function(t,e,n){var r=t.constructor;switch(e){case D:return xi(t);case v:case w:return new r(+t);case C:return function(t,e){var n=e?xi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case O:case z:case P:case _:case B:case R:case U:case Q:case Y:return ki(t,n);case I:return new r;case N:case L:return new r(t);case k:return function(t){var e=new t.constructor(t.source,ft.exec(t));return e.lastIndex=t.lastIndex,e}(t);case T:return new r;case S:return i=t,Un?kt(Un.call(i)):{}}var i}(t,d,u)}}a||(a=new Xn);var p=a.get(t);if(p)return p;a.set(t,s),cs(t)?t.forEach((function(n){s.add(lr(n,e,r,n,t,a))})):os(t)&&t.forEach((function(n,i){s.set(i,lr(n,e,r,i,t,a))}));var y=h?n:(l?c?ao:oo:c?zs:Os)(t);return Ee(y||t,(function(n,i){y&&(n=t[i=n]),rr(s,i,lr(n,e,r,i,t,a))})),s}function hr(t,e,r){var i=r.length;if(null==t)return!i;for(t=kt(t);i--;){var o=r[i],a=e[o],s=t[o];if(s===n&&!(o in t)||!a(s))return!1}return!0}function dr(t,e,i){if("function"!=typeof t)throw new St(r);return Oo((function(){t.apply(n,i)}),e)}function fr(t,e,n,r){var i=-1,o=Le,a=!0,s=t.length,u=[],c=e.length;if(!s)return u;n&&(e=je(e,Ze(n))),r?(o=Se,a=!1):e.length>=200&&(o=Xe,a=!1,e=new Jn(e));t:for(;++i<s;){var l=t[i],h=null==n?l:n(l);if(l=r||0!==l?l:0,a&&h==h){for(var d=c;d--;)if(e[d]===h)continue t;u.push(l)}else o(e,h,r)||u.push(l)}return u}Yn.templateSettings={escape:J,evaluate:X,interpolate:K,variable:"",imports:{_:Yn}},Yn.prototype=Fn.prototype,Yn.prototype.constructor=Yn,Vn.prototype=Wn(Fn.prototype),Vn.prototype.constructor=Vn,Hn.prototype=Wn(Fn.prototype),Hn.prototype.constructor=Hn,Gn.prototype.clear=function(){this.__data__=jn?jn(null):{},this.size=0},Gn.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},Gn.prototype.get=function(t){var e=this.__data__;if(jn){var r=e[t];return r===i?n:r}return Pt.call(e,t)?e[t]:n},Gn.prototype.has=function(t){var e=this.__data__;return jn?e[t]!==n:Pt.call(e,t)},Gn.prototype.set=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=jn&&e===n?i:e,this},qn.prototype.clear=function(){this.__data__=[],this.size=0},qn.prototype.delete=function(t){var e=this.__data__,n=ir(e,t);return!(n<0)&&(n==e.length-1?e.pop():Kt.call(e,n,1),--this.size,!0)},qn.prototype.get=function(t){var e=this.__data__,r=ir(e,t);return r<0?n:e[r][1]},qn.prototype.has=function(t){return ir(this.__data__,t)>-1},qn.prototype.set=function(t,e){var n=this.__data__,r=ir(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},Zn.prototype.clear=function(){this.size=0,this.__data__={hash:new Gn,map:new(kn||qn),string:new Gn}},Zn.prototype.delete=function(t){var e=ho(this,t).delete(t);return this.size-=e?1:0,e},Zn.prototype.get=function(t){return ho(this,t).get(t)},Zn.prototype.has=function(t){return ho(this,t).has(t)},Zn.prototype.set=function(t,e){var n=ho(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},Jn.prototype.add=Jn.prototype.push=function(t){return this.__data__.set(t,i),this},Jn.prototype.has=function(t){return this.__data__.has(t)},Xn.prototype.clear=function(){this.__data__=new qn,this.size=0},Xn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Xn.prototype.get=function(t){return this.__data__.get(t)},Xn.prototype.has=function(t){return this.__data__.has(t)},Xn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof qn){var r=n.__data__;if(!kn||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new Zn(r)}return n.set(t,e),this.size=n.size,this};var pr=zi(Ar),yr=zi(Ir,!0);function mr(t,e){var n=!0;return pr(t,(function(t,r,i){return n=!!e(t,r,i)})),n}function gr(t,e,r){for(var i=-1,o=t.length;++i<o;){var a=t[i],s=e(a);if(null!=s&&(u===n?s==s&&!hs(s):r(s,u)))var u=s,c=a}return c}function vr(t,e){var n=[];return pr(t,(function(t,r,i){e(t,r,i)&&n.push(t)})),n}function wr(t,e,n,r,i){var o=-1,a=t.length;for(n||(n=bo),i||(i=[]);++o<a;){var s=t[o];e>0&&n(s)?e>1?wr(s,e-1,n,r,i):De(i,s):r||(i[i.length]=s)}return i}var br=Pi(),Mr=Pi(!0);function Ar(t,e){return t&&br(t,e,Os)}function Ir(t,e){return t&&Mr(t,e,Os)}function Nr(t,e){return Te(e,(function(e){return ts(t[e])}))}function Er(t,e){for(var r=0,i=(e=Mi(e,t)).length;null!=t&&r<i;)t=t[Uo(e[r++])];return r&&r==i?t:n}function xr(t,e,n){var r=e(t);return Ga(t)?r:De(r,n(t))}function kr(t){return null==t?t===n?"[object Undefined]":"[object Null]":ce&&ce in kt(t)?function(t){var e=Pt.call(t,ce),r=t[ce];try{t[ce]=n;var i=!0}catch(t){}var o=Rt.call(t);i&&(e?t[ce]=r:delete t[ce]);return o}(t):function(t){return Rt.call(t)}(t)}function Tr(t,e){return t>e}function Lr(t,e){return null!=t&&Pt.call(t,e)}function Sr(t,e){return null!=t&&e in kt(t)}function jr(t,e,r){for(var i=r?Se:Le,o=t[0].length,a=t.length,s=a,u=At(a),c=1/0,l=[];s--;){var h=t[s];s&&e&&(h=je(h,Ze(e))),c=Mn(h.length,c),u[s]=!r&&(e||o>=120&&h.length>=120)?new Jn(s&&h):n}h=t[0];var d=-1,f=u[0];t:for(;++d<o&&l.length<c;){var p=h[d],y=e?e(p):p;if(p=r||0!==p?p:0,!(f?Xe(f,y):i(l,y,r))){for(s=a;--s;){var m=u[s];if(!(m?Xe(m,y):i(t[s],y,r)))continue t}f&&f.push(y),l.push(p)}}return l}function Dr(t,e,r){var i=null==(t=So(t,e=Mi(e,t)))?t:t[Uo($o(e))];return null==i?n:Ie(i,t,r)}function Cr(t){return is(t)&&kr(t)==m}function Or(t,e,r,i,o){return t===e||(null==t||null==e||!is(t)&&!is(e)?t!=t&&e!=e:function(t,e,r,i,o,a){var s=Ga(t),u=Ga(e),c=s?g:go(t),l=u?g:go(e),h=(c=c==m?E:c)==E,d=(l=l==m?E:l)==E,f=c==l;if(f&&Xa(t)){if(!Xa(e))return!1;s=!0,h=!1}if(f&&!h)return a||(a=new Xn),s||ds(t)?ro(t,e,r,i,o,a):function(t,e,n,r,i,o,a){switch(n){case C:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case D:return!(t.byteLength!=e.byteLength||!o(new Vt(t),new Vt(e)));case v:case w:case N:return Wa(+t,+e);case b:return t.name==e.name&&t.message==e.message;case k:case L:return t==e+"";case I:var s=an;case T:var u=1&r;if(s||(s=cn),t.size!=e.size&&!u)return!1;var c=a.get(t);if(c)return c==e;r|=2,a.set(t,e);var l=ro(s(t),s(e),r,i,o,a);return a.delete(t),l;case S:if(Un)return Un.call(t)==Un.call(e)}return!1}(t,e,c,r,i,o,a);if(!(1&r)){var p=h&&Pt.call(t,"__wrapped__"),y=d&&Pt.call(e,"__wrapped__");if(p||y){var M=p?t.value():t,A=y?e.value():e;return a||(a=new Xn),o(M,A,r,i,a)}}if(!f)return!1;return a||(a=new Xn),function(t,e,r,i,o,a){var s=1&r,u=oo(t),c=u.length,l=oo(e).length;if(c!=l&&!s)return!1;var h=c;for(;h--;){var d=u[h];if(!(s?d in e:Pt.call(e,d)))return!1}var f=a.get(t),p=a.get(e);if(f&&p)return f==e&&p==t;var y=!0;a.set(t,e),a.set(e,t);var m=s;for(;++h<c;){var g=t[d=u[h]],v=e[d];if(i)var w=s?i(v,g,d,e,t,a):i(g,v,d,t,e,a);if(!(w===n?g===v||o(g,v,r,i,a):w)){y=!1;break}m||(m="constructor"==d)}if(y&&!m){var b=t.constructor,M=e.constructor;b==M||!("constructor"in t)||!("constructor"in e)||"function"==typeof b&&b instanceof b&&"function"==typeof M&&M instanceof M||(y=!1)}return a.delete(t),a.delete(e),y}(t,e,r,i,o,a)}(t,e,r,i,Or,o))}function zr(t,e,r,i){var o=r.length,a=o,s=!i;if(null==t)return!a;for(t=kt(t);o--;){var u=r[o];if(s&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++o<a;){var c=(u=r[o])[0],l=t[c],h=u[1];if(s&&u[2]){if(l===n&&!(c in t))return!1}else{var d=new Xn;if(i)var f=i(l,h,c,t,e,d);if(!(f===n?Or(h,l,3,i,d):f))return!1}}return!0}function Pr(t){return!(!rs(t)||(e=t,Bt&&Bt in e))&&(ts(t)?Yt:mt).test(Qo(t));var e}function _r(t){return"function"==typeof t?t:null==t?au:"object"==typeof t?Ga(t)?Wr(t[0],t[1]):Yr(t):yu(t)}function Br(t){if(!xo(t))return wn(t);var e=[];for(var n in kt(t))Pt.call(t,n)&&"constructor"!=n&&e.push(n);return e}function Rr(t){if(!rs(t))return function(t){var e=[];if(null!=t)for(var n in kt(t))e.push(n);return e}(t);var e=xo(t),n=[];for(var r in t)("constructor"!=r||!e&&Pt.call(t,r))&&n.push(r);return n}function Ur(t,e){return t<e}function Qr(t,e){var n=-1,r=Za(t)?At(t.length):[];return pr(t,(function(t,i,o){r[++n]=e(t,i,o)})),r}function Yr(t){var e=fo(t);return 1==e.length&&e[0][2]?To(e[0][0],e[0][1]):function(n){return n===t||zr(n,t,e)}}function Wr(t,e){return Io(t)&&ko(e)?To(Uo(t),e):function(r){var i=Ls(r,t);return i===n&&i===e?Ss(r,t):Or(e,i,3)}}function Fr(t,e,r,i,o){t!==e&&br(e,(function(a,s){if(o||(o=new Xn),rs(a))!function(t,e,r,i,o,a,s){var u=Do(t,r),c=Do(e,r),l=s.get(c);if(l)return void nr(t,r,l);var h=a?a(u,c,r+"",t,e,s):n,d=h===n;if(d){var f=Ga(c),p=!f&&Xa(c),y=!f&&!p&&ds(c);h=c,f||p||y?Ga(u)?h=u:Ja(u)?h=ji(u):p?(d=!1,h=Ei(c,!0)):y?(d=!1,h=ki(c,!0)):h=[]:ss(c)||Ha(c)?(h=u,Ha(u)?h=bs(u):rs(u)&&!ts(u)||(h=wo(c))):d=!1}d&&(s.set(c,h),o(h,c,i,a,s),s.delete(c));nr(t,r,h)}(t,e,s,r,Fr,i,o);else{var u=i?i(Do(t,s),a,s+"",t,e,o):n;u===n&&(u=a),nr(t,s,u)}}),zs)}function Vr(t,e){var r=t.length;if(r)return Mo(e+=e<0?r:0,r)?t[e]:n}function Hr(t,e,n){e=e.length?je(e,(function(t){return Ga(t)?function(e){return Er(e,1===t.length?t[0]:t)}:t})):[au];var r=-1;return e=je(e,Ze(lo())),function(t,e){var n=t.length;for(t.sort(e);n--;)t[n]=t[n].value;return t}(Qr(t,(function(t,n,i){return{criteria:je(e,(function(e){return e(t)})),index:++r,value:t}})),(function(t,e){return function(t,e,n){var r=-1,i=t.criteria,o=e.criteria,a=i.length,s=n.length;for(;++r<a;){var u=Ti(i[r],o[r]);if(u)return r>=s?u:u*("desc"==n[r]?-1:1)}return t.index-e.index}(t,e,n)}))}function Gr(t,e,n){for(var r=-1,i=e.length,o={};++r<i;){var a=e[r],s=Er(t,a);n(s,a)&&ei(o,Mi(a,t),s)}return o}function qr(t,e,n,r){var i=r?Ue:Re,o=-1,a=e.length,s=t;for(t===e&&(e=ji(e)),n&&(s=je(t,Ze(n)));++o<a;)for(var u=0,c=e[o],l=n?n(c):c;(u=i(s,l,u,r))>-1;)s!==t&&Kt.call(s,u,1),Kt.call(t,u,1);return t}function Zr(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i=e[n];if(n==r||i!==o){var o=i;Mo(i)?Kt.call(t,i,1):fi(t,i)}}return t}function Jr(t,e){return t+Pe(Nn()*(e-t+1))}function Xr(t,e){var n="";if(!t||e<1||e>d)return n;do{e%2&&(n+=t),(e=Pe(e/2))&&(t+=t)}while(e);return n}function Kr(t,e){return zo(Lo(t,e,au),t+"")}function $r(t){return $n(Ws(t))}function ti(t,e){var n=Ws(t);return Bo(n,cr(e,0,n.length))}function ei(t,e,r,i){if(!rs(t))return t;for(var o=-1,a=(e=Mi(e,t)).length,s=a-1,u=t;null!=u&&++o<a;){var c=Uo(e[o]),l=r;if("__proto__"===c||"constructor"===c||"prototype"===c)return t;if(o!=s){var h=u[c];(l=i?i(h,c,u):n)===n&&(l=rs(h)?h:Mo(e[o+1])?[]:{})}rr(u,c,l),u=u[c]}return t}var ni=Dn?function(t,e){return Dn.set(t,e),t}:au,ri=le?function(t,e){return le(t,"toString",{configurable:!0,enumerable:!1,value:ru(e),writable:!0})}:au;function ii(t){return Bo(Ws(t))}function oi(t,e,n){var r=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var o=At(i);++r<i;)o[r]=t[r+e];return o}function ai(t,e){var n;return pr(t,(function(t,r,i){return!(n=e(t,r,i))})),!!n}function si(t,e,n){var r=0,i=null==t?r:t.length;if("number"==typeof e&&e==e&&i<=2147483647){for(;r<i;){var o=r+i>>>1,a=t[o];null!==a&&!hs(a)&&(n?a<=e:a<e)?r=o+1:i=o}return i}return ui(t,e,au,n)}function ui(t,e,r,i){var o=0,a=null==t?0:t.length;if(0===a)return 0;for(var s=(e=r(e))!=e,u=null===e,c=hs(e),l=e===n;o<a;){var h=Pe((o+a)/2),d=r(t[h]),f=d!==n,p=null===d,y=d==d,m=hs(d);if(s)var g=i||y;else g=l?y&&(i||f):u?y&&f&&(i||!p):c?y&&f&&!p&&(i||!m):!p&&!m&&(i?d<=e:d<e);g?o=h+1:a=h}return Mn(a,4294967294)}function ci(t,e){for(var n=-1,r=t.length,i=0,o=[];++n<r;){var a=t[n],s=e?e(a):a;if(!n||!Wa(s,u)){var u=s;o[i++]=0===a?0:a}}return o}function li(t){return"number"==typeof t?t:hs(t)?f:+t}function hi(t){if("string"==typeof t)return t;if(Ga(t))return je(t,hi)+"";if(hs(t))return Qn?Qn.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function di(t,e,n){var r=-1,i=Le,o=t.length,a=!0,s=[],u=s;if(n)a=!1,i=Se;else if(o>=200){var c=e?null:Xi(t);if(c)return cn(c);a=!1,i=Xe,u=new Jn}else u=e?[]:s;t:for(;++r<o;){var l=t[r],h=e?e(l):l;if(l=n||0!==l?l:0,a&&h==h){for(var d=u.length;d--;)if(u[d]===h)continue t;e&&u.push(h),s.push(l)}else i(u,h,n)||(u!==s&&u.push(h),s.push(l))}return s}function fi(t,e){return null==(t=So(t,e=Mi(e,t)))||delete t[Uo($o(e))]}function pi(t,e,n,r){return ei(t,e,n(Er(t,e)),r)}function yi(t,e,n,r){for(var i=t.length,o=r?i:-1;(r?o--:++o<i)&&e(t[o],o,t););return n?oi(t,r?0:o,r?o+1:i):oi(t,r?o+1:0,r?i:o)}function mi(t,e){var n=t;return n instanceof Hn&&(n=n.value()),Ce(e,(function(t,e){return e.func.apply(e.thisArg,De([t],e.args))}),n)}function gi(t,e,n){var r=t.length;if(r<2)return r?di(t[0]):[];for(var i=-1,o=At(r);++i<r;)for(var a=t[i],s=-1;++s<r;)s!=i&&(o[i]=fr(o[i]||a,t[s],e,n));return di(wr(o,1),e,n)}function vi(t,e,r){for(var i=-1,o=t.length,a=e.length,s={};++i<o;){var u=i<a?e[i]:n;r(s,t[i],u)}return s}function wi(t){return Ja(t)?t:[]}function bi(t){return"function"==typeof t?t:au}function Mi(t,e){return Ga(t)?t:Io(t,e)?[t]:Ro(Ms(t))}var Ai=Kr;function Ii(t,e,r){var i=t.length;return r=r===n?i:r,!e&&r>=i?t:oi(t,e,r)}var Ni=de||function(t){return he.clearTimeout(t)};function Ei(t,e){if(e)return t.slice();var n=t.length,r=Ht?Ht(n):new t.constructor(n);return t.copy(r),r}function xi(t){var e=new t.constructor(t.byteLength);return new Vt(e).set(new Vt(t)),e}function ki(t,e){var n=e?xi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function Ti(t,e){if(t!==e){var r=t!==n,i=null===t,o=t==t,a=hs(t),s=e!==n,u=null===e,c=e==e,l=hs(e);if(!u&&!l&&!a&&t>e||a&&s&&c&&!u&&!l||i&&s&&c||!r&&c||!o)return 1;if(!i&&!a&&!l&&t<e||l&&r&&o&&!i&&!a||u&&r&&o||!s&&o||!c)return-1}return 0}function Li(t,e,n,r){for(var i=-1,o=t.length,a=n.length,s=-1,u=e.length,c=bn(o-a,0),l=At(u+c),h=!r;++s<u;)l[s]=e[s];for(;++i<a;)(h||i<o)&&(l[n[i]]=t[i]);for(;c--;)l[s++]=t[i++];return l}function Si(t,e,n,r){for(var i=-1,o=t.length,a=-1,s=n.length,u=-1,c=e.length,l=bn(o-s,0),h=At(l+c),d=!r;++i<l;)h[i]=t[i];for(var f=i;++u<c;)h[f+u]=e[u];for(;++a<s;)(d||i<o)&&(h[f+n[a]]=t[i++]);return h}function ji(t,e){var n=-1,r=t.length;for(e||(e=At(r));++n<r;)e[n]=t[n];return e}function Di(t,e,r,i){var o=!r;r||(r={});for(var a=-1,s=e.length;++a<s;){var u=e[a],c=i?i(r[u],t[u],u,r,t):n;c===n&&(c=t[u]),o?sr(r,u,c):rr(r,u,c)}return r}function Ci(t,e){return function(n,r){var i=Ga(n)?Ne:or,o=e?e():{};return i(n,t,lo(r,2),o)}}function Oi(t){return Kr((function(e,r){var i=-1,o=r.length,a=o>1?r[o-1]:n,s=o>2?r[2]:n;for(a=t.length>3&&"function"==typeof a?(o--,a):n,s&&Ao(r[0],r[1],s)&&(a=o<3?n:a,o=1),e=kt(e);++i<o;){var u=r[i];u&&t(e,u,i,a)}return e}))}function zi(t,e){return function(n,r){if(null==n)return n;if(!Za(n))return t(n,r);for(var i=n.length,o=e?i:-1,a=kt(n);(e?o--:++o<i)&&!1!==r(a[o],o,a););return n}}function Pi(t){return function(e,n,r){for(var i=-1,o=kt(e),a=r(e),s=a.length;s--;){var u=a[t?s:++i];if(!1===n(o[u],u,o))break}return e}}function _i(t){return function(e){var r=on(e=Ms(e))?dn(e):n,i=r?r[0]:e.charAt(0),o=r?Ii(r,1).join(""):e.slice(1);return i[t]()+o}}function Bi(t){return function(e){return Ce(tu(Hs(e).replace(Jt,"")),t,"")}}function Ri(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=Wn(t.prototype),r=t.apply(n,e);return rs(r)?r:n}}function Ui(t){return function(e,r,i){var o=kt(e);if(!Za(e)){var a=lo(r,3);e=Os(e),r=function(t){return a(o[t],t,o)}}var s=t(e,r,i);return s>-1?o[a?e[s]:s]:n}}function Qi(t){return io((function(e){var i=e.length,o=i,a=Vn.prototype.thru;for(t&&e.reverse();o--;){var s=e[o];if("function"!=typeof s)throw new St(r);if(a&&!u&&"wrapper"==uo(s))var u=new Vn([],!0)}for(o=u?o:i;++o<i;){var c=uo(s=e[o]),l="wrapper"==c?so(s):n;u=l&&No(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?u[uo(l[0])].apply(u,l[3]):1==s.length&&No(s)?u[c]():u.thru(s)}return function(){var t=arguments,n=t[0];if(u&&1==t.length&&Ga(n))return u.plant(n).value();for(var r=0,o=i?e[r].apply(this,t):n;++r<i;)o=e[r].call(this,o);return o}}))}function Yi(t,e,r,i,o,a,s,u,l,h){var d=e&c,f=1&e,p=2&e,y=24&e,m=512&e,g=p?n:Ri(t);return function n(){for(var c=arguments.length,v=At(c),w=c;w--;)v[w]=arguments[w];if(y)var b=co(n),M=tn(v,b);if(i&&(v=Li(v,i,o,y)),a&&(v=Si(v,a,s,y)),c-=M,y&&c<h){var A=un(v,b);return Zi(t,e,Yi,n.placeholder,r,v,A,u,l,h-c)}var I=f?r:this,N=p?I[t]:t;return c=v.length,u?v=jo(v,u):m&&c>1&&v.reverse(),d&&l<c&&(v.length=l),this&&this!==he&&this instanceof n&&(N=g||Ri(N)),N.apply(I,v)}}function Wi(t,e){return function(n,r){return function(t,e,n,r){return Ar(t,(function(t,i,o){e(r,n(t),i,o)})),r}(n,t,e(r),{})}}function Fi(t,e){return function(r,i){var o;if(r===n&&i===n)return e;if(r!==n&&(o=r),i!==n){if(o===n)return i;"string"==typeof r||"string"==typeof i?(r=hi(r),i=hi(i)):(r=li(r),i=li(i)),o=t(r,i)}return o}}function Vi(t){return io((function(e){return e=je(e,Ze(lo())),Kr((function(n){var r=this;return t(e,(function(t){return Ie(t,r,n)}))}))}))}function Hi(t,e){var r=(e=e===n?" ":hi(e)).length;if(r<2)return r?Xr(e,t):e;var i=Xr(e,me(t/hn(e)));return on(e)?Ii(dn(i),0,t).join(""):i.slice(0,t)}function Gi(t){return function(e,r,i){return i&&"number"!=typeof i&&Ao(e,r,i)&&(r=i=n),e=ms(e),r===n?(r=e,e=0):r=ms(r),function(t,e,n,r){for(var i=-1,o=bn(me((e-t)/(n||1)),0),a=At(o);o--;)a[r?o:++i]=t,t+=n;return a}(e,r,i=i===n?e<r?1:-1:ms(i),t)}}function qi(t){return function(e,n){return"string"==typeof e&&"string"==typeof n||(e=ws(e),n=ws(n)),t(e,n)}}function Zi(t,e,r,i,o,a,c,l,h,d){var f=8&e;e|=f?s:u,4&(e&=~(f?u:s))||(e&=-4);var p=[t,e,o,f?a:n,f?c:n,f?n:a,f?n:c,l,h,d],y=r.apply(n,p);return No(t)&&Co(y,p),y.placeholder=i,Po(y,t,e)}function Ji(t){var e=xt[t];return function(t,n){if(t=ws(t),(n=null==n?0:Mn(gs(n),292))&&gn(t)){var r=(Ms(t)+"e").split("e");return+((r=(Ms(e(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return e(t)}}var Xi=Ln&&1/cn(new Ln([,-0]))[1]==h?function(t){return new Ln(t)}:hu;function Ki(t){return function(e){var n=go(e);return n==I?an(e):n==T?ln(e):function(t,e){return je(e,(function(e){return[e,t[e]]}))}(e,t(e))}}function $i(t,e,i,h,d,f,p,y){var m=2&e;if(!m&&"function"!=typeof t)throw new St(r);var g=h?h.length:0;if(g||(e&=-97,h=d=n),p=p===n?p:bn(gs(p),0),y=y===n?y:gs(y),g-=d?d.length:0,e&u){var v=h,w=d;h=d=n}var b=m?n:so(t),M=[t,e,i,h,d,v,w,f,p,y];if(b&&function(t,e){var n=t[1],r=e[1],i=n|r,a=i<131,s=r==c&&8==n||r==c&&n==l&&t[7].length<=e[8]||384==r&&e[7].length<=e[8]&&8==n;if(!a&&!s)return t;1&r&&(t[2]=e[2],i|=1&n?0:4);var u=e[3];if(u){var h=t[3];t[3]=h?Li(h,u,e[4]):u,t[4]=h?un(t[3],o):e[4]}(u=e[5])&&(h=t[5],t[5]=h?Si(h,u,e[6]):u,t[6]=h?un(t[5],o):e[6]);(u=e[7])&&(t[7]=u);r&c&&(t[8]=null==t[8]?e[8]:Mn(t[8],e[8]));null==t[9]&&(t[9]=e[9]);t[0]=e[0],t[1]=i}(M,b),t=M[0],e=M[1],i=M[2],h=M[3],d=M[4],!(y=M[9]=M[9]===n?m?0:t.length:bn(M[9]-g,0))&&24&e&&(e&=-25),e&&1!=e)A=8==e||e==a?function(t,e,r){var i=Ri(t);return function o(){for(var a=arguments.length,s=At(a),u=a,c=co(o);u--;)s[u]=arguments[u];var l=a<3&&s[0]!==c&&s[a-1]!==c?[]:un(s,c);return(a-=l.length)<r?Zi(t,e,Yi,o.placeholder,n,s,l,n,n,r-a):Ie(this&&this!==he&&this instanceof o?i:t,this,s)}}(t,e,y):e!=s&&33!=e||d.length?Yi.apply(n,M):function(t,e,n,r){var i=1&e,o=Ri(t);return function e(){for(var a=-1,s=arguments.length,u=-1,c=r.length,l=At(c+s),h=this&&this!==he&&this instanceof e?o:t;++u<c;)l[u]=r[u];for(;s--;)l[u++]=arguments[++a];return Ie(h,i?n:this,l)}}(t,e,i,h);else var A=function(t,e,n){var r=1&e,i=Ri(t);return function e(){return(this&&this!==he&&this instanceof e?i:t).apply(r?n:this,arguments)}}(t,e,i);return Po((b?ni:Co)(A,M),t,e)}function to(t,e,r,i){return t===n||Wa(t,Ct[r])&&!Pt.call(i,r)?e:t}function eo(t,e,r,i,o,a){return rs(t)&&rs(e)&&(a.set(e,t),Fr(t,e,n,eo,a),a.delete(e)),t}function no(t){return ss(t)?n:t}function ro(t,e,r,i,o,a){var s=1&r,u=t.length,c=e.length;if(u!=c&&!(s&&c>u))return!1;var l=a.get(t),h=a.get(e);if(l&&h)return l==e&&h==t;var d=-1,f=!0,p=2&r?new Jn:n;for(a.set(t,e),a.set(e,t);++d<u;){var y=t[d],m=e[d];if(i)var g=s?i(m,y,d,e,t,a):i(y,m,d,t,e,a);if(g!==n){if(g)continue;f=!1;break}if(p){if(!ze(e,(function(t,e){if(!Xe(p,e)&&(y===t||o(y,t,r,i,a)))return p.push(e)}))){f=!1;break}}else if(y!==m&&!o(y,m,r,i,a)){f=!1;break}}return a.delete(t),a.delete(e),f}function io(t){return zo(Lo(t,n,qo),t+"")}function oo(t){return xr(t,Os,yo)}function ao(t){return xr(t,zs,mo)}var so=Dn?function(t){return Dn.get(t)}:hu;function uo(t){for(var e=t.name+"",n=Cn[e],r=Pt.call(Cn,e)?n.length:0;r--;){var i=n[r],o=i.func;if(null==o||o==t)return i.name}return e}function co(t){return(Pt.call(Yn,"placeholder")?Yn:t).placeholder}function lo(){var t=Yn.iteratee||su;return t=t===su?_r:t,arguments.length?t(arguments[0],arguments[1]):t}function ho(t,e){var n=t.__data__;return function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}(e)?n["string"==typeof e?"string":"hash"]:n.map}function fo(t){for(var e=Os(t),n=e.length;n--;){var r=e[n],i=t[r];e[n]=[r,i,ko(i)]}return e}function po(t,e){var r=function(t,e){return null==t?n:t[e]}(t,e);return Pr(r)?r:n}var yo=Fe?function(t){return null==t?[]:(t=kt(t),Te(Fe(t),(function(e){return Zt.call(t,e)})))}:vu,mo=Fe?function(t){for(var e=[];t;)De(e,yo(t)),t=Gt(t);return e}:vu,go=kr;function vo(t,e,n){for(var r=-1,i=(e=Mi(e,t)).length,o=!1;++r<i;){var a=Uo(e[r]);if(!(o=null!=t&&n(t,a)))break;t=t[a]}return o||++r!=i?o:!!(i=null==t?0:t.length)&&ns(i)&&Mo(a,i)&&(Ga(t)||Ha(t))}function wo(t){return"function"!=typeof t.constructor||xo(t)?{}:Wn(Gt(t))}function bo(t){return Ga(t)||Ha(t)||!!(te&&t&&t[te])}function Mo(t,e){var n=typeof t;return!!(e=null==e?d:e)&&("number"==n||"symbol"!=n&&vt.test(t))&&t>-1&&t%1==0&&t<e}function Ao(t,e,n){if(!rs(n))return!1;var r=typeof e;return!!("number"==r?Za(n)&&Mo(e,n.length):"string"==r&&e in n)&&Wa(n[e],t)}function Io(t,e){if(Ga(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!hs(t))||(tt.test(t)||!$.test(t)||null!=e&&t in kt(e))}function No(t){var e=uo(t),n=Yn[e];if("function"!=typeof n||!(e in Hn.prototype))return!1;if(t===n)return!0;var r=so(n);return!!r&&t===r[0]}(xn&&go(new xn(new ArrayBuffer(1)))!=C||kn&&go(new kn)!=I||Tn&&go(Tn.resolve())!=x||Ln&&go(new Ln)!=T||Sn&&go(new Sn)!=j)&&(go=function(t){var e=kr(t),r=e==E?t.constructor:n,i=r?Qo(r):"";if(i)switch(i){case On:return C;case zn:return I;case Pn:return x;case _n:return T;case Bn:return j}return e});var Eo=Ot?ts:wu;function xo(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||Ct)}function ko(t){return t==t&&!rs(t)}function To(t,e){return function(r){return null!=r&&(r[t]===e&&(e!==n||t in kt(r)))}}function Lo(t,e,r){return e=bn(e===n?t.length-1:e,0),function(){for(var n=arguments,i=-1,o=bn(n.length-e,0),a=At(o);++i<o;)a[i]=n[e+i];i=-1;for(var s=At(e+1);++i<e;)s[i]=n[i];return s[e]=r(a),Ie(t,this,s)}}function So(t,e){return e.length<2?t:Er(t,oi(e,0,-1))}function jo(t,e){for(var r=t.length,i=Mn(e.length,r),o=ji(t);i--;){var a=e[i];t[i]=Mo(a,r)?o[a]:n}return t}function Do(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}var Co=_o(ni),Oo=ye||function(t,e){return he.setTimeout(t,e)},zo=_o(ri);function Po(t,e,n){var r=e+"";return zo(t,function(t,e){var n=e.length;if(!n)return t;var r=n-1;return e[r]=(n>1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(at,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return Ee(y,(function(n){var r="_."+n[0];e&n[1]&&!Le(t,r)&&t.push(r)})),t.sort()}(function(t){var e=t.match(st);return e?e[1].split(ut):[]}(r),n)))}function _o(t){var e=0,r=0;return function(){var i=An(),o=16-(i-r);if(r=i,o>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(n,arguments)}}function Bo(t,e){var r=-1,i=t.length,o=i-1;for(e=e===n?i:e;++r<e;){var a=Jr(r,o),s=t[a];t[a]=t[r],t[r]=s}return t.length=e,t}var Ro=function(t){var e=_a(t,(function(t){return 500===n.size&&n.clear(),t})),n=e.cache;return e}((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(et,(function(t,n,r,i){e.push(r?i.replace(ht,"$1"):n||t)})),e}));function Uo(t){if("string"==typeof t||hs(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Qo(t){if(null!=t){try{return zt.call(t)}catch(t){}try{return t+""}catch(t){}}return""}function Yo(t){if(t instanceof Hn)return t.clone();var e=new Vn(t.__wrapped__,t.__chain__);return e.__actions__=ji(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}var Wo=Kr((function(t,e){return Ja(t)?fr(t,wr(e,1,Ja,!0)):[]})),Fo=Kr((function(t,e){var r=$o(e);return Ja(r)&&(r=n),Ja(t)?fr(t,wr(e,1,Ja,!0),lo(r,2)):[]})),Vo=Kr((function(t,e){var r=$o(e);return Ja(r)&&(r=n),Ja(t)?fr(t,wr(e,1,Ja,!0),n,r):[]}));function Ho(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:gs(n);return i<0&&(i=bn(r+i,0)),Be(t,lo(e,3),i)}function Go(t,e,r){var i=null==t?0:t.length;if(!i)return-1;var o=i-1;return r!==n&&(o=gs(r),o=r<0?bn(i+o,0):Mn(o,i-1)),Be(t,lo(e,3),o,!0)}function qo(t){return(null==t?0:t.length)?wr(t,1):[]}function Zo(t){return t&&t.length?t[0]:n}var Jo=Kr((function(t){var e=je(t,wi);return e.length&&e[0]===t[0]?jr(e):[]})),Xo=Kr((function(t){var e=$o(t),r=je(t,wi);return e===$o(r)?e=n:r.pop(),r.length&&r[0]===t[0]?jr(r,lo(e,2)):[]})),Ko=Kr((function(t){var e=$o(t),r=je(t,wi);return(e="function"==typeof e?e:n)&&r.pop(),r.length&&r[0]===t[0]?jr(r,n,e):[]}));function $o(t){var e=null==t?0:t.length;return e?t[e-1]:n}var ta=Kr(ea);function ea(t,e){return t&&t.length&&e&&e.length?qr(t,e):t}var na=io((function(t,e){var n=null==t?0:t.length,r=ur(t,e);return Zr(t,je(e,(function(t){return Mo(t,n)?+t:t})).sort(Ti)),r}));function ra(t){return null==t?t:En.call(t)}var ia=Kr((function(t){return di(wr(t,1,Ja,!0))})),oa=Kr((function(t){var e=$o(t);return Ja(e)&&(e=n),di(wr(t,1,Ja,!0),lo(e,2))})),aa=Kr((function(t){var e=$o(t);return e="function"==typeof e?e:n,di(wr(t,1,Ja,!0),n,e)}));function sa(t){if(!t||!t.length)return[];var e=0;return t=Te(t,(function(t){if(Ja(t))return e=bn(t.length,e),!0})),Ge(e,(function(e){return je(t,We(e))}))}function ua(t,e){if(!t||!t.length)return[];var r=sa(t);return null==e?r:je(r,(function(t){return Ie(e,n,t)}))}var ca=Kr((function(t,e){return Ja(t)?fr(t,e):[]})),la=Kr((function(t){return gi(Te(t,Ja))})),ha=Kr((function(t){var e=$o(t);return Ja(e)&&(e=n),gi(Te(t,Ja),lo(e,2))})),da=Kr((function(t){var e=$o(t);return e="function"==typeof e?e:n,gi(Te(t,Ja),n,e)})),fa=Kr(sa);var pa=Kr((function(t){var e=t.length,r=e>1?t[e-1]:n;return r="function"==typeof r?(t.pop(),r):n,ua(t,r)}));function ya(t){var e=Yn(t);return e.__chain__=!0,e}function ma(t,e){return e(t)}var ga=io((function(t){var e=t.length,r=e?t[0]:0,i=this.__wrapped__,o=function(e){return ur(e,t)};return!(e>1||this.__actions__.length)&&i instanceof Hn&&Mo(r)?((i=i.slice(r,+r+(e?1:0))).__actions__.push({func:ma,args:[o],thisArg:n}),new Vn(i,this.__chain__).thru((function(t){return e&&!t.length&&t.push(n),t}))):this.thru(o)}));var va=Ci((function(t,e,n){Pt.call(t,n)?++t[n]:sr(t,n,1)}));var wa=Ui(Ho),ba=Ui(Go);function Ma(t,e){return(Ga(t)?Ee:pr)(t,lo(e,3))}function Aa(t,e){return(Ga(t)?xe:yr)(t,lo(e,3))}var Ia=Ci((function(t,e,n){Pt.call(t,n)?t[n].push(e):sr(t,n,[e])}));var Na=Kr((function(t,e,n){var r=-1,i="function"==typeof e,o=Za(t)?At(t.length):[];return pr(t,(function(t){o[++r]=i?Ie(e,t,n):Dr(t,e,n)})),o})),Ea=Ci((function(t,e,n){sr(t,n,e)}));function xa(t,e){return(Ga(t)?je:Qr)(t,lo(e,3))}var ka=Ci((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]}));var Ta=Kr((function(t,e){if(null==t)return[];var n=e.length;return n>1&&Ao(t,e[0],e[1])?e=[]:n>2&&Ao(e[0],e[1],e[2])&&(e=[e[0]]),Hr(t,wr(e,1),[])})),La=fe||function(){return he.Date.now()};function Sa(t,e,r){return e=r?n:e,e=t&&null==e?t.length:e,$i(t,c,n,n,n,n,e)}function ja(t,e){var i;if("function"!=typeof e)throw new St(r);return t=gs(t),function(){return--t>0&&(i=e.apply(this,arguments)),t<=1&&(e=n),i}}var Da=Kr((function(t,e,n){var r=1;if(n.length){var i=un(n,co(Da));r|=s}return $i(t,r,e,n,i)})),Ca=Kr((function(t,e,n){var r=3;if(n.length){var i=un(n,co(Ca));r|=s}return $i(e,r,t,n,i)}));function Oa(t,e,i){var o,a,s,u,c,l,h=0,d=!1,f=!1,p=!0;if("function"!=typeof t)throw new St(r);function y(e){var r=o,i=a;return o=a=n,h=e,u=t.apply(i,r)}function m(t){return h=t,c=Oo(v,e),d?y(t):u}function g(t){var r=t-l;return l===n||r>=e||r<0||f&&t-h>=s}function v(){var t=La();if(g(t))return w(t);c=Oo(v,function(t){var n=e-(t-l);return f?Mn(n,s-(t-h)):n}(t))}function w(t){return c=n,p&&o?y(t):(o=a=n,u)}function b(){var t=La(),r=g(t);if(o=arguments,a=this,l=t,r){if(c===n)return m(l);if(f)return Ni(c),c=Oo(v,e),y(l)}return c===n&&(c=Oo(v,e)),u}return e=ws(e)||0,rs(i)&&(d=!!i.leading,s=(f="maxWait"in i)?bn(ws(i.maxWait)||0,e):s,p="trailing"in i?!!i.trailing:p),b.cancel=function(){c!==n&&Ni(c),h=0,o=l=a=c=n},b.flush=function(){return c===n?u:w(La())},b}var za=Kr((function(t,e){return dr(t,1,e)})),Pa=Kr((function(t,e,n){return dr(t,ws(e)||0,n)}));function _a(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new St(r);var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=t.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(_a.Cache||Zn),n}function Ba(t){if("function"!=typeof t)throw new St(r);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}_a.Cache=Zn;var Ra=Ai((function(t,e){var n=(e=1==e.length&&Ga(e[0])?je(e[0],Ze(lo())):je(wr(e,1),Ze(lo()))).length;return Kr((function(r){for(var i=-1,o=Mn(r.length,n);++i<o;)r[i]=e[i].call(this,r[i]);return Ie(t,this,r)}))})),Ua=Kr((function(t,e){var r=un(e,co(Ua));return $i(t,s,n,e,r)})),Qa=Kr((function(t,e){var r=un(e,co(Qa));return $i(t,u,n,e,r)})),Ya=io((function(t,e){return $i(t,l,n,n,n,e)}));function Wa(t,e){return t===e||t!=t&&e!=e}var Fa=qi(Tr),Va=qi((function(t,e){return t>=e})),Ha=Cr(function(){return arguments}())?Cr:function(t){return is(t)&&Pt.call(t,"callee")&&!Zt.call(t,"callee")},Ga=At.isArray,qa=ge?Ze(ge):function(t){return is(t)&&kr(t)==D};function Za(t){return null!=t&&ns(t.length)&&!ts(t)}function Ja(t){return is(t)&&Za(t)}var Xa=mn||wu,Ka=ve?Ze(ve):function(t){return is(t)&&kr(t)==w};function $a(t){if(!is(t))return!1;var e=kr(t);return e==b||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!ss(t)}function ts(t){if(!rs(t))return!1;var e=kr(t);return e==M||e==A||"[object AsyncFunction]"==e||"[object Proxy]"==e}function es(t){return"number"==typeof t&&t==gs(t)}function ns(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=d}function rs(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function is(t){return null!=t&&"object"==typeof t}var os=we?Ze(we):function(t){return is(t)&&go(t)==I};function as(t){return"number"==typeof t||is(t)&&kr(t)==N}function ss(t){if(!is(t)||kr(t)!=E)return!1;var e=Gt(t);if(null===e)return!0;var n=Pt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&zt.call(n)==Ut}var us=be?Ze(be):function(t){return is(t)&&kr(t)==k};var cs=Me?Ze(Me):function(t){return is(t)&&go(t)==T};function ls(t){return"string"==typeof t||!Ga(t)&&is(t)&&kr(t)==L}function hs(t){return"symbol"==typeof t||is(t)&&kr(t)==S}var ds=Ae?Ze(Ae):function(t){return is(t)&&ns(t.length)&&!!ie[kr(t)]};var fs=qi(Ur),ps=qi((function(t,e){return t<=e}));function ys(t){if(!t)return[];if(Za(t))return ls(t)?dn(t):ji(t);if(ae&&t[ae])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[ae]());var e=go(t);return(e==I?an:e==T?cn:Ws)(t)}function ms(t){return t?(t=ws(t))===h||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function gs(t){var e=ms(t),n=e%1;return e==e?n?e-n:e:0}function vs(t){return t?cr(gs(t),0,p):0}function ws(t){if("number"==typeof t)return t;if(hs(t))return f;if(rs(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=rs(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=qe(t);var n=yt.test(t);return n||gt.test(t)?ue(t.slice(2),n?2:8):pt.test(t)?f:+t}function bs(t){return Di(t,zs(t))}function Ms(t){return null==t?"":hi(t)}var As=Oi((function(t,e){if(xo(e)||Za(e))Di(e,Os(e),t);else for(var n in e)Pt.call(e,n)&&rr(t,n,e[n])})),Is=Oi((function(t,e){Di(e,zs(e),t)})),Ns=Oi((function(t,e,n,r){Di(e,zs(e),t,r)})),Es=Oi((function(t,e,n,r){Di(e,Os(e),t,r)})),xs=io(ur);var ks=Kr((function(t,e){t=kt(t);var r=-1,i=e.length,o=i>2?e[2]:n;for(o&&Ao(e[0],e[1],o)&&(i=1);++r<i;)for(var a=e[r],s=zs(a),u=-1,c=s.length;++u<c;){var l=s[u],h=t[l];(h===n||Wa(h,Ct[l])&&!Pt.call(t,l))&&(t[l]=a[l])}return t})),Ts=Kr((function(t){return t.push(n,eo),Ie(_s,n,t)}));function Ls(t,e,r){var i=null==t?n:Er(t,e);return i===n?r:i}function Ss(t,e){return null!=t&&vo(t,e,Sr)}var js=Wi((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=Rt.call(e)),t[e]=n}),ru(au)),Ds=Wi((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=Rt.call(e)),Pt.call(t,e)?t[e].push(n):t[e]=[n]}),lo),Cs=Kr(Dr);function Os(t){return Za(t)?Kn(t):Br(t)}function zs(t){return Za(t)?Kn(t,!0):Rr(t)}var Ps=Oi((function(t,e,n){Fr(t,e,n)})),_s=Oi((function(t,e,n,r){Fr(t,e,n,r)})),Bs=io((function(t,e){var n={};if(null==t)return n;var r=!1;e=je(e,(function(e){return e=Mi(e,t),r||(r=e.length>1),e})),Di(t,ao(t),n),r&&(n=lr(n,7,no));for(var i=e.length;i--;)fi(n,e[i]);return n}));var Rs=io((function(t,e){return null==t?{}:function(t,e){return Gr(t,e,(function(e,n){return Ss(t,n)}))}(t,e)}));function Us(t,e){if(null==t)return{};var n=je(ao(t),(function(t){return[t]}));return e=lo(e),Gr(t,n,(function(t,n){return e(t,n[0])}))}var Qs=Ki(Os),Ys=Ki(zs);function Ws(t){return null==t?[]:Je(t,Os(t))}var Fs=Bi((function(t,e,n){return e=e.toLowerCase(),t+(n?Vs(e):e)}));function Vs(t){return $s(Ms(t).toLowerCase())}function Hs(t){return(t=Ms(t))&&t.replace(wt,en).replace(Xt,"")}var Gs=Bi((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),qs=Bi((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),Zs=_i("toLowerCase");var Js=Bi((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}));var Xs=Bi((function(t,e,n){return t+(n?" ":"")+$s(e)}));var Ks=Bi((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),$s=_i("toUpperCase");function tu(t,e,r){return t=Ms(t),(e=r?n:e)===n?function(t){return ee.test(t)}(t)?function(t){return t.match($t)||[]}(t):function(t){return t.match(ct)||[]}(t):t.match(e)||[]}var eu=Kr((function(t,e){try{return Ie(t,n,e)}catch(t){return $a(t)?t:new Nt(t)}})),nu=io((function(t,e){return Ee(e,(function(e){e=Uo(e),sr(t,e,Da(t[e],t))})),t}));function ru(t){return function(){return t}}var iu=Qi(),ou=Qi(!0);function au(t){return t}function su(t){return _r("function"==typeof t?t:lr(t,1))}var uu=Kr((function(t,e){return function(n){return Dr(n,t,e)}})),cu=Kr((function(t,e){return function(n){return Dr(t,n,e)}}));function lu(t,e,n){var r=Os(e),i=Nr(e,r);null!=n||rs(e)&&(i.length||!r.length)||(n=e,e=t,t=this,i=Nr(e,Os(e)));var o=!(rs(n)&&"chain"in n&&!n.chain),a=ts(t);return Ee(i,(function(n){var r=e[n];t[n]=r,a&&(t.prototype[n]=function(){var e=this.__chain__;if(o||e){var n=t(this.__wrapped__),i=n.__actions__=ji(this.__actions__);return i.push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,De([this.value()],arguments))})})),t}function hu(){}var du=Vi(je),fu=Vi(ke),pu=Vi(ze);function yu(t){return Io(t)?We(Uo(t)):function(t){return function(e){return Er(e,t)}}(t)}var mu=Gi(),gu=Gi(!0);function vu(){return[]}function wu(){return!1}var bu=Fi((function(t,e){return t+e}),0),Mu=Ji("ceil"),Au=Fi((function(t,e){return t/e}),1),Iu=Ji("floor");var Nu,Eu=Fi((function(t,e){return t*e}),1),xu=Ji("round"),ku=Fi((function(t,e){return t-e}),0);return Yn.after=function(t,e){if("function"!=typeof e)throw new St(r);return t=gs(t),function(){if(--t<1)return e.apply(this,arguments)}},Yn.ary=Sa,Yn.assign=As,Yn.assignIn=Is,Yn.assignInWith=Ns,Yn.assignWith=Es,Yn.at=xs,Yn.before=ja,Yn.bind=Da,Yn.bindAll=nu,Yn.bindKey=Ca,Yn.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Ga(t)?t:[t]},Yn.chain=ya,Yn.chunk=function(t,e,r){e=(r?Ao(t,e,r):e===n)?1:bn(gs(e),0);var i=null==t?0:t.length;if(!i||e<1)return[];for(var o=0,a=0,s=At(me(i/e));o<i;)s[a++]=oi(t,o,o+=e);return s},Yn.compact=function(t){for(var e=-1,n=null==t?0:t.length,r=0,i=[];++e<n;){var o=t[e];o&&(i[r++]=o)}return i},Yn.concat=function(){var t=arguments.length;if(!t)return[];for(var e=At(t-1),n=arguments[0],r=t;r--;)e[r-1]=arguments[r];return De(Ga(n)?ji(n):[n],wr(e,1))},Yn.cond=function(t){var e=null==t?0:t.length,n=lo();return t=e?je(t,(function(t){if("function"!=typeof t[1])throw new St(r);return[n(t[0]),t[1]]})):[],Kr((function(n){for(var r=-1;++r<e;){var i=t[r];if(Ie(i[0],this,n))return Ie(i[1],this,n)}}))},Yn.conforms=function(t){return function(t){var e=Os(t);return function(n){return hr(n,t,e)}}(lr(t,1))},Yn.constant=ru,Yn.countBy=va,Yn.create=function(t,e){var n=Wn(t);return null==e?n:ar(n,e)},Yn.curry=function t(e,r,i){var o=$i(e,8,n,n,n,n,n,r=i?n:r);return o.placeholder=t.placeholder,o},Yn.curryRight=function t(e,r,i){var o=$i(e,a,n,n,n,n,n,r=i?n:r);return o.placeholder=t.placeholder,o},Yn.debounce=Oa,Yn.defaults=ks,Yn.defaultsDeep=Ts,Yn.defer=za,Yn.delay=Pa,Yn.difference=Wo,Yn.differenceBy=Fo,Yn.differenceWith=Vo,Yn.drop=function(t,e,r){var i=null==t?0:t.length;return i?oi(t,(e=r||e===n?1:gs(e))<0?0:e,i):[]},Yn.dropRight=function(t,e,r){var i=null==t?0:t.length;return i?oi(t,0,(e=i-(e=r||e===n?1:gs(e)))<0?0:e):[]},Yn.dropRightWhile=function(t,e){return t&&t.length?yi(t,lo(e,3),!0,!0):[]},Yn.dropWhile=function(t,e){return t&&t.length?yi(t,lo(e,3),!0):[]},Yn.fill=function(t,e,r,i){var o=null==t?0:t.length;return o?(r&&"number"!=typeof r&&Ao(t,e,r)&&(r=0,i=o),function(t,e,r,i){var o=t.length;for((r=gs(r))<0&&(r=-r>o?0:o+r),(i=i===n||i>o?o:gs(i))<0&&(i+=o),i=r>i?0:vs(i);r<i;)t[r++]=e;return t}(t,e,r,i)):[]},Yn.filter=function(t,e){return(Ga(t)?Te:vr)(t,lo(e,3))},Yn.flatMap=function(t,e){return wr(xa(t,e),1)},Yn.flatMapDeep=function(t,e){return wr(xa(t,e),h)},Yn.flatMapDepth=function(t,e,r){return r=r===n?1:gs(r),wr(xa(t,e),r)},Yn.flatten=qo,Yn.flattenDeep=function(t){return(null==t?0:t.length)?wr(t,h):[]},Yn.flattenDepth=function(t,e){return(null==t?0:t.length)?wr(t,e=e===n?1:gs(e)):[]},Yn.flip=function(t){return $i(t,512)},Yn.flow=iu,Yn.flowRight=ou,Yn.fromPairs=function(t){for(var e=-1,n=null==t?0:t.length,r={};++e<n;){var i=t[e];r[i[0]]=i[1]}return r},Yn.functions=function(t){return null==t?[]:Nr(t,Os(t))},Yn.functionsIn=function(t){return null==t?[]:Nr(t,zs(t))},Yn.groupBy=Ia,Yn.initial=function(t){return(null==t?0:t.length)?oi(t,0,-1):[]},Yn.intersection=Jo,Yn.intersectionBy=Xo,Yn.intersectionWith=Ko,Yn.invert=js,Yn.invertBy=Ds,Yn.invokeMap=Na,Yn.iteratee=su,Yn.keyBy=Ea,Yn.keys=Os,Yn.keysIn=zs,Yn.map=xa,Yn.mapKeys=function(t,e){var n={};return e=lo(e,3),Ar(t,(function(t,r,i){sr(n,e(t,r,i),t)})),n},Yn.mapValues=function(t,e){var n={};return e=lo(e,3),Ar(t,(function(t,r,i){sr(n,r,e(t,r,i))})),n},Yn.matches=function(t){return Yr(lr(t,1))},Yn.matchesProperty=function(t,e){return Wr(t,lr(e,1))},Yn.memoize=_a,Yn.merge=Ps,Yn.mergeWith=_s,Yn.method=uu,Yn.methodOf=cu,Yn.mixin=lu,Yn.negate=Ba,Yn.nthArg=function(t){return t=gs(t),Kr((function(e){return Vr(e,t)}))},Yn.omit=Bs,Yn.omitBy=function(t,e){return Us(t,Ba(lo(e)))},Yn.once=function(t){return ja(2,t)},Yn.orderBy=function(t,e,r,i){return null==t?[]:(Ga(e)||(e=null==e?[]:[e]),Ga(r=i?n:r)||(r=null==r?[]:[r]),Hr(t,e,r))},Yn.over=du,Yn.overArgs=Ra,Yn.overEvery=fu,Yn.overSome=pu,Yn.partial=Ua,Yn.partialRight=Qa,Yn.partition=ka,Yn.pick=Rs,Yn.pickBy=Us,Yn.property=yu,Yn.propertyOf=function(t){return function(e){return null==t?n:Er(t,e)}},Yn.pull=ta,Yn.pullAll=ea,Yn.pullAllBy=function(t,e,n){return t&&t.length&&e&&e.length?qr(t,e,lo(n,2)):t},Yn.pullAllWith=function(t,e,r){return t&&t.length&&e&&e.length?qr(t,e,n,r):t},Yn.pullAt=na,Yn.range=mu,Yn.rangeRight=gu,Yn.rearg=Ya,Yn.reject=function(t,e){return(Ga(t)?Te:vr)(t,Ba(lo(e,3)))},Yn.remove=function(t,e){var n=[];if(!t||!t.length)return n;var r=-1,i=[],o=t.length;for(e=lo(e,3);++r<o;){var a=t[r];e(a,r,t)&&(n.push(a),i.push(r))}return Zr(t,i),n},Yn.rest=function(t,e){if("function"!=typeof t)throw new St(r);return Kr(t,e=e===n?e:gs(e))},Yn.reverse=ra,Yn.sampleSize=function(t,e,r){return e=(r?Ao(t,e,r):e===n)?1:gs(e),(Ga(t)?tr:ti)(t,e)},Yn.set=function(t,e,n){return null==t?t:ei(t,e,n)},Yn.setWith=function(t,e,r,i){return i="function"==typeof i?i:n,null==t?t:ei(t,e,r,i)},Yn.shuffle=function(t){return(Ga(t)?er:ii)(t)},Yn.slice=function(t,e,r){var i=null==t?0:t.length;return i?(r&&"number"!=typeof r&&Ao(t,e,r)?(e=0,r=i):(e=null==e?0:gs(e),r=r===n?i:gs(r)),oi(t,e,r)):[]},Yn.sortBy=Ta,Yn.sortedUniq=function(t){return t&&t.length?ci(t):[]},Yn.sortedUniqBy=function(t,e){return t&&t.length?ci(t,lo(e,2)):[]},Yn.split=function(t,e,r){return r&&"number"!=typeof r&&Ao(t,e,r)&&(e=r=n),(r=r===n?p:r>>>0)?(t=Ms(t))&&("string"==typeof e||null!=e&&!us(e))&&!(e=hi(e))&&on(t)?Ii(dn(t),0,r):t.split(e,r):[]},Yn.spread=function(t,e){if("function"!=typeof t)throw new St(r);return e=null==e?0:bn(gs(e),0),Kr((function(n){var r=n[e],i=Ii(n,0,e);return r&&De(i,r),Ie(t,this,i)}))},Yn.tail=function(t){var e=null==t?0:t.length;return e?oi(t,1,e):[]},Yn.take=function(t,e,r){return t&&t.length?oi(t,0,(e=r||e===n?1:gs(e))<0?0:e):[]},Yn.takeRight=function(t,e,r){var i=null==t?0:t.length;return i?oi(t,(e=i-(e=r||e===n?1:gs(e)))<0?0:e,i):[]},Yn.takeRightWhile=function(t,e){return t&&t.length?yi(t,lo(e,3),!1,!0):[]},Yn.takeWhile=function(t,e){return t&&t.length?yi(t,lo(e,3)):[]},Yn.tap=function(t,e){return e(t),t},Yn.throttle=function(t,e,n){var i=!0,o=!0;if("function"!=typeof t)throw new St(r);return rs(n)&&(i="leading"in n?!!n.leading:i,o="trailing"in n?!!n.trailing:o),Oa(t,e,{leading:i,maxWait:e,trailing:o})},Yn.thru=ma,Yn.toArray=ys,Yn.toPairs=Qs,Yn.toPairsIn=Ys,Yn.toPath=function(t){return Ga(t)?je(t,Uo):hs(t)?[t]:ji(Ro(Ms(t)))},Yn.toPlainObject=bs,Yn.transform=function(t,e,n){var r=Ga(t),i=r||Xa(t)||ds(t);if(e=lo(e,4),null==n){var o=t&&t.constructor;n=i?r?new o:[]:rs(t)&&ts(o)?Wn(Gt(t)):{}}return(i?Ee:Ar)(t,(function(t,r,i){return e(n,t,r,i)})),n},Yn.unary=function(t){return Sa(t,1)},Yn.union=ia,Yn.unionBy=oa,Yn.unionWith=aa,Yn.uniq=function(t){return t&&t.length?di(t):[]},Yn.uniqBy=function(t,e){return t&&t.length?di(t,lo(e,2)):[]},Yn.uniqWith=function(t,e){return e="function"==typeof e?e:n,t&&t.length?di(t,n,e):[]},Yn.unset=function(t,e){return null==t||fi(t,e)},Yn.unzip=sa,Yn.unzipWith=ua,Yn.update=function(t,e,n){return null==t?t:pi(t,e,bi(n))},Yn.updateWith=function(t,e,r,i){return i="function"==typeof i?i:n,null==t?t:pi(t,e,bi(r),i)},Yn.values=Ws,Yn.valuesIn=function(t){return null==t?[]:Je(t,zs(t))},Yn.without=ca,Yn.words=tu,Yn.wrap=function(t,e){return Ua(bi(e),t)},Yn.xor=la,Yn.xorBy=ha,Yn.xorWith=da,Yn.zip=fa,Yn.zipObject=function(t,e){return vi(t||[],e||[],rr)},Yn.zipObjectDeep=function(t,e){return vi(t||[],e||[],ei)},Yn.zipWith=pa,Yn.entries=Qs,Yn.entriesIn=Ys,Yn.extend=Is,Yn.extendWith=Ns,lu(Yn,Yn),Yn.add=bu,Yn.attempt=eu,Yn.camelCase=Fs,Yn.capitalize=Vs,Yn.ceil=Mu,Yn.clamp=function(t,e,r){return r===n&&(r=e,e=n),r!==n&&(r=(r=ws(r))==r?r:0),e!==n&&(e=(e=ws(e))==e?e:0),cr(ws(t),e,r)},Yn.clone=function(t){return lr(t,4)},Yn.cloneDeep=function(t){return lr(t,5)},Yn.cloneDeepWith=function(t,e){return lr(t,5,e="function"==typeof e?e:n)},Yn.cloneWith=function(t,e){return lr(t,4,e="function"==typeof e?e:n)},Yn.conformsTo=function(t,e){return null==e||hr(t,e,Os(e))},Yn.deburr=Hs,Yn.defaultTo=function(t,e){return null==t||t!=t?e:t},Yn.divide=Au,Yn.endsWith=function(t,e,r){t=Ms(t),e=hi(e);var i=t.length,o=r=r===n?i:cr(gs(r),0,i);return(r-=e.length)>=0&&t.slice(r,o)==e},Yn.eq=Wa,Yn.escape=function(t){return(t=Ms(t))&&Z.test(t)?t.replace(G,nn):t},Yn.escapeRegExp=function(t){return(t=Ms(t))&&rt.test(t)?t.replace(nt,"\\$&"):t},Yn.every=function(t,e,r){var i=Ga(t)?ke:mr;return r&&Ao(t,e,r)&&(e=n),i(t,lo(e,3))},Yn.find=wa,Yn.findIndex=Ho,Yn.findKey=function(t,e){return _e(t,lo(e,3),Ar)},Yn.findLast=ba,Yn.findLastIndex=Go,Yn.findLastKey=function(t,e){return _e(t,lo(e,3),Ir)},Yn.floor=Iu,Yn.forEach=Ma,Yn.forEachRight=Aa,Yn.forIn=function(t,e){return null==t?t:br(t,lo(e,3),zs)},Yn.forInRight=function(t,e){return null==t?t:Mr(t,lo(e,3),zs)},Yn.forOwn=function(t,e){return t&&Ar(t,lo(e,3))},Yn.forOwnRight=function(t,e){return t&&Ir(t,lo(e,3))},Yn.get=Ls,Yn.gt=Fa,Yn.gte=Va,Yn.has=function(t,e){return null!=t&&vo(t,e,Lr)},Yn.hasIn=Ss,Yn.head=Zo,Yn.identity=au,Yn.includes=function(t,e,n,r){t=Za(t)?t:Ws(t),n=n&&!r?gs(n):0;var i=t.length;return n<0&&(n=bn(i+n,0)),ls(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&Re(t,e,n)>-1},Yn.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:gs(n);return i<0&&(i=bn(r+i,0)),Re(t,e,i)},Yn.inRange=function(t,e,r){return e=ms(e),r===n?(r=e,e=0):r=ms(r),function(t,e,n){return t>=Mn(e,n)&&t<bn(e,n)}(t=ws(t),e,r)},Yn.invoke=Cs,Yn.isArguments=Ha,Yn.isArray=Ga,Yn.isArrayBuffer=qa,Yn.isArrayLike=Za,Yn.isArrayLikeObject=Ja,Yn.isBoolean=function(t){return!0===t||!1===t||is(t)&&kr(t)==v},Yn.isBuffer=Xa,Yn.isDate=Ka,Yn.isElement=function(t){return is(t)&&1===t.nodeType&&!ss(t)},Yn.isEmpty=function(t){if(null==t)return!0;if(Za(t)&&(Ga(t)||"string"==typeof t||"function"==typeof t.splice||Xa(t)||ds(t)||Ha(t)))return!t.length;var e=go(t);if(e==I||e==T)return!t.size;if(xo(t))return!Br(t).length;for(var n in t)if(Pt.call(t,n))return!1;return!0},Yn.isEqual=function(t,e){return Or(t,e)},Yn.isEqualWith=function(t,e,r){var i=(r="function"==typeof r?r:n)?r(t,e):n;return i===n?Or(t,e,n,r):!!i},Yn.isError=$a,Yn.isFinite=function(t){return"number"==typeof t&&gn(t)},Yn.isFunction=ts,Yn.isInteger=es,Yn.isLength=ns,Yn.isMap=os,Yn.isMatch=function(t,e){return t===e||zr(t,e,fo(e))},Yn.isMatchWith=function(t,e,r){return r="function"==typeof r?r:n,zr(t,e,fo(e),r)},Yn.isNaN=function(t){return as(t)&&t!=+t},Yn.isNative=function(t){if(Eo(t))throw new Nt("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Pr(t)},Yn.isNil=function(t){return null==t},Yn.isNull=function(t){return null===t},Yn.isNumber=as,Yn.isObject=rs,Yn.isObjectLike=is,Yn.isPlainObject=ss,Yn.isRegExp=us,Yn.isSafeInteger=function(t){return es(t)&&t>=-9007199254740991&&t<=d},Yn.isSet=cs,Yn.isString=ls,Yn.isSymbol=hs,Yn.isTypedArray=ds,Yn.isUndefined=function(t){return t===n},Yn.isWeakMap=function(t){return is(t)&&go(t)==j},Yn.isWeakSet=function(t){return is(t)&&"[object WeakSet]"==kr(t)},Yn.join=function(t,e){return null==t?"":vn.call(t,e)},Yn.kebabCase=Gs,Yn.last=$o,Yn.lastIndexOf=function(t,e,r){var i=null==t?0:t.length;if(!i)return-1;var o=i;return r!==n&&(o=(o=gs(r))<0?bn(i+o,0):Mn(o,i-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,o):Be(t,Qe,o,!0)},Yn.lowerCase=qs,Yn.lowerFirst=Zs,Yn.lt=fs,Yn.lte=ps,Yn.max=function(t){return t&&t.length?gr(t,au,Tr):n},Yn.maxBy=function(t,e){return t&&t.length?gr(t,lo(e,2),Tr):n},Yn.mean=function(t){return Ye(t,au)},Yn.meanBy=function(t,e){return Ye(t,lo(e,2))},Yn.min=function(t){return t&&t.length?gr(t,au,Ur):n},Yn.minBy=function(t,e){return t&&t.length?gr(t,lo(e,2),Ur):n},Yn.stubArray=vu,Yn.stubFalse=wu,Yn.stubObject=function(){return{}},Yn.stubString=function(){return""},Yn.stubTrue=function(){return!0},Yn.multiply=Eu,Yn.nth=function(t,e){return t&&t.length?Vr(t,gs(e)):n},Yn.noConflict=function(){return he._===this&&(he._=Qt),this},Yn.noop=hu,Yn.now=La,Yn.pad=function(t,e,n){t=Ms(t);var r=(e=gs(e))?hn(t):0;if(!e||r>=e)return t;var i=(e-r)/2;return Hi(Pe(i),n)+t+Hi(me(i),n)},Yn.padEnd=function(t,e,n){t=Ms(t);var r=(e=gs(e))?hn(t):0;return e&&r<e?t+Hi(e-r,n):t},Yn.padStart=function(t,e,n){t=Ms(t);var r=(e=gs(e))?hn(t):0;return e&&r<e?Hi(e-r,n)+t:t},Yn.parseInt=function(t,e,n){return n||null==e?e=0:e&&(e=+e),In(Ms(t).replace(it,""),e||0)},Yn.random=function(t,e,r){if(r&&"boolean"!=typeof r&&Ao(t,e,r)&&(e=r=n),r===n&&("boolean"==typeof e?(r=e,e=n):"boolean"==typeof t&&(r=t,t=n)),t===n&&e===n?(t=0,e=1):(t=ms(t),e===n?(e=t,t=0):e=ms(e)),t>e){var i=t;t=e,e=i}if(r||t%1||e%1){var o=Nn();return Mn(t+o*(e-t+se("1e-"+((o+"").length-1))),e)}return Jr(t,e)},Yn.reduce=function(t,e,n){var r=Ga(t)?Ce:Ve,i=arguments.length<3;return r(t,lo(e,4),n,i,pr)},Yn.reduceRight=function(t,e,n){var r=Ga(t)?Oe:Ve,i=arguments.length<3;return r(t,lo(e,4),n,i,yr)},Yn.repeat=function(t,e,r){return e=(r?Ao(t,e,r):e===n)?1:gs(e),Xr(Ms(t),e)},Yn.replace=function(){var t=arguments,e=Ms(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Yn.result=function(t,e,r){var i=-1,o=(e=Mi(e,t)).length;for(o||(o=1,t=n);++i<o;){var a=null==t?n:t[Uo(e[i])];a===n&&(i=o,a=r),t=ts(a)?a.call(t):a}return t},Yn.round=xu,Yn.runInContext=t,Yn.sample=function(t){return(Ga(t)?$n:$r)(t)},Yn.size=function(t){if(null==t)return 0;if(Za(t))return ls(t)?hn(t):t.length;var e=go(t);return e==I||e==T?t.size:Br(t).length},Yn.snakeCase=Js,Yn.some=function(t,e,r){var i=Ga(t)?ze:ai;return r&&Ao(t,e,r)&&(e=n),i(t,lo(e,3))},Yn.sortedIndex=function(t,e){return si(t,e)},Yn.sortedIndexBy=function(t,e,n){return ui(t,e,lo(n,2))},Yn.sortedIndexOf=function(t,e){var n=null==t?0:t.length;if(n){var r=si(t,e);if(r<n&&Wa(t[r],e))return r}return-1},Yn.sortedLastIndex=function(t,e){return si(t,e,!0)},Yn.sortedLastIndexBy=function(t,e,n){return ui(t,e,lo(n,2),!0)},Yn.sortedLastIndexOf=function(t,e){if(null==t?0:t.length){var n=si(t,e,!0)-1;if(Wa(t[n],e))return n}return-1},Yn.startCase=Xs,Yn.startsWith=function(t,e,n){return t=Ms(t),n=null==n?0:cr(gs(n),0,t.length),e=hi(e),t.slice(n,n+e.length)==e},Yn.subtract=ku,Yn.sum=function(t){return t&&t.length?He(t,au):0},Yn.sumBy=function(t,e){return t&&t.length?He(t,lo(e,2)):0},Yn.template=function(t,e,r){var i=Yn.templateSettings;r&&Ao(t,e,r)&&(e=n),t=Ms(t),e=Ns({},e,i,to);var o,a,s=Ns({},e.imports,i.imports,to),u=Os(s),c=Je(s,u),l=0,h=e.interpolate||bt,d="__p += '",f=Tt((e.escape||bt).source+"|"+h.source+"|"+(h===K?dt:bt).source+"|"+(e.evaluate||bt).source+"|$","g"),p="//# sourceURL="+(Pt.call(e,"sourceURL")?(e.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++re+"]")+"\n";t.replace(f,(function(e,n,r,i,s,u){return r||(r=i),d+=t.slice(l,u).replace(Mt,rn),n&&(o=!0,d+="' +\n__e("+n+") +\n'"),s&&(a=!0,d+="';\n"+s+";\n__p += '"),r&&(d+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),l=u+e.length,e})),d+="';\n";var y=Pt.call(e,"variable")&&e.variable;if(y){if(lt.test(y))throw new Nt("Invalid `variable` option passed into `_.template`")}else d="with (obj) {\n"+d+"\n}\n";d=(a?d.replace(W,""):d).replace(F,"$1").replace(V,"$1;"),d="function("+(y||"obj")+") {\n"+(y?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(o?", __e = _.escape":"")+(a?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var m=eu((function(){return Et(u,p+"return "+d).apply(n,c)}));if(m.source=d,$a(m))throw m;return m},Yn.times=function(t,e){if((t=gs(t))<1||t>d)return[];var n=p,r=Mn(t,p);e=lo(e),t-=p;for(var i=Ge(r,e);++n<t;)e(n);return i},Yn.toFinite=ms,Yn.toInteger=gs,Yn.toLength=vs,Yn.toLower=function(t){return Ms(t).toLowerCase()},Yn.toNumber=ws,Yn.toSafeInteger=function(t){return t?cr(gs(t),-9007199254740991,d):0===t?t:0},Yn.toString=Ms,Yn.toUpper=function(t){return Ms(t).toUpperCase()},Yn.trim=function(t,e,r){if((t=Ms(t))&&(r||e===n))return qe(t);if(!t||!(e=hi(e)))return t;var i=dn(t),o=dn(e);return Ii(i,Ke(i,o),$e(i,o)+1).join("")},Yn.trimEnd=function(t,e,r){if((t=Ms(t))&&(r||e===n))return t.slice(0,fn(t)+1);if(!t||!(e=hi(e)))return t;var i=dn(t);return Ii(i,0,$e(i,dn(e))+1).join("")},Yn.trimStart=function(t,e,r){if((t=Ms(t))&&(r||e===n))return t.replace(it,"");if(!t||!(e=hi(e)))return t;var i=dn(t);return Ii(i,Ke(i,dn(e))).join("")},Yn.truncate=function(t,e){var r=30,i="...";if(rs(e)){var o="separator"in e?e.separator:o;r="length"in e?gs(e.length):r,i="omission"in e?hi(e.omission):i}var a=(t=Ms(t)).length;if(on(t)){var s=dn(t);a=s.length}if(r>=a)return t;var u=r-hn(i);if(u<1)return i;var c=s?Ii(s,0,u).join(""):t.slice(0,u);if(o===n)return c+i;if(s&&(u+=c.length-u),us(o)){if(t.slice(u).search(o)){var l,h=c;for(o.global||(o=Tt(o.source,Ms(ft.exec(o))+"g")),o.lastIndex=0;l=o.exec(h);)var d=l.index;c=c.slice(0,d===n?u:d)}}else if(t.indexOf(hi(o),u)!=u){var f=c.lastIndexOf(o);f>-1&&(c=c.slice(0,f))}return c+i},Yn.unescape=function(t){return(t=Ms(t))&&q.test(t)?t.replace(H,pn):t},Yn.uniqueId=function(t){var e=++_t;return Ms(t)+e},Yn.upperCase=Ks,Yn.upperFirst=$s,Yn.each=Ma,Yn.eachRight=Aa,Yn.first=Zo,lu(Yn,(Nu={},Ar(Yn,(function(t,e){Pt.call(Yn.prototype,e)||(Nu[e]=t)})),Nu),{chain:!1}),Yn.VERSION="4.17.21",Ee(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){Yn[t].placeholder=Yn})),Ee(["drop","take"],(function(t,e){Hn.prototype[t]=function(r){r=r===n?1:bn(gs(r),0);var i=this.__filtered__&&!e?new Hn(this):this.clone();return i.__filtered__?i.__takeCount__=Mn(r,i.__takeCount__):i.__views__.push({size:Mn(r,p),type:t+(i.__dir__<0?"Right":"")}),i},Hn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),Ee(["filter","map","takeWhile"],(function(t,e){var n=e+1,r=1==n||3==n;Hn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:lo(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}})),Ee(["head","last"],(function(t,e){var n="take"+(e?"Right":"");Hn.prototype[t]=function(){return this[n](1).value()[0]}})),Ee(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");Hn.prototype[t]=function(){return this.__filtered__?new Hn(this):this[n](1)}})),Hn.prototype.compact=function(){return this.filter(au)},Hn.prototype.find=function(t){return this.filter(t).head()},Hn.prototype.findLast=function(t){return this.reverse().find(t)},Hn.prototype.invokeMap=Kr((function(t,e){return"function"==typeof t?new Hn(this):this.map((function(n){return Dr(n,t,e)}))})),Hn.prototype.reject=function(t){return this.filter(Ba(lo(t)))},Hn.prototype.slice=function(t,e){t=gs(t);var r=this;return r.__filtered__&&(t>0||e<0)?new Hn(r):(t<0?r=r.takeRight(-t):t&&(r=r.drop(t)),e!==n&&(r=(e=gs(e))<0?r.dropRight(-e):r.take(e-t)),r)},Hn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Hn.prototype.toArray=function(){return this.take(p)},Ar(Hn.prototype,(function(t,e){var r=/^(?:filter|find|map|reject)|While$/.test(e),i=/^(?:head|last)$/.test(e),o=Yn[i?"take"+("last"==e?"Right":""):e],a=i||/^find/.test(e);o&&(Yn.prototype[e]=function(){var e=this.__wrapped__,s=i?[1]:arguments,u=e instanceof Hn,c=s[0],l=u||Ga(e),h=function(t){var e=o.apply(Yn,De([t],s));return i&&d?e[0]:e};l&&r&&"function"==typeof c&&1!=c.length&&(u=l=!1);var d=this.__chain__,f=!!this.__actions__.length,p=a&&!d,y=u&&!f;if(!a&&l){e=y?e:new Hn(this);var m=t.apply(e,s);return m.__actions__.push({func:ma,args:[h],thisArg:n}),new Vn(m,d)}return p&&y?t.apply(this,s):(m=this.thru(h),p?i?m.value()[0]:m.value():m)})})),Ee(["pop","push","shift","sort","splice","unshift"],(function(t){var e=jt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);Yn.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var i=this.value();return e.apply(Ga(i)?i:[],t)}return this[n]((function(n){return e.apply(Ga(n)?n:[],t)}))}})),Ar(Hn.prototype,(function(t,e){var n=Yn[e];if(n){var r=n.name+"";Pt.call(Cn,r)||(Cn[r]=[]),Cn[r].push({name:e,func:n})}})),Cn[Yi(n,2).name]=[{name:"wrapper",func:n}],Hn.prototype.clone=function(){var t=new Hn(this.__wrapped__);return t.__actions__=ji(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=ji(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=ji(this.__views__),t},Hn.prototype.reverse=function(){if(this.__filtered__){var t=new Hn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},Hn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Ga(t),r=e<0,i=n?t.length:0,o=function(t,e,n){var r=-1,i=n.length;for(;++r<i;){var o=n[r],a=o.size;switch(o.type){case"drop":t+=a;break;case"dropRight":e-=a;break;case"take":e=Mn(e,t+a);break;case"takeRight":t=bn(t,e-a)}}return{start:t,end:e}}(0,i,this.__views__),a=o.start,s=o.end,u=s-a,c=r?s:a-1,l=this.__iteratees__,h=l.length,d=0,f=Mn(u,this.__takeCount__);if(!n||!r&&i==u&&f==u)return mi(t,this.__actions__);var p=[];t:for(;u--&&d<f;){for(var y=-1,m=t[c+=e];++y<h;){var g=l[y],v=g.iteratee,w=g.type,b=v(m);if(2==w)m=b;else if(!b){if(1==w)continue t;break t}}p[d++]=m}return p},Yn.prototype.at=ga,Yn.prototype.chain=function(){return ya(this)},Yn.prototype.commit=function(){return new Vn(this.value(),this.__chain__)},Yn.prototype.next=function(){this.__values__===n&&(this.__values__=ys(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?n:this.__values__[this.__index__++]}},Yn.prototype.plant=function(t){for(var e,r=this;r instanceof Fn;){var i=Yo(r);i.__index__=0,i.__values__=n,e?o.__wrapped__=i:e=i;var o=i;r=r.__wrapped__}return o.__wrapped__=t,e},Yn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Hn){var e=t;return this.__actions__.length&&(e=new Hn(this)),(e=e.reverse()).__actions__.push({func:ma,args:[ra],thisArg:n}),new Vn(e,this.__chain__)}return this.thru(ra)},Yn.prototype.toJSON=Yn.prototype.valueOf=Yn.prototype.value=function(){return mi(this.__wrapped__,this.__actions__)},Yn.prototype.first=Yn.prototype.head,ae&&(Yn.prototype[ae]=function(){return this}),Yn}();fe?((fe.exports=yn)._=yn,de._=yn):he._=yn}).call(Gf)})),mF="_DePayConnectDialogPreviouslyConnectedWallet",gF=function(t){localStorage[mF]=t},vF=function(t){var e,n,r=ek.useRef(),i=Mx(ek.useState(),2),o=i[0],a=i[1],s=Mx(ek.useState(),2),u=s[0],c=s[1],l=Mx(ek.useState(),2),h=l[0],d=l[1],f=Mx(ek.useState(),2),p=f[0],y=f[1],m=Mx(ek.useState(),2),g=m[0],v=m[1],w=Mx(ek.useState(),2),b=w[0],M=w[1],A=Mx(ek.useState(),2);A[0],A[1];var I=Mx(ek.useState(!1),2),N=I[0],E=I[1],x=Mx(ek.useState(!1),2),k=x[0],T=x[1],L=Mx(ek.useState(),2),S=L[0],j=L[1];ek.useContext(uF).navigate;var D=ek.useContext(rC).accept,C=ek.createElement("div",{className:"PaddingTopS PaddingLeftM PaddingRightM"},(null===(e=t.wallet)||void 0===e?void 0:e.logo)&&ek.createElement("div",{className:"PaddingTopXS"},ek.createElement("div",{className:"LineHeightL FontSizeL PaddingTopS"},ek.createElement("span",{className:"CardImage rounded large"},ek.createElement("img",{className:"transparent",src:t.wallet.logo}))))),O=function(){return new pF({width:340,height:340,type:"svg",dotsOptions:{type:"extra-rounded"},cornersSquareOptions:{type:"rounded"},backgroundOptions:{color:"transparent"}})},z=ek.useCallback(yF.debounce((function(){var e,n;if(null!==(e=t.platform)&&void 0!==e&&e.solanaPay&&D&&D.every((function(t){return t.amount})))return t.continueWithSolanaPay();if("function"==typeof t.platform.qr){var r=O();return r.update({data:t.platform.qr()}),void j(r)}switch(null===(n=t.platform)||void 0===n?void 0:n.qr){case"WalletConnectV1":case"WalletConnectV2":if(null==S){localStorage[atob("ZGVwYXk6d2FsbGV0czp3YzI6cHJvamVjdElk")]=atob("YjFmYzJmMDZlYTIxMDdmY2Q5OWM2OGY0MTI3MTQxYWI=");var i=new LE[t.platform.qr];i.connect({name:t.wallet.name,logo:t.wallet.logo,reconnect:!0,connect:function(t){var e=t.uri,n=O();n.update({data:e}),j(n)}}).then((function(e){t.resolve(e,i)}))}break;case"WalletLink":var o=new LE[t.platform.qr];o.connect({connect:function(t){var e=t.uri,n=O();n.update({data:e}),j(n)}}).then((function(e){t.resolve(e,o)}))}}),100),[]);return ek.useEffect((function(){mx(bx.mark((function e(){var n,r,i,o,s,u,l,h,f,p,m,g;return bx.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(l=!1,null===(n=t.wallet)||void 0===n||!n.extension){e.next=7;break}return e.next=4,LE[t.wallet.extension].isAvailable();case 4:l=e.sent,e.next=11;break;case 7:if(null===(r=t.wallet)||void 0===r||!r.extensions){e.next=11;break}return e.next=10,Promise.all(t.wallet.extensions.map(function(){var t=mx(bx.mark((function t(e){return bx.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,LE[e].isAvailable();case 2:return t.abrupt("return",t.sent);case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()));case 10:l=e.sent.filter(Boolean)[0];case 11:if(a(l),null===(i=t.platform)||void 0===i||!i.connect){e.next=21;break}return e.next=15,LE[t.platform.connect].isAvailable();case 15:if(e.t1=e.sent,e.t1){e.next=18;break}e.t1=!1;case 18:e.t0=e.t1,e.next=22;break;case 21:e.t0=!1;case 22:h=e.t0,M(h),f=!!t.platform&&t.platform.connect,c(f),p=!(null===(o=t.platform)||void 0===o||!o.copyLink),y(p),m=!!t.platform&&t.platform.open,d(m),g=(null===(s=t.platform)||void 0===s?void 0:s.solanaPay)&&D&&D.every((function(t){return t.amount}))||(null===(u=t.platform)||void 0===u?void 0:u.qr)&&(!N||"WalletLink"===t.platform.qr),v(g);case 32:case"end":return e.stop()}}),e)})))()}),[]),ek.useEffect((function(){var e,n,r,i;void 0!==b&&E(!o&&!fF()&&!(null!==(e=t.wallet)&&void 0!==e&&null!==(n=e.desktop)&&void 0!==n&&n.native)&&((null===(r=t.platform)||void 0===r?void 0:r.qr)||(null===(i=t.platform)||void 0===i?void 0:i.solanaPay)))}),[o,b]),ek.useEffect((function(){var e,n;N&&(null!==(e=t.platform)&&void 0!==e&&e.qr||null!==(n=t.platform)&&void 0!==n&&n.solanaPay)&&z()}),[N]),ek.useEffect((function(){N&&S&&r&&r.current&&(r.current.innerHTML="",S.append(r.current))}),[S]),N&&null!==(n=t.platform)&&void 0!==n&&n.solanaPay&&D&&D.every((function(t){return t.amount}))?null:ek.createElement(dF,{stacked:!0,header:C,footer:!1,body:ek.createElement("div",{className:"TextCenter PaddingBottomS"},ek.createElement("div",{className:"PaddingLeftL PaddingRightL"},ek.createElement("h1",{className:"LineHeightL Text FontSizeL FontWeightBold"},"Connect ",t.wallet.name)),!window.location.protocol.match("https")&&ek.createElement("div",{className:"PaddingTopS PaddingLeftL PaddingRightL"},ek.createElement("div",{className:"Alert FontSizeS"},ek.createElement("strong",null,"Most wallets do not connect to http!"))),!o&&!u&&!h&&!p&&!g&&ek.createElement("div",{className:"PaddingTopS PaddingBottomS PaddingLeftL PaddingRightL"},ek.createElement("div",{className:"Alert FontSizeS"},ek.createElement("strong",null,"Unable to connect to this wallet!"))),N&&ek.createElement("div",null,ek.createElement("div",{ref:r,className:"QRCode"},N&&void 0===S&&ek.createElement("div",{className:"PaddingTopS"},ek.createElement("div",{className:"Skeleton",style:{borderRadius:"18px",width:"305px",height:"305px"}},ek.createElement("div",{className:"SkeletonBackground"})))),N&&void 0===S&&ek.createElement("div",{className:"Opacity05 PaddingBottomXS PaddingTopS"},ek.createElement("small",null,"Generating QR code...")),N&&void 0!==S&&ek.createElement("div",{className:"Opacity05 PaddingBottomXS PaddingTopXS"},ek.createElement("small",null,"Scan QR code with your wallet")),(o||u||h||p)&&ek.createElement("div",null,ek.createElement("div",{className:"PaddingBottomXS PaddingTopS Opacity03",style:{display:"flex"}},ek.createElement("div",{style:{borderBottom:"1px solid black",flex:"0.4",position:"relative",top:"-9px"},className:"Opacity05"}),ek.createElement("div",{style:{flex:"0.2"},className:"PaddingLeftXS PaddingRightXS"},ek.createElement("small",null,"or")),ek.createElement("div",{style:{borderBottom:"1px solid black",flex:"0.4",position:"relative",top:"-9px"},className:"Opacity05"})))),(o||u||h||g&&!N||p)&&ek.createElement("div",{className:"PaddingLeftL PaddingRightL PaddingTopS PaddingBottomS"},o&&ek.createElement("div",{className:"PaddingBottomXS"},t.showConnectExtensionWarning&&ek.createElement("div",{className:"PaddingTopS PaddingBottomS PaddingLeftS PaddingRightS"},ek.createElement("div",{className:"Alert"},ek.createElement("span",{className:"FontWeightBold PaddingBottomXS"},"Your wallet extension is already open and asking to connect. It might be hidden."))),t.connectingExtension&&ek.createElement("div",{className:"Card disabled small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("div",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("div",{className:"PaddingTopXS"},ek.createElement("div",{className:"Loading Icon medium",style:{position:"relative"}}))),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Connecting extension"))),!t.connectingExtension&&ek.createElement("button",{onClick:function(){return t.connectExtension(t.wallet)},className:"Card small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("span",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("img",{className:"transparent ",title:"Connect your wallet",style:{height:"26px"},src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyNTAgMjUwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyNTAgMjUwOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxnPgoJPHBhdGggZD0iTTE3Mi44LDY4LjNjLTQuOS0yLjItNy40LTguNC00LjUtMTMuNmM1LjMtOS40LDEwLTE4LjYsNC4zLTI5LjFjLTctMTIuNy0yNC4xLTE3LjQtMzYuNi0xMGMtMTUuNCw5LjEtMTMuNCwyNS42LTUuMSwzOC45CgkJYzMuMyw1LjIsMC45LDExLjYtNC4yLDEzLjlsLTYxLjIsMC4xbDAsMC44bDAuMSwyMS44bDAuMSwzNy45Yy0xLjksNS41LTguNyw4LjQtMTQuMSw1Yy0xMy40LTguMy0yOS44LTEwLjEtMzguOSw1LjMKCQljLTcuMywxMi41LTIuNSwyOS43LDEwLjIsMzYuNWMxMC41LDUuNywxOS43LDEsMjkuMS00LjRjNS40LTMuMSwxMS45LTAuMywxMy44LDVsMC4xLDU5LjhsNTcuMi0wLjFjMC4xLDAsMC4yLDAsMC4zLDBsMy42LDAKCQljNS0yLjMsNy40LTguNyw0LjItMTMuOWMtOC4zLTEzLjMtMTAuMy0yOS44LDUuMS0zOC45YzEyLjUtNy40LDI5LjYtMi43LDM2LjYsMTBjNS43LDEwLjUsMS4xLDE5LjctNC4zLDI5LjEKCQljLTIuOSw1LjItMC41LDExLjQsNC41LDEzLjZsMy42LDBjMC4xLDAsMC4yLDAsMC4zLDBsNTYuNS0wLjFsLTAuMS01OC44Yy0xLjQtNi42LTcuOC05LjItMTQuMS01LjhjLTkuNSw1LjItMTcuOSw5LjgtMjguNCw0LjEKCQljLTEyLjgtNi45LTE4LjItMjMuNy0xMC45LTM2LjNjOS0xNS40LDI1LjUtMTMuNiwzOC45LTUuM2M1LjcsMy41LDEyLjksMC4yLDE0LjQtNS45bC0wLjEtMzUuNEwyMzMuMyw2OWwwLTAuOEwxNzIuOCw2OC4zeiIvPgo8L2c+Cjwvc3ZnPgo="})),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Connect extension")))),u&&ek.createElement("div",{className:"PaddingBottomXS"},t.connectingApp&&ek.createElement("div",{className:"Card disabled small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("div",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("div",{className:"PaddingTopXS"},ek.createElement("div",{className:"Loading Icon medium",style:{position:"relative"}}))),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Connecting app"))),!t.connectingApp&&ek.createElement("button",{onClick:function(){return t.connectViaRedirect(t.wallet)},className:"Card small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("span",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("img",{className:"transparent ",title:"Click to connect app",style:{height:"26px",width:"26px",borderRadius:"8px"},src:t.wallet.logo})),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Connect app")))),h&&ek.createElement("div",{className:"PaddingBottomXS"},ek.createElement("button",{onClick:function(){return t.openInApp(t.wallet)},className:"Card small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("span",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("img",{className:"transparent ",title:"Click to open in app",style:{height:"26px",width:"26px",borderRadius:"8px"},src:t.wallet.logo})),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Open in app")))),g&&!N&&ek.createElement("div",{className:"PaddingBottomXS"},ek.createElement("button",{onClick:function(){E(!0),z()},className:"Card small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("span",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("img",{className:"transparent ",title:"Scan QR code to connect a mobile wallet",style:{height:"26px"},src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIHN2ZyAgUFVCTElDICctLy9XM0MvL0RURCBTVkcgMS4xLy9FTicgICdodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQnPgo8c3ZnIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDEwMDAgMTAwMCIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMWUzIDFlMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1ldGFkYXRhPiBTdmcgVmVjdG9yIEljb25zIDogaHR0cDovL3d3dy5vbmxpbmV3ZWJmb250cy5jb20vaWNvbiA8L21ldGFkYXRhPgo8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDUxMSkgc2NhbGUoLjEgLS4xKSI+PHBhdGggZD0ibTEwMCAyNzk3LjF2LTIyMTIuOWg0NDI1Ljh2NDQyNS44aC00NDI1Ljh2LTIyMTIuOXptMzQ3Ny40IDB2LTEyNjQuNWgtMjUyOXYyNTI5aDI1Mjl2LTEyNjQuNXoiLz48cGF0aCBkPSJtMTY4MC42IDI3OTcuMXYtNjMyLjNoMTI2NC42djEyNjQuNmgtMTI2NC42di02MzIuM3oiLz48cGF0aCBkPSJtNTQ3NC4yIDI3OTcuMXYtMjIxMi45aDQ0MjUuOHY0NDI1LjhoLTQ0MjUuOHYtMjIxMi45em0zNDc3LjQgMHYtMTI2NC41aC0yNTI5djI1MjloMjUyOXYtMTI2NC41eiIvPjxwYXRoIGQ9Im03MDU0LjggMjc5Ny4xdi02MzIuM2gxMjY0LjZ2MTI2NC42aC0xMjY0LjZ2LTYzMi4zeiIvPjxwYXRoIGQ9Im0xMDAtMjU3Ny4xdi0yMjEyLjloNDQyNS44djQ0MjUuOGgtNDQyNS44di0yMjEyLjl6bTM0NzcuNCAwdi0xMjY0LjVoLTI1Mjl2MjUyOWgyNTI5di0xMjY0LjV6Ii8+PHBhdGggZD0ibTE2ODAuNi0yNTc3LjF2LTYzMi4zaDEyNjQuNnYxMjY0LjZoLTEyNjQuNnYtNjMyLjN6Ii8+PHBhdGggZD0ibTU0NzQuMi05MTcuNHYtNTUzLjJoMTEwNi40di0xMTA2LjRoLTExMDYuNHYtMTEwNi40aDExMDYuNHYtMTEwNi42aDExMDYuNHYxMTA2LjRoMTEwNi40di0xMTA2LjRoMTEwNi42djExMDYuNGgtMTEwNi40djExMDYuNGgxMTA2LjR2MTEwNi40aC0xMTA2LjR2MTEwNi40aC0xMTA2LjR2LTExMDYuNGgtMTEwNi40djExMDYuNGgtMTEwNi40di01NTN6bTMzMTkuMy0xMTA2LjV2LTU1My4yaC0xMTA2LjR2LTExMDYuNGgtMTEwNi40djExMDYuNGgxMTA2LjR2MTEwNi40aDExMDYuNHYtNTUzLjJ6Ii8+PC9nPgo8L3N2Zz4K"})),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Scan QR code")))),p&&ek.createElement("div",{className:"PaddingBottomXS TooltipWrapper"},ek.createElement("button",{onClick:function(){var e=new LE[t.platform.copyLink];e.connect({name:t.wallet.name,logo:t.wallet.logo,reconnect:!0,connect:function(t){!function(t,e){const n=document.createElement("textarea");n.value=t,n.setAttribute("readonly",""),n.style={position:"absolute",left:"-9999px"},document.body.appendChild(n);const r=document.getSelection().rangeCount>0&&document.getSelection().getRangeAt(0);n.select();let i=!1;try{i=!!document.execCommand("copy")}catch(t){i=!1}document.body.removeChild(n),r&&document.getSelection&&(document.getSelection().removeAllRanges(),document.getSelection().addRange(r)),e&&e(i)}(t.uri),T(!0),setTimeout((function(){return T(!1)}),3e3)}}).then((function(n){t.resolve(n,e)}))},className:"Card small PaddingTopS PaddingRightXS PaddingBottomS PaddingLeftXS",style:{height:"50px"}},ek.createElement("span",{className:"PaddingTopXS PaddingRightXS PaddingLeftS TextCenter",style:{width:"50px"}},ek.createElement("img",{className:"transparent ",title:"Copy connection link",style:{height:"26px"},src:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iNTEycHgiIGhlaWdodD0iNTEycHgiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiMwMTAxMDEiIGQ9Ik00NTkuNjU0LDIzMy4zNzNsLTkwLjUzMSw5MC41Yy00OS45NjksNTAtMTMxLjAzMSw1MC0xODEsMGMtNy44NzUtNy44NDQtMTQuMDMxLTE2LjY4OC0xOS40MzgtMjUuODEzDQoJbDQyLjA2My00Mi4wNjNjMi0yLjAxNiw0LjQ2OS0zLjE3Miw2LjgyOC00LjUzMWMyLjkwNiw5LjkzOCw3Ljk4NCwxOS4zNDQsMTUuNzk3LDI3LjE1NmMyNC45NTMsMjQuOTY5LDY1LjU2MywyNC45MzgsOTAuNSwwDQoJbDkwLjUtOTAuNWMyNC45NjktMjQuOTY5LDI0Ljk2OS02NS41NjMsMC05MC41MTZjLTI0LjkzOC0yNC45NTMtNjUuNTMxLTI0Ljk1My05MC41LDBsLTMyLjE4OCwzMi4yMTkNCgljLTI2LjEwOS0xMC4xNzItNTQuMjUtMTIuOTA2LTgxLjY0MS04Ljg5MWw2OC41NzgtNjguNTc4YzUwLTQ5Ljk4NCwxMzEuMDMxLTQ5Ljk4NCwxODEuMDMxLDANCglDNTA5LjYyMywxMDIuMzQyLDUwOS42MjMsMTgzLjM4OSw0NTkuNjU0LDIzMy4zNzN6IE0yMjAuMzI2LDM4Mi4xODZsLTMyLjIwMywzMi4yMTljLTI0Ljk1MywyNC45MzgtNjUuNTYzLDI0LjkzOC05MC41MTYsMA0KCWMtMjQuOTUzLTI0Ljk2OS0yNC45NTMtNjUuNTYzLDAtOTAuNTMxbDkwLjUxNi05MC41YzI0Ljk2OS0yNC45NjksNjUuNTQ3LTI0Ljk2OSw5MC41LDBjNy43OTcsNy43OTcsMTIuODc1LDE3LjIwMywxNS44MTMsMjcuMTI1DQoJYzIuMzc1LTEuMzc1LDQuODEzLTIuNSw2LjgxMy00LjVsNDIuMDYzLTQyLjA0N2MtNS4zNzUtOS4xNTYtMTEuNTYzLTE3Ljk2OS0xOS40MzgtMjUuODI4Yy00OS45NjktNDkuOTg0LTEzMS4wMzEtNDkuOTg0LTE4MS4wMTYsMA0KCWwtOTAuNSw5MC41Yy00OS45ODQsNTAtNDkuOTg0LDEzMS4wMzEsMCwxODEuMDMxYzQ5Ljk4NCw0OS45NjksMTMxLjAzMSw0OS45NjksMTgxLjAxNiwwbDY4LjU5NC02OC41OTQNCglDMjc0LjU2MSwzOTUuMDkyLDI0Ni40MiwzOTIuMzQyLDIyMC4zMjYsMzgyLjE4NnoiLz4NCjwvc3ZnPg0K"})),ek.createElement("div",{className:"PaddingLeftS LineHeightXS"},ek.createElement("div",{className:"CardText FontWeightMedium"},"Copy connection link"))),k&&ek.createElement("div",{className:"Tooltip absolute top"},ek.createElement("span",{className:"TooltipArrowDown"}),"Connection link copied"))))})},wF=function(){return navigator.userAgent.toLowerCase().includes("android")},bF=function(){var t=navigator.userAgent.toLowerCase();return t.includes("webview")||t.includes("wv")||navigator.userAgent.toLowerCase().match(/\) mobile\//)&&!t.includes("safari")},MF=function(t){var e,n;if(fF()){if(wF())e=null===(n=t.mobile)||void 0===n?void 0:n.android;else if(Boolean(/iPad|iPhone|iPod/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1)){var r;e=null===(r=t.mobile)||void 0===r?void 0:r.ios}}else e=t.desktop;return e},AF=function(){return ek.createElement("div",{className:"PoweredByWrapper"},ek.createElement("a",{href:"https://depay.com",rel:"noopener noreferrer",target:"_blank",className:"PoweredByLink"},"by DePay"))},IF=function(t){var e,n=t.wallet.extensions.map((function(t){return LE[t].info.blockchains})).flat();t.accept&&(n=n.filter((function(e){return t.accept.some((function(t){return t.blockchain===e}))})));return ek.createElement(dF,{header:ek.createElement("div",{className:"PaddingTopS PaddingBottomS PaddingLeftM PaddingRightM"},(null===(e=t.wallet)||void 0===e?void 0:e.logo)&&ek.createElement("div",{className:"PaddingTopXS"},ek.createElement("div",{className:"LineHeightL FontSizeL PaddingTopS"},ek.createElement("span",{className:"CardImage rounded large"},ek.createElement("img",{className:"transparent",src:t.wallet.logo})))),ek.createElement("div",null,ek.createElement("h1",{className:"LineHeightL Text FontSizeL FontWeightBold"},"Select Blockchain"))),stacked:!0,bodyClassName:"ScrollHeight",body:ek.createElement("div",null,n.map((function(e){return ek.createElement("div",{key:e,className:"Card Row TextLeft",onClick:function(){return function(e){t.onSelect(t.wallet.extensions.find((function(t){return LE[t].info.blockchains.includes(e)})))}(e)}},ek.createElement("div",{className:"CardImage"},ek.createElement("img",{className:"transparent BlockchainLogo",src:Hf[e].logo,style:{backgroundColor:Hf[e].logoBackgroundColor}})),ek.createElement("div",{className:"CardBody"},ek.createElement("span",{className:"CardText"},Hf[e].label)))}))),footer:null})};function NF(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var EF=function(t){var e=Mx(ek.useState(0),2),n=e[0],r=e[1];return ek.useEffect((function(){var e=function(){r(n+1),0!=n&&t.hide()};return window.addEventListener("click",e),function(){window.removeEventListener("click",e)}}),[t.open,n]),ek.createElement("div",{className:"DropDown ".concat(t.open?"open":"")},ek.createElement("ul",null,t.items.map((function(t,e){return ek.createElement("li",{key:e},ek.createElement("button",{className:"DropDownItem",onClick:function(){return t.action()}},t.label))}))))},xF=function(t){return ek.createElement("svg",{className:"MenuIcon Icon",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round"},ek.createElement("line",{x1:"11.6",y1:"17.6",x2:"11.6",y2:"17.6"}),ek.createElement("line",{x1:"11.6",y1:"11.8",x2:"11.6",y2:"11.8"}),ek.createElement("line",{x1:"11.6",y1:"6.2",x2:"11.6",y2:"6.2"}))};function kF(t){return Array.isArray?Array.isArray(t):"[object Array]"===OF(t)}function TF(t){return"string"==typeof t}function LF(t){return"number"==typeof t}function SF(t){return!0===t||!1===t||function(t){return jF(t)&&null!==t}(t)&&"[object Boolean]"==OF(t)}function jF(t){return"object"==typeof t}function DF(t){return null!=t}function CF(t){return!t.trim().length}function OF(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}const zF=Object.prototype.hasOwnProperty;class PF{constructor(t){this._keys=[],this._keyMap={};let e=0;t.forEach((t=>{let n=_F(t);e+=n.weight,this._keys.push(n),this._keyMap[n.id]=n,e+=n.weight})),this._keys.forEach((t=>{t.weight/=e}))}get(t){return this._keyMap[t]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function _F(t){let e=null,n=null,r=null,i=1,o=null;if(TF(t)||kF(t))r=t,e=BF(t),n=RF(t);else{if(!zF.call(t,"name"))throw new Error((t=>`Missing ${t} property in key`)("name"));const a=t.name;if(r=a,zF.call(t,"weight")&&(i=t.weight,i<=0))throw new Error((t=>`Property 'weight' in key '${t}' must be a positive integer`)(a));e=BF(a),n=RF(a),o=t.getFn}return{path:e,id:n,weight:i,src:r,getFn:o}}function BF(t){return kF(t)?t:t.split(".")}function RF(t){return kF(t)?t.join("."):t}var UF={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(t,e)=>t.score===e.score?t.idx<e.idx?-1:1:t.score<e.score?-1:1,includeMatches:!1,findAllMatches:!1,minMatchCharLength:1,location:0,threshold:.6,distance:100,...{useExtendedSearch:!1,getFn:function(t,e){let n=[],r=!1;const i=(t,e,o)=>{if(DF(t))if(e[o]){const a=t[e[o]];if(!DF(a))return;if(o===e.length-1&&(TF(a)||LF(a)||SF(a)))n.push(function(t){return null==t?"":function(t){if("string"==typeof t)return t;let e=t+"";return"0"==e&&1/t==-1/0?"-0":e}(t)}(a));else if(kF(a)){r=!0;for(let t=0,n=a.length;t<n;t+=1)i(a[t],e,o+1)}else e.length&&i(a,e,o+1)}else n.push(t)};return i(t,TF(e)?e.split("."):e,0),r?n:n[0]},ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1}};const QF=/[^ ]+/g;class YF{constructor({getFn:t=UF.getFn,fieldNormWeight:e=UF.fieldNormWeight}={}){this.norm=function(t=1,e=3){const n=new Map,r=Math.pow(10,e);return{get(e){const i=e.match(QF).length;if(n.has(i))return n.get(i);const o=1/Math.pow(i,.5*t),a=parseFloat(Math.round(o*r)/r);return n.set(i,a),a},clear(){n.clear()}}}(e,3),this.getFn=t,this.isCreated=!1,this.setIndexRecords()}setSources(t=[]){this.docs=t}setIndexRecords(t=[]){this.records=t}setKeys(t=[]){this.keys=t,this._keysMap={},t.forEach(((t,e)=>{this._keysMap[t.id]=e}))}create(){!this.isCreated&&this.docs.length&&(this.isCreated=!0,TF(this.docs[0])?this.docs.forEach(((t,e)=>{this._addString(t,e)})):this.docs.forEach(((t,e)=>{this._addObject(t,e)})),this.norm.clear())}add(t){const e=this.size();TF(t)?this._addString(t,e):this._addObject(t,e)}removeAt(t){this.records.splice(t,1);for(let e=t,n=this.size();e<n;e+=1)this.records[e].i-=1}getValueForItemAtKeyId(t,e){return t[this._keysMap[e]]}size(){return this.records.length}_addString(t,e){if(!DF(t)||CF(t))return;let n={v:t,i:e,n:this.norm.get(t)};this.records.push(n)}_addObject(t,e){let n={i:e,$:{}};this.keys.forEach(((e,r)=>{let i=e.getFn?e.getFn(t):this.getFn(t,e.path);if(DF(i))if(kF(i)){let t=[];const e=[{nestedArrIndex:-1,value:i}];for(;e.length;){const{nestedArrIndex:n,value:r}=e.pop();if(DF(r))if(TF(r)&&!CF(r)){let e={v:r,i:n,n:this.norm.get(r)};t.push(e)}else kF(r)&&r.forEach(((t,n)=>{e.push({nestedArrIndex:n,value:t})}))}n.$[r]=t}else if(TF(i)&&!CF(i)){let t={v:i,n:this.norm.get(i)};n.$[r]=t}})),this.records.push(n)}toJSON(){return{keys:this.keys,records:this.records}}}function WF(t,e,{getFn:n=UF.getFn,fieldNormWeight:r=UF.fieldNormWeight}={}){const i=new YF({getFn:n,fieldNormWeight:r});return i.setKeys(t.map(_F)),i.setSources(e),i.create(),i}function FF(t,{errors:e=0,currentLocation:n=0,expectedLocation:r=0,distance:i=UF.distance,ignoreLocation:o=UF.ignoreLocation}={}){const a=e/t.length;if(o)return a;const s=Math.abs(r-n);return i?a+s/i:s?1:a}function VF(t,e,n,{location:r=UF.location,distance:i=UF.distance,threshold:o=UF.threshold,findAllMatches:a=UF.findAllMatches,minMatchCharLength:s=UF.minMatchCharLength,includeMatches:u=UF.includeMatches,ignoreLocation:c=UF.ignoreLocation}={}){if(e.length>32)throw new Error((t=>`Pattern length exceeds max of ${t}.`)(32));const l=e.length,h=t.length,d=Math.max(0,Math.min(r,h));let f=o,p=d;const y=s>1||u,m=y?Array(h):[];let g;for(;(g=t.indexOf(e,p))>-1;){let t=FF(e,{currentLocation:g,expectedLocation:d,distance:i,ignoreLocation:c});if(f=Math.min(t,f),p=g+l,y){let t=0;for(;t<l;)m[g+t]=1,t+=1}}p=-1;let v=[],w=1,b=l+h;const M=1<<l-1;for(let r=0;r<l;r+=1){let o=0,s=b;for(;o<s;){FF(e,{errors:r,currentLocation:d+s,expectedLocation:d,distance:i,ignoreLocation:c})<=f?o=s:b=s,s=Math.floor((b-o)/2+o)}b=s;let u=Math.max(1,d-s+1),g=a?h:Math.min(d+s,h)+l,A=Array(g+2);A[g+1]=(1<<r)-1;for(let o=g;o>=u;o-=1){let a=o-1,s=n[t.charAt(a)];if(y&&(m[a]=+!!s),A[o]=(A[o+1]<<1|1)&s,r&&(A[o]|=(v[o+1]|v[o])<<1|1|v[o+1]),A[o]&M&&(w=FF(e,{errors:r,currentLocation:a,expectedLocation:d,distance:i,ignoreLocation:c}),w<=f)){if(f=w,p=a,p<=d)break;u=Math.max(1,2*d-p)}}if(FF(e,{errors:r+1,currentLocation:d,expectedLocation:d,distance:i,ignoreLocation:c})>f)break;v=A}const A={isMatch:p>=0,score:Math.max(.001,w)};if(y){const t=function(t=[],e=UF.minMatchCharLength){let n=[],r=-1,i=-1,o=0;for(let a=t.length;o<a;o+=1){let a=t[o];a&&-1===r?r=o:a||-1===r||(i=o-1,i-r+1>=e&&n.push([r,i]),r=-1)}return t[o-1]&&o-r>=e&&n.push([r,o-1]),n}(m,s);t.length?u&&(A.indices=t):A.isMatch=!1}return A}function HF(t){let e={};for(let n=0,r=t.length;n<r;n+=1){const i=t.charAt(n);e[i]=(e[i]||0)|1<<r-n-1}return e}class GF{constructor(t,{location:e=UF.location,threshold:n=UF.threshold,distance:r=UF.distance,includeMatches:i=UF.includeMatches,findAllMatches:o=UF.findAllMatches,minMatchCharLength:a=UF.minMatchCharLength,isCaseSensitive:s=UF.isCaseSensitive,ignoreLocation:u=UF.ignoreLocation}={}){if(this.options={location:e,threshold:n,distance:r,includeMatches:i,findAllMatches:o,minMatchCharLength:a,isCaseSensitive:s,ignoreLocation:u},this.pattern=s?t:t.toLowerCase(),this.chunks=[],!this.pattern.length)return;const c=(t,e)=>{this.chunks.push({pattern:t,alphabet:HF(t),startIndex:e})},l=this.pattern.length;if(l>32){let t=0;const e=l%32,n=l-e;for(;t<n;)c(this.pattern.substr(t,32),t),t+=32;if(e){const t=l-32;c(this.pattern.substr(t),t)}}else c(this.pattern,0)}searchIn(t){const{isCaseSensitive:e,includeMatches:n}=this.options;if(e||(t=t.toLowerCase()),this.pattern===t){let e={isMatch:!0,score:0};return n&&(e.indices=[[0,t.length-1]]),e}const{location:r,distance:i,threshold:o,findAllMatches:a,minMatchCharLength:s,ignoreLocation:u}=this.options;let c=[],l=0,h=!1;this.chunks.forEach((({pattern:e,alphabet:d,startIndex:f})=>{const{isMatch:p,score:y,indices:m}=VF(t,e,d,{location:r+f,distance:i,threshold:o,findAllMatches:a,minMatchCharLength:s,includeMatches:n,ignoreLocation:u});p&&(h=!0),l+=y,p&&m&&(c=[...c,...m])}));let d={isMatch:h,score:h?l/this.chunks.length:1};return h&&n&&(d.indices=c),d}}class qF{constructor(t){this.pattern=t}static isMultiMatch(t){return ZF(t,this.multiRegex)}static isSingleMatch(t){return ZF(t,this.singleRegex)}search(){}}function ZF(t,e){const n=t.match(e);return n?n[1]:null}class JF extends qF{constructor(t,{location:e=UF.location,threshold:n=UF.threshold,distance:r=UF.distance,includeMatches:i=UF.includeMatches,findAllMatches:o=UF.findAllMatches,minMatchCharLength:a=UF.minMatchCharLength,isCaseSensitive:s=UF.isCaseSensitive,ignoreLocation:u=UF.ignoreLocation}={}){super(t),this._bitapSearch=new GF(t,{location:e,threshold:n,distance:r,includeMatches:i,findAllMatches:o,minMatchCharLength:a,isCaseSensitive:s,ignoreLocation:u})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(t){return this._bitapSearch.searchIn(t)}}class XF extends qF{constructor(t){super(t)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(t){let e,n=0;const r=[],i=this.pattern.length;for(;(e=t.indexOf(this.pattern,n))>-1;)n=e+i,r.push([e,n-1]);const o=!!r.length;return{isMatch:o,score:o?0:1,indices:r}}}const KF=[class extends qF{constructor(t){super(t)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(t){const e=t===this.pattern;return{isMatch:e,score:e?0:1,indices:[0,this.pattern.length-1]}}},XF,class extends qF{constructor(t){super(t)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(t){const e=t.startsWith(this.pattern);return{isMatch:e,score:e?0:1,indices:[0,this.pattern.length-1]}}},class extends qF{constructor(t){super(t)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(t){const e=!t.startsWith(this.pattern);return{isMatch:e,score:e?0:1,indices:[0,t.length-1]}}},class extends qF{constructor(t){super(t)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(t){const e=!t.endsWith(this.pattern);return{isMatch:e,score:e?0:1,indices:[0,t.length-1]}}},class extends qF{constructor(t){super(t)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(t){const e=t.endsWith(this.pattern);return{isMatch:e,score:e?0:1,indices:[t.length-this.pattern.length,t.length-1]}}},class extends qF{constructor(t){super(t)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(t){const e=-1===t.indexOf(this.pattern);return{isMatch:e,score:e?0:1,indices:[0,t.length-1]}}},JF],$F=KF.length,tV=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/;const eV=new Set([JF.type,XF.type]);class nV{constructor(t,{isCaseSensitive:e=UF.isCaseSensitive,includeMatches:n=UF.includeMatches,minMatchCharLength:r=UF.minMatchCharLength,ignoreLocation:i=UF.ignoreLocation,findAllMatches:o=UF.findAllMatches,location:a=UF.location,threshold:s=UF.threshold,distance:u=UF.distance}={}){this.query=null,this.options={isCaseSensitive:e,includeMatches:n,minMatchCharLength:r,findAllMatches:o,ignoreLocation:i,location:a,threshold:s,distance:u},this.pattern=e?t:t.toLowerCase(),this.query=function(t,e={}){return t.split("|").map((t=>{let n=t.trim().split(tV).filter((t=>t&&!!t.trim())),r=[];for(let t=0,i=n.length;t<i;t+=1){const i=n[t];let o=!1,a=-1;for(;!o&&++a<$F;){const t=KF[a];let n=t.isMultiMatch(i);n&&(r.push(new t(n,e)),o=!0)}if(!o)for(a=-1;++a<$F;){const t=KF[a];let n=t.isSingleMatch(i);if(n){r.push(new t(n,e));break}}}return r}))}(this.pattern,this.options)}static condition(t,e){return e.useExtendedSearch}searchIn(t){const e=this.query;if(!e)return{isMatch:!1,score:1};const{includeMatches:n,isCaseSensitive:r}=this.options;t=r?t:t.toLowerCase();let i=0,o=[],a=0;for(let r=0,s=e.length;r<s;r+=1){const s=e[r];o.length=0,i=0;for(let e=0,r=s.length;e<r;e+=1){const r=s[e],{isMatch:u,indices:c,score:l}=r.search(t);if(!u){a=0,i=0,o.length=0;break}if(i+=1,a+=l,n){const t=r.constructor.type;eV.has(t)?o=[...o,...c]:o.push(c)}}if(i){let t={isMatch:!0,score:a/i};return n&&(t.indices=o),t}}return{isMatch:!1,score:1}}}const rV=[];function iV(t,e){for(let n=0,r=rV.length;n<r;n+=1){let r=rV[n];if(r.condition(t,e))return new r(t,e)}return new GF(t,e)}const oV="$and",aV="$or",sV="$path",uV="$val",cV=t=>!(!t[oV]&&!t[aV]),lV=t=>({[oV]:Object.keys(t).map((e=>({[e]:t[e]})))});function hV(t,e,{auto:n=!0}={}){const r=t=>{let i=Object.keys(t);const o=(t=>!!t[sV])(t);if(!o&&i.length>1&&!cV(t))return r(lV(t));if((t=>!kF(t)&&jF(t)&&!cV(t))(t)){const r=o?t[sV]:i[0],a=o?t[uV]:t[r];if(!TF(a))throw new Error((t=>`Invalid value for key ${t}`)(r));const s={keyId:RF(r),pattern:a};return n&&(s.searcher=iV(a,e)),s}let a={children:[],operator:i[0]};return i.forEach((e=>{const n=t[e];kF(n)&&n.forEach((t=>{a.children.push(r(t))}))})),a};return cV(t)||(t=lV(t)),r(t)}function dV(t,e){const n=t.matches;e.matches=[],DF(n)&&n.forEach((t=>{if(!DF(t.indices)||!t.indices.length)return;const{indices:n,value:r}=t;let i={indices:n,value:r};t.key&&(i.key=t.key.src),t.idx>-1&&(i.refIndex=t.idx),e.matches.push(i)}))}function fV(t,e){e.score=t.score}class pV{constructor(t,e={},n){this.options={...UF,...e},this.options.useExtendedSearch,this._keyStore=new PF(this.options.keys),this.setCollection(t,n)}setCollection(t,e){if(this._docs=t,e&&!(e instanceof YF))throw new Error("Incorrect 'index' type");this._myIndex=e||WF(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(t){DF(t)&&(this._docs.push(t),this._myIndex.add(t))}remove(t=(()=>!1)){const e=[];for(let n=0,r=this._docs.length;n<r;n+=1){const i=this._docs[n];t(i,n)&&(this.removeAt(n),n-=1,r-=1,e.push(i))}return e}removeAt(t){this._docs.splice(t,1),this._myIndex.removeAt(t)}getIndex(){return this._myIndex}search(t,{limit:e=-1}={}){const{includeMatches:n,includeScore:r,shouldSort:i,sortFn:o,ignoreFieldNorm:a}=this.options;let s=TF(t)?TF(this._docs[0])?this._searchStringList(t):this._searchObjectList(t):this._searchLogical(t);return function(t,{ignoreFieldNorm:e=UF.ignoreFieldNorm}){t.forEach((t=>{let n=1;t.matches.forEach((({key:t,norm:r,score:i})=>{const o=t?t.weight:null;n*=Math.pow(0===i&&o?Number.EPSILON:i,(o||1)*(e?1:r))})),t.score=n}))}(s,{ignoreFieldNorm:a}),i&&s.sort(o),LF(e)&&e>-1&&(s=s.slice(0,e)),function(t,e,{includeMatches:n=UF.includeMatches,includeScore:r=UF.includeScore}={}){const i=[];return n&&i.push(dV),r&&i.push(fV),t.map((t=>{const{idx:n}=t,r={item:e[n],refIndex:n};return i.length&&i.forEach((e=>{e(t,r)})),r}))}(s,this._docs,{includeMatches:n,includeScore:r})}_searchStringList(t){const e=iV(t,this.options),{records:n}=this._myIndex,r=[];return n.forEach((({v:t,i:n,n:i})=>{if(!DF(t))return;const{isMatch:o,score:a,indices:s}=e.searchIn(t);o&&r.push({item:t,idx:n,matches:[{score:a,value:t,norm:i,indices:s}]})})),r}_searchLogical(t){const e=hV(t,this.options),n=(t,e,r)=>{if(!t.children){const{keyId:n,searcher:i}=t,o=this._findMatches({key:this._keyStore.get(n),value:this._myIndex.getValueForItemAtKeyId(e,n),searcher:i});return o&&o.length?[{idx:r,item:e,matches:o}]:[]}const i=[];for(let o=0,a=t.children.length;o<a;o+=1){const a=t.children[o],s=n(a,e,r);if(s.length)i.push(...s);else if(t.operator===oV)return[]}return i},r=this._myIndex.records,i={},o=[];return r.forEach((({$:t,i:r})=>{if(DF(t)){let a=n(e,t,r);a.length&&(i[r]||(i[r]={idx:r,item:t,matches:[]},o.push(i[r])),a.forEach((({matches:t})=>{i[r].matches.push(...t)})))}})),o}_searchObjectList(t){const e=iV(t,this.options),{keys:n,records:r}=this._myIndex,i=[];return r.forEach((({$:t,i:r})=>{if(!DF(t))return;let o=[];n.forEach(((n,r)=>{o.push(...this._findMatches({key:n,value:t[r],searcher:e}))})),o.length&&i.push({idx:r,item:t,matches:o})})),i}_findMatches({key:t,value:e,searcher:n}){if(!DF(e))return[];let r=[];if(kF(e))e.forEach((({v:e,i:i,n:o})=>{if(!DF(e))return;const{isMatch:a,score:s,indices:u}=n.searchIn(e);a&&r.push({score:s,key:t,value:e,idx:i,norm:o,indices:u})}));else{const{v:i,n:o}=e,{isMatch:a,score:s,indices:u}=n.searchIn(i);a&&r.push({score:s,key:t,value:i,norm:o,indices:u})}return r}}
128
128
  /**
129
129
  * react-virtual
130
130
  *