@sentio/sdk-bundle 2.57.7 → 2.57.8-rc.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.
Files changed (74) hide show
  1. package/lib/aptos/builtin/0x1.js +1 -1
  2. package/lib/aptos/builtin/0x3.js +1 -1
  3. package/lib/aptos/builtin/0x4.js +1 -1
  4. package/lib/aptos/builtin/index.js +1 -1
  5. package/lib/aptos/builtin/index.js.map +1 -1
  6. package/lib/aptos/ext/index.js +1 -1
  7. package/lib/aptos/ext/index.js.map +1 -1
  8. package/lib/aptos/index.js +1 -1
  9. package/lib/chunk-5AMCSNP7.js +7 -0
  10. package/lib/{chunk-WKFPJMXF.js.map → chunk-5AMCSNP7.js.map} +1 -1
  11. package/lib/{chunk-DWDJMSCJ.js → chunk-5F7WBLI4.js} +2 -2
  12. package/lib/{chunk-GXO7DCHZ.js → chunk-6CDEUHBK.js} +2 -2
  13. package/lib/{chunk-GXO7DCHZ.js.map → chunk-6CDEUHBK.js.map} +1 -1
  14. package/lib/chunk-AVNDNZMN.js +32 -0
  15. package/lib/{chunk-4XU3L3GP.js.map → chunk-AVNDNZMN.js.map} +1 -1
  16. package/lib/{chunk-AEDJCR64.js → chunk-B3F4WQRS.js} +2 -2
  17. package/lib/chunk-GTB5ZIMY.js +3 -0
  18. package/lib/{chunk-NRVSYA3B.js.map → chunk-GTB5ZIMY.js.map} +1 -1
  19. package/lib/{chunk-DJGKCH6U.js → chunk-GV7ZOJAQ.js} +2 -2
  20. package/lib/{chunk-DJGKCH6U.js.map → chunk-GV7ZOJAQ.js.map} +1 -1
  21. package/lib/{chunk-E4QNFY3U.js → chunk-LBW4DXQE.js} +2 -2
  22. package/lib/{chunk-LQC7CDVY.js → chunk-LWWZWZ4F.js} +2 -2
  23. package/lib/chunk-MPOOAJHZ.js +6 -0
  24. package/lib/{chunk-VJVZRE4N.js.map → chunk-MPOOAJHZ.js.map} +1 -1
  25. package/lib/{chunk-6NEMCBBH.js → chunk-OZNKQEYB.js} +2 -2
  26. package/lib/{chunk-6NEMCBBH.js.map → chunk-OZNKQEYB.js.map} +1 -1
  27. package/lib/{chunk-53EDEVTE.js → chunk-Q2FNRM5C.js} +2 -2
  28. package/lib/{chunk-53EDEVTE.js.map → chunk-Q2FNRM5C.js.map} +1 -1
  29. package/lib/{chunk-5HKPVFEF.js → chunk-QP5BWTK3.js} +2 -2
  30. package/lib/{chunk-6JYMR42Q.js → chunk-TJSPP6SM.js} +15 -15
  31. package/lib/{chunk-6JYMR42Q.js.map → chunk-TJSPP6SM.js.map} +1 -1
  32. package/lib/chunk-WO6IV4SO.js +499 -0
  33. package/lib/{chunk-WE2XH6H5.js.map → chunk-WO6IV4SO.js.map} +1 -1
  34. package/lib/chunk-WU52LDUL.js +6 -0
  35. package/lib/{chunk-UXGHKVAC.js.map → chunk-WU52LDUL.js.map} +1 -1
  36. package/lib/eth/builtin/eacaggregatorproxy.js +1 -1
  37. package/lib/eth/builtin/erc1155.js +1 -1
  38. package/lib/eth/builtin/erc20.js +1 -1
  39. package/lib/eth/builtin/erc721.js +1 -1
  40. package/lib/eth/builtin/index.js +1 -1
  41. package/lib/eth/builtin/index.js.map +1 -1
  42. package/lib/eth/builtin/weth9.js +1 -1
  43. package/lib/eth/index.js +1 -1
  44. package/lib/fuel/index.js +1 -1
  45. package/lib/solana/builtin/index.js +1 -1
  46. package/lib/solana/builtin/index.js.map +1 -1
  47. package/lib/solana/index.js +1 -1
  48. package/lib/stark/index.js +14 -14
  49. package/lib/stark/index.js.map +1 -1
  50. package/lib/sui/builtin/0x1.js +1 -1
  51. package/lib/sui/builtin/0x2.js +1 -1
  52. package/lib/sui/builtin/0x3.js +1 -1
  53. package/lib/sui/builtin/index.js +1 -1
  54. package/lib/sui/builtin/index.js.map +1 -1
  55. package/lib/sui/ext/index.js +1 -1
  56. package/lib/sui/ext/index.js.map +1 -1
  57. package/lib/sui/index.js +1 -1
  58. package/lib/testing/index.js +15 -15
  59. package/lib/testing/index.js.map +1 -1
  60. package/lib/utils/index.js +1 -1
  61. package/package.json +3 -2
  62. package/lib/chunk-4XU3L3GP.js +0 -32
  63. package/lib/chunk-NLNLOORO.js +0 -3
  64. package/lib/chunk-NLNLOORO.js.map +0 -1
  65. package/lib/chunk-NRVSYA3B.js +0 -3
  66. package/lib/chunk-UXGHKVAC.js +0 -6
  67. package/lib/chunk-VJVZRE4N.js +0 -6
  68. package/lib/chunk-WE2XH6H5.js +0 -499
  69. package/lib/chunk-WKFPJMXF.js +0 -7
  70. /package/lib/{chunk-DWDJMSCJ.js.map → chunk-5F7WBLI4.js.map} +0 -0
  71. /package/lib/{chunk-AEDJCR64.js.map → chunk-B3F4WQRS.js.map} +0 -0
  72. /package/lib/{chunk-E4QNFY3U.js.map → chunk-LBW4DXQE.js.map} +0 -0
  73. /package/lib/{chunk-LQC7CDVY.js.map → chunk-LWWZWZ4F.js.map} +0 -0
  74. /package/lib/{chunk-5HKPVFEF.js.map → chunk-QP5BWTK3.js.map} +0 -0
@@ -1,12 +1,12 @@
1
1
  import { createRequire as createRequireSdkShim } from 'module'; const require = createRequireSdkShim(import.meta.url);
2
- import{A as Ti,C as Jo,E as Ii,F as zi,H as Oi,I as Ni,J as Di,K as Bi,a as Go,b as yi,d as Yo,e as bi,f as wi,i as Xo,j as Zo,n as ji,p as vi,r as Ei,s as xi,w as _i,x as Ci,y as Ai,z as Si}from"../chunk-4JXRK4YH.js";import{a as Pi,b as Qo}from"../chunk-DS2LOABN.js";import{a as Ri,c as Li}from"../chunk-FMZDKD72.js";import{a as ki}from"../chunk-NLNLOORO.js";import{D as Wo,Ld as hi,Qc as Im,Rc as zm,W as di,Zd as Om,ce as fi,he as gi}from"../chunk-LZ2L3BVP.js";import"../chunk-RA75ESSD.js";import{a as n,b as mi,c as Tm,d as ae,e as bt,f as wt,g as pi}from"../chunk-G5BIPHMS.js";var nc={};bt(nc,{decode:()=>Rn,default:()=>Td,encode:()=>Ln,toASCII:()=>oc,toUnicode:()=>ac,ucs2decode:()=>Pn,ucs2encode:()=>ec});function st(e){throw new RangeError(_d[e])}function Cd(e,t){let a=[],o=e.length;for(;o--;)a[o]=t(e[o]);return a}function Qs(e,t){let a=e.split("@"),o="";a.length>1&&(o=a[0]+"@",e=a[1]),e=e.replace(xd,".");let r=e.split("."),i=Cd(r,t).join(".");return o+i}function Pn(e){let t=[],a=0,o=e.length;for(;a<o;){let r=e.charCodeAt(a++);if(r>=55296&&r<=56319&&a<o){let i=e.charCodeAt(a++);(i&64512)==56320?t.push(((r&1023)<<10)+(i&1023)+65536):(t.push(r),a--)}else t.push(r)}return t}var Js,vd,Ed,xd,_d,Dn,Ie,Bn,ec,Ad,Zs,tc,Rn,Ln,ac,oc,Sd,Td,rc=Tm(()=>{"use strict";Js="-",vd=/^xn--/,Ed=/[^\0-\x7F]/,xd=/[\x2E\u3002\uFF0E\uFF61]/g,_d={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},Dn=35,Ie=Math.floor,Bn=String.fromCharCode;n(st,"error");n(Cd,"map");n(Qs,"mapDomain");n(Pn,"ucs2decode");ec=n(e=>String.fromCodePoint(...e),"ucs2encode"),Ad=n(function(e){return e>=48&&e<58?26+(e-48):e>=65&&e<91?e-65:e>=97&&e<123?e-97:36},"basicToDigit"),Zs=n(function(e,t){return e+22+75*(e<26)-((t!=0)<<5)},"digitToBasic"),tc=n(function(e,t,a){let o=0;for(e=a?Ie(e/700):e>>1,e+=Ie(e/t);e>Dn*26>>1;o+=36)e=Ie(e/Dn);return Ie(o+(Dn+1)*e/(e+38))},"adapt"),Rn=n(function(e){let t=[],a=e.length,o=0,r=128,i=72,s=e.lastIndexOf(Js);s<0&&(s=0);for(let c=0;c<s;++c)e.charCodeAt(c)>=128&&st("not-basic"),t.push(e.charCodeAt(c));for(let c=s>0?s+1:0;c<a;){let u=o;for(let m=1,l=36;;l+=36){c>=a&&st("invalid-input");let h=Ad(e.charCodeAt(c++));h>=36&&st("invalid-input"),h>Ie((2147483647-o)/m)&&st("overflow"),o+=h*m;let g=l<=i?1:l>=i+26?26:l-i;if(h<g)break;let f=36-g;m>Ie(2147483647/f)&&st("overflow"),m*=f}let p=t.length+1;i=tc(o-u,p,u==0),Ie(o/p)>2147483647-r&&st("overflow"),r+=Ie(o/p),o%=p,t.splice(o++,0,r)}return String.fromCodePoint(...t)},"decode"),Ln=n(function(e){let t=[];e=Pn(e);let a=e.length,o=128,r=0,i=72;for(let u of e)u<128&&t.push(Bn(u));let s=t.length,c=s;for(s&&t.push(Js);c<a;){let u=2147483647;for(let m of e)m>=o&&m<u&&(u=m);let p=c+1;u-o>Ie((2147483647-r)/p)&&st("overflow"),r+=(u-o)*p,o=u;for(let m of e)if(m<o&&++r>2147483647&&st("overflow"),m===o){let l=r;for(let h=36;;h+=36){let g=h<=i?1:h>=i+26?26:h-i;if(l<g)break;let f=l-g,d=36-g;t.push(Bn(Zs(g+f%d,0))),l=Ie(f/d)}t.push(Bn(Zs(l,0))),i=tc(r,p,c===s),r=0,++c}++r,++o}return t.join("")},"encode"),ac=n(function(e){return Qs(e,function(t){return vd.test(t)?Rn(t.slice(4).toLowerCase()):t})},"toUnicode"),oc=n(function(e){return Qs(e,function(t){return Ed.test(t)?"xn--"+Ln(t):t})},"toASCII"),Sd={version:"2.3.1",ucs2:{decode:Pn,encode:ec},decode:Rn,encode:Ln,toASCII:oc,toUnicode:ac},Td=Sd});var sc=ae((Wb,ic)=>{"use strict";ic.exports=n(function(t,a){if(a=a.split(":")[0],t=+t,!t)return!1;switch(a){case"http":case"ws":return t!==80;case"https":case"wss":return t!==443;case"ftp":return t!==21;case"gopher":return t!==70;case"file":return!1}return t!==0},"required")});var lc=ae(Vn=>{"use strict";var Id=Object.prototype.hasOwnProperty,zd;function cc(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}n(cc,"decode");function uc(e){try{return encodeURIComponent(e)}catch{return null}}n(uc,"encode");function Od(e){for(var t=/([^=?#&]+)=?([^&]*)/g,a={},o;o=t.exec(e);){var r=cc(o[1]),i=cc(o[2]);r===null||i===null||r in a||(a[r]=i)}return a}n(Od,"querystring");function Nd(e,t){t=t||"";var a=[],o,r;typeof t!="string"&&(t="?");for(r in e)if(Id.call(e,r)){if(o=e[r],!o&&(o===null||o===zd||isNaN(o))&&(o=""),r=uc(r),o=uc(o),r===null||o===null)continue;a.push(r+"="+o)}return a.length?t+a.join("&"):""}n(Nd,"querystringify");Vn.stringify=Nd;Vn.parse=Od});var yc=ae((Zb,kc)=>{"use strict";var pc=sc(),ho=lc(),Dd=/^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/,dc=/[\n\r\t]/g,Bd=/^[A-Za-z][A-Za-z0-9+-.]*:\/\//,hc=/:\d+$/,Pd=/^([a-z][a-z0-9.+-]*:)?(\/\/)?([\\/]+)?([\S\s]*)/i,Rd=/^[a-zA-Z]:/;function $n(e){return(e||"").toString().replace(Dd,"")}n($n,"trimLeft");var Hn=[["#","hash"],["?","query"],n(function(t,a){return ze(a.protocol)?t.replace(/\\/g,"/"):t},"sanitize"),["/","pathname"],["@","auth",1],[NaN,"host",void 0,1,1],[/:(\d*)$/,"port",void 0,1],[NaN,"hostname",void 0,1,1]],mc={hash:1,query:1};function fc(e){var t;typeof window<"u"?t=window:typeof global<"u"?t=global:typeof self<"u"?t=self:t={};var a=t.location||{};e=e||a;var o={},r=typeof e,i;if(e.protocol==="blob:")o=new Oe(unescape(e.pathname),{});else if(r==="string"){o=new Oe(e,{});for(i in mc)delete o[i]}else if(r==="object"){for(i in e)i in mc||(o[i]=e[i]);o.slashes===void 0&&(o.slashes=Bd.test(e.href))}return o}n(fc,"lolcation");function ze(e){return e==="file:"||e==="ftp:"||e==="http:"||e==="https:"||e==="ws:"||e==="wss:"}n(ze,"isSpecial");function gc(e,t){e=$n(e),e=e.replace(dc,""),t=t||{};var a=Pd.exec(e),o=a[1]?a[1].toLowerCase():"",r=!!a[2],i=!!a[3],s=0,c;return r?i?(c=a[2]+a[3]+a[4],s=a[2].length+a[3].length):(c=a[2]+a[4],s=a[2].length):i?(c=a[3]+a[4],s=a[3].length):c=a[4],o==="file:"?s>=2&&(c=c.slice(2)):ze(o)?c=a[4]:o?r&&(c=c.slice(2)):s>=2&&ze(t.protocol)&&(c=a[4]),{protocol:o,slashes:r||ze(o),slashesCount:s,rest:c}}n(gc,"extractProtocol");function Ld(e,t){if(e==="")return t;for(var a=(t||"/").split("/").slice(0,-1).concat(e.split("/")),o=a.length,r=a[o-1],i=!1,s=0;o--;)a[o]==="."?a.splice(o,1):a[o]===".."?(a.splice(o,1),s++):s&&(o===0&&(i=!0),a.splice(o,1),s--);return i&&a.unshift(""),(r==="."||r==="..")&&a.push(""),a.join("/")}n(Ld,"resolve");function Oe(e,t,a){if(e=$n(e),e=e.replace(dc,""),!(this instanceof Oe))return new Oe(e,t,a);var o,r,i,s,c,u,p=Hn.slice(),m=typeof t,l=this,h=0;for(m!=="object"&&m!=="string"&&(a=t,t=null),a&&typeof a!="function"&&(a=ho.parse),t=fc(t),r=gc(e||"",t),o=!r.protocol&&!r.slashes,l.slashes=r.slashes||o&&t.slashes,l.protocol=r.protocol||t.protocol||"",e=r.rest,(r.protocol==="file:"&&(r.slashesCount!==2||Rd.test(e))||!r.slashes&&(r.protocol||r.slashesCount<2||!ze(l.protocol)))&&(p[3]=[/(.*)/,"pathname"]);h<p.length;h++){if(s=p[h],typeof s=="function"){e=s(e,l);continue}i=s[0],u=s[1],i!==i?l[u]=e:typeof i=="string"?(c=i==="@"?e.lastIndexOf(i):e.indexOf(i),~c&&(typeof s[2]=="number"?(l[u]=e.slice(0,c),e=e.slice(c+s[2])):(l[u]=e.slice(c),e=e.slice(0,c)))):(c=i.exec(e))&&(l[u]=c[1],e=e.slice(0,c.index)),l[u]=l[u]||o&&s[3]&&t[u]||"",s[4]&&(l[u]=l[u].toLowerCase())}a&&(l.query=a(l.query)),o&&t.slashes&&l.pathname.charAt(0)!=="/"&&(l.pathname!==""||t.pathname!=="")&&(l.pathname=Ld(l.pathname,t.pathname)),l.pathname.charAt(0)!=="/"&&ze(l.protocol)&&(l.pathname="/"+l.pathname),pc(l.port,l.protocol)||(l.host=l.hostname,l.port=""),l.username=l.password="",l.auth&&(c=l.auth.indexOf(":"),~c?(l.username=l.auth.slice(0,c),l.username=encodeURIComponent(decodeURIComponent(l.username)),l.password=l.auth.slice(c+1),l.password=encodeURIComponent(decodeURIComponent(l.password))):l.username=encodeURIComponent(decodeURIComponent(l.auth)),l.auth=l.password?l.username+":"+l.password:l.username),l.origin=l.protocol!=="file:"&&ze(l.protocol)&&l.host?l.protocol+"//"+l.host:"null",l.href=l.toString()}n(Oe,"Url");function Vd(e,t,a){var o=this;switch(e){case"query":typeof t=="string"&&t.length&&(t=(a||ho.parse)(t)),o[e]=t;break;case"port":o[e]=t,pc(t,o.protocol)?t&&(o.host=o.hostname+":"+t):(o.host=o.hostname,o[e]="");break;case"hostname":o[e]=t,o.port&&(t+=":"+o.port),o.host=t;break;case"host":o[e]=t,hc.test(t)?(t=t.split(":"),o.port=t.pop(),o.hostname=t.join(":")):(o.hostname=t,o.port="");break;case"protocol":o.protocol=t.toLowerCase(),o.slashes=!a;break;case"pathname":case"hash":if(t){var r=e==="pathname"?"/":"#";o[e]=t.charAt(0)!==r?r+t:t}else o[e]=t;break;case"username":case"password":o[e]=encodeURIComponent(t);break;case"auth":var i=t.indexOf(":");~i?(o.username=t.slice(0,i),o.username=encodeURIComponent(decodeURIComponent(o.username)),o.password=t.slice(i+1),o.password=encodeURIComponent(decodeURIComponent(o.password))):o.username=encodeURIComponent(decodeURIComponent(t))}for(var s=0;s<Hn.length;s++){var c=Hn[s];c[4]&&(o[c[1]]=o[c[1]].toLowerCase())}return o.auth=o.password?o.username+":"+o.password:o.username,o.origin=o.protocol!=="file:"&&ze(o.protocol)&&o.host?o.protocol+"//"+o.host:"null",o.href=o.toString(),o}n(Vd,"set");function Hd(e){(!e||typeof e!="function")&&(e=ho.stringify);var t,a=this,o=a.host,r=a.protocol;r&&r.charAt(r.length-1)!==":"&&(r+=":");var i=r+(a.protocol&&a.slashes||ze(a.protocol)?"//":"");return a.username?(i+=a.username,a.password&&(i+=":"+a.password),i+="@"):a.password?(i+=":"+a.password,i+="@"):a.protocol!=="file:"&&ze(a.protocol)&&!o&&a.pathname!=="/"&&(i+="@"),(o[o.length-1]===":"||hc.test(a.hostname)&&!a.port)&&(o+=":"),i+=o+a.pathname,t=typeof a.query=="object"?e(a.query):a.query,t&&(i+=t.charAt(0)!=="?"?"?"+t:t),a.hash&&(i+=a.hash),i}n(Hd,"toString");Oe.prototype={set:Vd,toString:Hd};Oe.extractProtocol=gc;Oe.location=fc;Oe.trimLeft=$n;Oe.qs=ho;kc.exports=Oe});var bc=ae((Qb,$d)=>{$d.exports=["ac","com.ac","edu.ac","gov.ac","net.ac","mil.ac","org.ac","ad","nom.ad","ae","co.ae","net.ae","org.ae","sch.ae","ac.ae","gov.ae","mil.ae","aero","accident-investigation.aero","accident-prevention.aero","aerobatic.aero","aeroclub.aero","aerodrome.aero","agents.aero","aircraft.aero","airline.aero","airport.aero","air-surveillance.aero","airtraffic.aero","air-traffic-control.aero","ambulance.aero","amusement.aero","association.aero","author.aero","ballooning.aero","broker.aero","caa.aero","cargo.aero","catering.aero","certification.aero","championship.aero","charter.aero","civilaviation.aero","club.aero","conference.aero","consultant.aero","consulting.aero","control.aero","council.aero","crew.aero","design.aero","dgca.aero","educator.aero","emergency.aero","engine.aero","engineer.aero","entertainment.aero","equipment.aero","exchange.aero","express.aero","federation.aero","flight.aero","fuel.aero","gliding.aero","government.aero","groundhandling.aero","group.aero","hanggliding.aero","homebuilt.aero","insurance.aero","journal.aero","journalist.aero","leasing.aero","logistics.aero","magazine.aero","maintenance.aero","media.aero","microlight.aero","modelling.aero","navigation.aero","parachuting.aero","paragliding.aero","passenger-association.aero","pilot.aero","press.aero","production.aero","recreation.aero","repbody.aero","res.aero","research.aero","rotorcraft.aero","safety.aero","scientist.aero","services.aero","show.aero","skydiving.aero","software.aero","student.aero","trader.aero","trading.aero","trainer.aero","union.aero","workinggroup.aero","works.aero","af","gov.af","com.af","org.af","net.af","edu.af","ag","com.ag","org.ag","net.ag","co.ag","nom.ag","ai","off.ai","com.ai","net.ai","org.ai","al","com.al","edu.al","gov.al","mil.al","net.al","org.al","am","co.am","com.am","commune.am","net.am","org.am","ao","ed.ao","gv.ao","og.ao","co.ao","pb.ao","it.ao","aq","ar","bet.ar","com.ar","coop.ar","edu.ar","gob.ar","gov.ar","int.ar","mil.ar","musica.ar","mutual.ar","net.ar","org.ar","senasa.ar","tur.ar","arpa","e164.arpa","in-addr.arpa","ip6.arpa","iris.arpa","uri.arpa","urn.arpa","as","gov.as","asia","at","ac.at","co.at","gv.at","or.at","sth.ac.at","au","com.au","net.au","org.au","edu.au","gov.au","asn.au","id.au","info.au","conf.au","oz.au","act.au","nsw.au","nt.au","qld.au","sa.au","tas.au","vic.au","wa.au","act.edu.au","catholic.edu.au","nsw.edu.au","nt.edu.au","qld.edu.au","sa.edu.au","tas.edu.au","vic.edu.au","wa.edu.au","qld.gov.au","sa.gov.au","tas.gov.au","vic.gov.au","wa.gov.au","schools.nsw.edu.au","aw","com.aw","ax","az","com.az","net.az","int.az","gov.az","org.az","edu.az","info.az","pp.az","mil.az","name.az","pro.az","biz.az","ba","com.ba","edu.ba","gov.ba","mil.ba","net.ba","org.ba","bb","biz.bb","co.bb","com.bb","edu.bb","gov.bb","info.bb","net.bb","org.bb","store.bb","tv.bb","*.bd","be","ac.be","bf","gov.bf","bg","a.bg","b.bg","c.bg","d.bg","e.bg","f.bg","g.bg","h.bg","i.bg","j.bg","k.bg","l.bg","m.bg","n.bg","o.bg","p.bg","q.bg","r.bg","s.bg","t.bg","u.bg","v.bg","w.bg","x.bg","y.bg","z.bg","0.bg","1.bg","2.bg","3.bg","4.bg","5.bg","6.bg","7.bg","8.bg","9.bg","bh","com.bh","edu.bh","net.bh","org.bh","gov.bh","bi","co.bi","com.bi","edu.bi","or.bi","org.bi","biz","bj","asso.bj","barreau.bj","gouv.bj","bm","com.bm","edu.bm","gov.bm","net.bm","org.bm","bn","com.bn","edu.bn","gov.bn","net.bn","org.bn","bo","com.bo","edu.bo","gob.bo","int.bo","org.bo","net.bo","mil.bo","tv.bo","web.bo","academia.bo","agro.bo","arte.bo","blog.bo","bolivia.bo","ciencia.bo","cooperativa.bo","democracia.bo","deporte.bo","ecologia.bo","economia.bo","empresa.bo","indigena.bo","industria.bo","info.bo","medicina.bo","movimiento.bo","musica.bo","natural.bo","nombre.bo","noticias.bo","patria.bo","politica.bo","profesional.bo","plurinacional.bo","pueblo.bo","revista.bo","salud.bo","tecnologia.bo","tksat.bo","transporte.bo","wiki.bo","br","9guacu.br","abc.br","adm.br","adv.br","agr.br","aju.br","am.br","anani.br","aparecida.br","app.br","arq.br","art.br","ato.br","b.br","barueri.br","belem.br","bhz.br","bib.br","bio.br","blog.br","bmd.br","boavista.br","bsb.br","campinagrande.br","campinas.br","caxias.br","cim.br","cng.br","cnt.br","com.br","contagem.br","coop.br","coz.br","cri.br","cuiaba.br","curitiba.br","def.br","des.br","det.br","dev.br","ecn.br","eco.br","edu.br","emp.br","enf.br","eng.br","esp.br","etc.br","eti.br","far.br","feira.br","flog.br","floripa.br","fm.br","fnd.br","fortal.br","fot.br","foz.br","fst.br","g12.br","geo.br","ggf.br","goiania.br","gov.br","ac.gov.br","al.gov.br","am.gov.br","ap.gov.br","ba.gov.br","ce.gov.br","df.gov.br","es.gov.br","go.gov.br","ma.gov.br","mg.gov.br","ms.gov.br","mt.gov.br","pa.gov.br","pb.gov.br","pe.gov.br","pi.gov.br","pr.gov.br","rj.gov.br","rn.gov.br","ro.gov.br","rr.gov.br","rs.gov.br","sc.gov.br","se.gov.br","sp.gov.br","to.gov.br","gru.br","imb.br","ind.br","inf.br","jab.br","jampa.br","jdf.br","joinville.br","jor.br","jus.br","leg.br","lel.br","log.br","londrina.br","macapa.br","maceio.br","manaus.br","maringa.br","mat.br","med.br","mil.br","morena.br","mp.br","mus.br","natal.br","net.br","niteroi.br","*.nom.br","not.br","ntr.br","odo.br","ong.br","org.br","osasco.br","palmas.br","poa.br","ppg.br","pro.br","psc.br","psi.br","pvh.br","qsl.br","radio.br","rec.br","recife.br","rep.br","ribeirao.br","rio.br","riobranco.br","riopreto.br","salvador.br","sampa.br","santamaria.br","santoandre.br","saobernardo.br","saogonca.br","seg.br","sjc.br","slg.br","slz.br","sorocaba.br","srv.br","taxi.br","tc.br","tec.br","teo.br","the.br","tmp.br","trd.br","tur.br","tv.br","udi.br","vet.br","vix.br","vlog.br","wiki.br","zlg.br","bs","com.bs","net.bs","org.bs","edu.bs","gov.bs","bt","com.bt","edu.bt","gov.bt","net.bt","org.bt","bv","bw","co.bw","org.bw","by","gov.by","mil.by","com.by","of.by","bz","com.bz","net.bz","org.bz","edu.bz","gov.bz","ca","ab.ca","bc.ca","mb.ca","nb.ca","nf.ca","nl.ca","ns.ca","nt.ca","nu.ca","on.ca","pe.ca","qc.ca","sk.ca","yk.ca","gc.ca","cat","cc","cd","gov.cd","cf","cg","ch","ci","org.ci","or.ci","com.ci","co.ci","edu.ci","ed.ci","ac.ci","net.ci","go.ci","asso.ci","a\xE9roport.ci","int.ci","presse.ci","md.ci","gouv.ci","*.ck","!www.ck","cl","co.cl","gob.cl","gov.cl","mil.cl","cm","co.cm","com.cm","gov.cm","net.cm","cn","ac.cn","com.cn","edu.cn","gov.cn","net.cn","org.cn","mil.cn","\u516C\u53F8.cn","\u7F51\u7EDC.cn","\u7DB2\u7D61.cn","ah.cn","bj.cn","cq.cn","fj.cn","gd.cn","gs.cn","gz.cn","gx.cn","ha.cn","hb.cn","he.cn","hi.cn","hl.cn","hn.cn","jl.cn","js.cn","jx.cn","ln.cn","nm.cn","nx.cn","qh.cn","sc.cn","sd.cn","sh.cn","sn.cn","sx.cn","tj.cn","xj.cn","xz.cn","yn.cn","zj.cn","hk.cn","mo.cn","tw.cn","co","arts.co","com.co","edu.co","firm.co","gov.co","info.co","int.co","mil.co","net.co","nom.co","org.co","rec.co","web.co","com","coop","cr","ac.cr","co.cr","ed.cr","fi.cr","go.cr","or.cr","sa.cr","cu","com.cu","edu.cu","org.cu","net.cu","gov.cu","inf.cu","cv","com.cv","edu.cv","int.cv","nome.cv","org.cv","cw","com.cw","edu.cw","net.cw","org.cw","cx","gov.cx","cy","ac.cy","biz.cy","com.cy","ekloges.cy","gov.cy","ltd.cy","mil.cy","net.cy","org.cy","press.cy","pro.cy","tm.cy","cz","de","dj","dk","dm","com.dm","net.dm","org.dm","edu.dm","gov.dm","do","art.do","com.do","edu.do","gob.do","gov.do","mil.do","net.do","org.do","sld.do","web.do","dz","art.dz","asso.dz","com.dz","edu.dz","gov.dz","org.dz","net.dz","pol.dz","soc.dz","tm.dz","ec","com.ec","info.ec","net.ec","fin.ec","k12.ec","med.ec","pro.ec","org.ec","edu.ec","gov.ec","gob.ec","mil.ec","edu","ee","edu.ee","gov.ee","riik.ee","lib.ee","med.ee","com.ee","pri.ee","aip.ee","org.ee","fie.ee","eg","com.eg","edu.eg","eun.eg","gov.eg","mil.eg","name.eg","net.eg","org.eg","sci.eg","*.er","es","com.es","nom.es","org.es","gob.es","edu.es","et","com.et","gov.et","org.et","edu.et","biz.et","name.et","info.et","net.et","eu","fi","aland.fi","fj","ac.fj","biz.fj","com.fj","gov.fj","info.fj","mil.fj","name.fj","net.fj","org.fj","pro.fj","*.fk","com.fm","edu.fm","net.fm","org.fm","fm","fo","fr","asso.fr","com.fr","gouv.fr","nom.fr","prd.fr","tm.fr","aeroport.fr","avocat.fr","avoues.fr","cci.fr","chambagri.fr","chirurgiens-dentistes.fr","experts-comptables.fr","geometre-expert.fr","greta.fr","huissier-justice.fr","medecin.fr","notaires.fr","pharmacien.fr","port.fr","veterinaire.fr","ga","gb","edu.gd","gov.gd","gd","ge","com.ge","edu.ge","gov.ge","org.ge","mil.ge","net.ge","pvt.ge","gf","gg","co.gg","net.gg","org.gg","gh","com.gh","edu.gh","gov.gh","org.gh","mil.gh","gi","com.gi","ltd.gi","gov.gi","mod.gi","edu.gi","org.gi","gl","co.gl","com.gl","edu.gl","net.gl","org.gl","gm","gn","ac.gn","com.gn","edu.gn","gov.gn","org.gn","net.gn","gov","gp","com.gp","net.gp","mobi.gp","edu.gp","org.gp","asso.gp","gq","gr","com.gr","edu.gr","net.gr","org.gr","gov.gr","gs","gt","com.gt","edu.gt","gob.gt","ind.gt","mil.gt","net.gt","org.gt","gu","com.gu","edu.gu","gov.gu","guam.gu","info.gu","net.gu","org.gu","web.gu","gw","gy","co.gy","com.gy","edu.gy","gov.gy","net.gy","org.gy","hk","com.hk","edu.hk","gov.hk","idv.hk","net.hk","org.hk","\u516C\u53F8.hk","\u6559\u80B2.hk","\u654E\u80B2.hk","\u653F\u5E9C.hk","\u500B\u4EBA.hk","\u4E2A\uFFFD\uFFFD.hk","\u7B87\u4EBA.hk","\u7DB2\u7EDC.hk","\u7F51\u7EDC.hk","\u7EC4\u7E54.hk","\u7DB2\u7D61.hk","\u7F51\u7D61.hk","\u7EC4\u7EC7.hk","\u7D44\u7E54.hk","\u7D44\u7EC7.hk","hm","hn","com.hn","edu.hn","org.hn","net.hn","mil.hn","gob.hn","hr","iz.hr","from.hr","name.hr","com.hr","ht","com.ht","shop.ht","firm.ht","info.ht","adult.ht","net.ht","pro.ht","org.ht","med.ht","art.ht","coop.ht","pol.ht","asso.ht","edu.ht","rel.ht","gouv.ht","perso.ht","hu","co.hu","info.hu","org.hu","priv.hu","sport.hu","tm.hu","2000.hu","agrar.hu","bolt.hu","casino.hu","city.hu","erotica.hu","erotika.hu","film.hu","forum.hu","games.hu","hotel.hu","ingatlan.hu","jogasz.hu","konyvelo.hu","lakas.hu","media.hu","news.hu","reklam.hu","sex.hu","shop.hu","suli.hu","szex.hu","tozsde.hu","utazas.hu","video.hu","id","ac.id","biz.id","co.id","desa.id","go.id","mil.id","my.id","net.id","or.id","ponpes.id","sch.id","web.id","ie","gov.ie","il","ac.il","co.il","gov.il","idf.il","k12.il","muni.il","net.il","org.il","im","ac.im","co.im","com.im","ltd.co.im","net.im","org.im","plc.co.im","tt.im","tv.im","in","co.in","firm.in","net.in","org.in","gen.in","ind.in","nic.in","ac.in","edu.in","res.in","gov.in","mil.in","info","int","eu.int","io","com.io","iq","gov.iq","edu.iq","mil.iq","com.iq","org.iq","net.iq","ir","ac.ir","co.ir","gov.ir","id.ir","net.ir","org.ir","sch.ir","\u0627\u06CC\u0631\u0627\u0646.ir","\u0627\u064A\u0631\u0627\u0646.ir","is","net.is","com.is","edu.is","gov.is","org.is","int.is","it","gov.it","edu.it","abr.it","abruzzo.it","aosta-valley.it","aostavalley.it","bas.it","basilicata.it","cal.it","calabria.it","cam.it","campania.it","emilia-romagna.it","emiliaromagna.it","emr.it","friuli-v-giulia.it","friuli-ve-giulia.it","friuli-vegiulia.it","friuli-venezia-giulia.it","friuli-veneziagiulia.it","friuli-vgiulia.it","friuliv-giulia.it","friulive-giulia.it","friulivegiulia.it","friulivenezia-giulia.it","friuliveneziagiulia.it","friulivgiulia.it","fvg.it","laz.it","lazio.it","lig.it","liguria.it","lom.it","lombardia.it","lombardy.it","lucania.it","mar.it","marche.it","mol.it","molise.it","piedmont.it","piemonte.it","pmn.it","pug.it","puglia.it","sar.it","sardegna.it","sardinia.it","sic.it","sicilia.it","sicily.it","taa.it","tos.it","toscana.it","trentin-sud-tirol.it","trentin-s\xFCd-tirol.it","trentin-sudtirol.it","trentin-s\xFCdtirol.it","trentin-sued-tirol.it","trentin-suedtirol.it","trentino-a-adige.it","trentino-aadige.it","trentino-alto-adige.it","trentino-altoadige.it","trentino-s-tirol.it","trentino-stirol.it","trentino-sud-tirol.it","trentino-s\xFCd-tirol.it","trentino-sudtirol.it","trentino-s\xFCdtirol.it","trentino-sued-tirol.it","trentino-suedtirol.it","trentino.it","trentinoa-adige.it","trentinoaadige.it","trentinoalto-adige.it","trentinoaltoadige.it","trentinos-tirol.it","trentinostirol.it","trentinosud-tirol.it","trentinos\xFCd-tirol.it","trentinosudtirol.it","trentinos\xFCdtirol.it","trentinosued-tirol.it","trentinosuedtirol.it","trentinsud-tirol.it","trentins\xFCd-tirol.it","trentinsudtirol.it","trentins\xFCdtirol.it","trentinsued-tirol.it","trentinsuedtirol.it","tuscany.it","umb.it","umbria.it","val-d-aosta.it","val-daosta.it","vald-aosta.it","valdaosta.it","valle-aosta.it","valle-d-aosta.it","valle-daosta.it","valleaosta.it","valled-aosta.it","valledaosta.it","vallee-aoste.it","vall\xE9e-aoste.it","vallee-d-aoste.it","vall\xE9e-d-aoste.it","valleeaoste.it","vall\xE9eaoste.it","valleedaoste.it","vall\xE9edaoste.it","vao.it","vda.it","ven.it","veneto.it","ag.it","agrigento.it","al.it","alessandria.it","alto-adige.it","altoadige.it","an.it","ancona.it","andria-barletta-trani.it","andria-trani-barletta.it","andriabarlettatrani.it","andriatranibarletta.it","ao.it","aosta.it","aoste.it","ap.it","aq.it","aquila.it","ar.it","arezzo.it","ascoli-piceno.it","ascolipiceno.it","asti.it","at.it","av.it","avellino.it","ba.it","balsan-sudtirol.it","balsan-s\xFCdtirol.it","balsan-suedtirol.it","balsan.it","bari.it","barletta-trani-andria.it","barlettatraniandria.it","belluno.it","benevento.it","bergamo.it","bg.it","bi.it","biella.it","bl.it","bn.it","bo.it","bologna.it","bolzano-altoadige.it","bolzano.it","bozen-sudtirol.it","bozen-s\xFCdtirol.it","bozen-suedtirol.it","bozen.it","br.it","brescia.it","brindisi.it","bs.it","bt.it","bulsan-sudtirol.it","bulsan-s\xFCdtirol.it","bulsan-suedtirol.it","bulsan.it","bz.it","ca.it","cagliari.it","caltanissetta.it","campidano-medio.it","campidanomedio.it","campobasso.it","carbonia-iglesias.it","carboniaiglesias.it","carrara-massa.it","carraramassa.it","caserta.it","catania.it","catanzaro.it","cb.it","ce.it","cesena-forli.it","cesena-forl\xEC.it","cesenaforli.it","cesenaforl\xEC.it","ch.it","chieti.it","ci.it","cl.it","cn.it","co.it","como.it","cosenza.it","cr.it","cremona.it","crotone.it","cs.it","ct.it","cuneo.it","cz.it","dell-ogliastra.it","dellogliastra.it","en.it","enna.it","fc.it","fe.it","fermo.it","ferrara.it","fg.it","fi.it","firenze.it","florence.it","fm.it","foggia.it","forli-cesena.it","forl\xEC-cesena.it","forlicesena.it","forl\xECcesena.it","fr.it","frosinone.it","ge.it","genoa.it","genova.it","go.it","gorizia.it","gr.it","grosseto.it","iglesias-carbonia.it","iglesiascarbonia.it","im.it","imperia.it","is.it","isernia.it","kr.it","la-spezia.it","laquila.it","laspezia.it","latina.it","lc.it","le.it","lecce.it","lecco.it","li.it","livorno.it","lo.it","lodi.it","lt.it","lu.it","lucca.it","macerata.it","mantova.it","massa-carrara.it","massacarrara.it","matera.it","mb.it","mc.it","me.it","medio-campidano.it","mediocampidano.it","messina.it","mi.it","milan.it","milano.it","mn.it","mo.it","modena.it","monza-brianza.it","monza-e-della-brianza.it","monza.it","monzabrianza.it","monzaebrianza.it","monzaedellabrianza.it","ms.it","mt.it","na.it","naples.it","napoli.it","no.it","novara.it","nu.it","nuoro.it","og.it","ogliastra.it","olbia-tempio.it","olbiatempio.it","or.it","oristano.it","ot.it","pa.it","padova.it","padua.it","palermo.it","parma.it","pavia.it","pc.it","pd.it","pe.it","perugia.it","pesaro-urbino.it","pesarourbino.it","pescara.it","pg.it","pi.it","piacenza.it","pisa.it","pistoia.it","pn.it","po.it","pordenone.it","potenza.it","pr.it","prato.it","pt.it","pu.it","pv.it","pz.it","ra.it","ragusa.it","ravenna.it","rc.it","re.it","reggio-calabria.it","reggio-emilia.it","reggiocalabria.it","reggioemilia.it","rg.it","ri.it","rieti.it","rimini.it","rm.it","rn.it","ro.it","roma.it","rome.it","rovigo.it","sa.it","salerno.it","sassari.it","savona.it","si.it","siena.it","siracusa.it","so.it","sondrio.it","sp.it","sr.it","ss.it","suedtirol.it","s\xFCdtirol.it","sv.it","ta.it","taranto.it","te.it","tempio-olbia.it","tempioolbia.it","teramo.it","terni.it","tn.it","to.it","torino.it","tp.it","tr.it","trani-andria-barletta.it","trani-barletta-andria.it","traniandriabarletta.it","tranibarlettaandria.it","trapani.it","trento.it","treviso.it","trieste.it","ts.it","turin.it","tv.it","ud.it","udine.it","urbino-pesaro.it","urbinopesaro.it","va.it","varese.it","vb.it","vc.it","ve.it","venezia.it","venice.it","verbania.it","vercelli.it","verona.it","vi.it","vibo-valentia.it","vibovalentia.it","vicenza.it","viterbo.it","vr.it","vs.it","vt.it","vv.it","je","co.je","net.je","org.je","*.jm","jo","com.jo","org.jo","net.jo","edu.jo","sch.jo","gov.jo","mil.jo","name.jo","jobs","jp","ac.jp","ad.jp","co.jp","ed.jp","go.jp","gr.jp","lg.jp","ne.jp","or.jp","aichi.jp","akita.jp","aomori.jp","chiba.jp","ehime.jp","fukui.jp","fukuoka.jp","fukushima.jp","gifu.jp","gunma.jp","hiroshima.jp","hokkaido.jp","hyogo.jp","ibaraki.jp","ishikawa.jp","iwate.jp","kagawa.jp","kagoshima.jp","kanagawa.jp","kochi.jp","kumamoto.jp","kyoto.jp","mie.jp","miyagi.jp","miyazaki.jp","nagano.jp","nagasaki.jp","nara.jp","niigata.jp","oita.jp","okayama.jp","okinawa.jp","osaka.jp","saga.jp","saitama.jp","shiga.jp","shimane.jp","shizuoka.jp","tochigi.jp","tokushima.jp","tokyo.jp","tottori.jp","toyama.jp","wakayama.jp","yamagata.jp","yamaguchi.jp","yamanashi.jp","\u6803\u6728.jp","\u611B\u77E5.jp","\u611B\u5A9B.jp","\u5175\u5EAB.jp","\u718A\u672C.jp","\u8328\u57CE.jp","\u5317\u6D77\u9053.jp","\u5343\u8449.jp","\u548C\u6B4C\u5C71.jp","\u9577\u5D0E.jp","\u9577\u91CE.jp","\u65B0\u6F5F.jp","\u9752\u68EE.jp","\u9759\u5CA1.jp","\u6771\u4EAC.jp","\u77F3\u5DDD.jp","\u57FC\u7389.jp","\u4E09\u91CD.jp","\u4EAC\u90FD.jp","\u4F50\u8CC0.jp","\u5927\u5206.jp","\u5927\u962A.jp","\u5948\u826F.jp","\u5BAE\u57CE.jp","\u5BAE\u5D0E.jp","\u5BCC\u5C71.jp","\u5C71\u53E3.jp","\u5C71\u5F62.jp","\u5C71\u68A8.jp","\u5CA9\u624B.jp","\u5C90\u961C.jp","\u5CA1\u5C71.jp","\u5CF6\u6839.jp","\u5E83\u5CF6.jp","\u5FB3\u5CF6.jp","\u6C96\u7E04.jp","\u6ECB\u8CC0.jp","\u795E\u5948\u5DDD.jp","\u798F\u4E95.jp","\u798F\u5CA1.jp","\u798F\u5CF6.jp","\u79CB\u7530.jp","\u7FA4\u99AC.jp","\u9999\u5DDD.jp","\u9AD8\u77E5.jp","\u9CE5\u53D6.jp","\u9E7F\u5150\u5CF6.jp","*.kawasaki.jp","*.kitakyushu.jp","*.kobe.jp","*.nagoya.jp","*.sapporo.jp","*.sendai.jp","*.yokohama.jp","!city.kawasaki.jp","!city.kitakyushu.jp","!city.kobe.jp","!city.nagoya.jp","!city.sapporo.jp","!city.sendai.jp","!city.yokohama.jp","aisai.aichi.jp","ama.aichi.jp","anjo.aichi.jp","asuke.aichi.jp","chiryu.aichi.jp","chita.aichi.jp","fuso.aichi.jp","gamagori.aichi.jp","handa.aichi.jp","hazu.aichi.jp","hekinan.aichi.jp","higashiura.aichi.jp","ichinomiya.aichi.jp","inazawa.aichi.jp","inuyama.aichi.jp","isshiki.aichi.jp","iwakura.aichi.jp","kanie.aichi.jp","kariya.aichi.jp","kasugai.aichi.jp","kira.aichi.jp","kiyosu.aichi.jp","komaki.aichi.jp","konan.aichi.jp","kota.aichi.jp","mihama.aichi.jp","miyoshi.aichi.jp","nishio.aichi.jp","nisshin.aichi.jp","obu.aichi.jp","oguchi.aichi.jp","oharu.aichi.jp","okazaki.aichi.jp","owariasahi.aichi.jp","seto.aichi.jp","shikatsu.aichi.jp","shinshiro.aichi.jp","shitara.aichi.jp","tahara.aichi.jp","takahama.aichi.jp","tobishima.aichi.jp","toei.aichi.jp","togo.aichi.jp","tokai.aichi.jp","tokoname.aichi.jp","toyoake.aichi.jp","toyohashi.aichi.jp","toyokawa.aichi.jp","toyone.aichi.jp","toyota.aichi.jp","tsushima.aichi.jp","yatomi.aichi.jp","akita.akita.jp","daisen.akita.jp","fujisato.akita.jp","gojome.akita.jp","hachirogata.akita.jp","happou.akita.jp","higashinaruse.akita.jp","honjo.akita.jp","honjyo.akita.jp","ikawa.akita.jp","kamikoani.akita.jp","kamioka.akita.jp","katagami.akita.jp","kazuno.akita.jp","kitaakita.akita.jp","kosaka.akita.jp","kyowa.akita.jp","misato.akita.jp","mitane.akita.jp","moriyoshi.akita.jp","nikaho.akita.jp","noshiro.akita.jp","odate.akita.jp","oga.akita.jp","ogata.akita.jp","semboku.akita.jp","yokote.akita.jp","yurihonjo.akita.jp","aomori.aomori.jp","gonohe.aomori.jp","hachinohe.aomori.jp","hashikami.aomori.jp","hiranai.aomori.jp","hirosaki.aomori.jp","itayanagi.aomori.jp","kuroishi.aomori.jp","misawa.aomori.jp","mutsu.aomori.jp","nakadomari.aomori.jp","noheji.aomori.jp","oirase.aomori.jp","owani.aomori.jp","rokunohe.aomori.jp","sannohe.aomori.jp","shichinohe.aomori.jp","shingo.aomori.jp","takko.aomori.jp","towada.aomori.jp","tsugaru.aomori.jp","tsuruta.aomori.jp","abiko.chiba.jp","asahi.chiba.jp","chonan.chiba.jp","chosei.chiba.jp","choshi.chiba.jp","chuo.chiba.jp","funabashi.chiba.jp","futtsu.chiba.jp","hanamigawa.chiba.jp","ichihara.chiba.jp","ichikawa.chiba.jp","ichinomiya.chiba.jp","inzai.chiba.jp","isumi.chiba.jp","kamagaya.chiba.jp","kamogawa.chiba.jp","kashiwa.chiba.jp","katori.chiba.jp","katsuura.chiba.jp","kimitsu.chiba.jp","kisarazu.chiba.jp","kozaki.chiba.jp","kujukuri.chiba.jp","kyonan.chiba.jp","matsudo.chiba.jp","midori.chiba.jp","mihama.chiba.jp","minamiboso.chiba.jp","mobara.chiba.jp","mutsuzawa.chiba.jp","nagara.chiba.jp","nagareyama.chiba.jp","narashino.chiba.jp","narita.chiba.jp","noda.chiba.jp","oamishirasato.chiba.jp","omigawa.chiba.jp","onjuku.chiba.jp","otaki.chiba.jp","sakae.chiba.jp","sakura.chiba.jp","shimofusa.chiba.jp","shirako.chiba.jp","shiroi.chiba.jp","shisui.chiba.jp","sodegaura.chiba.jp","sosa.chiba.jp","tako.chiba.jp","tateyama.chiba.jp","togane.chiba.jp","tohnosho.chiba.jp","tomisato.chiba.jp","urayasu.chiba.jp","yachimata.chiba.jp","yachiyo.chiba.jp","yokaichiba.chiba.jp","yokoshibahikari.chiba.jp","yotsukaido.chiba.jp","ainan.ehime.jp","honai.ehime.jp","ikata.ehime.jp","imabari.ehime.jp","iyo.ehime.jp","kamijima.ehime.jp","kihoku.ehime.jp","kumakogen.ehime.jp","masaki.ehime.jp","matsuno.ehime.jp","matsuyama.ehime.jp","namikata.ehime.jp","niihama.ehime.jp","ozu.ehime.jp","saijo.ehime.jp","seiyo.ehime.jp","shikokuchuo.ehime.jp","tobe.ehime.jp","toon.ehime.jp","uchiko.ehime.jp","uwajima.ehime.jp","yawatahama.ehime.jp","echizen.fukui.jp","eiheiji.fukui.jp","fukui.fukui.jp","ikeda.fukui.jp","katsuyama.fukui.jp","mihama.fukui.jp","minamiechizen.fukui.jp","obama.fukui.jp","ohi.fukui.jp","ono.fukui.jp","sabae.fukui.jp","sakai.fukui.jp","takahama.fukui.jp","tsuruga.fukui.jp","wakasa.fukui.jp","ashiya.fukuoka.jp","buzen.fukuoka.jp","chikugo.fukuoka.jp","chikuho.fukuoka.jp","chikujo.fukuoka.jp","chikushino.fukuoka.jp","chikuzen.fukuoka.jp","chuo.fukuoka.jp","dazaifu.fukuoka.jp","fukuchi.fukuoka.jp","hakata.fukuoka.jp","higashi.fukuoka.jp","hirokawa.fukuoka.jp","hisayama.fukuoka.jp","iizuka.fukuoka.jp","inatsuki.fukuoka.jp","kaho.fukuoka.jp","kasuga.fukuoka.jp","kasuya.fukuoka.jp","kawara.fukuoka.jp","keisen.fukuoka.jp","koga.fukuoka.jp","kurate.fukuoka.jp","kurogi.fukuoka.jp","kurume.fukuoka.jp","minami.fukuoka.jp","miyako.fukuoka.jp","miyama.fukuoka.jp","miyawaka.fukuoka.jp","mizumaki.fukuoka.jp","munakata.fukuoka.jp","nakagawa.fukuoka.jp","nakama.fukuoka.jp","nishi.fukuoka.jp","nogata.fukuoka.jp","ogori.fukuoka.jp","okagaki.fukuoka.jp","okawa.fukuoka.jp","oki.fukuoka.jp","omuta.fukuoka.jp","onga.fukuoka.jp","onojo.fukuoka.jp","oto.fukuoka.jp","saigawa.fukuoka.jp","sasaguri.fukuoka.jp","shingu.fukuoka.jp","shinyoshitomi.fukuoka.jp","shonai.fukuoka.jp","soeda.fukuoka.jp","sue.fukuoka.jp","tachiarai.fukuoka.jp","tagawa.fukuoka.jp","takata.fukuoka.jp","toho.fukuoka.jp","toyotsu.fukuoka.jp","tsuiki.fukuoka.jp","ukiha.fukuoka.jp","umi.fukuoka.jp","usui.fukuoka.jp","yamada.fukuoka.jp","yame.fukuoka.jp","yanagawa.fukuoka.jp","yukuhashi.fukuoka.jp","aizubange.fukushima.jp","aizumisato.fukushima.jp","aizuwakamatsu.fukushima.jp","asakawa.fukushima.jp","bandai.fukushima.jp","date.fukushima.jp","fukushima.fukushima.jp","furudono.fukushima.jp","futaba.fukushima.jp","hanawa.fukushima.jp","higashi.fukushima.jp","hirata.fukushima.jp","hirono.fukushima.jp","iitate.fukushima.jp","inawashiro.fukushima.jp","ishikawa.fukushima.jp","iwaki.fukushima.jp","izumizaki.fukushima.jp","kagamiishi.fukushima.jp","kaneyama.fukushima.jp","kawamata.fukushima.jp","kitakata.fukushima.jp","kitashiobara.fukushima.jp","koori.fukushima.jp","koriyama.fukushima.jp","kunimi.fukushima.jp","miharu.fukushima.jp","mishima.fukushima.jp","namie.fukushima.jp","nango.fukushima.jp","nishiaizu.fukushima.jp","nishigo.fukushima.jp","okuma.fukushima.jp","omotego.fukushima.jp","ono.fukushima.jp","otama.fukushima.jp","samegawa.fukushima.jp","shimogo.fukushima.jp","shirakawa.fukushima.jp","showa.fukushima.jp","soma.fukushima.jp","sukagawa.fukushima.jp","taishin.fukushima.jp","tamakawa.fukushima.jp","tanagura.fukushima.jp","tenei.fukushima.jp","yabuki.fukushima.jp","yamato.fukushima.jp","yamatsuri.fukushima.jp","yanaizu.fukushima.jp","yugawa.fukushima.jp","anpachi.gifu.jp","ena.gifu.jp","gifu.gifu.jp","ginan.gifu.jp","godo.gifu.jp","gujo.gifu.jp","hashima.gifu.jp","hichiso.gifu.jp","hida.gifu.jp","higashishirakawa.gifu.jp","ibigawa.gifu.jp","ikeda.gifu.jp","kakamigahara.gifu.jp","kani.gifu.jp","kasahara.gifu.jp","kasamatsu.gifu.jp","kawaue.gifu.jp","kitagata.gifu.jp","mino.gifu.jp","minokamo.gifu.jp","mitake.gifu.jp","mizunami.gifu.jp","motosu.gifu.jp","nakatsugawa.gifu.jp","ogaki.gifu.jp","sakahogi.gifu.jp","seki.gifu.jp","sekigahara.gifu.jp","shirakawa.gifu.jp","tajimi.gifu.jp","takayama.gifu.jp","tarui.gifu.jp","toki.gifu.jp","tomika.gifu.jp","wanouchi.gifu.jp","yamagata.gifu.jp","yaotsu.gifu.jp","yoro.gifu.jp","annaka.gunma.jp","chiyoda.gunma.jp","fujioka.gunma.jp","higashiagatsuma.gunma.jp","isesaki.gunma.jp","itakura.gunma.jp","kanna.gunma.jp","kanra.gunma.jp","katashina.gunma.jp","kawaba.gunma.jp","kiryu.gunma.jp","kusatsu.gunma.jp","maebashi.gunma.jp","meiwa.gunma.jp","midori.gunma.jp","minakami.gunma.jp","naganohara.gunma.jp","nakanojo.gunma.jp","nanmoku.gunma.jp","numata.gunma.jp","oizumi.gunma.jp","ora.gunma.jp","ota.gunma.jp","shibukawa.gunma.jp","shimonita.gunma.jp","shinto.gunma.jp","showa.gunma.jp","takasaki.gunma.jp","takayama.gunma.jp","tamamura.gunma.jp","tatebayashi.gunma.jp","tomioka.gunma.jp","tsukiyono.gunma.jp","tsumagoi.gunma.jp","ueno.gunma.jp","yoshioka.gunma.jp","asaminami.hiroshima.jp","daiwa.hiroshima.jp","etajima.hiroshima.jp","fuchu.hiroshima.jp","fukuyama.hiroshima.jp","hatsukaichi.hiroshima.jp","higashihiroshima.hiroshima.jp","hongo.hiroshima.jp","jinsekikogen.hiroshima.jp","kaita.hiroshima.jp","kui.hiroshima.jp","kumano.hiroshima.jp","kure.hiroshima.jp","mihara.hiroshima.jp","miyoshi.hiroshima.jp","naka.hiroshima.jp","onomichi.hiroshima.jp","osakikamijima.hiroshima.jp","otake.hiroshima.jp","saka.hiroshima.jp","sera.hiroshima.jp","seranishi.hiroshima.jp","shinichi.hiroshima.jp","shobara.hiroshima.jp","takehara.hiroshima.jp","abashiri.hokkaido.jp","abira.hokkaido.jp","aibetsu.hokkaido.jp","akabira.hokkaido.jp","akkeshi.hokkaido.jp","asahikawa.hokkaido.jp","ashibetsu.hokkaido.jp","ashoro.hokkaido.jp","assabu.hokkaido.jp","atsuma.hokkaido.jp","bibai.hokkaido.jp","biei.hokkaido.jp","bifuka.hokkaido.jp","bihoro.hokkaido.jp","biratori.hokkaido.jp","chippubetsu.hokkaido.jp","chitose.hokkaido.jp","date.hokkaido.jp","ebetsu.hokkaido.jp","embetsu.hokkaido.jp","eniwa.hokkaido.jp","erimo.hokkaido.jp","esan.hokkaido.jp","esashi.hokkaido.jp","fukagawa.hokkaido.jp","fukushima.hokkaido.jp","furano.hokkaido.jp","furubira.hokkaido.jp","haboro.hokkaido.jp","hakodate.hokkaido.jp","hamatonbetsu.hokkaido.jp","hidaka.hokkaido.jp","higashikagura.hokkaido.jp","higashikawa.hokkaido.jp","hiroo.hokkaido.jp","hokuryu.hokkaido.jp","hokuto.hokkaido.jp","honbetsu.hokkaido.jp","horokanai.hokkaido.jp","horonobe.hokkaido.jp","ikeda.hokkaido.jp","imakane.hokkaido.jp","ishikari.hokkaido.jp","iwamizawa.hokkaido.jp","iwanai.hokkaido.jp","kamifurano.hokkaido.jp","kamikawa.hokkaido.jp","kamishihoro.hokkaido.jp","kamisunagawa.hokkaido.jp","kamoenai.hokkaido.jp","kayabe.hokkaido.jp","kembuchi.hokkaido.jp","kikonai.hokkaido.jp","kimobetsu.hokkaido.jp","kitahiroshima.hokkaido.jp","kitami.hokkaido.jp","kiyosato.hokkaido.jp","koshimizu.hokkaido.jp","kunneppu.hokkaido.jp","kuriyama.hokkaido.jp","kuromatsunai.hokkaido.jp","kushiro.hokkaido.jp","kutchan.hokkaido.jp","kyowa.hokkaido.jp","mashike.hokkaido.jp","matsumae.hokkaido.jp","mikasa.hokkaido.jp","minamifurano.hokkaido.jp","mombetsu.hokkaido.jp","moseushi.hokkaido.jp","mukawa.hokkaido.jp","muroran.hokkaido.jp","naie.hokkaido.jp","nakagawa.hokkaido.jp","nakasatsunai.hokkaido.jp","nakatombetsu.hokkaido.jp","nanae.hokkaido.jp","nanporo.hokkaido.jp","nayoro.hokkaido.jp","nemuro.hokkaido.jp","niikappu.hokkaido.jp","niki.hokkaido.jp","nishiokoppe.hokkaido.jp","noboribetsu.hokkaido.jp","numata.hokkaido.jp","obihiro.hokkaido.jp","obira.hokkaido.jp","oketo.hokkaido.jp","okoppe.hokkaido.jp","otaru.hokkaido.jp","otobe.hokkaido.jp","otofuke.hokkaido.jp","otoineppu.hokkaido.jp","oumu.hokkaido.jp","ozora.hokkaido.jp","pippu.hokkaido.jp","rankoshi.hokkaido.jp","rebun.hokkaido.jp","rikubetsu.hokkaido.jp","rishiri.hokkaido.jp","rishirifuji.hokkaido.jp","saroma.hokkaido.jp","sarufutsu.hokkaido.jp","shakotan.hokkaido.jp","shari.hokkaido.jp","shibecha.hokkaido.jp","shibetsu.hokkaido.jp","shikabe.hokkaido.jp","shikaoi.hokkaido.jp","shimamaki.hokkaido.jp","shimizu.hokkaido.jp","shimokawa.hokkaido.jp","shinshinotsu.hokkaido.jp","shintoku.hokkaido.jp","shiranuka.hokkaido.jp","shiraoi.hokkaido.jp","shiriuchi.hokkaido.jp","sobetsu.hokkaido.jp","sunagawa.hokkaido.jp","taiki.hokkaido.jp","takasu.hokkaido.jp","takikawa.hokkaido.jp","takinoue.hokkaido.jp","teshikaga.hokkaido.jp","tobetsu.hokkaido.jp","tohma.hokkaido.jp","tomakomai.hokkaido.jp","tomari.hokkaido.jp","toya.hokkaido.jp","toyako.hokkaido.jp","toyotomi.hokkaido.jp","toyoura.hokkaido.jp","tsubetsu.hokkaido.jp","tsukigata.hokkaido.jp","urakawa.hokkaido.jp","urausu.hokkaido.jp","uryu.hokkaido.jp","utashinai.hokkaido.jp","wakkanai.hokkaido.jp","wassamu.hokkaido.jp","yakumo.hokkaido.jp","yoichi.hokkaido.jp","aioi.hyogo.jp","akashi.hyogo.jp","ako.hyogo.jp","amagasaki.hyogo.jp","aogaki.hyogo.jp","asago.hyogo.jp","ashiya.hyogo.jp","awaji.hyogo.jp","fukusaki.hyogo.jp","goshiki.hyogo.jp","harima.hyogo.jp","himeji.hyogo.jp","ichikawa.hyogo.jp","inagawa.hyogo.jp","itami.hyogo.jp","kakogawa.hyogo.jp","kamigori.hyogo.jp","kamikawa.hyogo.jp","kasai.hyogo.jp","kasuga.hyogo.jp","kawanishi.hyogo.jp","miki.hyogo.jp","minamiawaji.hyogo.jp","nishinomiya.hyogo.jp","nishiwaki.hyogo.jp","ono.hyogo.jp","sanda.hyogo.jp","sannan.hyogo.jp","sasayama.hyogo.jp","sayo.hyogo.jp","shingu.hyogo.jp","shinonsen.hyogo.jp","shiso.hyogo.jp","sumoto.hyogo.jp","taishi.hyogo.jp","taka.hyogo.jp","takarazuka.hyogo.jp","takasago.hyogo.jp","takino.hyogo.jp","tamba.hyogo.jp","tatsuno.hyogo.jp","toyooka.hyogo.jp","yabu.hyogo.jp","yashiro.hyogo.jp","yoka.hyogo.jp","yokawa.hyogo.jp","ami.ibaraki.jp","asahi.ibaraki.jp","bando.ibaraki.jp","chikusei.ibaraki.jp","daigo.ibaraki.jp","fujishiro.ibaraki.jp","hitachi.ibaraki.jp","hitachinaka.ibaraki.jp","hitachiomiya.ibaraki.jp","hitachiota.ibaraki.jp","ibaraki.ibaraki.jp","ina.ibaraki.jp","inashiki.ibaraki.jp","itako.ibaraki.jp","iwama.ibaraki.jp","joso.ibaraki.jp","kamisu.ibaraki.jp","kasama.ibaraki.jp","kashima.ibaraki.jp","kasumigaura.ibaraki.jp","koga.ibaraki.jp","miho.ibaraki.jp","mito.ibaraki.jp","moriya.ibaraki.jp","naka.ibaraki.jp","namegata.ibaraki.jp","oarai.ibaraki.jp","ogawa.ibaraki.jp","omitama.ibaraki.jp","ryugasaki.ibaraki.jp","sakai.ibaraki.jp","sakuragawa.ibaraki.jp","shimodate.ibaraki.jp","shimotsuma.ibaraki.jp","shirosato.ibaraki.jp","sowa.ibaraki.jp","suifu.ibaraki.jp","takahagi.ibaraki.jp","tamatsukuri.ibaraki.jp","tokai.ibaraki.jp","tomobe.ibaraki.jp","tone.ibaraki.jp","toride.ibaraki.jp","tsuchiura.ibaraki.jp","tsukuba.ibaraki.jp","uchihara.ibaraki.jp","ushiku.ibaraki.jp","yachiyo.ibaraki.jp","yamagata.ibaraki.jp","yawara.ibaraki.jp","yuki.ibaraki.jp","anamizu.ishikawa.jp","hakui.ishikawa.jp","hakusan.ishikawa.jp","kaga.ishikawa.jp","kahoku.ishikawa.jp","kanazawa.ishikawa.jp","kawakita.ishikawa.jp","komatsu.ishikawa.jp","nakanoto.ishikawa.jp","nanao.ishikawa.jp","nomi.ishikawa.jp","nonoichi.ishikawa.jp","noto.ishikawa.jp","shika.ishikawa.jp","suzu.ishikawa.jp","tsubata.ishikawa.jp","tsurugi.ishikawa.jp","uchinada.ishikawa.jp","wajima.ishikawa.jp","fudai.iwate.jp","fujisawa.iwate.jp","hanamaki.iwate.jp","hiraizumi.iwate.jp","hirono.iwate.jp","ichinohe.iwate.jp","ichinoseki.iwate.jp","iwaizumi.iwate.jp","iwate.iwate.jp","joboji.iwate.jp","kamaishi.iwate.jp","kanegasaki.iwate.jp","karumai.iwate.jp","kawai.iwate.jp","kitakami.iwate.jp","kuji.iwate.jp","kunohe.iwate.jp","kuzumaki.iwate.jp","miyako.iwate.jp","mizusawa.iwate.jp","morioka.iwate.jp","ninohe.iwate.jp","noda.iwate.jp","ofunato.iwate.jp","oshu.iwate.jp","otsuchi.iwate.jp","rikuzentakata.iwate.jp","shiwa.iwate.jp","shizukuishi.iwate.jp","sumita.iwate.jp","tanohata.iwate.jp","tono.iwate.jp","yahaba.iwate.jp","yamada.iwate.jp","ayagawa.kagawa.jp","higashikagawa.kagawa.jp","kanonji.kagawa.jp","kotohira.kagawa.jp","manno.kagawa.jp","marugame.kagawa.jp","mitoyo.kagawa.jp","naoshima.kagawa.jp","sanuki.kagawa.jp","tadotsu.kagawa.jp","takamatsu.kagawa.jp","tonosho.kagawa.jp","uchinomi.kagawa.jp","utazu.kagawa.jp","zentsuji.kagawa.jp","akune.kagoshima.jp","amami.kagoshima.jp","hioki.kagoshima.jp","isa.kagoshima.jp","isen.kagoshima.jp","izumi.kagoshima.jp","kagoshima.kagoshima.jp","kanoya.kagoshima.jp","kawanabe.kagoshima.jp","kinko.kagoshima.jp","kouyama.kagoshima.jp","makurazaki.kagoshima.jp","matsumoto.kagoshima.jp","minamitane.kagoshima.jp","nakatane.kagoshima.jp","nishinoomote.kagoshima.jp","satsumasendai.kagoshima.jp","soo.kagoshima.jp","tarumizu.kagoshima.jp","yusui.kagoshima.jp","aikawa.kanagawa.jp","atsugi.kanagawa.jp","ayase.kanagawa.jp","chigasaki.kanagawa.jp","ebina.kanagawa.jp","fujisawa.kanagawa.jp","hadano.kanagawa.jp","hakone.kanagawa.jp","hiratsuka.kanagawa.jp","isehara.kanagawa.jp","kaisei.kanagawa.jp","kamakura.kanagawa.jp","kiyokawa.kanagawa.jp","matsuda.kanagawa.jp","minamiashigara.kanagawa.jp","miura.kanagawa.jp","nakai.kanagawa.jp","ninomiya.kanagawa.jp","odawara.kanagawa.jp","oi.kanagawa.jp","oiso.kanagawa.jp","sagamihara.kanagawa.jp","samukawa.kanagawa.jp","tsukui.kanagawa.jp","yamakita.kanagawa.jp","yamato.kanagawa.jp","yokosuka.kanagawa.jp","yugawara.kanagawa.jp","zama.kanagawa.jp","zushi.kanagawa.jp","aki.kochi.jp","geisei.kochi.jp","hidaka.kochi.jp","higashitsuno.kochi.jp","ino.kochi.jp","kagami.kochi.jp","kami.kochi.jp","kitagawa.kochi.jp","kochi.kochi.jp","mihara.kochi.jp","motoyama.kochi.jp","muroto.kochi.jp","nahari.kochi.jp","nakamura.kochi.jp","nankoku.kochi.jp","nishitosa.kochi.jp","niyodogawa.kochi.jp","ochi.kochi.jp","okawa.kochi.jp","otoyo.kochi.jp","otsuki.kochi.jp","sakawa.kochi.jp","sukumo.kochi.jp","susaki.kochi.jp","tosa.kochi.jp","tosashimizu.kochi.jp","toyo.kochi.jp","tsuno.kochi.jp","umaji.kochi.jp","yasuda.kochi.jp","yusuhara.kochi.jp","amakusa.kumamoto.jp","arao.kumamoto.jp","aso.kumamoto.jp","choyo.kumamoto.jp","gyokuto.kumamoto.jp","kamiamakusa.kumamoto.jp","kikuchi.kumamoto.jp","kumamoto.kumamoto.jp","mashiki.kumamoto.jp","mifune.kumamoto.jp","minamata.kumamoto.jp","minamioguni.kumamoto.jp","nagasu.kumamoto.jp","nishihara.kumamoto.jp","oguni.kumamoto.jp","ozu.kumamoto.jp","sumoto.kumamoto.jp","takamori.kumamoto.jp","uki.kumamoto.jp","uto.kumamoto.jp","yamaga.kumamoto.jp","yamato.kumamoto.jp","yatsushiro.kumamoto.jp","ayabe.kyoto.jp","fukuchiyama.kyoto.jp","higashiyama.kyoto.jp","ide.kyoto.jp","ine.kyoto.jp","joyo.kyoto.jp","kameoka.kyoto.jp","kamo.kyoto.jp","kita.kyoto.jp","kizu.kyoto.jp","kumiyama.kyoto.jp","kyotamba.kyoto.jp","kyotanabe.kyoto.jp","kyotango.kyoto.jp","maizuru.kyoto.jp","minami.kyoto.jp","minamiyamashiro.kyoto.jp","miyazu.kyoto.jp","muko.kyoto.jp","nagaokakyo.kyoto.jp","nakagyo.kyoto.jp","nantan.kyoto.jp","oyamazaki.kyoto.jp","sakyo.kyoto.jp","seika.kyoto.jp","tanabe.kyoto.jp","uji.kyoto.jp","ujitawara.kyoto.jp","wazuka.kyoto.jp","yamashina.kyoto.jp","yawata.kyoto.jp","asahi.mie.jp","inabe.mie.jp","ise.mie.jp","kameyama.mie.jp","kawagoe.mie.jp","kiho.mie.jp","kisosaki.mie.jp","kiwa.mie.jp","komono.mie.jp","kumano.mie.jp","kuwana.mie.jp","matsusaka.mie.jp","meiwa.mie.jp","mihama.mie.jp","minamiise.mie.jp","misugi.mie.jp","miyama.mie.jp","nabari.mie.jp","shima.mie.jp","suzuka.mie.jp","tado.mie.jp","taiki.mie.jp","taki.mie.jp","tamaki.mie.jp","toba.mie.jp","tsu.mie.jp","udono.mie.jp","ureshino.mie.jp","watarai.mie.jp","yokkaichi.mie.jp","furukawa.miyagi.jp","higashimatsushima.miyagi.jp","ishinomaki.miyagi.jp","iwanuma.miyagi.jp","kakuda.miyagi.jp","kami.miyagi.jp","kawasaki.miyagi.jp","marumori.miyagi.jp","matsushima.miyagi.jp","minamisanriku.miyagi.jp","misato.miyagi.jp","murata.miyagi.jp","natori.miyagi.jp","ogawara.miyagi.jp","ohira.miyagi.jp","onagawa.miyagi.jp","osaki.miyagi.jp","rifu.miyagi.jp","semine.miyagi.jp","shibata.miyagi.jp","shichikashuku.miyagi.jp","shikama.miyagi.jp","shiogama.miyagi.jp","shiroishi.miyagi.jp","tagajo.miyagi.jp","taiwa.miyagi.jp","tome.miyagi.jp","tomiya.miyagi.jp","wakuya.miyagi.jp","watari.miyagi.jp","yamamoto.miyagi.jp","zao.miyagi.jp","aya.miyazaki.jp","ebino.miyazaki.jp","gokase.miyazaki.jp","hyuga.miyazaki.jp","kadogawa.miyazaki.jp","kawaminami.miyazaki.jp","kijo.miyazaki.jp","kitagawa.miyazaki.jp","kitakata.miyazaki.jp","kitaura.miyazaki.jp","kobayashi.miyazaki.jp","kunitomi.miyazaki.jp","kushima.miyazaki.jp","mimata.miyazaki.jp","miyakonojo.miyazaki.jp","miyazaki.miyazaki.jp","morotsuka.miyazaki.jp","nichinan.miyazaki.jp","nishimera.miyazaki.jp","nobeoka.miyazaki.jp","saito.miyazaki.jp","shiiba.miyazaki.jp","shintomi.miyazaki.jp","takaharu.miyazaki.jp","takanabe.miyazaki.jp","takazaki.miyazaki.jp","tsuno.miyazaki.jp","achi.nagano.jp","agematsu.nagano.jp","anan.nagano.jp","aoki.nagano.jp","asahi.nagano.jp","azumino.nagano.jp","chikuhoku.nagano.jp","chikuma.nagano.jp","chino.nagano.jp","fujimi.nagano.jp","hakuba.nagano.jp","hara.nagano.jp","hiraya.nagano.jp","iida.nagano.jp","iijima.nagano.jp","iiyama.nagano.jp","iizuna.nagano.jp","ikeda.nagano.jp","ikusaka.nagano.jp","ina.nagano.jp","karuizawa.nagano.jp","kawakami.nagano.jp","kiso.nagano.jp","kisofukushima.nagano.jp","kitaaiki.nagano.jp","komagane.nagano.jp","komoro.nagano.jp","matsukawa.nagano.jp","matsumoto.nagano.jp","miasa.nagano.jp","minamiaiki.nagano.jp","minamimaki.nagano.jp","minamiminowa.nagano.jp","minowa.nagano.jp","miyada.nagano.jp","miyota.nagano.jp","mochizuki.nagano.jp","nagano.nagano.jp","nagawa.nagano.jp","nagiso.nagano.jp","nakagawa.nagano.jp","nakano.nagano.jp","nozawaonsen.nagano.jp","obuse.nagano.jp","ogawa.nagano.jp","okaya.nagano.jp","omachi.nagano.jp","omi.nagano.jp","ookuwa.nagano.jp","ooshika.nagano.jp","otaki.nagano.jp","otari.nagano.jp","sakae.nagano.jp","sakaki.nagano.jp","saku.nagano.jp","sakuho.nagano.jp","shimosuwa.nagano.jp","shinanomachi.nagano.jp","shiojiri.nagano.jp","suwa.nagano.jp","suzaka.nagano.jp","takagi.nagano.jp","takamori.nagano.jp","takayama.nagano.jp","tateshina.nagano.jp","tatsuno.nagano.jp","togakushi.nagano.jp","togura.nagano.jp","tomi.nagano.jp","ueda.nagano.jp","wada.nagano.jp","yamagata.nagano.jp","yamanouchi.nagano.jp","yasaka.nagano.jp","yasuoka.nagano.jp","chijiwa.nagasaki.jp","futsu.nagasaki.jp","goto.nagasaki.jp","hasami.nagasaki.jp","hirado.nagasaki.jp","iki.nagasaki.jp","isahaya.nagasaki.jp","kawatana.nagasaki.jp","kuchinotsu.nagasaki.jp","matsuura.nagasaki.jp","nagasaki.nagasaki.jp","obama.nagasaki.jp","omura.nagasaki.jp","oseto.nagasaki.jp","saikai.nagasaki.jp","sasebo.nagasaki.jp","seihi.nagasaki.jp","shimabara.nagasaki.jp","shinkamigoto.nagasaki.jp","togitsu.nagasaki.jp","tsushima.nagasaki.jp","unzen.nagasaki.jp","ando.nara.jp","gose.nara.jp","heguri.nara.jp","higashiyoshino.nara.jp","ikaruga.nara.jp","ikoma.nara.jp","kamikitayama.nara.jp","kanmaki.nara.jp","kashiba.nara.jp","kashihara.nara.jp","katsuragi.nara.jp","kawai.nara.jp","kawakami.nara.jp","kawanishi.nara.jp","koryo.nara.jp","kurotaki.nara.jp","mitsue.nara.jp","miyake.nara.jp","nara.nara.jp","nosegawa.nara.jp","oji.nara.jp","ouda.nara.jp","oyodo.nara.jp","sakurai.nara.jp","sango.nara.jp","shimoichi.nara.jp","shimokitayama.nara.jp","shinjo.nara.jp","soni.nara.jp","takatori.nara.jp","tawaramoto.nara.jp","tenkawa.nara.jp","tenri.nara.jp","uda.nara.jp","yamatokoriyama.nara.jp","yamatotakada.nara.jp","yamazoe.nara.jp","yoshino.nara.jp","aga.niigata.jp","agano.niigata.jp","gosen.niigata.jp","itoigawa.niigata.jp","izumozaki.niigata.jp","joetsu.niigata.jp","kamo.niigata.jp","kariwa.niigata.jp","kashiwazaki.niigata.jp","minamiuonuma.niigata.jp","mitsuke.niigata.jp","muika.niigata.jp","murakami.niigata.jp","myoko.niigata.jp","nagaoka.niigata.jp","niigata.niigata.jp","ojiya.niigata.jp","omi.niigata.jp","sado.niigata.jp","sanjo.niigata.jp","seiro.niigata.jp","seirou.niigata.jp","sekikawa.niigata.jp","shibata.niigata.jp","tagami.niigata.jp","tainai.niigata.jp","tochio.niigata.jp","tokamachi.niigata.jp","tsubame.niigata.jp","tsunan.niigata.jp","uonuma.niigata.jp","yahiko.niigata.jp","yoita.niigata.jp","yuzawa.niigata.jp","beppu.oita.jp","bungoono.oita.jp","bungotakada.oita.jp","hasama.oita.jp","hiji.oita.jp","himeshima.oita.jp","hita.oita.jp","kamitsue.oita.jp","kokonoe.oita.jp","kuju.oita.jp","kunisaki.oita.jp","kusu.oita.jp","oita.oita.jp","saiki.oita.jp","taketa.oita.jp","tsukumi.oita.jp","usa.oita.jp","usuki.oita.jp","yufu.oita.jp","akaiwa.okayama.jp","asakuchi.okayama.jp","bizen.okayama.jp","hayashima.okayama.jp","ibara.okayama.jp","kagamino.okayama.jp","kasaoka.okayama.jp","kibichuo.okayama.jp","kumenan.okayama.jp","kurashiki.okayama.jp","maniwa.okayama.jp","misaki.okayama.jp","nagi.okayama.jp","niimi.okayama.jp","nishiawakura.okayama.jp","okayama.okayama.jp","satosho.okayama.jp","setouchi.okayama.jp","shinjo.okayama.jp","shoo.okayama.jp","soja.okayama.jp","takahashi.okayama.jp","tamano.okayama.jp","tsuyama.okayama.jp","wake.okayama.jp","yakage.okayama.jp","aguni.okinawa.jp","ginowan.okinawa.jp","ginoza.okinawa.jp","gushikami.okinawa.jp","haebaru.okinawa.jp","higashi.okinawa.jp","hirara.okinawa.jp","iheya.okinawa.jp","ishigaki.okinawa.jp","ishikawa.okinawa.jp","itoman.okinawa.jp","izena.okinawa.jp","kadena.okinawa.jp","kin.okinawa.jp","kitadaito.okinawa.jp","kitanakagusuku.okinawa.jp","kumejima.okinawa.jp","kunigami.okinawa.jp","minamidaito.okinawa.jp","motobu.okinawa.jp","nago.okinawa.jp","naha.okinawa.jp","nakagusuku.okinawa.jp","nakijin.okinawa.jp","nanjo.okinawa.jp","nishihara.okinawa.jp","ogimi.okinawa.jp","okinawa.okinawa.jp","onna.okinawa.jp","shimoji.okinawa.jp","taketomi.okinawa.jp","tarama.okinawa.jp","tokashiki.okinawa.jp","tomigusuku.okinawa.jp","tonaki.okinawa.jp","urasoe.okinawa.jp","uruma.okinawa.jp","yaese.okinawa.jp","yomitan.okinawa.jp","yonabaru.okinawa.jp","yonaguni.okinawa.jp","zamami.okinawa.jp","abeno.osaka.jp","chihayaakasaka.osaka.jp","chuo.osaka.jp","daito.osaka.jp","fujiidera.osaka.jp","habikino.osaka.jp","hannan.osaka.jp","higashiosaka.osaka.jp","higashisumiyoshi.osaka.jp","higashiyodogawa.osaka.jp","hirakata.osaka.jp","ibaraki.osaka.jp","ikeda.osaka.jp","izumi.osaka.jp","izumiotsu.osaka.jp","izumisano.osaka.jp","kadoma.osaka.jp","kaizuka.osaka.jp","kanan.osaka.jp","kashiwara.osaka.jp","katano.osaka.jp","kawachinagano.osaka.jp","kishiwada.osaka.jp","kita.osaka.jp","kumatori.osaka.jp","matsubara.osaka.jp","minato.osaka.jp","minoh.osaka.jp","misaki.osaka.jp","moriguchi.osaka.jp","neyagawa.osaka.jp","nishi.osaka.jp","nose.osaka.jp","osakasayama.osaka.jp","sakai.osaka.jp","sayama.osaka.jp","sennan.osaka.jp","settsu.osaka.jp","shijonawate.osaka.jp","shimamoto.osaka.jp","suita.osaka.jp","tadaoka.osaka.jp","taishi.osaka.jp","tajiri.osaka.jp","takaishi.osaka.jp","takatsuki.osaka.jp","tondabayashi.osaka.jp","toyonaka.osaka.jp","toyono.osaka.jp","yao.osaka.jp","ariake.saga.jp","arita.saga.jp","fukudomi.saga.jp","genkai.saga.jp","hamatama.saga.jp","hizen.saga.jp","imari.saga.jp","kamimine.saga.jp","kanzaki.saga.jp","karatsu.saga.jp","kashima.saga.jp","kitagata.saga.jp","kitahata.saga.jp","kiyama.saga.jp","kouhoku.saga.jp","kyuragi.saga.jp","nishiarita.saga.jp","ogi.saga.jp","omachi.saga.jp","ouchi.saga.jp","saga.saga.jp","shiroishi.saga.jp","taku.saga.jp","tara.saga.jp","tosu.saga.jp","yoshinogari.saga.jp","arakawa.saitama.jp","asaka.saitama.jp","chichibu.saitama.jp","fujimi.saitama.jp","fujimino.saitama.jp","fukaya.saitama.jp","hanno.saitama.jp","hanyu.saitama.jp","hasuda.saitama.jp","hatogaya.saitama.jp","hatoyama.saitama.jp","hidaka.saitama.jp","higashichichibu.saitama.jp","higashimatsuyama.saitama.jp","honjo.saitama.jp","ina.saitama.jp","iruma.saitama.jp","iwatsuki.saitama.jp","kamiizumi.saitama.jp","kamikawa.saitama.jp","kamisato.saitama.jp","kasukabe.saitama.jp","kawagoe.saitama.jp","kawaguchi.saitama.jp","kawajima.saitama.jp","kazo.saitama.jp","kitamoto.saitama.jp","koshigaya.saitama.jp","kounosu.saitama.jp","kuki.saitama.jp","kumagaya.saitama.jp","matsubushi.saitama.jp","minano.saitama.jp","misato.saitama.jp","miyashiro.saitama.jp","miyoshi.saitama.jp","moroyama.saitama.jp","nagatoro.saitama.jp","namegawa.saitama.jp","niiza.saitama.jp","ogano.saitama.jp","ogawa.saitama.jp","ogose.saitama.jp","okegawa.saitama.jp","omiya.saitama.jp","otaki.saitama.jp","ranzan.saitama.jp","ryokami.saitama.jp","saitama.saitama.jp","sakado.saitama.jp","satte.saitama.jp","sayama.saitama.jp","shiki.saitama.jp","shiraoka.saitama.jp","soka.saitama.jp","sugito.saitama.jp","toda.saitama.jp","tokigawa.saitama.jp","tokorozawa.saitama.jp","tsurugashima.saitama.jp","urawa.saitama.jp","warabi.saitama.jp","yashio.saitama.jp","yokoze.saitama.jp","yono.saitama.jp","yorii.saitama.jp","yoshida.saitama.jp","yoshikawa.saitama.jp","yoshimi.saitama.jp","aisho.shiga.jp","gamo.shiga.jp","higashiomi.shiga.jp","hikone.shiga.jp","koka.shiga.jp","konan.shiga.jp","kosei.shiga.jp","koto.shiga.jp","kusatsu.shiga.jp","maibara.shiga.jp","moriyama.shiga.jp","nagahama.shiga.jp","nishiazai.shiga.jp","notogawa.shiga.jp","omihachiman.shiga.jp","otsu.shiga.jp","ritto.shiga.jp","ryuoh.shiga.jp","takashima.shiga.jp","takatsuki.shiga.jp","torahime.shiga.jp","toyosato.shiga.jp","yasu.shiga.jp","akagi.shimane.jp","ama.shimane.jp","gotsu.shimane.jp","hamada.shimane.jp","higashiizumo.shimane.jp","hikawa.shimane.jp","hikimi.shimane.jp","izumo.shimane.jp","kakinoki.shimane.jp","masuda.shimane.jp","matsue.shimane.jp","misato.shimane.jp","nishinoshima.shimane.jp","ohda.shimane.jp","okinoshima.shimane.jp","okuizumo.shimane.jp","shimane.shimane.jp","tamayu.shimane.jp","tsuwano.shimane.jp","unnan.shimane.jp","yakumo.shimane.jp","yasugi.shimane.jp","yatsuka.shimane.jp","arai.shizuoka.jp","atami.shizuoka.jp","fuji.shizuoka.jp","fujieda.shizuoka.jp","fujikawa.shizuoka.jp","fujinomiya.shizuoka.jp","fukuroi.shizuoka.jp","gotemba.shizuoka.jp","haibara.shizuoka.jp","hamamatsu.shizuoka.jp","higashiizu.shizuoka.jp","ito.shizuoka.jp","iwata.shizuoka.jp","izu.shizuoka.jp","izunokuni.shizuoka.jp","kakegawa.shizuoka.jp","kannami.shizuoka.jp","kawanehon.shizuoka.jp","kawazu.shizuoka.jp","kikugawa.shizuoka.jp","kosai.shizuoka.jp","makinohara.shizuoka.jp","matsuzaki.shizuoka.jp","minamiizu.shizuoka.jp","mishima.shizuoka.jp","morimachi.shizuoka.jp","nishiizu.shizuoka.jp","numazu.shizuoka.jp","omaezaki.shizuoka.jp","shimada.shizuoka.jp","shimizu.shizuoka.jp","shimoda.shizuoka.jp","shizuoka.shizuoka.jp","susono.shizuoka.jp","yaizu.shizuoka.jp","yoshida.shizuoka.jp","ashikaga.tochigi.jp","bato.tochigi.jp","haga.tochigi.jp","ichikai.tochigi.jp","iwafune.tochigi.jp","kaminokawa.tochigi.jp","kanuma.tochigi.jp","karasuyama.tochigi.jp","kuroiso.tochigi.jp","mashiko.tochigi.jp","mibu.tochigi.jp","moka.tochigi.jp","motegi.tochigi.jp","nasu.tochigi.jp","nasushiobara.tochigi.jp","nikko.tochigi.jp","nishikata.tochigi.jp","nogi.tochigi.jp","ohira.tochigi.jp","ohtawara.tochigi.jp","oyama.tochigi.jp","sakura.tochigi.jp","sano.tochigi.jp","shimotsuke.tochigi.jp","shioya.tochigi.jp","takanezawa.tochigi.jp","tochigi.tochigi.jp","tsuga.tochigi.jp","ujiie.tochigi.jp","utsunomiya.tochigi.jp","yaita.tochigi.jp","aizumi.tokushima.jp","anan.tokushima.jp","ichiba.tokushima.jp","itano.tokushima.jp","kainan.tokushima.jp","komatsushima.tokushima.jp","matsushige.tokushima.jp","mima.tokushima.jp","minami.tokushima.jp","miyoshi.tokushima.jp","mugi.tokushima.jp","nakagawa.tokushima.jp","naruto.tokushima.jp","sanagochi.tokushima.jp","shishikui.tokushima.jp","tokushima.tokushima.jp","wajiki.tokushima.jp","adachi.tokyo.jp","akiruno.tokyo.jp","akishima.tokyo.jp","aogashima.tokyo.jp","arakawa.tokyo.jp","bunkyo.tokyo.jp","chiyoda.tokyo.jp","chofu.tokyo.jp","chuo.tokyo.jp","edogawa.tokyo.jp","fuchu.tokyo.jp","fussa.tokyo.jp","hachijo.tokyo.jp","hachioji.tokyo.jp","hamura.tokyo.jp","higashikurume.tokyo.jp","higashimurayama.tokyo.jp","higashiyamato.tokyo.jp","hino.tokyo.jp","hinode.tokyo.jp","hinohara.tokyo.jp","inagi.tokyo.jp","itabashi.tokyo.jp","katsushika.tokyo.jp","kita.tokyo.jp","kiyose.tokyo.jp","kodaira.tokyo.jp","koganei.tokyo.jp","kokubunji.tokyo.jp","komae.tokyo.jp","koto.tokyo.jp","kouzushima.tokyo.jp","kunitachi.tokyo.jp","machida.tokyo.jp","meguro.tokyo.jp","minato.tokyo.jp","mitaka.tokyo.jp","mizuho.tokyo.jp","musashimurayama.tokyo.jp","musashino.tokyo.jp","nakano.tokyo.jp","nerima.tokyo.jp","ogasawara.tokyo.jp","okutama.tokyo.jp","ome.tokyo.jp","oshima.tokyo.jp","ota.tokyo.jp","setagaya.tokyo.jp","shibuya.tokyo.jp","shinagawa.tokyo.jp","shinjuku.tokyo.jp","suginami.tokyo.jp","sumida.tokyo.jp","tachikawa.tokyo.jp","taito.tokyo.jp","tama.tokyo.jp","toshima.tokyo.jp","chizu.tottori.jp","hino.tottori.jp","kawahara.tottori.jp","koge.tottori.jp","kotoura.tottori.jp","misasa.tottori.jp","nanbu.tottori.jp","nichinan.tottori.jp","sakaiminato.tottori.jp","tottori.tottori.jp","wakasa.tottori.jp","yazu.tottori.jp","yonago.tottori.jp","asahi.toyama.jp","fuchu.toyama.jp","fukumitsu.toyama.jp","funahashi.toyama.jp","himi.toyama.jp","imizu.toyama.jp","inami.toyama.jp","johana.toyama.jp","kamiichi.toyama.jp","kurobe.toyama.jp","nakaniikawa.toyama.jp","namerikawa.toyama.jp","nanto.toyama.jp","nyuzen.toyama.jp","oyabe.toyama.jp","taira.toyama.jp","takaoka.toyama.jp","tateyama.toyama.jp","toga.toyama.jp","tonami.toyama.jp","toyama.toyama.jp","unazuki.toyama.jp","uozu.toyama.jp","yamada.toyama.jp","arida.wakayama.jp","aridagawa.wakayama.jp","gobo.wakayama.jp","hashimoto.wakayama.jp","hidaka.wakayama.jp","hirogawa.wakayama.jp","inami.wakayama.jp","iwade.wakayama.jp","kainan.wakayama.jp","kamitonda.wakayama.jp","katsuragi.wakayama.jp","kimino.wakayama.jp","kinokawa.wakayama.jp","kitayama.wakayama.jp","koya.wakayama.jp","koza.wakayama.jp","kozagawa.wakayama.jp","kudoyama.wakayama.jp","kushimoto.wakayama.jp","mihama.wakayama.jp","misato.wakayama.jp","nachikatsuura.wakayama.jp","shingu.wakayama.jp","shirahama.wakayama.jp","taiji.wakayama.jp","tanabe.wakayama.jp","wakayama.wakayama.jp","yuasa.wakayama.jp","yura.wakayama.jp","asahi.yamagata.jp","funagata.yamagata.jp","higashine.yamagata.jp","iide.yamagata.jp","kahoku.yamagata.jp","kaminoyama.yamagata.jp","kaneyama.yamagata.jp","kawanishi.yamagata.jp","mamurogawa.yamagata.jp","mikawa.yamagata.jp","murayama.yamagata.jp","nagai.yamagata.jp","nakayama.yamagata.jp","nanyo.yamagata.jp","nishikawa.yamagata.jp","obanazawa.yamagata.jp","oe.yamagata.jp","oguni.yamagata.jp","ohkura.yamagata.jp","oishida.yamagata.jp","sagae.yamagata.jp","sakata.yamagata.jp","sakegawa.yamagata.jp","shinjo.yamagata.jp","shirataka.yamagata.jp","shonai.yamagata.jp","takahata.yamagata.jp","tendo.yamagata.jp","tozawa.yamagata.jp","tsuruoka.yamagata.jp","yamagata.yamagata.jp","yamanobe.yamagata.jp","yonezawa.yamagata.jp","yuza.yamagata.jp","abu.yamaguchi.jp","hagi.yamaguchi.jp","hikari.yamaguchi.jp","hofu.yamaguchi.jp","iwakuni.yamaguchi.jp","kudamatsu.yamaguchi.jp","mitou.yamaguchi.jp","nagato.yamaguchi.jp","oshima.yamaguchi.jp","shimonoseki.yamaguchi.jp","shunan.yamaguchi.jp","tabuse.yamaguchi.jp","tokuyama.yamaguchi.jp","toyota.yamaguchi.jp","ube.yamaguchi.jp","yuu.yamaguchi.jp","chuo.yamanashi.jp","doshi.yamanashi.jp","fuefuki.yamanashi.jp","fujikawa.yamanashi.jp","fujikawaguchiko.yamanashi.jp","fujiyoshida.yamanashi.jp","hayakawa.yamanashi.jp","hokuto.yamanashi.jp","ichikawamisato.yamanashi.jp","kai.yamanashi.jp","kofu.yamanashi.jp","koshu.yamanashi.jp","kosuge.yamanashi.jp","minami-alps.yamanashi.jp","minobu.yamanashi.jp","nakamichi.yamanashi.jp","nanbu.yamanashi.jp","narusawa.yamanashi.jp","nirasaki.yamanashi.jp","nishikatsura.yamanashi.jp","oshino.yamanashi.jp","otsuki.yamanashi.jp","showa.yamanashi.jp","tabayama.yamanashi.jp","tsuru.yamanashi.jp","uenohara.yamanashi.jp","yamanakako.yamanashi.jp","yamanashi.yamanashi.jp","ke","ac.ke","co.ke","go.ke","info.ke","me.ke","mobi.ke","ne.ke","or.ke","sc.ke","kg","org.kg","net.kg","com.kg","edu.kg","gov.kg","mil.kg","*.kh","ki","edu.ki","biz.ki","net.ki","org.ki","gov.ki","info.ki","com.ki","km","org.km","nom.km","gov.km","prd.km","tm.km","edu.km","mil.km","ass.km","com.km","coop.km","asso.km","presse.km","medecin.km","notaires.km","pharmaciens.km","veterinaire.km","gouv.km","kn","net.kn","org.kn","edu.kn","gov.kn","kp","com.kp","edu.kp","gov.kp","org.kp","rep.kp","tra.kp","kr","ac.kr","co.kr","es.kr","go.kr","hs.kr","kg.kr","mil.kr","ms.kr","ne.kr","or.kr","pe.kr","re.kr","sc.kr","busan.kr","chungbuk.kr","chungnam.kr","daegu.kr","daejeon.kr","gangwon.kr","gwangju.kr","gyeongbuk.kr","gyeonggi.kr","gyeongnam.kr","incheon.kr","jeju.kr","jeonbuk.kr","jeonnam.kr","seoul.kr","ulsan.kr","kw","com.kw","edu.kw","emb.kw","gov.kw","ind.kw","net.kw","org.kw","ky","com.ky","edu.ky","net.ky","org.ky","kz","org.kz","edu.kz","net.kz","gov.kz","mil.kz","com.kz","la","int.la","net.la","info.la","edu.la","gov.la","per.la","com.la","org.la","lb","com.lb","edu.lb","gov.lb","net.lb","org.lb","lc","com.lc","net.lc","co.lc","org.lc","edu.lc","gov.lc","li","lk","gov.lk","sch.lk","net.lk","int.lk","com.lk","org.lk","edu.lk","ngo.lk","soc.lk","web.lk","ltd.lk","assn.lk","grp.lk","hotel.lk","ac.lk","lr","com.lr","edu.lr","gov.lr","org.lr","net.lr","ls","ac.ls","biz.ls","co.ls","edu.ls","gov.ls","info.ls","net.ls","org.ls","sc.ls","lt","gov.lt","lu","lv","com.lv","edu.lv","gov.lv","org.lv","mil.lv","id.lv","net.lv","asn.lv","conf.lv","ly","com.ly","net.ly","gov.ly","plc.ly","edu.ly","sch.ly","med.ly","org.ly","id.ly","ma","co.ma","net.ma","gov.ma","org.ma","ac.ma","press.ma","mc","tm.mc","asso.mc","md","me","co.me","net.me","org.me","edu.me","ac.me","gov.me","its.me","priv.me","mg","org.mg","nom.mg","gov.mg","prd.mg","tm.mg","edu.mg","mil.mg","com.mg","co.mg","mh","mil","mk","com.mk","org.mk","net.mk","edu.mk","gov.mk","inf.mk","name.mk","ml","com.ml","edu.ml","gouv.ml","gov.ml","net.ml","org.ml","presse.ml","*.mm","mn","gov.mn","edu.mn","org.mn","mo","com.mo","net.mo","org.mo","edu.mo","gov.mo","mobi","mp","mq","mr","gov.mr","ms","com.ms","edu.ms","gov.ms","net.ms","org.ms","mt","com.mt","edu.mt","net.mt","org.mt","mu","com.mu","net.mu","org.mu","gov.mu","ac.mu","co.mu","or.mu","museum","academy.museum","agriculture.museum","air.museum","airguard.museum","alabama.museum","alaska.museum","amber.museum","ambulance.museum","american.museum","americana.museum","americanantiques.museum","americanart.museum","amsterdam.museum","and.museum","annefrank.museum","anthro.museum","anthropology.museum","antiques.museum","aquarium.museum","arboretum.museum","archaeological.museum","archaeology.museum","architecture.museum","art.museum","artanddesign.museum","artcenter.museum","artdeco.museum","arteducation.museum","artgallery.museum","arts.museum","artsandcrafts.museum","asmatart.museum","assassination.museum","assisi.museum","association.museum","astronomy.museum","atlanta.museum","austin.museum","australia.museum","automotive.museum","aviation.museum","axis.museum","badajoz.museum","baghdad.museum","bahn.museum","bale.museum","baltimore.museum","barcelona.museum","baseball.museum","basel.museum","baths.museum","bauern.museum","beauxarts.museum","beeldengeluid.museum","bellevue.museum","bergbau.museum","berkeley.museum","berlin.museum","bern.museum","bible.museum","bilbao.museum","bill.museum","birdart.museum","birthplace.museum","bonn.museum","boston.museum","botanical.museum","botanicalgarden.museum","botanicgarden.museum","botany.museum","brandywinevalley.museum","brasil.museum","bristol.museum","british.museum","britishcolumbia.museum","broadcast.museum","brunel.museum","brussel.museum","brussels.museum","bruxelles.museum","building.museum","burghof.museum","bus.museum","bushey.museum","cadaques.museum","california.museum","cambridge.museum","can.museum","canada.museum","capebreton.museum","carrier.museum","cartoonart.museum","casadelamoneda.museum","castle.museum","castres.museum","celtic.museum","center.museum","chattanooga.museum","cheltenham.museum","chesapeakebay.museum","chicago.museum","children.museum","childrens.museum","childrensgarden.museum","chiropractic.museum","chocolate.museum","christiansburg.museum","cincinnati.museum","cinema.museum","circus.museum","civilisation.museum","civilization.museum","civilwar.museum","clinton.museum","clock.museum","coal.museum","coastaldefence.museum","cody.museum","coldwar.museum","collection.museum","colonialwilliamsburg.museum","coloradoplateau.museum","columbia.museum","columbus.museum","communication.museum","communications.museum","community.museum","computer.museum","computerhistory.museum","comunica\xE7\xF5es.museum","contemporary.museum","contemporaryart.museum","convent.museum","copenhagen.museum","corporation.museum","correios-e-telecomunica\xE7\xF5es.museum","corvette.museum","costume.museum","countryestate.museum","county.museum","crafts.museum","cranbrook.museum","creation.museum","cultural.museum","culturalcenter.museum","culture.museum","cyber.museum","cymru.museum","dali.museum","dallas.museum","database.museum","ddr.museum","decorativearts.museum","delaware.museum","delmenhorst.museum","denmark.museum","depot.museum","design.museum","detroit.museum","dinosaur.museum","discovery.museum","dolls.museum","donostia.museum","durham.museum","eastafrica.museum","eastcoast.museum","education.museum","educational.museum","egyptian.museum","eisenbahn.museum","elburg.museum","elvendrell.museum","embroidery.museum","encyclopedic.museum","england.museum","entomology.museum","environment.museum","environmentalconservation.museum","epilepsy.museum","essex.museum","estate.museum","ethnology.museum","exeter.museum","exhibition.museum","family.museum","farm.museum","farmequipment.museum","farmers.museum","farmstead.museum","field.museum","figueres.museum","filatelia.museum","film.museum","fineart.museum","finearts.museum","finland.museum","flanders.museum","florida.museum","force.museum","fortmissoula.museum","fortworth.museum","foundation.museum","francaise.museum","frankfurt.museum","franziskaner.museum","freemasonry.museum","freiburg.museum","fribourg.museum","frog.museum","fundacio.museum","furniture.museum","gallery.museum","garden.museum","gateway.museum","geelvinck.museum","gemological.museum","geology.museum","georgia.museum","giessen.museum","glas.museum","glass.museum","gorge.museum","grandrapids.museum","graz.museum","guernsey.museum","halloffame.museum","hamburg.museum","handson.museum","harvestcelebration.museum","hawaii.museum","health.museum","heimatunduhren.museum","hellas.museum","helsinki.museum","hembygdsforbund.museum","heritage.museum","histoire.museum","historical.museum","historicalsociety.museum","historichouses.museum","historisch.museum","historisches.museum","history.museum","historyofscience.museum","horology.museum","house.museum","humanities.museum","illustration.museum","imageandsound.museum","indian.museum","indiana.museum","indianapolis.museum","indianmarket.museum","intelligence.museum","interactive.museum","iraq.museum","iron.museum","isleofman.museum","jamison.museum","jefferson.museum","jerusalem.museum","jewelry.museum","jewish.museum","jewishart.museum","jfk.museum","journalism.museum","judaica.museum","judygarland.museum","juedisches.museum","juif.museum","karate.museum","karikatur.museum","kids.museum","koebenhavn.museum","koeln.museum","kunst.museum","kunstsammlung.museum","kunstunddesign.museum","labor.museum","labour.museum","lajolla.museum","lancashire.museum","landes.museum","lans.museum","l\xE4ns.museum","larsson.museum","lewismiller.museum","lincoln.museum","linz.museum","living.museum","livinghistory.museum","localhistory.museum","london.museum","losangeles.museum","louvre.museum","loyalist.museum","lucerne.museum","luxembourg.museum","luzern.museum","mad.museum","madrid.museum","mallorca.museum","manchester.museum","mansion.museum","mansions.museum","manx.museum","marburg.museum","maritime.museum","maritimo.museum","maryland.museum","marylhurst.museum","media.museum","medical.museum","medizinhistorisches.museum","meeres.museum","memorial.museum","mesaverde.museum","michigan.museum","midatlantic.museum","military.museum","mill.museum","miners.museum","mining.museum","minnesota.museum","missile.museum","missoula.museum","modern.museum","moma.museum","money.museum","monmouth.museum","monticello.museum","montreal.museum","moscow.museum","motorcycle.museum","muenchen.museum","muenster.museum","mulhouse.museum","muncie.museum","museet.museum","museumcenter.museum","museumvereniging.museum","music.museum","national.museum","nationalfirearms.museum","nationalheritage.museum","nativeamerican.museum","naturalhistory.museum","naturalhistorymuseum.museum","naturalsciences.museum","nature.museum","naturhistorisches.museum","natuurwetenschappen.museum","naumburg.museum","naval.museum","nebraska.museum","neues.museum","newhampshire.museum","newjersey.museum","newmexico.museum","newport.museum","newspaper.museum","newyork.museum","niepce.museum","norfolk.museum","north.museum","nrw.museum","nyc.museum","nyny.museum","oceanographic.museum","oceanographique.museum","omaha.museum","online.museum","ontario.museum","openair.museum","oregon.museum","oregontrail.museum","otago.museum","oxford.museum","pacific.museum","paderborn.museum","palace.museum","paleo.museum","palmsprings.museum","panama.museum","paris.museum","pasadena.museum","pharmacy.museum","philadelphia.museum","philadelphiaarea.museum","philately.museum","phoenix.museum","photography.museum","pilots.museum","pittsburgh.museum","planetarium.museum","plantation.museum","plants.museum","plaza.museum","portal.museum","portland.museum","portlligat.museum","posts-and-telecommunications.museum","preservation.museum","presidio.museum","press.museum","project.museum","public.museum","pubol.museum","quebec.museum","railroad.museum","railway.museum","research.museum","resistance.museum","riodejaneiro.museum","rochester.museum","rockart.museum","roma.museum","russia.museum","saintlouis.museum","salem.museum","salvadordali.museum","salzburg.museum","sandiego.museum","sanfrancisco.museum","santabarbara.museum","santacruz.museum","santafe.museum","saskatchewan.museum","satx.museum","savannahga.museum","schlesisches.museum","schoenbrunn.museum","schokoladen.museum","school.museum","schweiz.museum","science.museum","scienceandhistory.museum","scienceandindustry.museum","sciencecenter.museum","sciencecenters.museum","science-fiction.museum","sciencehistory.museum","sciences.museum","sciencesnaturelles.museum","scotland.museum","seaport.museum","settlement.museum","settlers.museum","shell.museum","sherbrooke.museum","sibenik.museum","silk.museum","ski.museum","skole.museum","society.museum","sologne.museum","soundandvision.museum","southcarolina.museum","southwest.museum","space.museum","spy.museum","square.museum","stadt.museum","stalbans.museum","starnberg.museum","state.museum","stateofdelaware.museum","station.museum","steam.museum","steiermark.museum","stjohn.museum","stockholm.museum","stpetersburg.museum","stuttgart.museum","suisse.museum","surgeonshall.museum","surrey.museum","svizzera.museum","sweden.museum","sydney.museum","tank.museum","tcm.museum","technology.museum","telekommunikation.museum","television.museum","texas.museum","textile.museum","theater.museum","time.museum","timekeeping.museum","topology.museum","torino.museum","touch.museum","town.museum","transport.museum","tree.museum","trolley.museum","trust.museum","trustee.museum","uhren.museum","ulm.museum","undersea.museum","university.museum","usa.museum","usantiques.museum","usarts.museum","uscountryestate.museum","usculture.museum","usdecorativearts.museum","usgarden.museum","ushistory.museum","ushuaia.museum","uslivinghistory.museum","utah.museum","uvic.museum","valley.museum","vantaa.museum","versailles.museum","viking.museum","village.museum","virginia.museum","virtual.museum","virtuel.museum","vlaanderen.museum","volkenkunde.museum","wales.museum","wallonie.museum","war.museum","washingtondc.museum","watchandclock.museum","watch-and-clock.museum","western.museum","westfalen.museum","whaling.museum","wildlife.museum","williamsburg.museum","windmill.museum","workshop.museum","york.museum","yorkshire.museum","yosemite.museum","youth.museum","zoological.museum","zoology.museum","\u05D9\u05E8\u05D5\u05E9\u05DC\u05D9\u05DD.museum","\u0438\u043A\u043E\u043C.museum","mv","aero.mv","biz.mv","com.mv","coop.mv","edu.mv","gov.mv","info.mv","int.mv","mil.mv","museum.mv","name.mv","net.mv","org.mv","pro.mv","mw","ac.mw","biz.mw","co.mw","com.mw","coop.mw","edu.mw","gov.mw","int.mw","museum.mw","net.mw","org.mw","mx","com.mx","org.mx","gob.mx","edu.mx","net.mx","my","biz.my","com.my","edu.my","gov.my","mil.my","name.my","net.my","org.my","mz","ac.mz","adv.mz","co.mz","edu.mz","gov.mz","mil.mz","net.mz","org.mz","na","info.na","pro.na","name.na","school.na","or.na","dr.na","us.na","mx.na","ca.na","in.na","cc.na","tv.na","ws.na","mobi.na","co.na","com.na","org.na","name","nc","asso.nc","nom.nc","ne","net","nf","com.nf","net.nf","per.nf","rec.nf","web.nf","arts.nf","firm.nf","info.nf","other.nf","store.nf","ng","com.ng","edu.ng","gov.ng","i.ng","mil.ng","mobi.ng","name.ng","net.ng","org.ng","sch.ng","ni","ac.ni","biz.ni","co.ni","com.ni","edu.ni","gob.ni","in.ni","info.ni","int.ni","mil.ni","net.ni","nom.ni","org.ni","web.ni","nl","no","fhs.no","vgs.no","fylkesbibl.no","folkebibl.no","museum.no","idrett.no","priv.no","mil.no","stat.no","dep.no","kommune.no","herad.no","aa.no","ah.no","bu.no","fm.no","hl.no","hm.no","jan-mayen.no","mr.no","nl.no","nt.no","of.no","ol.no","oslo.no","rl.no","sf.no","st.no","svalbard.no","tm.no","tr.no","va.no","vf.no","gs.aa.no","gs.ah.no","gs.bu.no","gs.fm.no","gs.hl.no","gs.hm.no","gs.jan-mayen.no","gs.mr.no","gs.nl.no","gs.nt.no","gs.of.no","gs.ol.no","gs.oslo.no","gs.rl.no","gs.sf.no","gs.st.no","gs.svalbard.no","gs.tm.no","gs.tr.no","gs.va.no","gs.vf.no","akrehamn.no","\xE5krehamn.no","algard.no","\xE5lg\xE5rd.no","arna.no","brumunddal.no","bryne.no","bronnoysund.no","br\xF8nn\xF8ysund.no","drobak.no","dr\xF8bak.no","egersund.no","fetsund.no","floro.no","flor\xF8.no","fredrikstad.no","hokksund.no","honefoss.no","h\xF8nefoss.no","jessheim.no","jorpeland.no","j\xF8rpeland.no","kirkenes.no","kopervik.no","krokstadelva.no","langevag.no","langev\xE5g.no","leirvik.no","mjondalen.no","mj\xF8ndalen.no","mo-i-rana.no","mosjoen.no","mosj\xF8en.no","nesoddtangen.no","orkanger.no","osoyro.no","os\xF8yro.no","raholt.no","r\xE5holt.no","sandnessjoen.no","sandnessj\xF8en.no","skedsmokorset.no","slattum.no","spjelkavik.no","stathelle.no","stavern.no","stjordalshalsen.no","stj\xF8rdalshalsen.no","tananger.no","tranby.no","vossevangen.no","afjord.no","\xE5fjord.no","agdenes.no","al.no","\xE5l.no","alesund.no","\xE5lesund.no","alstahaug.no","alta.no","\xE1lt\xE1.no","alaheadju.no","\xE1laheadju.no","alvdal.no","amli.no","\xE5mli.no","amot.no","\xE5mot.no","andebu.no","andoy.no","and\xF8y.no","andasuolo.no","ardal.no","\xE5rdal.no","aremark.no","arendal.no","\xE5s.no","aseral.no","\xE5seral.no","asker.no","askim.no","askvoll.no","askoy.no","ask\xF8y.no","asnes.no","\xE5snes.no","audnedaln.no","aukra.no","aure.no","aurland.no","aurskog-holand.no","aurskog-h\xF8land.no","austevoll.no","austrheim.no","averoy.no","aver\xF8y.no","balestrand.no","ballangen.no","balat.no","b\xE1l\xE1t.no","balsfjord.no","bahccavuotna.no","b\xE1hccavuotna.no","bamble.no","bardu.no","beardu.no","beiarn.no","bajddar.no","b\xE1jddar.no","baidar.no","b\xE1id\xE1r.no","berg.no","bergen.no","berlevag.no","berlev\xE5g.no","bearalvahki.no","bearalv\xE1hki.no","bindal.no","birkenes.no","bjarkoy.no","bjark\xF8y.no","bjerkreim.no","bjugn.no","bodo.no","bod\xF8.no","badaddja.no","b\xE5d\xE5ddj\xE5.no","budejju.no","bokn.no","bremanger.no","bronnoy.no","br\xF8nn\xF8y.no","bygland.no","bykle.no","barum.no","b\xE6rum.no","bo.telemark.no","b\xF8.telemark.no","bo.nordland.no","b\xF8.nordland.no","bievat.no","biev\xE1t.no","bomlo.no","b\xF8mlo.no","batsfjord.no","b\xE5tsfjord.no","bahcavuotna.no","b\xE1hcavuotna.no","dovre.no","drammen.no","drangedal.no","dyroy.no","dyr\xF8y.no","donna.no","d\xF8nna.no","eid.no","eidfjord.no","eidsberg.no","eidskog.no","eidsvoll.no","eigersund.no","elverum.no","enebakk.no","engerdal.no","etne.no","etnedal.no","evenes.no","evenassi.no","even\xE1\u0161\u0161i.no","evje-og-hornnes.no","farsund.no","fauske.no","fuossko.no","fuoisku.no","fedje.no","fet.no","finnoy.no","finn\xF8y.no","fitjar.no","fjaler.no","fjell.no","flakstad.no","flatanger.no","flekkefjord.no","flesberg.no","flora.no","fla.no","fl\xE5.no","folldal.no","forsand.no","fosnes.no","frei.no","frogn.no","froland.no","frosta.no","frana.no","fr\xE6na.no","froya.no","fr\xF8ya.no","fusa.no","fyresdal.no","forde.no","f\xF8rde.no","gamvik.no","gangaviika.no","g\xE1\u014Bgaviika.no","gaular.no","gausdal.no","gildeskal.no","gildesk\xE5l.no","giske.no","gjemnes.no","gjerdrum.no","gjerstad.no","gjesdal.no","gjovik.no","gj\xF8vik.no","gloppen.no","gol.no","gran.no","grane.no","granvin.no","gratangen.no","grimstad.no","grong.no","kraanghke.no","kr\xE5anghke.no","grue.no","gulen.no","hadsel.no","halden.no","halsa.no","hamar.no","hamaroy.no","habmer.no","h\xE1bmer.no","hapmir.no","h\xE1pmir.no","hammerfest.no","hammarfeasta.no","h\xE1mm\xE1rfeasta.no","haram.no","hareid.no","harstad.no","hasvik.no","aknoluokta.no","\xE1k\u014Boluokta.no","hattfjelldal.no","aarborte.no","haugesund.no","hemne.no","hemnes.no","hemsedal.no","heroy.more-og-romsdal.no","her\xF8y.m\xF8re-og-romsdal.no","heroy.nordland.no","her\xF8y.nordland.no","hitra.no","hjartdal.no","hjelmeland.no","hobol.no","hob\xF8l.no","hof.no","hol.no","hole.no","holmestrand.no","holtalen.no","holt\xE5len.no","hornindal.no","horten.no","hurdal.no","hurum.no","hvaler.no","hyllestad.no","hagebostad.no","h\xE6gebostad.no","hoyanger.no","h\xF8yanger.no","hoylandet.no","h\xF8ylandet.no","ha.no","h\xE5.no","ibestad.no","inderoy.no","inder\xF8y.no","iveland.no","jevnaker.no","jondal.no","jolster.no","j\xF8lster.no","karasjok.no","karasjohka.no","k\xE1r\xE1\u0161johka.no","karlsoy.no","galsa.no","g\xE1ls\xE1.no","karmoy.no","karm\xF8y.no","kautokeino.no","guovdageaidnu.no","klepp.no","klabu.no","kl\xE6bu.no","kongsberg.no","kongsvinger.no","kragero.no","krager\xF8.no","kristiansand.no","kristiansund.no","krodsherad.no","kr\xF8dsherad.no","kvalsund.no","rahkkeravju.no","r\xE1hkker\xE1vju.no","kvam.no","kvinesdal.no","kvinnherad.no","kviteseid.no","kvitsoy.no","kvits\xF8y.no","kvafjord.no","kv\xE6fjord.no","giehtavuoatna.no","kvanangen.no","kv\xE6nangen.no","navuotna.no","n\xE1vuotna.no","kafjord.no","k\xE5fjord.no","gaivuotna.no","g\xE1ivuotna.no","larvik.no","lavangen.no","lavagis.no","loabat.no","loab\xE1t.no","lebesby.no","davvesiida.no","leikanger.no","leirfjord.no","leka.no","leksvik.no","lenvik.no","leangaviika.no","lea\u014Bgaviika.no","lesja.no","levanger.no","lier.no","lierne.no","lillehammer.no","lillesand.no","lindesnes.no","lindas.no","lind\xE5s.no","lom.no","loppa.no","lahppi.no","l\xE1hppi.no","lund.no","lunner.no","luroy.no","lur\xF8y.no","luster.no","lyngdal.no","lyngen.no","ivgu.no","lardal.no","lerdal.no","l\xE6rdal.no","lodingen.no","l\xF8dingen.no","lorenskog.no","l\xF8renskog.no","loten.no","l\xF8ten.no","malvik.no","masoy.no","m\xE5s\xF8y.no","muosat.no","muos\xE1t.no","mandal.no","marker.no","marnardal.no","masfjorden.no","meland.no","meldal.no","melhus.no","meloy.no","mel\xF8y.no","meraker.no","mer\xE5ker.no","moareke.no","mo\xE5reke.no","midsund.no","midtre-gauldal.no","modalen.no","modum.no","molde.no","moskenes.no","moss.no","mosvik.no","malselv.no","m\xE5lselv.no","malatvuopmi.no","m\xE1latvuopmi.no","namdalseid.no","aejrie.no","namsos.no","namsskogan.no","naamesjevuemie.no","n\xE5\xE5mesjevuemie.no","laakesvuemie.no","nannestad.no","narvik.no","narviika.no","naustdal.no","nedre-eiker.no","nes.akershus.no","nes.buskerud.no","nesna.no","nesodden.no","nesseby.no","unjarga.no","unj\xE1rga.no","nesset.no","nissedal.no","nittedal.no","nord-aurdal.no","nord-fron.no","nord-odal.no","norddal.no","nordkapp.no","davvenjarga.no","davvenj\xE1rga.no","nordre-land.no","nordreisa.no","raisa.no","r\xE1isa.no","nore-og-uvdal.no","notodden.no","naroy.no","n\xE6r\xF8y.no","notteroy.no","n\xF8tter\xF8y.no","odda.no","oksnes.no","\xF8ksnes.no","oppdal.no","oppegard.no","oppeg\xE5rd.no","orkdal.no","orland.no","\xF8rland.no","orskog.no","\xF8rskog.no","orsta.no","\xF8rsta.no","os.hedmark.no","os.hordaland.no","osen.no","osteroy.no","oster\xF8y.no","ostre-toten.no","\xF8stre-toten.no","overhalla.no","ovre-eiker.no","\xF8vre-eiker.no","oyer.no","\xF8yer.no","oygarden.no","\xF8ygarden.no","oystre-slidre.no","\xF8ystre-slidre.no","porsanger.no","porsangu.no","pors\xE1\u014Bgu.no","porsgrunn.no","radoy.no","rad\xF8y.no","rakkestad.no","rana.no","ruovat.no","randaberg.no","rauma.no","rendalen.no","rennebu.no","rennesoy.no","rennes\xF8y.no","rindal.no","ringebu.no","ringerike.no","ringsaker.no","rissa.no","risor.no","ris\xF8r.no","roan.no","rollag.no","rygge.no","ralingen.no","r\xE6lingen.no","rodoy.no","r\xF8d\xF8y.no","romskog.no","r\xF8mskog.no","roros.no","r\xF8ros.no","rost.no","r\xF8st.no","royken.no","r\xF8yken.no","royrvik.no","r\xF8yrvik.no","rade.no","r\xE5de.no","salangen.no","siellak.no","saltdal.no","salat.no","s\xE1l\xE1t.no","s\xE1lat.no","samnanger.no","sande.more-og-romsdal.no","sande.m\xF8re-og-romsdal.no","sande.vestfold.no","sandefjord.no","sandnes.no","sandoy.no","sand\xF8y.no","sarpsborg.no","sauda.no","sauherad.no","sel.no","selbu.no","selje.no","seljord.no","sigdal.no","siljan.no","sirdal.no","skaun.no","skedsmo.no","ski.no","skien.no","skiptvet.no","skjervoy.no","skjerv\xF8y.no","skierva.no","skierv\xE1.no","skjak.no","skj\xE5k.no","skodje.no","skanland.no","sk\xE5nland.no","skanit.no","sk\xE1nit.no","smola.no","sm\xF8la.no","snillfjord.no","snasa.no","sn\xE5sa.no","snoasa.no","snaase.no","sn\xE5ase.no","sogndal.no","sokndal.no","sola.no","solund.no","songdalen.no","sortland.no","spydeberg.no","stange.no","stavanger.no","steigen.no","steinkjer.no","stjordal.no","stj\xF8rdal.no","stokke.no","stor-elvdal.no","stord.no","stordal.no","storfjord.no","omasvuotna.no","strand.no","stranda.no","stryn.no","sula.no","suldal.no","sund.no","sunndal.no","surnadal.no","sveio.no","svelvik.no","sykkylven.no","sogne.no","s\xF8gne.no","somna.no","s\xF8mna.no","sondre-land.no","s\xF8ndre-land.no","sor-aurdal.no","s\xF8r-aurdal.no","sor-fron.no","s\xF8r-fron.no","sor-odal.no","s\xF8r-odal.no","sor-varanger.no","s\xF8r-varanger.no","matta-varjjat.no","m\xE1tta-v\xE1rjjat.no","sorfold.no","s\xF8rfold.no","sorreisa.no","s\xF8rreisa.no","sorum.no","s\xF8rum.no","tana.no","deatnu.no","time.no","tingvoll.no","tinn.no","tjeldsund.no","dielddanuorri.no","tjome.no","tj\xF8me.no","tokke.no","tolga.no","torsken.no","tranoy.no","tran\xF8y.no","tromso.no","troms\xF8.no","tromsa.no","romsa.no","trondheim.no","troandin.no","trysil.no","trana.no","tr\xE6na.no","trogstad.no","tr\xF8gstad.no","tvedestrand.no","tydal.no","tynset.no","tysfjord.no","divtasvuodna.no","divttasvuotna.no","tysnes.no","tysvar.no","tysv\xE6r.no","tonsberg.no","t\xF8nsberg.no","ullensaker.no","ullensvang.no","ulvik.no","utsira.no","vadso.no","vads\xF8.no","cahcesuolo.no","\u010D\xE1hcesuolo.no","vaksdal.no","valle.no","vang.no","vanylven.no","vardo.no","vard\xF8.no","varggat.no","v\xE1rgg\xE1t.no","vefsn.no","vaapste.no","vega.no","vegarshei.no","veg\xE5rshei.no","vennesla.no","verdal.no","verran.no","vestby.no","vestnes.no","vestre-slidre.no","vestre-toten.no","vestvagoy.no","vestv\xE5g\xF8y.no","vevelstad.no","vik.no","vikna.no","vindafjord.no","volda.no","voss.no","varoy.no","v\xE6r\xF8y.no","vagan.no","v\xE5gan.no","voagat.no","vagsoy.no","v\xE5gs\xF8y.no","vaga.no","v\xE5g\xE5.no","valer.ostfold.no","v\xE5ler.\xF8stfold.no","valer.hedmark.no","v\xE5ler.hedmark.no","*.np","nr","biz.nr","info.nr","gov.nr","edu.nr","org.nr","net.nr","com.nr","nu","nz","ac.nz","co.nz","cri.nz","geek.nz","gen.nz","govt.nz","health.nz","iwi.nz","kiwi.nz","maori.nz","mil.nz","m\u0101ori.nz","net.nz","org.nz","parliament.nz","school.nz","om","co.om","com.om","edu.om","gov.om","med.om","museum.om","net.om","org.om","pro.om","onion","org","pa","ac.pa","gob.pa","com.pa","org.pa","sld.pa","edu.pa","net.pa","ing.pa","abo.pa","med.pa","nom.pa","pe","edu.pe","gob.pe","nom.pe","mil.pe","org.pe","com.pe","net.pe","pf","com.pf","org.pf","edu.pf","*.pg","ph","com.ph","net.ph","org.ph","gov.ph","edu.ph","ngo.ph","mil.ph","i.ph","pk","com.pk","net.pk","edu.pk","org.pk","fam.pk","biz.pk","web.pk","gov.pk","gob.pk","gok.pk","gon.pk","gop.pk","gos.pk","info.pk","pl","com.pl","net.pl","org.pl","aid.pl","agro.pl","atm.pl","auto.pl","biz.pl","edu.pl","gmina.pl","gsm.pl","info.pl","mail.pl","miasta.pl","media.pl","mil.pl","nieruchomosci.pl","nom.pl","pc.pl","powiat.pl","priv.pl","realestate.pl","rel.pl","sex.pl","shop.pl","sklep.pl","sos.pl","szkola.pl","targi.pl","tm.pl","tourism.pl","travel.pl","turystyka.pl","gov.pl","ap.gov.pl","ic.gov.pl","is.gov.pl","us.gov.pl","kmpsp.gov.pl","kppsp.gov.pl","kwpsp.gov.pl","psp.gov.pl","wskr.gov.pl","kwp.gov.pl","mw.gov.pl","ug.gov.pl","um.gov.pl","umig.gov.pl","ugim.gov.pl","upow.gov.pl","uw.gov.pl","starostwo.gov.pl","pa.gov.pl","po.gov.pl","psse.gov.pl","pup.gov.pl","rzgw.gov.pl","sa.gov.pl","so.gov.pl","sr.gov.pl","wsa.gov.pl","sko.gov.pl","uzs.gov.pl","wiih.gov.pl","winb.gov.pl","pinb.gov.pl","wios.gov.pl","witd.gov.pl","wzmiuw.gov.pl","piw.gov.pl","wiw.gov.pl","griw.gov.pl","wif.gov.pl","oum.gov.pl","sdn.gov.pl","zp.gov.pl","uppo.gov.pl","mup.gov.pl","wuoz.gov.pl","konsulat.gov.pl","oirm.gov.pl","augustow.pl","babia-gora.pl","bedzin.pl","beskidy.pl","bialowieza.pl","bialystok.pl","bielawa.pl","bieszczady.pl","boleslawiec.pl","bydgoszcz.pl","bytom.pl","cieszyn.pl","czeladz.pl","czest.pl","dlugoleka.pl","elblag.pl","elk.pl","glogow.pl","gniezno.pl","gorlice.pl","grajewo.pl","ilawa.pl","jaworzno.pl","jelenia-gora.pl","jgora.pl","kalisz.pl","kazimierz-dolny.pl","karpacz.pl","kartuzy.pl","kaszuby.pl","katowice.pl","kepno.pl","ketrzyn.pl","klodzko.pl","kobierzyce.pl","kolobrzeg.pl","konin.pl","konskowola.pl","kutno.pl","lapy.pl","lebork.pl","legnica.pl","lezajsk.pl","limanowa.pl","lomza.pl","lowicz.pl","lubin.pl","lukow.pl","malbork.pl","malopolska.pl","mazowsze.pl","mazury.pl","mielec.pl","mielno.pl","mragowo.pl","naklo.pl","nowaruda.pl","nysa.pl","olawa.pl","olecko.pl","olkusz.pl","olsztyn.pl","opoczno.pl","opole.pl","ostroda.pl","ostroleka.pl","ostrowiec.pl","ostrowwlkp.pl","pila.pl","pisz.pl","podhale.pl","podlasie.pl","polkowice.pl","pomorze.pl","pomorskie.pl","prochowice.pl","pruszkow.pl","przeworsk.pl","pulawy.pl","radom.pl","rawa-maz.pl","rybnik.pl","rzeszow.pl","sanok.pl","sejny.pl","slask.pl","slupsk.pl","sosnowiec.pl","stalowa-wola.pl","skoczow.pl","starachowice.pl","stargard.pl","suwalki.pl","swidnica.pl","swiebodzin.pl","swinoujscie.pl","szczecin.pl","szczytno.pl","tarnobrzeg.pl","tgory.pl","turek.pl","tychy.pl","ustka.pl","walbrzych.pl","warmia.pl","warszawa.pl","waw.pl","wegrow.pl","wielun.pl","wlocl.pl","wloclawek.pl","wodzislaw.pl","wolomin.pl","wroclaw.pl","zachpomor.pl","zagan.pl","zarow.pl","zgora.pl","zgorzelec.pl","pm","pn","gov.pn","co.pn","org.pn","edu.pn","net.pn","post","pr","com.pr","net.pr","org.pr","gov.pr","edu.pr","isla.pr","pro.pr","biz.pr","info.pr","name.pr","est.pr","prof.pr","ac.pr","pro","aaa.pro","aca.pro","acct.pro","avocat.pro","bar.pro","cpa.pro","eng.pro","jur.pro","law.pro","med.pro","recht.pro","ps","edu.ps","gov.ps","sec.ps","plo.ps","com.ps","org.ps","net.ps","pt","net.pt","gov.pt","org.pt","edu.pt","int.pt","publ.pt","com.pt","nome.pt","pw","co.pw","ne.pw","or.pw","ed.pw","go.pw","belau.pw","py","com.py","coop.py","edu.py","gov.py","mil.py","net.py","org.py","qa","com.qa","edu.qa","gov.qa","mil.qa","name.qa","net.qa","org.qa","sch.qa","re","asso.re","com.re","nom.re","ro","arts.ro","com.ro","firm.ro","info.ro","nom.ro","nt.ro","org.ro","rec.ro","store.ro","tm.ro","www.ro","rs","ac.rs","co.rs","edu.rs","gov.rs","in.rs","org.rs","ru","rw","ac.rw","co.rw","coop.rw","gov.rw","mil.rw","net.rw","org.rw","sa","com.sa","net.sa","org.sa","gov.sa","med.sa","pub.sa","edu.sa","sch.sa","sb","com.sb","edu.sb","gov.sb","net.sb","org.sb","sc","com.sc","gov.sc","net.sc","org.sc","edu.sc","sd","com.sd","net.sd","org.sd","edu.sd","med.sd","tv.sd","gov.sd","info.sd","se","a.se","ac.se","b.se","bd.se","brand.se","c.se","d.se","e.se","f.se","fh.se","fhsk.se","fhv.se","g.se","h.se","i.se","k.se","komforb.se","kommunalforbund.se","komvux.se","l.se","lanbib.se","m.se","n.se","naturbruksgymn.se","o.se","org.se","p.se","parti.se","pp.se","press.se","r.se","s.se","t.se","tm.se","u.se","w.se","x.se","y.se","z.se","sg","com.sg","net.sg","org.sg","gov.sg","edu.sg","per.sg","sh","com.sh","net.sh","gov.sh","org.sh","mil.sh","si","sj","sk","sl","com.sl","net.sl","edu.sl","gov.sl","org.sl","sm","sn","art.sn","com.sn","edu.sn","gouv.sn","org.sn","perso.sn","univ.sn","so","com.so","edu.so","gov.so","me.so","net.so","org.so","sr","ss","biz.ss","com.ss","edu.ss","gov.ss","me.ss","net.ss","org.ss","sch.ss","st","co.st","com.st","consulado.st","edu.st","embaixada.st","mil.st","net.st","org.st","principe.st","saotome.st","store.st","su","sv","com.sv","edu.sv","gob.sv","org.sv","red.sv","sx","gov.sx","sy","edu.sy","gov.sy","net.sy","mil.sy","com.sy","org.sy","sz","co.sz","ac.sz","org.sz","tc","td","tel","tf","tg","th","ac.th","co.th","go.th","in.th","mi.th","net.th","or.th","tj","ac.tj","biz.tj","co.tj","com.tj","edu.tj","go.tj","gov.tj","int.tj","mil.tj","name.tj","net.tj","nic.tj","org.tj","test.tj","web.tj","tk","tl","gov.tl","tm","com.tm","co.tm","org.tm","net.tm","nom.tm","gov.tm","mil.tm","edu.tm","tn","com.tn","ens.tn","fin.tn","gov.tn","ind.tn","info.tn","intl.tn","mincom.tn","nat.tn","net.tn","org.tn","perso.tn","tourism.tn","to","com.to","gov.to","net.to","org.to","edu.to","mil.to","tr","av.tr","bbs.tr","bel.tr","biz.tr","com.tr","dr.tr","edu.tr","gen.tr","gov.tr","info.tr","mil.tr","k12.tr","kep.tr","name.tr","net.tr","org.tr","pol.tr","tel.tr","tsk.tr","tv.tr","web.tr","nc.tr","gov.nc.tr","tt","co.tt","com.tt","org.tt","net.tt","biz.tt","info.tt","pro.tt","int.tt","coop.tt","jobs.tt","mobi.tt","travel.tt","museum.tt","aero.tt","name.tt","gov.tt","edu.tt","tv","tw","edu.tw","gov.tw","mil.tw","com.tw","net.tw","org.tw","idv.tw","game.tw","ebiz.tw","club.tw","\u7DB2\u8DEF.tw","\u7D44\u7E54.tw","\u5546\u696D.tw","tz","ac.tz","co.tz","go.tz","hotel.tz","info.tz","me.tz","mil.tz","mobi.tz","ne.tz","or.tz","sc.tz","tv.tz","ua","com.ua","edu.ua","gov.ua","in.ua","net.ua","org.ua","cherkassy.ua","cherkasy.ua","chernigov.ua","chernihiv.ua","chernivtsi.ua","chernovtsy.ua","ck.ua","cn.ua","cr.ua","crimea.ua","cv.ua","dn.ua","dnepropetrovsk.ua","dnipropetrovsk.ua","donetsk.ua","dp.ua","if.ua","ivano-frankivsk.ua","kh.ua","kharkiv.ua","kharkov.ua","kherson.ua","khmelnitskiy.ua","khmelnytskyi.ua","kiev.ua","kirovograd.ua","km.ua","kr.ua","krym.ua","ks.ua","kv.ua","kyiv.ua","lg.ua","lt.ua","lugansk.ua","lutsk.ua","lv.ua","lviv.ua","mk.ua","mykolaiv.ua","nikolaev.ua","od.ua","odesa.ua","odessa.ua","pl.ua","poltava.ua","rivne.ua","rovno.ua","rv.ua","sb.ua","sebastopol.ua","sevastopol.ua","sm.ua","sumy.ua","te.ua","ternopil.ua","uz.ua","uzhgorod.ua","vinnica.ua","vinnytsia.ua","vn.ua","volyn.ua","yalta.ua","zaporizhzhe.ua","zaporizhzhia.ua","zhitomir.ua","zhytomyr.ua","zp.ua","zt.ua","ug","co.ug","or.ug","ac.ug","sc.ug","go.ug","ne.ug","com.ug","org.ug","uk","ac.uk","co.uk","gov.uk","ltd.uk","me.uk","net.uk","nhs.uk","org.uk","plc.uk","police.uk","*.sch.uk","us","dni.us","fed.us","isa.us","kids.us","nsn.us","ak.us","al.us","ar.us","as.us","az.us","ca.us","co.us","ct.us","dc.us","de.us","fl.us","ga.us","gu.us","hi.us","ia.us","id.us","il.us","in.us","ks.us","ky.us","la.us","ma.us","md.us","me.us","mi.us","mn.us","mo.us","ms.us","mt.us","nc.us","nd.us","ne.us","nh.us","nj.us","nm.us","nv.us","ny.us","oh.us","ok.us","or.us","pa.us","pr.us","ri.us","sc.us","sd.us","tn.us","tx.us","ut.us","vi.us","vt.us","va.us","wa.us","wi.us","wv.us","wy.us","k12.ak.us","k12.al.us","k12.ar.us","k12.as.us","k12.az.us","k12.ca.us","k12.co.us","k12.ct.us","k12.dc.us","k12.de.us","k12.fl.us","k12.ga.us","k12.gu.us","k12.ia.us","k12.id.us","k12.il.us","k12.in.us","k12.ks.us","k12.ky.us","k12.la.us","k12.ma.us","k12.md.us","k12.me.us","k12.mi.us","k12.mn.us","k12.mo.us","k12.ms.us","k12.mt.us","k12.nc.us","k12.ne.us","k12.nh.us","k12.nj.us","k12.nm.us","k12.nv.us","k12.ny.us","k12.oh.us","k12.ok.us","k12.or.us","k12.pa.us","k12.pr.us","k12.sc.us","k12.tn.us","k12.tx.us","k12.ut.us","k12.vi.us","k12.vt.us","k12.va.us","k12.wa.us","k12.wi.us","k12.wy.us","cc.ak.us","cc.al.us","cc.ar.us","cc.as.us","cc.az.us","cc.ca.us","cc.co.us","cc.ct.us","cc.dc.us","cc.de.us","cc.fl.us","cc.ga.us","cc.gu.us","cc.hi.us","cc.ia.us","cc.id.us","cc.il.us","cc.in.us","cc.ks.us","cc.ky.us","cc.la.us","cc.ma.us","cc.md.us","cc.me.us","cc.mi.us","cc.mn.us","cc.mo.us","cc.ms.us","cc.mt.us","cc.nc.us","cc.nd.us","cc.ne.us","cc.nh.us","cc.nj.us","cc.nm.us","cc.nv.us","cc.ny.us","cc.oh.us","cc.ok.us","cc.or.us","cc.pa.us","cc.pr.us","cc.ri.us","cc.sc.us","cc.sd.us","cc.tn.us","cc.tx.us","cc.ut.us","cc.vi.us","cc.vt.us","cc.va.us","cc.wa.us","cc.wi.us","cc.wv.us","cc.wy.us","lib.ak.us","lib.al.us","lib.ar.us","lib.as.us","lib.az.us","lib.ca.us","lib.co.us","lib.ct.us","lib.dc.us","lib.fl.us","lib.ga.us","lib.gu.us","lib.hi.us","lib.ia.us","lib.id.us","lib.il.us","lib.in.us","lib.ks.us","lib.ky.us","lib.la.us","lib.ma.us","lib.md.us","lib.me.us","lib.mi.us","lib.mn.us","lib.mo.us","lib.ms.us","lib.mt.us","lib.nc.us","lib.nd.us","lib.ne.us","lib.nh.us","lib.nj.us","lib.nm.us","lib.nv.us","lib.ny.us","lib.oh.us","lib.ok.us","lib.or.us","lib.pa.us","lib.pr.us","lib.ri.us","lib.sc.us","lib.sd.us","lib.tn.us","lib.tx.us","lib.ut.us","lib.vi.us","lib.vt.us","lib.va.us","lib.wa.us","lib.wi.us","lib.wy.us","pvt.k12.ma.us","chtr.k12.ma.us","paroch.k12.ma.us","ann-arbor.mi.us","cog.mi.us","dst.mi.us","eaton.mi.us","gen.mi.us","mus.mi.us","tec.mi.us","washtenaw.mi.us","uy","com.uy","edu.uy","gub.uy","mil.uy","net.uy","org.uy","uz","co.uz","com.uz","net.uz","org.uz","va","vc","com.vc","net.vc","org.vc","gov.vc","mil.vc","edu.vc","ve","arts.ve","bib.ve","co.ve","com.ve","e12.ve","edu.ve","firm.ve","gob.ve","gov.ve","info.ve","int.ve","mil.ve","net.ve","nom.ve","org.ve","rar.ve","rec.ve","store.ve","tec.ve","web.ve","vg","vi","co.vi","com.vi","k12.vi","net.vi","org.vi","vn","com.vn","net.vn","org.vn","edu.vn","gov.vn","int.vn","ac.vn","biz.vn","info.vn","name.vn","pro.vn","health.vn","vu","com.vu","edu.vu","net.vu","org.vu","wf","ws","com.ws","net.ws","org.ws","gov.ws","edu.ws","yt","\u0627\u0645\u0627\u0631\u0627\u062A","\u0570\u0561\u0575","\u09AC\u09BE\u0982\u09B2\u09BE","\u0431\u0433","\u0627\u0644\u0628\u062D\u0631\u064A\u0646","\u0431\u0435\u043B","\u4E2D\u56FD","\u4E2D\u570B","\u0627\u0644\u062C\u0632\u0627\u0626\u0631","\u0645\u0635\u0631","\u0435\u044E","\u03B5\u03C5","\u0645\u0648\u0631\u064A\u062A\u0627\u0646\u064A\u0627","\u10D2\u10D4","\u03B5\u03BB","\u9999\u6E2F","\u516C\u53F8.\u9999\u6E2F","\u6559\u80B2.\u9999\u6E2F","\u653F\u5E9C.\u9999\u6E2F","\u500B\u4EBA.\u9999\u6E2F","\u7DB2\u7D61.\u9999\u6E2F","\u7D44\u7E54.\u9999\u6E2F","\u0CAD\u0CBE\u0CB0\u0CA4","\u0B2D\u0B3E\u0B30\u0B24","\u09AD\u09BE\u09F0\u09A4","\u092D\u093E\u0930\u0924\u092E\u094D","\u092D\u093E\u0930\u094B\u0924","\u0680\u0627\u0631\u062A","\u0D2D\u0D3E\u0D30\u0D24\u0D02","\u092D\u093E\u0930\u0924","\u0628\u0627\u0631\u062A","\u0628\u06BE\u0627\u0631\u062A","\u0C2D\u0C3E\u0C30\u0C24\u0C4D","\u0AAD\u0ABE\u0AB0\u0AA4","\u0A2D\u0A3E\u0A30\u0A24","\u09AD\u09BE\u09B0\u09A4","\u0B87\u0BA8\u0BCD\u0BA4\u0BBF\u0BAF\u0BBE","\u0627\u06CC\u0631\u0627\u0646","\u0627\u064A\u0631\u0627\u0646","\u0639\u0631\u0627\u0642","\u0627\u0644\u0627\u0631\u062F\u0646","\uD55C\uAD6D","\u049B\u0430\u0437","\u0EA5\u0EB2\u0EA7","\u0DBD\u0D82\u0D9A\u0DCF","\u0B87\u0BB2\u0B99\u0BCD\u0B95\u0BC8","\u0627\u0644\u0645\u063A\u0631\u0628","\u043C\u043A\u0434","\u043C\u043E\u043D","\u6FB3\u9580","\u6FB3\u95E8","\u0645\u0644\u064A\u0633\u064A\u0627","\u0639\u0645\u0627\u0646","\u067E\u0627\u06A9\u0633\u062A\u0627\u0646","\u067E\u0627\u0643\u0633\u062A\u0627\u0646","\u0641\u0644\u0633\u0637\u064A\u0646","\u0441\u0440\u0431","\u043F\u0440.\u0441\u0440\u0431","\u043E\u0440\u0433.\u0441\u0440\u0431","\u043E\u0431\u0440.\u0441\u0440\u0431","\u043E\u0434.\u0441\u0440\u0431","\u0443\u043F\u0440.\u0441\u0440\u0431","\u0430\u043A.\u0441\u0440\u0431","\u0440\u0444","\u0642\u0637\u0631","\u0627\u0644\u0633\u0639\u0648\u062F\u064A\u0629","\u0627\u0644\u0633\u0639\u0648\u062F\u06CC\u0629","\u0627\u0644\u0633\u0639\u0648\u062F\u06CC\u06C3","\u0627\u0644\u0633\u0639\u0648\u062F\u064A\u0647","\u0633\u0648\u062F\u0627\u0646","\u65B0\u52A0\u5761","\u0B9A\u0BBF\u0B99\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0BC2\u0BB0\u0BCD","\u0633\u0648\u0631\u064A\u0629","\u0633\u0648\u0631\u064A\u0627","\u0E44\u0E17\u0E22","\u0E28\u0E36\u0E01\u0E29\u0E32.\u0E44\u0E17\u0E22","\u0E18\u0E38\u0E23\u0E01\u0E34\u0E08.\u0E44\u0E17\u0E22","\u0E23\u0E31\u0E10\u0E1A\u0E32\u0E25.\u0E44\u0E17\u0E22","\u0E17\u0E2B\u0E32\u0E23.\u0E44\u0E17\u0E22","\u0E40\u0E19\u0E47\u0E15.\u0E44\u0E17\u0E22","\u0E2D\u0E07\u0E04\u0E4C\u0E01\u0E23.\u0E44\u0E17\u0E22","\u062A\u0648\u0646\u0633","\u53F0\u7063","\u53F0\u6E7E","\u81FA\u7063","\u0443\u043A\u0440","\u0627\u0644\u064A\u0645\u0646","xxx","ye","com.ye","edu.ye","gov.ye","net.ye","mil.ye","org.ye","ac.za","agric.za","alt.za","co.za","edu.za","gov.za","grondar.za","law.za","mil.za","net.za","ngo.za","nic.za","nis.za","nom.za","org.za","school.za","tm.za","web.za","zm","ac.zm","biz.zm","co.zm","com.zm","edu.zm","gov.zm","info.zm","mil.zm","net.zm","org.zm","sch.zm","zw","ac.zw","co.zw","gov.zw","mil.zw","org.zw","aaa","aarp","abarth","abb","abbott","abbvie","abc","able","abogado","abudhabi","academy","accenture","accountant","accountants","aco","actor","adac","ads","adult","aeg","aetna","afl","africa","agakhan","agency","aig","airbus","airforce","airtel","akdn","alfaromeo","alibaba","alipay","allfinanz","allstate","ally","alsace","alstom","amazon","americanexpress","americanfamily","amex","amfam","amica","amsterdam","analytics","android","anquan","anz","aol","apartments","app","apple","aquarelle","arab","aramco","archi","army","art","arte","asda","associates","athleta","attorney","auction","audi","audible","audio","auspost","author","auto","autos","avianca","aws","axa","azure","baby","baidu","banamex","bananarepublic","band","bank","bar","barcelona","barclaycard","barclays","barefoot","bargains","baseball","basketball","bauhaus","bayern","bbc","bbt","bbva","bcg","bcn","beats","beauty","beer","bentley","berlin","best","bestbuy","bet","bharti","bible","bid","bike","bing","bingo","bio","black","blackfriday","blockbuster","blog","bloomberg","blue","bms","bmw","bnpparibas","boats","boehringer","bofa","bom","bond","boo","book","booking","bosch","bostik","boston","bot","boutique","box","bradesco","bridgestone","broadway","broker","brother","brussels","bugatti","build","builders","business","buy","buzz","bzh","cab","cafe","cal","call","calvinklein","cam","camera","camp","cancerresearch","canon","capetown","capital","capitalone","car","caravan","cards","care","career","careers","cars","casa","case","cash","casino","catering","catholic","cba","cbn","cbre","cbs","center","ceo","cern","cfa","cfd","chanel","channel","charity","chase","chat","cheap","chintai","christmas","chrome","church","cipriani","circle","cisco","citadel","citi","citic","city","cityeats","claims","cleaning","click","clinic","clinique","clothing","cloud","club","clubmed","coach","codes","coffee","college","cologne","comcast","commbank","community","company","compare","computer","comsec","condos","construction","consulting","contact","contractors","cooking","cookingchannel","cool","corsica","country","coupon","coupons","courses","cpa","credit","creditcard","creditunion","cricket","crown","crs","cruise","cruises","cuisinella","cymru","cyou","dabur","dad","dance","data","date","dating","datsun","day","dclk","dds","deal","dealer","deals","degree","delivery","dell","deloitte","delta","democrat","dental","dentist","desi","design","dev","dhl","diamonds","diet","digital","direct","directory","discount","discover","dish","diy","dnp","docs","doctor","dog","domains","dot","download","drive","dtv","dubai","dunlop","dupont","durban","dvag","dvr","earth","eat","eco","edeka","education","email","emerck","energy","engineer","engineering","enterprises","epson","equipment","ericsson","erni","esq","estate","etisalat","eurovision","eus","events","exchange","expert","exposed","express","extraspace","fage","fail","fairwinds","faith","family","fan","fans","farm","farmers","fashion","fast","fedex","feedback","ferrari","ferrero","fiat","fidelity","fido","film","final","finance","financial","fire","firestone","firmdale","fish","fishing","fit","fitness","flickr","flights","flir","florist","flowers","fly","foo","food","foodnetwork","football","ford","forex","forsale","forum","foundation","fox","free","fresenius","frl","frogans","frontdoor","frontier","ftr","fujitsu","fun","fund","furniture","futbol","fyi","gal","gallery","gallo","gallup","game","games","gap","garden","gay","gbiz","gdn","gea","gent","genting","george","ggee","gift","gifts","gives","giving","glass","gle","global","globo","gmail","gmbh","gmo","gmx","godaddy","gold","goldpoint","golf","goo","goodyear","goog","google","gop","got","grainger","graphics","gratis","green","gripe","grocery","group","guardian","gucci","guge","guide","guitars","guru","hair","hamburg","hangout","haus","hbo","hdfc","hdfcbank","health","healthcare","help","helsinki","here","hermes","hgtv","hiphop","hisamitsu","hitachi","hiv","hkt","hockey","holdings","holiday","homedepot","homegoods","homes","homesense","honda","horse","hospital","host","hosting","hot","hoteles","hotels","hotmail","house","how","hsbc","hughes","hyatt","hyundai","ibm","icbc","ice","icu","ieee","ifm","ikano","imamat","imdb","immo","immobilien","inc","industries","infiniti","ing","ink","institute","insurance","insure","international","intuit","investments","ipiranga","irish","ismaili","ist","istanbul","itau","itv","jaguar","java","jcb","jeep","jetzt","jewelry","jio","jll","jmp","jnj","joburg","jot","joy","jpmorgan","jprs","juegos","juniper","kaufen","kddi","kerryhotels","kerrylogistics","kerryproperties","kfh","kia","kids","kim","kinder","kindle","kitchen","kiwi","koeln","komatsu","kosher","kpmg","kpn","krd","kred","kuokgroup","kyoto","lacaixa","lamborghini","lamer","lancaster","lancia","land","landrover","lanxess","lasalle","lat","latino","latrobe","law","lawyer","lds","lease","leclerc","lefrak","legal","lego","lexus","lgbt","lidl","life","lifeinsurance","lifestyle","lighting","like","lilly","limited","limo","lincoln","linde","link","lipsy","live","living","llc","llp","loan","loans","locker","locus","loft","lol","london","lotte","lotto","love","lpl","lplfinancial","ltd","ltda","lundbeck","luxe","luxury","macys","madrid","maif","maison","makeup","man","management","mango","map","market","marketing","markets","marriott","marshalls","maserati","mattel","mba","mckinsey","med","media","meet","melbourne","meme","memorial","men","menu","merckmsd","miami","microsoft","mini","mint","mit","mitsubishi","mlb","mls","mma","mobile","moda","moe","moi","mom","monash","money","monster","mormon","mortgage","moscow","moto","motorcycles","mov","movie","msd","mtn","mtr","music","mutual","nab","nagoya","natura","navy","nba","nec","netbank","netflix","network","neustar","new","news","next","nextdirect","nexus","nfl","ngo","nhk","nico","nike","nikon","ninja","nissan","nissay","nokia","northwesternmutual","norton","now","nowruz","nowtv","nra","nrw","ntt","nyc","obi","observer","office","okinawa","olayan","olayangroup","oldnavy","ollo","omega","one","ong","onl","online","ooo","open","oracle","orange","organic","origins","osaka","otsuka","ott","ovh","page","panasonic","paris","pars","partners","parts","party","passagens","pay","pccw","pet","pfizer","pharmacy","phd","philips","phone","photo","photography","photos","physio","pics","pictet","pictures","pid","pin","ping","pink","pioneer","pizza","place","play","playstation","plumbing","plus","pnc","pohl","poker","politie","porn","pramerica","praxi","press","prime","prod","productions","prof","progressive","promo","properties","property","protection","pru","prudential","pub","pwc","qpon","quebec","quest","racing","radio","read","realestate","realtor","realty","recipes","red","redstone","redumbrella","rehab","reise","reisen","reit","reliance","ren","rent","rentals","repair","report","republican","rest","restaurant","review","reviews","rexroth","rich","richardli","ricoh","ril","rio","rip","rocher","rocks","rodeo","rogers","room","rsvp","rugby","ruhr","run","rwe","ryukyu","saarland","safe","safety","sakura","sale","salon","samsclub","samsung","sandvik","sandvikcoromant","sanofi","sap","sarl","sas","save","saxo","sbi","sbs","sca","scb","schaeffler","schmidt","scholarships","school","schule","schwarz","science","scot","search","seat","secure","security","seek","select","sener","services","ses","seven","sew","sex","sexy","sfr","shangrila","sharp","shaw","shell","shia","shiksha","shoes","shop","shopping","shouji","show","showtime","silk","sina","singles","site","ski","skin","sky","skype","sling","smart","smile","sncf","soccer","social","softbank","software","sohu","solar","solutions","song","sony","soy","spa","space","sport","spot","srl","stada","staples","star","statebank","statefarm","stc","stcgroup","stockholm","storage","store","stream","studio","study","style","sucks","supplies","supply","support","surf","surgery","suzuki","swatch","swiss","sydney","systems","tab","taipei","talk","taobao","target","tatamotors","tatar","tattoo","tax","taxi","tci","tdk","team","tech","technology","temasek","tennis","teva","thd","theater","theatre","tiaa","tickets","tienda","tiffany","tips","tires","tirol","tjmaxx","tjx","tkmaxx","tmall","today","tokyo","tools","top","toray","toshiba","total","tours","town","toyota","toys","trade","trading","training","travel","travelchannel","travelers","travelersinsurance","trust","trv","tube","tui","tunes","tushu","tvs","ubank","ubs","unicom","university","uno","uol","ups","vacations","vana","vanguard","vegas","ventures","verisign","versicherung","vet","viajes","video","vig","viking","villas","vin","vip","virgin","visa","vision","viva","vivo","vlaanderen","vodka","volkswagen","volvo","vote","voting","voto","voyage","vuelos","wales","walmart","walter","wang","wanggou","watch","watches","weather","weatherchannel","webcam","weber","website","wedding","weibo","weir","whoswho","wien","wiki","williamhill","win","windows","wine","winners","wme","wolterskluwer","woodside","work","works","world","wow","wtc","wtf","xbox","xerox","xfinity","xihuan","xin","\u0915\u0949\u092E","\u30BB\u30FC\u30EB","\u4F5B\u5C71","\u6148\u5584","\u96C6\u56E2","\u5728\u7EBF","\u70B9\u770B","\u0E04\u0E2D\u0E21","\u516B\u5366","\u0645\u0648\u0642\u0639","\u516C\u76CA","\u516C\u53F8","\u9999\u683C\u91CC\u62C9","\u7F51\u7AD9","\u79FB\u52A8","\u6211\u7231\u4F60","\u043C\u043E\u0441\u043A\u0432\u0430","\u043A\u0430\u0442\u043E\u043B\u0438\u043A","\u043E\u043D\u043B\u0430\u0439\u043D","\u0441\u0430\u0439\u0442","\u8054\u901A","\u05E7\u05D5\u05DD","\u65F6\u5C1A","\u5FAE\u535A","\u6DE1\u9A6C\u9521","\u30D5\u30A1\u30C3\u30B7\u30E7\u30F3","\u043E\u0440\u0433","\u0928\u0947\u091F","\u30B9\u30C8\u30A2","\u30A2\u30DE\u30BE\u30F3","\uC0BC\uC131","\u5546\u6807","\u5546\u5E97","\u5546\u57CE","\u0434\u0435\u0442\u0438","\u30DD\u30A4\u30F3\u30C8","\u65B0\u95FB","\u5BB6\u96FB","\u0643\u0648\u0645","\u4E2D\u6587\u7F51","\u4E2D\u4FE1","\u5A31\u4E50","\u8C37\u6B4C","\u96FB\u8A0A\u76C8\u79D1","\u8D2D\u7269","\u30AF\u30E9\u30A6\u30C9","\u901A\u8CA9","\u7F51\u5E97","\u0938\u0902\u0917\u0920\u0928","\u9910\u5385","\u7F51\u7EDC","\u043A\u043E\u043C","\u4E9A\u9A6C\u900A","\u8BFA\u57FA\u4E9A","\u98DF\u54C1","\u98DE\u5229\u6D66","\u624B\u673A","\u0627\u0631\u0627\u0645\u0643\u0648","\u0627\u0644\u0639\u0644\u064A\u0627\u0646","\u0627\u062A\u0635\u0627\u0644\u0627\u062A","\u0628\u0627\u0632\u0627\u0631","\u0627\u0628\u0648\u0638\u0628\u064A","\u0643\u0627\u062B\u0648\u0644\u064A\u0643","\u0647\u0645\u0631\u0627\u0647","\uB2F7\uCEF4","\u653F\u5E9C","\u0634\u0628\u0643\u0629","\u0628\u064A\u062A\u0643","\u0639\u0631\u0628","\u673A\u6784","\u7EC4\u7EC7\u673A\u6784","\u5065\u5EB7","\u62DB\u8058","\u0440\u0443\u0441","\u5927\u62FF","\u307F\u3093\u306A","\u30B0\u30FC\u30B0\u30EB","\u4E16\u754C","\u66F8\u7C4D","\u7F51\u5740","\uB2F7\uB137","\u30B3\u30E0","\u5929\u4E3B\u6559","\u6E38\u620F","verm\xF6gensberater","verm\xF6gensberatung","\u4F01\u4E1A","\u4FE1\u606F","\u5609\u91CC\u5927\u9152\u5E97","\u5609\u91CC","\u5E7F\u4E1C","\u653F\u52A1","xyz","yachts","yahoo","yamaxun","yandex","yodobashi","yoga","yokohama","you","youtube","yun","zappos","zara","zero","zip","zone","zuerich","cc.ua","inf.ua","ltd.ua","611.to","graphox.us","*.devcdnaccesso.com","adobeaemcloud.com","*.dev.adobeaemcloud.com","hlx.live","adobeaemcloud.net","hlx.page","hlx3.page","beep.pl","airkitapps.com","airkitapps-au.com","airkitapps.eu","aivencloud.com","barsy.ca","*.compute.estate","*.alces.network","kasserver.com","altervista.org","alwaysdata.net","cloudfront.net","*.compute.amazonaws.com","*.compute-1.amazonaws.com","*.compute.amazonaws.com.cn","us-east-1.amazonaws.com","cn-north-1.eb.amazonaws.com.cn","cn-northwest-1.eb.amazonaws.com.cn","elasticbeanstalk.com","ap-northeast-1.elasticbeanstalk.com","ap-northeast-2.elasticbeanstalk.com","ap-northeast-3.elasticbeanstalk.com","ap-south-1.elasticbeanstalk.com","ap-southeast-1.elasticbeanstalk.com","ap-southeast-2.elasticbeanstalk.com","ca-central-1.elasticbeanstalk.com","eu-central-1.elasticbeanstalk.com","eu-west-1.elasticbeanstalk.com","eu-west-2.elasticbeanstalk.com","eu-west-3.elasticbeanstalk.com","sa-east-1.elasticbeanstalk.com","us-east-1.elasticbeanstalk.com","us-east-2.elasticbeanstalk.com","us-gov-west-1.elasticbeanstalk.com","us-west-1.elasticbeanstalk.com","us-west-2.elasticbeanstalk.com","*.elb.amazonaws.com","*.elb.amazonaws.com.cn","awsglobalaccelerator.com","s3.amazonaws.com","s3-ap-northeast-1.amazonaws.com","s3-ap-northeast-2.amazonaws.com","s3-ap-south-1.amazonaws.com","s3-ap-southeast-1.amazonaws.com","s3-ap-southeast-2.amazonaws.com","s3-ca-central-1.amazonaws.com","s3-eu-central-1.amazonaws.com","s3-eu-west-1.amazonaws.com","s3-eu-west-2.amazonaws.com","s3-eu-west-3.amazonaws.com","s3-external-1.amazonaws.com","s3-fips-us-gov-west-1.amazonaws.com","s3-sa-east-1.amazonaws.com","s3-us-gov-west-1.amazonaws.com","s3-us-east-2.amazonaws.com","s3-us-west-1.amazonaws.com","s3-us-west-2.amazonaws.com","s3.ap-northeast-2.amazonaws.com","s3.ap-south-1.amazonaws.com","s3.cn-north-1.amazonaws.com.cn","s3.ca-central-1.amazonaws.com","s3.eu-central-1.amazonaws.com","s3.eu-west-2.amazonaws.com","s3.eu-west-3.amazonaws.com","s3.us-east-2.amazonaws.com","s3.dualstack.ap-northeast-1.amazonaws.com","s3.dualstack.ap-northeast-2.amazonaws.com","s3.dualstack.ap-south-1.amazonaws.com","s3.dualstack.ap-southeast-1.amazonaws.com","s3.dualstack.ap-southeast-2.amazonaws.com","s3.dualstack.ca-central-1.amazonaws.com","s3.dualstack.eu-central-1.amazonaws.com","s3.dualstack.eu-west-1.amazonaws.com","s3.dualstack.eu-west-2.amazonaws.com","s3.dualstack.eu-west-3.amazonaws.com","s3.dualstack.sa-east-1.amazonaws.com","s3.dualstack.us-east-1.amazonaws.com","s3.dualstack.us-east-2.amazonaws.com","s3-website-us-east-1.amazonaws.com","s3-website-us-west-1.amazonaws.com","s3-website-us-west-2.amazonaws.com","s3-website-ap-northeast-1.amazonaws.com","s3-website-ap-southeast-1.amazonaws.com","s3-website-ap-southeast-2.amazonaws.com","s3-website-eu-west-1.amazonaws.com","s3-website-sa-east-1.amazonaws.com","s3-website.ap-northeast-2.amazonaws.com","s3-website.ap-south-1.amazonaws.com","s3-website.ca-central-1.amazonaws.com","s3-website.eu-central-1.amazonaws.com","s3-website.eu-west-2.amazonaws.com","s3-website.eu-west-3.amazonaws.com","s3-website.us-east-2.amazonaws.com","t3l3p0rt.net","tele.amune.org","apigee.io","siiites.com","appspacehosted.com","appspaceusercontent.com","appudo.net","on-aptible.com","user.aseinet.ne.jp","gv.vc","d.gv.vc","user.party.eus","pimienta.org","poivron.org","potager.org","sweetpepper.org","myasustor.com","cdn.prod.atlassian-dev.net","translated.page","myfritz.net","onavstack.net","*.awdev.ca","*.advisor.ws","ecommerce-shop.pl","b-data.io","backplaneapp.io","balena-devices.com","rs.ba","*.banzai.cloud","app.banzaicloud.io","*.backyards.banzaicloud.io","base.ec","official.ec","buyshop.jp","fashionstore.jp","handcrafted.jp","kawaiishop.jp","supersale.jp","theshop.jp","shopselect.net","base.shop","*.beget.app","betainabox.com","bnr.la","bitbucket.io","blackbaudcdn.net","of.je","bluebite.io","boomla.net","boutir.com","boxfuse.io","square7.ch","bplaced.com","bplaced.de","square7.de","bplaced.net","square7.net","shop.brendly.rs","browsersafetymark.io","uk0.bigv.io","dh.bytemark.co.uk","vm.bytemark.co.uk","cafjs.com","mycd.eu","drr.ac","uwu.ai","carrd.co","crd.co","ju.mp","ae.org","br.com","cn.com","com.de","com.se","de.com","eu.com","gb.net","hu.net","jp.net","jpn.com","mex.com","ru.com","sa.com","se.net","uk.com","uk.net","us.com","za.bz","za.com","ar.com","hu.com","kr.com","no.com","qc.com","uy.com","africa.com","gr.com","in.net","web.in","us.org","co.com","aus.basketball","nz.basketball","radio.am","radio.fm","c.la","certmgr.org","cx.ua","discourse.group","discourse.team","cleverapps.io","clerk.app","clerkstage.app","*.lcl.dev","*.lclstage.dev","*.stg.dev","*.stgstage.dev","clickrising.net","c66.me","cloud66.ws","cloud66.zone","jdevcloud.com","wpdevcloud.com","cloudaccess.host","freesite.host","cloudaccess.net","cloudcontrolled.com","cloudcontrolapp.com","*.cloudera.site","pages.dev","trycloudflare.com","workers.dev","wnext.app","co.ca","*.otap.co","co.cz","c.cdn77.org","cdn77-ssl.net","r.cdn77.net","rsc.cdn77.org","ssl.origin.cdn77-secure.org","cloudns.asia","cloudns.biz","cloudns.club","cloudns.cc","cloudns.eu","cloudns.in","cloudns.info","cloudns.org","cloudns.pro","cloudns.pw","cloudns.us","cnpy.gdn","codeberg.page","co.nl","co.no","webhosting.be","hosting-cluster.nl","ac.ru","edu.ru","gov.ru","int.ru","mil.ru","test.ru","dyn.cosidns.de","dynamisches-dns.de","dnsupdater.de","internet-dns.de","l-o-g-i-n.de","dynamic-dns.info","feste-ip.net","knx-server.net","static-access.net","realm.cz","*.cryptonomic.net","cupcake.is","curv.dev","*.customer-oci.com","*.oci.customer-oci.com","*.ocp.customer-oci.com","*.ocs.customer-oci.com","cyon.link","cyon.site","fnwk.site","folionetwork.site","platform0.app","daplie.me","localhost.daplie.me","dattolocal.com","dattorelay.com","dattoweb.com","mydatto.com","dattolocal.net","mydatto.net","biz.dk","co.dk","firm.dk","reg.dk","store.dk","dyndns.dappnode.io","*.dapps.earth","*.bzz.dapps.earth","builtwithdark.com","demo.datadetect.com","instance.datadetect.com","edgestack.me","ddns5.com","debian.net","deno.dev","deno-staging.dev","dedyn.io","deta.app","deta.dev","*.rss.my.id","*.diher.solutions","discordsays.com","discordsez.com","jozi.biz","dnshome.de","online.th","shop.th","drayddns.com","shoparena.pl","dreamhosters.com","mydrobo.com","drud.io","drud.us","duckdns.org","bip.sh","bitbridge.net","dy.fi","tunk.org","dyndns-at-home.com","dyndns-at-work.com","dyndns-blog.com","dyndns-free.com","dyndns-home.com","dyndns-ip.com","dyndns-mail.com","dyndns-office.com","dyndns-pics.com","dyndns-remote.com","dyndns-server.com","dyndns-web.com","dyndns-wiki.com","dyndns-work.com","dyndns.biz","dyndns.info","dyndns.org","dyndns.tv","at-band-camp.net","ath.cx","barrel-of-knowledge.info","barrell-of-knowledge.info","better-than.tv","blogdns.com","blogdns.net","blogdns.org","blogsite.org","boldlygoingnowhere.org","broke-it.net","buyshouses.net","cechire.com","dnsalias.com","dnsalias.net","dnsalias.org","dnsdojo.com","dnsdojo.net","dnsdojo.org","does-it.net","doesntexist.com","doesntexist.org","dontexist.com","dontexist.net","dontexist.org","doomdns.com","doomdns.org","dvrdns.org","dyn-o-saur.com","dynalias.com","dynalias.net","dynalias.org","dynathome.net","dyndns.ws","endofinternet.net","endofinternet.org","endoftheinternet.org","est-a-la-maison.com","est-a-la-masion.com","est-le-patron.com","est-mon-blogueur.com","for-better.biz","for-more.biz","for-our.info","for-some.biz","for-the.biz","forgot.her.name","forgot.his.name","from-ak.com","from-al.com","from-ar.com","from-az.net","from-ca.com","from-co.net","from-ct.com","from-dc.com","from-de.com","from-fl.com","from-ga.com","from-hi.com","from-ia.com","from-id.com","from-il.com","from-in.com","from-ks.com","from-ky.com","from-la.net","from-ma.com","from-md.com","from-me.org","from-mi.com","from-mn.com","from-mo.com","from-ms.com","from-mt.com","from-nc.com","from-nd.com","from-ne.com","from-nh.com","from-nj.com","from-nm.com","from-nv.com","from-ny.net","from-oh.com","from-ok.com","from-or.com","from-pa.com","from-pr.com","from-ri.com","from-sc.com","from-sd.com","from-tn.com","from-tx.com","from-ut.com","from-va.com","from-vt.com","from-wa.com","from-wi.com","from-wv.com","from-wy.com","ftpaccess.cc","fuettertdasnetz.de","game-host.org","game-server.cc","getmyip.com","gets-it.net","go.dyndns.org","gotdns.com","gotdns.org","groks-the.info","groks-this.info","ham-radio-op.net","here-for-more.info","hobby-site.com","hobby-site.org","home.dyndns.org","homedns.org","homeftp.net","homeftp.org","homeip.net","homelinux.com","homelinux.net","homelinux.org","homeunix.com","homeunix.net","homeunix.org","iamallama.com","in-the-band.net","is-a-anarchist.com","is-a-blogger.com","is-a-bookkeeper.com","is-a-bruinsfan.org","is-a-bulls-fan.com","is-a-candidate.org","is-a-caterer.com","is-a-celticsfan.org","is-a-chef.com","is-a-chef.net","is-a-chef.org","is-a-conservative.com","is-a-cpa.com","is-a-cubicle-slave.com","is-a-democrat.com","is-a-designer.com","is-a-doctor.com","is-a-financialadvisor.com","is-a-geek.com","is-a-geek.net","is-a-geek.org","is-a-green.com","is-a-guru.com","is-a-hard-worker.com","is-a-hunter.com","is-a-knight.org","is-a-landscaper.com","is-a-lawyer.com","is-a-liberal.com","is-a-libertarian.com","is-a-linux-user.org","is-a-llama.com","is-a-musician.com","is-a-nascarfan.com","is-a-nurse.com","is-a-painter.com","is-a-patsfan.org","is-a-personaltrainer.com","is-a-photographer.com","is-a-player.com","is-a-republican.com","is-a-rockstar.com","is-a-socialist.com","is-a-soxfan.org","is-a-student.com","is-a-teacher.com","is-a-techie.com","is-a-therapist.com","is-an-accountant.com","is-an-actor.com","is-an-actress.com","is-an-anarchist.com","is-an-artist.com","is-an-engineer.com","is-an-entertainer.com","is-by.us","is-certified.com","is-found.org","is-gone.com","is-into-anime.com","is-into-cars.com","is-into-cartoons.com","is-into-games.com","is-leet.com","is-lost.org","is-not-certified.com","is-saved.org","is-slick.com","is-uberleet.com","is-very-bad.org","is-very-evil.org","is-very-good.org","is-very-nice.org","is-very-sweet.org","is-with-theband.com","isa-geek.com","isa-geek.net","isa-geek.org","isa-hockeynut.com","issmarterthanyou.com","isteingeek.de","istmein.de","kicks-ass.net","kicks-ass.org","knowsitall.info","land-4-sale.us","lebtimnetz.de","leitungsen.de","likes-pie.com","likescandy.com","merseine.nu","mine.nu","misconfused.org","mypets.ws","myphotos.cc","neat-url.com","office-on-the.net","on-the-web.tv","podzone.net","podzone.org","readmyblog.org","saves-the-whales.com","scrapper-site.net","scrapping.cc","selfip.biz","selfip.com","selfip.info","selfip.net","selfip.org","sells-for-less.com","sells-for-u.com","sells-it.net","sellsyourhome.org","servebbs.com","servebbs.net","servebbs.org","serveftp.net","serveftp.org","servegame.org","shacknet.nu","simple-url.com","space-to-rent.com","stuff-4-sale.org","stuff-4-sale.us","teaches-yoga.com","thruhere.net","traeumtgerade.de","webhop.biz","webhop.info","webhop.net","webhop.org","worse-than.tv","writesthisblog.com","ddnss.de","dyn.ddnss.de","dyndns.ddnss.de","dyndns1.de","dyn-ip24.de","home-webserver.de","dyn.home-webserver.de","myhome-server.de","ddnss.org","definima.net","definima.io","ondigitalocean.app","*.digitaloceanspaces.com","bci.dnstrace.pro","ddnsfree.com","ddnsgeek.com","giize.com","gleeze.com","kozow.com","loseyourip.com","ooguy.com","theworkpc.com","casacam.net","dynu.net","accesscam.org","camdvr.org","freeddns.org","mywire.org","webredirect.org","myddns.rocks","blogsite.xyz","dynv6.net","e4.cz","eero.online","eero-stage.online","elementor.cloud","elementor.cool","en-root.fr","mytuleap.com","tuleap-partners.com","encr.app","encoreapi.com","onred.one","staging.onred.one","eu.encoway.cloud","eu.org","al.eu.org","asso.eu.org","at.eu.org","au.eu.org","be.eu.org","bg.eu.org","ca.eu.org","cd.eu.org","ch.eu.org","cn.eu.org","cy.eu.org","cz.eu.org","de.eu.org","dk.eu.org","edu.eu.org","ee.eu.org","es.eu.org","fi.eu.org","fr.eu.org","gr.eu.org","hr.eu.org","hu.eu.org","ie.eu.org","il.eu.org","in.eu.org","int.eu.org","is.eu.org","it.eu.org","jp.eu.org","kr.eu.org","lt.eu.org","lu.eu.org","lv.eu.org","mc.eu.org","me.eu.org","mk.eu.org","mt.eu.org","my.eu.org","net.eu.org","ng.eu.org","nl.eu.org","no.eu.org","nz.eu.org","paris.eu.org","pl.eu.org","pt.eu.org","q-a.eu.org","ro.eu.org","ru.eu.org","se.eu.org","si.eu.org","sk.eu.org","tr.eu.org","uk.eu.org","us.eu.org","eurodir.ru","eu-1.evennode.com","eu-2.evennode.com","eu-3.evennode.com","eu-4.evennode.com","us-1.evennode.com","us-2.evennode.com","us-3.evennode.com","us-4.evennode.com","twmail.cc","twmail.net","twmail.org","mymailer.com.tw","url.tw","onfabrica.com","apps.fbsbx.com","ru.net","adygeya.ru","bashkiria.ru","bir.ru","cbg.ru","com.ru","dagestan.ru","grozny.ru","kalmykia.ru","kustanai.ru","marine.ru","mordovia.ru","msk.ru","mytis.ru","nalchik.ru","nov.ru","pyatigorsk.ru","spb.ru","vladikavkaz.ru","vladimir.ru","abkhazia.su","adygeya.su","aktyubinsk.su","arkhangelsk.su","armenia.su","ashgabad.su","azerbaijan.su","balashov.su","bashkiria.su","bryansk.su","bukhara.su","chimkent.su","dagestan.su","east-kazakhstan.su","exnet.su","georgia.su","grozny.su","ivanovo.su","jambyl.su","kalmykia.su","kaluga.su","karacol.su","karaganda.su","karelia.su","khakassia.su","krasnodar.su","kurgan.su","kustanai.su","lenug.su","mangyshlak.su","mordovia.su","msk.su","murmansk.su","nalchik.su","navoi.su","north-kazakhstan.su","nov.su","obninsk.su","penza.su","pokrovsk.su","sochi.su","spb.su","tashkent.su","termez.su","togliatti.su","troitsk.su","tselinograd.su","tula.su","tuva.su","vladikavkaz.su","vladimir.su","vologda.su","channelsdvr.net","u.channelsdvr.net","edgecompute.app","fastly-terrarium.com","fastlylb.net","map.fastlylb.net","freetls.fastly.net","map.fastly.net","a.prod.fastly.net","global.prod.fastly.net","a.ssl.fastly.net","b.ssl.fastly.net","global.ssl.fastly.net","fastvps-server.com","fastvps.host","myfast.host","fastvps.site","myfast.space","fedorainfracloud.org","fedorapeople.org","cloud.fedoraproject.org","app.os.fedoraproject.org","app.os.stg.fedoraproject.org","conn.uk","copro.uk","hosp.uk","mydobiss.com","fh-muenster.io","filegear.me","filegear-au.me","filegear-de.me","filegear-gb.me","filegear-ie.me","filegear-jp.me","filegear-sg.me","firebaseapp.com","fireweb.app","flap.id","onflashdrive.app","fldrv.com","fly.dev","edgeapp.net","shw.io","flynnhosting.net","forgeblocks.com","id.forgerock.io","framer.app","framercanvas.com","*.frusky.de","ravpage.co.il","0e.vc","freebox-os.com","freeboxos.com","fbx-os.fr","fbxos.fr","freebox-os.fr","freeboxos.fr","freedesktop.org","freemyip.com","wien.funkfeuer.at","*.futurecms.at","*.ex.futurecms.at","*.in.futurecms.at","futurehosting.at","futuremailing.at","*.ex.ortsinfo.at","*.kunden.ortsinfo.at","*.statics.cloud","independent-commission.uk","independent-inquest.uk","independent-inquiry.uk","independent-panel.uk","independent-review.uk","public-inquiry.uk","royal-commission.uk","campaign.gov.uk","service.gov.uk","api.gov.uk","gehirn.ne.jp","usercontent.jp","gentapps.com","gentlentapis.com","lab.ms","cdn-edges.net","ghost.io","gsj.bz","githubusercontent.com","githubpreview.dev","github.io","gitlab.io","gitapp.si","gitpage.si","glitch.me","nog.community","co.ro","shop.ro","lolipop.io","angry.jp","babyblue.jp","babymilk.jp","backdrop.jp","bambina.jp","bitter.jp","blush.jp","boo.jp","boy.jp","boyfriend.jp","but.jp","candypop.jp","capoo.jp","catfood.jp","cheap.jp","chicappa.jp","chillout.jp","chips.jp","chowder.jp","chu.jp","ciao.jp","cocotte.jp","coolblog.jp","cranky.jp","cutegirl.jp","daa.jp","deca.jp","deci.jp","digick.jp","egoism.jp","fakefur.jp","fem.jp","flier.jp","floppy.jp","fool.jp","frenchkiss.jp","girlfriend.jp","girly.jp","gloomy.jp","gonna.jp","greater.jp","hacca.jp","heavy.jp","her.jp","hiho.jp","hippy.jp","holy.jp","hungry.jp","icurus.jp","itigo.jp","jellybean.jp","kikirara.jp","kill.jp","kilo.jp","kuron.jp","littlestar.jp","lolipopmc.jp","lolitapunk.jp","lomo.jp","lovepop.jp","lovesick.jp","main.jp","mods.jp","mond.jp","mongolian.jp","moo.jp","namaste.jp","nikita.jp","nobushi.jp","noor.jp","oops.jp","parallel.jp","parasite.jp","pecori.jp","peewee.jp","penne.jp","pepper.jp","perma.jp","pigboat.jp","pinoko.jp","punyu.jp","pupu.jp","pussycat.jp","pya.jp","raindrop.jp","readymade.jp","sadist.jp","schoolbus.jp","secret.jp","staba.jp","stripper.jp","sub.jp","sunnyday.jp","thick.jp","tonkotsu.jp","under.jp","upper.jp","velvet.jp","verse.jp","versus.jp","vivian.jp","watson.jp","weblike.jp","whitesnow.jp","zombie.jp","heteml.net","cloudapps.digital","london.cloudapps.digital","pymnt.uk","homeoffice.gov.uk","ro.im","goip.de","run.app","a.run.app","web.app","*.0emm.com","appspot.com","*.r.appspot.com","codespot.com","googleapis.com","googlecode.com","pagespeedmobilizer.com","publishproxy.com","withgoogle.com","withyoutube.com","*.gateway.dev","cloud.goog","translate.goog","*.usercontent.goog","cloudfunctions.net","blogspot.ae","blogspot.al","blogspot.am","blogspot.ba","blogspot.be","blogspot.bg","blogspot.bj","blogspot.ca","blogspot.cf","blogspot.ch","blogspot.cl","blogspot.co.at","blogspot.co.id","blogspot.co.il","blogspot.co.ke","blogspot.co.nz","blogspot.co.uk","blogspot.co.za","blogspot.com","blogspot.com.ar","blogspot.com.au","blogspot.com.br","blogspot.com.by","blogspot.com.co","blogspot.com.cy","blogspot.com.ee","blogspot.com.eg","blogspot.com.es","blogspot.com.mt","blogspot.com.ng","blogspot.com.tr","blogspot.com.uy","blogspot.cv","blogspot.cz","blogspot.de","blogspot.dk","blogspot.fi","blogspot.fr","blogspot.gr","blogspot.hk","blogspot.hr","blogspot.hu","blogspot.ie","blogspot.in","blogspot.is","blogspot.it","blogspot.jp","blogspot.kr","blogspot.li","blogspot.lt","blogspot.lu","blogspot.md","blogspot.mk","blogspot.mr","blogspot.mx","blogspot.my","blogspot.nl","blogspot.no","blogspot.pe","blogspot.pt","blogspot.qa","blogspot.re","blogspot.ro","blogspot.rs","blogspot.ru","blogspot.se","blogspot.sg","blogspot.si","blogspot.sk","blogspot.sn","blogspot.td","blogspot.tw","blogspot.ug","blogspot.vn","goupile.fr","gov.nl","awsmppl.com","g\xFCnstigbestellen.de","g\xFCnstigliefern.de","fin.ci","free.hr","caa.li","ua.rs","conf.se","hs.zone","hs.run","hashbang.sh","hasura.app","hasura-app.io","pages.it.hs-heilbronn.de","hepforge.org","herokuapp.com","herokussl.com","ravendb.cloud","myravendb.com","ravendb.community","ravendb.me","development.run","ravendb.run","homesklep.pl","secaas.hk","hoplix.shop","orx.biz","biz.gl","col.ng","firm.ng","gen.ng","ltd.ng","ngo.ng","edu.scot","sch.so","hostyhosting.io","h\xE4kkinen.fi","*.moonscale.io","moonscale.net","iki.fi","ibxos.it","iliadboxos.it","impertrixcdn.com","impertrix.com","smushcdn.com","wphostedmail.com","wpmucdn.com","tempurl.host","wpmudev.host","dyn-berlin.de","in-berlin.de","in-brb.de","in-butter.de","in-dsl.de","in-dsl.net","in-dsl.org","in-vpn.de","in-vpn.net","in-vpn.org","biz.at","info.at","info.cx","ac.leg.br","al.leg.br","am.leg.br","ap.leg.br","ba.leg.br","ce.leg.br","df.leg.br","es.leg.br","go.leg.br","ma.leg.br","mg.leg.br","ms.leg.br","mt.leg.br","pa.leg.br","pb.leg.br","pe.leg.br","pi.leg.br","pr.leg.br","rj.leg.br","rn.leg.br","ro.leg.br","rr.leg.br","rs.leg.br","sc.leg.br","se.leg.br","sp.leg.br","to.leg.br","pixolino.com","na4u.ru","iopsys.se","ipifony.net","iservschule.de","mein-iserv.de","schulplattform.de","schulserver.de","test-iserv.de","iserv.dev","iobb.net","mel.cloudlets.com.au","cloud.interhostsolutions.be","users.scale.virtualcloud.com.br","mycloud.by","alp1.ae.flow.ch","appengine.flow.ch","es-1.axarnet.cloud","diadem.cloud","vip.jelastic.cloud","jele.cloud","it1.eur.aruba.jenv-aruba.cloud","it1.jenv-aruba.cloud","keliweb.cloud","cs.keliweb.cloud","oxa.cloud","tn.oxa.cloud","uk.oxa.cloud","primetel.cloud","uk.primetel.cloud","ca.reclaim.cloud","uk.reclaim.cloud","us.reclaim.cloud","ch.trendhosting.cloud","de.trendhosting.cloud","jele.club","amscompute.com","clicketcloud.com","dopaas.com","hidora.com","paas.hosted-by-previder.com","rag-cloud.hosteur.com","rag-cloud-ch.hosteur.com","jcloud.ik-server.com","jcloud-ver-jpc.ik-server.com","demo.jelastic.com","kilatiron.com","paas.massivegrid.com","jed.wafaicloud.com","lon.wafaicloud.com","ryd.wafaicloud.com","j.scaleforce.com.cy","jelastic.dogado.eu","fi.cloudplatform.fi","demo.datacenter.fi","paas.datacenter.fi","jele.host","mircloud.host","paas.beebyte.io","sekd1.beebyteapp.io","jele.io","cloud-fr1.unispace.io","jc.neen.it","cloud.jelastic.open.tim.it","jcloud.kz","upaas.kazteleport.kz","cloudjiffy.net","fra1-de.cloudjiffy.net","west1-us.cloudjiffy.net","jls-sto1.elastx.net","jls-sto2.elastx.net","jls-sto3.elastx.net","faststacks.net","fr-1.paas.massivegrid.net","lon-1.paas.massivegrid.net","lon-2.paas.massivegrid.net","ny-1.paas.massivegrid.net","ny-2.paas.massivegrid.net","sg-1.paas.massivegrid.net","jelastic.saveincloud.net","nordeste-idc.saveincloud.net","j.scaleforce.net","jelastic.tsukaeru.net","sdscloud.pl","unicloud.pl","mircloud.ru","jelastic.regruhosting.ru","enscaled.sg","jele.site","jelastic.team","orangecloud.tn","j.layershift.co.uk","phx.enscaled.us","mircloud.us","myjino.ru","*.hosting.myjino.ru","*.landing.myjino.ru","*.spectrum.myjino.ru","*.vps.myjino.ru","jotelulu.cloud","*.triton.zone","*.cns.joyent.com","js.org","kaas.gg","khplay.nl","ktistory.com","kapsi.fi","keymachine.de","kinghost.net","uni5.net","knightpoint.systems","koobin.events","oya.to","kuleuven.cloud","ezproxy.kuleuven.be","co.krd","edu.krd","krellian.net","webthings.io","git-repos.de","lcube-server.de","svn-repos.de","leadpages.co","lpages.co","lpusercontent.com","lelux.site","co.business","co.education","co.events","co.financial","co.network","co.place","co.technology","app.lmpm.com","linkyard.cloud","linkyard-cloud.ch","members.linode.com","*.nodebalancer.linode.com","*.linodeobjects.com","ip.linodeusercontent.com","we.bs","*.user.localcert.dev","localzone.xyz","loginline.app","loginline.dev","loginline.io","loginline.services","loginline.site","servers.run","lohmus.me","krasnik.pl","leczna.pl","lubartow.pl","lublin.pl","poniatowa.pl","swidnik.pl","glug.org.uk","lug.org.uk","lugs.org.uk","barsy.bg","barsy.co.uk","barsyonline.co.uk","barsycenter.com","barsyonline.com","barsy.club","barsy.de","barsy.eu","barsy.in","barsy.info","barsy.io","barsy.me","barsy.menu","barsy.mobi","barsy.net","barsy.online","barsy.org","barsy.pro","barsy.pub","barsy.ro","barsy.shop","barsy.site","barsy.support","barsy.uk","*.magentosite.cloud","mayfirst.info","mayfirst.org","hb.cldmail.ru","cn.vu","mazeplay.com","mcpe.me","mcdir.me","mcdir.ru","mcpre.ru","vps.mcdir.ru","mediatech.by","mediatech.dev","hra.health","miniserver.com","memset.net","messerli.app","*.cloud.metacentrum.cz","custom.metacentrum.cz","flt.cloud.muni.cz","usr.cloud.muni.cz","meteorapp.com","eu.meteorapp.com","co.pl","*.azurecontainer.io","azurewebsites.net","azure-mobile.net","cloudapp.net","azurestaticapps.net","1.azurestaticapps.net","centralus.azurestaticapps.net","eastasia.azurestaticapps.net","eastus2.azurestaticapps.net","westeurope.azurestaticapps.net","westus2.azurestaticapps.net","csx.cc","mintere.site","forte.id","mozilla-iot.org","bmoattachments.org","net.ru","org.ru","pp.ru","hostedpi.com","customer.mythic-beasts.com","caracal.mythic-beasts.com","fentiger.mythic-beasts.com","lynx.mythic-beasts.com","ocelot.mythic-beasts.com","oncilla.mythic-beasts.com","onza.mythic-beasts.com","sphinx.mythic-beasts.com","vs.mythic-beasts.com","x.mythic-beasts.com","yali.mythic-beasts.com","cust.retrosnub.co.uk","ui.nabu.casa","pony.club","of.fashion","in.london","of.london","from.marketing","with.marketing","for.men","repair.men","and.mom","for.mom","for.one","under.one","for.sale","that.win","from.work","to.work","cloud.nospamproxy.com","netlify.app","4u.com","ngrok.io","nh-serv.co.uk","nfshost.com","*.developer.app","noop.app","*.northflank.app","*.build.run","*.code.run","*.database.run","*.migration.run","noticeable.news","dnsking.ch","mypi.co","n4t.co","001www.com","ddnslive.com","myiphost.com","forumz.info","16-b.it","32-b.it","64-b.it","soundcast.me","tcp4.me","dnsup.net","hicam.net","now-dns.net","ownip.net","vpndns.net","dynserv.org","now-dns.org","x443.pw","now-dns.top","ntdll.top","freeddns.us","crafting.xyz","zapto.xyz","nsupdate.info","nerdpol.ovh","blogsyte.com","brasilia.me","cable-modem.org","ciscofreak.com","collegefan.org","couchpotatofries.org","damnserver.com","ddns.me","ditchyourip.com","dnsfor.me","dnsiskinky.com","dvrcam.info","dynns.com","eating-organic.net","fantasyleague.cc","geekgalaxy.com","golffan.us","health-carereform.com","homesecuritymac.com","homesecuritypc.com","hopto.me","ilovecollege.info","loginto.me","mlbfan.org","mmafan.biz","myactivedirectory.com","mydissent.net","myeffect.net","mymediapc.net","mypsx.net","mysecuritycamera.com","mysecuritycamera.net","mysecuritycamera.org","net-freaks.com","nflfan.org","nhlfan.net","no-ip.ca","no-ip.co.uk","no-ip.net","noip.us","onthewifi.com","pgafan.net","point2this.com","pointto.us","privatizehealthinsurance.net","quicksytes.com","read-books.org","securitytactics.com","serveexchange.com","servehumour.com","servep2p.com","servesarcasm.com","stufftoread.com","ufcfan.org","unusualperson.com","workisboring.com","3utilities.com","bounceme.net","ddns.net","ddnsking.com","gotdns.ch","hopto.org","myftp.biz","myftp.org","myvnc.com","no-ip.biz","no-ip.info","no-ip.org","noip.me","redirectme.net","servebeer.com","serveblog.net","servecounterstrike.com","serveftp.com","servegame.com","servehalflife.com","servehttp.com","serveirc.com","serveminecraft.net","servemp3.com","servepics.com","servequake.com","sytes.net","webhop.me","zapto.org","stage.nodeart.io","pcloud.host","nyc.mn","static.observableusercontent.com","cya.gg","omg.lol","cloudycluster.net","omniwe.site","service.one","nid.io","opensocial.site","opencraft.hosting","orsites.com","operaunite.com","tech.orange","authgear-staging.com","authgearapps.com","skygearapp.com","outsystemscloud.com","*.webpaas.ovh.net","*.hosting.ovh.net","ownprovider.com","own.pm","*.owo.codes","ox.rs","oy.lc","pgfog.com","pagefrontapp.com","pagexl.com","*.paywhirl.com","bar0.net","bar1.net","bar2.net","rdv.to","art.pl","gliwice.pl","krakow.pl","poznan.pl","wroc.pl","zakopane.pl","pantheonsite.io","gotpantheon.com","mypep.link","perspecta.cloud","lk3.ru","on-web.fr","bc.platform.sh","ent.platform.sh","eu.platform.sh","us.platform.sh","*.platformsh.site","*.tst.site","platter-app.com","platter-app.dev","platterp.us","pdns.page","plesk.page","pleskns.com","dyn53.io","onporter.run","co.bn","postman-echo.com","pstmn.io","mock.pstmn.io","httpbin.org","prequalifyme.today","xen.prgmr.com","priv.at","prvcy.page","*.dweb.link","protonet.io","chirurgiens-dentistes-en-france.fr","byen.site","pubtls.org","pythonanywhere.com","eu.pythonanywhere.com","qoto.io","qualifioapp.com","qbuser.com","cloudsite.builders","instances.spawn.cc","instantcloud.cn","ras.ru","qa2.com","qcx.io","*.sys.qcx.io","dev-myqnapcloud.com","alpha-myqnapcloud.com","myqnapcloud.com","*.quipelements.com","vapor.cloud","vaporcloud.io","rackmaze.com","rackmaze.net","g.vbrplsbx.io","*.on-k3s.io","*.on-rancher.cloud","*.on-rio.io","readthedocs.io","rhcloud.com","app.render.com","onrender.com","repl.co","id.repl.co","repl.run","resindevice.io","devices.resinstaging.io","hzc.io","wellbeingzone.eu","wellbeingzone.co.uk","adimo.co.uk","itcouldbewor.se","git-pages.rit.edu","rocky.page","\u0431\u0438\u0437.\u0440\u0443\u0441","\u043A\u043E\u043C.\u0440\u0443\u0441","\u043A\u0440\u044B\u043C.\u0440\u0443\u0441","\u043C\u0438\u0440.\u0440\u0443\u0441","\u043C\u0441\u043A.\u0440\u0443\u0441","\u043E\u0440\u0433.\u0440\u0443\u0441","\u0441\u0430\u043C\u0430\u0440\u0430.\u0440\u0443\u0441","\u0441\u043E\u0447\u0438.\u0440\u0443\u0441","\u0441\u043F\u0431.\u0440\u0443\u0441","\u044F.\u0440\u0443\u0441","*.builder.code.com","*.dev-builder.code.com","*.stg-builder.code.com","sandcats.io","logoip.de","logoip.com","fr-par-1.baremetal.scw.cloud","fr-par-2.baremetal.scw.cloud","nl-ams-1.baremetal.scw.cloud","fnc.fr-par.scw.cloud","functions.fnc.fr-par.scw.cloud","k8s.fr-par.scw.cloud","nodes.k8s.fr-par.scw.cloud","s3.fr-par.scw.cloud","s3-website.fr-par.scw.cloud","whm.fr-par.scw.cloud","priv.instances.scw.cloud","pub.instances.scw.cloud","k8s.scw.cloud","k8s.nl-ams.scw.cloud","nodes.k8s.nl-ams.scw.cloud","s3.nl-ams.scw.cloud","s3-website.nl-ams.scw.cloud","whm.nl-ams.scw.cloud","k8s.pl-waw.scw.cloud","nodes.k8s.pl-waw.scw.cloud","s3.pl-waw.scw.cloud","s3-website.pl-waw.scw.cloud","scalebook.scw.cloud","smartlabeling.scw.cloud","dedibox.fr","schokokeks.net","gov.scot","service.gov.scot","scrysec.com","firewall-gateway.com","firewall-gateway.de","my-gateway.de","my-router.de","spdns.de","spdns.eu","firewall-gateway.net","my-firewall.org","myfirewall.org","spdns.org","seidat.net","sellfy.store","senseering.net","minisite.ms","magnet.page","biz.ua","co.ua","pp.ua","shiftcrypto.dev","shiftcrypto.io","shiftedit.io","myshopblocks.com","myshopify.com","shopitsite.com","shopware.store","mo-siemens.io","1kapp.com","appchizi.com","applinzi.com","sinaapp.com","vipsinaapp.com","siteleaf.net","bounty-full.com","alpha.bounty-full.com","beta.bounty-full.com","small-web.org","vp4.me","try-snowplow.com","srht.site","stackhero-network.com","musician.io","novecore.site","static.land","dev.static.land","sites.static.land","storebase.store","vps-host.net","atl.jelastic.vps-host.net","njs.jelastic.vps-host.net","ric.jelastic.vps-host.net","playstation-cloud.com","apps.lair.io","*.stolos.io","spacekit.io","customer.speedpartner.de","myspreadshop.at","myspreadshop.com.au","myspreadshop.be","myspreadshop.ca","myspreadshop.ch","myspreadshop.com","myspreadshop.de","myspreadshop.dk","myspreadshop.es","myspreadshop.fi","myspreadshop.fr","myspreadshop.ie","myspreadshop.it","myspreadshop.net","myspreadshop.nl","myspreadshop.no","myspreadshop.pl","myspreadshop.se","myspreadshop.co.uk","api.stdlib.com","storj.farm","utwente.io","soc.srcf.net","user.srcf.net","temp-dns.com","supabase.co","supabase.in","supabase.net","su.paba.se","*.s5y.io","*.sensiosite.cloud","syncloud.it","dscloud.biz","direct.quickconnect.cn","dsmynas.com","familyds.com","diskstation.me","dscloud.me","i234.me","myds.me","synology.me","dscloud.mobi","dsmynas.net","familyds.net","dsmynas.org","familyds.org","vpnplus.to","direct.quickconnect.to","tabitorder.co.il","taifun-dns.de","beta.tailscale.net","ts.net","gda.pl","gdansk.pl","gdynia.pl","med.pl","sopot.pl","site.tb-hosting.com","edugit.io","s3.teckids.org","telebit.app","telebit.io","*.telebit.xyz","gwiddle.co.uk","*.firenet.ch","*.svc.firenet.ch","reservd.com","thingdustdata.com","cust.dev.thingdust.io","cust.disrec.thingdust.io","cust.prod.thingdust.io","cust.testing.thingdust.io","reservd.dev.thingdust.io","reservd.disrec.thingdust.io","reservd.testing.thingdust.io","tickets.io","arvo.network","azimuth.network","tlon.network","torproject.net","pages.torproject.net","bloxcms.com","townnews-staging.com","tbits.me","12hp.at","2ix.at","4lima.at","lima-city.at","12hp.ch","2ix.ch","4lima.ch","lima-city.ch","trafficplex.cloud","de.cool","12hp.de","2ix.de","4lima.de","lima-city.de","1337.pictures","clan.rip","lima-city.rocks","webspace.rocks","lima.zone","*.transurl.be","*.transurl.eu","*.transurl.nl","site.transip.me","tuxfamily.org","dd-dns.de","diskstation.eu","diskstation.org","dray-dns.de","draydns.de","dyn-vpn.de","dynvpn.de","mein-vigor.de","my-vigor.de","my-wan.de","syno-ds.de","synology-diskstation.de","synology-ds.de","typedream.app","pro.typeform.com","uber.space","*.uberspace.de","hk.com","hk.org","ltd.hk","inc.hk","name.pm","sch.tf","biz.wf","sch.wf","org.yt","virtualuser.de","virtual-user.de","upli.io","urown.cloud","dnsupdate.info","lib.de.us","2038.io","vercel.app","vercel.dev","now.sh","router.management","v-info.info","voorloper.cloud","neko.am","nyaa.am","be.ax","cat.ax","es.ax","eu.ax","gg.ax","mc.ax","us.ax","xy.ax","nl.ci","xx.gl","app.gp","blog.gt","de.gt","to.gt","be.gy","cc.hn","blog.kg","io.kg","jp.kg","tv.kg","uk.kg","us.kg","de.ls","at.md","de.md","jp.md","to.md","indie.porn","vxl.sh","ch.tc","me.tc","we.tc","nyan.to","at.vg","blog.vu","dev.vu","me.vu","v.ua","*.vultrobjects.com","wafflecell.com","*.webhare.dev","reserve-online.net","reserve-online.com","bookonline.app","hotelwithflight.com","wedeploy.io","wedeploy.me","wedeploy.sh","remotewd.com","pages.wiardweb.com","wmflabs.org","toolforge.org","wmcloud.org","panel.gg","daemon.panel.gg","messwithdns.com","woltlab-demo.com","myforum.community","community-pro.de","diskussionsbereich.de","community-pro.net","meinforum.net","affinitylottery.org.uk","raffleentry.org.uk","weeklylottery.org.uk","wpenginepowered.com","js.wpenginepowered.com","wixsite.com","editorx.io","half.host","xnbay.com","u2.xnbay.com","u2-local.xnbay.com","cistron.nl","demon.nl","xs4all.space","yandexcloud.net","storage.yandexcloud.net","website.yandexcloud.net","official.academy","yolasite.com","ybo.faith","yombo.me","homelink.one","ybo.party","ybo.review","ybo.science","ybo.trade","ynh.fr","nohost.me","noho.st","za.net","za.org","bss.design","basicserver.io","virtualserver.io","enterprisecloud.nu"]});var wc=ae(ut=>{"use strict";var ka=mi("punycode"),ct={};ct.rules=bc().map(function(e){return{rule:e,suffix:e.replace(/^(\*\.|\!)/,""),punySuffix:-1,wildcard:e.charAt(0)==="*",exception:e.charAt(0)==="!"}});ct.endsWith=function(e,t){return e.indexOf(t,e.length-t.length)!==-1};ct.findRule=function(e){var t=ka.toASCII(e);return ct.rules.reduce(function(a,o){return o.punySuffix===-1&&(o.punySuffix=ka.toASCII(o.suffix)),!ct.endsWith(t,"."+o.punySuffix)&&t!==o.punySuffix?a:o},null)};ut.errorCodes={DOMAIN_TOO_SHORT:"Domain name too short.",DOMAIN_TOO_LONG:"Domain name too long. It should be no more than 255 chars.",LABEL_STARTS_WITH_DASH:"Domain name label can not start with a dash.",LABEL_ENDS_WITH_DASH:"Domain name label can not end with a dash.",LABEL_TOO_LONG:"Domain name label should be at most 63 chars long.",LABEL_TOO_SHORT:"Domain name label should be at least 1 character long.",LABEL_INVALID_CHARS:"Domain name label can only contain alphanumeric characters or dashes."};ct.validate=function(e){var t=ka.toASCII(e);if(t.length<1)return"DOMAIN_TOO_SHORT";if(t.length>255)return"DOMAIN_TOO_LONG";for(var a=t.split("."),o,r=0;r<a.length;++r){if(o=a[r],!o.length)return"LABEL_TOO_SHORT";if(o.length>63)return"LABEL_TOO_LONG";if(o.charAt(0)==="-")return"LABEL_STARTS_WITH_DASH";if(o.charAt(o.length-1)==="-")return"LABEL_ENDS_WITH_DASH";if(!/^[a-z0-9\-]+$/.test(o))return"LABEL_INVALID_CHARS"}};ut.parse=function(e){if(typeof e!="string")throw new TypeError("Domain name must be a string.");var t=e.slice(0).toLowerCase();t.charAt(t.length-1)==="."&&(t=t.slice(0,t.length-1));var a=ct.validate(t);if(a)return{input:e,error:{message:ut.errorCodes[a],code:a}};var o={input:e,tld:null,sld:null,domain:null,subdomain:null,listed:!1},r=t.split(".");if(r[r.length-1]==="local")return o;var i=n(function(){return/xn--/.test(t)&&(o.domain&&(o.domain=ka.toASCII(o.domain)),o.subdomain&&(o.subdomain=ka.toASCII(o.subdomain))),o},"handlePunycode"),s=ct.findRule(t);if(!s)return r.length<2?o:(o.tld=r.pop(),o.sld=r.pop(),o.domain=[o.sld,o.tld].join("."),r.length&&(o.subdomain=r.pop()),i());o.listed=!0;var c=s.suffix.split("."),u=r.slice(0,r.length-c.length);return s.exception&&u.push(c.shift()),o.tld=c.join("."),!u.length||(s.wildcard&&(c.unshift(u.pop()),o.tld=c.join(".")),!u.length)||(o.sld=u.pop(),o.domain=[o.sld,o.tld].join("."),u.length&&(o.subdomain=u.join("."))),i()};ut.get=function(e){return e&&ut.parse(e).domain||null};ut.isValid=function(e){var t=ut.parse(e);return!!(t.domain&&t.listed)}});var Fn=ae(vc=>{"use strict";var Fd=wc(),jc=["local","example","invalid","localhost","test"],Md=["localhost","invalid"];function Ud(e,t={}){let a=e.split("."),o=a[a.length-1],r=!!t.allowSpecialUseDomain,i=!!t.ignoreError;if(r&&jc.includes(o)){if(a.length>1)return`${a[a.length-2]}.${o}`;if(Md.includes(o))return`${o}`}if(!i&&jc.includes(o))throw new Error(`Cookie has domain set to the public suffix "${o}" which is a special use domain. To allow this, configure your CookieJar with {allowSpecialUseDomain:true, rejectPublicSuffixes: false}.`);return Fd.get(e)}n(Ud,"getPublicSuffix");vc.getPublicSuffix=Ud});var Un=ae(Ec=>{"use strict";var Mn=class{static{n(this,"Store")}constructor(){this.synchronous=!1}findCookie(t,a,o,r){throw new Error("findCookie is not implemented")}findCookies(t,a,o,r){throw new Error("findCookies is not implemented")}putCookie(t,a){throw new Error("putCookie is not implemented")}updateCookie(t,a,o){throw new Error("updateCookie is not implemented")}removeCookie(t,a,o,r){throw new Error("removeCookie is not implemented")}removeCookies(t,a,o){throw new Error("removeCookies is not implemented")}removeAllCookies(t){throw new Error("removeAllCookies is not implemented")}getAllCookies(t){throw new Error("getAllCookies is not implemented (therefore jar cannot be serialized)")}};Ec.Store=Mn});var Kn=ae(qn=>{"use strict";qn.fromCallback=function(e){return Object.defineProperty(function(){if(typeof arguments[arguments.length-1]=="function")e.apply(this,arguments);else return new Promise((t,a)=>{arguments[arguments.length]=(o,r)=>{if(o)return a(o);t(r)},arguments.length++,e.apply(this,arguments)})},"name",{value:e.name})};qn.fromPromise=function(e){return Object.defineProperty(function(){let t=arguments[arguments.length-1];if(typeof t!="function")return e.apply(this,arguments);delete arguments[arguments.length-1],arguments.length--,e.apply(this,arguments).then(a=>t(null,a),t)},"name",{value:e.name})}});var Wn=ae(xc=>{"use strict";var qd=Fn();function Kd(e,t){let a=qd.getPublicSuffix(e,{allowSpecialUseDomain:t});if(!a)return null;if(a==e)return[e];e.slice(-1)=="."&&(e=e.slice(0,-1));let r=e.slice(0,-(a.length+1)).split(".").reverse(),i=a,s=[i];for(;r.length;)i=`${r.shift()}.${i}`,s.push(i);return s}n(Kd,"permuteDomain");xc.permuteDomain=Kd});var Gn=ae(_c=>{"use strict";function Wd(e,t){return t===e||e.indexOf(t)===0&&(t.substr(-1)==="/"||e.substr(t.length,1)==="/")}n(Wd,"pathMatch");_c.pathMatch=Wd});var Xn=ae(Yn=>{"use strict";function Cc(){try{return mi("util")}catch{return null}}n(Cc,"requireUtil");function Gd(){return Symbol.for("nodejs.util.inspect.custom")}n(Gd,"lookupCustomInspectSymbol");function Yd(e){let a=(e.requireUtil||Cc)();return a?a.inspect.custom:null}n(Yd,"tryReadingCustomSymbolFromUtilInspect");Yn.getUtilInspect=n(function(t,a={}){let r=(a.requireUtil||Cc)();return n(function(s,c,u){return r?r.inspect(s,c,u):t(s)},"inspect")},"getUtilInspect");Yn.getCustomInspectSymbol=n(function(t={}){return(t.lookupCustomInspectSymbol||Gd)()||Yd(t)},"getCustomInspectSymbol")});var Sc=ae(Zn=>{"use strict";var{fromCallback:Xd}=Kn(),Zd=Un().Store,Jd=Wn().permuteDomain,Qd=Gn().pathMatch,{getCustomInspectSymbol:eh,getUtilInspect:th}=Xn(),ya=class extends Zd{static{n(this,"MemoryCookieStore")}constructor(){super(),this.synchronous=!0,this.idx=Object.create(null);let t=eh();t&&(this[t]=this.inspect)}inspect(){return`{ idx: ${{inspect:th(Ac)}.inspect(this.idx,!1,2)} }`}findCookie(t,a,o,r){return!this.idx[t]||!this.idx[t][a]?r(null,void 0):r(null,this.idx[t][a][o]||null)}findCookies(t,a,o,r){let i=[];if(typeof o=="function"&&(r=o,o=!0),!t)return r(null,[]);let s;a?s=n(function(m){Object.keys(m).forEach(l=>{if(Qd(a,l)){let h=m[l];for(let g in h)i.push(h[g])}})},"matchRFC"):s=n(function(m){for(let l in m){let h=m[l];for(let g in h)i.push(h[g])}},"matchAll");let c=Jd(t,o)||[t],u=this.idx;c.forEach(p=>{let m=u[p];m&&s(m)}),r(null,i)}putCookie(t,a){this.idx[t.domain]||(this.idx[t.domain]=Object.create(null)),this.idx[t.domain][t.path]||(this.idx[t.domain][t.path]=Object.create(null)),this.idx[t.domain][t.path][t.key]=t,a(null)}updateCookie(t,a,o){this.putCookie(a,o)}removeCookie(t,a,o,r){this.idx[t]&&this.idx[t][a]&&this.idx[t][a][o]&&delete this.idx[t][a][o],r(null)}removeCookies(t,a,o){return this.idx[t]&&(a?delete this.idx[t][a]:delete this.idx[t]),o(null)}removeAllCookies(t){return this.idx=Object.create(null),t(null)}getAllCookies(t){let a=[],o=this.idx;Object.keys(o).forEach(i=>{Object.keys(o[i]).forEach(c=>{Object.keys(o[i][c]).forEach(p=>{p!==null&&a.push(o[i][c][p])})})}),a.sort((i,s)=>(i.creationIndex||0)-(s.creationIndex||0)),t(null,a)}};["findCookie","findCookies","putCookie","updateCookie","removeCookie","removeCookies","removeAllCookies","getAllCookies"].forEach(e=>{ya.prototype[e]=Xd(ya.prototype[e])});Zn.MemoryCookieStore=ya;function Ac(e){let t=Object.keys(e);if(t.length===0)return"[Object: null prototype] {}";let a=`[Object: null prototype] {
3
- `;return Object.keys(e).forEach((o,r)=>{a+=ah(o,e[o]),r<t.length-1&&(a+=","),a+=`
4
- `}),a+="}",a}n(Ac,"inspectFallback");function ah(e,t){let a=" ",o=`${a}'${e}': [Object: null prototype] {
5
- `;return Object.keys(t).forEach((r,i,s)=>{o+=oh(r,t[r]),i<s.length-1&&(o+=","),o+=`
6
- `}),o+=`${a}}`,o}n(ah,"formatDomain");function oh(e,t){let a=" ",o=`${a}'${e}': [Object: null prototype] {
2
+ import{A as Si,C as Jo,E as Ti,F as Ii,H as zi,I as Oi,J as Ni,K as Di,a as Go,b as ki,d as Yo,e as yi,f as bi,i as Xo,j as Zo,n as wi,p as ji,r as vi,s as Ei,w as xi,x as _i,y as Ci,z as Ai}from"../chunk-4JXRK4YH.js";import{a as Bi,b as Qo}from"../chunk-DS2LOABN.js";import{a as Pi,c as Ri}from"../chunk-FMZDKD72.js";import{D as Wo,Ld as hi,Qc as Sm,Rc as Tm,W as di,Zd as Im,ce as fi,he as gi}from"../chunk-LZ2L3BVP.js";import"../chunk-RA75ESSD.js";import{a as n,b as mi,c as Am,d as ae,e as bt,f as na,g as pi}from"../chunk-G5BIPHMS.js";var oc={};bt(oc,{decode:()=>Rn,default:()=>Ad,encode:()=>Ln,toASCII:()=>ac,toUnicode:()=>tc,ucs2decode:()=>Pn,ucs2encode:()=>Qs});function st(e){throw new RangeError(Ed[e])}function xd(e,t){let a=[],o=e.length;for(;o--;)a[o]=t(e[o]);return a}function Js(e,t){let a=e.split("@"),o="";a.length>1&&(o=a[0]+"@",e=a[1]),e=e.replace(vd,".");let r=e.split("."),i=xd(r,t).join(".");return o+i}function Pn(e){let t=[],a=0,o=e.length;for(;a<o;){let r=e.charCodeAt(a++);if(r>=55296&&r<=56319&&a<o){let i=e.charCodeAt(a++);(i&64512)==56320?t.push(((r&1023)<<10)+(i&1023)+65536):(t.push(r),a--)}else t.push(r)}return t}var Zs,wd,jd,vd,Ed,Dn,Ie,Bn,Qs,_d,Xs,ec,Rn,Ln,tc,ac,Cd,Ad,nc=Am(()=>{"use strict";Zs="-",wd=/^xn--/,jd=/[^\0-\x7F]/,vd=/[\x2E\u3002\uFF0E\uFF61]/g,Ed={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},Dn=35,Ie=Math.floor,Bn=String.fromCharCode;n(st,"error");n(xd,"map");n(Js,"mapDomain");n(Pn,"ucs2decode");Qs=n(e=>String.fromCodePoint(...e),"ucs2encode"),_d=n(function(e){return e>=48&&e<58?26+(e-48):e>=65&&e<91?e-65:e>=97&&e<123?e-97:36},"basicToDigit"),Xs=n(function(e,t){return e+22+75*(e<26)-((t!=0)<<5)},"digitToBasic"),ec=n(function(e,t,a){let o=0;for(e=a?Ie(e/700):e>>1,e+=Ie(e/t);e>Dn*26>>1;o+=36)e=Ie(e/Dn);return Ie(o+(Dn+1)*e/(e+38))},"adapt"),Rn=n(function(e){let t=[],a=e.length,o=0,r=128,i=72,s=e.lastIndexOf(Zs);s<0&&(s=0);for(let c=0;c<s;++c)e.charCodeAt(c)>=128&&st("not-basic"),t.push(e.charCodeAt(c));for(let c=s>0?s+1:0;c<a;){let u=o;for(let m=1,l=36;;l+=36){c>=a&&st("invalid-input");let h=_d(e.charCodeAt(c++));h>=36&&st("invalid-input"),h>Ie((2147483647-o)/m)&&st("overflow"),o+=h*m;let g=l<=i?1:l>=i+26?26:l-i;if(h<g)break;let f=36-g;m>Ie(2147483647/f)&&st("overflow"),m*=f}let p=t.length+1;i=ec(o-u,p,u==0),Ie(o/p)>2147483647-r&&st("overflow"),r+=Ie(o/p),o%=p,t.splice(o++,0,r)}return String.fromCodePoint(...t)},"decode"),Ln=n(function(e){let t=[];e=Pn(e);let a=e.length,o=128,r=0,i=72;for(let u of e)u<128&&t.push(Bn(u));let s=t.length,c=s;for(s&&t.push(Zs);c<a;){let u=2147483647;for(let m of e)m>=o&&m<u&&(u=m);let p=c+1;u-o>Ie((2147483647-r)/p)&&st("overflow"),r+=(u-o)*p,o=u;for(let m of e)if(m<o&&++r>2147483647&&st("overflow"),m===o){let l=r;for(let h=36;;h+=36){let g=h<=i?1:h>=i+26?26:h-i;if(l<g)break;let f=l-g,d=36-g;t.push(Bn(Xs(g+f%d,0))),l=Ie(f/d)}t.push(Bn(Xs(l,0))),i=ec(r,p,c===s),r=0,++c}++r,++o}return t.join("")},"encode"),tc=n(function(e){return Js(e,function(t){return wd.test(t)?Rn(t.slice(4).toLowerCase()):t})},"toUnicode"),ac=n(function(e){return Js(e,function(t){return jd.test(t)?"xn--"+Ln(t):t})},"toASCII"),Cd={version:"2.3.1",ucs2:{decode:Pn,encode:Qs},decode:Rn,encode:Ln,toASCII:ac,toUnicode:tc},Ad=Cd});var ic=ae((qb,rc)=>{"use strict";rc.exports=n(function(t,a){if(a=a.split(":")[0],t=+t,!t)return!1;switch(a){case"http":case"ws":return t!==80;case"https":case"wss":return t!==443;case"ftp":return t!==21;case"gopher":return t!==70;case"file":return!1}return t!==0},"required")});var uc=ae(Vn=>{"use strict";var Sd=Object.prototype.hasOwnProperty,Td;function sc(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}n(sc,"decode");function cc(e){try{return encodeURIComponent(e)}catch{return null}}n(cc,"encode");function Id(e){for(var t=/([^=?#&]+)=?([^&]*)/g,a={},o;o=t.exec(e);){var r=sc(o[1]),i=sc(o[2]);r===null||i===null||r in a||(a[r]=i)}return a}n(Id,"querystring");function zd(e,t){t=t||"";var a=[],o,r;typeof t!="string"&&(t="?");for(r in e)if(Sd.call(e,r)){if(o=e[r],!o&&(o===null||o===Td||isNaN(o))&&(o=""),r=cc(r),o=cc(o),r===null||o===null)continue;a.push(r+"="+o)}return a.length?t+a.join("&"):""}n(zd,"querystringify");Vn.stringify=zd;Vn.parse=Id});var kc=ae((Yb,gc)=>{"use strict";var mc=ic(),ho=uc(),Od=/^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/,pc=/[\n\r\t]/g,Nd=/^[A-Za-z][A-Za-z0-9+-.]*:\/\//,dc=/:\d+$/,Dd=/^([a-z][a-z0-9.+-]*:)?(\/\/)?([\\/]+)?([\S\s]*)/i,Bd=/^[a-zA-Z]:/;function $n(e){return(e||"").toString().replace(Od,"")}n($n,"trimLeft");var Hn=[["#","hash"],["?","query"],n(function(t,a){return ze(a.protocol)?t.replace(/\\/g,"/"):t},"sanitize"),["/","pathname"],["@","auth",1],[NaN,"host",void 0,1,1],[/:(\d*)$/,"port",void 0,1],[NaN,"hostname",void 0,1,1]],lc={hash:1,query:1};function hc(e){var t;typeof window<"u"?t=window:typeof global<"u"?t=global:typeof self<"u"?t=self:t={};var a=t.location||{};e=e||a;var o={},r=typeof e,i;if(e.protocol==="blob:")o=new Oe(unescape(e.pathname),{});else if(r==="string"){o=new Oe(e,{});for(i in lc)delete o[i]}else if(r==="object"){for(i in e)i in lc||(o[i]=e[i]);o.slashes===void 0&&(o.slashes=Nd.test(e.href))}return o}n(hc,"lolcation");function ze(e){return e==="file:"||e==="ftp:"||e==="http:"||e==="https:"||e==="ws:"||e==="wss:"}n(ze,"isSpecial");function fc(e,t){e=$n(e),e=e.replace(pc,""),t=t||{};var a=Dd.exec(e),o=a[1]?a[1].toLowerCase():"",r=!!a[2],i=!!a[3],s=0,c;return r?i?(c=a[2]+a[3]+a[4],s=a[2].length+a[3].length):(c=a[2]+a[4],s=a[2].length):i?(c=a[3]+a[4],s=a[3].length):c=a[4],o==="file:"?s>=2&&(c=c.slice(2)):ze(o)?c=a[4]:o?r&&(c=c.slice(2)):s>=2&&ze(t.protocol)&&(c=a[4]),{protocol:o,slashes:r||ze(o),slashesCount:s,rest:c}}n(fc,"extractProtocol");function Pd(e,t){if(e==="")return t;for(var a=(t||"/").split("/").slice(0,-1).concat(e.split("/")),o=a.length,r=a[o-1],i=!1,s=0;o--;)a[o]==="."?a.splice(o,1):a[o]===".."?(a.splice(o,1),s++):s&&(o===0&&(i=!0),a.splice(o,1),s--);return i&&a.unshift(""),(r==="."||r==="..")&&a.push(""),a.join("/")}n(Pd,"resolve");function Oe(e,t,a){if(e=$n(e),e=e.replace(pc,""),!(this instanceof Oe))return new Oe(e,t,a);var o,r,i,s,c,u,p=Hn.slice(),m=typeof t,l=this,h=0;for(m!=="object"&&m!=="string"&&(a=t,t=null),a&&typeof a!="function"&&(a=ho.parse),t=hc(t),r=fc(e||"",t),o=!r.protocol&&!r.slashes,l.slashes=r.slashes||o&&t.slashes,l.protocol=r.protocol||t.protocol||"",e=r.rest,(r.protocol==="file:"&&(r.slashesCount!==2||Bd.test(e))||!r.slashes&&(r.protocol||r.slashesCount<2||!ze(l.protocol)))&&(p[3]=[/(.*)/,"pathname"]);h<p.length;h++){if(s=p[h],typeof s=="function"){e=s(e,l);continue}i=s[0],u=s[1],i!==i?l[u]=e:typeof i=="string"?(c=i==="@"?e.lastIndexOf(i):e.indexOf(i),~c&&(typeof s[2]=="number"?(l[u]=e.slice(0,c),e=e.slice(c+s[2])):(l[u]=e.slice(c),e=e.slice(0,c)))):(c=i.exec(e))&&(l[u]=c[1],e=e.slice(0,c.index)),l[u]=l[u]||o&&s[3]&&t[u]||"",s[4]&&(l[u]=l[u].toLowerCase())}a&&(l.query=a(l.query)),o&&t.slashes&&l.pathname.charAt(0)!=="/"&&(l.pathname!==""||t.pathname!=="")&&(l.pathname=Pd(l.pathname,t.pathname)),l.pathname.charAt(0)!=="/"&&ze(l.protocol)&&(l.pathname="/"+l.pathname),mc(l.port,l.protocol)||(l.host=l.hostname,l.port=""),l.username=l.password="",l.auth&&(c=l.auth.indexOf(":"),~c?(l.username=l.auth.slice(0,c),l.username=encodeURIComponent(decodeURIComponent(l.username)),l.password=l.auth.slice(c+1),l.password=encodeURIComponent(decodeURIComponent(l.password))):l.username=encodeURIComponent(decodeURIComponent(l.auth)),l.auth=l.password?l.username+":"+l.password:l.username),l.origin=l.protocol!=="file:"&&ze(l.protocol)&&l.host?l.protocol+"//"+l.host:"null",l.href=l.toString()}n(Oe,"Url");function Rd(e,t,a){var o=this;switch(e){case"query":typeof t=="string"&&t.length&&(t=(a||ho.parse)(t)),o[e]=t;break;case"port":o[e]=t,mc(t,o.protocol)?t&&(o.host=o.hostname+":"+t):(o.host=o.hostname,o[e]="");break;case"hostname":o[e]=t,o.port&&(t+=":"+o.port),o.host=t;break;case"host":o[e]=t,dc.test(t)?(t=t.split(":"),o.port=t.pop(),o.hostname=t.join(":")):(o.hostname=t,o.port="");break;case"protocol":o.protocol=t.toLowerCase(),o.slashes=!a;break;case"pathname":case"hash":if(t){var r=e==="pathname"?"/":"#";o[e]=t.charAt(0)!==r?r+t:t}else o[e]=t;break;case"username":case"password":o[e]=encodeURIComponent(t);break;case"auth":var i=t.indexOf(":");~i?(o.username=t.slice(0,i),o.username=encodeURIComponent(decodeURIComponent(o.username)),o.password=t.slice(i+1),o.password=encodeURIComponent(decodeURIComponent(o.password))):o.username=encodeURIComponent(decodeURIComponent(t))}for(var s=0;s<Hn.length;s++){var c=Hn[s];c[4]&&(o[c[1]]=o[c[1]].toLowerCase())}return o.auth=o.password?o.username+":"+o.password:o.username,o.origin=o.protocol!=="file:"&&ze(o.protocol)&&o.host?o.protocol+"//"+o.host:"null",o.href=o.toString(),o}n(Rd,"set");function Ld(e){(!e||typeof e!="function")&&(e=ho.stringify);var t,a=this,o=a.host,r=a.protocol;r&&r.charAt(r.length-1)!==":"&&(r+=":");var i=r+(a.protocol&&a.slashes||ze(a.protocol)?"//":"");return a.username?(i+=a.username,a.password&&(i+=":"+a.password),i+="@"):a.password?(i+=":"+a.password,i+="@"):a.protocol!=="file:"&&ze(a.protocol)&&!o&&a.pathname!=="/"&&(i+="@"),(o[o.length-1]===":"||dc.test(a.hostname)&&!a.port)&&(o+=":"),i+=o+a.pathname,t=typeof a.query=="object"?e(a.query):a.query,t&&(i+=t.charAt(0)!=="?"?"?"+t:t),a.hash&&(i+=a.hash),i}n(Ld,"toString");Oe.prototype={set:Rd,toString:Ld};Oe.extractProtocol=fc;Oe.location=hc;Oe.trimLeft=$n;Oe.qs=ho;gc.exports=Oe});var yc=ae((Zb,Vd)=>{Vd.exports=["ac","com.ac","edu.ac","gov.ac","net.ac","mil.ac","org.ac","ad","nom.ad","ae","co.ae","net.ae","org.ae","sch.ae","ac.ae","gov.ae","mil.ae","aero","accident-investigation.aero","accident-prevention.aero","aerobatic.aero","aeroclub.aero","aerodrome.aero","agents.aero","aircraft.aero","airline.aero","airport.aero","air-surveillance.aero","airtraffic.aero","air-traffic-control.aero","ambulance.aero","amusement.aero","association.aero","author.aero","ballooning.aero","broker.aero","caa.aero","cargo.aero","catering.aero","certification.aero","championship.aero","charter.aero","civilaviation.aero","club.aero","conference.aero","consultant.aero","consulting.aero","control.aero","council.aero","crew.aero","design.aero","dgca.aero","educator.aero","emergency.aero","engine.aero","engineer.aero","entertainment.aero","equipment.aero","exchange.aero","express.aero","federation.aero","flight.aero","fuel.aero","gliding.aero","government.aero","groundhandling.aero","group.aero","hanggliding.aero","homebuilt.aero","insurance.aero","journal.aero","journalist.aero","leasing.aero","logistics.aero","magazine.aero","maintenance.aero","media.aero","microlight.aero","modelling.aero","navigation.aero","parachuting.aero","paragliding.aero","passenger-association.aero","pilot.aero","press.aero","production.aero","recreation.aero","repbody.aero","res.aero","research.aero","rotorcraft.aero","safety.aero","scientist.aero","services.aero","show.aero","skydiving.aero","software.aero","student.aero","trader.aero","trading.aero","trainer.aero","union.aero","workinggroup.aero","works.aero","af","gov.af","com.af","org.af","net.af","edu.af","ag","com.ag","org.ag","net.ag","co.ag","nom.ag","ai","off.ai","com.ai","net.ai","org.ai","al","com.al","edu.al","gov.al","mil.al","net.al","org.al","am","co.am","com.am","commune.am","net.am","org.am","ao","ed.ao","gv.ao","og.ao","co.ao","pb.ao","it.ao","aq","ar","bet.ar","com.ar","coop.ar","edu.ar","gob.ar","gov.ar","int.ar","mil.ar","musica.ar","mutual.ar","net.ar","org.ar","senasa.ar","tur.ar","arpa","e164.arpa","in-addr.arpa","ip6.arpa","iris.arpa","uri.arpa","urn.arpa","as","gov.as","asia","at","ac.at","co.at","gv.at","or.at","sth.ac.at","au","com.au","net.au","org.au","edu.au","gov.au","asn.au","id.au","info.au","conf.au","oz.au","act.au","nsw.au","nt.au","qld.au","sa.au","tas.au","vic.au","wa.au","act.edu.au","catholic.edu.au","nsw.edu.au","nt.edu.au","qld.edu.au","sa.edu.au","tas.edu.au","vic.edu.au","wa.edu.au","qld.gov.au","sa.gov.au","tas.gov.au","vic.gov.au","wa.gov.au","schools.nsw.edu.au","aw","com.aw","ax","az","com.az","net.az","int.az","gov.az","org.az","edu.az","info.az","pp.az","mil.az","name.az","pro.az","biz.az","ba","com.ba","edu.ba","gov.ba","mil.ba","net.ba","org.ba","bb","biz.bb","co.bb","com.bb","edu.bb","gov.bb","info.bb","net.bb","org.bb","store.bb","tv.bb","*.bd","be","ac.be","bf","gov.bf","bg","a.bg","b.bg","c.bg","d.bg","e.bg","f.bg","g.bg","h.bg","i.bg","j.bg","k.bg","l.bg","m.bg","n.bg","o.bg","p.bg","q.bg","r.bg","s.bg","t.bg","u.bg","v.bg","w.bg","x.bg","y.bg","z.bg","0.bg","1.bg","2.bg","3.bg","4.bg","5.bg","6.bg","7.bg","8.bg","9.bg","bh","com.bh","edu.bh","net.bh","org.bh","gov.bh","bi","co.bi","com.bi","edu.bi","or.bi","org.bi","biz","bj","asso.bj","barreau.bj","gouv.bj","bm","com.bm","edu.bm","gov.bm","net.bm","org.bm","bn","com.bn","edu.bn","gov.bn","net.bn","org.bn","bo","com.bo","edu.bo","gob.bo","int.bo","org.bo","net.bo","mil.bo","tv.bo","web.bo","academia.bo","agro.bo","arte.bo","blog.bo","bolivia.bo","ciencia.bo","cooperativa.bo","democracia.bo","deporte.bo","ecologia.bo","economia.bo","empresa.bo","indigena.bo","industria.bo","info.bo","medicina.bo","movimiento.bo","musica.bo","natural.bo","nombre.bo","noticias.bo","patria.bo","politica.bo","profesional.bo","plurinacional.bo","pueblo.bo","revista.bo","salud.bo","tecnologia.bo","tksat.bo","transporte.bo","wiki.bo","br","9guacu.br","abc.br","adm.br","adv.br","agr.br","aju.br","am.br","anani.br","aparecida.br","app.br","arq.br","art.br","ato.br","b.br","barueri.br","belem.br","bhz.br","bib.br","bio.br","blog.br","bmd.br","boavista.br","bsb.br","campinagrande.br","campinas.br","caxias.br","cim.br","cng.br","cnt.br","com.br","contagem.br","coop.br","coz.br","cri.br","cuiaba.br","curitiba.br","def.br","des.br","det.br","dev.br","ecn.br","eco.br","edu.br","emp.br","enf.br","eng.br","esp.br","etc.br","eti.br","far.br","feira.br","flog.br","floripa.br","fm.br","fnd.br","fortal.br","fot.br","foz.br","fst.br","g12.br","geo.br","ggf.br","goiania.br","gov.br","ac.gov.br","al.gov.br","am.gov.br","ap.gov.br","ba.gov.br","ce.gov.br","df.gov.br","es.gov.br","go.gov.br","ma.gov.br","mg.gov.br","ms.gov.br","mt.gov.br","pa.gov.br","pb.gov.br","pe.gov.br","pi.gov.br","pr.gov.br","rj.gov.br","rn.gov.br","ro.gov.br","rr.gov.br","rs.gov.br","sc.gov.br","se.gov.br","sp.gov.br","to.gov.br","gru.br","imb.br","ind.br","inf.br","jab.br","jampa.br","jdf.br","joinville.br","jor.br","jus.br","leg.br","lel.br","log.br","londrina.br","macapa.br","maceio.br","manaus.br","maringa.br","mat.br","med.br","mil.br","morena.br","mp.br","mus.br","natal.br","net.br","niteroi.br","*.nom.br","not.br","ntr.br","odo.br","ong.br","org.br","osasco.br","palmas.br","poa.br","ppg.br","pro.br","psc.br","psi.br","pvh.br","qsl.br","radio.br","rec.br","recife.br","rep.br","ribeirao.br","rio.br","riobranco.br","riopreto.br","salvador.br","sampa.br","santamaria.br","santoandre.br","saobernardo.br","saogonca.br","seg.br","sjc.br","slg.br","slz.br","sorocaba.br","srv.br","taxi.br","tc.br","tec.br","teo.br","the.br","tmp.br","trd.br","tur.br","tv.br","udi.br","vet.br","vix.br","vlog.br","wiki.br","zlg.br","bs","com.bs","net.bs","org.bs","edu.bs","gov.bs","bt","com.bt","edu.bt","gov.bt","net.bt","org.bt","bv","bw","co.bw","org.bw","by","gov.by","mil.by","com.by","of.by","bz","com.bz","net.bz","org.bz","edu.bz","gov.bz","ca","ab.ca","bc.ca","mb.ca","nb.ca","nf.ca","nl.ca","ns.ca","nt.ca","nu.ca","on.ca","pe.ca","qc.ca","sk.ca","yk.ca","gc.ca","cat","cc","cd","gov.cd","cf","cg","ch","ci","org.ci","or.ci","com.ci","co.ci","edu.ci","ed.ci","ac.ci","net.ci","go.ci","asso.ci","a\xE9roport.ci","int.ci","presse.ci","md.ci","gouv.ci","*.ck","!www.ck","cl","co.cl","gob.cl","gov.cl","mil.cl","cm","co.cm","com.cm","gov.cm","net.cm","cn","ac.cn","com.cn","edu.cn","gov.cn","net.cn","org.cn","mil.cn","\u516C\u53F8.cn","\u7F51\u7EDC.cn","\u7DB2\u7D61.cn","ah.cn","bj.cn","cq.cn","fj.cn","gd.cn","gs.cn","gz.cn","gx.cn","ha.cn","hb.cn","he.cn","hi.cn","hl.cn","hn.cn","jl.cn","js.cn","jx.cn","ln.cn","nm.cn","nx.cn","qh.cn","sc.cn","sd.cn","sh.cn","sn.cn","sx.cn","tj.cn","xj.cn","xz.cn","yn.cn","zj.cn","hk.cn","mo.cn","tw.cn","co","arts.co","com.co","edu.co","firm.co","gov.co","info.co","int.co","mil.co","net.co","nom.co","org.co","rec.co","web.co","com","coop","cr","ac.cr","co.cr","ed.cr","fi.cr","go.cr","or.cr","sa.cr","cu","com.cu","edu.cu","org.cu","net.cu","gov.cu","inf.cu","cv","com.cv","edu.cv","int.cv","nome.cv","org.cv","cw","com.cw","edu.cw","net.cw","org.cw","cx","gov.cx","cy","ac.cy","biz.cy","com.cy","ekloges.cy","gov.cy","ltd.cy","mil.cy","net.cy","org.cy","press.cy","pro.cy","tm.cy","cz","de","dj","dk","dm","com.dm","net.dm","org.dm","edu.dm","gov.dm","do","art.do","com.do","edu.do","gob.do","gov.do","mil.do","net.do","org.do","sld.do","web.do","dz","art.dz","asso.dz","com.dz","edu.dz","gov.dz","org.dz","net.dz","pol.dz","soc.dz","tm.dz","ec","com.ec","info.ec","net.ec","fin.ec","k12.ec","med.ec","pro.ec","org.ec","edu.ec","gov.ec","gob.ec","mil.ec","edu","ee","edu.ee","gov.ee","riik.ee","lib.ee","med.ee","com.ee","pri.ee","aip.ee","org.ee","fie.ee","eg","com.eg","edu.eg","eun.eg","gov.eg","mil.eg","name.eg","net.eg","org.eg","sci.eg","*.er","es","com.es","nom.es","org.es","gob.es","edu.es","et","com.et","gov.et","org.et","edu.et","biz.et","name.et","info.et","net.et","eu","fi","aland.fi","fj","ac.fj","biz.fj","com.fj","gov.fj","info.fj","mil.fj","name.fj","net.fj","org.fj","pro.fj","*.fk","com.fm","edu.fm","net.fm","org.fm","fm","fo","fr","asso.fr","com.fr","gouv.fr","nom.fr","prd.fr","tm.fr","aeroport.fr","avocat.fr","avoues.fr","cci.fr","chambagri.fr","chirurgiens-dentistes.fr","experts-comptables.fr","geometre-expert.fr","greta.fr","huissier-justice.fr","medecin.fr","notaires.fr","pharmacien.fr","port.fr","veterinaire.fr","ga","gb","edu.gd","gov.gd","gd","ge","com.ge","edu.ge","gov.ge","org.ge","mil.ge","net.ge","pvt.ge","gf","gg","co.gg","net.gg","org.gg","gh","com.gh","edu.gh","gov.gh","org.gh","mil.gh","gi","com.gi","ltd.gi","gov.gi","mod.gi","edu.gi","org.gi","gl","co.gl","com.gl","edu.gl","net.gl","org.gl","gm","gn","ac.gn","com.gn","edu.gn","gov.gn","org.gn","net.gn","gov","gp","com.gp","net.gp","mobi.gp","edu.gp","org.gp","asso.gp","gq","gr","com.gr","edu.gr","net.gr","org.gr","gov.gr","gs","gt","com.gt","edu.gt","gob.gt","ind.gt","mil.gt","net.gt","org.gt","gu","com.gu","edu.gu","gov.gu","guam.gu","info.gu","net.gu","org.gu","web.gu","gw","gy","co.gy","com.gy","edu.gy","gov.gy","net.gy","org.gy","hk","com.hk","edu.hk","gov.hk","idv.hk","net.hk","org.hk","\u516C\u53F8.hk","\u6559\u80B2.hk","\u654E\u80B2.hk","\u653F\u5E9C.hk","\u500B\u4EBA.hk","\u4E2A\uFFFD\uFFFD.hk","\u7B87\u4EBA.hk","\u7DB2\u7EDC.hk","\u7F51\u7EDC.hk","\u7EC4\u7E54.hk","\u7DB2\u7D61.hk","\u7F51\u7D61.hk","\u7EC4\u7EC7.hk","\u7D44\u7E54.hk","\u7D44\u7EC7.hk","hm","hn","com.hn","edu.hn","org.hn","net.hn","mil.hn","gob.hn","hr","iz.hr","from.hr","name.hr","com.hr","ht","com.ht","shop.ht","firm.ht","info.ht","adult.ht","net.ht","pro.ht","org.ht","med.ht","art.ht","coop.ht","pol.ht","asso.ht","edu.ht","rel.ht","gouv.ht","perso.ht","hu","co.hu","info.hu","org.hu","priv.hu","sport.hu","tm.hu","2000.hu","agrar.hu","bolt.hu","casino.hu","city.hu","erotica.hu","erotika.hu","film.hu","forum.hu","games.hu","hotel.hu","ingatlan.hu","jogasz.hu","konyvelo.hu","lakas.hu","media.hu","news.hu","reklam.hu","sex.hu","shop.hu","suli.hu","szex.hu","tozsde.hu","utazas.hu","video.hu","id","ac.id","biz.id","co.id","desa.id","go.id","mil.id","my.id","net.id","or.id","ponpes.id","sch.id","web.id","ie","gov.ie","il","ac.il","co.il","gov.il","idf.il","k12.il","muni.il","net.il","org.il","im","ac.im","co.im","com.im","ltd.co.im","net.im","org.im","plc.co.im","tt.im","tv.im","in","co.in","firm.in","net.in","org.in","gen.in","ind.in","nic.in","ac.in","edu.in","res.in","gov.in","mil.in","info","int","eu.int","io","com.io","iq","gov.iq","edu.iq","mil.iq","com.iq","org.iq","net.iq","ir","ac.ir","co.ir","gov.ir","id.ir","net.ir","org.ir","sch.ir","\u0627\u06CC\u0631\u0627\u0646.ir","\u0627\u064A\u0631\u0627\u0646.ir","is","net.is","com.is","edu.is","gov.is","org.is","int.is","it","gov.it","edu.it","abr.it","abruzzo.it","aosta-valley.it","aostavalley.it","bas.it","basilicata.it","cal.it","calabria.it","cam.it","campania.it","emilia-romagna.it","emiliaromagna.it","emr.it","friuli-v-giulia.it","friuli-ve-giulia.it","friuli-vegiulia.it","friuli-venezia-giulia.it","friuli-veneziagiulia.it","friuli-vgiulia.it","friuliv-giulia.it","friulive-giulia.it","friulivegiulia.it","friulivenezia-giulia.it","friuliveneziagiulia.it","friulivgiulia.it","fvg.it","laz.it","lazio.it","lig.it","liguria.it","lom.it","lombardia.it","lombardy.it","lucania.it","mar.it","marche.it","mol.it","molise.it","piedmont.it","piemonte.it","pmn.it","pug.it","puglia.it","sar.it","sardegna.it","sardinia.it","sic.it","sicilia.it","sicily.it","taa.it","tos.it","toscana.it","trentin-sud-tirol.it","trentin-s\xFCd-tirol.it","trentin-sudtirol.it","trentin-s\xFCdtirol.it","trentin-sued-tirol.it","trentin-suedtirol.it","trentino-a-adige.it","trentino-aadige.it","trentino-alto-adige.it","trentino-altoadige.it","trentino-s-tirol.it","trentino-stirol.it","trentino-sud-tirol.it","trentino-s\xFCd-tirol.it","trentino-sudtirol.it","trentino-s\xFCdtirol.it","trentino-sued-tirol.it","trentino-suedtirol.it","trentino.it","trentinoa-adige.it","trentinoaadige.it","trentinoalto-adige.it","trentinoaltoadige.it","trentinos-tirol.it","trentinostirol.it","trentinosud-tirol.it","trentinos\xFCd-tirol.it","trentinosudtirol.it","trentinos\xFCdtirol.it","trentinosued-tirol.it","trentinosuedtirol.it","trentinsud-tirol.it","trentins\xFCd-tirol.it","trentinsudtirol.it","trentins\xFCdtirol.it","trentinsued-tirol.it","trentinsuedtirol.it","tuscany.it","umb.it","umbria.it","val-d-aosta.it","val-daosta.it","vald-aosta.it","valdaosta.it","valle-aosta.it","valle-d-aosta.it","valle-daosta.it","valleaosta.it","valled-aosta.it","valledaosta.it","vallee-aoste.it","vall\xE9e-aoste.it","vallee-d-aoste.it","vall\xE9e-d-aoste.it","valleeaoste.it","vall\xE9eaoste.it","valleedaoste.it","vall\xE9edaoste.it","vao.it","vda.it","ven.it","veneto.it","ag.it","agrigento.it","al.it","alessandria.it","alto-adige.it","altoadige.it","an.it","ancona.it","andria-barletta-trani.it","andria-trani-barletta.it","andriabarlettatrani.it","andriatranibarletta.it","ao.it","aosta.it","aoste.it","ap.it","aq.it","aquila.it","ar.it","arezzo.it","ascoli-piceno.it","ascolipiceno.it","asti.it","at.it","av.it","avellino.it","ba.it","balsan-sudtirol.it","balsan-s\xFCdtirol.it","balsan-suedtirol.it","balsan.it","bari.it","barletta-trani-andria.it","barlettatraniandria.it","belluno.it","benevento.it","bergamo.it","bg.it","bi.it","biella.it","bl.it","bn.it","bo.it","bologna.it","bolzano-altoadige.it","bolzano.it","bozen-sudtirol.it","bozen-s\xFCdtirol.it","bozen-suedtirol.it","bozen.it","br.it","brescia.it","brindisi.it","bs.it","bt.it","bulsan-sudtirol.it","bulsan-s\xFCdtirol.it","bulsan-suedtirol.it","bulsan.it","bz.it","ca.it","cagliari.it","caltanissetta.it","campidano-medio.it","campidanomedio.it","campobasso.it","carbonia-iglesias.it","carboniaiglesias.it","carrara-massa.it","carraramassa.it","caserta.it","catania.it","catanzaro.it","cb.it","ce.it","cesena-forli.it","cesena-forl\xEC.it","cesenaforli.it","cesenaforl\xEC.it","ch.it","chieti.it","ci.it","cl.it","cn.it","co.it","como.it","cosenza.it","cr.it","cremona.it","crotone.it","cs.it","ct.it","cuneo.it","cz.it","dell-ogliastra.it","dellogliastra.it","en.it","enna.it","fc.it","fe.it","fermo.it","ferrara.it","fg.it","fi.it","firenze.it","florence.it","fm.it","foggia.it","forli-cesena.it","forl\xEC-cesena.it","forlicesena.it","forl\xECcesena.it","fr.it","frosinone.it","ge.it","genoa.it","genova.it","go.it","gorizia.it","gr.it","grosseto.it","iglesias-carbonia.it","iglesiascarbonia.it","im.it","imperia.it","is.it","isernia.it","kr.it","la-spezia.it","laquila.it","laspezia.it","latina.it","lc.it","le.it","lecce.it","lecco.it","li.it","livorno.it","lo.it","lodi.it","lt.it","lu.it","lucca.it","macerata.it","mantova.it","massa-carrara.it","massacarrara.it","matera.it","mb.it","mc.it","me.it","medio-campidano.it","mediocampidano.it","messina.it","mi.it","milan.it","milano.it","mn.it","mo.it","modena.it","monza-brianza.it","monza-e-della-brianza.it","monza.it","monzabrianza.it","monzaebrianza.it","monzaedellabrianza.it","ms.it","mt.it","na.it","naples.it","napoli.it","no.it","novara.it","nu.it","nuoro.it","og.it","ogliastra.it","olbia-tempio.it","olbiatempio.it","or.it","oristano.it","ot.it","pa.it","padova.it","padua.it","palermo.it","parma.it","pavia.it","pc.it","pd.it","pe.it","perugia.it","pesaro-urbino.it","pesarourbino.it","pescara.it","pg.it","pi.it","piacenza.it","pisa.it","pistoia.it","pn.it","po.it","pordenone.it","potenza.it","pr.it","prato.it","pt.it","pu.it","pv.it","pz.it","ra.it","ragusa.it","ravenna.it","rc.it","re.it","reggio-calabria.it","reggio-emilia.it","reggiocalabria.it","reggioemilia.it","rg.it","ri.it","rieti.it","rimini.it","rm.it","rn.it","ro.it","roma.it","rome.it","rovigo.it","sa.it","salerno.it","sassari.it","savona.it","si.it","siena.it","siracusa.it","so.it","sondrio.it","sp.it","sr.it","ss.it","suedtirol.it","s\xFCdtirol.it","sv.it","ta.it","taranto.it","te.it","tempio-olbia.it","tempioolbia.it","teramo.it","terni.it","tn.it","to.it","torino.it","tp.it","tr.it","trani-andria-barletta.it","trani-barletta-andria.it","traniandriabarletta.it","tranibarlettaandria.it","trapani.it","trento.it","treviso.it","trieste.it","ts.it","turin.it","tv.it","ud.it","udine.it","urbino-pesaro.it","urbinopesaro.it","va.it","varese.it","vb.it","vc.it","ve.it","venezia.it","venice.it","verbania.it","vercelli.it","verona.it","vi.it","vibo-valentia.it","vibovalentia.it","vicenza.it","viterbo.it","vr.it","vs.it","vt.it","vv.it","je","co.je","net.je","org.je","*.jm","jo","com.jo","org.jo","net.jo","edu.jo","sch.jo","gov.jo","mil.jo","name.jo","jobs","jp","ac.jp","ad.jp","co.jp","ed.jp","go.jp","gr.jp","lg.jp","ne.jp","or.jp","aichi.jp","akita.jp","aomori.jp","chiba.jp","ehime.jp","fukui.jp","fukuoka.jp","fukushima.jp","gifu.jp","gunma.jp","hiroshima.jp","hokkaido.jp","hyogo.jp","ibaraki.jp","ishikawa.jp","iwate.jp","kagawa.jp","kagoshima.jp","kanagawa.jp","kochi.jp","kumamoto.jp","kyoto.jp","mie.jp","miyagi.jp","miyazaki.jp","nagano.jp","nagasaki.jp","nara.jp","niigata.jp","oita.jp","okayama.jp","okinawa.jp","osaka.jp","saga.jp","saitama.jp","shiga.jp","shimane.jp","shizuoka.jp","tochigi.jp","tokushima.jp","tokyo.jp","tottori.jp","toyama.jp","wakayama.jp","yamagata.jp","yamaguchi.jp","yamanashi.jp","\u6803\u6728.jp","\u611B\u77E5.jp","\u611B\u5A9B.jp","\u5175\u5EAB.jp","\u718A\u672C.jp","\u8328\u57CE.jp","\u5317\u6D77\u9053.jp","\u5343\u8449.jp","\u548C\u6B4C\u5C71.jp","\u9577\u5D0E.jp","\u9577\u91CE.jp","\u65B0\u6F5F.jp","\u9752\u68EE.jp","\u9759\u5CA1.jp","\u6771\u4EAC.jp","\u77F3\u5DDD.jp","\u57FC\u7389.jp","\u4E09\u91CD.jp","\u4EAC\u90FD.jp","\u4F50\u8CC0.jp","\u5927\u5206.jp","\u5927\u962A.jp","\u5948\u826F.jp","\u5BAE\u57CE.jp","\u5BAE\u5D0E.jp","\u5BCC\u5C71.jp","\u5C71\u53E3.jp","\u5C71\u5F62.jp","\u5C71\u68A8.jp","\u5CA9\u624B.jp","\u5C90\u961C.jp","\u5CA1\u5C71.jp","\u5CF6\u6839.jp","\u5E83\u5CF6.jp","\u5FB3\u5CF6.jp","\u6C96\u7E04.jp","\u6ECB\u8CC0.jp","\u795E\u5948\u5DDD.jp","\u798F\u4E95.jp","\u798F\u5CA1.jp","\u798F\u5CF6.jp","\u79CB\u7530.jp","\u7FA4\u99AC.jp","\u9999\u5DDD.jp","\u9AD8\u77E5.jp","\u9CE5\u53D6.jp","\u9E7F\u5150\u5CF6.jp","*.kawasaki.jp","*.kitakyushu.jp","*.kobe.jp","*.nagoya.jp","*.sapporo.jp","*.sendai.jp","*.yokohama.jp","!city.kawasaki.jp","!city.kitakyushu.jp","!city.kobe.jp","!city.nagoya.jp","!city.sapporo.jp","!city.sendai.jp","!city.yokohama.jp","aisai.aichi.jp","ama.aichi.jp","anjo.aichi.jp","asuke.aichi.jp","chiryu.aichi.jp","chita.aichi.jp","fuso.aichi.jp","gamagori.aichi.jp","handa.aichi.jp","hazu.aichi.jp","hekinan.aichi.jp","higashiura.aichi.jp","ichinomiya.aichi.jp","inazawa.aichi.jp","inuyama.aichi.jp","isshiki.aichi.jp","iwakura.aichi.jp","kanie.aichi.jp","kariya.aichi.jp","kasugai.aichi.jp","kira.aichi.jp","kiyosu.aichi.jp","komaki.aichi.jp","konan.aichi.jp","kota.aichi.jp","mihama.aichi.jp","miyoshi.aichi.jp","nishio.aichi.jp","nisshin.aichi.jp","obu.aichi.jp","oguchi.aichi.jp","oharu.aichi.jp","okazaki.aichi.jp","owariasahi.aichi.jp","seto.aichi.jp","shikatsu.aichi.jp","shinshiro.aichi.jp","shitara.aichi.jp","tahara.aichi.jp","takahama.aichi.jp","tobishima.aichi.jp","toei.aichi.jp","togo.aichi.jp","tokai.aichi.jp","tokoname.aichi.jp","toyoake.aichi.jp","toyohashi.aichi.jp","toyokawa.aichi.jp","toyone.aichi.jp","toyota.aichi.jp","tsushima.aichi.jp","yatomi.aichi.jp","akita.akita.jp","daisen.akita.jp","fujisato.akita.jp","gojome.akita.jp","hachirogata.akita.jp","happou.akita.jp","higashinaruse.akita.jp","honjo.akita.jp","honjyo.akita.jp","ikawa.akita.jp","kamikoani.akita.jp","kamioka.akita.jp","katagami.akita.jp","kazuno.akita.jp","kitaakita.akita.jp","kosaka.akita.jp","kyowa.akita.jp","misato.akita.jp","mitane.akita.jp","moriyoshi.akita.jp","nikaho.akita.jp","noshiro.akita.jp","odate.akita.jp","oga.akita.jp","ogata.akita.jp","semboku.akita.jp","yokote.akita.jp","yurihonjo.akita.jp","aomori.aomori.jp","gonohe.aomori.jp","hachinohe.aomori.jp","hashikami.aomori.jp","hiranai.aomori.jp","hirosaki.aomori.jp","itayanagi.aomori.jp","kuroishi.aomori.jp","misawa.aomori.jp","mutsu.aomori.jp","nakadomari.aomori.jp","noheji.aomori.jp","oirase.aomori.jp","owani.aomori.jp","rokunohe.aomori.jp","sannohe.aomori.jp","shichinohe.aomori.jp","shingo.aomori.jp","takko.aomori.jp","towada.aomori.jp","tsugaru.aomori.jp","tsuruta.aomori.jp","abiko.chiba.jp","asahi.chiba.jp","chonan.chiba.jp","chosei.chiba.jp","choshi.chiba.jp","chuo.chiba.jp","funabashi.chiba.jp","futtsu.chiba.jp","hanamigawa.chiba.jp","ichihara.chiba.jp","ichikawa.chiba.jp","ichinomiya.chiba.jp","inzai.chiba.jp","isumi.chiba.jp","kamagaya.chiba.jp","kamogawa.chiba.jp","kashiwa.chiba.jp","katori.chiba.jp","katsuura.chiba.jp","kimitsu.chiba.jp","kisarazu.chiba.jp","kozaki.chiba.jp","kujukuri.chiba.jp","kyonan.chiba.jp","matsudo.chiba.jp","midori.chiba.jp","mihama.chiba.jp","minamiboso.chiba.jp","mobara.chiba.jp","mutsuzawa.chiba.jp","nagara.chiba.jp","nagareyama.chiba.jp","narashino.chiba.jp","narita.chiba.jp","noda.chiba.jp","oamishirasato.chiba.jp","omigawa.chiba.jp","onjuku.chiba.jp","otaki.chiba.jp","sakae.chiba.jp","sakura.chiba.jp","shimofusa.chiba.jp","shirako.chiba.jp","shiroi.chiba.jp","shisui.chiba.jp","sodegaura.chiba.jp","sosa.chiba.jp","tako.chiba.jp","tateyama.chiba.jp","togane.chiba.jp","tohnosho.chiba.jp","tomisato.chiba.jp","urayasu.chiba.jp","yachimata.chiba.jp","yachiyo.chiba.jp","yokaichiba.chiba.jp","yokoshibahikari.chiba.jp","yotsukaido.chiba.jp","ainan.ehime.jp","honai.ehime.jp","ikata.ehime.jp","imabari.ehime.jp","iyo.ehime.jp","kamijima.ehime.jp","kihoku.ehime.jp","kumakogen.ehime.jp","masaki.ehime.jp","matsuno.ehime.jp","matsuyama.ehime.jp","namikata.ehime.jp","niihama.ehime.jp","ozu.ehime.jp","saijo.ehime.jp","seiyo.ehime.jp","shikokuchuo.ehime.jp","tobe.ehime.jp","toon.ehime.jp","uchiko.ehime.jp","uwajima.ehime.jp","yawatahama.ehime.jp","echizen.fukui.jp","eiheiji.fukui.jp","fukui.fukui.jp","ikeda.fukui.jp","katsuyama.fukui.jp","mihama.fukui.jp","minamiechizen.fukui.jp","obama.fukui.jp","ohi.fukui.jp","ono.fukui.jp","sabae.fukui.jp","sakai.fukui.jp","takahama.fukui.jp","tsuruga.fukui.jp","wakasa.fukui.jp","ashiya.fukuoka.jp","buzen.fukuoka.jp","chikugo.fukuoka.jp","chikuho.fukuoka.jp","chikujo.fukuoka.jp","chikushino.fukuoka.jp","chikuzen.fukuoka.jp","chuo.fukuoka.jp","dazaifu.fukuoka.jp","fukuchi.fukuoka.jp","hakata.fukuoka.jp","higashi.fukuoka.jp","hirokawa.fukuoka.jp","hisayama.fukuoka.jp","iizuka.fukuoka.jp","inatsuki.fukuoka.jp","kaho.fukuoka.jp","kasuga.fukuoka.jp","kasuya.fukuoka.jp","kawara.fukuoka.jp","keisen.fukuoka.jp","koga.fukuoka.jp","kurate.fukuoka.jp","kurogi.fukuoka.jp","kurume.fukuoka.jp","minami.fukuoka.jp","miyako.fukuoka.jp","miyama.fukuoka.jp","miyawaka.fukuoka.jp","mizumaki.fukuoka.jp","munakata.fukuoka.jp","nakagawa.fukuoka.jp","nakama.fukuoka.jp","nishi.fukuoka.jp","nogata.fukuoka.jp","ogori.fukuoka.jp","okagaki.fukuoka.jp","okawa.fukuoka.jp","oki.fukuoka.jp","omuta.fukuoka.jp","onga.fukuoka.jp","onojo.fukuoka.jp","oto.fukuoka.jp","saigawa.fukuoka.jp","sasaguri.fukuoka.jp","shingu.fukuoka.jp","shinyoshitomi.fukuoka.jp","shonai.fukuoka.jp","soeda.fukuoka.jp","sue.fukuoka.jp","tachiarai.fukuoka.jp","tagawa.fukuoka.jp","takata.fukuoka.jp","toho.fukuoka.jp","toyotsu.fukuoka.jp","tsuiki.fukuoka.jp","ukiha.fukuoka.jp","umi.fukuoka.jp","usui.fukuoka.jp","yamada.fukuoka.jp","yame.fukuoka.jp","yanagawa.fukuoka.jp","yukuhashi.fukuoka.jp","aizubange.fukushima.jp","aizumisato.fukushima.jp","aizuwakamatsu.fukushima.jp","asakawa.fukushima.jp","bandai.fukushima.jp","date.fukushima.jp","fukushima.fukushima.jp","furudono.fukushima.jp","futaba.fukushima.jp","hanawa.fukushima.jp","higashi.fukushima.jp","hirata.fukushima.jp","hirono.fukushima.jp","iitate.fukushima.jp","inawashiro.fukushima.jp","ishikawa.fukushima.jp","iwaki.fukushima.jp","izumizaki.fukushima.jp","kagamiishi.fukushima.jp","kaneyama.fukushima.jp","kawamata.fukushima.jp","kitakata.fukushima.jp","kitashiobara.fukushima.jp","koori.fukushima.jp","koriyama.fukushima.jp","kunimi.fukushima.jp","miharu.fukushima.jp","mishima.fukushima.jp","namie.fukushima.jp","nango.fukushima.jp","nishiaizu.fukushima.jp","nishigo.fukushima.jp","okuma.fukushima.jp","omotego.fukushima.jp","ono.fukushima.jp","otama.fukushima.jp","samegawa.fukushima.jp","shimogo.fukushima.jp","shirakawa.fukushima.jp","showa.fukushima.jp","soma.fukushima.jp","sukagawa.fukushima.jp","taishin.fukushima.jp","tamakawa.fukushima.jp","tanagura.fukushima.jp","tenei.fukushima.jp","yabuki.fukushima.jp","yamato.fukushima.jp","yamatsuri.fukushima.jp","yanaizu.fukushima.jp","yugawa.fukushima.jp","anpachi.gifu.jp","ena.gifu.jp","gifu.gifu.jp","ginan.gifu.jp","godo.gifu.jp","gujo.gifu.jp","hashima.gifu.jp","hichiso.gifu.jp","hida.gifu.jp","higashishirakawa.gifu.jp","ibigawa.gifu.jp","ikeda.gifu.jp","kakamigahara.gifu.jp","kani.gifu.jp","kasahara.gifu.jp","kasamatsu.gifu.jp","kawaue.gifu.jp","kitagata.gifu.jp","mino.gifu.jp","minokamo.gifu.jp","mitake.gifu.jp","mizunami.gifu.jp","motosu.gifu.jp","nakatsugawa.gifu.jp","ogaki.gifu.jp","sakahogi.gifu.jp","seki.gifu.jp","sekigahara.gifu.jp","shirakawa.gifu.jp","tajimi.gifu.jp","takayama.gifu.jp","tarui.gifu.jp","toki.gifu.jp","tomika.gifu.jp","wanouchi.gifu.jp","yamagata.gifu.jp","yaotsu.gifu.jp","yoro.gifu.jp","annaka.gunma.jp","chiyoda.gunma.jp","fujioka.gunma.jp","higashiagatsuma.gunma.jp","isesaki.gunma.jp","itakura.gunma.jp","kanna.gunma.jp","kanra.gunma.jp","katashina.gunma.jp","kawaba.gunma.jp","kiryu.gunma.jp","kusatsu.gunma.jp","maebashi.gunma.jp","meiwa.gunma.jp","midori.gunma.jp","minakami.gunma.jp","naganohara.gunma.jp","nakanojo.gunma.jp","nanmoku.gunma.jp","numata.gunma.jp","oizumi.gunma.jp","ora.gunma.jp","ota.gunma.jp","shibukawa.gunma.jp","shimonita.gunma.jp","shinto.gunma.jp","showa.gunma.jp","takasaki.gunma.jp","takayama.gunma.jp","tamamura.gunma.jp","tatebayashi.gunma.jp","tomioka.gunma.jp","tsukiyono.gunma.jp","tsumagoi.gunma.jp","ueno.gunma.jp","yoshioka.gunma.jp","asaminami.hiroshima.jp","daiwa.hiroshima.jp","etajima.hiroshima.jp","fuchu.hiroshima.jp","fukuyama.hiroshima.jp","hatsukaichi.hiroshima.jp","higashihiroshima.hiroshima.jp","hongo.hiroshima.jp","jinsekikogen.hiroshima.jp","kaita.hiroshima.jp","kui.hiroshima.jp","kumano.hiroshima.jp","kure.hiroshima.jp","mihara.hiroshima.jp","miyoshi.hiroshima.jp","naka.hiroshima.jp","onomichi.hiroshima.jp","osakikamijima.hiroshima.jp","otake.hiroshima.jp","saka.hiroshima.jp","sera.hiroshima.jp","seranishi.hiroshima.jp","shinichi.hiroshima.jp","shobara.hiroshima.jp","takehara.hiroshima.jp","abashiri.hokkaido.jp","abira.hokkaido.jp","aibetsu.hokkaido.jp","akabira.hokkaido.jp","akkeshi.hokkaido.jp","asahikawa.hokkaido.jp","ashibetsu.hokkaido.jp","ashoro.hokkaido.jp","assabu.hokkaido.jp","atsuma.hokkaido.jp","bibai.hokkaido.jp","biei.hokkaido.jp","bifuka.hokkaido.jp","bihoro.hokkaido.jp","biratori.hokkaido.jp","chippubetsu.hokkaido.jp","chitose.hokkaido.jp","date.hokkaido.jp","ebetsu.hokkaido.jp","embetsu.hokkaido.jp","eniwa.hokkaido.jp","erimo.hokkaido.jp","esan.hokkaido.jp","esashi.hokkaido.jp","fukagawa.hokkaido.jp","fukushima.hokkaido.jp","furano.hokkaido.jp","furubira.hokkaido.jp","haboro.hokkaido.jp","hakodate.hokkaido.jp","hamatonbetsu.hokkaido.jp","hidaka.hokkaido.jp","higashikagura.hokkaido.jp","higashikawa.hokkaido.jp","hiroo.hokkaido.jp","hokuryu.hokkaido.jp","hokuto.hokkaido.jp","honbetsu.hokkaido.jp","horokanai.hokkaido.jp","horonobe.hokkaido.jp","ikeda.hokkaido.jp","imakane.hokkaido.jp","ishikari.hokkaido.jp","iwamizawa.hokkaido.jp","iwanai.hokkaido.jp","kamifurano.hokkaido.jp","kamikawa.hokkaido.jp","kamishihoro.hokkaido.jp","kamisunagawa.hokkaido.jp","kamoenai.hokkaido.jp","kayabe.hokkaido.jp","kembuchi.hokkaido.jp","kikonai.hokkaido.jp","kimobetsu.hokkaido.jp","kitahiroshima.hokkaido.jp","kitami.hokkaido.jp","kiyosato.hokkaido.jp","koshimizu.hokkaido.jp","kunneppu.hokkaido.jp","kuriyama.hokkaido.jp","kuromatsunai.hokkaido.jp","kushiro.hokkaido.jp","kutchan.hokkaido.jp","kyowa.hokkaido.jp","mashike.hokkaido.jp","matsumae.hokkaido.jp","mikasa.hokkaido.jp","minamifurano.hokkaido.jp","mombetsu.hokkaido.jp","moseushi.hokkaido.jp","mukawa.hokkaido.jp","muroran.hokkaido.jp","naie.hokkaido.jp","nakagawa.hokkaido.jp","nakasatsunai.hokkaido.jp","nakatombetsu.hokkaido.jp","nanae.hokkaido.jp","nanporo.hokkaido.jp","nayoro.hokkaido.jp","nemuro.hokkaido.jp","niikappu.hokkaido.jp","niki.hokkaido.jp","nishiokoppe.hokkaido.jp","noboribetsu.hokkaido.jp","numata.hokkaido.jp","obihiro.hokkaido.jp","obira.hokkaido.jp","oketo.hokkaido.jp","okoppe.hokkaido.jp","otaru.hokkaido.jp","otobe.hokkaido.jp","otofuke.hokkaido.jp","otoineppu.hokkaido.jp","oumu.hokkaido.jp","ozora.hokkaido.jp","pippu.hokkaido.jp","rankoshi.hokkaido.jp","rebun.hokkaido.jp","rikubetsu.hokkaido.jp","rishiri.hokkaido.jp","rishirifuji.hokkaido.jp","saroma.hokkaido.jp","sarufutsu.hokkaido.jp","shakotan.hokkaido.jp","shari.hokkaido.jp","shibecha.hokkaido.jp","shibetsu.hokkaido.jp","shikabe.hokkaido.jp","shikaoi.hokkaido.jp","shimamaki.hokkaido.jp","shimizu.hokkaido.jp","shimokawa.hokkaido.jp","shinshinotsu.hokkaido.jp","shintoku.hokkaido.jp","shiranuka.hokkaido.jp","shiraoi.hokkaido.jp","shiriuchi.hokkaido.jp","sobetsu.hokkaido.jp","sunagawa.hokkaido.jp","taiki.hokkaido.jp","takasu.hokkaido.jp","takikawa.hokkaido.jp","takinoue.hokkaido.jp","teshikaga.hokkaido.jp","tobetsu.hokkaido.jp","tohma.hokkaido.jp","tomakomai.hokkaido.jp","tomari.hokkaido.jp","toya.hokkaido.jp","toyako.hokkaido.jp","toyotomi.hokkaido.jp","toyoura.hokkaido.jp","tsubetsu.hokkaido.jp","tsukigata.hokkaido.jp","urakawa.hokkaido.jp","urausu.hokkaido.jp","uryu.hokkaido.jp","utashinai.hokkaido.jp","wakkanai.hokkaido.jp","wassamu.hokkaido.jp","yakumo.hokkaido.jp","yoichi.hokkaido.jp","aioi.hyogo.jp","akashi.hyogo.jp","ako.hyogo.jp","amagasaki.hyogo.jp","aogaki.hyogo.jp","asago.hyogo.jp","ashiya.hyogo.jp","awaji.hyogo.jp","fukusaki.hyogo.jp","goshiki.hyogo.jp","harima.hyogo.jp","himeji.hyogo.jp","ichikawa.hyogo.jp","inagawa.hyogo.jp","itami.hyogo.jp","kakogawa.hyogo.jp","kamigori.hyogo.jp","kamikawa.hyogo.jp","kasai.hyogo.jp","kasuga.hyogo.jp","kawanishi.hyogo.jp","miki.hyogo.jp","minamiawaji.hyogo.jp","nishinomiya.hyogo.jp","nishiwaki.hyogo.jp","ono.hyogo.jp","sanda.hyogo.jp","sannan.hyogo.jp","sasayama.hyogo.jp","sayo.hyogo.jp","shingu.hyogo.jp","shinonsen.hyogo.jp","shiso.hyogo.jp","sumoto.hyogo.jp","taishi.hyogo.jp","taka.hyogo.jp","takarazuka.hyogo.jp","takasago.hyogo.jp","takino.hyogo.jp","tamba.hyogo.jp","tatsuno.hyogo.jp","toyooka.hyogo.jp","yabu.hyogo.jp","yashiro.hyogo.jp","yoka.hyogo.jp","yokawa.hyogo.jp","ami.ibaraki.jp","asahi.ibaraki.jp","bando.ibaraki.jp","chikusei.ibaraki.jp","daigo.ibaraki.jp","fujishiro.ibaraki.jp","hitachi.ibaraki.jp","hitachinaka.ibaraki.jp","hitachiomiya.ibaraki.jp","hitachiota.ibaraki.jp","ibaraki.ibaraki.jp","ina.ibaraki.jp","inashiki.ibaraki.jp","itako.ibaraki.jp","iwama.ibaraki.jp","joso.ibaraki.jp","kamisu.ibaraki.jp","kasama.ibaraki.jp","kashima.ibaraki.jp","kasumigaura.ibaraki.jp","koga.ibaraki.jp","miho.ibaraki.jp","mito.ibaraki.jp","moriya.ibaraki.jp","naka.ibaraki.jp","namegata.ibaraki.jp","oarai.ibaraki.jp","ogawa.ibaraki.jp","omitama.ibaraki.jp","ryugasaki.ibaraki.jp","sakai.ibaraki.jp","sakuragawa.ibaraki.jp","shimodate.ibaraki.jp","shimotsuma.ibaraki.jp","shirosato.ibaraki.jp","sowa.ibaraki.jp","suifu.ibaraki.jp","takahagi.ibaraki.jp","tamatsukuri.ibaraki.jp","tokai.ibaraki.jp","tomobe.ibaraki.jp","tone.ibaraki.jp","toride.ibaraki.jp","tsuchiura.ibaraki.jp","tsukuba.ibaraki.jp","uchihara.ibaraki.jp","ushiku.ibaraki.jp","yachiyo.ibaraki.jp","yamagata.ibaraki.jp","yawara.ibaraki.jp","yuki.ibaraki.jp","anamizu.ishikawa.jp","hakui.ishikawa.jp","hakusan.ishikawa.jp","kaga.ishikawa.jp","kahoku.ishikawa.jp","kanazawa.ishikawa.jp","kawakita.ishikawa.jp","komatsu.ishikawa.jp","nakanoto.ishikawa.jp","nanao.ishikawa.jp","nomi.ishikawa.jp","nonoichi.ishikawa.jp","noto.ishikawa.jp","shika.ishikawa.jp","suzu.ishikawa.jp","tsubata.ishikawa.jp","tsurugi.ishikawa.jp","uchinada.ishikawa.jp","wajima.ishikawa.jp","fudai.iwate.jp","fujisawa.iwate.jp","hanamaki.iwate.jp","hiraizumi.iwate.jp","hirono.iwate.jp","ichinohe.iwate.jp","ichinoseki.iwate.jp","iwaizumi.iwate.jp","iwate.iwate.jp","joboji.iwate.jp","kamaishi.iwate.jp","kanegasaki.iwate.jp","karumai.iwate.jp","kawai.iwate.jp","kitakami.iwate.jp","kuji.iwate.jp","kunohe.iwate.jp","kuzumaki.iwate.jp","miyako.iwate.jp","mizusawa.iwate.jp","morioka.iwate.jp","ninohe.iwate.jp","noda.iwate.jp","ofunato.iwate.jp","oshu.iwate.jp","otsuchi.iwate.jp","rikuzentakata.iwate.jp","shiwa.iwate.jp","shizukuishi.iwate.jp","sumita.iwate.jp","tanohata.iwate.jp","tono.iwate.jp","yahaba.iwate.jp","yamada.iwate.jp","ayagawa.kagawa.jp","higashikagawa.kagawa.jp","kanonji.kagawa.jp","kotohira.kagawa.jp","manno.kagawa.jp","marugame.kagawa.jp","mitoyo.kagawa.jp","naoshima.kagawa.jp","sanuki.kagawa.jp","tadotsu.kagawa.jp","takamatsu.kagawa.jp","tonosho.kagawa.jp","uchinomi.kagawa.jp","utazu.kagawa.jp","zentsuji.kagawa.jp","akune.kagoshima.jp","amami.kagoshima.jp","hioki.kagoshima.jp","isa.kagoshima.jp","isen.kagoshima.jp","izumi.kagoshima.jp","kagoshima.kagoshima.jp","kanoya.kagoshima.jp","kawanabe.kagoshima.jp","kinko.kagoshima.jp","kouyama.kagoshima.jp","makurazaki.kagoshima.jp","matsumoto.kagoshima.jp","minamitane.kagoshima.jp","nakatane.kagoshima.jp","nishinoomote.kagoshima.jp","satsumasendai.kagoshima.jp","soo.kagoshima.jp","tarumizu.kagoshima.jp","yusui.kagoshima.jp","aikawa.kanagawa.jp","atsugi.kanagawa.jp","ayase.kanagawa.jp","chigasaki.kanagawa.jp","ebina.kanagawa.jp","fujisawa.kanagawa.jp","hadano.kanagawa.jp","hakone.kanagawa.jp","hiratsuka.kanagawa.jp","isehara.kanagawa.jp","kaisei.kanagawa.jp","kamakura.kanagawa.jp","kiyokawa.kanagawa.jp","matsuda.kanagawa.jp","minamiashigara.kanagawa.jp","miura.kanagawa.jp","nakai.kanagawa.jp","ninomiya.kanagawa.jp","odawara.kanagawa.jp","oi.kanagawa.jp","oiso.kanagawa.jp","sagamihara.kanagawa.jp","samukawa.kanagawa.jp","tsukui.kanagawa.jp","yamakita.kanagawa.jp","yamato.kanagawa.jp","yokosuka.kanagawa.jp","yugawara.kanagawa.jp","zama.kanagawa.jp","zushi.kanagawa.jp","aki.kochi.jp","geisei.kochi.jp","hidaka.kochi.jp","higashitsuno.kochi.jp","ino.kochi.jp","kagami.kochi.jp","kami.kochi.jp","kitagawa.kochi.jp","kochi.kochi.jp","mihara.kochi.jp","motoyama.kochi.jp","muroto.kochi.jp","nahari.kochi.jp","nakamura.kochi.jp","nankoku.kochi.jp","nishitosa.kochi.jp","niyodogawa.kochi.jp","ochi.kochi.jp","okawa.kochi.jp","otoyo.kochi.jp","otsuki.kochi.jp","sakawa.kochi.jp","sukumo.kochi.jp","susaki.kochi.jp","tosa.kochi.jp","tosashimizu.kochi.jp","toyo.kochi.jp","tsuno.kochi.jp","umaji.kochi.jp","yasuda.kochi.jp","yusuhara.kochi.jp","amakusa.kumamoto.jp","arao.kumamoto.jp","aso.kumamoto.jp","choyo.kumamoto.jp","gyokuto.kumamoto.jp","kamiamakusa.kumamoto.jp","kikuchi.kumamoto.jp","kumamoto.kumamoto.jp","mashiki.kumamoto.jp","mifune.kumamoto.jp","minamata.kumamoto.jp","minamioguni.kumamoto.jp","nagasu.kumamoto.jp","nishihara.kumamoto.jp","oguni.kumamoto.jp","ozu.kumamoto.jp","sumoto.kumamoto.jp","takamori.kumamoto.jp","uki.kumamoto.jp","uto.kumamoto.jp","yamaga.kumamoto.jp","yamato.kumamoto.jp","yatsushiro.kumamoto.jp","ayabe.kyoto.jp","fukuchiyama.kyoto.jp","higashiyama.kyoto.jp","ide.kyoto.jp","ine.kyoto.jp","joyo.kyoto.jp","kameoka.kyoto.jp","kamo.kyoto.jp","kita.kyoto.jp","kizu.kyoto.jp","kumiyama.kyoto.jp","kyotamba.kyoto.jp","kyotanabe.kyoto.jp","kyotango.kyoto.jp","maizuru.kyoto.jp","minami.kyoto.jp","minamiyamashiro.kyoto.jp","miyazu.kyoto.jp","muko.kyoto.jp","nagaokakyo.kyoto.jp","nakagyo.kyoto.jp","nantan.kyoto.jp","oyamazaki.kyoto.jp","sakyo.kyoto.jp","seika.kyoto.jp","tanabe.kyoto.jp","uji.kyoto.jp","ujitawara.kyoto.jp","wazuka.kyoto.jp","yamashina.kyoto.jp","yawata.kyoto.jp","asahi.mie.jp","inabe.mie.jp","ise.mie.jp","kameyama.mie.jp","kawagoe.mie.jp","kiho.mie.jp","kisosaki.mie.jp","kiwa.mie.jp","komono.mie.jp","kumano.mie.jp","kuwana.mie.jp","matsusaka.mie.jp","meiwa.mie.jp","mihama.mie.jp","minamiise.mie.jp","misugi.mie.jp","miyama.mie.jp","nabari.mie.jp","shima.mie.jp","suzuka.mie.jp","tado.mie.jp","taiki.mie.jp","taki.mie.jp","tamaki.mie.jp","toba.mie.jp","tsu.mie.jp","udono.mie.jp","ureshino.mie.jp","watarai.mie.jp","yokkaichi.mie.jp","furukawa.miyagi.jp","higashimatsushima.miyagi.jp","ishinomaki.miyagi.jp","iwanuma.miyagi.jp","kakuda.miyagi.jp","kami.miyagi.jp","kawasaki.miyagi.jp","marumori.miyagi.jp","matsushima.miyagi.jp","minamisanriku.miyagi.jp","misato.miyagi.jp","murata.miyagi.jp","natori.miyagi.jp","ogawara.miyagi.jp","ohira.miyagi.jp","onagawa.miyagi.jp","osaki.miyagi.jp","rifu.miyagi.jp","semine.miyagi.jp","shibata.miyagi.jp","shichikashuku.miyagi.jp","shikama.miyagi.jp","shiogama.miyagi.jp","shiroishi.miyagi.jp","tagajo.miyagi.jp","taiwa.miyagi.jp","tome.miyagi.jp","tomiya.miyagi.jp","wakuya.miyagi.jp","watari.miyagi.jp","yamamoto.miyagi.jp","zao.miyagi.jp","aya.miyazaki.jp","ebino.miyazaki.jp","gokase.miyazaki.jp","hyuga.miyazaki.jp","kadogawa.miyazaki.jp","kawaminami.miyazaki.jp","kijo.miyazaki.jp","kitagawa.miyazaki.jp","kitakata.miyazaki.jp","kitaura.miyazaki.jp","kobayashi.miyazaki.jp","kunitomi.miyazaki.jp","kushima.miyazaki.jp","mimata.miyazaki.jp","miyakonojo.miyazaki.jp","miyazaki.miyazaki.jp","morotsuka.miyazaki.jp","nichinan.miyazaki.jp","nishimera.miyazaki.jp","nobeoka.miyazaki.jp","saito.miyazaki.jp","shiiba.miyazaki.jp","shintomi.miyazaki.jp","takaharu.miyazaki.jp","takanabe.miyazaki.jp","takazaki.miyazaki.jp","tsuno.miyazaki.jp","achi.nagano.jp","agematsu.nagano.jp","anan.nagano.jp","aoki.nagano.jp","asahi.nagano.jp","azumino.nagano.jp","chikuhoku.nagano.jp","chikuma.nagano.jp","chino.nagano.jp","fujimi.nagano.jp","hakuba.nagano.jp","hara.nagano.jp","hiraya.nagano.jp","iida.nagano.jp","iijima.nagano.jp","iiyama.nagano.jp","iizuna.nagano.jp","ikeda.nagano.jp","ikusaka.nagano.jp","ina.nagano.jp","karuizawa.nagano.jp","kawakami.nagano.jp","kiso.nagano.jp","kisofukushima.nagano.jp","kitaaiki.nagano.jp","komagane.nagano.jp","komoro.nagano.jp","matsukawa.nagano.jp","matsumoto.nagano.jp","miasa.nagano.jp","minamiaiki.nagano.jp","minamimaki.nagano.jp","minamiminowa.nagano.jp","minowa.nagano.jp","miyada.nagano.jp","miyota.nagano.jp","mochizuki.nagano.jp","nagano.nagano.jp","nagawa.nagano.jp","nagiso.nagano.jp","nakagawa.nagano.jp","nakano.nagano.jp","nozawaonsen.nagano.jp","obuse.nagano.jp","ogawa.nagano.jp","okaya.nagano.jp","omachi.nagano.jp","omi.nagano.jp","ookuwa.nagano.jp","ooshika.nagano.jp","otaki.nagano.jp","otari.nagano.jp","sakae.nagano.jp","sakaki.nagano.jp","saku.nagano.jp","sakuho.nagano.jp","shimosuwa.nagano.jp","shinanomachi.nagano.jp","shiojiri.nagano.jp","suwa.nagano.jp","suzaka.nagano.jp","takagi.nagano.jp","takamori.nagano.jp","takayama.nagano.jp","tateshina.nagano.jp","tatsuno.nagano.jp","togakushi.nagano.jp","togura.nagano.jp","tomi.nagano.jp","ueda.nagano.jp","wada.nagano.jp","yamagata.nagano.jp","yamanouchi.nagano.jp","yasaka.nagano.jp","yasuoka.nagano.jp","chijiwa.nagasaki.jp","futsu.nagasaki.jp","goto.nagasaki.jp","hasami.nagasaki.jp","hirado.nagasaki.jp","iki.nagasaki.jp","isahaya.nagasaki.jp","kawatana.nagasaki.jp","kuchinotsu.nagasaki.jp","matsuura.nagasaki.jp","nagasaki.nagasaki.jp","obama.nagasaki.jp","omura.nagasaki.jp","oseto.nagasaki.jp","saikai.nagasaki.jp","sasebo.nagasaki.jp","seihi.nagasaki.jp","shimabara.nagasaki.jp","shinkamigoto.nagasaki.jp","togitsu.nagasaki.jp","tsushima.nagasaki.jp","unzen.nagasaki.jp","ando.nara.jp","gose.nara.jp","heguri.nara.jp","higashiyoshino.nara.jp","ikaruga.nara.jp","ikoma.nara.jp","kamikitayama.nara.jp","kanmaki.nara.jp","kashiba.nara.jp","kashihara.nara.jp","katsuragi.nara.jp","kawai.nara.jp","kawakami.nara.jp","kawanishi.nara.jp","koryo.nara.jp","kurotaki.nara.jp","mitsue.nara.jp","miyake.nara.jp","nara.nara.jp","nosegawa.nara.jp","oji.nara.jp","ouda.nara.jp","oyodo.nara.jp","sakurai.nara.jp","sango.nara.jp","shimoichi.nara.jp","shimokitayama.nara.jp","shinjo.nara.jp","soni.nara.jp","takatori.nara.jp","tawaramoto.nara.jp","tenkawa.nara.jp","tenri.nara.jp","uda.nara.jp","yamatokoriyama.nara.jp","yamatotakada.nara.jp","yamazoe.nara.jp","yoshino.nara.jp","aga.niigata.jp","agano.niigata.jp","gosen.niigata.jp","itoigawa.niigata.jp","izumozaki.niigata.jp","joetsu.niigata.jp","kamo.niigata.jp","kariwa.niigata.jp","kashiwazaki.niigata.jp","minamiuonuma.niigata.jp","mitsuke.niigata.jp","muika.niigata.jp","murakami.niigata.jp","myoko.niigata.jp","nagaoka.niigata.jp","niigata.niigata.jp","ojiya.niigata.jp","omi.niigata.jp","sado.niigata.jp","sanjo.niigata.jp","seiro.niigata.jp","seirou.niigata.jp","sekikawa.niigata.jp","shibata.niigata.jp","tagami.niigata.jp","tainai.niigata.jp","tochio.niigata.jp","tokamachi.niigata.jp","tsubame.niigata.jp","tsunan.niigata.jp","uonuma.niigata.jp","yahiko.niigata.jp","yoita.niigata.jp","yuzawa.niigata.jp","beppu.oita.jp","bungoono.oita.jp","bungotakada.oita.jp","hasama.oita.jp","hiji.oita.jp","himeshima.oita.jp","hita.oita.jp","kamitsue.oita.jp","kokonoe.oita.jp","kuju.oita.jp","kunisaki.oita.jp","kusu.oita.jp","oita.oita.jp","saiki.oita.jp","taketa.oita.jp","tsukumi.oita.jp","usa.oita.jp","usuki.oita.jp","yufu.oita.jp","akaiwa.okayama.jp","asakuchi.okayama.jp","bizen.okayama.jp","hayashima.okayama.jp","ibara.okayama.jp","kagamino.okayama.jp","kasaoka.okayama.jp","kibichuo.okayama.jp","kumenan.okayama.jp","kurashiki.okayama.jp","maniwa.okayama.jp","misaki.okayama.jp","nagi.okayama.jp","niimi.okayama.jp","nishiawakura.okayama.jp","okayama.okayama.jp","satosho.okayama.jp","setouchi.okayama.jp","shinjo.okayama.jp","shoo.okayama.jp","soja.okayama.jp","takahashi.okayama.jp","tamano.okayama.jp","tsuyama.okayama.jp","wake.okayama.jp","yakage.okayama.jp","aguni.okinawa.jp","ginowan.okinawa.jp","ginoza.okinawa.jp","gushikami.okinawa.jp","haebaru.okinawa.jp","higashi.okinawa.jp","hirara.okinawa.jp","iheya.okinawa.jp","ishigaki.okinawa.jp","ishikawa.okinawa.jp","itoman.okinawa.jp","izena.okinawa.jp","kadena.okinawa.jp","kin.okinawa.jp","kitadaito.okinawa.jp","kitanakagusuku.okinawa.jp","kumejima.okinawa.jp","kunigami.okinawa.jp","minamidaito.okinawa.jp","motobu.okinawa.jp","nago.okinawa.jp","naha.okinawa.jp","nakagusuku.okinawa.jp","nakijin.okinawa.jp","nanjo.okinawa.jp","nishihara.okinawa.jp","ogimi.okinawa.jp","okinawa.okinawa.jp","onna.okinawa.jp","shimoji.okinawa.jp","taketomi.okinawa.jp","tarama.okinawa.jp","tokashiki.okinawa.jp","tomigusuku.okinawa.jp","tonaki.okinawa.jp","urasoe.okinawa.jp","uruma.okinawa.jp","yaese.okinawa.jp","yomitan.okinawa.jp","yonabaru.okinawa.jp","yonaguni.okinawa.jp","zamami.okinawa.jp","abeno.osaka.jp","chihayaakasaka.osaka.jp","chuo.osaka.jp","daito.osaka.jp","fujiidera.osaka.jp","habikino.osaka.jp","hannan.osaka.jp","higashiosaka.osaka.jp","higashisumiyoshi.osaka.jp","higashiyodogawa.osaka.jp","hirakata.osaka.jp","ibaraki.osaka.jp","ikeda.osaka.jp","izumi.osaka.jp","izumiotsu.osaka.jp","izumisano.osaka.jp","kadoma.osaka.jp","kaizuka.osaka.jp","kanan.osaka.jp","kashiwara.osaka.jp","katano.osaka.jp","kawachinagano.osaka.jp","kishiwada.osaka.jp","kita.osaka.jp","kumatori.osaka.jp","matsubara.osaka.jp","minato.osaka.jp","minoh.osaka.jp","misaki.osaka.jp","moriguchi.osaka.jp","neyagawa.osaka.jp","nishi.osaka.jp","nose.osaka.jp","osakasayama.osaka.jp","sakai.osaka.jp","sayama.osaka.jp","sennan.osaka.jp","settsu.osaka.jp","shijonawate.osaka.jp","shimamoto.osaka.jp","suita.osaka.jp","tadaoka.osaka.jp","taishi.osaka.jp","tajiri.osaka.jp","takaishi.osaka.jp","takatsuki.osaka.jp","tondabayashi.osaka.jp","toyonaka.osaka.jp","toyono.osaka.jp","yao.osaka.jp","ariake.saga.jp","arita.saga.jp","fukudomi.saga.jp","genkai.saga.jp","hamatama.saga.jp","hizen.saga.jp","imari.saga.jp","kamimine.saga.jp","kanzaki.saga.jp","karatsu.saga.jp","kashima.saga.jp","kitagata.saga.jp","kitahata.saga.jp","kiyama.saga.jp","kouhoku.saga.jp","kyuragi.saga.jp","nishiarita.saga.jp","ogi.saga.jp","omachi.saga.jp","ouchi.saga.jp","saga.saga.jp","shiroishi.saga.jp","taku.saga.jp","tara.saga.jp","tosu.saga.jp","yoshinogari.saga.jp","arakawa.saitama.jp","asaka.saitama.jp","chichibu.saitama.jp","fujimi.saitama.jp","fujimino.saitama.jp","fukaya.saitama.jp","hanno.saitama.jp","hanyu.saitama.jp","hasuda.saitama.jp","hatogaya.saitama.jp","hatoyama.saitama.jp","hidaka.saitama.jp","higashichichibu.saitama.jp","higashimatsuyama.saitama.jp","honjo.saitama.jp","ina.saitama.jp","iruma.saitama.jp","iwatsuki.saitama.jp","kamiizumi.saitama.jp","kamikawa.saitama.jp","kamisato.saitama.jp","kasukabe.saitama.jp","kawagoe.saitama.jp","kawaguchi.saitama.jp","kawajima.saitama.jp","kazo.saitama.jp","kitamoto.saitama.jp","koshigaya.saitama.jp","kounosu.saitama.jp","kuki.saitama.jp","kumagaya.saitama.jp","matsubushi.saitama.jp","minano.saitama.jp","misato.saitama.jp","miyashiro.saitama.jp","miyoshi.saitama.jp","moroyama.saitama.jp","nagatoro.saitama.jp","namegawa.saitama.jp","niiza.saitama.jp","ogano.saitama.jp","ogawa.saitama.jp","ogose.saitama.jp","okegawa.saitama.jp","omiya.saitama.jp","otaki.saitama.jp","ranzan.saitama.jp","ryokami.saitama.jp","saitama.saitama.jp","sakado.saitama.jp","satte.saitama.jp","sayama.saitama.jp","shiki.saitama.jp","shiraoka.saitama.jp","soka.saitama.jp","sugito.saitama.jp","toda.saitama.jp","tokigawa.saitama.jp","tokorozawa.saitama.jp","tsurugashima.saitama.jp","urawa.saitama.jp","warabi.saitama.jp","yashio.saitama.jp","yokoze.saitama.jp","yono.saitama.jp","yorii.saitama.jp","yoshida.saitama.jp","yoshikawa.saitama.jp","yoshimi.saitama.jp","aisho.shiga.jp","gamo.shiga.jp","higashiomi.shiga.jp","hikone.shiga.jp","koka.shiga.jp","konan.shiga.jp","kosei.shiga.jp","koto.shiga.jp","kusatsu.shiga.jp","maibara.shiga.jp","moriyama.shiga.jp","nagahama.shiga.jp","nishiazai.shiga.jp","notogawa.shiga.jp","omihachiman.shiga.jp","otsu.shiga.jp","ritto.shiga.jp","ryuoh.shiga.jp","takashima.shiga.jp","takatsuki.shiga.jp","torahime.shiga.jp","toyosato.shiga.jp","yasu.shiga.jp","akagi.shimane.jp","ama.shimane.jp","gotsu.shimane.jp","hamada.shimane.jp","higashiizumo.shimane.jp","hikawa.shimane.jp","hikimi.shimane.jp","izumo.shimane.jp","kakinoki.shimane.jp","masuda.shimane.jp","matsue.shimane.jp","misato.shimane.jp","nishinoshima.shimane.jp","ohda.shimane.jp","okinoshima.shimane.jp","okuizumo.shimane.jp","shimane.shimane.jp","tamayu.shimane.jp","tsuwano.shimane.jp","unnan.shimane.jp","yakumo.shimane.jp","yasugi.shimane.jp","yatsuka.shimane.jp","arai.shizuoka.jp","atami.shizuoka.jp","fuji.shizuoka.jp","fujieda.shizuoka.jp","fujikawa.shizuoka.jp","fujinomiya.shizuoka.jp","fukuroi.shizuoka.jp","gotemba.shizuoka.jp","haibara.shizuoka.jp","hamamatsu.shizuoka.jp","higashiizu.shizuoka.jp","ito.shizuoka.jp","iwata.shizuoka.jp","izu.shizuoka.jp","izunokuni.shizuoka.jp","kakegawa.shizuoka.jp","kannami.shizuoka.jp","kawanehon.shizuoka.jp","kawazu.shizuoka.jp","kikugawa.shizuoka.jp","kosai.shizuoka.jp","makinohara.shizuoka.jp","matsuzaki.shizuoka.jp","minamiizu.shizuoka.jp","mishima.shizuoka.jp","morimachi.shizuoka.jp","nishiizu.shizuoka.jp","numazu.shizuoka.jp","omaezaki.shizuoka.jp","shimada.shizuoka.jp","shimizu.shizuoka.jp","shimoda.shizuoka.jp","shizuoka.shizuoka.jp","susono.shizuoka.jp","yaizu.shizuoka.jp","yoshida.shizuoka.jp","ashikaga.tochigi.jp","bato.tochigi.jp","haga.tochigi.jp","ichikai.tochigi.jp","iwafune.tochigi.jp","kaminokawa.tochigi.jp","kanuma.tochigi.jp","karasuyama.tochigi.jp","kuroiso.tochigi.jp","mashiko.tochigi.jp","mibu.tochigi.jp","moka.tochigi.jp","motegi.tochigi.jp","nasu.tochigi.jp","nasushiobara.tochigi.jp","nikko.tochigi.jp","nishikata.tochigi.jp","nogi.tochigi.jp","ohira.tochigi.jp","ohtawara.tochigi.jp","oyama.tochigi.jp","sakura.tochigi.jp","sano.tochigi.jp","shimotsuke.tochigi.jp","shioya.tochigi.jp","takanezawa.tochigi.jp","tochigi.tochigi.jp","tsuga.tochigi.jp","ujiie.tochigi.jp","utsunomiya.tochigi.jp","yaita.tochigi.jp","aizumi.tokushima.jp","anan.tokushima.jp","ichiba.tokushima.jp","itano.tokushima.jp","kainan.tokushima.jp","komatsushima.tokushima.jp","matsushige.tokushima.jp","mima.tokushima.jp","minami.tokushima.jp","miyoshi.tokushima.jp","mugi.tokushima.jp","nakagawa.tokushima.jp","naruto.tokushima.jp","sanagochi.tokushima.jp","shishikui.tokushima.jp","tokushima.tokushima.jp","wajiki.tokushima.jp","adachi.tokyo.jp","akiruno.tokyo.jp","akishima.tokyo.jp","aogashima.tokyo.jp","arakawa.tokyo.jp","bunkyo.tokyo.jp","chiyoda.tokyo.jp","chofu.tokyo.jp","chuo.tokyo.jp","edogawa.tokyo.jp","fuchu.tokyo.jp","fussa.tokyo.jp","hachijo.tokyo.jp","hachioji.tokyo.jp","hamura.tokyo.jp","higashikurume.tokyo.jp","higashimurayama.tokyo.jp","higashiyamato.tokyo.jp","hino.tokyo.jp","hinode.tokyo.jp","hinohara.tokyo.jp","inagi.tokyo.jp","itabashi.tokyo.jp","katsushika.tokyo.jp","kita.tokyo.jp","kiyose.tokyo.jp","kodaira.tokyo.jp","koganei.tokyo.jp","kokubunji.tokyo.jp","komae.tokyo.jp","koto.tokyo.jp","kouzushima.tokyo.jp","kunitachi.tokyo.jp","machida.tokyo.jp","meguro.tokyo.jp","minato.tokyo.jp","mitaka.tokyo.jp","mizuho.tokyo.jp","musashimurayama.tokyo.jp","musashino.tokyo.jp","nakano.tokyo.jp","nerima.tokyo.jp","ogasawara.tokyo.jp","okutama.tokyo.jp","ome.tokyo.jp","oshima.tokyo.jp","ota.tokyo.jp","setagaya.tokyo.jp","shibuya.tokyo.jp","shinagawa.tokyo.jp","shinjuku.tokyo.jp","suginami.tokyo.jp","sumida.tokyo.jp","tachikawa.tokyo.jp","taito.tokyo.jp","tama.tokyo.jp","toshima.tokyo.jp","chizu.tottori.jp","hino.tottori.jp","kawahara.tottori.jp","koge.tottori.jp","kotoura.tottori.jp","misasa.tottori.jp","nanbu.tottori.jp","nichinan.tottori.jp","sakaiminato.tottori.jp","tottori.tottori.jp","wakasa.tottori.jp","yazu.tottori.jp","yonago.tottori.jp","asahi.toyama.jp","fuchu.toyama.jp","fukumitsu.toyama.jp","funahashi.toyama.jp","himi.toyama.jp","imizu.toyama.jp","inami.toyama.jp","johana.toyama.jp","kamiichi.toyama.jp","kurobe.toyama.jp","nakaniikawa.toyama.jp","namerikawa.toyama.jp","nanto.toyama.jp","nyuzen.toyama.jp","oyabe.toyama.jp","taira.toyama.jp","takaoka.toyama.jp","tateyama.toyama.jp","toga.toyama.jp","tonami.toyama.jp","toyama.toyama.jp","unazuki.toyama.jp","uozu.toyama.jp","yamada.toyama.jp","arida.wakayama.jp","aridagawa.wakayama.jp","gobo.wakayama.jp","hashimoto.wakayama.jp","hidaka.wakayama.jp","hirogawa.wakayama.jp","inami.wakayama.jp","iwade.wakayama.jp","kainan.wakayama.jp","kamitonda.wakayama.jp","katsuragi.wakayama.jp","kimino.wakayama.jp","kinokawa.wakayama.jp","kitayama.wakayama.jp","koya.wakayama.jp","koza.wakayama.jp","kozagawa.wakayama.jp","kudoyama.wakayama.jp","kushimoto.wakayama.jp","mihama.wakayama.jp","misato.wakayama.jp","nachikatsuura.wakayama.jp","shingu.wakayama.jp","shirahama.wakayama.jp","taiji.wakayama.jp","tanabe.wakayama.jp","wakayama.wakayama.jp","yuasa.wakayama.jp","yura.wakayama.jp","asahi.yamagata.jp","funagata.yamagata.jp","higashine.yamagata.jp","iide.yamagata.jp","kahoku.yamagata.jp","kaminoyama.yamagata.jp","kaneyama.yamagata.jp","kawanishi.yamagata.jp","mamurogawa.yamagata.jp","mikawa.yamagata.jp","murayama.yamagata.jp","nagai.yamagata.jp","nakayama.yamagata.jp","nanyo.yamagata.jp","nishikawa.yamagata.jp","obanazawa.yamagata.jp","oe.yamagata.jp","oguni.yamagata.jp","ohkura.yamagata.jp","oishida.yamagata.jp","sagae.yamagata.jp","sakata.yamagata.jp","sakegawa.yamagata.jp","shinjo.yamagata.jp","shirataka.yamagata.jp","shonai.yamagata.jp","takahata.yamagata.jp","tendo.yamagata.jp","tozawa.yamagata.jp","tsuruoka.yamagata.jp","yamagata.yamagata.jp","yamanobe.yamagata.jp","yonezawa.yamagata.jp","yuza.yamagata.jp","abu.yamaguchi.jp","hagi.yamaguchi.jp","hikari.yamaguchi.jp","hofu.yamaguchi.jp","iwakuni.yamaguchi.jp","kudamatsu.yamaguchi.jp","mitou.yamaguchi.jp","nagato.yamaguchi.jp","oshima.yamaguchi.jp","shimonoseki.yamaguchi.jp","shunan.yamaguchi.jp","tabuse.yamaguchi.jp","tokuyama.yamaguchi.jp","toyota.yamaguchi.jp","ube.yamaguchi.jp","yuu.yamaguchi.jp","chuo.yamanashi.jp","doshi.yamanashi.jp","fuefuki.yamanashi.jp","fujikawa.yamanashi.jp","fujikawaguchiko.yamanashi.jp","fujiyoshida.yamanashi.jp","hayakawa.yamanashi.jp","hokuto.yamanashi.jp","ichikawamisato.yamanashi.jp","kai.yamanashi.jp","kofu.yamanashi.jp","koshu.yamanashi.jp","kosuge.yamanashi.jp","minami-alps.yamanashi.jp","minobu.yamanashi.jp","nakamichi.yamanashi.jp","nanbu.yamanashi.jp","narusawa.yamanashi.jp","nirasaki.yamanashi.jp","nishikatsura.yamanashi.jp","oshino.yamanashi.jp","otsuki.yamanashi.jp","showa.yamanashi.jp","tabayama.yamanashi.jp","tsuru.yamanashi.jp","uenohara.yamanashi.jp","yamanakako.yamanashi.jp","yamanashi.yamanashi.jp","ke","ac.ke","co.ke","go.ke","info.ke","me.ke","mobi.ke","ne.ke","or.ke","sc.ke","kg","org.kg","net.kg","com.kg","edu.kg","gov.kg","mil.kg","*.kh","ki","edu.ki","biz.ki","net.ki","org.ki","gov.ki","info.ki","com.ki","km","org.km","nom.km","gov.km","prd.km","tm.km","edu.km","mil.km","ass.km","com.km","coop.km","asso.km","presse.km","medecin.km","notaires.km","pharmaciens.km","veterinaire.km","gouv.km","kn","net.kn","org.kn","edu.kn","gov.kn","kp","com.kp","edu.kp","gov.kp","org.kp","rep.kp","tra.kp","kr","ac.kr","co.kr","es.kr","go.kr","hs.kr","kg.kr","mil.kr","ms.kr","ne.kr","or.kr","pe.kr","re.kr","sc.kr","busan.kr","chungbuk.kr","chungnam.kr","daegu.kr","daejeon.kr","gangwon.kr","gwangju.kr","gyeongbuk.kr","gyeonggi.kr","gyeongnam.kr","incheon.kr","jeju.kr","jeonbuk.kr","jeonnam.kr","seoul.kr","ulsan.kr","kw","com.kw","edu.kw","emb.kw","gov.kw","ind.kw","net.kw","org.kw","ky","com.ky","edu.ky","net.ky","org.ky","kz","org.kz","edu.kz","net.kz","gov.kz","mil.kz","com.kz","la","int.la","net.la","info.la","edu.la","gov.la","per.la","com.la","org.la","lb","com.lb","edu.lb","gov.lb","net.lb","org.lb","lc","com.lc","net.lc","co.lc","org.lc","edu.lc","gov.lc","li","lk","gov.lk","sch.lk","net.lk","int.lk","com.lk","org.lk","edu.lk","ngo.lk","soc.lk","web.lk","ltd.lk","assn.lk","grp.lk","hotel.lk","ac.lk","lr","com.lr","edu.lr","gov.lr","org.lr","net.lr","ls","ac.ls","biz.ls","co.ls","edu.ls","gov.ls","info.ls","net.ls","org.ls","sc.ls","lt","gov.lt","lu","lv","com.lv","edu.lv","gov.lv","org.lv","mil.lv","id.lv","net.lv","asn.lv","conf.lv","ly","com.ly","net.ly","gov.ly","plc.ly","edu.ly","sch.ly","med.ly","org.ly","id.ly","ma","co.ma","net.ma","gov.ma","org.ma","ac.ma","press.ma","mc","tm.mc","asso.mc","md","me","co.me","net.me","org.me","edu.me","ac.me","gov.me","its.me","priv.me","mg","org.mg","nom.mg","gov.mg","prd.mg","tm.mg","edu.mg","mil.mg","com.mg","co.mg","mh","mil","mk","com.mk","org.mk","net.mk","edu.mk","gov.mk","inf.mk","name.mk","ml","com.ml","edu.ml","gouv.ml","gov.ml","net.ml","org.ml","presse.ml","*.mm","mn","gov.mn","edu.mn","org.mn","mo","com.mo","net.mo","org.mo","edu.mo","gov.mo","mobi","mp","mq","mr","gov.mr","ms","com.ms","edu.ms","gov.ms","net.ms","org.ms","mt","com.mt","edu.mt","net.mt","org.mt","mu","com.mu","net.mu","org.mu","gov.mu","ac.mu","co.mu","or.mu","museum","academy.museum","agriculture.museum","air.museum","airguard.museum","alabama.museum","alaska.museum","amber.museum","ambulance.museum","american.museum","americana.museum","americanantiques.museum","americanart.museum","amsterdam.museum","and.museum","annefrank.museum","anthro.museum","anthropology.museum","antiques.museum","aquarium.museum","arboretum.museum","archaeological.museum","archaeology.museum","architecture.museum","art.museum","artanddesign.museum","artcenter.museum","artdeco.museum","arteducation.museum","artgallery.museum","arts.museum","artsandcrafts.museum","asmatart.museum","assassination.museum","assisi.museum","association.museum","astronomy.museum","atlanta.museum","austin.museum","australia.museum","automotive.museum","aviation.museum","axis.museum","badajoz.museum","baghdad.museum","bahn.museum","bale.museum","baltimore.museum","barcelona.museum","baseball.museum","basel.museum","baths.museum","bauern.museum","beauxarts.museum","beeldengeluid.museum","bellevue.museum","bergbau.museum","berkeley.museum","berlin.museum","bern.museum","bible.museum","bilbao.museum","bill.museum","birdart.museum","birthplace.museum","bonn.museum","boston.museum","botanical.museum","botanicalgarden.museum","botanicgarden.museum","botany.museum","brandywinevalley.museum","brasil.museum","bristol.museum","british.museum","britishcolumbia.museum","broadcast.museum","brunel.museum","brussel.museum","brussels.museum","bruxelles.museum","building.museum","burghof.museum","bus.museum","bushey.museum","cadaques.museum","california.museum","cambridge.museum","can.museum","canada.museum","capebreton.museum","carrier.museum","cartoonart.museum","casadelamoneda.museum","castle.museum","castres.museum","celtic.museum","center.museum","chattanooga.museum","cheltenham.museum","chesapeakebay.museum","chicago.museum","children.museum","childrens.museum","childrensgarden.museum","chiropractic.museum","chocolate.museum","christiansburg.museum","cincinnati.museum","cinema.museum","circus.museum","civilisation.museum","civilization.museum","civilwar.museum","clinton.museum","clock.museum","coal.museum","coastaldefence.museum","cody.museum","coldwar.museum","collection.museum","colonialwilliamsburg.museum","coloradoplateau.museum","columbia.museum","columbus.museum","communication.museum","communications.museum","community.museum","computer.museum","computerhistory.museum","comunica\xE7\xF5es.museum","contemporary.museum","contemporaryart.museum","convent.museum","copenhagen.museum","corporation.museum","correios-e-telecomunica\xE7\xF5es.museum","corvette.museum","costume.museum","countryestate.museum","county.museum","crafts.museum","cranbrook.museum","creation.museum","cultural.museum","culturalcenter.museum","culture.museum","cyber.museum","cymru.museum","dali.museum","dallas.museum","database.museum","ddr.museum","decorativearts.museum","delaware.museum","delmenhorst.museum","denmark.museum","depot.museum","design.museum","detroit.museum","dinosaur.museum","discovery.museum","dolls.museum","donostia.museum","durham.museum","eastafrica.museum","eastcoast.museum","education.museum","educational.museum","egyptian.museum","eisenbahn.museum","elburg.museum","elvendrell.museum","embroidery.museum","encyclopedic.museum","england.museum","entomology.museum","environment.museum","environmentalconservation.museum","epilepsy.museum","essex.museum","estate.museum","ethnology.museum","exeter.museum","exhibition.museum","family.museum","farm.museum","farmequipment.museum","farmers.museum","farmstead.museum","field.museum","figueres.museum","filatelia.museum","film.museum","fineart.museum","finearts.museum","finland.museum","flanders.museum","florida.museum","force.museum","fortmissoula.museum","fortworth.museum","foundation.museum","francaise.museum","frankfurt.museum","franziskaner.museum","freemasonry.museum","freiburg.museum","fribourg.museum","frog.museum","fundacio.museum","furniture.museum","gallery.museum","garden.museum","gateway.museum","geelvinck.museum","gemological.museum","geology.museum","georgia.museum","giessen.museum","glas.museum","glass.museum","gorge.museum","grandrapids.museum","graz.museum","guernsey.museum","halloffame.museum","hamburg.museum","handson.museum","harvestcelebration.museum","hawaii.museum","health.museum","heimatunduhren.museum","hellas.museum","helsinki.museum","hembygdsforbund.museum","heritage.museum","histoire.museum","historical.museum","historicalsociety.museum","historichouses.museum","historisch.museum","historisches.museum","history.museum","historyofscience.museum","horology.museum","house.museum","humanities.museum","illustration.museum","imageandsound.museum","indian.museum","indiana.museum","indianapolis.museum","indianmarket.museum","intelligence.museum","interactive.museum","iraq.museum","iron.museum","isleofman.museum","jamison.museum","jefferson.museum","jerusalem.museum","jewelry.museum","jewish.museum","jewishart.museum","jfk.museum","journalism.museum","judaica.museum","judygarland.museum","juedisches.museum","juif.museum","karate.museum","karikatur.museum","kids.museum","koebenhavn.museum","koeln.museum","kunst.museum","kunstsammlung.museum","kunstunddesign.museum","labor.museum","labour.museum","lajolla.museum","lancashire.museum","landes.museum","lans.museum","l\xE4ns.museum","larsson.museum","lewismiller.museum","lincoln.museum","linz.museum","living.museum","livinghistory.museum","localhistory.museum","london.museum","losangeles.museum","louvre.museum","loyalist.museum","lucerne.museum","luxembourg.museum","luzern.museum","mad.museum","madrid.museum","mallorca.museum","manchester.museum","mansion.museum","mansions.museum","manx.museum","marburg.museum","maritime.museum","maritimo.museum","maryland.museum","marylhurst.museum","media.museum","medical.museum","medizinhistorisches.museum","meeres.museum","memorial.museum","mesaverde.museum","michigan.museum","midatlantic.museum","military.museum","mill.museum","miners.museum","mining.museum","minnesota.museum","missile.museum","missoula.museum","modern.museum","moma.museum","money.museum","monmouth.museum","monticello.museum","montreal.museum","moscow.museum","motorcycle.museum","muenchen.museum","muenster.museum","mulhouse.museum","muncie.museum","museet.museum","museumcenter.museum","museumvereniging.museum","music.museum","national.museum","nationalfirearms.museum","nationalheritage.museum","nativeamerican.museum","naturalhistory.museum","naturalhistorymuseum.museum","naturalsciences.museum","nature.museum","naturhistorisches.museum","natuurwetenschappen.museum","naumburg.museum","naval.museum","nebraska.museum","neues.museum","newhampshire.museum","newjersey.museum","newmexico.museum","newport.museum","newspaper.museum","newyork.museum","niepce.museum","norfolk.museum","north.museum","nrw.museum","nyc.museum","nyny.museum","oceanographic.museum","oceanographique.museum","omaha.museum","online.museum","ontario.museum","openair.museum","oregon.museum","oregontrail.museum","otago.museum","oxford.museum","pacific.museum","paderborn.museum","palace.museum","paleo.museum","palmsprings.museum","panama.museum","paris.museum","pasadena.museum","pharmacy.museum","philadelphia.museum","philadelphiaarea.museum","philately.museum","phoenix.museum","photography.museum","pilots.museum","pittsburgh.museum","planetarium.museum","plantation.museum","plants.museum","plaza.museum","portal.museum","portland.museum","portlligat.museum","posts-and-telecommunications.museum","preservation.museum","presidio.museum","press.museum","project.museum","public.museum","pubol.museum","quebec.museum","railroad.museum","railway.museum","research.museum","resistance.museum","riodejaneiro.museum","rochester.museum","rockart.museum","roma.museum","russia.museum","saintlouis.museum","salem.museum","salvadordali.museum","salzburg.museum","sandiego.museum","sanfrancisco.museum","santabarbara.museum","santacruz.museum","santafe.museum","saskatchewan.museum","satx.museum","savannahga.museum","schlesisches.museum","schoenbrunn.museum","schokoladen.museum","school.museum","schweiz.museum","science.museum","scienceandhistory.museum","scienceandindustry.museum","sciencecenter.museum","sciencecenters.museum","science-fiction.museum","sciencehistory.museum","sciences.museum","sciencesnaturelles.museum","scotland.museum","seaport.museum","settlement.museum","settlers.museum","shell.museum","sherbrooke.museum","sibenik.museum","silk.museum","ski.museum","skole.museum","society.museum","sologne.museum","soundandvision.museum","southcarolina.museum","southwest.museum","space.museum","spy.museum","square.museum","stadt.museum","stalbans.museum","starnberg.museum","state.museum","stateofdelaware.museum","station.museum","steam.museum","steiermark.museum","stjohn.museum","stockholm.museum","stpetersburg.museum","stuttgart.museum","suisse.museum","surgeonshall.museum","surrey.museum","svizzera.museum","sweden.museum","sydney.museum","tank.museum","tcm.museum","technology.museum","telekommunikation.museum","television.museum","texas.museum","textile.museum","theater.museum","time.museum","timekeeping.museum","topology.museum","torino.museum","touch.museum","town.museum","transport.museum","tree.museum","trolley.museum","trust.museum","trustee.museum","uhren.museum","ulm.museum","undersea.museum","university.museum","usa.museum","usantiques.museum","usarts.museum","uscountryestate.museum","usculture.museum","usdecorativearts.museum","usgarden.museum","ushistory.museum","ushuaia.museum","uslivinghistory.museum","utah.museum","uvic.museum","valley.museum","vantaa.museum","versailles.museum","viking.museum","village.museum","virginia.museum","virtual.museum","virtuel.museum","vlaanderen.museum","volkenkunde.museum","wales.museum","wallonie.museum","war.museum","washingtondc.museum","watchandclock.museum","watch-and-clock.museum","western.museum","westfalen.museum","whaling.museum","wildlife.museum","williamsburg.museum","windmill.museum","workshop.museum","york.museum","yorkshire.museum","yosemite.museum","youth.museum","zoological.museum","zoology.museum","\u05D9\u05E8\u05D5\u05E9\u05DC\u05D9\u05DD.museum","\u0438\u043A\u043E\u043C.museum","mv","aero.mv","biz.mv","com.mv","coop.mv","edu.mv","gov.mv","info.mv","int.mv","mil.mv","museum.mv","name.mv","net.mv","org.mv","pro.mv","mw","ac.mw","biz.mw","co.mw","com.mw","coop.mw","edu.mw","gov.mw","int.mw","museum.mw","net.mw","org.mw","mx","com.mx","org.mx","gob.mx","edu.mx","net.mx","my","biz.my","com.my","edu.my","gov.my","mil.my","name.my","net.my","org.my","mz","ac.mz","adv.mz","co.mz","edu.mz","gov.mz","mil.mz","net.mz","org.mz","na","info.na","pro.na","name.na","school.na","or.na","dr.na","us.na","mx.na","ca.na","in.na","cc.na","tv.na","ws.na","mobi.na","co.na","com.na","org.na","name","nc","asso.nc","nom.nc","ne","net","nf","com.nf","net.nf","per.nf","rec.nf","web.nf","arts.nf","firm.nf","info.nf","other.nf","store.nf","ng","com.ng","edu.ng","gov.ng","i.ng","mil.ng","mobi.ng","name.ng","net.ng","org.ng","sch.ng","ni","ac.ni","biz.ni","co.ni","com.ni","edu.ni","gob.ni","in.ni","info.ni","int.ni","mil.ni","net.ni","nom.ni","org.ni","web.ni","nl","no","fhs.no","vgs.no","fylkesbibl.no","folkebibl.no","museum.no","idrett.no","priv.no","mil.no","stat.no","dep.no","kommune.no","herad.no","aa.no","ah.no","bu.no","fm.no","hl.no","hm.no","jan-mayen.no","mr.no","nl.no","nt.no","of.no","ol.no","oslo.no","rl.no","sf.no","st.no","svalbard.no","tm.no","tr.no","va.no","vf.no","gs.aa.no","gs.ah.no","gs.bu.no","gs.fm.no","gs.hl.no","gs.hm.no","gs.jan-mayen.no","gs.mr.no","gs.nl.no","gs.nt.no","gs.of.no","gs.ol.no","gs.oslo.no","gs.rl.no","gs.sf.no","gs.st.no","gs.svalbard.no","gs.tm.no","gs.tr.no","gs.va.no","gs.vf.no","akrehamn.no","\xE5krehamn.no","algard.no","\xE5lg\xE5rd.no","arna.no","brumunddal.no","bryne.no","bronnoysund.no","br\xF8nn\xF8ysund.no","drobak.no","dr\xF8bak.no","egersund.no","fetsund.no","floro.no","flor\xF8.no","fredrikstad.no","hokksund.no","honefoss.no","h\xF8nefoss.no","jessheim.no","jorpeland.no","j\xF8rpeland.no","kirkenes.no","kopervik.no","krokstadelva.no","langevag.no","langev\xE5g.no","leirvik.no","mjondalen.no","mj\xF8ndalen.no","mo-i-rana.no","mosjoen.no","mosj\xF8en.no","nesoddtangen.no","orkanger.no","osoyro.no","os\xF8yro.no","raholt.no","r\xE5holt.no","sandnessjoen.no","sandnessj\xF8en.no","skedsmokorset.no","slattum.no","spjelkavik.no","stathelle.no","stavern.no","stjordalshalsen.no","stj\xF8rdalshalsen.no","tananger.no","tranby.no","vossevangen.no","afjord.no","\xE5fjord.no","agdenes.no","al.no","\xE5l.no","alesund.no","\xE5lesund.no","alstahaug.no","alta.no","\xE1lt\xE1.no","alaheadju.no","\xE1laheadju.no","alvdal.no","amli.no","\xE5mli.no","amot.no","\xE5mot.no","andebu.no","andoy.no","and\xF8y.no","andasuolo.no","ardal.no","\xE5rdal.no","aremark.no","arendal.no","\xE5s.no","aseral.no","\xE5seral.no","asker.no","askim.no","askvoll.no","askoy.no","ask\xF8y.no","asnes.no","\xE5snes.no","audnedaln.no","aukra.no","aure.no","aurland.no","aurskog-holand.no","aurskog-h\xF8land.no","austevoll.no","austrheim.no","averoy.no","aver\xF8y.no","balestrand.no","ballangen.no","balat.no","b\xE1l\xE1t.no","balsfjord.no","bahccavuotna.no","b\xE1hccavuotna.no","bamble.no","bardu.no","beardu.no","beiarn.no","bajddar.no","b\xE1jddar.no","baidar.no","b\xE1id\xE1r.no","berg.no","bergen.no","berlevag.no","berlev\xE5g.no","bearalvahki.no","bearalv\xE1hki.no","bindal.no","birkenes.no","bjarkoy.no","bjark\xF8y.no","bjerkreim.no","bjugn.no","bodo.no","bod\xF8.no","badaddja.no","b\xE5d\xE5ddj\xE5.no","budejju.no","bokn.no","bremanger.no","bronnoy.no","br\xF8nn\xF8y.no","bygland.no","bykle.no","barum.no","b\xE6rum.no","bo.telemark.no","b\xF8.telemark.no","bo.nordland.no","b\xF8.nordland.no","bievat.no","biev\xE1t.no","bomlo.no","b\xF8mlo.no","batsfjord.no","b\xE5tsfjord.no","bahcavuotna.no","b\xE1hcavuotna.no","dovre.no","drammen.no","drangedal.no","dyroy.no","dyr\xF8y.no","donna.no","d\xF8nna.no","eid.no","eidfjord.no","eidsberg.no","eidskog.no","eidsvoll.no","eigersund.no","elverum.no","enebakk.no","engerdal.no","etne.no","etnedal.no","evenes.no","evenassi.no","even\xE1\u0161\u0161i.no","evje-og-hornnes.no","farsund.no","fauske.no","fuossko.no","fuoisku.no","fedje.no","fet.no","finnoy.no","finn\xF8y.no","fitjar.no","fjaler.no","fjell.no","flakstad.no","flatanger.no","flekkefjord.no","flesberg.no","flora.no","fla.no","fl\xE5.no","folldal.no","forsand.no","fosnes.no","frei.no","frogn.no","froland.no","frosta.no","frana.no","fr\xE6na.no","froya.no","fr\xF8ya.no","fusa.no","fyresdal.no","forde.no","f\xF8rde.no","gamvik.no","gangaviika.no","g\xE1\u014Bgaviika.no","gaular.no","gausdal.no","gildeskal.no","gildesk\xE5l.no","giske.no","gjemnes.no","gjerdrum.no","gjerstad.no","gjesdal.no","gjovik.no","gj\xF8vik.no","gloppen.no","gol.no","gran.no","grane.no","granvin.no","gratangen.no","grimstad.no","grong.no","kraanghke.no","kr\xE5anghke.no","grue.no","gulen.no","hadsel.no","halden.no","halsa.no","hamar.no","hamaroy.no","habmer.no","h\xE1bmer.no","hapmir.no","h\xE1pmir.no","hammerfest.no","hammarfeasta.no","h\xE1mm\xE1rfeasta.no","haram.no","hareid.no","harstad.no","hasvik.no","aknoluokta.no","\xE1k\u014Boluokta.no","hattfjelldal.no","aarborte.no","haugesund.no","hemne.no","hemnes.no","hemsedal.no","heroy.more-og-romsdal.no","her\xF8y.m\xF8re-og-romsdal.no","heroy.nordland.no","her\xF8y.nordland.no","hitra.no","hjartdal.no","hjelmeland.no","hobol.no","hob\xF8l.no","hof.no","hol.no","hole.no","holmestrand.no","holtalen.no","holt\xE5len.no","hornindal.no","horten.no","hurdal.no","hurum.no","hvaler.no","hyllestad.no","hagebostad.no","h\xE6gebostad.no","hoyanger.no","h\xF8yanger.no","hoylandet.no","h\xF8ylandet.no","ha.no","h\xE5.no","ibestad.no","inderoy.no","inder\xF8y.no","iveland.no","jevnaker.no","jondal.no","jolster.no","j\xF8lster.no","karasjok.no","karasjohka.no","k\xE1r\xE1\u0161johka.no","karlsoy.no","galsa.no","g\xE1ls\xE1.no","karmoy.no","karm\xF8y.no","kautokeino.no","guovdageaidnu.no","klepp.no","klabu.no","kl\xE6bu.no","kongsberg.no","kongsvinger.no","kragero.no","krager\xF8.no","kristiansand.no","kristiansund.no","krodsherad.no","kr\xF8dsherad.no","kvalsund.no","rahkkeravju.no","r\xE1hkker\xE1vju.no","kvam.no","kvinesdal.no","kvinnherad.no","kviteseid.no","kvitsoy.no","kvits\xF8y.no","kvafjord.no","kv\xE6fjord.no","giehtavuoatna.no","kvanangen.no","kv\xE6nangen.no","navuotna.no","n\xE1vuotna.no","kafjord.no","k\xE5fjord.no","gaivuotna.no","g\xE1ivuotna.no","larvik.no","lavangen.no","lavagis.no","loabat.no","loab\xE1t.no","lebesby.no","davvesiida.no","leikanger.no","leirfjord.no","leka.no","leksvik.no","lenvik.no","leangaviika.no","lea\u014Bgaviika.no","lesja.no","levanger.no","lier.no","lierne.no","lillehammer.no","lillesand.no","lindesnes.no","lindas.no","lind\xE5s.no","lom.no","loppa.no","lahppi.no","l\xE1hppi.no","lund.no","lunner.no","luroy.no","lur\xF8y.no","luster.no","lyngdal.no","lyngen.no","ivgu.no","lardal.no","lerdal.no","l\xE6rdal.no","lodingen.no","l\xF8dingen.no","lorenskog.no","l\xF8renskog.no","loten.no","l\xF8ten.no","malvik.no","masoy.no","m\xE5s\xF8y.no","muosat.no","muos\xE1t.no","mandal.no","marker.no","marnardal.no","masfjorden.no","meland.no","meldal.no","melhus.no","meloy.no","mel\xF8y.no","meraker.no","mer\xE5ker.no","moareke.no","mo\xE5reke.no","midsund.no","midtre-gauldal.no","modalen.no","modum.no","molde.no","moskenes.no","moss.no","mosvik.no","malselv.no","m\xE5lselv.no","malatvuopmi.no","m\xE1latvuopmi.no","namdalseid.no","aejrie.no","namsos.no","namsskogan.no","naamesjevuemie.no","n\xE5\xE5mesjevuemie.no","laakesvuemie.no","nannestad.no","narvik.no","narviika.no","naustdal.no","nedre-eiker.no","nes.akershus.no","nes.buskerud.no","nesna.no","nesodden.no","nesseby.no","unjarga.no","unj\xE1rga.no","nesset.no","nissedal.no","nittedal.no","nord-aurdal.no","nord-fron.no","nord-odal.no","norddal.no","nordkapp.no","davvenjarga.no","davvenj\xE1rga.no","nordre-land.no","nordreisa.no","raisa.no","r\xE1isa.no","nore-og-uvdal.no","notodden.no","naroy.no","n\xE6r\xF8y.no","notteroy.no","n\xF8tter\xF8y.no","odda.no","oksnes.no","\xF8ksnes.no","oppdal.no","oppegard.no","oppeg\xE5rd.no","orkdal.no","orland.no","\xF8rland.no","orskog.no","\xF8rskog.no","orsta.no","\xF8rsta.no","os.hedmark.no","os.hordaland.no","osen.no","osteroy.no","oster\xF8y.no","ostre-toten.no","\xF8stre-toten.no","overhalla.no","ovre-eiker.no","\xF8vre-eiker.no","oyer.no","\xF8yer.no","oygarden.no","\xF8ygarden.no","oystre-slidre.no","\xF8ystre-slidre.no","porsanger.no","porsangu.no","pors\xE1\u014Bgu.no","porsgrunn.no","radoy.no","rad\xF8y.no","rakkestad.no","rana.no","ruovat.no","randaberg.no","rauma.no","rendalen.no","rennebu.no","rennesoy.no","rennes\xF8y.no","rindal.no","ringebu.no","ringerike.no","ringsaker.no","rissa.no","risor.no","ris\xF8r.no","roan.no","rollag.no","rygge.no","ralingen.no","r\xE6lingen.no","rodoy.no","r\xF8d\xF8y.no","romskog.no","r\xF8mskog.no","roros.no","r\xF8ros.no","rost.no","r\xF8st.no","royken.no","r\xF8yken.no","royrvik.no","r\xF8yrvik.no","rade.no","r\xE5de.no","salangen.no","siellak.no","saltdal.no","salat.no","s\xE1l\xE1t.no","s\xE1lat.no","samnanger.no","sande.more-og-romsdal.no","sande.m\xF8re-og-romsdal.no","sande.vestfold.no","sandefjord.no","sandnes.no","sandoy.no","sand\xF8y.no","sarpsborg.no","sauda.no","sauherad.no","sel.no","selbu.no","selje.no","seljord.no","sigdal.no","siljan.no","sirdal.no","skaun.no","skedsmo.no","ski.no","skien.no","skiptvet.no","skjervoy.no","skjerv\xF8y.no","skierva.no","skierv\xE1.no","skjak.no","skj\xE5k.no","skodje.no","skanland.no","sk\xE5nland.no","skanit.no","sk\xE1nit.no","smola.no","sm\xF8la.no","snillfjord.no","snasa.no","sn\xE5sa.no","snoasa.no","snaase.no","sn\xE5ase.no","sogndal.no","sokndal.no","sola.no","solund.no","songdalen.no","sortland.no","spydeberg.no","stange.no","stavanger.no","steigen.no","steinkjer.no","stjordal.no","stj\xF8rdal.no","stokke.no","stor-elvdal.no","stord.no","stordal.no","storfjord.no","omasvuotna.no","strand.no","stranda.no","stryn.no","sula.no","suldal.no","sund.no","sunndal.no","surnadal.no","sveio.no","svelvik.no","sykkylven.no","sogne.no","s\xF8gne.no","somna.no","s\xF8mna.no","sondre-land.no","s\xF8ndre-land.no","sor-aurdal.no","s\xF8r-aurdal.no","sor-fron.no","s\xF8r-fron.no","sor-odal.no","s\xF8r-odal.no","sor-varanger.no","s\xF8r-varanger.no","matta-varjjat.no","m\xE1tta-v\xE1rjjat.no","sorfold.no","s\xF8rfold.no","sorreisa.no","s\xF8rreisa.no","sorum.no","s\xF8rum.no","tana.no","deatnu.no","time.no","tingvoll.no","tinn.no","tjeldsund.no","dielddanuorri.no","tjome.no","tj\xF8me.no","tokke.no","tolga.no","torsken.no","tranoy.no","tran\xF8y.no","tromso.no","troms\xF8.no","tromsa.no","romsa.no","trondheim.no","troandin.no","trysil.no","trana.no","tr\xE6na.no","trogstad.no","tr\xF8gstad.no","tvedestrand.no","tydal.no","tynset.no","tysfjord.no","divtasvuodna.no","divttasvuotna.no","tysnes.no","tysvar.no","tysv\xE6r.no","tonsberg.no","t\xF8nsberg.no","ullensaker.no","ullensvang.no","ulvik.no","utsira.no","vadso.no","vads\xF8.no","cahcesuolo.no","\u010D\xE1hcesuolo.no","vaksdal.no","valle.no","vang.no","vanylven.no","vardo.no","vard\xF8.no","varggat.no","v\xE1rgg\xE1t.no","vefsn.no","vaapste.no","vega.no","vegarshei.no","veg\xE5rshei.no","vennesla.no","verdal.no","verran.no","vestby.no","vestnes.no","vestre-slidre.no","vestre-toten.no","vestvagoy.no","vestv\xE5g\xF8y.no","vevelstad.no","vik.no","vikna.no","vindafjord.no","volda.no","voss.no","varoy.no","v\xE6r\xF8y.no","vagan.no","v\xE5gan.no","voagat.no","vagsoy.no","v\xE5gs\xF8y.no","vaga.no","v\xE5g\xE5.no","valer.ostfold.no","v\xE5ler.\xF8stfold.no","valer.hedmark.no","v\xE5ler.hedmark.no","*.np","nr","biz.nr","info.nr","gov.nr","edu.nr","org.nr","net.nr","com.nr","nu","nz","ac.nz","co.nz","cri.nz","geek.nz","gen.nz","govt.nz","health.nz","iwi.nz","kiwi.nz","maori.nz","mil.nz","m\u0101ori.nz","net.nz","org.nz","parliament.nz","school.nz","om","co.om","com.om","edu.om","gov.om","med.om","museum.om","net.om","org.om","pro.om","onion","org","pa","ac.pa","gob.pa","com.pa","org.pa","sld.pa","edu.pa","net.pa","ing.pa","abo.pa","med.pa","nom.pa","pe","edu.pe","gob.pe","nom.pe","mil.pe","org.pe","com.pe","net.pe","pf","com.pf","org.pf","edu.pf","*.pg","ph","com.ph","net.ph","org.ph","gov.ph","edu.ph","ngo.ph","mil.ph","i.ph","pk","com.pk","net.pk","edu.pk","org.pk","fam.pk","biz.pk","web.pk","gov.pk","gob.pk","gok.pk","gon.pk","gop.pk","gos.pk","info.pk","pl","com.pl","net.pl","org.pl","aid.pl","agro.pl","atm.pl","auto.pl","biz.pl","edu.pl","gmina.pl","gsm.pl","info.pl","mail.pl","miasta.pl","media.pl","mil.pl","nieruchomosci.pl","nom.pl","pc.pl","powiat.pl","priv.pl","realestate.pl","rel.pl","sex.pl","shop.pl","sklep.pl","sos.pl","szkola.pl","targi.pl","tm.pl","tourism.pl","travel.pl","turystyka.pl","gov.pl","ap.gov.pl","ic.gov.pl","is.gov.pl","us.gov.pl","kmpsp.gov.pl","kppsp.gov.pl","kwpsp.gov.pl","psp.gov.pl","wskr.gov.pl","kwp.gov.pl","mw.gov.pl","ug.gov.pl","um.gov.pl","umig.gov.pl","ugim.gov.pl","upow.gov.pl","uw.gov.pl","starostwo.gov.pl","pa.gov.pl","po.gov.pl","psse.gov.pl","pup.gov.pl","rzgw.gov.pl","sa.gov.pl","so.gov.pl","sr.gov.pl","wsa.gov.pl","sko.gov.pl","uzs.gov.pl","wiih.gov.pl","winb.gov.pl","pinb.gov.pl","wios.gov.pl","witd.gov.pl","wzmiuw.gov.pl","piw.gov.pl","wiw.gov.pl","griw.gov.pl","wif.gov.pl","oum.gov.pl","sdn.gov.pl","zp.gov.pl","uppo.gov.pl","mup.gov.pl","wuoz.gov.pl","konsulat.gov.pl","oirm.gov.pl","augustow.pl","babia-gora.pl","bedzin.pl","beskidy.pl","bialowieza.pl","bialystok.pl","bielawa.pl","bieszczady.pl","boleslawiec.pl","bydgoszcz.pl","bytom.pl","cieszyn.pl","czeladz.pl","czest.pl","dlugoleka.pl","elblag.pl","elk.pl","glogow.pl","gniezno.pl","gorlice.pl","grajewo.pl","ilawa.pl","jaworzno.pl","jelenia-gora.pl","jgora.pl","kalisz.pl","kazimierz-dolny.pl","karpacz.pl","kartuzy.pl","kaszuby.pl","katowice.pl","kepno.pl","ketrzyn.pl","klodzko.pl","kobierzyce.pl","kolobrzeg.pl","konin.pl","konskowola.pl","kutno.pl","lapy.pl","lebork.pl","legnica.pl","lezajsk.pl","limanowa.pl","lomza.pl","lowicz.pl","lubin.pl","lukow.pl","malbork.pl","malopolska.pl","mazowsze.pl","mazury.pl","mielec.pl","mielno.pl","mragowo.pl","naklo.pl","nowaruda.pl","nysa.pl","olawa.pl","olecko.pl","olkusz.pl","olsztyn.pl","opoczno.pl","opole.pl","ostroda.pl","ostroleka.pl","ostrowiec.pl","ostrowwlkp.pl","pila.pl","pisz.pl","podhale.pl","podlasie.pl","polkowice.pl","pomorze.pl","pomorskie.pl","prochowice.pl","pruszkow.pl","przeworsk.pl","pulawy.pl","radom.pl","rawa-maz.pl","rybnik.pl","rzeszow.pl","sanok.pl","sejny.pl","slask.pl","slupsk.pl","sosnowiec.pl","stalowa-wola.pl","skoczow.pl","starachowice.pl","stargard.pl","suwalki.pl","swidnica.pl","swiebodzin.pl","swinoujscie.pl","szczecin.pl","szczytno.pl","tarnobrzeg.pl","tgory.pl","turek.pl","tychy.pl","ustka.pl","walbrzych.pl","warmia.pl","warszawa.pl","waw.pl","wegrow.pl","wielun.pl","wlocl.pl","wloclawek.pl","wodzislaw.pl","wolomin.pl","wroclaw.pl","zachpomor.pl","zagan.pl","zarow.pl","zgora.pl","zgorzelec.pl","pm","pn","gov.pn","co.pn","org.pn","edu.pn","net.pn","post","pr","com.pr","net.pr","org.pr","gov.pr","edu.pr","isla.pr","pro.pr","biz.pr","info.pr","name.pr","est.pr","prof.pr","ac.pr","pro","aaa.pro","aca.pro","acct.pro","avocat.pro","bar.pro","cpa.pro","eng.pro","jur.pro","law.pro","med.pro","recht.pro","ps","edu.ps","gov.ps","sec.ps","plo.ps","com.ps","org.ps","net.ps","pt","net.pt","gov.pt","org.pt","edu.pt","int.pt","publ.pt","com.pt","nome.pt","pw","co.pw","ne.pw","or.pw","ed.pw","go.pw","belau.pw","py","com.py","coop.py","edu.py","gov.py","mil.py","net.py","org.py","qa","com.qa","edu.qa","gov.qa","mil.qa","name.qa","net.qa","org.qa","sch.qa","re","asso.re","com.re","nom.re","ro","arts.ro","com.ro","firm.ro","info.ro","nom.ro","nt.ro","org.ro","rec.ro","store.ro","tm.ro","www.ro","rs","ac.rs","co.rs","edu.rs","gov.rs","in.rs","org.rs","ru","rw","ac.rw","co.rw","coop.rw","gov.rw","mil.rw","net.rw","org.rw","sa","com.sa","net.sa","org.sa","gov.sa","med.sa","pub.sa","edu.sa","sch.sa","sb","com.sb","edu.sb","gov.sb","net.sb","org.sb","sc","com.sc","gov.sc","net.sc","org.sc","edu.sc","sd","com.sd","net.sd","org.sd","edu.sd","med.sd","tv.sd","gov.sd","info.sd","se","a.se","ac.se","b.se","bd.se","brand.se","c.se","d.se","e.se","f.se","fh.se","fhsk.se","fhv.se","g.se","h.se","i.se","k.se","komforb.se","kommunalforbund.se","komvux.se","l.se","lanbib.se","m.se","n.se","naturbruksgymn.se","o.se","org.se","p.se","parti.se","pp.se","press.se","r.se","s.se","t.se","tm.se","u.se","w.se","x.se","y.se","z.se","sg","com.sg","net.sg","org.sg","gov.sg","edu.sg","per.sg","sh","com.sh","net.sh","gov.sh","org.sh","mil.sh","si","sj","sk","sl","com.sl","net.sl","edu.sl","gov.sl","org.sl","sm","sn","art.sn","com.sn","edu.sn","gouv.sn","org.sn","perso.sn","univ.sn","so","com.so","edu.so","gov.so","me.so","net.so","org.so","sr","ss","biz.ss","com.ss","edu.ss","gov.ss","me.ss","net.ss","org.ss","sch.ss","st","co.st","com.st","consulado.st","edu.st","embaixada.st","mil.st","net.st","org.st","principe.st","saotome.st","store.st","su","sv","com.sv","edu.sv","gob.sv","org.sv","red.sv","sx","gov.sx","sy","edu.sy","gov.sy","net.sy","mil.sy","com.sy","org.sy","sz","co.sz","ac.sz","org.sz","tc","td","tel","tf","tg","th","ac.th","co.th","go.th","in.th","mi.th","net.th","or.th","tj","ac.tj","biz.tj","co.tj","com.tj","edu.tj","go.tj","gov.tj","int.tj","mil.tj","name.tj","net.tj","nic.tj","org.tj","test.tj","web.tj","tk","tl","gov.tl","tm","com.tm","co.tm","org.tm","net.tm","nom.tm","gov.tm","mil.tm","edu.tm","tn","com.tn","ens.tn","fin.tn","gov.tn","ind.tn","info.tn","intl.tn","mincom.tn","nat.tn","net.tn","org.tn","perso.tn","tourism.tn","to","com.to","gov.to","net.to","org.to","edu.to","mil.to","tr","av.tr","bbs.tr","bel.tr","biz.tr","com.tr","dr.tr","edu.tr","gen.tr","gov.tr","info.tr","mil.tr","k12.tr","kep.tr","name.tr","net.tr","org.tr","pol.tr","tel.tr","tsk.tr","tv.tr","web.tr","nc.tr","gov.nc.tr","tt","co.tt","com.tt","org.tt","net.tt","biz.tt","info.tt","pro.tt","int.tt","coop.tt","jobs.tt","mobi.tt","travel.tt","museum.tt","aero.tt","name.tt","gov.tt","edu.tt","tv","tw","edu.tw","gov.tw","mil.tw","com.tw","net.tw","org.tw","idv.tw","game.tw","ebiz.tw","club.tw","\u7DB2\u8DEF.tw","\u7D44\u7E54.tw","\u5546\u696D.tw","tz","ac.tz","co.tz","go.tz","hotel.tz","info.tz","me.tz","mil.tz","mobi.tz","ne.tz","or.tz","sc.tz","tv.tz","ua","com.ua","edu.ua","gov.ua","in.ua","net.ua","org.ua","cherkassy.ua","cherkasy.ua","chernigov.ua","chernihiv.ua","chernivtsi.ua","chernovtsy.ua","ck.ua","cn.ua","cr.ua","crimea.ua","cv.ua","dn.ua","dnepropetrovsk.ua","dnipropetrovsk.ua","donetsk.ua","dp.ua","if.ua","ivano-frankivsk.ua","kh.ua","kharkiv.ua","kharkov.ua","kherson.ua","khmelnitskiy.ua","khmelnytskyi.ua","kiev.ua","kirovograd.ua","km.ua","kr.ua","krym.ua","ks.ua","kv.ua","kyiv.ua","lg.ua","lt.ua","lugansk.ua","lutsk.ua","lv.ua","lviv.ua","mk.ua","mykolaiv.ua","nikolaev.ua","od.ua","odesa.ua","odessa.ua","pl.ua","poltava.ua","rivne.ua","rovno.ua","rv.ua","sb.ua","sebastopol.ua","sevastopol.ua","sm.ua","sumy.ua","te.ua","ternopil.ua","uz.ua","uzhgorod.ua","vinnica.ua","vinnytsia.ua","vn.ua","volyn.ua","yalta.ua","zaporizhzhe.ua","zaporizhzhia.ua","zhitomir.ua","zhytomyr.ua","zp.ua","zt.ua","ug","co.ug","or.ug","ac.ug","sc.ug","go.ug","ne.ug","com.ug","org.ug","uk","ac.uk","co.uk","gov.uk","ltd.uk","me.uk","net.uk","nhs.uk","org.uk","plc.uk","police.uk","*.sch.uk","us","dni.us","fed.us","isa.us","kids.us","nsn.us","ak.us","al.us","ar.us","as.us","az.us","ca.us","co.us","ct.us","dc.us","de.us","fl.us","ga.us","gu.us","hi.us","ia.us","id.us","il.us","in.us","ks.us","ky.us","la.us","ma.us","md.us","me.us","mi.us","mn.us","mo.us","ms.us","mt.us","nc.us","nd.us","ne.us","nh.us","nj.us","nm.us","nv.us","ny.us","oh.us","ok.us","or.us","pa.us","pr.us","ri.us","sc.us","sd.us","tn.us","tx.us","ut.us","vi.us","vt.us","va.us","wa.us","wi.us","wv.us","wy.us","k12.ak.us","k12.al.us","k12.ar.us","k12.as.us","k12.az.us","k12.ca.us","k12.co.us","k12.ct.us","k12.dc.us","k12.de.us","k12.fl.us","k12.ga.us","k12.gu.us","k12.ia.us","k12.id.us","k12.il.us","k12.in.us","k12.ks.us","k12.ky.us","k12.la.us","k12.ma.us","k12.md.us","k12.me.us","k12.mi.us","k12.mn.us","k12.mo.us","k12.ms.us","k12.mt.us","k12.nc.us","k12.ne.us","k12.nh.us","k12.nj.us","k12.nm.us","k12.nv.us","k12.ny.us","k12.oh.us","k12.ok.us","k12.or.us","k12.pa.us","k12.pr.us","k12.sc.us","k12.tn.us","k12.tx.us","k12.ut.us","k12.vi.us","k12.vt.us","k12.va.us","k12.wa.us","k12.wi.us","k12.wy.us","cc.ak.us","cc.al.us","cc.ar.us","cc.as.us","cc.az.us","cc.ca.us","cc.co.us","cc.ct.us","cc.dc.us","cc.de.us","cc.fl.us","cc.ga.us","cc.gu.us","cc.hi.us","cc.ia.us","cc.id.us","cc.il.us","cc.in.us","cc.ks.us","cc.ky.us","cc.la.us","cc.ma.us","cc.md.us","cc.me.us","cc.mi.us","cc.mn.us","cc.mo.us","cc.ms.us","cc.mt.us","cc.nc.us","cc.nd.us","cc.ne.us","cc.nh.us","cc.nj.us","cc.nm.us","cc.nv.us","cc.ny.us","cc.oh.us","cc.ok.us","cc.or.us","cc.pa.us","cc.pr.us","cc.ri.us","cc.sc.us","cc.sd.us","cc.tn.us","cc.tx.us","cc.ut.us","cc.vi.us","cc.vt.us","cc.va.us","cc.wa.us","cc.wi.us","cc.wv.us","cc.wy.us","lib.ak.us","lib.al.us","lib.ar.us","lib.as.us","lib.az.us","lib.ca.us","lib.co.us","lib.ct.us","lib.dc.us","lib.fl.us","lib.ga.us","lib.gu.us","lib.hi.us","lib.ia.us","lib.id.us","lib.il.us","lib.in.us","lib.ks.us","lib.ky.us","lib.la.us","lib.ma.us","lib.md.us","lib.me.us","lib.mi.us","lib.mn.us","lib.mo.us","lib.ms.us","lib.mt.us","lib.nc.us","lib.nd.us","lib.ne.us","lib.nh.us","lib.nj.us","lib.nm.us","lib.nv.us","lib.ny.us","lib.oh.us","lib.ok.us","lib.or.us","lib.pa.us","lib.pr.us","lib.ri.us","lib.sc.us","lib.sd.us","lib.tn.us","lib.tx.us","lib.ut.us","lib.vi.us","lib.vt.us","lib.va.us","lib.wa.us","lib.wi.us","lib.wy.us","pvt.k12.ma.us","chtr.k12.ma.us","paroch.k12.ma.us","ann-arbor.mi.us","cog.mi.us","dst.mi.us","eaton.mi.us","gen.mi.us","mus.mi.us","tec.mi.us","washtenaw.mi.us","uy","com.uy","edu.uy","gub.uy","mil.uy","net.uy","org.uy","uz","co.uz","com.uz","net.uz","org.uz","va","vc","com.vc","net.vc","org.vc","gov.vc","mil.vc","edu.vc","ve","arts.ve","bib.ve","co.ve","com.ve","e12.ve","edu.ve","firm.ve","gob.ve","gov.ve","info.ve","int.ve","mil.ve","net.ve","nom.ve","org.ve","rar.ve","rec.ve","store.ve","tec.ve","web.ve","vg","vi","co.vi","com.vi","k12.vi","net.vi","org.vi","vn","com.vn","net.vn","org.vn","edu.vn","gov.vn","int.vn","ac.vn","biz.vn","info.vn","name.vn","pro.vn","health.vn","vu","com.vu","edu.vu","net.vu","org.vu","wf","ws","com.ws","net.ws","org.ws","gov.ws","edu.ws","yt","\u0627\u0645\u0627\u0631\u0627\u062A","\u0570\u0561\u0575","\u09AC\u09BE\u0982\u09B2\u09BE","\u0431\u0433","\u0627\u0644\u0628\u062D\u0631\u064A\u0646","\u0431\u0435\u043B","\u4E2D\u56FD","\u4E2D\u570B","\u0627\u0644\u062C\u0632\u0627\u0626\u0631","\u0645\u0635\u0631","\u0435\u044E","\u03B5\u03C5","\u0645\u0648\u0631\u064A\u062A\u0627\u0646\u064A\u0627","\u10D2\u10D4","\u03B5\u03BB","\u9999\u6E2F","\u516C\u53F8.\u9999\u6E2F","\u6559\u80B2.\u9999\u6E2F","\u653F\u5E9C.\u9999\u6E2F","\u500B\u4EBA.\u9999\u6E2F","\u7DB2\u7D61.\u9999\u6E2F","\u7D44\u7E54.\u9999\u6E2F","\u0CAD\u0CBE\u0CB0\u0CA4","\u0B2D\u0B3E\u0B30\u0B24","\u09AD\u09BE\u09F0\u09A4","\u092D\u093E\u0930\u0924\u092E\u094D","\u092D\u093E\u0930\u094B\u0924","\u0680\u0627\u0631\u062A","\u0D2D\u0D3E\u0D30\u0D24\u0D02","\u092D\u093E\u0930\u0924","\u0628\u0627\u0631\u062A","\u0628\u06BE\u0627\u0631\u062A","\u0C2D\u0C3E\u0C30\u0C24\u0C4D","\u0AAD\u0ABE\u0AB0\u0AA4","\u0A2D\u0A3E\u0A30\u0A24","\u09AD\u09BE\u09B0\u09A4","\u0B87\u0BA8\u0BCD\u0BA4\u0BBF\u0BAF\u0BBE","\u0627\u06CC\u0631\u0627\u0646","\u0627\u064A\u0631\u0627\u0646","\u0639\u0631\u0627\u0642","\u0627\u0644\u0627\u0631\u062F\u0646","\uD55C\uAD6D","\u049B\u0430\u0437","\u0EA5\u0EB2\u0EA7","\u0DBD\u0D82\u0D9A\u0DCF","\u0B87\u0BB2\u0B99\u0BCD\u0B95\u0BC8","\u0627\u0644\u0645\u063A\u0631\u0628","\u043C\u043A\u0434","\u043C\u043E\u043D","\u6FB3\u9580","\u6FB3\u95E8","\u0645\u0644\u064A\u0633\u064A\u0627","\u0639\u0645\u0627\u0646","\u067E\u0627\u06A9\u0633\u062A\u0627\u0646","\u067E\u0627\u0643\u0633\u062A\u0627\u0646","\u0641\u0644\u0633\u0637\u064A\u0646","\u0441\u0440\u0431","\u043F\u0440.\u0441\u0440\u0431","\u043E\u0440\u0433.\u0441\u0440\u0431","\u043E\u0431\u0440.\u0441\u0440\u0431","\u043E\u0434.\u0441\u0440\u0431","\u0443\u043F\u0440.\u0441\u0440\u0431","\u0430\u043A.\u0441\u0440\u0431","\u0440\u0444","\u0642\u0637\u0631","\u0627\u0644\u0633\u0639\u0648\u062F\u064A\u0629","\u0627\u0644\u0633\u0639\u0648\u062F\u06CC\u0629","\u0627\u0644\u0633\u0639\u0648\u062F\u06CC\u06C3","\u0627\u0644\u0633\u0639\u0648\u062F\u064A\u0647","\u0633\u0648\u062F\u0627\u0646","\u65B0\u52A0\u5761","\u0B9A\u0BBF\u0B99\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0BC2\u0BB0\u0BCD","\u0633\u0648\u0631\u064A\u0629","\u0633\u0648\u0631\u064A\u0627","\u0E44\u0E17\u0E22","\u0E28\u0E36\u0E01\u0E29\u0E32.\u0E44\u0E17\u0E22","\u0E18\u0E38\u0E23\u0E01\u0E34\u0E08.\u0E44\u0E17\u0E22","\u0E23\u0E31\u0E10\u0E1A\u0E32\u0E25.\u0E44\u0E17\u0E22","\u0E17\u0E2B\u0E32\u0E23.\u0E44\u0E17\u0E22","\u0E40\u0E19\u0E47\u0E15.\u0E44\u0E17\u0E22","\u0E2D\u0E07\u0E04\u0E4C\u0E01\u0E23.\u0E44\u0E17\u0E22","\u062A\u0648\u0646\u0633","\u53F0\u7063","\u53F0\u6E7E","\u81FA\u7063","\u0443\u043A\u0440","\u0627\u0644\u064A\u0645\u0646","xxx","ye","com.ye","edu.ye","gov.ye","net.ye","mil.ye","org.ye","ac.za","agric.za","alt.za","co.za","edu.za","gov.za","grondar.za","law.za","mil.za","net.za","ngo.za","nic.za","nis.za","nom.za","org.za","school.za","tm.za","web.za","zm","ac.zm","biz.zm","co.zm","com.zm","edu.zm","gov.zm","info.zm","mil.zm","net.zm","org.zm","sch.zm","zw","ac.zw","co.zw","gov.zw","mil.zw","org.zw","aaa","aarp","abarth","abb","abbott","abbvie","abc","able","abogado","abudhabi","academy","accenture","accountant","accountants","aco","actor","adac","ads","adult","aeg","aetna","afl","africa","agakhan","agency","aig","airbus","airforce","airtel","akdn","alfaromeo","alibaba","alipay","allfinanz","allstate","ally","alsace","alstom","amazon","americanexpress","americanfamily","amex","amfam","amica","amsterdam","analytics","android","anquan","anz","aol","apartments","app","apple","aquarelle","arab","aramco","archi","army","art","arte","asda","associates","athleta","attorney","auction","audi","audible","audio","auspost","author","auto","autos","avianca","aws","axa","azure","baby","baidu","banamex","bananarepublic","band","bank","bar","barcelona","barclaycard","barclays","barefoot","bargains","baseball","basketball","bauhaus","bayern","bbc","bbt","bbva","bcg","bcn","beats","beauty","beer","bentley","berlin","best","bestbuy","bet","bharti","bible","bid","bike","bing","bingo","bio","black","blackfriday","blockbuster","blog","bloomberg","blue","bms","bmw","bnpparibas","boats","boehringer","bofa","bom","bond","boo","book","booking","bosch","bostik","boston","bot","boutique","box","bradesco","bridgestone","broadway","broker","brother","brussels","bugatti","build","builders","business","buy","buzz","bzh","cab","cafe","cal","call","calvinklein","cam","camera","camp","cancerresearch","canon","capetown","capital","capitalone","car","caravan","cards","care","career","careers","cars","casa","case","cash","casino","catering","catholic","cba","cbn","cbre","cbs","center","ceo","cern","cfa","cfd","chanel","channel","charity","chase","chat","cheap","chintai","christmas","chrome","church","cipriani","circle","cisco","citadel","citi","citic","city","cityeats","claims","cleaning","click","clinic","clinique","clothing","cloud","club","clubmed","coach","codes","coffee","college","cologne","comcast","commbank","community","company","compare","computer","comsec","condos","construction","consulting","contact","contractors","cooking","cookingchannel","cool","corsica","country","coupon","coupons","courses","cpa","credit","creditcard","creditunion","cricket","crown","crs","cruise","cruises","cuisinella","cymru","cyou","dabur","dad","dance","data","date","dating","datsun","day","dclk","dds","deal","dealer","deals","degree","delivery","dell","deloitte","delta","democrat","dental","dentist","desi","design","dev","dhl","diamonds","diet","digital","direct","directory","discount","discover","dish","diy","dnp","docs","doctor","dog","domains","dot","download","drive","dtv","dubai","dunlop","dupont","durban","dvag","dvr","earth","eat","eco","edeka","education","email","emerck","energy","engineer","engineering","enterprises","epson","equipment","ericsson","erni","esq","estate","etisalat","eurovision","eus","events","exchange","expert","exposed","express","extraspace","fage","fail","fairwinds","faith","family","fan","fans","farm","farmers","fashion","fast","fedex","feedback","ferrari","ferrero","fiat","fidelity","fido","film","final","finance","financial","fire","firestone","firmdale","fish","fishing","fit","fitness","flickr","flights","flir","florist","flowers","fly","foo","food","foodnetwork","football","ford","forex","forsale","forum","foundation","fox","free","fresenius","frl","frogans","frontdoor","frontier","ftr","fujitsu","fun","fund","furniture","futbol","fyi","gal","gallery","gallo","gallup","game","games","gap","garden","gay","gbiz","gdn","gea","gent","genting","george","ggee","gift","gifts","gives","giving","glass","gle","global","globo","gmail","gmbh","gmo","gmx","godaddy","gold","goldpoint","golf","goo","goodyear","goog","google","gop","got","grainger","graphics","gratis","green","gripe","grocery","group","guardian","gucci","guge","guide","guitars","guru","hair","hamburg","hangout","haus","hbo","hdfc","hdfcbank","health","healthcare","help","helsinki","here","hermes","hgtv","hiphop","hisamitsu","hitachi","hiv","hkt","hockey","holdings","holiday","homedepot","homegoods","homes","homesense","honda","horse","hospital","host","hosting","hot","hoteles","hotels","hotmail","house","how","hsbc","hughes","hyatt","hyundai","ibm","icbc","ice","icu","ieee","ifm","ikano","imamat","imdb","immo","immobilien","inc","industries","infiniti","ing","ink","institute","insurance","insure","international","intuit","investments","ipiranga","irish","ismaili","ist","istanbul","itau","itv","jaguar","java","jcb","jeep","jetzt","jewelry","jio","jll","jmp","jnj","joburg","jot","joy","jpmorgan","jprs","juegos","juniper","kaufen","kddi","kerryhotels","kerrylogistics","kerryproperties","kfh","kia","kids","kim","kinder","kindle","kitchen","kiwi","koeln","komatsu","kosher","kpmg","kpn","krd","kred","kuokgroup","kyoto","lacaixa","lamborghini","lamer","lancaster","lancia","land","landrover","lanxess","lasalle","lat","latino","latrobe","law","lawyer","lds","lease","leclerc","lefrak","legal","lego","lexus","lgbt","lidl","life","lifeinsurance","lifestyle","lighting","like","lilly","limited","limo","lincoln","linde","link","lipsy","live","living","llc","llp","loan","loans","locker","locus","loft","lol","london","lotte","lotto","love","lpl","lplfinancial","ltd","ltda","lundbeck","luxe","luxury","macys","madrid","maif","maison","makeup","man","management","mango","map","market","marketing","markets","marriott","marshalls","maserati","mattel","mba","mckinsey","med","media","meet","melbourne","meme","memorial","men","menu","merckmsd","miami","microsoft","mini","mint","mit","mitsubishi","mlb","mls","mma","mobile","moda","moe","moi","mom","monash","money","monster","mormon","mortgage","moscow","moto","motorcycles","mov","movie","msd","mtn","mtr","music","mutual","nab","nagoya","natura","navy","nba","nec","netbank","netflix","network","neustar","new","news","next","nextdirect","nexus","nfl","ngo","nhk","nico","nike","nikon","ninja","nissan","nissay","nokia","northwesternmutual","norton","now","nowruz","nowtv","nra","nrw","ntt","nyc","obi","observer","office","okinawa","olayan","olayangroup","oldnavy","ollo","omega","one","ong","onl","online","ooo","open","oracle","orange","organic","origins","osaka","otsuka","ott","ovh","page","panasonic","paris","pars","partners","parts","party","passagens","pay","pccw","pet","pfizer","pharmacy","phd","philips","phone","photo","photography","photos","physio","pics","pictet","pictures","pid","pin","ping","pink","pioneer","pizza","place","play","playstation","plumbing","plus","pnc","pohl","poker","politie","porn","pramerica","praxi","press","prime","prod","productions","prof","progressive","promo","properties","property","protection","pru","prudential","pub","pwc","qpon","quebec","quest","racing","radio","read","realestate","realtor","realty","recipes","red","redstone","redumbrella","rehab","reise","reisen","reit","reliance","ren","rent","rentals","repair","report","republican","rest","restaurant","review","reviews","rexroth","rich","richardli","ricoh","ril","rio","rip","rocher","rocks","rodeo","rogers","room","rsvp","rugby","ruhr","run","rwe","ryukyu","saarland","safe","safety","sakura","sale","salon","samsclub","samsung","sandvik","sandvikcoromant","sanofi","sap","sarl","sas","save","saxo","sbi","sbs","sca","scb","schaeffler","schmidt","scholarships","school","schule","schwarz","science","scot","search","seat","secure","security","seek","select","sener","services","ses","seven","sew","sex","sexy","sfr","shangrila","sharp","shaw","shell","shia","shiksha","shoes","shop","shopping","shouji","show","showtime","silk","sina","singles","site","ski","skin","sky","skype","sling","smart","smile","sncf","soccer","social","softbank","software","sohu","solar","solutions","song","sony","soy","spa","space","sport","spot","srl","stada","staples","star","statebank","statefarm","stc","stcgroup","stockholm","storage","store","stream","studio","study","style","sucks","supplies","supply","support","surf","surgery","suzuki","swatch","swiss","sydney","systems","tab","taipei","talk","taobao","target","tatamotors","tatar","tattoo","tax","taxi","tci","tdk","team","tech","technology","temasek","tennis","teva","thd","theater","theatre","tiaa","tickets","tienda","tiffany","tips","tires","tirol","tjmaxx","tjx","tkmaxx","tmall","today","tokyo","tools","top","toray","toshiba","total","tours","town","toyota","toys","trade","trading","training","travel","travelchannel","travelers","travelersinsurance","trust","trv","tube","tui","tunes","tushu","tvs","ubank","ubs","unicom","university","uno","uol","ups","vacations","vana","vanguard","vegas","ventures","verisign","versicherung","vet","viajes","video","vig","viking","villas","vin","vip","virgin","visa","vision","viva","vivo","vlaanderen","vodka","volkswagen","volvo","vote","voting","voto","voyage","vuelos","wales","walmart","walter","wang","wanggou","watch","watches","weather","weatherchannel","webcam","weber","website","wedding","weibo","weir","whoswho","wien","wiki","williamhill","win","windows","wine","winners","wme","wolterskluwer","woodside","work","works","world","wow","wtc","wtf","xbox","xerox","xfinity","xihuan","xin","\u0915\u0949\u092E","\u30BB\u30FC\u30EB","\u4F5B\u5C71","\u6148\u5584","\u96C6\u56E2","\u5728\u7EBF","\u70B9\u770B","\u0E04\u0E2D\u0E21","\u516B\u5366","\u0645\u0648\u0642\u0639","\u516C\u76CA","\u516C\u53F8","\u9999\u683C\u91CC\u62C9","\u7F51\u7AD9","\u79FB\u52A8","\u6211\u7231\u4F60","\u043C\u043E\u0441\u043A\u0432\u0430","\u043A\u0430\u0442\u043E\u043B\u0438\u043A","\u043E\u043D\u043B\u0430\u0439\u043D","\u0441\u0430\u0439\u0442","\u8054\u901A","\u05E7\u05D5\u05DD","\u65F6\u5C1A","\u5FAE\u535A","\u6DE1\u9A6C\u9521","\u30D5\u30A1\u30C3\u30B7\u30E7\u30F3","\u043E\u0440\u0433","\u0928\u0947\u091F","\u30B9\u30C8\u30A2","\u30A2\u30DE\u30BE\u30F3","\uC0BC\uC131","\u5546\u6807","\u5546\u5E97","\u5546\u57CE","\u0434\u0435\u0442\u0438","\u30DD\u30A4\u30F3\u30C8","\u65B0\u95FB","\u5BB6\u96FB","\u0643\u0648\u0645","\u4E2D\u6587\u7F51","\u4E2D\u4FE1","\u5A31\u4E50","\u8C37\u6B4C","\u96FB\u8A0A\u76C8\u79D1","\u8D2D\u7269","\u30AF\u30E9\u30A6\u30C9","\u901A\u8CA9","\u7F51\u5E97","\u0938\u0902\u0917\u0920\u0928","\u9910\u5385","\u7F51\u7EDC","\u043A\u043E\u043C","\u4E9A\u9A6C\u900A","\u8BFA\u57FA\u4E9A","\u98DF\u54C1","\u98DE\u5229\u6D66","\u624B\u673A","\u0627\u0631\u0627\u0645\u0643\u0648","\u0627\u0644\u0639\u0644\u064A\u0627\u0646","\u0627\u062A\u0635\u0627\u0644\u0627\u062A","\u0628\u0627\u0632\u0627\u0631","\u0627\u0628\u0648\u0638\u0628\u064A","\u0643\u0627\u062B\u0648\u0644\u064A\u0643","\u0647\u0645\u0631\u0627\u0647","\uB2F7\uCEF4","\u653F\u5E9C","\u0634\u0628\u0643\u0629","\u0628\u064A\u062A\u0643","\u0639\u0631\u0628","\u673A\u6784","\u7EC4\u7EC7\u673A\u6784","\u5065\u5EB7","\u62DB\u8058","\u0440\u0443\u0441","\u5927\u62FF","\u307F\u3093\u306A","\u30B0\u30FC\u30B0\u30EB","\u4E16\u754C","\u66F8\u7C4D","\u7F51\u5740","\uB2F7\uB137","\u30B3\u30E0","\u5929\u4E3B\u6559","\u6E38\u620F","verm\xF6gensberater","verm\xF6gensberatung","\u4F01\u4E1A","\u4FE1\u606F","\u5609\u91CC\u5927\u9152\u5E97","\u5609\u91CC","\u5E7F\u4E1C","\u653F\u52A1","xyz","yachts","yahoo","yamaxun","yandex","yodobashi","yoga","yokohama","you","youtube","yun","zappos","zara","zero","zip","zone","zuerich","cc.ua","inf.ua","ltd.ua","611.to","graphox.us","*.devcdnaccesso.com","adobeaemcloud.com","*.dev.adobeaemcloud.com","hlx.live","adobeaemcloud.net","hlx.page","hlx3.page","beep.pl","airkitapps.com","airkitapps-au.com","airkitapps.eu","aivencloud.com","barsy.ca","*.compute.estate","*.alces.network","kasserver.com","altervista.org","alwaysdata.net","cloudfront.net","*.compute.amazonaws.com","*.compute-1.amazonaws.com","*.compute.amazonaws.com.cn","us-east-1.amazonaws.com","cn-north-1.eb.amazonaws.com.cn","cn-northwest-1.eb.amazonaws.com.cn","elasticbeanstalk.com","ap-northeast-1.elasticbeanstalk.com","ap-northeast-2.elasticbeanstalk.com","ap-northeast-3.elasticbeanstalk.com","ap-south-1.elasticbeanstalk.com","ap-southeast-1.elasticbeanstalk.com","ap-southeast-2.elasticbeanstalk.com","ca-central-1.elasticbeanstalk.com","eu-central-1.elasticbeanstalk.com","eu-west-1.elasticbeanstalk.com","eu-west-2.elasticbeanstalk.com","eu-west-3.elasticbeanstalk.com","sa-east-1.elasticbeanstalk.com","us-east-1.elasticbeanstalk.com","us-east-2.elasticbeanstalk.com","us-gov-west-1.elasticbeanstalk.com","us-west-1.elasticbeanstalk.com","us-west-2.elasticbeanstalk.com","*.elb.amazonaws.com","*.elb.amazonaws.com.cn","awsglobalaccelerator.com","s3.amazonaws.com","s3-ap-northeast-1.amazonaws.com","s3-ap-northeast-2.amazonaws.com","s3-ap-south-1.amazonaws.com","s3-ap-southeast-1.amazonaws.com","s3-ap-southeast-2.amazonaws.com","s3-ca-central-1.amazonaws.com","s3-eu-central-1.amazonaws.com","s3-eu-west-1.amazonaws.com","s3-eu-west-2.amazonaws.com","s3-eu-west-3.amazonaws.com","s3-external-1.amazonaws.com","s3-fips-us-gov-west-1.amazonaws.com","s3-sa-east-1.amazonaws.com","s3-us-gov-west-1.amazonaws.com","s3-us-east-2.amazonaws.com","s3-us-west-1.amazonaws.com","s3-us-west-2.amazonaws.com","s3.ap-northeast-2.amazonaws.com","s3.ap-south-1.amazonaws.com","s3.cn-north-1.amazonaws.com.cn","s3.ca-central-1.amazonaws.com","s3.eu-central-1.amazonaws.com","s3.eu-west-2.amazonaws.com","s3.eu-west-3.amazonaws.com","s3.us-east-2.amazonaws.com","s3.dualstack.ap-northeast-1.amazonaws.com","s3.dualstack.ap-northeast-2.amazonaws.com","s3.dualstack.ap-south-1.amazonaws.com","s3.dualstack.ap-southeast-1.amazonaws.com","s3.dualstack.ap-southeast-2.amazonaws.com","s3.dualstack.ca-central-1.amazonaws.com","s3.dualstack.eu-central-1.amazonaws.com","s3.dualstack.eu-west-1.amazonaws.com","s3.dualstack.eu-west-2.amazonaws.com","s3.dualstack.eu-west-3.amazonaws.com","s3.dualstack.sa-east-1.amazonaws.com","s3.dualstack.us-east-1.amazonaws.com","s3.dualstack.us-east-2.amazonaws.com","s3-website-us-east-1.amazonaws.com","s3-website-us-west-1.amazonaws.com","s3-website-us-west-2.amazonaws.com","s3-website-ap-northeast-1.amazonaws.com","s3-website-ap-southeast-1.amazonaws.com","s3-website-ap-southeast-2.amazonaws.com","s3-website-eu-west-1.amazonaws.com","s3-website-sa-east-1.amazonaws.com","s3-website.ap-northeast-2.amazonaws.com","s3-website.ap-south-1.amazonaws.com","s3-website.ca-central-1.amazonaws.com","s3-website.eu-central-1.amazonaws.com","s3-website.eu-west-2.amazonaws.com","s3-website.eu-west-3.amazonaws.com","s3-website.us-east-2.amazonaws.com","t3l3p0rt.net","tele.amune.org","apigee.io","siiites.com","appspacehosted.com","appspaceusercontent.com","appudo.net","on-aptible.com","user.aseinet.ne.jp","gv.vc","d.gv.vc","user.party.eus","pimienta.org","poivron.org","potager.org","sweetpepper.org","myasustor.com","cdn.prod.atlassian-dev.net","translated.page","myfritz.net","onavstack.net","*.awdev.ca","*.advisor.ws","ecommerce-shop.pl","b-data.io","backplaneapp.io","balena-devices.com","rs.ba","*.banzai.cloud","app.banzaicloud.io","*.backyards.banzaicloud.io","base.ec","official.ec","buyshop.jp","fashionstore.jp","handcrafted.jp","kawaiishop.jp","supersale.jp","theshop.jp","shopselect.net","base.shop","*.beget.app","betainabox.com","bnr.la","bitbucket.io","blackbaudcdn.net","of.je","bluebite.io","boomla.net","boutir.com","boxfuse.io","square7.ch","bplaced.com","bplaced.de","square7.de","bplaced.net","square7.net","shop.brendly.rs","browsersafetymark.io","uk0.bigv.io","dh.bytemark.co.uk","vm.bytemark.co.uk","cafjs.com","mycd.eu","drr.ac","uwu.ai","carrd.co","crd.co","ju.mp","ae.org","br.com","cn.com","com.de","com.se","de.com","eu.com","gb.net","hu.net","jp.net","jpn.com","mex.com","ru.com","sa.com","se.net","uk.com","uk.net","us.com","za.bz","za.com","ar.com","hu.com","kr.com","no.com","qc.com","uy.com","africa.com","gr.com","in.net","web.in","us.org","co.com","aus.basketball","nz.basketball","radio.am","radio.fm","c.la","certmgr.org","cx.ua","discourse.group","discourse.team","cleverapps.io","clerk.app","clerkstage.app","*.lcl.dev","*.lclstage.dev","*.stg.dev","*.stgstage.dev","clickrising.net","c66.me","cloud66.ws","cloud66.zone","jdevcloud.com","wpdevcloud.com","cloudaccess.host","freesite.host","cloudaccess.net","cloudcontrolled.com","cloudcontrolapp.com","*.cloudera.site","pages.dev","trycloudflare.com","workers.dev","wnext.app","co.ca","*.otap.co","co.cz","c.cdn77.org","cdn77-ssl.net","r.cdn77.net","rsc.cdn77.org","ssl.origin.cdn77-secure.org","cloudns.asia","cloudns.biz","cloudns.club","cloudns.cc","cloudns.eu","cloudns.in","cloudns.info","cloudns.org","cloudns.pro","cloudns.pw","cloudns.us","cnpy.gdn","codeberg.page","co.nl","co.no","webhosting.be","hosting-cluster.nl","ac.ru","edu.ru","gov.ru","int.ru","mil.ru","test.ru","dyn.cosidns.de","dynamisches-dns.de","dnsupdater.de","internet-dns.de","l-o-g-i-n.de","dynamic-dns.info","feste-ip.net","knx-server.net","static-access.net","realm.cz","*.cryptonomic.net","cupcake.is","curv.dev","*.customer-oci.com","*.oci.customer-oci.com","*.ocp.customer-oci.com","*.ocs.customer-oci.com","cyon.link","cyon.site","fnwk.site","folionetwork.site","platform0.app","daplie.me","localhost.daplie.me","dattolocal.com","dattorelay.com","dattoweb.com","mydatto.com","dattolocal.net","mydatto.net","biz.dk","co.dk","firm.dk","reg.dk","store.dk","dyndns.dappnode.io","*.dapps.earth","*.bzz.dapps.earth","builtwithdark.com","demo.datadetect.com","instance.datadetect.com","edgestack.me","ddns5.com","debian.net","deno.dev","deno-staging.dev","dedyn.io","deta.app","deta.dev","*.rss.my.id","*.diher.solutions","discordsays.com","discordsez.com","jozi.biz","dnshome.de","online.th","shop.th","drayddns.com","shoparena.pl","dreamhosters.com","mydrobo.com","drud.io","drud.us","duckdns.org","bip.sh","bitbridge.net","dy.fi","tunk.org","dyndns-at-home.com","dyndns-at-work.com","dyndns-blog.com","dyndns-free.com","dyndns-home.com","dyndns-ip.com","dyndns-mail.com","dyndns-office.com","dyndns-pics.com","dyndns-remote.com","dyndns-server.com","dyndns-web.com","dyndns-wiki.com","dyndns-work.com","dyndns.biz","dyndns.info","dyndns.org","dyndns.tv","at-band-camp.net","ath.cx","barrel-of-knowledge.info","barrell-of-knowledge.info","better-than.tv","blogdns.com","blogdns.net","blogdns.org","blogsite.org","boldlygoingnowhere.org","broke-it.net","buyshouses.net","cechire.com","dnsalias.com","dnsalias.net","dnsalias.org","dnsdojo.com","dnsdojo.net","dnsdojo.org","does-it.net","doesntexist.com","doesntexist.org","dontexist.com","dontexist.net","dontexist.org","doomdns.com","doomdns.org","dvrdns.org","dyn-o-saur.com","dynalias.com","dynalias.net","dynalias.org","dynathome.net","dyndns.ws","endofinternet.net","endofinternet.org","endoftheinternet.org","est-a-la-maison.com","est-a-la-masion.com","est-le-patron.com","est-mon-blogueur.com","for-better.biz","for-more.biz","for-our.info","for-some.biz","for-the.biz","forgot.her.name","forgot.his.name","from-ak.com","from-al.com","from-ar.com","from-az.net","from-ca.com","from-co.net","from-ct.com","from-dc.com","from-de.com","from-fl.com","from-ga.com","from-hi.com","from-ia.com","from-id.com","from-il.com","from-in.com","from-ks.com","from-ky.com","from-la.net","from-ma.com","from-md.com","from-me.org","from-mi.com","from-mn.com","from-mo.com","from-ms.com","from-mt.com","from-nc.com","from-nd.com","from-ne.com","from-nh.com","from-nj.com","from-nm.com","from-nv.com","from-ny.net","from-oh.com","from-ok.com","from-or.com","from-pa.com","from-pr.com","from-ri.com","from-sc.com","from-sd.com","from-tn.com","from-tx.com","from-ut.com","from-va.com","from-vt.com","from-wa.com","from-wi.com","from-wv.com","from-wy.com","ftpaccess.cc","fuettertdasnetz.de","game-host.org","game-server.cc","getmyip.com","gets-it.net","go.dyndns.org","gotdns.com","gotdns.org","groks-the.info","groks-this.info","ham-radio-op.net","here-for-more.info","hobby-site.com","hobby-site.org","home.dyndns.org","homedns.org","homeftp.net","homeftp.org","homeip.net","homelinux.com","homelinux.net","homelinux.org","homeunix.com","homeunix.net","homeunix.org","iamallama.com","in-the-band.net","is-a-anarchist.com","is-a-blogger.com","is-a-bookkeeper.com","is-a-bruinsfan.org","is-a-bulls-fan.com","is-a-candidate.org","is-a-caterer.com","is-a-celticsfan.org","is-a-chef.com","is-a-chef.net","is-a-chef.org","is-a-conservative.com","is-a-cpa.com","is-a-cubicle-slave.com","is-a-democrat.com","is-a-designer.com","is-a-doctor.com","is-a-financialadvisor.com","is-a-geek.com","is-a-geek.net","is-a-geek.org","is-a-green.com","is-a-guru.com","is-a-hard-worker.com","is-a-hunter.com","is-a-knight.org","is-a-landscaper.com","is-a-lawyer.com","is-a-liberal.com","is-a-libertarian.com","is-a-linux-user.org","is-a-llama.com","is-a-musician.com","is-a-nascarfan.com","is-a-nurse.com","is-a-painter.com","is-a-patsfan.org","is-a-personaltrainer.com","is-a-photographer.com","is-a-player.com","is-a-republican.com","is-a-rockstar.com","is-a-socialist.com","is-a-soxfan.org","is-a-student.com","is-a-teacher.com","is-a-techie.com","is-a-therapist.com","is-an-accountant.com","is-an-actor.com","is-an-actress.com","is-an-anarchist.com","is-an-artist.com","is-an-engineer.com","is-an-entertainer.com","is-by.us","is-certified.com","is-found.org","is-gone.com","is-into-anime.com","is-into-cars.com","is-into-cartoons.com","is-into-games.com","is-leet.com","is-lost.org","is-not-certified.com","is-saved.org","is-slick.com","is-uberleet.com","is-very-bad.org","is-very-evil.org","is-very-good.org","is-very-nice.org","is-very-sweet.org","is-with-theband.com","isa-geek.com","isa-geek.net","isa-geek.org","isa-hockeynut.com","issmarterthanyou.com","isteingeek.de","istmein.de","kicks-ass.net","kicks-ass.org","knowsitall.info","land-4-sale.us","lebtimnetz.de","leitungsen.de","likes-pie.com","likescandy.com","merseine.nu","mine.nu","misconfused.org","mypets.ws","myphotos.cc","neat-url.com","office-on-the.net","on-the-web.tv","podzone.net","podzone.org","readmyblog.org","saves-the-whales.com","scrapper-site.net","scrapping.cc","selfip.biz","selfip.com","selfip.info","selfip.net","selfip.org","sells-for-less.com","sells-for-u.com","sells-it.net","sellsyourhome.org","servebbs.com","servebbs.net","servebbs.org","serveftp.net","serveftp.org","servegame.org","shacknet.nu","simple-url.com","space-to-rent.com","stuff-4-sale.org","stuff-4-sale.us","teaches-yoga.com","thruhere.net","traeumtgerade.de","webhop.biz","webhop.info","webhop.net","webhop.org","worse-than.tv","writesthisblog.com","ddnss.de","dyn.ddnss.de","dyndns.ddnss.de","dyndns1.de","dyn-ip24.de","home-webserver.de","dyn.home-webserver.de","myhome-server.de","ddnss.org","definima.net","definima.io","ondigitalocean.app","*.digitaloceanspaces.com","bci.dnstrace.pro","ddnsfree.com","ddnsgeek.com","giize.com","gleeze.com","kozow.com","loseyourip.com","ooguy.com","theworkpc.com","casacam.net","dynu.net","accesscam.org","camdvr.org","freeddns.org","mywire.org","webredirect.org","myddns.rocks","blogsite.xyz","dynv6.net","e4.cz","eero.online","eero-stage.online","elementor.cloud","elementor.cool","en-root.fr","mytuleap.com","tuleap-partners.com","encr.app","encoreapi.com","onred.one","staging.onred.one","eu.encoway.cloud","eu.org","al.eu.org","asso.eu.org","at.eu.org","au.eu.org","be.eu.org","bg.eu.org","ca.eu.org","cd.eu.org","ch.eu.org","cn.eu.org","cy.eu.org","cz.eu.org","de.eu.org","dk.eu.org","edu.eu.org","ee.eu.org","es.eu.org","fi.eu.org","fr.eu.org","gr.eu.org","hr.eu.org","hu.eu.org","ie.eu.org","il.eu.org","in.eu.org","int.eu.org","is.eu.org","it.eu.org","jp.eu.org","kr.eu.org","lt.eu.org","lu.eu.org","lv.eu.org","mc.eu.org","me.eu.org","mk.eu.org","mt.eu.org","my.eu.org","net.eu.org","ng.eu.org","nl.eu.org","no.eu.org","nz.eu.org","paris.eu.org","pl.eu.org","pt.eu.org","q-a.eu.org","ro.eu.org","ru.eu.org","se.eu.org","si.eu.org","sk.eu.org","tr.eu.org","uk.eu.org","us.eu.org","eurodir.ru","eu-1.evennode.com","eu-2.evennode.com","eu-3.evennode.com","eu-4.evennode.com","us-1.evennode.com","us-2.evennode.com","us-3.evennode.com","us-4.evennode.com","twmail.cc","twmail.net","twmail.org","mymailer.com.tw","url.tw","onfabrica.com","apps.fbsbx.com","ru.net","adygeya.ru","bashkiria.ru","bir.ru","cbg.ru","com.ru","dagestan.ru","grozny.ru","kalmykia.ru","kustanai.ru","marine.ru","mordovia.ru","msk.ru","mytis.ru","nalchik.ru","nov.ru","pyatigorsk.ru","spb.ru","vladikavkaz.ru","vladimir.ru","abkhazia.su","adygeya.su","aktyubinsk.su","arkhangelsk.su","armenia.su","ashgabad.su","azerbaijan.su","balashov.su","bashkiria.su","bryansk.su","bukhara.su","chimkent.su","dagestan.su","east-kazakhstan.su","exnet.su","georgia.su","grozny.su","ivanovo.su","jambyl.su","kalmykia.su","kaluga.su","karacol.su","karaganda.su","karelia.su","khakassia.su","krasnodar.su","kurgan.su","kustanai.su","lenug.su","mangyshlak.su","mordovia.su","msk.su","murmansk.su","nalchik.su","navoi.su","north-kazakhstan.su","nov.su","obninsk.su","penza.su","pokrovsk.su","sochi.su","spb.su","tashkent.su","termez.su","togliatti.su","troitsk.su","tselinograd.su","tula.su","tuva.su","vladikavkaz.su","vladimir.su","vologda.su","channelsdvr.net","u.channelsdvr.net","edgecompute.app","fastly-terrarium.com","fastlylb.net","map.fastlylb.net","freetls.fastly.net","map.fastly.net","a.prod.fastly.net","global.prod.fastly.net","a.ssl.fastly.net","b.ssl.fastly.net","global.ssl.fastly.net","fastvps-server.com","fastvps.host","myfast.host","fastvps.site","myfast.space","fedorainfracloud.org","fedorapeople.org","cloud.fedoraproject.org","app.os.fedoraproject.org","app.os.stg.fedoraproject.org","conn.uk","copro.uk","hosp.uk","mydobiss.com","fh-muenster.io","filegear.me","filegear-au.me","filegear-de.me","filegear-gb.me","filegear-ie.me","filegear-jp.me","filegear-sg.me","firebaseapp.com","fireweb.app","flap.id","onflashdrive.app","fldrv.com","fly.dev","edgeapp.net","shw.io","flynnhosting.net","forgeblocks.com","id.forgerock.io","framer.app","framercanvas.com","*.frusky.de","ravpage.co.il","0e.vc","freebox-os.com","freeboxos.com","fbx-os.fr","fbxos.fr","freebox-os.fr","freeboxos.fr","freedesktop.org","freemyip.com","wien.funkfeuer.at","*.futurecms.at","*.ex.futurecms.at","*.in.futurecms.at","futurehosting.at","futuremailing.at","*.ex.ortsinfo.at","*.kunden.ortsinfo.at","*.statics.cloud","independent-commission.uk","independent-inquest.uk","independent-inquiry.uk","independent-panel.uk","independent-review.uk","public-inquiry.uk","royal-commission.uk","campaign.gov.uk","service.gov.uk","api.gov.uk","gehirn.ne.jp","usercontent.jp","gentapps.com","gentlentapis.com","lab.ms","cdn-edges.net","ghost.io","gsj.bz","githubusercontent.com","githubpreview.dev","github.io","gitlab.io","gitapp.si","gitpage.si","glitch.me","nog.community","co.ro","shop.ro","lolipop.io","angry.jp","babyblue.jp","babymilk.jp","backdrop.jp","bambina.jp","bitter.jp","blush.jp","boo.jp","boy.jp","boyfriend.jp","but.jp","candypop.jp","capoo.jp","catfood.jp","cheap.jp","chicappa.jp","chillout.jp","chips.jp","chowder.jp","chu.jp","ciao.jp","cocotte.jp","coolblog.jp","cranky.jp","cutegirl.jp","daa.jp","deca.jp","deci.jp","digick.jp","egoism.jp","fakefur.jp","fem.jp","flier.jp","floppy.jp","fool.jp","frenchkiss.jp","girlfriend.jp","girly.jp","gloomy.jp","gonna.jp","greater.jp","hacca.jp","heavy.jp","her.jp","hiho.jp","hippy.jp","holy.jp","hungry.jp","icurus.jp","itigo.jp","jellybean.jp","kikirara.jp","kill.jp","kilo.jp","kuron.jp","littlestar.jp","lolipopmc.jp","lolitapunk.jp","lomo.jp","lovepop.jp","lovesick.jp","main.jp","mods.jp","mond.jp","mongolian.jp","moo.jp","namaste.jp","nikita.jp","nobushi.jp","noor.jp","oops.jp","parallel.jp","parasite.jp","pecori.jp","peewee.jp","penne.jp","pepper.jp","perma.jp","pigboat.jp","pinoko.jp","punyu.jp","pupu.jp","pussycat.jp","pya.jp","raindrop.jp","readymade.jp","sadist.jp","schoolbus.jp","secret.jp","staba.jp","stripper.jp","sub.jp","sunnyday.jp","thick.jp","tonkotsu.jp","under.jp","upper.jp","velvet.jp","verse.jp","versus.jp","vivian.jp","watson.jp","weblike.jp","whitesnow.jp","zombie.jp","heteml.net","cloudapps.digital","london.cloudapps.digital","pymnt.uk","homeoffice.gov.uk","ro.im","goip.de","run.app","a.run.app","web.app","*.0emm.com","appspot.com","*.r.appspot.com","codespot.com","googleapis.com","googlecode.com","pagespeedmobilizer.com","publishproxy.com","withgoogle.com","withyoutube.com","*.gateway.dev","cloud.goog","translate.goog","*.usercontent.goog","cloudfunctions.net","blogspot.ae","blogspot.al","blogspot.am","blogspot.ba","blogspot.be","blogspot.bg","blogspot.bj","blogspot.ca","blogspot.cf","blogspot.ch","blogspot.cl","blogspot.co.at","blogspot.co.id","blogspot.co.il","blogspot.co.ke","blogspot.co.nz","blogspot.co.uk","blogspot.co.za","blogspot.com","blogspot.com.ar","blogspot.com.au","blogspot.com.br","blogspot.com.by","blogspot.com.co","blogspot.com.cy","blogspot.com.ee","blogspot.com.eg","blogspot.com.es","blogspot.com.mt","blogspot.com.ng","blogspot.com.tr","blogspot.com.uy","blogspot.cv","blogspot.cz","blogspot.de","blogspot.dk","blogspot.fi","blogspot.fr","blogspot.gr","blogspot.hk","blogspot.hr","blogspot.hu","blogspot.ie","blogspot.in","blogspot.is","blogspot.it","blogspot.jp","blogspot.kr","blogspot.li","blogspot.lt","blogspot.lu","blogspot.md","blogspot.mk","blogspot.mr","blogspot.mx","blogspot.my","blogspot.nl","blogspot.no","blogspot.pe","blogspot.pt","blogspot.qa","blogspot.re","blogspot.ro","blogspot.rs","blogspot.ru","blogspot.se","blogspot.sg","blogspot.si","blogspot.sk","blogspot.sn","blogspot.td","blogspot.tw","blogspot.ug","blogspot.vn","goupile.fr","gov.nl","awsmppl.com","g\xFCnstigbestellen.de","g\xFCnstigliefern.de","fin.ci","free.hr","caa.li","ua.rs","conf.se","hs.zone","hs.run","hashbang.sh","hasura.app","hasura-app.io","pages.it.hs-heilbronn.de","hepforge.org","herokuapp.com","herokussl.com","ravendb.cloud","myravendb.com","ravendb.community","ravendb.me","development.run","ravendb.run","homesklep.pl","secaas.hk","hoplix.shop","orx.biz","biz.gl","col.ng","firm.ng","gen.ng","ltd.ng","ngo.ng","edu.scot","sch.so","hostyhosting.io","h\xE4kkinen.fi","*.moonscale.io","moonscale.net","iki.fi","ibxos.it","iliadboxos.it","impertrixcdn.com","impertrix.com","smushcdn.com","wphostedmail.com","wpmucdn.com","tempurl.host","wpmudev.host","dyn-berlin.de","in-berlin.de","in-brb.de","in-butter.de","in-dsl.de","in-dsl.net","in-dsl.org","in-vpn.de","in-vpn.net","in-vpn.org","biz.at","info.at","info.cx","ac.leg.br","al.leg.br","am.leg.br","ap.leg.br","ba.leg.br","ce.leg.br","df.leg.br","es.leg.br","go.leg.br","ma.leg.br","mg.leg.br","ms.leg.br","mt.leg.br","pa.leg.br","pb.leg.br","pe.leg.br","pi.leg.br","pr.leg.br","rj.leg.br","rn.leg.br","ro.leg.br","rr.leg.br","rs.leg.br","sc.leg.br","se.leg.br","sp.leg.br","to.leg.br","pixolino.com","na4u.ru","iopsys.se","ipifony.net","iservschule.de","mein-iserv.de","schulplattform.de","schulserver.de","test-iserv.de","iserv.dev","iobb.net","mel.cloudlets.com.au","cloud.interhostsolutions.be","users.scale.virtualcloud.com.br","mycloud.by","alp1.ae.flow.ch","appengine.flow.ch","es-1.axarnet.cloud","diadem.cloud","vip.jelastic.cloud","jele.cloud","it1.eur.aruba.jenv-aruba.cloud","it1.jenv-aruba.cloud","keliweb.cloud","cs.keliweb.cloud","oxa.cloud","tn.oxa.cloud","uk.oxa.cloud","primetel.cloud","uk.primetel.cloud","ca.reclaim.cloud","uk.reclaim.cloud","us.reclaim.cloud","ch.trendhosting.cloud","de.trendhosting.cloud","jele.club","amscompute.com","clicketcloud.com","dopaas.com","hidora.com","paas.hosted-by-previder.com","rag-cloud.hosteur.com","rag-cloud-ch.hosteur.com","jcloud.ik-server.com","jcloud-ver-jpc.ik-server.com","demo.jelastic.com","kilatiron.com","paas.massivegrid.com","jed.wafaicloud.com","lon.wafaicloud.com","ryd.wafaicloud.com","j.scaleforce.com.cy","jelastic.dogado.eu","fi.cloudplatform.fi","demo.datacenter.fi","paas.datacenter.fi","jele.host","mircloud.host","paas.beebyte.io","sekd1.beebyteapp.io","jele.io","cloud-fr1.unispace.io","jc.neen.it","cloud.jelastic.open.tim.it","jcloud.kz","upaas.kazteleport.kz","cloudjiffy.net","fra1-de.cloudjiffy.net","west1-us.cloudjiffy.net","jls-sto1.elastx.net","jls-sto2.elastx.net","jls-sto3.elastx.net","faststacks.net","fr-1.paas.massivegrid.net","lon-1.paas.massivegrid.net","lon-2.paas.massivegrid.net","ny-1.paas.massivegrid.net","ny-2.paas.massivegrid.net","sg-1.paas.massivegrid.net","jelastic.saveincloud.net","nordeste-idc.saveincloud.net","j.scaleforce.net","jelastic.tsukaeru.net","sdscloud.pl","unicloud.pl","mircloud.ru","jelastic.regruhosting.ru","enscaled.sg","jele.site","jelastic.team","orangecloud.tn","j.layershift.co.uk","phx.enscaled.us","mircloud.us","myjino.ru","*.hosting.myjino.ru","*.landing.myjino.ru","*.spectrum.myjino.ru","*.vps.myjino.ru","jotelulu.cloud","*.triton.zone","*.cns.joyent.com","js.org","kaas.gg","khplay.nl","ktistory.com","kapsi.fi","keymachine.de","kinghost.net","uni5.net","knightpoint.systems","koobin.events","oya.to","kuleuven.cloud","ezproxy.kuleuven.be","co.krd","edu.krd","krellian.net","webthings.io","git-repos.de","lcube-server.de","svn-repos.de","leadpages.co","lpages.co","lpusercontent.com","lelux.site","co.business","co.education","co.events","co.financial","co.network","co.place","co.technology","app.lmpm.com","linkyard.cloud","linkyard-cloud.ch","members.linode.com","*.nodebalancer.linode.com","*.linodeobjects.com","ip.linodeusercontent.com","we.bs","*.user.localcert.dev","localzone.xyz","loginline.app","loginline.dev","loginline.io","loginline.services","loginline.site","servers.run","lohmus.me","krasnik.pl","leczna.pl","lubartow.pl","lublin.pl","poniatowa.pl","swidnik.pl","glug.org.uk","lug.org.uk","lugs.org.uk","barsy.bg","barsy.co.uk","barsyonline.co.uk","barsycenter.com","barsyonline.com","barsy.club","barsy.de","barsy.eu","barsy.in","barsy.info","barsy.io","barsy.me","barsy.menu","barsy.mobi","barsy.net","barsy.online","barsy.org","barsy.pro","barsy.pub","barsy.ro","barsy.shop","barsy.site","barsy.support","barsy.uk","*.magentosite.cloud","mayfirst.info","mayfirst.org","hb.cldmail.ru","cn.vu","mazeplay.com","mcpe.me","mcdir.me","mcdir.ru","mcpre.ru","vps.mcdir.ru","mediatech.by","mediatech.dev","hra.health","miniserver.com","memset.net","messerli.app","*.cloud.metacentrum.cz","custom.metacentrum.cz","flt.cloud.muni.cz","usr.cloud.muni.cz","meteorapp.com","eu.meteorapp.com","co.pl","*.azurecontainer.io","azurewebsites.net","azure-mobile.net","cloudapp.net","azurestaticapps.net","1.azurestaticapps.net","centralus.azurestaticapps.net","eastasia.azurestaticapps.net","eastus2.azurestaticapps.net","westeurope.azurestaticapps.net","westus2.azurestaticapps.net","csx.cc","mintere.site","forte.id","mozilla-iot.org","bmoattachments.org","net.ru","org.ru","pp.ru","hostedpi.com","customer.mythic-beasts.com","caracal.mythic-beasts.com","fentiger.mythic-beasts.com","lynx.mythic-beasts.com","ocelot.mythic-beasts.com","oncilla.mythic-beasts.com","onza.mythic-beasts.com","sphinx.mythic-beasts.com","vs.mythic-beasts.com","x.mythic-beasts.com","yali.mythic-beasts.com","cust.retrosnub.co.uk","ui.nabu.casa","pony.club","of.fashion","in.london","of.london","from.marketing","with.marketing","for.men","repair.men","and.mom","for.mom","for.one","under.one","for.sale","that.win","from.work","to.work","cloud.nospamproxy.com","netlify.app","4u.com","ngrok.io","nh-serv.co.uk","nfshost.com","*.developer.app","noop.app","*.northflank.app","*.build.run","*.code.run","*.database.run","*.migration.run","noticeable.news","dnsking.ch","mypi.co","n4t.co","001www.com","ddnslive.com","myiphost.com","forumz.info","16-b.it","32-b.it","64-b.it","soundcast.me","tcp4.me","dnsup.net","hicam.net","now-dns.net","ownip.net","vpndns.net","dynserv.org","now-dns.org","x443.pw","now-dns.top","ntdll.top","freeddns.us","crafting.xyz","zapto.xyz","nsupdate.info","nerdpol.ovh","blogsyte.com","brasilia.me","cable-modem.org","ciscofreak.com","collegefan.org","couchpotatofries.org","damnserver.com","ddns.me","ditchyourip.com","dnsfor.me","dnsiskinky.com","dvrcam.info","dynns.com","eating-organic.net","fantasyleague.cc","geekgalaxy.com","golffan.us","health-carereform.com","homesecuritymac.com","homesecuritypc.com","hopto.me","ilovecollege.info","loginto.me","mlbfan.org","mmafan.biz","myactivedirectory.com","mydissent.net","myeffect.net","mymediapc.net","mypsx.net","mysecuritycamera.com","mysecuritycamera.net","mysecuritycamera.org","net-freaks.com","nflfan.org","nhlfan.net","no-ip.ca","no-ip.co.uk","no-ip.net","noip.us","onthewifi.com","pgafan.net","point2this.com","pointto.us","privatizehealthinsurance.net","quicksytes.com","read-books.org","securitytactics.com","serveexchange.com","servehumour.com","servep2p.com","servesarcasm.com","stufftoread.com","ufcfan.org","unusualperson.com","workisboring.com","3utilities.com","bounceme.net","ddns.net","ddnsking.com","gotdns.ch","hopto.org","myftp.biz","myftp.org","myvnc.com","no-ip.biz","no-ip.info","no-ip.org","noip.me","redirectme.net","servebeer.com","serveblog.net","servecounterstrike.com","serveftp.com","servegame.com","servehalflife.com","servehttp.com","serveirc.com","serveminecraft.net","servemp3.com","servepics.com","servequake.com","sytes.net","webhop.me","zapto.org","stage.nodeart.io","pcloud.host","nyc.mn","static.observableusercontent.com","cya.gg","omg.lol","cloudycluster.net","omniwe.site","service.one","nid.io","opensocial.site","opencraft.hosting","orsites.com","operaunite.com","tech.orange","authgear-staging.com","authgearapps.com","skygearapp.com","outsystemscloud.com","*.webpaas.ovh.net","*.hosting.ovh.net","ownprovider.com","own.pm","*.owo.codes","ox.rs","oy.lc","pgfog.com","pagefrontapp.com","pagexl.com","*.paywhirl.com","bar0.net","bar1.net","bar2.net","rdv.to","art.pl","gliwice.pl","krakow.pl","poznan.pl","wroc.pl","zakopane.pl","pantheonsite.io","gotpantheon.com","mypep.link","perspecta.cloud","lk3.ru","on-web.fr","bc.platform.sh","ent.platform.sh","eu.platform.sh","us.platform.sh","*.platformsh.site","*.tst.site","platter-app.com","platter-app.dev","platterp.us","pdns.page","plesk.page","pleskns.com","dyn53.io","onporter.run","co.bn","postman-echo.com","pstmn.io","mock.pstmn.io","httpbin.org","prequalifyme.today","xen.prgmr.com","priv.at","prvcy.page","*.dweb.link","protonet.io","chirurgiens-dentistes-en-france.fr","byen.site","pubtls.org","pythonanywhere.com","eu.pythonanywhere.com","qoto.io","qualifioapp.com","qbuser.com","cloudsite.builders","instances.spawn.cc","instantcloud.cn","ras.ru","qa2.com","qcx.io","*.sys.qcx.io","dev-myqnapcloud.com","alpha-myqnapcloud.com","myqnapcloud.com","*.quipelements.com","vapor.cloud","vaporcloud.io","rackmaze.com","rackmaze.net","g.vbrplsbx.io","*.on-k3s.io","*.on-rancher.cloud","*.on-rio.io","readthedocs.io","rhcloud.com","app.render.com","onrender.com","repl.co","id.repl.co","repl.run","resindevice.io","devices.resinstaging.io","hzc.io","wellbeingzone.eu","wellbeingzone.co.uk","adimo.co.uk","itcouldbewor.se","git-pages.rit.edu","rocky.page","\u0431\u0438\u0437.\u0440\u0443\u0441","\u043A\u043E\u043C.\u0440\u0443\u0441","\u043A\u0440\u044B\u043C.\u0440\u0443\u0441","\u043C\u0438\u0440.\u0440\u0443\u0441","\u043C\u0441\u043A.\u0440\u0443\u0441","\u043E\u0440\u0433.\u0440\u0443\u0441","\u0441\u0430\u043C\u0430\u0440\u0430.\u0440\u0443\u0441","\u0441\u043E\u0447\u0438.\u0440\u0443\u0441","\u0441\u043F\u0431.\u0440\u0443\u0441","\u044F.\u0440\u0443\u0441","*.builder.code.com","*.dev-builder.code.com","*.stg-builder.code.com","sandcats.io","logoip.de","logoip.com","fr-par-1.baremetal.scw.cloud","fr-par-2.baremetal.scw.cloud","nl-ams-1.baremetal.scw.cloud","fnc.fr-par.scw.cloud","functions.fnc.fr-par.scw.cloud","k8s.fr-par.scw.cloud","nodes.k8s.fr-par.scw.cloud","s3.fr-par.scw.cloud","s3-website.fr-par.scw.cloud","whm.fr-par.scw.cloud","priv.instances.scw.cloud","pub.instances.scw.cloud","k8s.scw.cloud","k8s.nl-ams.scw.cloud","nodes.k8s.nl-ams.scw.cloud","s3.nl-ams.scw.cloud","s3-website.nl-ams.scw.cloud","whm.nl-ams.scw.cloud","k8s.pl-waw.scw.cloud","nodes.k8s.pl-waw.scw.cloud","s3.pl-waw.scw.cloud","s3-website.pl-waw.scw.cloud","scalebook.scw.cloud","smartlabeling.scw.cloud","dedibox.fr","schokokeks.net","gov.scot","service.gov.scot","scrysec.com","firewall-gateway.com","firewall-gateway.de","my-gateway.de","my-router.de","spdns.de","spdns.eu","firewall-gateway.net","my-firewall.org","myfirewall.org","spdns.org","seidat.net","sellfy.store","senseering.net","minisite.ms","magnet.page","biz.ua","co.ua","pp.ua","shiftcrypto.dev","shiftcrypto.io","shiftedit.io","myshopblocks.com","myshopify.com","shopitsite.com","shopware.store","mo-siemens.io","1kapp.com","appchizi.com","applinzi.com","sinaapp.com","vipsinaapp.com","siteleaf.net","bounty-full.com","alpha.bounty-full.com","beta.bounty-full.com","small-web.org","vp4.me","try-snowplow.com","srht.site","stackhero-network.com","musician.io","novecore.site","static.land","dev.static.land","sites.static.land","storebase.store","vps-host.net","atl.jelastic.vps-host.net","njs.jelastic.vps-host.net","ric.jelastic.vps-host.net","playstation-cloud.com","apps.lair.io","*.stolos.io","spacekit.io","customer.speedpartner.de","myspreadshop.at","myspreadshop.com.au","myspreadshop.be","myspreadshop.ca","myspreadshop.ch","myspreadshop.com","myspreadshop.de","myspreadshop.dk","myspreadshop.es","myspreadshop.fi","myspreadshop.fr","myspreadshop.ie","myspreadshop.it","myspreadshop.net","myspreadshop.nl","myspreadshop.no","myspreadshop.pl","myspreadshop.se","myspreadshop.co.uk","api.stdlib.com","storj.farm","utwente.io","soc.srcf.net","user.srcf.net","temp-dns.com","supabase.co","supabase.in","supabase.net","su.paba.se","*.s5y.io","*.sensiosite.cloud","syncloud.it","dscloud.biz","direct.quickconnect.cn","dsmynas.com","familyds.com","diskstation.me","dscloud.me","i234.me","myds.me","synology.me","dscloud.mobi","dsmynas.net","familyds.net","dsmynas.org","familyds.org","vpnplus.to","direct.quickconnect.to","tabitorder.co.il","taifun-dns.de","beta.tailscale.net","ts.net","gda.pl","gdansk.pl","gdynia.pl","med.pl","sopot.pl","site.tb-hosting.com","edugit.io","s3.teckids.org","telebit.app","telebit.io","*.telebit.xyz","gwiddle.co.uk","*.firenet.ch","*.svc.firenet.ch","reservd.com","thingdustdata.com","cust.dev.thingdust.io","cust.disrec.thingdust.io","cust.prod.thingdust.io","cust.testing.thingdust.io","reservd.dev.thingdust.io","reservd.disrec.thingdust.io","reservd.testing.thingdust.io","tickets.io","arvo.network","azimuth.network","tlon.network","torproject.net","pages.torproject.net","bloxcms.com","townnews-staging.com","tbits.me","12hp.at","2ix.at","4lima.at","lima-city.at","12hp.ch","2ix.ch","4lima.ch","lima-city.ch","trafficplex.cloud","de.cool","12hp.de","2ix.de","4lima.de","lima-city.de","1337.pictures","clan.rip","lima-city.rocks","webspace.rocks","lima.zone","*.transurl.be","*.transurl.eu","*.transurl.nl","site.transip.me","tuxfamily.org","dd-dns.de","diskstation.eu","diskstation.org","dray-dns.de","draydns.de","dyn-vpn.de","dynvpn.de","mein-vigor.de","my-vigor.de","my-wan.de","syno-ds.de","synology-diskstation.de","synology-ds.de","typedream.app","pro.typeform.com","uber.space","*.uberspace.de","hk.com","hk.org","ltd.hk","inc.hk","name.pm","sch.tf","biz.wf","sch.wf","org.yt","virtualuser.de","virtual-user.de","upli.io","urown.cloud","dnsupdate.info","lib.de.us","2038.io","vercel.app","vercel.dev","now.sh","router.management","v-info.info","voorloper.cloud","neko.am","nyaa.am","be.ax","cat.ax","es.ax","eu.ax","gg.ax","mc.ax","us.ax","xy.ax","nl.ci","xx.gl","app.gp","blog.gt","de.gt","to.gt","be.gy","cc.hn","blog.kg","io.kg","jp.kg","tv.kg","uk.kg","us.kg","de.ls","at.md","de.md","jp.md","to.md","indie.porn","vxl.sh","ch.tc","me.tc","we.tc","nyan.to","at.vg","blog.vu","dev.vu","me.vu","v.ua","*.vultrobjects.com","wafflecell.com","*.webhare.dev","reserve-online.net","reserve-online.com","bookonline.app","hotelwithflight.com","wedeploy.io","wedeploy.me","wedeploy.sh","remotewd.com","pages.wiardweb.com","wmflabs.org","toolforge.org","wmcloud.org","panel.gg","daemon.panel.gg","messwithdns.com","woltlab-demo.com","myforum.community","community-pro.de","diskussionsbereich.de","community-pro.net","meinforum.net","affinitylottery.org.uk","raffleentry.org.uk","weeklylottery.org.uk","wpenginepowered.com","js.wpenginepowered.com","wixsite.com","editorx.io","half.host","xnbay.com","u2.xnbay.com","u2-local.xnbay.com","cistron.nl","demon.nl","xs4all.space","yandexcloud.net","storage.yandexcloud.net","website.yandexcloud.net","official.academy","yolasite.com","ybo.faith","yombo.me","homelink.one","ybo.party","ybo.review","ybo.science","ybo.trade","ynh.fr","nohost.me","noho.st","za.net","za.org","bss.design","basicserver.io","virtualserver.io","enterprisecloud.nu"]});var bc=ae(ut=>{"use strict";var ka=mi("punycode"),ct={};ct.rules=yc().map(function(e){return{rule:e,suffix:e.replace(/^(\*\.|\!)/,""),punySuffix:-1,wildcard:e.charAt(0)==="*",exception:e.charAt(0)==="!"}});ct.endsWith=function(e,t){return e.indexOf(t,e.length-t.length)!==-1};ct.findRule=function(e){var t=ka.toASCII(e);return ct.rules.reduce(function(a,o){return o.punySuffix===-1&&(o.punySuffix=ka.toASCII(o.suffix)),!ct.endsWith(t,"."+o.punySuffix)&&t!==o.punySuffix?a:o},null)};ut.errorCodes={DOMAIN_TOO_SHORT:"Domain name too short.",DOMAIN_TOO_LONG:"Domain name too long. It should be no more than 255 chars.",LABEL_STARTS_WITH_DASH:"Domain name label can not start with a dash.",LABEL_ENDS_WITH_DASH:"Domain name label can not end with a dash.",LABEL_TOO_LONG:"Domain name label should be at most 63 chars long.",LABEL_TOO_SHORT:"Domain name label should be at least 1 character long.",LABEL_INVALID_CHARS:"Domain name label can only contain alphanumeric characters or dashes."};ct.validate=function(e){var t=ka.toASCII(e);if(t.length<1)return"DOMAIN_TOO_SHORT";if(t.length>255)return"DOMAIN_TOO_LONG";for(var a=t.split("."),o,r=0;r<a.length;++r){if(o=a[r],!o.length)return"LABEL_TOO_SHORT";if(o.length>63)return"LABEL_TOO_LONG";if(o.charAt(0)==="-")return"LABEL_STARTS_WITH_DASH";if(o.charAt(o.length-1)==="-")return"LABEL_ENDS_WITH_DASH";if(!/^[a-z0-9\-]+$/.test(o))return"LABEL_INVALID_CHARS"}};ut.parse=function(e){if(typeof e!="string")throw new TypeError("Domain name must be a string.");var t=e.slice(0).toLowerCase();t.charAt(t.length-1)==="."&&(t=t.slice(0,t.length-1));var a=ct.validate(t);if(a)return{input:e,error:{message:ut.errorCodes[a],code:a}};var o={input:e,tld:null,sld:null,domain:null,subdomain:null,listed:!1},r=t.split(".");if(r[r.length-1]==="local")return o;var i=n(function(){return/xn--/.test(t)&&(o.domain&&(o.domain=ka.toASCII(o.domain)),o.subdomain&&(o.subdomain=ka.toASCII(o.subdomain))),o},"handlePunycode"),s=ct.findRule(t);if(!s)return r.length<2?o:(o.tld=r.pop(),o.sld=r.pop(),o.domain=[o.sld,o.tld].join("."),r.length&&(o.subdomain=r.pop()),i());o.listed=!0;var c=s.suffix.split("."),u=r.slice(0,r.length-c.length);return s.exception&&u.push(c.shift()),o.tld=c.join("."),!u.length||(s.wildcard&&(c.unshift(u.pop()),o.tld=c.join(".")),!u.length)||(o.sld=u.pop(),o.domain=[o.sld,o.tld].join("."),u.length&&(o.subdomain=u.join("."))),i()};ut.get=function(e){return e&&ut.parse(e).domain||null};ut.isValid=function(e){var t=ut.parse(e);return!!(t.domain&&t.listed)}});var Fn=ae(jc=>{"use strict";var Hd=bc(),wc=["local","example","invalid","localhost","test"],$d=["localhost","invalid"];function Fd(e,t={}){let a=e.split("."),o=a[a.length-1],r=!!t.allowSpecialUseDomain,i=!!t.ignoreError;if(r&&wc.includes(o)){if(a.length>1)return`${a[a.length-2]}.${o}`;if($d.includes(o))return`${o}`}if(!i&&wc.includes(o))throw new Error(`Cookie has domain set to the public suffix "${o}" which is a special use domain. To allow this, configure your CookieJar with {allowSpecialUseDomain:true, rejectPublicSuffixes: false}.`);return Hd.get(e)}n(Fd,"getPublicSuffix");jc.getPublicSuffix=Fd});var Un=ae(vc=>{"use strict";var Mn=class{static{n(this,"Store")}constructor(){this.synchronous=!1}findCookie(t,a,o,r){throw new Error("findCookie is not implemented")}findCookies(t,a,o,r){throw new Error("findCookies is not implemented")}putCookie(t,a){throw new Error("putCookie is not implemented")}updateCookie(t,a,o){throw new Error("updateCookie is not implemented")}removeCookie(t,a,o,r){throw new Error("removeCookie is not implemented")}removeCookies(t,a,o){throw new Error("removeCookies is not implemented")}removeAllCookies(t){throw new Error("removeAllCookies is not implemented")}getAllCookies(t){throw new Error("getAllCookies is not implemented (therefore jar cannot be serialized)")}};vc.Store=Mn});var Kn=ae(qn=>{"use strict";qn.fromCallback=function(e){return Object.defineProperty(function(){if(typeof arguments[arguments.length-1]=="function")e.apply(this,arguments);else return new Promise((t,a)=>{arguments[arguments.length]=(o,r)=>{if(o)return a(o);t(r)},arguments.length++,e.apply(this,arguments)})},"name",{value:e.name})};qn.fromPromise=function(e){return Object.defineProperty(function(){let t=arguments[arguments.length-1];if(typeof t!="function")return e.apply(this,arguments);delete arguments[arguments.length-1],arguments.length--,e.apply(this,arguments).then(a=>t(null,a),t)},"name",{value:e.name})}});var Wn=ae(Ec=>{"use strict";var Md=Fn();function Ud(e,t){let a=Md.getPublicSuffix(e,{allowSpecialUseDomain:t});if(!a)return null;if(a==e)return[e];e.slice(-1)=="."&&(e=e.slice(0,-1));let r=e.slice(0,-(a.length+1)).split(".").reverse(),i=a,s=[i];for(;r.length;)i=`${r.shift()}.${i}`,s.push(i);return s}n(Ud,"permuteDomain");Ec.permuteDomain=Ud});var Gn=ae(xc=>{"use strict";function qd(e,t){return t===e||e.indexOf(t)===0&&(t.substr(-1)==="/"||e.substr(t.length,1)==="/")}n(qd,"pathMatch");xc.pathMatch=qd});var Xn=ae(Yn=>{"use strict";function _c(){try{return mi("util")}catch{return null}}n(_c,"requireUtil");function Kd(){return Symbol.for("nodejs.util.inspect.custom")}n(Kd,"lookupCustomInspectSymbol");function Wd(e){let a=(e.requireUtil||_c)();return a?a.inspect.custom:null}n(Wd,"tryReadingCustomSymbolFromUtilInspect");Yn.getUtilInspect=n(function(t,a={}){let r=(a.requireUtil||_c)();return n(function(s,c,u){return r?r.inspect(s,c,u):t(s)},"inspect")},"getUtilInspect");Yn.getCustomInspectSymbol=n(function(t={}){return(t.lookupCustomInspectSymbol||Kd)()||Wd(t)},"getCustomInspectSymbol")});var Ac=ae(Zn=>{"use strict";var{fromCallback:Gd}=Kn(),Yd=Un().Store,Xd=Wn().permuteDomain,Zd=Gn().pathMatch,{getCustomInspectSymbol:Jd,getUtilInspect:Qd}=Xn(),ya=class extends Yd{static{n(this,"MemoryCookieStore")}constructor(){super(),this.synchronous=!0,this.idx=Object.create(null);let t=Jd();t&&(this[t]=this.inspect)}inspect(){return`{ idx: ${{inspect:Qd(Cc)}.inspect(this.idx,!1,2)} }`}findCookie(t,a,o,r){return!this.idx[t]||!this.idx[t][a]?r(null,void 0):r(null,this.idx[t][a][o]||null)}findCookies(t,a,o,r){let i=[];if(typeof o=="function"&&(r=o,o=!0),!t)return r(null,[]);let s;a?s=n(function(m){Object.keys(m).forEach(l=>{if(Zd(a,l)){let h=m[l];for(let g in h)i.push(h[g])}})},"matchRFC"):s=n(function(m){for(let l in m){let h=m[l];for(let g in h)i.push(h[g])}},"matchAll");let c=Xd(t,o)||[t],u=this.idx;c.forEach(p=>{let m=u[p];m&&s(m)}),r(null,i)}putCookie(t,a){this.idx[t.domain]||(this.idx[t.domain]=Object.create(null)),this.idx[t.domain][t.path]||(this.idx[t.domain][t.path]=Object.create(null)),this.idx[t.domain][t.path][t.key]=t,a(null)}updateCookie(t,a,o){this.putCookie(a,o)}removeCookie(t,a,o,r){this.idx[t]&&this.idx[t][a]&&this.idx[t][a][o]&&delete this.idx[t][a][o],r(null)}removeCookies(t,a,o){return this.idx[t]&&(a?delete this.idx[t][a]:delete this.idx[t]),o(null)}removeAllCookies(t){return this.idx=Object.create(null),t(null)}getAllCookies(t){let a=[],o=this.idx;Object.keys(o).forEach(i=>{Object.keys(o[i]).forEach(c=>{Object.keys(o[i][c]).forEach(p=>{p!==null&&a.push(o[i][c][p])})})}),a.sort((i,s)=>(i.creationIndex||0)-(s.creationIndex||0)),t(null,a)}};["findCookie","findCookies","putCookie","updateCookie","removeCookie","removeCookies","removeAllCookies","getAllCookies"].forEach(e=>{ya.prototype[e]=Gd(ya.prototype[e])});Zn.MemoryCookieStore=ya;function Cc(e){let t=Object.keys(e);if(t.length===0)return"[Object: null prototype] {}";let a=`[Object: null prototype] {
3
+ `;return Object.keys(e).forEach((o,r)=>{a+=eh(o,e[o]),r<t.length-1&&(a+=","),a+=`
4
+ `}),a+="}",a}n(Cc,"inspectFallback");function eh(e,t){let a=" ",o=`${a}'${e}': [Object: null prototype] {
5
+ `;return Object.keys(t).forEach((r,i,s)=>{o+=th(r,t[r]),i<s.length-1&&(o+=","),o+=`
6
+ `}),o+=`${a}}`,o}n(eh,"formatDomain");function th(e,t){let a=" ",o=`${a}'${e}': [Object: null prototype] {
7
7
  `;return Object.keys(t).forEach((r,i,s)=>{let c=t[r];o+=` ${r}: ${c.inspect()}`,i<s.length-1&&(o+=","),o+=`
8
- `}),o+=`${a}}`,o}n(oh,"formatPath");Zn.inspectFallback=Ac});var Nc=ae(Ne=>{"use strict";var nh=Object.prototype.toString;function Tc(e){return typeof e=="function"}n(Tc,"isFunction");function Ic(e){return zc(e)&&e!==""}n(Ic,"isNonEmptyString");function rh(e){return Oc(e,Date)&&ch(e.getTime())}n(rh,"isDate");function ih(e){return e===""||e instanceof String&&e.toString()===""}n(ih,"isEmptyString");function zc(e){return typeof e=="string"||e instanceof String}n(zc,"isString");function Jn(e){return nh.call(e)==="[object Object]"}n(Jn,"isObject");function Oc(e,t){try{return e instanceof t}catch{return!1}}n(Oc,"isInstanceStrict");function sh(e){return Ic(e)||Jn(e)&&"hostname"in e&&"pathname"in e&&"protocol"in e||Oc(e,URL)}n(sh,"isUrlStringOrObject");function ch(e){return typeof e=="number"&&e%1===0}n(ch,"isInteger");function uh(e,t,a){if(Tc(t)||(a=t,t=null),Jn(a)||(a={Error:"Failed Check"}),!e)if(t)t(new ba(a));else throw new ba(a)}n(uh,"validate");var ba=class extends Error{static{n(this,"ParameterError")}constructor(...t){super(...t)}};Ne.ParameterError=ba;Ne.isFunction=Tc;Ne.isNonEmptyString=Ic;Ne.isDate=rh;Ne.isEmptyString=ih;Ne.isString=zc;Ne.isObject=Jn;Ne.isUrlStringOrObject=sh;Ne.validate=uh});var Bc=ae((kw,Dc)=>{"use strict";Dc.exports="4.1.4"});var Qc=ae(X=>{"use strict";var Pc=(rc(),pi(nc)),lh=yc(),or=Fn(),Mc=Un().Store,Uc=Sc().MemoryCookieStore,qc=Gn().pathMatch,C=Nc(),Kc=Bc(),{fromCallback:Wc}=Kn(),{getCustomInspectSymbol:mh}=Xn(),ph=/^[\x21\x23-\x2B\x2D-\x3A\x3C-\x5B\x5D-\x7E]+$/,Rc=/[\x00-\x1F]/,Lc=[`
9
- `,"\r","\0"],dh=/[\x20-\x3A\x3C-\x7E]+/,hh=/[\x09\x20-\x2F\x3B-\x40\x5B-\x60\x7B-\x7E]/,fh={jan:0,feb:1,mar:2,apr:3,may:4,jun:5,jul:6,aug:7,sep:8,oct:9,nov:10,dec:11},Qn=2147483647e3,gh=0,Vc='Invalid sameSiteContext option for getCookies(); expected one of "strict", "lax", or "none"';function Hc(e){C.validate(C.isNonEmptyString(e),e);let t=String(e).toLowerCase();return t==="none"||t==="lax"||t==="strict"?t:null}n(Hc,"checkSameSiteContext");var St=Object.freeze({SILENT:"silent",STRICT:"strict",DISABLED:"unsafe-disabled"}),kh=/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-f\d]{1,4}:){7}(?:[a-f\d]{1,4}|:)|(?:[a-f\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-f\d]{1,4}|:)|(?:[a-f\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,2}|:)|(?:[a-f\d]{1,4}:){4}(?:(?::[a-f\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,3}|:)|(?:[a-f\d]{1,4}:){3}(?:(?::[a-f\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,4}|:)|(?:[a-f\d]{1,4}:){2}(?:(?::[a-f\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,5}|:)|(?:[a-f\d]{1,4}:){1}(?:(?::[a-f\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,6}|:)|(?::(?:(?::[a-f\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,7}|:)))$)/,yh=`
8
+ `}),o+=`${a}}`,o}n(th,"formatPath");Zn.inspectFallback=Cc});var Oc=ae(Ne=>{"use strict";var ah=Object.prototype.toString;function Sc(e){return typeof e=="function"}n(Sc,"isFunction");function Tc(e){return Ic(e)&&e!==""}n(Tc,"isNonEmptyString");function oh(e){return zc(e,Date)&&ih(e.getTime())}n(oh,"isDate");function nh(e){return e===""||e instanceof String&&e.toString()===""}n(nh,"isEmptyString");function Ic(e){return typeof e=="string"||e instanceof String}n(Ic,"isString");function Jn(e){return ah.call(e)==="[object Object]"}n(Jn,"isObject");function zc(e,t){try{return e instanceof t}catch{return!1}}n(zc,"isInstanceStrict");function rh(e){return Tc(e)||Jn(e)&&"hostname"in e&&"pathname"in e&&"protocol"in e||zc(e,URL)}n(rh,"isUrlStringOrObject");function ih(e){return typeof e=="number"&&e%1===0}n(ih,"isInteger");function sh(e,t,a){if(Sc(t)||(a=t,t=null),Jn(a)||(a={Error:"Failed Check"}),!e)if(t)t(new ba(a));else throw new ba(a)}n(sh,"validate");var ba=class extends Error{static{n(this,"ParameterError")}constructor(...t){super(...t)}};Ne.ParameterError=ba;Ne.isFunction=Sc;Ne.isNonEmptyString=Tc;Ne.isDate=oh;Ne.isEmptyString=nh;Ne.isString=Ic;Ne.isObject=Jn;Ne.isUrlStringOrObject=rh;Ne.validate=sh});var Dc=ae((fw,Nc)=>{"use strict";Nc.exports="4.1.4"});var Jc=ae(X=>{"use strict";var Bc=(nc(),pi(oc)),ch=kc(),or=Fn(),Fc=Un().Store,Mc=Ac().MemoryCookieStore,Uc=Gn().pathMatch,C=Oc(),qc=Dc(),{fromCallback:Kc}=Kn(),{getCustomInspectSymbol:uh}=Xn(),lh=/^[\x21\x23-\x2B\x2D-\x3A\x3C-\x5B\x5D-\x7E]+$/,Pc=/[\x00-\x1F]/,Rc=[`
9
+ `,"\r","\0"],mh=/[\x20-\x3A\x3C-\x7E]+/,ph=/[\x09\x20-\x2F\x3B-\x40\x5B-\x60\x7B-\x7E]/,dh={jan:0,feb:1,mar:2,apr:3,may:4,jun:5,jul:6,aug:7,sep:8,oct:9,nov:10,dec:11},Qn=2147483647e3,hh=0,Lc='Invalid sameSiteContext option for getCookies(); expected one of "strict", "lax", or "none"';function Vc(e){C.validate(C.isNonEmptyString(e),e);let t=String(e).toLowerCase();return t==="none"||t==="lax"||t==="strict"?t:null}n(Vc,"checkSameSiteContext");var At=Object.freeze({SILENT:"silent",STRICT:"strict",DISABLED:"unsafe-disabled"}),fh=/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-f\d]{1,4}:){7}(?:[a-f\d]{1,4}|:)|(?:[a-f\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-f\d]{1,4}|:)|(?:[a-f\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,2}|:)|(?:[a-f\d]{1,4}:){4}(?:(?::[a-f\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,3}|:)|(?:[a-f\d]{1,4}:){3}(?:(?::[a-f\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,4}|:)|(?:[a-f\d]{1,4}:){2}(?:(?::[a-f\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,5}|:)|(?:[a-f\d]{1,4}:){1}(?:(?::[a-f\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,6}|:)|(?::(?:(?::[a-f\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,7}|:)))$)/,gh=`
10
10
  \\[?(?:
11
11
  (?:[a-fA-F\\d]{1,4}:){7}(?:[a-fA-F\\d]{1,4}|:)|
12
12
  (?:[a-fA-F\\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|:[a-fA-F\\d]{1,4}|:)|
@@ -17,21 +17,21 @@ import{A as Ti,C as Jo,E as Ii,F as zi,H as Oi,I as Ni,J as Di,K as Bi,a as Go,b
17
17
  (?:[a-fA-F\\d]{1,4}:){1}(?:(?::[a-fA-F\\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,6}|:)|
18
18
  (?::(?:(?::[a-fA-F\\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,7}|:))
19
19
  )(?:%[0-9a-zA-Z]{1,})?\\]?
20
- `.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),Gc=new RegExp(`^${yh}$`);function er(e,t,a,o){let r=0;for(;r<e.length;){let i=e.charCodeAt(r);if(i<=47||i>=58)break;r++}return r<t||r>a||!o&&r!=e.length?null:parseInt(e.substr(0,r),10)}n(er,"parseDigits");function bh(e){let t=e.split(":"),a=[0,0,0];if(t.length!==3)return null;for(let o=0;o<3;o++){let r=o==2,i=er(t[o],1,2,r);if(i===null)return null;a[o]=i}return a}n(bh,"parseTime");function wh(e){e=String(e).substr(0,3).toLowerCase();let t=fh[e];return t>=0?t:null}n(wh,"parseMonth");function wa(e){if(!e)return;let t=e.split(hh);if(!t)return;let a=null,o=null,r=null,i=null,s=null,c=null;for(let u=0;u<t.length;u++){let p=t[u].trim();if(!p.length)continue;let m;if(r===null&&(m=bh(p),m)){a=m[0],o=m[1],r=m[2];continue}if(i===null&&(m=er(p,1,2,!0),m!==null)){i=m;continue}if(s===null&&(m=wh(p),m!==null)){s=m;continue}c===null&&(m=er(p,2,4,!0),m!==null&&(c=m,c>=70&&c<=99?c+=1900:c>=0&&c<=69&&(c+=2e3)))}if(!(i===null||s===null||c===null||r===null||i<1||i>31||c<1601||a>23||o>59||r>59))return new Date(Date.UTC(c,s,i,a,o,r))}n(wa,"parseDate");function Yc(e){return C.validate(C.isDate(e),e),e.toUTCString()}n(Yc,"formatDate");function Mt(e){return e==null?null:(e=e.trim().replace(/^\./,""),Gc.test(e)&&(e=e.replace("[","").replace("]","")),Pc&&/[^\u0001-\u007f]/.test(e)&&(e=Pc.toASCII(e)),e.toLowerCase())}n(Mt,"canonicalDomain");function tr(e,t,a){if(e==null||t==null)return null;if(a!==!1&&(e=Mt(e),t=Mt(t)),e==t)return!0;let o=e.lastIndexOf(t);return!(o<=0||e.length!==t.length+o||e.substr(o-1,1)!=="."||kh.test(e))}n(tr,"domainMatch");function Xc(e){if(!e||e.substr(0,1)!=="/")return"/";if(e==="/")return e;let t=e.lastIndexOf("/");return t===0?"/":e.slice(0,t)}n(Xc,"defaultPath");function jh(e){if(C.isEmptyString(e))return e;for(let t=0;t<Lc.length;t++){let a=e.indexOf(Lc[t]);a!==-1&&(e=e.substr(0,a))}return e}n(jh,"trimTerminator");function vh(e,t){e=jh(e),C.validate(C.isString(e),e);let a=e.indexOf("=");if(t)a===0&&(e=e.substr(1),a=e.indexOf("="));else if(a<=0)return;let o,r;if(a<=0?(o="",r=e.trim()):(o=e.substr(0,a).trim(),r=e.substr(a+1).trim()),Rc.test(o)||Rc.test(r))return;let i=new re;return i.key=o,i.value=r,i}n(vh,"parseCookiePair");function Zc(e,t){if((!t||typeof t!="object")&&(t={}),C.isEmptyString(e)||!C.isString(e))return null;e=e.trim();let a=e.indexOf(";"),o=a===-1?e:e.substr(0,a),r=vh(o,!!t.loose);if(!r)return;if(a===-1)return r;let i=e.slice(a+1).trim();if(i.length===0)return r;let s=i.split(";");for(;s.length;){let c=s.shift().trim();if(c.length===0)continue;let u=c.indexOf("="),p,m;switch(u===-1?(p=c,m=null):(p=c.substr(0,u),m=c.substr(u+1)),p=p.trim().toLowerCase(),m&&(m=m.trim()),p){case"expires":if(m){let h=wa(m);h&&(r.expires=h)}break;case"max-age":if(m&&/^-?[0-9]+$/.test(m)){let h=parseInt(m,10);r.setMaxAge(h)}break;case"domain":if(m){let h=m.trim().replace(/^\./,"");h&&(r.domain=h.toLowerCase())}break;case"path":r.path=m&&m[0]==="/"?m:null;break;case"secure":r.secure=!0;break;case"httponly":r.httpOnly=!0;break;case"samesite":switch(m?m.toLowerCase():""){case"strict":r.sameSite="strict";break;case"lax":r.sameSite="lax";break;case"none":r.sameSite="none";break;default:r.sameSite=void 0;break}break;default:r.extensions=r.extensions||[],r.extensions.push(c);break}}return r}n(Zc,"parse");function Eh(e){return C.validate(C.isObject(e),e),!e.key.startsWith("__Secure-")||e.secure}n(Eh,"isSecurePrefixConditionMet");function xh(e){return C.validate(C.isObject(e)),!e.key.startsWith("__Host-")||e.secure&&e.hostOnly&&e.path!=null&&e.path==="/"}n(xh,"isHostPrefixConditionMet");function Jc(e){let t;try{t=JSON.parse(e)}catch(a){return a}return t}n(Jc,"jsonParse");function fo(e){if(!e||C.isEmptyString(e))return null;let t;if(typeof e=="string"){if(t=Jc(e),t instanceof Error)return null}else t=e;let a=new re;for(let o=0;o<re.serializableProperties.length;o++){let r=re.serializableProperties[o];t[r]===void 0||t[r]===ja[r]||(r==="expires"||r==="creation"||r==="lastAccessed"?t[r]===null?a[r]=null:a[r]=t[r]=="Infinity"?"Infinity":new Date(t[r]):a[r]=t[r])}return a}n(fo,"fromJSON");function ar(e,t){C.validate(C.isObject(e),e),C.validate(C.isObject(t),t);let a=0,o=e.path?e.path.length:0;if(a=(t.path?t.path.length:0)-o,a!==0)return a;let i=e.creation?e.creation.getTime():Qn,s=t.creation?t.creation.getTime():Qn;return a=i-s,a!==0||(a=e.creationIndex-t.creationIndex),a}n(ar,"cookieCompare");function _h(e){if(C.validate(C.isString(e)),e==="/")return["/"];let t=[e];for(;e.length>1;){let a=e.lastIndexOf("/");if(a===0)break;e=e.substr(0,a),t.push(e)}return t.push("/"),t}n(_h,"permutePath");function $c(e){if(e instanceof Object)return e;try{e=decodeURI(e)}catch{}return lh(e)}n($c,"getCookieContext");var ja={key:"",value:"",expires:"Infinity",maxAge:null,domain:null,path:null,secure:!1,httpOnly:!1,extensions:null,hostOnly:null,pathIsDefault:null,creation:null,lastAccessed:null,sameSite:void 0},re=class e{static{n(this,"Cookie")}constructor(t={}){let a=mh();a&&(this[a]=this.inspect),Object.assign(this,ja,t),this.creation=this.creation||new Date,Object.defineProperty(this,"creationIndex",{configurable:!1,enumerable:!1,writable:!0,value:++e.cookiesCreated})}inspect(){let t=Date.now(),a=this.hostOnly!=null?this.hostOnly:"?",o=this.creation?`${t-this.creation.getTime()}ms`:"?",r=this.lastAccessed?`${t-this.lastAccessed.getTime()}ms`:"?";return`Cookie="${this.toString()}; hostOnly=${a}; aAge=${r}; cAge=${o}"`}toJSON(){let t={};for(let a of e.serializableProperties)this[a]!==ja[a]&&(a==="expires"||a==="creation"||a==="lastAccessed"?this[a]===null?t[a]=null:t[a]=this[a]=="Infinity"?"Infinity":this[a].toISOString():a==="maxAge"?this[a]!==null&&(t[a]=this[a]==1/0||this[a]==-1/0?this[a].toString():this[a]):this[a]!==ja[a]&&(t[a]=this[a]));return t}clone(){return fo(this.toJSON())}validate(){if(!ph.test(this.value)||this.expires!=1/0&&!(this.expires instanceof Date)&&!wa(this.expires)||this.maxAge!=null&&this.maxAge<=0||this.path!=null&&!dh.test(this.path))return!1;let t=this.cdomain();return!(t&&(t.match(/\.$/)||or.getPublicSuffix(t)==null))}setExpires(t){t instanceof Date?this.expires=t:this.expires=wa(t)||"Infinity"}setMaxAge(t){t===1/0||t===-1/0?this.maxAge=t.toString():this.maxAge=t}cookieString(){let t=this.value;return t==null&&(t=""),this.key===""?t:`${this.key}=${t}`}toString(){let t=this.cookieString();if(this.expires!=1/0&&(this.expires instanceof Date?t+=`; Expires=${Yc(this.expires)}`:t+=`; Expires=${this.expires}`),this.maxAge!=null&&this.maxAge!=1/0&&(t+=`; Max-Age=${this.maxAge}`),this.domain&&!this.hostOnly&&(t+=`; Domain=${this.domain}`),this.path&&(t+=`; Path=${this.path}`),this.secure&&(t+="; Secure"),this.httpOnly&&(t+="; HttpOnly"),this.sameSite&&this.sameSite!=="none"){let a=e.sameSiteCanonical[this.sameSite.toLowerCase()];t+=`; SameSite=${a||this.sameSite}`}return this.extensions&&this.extensions.forEach(a=>{t+=`; ${a}`}),t}TTL(t){if(this.maxAge!=null)return this.maxAge<=0?0:this.maxAge*1e3;let a=this.expires;return a!=1/0?(a instanceof Date||(a=wa(a)||1/0),a==1/0?1/0:a.getTime()-(t||Date.now())):1/0}expiryTime(t){if(this.maxAge!=null){let a=t||this.creation||new Date,o=this.maxAge<=0?-1/0:this.maxAge*1e3;return a.getTime()+o}return this.expires==1/0?1/0:this.expires.getTime()}expiryDate(t){let a=this.expiryTime(t);return a==1/0?new Date(Qn):a==-1/0?new Date(gh):new Date(a)}isPersistent(){return this.maxAge!=null||this.expires!=1/0}canonicalizedDomain(){return this.domain==null?null:Mt(this.domain)}cdomain(){return this.canonicalizedDomain()}};re.cookiesCreated=0;re.parse=Zc;re.fromJSON=fo;re.serializableProperties=Object.keys(ja);re.sameSiteLevel={strict:3,lax:2,none:1};re.sameSiteCanonical={strict:"Strict",lax:"Lax"};function Fc(e){if(e!=null){let t=e.toLowerCase();switch(t){case St.STRICT:case St.SILENT:case St.DISABLED:return t}}return St.SILENT}n(Fc,"getNormalizedPrefixSecurity");var We=class e{static{n(this,"CookieJar")}constructor(t,a={rejectPublicSuffixes:!0}){typeof a=="boolean"&&(a={rejectPublicSuffixes:a}),C.validate(C.isObject(a),a),this.rejectPublicSuffixes=a.rejectPublicSuffixes,this.enableLooseMode=!!a.looseMode,this.allowSpecialUseDomain=typeof a.allowSpecialUseDomain=="boolean"?a.allowSpecialUseDomain:!0,this.store=t||new Uc,this.prefixSecurity=Fc(a.prefixSecurity),this._cloneSync=lt("clone"),this._importCookiesSync=lt("_importCookies"),this.getCookiesSync=lt("getCookies"),this.getCookieStringSync=lt("getCookieString"),this.getSetCookieStringsSync=lt("getSetCookieStrings"),this.removeAllCookiesSync=lt("removeAllCookies"),this.setCookieSync=lt("setCookie"),this.serializeSync=lt("serialize")}setCookie(t,a,o,r){C.validate(C.isUrlStringOrObject(a),r,o);let i;if(C.isFunction(a))return r=a,r(new Error("No URL was specified"));let s=$c(a);if(C.isFunction(o)&&(r=o,o={}),C.validate(C.isFunction(r),r),!C.isNonEmptyString(t)&&!C.isObject(t)&&t instanceof String&&t.length==0)return r(null);let c=Mt(s.hostname),u=o.loose||this.enableLooseMode,p=null;if(o.sameSiteContext&&(p=Hc(o.sameSiteContext),!p))return r(new Error(Vc));if(typeof t=="string"||t instanceof String){if(t=re.parse(t,{loose:u}),!t)return i=new Error("Cookie failed to parse"),r(o.ignoreError?null:i)}else if(!(t instanceof re))return i=new Error("First argument to setCookie must be a Cookie object or string"),r(o.ignoreError?null:i);let m=o.now||new Date;if(this.rejectPublicSuffixes&&t.domain&&or.getPublicSuffix(t.cdomain(),{allowSpecialUseDomain:this.allowSpecialUseDomain,ignoreError:o.ignoreError})==null&&!Gc.test(t.domain))return i=new Error("Cookie has domain set to a public suffix"),r(o.ignoreError?null:i);if(t.domain){if(!tr(c,t.cdomain(),!1))return i=new Error(`Cookie not in this host's domain. Cookie:${t.cdomain()} Request:${c}`),r(o.ignoreError?null:i);t.hostOnly==null&&(t.hostOnly=!1)}else t.hostOnly=!0,t.domain=c;if((!t.path||t.path[0]!=="/")&&(t.path=Xc(s.pathname),t.pathIsDefault=!0),o.http===!1&&t.httpOnly)return i=new Error("Cookie is HttpOnly and this isn't an HTTP API"),r(o.ignoreError?null:i);if(t.sameSite!=="none"&&t.sameSite!==void 0&&p&&p==="none")return i=new Error("Cookie is SameSite but this is a cross-origin request"),r(o.ignoreError?null:i);let l=this.prefixSecurity===St.SILENT;if(!(this.prefixSecurity===St.DISABLED)){let d=!1,k;if(Eh(t)?xh(t)||(d=!0,k="Cookie has __Host prefix but either Secure or HostOnly attribute is not set or Path is not '/'"):(d=!0,k="Cookie has __Secure prefix but Secure attribute is not set"),d)return r(o.ignoreError||l?null:new Error(k))}let g=this.store;g.updateCookie||(g.updateCookie=function(d,k,b){this.putCookie(k,b)});function f(d,k){if(d)return r(d);let b=n(function(v){if(v)return r(v);r(null,t)},"next");if(k){if(o.http===!1&&k.httpOnly)return d=new Error("old Cookie is HttpOnly and this isn't an HTTP API"),r(o.ignoreError?null:d);t.creation=k.creation,t.creationIndex=k.creationIndex,t.lastAccessed=m,g.updateCookie(k,t,b)}else t.creation=t.lastAccessed=m,g.putCookie(t,b)}n(f,"withCookie"),g.findCookie(t.domain,t.path,t.key,f)}getCookies(t,a,o){C.validate(C.isUrlStringOrObject(t),o,t);let r=$c(t);C.isFunction(a)&&(o=a,a={}),C.validate(C.isObject(a),o,a),C.validate(C.isFunction(o),o);let i=Mt(r.hostname),s=r.pathname||"/",c=a.secure;c==null&&r.protocol&&(r.protocol=="https:"||r.protocol=="wss:")&&(c=!0);let u=0;if(a.sameSiteContext){let d=Hc(a.sameSiteContext);if(u=re.sameSiteLevel[d],!u)return o(new Error(Vc))}let p=a.http;p==null&&(p=!0);let m=a.now||Date.now(),l=a.expire!==!1,h=!!a.allPaths,g=this.store;function f(d){if(d.hostOnly){if(d.domain!=i)return!1}else if(!tr(i,d.domain,!1))return!1;return!h&&!qc(s,d.path)||d.secure&&!c||d.httpOnly&&!p||u&&re.sameSiteLevel[d.sameSite||"none"]>u?!1:l&&d.expiryTime()<=m?(g.removeCookie(d.domain,d.path,d.key,()=>{}),!1):!0}n(f,"matchingCookie"),g.findCookies(i,h?null:s,this.allowSpecialUseDomain,(d,k)=>{if(d)return o(d);k=k.filter(f),a.sort!==!1&&(k=k.sort(ar));let b=new Date;for(let v of k)v.lastAccessed=b;o(null,k)})}getCookieString(...t){let a=t.pop();C.validate(C.isFunction(a),a);let o=n(function(r,i){r?a(r):a(null,i.sort(ar).map(s=>s.cookieString()).join("; "))},"next");t.push(o),this.getCookies.apply(this,t)}getSetCookieStrings(...t){let a=t.pop();C.validate(C.isFunction(a),a);let o=n(function(r,i){r?a(r):a(null,i.map(s=>s.toString()))},"next");t.push(o),this.getCookies.apply(this,t)}serialize(t){C.validate(C.isFunction(t),t);let a=this.store.constructor.name;C.isObject(a)&&(a=null);let o={version:`tough-cookie@${Kc}`,storeType:a,rejectPublicSuffixes:!!this.rejectPublicSuffixes,enableLooseMode:!!this.enableLooseMode,allowSpecialUseDomain:!!this.allowSpecialUseDomain,prefixSecurity:Fc(this.prefixSecurity),cookies:[]};if(!(this.store.getAllCookies&&typeof this.store.getAllCookies=="function"))return t(new Error("store does not support getAllCookies and cannot be serialized"));this.store.getAllCookies((r,i)=>r?t(r):(o.cookies=i.map(s=>(s=s instanceof re?s.toJSON():s,delete s.creationIndex,s)),t(null,o)))}toJSON(){return this.serializeSync()}_importCookies(t,a){let o=t.cookies;if(!o||!Array.isArray(o))return a(new Error("serialized jar has no cookies array"));o=o.slice();let r=n(i=>{if(i)return a(i);if(!o.length)return a(i,this);let s;try{s=fo(o.shift())}catch(c){return a(c)}if(s===null)return r(null);this.store.putCookie(s,r)},"putNext");r()}clone(t,a){arguments.length===1&&(a=t,t=null),this.serialize((o,r)=>{if(o)return a(o);e.deserialize(r,t,a)})}cloneSync(t){if(arguments.length===0)return this._cloneSync();if(!t.synchronous)throw new Error("CookieJar clone destination store is not synchronous; use async API instead.");return this._cloneSync(t)}removeAllCookies(t){C.validate(C.isFunction(t),t);let a=this.store;if(typeof a.removeAllCookies=="function"&&a.removeAllCookies!==Mc.prototype.removeAllCookies)return a.removeAllCookies(t);a.getAllCookies((o,r)=>{if(o)return t(o);if(r.length===0)return t(null);let i=0,s=[];function c(u){if(u&&s.push(u),i++,i===r.length)return t(s.length?s[0]:null)}n(c,"removeCookieCb"),r.forEach(u=>{a.removeCookie(u.domain,u.path,u.key,c)})})}static deserialize(t,a,o){arguments.length!==3&&(o=a,a=null),C.validate(C.isFunction(o),o);let r;if(typeof t=="string"){if(r=Jc(t),r instanceof Error)return o(r)}else r=t;let i=new e(a,{rejectPublicSuffixes:r.rejectPublicSuffixes,looseMode:r.enableLooseMode,allowSpecialUseDomain:r.allowSpecialUseDomain,prefixSecurity:r.prefixSecurity});i._importCookies(r,s=>{if(s)return o(s);o(null,i)})}static deserializeSync(t,a){let o=typeof t=="string"?JSON.parse(t):t,r=new e(a,{rejectPublicSuffixes:o.rejectPublicSuffixes,looseMode:o.enableLooseMode});if(!r.store.synchronous)throw new Error("CookieJar store is not synchronous; use async API instead.");return r._importCookiesSync(o),r}};We.fromJSON=We.deserializeSync;["_importCookies","clone","getCookies","getCookieString","getSetCookieStrings","removeAllCookies","serialize","setCookie"].forEach(e=>{We.prototype[e]=Wc(We.prototype[e])});We.deserialize=Wc(We.deserialize);function lt(e){return function(...t){if(!this.store.synchronous)throw new Error("CookieJar store is not synchronous; use async API instead.");let a,o;if(this[e](...t,(r,i)=>{a=r,o=i}),a)throw a;return o}}n(lt,"syncWrap");X.version=Kc;X.CookieJar=We;X.Cookie=re;X.Store=Mc;X.MemoryCookieStore=Uc;X.parseDate=wa;X.formatDate=Yc;X.parse=Zc;X.fromJSON=fo;X.domainMatch=tr;X.defaultPath=Xc;X.pathMatch=qc;X.getPublicSuffix=or.getPublicSuffix;X.cookieCompare=ar;X.permuteDomain=Wn().permuteDomain;X.permutePath=_h;X.canonicalDomain=Mt;X.PrefixSecurityEnum=St;X.ParameterError=C.ParameterError});var tu=ae((ww,va)=>{"use strict";var Ut={decodeValues:!0,map:!1,silent:!1};function nr(e){return typeof e=="string"&&!!e.trim()}n(nr,"isNonEmptyString");function rr(e,t){var a=e.split(";").filter(nr),o=a.shift(),r=Ch(o),i=r.name,s=r.value;t=t?Object.assign({},Ut,t):Ut;try{s=t.decodeValues?decodeURIComponent(s):s}catch(u){console.error("set-cookie-parser encountered an error while decoding a cookie with value '"+s+"'. Set options.decodeValues to false to disable this feature.",u)}var c={name:i,value:s};return a.forEach(function(u){var p=u.split("="),m=p.shift().trimLeft().toLowerCase(),l=p.join("=");m==="expires"?c.expires=new Date(l):m==="max-age"?c.maxAge=parseInt(l,10):m==="secure"?c.secure=!0:m==="httponly"?c.httpOnly=!0:m==="samesite"?c.sameSite=l:c[m]=l}),c}n(rr,"parseString");function Ch(e){var t="",a="",o=e.split("=");return o.length>1?(t=o.shift(),a=o.join("=")):a=e,{name:t,value:a}}n(Ch,"parseNameValuePair");function eu(e,t){if(t=t?Object.assign({},Ut,t):Ut,!e)return t.map?{}:[];if(e.headers)if(typeof e.headers.getSetCookie=="function")e=e.headers.getSetCookie();else if(e.headers["set-cookie"])e=e.headers["set-cookie"];else{var a=e.headers[Object.keys(e.headers).find(function(r){return r.toLowerCase()==="set-cookie"})];!a&&e.headers.cookie&&!t.silent&&console.warn("Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."),e=a}if(Array.isArray(e)||(e=[e]),t=t?Object.assign({},Ut,t):Ut,t.map){var o={};return e.filter(nr).reduce(function(r,i){var s=rr(i,t);return r[s.name]=s,r},o)}else return e.filter(nr).map(function(r){return rr(r,t)})}n(eu,"parse");function Ah(e){if(Array.isArray(e))return e;if(typeof e!="string")return[];var t=[],a=0,o,r,i,s,c;function u(){for(;a<e.length&&/\s/.test(e.charAt(a));)a+=1;return a<e.length}n(u,"skipWhitespace");function p(){return r=e.charAt(a),r!=="="&&r!==";"&&r!==","}for(n(p,"notSpecialChar");a<e.length;){for(o=a,c=!1;u();)if(r=e.charAt(a),r===","){for(i=a,a+=1,u(),s=a;a<e.length&&p();)a+=1;a<e.length&&e.charAt(a)==="="?(c=!0,a=s,t.push(e.substring(o,i)),o=a):a=i+1}else a+=1;(!c||a>=e.length)&&t.push(e.substring(o,e.length))}return t}n(Ah,"splitCookiesString");va.exports=eu;va.exports.parse=eu;va.exports.parseString=rr;va.exports.splitCookiesString=Ah});var ou=ae((xw,sr)=>{"use strict";var ko=(zm(),pi(Im));sr.exports=function(e,t){return/^\/\//.test(e)&&(e="https:"+e),ko.call(this,e,t)};global.fetch||(global.fetch=sr.exports,global.Response=ko.Response,global.Headers=ko.Headers,global.Request=ko.Request)});var hu=ae((du,bo)=>{"use strict";(function(e,t,a){typeof bo<"u"&&bo.exports?bo.exports=a():typeof define=="function"&&define.amd?define(a):t[e]=a()})("urljoin",du,function(){function e(t){var a=[];if(t.length===0)return"";if(typeof t[0]!="string")throw new TypeError("Url must be a string. Received "+t[0]);if(t[0].match(/^[^/:]+:\/*$/)&&t.length>1){var o=t.shift();t[0]=o+t[0]}t[0].match(/^file:\/\/\//)?t[0]=t[0].replace(/^([^/:]+):\/*/,"$1:///"):t[0]=t[0].replace(/^([^/:]+):\/*/,"$1://");for(var r=0;r<t.length;r++){var i=t[r];if(typeof i!="string")throw new TypeError("Url must be a string. Received "+i);i!==""&&(r>0&&(i=i.replace(/^[\/]+/,"")),r<t.length-1?i=i.replace(/[\/]+$/,""):i=i.replace(/[\/]+$/,"/"),a.push(i))}var s=a.join("/");s=s.replace(/\/(\?|&|#[^!])/g,"$1");var c=s.split("?");return s=c.shift()+(c.length>0?"?":"")+c.join("&"),s}return n(e,"normalize"),function(){var t;return typeof arguments[0]=="object"?t=arguments[0]:t=[].slice.call(arguments),e(t)}})});import{errorString as yk,GLOBAL_CONFIG as bk,mergeProcessResults as wk,Plugin as jk,PluginManager as vk,USER_PROCESSOR as Ek}from"@sentio/runtime";var kt=wt(Om(),1);var Sm=wt(ki(),1);var ra={};bt(ra,{API:()=>an,EBlockTag:()=>Hi,EDAMode:()=>Fi,EDataAvailabilityMode:()=>$i,ESimulationFlag:()=>Lt,ETransactionExecutionStatus:()=>Fa,ETransactionFinalityStatus:()=>Vi,ETransactionStatus:()=>Vt,ETransactionType:()=>je,ETransactionVersion:()=>Ae,ETransactionVersion2:()=>Mi,ETransactionVersion3:()=>Ui,Errors:()=>en,Permission:()=>qi,SPEC:()=>tn,TypedDataRevision:()=>L,WALLET_API:()=>on});var an={};bt(an,{EBlockTag:()=>Hi,EDAMode:()=>Fi,EDataAvailabilityMode:()=>$i,ESimulationFlag:()=>Lt,ETransactionExecutionStatus:()=>Fa,ETransactionFinalityStatus:()=>Vi,ETransactionStatus:()=>Vt,ETransactionType:()=>je,ETransactionVersion:()=>Ae,ETransactionVersion2:()=>Mi,ETransactionVersion3:()=>Ui,Errors:()=>en,SPEC:()=>tn});var en={};var tn={};var je={DECLARE:"DECLARE",DEPLOY:"DEPLOY",DEPLOY_ACCOUNT:"DEPLOY_ACCOUNT",INVOKE:"INVOKE",L1_HANDLER:"L1_HANDLER"},Lt={SKIP_VALIDATE:"SKIP_VALIDATE",SKIP_FEE_CHARGE:"SKIP_FEE_CHARGE"},Vt={RECEIVED:"RECEIVED",REJECTED:"REJECTED",ACCEPTED_ON_L2:"ACCEPTED_ON_L2",ACCEPTED_ON_L1:"ACCEPTED_ON_L1"},Vi={ACCEPTED_ON_L2:"ACCEPTED_ON_L2",ACCEPTED_ON_L1:"ACCEPTED_ON_L1"},Fa={SUCCEEDED:"SUCCEEDED",REVERTED:"REVERTED"},Hi={LATEST:"latest",PENDING:"pending"},$i={L1:"L1",L2:"L2"},Fi={L1:0,L2:1},Ae={V0:"0x0",V1:"0x1",V2:"0x2",V3:"0x3",F0:"0x100000000000000000000000000000000",F1:"0x100000000000000000000000000000001",F2:"0x100000000000000000000000000000002",F3:"0x100000000000000000000000000000003"},Mi={V0:"0x0",V1:"0x1",V2:"0x2",F0:"0x100000000000000000000000000000000",F1:"0x100000000000000000000000000000001",F2:"0x100000000000000000000000000000002"},Ui={V3:"0x3",F3:"0x100000000000000000000000000000003"};var on={};bt(on,{Permission:()=>qi,TypedDataRevision:()=>L});var qi={ACCOUNTS:"accounts"};var L={ACTIVE:"1",LEGACY:"0"};var Gi=[],Yi=[],Xi=[],Nm=BigInt(0),ia=BigInt(1),Dm=BigInt(2),Bm=BigInt(7),Pm=BigInt(256),Rm=BigInt(113);for(let e=0,t=ia,a=1,o=0;e<24;e++){[a,o]=[o,(2*a+3*o)%5],Gi.push(2*(5*o+a)),Yi.push((e+1)*(e+2)/2%64);let r=Nm;for(let i=0;i<7;i++)t=(t<<ia^(t>>Bm)*Rm)%Pm,t&Dm&&(r^=ia<<(ia<<BigInt(i))-ia);Xi.push(r)}var[Lm,Vm]=_i(Xi,!0),Ki=n((e,t,a)=>a>32?Si(e,t,a):Ci(e,t,a),"rotlH"),Wi=n((e,t,a)=>a>32?Ti(e,t,a):Ai(e,t,a),"rotlL");function Hm(e,t=24){let a=new Uint32Array(10);for(let o=24-t;o<24;o++){for(let s=0;s<10;s++)a[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){let c=(s+8)%10,u=(s+2)%10,p=a[u],m=a[u+1],l=Ki(p,m,1)^a[c],h=Wi(p,m,1)^a[c+1];for(let g=0;g<50;g+=10)e[s+g]^=l,e[s+g+1]^=h}let r=e[2],i=e[3];for(let s=0;s<24;s++){let c=Yi[s],u=Ki(r,i,c),p=Wi(r,i,c),m=Gi[s];r=e[m],i=e[m+1],e[m]=u,e[m+1]=p}for(let s=0;s<50;s+=10){for(let c=0;c<10;c++)a[c]=e[s+c];for(let c=0;c<10;c++)e[s+c]^=~a[(c+2)%10]&a[(c+4)%10]}e[0]^=Lm[o],e[1]^=Vm[o]}a.fill(0)}n(Hm,"keccakP");var Ma=class e extends vi{static{n(this,"Keccak")}constructor(t,a,o,r=!1,i=24){if(super(),this.blockLen=t,this.suffix=a,this.outputLen=o,this.enableXOF=r,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,Go(o),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=wi(this.state)}keccak(){Xo||Zo(this.state32),Hm(this.state32,this.rounds),Xo||Zo(this.state32),this.posOut=0,this.pos=0}update(t){Yo(this);let{blockLen:a,state:o}=this;t=ji(t);let r=t.length;for(let i=0;i<r;){let s=Math.min(a-this.pos,r-i);for(let c=0;c<s;c++)o[this.pos++]^=t[i++];this.pos===a&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:t,suffix:a,pos:o,blockLen:r}=this;t[o]^=a,a&128&&o===r-1&&this.keccak(),t[r-1]^=128,this.keccak()}writeInto(t){Yo(this,!1),yi(t),this.finish();let a=this.state,{blockLen:o}=this;for(let r=0,i=t.length;r<i;){this.posOut>=o&&this.keccak();let s=Math.min(o-this.posOut,i-r);t.set(a.subarray(this.posOut,this.posOut+s),r),this.posOut+=s,r+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return Go(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(bi(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){let{blockLen:a,suffix:o,outputLen:r,rounds:i,enableXOF:s}=this;return t||(t=new e(a,o,r,s,i)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=i,t.suffix=o,t.outputLen=r,t.enableXOF=s,t.destroyed=this.destroyed,t}},Je=n((e,t,a)=>Ei(()=>new Ma(t,e,a)),"gen"),Fk=Je(6,144,224/8),Mk=Je(6,136,256/8),Uk=Je(6,104,384/8),qk=Je(6,72,512/8),Kk=Je(1,144,224/8),Zi=Je(1,136,256/8),Wk=Je(1,104,384/8),Gk=Je(1,72,512/8),Ji=n((e,t,a)=>xi((o={})=>new Ma(t,e,o.dkLen===void 0?a:o.dkLen,!0)),"genShake"),Yk=Ji(31,168,128/8),Xk=Ji(31,136,256/8);var vn={};bt(vn,{CURVE:()=>Tp,Fp251:()=>Fs,MAX_VALUE:()=>xt,ProjectivePoint:()=>$t,Signature:()=>ro,_poseidonMDS:()=>Ms,_starkCurve:()=>Cp,computeHashOnElements:()=>Pp,ethSigToPrivate:()=>Ip,getAccountPath:()=>Op,getPublicKey:()=>Bs,getSharedSecret:()=>Ap,getStarkKey:()=>so,grindKey:()=>Hs,keccak:()=>Te,pedersen:()=>Ct,poseidonBasic:()=>jn,poseidonCreate:()=>Vp,poseidonHash:()=>co,poseidonHashFunc:()=>Hp,poseidonHashMany:()=>Y,poseidonHashSingle:()=>$p,poseidonSmall:()=>ha,sign:()=>Ls,utils:()=>io,verify:()=>Sp});function sa(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}n(sa,"number");function $m(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}n($m,"isBytes");function ca(e,...t){if(!$m(e))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}n(ca,"bytes");function Qi(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");sa(e.outputLen),sa(e.blockLen)}n(Qi,"hash");function $e(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}n($e,"exists");function Ua(e,t){ca(e);let a=t.outputLen;if(e.length<a)throw new Error(`digestInto() expects output buffer of length at least ${a}`)}n(Ua,"output");var qa=BigInt(4294967295),es=BigInt(32);function Fm(e,t=!1){return t?{h:Number(e&qa),l:Number(e>>es&qa)}:{h:Number(e>>es&qa)|0,l:Number(e&qa)|0}}n(Fm,"fromBig");function ts(e,t=!1){let a=new Uint32Array(e.length),o=new Uint32Array(e.length);for(let r=0;r<e.length;r++){let{h:i,l:s}=Fm(e[r],t);[a[r],o[r]]=[i,s]}return[a,o]}n(ts,"split");var as=n((e,t,a)=>e<<a|t>>>32-a,"rotlSH"),os=n((e,t,a)=>t<<a|e>>>32-a,"rotlSL"),ns=n((e,t,a)=>t<<a-32|e>>>64-a,"rotlBH"),rs=n((e,t,a)=>e<<a-32|t>>>64-a,"rotlBL");import*as ua from"node:crypto";var Ka=ua&&typeof ua=="object"&&"webcrypto"in ua?ua.webcrypto:void 0;var is=n(e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),"u32");function ss(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}n(ss,"isBytes");var Wa=n(e=>new DataView(e.buffer,e.byteOffset,e.byteLength),"createView"),ve=n((e,t)=>e<<32-t|e>>>t,"rotr"),Mm=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Mm)throw new Error("Non little-endian hardware is not supported");function nn(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}n(nn,"utf8ToBytes");function et(e){if(typeof e=="string"&&(e=nn(e)),!ss(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}n(et,"toBytes");function cs(...e){let t=0;for(let o=0;o<e.length;o++){let r=e[o];if(!ss(r))throw new Error("Uint8Array expected");t+=r.length}let a=new Uint8Array(t);for(let o=0,r=0;o<e.length;o++){let i=e[o];a.set(i,r),r+=i.length}return a}n(cs,"concatBytes");var Qe=class{static{n(this,"Hash")}clone(){return this._cloneInto()}},ry={}.toString;function Ga(e){let t=n(o=>e().update(et(o)).digest(),"hashC"),a=e();return t.outputLen=a.outputLen,t.blockLen=a.blockLen,t.create=()=>e(),t}n(Ga,"wrapConstructor");function us(e){let t=n((o,r)=>e(r).update(et(o)).digest(),"hashC"),a=e({});return t.outputLen=a.outputLen,t.blockLen=a.blockLen,t.create=o=>e(o),t}n(us,"wrapXOFConstructorWithOpts");function ls(e=32){if(Ka&&typeof Ka.getRandomValues=="function")return Ka.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}n(ls,"randomBytes");var[ds,hs,fs]=[[],[],[]],Um=BigInt(0),la=BigInt(1),qm=BigInt(2),Km=BigInt(7),Wm=BigInt(256),Gm=BigInt(113);for(let e=0,t=la,a=1,o=0;e<24;e++){[a,o]=[o,(2*a+3*o)%5],ds.push(2*(5*o+a)),hs.push((e+1)*(e+2)/2%64);let r=Um;for(let i=0;i<7;i++)t=(t<<la^(t>>Km)*Gm)%Wm,t&qm&&(r^=la<<(la<<BigInt(i))-la);fs.push(r)}var[Ym,Xm]=ts(fs,!0),ms=n((e,t,a)=>a>32?ns(e,t,a):as(e,t,a),"rotlH"),ps=n((e,t,a)=>a>32?rs(e,t,a):os(e,t,a),"rotlL");function Zm(e,t=24){let a=new Uint32Array(10);for(let o=24-t;o<24;o++){for(let s=0;s<10;s++)a[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){let c=(s+8)%10,u=(s+2)%10,p=a[u],m=a[u+1],l=ms(p,m,1)^a[c],h=ps(p,m,1)^a[c+1];for(let g=0;g<50;g+=10)e[s+g]^=l,e[s+g+1]^=h}let r=e[2],i=e[3];for(let s=0;s<24;s++){let c=hs[s],u=ms(r,i,c),p=ps(r,i,c),m=ds[s];r=e[m],i=e[m+1],e[m]=u,e[m+1]=p}for(let s=0;s<50;s+=10){for(let c=0;c<10;c++)a[c]=e[s+c];for(let c=0;c<10;c++)e[s+c]^=~a[(c+2)%10]&a[(c+4)%10]}e[0]^=Ym[o],e[1]^=Xm[o]}a.fill(0)}n(Zm,"keccakP");var Ya=class e extends Qe{static{n(this,"Keccak")}constructor(t,a,o,r=!1,i=24){if(super(),this.blockLen=t,this.suffix=a,this.outputLen=o,this.enableXOF=r,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,sa(o),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=is(this.state)}keccak(){Zm(this.state32,this.rounds),this.posOut=0,this.pos=0}update(t){$e(this);let{blockLen:a,state:o}=this;t=et(t);let r=t.length;for(let i=0;i<r;){let s=Math.min(a-this.pos,r-i);for(let c=0;c<s;c++)o[this.pos++]^=t[i++];this.pos===a&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:t,suffix:a,pos:o,blockLen:r}=this;t[o]^=a,a&128&&o===r-1&&this.keccak(),t[r-1]^=128,this.keccak()}writeInto(t){$e(this,!1),ca(t),this.finish();let a=this.state,{blockLen:o}=this;for(let r=0,i=t.length;r<i;){this.posOut>=o&&this.keccak();let s=Math.min(o-this.posOut,i-r);t.set(a.subarray(this.posOut,this.posOut+s),r),this.posOut+=s,r+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return sa(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(Ua(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){let{blockLen:a,suffix:o,outputLen:r,rounds:i,enableXOF:s}=this;return t||(t=new e(a,o,r,s,i)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=i,t.suffix=o,t.outputLen=r,t.enableXOF=s,t.destroyed=this.destroyed,t}},tt=n((e,t,a)=>Ga(()=>new Ya(t,e,a)),"gen"),my=tt(6,144,224/8),py=tt(6,136,256/8),dy=tt(6,104,384/8),hy=tt(6,72,512/8),fy=tt(1,144,224/8),gs=tt(1,136,256/8),gy=tt(1,104,384/8),ky=tt(1,72,512/8),ks=n((e,t,a)=>us((o={})=>new Ya(t,e,o.dkLen===void 0?a:o.dkLen,!0)),"genShake"),yy=ks(31,168,128/8),by=ks(31,136,256/8);function Jm(e,t,a,o){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,a,o);let r=BigInt(32),i=BigInt(4294967295),s=Number(a>>r&i),c=Number(a&i),u=o?4:0,p=o?0:4;e.setUint32(t+u,s,o),e.setUint32(t+p,c,o)}n(Jm,"setBigUint64");var Xa=class extends Qe{static{n(this,"SHA2")}constructor(t,a,o,r){super(),this.blockLen=t,this.outputLen=a,this.padOffset=o,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=Wa(this.buffer)}update(t){$e(this);let{view:a,buffer:o,blockLen:r}=this;t=et(t);let i=t.length;for(let s=0;s<i;){let c=Math.min(r-this.pos,i-s);if(c===r){let u=Wa(t);for(;r<=i-s;s+=r)this.process(u,s);continue}o.set(t.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===r&&(this.process(a,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){$e(this),Ua(t,this),this.finished=!0;let{buffer:a,view:o,blockLen:r,isLE:i}=this,{pos:s}=this;a[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>r-s&&(this.process(o,0),s=0);for(let l=s;l<r;l++)a[l]=0;Jm(o,r-8,BigInt(this.length*8),i),this.process(o,0);let c=Wa(t),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let p=u/4,m=this.get();if(p>m.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<p;l++)c.setUint32(4*l,m[l],i)}digest(){let{buffer:t,outputLen:a}=this;this.digestInto(t);let o=t.slice(0,a);return this.destroy(),o}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:a,buffer:o,length:r,finished:i,destroyed:s,pos:c}=this;return t.length=r,t.pos=c,t.finished=i,t.destroyed=s,r%a&&t.buffer.set(o),t}};var Qm=n((e,t,a)=>e&t^~e&a,"Chi"),ep=n((e,t,a)=>e&t^e&a^t&a,"Maj"),tp=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),at=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),ot=new Uint32Array(64),rn=class extends Xa{static{n(this,"SHA256")}constructor(){super(64,32,8,!1),this.A=at[0]|0,this.B=at[1]|0,this.C=at[2]|0,this.D=at[3]|0,this.E=at[4]|0,this.F=at[5]|0,this.G=at[6]|0,this.H=at[7]|0}get(){let{A:t,B:a,C:o,D:r,E:i,F:s,G:c,H:u}=this;return[t,a,o,r,i,s,c,u]}set(t,a,o,r,i,s,c,u){this.A=t|0,this.B=a|0,this.C=o|0,this.D=r|0,this.E=i|0,this.F=s|0,this.G=c|0,this.H=u|0}process(t,a){for(let l=0;l<16;l++,a+=4)ot[l]=t.getUint32(a,!1);for(let l=16;l<64;l++){let h=ot[l-15],g=ot[l-2],f=ve(h,7)^ve(h,18)^h>>>3,d=ve(g,17)^ve(g,19)^g>>>10;ot[l]=d+ot[l-7]+f+ot[l-16]|0}let{A:o,B:r,C:i,D:s,E:c,F:u,G:p,H:m}=this;for(let l=0;l<64;l++){let h=ve(c,6)^ve(c,11)^ve(c,25),g=m+h+Qm(c,u,p)+tp[l]+ot[l]|0,d=(ve(o,2)^ve(o,13)^ve(o,22))+ep(o,r,i)|0;m=p,p=u,u=c,c=s+g|0,s=i,i=r,r=o,o=g+d|0}o=o+this.A|0,r=r+this.B|0,i=i+this.C|0,s=s+this.D|0,c=c+this.E|0,u=u+this.F|0,p=p+this.G|0,m=m+this.H|0,this.set(o,r,i,s,c,u,p,m)}roundClean(){ot.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Za=Ga(()=>new rn);var ao={};bt(ao,{bitGet:()=>sp,bitLen:()=>ip,bitMask:()=>jt,bitSet:()=>cp,bytesToHex:()=>Se,bytesToNumberBE:()=>oe,bytesToNumberLE:()=>Qa,concatBytes:()=>rt,createHmacDrbg:()=>cn,ensureBytes:()=>me,equalBytes:()=>np,hexToBytes:()=>Me,hexToNumber:()=>ma,isBytes:()=>Ee,numberToBytesBE:()=>nt,numberToBytesLE:()=>eo,numberToHexUnpadded:()=>js,numberToVarBytesBE:()=>to,utf8ToBytes:()=>rp,validateObject:()=>it});var ws=BigInt(0),Ja=BigInt(1),ap=BigInt(2);function Ee(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}n(Ee,"isBytes");var op=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Se(e){if(!Ee(e))throw new Error("Uint8Array expected");let t="";for(let a=0;a<e.length;a++)t+=op[e[a]];return t}n(Se,"bytesToHex");function js(e){let t=e.toString(16);return t.length&1?`0${t}`:t}n(js,"numberToHexUnpadded");function ma(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}n(ma,"hexToNumber");var Fe={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function ys(e){if(e>=Fe._0&&e<=Fe._9)return e-Fe._0;if(e>=Fe._A&&e<=Fe._F)return e-(Fe._A-10);if(e>=Fe._a&&e<=Fe._f)return e-(Fe._a-10)}n(ys,"asciiToBase16");function Me(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length,a=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let o=new Uint8Array(a);for(let r=0,i=0;r<a;r++,i+=2){let s=ys(e.charCodeAt(i)),c=ys(e.charCodeAt(i+1));if(s===void 0||c===void 0){let u=e[i]+e[i+1];throw new Error('hex string expected, got non-hex character "'+u+'" at index '+i)}o[r]=s*16+c}return o}n(Me,"hexToBytes");function oe(e){return ma(Se(e))}n(oe,"bytesToNumberBE");function Qa(e){if(!Ee(e))throw new Error("Uint8Array expected");return ma(Se(Uint8Array.from(e).reverse()))}n(Qa,"bytesToNumberLE");function nt(e,t){return Me(e.toString(16).padStart(t*2,"0"))}n(nt,"numberToBytesBE");function eo(e,t){return nt(e,t).reverse()}n(eo,"numberToBytesLE");function to(e){return Me(js(e))}n(to,"numberToVarBytesBE");function me(e,t,a){let o;if(typeof t=="string")try{o=Me(t)}catch(i){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${i}`)}else if(Ee(t))o=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let r=o.length;if(typeof a=="number"&&r!==a)throw new Error(`${e} expected ${a} bytes, got ${r}`);return o}n(me,"ensureBytes");function rt(...e){let t=0;for(let r=0;r<e.length;r++){let i=e[r];if(!Ee(i))throw new Error("Uint8Array expected");t+=i.length}let a=new Uint8Array(t),o=0;for(let r=0;r<e.length;r++){let i=e[r];a.set(i,o),o+=i.length}return a}n(rt,"concatBytes");function np(e,t){if(e.length!==t.length)return!1;let a=0;for(let o=0;o<e.length;o++)a|=e[o]^t[o];return a===0}n(np,"equalBytes");function rp(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}n(rp,"utf8ToBytes");function ip(e){let t;for(t=0;e>ws;e>>=Ja,t+=1);return t}n(ip,"bitLen");function sp(e,t){return e>>BigInt(t)&Ja}n(sp,"bitGet");var cp=n((e,t,a)=>e|(a?Ja:ws)<<BigInt(t),"bitSet"),jt=n(e=>(ap<<BigInt(e-1))-Ja,"bitMask"),sn=n(e=>new Uint8Array(e),"u8n"),bs=n(e=>Uint8Array.from(e),"u8fr");function cn(e,t,a){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof a!="function")throw new Error("hmacFn must be a function");let o=sn(e),r=sn(e),i=0,s=n(()=>{o.fill(1),r.fill(0),i=0},"reset"),c=n((...l)=>a(r,o,...l),"h"),u=n((l=sn())=>{r=c(bs([0]),l),o=c(),l.length!==0&&(r=c(bs([1]),l),o=c())},"reseed"),p=n(()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<t;){o=c();let g=o.slice();h.push(g),l+=o.length}return rt(...h)},"gen");return n((l,h)=>{s(),u(l);let g;for(;!(g=h(p()));)u();return s(),g},"genUntil")}n(cn,"createHmacDrbg");var up={bigint:n(e=>typeof e=="bigint","bigint"),function:n(e=>typeof e=="function","function"),boolean:n(e=>typeof e=="boolean","boolean"),string:n(e=>typeof e=="string","string"),stringOrUint8Array:n(e=>typeof e=="string"||Ee(e),"stringOrUint8Array"),isSafeInteger:n(e=>Number.isSafeInteger(e),"isSafeInteger"),array:n(e=>Array.isArray(e),"array"),field:n((e,t)=>t.Fp.isValid(e),"field"),hash:n(e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen),"hash")};function it(e,t,a={}){let o=n((r,i,s)=>{let c=up[i];if(typeof c!="function")throw new Error(`Invalid validator "${i}", expected function`);let u=e[r];if(!(s&&u===void 0)&&!c(u,e))throw new Error(`Invalid param ${String(r)}=${u} (${typeof u}), expected ${i}`)},"checkField");for(let[r,i]of Object.entries(t))o(r,i,!1);for(let[r,i]of Object.entries(a))o(r,i,!0);return e}n(it,"validateObject");var ne=BigInt(0),G=BigInt(1),vt=BigInt(2),lp=BigInt(3),un=BigInt(4),vs=BigInt(5),Es=BigInt(8),mp=BigInt(9),pp=BigInt(16);function ce(e,t){let a=e%t;return a>=ne?a:t+a}n(ce,"mod");function dp(e,t,a){if(a<=ne||t<ne)throw new Error("Expected power/modulo > 0");if(a===G)return ne;let o=G;for(;t>ne;)t&G&&(o=o*e%a),e=e*e%a,t>>=G;return o}n(dp,"pow");function Ht(e,t){if(e===ne||t<=ne)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let a=ce(e,t),o=t,r=ne,i=G,s=G,c=ne;for(;a!==ne;){let p=o/a,m=o%a,l=r-s*p,h=i-c*p;o=a,a=m,r=s,i=c,s=l,c=h}if(o!==G)throw new Error("invert: does not exist");return ce(r,t)}n(Ht,"invert");function hp(e){let t=(e-G)/vt,a,o,r;for(a=e-G,o=0;a%vt===ne;a/=vt,o++);for(r=vt;r<e&&dp(r,t,e)!==e-G;r++);if(o===1){let s=(e+G)/un;return n(function(u,p){let m=u.pow(p,s);if(!u.eql(u.sqr(m),p))throw new Error("Cannot find square root");return m},"tonelliFast")}let i=(a+G)/vt;return n(function(c,u){if(c.pow(u,t)===c.neg(c.ONE))throw new Error("Cannot find square root");let p=o,m=c.pow(c.mul(c.ONE,r),a),l=c.pow(u,i),h=c.pow(u,a);for(;!c.eql(h,c.ONE);){if(c.eql(h,c.ZERO))return c.ZERO;let g=1;for(let d=c.sqr(h);g<p&&!c.eql(d,c.ONE);g++)d=c.sqr(d);let f=c.pow(m,G<<BigInt(p-g-1));m=c.sqr(f),l=c.mul(l,f),h=c.mul(h,m),p=g}return l},"tonelliSlow")}n(hp,"tonelliShanks");function fp(e){if(e%un===lp){let t=(e+G)/un;return n(function(o,r){let i=o.pow(r,t);if(!o.eql(o.sqr(i),r))throw new Error("Cannot find square root");return i},"sqrt3mod4")}if(e%Es===vs){let t=(e-vs)/Es;return n(function(o,r){let i=o.mul(r,vt),s=o.pow(i,t),c=o.mul(r,s),u=o.mul(o.mul(c,vt),s),p=o.mul(c,o.sub(u,o.ONE));if(!o.eql(o.sqr(p),r))throw new Error("Cannot find square root");return p},"sqrt5mod8")}return e%pp,hp(e)}n(fp,"FpSqrt");var gp=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Et(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},a=gp.reduce((o,r)=>(o[r]="function",o),t);return it(e,a)}n(Et,"validateField");function ln(e,t,a){if(a<ne)throw new Error("Expected power > 0");if(a===ne)return e.ONE;if(a===G)return t;let o=e.ONE,r=t;for(;a>ne;)a&G&&(o=e.mul(o,r)),r=e.sqr(r),a>>=G;return o}n(ln,"FpPow");function kp(e,t){let a=new Array(t.length),o=t.reduce((i,s,c)=>e.is0(s)?i:(a[c]=i,e.mul(i,s)),e.ONE),r=e.inv(o);return t.reduceRight((i,s,c)=>e.is0(s)?i:(a[c]=e.mul(i,a[c]),e.mul(i,s)),r),a}n(kp,"FpInvertBatch");function mn(e,t){let a=t!==void 0?t:e.toString(2).length,o=Math.ceil(a/8);return{nBitLength:a,nByteLength:o}}n(mn,"nLength");function pn(e,t,a=!1,o={}){if(e<=ne)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:r,nByteLength:i}=mn(e,t);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=fp(e),c=Object.freeze({ORDER:e,BITS:r,BYTES:i,MASK:jt(r),ZERO:ne,ONE:G,create:n(u=>ce(u,e),"create"),isValid:n(u=>{if(typeof u!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof u}`);return ne<=u&&u<e},"isValid"),is0:n(u=>u===ne,"is0"),isOdd:n(u=>(u&G)===G,"isOdd"),neg:n(u=>ce(-u,e),"neg"),eql:n((u,p)=>u===p,"eql"),sqr:n(u=>ce(u*u,e),"sqr"),add:n((u,p)=>ce(u+p,e),"add"),sub:n((u,p)=>ce(u-p,e),"sub"),mul:n((u,p)=>ce(u*p,e),"mul"),pow:n((u,p)=>ln(c,u,p),"pow"),div:n((u,p)=>ce(u*Ht(p,e),e),"div"),sqrN:n(u=>u*u,"sqrN"),addN:n((u,p)=>u+p,"addN"),subN:n((u,p)=>u-p,"subN"),mulN:n((u,p)=>u*p,"mulN"),inv:n(u=>Ht(u,e),"inv"),sqrt:o.sqrt||(u=>s(c,u)),invertBatch:n(u=>kp(c,u),"invertBatch"),cmov:n((u,p,m)=>m?p:u,"cmov"),toBytes:n(u=>a?eo(u,i):nt(u,i),"toBytes"),fromBytes:n(u=>{if(u.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${u.length}`);return a?Qa(u):oe(u)},"fromBytes")});return Object.freeze(c)}n(pn,"Field");function xs(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}n(xs,"getFieldBytesLength");function dn(e){let t=xs(e);return t+Math.ceil(t/2)}n(dn,"getMinHashLength");function _s(e,t,a=!1){let o=e.length,r=xs(t),i=dn(t);if(o<16||o<i||o>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${o}`);let s=a?oe(e):Qa(e),c=ce(s,t-G)+G;return a?eo(c,r):nt(c,r)}n(_s,"mapHashToField");function bp(e){let{Fp:t,mds:a,reversePartialPowIdx:o,roundConstants:r}=e,{roundsFull:i,roundsPartial:s,sboxPower:c,t:u}=e;Et(t);for(let f of["t","roundsFull","roundsPartial"])if(typeof e[f]!="number"||!Number.isSafeInteger(e[f]))throw new Error(`Poseidon: invalid param ${f}=${e[f]} (${typeof e[f]})`);if(!Array.isArray(a)||a.length!==u)throw new Error("Poseidon: wrong MDS matrix");let p=a.map(f=>{if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon MDS matrix row: ${f}`);return f.map(d=>{if(typeof d!="bigint")throw new Error(`Poseidon MDS matrix value=${d}`);return t.create(d)})});if(o!==void 0&&typeof o!="boolean")throw new Error(`Poseidon: invalid param reversePartialPowIdx=${o}`);if(i%2!==0)throw new Error(`Poseidon roundsFull is not even: ${i}`);let m=i+s;if(!Array.isArray(r)||r.length!==m)throw new Error("Poseidon: wrong round constants");let l=r.map(f=>{if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon wrong round constants: ${f}`);return f.map(d=>{if(typeof d!="bigint"||!t.isValid(d))throw new Error(`Poseidon wrong round constant=${d}`);return t.create(d)})});if(!c||![3,5,7].includes(c))throw new Error(`Poseidon wrong sboxPower=${c}`);let h=BigInt(c),g=n(f=>ln(t,f,h),"sboxFn");return c===3?g=n(f=>t.mul(t.sqrN(f),f),"sboxFn"):c===5&&(g=n(f=>t.mul(t.sqrN(t.sqrN(f)),f),"sboxFn")),Object.freeze({...e,rounds:m,sboxFn:g,roundConstants:l,mds:p})}n(bp,"validateOpts");function Cs(e){let t=bp(e),{Fp:a,mds:o,roundConstants:r,rounds:i,roundsPartial:s,sboxFn:c,t:u}=t,p=t.roundsFull/2,m=t.reversePartialPowIdx?u-1:0,l=n((g,f,d)=>(g=g.map((k,b)=>a.add(k,r[d][b])),f?g=g.map(k=>c(k)):g[m]=c(g[m]),g=o.map(k=>k.reduce((b,v,E)=>a.add(b,a.mulN(v,g[E])),a.ZERO)),g),"poseidonRound"),h=n(function(f){if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon: wrong values (expected array of bigints with length ${u})`);f=f.map(k=>{if(typeof k!="bigint")throw new Error(`Poseidon: wrong value=${k} (${typeof k})`);return a.create(k)});let d=0;for(let k=0;k<p;k++)f=l(f,!0,d++);for(let k=0;k<s;k++)f=l(f,!1,d++);for(let k=0;k<p;k++)f=l(f,!0,d++);if(d!==i)throw new Error(`Poseidon: wrong number of rounds: last round=${d}, total=${i}`);return f},"poseidonHash");return h.roundConstants=r,h}n(Cs,"poseidon");var wp=BigInt(0),hn=BigInt(1);function As(e,t){let a=n((r,i)=>{let s=i.negate();return r?s:i},"constTimeNegate"),o=n(r=>{let i=Math.ceil(t/r)+1,s=2**(r-1);return{windows:i,windowSize:s}},"opts");return{constTimeNegate:a,unsafeLadder(r,i){let s=e.ZERO,c=r;for(;i>wp;)i&hn&&(s=s.add(c)),c=c.double(),i>>=hn;return s},precomputeWindow(r,i){let{windows:s,windowSize:c}=o(i),u=[],p=r,m=p;for(let l=0;l<s;l++){m=p,u.push(m);for(let h=1;h<c;h++)m=m.add(p),u.push(m);p=m.double()}return u},wNAF(r,i,s){let{windows:c,windowSize:u}=o(r),p=e.ZERO,m=e.BASE,l=BigInt(2**r-1),h=2**r,g=BigInt(r);for(let f=0;f<c;f++){let d=f*u,k=Number(s&l);s>>=g,k>u&&(k-=h,s+=hn);let b=d,v=d+Math.abs(k)-1,E=f%2!==0,T=k<0;k===0?m=m.add(a(E,i[b])):p=p.add(a(T,i[v]))}return{p,f:m}},wNAFCached(r,i,s,c){let u=r._WINDOW_SIZE||1,p=i.get(r);return p||(p=this.precomputeWindow(r,u),u!==1&&i.set(r,c(p))),this.wNAF(u,p,s)}}}n(As,"wNAF");function fn(e){return Et(e.Fp),it(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...mn(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}n(fn,"validateBasic");function jp(e){let t=fn(e);it(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:a,Fp:o,a:r}=t;if(a){if(!o.eql(r,o.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof a!="object"||typeof a.beta!="bigint"||typeof a.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}n(jp,"validatePointOpts");var{bytesToNumberBE:vp,hexToBytes:Ep}=ao,qe={Err:class extends Error{static{n(this,"DERErr")}constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=qe;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let a=e[1],o=e.subarray(2,a+2);if(!a||o.length!==a)throw new t("Invalid signature integer: wrong length");if(o[0]&128)throw new t("Invalid signature integer: negative");if(o[0]===0&&!(o[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:vp(o),l:e.subarray(a+2)}},toSig(e){let{Err:t}=qe,a=typeof e=="string"?Ep(e):e;if(!Ee(a))throw new Error("ui8a expected");let o=a.length;if(o<2||a[0]!=48)throw new t("Invalid signature tag");if(a[1]!==o-2)throw new t("Invalid signature: incorrect length");let{d:r,l:i}=qe._parseInt(a.subarray(2)),{d:s,l:c}=qe._parseInt(i);if(c.length)throw new t("Invalid signature: left bytes after parsing");return{r,s}},hexFromSig(e){let t=n(p=>Number.parseInt(p[0],16)&8?"00"+p:p,"slice"),a=n(p=>{let m=p.toString(16);return m.length&1?`0${m}`:m},"h"),o=t(a(e.s)),r=t(a(e.r)),i=o.length/2,s=r.length/2,c=a(i),u=a(s);return`30${a(s+i+4)}02${u}${r}02${c}${o}`}},Ue=BigInt(0),be=BigInt(1),My=BigInt(2),Ss=BigInt(3),Uy=BigInt(4);function xp(e){let t=jp(e),{Fp:a}=t,o=t.toBytes||((f,d,k)=>{let b=d.toAffine();return rt(Uint8Array.from([4]),a.toBytes(b.x),a.toBytes(b.y))}),r=t.fromBytes||(f=>{let d=f.subarray(1),k=a.fromBytes(d.subarray(0,a.BYTES)),b=a.fromBytes(d.subarray(a.BYTES,2*a.BYTES));return{x:k,y:b}});function i(f){let{a:d,b:k}=t,b=a.sqr(f),v=a.mul(b,f);return a.add(a.add(v,a.mul(f,d)),k)}if(n(i,"weierstrassEquation"),!a.eql(a.sqr(t.Gy),i(t.Gx)))throw new Error("bad generator point: equation left != right");function s(f){return typeof f=="bigint"&&Ue<f&&f<t.n}n(s,"isWithinCurveOrder");function c(f){if(!s(f))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}n(c,"assertGE");function u(f){let{allowedPrivateKeyLengths:d,nByteLength:k,wrapPrivateKey:b,n:v}=t;if(d&&typeof f!="bigint"){if(Ee(f)&&(f=Se(f)),typeof f!="string"||!d.includes(f.length))throw new Error("Invalid key");f=f.padStart(k*2,"0")}let E;try{E=typeof f=="bigint"?f:oe(me("private key",f,k))}catch{throw new Error(`private key must be ${k} bytes, hex or bigint, not ${typeof f}`)}return b&&(E=ce(E,v)),c(E),E}n(u,"normPrivateKeyToScalar");let p=new Map;function m(f){if(!(f instanceof l))throw new Error("ProjectivePoint expected")}n(m,"assertPrjPoint");class l{static{n(this,"Point")}constructor(d,k,b){if(this.px=d,this.py=k,this.pz=b,d==null||!a.isValid(d))throw new Error("x required");if(k==null||!a.isValid(k))throw new Error("y required");if(b==null||!a.isValid(b))throw new Error("z required")}static fromAffine(d){let{x:k,y:b}=d||{};if(!d||!a.isValid(k)||!a.isValid(b))throw new Error("invalid affine point");if(d instanceof l)throw new Error("projective point not allowed");let v=n(E=>a.eql(E,a.ZERO),"is0");return v(k)&&v(b)?l.ZERO:new l(k,b,a.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let k=a.invertBatch(d.map(b=>b.pz));return d.map((b,v)=>b.toAffine(k[v])).map(l.fromAffine)}static fromHex(d){let k=l.fromAffine(r(me("pointHex",d)));return k.assertValidity(),k}static fromPrivateKey(d){return l.BASE.multiply(u(d))}_setWindowSize(d){this._WINDOW_SIZE=d,p.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!a.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:d,y:k}=this.toAffine();if(!a.isValid(d)||!a.isValid(k))throw new Error("bad point: x or y not FE");let b=a.sqr(k),v=i(d);if(!a.eql(b,v))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:d}=this.toAffine();if(a.isOdd)return!a.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){m(d);let{px:k,py:b,pz:v}=this,{px:E,py:T,pz:D}=d,_=a.eql(a.mul(k,D),a.mul(E,v)),A=a.eql(a.mul(b,D),a.mul(T,v));return _&&A}negate(){return new l(this.px,a.neg(this.py),this.pz)}double(){let{a:d,b:k}=t,b=a.mul(k,Ss),{px:v,py:E,pz:T}=this,D=a.ZERO,_=a.ZERO,A=a.ZERO,I=a.mul(v,v),le=a.mul(E,E),H=a.mul(T,T),N=a.mul(v,E);return N=a.add(N,N),A=a.mul(v,T),A=a.add(A,A),D=a.mul(d,A),_=a.mul(b,H),_=a.add(D,_),D=a.sub(le,_),_=a.add(le,_),_=a.mul(D,_),D=a.mul(N,D),A=a.mul(b,A),H=a.mul(d,H),N=a.sub(I,H),N=a.mul(d,N),N=a.add(N,A),A=a.add(I,I),I=a.add(A,I),I=a.add(I,H),I=a.mul(I,N),_=a.add(_,I),H=a.mul(E,T),H=a.add(H,H),I=a.mul(H,N),D=a.sub(D,I),A=a.mul(H,le),A=a.add(A,A),A=a.add(A,A),new l(D,_,A)}add(d){m(d);let{px:k,py:b,pz:v}=this,{px:E,py:T,pz:D}=d,_=a.ZERO,A=a.ZERO,I=a.ZERO,le=t.a,H=a.mul(t.b,Ss),N=a.mul(k,E),W=a.mul(b,T),$=a.mul(v,D),x=a.add(k,b),w=a.add(E,T);x=a.mul(x,w),w=a.add(N,W),x=a.sub(x,w),w=a.add(k,v);let j=a.add(E,D);return w=a.mul(w,j),j=a.add(N,$),w=a.sub(w,j),j=a.add(b,v),_=a.add(T,D),j=a.mul(j,_),_=a.add(W,$),j=a.sub(j,_),I=a.mul(le,w),_=a.mul(H,$),I=a.add(_,I),_=a.sub(W,I),I=a.add(W,I),A=a.mul(_,I),W=a.add(N,N),W=a.add(W,N),$=a.mul(le,$),w=a.mul(H,w),W=a.add(W,$),$=a.sub(N,$),$=a.mul(le,$),w=a.add(w,$),N=a.mul(W,w),A=a.add(A,N),N=a.mul(j,w),_=a.mul(x,_),_=a.sub(_,N),N=a.mul(x,W),I=a.mul(j,I),I=a.add(I,N),new l(_,A,I)}subtract(d){return this.add(d.negate())}is0(){return this.equals(l.ZERO)}wNAF(d){return g.wNAFCached(this,p,d,k=>{let b=a.invertBatch(k.map(v=>v.pz));return k.map((v,E)=>v.toAffine(b[E])).map(l.fromAffine)})}multiplyUnsafe(d){let k=l.ZERO;if(d===Ue)return k;if(c(d),d===be)return this;let{endo:b}=t;if(!b)return g.unsafeLadder(this,d);let{k1neg:v,k1:E,k2neg:T,k2:D}=b.splitScalar(d),_=k,A=k,I=this;for(;E>Ue||D>Ue;)E&be&&(_=_.add(I)),D&be&&(A=A.add(I)),I=I.double(),E>>=be,D>>=be;return v&&(_=_.negate()),T&&(A=A.negate()),A=new l(a.mul(A.px,b.beta),A.py,A.pz),_.add(A)}multiply(d){c(d);let k=d,b,v,{endo:E}=t;if(E){let{k1neg:T,k1:D,k2neg:_,k2:A}=E.splitScalar(k),{p:I,f:le}=this.wNAF(D),{p:H,f:N}=this.wNAF(A);I=g.constTimeNegate(T,I),H=g.constTimeNegate(_,H),H=new l(a.mul(H.px,E.beta),H.py,H.pz),b=I.add(H),v=le.add(N)}else{let{p:T,f:D}=this.wNAF(k);b=T,v=D}return l.normalizeZ([b,v])[0]}multiplyAndAddUnsafe(d,k,b){let v=l.BASE,E=n((D,_)=>_===Ue||_===be||!D.equals(v)?D.multiplyUnsafe(_):D.multiply(_),"mul"),T=E(this,k).add(E(d,b));return T.is0()?void 0:T}toAffine(d){let{px:k,py:b,pz:v}=this,E=this.is0();d==null&&(d=E?a.ONE:a.inv(v));let T=a.mul(k,d),D=a.mul(b,d),_=a.mul(v,d);if(E)return{x:a.ZERO,y:a.ZERO};if(!a.eql(_,a.ONE))throw new Error("invZ was invalid");return{x:T,y:D}}isTorsionFree(){let{h:d,isTorsionFree:k}=t;if(d===be)return!0;if(k)return k(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:k}=t;return d===be?this:k?k(l,this):this.multiplyUnsafe(t.h)}toRawBytes(d=!0){return this.assertValidity(),o(l,this,d)}toHex(d=!0){return Se(this.toRawBytes(d))}}l.BASE=new l(t.Gx,t.Gy,a.ONE),l.ZERO=new l(a.ZERO,a.ONE,a.ZERO);let h=t.nBitLength,g=As(l,t.endo?Math.ceil(h/2):h);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:u,weierstrassEquation:i,isWithinCurveOrder:s}}n(xp,"weierstrassPoints");function _p(e){let t=fn(e);return it(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}n(_p,"validateOpts");function Ts(e){let t=_p(e),{Fp:a,n:o}=t,r=a.BYTES+1,i=2*a.BYTES+1;function s(w){return Ue<w&&w<a.ORDER}n(s,"isValidFieldElement");function c(w){return ce(w,o)}n(c,"modN");function u(w){return Ht(w,o)}n(u,"invN");let{ProjectivePoint:p,normPrivateKeyToScalar:m,weierstrassEquation:l,isWithinCurveOrder:h}=xp({...t,toBytes(w,j,S){let V=j.toAffine(),F=a.toBytes(V.x),te=rt;return S?te(Uint8Array.from([j.hasEvenY()?2:3]),F):te(Uint8Array.from([4]),F,a.toBytes(V.y))},fromBytes(w){let j=w.length,S=w[0],V=w.subarray(1);if(j===r&&(S===2||S===3)){let F=oe(V);if(!s(F))throw new Error("Point is not on curve");let te=l(F),de=a.sqrt(te),he=(de&be)===be;return(S&1)===1!==he&&(de=a.neg(de)),{x:F,y:de}}else if(j===i&&S===4){let F=a.fromBytes(V.subarray(0,a.BYTES)),te=a.fromBytes(V.subarray(a.BYTES,2*a.BYTES));return{x:F,y:te}}else throw new Error(`Point of length ${j} was invalid. Expected ${r} compressed bytes or ${i} uncompressed bytes`)}}),g=n(w=>Se(nt(w,t.nByteLength)),"numToNByteStr");function f(w){let j=o>>be;return w>j}n(f,"isBiggerThanHalfOrder");function d(w){return f(w)?c(-w):w}n(d,"normalizeS");let k=n((w,j,S)=>oe(w.slice(j,S)),"slcNum");class b{static{n(this,"Signature")}constructor(j,S,V){this.r=j,this.s=S,this.recovery=V,this.assertValidity()}static fromCompact(j){let S=t.nByteLength;return j=me("compactSignature",j,S*2),new b(k(j,0,S),k(j,S,2*S))}static fromDER(j){let{r:S,s:V}=qe.toSig(me("DER",j));return new b(S,V)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(j){return new b(this.r,this.s,j)}recoverPublicKey(j){let{r:S,s:V,recovery:F}=this,te=A(me("msgHash",j));if(F==null||![0,1,2,3].includes(F))throw new Error("recovery id invalid");let de=F===2||F===3?S+t.n:S;if(de>=a.ORDER)throw new Error("recovery id 2 or 3 invalid");let he=F&1?"03":"02",Ye=p.fromHex(he+g(de)),Xe=u(de),Bt=c(-te*Xe),na=c(V*Xe),Ze=p.BASE.multiplyAndAddUnsafe(Ye,Bt,na);if(!Ze)throw new Error("point at infinify");return Ze.assertValidity(),Ze}hasHighS(){return f(this.s)}normalizeS(){return this.hasHighS()?new b(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Me(this.toDERHex())}toDERHex(){return qe.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Me(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let v={isValidPrivateKey(w){try{return m(w),!0}catch{return!1}},normPrivateKeyToScalar:m,randomPrivateKey:n(()=>{let w=dn(t.n);return _s(t.randomBytes(w),t.n)},"randomPrivateKey"),precompute(w=8,j=p.BASE){return j._setWindowSize(w),j.multiply(BigInt(3)),j}};function E(w,j=!0){return p.fromPrivateKey(w).toRawBytes(j)}n(E,"getPublicKey");function T(w){let j=Ee(w),S=typeof w=="string",V=(j||S)&&w.length;return j?V===r||V===i:S?V===2*r||V===2*i:w instanceof p}n(T,"isProbPub");function D(w,j,S=!0){if(T(w))throw new Error("first arg must be private key");if(!T(j))throw new Error("second arg must be public key");return p.fromHex(j).multiply(m(w)).toRawBytes(S)}n(D,"getSharedSecret");let _=t.bits2int||function(w){let j=oe(w),S=w.length*8-t.nBitLength;return S>0?j>>BigInt(S):j},A=t.bits2int_modN||function(w){return c(_(w))},I=jt(t.nBitLength);function le(w){if(typeof w!="bigint")throw new Error("bigint expected");if(!(Ue<=w&&w<I))throw new Error(`bigint expected < 2^${t.nBitLength}`);return nt(w,t.nByteLength)}n(le,"int2octets");function H(w,j,S=N){if(["recovered","canonical"].some(yt=>yt in S))throw new Error("sign() legacy options not supported");let{hash:V,randomBytes:F}=t,{lowS:te,prehash:de,extraEntropy:he}=S;te==null&&(te=!0),w=me("msgHash",w),de&&(w=me("prehashed msgHash",V(w)));let Ye=A(w),Xe=m(j),Bt=[le(Xe),le(Ye)];if(he!=null){let yt=he===!0?F(a.BYTES):he;Bt.push(me("extraEntropy",yt))}let na=rt(...Bt),Ze=Ye;function Ko(yt){let Pt=_(yt);if(!h(Pt))return;let ci=u(Pt),Ce=p.BASE.multiply(Pt).toAffine(),Rt=c(Ce.x);if(Rt===Ue)return;let $a=c(ci*c(Ze+Rt*Xe));if($a===Ue)return;let ui=(Ce.x===Rt?0:2)|Number(Ce.y&be),li=$a;return te&&f($a)&&(li=d($a),ui^=1),new b(Rt,li,ui)}return n(Ko,"k2sig"),{seed:na,k2sig:Ko}}n(H,"prepSig");let N={lowS:t.lowS,prehash:!1},W={lowS:t.lowS,prehash:!1};function $(w,j,S=N){let{seed:V,k2sig:F}=H(w,j,S),te=t;return cn(te.hash.outputLen,te.nByteLength,te.hmac)(V,F)}n($,"sign"),p.BASE._setWindowSize(8);function x(w,j,S,V=W){let F=w;if(j=me("msgHash",j),S=me("publicKey",S),"strict"in V)throw new Error("options.strict was renamed to lowS");let{lowS:te,prehash:de}=V,he,Ye;try{if(typeof F=="string"||Ee(F))try{he=b.fromDER(F)}catch(Ce){if(!(Ce instanceof qe.Err))throw Ce;he=b.fromCompact(F)}else if(typeof F=="object"&&typeof F.r=="bigint"&&typeof F.s=="bigint"){let{r:Ce,s:Rt}=F;he=new b(Ce,Rt)}else throw new Error("PARSE");Ye=p.fromHex(S)}catch(Ce){if(Ce.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(te&&he.hasHighS())return!1;de&&(j=t.hash(j));let{r:Xe,s:Bt}=he,na=A(j),Ze=u(Bt),Ko=c(na*Ze),yt=c(Xe*Ze),Pt=p.BASE.multiplyAndAddUnsafe(Ye,Ko,yt)?.toAffine();return Pt?c(Pt.x)===Xe:!1}return n(x,"verify"),{CURVE:t,getPublicKey:E,getSharedSecret:D,sign:$,verify:x,ProjectivePoint:p,Signature:b,utils:v}}n(Ts,"weierstrass");var oo=class extends Qe{static{n(this,"HMAC")}constructor(t,a){super(),this.finished=!1,this.destroyed=!1,Qi(t);let o=et(a);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(o.length>r?t.create().update(o).digest():o);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=t.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(t){return $e(this),this.iHash.update(t),this}digestInto(t){$e(this),ca(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:a,iHash:o,finished:r,destroyed:i,blockLen:s,outputLen:c}=this;return t=t,t.finished=r,t.destroyed=i,t.blockLen=s,t.outputLen=c,t.oHash=a._cloneInto(t.oHash),t.iHash=o._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},gn=n((e,t,a)=>new oo(e,t).update(a).digest(),"hmac");gn.create=(e,t)=>new oo(e,t);function Is(e){return{hash:e,hmac:n((t,...a)=>gn(e,t,cs(...a)),"hmac"),randomBytes:ls}}n(Is,"getHash");var pa=BigInt("3618502788666131213697322783095070105526743751716087489154079457884512865583"),xt=BigInt("0x800000000000000000000000000000000000000000000000000000000000000"),Ns=252;function zs(e){for(;e[0]===0;)e=e.subarray(1);let t=e.length*8-Ns,a=oe(e);return t>0?a>>BigInt(t):a}n(zs,"bits2int");function Ds(e){return typeof e=="string"&&(e=wn(e),e.length&1&&(e="0"+e)),Me(e)}n(Ds,"hex0xToBytes");var _t=Ts({a:BigInt(1),b:BigInt("3141592653589793238462643383279502884197169399375105820974944592307816406665"),Fp:pn(BigInt("0x800000000000011000000000000000000000000000000000000000000000001")),n:pa,nBitLength:Ns,Gx:BigInt("874739451078007766457464989774322083649278607533249481151382481072868806602"),Gy:BigInt("152666792071518830868575557812948353041420400780739481342941381225525861407"),h:BigInt(1),lowS:!1,...Is(Za),bits2int:zs,bits2int_modN:n(e=>{let t=oe(e).toString(16);return t.length===63&&(e=Ds(t+"0")),ce(zs(e),pa)},"bits2int_modN")}),Cp=_t;function Ft(e){return me("",typeof e=="string"?Ds(e):e)}n(Ft,"ensureBytes");function bn(e){return Se(Ft(e)).padStart(64,"0")}n(bn,"normPrivKey");function Bs(e,t=!1){return _t.getPublicKey(bn(e),t)}n(Bs,"getPublicKey");function Ap(e,t){return _t.getSharedSecret(bn(e),t)}n(Ap,"getSharedSecret");function Ps(e){let{r:t,s:a}=e;if(t<0n||t>=xt)throw new Error(`Signature.r should be [1, ${xt})`);let o=Ht(a,pa);if(o<0n||o>=xt)throw new Error(`inv(Signature.s) should be [1, ${xt})`)}n(Ps,"checkSignature");function Rs(e){let t=Ft(e);if(oe(t)>=xt)throw new Error(`msgHash should be [0, ${xt})`);return t}n(Rs,"checkMessage");function Ls(e,t,a){let o=_t.sign(Rs(e),bn(t),a);return Ps(o),o}n(Ls,"sign");function Sp(e,t,a){if(!(e instanceof ro)){let o=Ft(e);try{e=ro.fromDER(o)}catch(r){if(!(r instanceof qe.Err))throw r;e=ro.fromCompact(o)}}return Ps(e),_t.verify(e,Rs(t),Ft(a))}n(Sp,"verify");var{CURVE:Tp,ProjectivePoint:$t,Signature:ro,utils:io}=_t;function Vs(e){return`0x${Se(e.subarray(1)).replace(/^0+/gm,"")}`}n(Vs,"extractX");function wn(e){return e.replace(/^0x/i,"")}n(wn,"strip0x");function Hs(e){let t=Ft(e),a=2n**256n,o=a-ce(a,pa);for(let r=0;;r++){let i=kn(rt(t,to(BigInt(r))));if(i<o)return ce(i,pa).toString(16);if(r===1e5)throw new Error("grindKey is broken: tried 100k vals")}}n(Hs,"grindKey");function so(e){return Vs(Bs(e,!0))}n(so,"getStarkKey");function Ip(e){if(e=wn(e),e.length!==130)throw new Error("Wrong ethereum signature");return Hs(e.substring(0,64))}n(Ip,"ethSigToPrivate");var zp=2n**31n-1n,no=n(e=>Number(e&zp),"int31");function Op(e,t,a,o){let r=no(kn(e)),i=no(kn(t)),s=ma(wn(a));return`m/2645'/${r}'/${i}'/${no(s)}'/${no(s>>31n)}'/${o}`}n(Op,"getAccountPath");var da=[new $t(2089986280348253421170679821480865132823066470938446095505822317253594081284n,1713931329540660377023406109199410414810705867260802078187082345529207694986n,1n),new $t(996781205833008774514500082376783249102396023663454813447423147977397232763n,1668503676786377725805489344771023921079126552019160156920634619255970485781n,1n),new $t(2251563274489750535117886426533222435294046428347329203627021249169616184184n,1798716007562728905295480679789526322175868328062420237419143593021674992973n,1n),new $t(2138414695194151160943305727036575959195309218611738193261179310511854807447n,113410276730064486255102093846540133784865286929052426931474106396135072156n,1n),new $t(2379962749567351885752724891227938183011949129833673362440656643086021394946n,776496453633298175483985398648758586525933812536653089401905292063708816422n,1n)];function $s(e,t){let a=[],o=e;for(let r=0;r<248;r++)a.push(o),o=o.double();o=t;for(let r=0;r<4;r++)a.push(o),o=o.double();return a}n($s,"pedersenPrecompute");var Np=$s(da[1],da[2]),Dp=$s(da[3],da[4]);function Bp(e){let t;if(typeof e=="bigint")t=e;else if(typeof e=="number"){if(!Number.isSafeInteger(e))throw new Error(`Invalid pedersenArg: ${e}`);t=BigInt(e)}else t=oe(Ft(e));if(!(0n<=t&&t<_t.CURVE.Fp.ORDER))throw new Error(`PedersenArg should be 0 <= value < CURVE.P: ${t}`);return t}n(Bp,"pedersenArg");function Os(e,t,a){let o=Bp(t);for(let r=0;r<252;r++){let i=a[r];if(i.equals(e))throw new Error("Same point");(o&1n)!==0n&&(e=e.add(i)),o>>=1n}return e}n(Os,"pedersenSingle");function Ct(e,t){let a=da[0];return a=Os(a,e,Np),a=Os(a,t,Dp),Vs(a.toRawBytes(!0))}n(Ct,"pedersen");var Pp=n((e,t=Ct)=>[0,...e,e.length].reduce((a,o)=>t(a,o)),"computeHashOnElements"),Rp=jt(250),Te=n(e=>oe(gs(e))&Rp,"keccak"),kn=n(e=>oe(Za(e)),"sha256Num"),Fs=pn(BigInt("3618502788666131213697322783095070105623107215331596699973092056135872020481"));function yn(e,t,a){let o=e.fromBytes(Za(nn(`${t}${a}`)));return e.create(o)}n(yn,"poseidonRoundConstant");function Ms(e,t,a,o=0){let r=[],i=[];for(let s=0;s<a;s++)r.push(yn(e,`${t}x`,o*a+s)),i.push(yn(e,`${t}y`,o*a+s));if(new Set([...r,...i]).size!==2*a)throw new Error("X and Y values are not distinct");return r.map(s=>i.map(c=>e.inv(e.sub(s,c))))}n(Ms,"_poseidonMDS");var Lp=[[3,1,1],[1,-1,1],[1,1,-2]].map(e=>e.map(BigInt));function jn(e,t){if(Et(e.Fp),!Number.isSafeInteger(e.rate)||!Number.isSafeInteger(e.capacity))throw new Error(`Wrong poseidon opts: ${e}`);let a=e.rate+e.capacity,o=e.roundsFull+e.roundsPartial,r=[];for(let s=0;s<o;s++){let c=[];for(let u=0;u<a;u++)c.push(yn(e.Fp,"Hades",a*s+u));r.push(c)}let i=Cs({...e,t:a,sboxPower:3,reversePartialPowIdx:!0,mds:t,roundConstants:r});return i.m=a,i.rate=e.rate,i.capacity=e.capacity,i}n(jn,"poseidonBasic");function Vp(e,t=0){let a=e.rate+e.capacity;if(!Number.isSafeInteger(t))throw new Error(`Wrong mdsAttempt=${t}`);return jn(e,Ms(e.Fp,"HadesMDS",a,t))}n(Vp,"poseidonCreate");var ha=jn({Fp:Fs,rate:2,capacity:1,roundsFull:8,roundsPartial:83},Lp);function co(e,t,a=ha){return a([e,t,2n])[0]}n(co,"poseidonHash");function Hp(e,t,a=ha){return to(co(oe(e),oe(t),a))}n(Hp,"poseidonHashFunc");function $p(e,t=ha){return t([e,0n,1n])[0]}n($p,"poseidonHashSingle");function Y(e,t=ha){let{m:a,rate:o}=t;if(!Array.isArray(e))throw new Error("bigint array expected in values");let r=Array.from(e);for(r.push(1n);r.length%o!==0;)r.push(0n);let i=new Array(a).fill(0n);for(let s=0;s<r.length;s+=o){for(let c=0;c<o;c++)i[c]+=r[s+c];i=t(i)}return i[0]}n(Y,"poseidonHashMany");var En={};bt(En,{poseidon:()=>Mp,splitConstants:()=>Fp,validateOpts:()=>Us});function Us(e){let{Fp:t,mds:a,reversePartialPowIdx:o,roundConstants:r}=e,{roundsFull:i,roundsPartial:s,sboxPower:c,t:u}=e;Oi(t);for(let f of["t","roundsFull","roundsPartial"])if(typeof e[f]!="number"||!Number.isSafeInteger(e[f]))throw new Error(`Poseidon: invalid param ${f}=${e[f]} (${typeof e[f]})`);if(!Array.isArray(a)||a.length!==u)throw new Error("Poseidon: wrong MDS matrix");let p=a.map(f=>{if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon MDS matrix row: ${f}`);return f.map(d=>{if(typeof d!="bigint")throw new Error(`Poseidon MDS matrix value=${d}`);return t.create(d)})});if(o!==void 0&&typeof o!="boolean")throw new Error(`Poseidon: invalid param reversePartialPowIdx=${o}`);if(i%2!==0)throw new Error(`Poseidon roundsFull is not even: ${i}`);let m=i+s;if(!Array.isArray(r)||r.length!==m)throw new Error("Poseidon: wrong round constants");let l=r.map(f=>{if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon wrong round constants: ${f}`);return f.map(d=>{if(typeof d!="bigint"||!t.isValid(d))throw new Error(`Poseidon wrong round constant=${d}`);return t.create(d)})});if(!c||![3,5,7].includes(c))throw new Error(`Poseidon wrong sboxPower=${c}`);let h=BigInt(c),g=n(f=>Ni(t,f,h),"sboxFn");return c===3?g=n(f=>t.mul(t.sqrN(f),f),"sboxFn"):c===5&&(g=n(f=>t.mul(t.sqrN(t.sqrN(f)),f),"sboxFn")),Object.freeze({...e,rounds:m,sboxFn:g,roundConstants:l,mds:p})}n(Us,"validateOpts");function Fp(e,t){if(typeof t!="number")throw new Error("poseidonSplitConstants: wrong t");if(!Array.isArray(e)||e.length%t)throw new Error("poseidonSplitConstants: wrong rc");let a=[],o=[];for(let r=0;r<e.length;r++)o.push(e[r]),o.length===t&&(a.push(o),o=[]);return a}n(Fp,"splitConstants");function Mp(e){let t=Us(e),{Fp:a,mds:o,roundConstants:r,rounds:i,roundsPartial:s,sboxFn:c,t:u}=t,p=t.roundsFull/2,m=t.reversePartialPowIdx?u-1:0,l=n((g,f,d)=>(g=g.map((k,b)=>a.add(k,r[d][b])),f?g=g.map(k=>c(k)):g[m]=c(g[m]),g=o.map(k=>k.reduce((b,v,E)=>a.add(b,a.mulN(v,g[E])),a.ZERO)),g),"poseidonRound"),h=n(function(f){if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon: wrong values (expected array of bigints with length ${u})`);f=f.map(k=>{if(typeof k!="bigint")throw new Error(`Poseidon: wrong value=${k} (${typeof k})`);return a.create(k)});let d=0;for(let k=0;k<p;k++)f=l(f,!0,d++);for(let k=0;k<s;k++)f=l(f,!1,d++);for(let k=0;k<p;k++)f=l(f,!0,d++);if(d!==i)throw new Error(`Poseidon: wrong number of rounds: last round=${d}, total=${i}`);return f},"poseidonHash");return h.roundConstants=r,h}n(Mp,"poseidon");function Ke(e){return Up.test(e)}n(Ke,"isInteger");var Up=/^-?[0-9]+$/;function fa(e){return qp.test(e)}n(fa,"isNumber");var qp=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function qs(e,t){let a=parseFloat(e),o=String(a),r=xn(e),i=xn(o);return!!(r===i||t?.approx===!0&&!Ke(e)&&i.length>=14&&r.startsWith(i.substring(0,14)))}n(qs,"isSafeNumber");var At=function(e){return e.underflow="underflow",e.overflow="overflow",e.truncate_integer="truncate_integer",e.truncate_float="truncate_float",e}({});function _n(e){if(qs(e,{approx:!1}))return;if(Ke(e))return At.truncate_integer;let t=parseFloat(e);return isFinite(t)?t===0?At.underflow:At.truncate_float:At.overflow}n(_n,"getUnsafeNumberReason");function xn(e){return e.replace(Kp,"").replace(Gp,"").replace(Yp,"").replace(Wp,"")}n(xn,"extractSignificantDigits");var Kp=/[eE][+-]?\d+$/,Wp=/^-?(0*)?/,Gp=/\./,Yp=/0+$/;var ga=class{static{n(this,"LosslessNumber")}isLosslessNumber=!0;constructor(t){if(!fa(t))throw new Error('Invalid number (value: "'+t+'")');this.value=t}valueOf(){let t=_n(this.value);if(t===void 0||t===At.truncate_float)return parseFloat(this.value);if(Ke(this.value))return BigInt(this.value);throw new Error(`Cannot safely convert to number: the value '${this.value}' would ${t} and become ${parseFloat(this.value)}`)}toString(){return this.value}};function Cn(e){return e&&typeof e=="object"&&e.isLosslessNumber===!0||!1}n(Cn,"isLosslessNumber");function An(e){return new ga(e)}n(An,"parseLosslessNumber");function Sn(e){return Ke(e)?BigInt(e):parseFloat(e)}n(Sn,"parseNumberAndBigInt");function Ks(e,t){return Tn({"":e},"",e,t)}n(Ks,"revive");function Tn(e,t,a,o){return Array.isArray(a)?o.call(e,t,Zp(a,o)):a&&typeof a=="object"&&!Cn(a)?o.call(e,t,Xp(a,o)):o.call(e,t,a)}n(Tn,"reviveValue");function Xp(e,t){return Object.keys(e).forEach(a=>{let o=Tn(e,a,e[a],t);o!==void 0?e[a]=o:delete e[a]}),e}n(Xp,"reviveObject");function Zp(e,t){for(let a=0;a<e.length;a++)e[a]=Tn(e,a+"",e[a],t);return e}n(Zp,"reviveArray");function mo(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:An,o=0,r=c();return f(r),k(),t?Ks(r,t):r;function i(){if(e.charCodeAt(o)===od){o++,p();let x={},w=!0;for(;o<e.length&&e.charCodeAt(o)!==Gs;){w?w=!1:(h(),p());let j=o,S=m();if(S===void 0){E();return}p(),g();let V=c();if(V===void 0){le();return}Object.prototype.hasOwnProperty.call(x,S)&&!zn(V,x[S])&&T(S,j+1),x[S]=V}return e.charCodeAt(o)!==Gs&&D(),o++,x}}n(i,"parseObject");function s(){if(e.charCodeAt(o)===nd){o++,p();let x=[],w=!0;for(;o<e.length&&e.charCodeAt(o)!==Ys;){w?w=!1:h();let j=c();d(j),x.push(j)}return e.charCodeAt(o)!==Ys&&_(),o++,x}}n(s,"parseArray");function c(){p();let x=m()??l()??i()??s()??u("true",!0)??u("false",!1)??u("null",null);return p(),x}n(c,"parseValue");function u(x,w){if(e.slice(o,o+x.length)===x)return o+=x.length,w}n(u,"parseKeyword");function p(){for(;Jp(e.charCodeAt(o));)o++}n(p,"skipWhitespace");function m(){if(e.charCodeAt(o)===In){o++;let x="";for(;o<e.length&&e.charCodeAt(o)!==In;){if(e.charCodeAt(o)===ad){let w=e[o+1],j=td[w];j!==void 0?(x+=j,o++):w==="u"?uo(e.charCodeAt(o+2))&&uo(e.charCodeAt(o+3))&&uo(e.charCodeAt(o+4))&&uo(e.charCodeAt(o+5))?(x+=String.fromCharCode(parseInt(e.slice(o+2,o+6),16)),o+=5):H(o):I(o)}else ed(e.charCodeAt(o))?x+=e[o]:A(e[o]);o++}return v(),o++,x}}n(m,"parseString");function l(){let x=o;if(e.charCodeAt(o)===Xs&&(o++,b(x)),e.charCodeAt(o)===On)o++;else if(Qp(e.charCodeAt(o)))for(o++;lo(e.charCodeAt(o));)o++;if(e.charCodeAt(o)===pd)for(o++,b(x);lo(e.charCodeAt(o));)o++;if(e.charCodeAt(o)===kd||e.charCodeAt(o)===gd)for(o++,(e.charCodeAt(o)===Xs||e.charCodeAt(o)===ud)&&o++,b(x);lo(e.charCodeAt(o));)o++;if(o>x)return a(e.slice(x,o))}n(l,"parseNumeric");function h(){if(e.charCodeAt(o)!==md)throw new SyntaxError(`Comma ',' expected after value ${$()}`);o++}n(h,"eatComma");function g(){if(e.charCodeAt(o)!==dd)throw new SyntaxError(`Colon ':' expected after property name ${$()}`);o++}n(g,"eatColon");function f(x){if(x===void 0)throw new SyntaxError(`JSON value expected ${$()}`)}n(f,"expectValue");function d(x){if(x===void 0)throw new SyntaxError(`Array item expected ${$()}`)}n(d,"expectArrayItem");function k(){if(o<e.length)throw new SyntaxError(`Expected end of input ${$()}`)}n(k,"expectEndOfInput");function b(x){if(!lo(e.charCodeAt(o))){let w=e.slice(x,o);throw new SyntaxError(`Invalid number '${w}', expecting a digit ${$()}`)}}n(b,"expectDigit");function v(){if(e.charCodeAt(o)!==In)throw new SyntaxError(`End of string '"' expected ${$()}`)}n(v,"expectEndOfString");function E(){throw new SyntaxError(`Quoted object key expected ${$()}`)}n(E,"throwObjectKeyExpected");function T(x,w){throw new SyntaxError(`Duplicate key '${x}' encountered at position ${w}`)}n(T,"throwDuplicateKey");function D(){throw new SyntaxError(`Quoted object key or end of object '}' expected ${$()}`)}n(D,"throwObjectKeyOrEndExpected");function _(){throw new SyntaxError(`Array item or end of array ']' expected ${$()}`)}n(_,"throwArrayItemOrEndExpected");function A(x){throw new SyntaxError(`Invalid character '${x}' ${N()}`)}n(A,"throwInvalidCharacter");function I(x){let w=e.slice(x,x+2);throw new SyntaxError(`Invalid escape character '${w}' ${N()}`)}n(I,"throwInvalidEscapeCharacter");function le(){throw new SyntaxError(`Object value expected after ':' ${N()}`)}n(le,"throwObjectValueExpected");function H(x){let w=e.slice(x,x+6);throw new SyntaxError(`Invalid unicode character '${w}' ${N()}`)}n(H,"throwInvalidUnicodeCharacter");function N(){return`at position ${o}`}n(N,"pos");function W(){return o<e.length?`but got '${e[o]}'`:"but reached end of input"}n(W,"got");function $(){return W()+" "+N()}n($,"gotAt")}n(mo,"parse");function Jp(e){return e===rd||e===id||e===sd||e===cd}n(Jp,"isWhitespace");function uo(e){return e>=On&&e<=Nn||e>=hd&&e<=yd||e>=fd&&e<=bd}n(uo,"isHex");function lo(e){return e>=On&&e<=Nn}n(lo,"isDigit");function Qp(e){return e>=ld&&e<=Nn}n(Qp,"isNonZeroDigit");function ed(e){return e>=32&&e<=1114111}n(ed,"isValidStringCharacter");function zn(e,t){return e===t?!0:Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((a,o)=>zn(a,t[o])):Ws(e)&&Ws(t)?[...new Set([...Object.keys(e),...Object.keys(t)])].every(o=>zn(e[o],t[o])):!1}n(zn,"isDeepEqual");function Ws(e){return typeof e=="object"&&e!==null}n(Ws,"isObject");var td={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
21
- `,r:"\r",t:" "},ad=92,od=123,Gs=125,nd=91,Ys=93,rd=32,id=10,sd=9,cd=13,In=34,ud=43,Xs=45,On=48,ld=49,Nn=57,md=44,pd=46,dd=58,hd=65,fd=97,gd=69,kd=101,yd=70,bd=102;function po(e,t,a,o){let r=wd(a),i=typeof t=="function"?t.call({"":e},"",e):e;return s(i,"");function s(m,l){if(Array.isArray(o)){let h=o.find(g=>g.test(m));if(h){let g=h.stringify(m);if(typeof g!="string"||!fa(g))throw new Error(`Invalid JSON number: output of a number stringifier must be a string containing a JSON number (output: ${g})`);return g}}if(typeof m=="boolean"||typeof m=="number"||typeof m=="string"||m===null||m instanceof Date||m instanceof Boolean||m instanceof Number||m instanceof String)return JSON.stringify(m);if(m&&m.isLosslessNumber||typeof m=="bigint")return m.toString();if(Array.isArray(m))return c(m,l);if(m&&typeof m=="object")return u(m,l)}function c(m,l){if(m.length===0)return"[]";let h=r?l+r:void 0,g=r?`[
20
+ `.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),Wc=new RegExp(`^${gh}$`);function er(e,t,a,o){let r=0;for(;r<e.length;){let i=e.charCodeAt(r);if(i<=47||i>=58)break;r++}return r<t||r>a||!o&&r!=e.length?null:parseInt(e.substr(0,r),10)}n(er,"parseDigits");function kh(e){let t=e.split(":"),a=[0,0,0];if(t.length!==3)return null;for(let o=0;o<3;o++){let r=o==2,i=er(t[o],1,2,r);if(i===null)return null;a[o]=i}return a}n(kh,"parseTime");function yh(e){e=String(e).substr(0,3).toLowerCase();let t=dh[e];return t>=0?t:null}n(yh,"parseMonth");function wa(e){if(!e)return;let t=e.split(ph);if(!t)return;let a=null,o=null,r=null,i=null,s=null,c=null;for(let u=0;u<t.length;u++){let p=t[u].trim();if(!p.length)continue;let m;if(r===null&&(m=kh(p),m)){a=m[0],o=m[1],r=m[2];continue}if(i===null&&(m=er(p,1,2,!0),m!==null)){i=m;continue}if(s===null&&(m=yh(p),m!==null)){s=m;continue}c===null&&(m=er(p,2,4,!0),m!==null&&(c=m,c>=70&&c<=99?c+=1900:c>=0&&c<=69&&(c+=2e3)))}if(!(i===null||s===null||c===null||r===null||i<1||i>31||c<1601||a>23||o>59||r>59))return new Date(Date.UTC(c,s,i,a,o,r))}n(wa,"parseDate");function Gc(e){return C.validate(C.isDate(e),e),e.toUTCString()}n(Gc,"formatDate");function Ft(e){return e==null?null:(e=e.trim().replace(/^\./,""),Wc.test(e)&&(e=e.replace("[","").replace("]","")),Bc&&/[^\u0001-\u007f]/.test(e)&&(e=Bc.toASCII(e)),e.toLowerCase())}n(Ft,"canonicalDomain");function tr(e,t,a){if(e==null||t==null)return null;if(a!==!1&&(e=Ft(e),t=Ft(t)),e==t)return!0;let o=e.lastIndexOf(t);return!(o<=0||e.length!==t.length+o||e.substr(o-1,1)!=="."||fh.test(e))}n(tr,"domainMatch");function Yc(e){if(!e||e.substr(0,1)!=="/")return"/";if(e==="/")return e;let t=e.lastIndexOf("/");return t===0?"/":e.slice(0,t)}n(Yc,"defaultPath");function bh(e){if(C.isEmptyString(e))return e;for(let t=0;t<Rc.length;t++){let a=e.indexOf(Rc[t]);a!==-1&&(e=e.substr(0,a))}return e}n(bh,"trimTerminator");function wh(e,t){e=bh(e),C.validate(C.isString(e),e);let a=e.indexOf("=");if(t)a===0&&(e=e.substr(1),a=e.indexOf("="));else if(a<=0)return;let o,r;if(a<=0?(o="",r=e.trim()):(o=e.substr(0,a).trim(),r=e.substr(a+1).trim()),Pc.test(o)||Pc.test(r))return;let i=new re;return i.key=o,i.value=r,i}n(wh,"parseCookiePair");function Xc(e,t){if((!t||typeof t!="object")&&(t={}),C.isEmptyString(e)||!C.isString(e))return null;e=e.trim();let a=e.indexOf(";"),o=a===-1?e:e.substr(0,a),r=wh(o,!!t.loose);if(!r)return;if(a===-1)return r;let i=e.slice(a+1).trim();if(i.length===0)return r;let s=i.split(";");for(;s.length;){let c=s.shift().trim();if(c.length===0)continue;let u=c.indexOf("="),p,m;switch(u===-1?(p=c,m=null):(p=c.substr(0,u),m=c.substr(u+1)),p=p.trim().toLowerCase(),m&&(m=m.trim()),p){case"expires":if(m){let h=wa(m);h&&(r.expires=h)}break;case"max-age":if(m&&/^-?[0-9]+$/.test(m)){let h=parseInt(m,10);r.setMaxAge(h)}break;case"domain":if(m){let h=m.trim().replace(/^\./,"");h&&(r.domain=h.toLowerCase())}break;case"path":r.path=m&&m[0]==="/"?m:null;break;case"secure":r.secure=!0;break;case"httponly":r.httpOnly=!0;break;case"samesite":switch(m?m.toLowerCase():""){case"strict":r.sameSite="strict";break;case"lax":r.sameSite="lax";break;case"none":r.sameSite="none";break;default:r.sameSite=void 0;break}break;default:r.extensions=r.extensions||[],r.extensions.push(c);break}}return r}n(Xc,"parse");function jh(e){return C.validate(C.isObject(e),e),!e.key.startsWith("__Secure-")||e.secure}n(jh,"isSecurePrefixConditionMet");function vh(e){return C.validate(C.isObject(e)),!e.key.startsWith("__Host-")||e.secure&&e.hostOnly&&e.path!=null&&e.path==="/"}n(vh,"isHostPrefixConditionMet");function Zc(e){let t;try{t=JSON.parse(e)}catch(a){return a}return t}n(Zc,"jsonParse");function fo(e){if(!e||C.isEmptyString(e))return null;let t;if(typeof e=="string"){if(t=Zc(e),t instanceof Error)return null}else t=e;let a=new re;for(let o=0;o<re.serializableProperties.length;o++){let r=re.serializableProperties[o];t[r]===void 0||t[r]===ja[r]||(r==="expires"||r==="creation"||r==="lastAccessed"?t[r]===null?a[r]=null:a[r]=t[r]=="Infinity"?"Infinity":new Date(t[r]):a[r]=t[r])}return a}n(fo,"fromJSON");function ar(e,t){C.validate(C.isObject(e),e),C.validate(C.isObject(t),t);let a=0,o=e.path?e.path.length:0;if(a=(t.path?t.path.length:0)-o,a!==0)return a;let i=e.creation?e.creation.getTime():Qn,s=t.creation?t.creation.getTime():Qn;return a=i-s,a!==0||(a=e.creationIndex-t.creationIndex),a}n(ar,"cookieCompare");function Eh(e){if(C.validate(C.isString(e)),e==="/")return["/"];let t=[e];for(;e.length>1;){let a=e.lastIndexOf("/");if(a===0)break;e=e.substr(0,a),t.push(e)}return t.push("/"),t}n(Eh,"permutePath");function Hc(e){if(e instanceof Object)return e;try{e=decodeURI(e)}catch{}return ch(e)}n(Hc,"getCookieContext");var ja={key:"",value:"",expires:"Infinity",maxAge:null,domain:null,path:null,secure:!1,httpOnly:!1,extensions:null,hostOnly:null,pathIsDefault:null,creation:null,lastAccessed:null,sameSite:void 0},re=class e{static{n(this,"Cookie")}constructor(t={}){let a=uh();a&&(this[a]=this.inspect),Object.assign(this,ja,t),this.creation=this.creation||new Date,Object.defineProperty(this,"creationIndex",{configurable:!1,enumerable:!1,writable:!0,value:++e.cookiesCreated})}inspect(){let t=Date.now(),a=this.hostOnly!=null?this.hostOnly:"?",o=this.creation?`${t-this.creation.getTime()}ms`:"?",r=this.lastAccessed?`${t-this.lastAccessed.getTime()}ms`:"?";return`Cookie="${this.toString()}; hostOnly=${a}; aAge=${r}; cAge=${o}"`}toJSON(){let t={};for(let a of e.serializableProperties)this[a]!==ja[a]&&(a==="expires"||a==="creation"||a==="lastAccessed"?this[a]===null?t[a]=null:t[a]=this[a]=="Infinity"?"Infinity":this[a].toISOString():a==="maxAge"?this[a]!==null&&(t[a]=this[a]==1/0||this[a]==-1/0?this[a].toString():this[a]):this[a]!==ja[a]&&(t[a]=this[a]));return t}clone(){return fo(this.toJSON())}validate(){if(!lh.test(this.value)||this.expires!=1/0&&!(this.expires instanceof Date)&&!wa(this.expires)||this.maxAge!=null&&this.maxAge<=0||this.path!=null&&!mh.test(this.path))return!1;let t=this.cdomain();return!(t&&(t.match(/\.$/)||or.getPublicSuffix(t)==null))}setExpires(t){t instanceof Date?this.expires=t:this.expires=wa(t)||"Infinity"}setMaxAge(t){t===1/0||t===-1/0?this.maxAge=t.toString():this.maxAge=t}cookieString(){let t=this.value;return t==null&&(t=""),this.key===""?t:`${this.key}=${t}`}toString(){let t=this.cookieString();if(this.expires!=1/0&&(this.expires instanceof Date?t+=`; Expires=${Gc(this.expires)}`:t+=`; Expires=${this.expires}`),this.maxAge!=null&&this.maxAge!=1/0&&(t+=`; Max-Age=${this.maxAge}`),this.domain&&!this.hostOnly&&(t+=`; Domain=${this.domain}`),this.path&&(t+=`; Path=${this.path}`),this.secure&&(t+="; Secure"),this.httpOnly&&(t+="; HttpOnly"),this.sameSite&&this.sameSite!=="none"){let a=e.sameSiteCanonical[this.sameSite.toLowerCase()];t+=`; SameSite=${a||this.sameSite}`}return this.extensions&&this.extensions.forEach(a=>{t+=`; ${a}`}),t}TTL(t){if(this.maxAge!=null)return this.maxAge<=0?0:this.maxAge*1e3;let a=this.expires;return a!=1/0?(a instanceof Date||(a=wa(a)||1/0),a==1/0?1/0:a.getTime()-(t||Date.now())):1/0}expiryTime(t){if(this.maxAge!=null){let a=t||this.creation||new Date,o=this.maxAge<=0?-1/0:this.maxAge*1e3;return a.getTime()+o}return this.expires==1/0?1/0:this.expires.getTime()}expiryDate(t){let a=this.expiryTime(t);return a==1/0?new Date(Qn):a==-1/0?new Date(hh):new Date(a)}isPersistent(){return this.maxAge!=null||this.expires!=1/0}canonicalizedDomain(){return this.domain==null?null:Ft(this.domain)}cdomain(){return this.canonicalizedDomain()}};re.cookiesCreated=0;re.parse=Xc;re.fromJSON=fo;re.serializableProperties=Object.keys(ja);re.sameSiteLevel={strict:3,lax:2,none:1};re.sameSiteCanonical={strict:"Strict",lax:"Lax"};function $c(e){if(e!=null){let t=e.toLowerCase();switch(t){case At.STRICT:case At.SILENT:case At.DISABLED:return t}}return At.SILENT}n($c,"getNormalizedPrefixSecurity");var We=class e{static{n(this,"CookieJar")}constructor(t,a={rejectPublicSuffixes:!0}){typeof a=="boolean"&&(a={rejectPublicSuffixes:a}),C.validate(C.isObject(a),a),this.rejectPublicSuffixes=a.rejectPublicSuffixes,this.enableLooseMode=!!a.looseMode,this.allowSpecialUseDomain=typeof a.allowSpecialUseDomain=="boolean"?a.allowSpecialUseDomain:!0,this.store=t||new Mc,this.prefixSecurity=$c(a.prefixSecurity),this._cloneSync=lt("clone"),this._importCookiesSync=lt("_importCookies"),this.getCookiesSync=lt("getCookies"),this.getCookieStringSync=lt("getCookieString"),this.getSetCookieStringsSync=lt("getSetCookieStrings"),this.removeAllCookiesSync=lt("removeAllCookies"),this.setCookieSync=lt("setCookie"),this.serializeSync=lt("serialize")}setCookie(t,a,o,r){C.validate(C.isUrlStringOrObject(a),r,o);let i;if(C.isFunction(a))return r=a,r(new Error("No URL was specified"));let s=Hc(a);if(C.isFunction(o)&&(r=o,o={}),C.validate(C.isFunction(r),r),!C.isNonEmptyString(t)&&!C.isObject(t)&&t instanceof String&&t.length==0)return r(null);let c=Ft(s.hostname),u=o.loose||this.enableLooseMode,p=null;if(o.sameSiteContext&&(p=Vc(o.sameSiteContext),!p))return r(new Error(Lc));if(typeof t=="string"||t instanceof String){if(t=re.parse(t,{loose:u}),!t)return i=new Error("Cookie failed to parse"),r(o.ignoreError?null:i)}else if(!(t instanceof re))return i=new Error("First argument to setCookie must be a Cookie object or string"),r(o.ignoreError?null:i);let m=o.now||new Date;if(this.rejectPublicSuffixes&&t.domain&&or.getPublicSuffix(t.cdomain(),{allowSpecialUseDomain:this.allowSpecialUseDomain,ignoreError:o.ignoreError})==null&&!Wc.test(t.domain))return i=new Error("Cookie has domain set to a public suffix"),r(o.ignoreError?null:i);if(t.domain){if(!tr(c,t.cdomain(),!1))return i=new Error(`Cookie not in this host's domain. Cookie:${t.cdomain()} Request:${c}`),r(o.ignoreError?null:i);t.hostOnly==null&&(t.hostOnly=!1)}else t.hostOnly=!0,t.domain=c;if((!t.path||t.path[0]!=="/")&&(t.path=Yc(s.pathname),t.pathIsDefault=!0),o.http===!1&&t.httpOnly)return i=new Error("Cookie is HttpOnly and this isn't an HTTP API"),r(o.ignoreError?null:i);if(t.sameSite!=="none"&&t.sameSite!==void 0&&p&&p==="none")return i=new Error("Cookie is SameSite but this is a cross-origin request"),r(o.ignoreError?null:i);let l=this.prefixSecurity===At.SILENT;if(!(this.prefixSecurity===At.DISABLED)){let d=!1,k;if(jh(t)?vh(t)||(d=!0,k="Cookie has __Host prefix but either Secure or HostOnly attribute is not set or Path is not '/'"):(d=!0,k="Cookie has __Secure prefix but Secure attribute is not set"),d)return r(o.ignoreError||l?null:new Error(k))}let g=this.store;g.updateCookie||(g.updateCookie=function(d,k,b){this.putCookie(k,b)});function f(d,k){if(d)return r(d);let b=n(function(v){if(v)return r(v);r(null,t)},"next");if(k){if(o.http===!1&&k.httpOnly)return d=new Error("old Cookie is HttpOnly and this isn't an HTTP API"),r(o.ignoreError?null:d);t.creation=k.creation,t.creationIndex=k.creationIndex,t.lastAccessed=m,g.updateCookie(k,t,b)}else t.creation=t.lastAccessed=m,g.putCookie(t,b)}n(f,"withCookie"),g.findCookie(t.domain,t.path,t.key,f)}getCookies(t,a,o){C.validate(C.isUrlStringOrObject(t),o,t);let r=Hc(t);C.isFunction(a)&&(o=a,a={}),C.validate(C.isObject(a),o,a),C.validate(C.isFunction(o),o);let i=Ft(r.hostname),s=r.pathname||"/",c=a.secure;c==null&&r.protocol&&(r.protocol=="https:"||r.protocol=="wss:")&&(c=!0);let u=0;if(a.sameSiteContext){let d=Vc(a.sameSiteContext);if(u=re.sameSiteLevel[d],!u)return o(new Error(Lc))}let p=a.http;p==null&&(p=!0);let m=a.now||Date.now(),l=a.expire!==!1,h=!!a.allPaths,g=this.store;function f(d){if(d.hostOnly){if(d.domain!=i)return!1}else if(!tr(i,d.domain,!1))return!1;return!h&&!Uc(s,d.path)||d.secure&&!c||d.httpOnly&&!p||u&&re.sameSiteLevel[d.sameSite||"none"]>u?!1:l&&d.expiryTime()<=m?(g.removeCookie(d.domain,d.path,d.key,()=>{}),!1):!0}n(f,"matchingCookie"),g.findCookies(i,h?null:s,this.allowSpecialUseDomain,(d,k)=>{if(d)return o(d);k=k.filter(f),a.sort!==!1&&(k=k.sort(ar));let b=new Date;for(let v of k)v.lastAccessed=b;o(null,k)})}getCookieString(...t){let a=t.pop();C.validate(C.isFunction(a),a);let o=n(function(r,i){r?a(r):a(null,i.sort(ar).map(s=>s.cookieString()).join("; "))},"next");t.push(o),this.getCookies.apply(this,t)}getSetCookieStrings(...t){let a=t.pop();C.validate(C.isFunction(a),a);let o=n(function(r,i){r?a(r):a(null,i.map(s=>s.toString()))},"next");t.push(o),this.getCookies.apply(this,t)}serialize(t){C.validate(C.isFunction(t),t);let a=this.store.constructor.name;C.isObject(a)&&(a=null);let o={version:`tough-cookie@${qc}`,storeType:a,rejectPublicSuffixes:!!this.rejectPublicSuffixes,enableLooseMode:!!this.enableLooseMode,allowSpecialUseDomain:!!this.allowSpecialUseDomain,prefixSecurity:$c(this.prefixSecurity),cookies:[]};if(!(this.store.getAllCookies&&typeof this.store.getAllCookies=="function"))return t(new Error("store does not support getAllCookies and cannot be serialized"));this.store.getAllCookies((r,i)=>r?t(r):(o.cookies=i.map(s=>(s=s instanceof re?s.toJSON():s,delete s.creationIndex,s)),t(null,o)))}toJSON(){return this.serializeSync()}_importCookies(t,a){let o=t.cookies;if(!o||!Array.isArray(o))return a(new Error("serialized jar has no cookies array"));o=o.slice();let r=n(i=>{if(i)return a(i);if(!o.length)return a(i,this);let s;try{s=fo(o.shift())}catch(c){return a(c)}if(s===null)return r(null);this.store.putCookie(s,r)},"putNext");r()}clone(t,a){arguments.length===1&&(a=t,t=null),this.serialize((o,r)=>{if(o)return a(o);e.deserialize(r,t,a)})}cloneSync(t){if(arguments.length===0)return this._cloneSync();if(!t.synchronous)throw new Error("CookieJar clone destination store is not synchronous; use async API instead.");return this._cloneSync(t)}removeAllCookies(t){C.validate(C.isFunction(t),t);let a=this.store;if(typeof a.removeAllCookies=="function"&&a.removeAllCookies!==Fc.prototype.removeAllCookies)return a.removeAllCookies(t);a.getAllCookies((o,r)=>{if(o)return t(o);if(r.length===0)return t(null);let i=0,s=[];function c(u){if(u&&s.push(u),i++,i===r.length)return t(s.length?s[0]:null)}n(c,"removeCookieCb"),r.forEach(u=>{a.removeCookie(u.domain,u.path,u.key,c)})})}static deserialize(t,a,o){arguments.length!==3&&(o=a,a=null),C.validate(C.isFunction(o),o);let r;if(typeof t=="string"){if(r=Zc(t),r instanceof Error)return o(r)}else r=t;let i=new e(a,{rejectPublicSuffixes:r.rejectPublicSuffixes,looseMode:r.enableLooseMode,allowSpecialUseDomain:r.allowSpecialUseDomain,prefixSecurity:r.prefixSecurity});i._importCookies(r,s=>{if(s)return o(s);o(null,i)})}static deserializeSync(t,a){let o=typeof t=="string"?JSON.parse(t):t,r=new e(a,{rejectPublicSuffixes:o.rejectPublicSuffixes,looseMode:o.enableLooseMode});if(!r.store.synchronous)throw new Error("CookieJar store is not synchronous; use async API instead.");return r._importCookiesSync(o),r}};We.fromJSON=We.deserializeSync;["_importCookies","clone","getCookies","getCookieString","getSetCookieStrings","removeAllCookies","serialize","setCookie"].forEach(e=>{We.prototype[e]=Kc(We.prototype[e])});We.deserialize=Kc(We.deserialize);function lt(e){return function(...t){if(!this.store.synchronous)throw new Error("CookieJar store is not synchronous; use async API instead.");let a,o;if(this[e](...t,(r,i)=>{a=r,o=i}),a)throw a;return o}}n(lt,"syncWrap");X.version=qc;X.CookieJar=We;X.Cookie=re;X.Store=Fc;X.MemoryCookieStore=Mc;X.parseDate=wa;X.formatDate=Gc;X.parse=Xc;X.fromJSON=fo;X.domainMatch=tr;X.defaultPath=Yc;X.pathMatch=Uc;X.getPublicSuffix=or.getPublicSuffix;X.cookieCompare=ar;X.permuteDomain=Wn().permuteDomain;X.permutePath=Eh;X.canonicalDomain=Ft;X.PrefixSecurityEnum=At;X.ParameterError=C.ParameterError});var eu=ae((yw,va)=>{"use strict";var Mt={decodeValues:!0,map:!1,silent:!1};function nr(e){return typeof e=="string"&&!!e.trim()}n(nr,"isNonEmptyString");function rr(e,t){var a=e.split(";").filter(nr),o=a.shift(),r=xh(o),i=r.name,s=r.value;t=t?Object.assign({},Mt,t):Mt;try{s=t.decodeValues?decodeURIComponent(s):s}catch(u){console.error("set-cookie-parser encountered an error while decoding a cookie with value '"+s+"'. Set options.decodeValues to false to disable this feature.",u)}var c={name:i,value:s};return a.forEach(function(u){var p=u.split("="),m=p.shift().trimLeft().toLowerCase(),l=p.join("=");m==="expires"?c.expires=new Date(l):m==="max-age"?c.maxAge=parseInt(l,10):m==="secure"?c.secure=!0:m==="httponly"?c.httpOnly=!0:m==="samesite"?c.sameSite=l:c[m]=l}),c}n(rr,"parseString");function xh(e){var t="",a="",o=e.split("=");return o.length>1?(t=o.shift(),a=o.join("=")):a=e,{name:t,value:a}}n(xh,"parseNameValuePair");function Qc(e,t){if(t=t?Object.assign({},Mt,t):Mt,!e)return t.map?{}:[];if(e.headers)if(typeof e.headers.getSetCookie=="function")e=e.headers.getSetCookie();else if(e.headers["set-cookie"])e=e.headers["set-cookie"];else{var a=e.headers[Object.keys(e.headers).find(function(r){return r.toLowerCase()==="set-cookie"})];!a&&e.headers.cookie&&!t.silent&&console.warn("Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."),e=a}if(Array.isArray(e)||(e=[e]),t=t?Object.assign({},Mt,t):Mt,t.map){var o={};return e.filter(nr).reduce(function(r,i){var s=rr(i,t);return r[s.name]=s,r},o)}else return e.filter(nr).map(function(r){return rr(r,t)})}n(Qc,"parse");function _h(e){if(Array.isArray(e))return e;if(typeof e!="string")return[];var t=[],a=0,o,r,i,s,c;function u(){for(;a<e.length&&/\s/.test(e.charAt(a));)a+=1;return a<e.length}n(u,"skipWhitespace");function p(){return r=e.charAt(a),r!=="="&&r!==";"&&r!==","}for(n(p,"notSpecialChar");a<e.length;){for(o=a,c=!1;u();)if(r=e.charAt(a),r===","){for(i=a,a+=1,u(),s=a;a<e.length&&p();)a+=1;a<e.length&&e.charAt(a)==="="?(c=!0,a=s,t.push(e.substring(o,i)),o=a):a=i+1}else a+=1;(!c||a>=e.length)&&t.push(e.substring(o,e.length))}return t}n(_h,"splitCookiesString");va.exports=Qc;va.exports.parse=Qc;va.exports.parseString=rr;va.exports.splitCookiesString=_h});var au=ae((vw,sr)=>{"use strict";var ko=(Tm(),pi(Sm));sr.exports=function(e,t){return/^\/\//.test(e)&&(e="https:"+e),ko.call(this,e,t)};global.fetch||(global.fetch=sr.exports,global.Response=ko.Response,global.Headers=ko.Headers,global.Request=ko.Request)});var du=ae((pu,bo)=>{"use strict";(function(e,t,a){typeof bo<"u"&&bo.exports?bo.exports=a():typeof define=="function"&&define.amd?define(a):t[e]=a()})("urljoin",pu,function(){function e(t){var a=[];if(t.length===0)return"";if(typeof t[0]!="string")throw new TypeError("Url must be a string. Received "+t[0]);if(t[0].match(/^[^/:]+:\/*$/)&&t.length>1){var o=t.shift();t[0]=o+t[0]}t[0].match(/^file:\/\/\//)?t[0]=t[0].replace(/^([^/:]+):\/*/,"$1:///"):t[0]=t[0].replace(/^([^/:]+):\/*/,"$1://");for(var r=0;r<t.length;r++){var i=t[r];if(typeof i!="string")throw new TypeError("Url must be a string. Received "+i);i!==""&&(r>0&&(i=i.replace(/^[\/]+/,"")),r<t.length-1?i=i.replace(/[\/]+$/,""):i=i.replace(/[\/]+$/,"/"),a.push(i))}var s=a.join("/");s=s.replace(/\/(\?|&|#[^!])/g,"$1");var c=s.split("?");return s=c.shift()+(c.length>0?"?":"")+c.join("&"),s}return n(e,"normalize"),function(){var t;return typeof arguments[0]=="object"?t=arguments[0]:t=[].slice.call(arguments),e(t)}})});import{errorString as kk,GLOBAL_CONFIG as yk,mergeProcessResults as bk,Plugin as wk,PluginManager as jk,USER_PROCESSOR as vk}from"@sentio/runtime";var kt=na(Im(),1);import{StarknetChainId as dk}from"@sentio/chain";var ra={};bt(ra,{API:()=>an,EBlockTag:()=>Vi,EDAMode:()=>$i,EDataAvailabilityMode:()=>Hi,ESimulationFlag:()=>Rt,ETransactionExecutionStatus:()=>Fa,ETransactionFinalityStatus:()=>Li,ETransactionStatus:()=>Lt,ETransactionType:()=>je,ETransactionVersion:()=>Ae,ETransactionVersion2:()=>Fi,ETransactionVersion3:()=>Mi,Errors:()=>en,Permission:()=>Ui,SPEC:()=>tn,TypedDataRevision:()=>L,WALLET_API:()=>on});var an={};bt(an,{EBlockTag:()=>Vi,EDAMode:()=>$i,EDataAvailabilityMode:()=>Hi,ESimulationFlag:()=>Rt,ETransactionExecutionStatus:()=>Fa,ETransactionFinalityStatus:()=>Li,ETransactionStatus:()=>Lt,ETransactionType:()=>je,ETransactionVersion:()=>Ae,ETransactionVersion2:()=>Fi,ETransactionVersion3:()=>Mi,Errors:()=>en,SPEC:()=>tn});var en={};var tn={};var je={DECLARE:"DECLARE",DEPLOY:"DEPLOY",DEPLOY_ACCOUNT:"DEPLOY_ACCOUNT",INVOKE:"INVOKE",L1_HANDLER:"L1_HANDLER"},Rt={SKIP_VALIDATE:"SKIP_VALIDATE",SKIP_FEE_CHARGE:"SKIP_FEE_CHARGE"},Lt={RECEIVED:"RECEIVED",REJECTED:"REJECTED",ACCEPTED_ON_L2:"ACCEPTED_ON_L2",ACCEPTED_ON_L1:"ACCEPTED_ON_L1"},Li={ACCEPTED_ON_L2:"ACCEPTED_ON_L2",ACCEPTED_ON_L1:"ACCEPTED_ON_L1"},Fa={SUCCEEDED:"SUCCEEDED",REVERTED:"REVERTED"},Vi={LATEST:"latest",PENDING:"pending"},Hi={L1:"L1",L2:"L2"},$i={L1:0,L2:1},Ae={V0:"0x0",V1:"0x1",V2:"0x2",V3:"0x3",F0:"0x100000000000000000000000000000000",F1:"0x100000000000000000000000000000001",F2:"0x100000000000000000000000000000002",F3:"0x100000000000000000000000000000003"},Fi={V0:"0x0",V1:"0x1",V2:"0x2",F0:"0x100000000000000000000000000000000",F1:"0x100000000000000000000000000000001",F2:"0x100000000000000000000000000000002"},Mi={V3:"0x3",F3:"0x100000000000000000000000000000003"};var on={};bt(on,{Permission:()=>Ui,TypedDataRevision:()=>L});var Ui={ACCOUNTS:"accounts"};var L={ACTIVE:"1",LEGACY:"0"};var Wi=[],Gi=[],Yi=[],zm=BigInt(0),ia=BigInt(1),Om=BigInt(2),Nm=BigInt(7),Dm=BigInt(256),Bm=BigInt(113);for(let e=0,t=ia,a=1,o=0;e<24;e++){[a,o]=[o,(2*a+3*o)%5],Wi.push(2*(5*o+a)),Gi.push((e+1)*(e+2)/2%64);let r=zm;for(let i=0;i<7;i++)t=(t<<ia^(t>>Nm)*Bm)%Dm,t&Om&&(r^=ia<<(ia<<BigInt(i))-ia);Yi.push(r)}var[Pm,Rm]=xi(Yi,!0),qi=n((e,t,a)=>a>32?Ai(e,t,a):_i(e,t,a),"rotlH"),Ki=n((e,t,a)=>a>32?Si(e,t,a):Ci(e,t,a),"rotlL");function Lm(e,t=24){let a=new Uint32Array(10);for(let o=24-t;o<24;o++){for(let s=0;s<10;s++)a[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){let c=(s+8)%10,u=(s+2)%10,p=a[u],m=a[u+1],l=qi(p,m,1)^a[c],h=Ki(p,m,1)^a[c+1];for(let g=0;g<50;g+=10)e[s+g]^=l,e[s+g+1]^=h}let r=e[2],i=e[3];for(let s=0;s<24;s++){let c=Gi[s],u=qi(r,i,c),p=Ki(r,i,c),m=Wi[s];r=e[m],i=e[m+1],e[m]=u,e[m+1]=p}for(let s=0;s<50;s+=10){for(let c=0;c<10;c++)a[c]=e[s+c];for(let c=0;c<10;c++)e[s+c]^=~a[(c+2)%10]&a[(c+4)%10]}e[0]^=Pm[o],e[1]^=Rm[o]}a.fill(0)}n(Lm,"keccakP");var Ma=class e extends ji{static{n(this,"Keccak")}constructor(t,a,o,r=!1,i=24){if(super(),this.blockLen=t,this.suffix=a,this.outputLen=o,this.enableXOF=r,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,Go(o),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=bi(this.state)}keccak(){Xo||Zo(this.state32),Lm(this.state32,this.rounds),Xo||Zo(this.state32),this.posOut=0,this.pos=0}update(t){Yo(this);let{blockLen:a,state:o}=this;t=wi(t);let r=t.length;for(let i=0;i<r;){let s=Math.min(a-this.pos,r-i);for(let c=0;c<s;c++)o[this.pos++]^=t[i++];this.pos===a&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:t,suffix:a,pos:o,blockLen:r}=this;t[o]^=a,a&128&&o===r-1&&this.keccak(),t[r-1]^=128,this.keccak()}writeInto(t){Yo(this,!1),ki(t),this.finish();let a=this.state,{blockLen:o}=this;for(let r=0,i=t.length;r<i;){this.posOut>=o&&this.keccak();let s=Math.min(o-this.posOut,i-r);t.set(a.subarray(this.posOut,this.posOut+s),r),this.posOut+=s,r+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return Go(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(yi(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){let{blockLen:a,suffix:o,outputLen:r,rounds:i,enableXOF:s}=this;return t||(t=new e(a,o,r,s,i)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=i,t.suffix=o,t.outputLen=r,t.enableXOF=s,t.destroyed=this.destroyed,t}},Je=n((e,t,a)=>vi(()=>new Ma(t,e,a)),"gen"),Hk=Je(6,144,224/8),$k=Je(6,136,256/8),Fk=Je(6,104,384/8),Mk=Je(6,72,512/8),Uk=Je(1,144,224/8),Xi=Je(1,136,256/8),qk=Je(1,104,384/8),Kk=Je(1,72,512/8),Zi=n((e,t,a)=>Ei((o={})=>new Ma(t,e,o.dkLen===void 0?a:o.dkLen,!0)),"genShake"),Wk=Zi(31,168,128/8),Gk=Zi(31,136,256/8);var vn={};bt(vn,{CURVE:()=>Ap,Fp251:()=>$s,MAX_VALUE:()=>Et,ProjectivePoint:()=>Ht,Signature:()=>ro,_poseidonMDS:()=>Fs,_starkCurve:()=>xp,computeHashOnElements:()=>Dp,ethSigToPrivate:()=>Sp,getAccountPath:()=>Ip,getPublicKey:()=>Ds,getSharedSecret:()=>_p,getStarkKey:()=>so,grindKey:()=>Vs,keccak:()=>Te,pedersen:()=>_t,poseidonBasic:()=>jn,poseidonCreate:()=>Rp,poseidonHash:()=>co,poseidonHashFunc:()=>Lp,poseidonHashMany:()=>Y,poseidonHashSingle:()=>Vp,poseidonSmall:()=>ha,sign:()=>Rs,utils:()=>io,verify:()=>Cp});function sa(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}n(sa,"number");function Vm(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}n(Vm,"isBytes");function ca(e,...t){if(!Vm(e))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}n(ca,"bytes");function Ji(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");sa(e.outputLen),sa(e.blockLen)}n(Ji,"hash");function $e(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}n($e,"exists");function Ua(e,t){ca(e);let a=t.outputLen;if(e.length<a)throw new Error(`digestInto() expects output buffer of length at least ${a}`)}n(Ua,"output");var qa=BigInt(4294967295),Qi=BigInt(32);function Hm(e,t=!1){return t?{h:Number(e&qa),l:Number(e>>Qi&qa)}:{h:Number(e>>Qi&qa)|0,l:Number(e&qa)|0}}n(Hm,"fromBig");function es(e,t=!1){let a=new Uint32Array(e.length),o=new Uint32Array(e.length);for(let r=0;r<e.length;r++){let{h:i,l:s}=Hm(e[r],t);[a[r],o[r]]=[i,s]}return[a,o]}n(es,"split");var ts=n((e,t,a)=>e<<a|t>>>32-a,"rotlSH"),as=n((e,t,a)=>t<<a|e>>>32-a,"rotlSL"),os=n((e,t,a)=>t<<a-32|e>>>64-a,"rotlBH"),ns=n((e,t,a)=>e<<a-32|t>>>64-a,"rotlBL");import*as ua from"node:crypto";var Ka=ua&&typeof ua=="object"&&"webcrypto"in ua?ua.webcrypto:void 0;var rs=n(e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),"u32");function is(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}n(is,"isBytes");var Wa=n(e=>new DataView(e.buffer,e.byteOffset,e.byteLength),"createView"),ve=n((e,t)=>e<<32-t|e>>>t,"rotr"),$m=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!$m)throw new Error("Non little-endian hardware is not supported");function nn(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}n(nn,"utf8ToBytes");function et(e){if(typeof e=="string"&&(e=nn(e)),!is(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}n(et,"toBytes");function ss(...e){let t=0;for(let o=0;o<e.length;o++){let r=e[o];if(!is(r))throw new Error("Uint8Array expected");t+=r.length}let a=new Uint8Array(t);for(let o=0,r=0;o<e.length;o++){let i=e[o];a.set(i,r),r+=i.length}return a}n(ss,"concatBytes");var Qe=class{static{n(this,"Hash")}clone(){return this._cloneInto()}},oy={}.toString;function Ga(e){let t=n(o=>e().update(et(o)).digest(),"hashC"),a=e();return t.outputLen=a.outputLen,t.blockLen=a.blockLen,t.create=()=>e(),t}n(Ga,"wrapConstructor");function cs(e){let t=n((o,r)=>e(r).update(et(o)).digest(),"hashC"),a=e({});return t.outputLen=a.outputLen,t.blockLen=a.blockLen,t.create=o=>e(o),t}n(cs,"wrapXOFConstructorWithOpts");function us(e=32){if(Ka&&typeof Ka.getRandomValues=="function")return Ka.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}n(us,"randomBytes");var[ps,ds,hs]=[[],[],[]],Fm=BigInt(0),la=BigInt(1),Mm=BigInt(2),Um=BigInt(7),qm=BigInt(256),Km=BigInt(113);for(let e=0,t=la,a=1,o=0;e<24;e++){[a,o]=[o,(2*a+3*o)%5],ps.push(2*(5*o+a)),ds.push((e+1)*(e+2)/2%64);let r=Fm;for(let i=0;i<7;i++)t=(t<<la^(t>>Um)*Km)%qm,t&Mm&&(r^=la<<(la<<BigInt(i))-la);hs.push(r)}var[Wm,Gm]=es(hs,!0),ls=n((e,t,a)=>a>32?os(e,t,a):ts(e,t,a),"rotlH"),ms=n((e,t,a)=>a>32?ns(e,t,a):as(e,t,a),"rotlL");function Ym(e,t=24){let a=new Uint32Array(10);for(let o=24-t;o<24;o++){for(let s=0;s<10;s++)a[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){let c=(s+8)%10,u=(s+2)%10,p=a[u],m=a[u+1],l=ls(p,m,1)^a[c],h=ms(p,m,1)^a[c+1];for(let g=0;g<50;g+=10)e[s+g]^=l,e[s+g+1]^=h}let r=e[2],i=e[3];for(let s=0;s<24;s++){let c=ds[s],u=ls(r,i,c),p=ms(r,i,c),m=ps[s];r=e[m],i=e[m+1],e[m]=u,e[m+1]=p}for(let s=0;s<50;s+=10){for(let c=0;c<10;c++)a[c]=e[s+c];for(let c=0;c<10;c++)e[s+c]^=~a[(c+2)%10]&a[(c+4)%10]}e[0]^=Wm[o],e[1]^=Gm[o]}a.fill(0)}n(Ym,"keccakP");var Ya=class e extends Qe{static{n(this,"Keccak")}constructor(t,a,o,r=!1,i=24){if(super(),this.blockLen=t,this.suffix=a,this.outputLen=o,this.enableXOF=r,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,sa(o),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=rs(this.state)}keccak(){Ym(this.state32,this.rounds),this.posOut=0,this.pos=0}update(t){$e(this);let{blockLen:a,state:o}=this;t=et(t);let r=t.length;for(let i=0;i<r;){let s=Math.min(a-this.pos,r-i);for(let c=0;c<s;c++)o[this.pos++]^=t[i++];this.pos===a&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:t,suffix:a,pos:o,blockLen:r}=this;t[o]^=a,a&128&&o===r-1&&this.keccak(),t[r-1]^=128,this.keccak()}writeInto(t){$e(this,!1),ca(t),this.finish();let a=this.state,{blockLen:o}=this;for(let r=0,i=t.length;r<i;){this.posOut>=o&&this.keccak();let s=Math.min(o-this.posOut,i-r);t.set(a.subarray(this.posOut,this.posOut+s),r),this.posOut+=s,r+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return sa(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(Ua(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){let{blockLen:a,suffix:o,outputLen:r,rounds:i,enableXOF:s}=this;return t||(t=new e(a,o,r,s,i)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=i,t.suffix=o,t.outputLen=r,t.enableXOF=s,t.destroyed=this.destroyed,t}},tt=n((e,t,a)=>Ga(()=>new Ya(t,e,a)),"gen"),uy=tt(6,144,224/8),ly=tt(6,136,256/8),my=tt(6,104,384/8),py=tt(6,72,512/8),dy=tt(1,144,224/8),fs=tt(1,136,256/8),hy=tt(1,104,384/8),fy=tt(1,72,512/8),gs=n((e,t,a)=>cs((o={})=>new Ya(t,e,o.dkLen===void 0?a:o.dkLen,!0)),"genShake"),gy=gs(31,168,128/8),ky=gs(31,136,256/8);function Xm(e,t,a,o){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,a,o);let r=BigInt(32),i=BigInt(4294967295),s=Number(a>>r&i),c=Number(a&i),u=o?4:0,p=o?0:4;e.setUint32(t+u,s,o),e.setUint32(t+p,c,o)}n(Xm,"setBigUint64");var Xa=class extends Qe{static{n(this,"SHA2")}constructor(t,a,o,r){super(),this.blockLen=t,this.outputLen=a,this.padOffset=o,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=Wa(this.buffer)}update(t){$e(this);let{view:a,buffer:o,blockLen:r}=this;t=et(t);let i=t.length;for(let s=0;s<i;){let c=Math.min(r-this.pos,i-s);if(c===r){let u=Wa(t);for(;r<=i-s;s+=r)this.process(u,s);continue}o.set(t.subarray(s,s+c),this.pos),this.pos+=c,s+=c,this.pos===r&&(this.process(a,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){$e(this),Ua(t,this),this.finished=!0;let{buffer:a,view:o,blockLen:r,isLE:i}=this,{pos:s}=this;a[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>r-s&&(this.process(o,0),s=0);for(let l=s;l<r;l++)a[l]=0;Xm(o,r-8,BigInt(this.length*8),i),this.process(o,0);let c=Wa(t),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let p=u/4,m=this.get();if(p>m.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<p;l++)c.setUint32(4*l,m[l],i)}digest(){let{buffer:t,outputLen:a}=this;this.digestInto(t);let o=t.slice(0,a);return this.destroy(),o}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:a,buffer:o,length:r,finished:i,destroyed:s,pos:c}=this;return t.length=r,t.pos=c,t.finished=i,t.destroyed=s,r%a&&t.buffer.set(o),t}};var Zm=n((e,t,a)=>e&t^~e&a,"Chi"),Jm=n((e,t,a)=>e&t^e&a^t&a,"Maj"),Qm=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),at=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),ot=new Uint32Array(64),rn=class extends Xa{static{n(this,"SHA256")}constructor(){super(64,32,8,!1),this.A=at[0]|0,this.B=at[1]|0,this.C=at[2]|0,this.D=at[3]|0,this.E=at[4]|0,this.F=at[5]|0,this.G=at[6]|0,this.H=at[7]|0}get(){let{A:t,B:a,C:o,D:r,E:i,F:s,G:c,H:u}=this;return[t,a,o,r,i,s,c,u]}set(t,a,o,r,i,s,c,u){this.A=t|0,this.B=a|0,this.C=o|0,this.D=r|0,this.E=i|0,this.F=s|0,this.G=c|0,this.H=u|0}process(t,a){for(let l=0;l<16;l++,a+=4)ot[l]=t.getUint32(a,!1);for(let l=16;l<64;l++){let h=ot[l-15],g=ot[l-2],f=ve(h,7)^ve(h,18)^h>>>3,d=ve(g,17)^ve(g,19)^g>>>10;ot[l]=d+ot[l-7]+f+ot[l-16]|0}let{A:o,B:r,C:i,D:s,E:c,F:u,G:p,H:m}=this;for(let l=0;l<64;l++){let h=ve(c,6)^ve(c,11)^ve(c,25),g=m+h+Zm(c,u,p)+Qm[l]+ot[l]|0,d=(ve(o,2)^ve(o,13)^ve(o,22))+Jm(o,r,i)|0;m=p,p=u,u=c,c=s+g|0,s=i,i=r,r=o,o=g+d|0}o=o+this.A|0,r=r+this.B|0,i=i+this.C|0,s=s+this.D|0,c=c+this.E|0,u=u+this.F|0,p=p+this.G|0,m=m+this.H|0,this.set(o,r,i,s,c,u,p,m)}roundClean(){ot.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Za=Ga(()=>new rn);var ao={};bt(ao,{bitGet:()=>rp,bitLen:()=>np,bitMask:()=>wt,bitSet:()=>ip,bytesToHex:()=>Se,bytesToNumberBE:()=>oe,bytesToNumberLE:()=>Qa,concatBytes:()=>rt,createHmacDrbg:()=>cn,ensureBytes:()=>me,equalBytes:()=>ap,hexToBytes:()=>Me,hexToNumber:()=>ma,isBytes:()=>Ee,numberToBytesBE:()=>nt,numberToBytesLE:()=>eo,numberToHexUnpadded:()=>ws,numberToVarBytesBE:()=>to,utf8ToBytes:()=>op,validateObject:()=>it});var bs=BigInt(0),Ja=BigInt(1),ep=BigInt(2);function Ee(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}n(Ee,"isBytes");var tp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Se(e){if(!Ee(e))throw new Error("Uint8Array expected");let t="";for(let a=0;a<e.length;a++)t+=tp[e[a]];return t}n(Se,"bytesToHex");function ws(e){let t=e.toString(16);return t.length&1?`0${t}`:t}n(ws,"numberToHexUnpadded");function ma(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}n(ma,"hexToNumber");var Fe={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function ks(e){if(e>=Fe._0&&e<=Fe._9)return e-Fe._0;if(e>=Fe._A&&e<=Fe._F)return e-(Fe._A-10);if(e>=Fe._a&&e<=Fe._f)return e-(Fe._a-10)}n(ks,"asciiToBase16");function Me(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length,a=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let o=new Uint8Array(a);for(let r=0,i=0;r<a;r++,i+=2){let s=ks(e.charCodeAt(i)),c=ks(e.charCodeAt(i+1));if(s===void 0||c===void 0){let u=e[i]+e[i+1];throw new Error('hex string expected, got non-hex character "'+u+'" at index '+i)}o[r]=s*16+c}return o}n(Me,"hexToBytes");function oe(e){return ma(Se(e))}n(oe,"bytesToNumberBE");function Qa(e){if(!Ee(e))throw new Error("Uint8Array expected");return ma(Se(Uint8Array.from(e).reverse()))}n(Qa,"bytesToNumberLE");function nt(e,t){return Me(e.toString(16).padStart(t*2,"0"))}n(nt,"numberToBytesBE");function eo(e,t){return nt(e,t).reverse()}n(eo,"numberToBytesLE");function to(e){return Me(ws(e))}n(to,"numberToVarBytesBE");function me(e,t,a){let o;if(typeof t=="string")try{o=Me(t)}catch(i){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${i}`)}else if(Ee(t))o=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let r=o.length;if(typeof a=="number"&&r!==a)throw new Error(`${e} expected ${a} bytes, got ${r}`);return o}n(me,"ensureBytes");function rt(...e){let t=0;for(let r=0;r<e.length;r++){let i=e[r];if(!Ee(i))throw new Error("Uint8Array expected");t+=i.length}let a=new Uint8Array(t),o=0;for(let r=0;r<e.length;r++){let i=e[r];a.set(i,o),o+=i.length}return a}n(rt,"concatBytes");function ap(e,t){if(e.length!==t.length)return!1;let a=0;for(let o=0;o<e.length;o++)a|=e[o]^t[o];return a===0}n(ap,"equalBytes");function op(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}n(op,"utf8ToBytes");function np(e){let t;for(t=0;e>bs;e>>=Ja,t+=1);return t}n(np,"bitLen");function rp(e,t){return e>>BigInt(t)&Ja}n(rp,"bitGet");var ip=n((e,t,a)=>e|(a?Ja:bs)<<BigInt(t),"bitSet"),wt=n(e=>(ep<<BigInt(e-1))-Ja,"bitMask"),sn=n(e=>new Uint8Array(e),"u8n"),ys=n(e=>Uint8Array.from(e),"u8fr");function cn(e,t,a){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof a!="function")throw new Error("hmacFn must be a function");let o=sn(e),r=sn(e),i=0,s=n(()=>{o.fill(1),r.fill(0),i=0},"reset"),c=n((...l)=>a(r,o,...l),"h"),u=n((l=sn())=>{r=c(ys([0]),l),o=c(),l.length!==0&&(r=c(ys([1]),l),o=c())},"reseed"),p=n(()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<t;){o=c();let g=o.slice();h.push(g),l+=o.length}return rt(...h)},"gen");return n((l,h)=>{s(),u(l);let g;for(;!(g=h(p()));)u();return s(),g},"genUntil")}n(cn,"createHmacDrbg");var sp={bigint:n(e=>typeof e=="bigint","bigint"),function:n(e=>typeof e=="function","function"),boolean:n(e=>typeof e=="boolean","boolean"),string:n(e=>typeof e=="string","string"),stringOrUint8Array:n(e=>typeof e=="string"||Ee(e),"stringOrUint8Array"),isSafeInteger:n(e=>Number.isSafeInteger(e),"isSafeInteger"),array:n(e=>Array.isArray(e),"array"),field:n((e,t)=>t.Fp.isValid(e),"field"),hash:n(e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen),"hash")};function it(e,t,a={}){let o=n((r,i,s)=>{let c=sp[i];if(typeof c!="function")throw new Error(`Invalid validator "${i}", expected function`);let u=e[r];if(!(s&&u===void 0)&&!c(u,e))throw new Error(`Invalid param ${String(r)}=${u} (${typeof u}), expected ${i}`)},"checkField");for(let[r,i]of Object.entries(t))o(r,i,!1);for(let[r,i]of Object.entries(a))o(r,i,!0);return e}n(it,"validateObject");var ne=BigInt(0),G=BigInt(1),jt=BigInt(2),cp=BigInt(3),un=BigInt(4),js=BigInt(5),vs=BigInt(8),up=BigInt(9),lp=BigInt(16);function ce(e,t){let a=e%t;return a>=ne?a:t+a}n(ce,"mod");function mp(e,t,a){if(a<=ne||t<ne)throw new Error("Expected power/modulo > 0");if(a===G)return ne;let o=G;for(;t>ne;)t&G&&(o=o*e%a),e=e*e%a,t>>=G;return o}n(mp,"pow");function Vt(e,t){if(e===ne||t<=ne)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let a=ce(e,t),o=t,r=ne,i=G,s=G,c=ne;for(;a!==ne;){let p=o/a,m=o%a,l=r-s*p,h=i-c*p;o=a,a=m,r=s,i=c,s=l,c=h}if(o!==G)throw new Error("invert: does not exist");return ce(r,t)}n(Vt,"invert");function pp(e){let t=(e-G)/jt,a,o,r;for(a=e-G,o=0;a%jt===ne;a/=jt,o++);for(r=jt;r<e&&mp(r,t,e)!==e-G;r++);if(o===1){let s=(e+G)/un;return n(function(u,p){let m=u.pow(p,s);if(!u.eql(u.sqr(m),p))throw new Error("Cannot find square root");return m},"tonelliFast")}let i=(a+G)/jt;return n(function(c,u){if(c.pow(u,t)===c.neg(c.ONE))throw new Error("Cannot find square root");let p=o,m=c.pow(c.mul(c.ONE,r),a),l=c.pow(u,i),h=c.pow(u,a);for(;!c.eql(h,c.ONE);){if(c.eql(h,c.ZERO))return c.ZERO;let g=1;for(let d=c.sqr(h);g<p&&!c.eql(d,c.ONE);g++)d=c.sqr(d);let f=c.pow(m,G<<BigInt(p-g-1));m=c.sqr(f),l=c.mul(l,f),h=c.mul(h,m),p=g}return l},"tonelliSlow")}n(pp,"tonelliShanks");function dp(e){if(e%un===cp){let t=(e+G)/un;return n(function(o,r){let i=o.pow(r,t);if(!o.eql(o.sqr(i),r))throw new Error("Cannot find square root");return i},"sqrt3mod4")}if(e%vs===js){let t=(e-js)/vs;return n(function(o,r){let i=o.mul(r,jt),s=o.pow(i,t),c=o.mul(r,s),u=o.mul(o.mul(c,jt),s),p=o.mul(c,o.sub(u,o.ONE));if(!o.eql(o.sqr(p),r))throw new Error("Cannot find square root");return p},"sqrt5mod8")}return e%lp,pp(e)}n(dp,"FpSqrt");var hp=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function vt(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},a=hp.reduce((o,r)=>(o[r]="function",o),t);return it(e,a)}n(vt,"validateField");function ln(e,t,a){if(a<ne)throw new Error("Expected power > 0");if(a===ne)return e.ONE;if(a===G)return t;let o=e.ONE,r=t;for(;a>ne;)a&G&&(o=e.mul(o,r)),r=e.sqr(r),a>>=G;return o}n(ln,"FpPow");function fp(e,t){let a=new Array(t.length),o=t.reduce((i,s,c)=>e.is0(s)?i:(a[c]=i,e.mul(i,s)),e.ONE),r=e.inv(o);return t.reduceRight((i,s,c)=>e.is0(s)?i:(a[c]=e.mul(i,a[c]),e.mul(i,s)),r),a}n(fp,"FpInvertBatch");function mn(e,t){let a=t!==void 0?t:e.toString(2).length,o=Math.ceil(a/8);return{nBitLength:a,nByteLength:o}}n(mn,"nLength");function pn(e,t,a=!1,o={}){if(e<=ne)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:r,nByteLength:i}=mn(e,t);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=dp(e),c=Object.freeze({ORDER:e,BITS:r,BYTES:i,MASK:wt(r),ZERO:ne,ONE:G,create:n(u=>ce(u,e),"create"),isValid:n(u=>{if(typeof u!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof u}`);return ne<=u&&u<e},"isValid"),is0:n(u=>u===ne,"is0"),isOdd:n(u=>(u&G)===G,"isOdd"),neg:n(u=>ce(-u,e),"neg"),eql:n((u,p)=>u===p,"eql"),sqr:n(u=>ce(u*u,e),"sqr"),add:n((u,p)=>ce(u+p,e),"add"),sub:n((u,p)=>ce(u-p,e),"sub"),mul:n((u,p)=>ce(u*p,e),"mul"),pow:n((u,p)=>ln(c,u,p),"pow"),div:n((u,p)=>ce(u*Vt(p,e),e),"div"),sqrN:n(u=>u*u,"sqrN"),addN:n((u,p)=>u+p,"addN"),subN:n((u,p)=>u-p,"subN"),mulN:n((u,p)=>u*p,"mulN"),inv:n(u=>Vt(u,e),"inv"),sqrt:o.sqrt||(u=>s(c,u)),invertBatch:n(u=>fp(c,u),"invertBatch"),cmov:n((u,p,m)=>m?p:u,"cmov"),toBytes:n(u=>a?eo(u,i):nt(u,i),"toBytes"),fromBytes:n(u=>{if(u.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${u.length}`);return a?Qa(u):oe(u)},"fromBytes")});return Object.freeze(c)}n(pn,"Field");function Es(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}n(Es,"getFieldBytesLength");function dn(e){let t=Es(e);return t+Math.ceil(t/2)}n(dn,"getMinHashLength");function xs(e,t,a=!1){let o=e.length,r=Es(t),i=dn(t);if(o<16||o<i||o>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${o}`);let s=a?oe(e):Qa(e),c=ce(s,t-G)+G;return a?eo(c,r):nt(c,r)}n(xs,"mapHashToField");function kp(e){let{Fp:t,mds:a,reversePartialPowIdx:o,roundConstants:r}=e,{roundsFull:i,roundsPartial:s,sboxPower:c,t:u}=e;vt(t);for(let f of["t","roundsFull","roundsPartial"])if(typeof e[f]!="number"||!Number.isSafeInteger(e[f]))throw new Error(`Poseidon: invalid param ${f}=${e[f]} (${typeof e[f]})`);if(!Array.isArray(a)||a.length!==u)throw new Error("Poseidon: wrong MDS matrix");let p=a.map(f=>{if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon MDS matrix row: ${f}`);return f.map(d=>{if(typeof d!="bigint")throw new Error(`Poseidon MDS matrix value=${d}`);return t.create(d)})});if(o!==void 0&&typeof o!="boolean")throw new Error(`Poseidon: invalid param reversePartialPowIdx=${o}`);if(i%2!==0)throw new Error(`Poseidon roundsFull is not even: ${i}`);let m=i+s;if(!Array.isArray(r)||r.length!==m)throw new Error("Poseidon: wrong round constants");let l=r.map(f=>{if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon wrong round constants: ${f}`);return f.map(d=>{if(typeof d!="bigint"||!t.isValid(d))throw new Error(`Poseidon wrong round constant=${d}`);return t.create(d)})});if(!c||![3,5,7].includes(c))throw new Error(`Poseidon wrong sboxPower=${c}`);let h=BigInt(c),g=n(f=>ln(t,f,h),"sboxFn");return c===3?g=n(f=>t.mul(t.sqrN(f),f),"sboxFn"):c===5&&(g=n(f=>t.mul(t.sqrN(t.sqrN(f)),f),"sboxFn")),Object.freeze({...e,rounds:m,sboxFn:g,roundConstants:l,mds:p})}n(kp,"validateOpts");function _s(e){let t=kp(e),{Fp:a,mds:o,roundConstants:r,rounds:i,roundsPartial:s,sboxFn:c,t:u}=t,p=t.roundsFull/2,m=t.reversePartialPowIdx?u-1:0,l=n((g,f,d)=>(g=g.map((k,b)=>a.add(k,r[d][b])),f?g=g.map(k=>c(k)):g[m]=c(g[m]),g=o.map(k=>k.reduce((b,v,E)=>a.add(b,a.mulN(v,g[E])),a.ZERO)),g),"poseidonRound"),h=n(function(f){if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon: wrong values (expected array of bigints with length ${u})`);f=f.map(k=>{if(typeof k!="bigint")throw new Error(`Poseidon: wrong value=${k} (${typeof k})`);return a.create(k)});let d=0;for(let k=0;k<p;k++)f=l(f,!0,d++);for(let k=0;k<s;k++)f=l(f,!1,d++);for(let k=0;k<p;k++)f=l(f,!0,d++);if(d!==i)throw new Error(`Poseidon: wrong number of rounds: last round=${d}, total=${i}`);return f},"poseidonHash");return h.roundConstants=r,h}n(_s,"poseidon");var yp=BigInt(0),hn=BigInt(1);function Cs(e,t){let a=n((r,i)=>{let s=i.negate();return r?s:i},"constTimeNegate"),o=n(r=>{let i=Math.ceil(t/r)+1,s=2**(r-1);return{windows:i,windowSize:s}},"opts");return{constTimeNegate:a,unsafeLadder(r,i){let s=e.ZERO,c=r;for(;i>yp;)i&hn&&(s=s.add(c)),c=c.double(),i>>=hn;return s},precomputeWindow(r,i){let{windows:s,windowSize:c}=o(i),u=[],p=r,m=p;for(let l=0;l<s;l++){m=p,u.push(m);for(let h=1;h<c;h++)m=m.add(p),u.push(m);p=m.double()}return u},wNAF(r,i,s){let{windows:c,windowSize:u}=o(r),p=e.ZERO,m=e.BASE,l=BigInt(2**r-1),h=2**r,g=BigInt(r);for(let f=0;f<c;f++){let d=f*u,k=Number(s&l);s>>=g,k>u&&(k-=h,s+=hn);let b=d,v=d+Math.abs(k)-1,E=f%2!==0,T=k<0;k===0?m=m.add(a(E,i[b])):p=p.add(a(T,i[v]))}return{p,f:m}},wNAFCached(r,i,s,c){let u=r._WINDOW_SIZE||1,p=i.get(r);return p||(p=this.precomputeWindow(r,u),u!==1&&i.set(r,c(p))),this.wNAF(u,p,s)}}}n(Cs,"wNAF");function fn(e){return vt(e.Fp),it(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...mn(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}n(fn,"validateBasic");function bp(e){let t=fn(e);it(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:a,Fp:o,a:r}=t;if(a){if(!o.eql(r,o.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof a!="object"||typeof a.beta!="bigint"||typeof a.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}n(bp,"validatePointOpts");var{bytesToNumberBE:wp,hexToBytes:jp}=ao,qe={Err:class extends Error{static{n(this,"DERErr")}constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=qe;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let a=e[1],o=e.subarray(2,a+2);if(!a||o.length!==a)throw new t("Invalid signature integer: wrong length");if(o[0]&128)throw new t("Invalid signature integer: negative");if(o[0]===0&&!(o[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:wp(o),l:e.subarray(a+2)}},toSig(e){let{Err:t}=qe,a=typeof e=="string"?jp(e):e;if(!Ee(a))throw new Error("ui8a expected");let o=a.length;if(o<2||a[0]!=48)throw new t("Invalid signature tag");if(a[1]!==o-2)throw new t("Invalid signature: incorrect length");let{d:r,l:i}=qe._parseInt(a.subarray(2)),{d:s,l:c}=qe._parseInt(i);if(c.length)throw new t("Invalid signature: left bytes after parsing");return{r,s}},hexFromSig(e){let t=n(p=>Number.parseInt(p[0],16)&8?"00"+p:p,"slice"),a=n(p=>{let m=p.toString(16);return m.length&1?`0${m}`:m},"h"),o=t(a(e.s)),r=t(a(e.r)),i=o.length/2,s=r.length/2,c=a(i),u=a(s);return`30${a(s+i+4)}02${u}${r}02${c}${o}`}},Ue=BigInt(0),be=BigInt(1),$y=BigInt(2),As=BigInt(3),Fy=BigInt(4);function vp(e){let t=bp(e),{Fp:a}=t,o=t.toBytes||((f,d,k)=>{let b=d.toAffine();return rt(Uint8Array.from([4]),a.toBytes(b.x),a.toBytes(b.y))}),r=t.fromBytes||(f=>{let d=f.subarray(1),k=a.fromBytes(d.subarray(0,a.BYTES)),b=a.fromBytes(d.subarray(a.BYTES,2*a.BYTES));return{x:k,y:b}});function i(f){let{a:d,b:k}=t,b=a.sqr(f),v=a.mul(b,f);return a.add(a.add(v,a.mul(f,d)),k)}if(n(i,"weierstrassEquation"),!a.eql(a.sqr(t.Gy),i(t.Gx)))throw new Error("bad generator point: equation left != right");function s(f){return typeof f=="bigint"&&Ue<f&&f<t.n}n(s,"isWithinCurveOrder");function c(f){if(!s(f))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}n(c,"assertGE");function u(f){let{allowedPrivateKeyLengths:d,nByteLength:k,wrapPrivateKey:b,n:v}=t;if(d&&typeof f!="bigint"){if(Ee(f)&&(f=Se(f)),typeof f!="string"||!d.includes(f.length))throw new Error("Invalid key");f=f.padStart(k*2,"0")}let E;try{E=typeof f=="bigint"?f:oe(me("private key",f,k))}catch{throw new Error(`private key must be ${k} bytes, hex or bigint, not ${typeof f}`)}return b&&(E=ce(E,v)),c(E),E}n(u,"normPrivateKeyToScalar");let p=new Map;function m(f){if(!(f instanceof l))throw new Error("ProjectivePoint expected")}n(m,"assertPrjPoint");class l{static{n(this,"Point")}constructor(d,k,b){if(this.px=d,this.py=k,this.pz=b,d==null||!a.isValid(d))throw new Error("x required");if(k==null||!a.isValid(k))throw new Error("y required");if(b==null||!a.isValid(b))throw new Error("z required")}static fromAffine(d){let{x:k,y:b}=d||{};if(!d||!a.isValid(k)||!a.isValid(b))throw new Error("invalid affine point");if(d instanceof l)throw new Error("projective point not allowed");let v=n(E=>a.eql(E,a.ZERO),"is0");return v(k)&&v(b)?l.ZERO:new l(k,b,a.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let k=a.invertBatch(d.map(b=>b.pz));return d.map((b,v)=>b.toAffine(k[v])).map(l.fromAffine)}static fromHex(d){let k=l.fromAffine(r(me("pointHex",d)));return k.assertValidity(),k}static fromPrivateKey(d){return l.BASE.multiply(u(d))}_setWindowSize(d){this._WINDOW_SIZE=d,p.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!a.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:d,y:k}=this.toAffine();if(!a.isValid(d)||!a.isValid(k))throw new Error("bad point: x or y not FE");let b=a.sqr(k),v=i(d);if(!a.eql(b,v))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:d}=this.toAffine();if(a.isOdd)return!a.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){m(d);let{px:k,py:b,pz:v}=this,{px:E,py:T,pz:D}=d,_=a.eql(a.mul(k,D),a.mul(E,v)),A=a.eql(a.mul(b,D),a.mul(T,v));return _&&A}negate(){return new l(this.px,a.neg(this.py),this.pz)}double(){let{a:d,b:k}=t,b=a.mul(k,As),{px:v,py:E,pz:T}=this,D=a.ZERO,_=a.ZERO,A=a.ZERO,I=a.mul(v,v),le=a.mul(E,E),H=a.mul(T,T),N=a.mul(v,E);return N=a.add(N,N),A=a.mul(v,T),A=a.add(A,A),D=a.mul(d,A),_=a.mul(b,H),_=a.add(D,_),D=a.sub(le,_),_=a.add(le,_),_=a.mul(D,_),D=a.mul(N,D),A=a.mul(b,A),H=a.mul(d,H),N=a.sub(I,H),N=a.mul(d,N),N=a.add(N,A),A=a.add(I,I),I=a.add(A,I),I=a.add(I,H),I=a.mul(I,N),_=a.add(_,I),H=a.mul(E,T),H=a.add(H,H),I=a.mul(H,N),D=a.sub(D,I),A=a.mul(H,le),A=a.add(A,A),A=a.add(A,A),new l(D,_,A)}add(d){m(d);let{px:k,py:b,pz:v}=this,{px:E,py:T,pz:D}=d,_=a.ZERO,A=a.ZERO,I=a.ZERO,le=t.a,H=a.mul(t.b,As),N=a.mul(k,E),W=a.mul(b,T),$=a.mul(v,D),x=a.add(k,b),w=a.add(E,T);x=a.mul(x,w),w=a.add(N,W),x=a.sub(x,w),w=a.add(k,v);let j=a.add(E,D);return w=a.mul(w,j),j=a.add(N,$),w=a.sub(w,j),j=a.add(b,v),_=a.add(T,D),j=a.mul(j,_),_=a.add(W,$),j=a.sub(j,_),I=a.mul(le,w),_=a.mul(H,$),I=a.add(_,I),_=a.sub(W,I),I=a.add(W,I),A=a.mul(_,I),W=a.add(N,N),W=a.add(W,N),$=a.mul(le,$),w=a.mul(H,w),W=a.add(W,$),$=a.sub(N,$),$=a.mul(le,$),w=a.add(w,$),N=a.mul(W,w),A=a.add(A,N),N=a.mul(j,w),_=a.mul(x,_),_=a.sub(_,N),N=a.mul(x,W),I=a.mul(j,I),I=a.add(I,N),new l(_,A,I)}subtract(d){return this.add(d.negate())}is0(){return this.equals(l.ZERO)}wNAF(d){return g.wNAFCached(this,p,d,k=>{let b=a.invertBatch(k.map(v=>v.pz));return k.map((v,E)=>v.toAffine(b[E])).map(l.fromAffine)})}multiplyUnsafe(d){let k=l.ZERO;if(d===Ue)return k;if(c(d),d===be)return this;let{endo:b}=t;if(!b)return g.unsafeLadder(this,d);let{k1neg:v,k1:E,k2neg:T,k2:D}=b.splitScalar(d),_=k,A=k,I=this;for(;E>Ue||D>Ue;)E&be&&(_=_.add(I)),D&be&&(A=A.add(I)),I=I.double(),E>>=be,D>>=be;return v&&(_=_.negate()),T&&(A=A.negate()),A=new l(a.mul(A.px,b.beta),A.py,A.pz),_.add(A)}multiply(d){c(d);let k=d,b,v,{endo:E}=t;if(E){let{k1neg:T,k1:D,k2neg:_,k2:A}=E.splitScalar(k),{p:I,f:le}=this.wNAF(D),{p:H,f:N}=this.wNAF(A);I=g.constTimeNegate(T,I),H=g.constTimeNegate(_,H),H=new l(a.mul(H.px,E.beta),H.py,H.pz),b=I.add(H),v=le.add(N)}else{let{p:T,f:D}=this.wNAF(k);b=T,v=D}return l.normalizeZ([b,v])[0]}multiplyAndAddUnsafe(d,k,b){let v=l.BASE,E=n((D,_)=>_===Ue||_===be||!D.equals(v)?D.multiplyUnsafe(_):D.multiply(_),"mul"),T=E(this,k).add(E(d,b));return T.is0()?void 0:T}toAffine(d){let{px:k,py:b,pz:v}=this,E=this.is0();d==null&&(d=E?a.ONE:a.inv(v));let T=a.mul(k,d),D=a.mul(b,d),_=a.mul(v,d);if(E)return{x:a.ZERO,y:a.ZERO};if(!a.eql(_,a.ONE))throw new Error("invZ was invalid");return{x:T,y:D}}isTorsionFree(){let{h:d,isTorsionFree:k}=t;if(d===be)return!0;if(k)return k(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:k}=t;return d===be?this:k?k(l,this):this.multiplyUnsafe(t.h)}toRawBytes(d=!0){return this.assertValidity(),o(l,this,d)}toHex(d=!0){return Se(this.toRawBytes(d))}}l.BASE=new l(t.Gx,t.Gy,a.ONE),l.ZERO=new l(a.ZERO,a.ONE,a.ZERO);let h=t.nBitLength,g=Cs(l,t.endo?Math.ceil(h/2):h);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:u,weierstrassEquation:i,isWithinCurveOrder:s}}n(vp,"weierstrassPoints");function Ep(e){let t=fn(e);return it(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}n(Ep,"validateOpts");function Ss(e){let t=Ep(e),{Fp:a,n:o}=t,r=a.BYTES+1,i=2*a.BYTES+1;function s(w){return Ue<w&&w<a.ORDER}n(s,"isValidFieldElement");function c(w){return ce(w,o)}n(c,"modN");function u(w){return Vt(w,o)}n(u,"invN");let{ProjectivePoint:p,normPrivateKeyToScalar:m,weierstrassEquation:l,isWithinCurveOrder:h}=vp({...t,toBytes(w,j,S){let V=j.toAffine(),F=a.toBytes(V.x),te=rt;return S?te(Uint8Array.from([j.hasEvenY()?2:3]),F):te(Uint8Array.from([4]),F,a.toBytes(V.y))},fromBytes(w){let j=w.length,S=w[0],V=w.subarray(1);if(j===r&&(S===2||S===3)){let F=oe(V);if(!s(F))throw new Error("Point is not on curve");let te=l(F),de=a.sqrt(te),he=(de&be)===be;return(S&1)===1!==he&&(de=a.neg(de)),{x:F,y:de}}else if(j===i&&S===4){let F=a.fromBytes(V.subarray(0,a.BYTES)),te=a.fromBytes(V.subarray(a.BYTES,2*a.BYTES));return{x:F,y:te}}else throw new Error(`Point of length ${j} was invalid. Expected ${r} compressed bytes or ${i} uncompressed bytes`)}}),g=n(w=>Se(nt(w,t.nByteLength)),"numToNByteStr");function f(w){let j=o>>be;return w>j}n(f,"isBiggerThanHalfOrder");function d(w){return f(w)?c(-w):w}n(d,"normalizeS");let k=n((w,j,S)=>oe(w.slice(j,S)),"slcNum");class b{static{n(this,"Signature")}constructor(j,S,V){this.r=j,this.s=S,this.recovery=V,this.assertValidity()}static fromCompact(j){let S=t.nByteLength;return j=me("compactSignature",j,S*2),new b(k(j,0,S),k(j,S,2*S))}static fromDER(j){let{r:S,s:V}=qe.toSig(me("DER",j));return new b(S,V)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(j){return new b(this.r,this.s,j)}recoverPublicKey(j){let{r:S,s:V,recovery:F}=this,te=A(me("msgHash",j));if(F==null||![0,1,2,3].includes(F))throw new Error("recovery id invalid");let de=F===2||F===3?S+t.n:S;if(de>=a.ORDER)throw new Error("recovery id 2 or 3 invalid");let he=F&1?"03":"02",Ye=p.fromHex(he+g(de)),Xe=u(de),Dt=c(-te*Xe),oa=c(V*Xe),Ze=p.BASE.multiplyAndAddUnsafe(Ye,Dt,oa);if(!Ze)throw new Error("point at infinify");return Ze.assertValidity(),Ze}hasHighS(){return f(this.s)}normalizeS(){return this.hasHighS()?new b(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Me(this.toDERHex())}toDERHex(){return qe.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Me(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let v={isValidPrivateKey(w){try{return m(w),!0}catch{return!1}},normPrivateKeyToScalar:m,randomPrivateKey:n(()=>{let w=dn(t.n);return xs(t.randomBytes(w),t.n)},"randomPrivateKey"),precompute(w=8,j=p.BASE){return j._setWindowSize(w),j.multiply(BigInt(3)),j}};function E(w,j=!0){return p.fromPrivateKey(w).toRawBytes(j)}n(E,"getPublicKey");function T(w){let j=Ee(w),S=typeof w=="string",V=(j||S)&&w.length;return j?V===r||V===i:S?V===2*r||V===2*i:w instanceof p}n(T,"isProbPub");function D(w,j,S=!0){if(T(w))throw new Error("first arg must be private key");if(!T(j))throw new Error("second arg must be public key");return p.fromHex(j).multiply(m(w)).toRawBytes(S)}n(D,"getSharedSecret");let _=t.bits2int||function(w){let j=oe(w),S=w.length*8-t.nBitLength;return S>0?j>>BigInt(S):j},A=t.bits2int_modN||function(w){return c(_(w))},I=wt(t.nBitLength);function le(w){if(typeof w!="bigint")throw new Error("bigint expected");if(!(Ue<=w&&w<I))throw new Error(`bigint expected < 2^${t.nBitLength}`);return nt(w,t.nByteLength)}n(le,"int2octets");function H(w,j,S=N){if(["recovered","canonical"].some(yt=>yt in S))throw new Error("sign() legacy options not supported");let{hash:V,randomBytes:F}=t,{lowS:te,prehash:de,extraEntropy:he}=S;te==null&&(te=!0),w=me("msgHash",w),de&&(w=me("prehashed msgHash",V(w)));let Ye=A(w),Xe=m(j),Dt=[le(Xe),le(Ye)];if(he!=null){let yt=he===!0?F(a.BYTES):he;Dt.push(me("extraEntropy",yt))}let oa=rt(...Dt),Ze=Ye;function Ko(yt){let Bt=_(yt);if(!h(Bt))return;let ci=u(Bt),Ce=p.BASE.multiply(Bt).toAffine(),Pt=c(Ce.x);if(Pt===Ue)return;let $a=c(ci*c(Ze+Pt*Xe));if($a===Ue)return;let ui=(Ce.x===Pt?0:2)|Number(Ce.y&be),li=$a;return te&&f($a)&&(li=d($a),ui^=1),new b(Pt,li,ui)}return n(Ko,"k2sig"),{seed:oa,k2sig:Ko}}n(H,"prepSig");let N={lowS:t.lowS,prehash:!1},W={lowS:t.lowS,prehash:!1};function $(w,j,S=N){let{seed:V,k2sig:F}=H(w,j,S),te=t;return cn(te.hash.outputLen,te.nByteLength,te.hmac)(V,F)}n($,"sign"),p.BASE._setWindowSize(8);function x(w,j,S,V=W){let F=w;if(j=me("msgHash",j),S=me("publicKey",S),"strict"in V)throw new Error("options.strict was renamed to lowS");let{lowS:te,prehash:de}=V,he,Ye;try{if(typeof F=="string"||Ee(F))try{he=b.fromDER(F)}catch(Ce){if(!(Ce instanceof qe.Err))throw Ce;he=b.fromCompact(F)}else if(typeof F=="object"&&typeof F.r=="bigint"&&typeof F.s=="bigint"){let{r:Ce,s:Pt}=F;he=new b(Ce,Pt)}else throw new Error("PARSE");Ye=p.fromHex(S)}catch(Ce){if(Ce.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(te&&he.hasHighS())return!1;de&&(j=t.hash(j));let{r:Xe,s:Dt}=he,oa=A(j),Ze=u(Dt),Ko=c(oa*Ze),yt=c(Xe*Ze),Bt=p.BASE.multiplyAndAddUnsafe(Ye,Ko,yt)?.toAffine();return Bt?c(Bt.x)===Xe:!1}return n(x,"verify"),{CURVE:t,getPublicKey:E,getSharedSecret:D,sign:$,verify:x,ProjectivePoint:p,Signature:b,utils:v}}n(Ss,"weierstrass");var oo=class extends Qe{static{n(this,"HMAC")}constructor(t,a){super(),this.finished=!1,this.destroyed=!1,Ji(t);let o=et(a);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(o.length>r?t.create().update(o).digest():o);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=t.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(t){return $e(this),this.iHash.update(t),this}digestInto(t){$e(this),ca(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:a,iHash:o,finished:r,destroyed:i,blockLen:s,outputLen:c}=this;return t=t,t.finished=r,t.destroyed=i,t.blockLen=s,t.outputLen=c,t.oHash=a._cloneInto(t.oHash),t.iHash=o._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},gn=n((e,t,a)=>new oo(e,t).update(a).digest(),"hmac");gn.create=(e,t)=>new oo(e,t);function Ts(e){return{hash:e,hmac:n((t,...a)=>gn(e,t,ss(...a)),"hmac"),randomBytes:us}}n(Ts,"getHash");var pa=BigInt("3618502788666131213697322783095070105526743751716087489154079457884512865583"),Et=BigInt("0x800000000000000000000000000000000000000000000000000000000000000"),Os=252;function Is(e){for(;e[0]===0;)e=e.subarray(1);let t=e.length*8-Os,a=oe(e);return t>0?a>>BigInt(t):a}n(Is,"bits2int");function Ns(e){return typeof e=="string"&&(e=wn(e),e.length&1&&(e="0"+e)),Me(e)}n(Ns,"hex0xToBytes");var xt=Ss({a:BigInt(1),b:BigInt("3141592653589793238462643383279502884197169399375105820974944592307816406665"),Fp:pn(BigInt("0x800000000000011000000000000000000000000000000000000000000000001")),n:pa,nBitLength:Os,Gx:BigInt("874739451078007766457464989774322083649278607533249481151382481072868806602"),Gy:BigInt("152666792071518830868575557812948353041420400780739481342941381225525861407"),h:BigInt(1),lowS:!1,...Ts(Za),bits2int:Is,bits2int_modN:n(e=>{let t=oe(e).toString(16);return t.length===63&&(e=Ns(t+"0")),ce(Is(e),pa)},"bits2int_modN")}),xp=xt;function $t(e){return me("",typeof e=="string"?Ns(e):e)}n($t,"ensureBytes");function bn(e){return Se($t(e)).padStart(64,"0")}n(bn,"normPrivKey");function Ds(e,t=!1){return xt.getPublicKey(bn(e),t)}n(Ds,"getPublicKey");function _p(e,t){return xt.getSharedSecret(bn(e),t)}n(_p,"getSharedSecret");function Bs(e){let{r:t,s:a}=e;if(t<0n||t>=Et)throw new Error(`Signature.r should be [1, ${Et})`);let o=Vt(a,pa);if(o<0n||o>=Et)throw new Error(`inv(Signature.s) should be [1, ${Et})`)}n(Bs,"checkSignature");function Ps(e){let t=$t(e);if(oe(t)>=Et)throw new Error(`msgHash should be [0, ${Et})`);return t}n(Ps,"checkMessage");function Rs(e,t,a){let o=xt.sign(Ps(e),bn(t),a);return Bs(o),o}n(Rs,"sign");function Cp(e,t,a){if(!(e instanceof ro)){let o=$t(e);try{e=ro.fromDER(o)}catch(r){if(!(r instanceof qe.Err))throw r;e=ro.fromCompact(o)}}return Bs(e),xt.verify(e,Ps(t),$t(a))}n(Cp,"verify");var{CURVE:Ap,ProjectivePoint:Ht,Signature:ro,utils:io}=xt;function Ls(e){return`0x${Se(e.subarray(1)).replace(/^0+/gm,"")}`}n(Ls,"extractX");function wn(e){return e.replace(/^0x/i,"")}n(wn,"strip0x");function Vs(e){let t=$t(e),a=2n**256n,o=a-ce(a,pa);for(let r=0;;r++){let i=kn(rt(t,to(BigInt(r))));if(i<o)return ce(i,pa).toString(16);if(r===1e5)throw new Error("grindKey is broken: tried 100k vals")}}n(Vs,"grindKey");function so(e){return Ls(Ds(e,!0))}n(so,"getStarkKey");function Sp(e){if(e=wn(e),e.length!==130)throw new Error("Wrong ethereum signature");return Vs(e.substring(0,64))}n(Sp,"ethSigToPrivate");var Tp=2n**31n-1n,no=n(e=>Number(e&Tp),"int31");function Ip(e,t,a,o){let r=no(kn(e)),i=no(kn(t)),s=ma(wn(a));return`m/2645'/${r}'/${i}'/${no(s)}'/${no(s>>31n)}'/${o}`}n(Ip,"getAccountPath");var da=[new Ht(2089986280348253421170679821480865132823066470938446095505822317253594081284n,1713931329540660377023406109199410414810705867260802078187082345529207694986n,1n),new Ht(996781205833008774514500082376783249102396023663454813447423147977397232763n,1668503676786377725805489344771023921079126552019160156920634619255970485781n,1n),new Ht(2251563274489750535117886426533222435294046428347329203627021249169616184184n,1798716007562728905295480679789526322175868328062420237419143593021674992973n,1n),new Ht(2138414695194151160943305727036575959195309218611738193261179310511854807447n,113410276730064486255102093846540133784865286929052426931474106396135072156n,1n),new Ht(2379962749567351885752724891227938183011949129833673362440656643086021394946n,776496453633298175483985398648758586525933812536653089401905292063708816422n,1n)];function Hs(e,t){let a=[],o=e;for(let r=0;r<248;r++)a.push(o),o=o.double();o=t;for(let r=0;r<4;r++)a.push(o),o=o.double();return a}n(Hs,"pedersenPrecompute");var zp=Hs(da[1],da[2]),Op=Hs(da[3],da[4]);function Np(e){let t;if(typeof e=="bigint")t=e;else if(typeof e=="number"){if(!Number.isSafeInteger(e))throw new Error(`Invalid pedersenArg: ${e}`);t=BigInt(e)}else t=oe($t(e));if(!(0n<=t&&t<xt.CURVE.Fp.ORDER))throw new Error(`PedersenArg should be 0 <= value < CURVE.P: ${t}`);return t}n(Np,"pedersenArg");function zs(e,t,a){let o=Np(t);for(let r=0;r<252;r++){let i=a[r];if(i.equals(e))throw new Error("Same point");(o&1n)!==0n&&(e=e.add(i)),o>>=1n}return e}n(zs,"pedersenSingle");function _t(e,t){let a=da[0];return a=zs(a,e,zp),a=zs(a,t,Op),Ls(a.toRawBytes(!0))}n(_t,"pedersen");var Dp=n((e,t=_t)=>[0,...e,e.length].reduce((a,o)=>t(a,o)),"computeHashOnElements"),Bp=wt(250),Te=n(e=>oe(fs(e))&Bp,"keccak"),kn=n(e=>oe(Za(e)),"sha256Num"),$s=pn(BigInt("3618502788666131213697322783095070105623107215331596699973092056135872020481"));function yn(e,t,a){let o=e.fromBytes(Za(nn(`${t}${a}`)));return e.create(o)}n(yn,"poseidonRoundConstant");function Fs(e,t,a,o=0){let r=[],i=[];for(let s=0;s<a;s++)r.push(yn(e,`${t}x`,o*a+s)),i.push(yn(e,`${t}y`,o*a+s));if(new Set([...r,...i]).size!==2*a)throw new Error("X and Y values are not distinct");return r.map(s=>i.map(c=>e.inv(e.sub(s,c))))}n(Fs,"_poseidonMDS");var Pp=[[3,1,1],[1,-1,1],[1,1,-2]].map(e=>e.map(BigInt));function jn(e,t){if(vt(e.Fp),!Number.isSafeInteger(e.rate)||!Number.isSafeInteger(e.capacity))throw new Error(`Wrong poseidon opts: ${e}`);let a=e.rate+e.capacity,o=e.roundsFull+e.roundsPartial,r=[];for(let s=0;s<o;s++){let c=[];for(let u=0;u<a;u++)c.push(yn(e.Fp,"Hades",a*s+u));r.push(c)}let i=_s({...e,t:a,sboxPower:3,reversePartialPowIdx:!0,mds:t,roundConstants:r});return i.m=a,i.rate=e.rate,i.capacity=e.capacity,i}n(jn,"poseidonBasic");function Rp(e,t=0){let a=e.rate+e.capacity;if(!Number.isSafeInteger(t))throw new Error(`Wrong mdsAttempt=${t}`);return jn(e,Fs(e.Fp,"HadesMDS",a,t))}n(Rp,"poseidonCreate");var ha=jn({Fp:$s,rate:2,capacity:1,roundsFull:8,roundsPartial:83},Pp);function co(e,t,a=ha){return a([e,t,2n])[0]}n(co,"poseidonHash");function Lp(e,t,a=ha){return to(co(oe(e),oe(t),a))}n(Lp,"poseidonHashFunc");function Vp(e,t=ha){return t([e,0n,1n])[0]}n(Vp,"poseidonHashSingle");function Y(e,t=ha){let{m:a,rate:o}=t;if(!Array.isArray(e))throw new Error("bigint array expected in values");let r=Array.from(e);for(r.push(1n);r.length%o!==0;)r.push(0n);let i=new Array(a).fill(0n);for(let s=0;s<r.length;s+=o){for(let c=0;c<o;c++)i[c]+=r[s+c];i=t(i)}return i[0]}n(Y,"poseidonHashMany");var En={};bt(En,{poseidon:()=>$p,splitConstants:()=>Hp,validateOpts:()=>Ms});function Ms(e){let{Fp:t,mds:a,reversePartialPowIdx:o,roundConstants:r}=e,{roundsFull:i,roundsPartial:s,sboxPower:c,t:u}=e;zi(t);for(let f of["t","roundsFull","roundsPartial"])if(typeof e[f]!="number"||!Number.isSafeInteger(e[f]))throw new Error(`Poseidon: invalid param ${f}=${e[f]} (${typeof e[f]})`);if(!Array.isArray(a)||a.length!==u)throw new Error("Poseidon: wrong MDS matrix");let p=a.map(f=>{if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon MDS matrix row: ${f}`);return f.map(d=>{if(typeof d!="bigint")throw new Error(`Poseidon MDS matrix value=${d}`);return t.create(d)})});if(o!==void 0&&typeof o!="boolean")throw new Error(`Poseidon: invalid param reversePartialPowIdx=${o}`);if(i%2!==0)throw new Error(`Poseidon roundsFull is not even: ${i}`);let m=i+s;if(!Array.isArray(r)||r.length!==m)throw new Error("Poseidon: wrong round constants");let l=r.map(f=>{if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon wrong round constants: ${f}`);return f.map(d=>{if(typeof d!="bigint"||!t.isValid(d))throw new Error(`Poseidon wrong round constant=${d}`);return t.create(d)})});if(!c||![3,5,7].includes(c))throw new Error(`Poseidon wrong sboxPower=${c}`);let h=BigInt(c),g=n(f=>Oi(t,f,h),"sboxFn");return c===3?g=n(f=>t.mul(t.sqrN(f),f),"sboxFn"):c===5&&(g=n(f=>t.mul(t.sqrN(t.sqrN(f)),f),"sboxFn")),Object.freeze({...e,rounds:m,sboxFn:g,roundConstants:l,mds:p})}n(Ms,"validateOpts");function Hp(e,t){if(typeof t!="number")throw new Error("poseidonSplitConstants: wrong t");if(!Array.isArray(e)||e.length%t)throw new Error("poseidonSplitConstants: wrong rc");let a=[],o=[];for(let r=0;r<e.length;r++)o.push(e[r]),o.length===t&&(a.push(o),o=[]);return a}n(Hp,"splitConstants");function $p(e){let t=Ms(e),{Fp:a,mds:o,roundConstants:r,rounds:i,roundsPartial:s,sboxFn:c,t:u}=t,p=t.roundsFull/2,m=t.reversePartialPowIdx?u-1:0,l=n((g,f,d)=>(g=g.map((k,b)=>a.add(k,r[d][b])),f?g=g.map(k=>c(k)):g[m]=c(g[m]),g=o.map(k=>k.reduce((b,v,E)=>a.add(b,a.mulN(v,g[E])),a.ZERO)),g),"poseidonRound"),h=n(function(f){if(!Array.isArray(f)||f.length!==u)throw new Error(`Poseidon: wrong values (expected array of bigints with length ${u})`);f=f.map(k=>{if(typeof k!="bigint")throw new Error(`Poseidon: wrong value=${k} (${typeof k})`);return a.create(k)});let d=0;for(let k=0;k<p;k++)f=l(f,!0,d++);for(let k=0;k<s;k++)f=l(f,!1,d++);for(let k=0;k<p;k++)f=l(f,!0,d++);if(d!==i)throw new Error(`Poseidon: wrong number of rounds: last round=${d}, total=${i}`);return f},"poseidonHash");return h.roundConstants=r,h}n($p,"poseidon");function Ke(e){return Fp.test(e)}n(Ke,"isInteger");var Fp=/^-?[0-9]+$/;function fa(e){return Mp.test(e)}n(fa,"isNumber");var Mp=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function Us(e,t){let a=parseFloat(e),o=String(a),r=xn(e),i=xn(o);return!!(r===i||t?.approx===!0&&!Ke(e)&&i.length>=14&&r.startsWith(i.substring(0,14)))}n(Us,"isSafeNumber");var Ct=function(e){return e.underflow="underflow",e.overflow="overflow",e.truncate_integer="truncate_integer",e.truncate_float="truncate_float",e}({});function _n(e){if(Us(e,{approx:!1}))return;if(Ke(e))return Ct.truncate_integer;let t=parseFloat(e);return isFinite(t)?t===0?Ct.underflow:Ct.truncate_float:Ct.overflow}n(_n,"getUnsafeNumberReason");function xn(e){return e.replace(Up,"").replace(Kp,"").replace(Wp,"").replace(qp,"")}n(xn,"extractSignificantDigits");var Up=/[eE][+-]?\d+$/,qp=/^-?(0*)?/,Kp=/\./,Wp=/0+$/;var ga=class{static{n(this,"LosslessNumber")}isLosslessNumber=!0;constructor(t){if(!fa(t))throw new Error('Invalid number (value: "'+t+'")');this.value=t}valueOf(){let t=_n(this.value);if(t===void 0||t===Ct.truncate_float)return parseFloat(this.value);if(Ke(this.value))return BigInt(this.value);throw new Error(`Cannot safely convert to number: the value '${this.value}' would ${t} and become ${parseFloat(this.value)}`)}toString(){return this.value}};function Cn(e){return e&&typeof e=="object"&&e.isLosslessNumber===!0||!1}n(Cn,"isLosslessNumber");function An(e){return new ga(e)}n(An,"parseLosslessNumber");function Sn(e){return Ke(e)?BigInt(e):parseFloat(e)}n(Sn,"parseNumberAndBigInt");function qs(e,t){return Tn({"":e},"",e,t)}n(qs,"revive");function Tn(e,t,a,o){return Array.isArray(a)?o.call(e,t,Yp(a,o)):a&&typeof a=="object"&&!Cn(a)?o.call(e,t,Gp(a,o)):o.call(e,t,a)}n(Tn,"reviveValue");function Gp(e,t){return Object.keys(e).forEach(a=>{let o=Tn(e,a,e[a],t);o!==void 0?e[a]=o:delete e[a]}),e}n(Gp,"reviveObject");function Yp(e,t){for(let a=0;a<e.length;a++)e[a]=Tn(e,a+"",e[a],t);return e}n(Yp,"reviveArray");function mo(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:An,o=0,r=c();return f(r),k(),t?qs(r,t):r;function i(){if(e.charCodeAt(o)===td){o++,p();let x={},w=!0;for(;o<e.length&&e.charCodeAt(o)!==Ws;){w?w=!1:(h(),p());let j=o,S=m();if(S===void 0){E();return}p(),g();let V=c();if(V===void 0){le();return}Object.prototype.hasOwnProperty.call(x,S)&&!zn(V,x[S])&&T(S,j+1),x[S]=V}return e.charCodeAt(o)!==Ws&&D(),o++,x}}n(i,"parseObject");function s(){if(e.charCodeAt(o)===ad){o++,p();let x=[],w=!0;for(;o<e.length&&e.charCodeAt(o)!==Gs;){w?w=!1:h();let j=c();d(j),x.push(j)}return e.charCodeAt(o)!==Gs&&_(),o++,x}}n(s,"parseArray");function c(){p();let x=m()??l()??i()??s()??u("true",!0)??u("false",!1)??u("null",null);return p(),x}n(c,"parseValue");function u(x,w){if(e.slice(o,o+x.length)===x)return o+=x.length,w}n(u,"parseKeyword");function p(){for(;Xp(e.charCodeAt(o));)o++}n(p,"skipWhitespace");function m(){if(e.charCodeAt(o)===In){o++;let x="";for(;o<e.length&&e.charCodeAt(o)!==In;){if(e.charCodeAt(o)===ed){let w=e[o+1],j=Qp[w];j!==void 0?(x+=j,o++):w==="u"?uo(e.charCodeAt(o+2))&&uo(e.charCodeAt(o+3))&&uo(e.charCodeAt(o+4))&&uo(e.charCodeAt(o+5))?(x+=String.fromCharCode(parseInt(e.slice(o+2,o+6),16)),o+=5):H(o):I(o)}else Jp(e.charCodeAt(o))?x+=e[o]:A(e[o]);o++}return v(),o++,x}}n(m,"parseString");function l(){let x=o;if(e.charCodeAt(o)===Ys&&(o++,b(x)),e.charCodeAt(o)===On)o++;else if(Zp(e.charCodeAt(o)))for(o++;lo(e.charCodeAt(o));)o++;if(e.charCodeAt(o)===ld)for(o++,b(x);lo(e.charCodeAt(o));)o++;if(e.charCodeAt(o)===fd||e.charCodeAt(o)===hd)for(o++,(e.charCodeAt(o)===Ys||e.charCodeAt(o)===sd)&&o++,b(x);lo(e.charCodeAt(o));)o++;if(o>x)return a(e.slice(x,o))}n(l,"parseNumeric");function h(){if(e.charCodeAt(o)!==ud)throw new SyntaxError(`Comma ',' expected after value ${$()}`);o++}n(h,"eatComma");function g(){if(e.charCodeAt(o)!==md)throw new SyntaxError(`Colon ':' expected after property name ${$()}`);o++}n(g,"eatColon");function f(x){if(x===void 0)throw new SyntaxError(`JSON value expected ${$()}`)}n(f,"expectValue");function d(x){if(x===void 0)throw new SyntaxError(`Array item expected ${$()}`)}n(d,"expectArrayItem");function k(){if(o<e.length)throw new SyntaxError(`Expected end of input ${$()}`)}n(k,"expectEndOfInput");function b(x){if(!lo(e.charCodeAt(o))){let w=e.slice(x,o);throw new SyntaxError(`Invalid number '${w}', expecting a digit ${$()}`)}}n(b,"expectDigit");function v(){if(e.charCodeAt(o)!==In)throw new SyntaxError(`End of string '"' expected ${$()}`)}n(v,"expectEndOfString");function E(){throw new SyntaxError(`Quoted object key expected ${$()}`)}n(E,"throwObjectKeyExpected");function T(x,w){throw new SyntaxError(`Duplicate key '${x}' encountered at position ${w}`)}n(T,"throwDuplicateKey");function D(){throw new SyntaxError(`Quoted object key or end of object '}' expected ${$()}`)}n(D,"throwObjectKeyOrEndExpected");function _(){throw new SyntaxError(`Array item or end of array ']' expected ${$()}`)}n(_,"throwArrayItemOrEndExpected");function A(x){throw new SyntaxError(`Invalid character '${x}' ${N()}`)}n(A,"throwInvalidCharacter");function I(x){let w=e.slice(x,x+2);throw new SyntaxError(`Invalid escape character '${w}' ${N()}`)}n(I,"throwInvalidEscapeCharacter");function le(){throw new SyntaxError(`Object value expected after ':' ${N()}`)}n(le,"throwObjectValueExpected");function H(x){let w=e.slice(x,x+6);throw new SyntaxError(`Invalid unicode character '${w}' ${N()}`)}n(H,"throwInvalidUnicodeCharacter");function N(){return`at position ${o}`}n(N,"pos");function W(){return o<e.length?`but got '${e[o]}'`:"but reached end of input"}n(W,"got");function $(){return W()+" "+N()}n($,"gotAt")}n(mo,"parse");function Xp(e){return e===od||e===nd||e===rd||e===id}n(Xp,"isWhitespace");function uo(e){return e>=On&&e<=Nn||e>=pd&&e<=gd||e>=dd&&e<=kd}n(uo,"isHex");function lo(e){return e>=On&&e<=Nn}n(lo,"isDigit");function Zp(e){return e>=cd&&e<=Nn}n(Zp,"isNonZeroDigit");function Jp(e){return e>=32&&e<=1114111}n(Jp,"isValidStringCharacter");function zn(e,t){return e===t?!0:Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((a,o)=>zn(a,t[o])):Ks(e)&&Ks(t)?[...new Set([...Object.keys(e),...Object.keys(t)])].every(o=>zn(e[o],t[o])):!1}n(zn,"isDeepEqual");function Ks(e){return typeof e=="object"&&e!==null}n(Ks,"isObject");var Qp={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
21
+ `,r:"\r",t:" "},ed=92,td=123,Ws=125,ad=91,Gs=93,od=32,nd=10,rd=9,id=13,In=34,sd=43,Ys=45,On=48,cd=49,Nn=57,ud=44,ld=46,md=58,pd=65,dd=97,hd=69,fd=101,gd=70,kd=102;function po(e,t,a,o){let r=yd(a),i=typeof t=="function"?t.call({"":e},"",e):e;return s(i,"");function s(m,l){if(Array.isArray(o)){let h=o.find(g=>g.test(m));if(h){let g=h.stringify(m);if(typeof g!="string"||!fa(g))throw new Error(`Invalid JSON number: output of a number stringifier must be a string containing a JSON number (output: ${g})`);return g}}if(typeof m=="boolean"||typeof m=="number"||typeof m=="string"||m===null||m instanceof Date||m instanceof Boolean||m instanceof Number||m instanceof String)return JSON.stringify(m);if(m&&m.isLosslessNumber||typeof m=="bigint")return m.toString();if(Array.isArray(m))return c(m,l);if(m&&typeof m=="object")return u(m,l)}function c(m,l){if(m.length===0)return"[]";let h=r?l+r:void 0,g=r?`[
22
22
  `:"[";for(let f=0;f<m.length;f++){let d=typeof t=="function"?t.call(m,String(f),m[f]):m[f];r&&(g+=h),typeof d<"u"&&typeof d!="function"?g+=s(d,h):g+="null",f<m.length-1&&(g+=r?`,
23
23
  `:",")}return g+=r?`
24
24
  `+l+"]":"]",g}function u(m,l){if(typeof m.toJSON=="function")return po(m.toJSON(),t,a,void 0);let h=Array.isArray(t)?t.map(String):Object.keys(m);if(h.length===0)return"{}";let g=r?l+r:void 0,f=!0,d=r?`{
25
25
  `:"{";return h.forEach(k=>{let b=typeof t=="function"?t.call(m,k,m[k]):m[k];if(p(k,b)){f?f=!1:d+=r?`,
26
26
  `:",";let v=JSON.stringify(k);d+=r?g+v+": ":v+":",d+=s(b,g)}}),d+=r?`
27
- `+l+"}":"}",d}function p(m,l){return typeof l<"u"&&typeof l!="function"&&typeof l!="symbol"}}n(po,"stringify");function wd(e){if(typeof e=="number")return" ".repeat(e);if(typeof e=="string"&&e!=="")return e}n(wd,"resolveSpace");var go=wt(Qc(),1),au=wt(tu(),1);function Sh(e,t){let a=new URL(t).hostname,o=new URL(e).hostname;return a===o||a.endsWith(`.${o}`)}n(Sh,"isDomainOrSubdomain");var Th=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]);function Ih(e){let t=e.split(/[,\s]+/),a="";for(let o of t)o!==""&&Th.has(o)&&(a=o);return a}n(Ih,"parseReferrerPolicy");function zh(e,t){}n(zh,"doNothing");function Oh(e,t){e.headers.delete(t)}n(Oh,"callDeleteMethod");function Nh(e,t){let a=e.headers;for(let o of Object.keys(a))o.toLowerCase()===t&&delete a[o]}n(Nh,"deleteFromObject");function Dh(e){return e.headers==null?zh:typeof e.headers.delete=="function"?Oh:Nh}n(Dh,"identifyDeleteHeader");var Bh=new Set([301,302,303,307,308]);function Ph(e){return Bh.has(e)}n(Ph,"isRedirect");async function Rh(e,t,a){switch(t.redirect??"follow"){case"error":throw new TypeError(`URI requested responded with a redirect and redirect mode is set to error: ${a.url}`);case"manual":return a;case"follow":break;default:throw new TypeError(`Invalid redirect option: ${t.redirect}`)}let o=a.headers.get("location");if(o===null)return a;let r=a.url,i=new URL(o,r).toString(),s=t.redirectCount??0,c=t.maxRedirect??20;if(s>=c)throw new TypeError(`Reached maximum redirect of ${c} for URL: ${r}`);t={...t,redirectCount:s+1};let u=Dh(t);if(!Sh(r,i))for(let l of["authorization","www-authenticate","cookie","cookie2"])u(t,l);let p=t.body,m=t.body;if(a.status!==303&&t.body!=null&&(typeof p.pipe=="function"||typeof m.pipeTo=="function"))throw new TypeError("Cannot follow redirect with body being a readable stream");return(a.status===303||(a.status===301||a.status===302)&&t.method==="POST")&&(t.method="GET",t.body=void 0,u(t,"content-length")),a.headers.has("referrer-policy")&&(t.referrerPolicy=Ih(a.headers.get("referrer-policy"))),await e(i,t)}n(Rh,"handleRedirect");function Lh(e,t,a){if(a==="")return t;let o=e,r=t.headers;return o.headers&&typeof o.headers.append=="function"?o.headers.append("cookie",a):r&&typeof r.append=="function"?r.append("cookie",a):t={...t,headers:{...t.headers,cookie:a}},t}n(Lh,"addCookiesToRequest");function Vh(e){let t=e.headers;if(typeof t.getAll=="function")return t.getAll("set-cookie");if(typeof t.raw=="function"){let o=t.raw();return Array.isArray(o["set-cookie"])?o["set-cookie"]:[]}let a=e.headers.get("set-cookie");return a!==null?(0,au.splitCookiesString)(a):[]}n(Vh,"getCookiesFromResponse");function ir(e,t,a=!0){let o=e,r=t??new go.CookieJar;async function i(s,c){let u=c??{};c={...c,redirect:"manual"};let p=typeof s=="string"?s:s.url??s.href,m=await r.getCookieString(p);c=Lh(s,c,m);let l=await o(s,c),h=Vh(l);return await Promise.all(h.map(async g=>await r.setCookie(g,l.url,{ignoreError:a}))),(c.redirectCount??0)>0&&Object.defineProperty(l,"redirected",{value:!0}),Ph(l.status)?await Rh(i,u,l):l}return n(i,"fetchCookieWrapper"),i.toughCookie=go,i}n(ir,"fetchCookie");ir.toughCookie=go;var Yl=wt(ou(),1);var cu=n((e,t,a=[])=>{let o=Object.getOwnPropertyDescriptors(t);for(let r of a)delete o[r];Object.defineProperties(e,o)},"copyProps"),qt=n((e,t=[e])=>{let a=Object.getPrototypeOf(e);return a===null?t:qt(a,[...t,a])},"protoChain"),Hh=n((...e)=>{if(e.length===0)return;let t,a=e.map(o=>qt(o));for(;a.every(o=>o.length>0);){let o=a.map(i=>i.pop()),r=o[0];if(o.every(i=>i===r))t=r;else break}return t},"nearestCommonProto"),nu=n((e,t,a=[])=>{var o;let r=(o=Hh(...e))!==null&&o!==void 0?o:Object.prototype,i=Object.create(r),s=qt(r);for(let c of e){let u=qt(c);for(let p=u.length-1;p>=0;p--){let m=u[p];s.indexOf(m)===-1&&(cu(i,m,["constructor",...a]),s.push(m))}}return i.constructor=t,i},"hardMixProtos"),cr=n(e=>e.filter((t,a)=>e.indexOf(t)==a),"unique"),yo=n((e,t)=>{let a=t.map(i=>qt(i)),o=0,r=!0;for(;r;){r=!1;for(let i=t.length-1;i>=0;i--){let s=a[i][o];if(s!=null&&(r=!0,Object.getOwnPropertyDescriptor(s,e)!=null))return a[i][0]}o++}},"getIngredientWithProp"),uu=n((e,t=Object.prototype)=>new Proxy({},{getPrototypeOf(){return t},setPrototypeOf(){throw Error("Cannot set prototype of Proxies created by ts-mixer")},getOwnPropertyDescriptor(a,o){return Object.getOwnPropertyDescriptor(yo(o,e)||{},o)},defineProperty(){throw new Error("Cannot define new properties on Proxies created by ts-mixer")},has(a,o){return yo(o,e)!==void 0||t[o]!==void 0},get(a,o){return(yo(o,e)||t)[o]},set(a,o,r){let i=yo(o,e);if(i===void 0)throw new Error("Cannot set new properties on Proxies created by ts-mixer");return i[o]=r,!0},deleteProperty(){throw new Error("Cannot delete properties on Proxies created by ts-mixer")},ownKeys(){return e.map(Object.getOwnPropertyNames).reduce((a,o)=>o.concat(a.filter(r=>o.indexOf(r)<0)))}}),"proxyMix"),$h=n((e,t)=>uu([...e,{constructor:t}]),"softMixProtos"),Ea={initFunction:null,staticsStrategy:"copy",prototypeStrategy:"copy",decoratorInheritance:"deep"},lu=new WeakMap,Fh=n(e=>lu.get(e),"getMixinsForClass"),Mh=n((e,t)=>lu.set(e,t),"registerMixins");var ru=n((e,t)=>{var a,o;let r=cr([...Object.getOwnPropertyNames(e),...Object.getOwnPropertyNames(t)]),i={};for(let s of r)i[s]=cr([...(a=e?.[s])!==null&&a!==void 0?a:[],...(o=t?.[s])!==null&&o!==void 0?o:[]]);return i},"mergeObjectsOfDecorators"),iu=n((e,t)=>{var a,o,r,i;return{property:ru((a=e?.property)!==null&&a!==void 0?a:{},(o=t?.property)!==null&&o!==void 0?o:{}),method:ru((r=e?.method)!==null&&r!==void 0?r:{},(i=t?.method)!==null&&i!==void 0?i:{})}},"mergePropertyAndMethodDecorators"),mu=n((e,t)=>{var a,o,r,i,s,c;return{class:cr([...(a=e?.class)!==null&&a!==void 0?a:[],...(o=t?.class)!==null&&o!==void 0?o:[]]),static:iu((r=e?.static)!==null&&r!==void 0?r:{},(i=t?.static)!==null&&i!==void 0?i:{}),instance:iu((s=e?.instance)!==null&&s!==void 0?s:{},(c=t?.instance)!==null&&c!==void 0?c:{})}},"mergeDecorators"),ur=new Map,Uh=n((...e)=>{var t;let a=new Set,o=new Set([...e]);for(;o.size>0;)for(let r of o){let i=qt(r.prototype).map(p=>p.constructor),s=(t=Fh(r))!==null&&t!==void 0?t:[],u=[...i,...s].filter(p=>!a.has(p));for(let p of u)o.add(p);a.add(r),o.delete(r)}return[...a]},"findAllConstituentClasses"),qh=n((...e)=>{let t=Uh(...e).map(a=>ur.get(a)).filter(a=>!!a);return t.length==0?{}:t.length==1?t[0]:t.reduce((a,o)=>mu(a,o))},"deepDecoratorSearch"),Kh=n((...e)=>{let t=e.map(a=>Wh(a));return t.length===0?{}:t.length===1?t[0]:t.reduce((a,o)=>mu(a,o))},"directDecoratorSearch"),Wh=n(e=>{let t=ur.get(e);return t||(t={},ur.set(e,t)),t},"getDecoratorsForClass");function pu(...e){var t,a,o;let r=e.map(u=>u.prototype),i=Ea.initFunction;if(i!==null){let u=r.map(l=>l[i]).filter(l=>typeof l=="function"),p=n(function(...l){for(let h of u)h.apply(this,l)},"combinedInitFunction"),m={[i]:p};r.push(m)}function s(...u){for(let p of e)cu(this,new p(...u));i!==null&&typeof this[i]=="function"&&this[i].apply(this,u)}n(s,"MixedClass"),s.prototype=Ea.prototypeStrategy==="copy"?nu(r,s):$h(r,s),Object.setPrototypeOf(s,Ea.staticsStrategy==="copy"?nu(e,null,["prototype"]):uu(e,Function.prototype));let c=s;if(Ea.decoratorInheritance!=="none"){let u=Ea.decoratorInheritance==="deep"?qh(...e):Kh(...e);for(let p of(t=u?.class)!==null&&t!==void 0?t:[]){let m=p(c);m&&(c=m)}su((a=u?.static)!==null&&a!==void 0?a:{},c),su((o=u?.instance)!==null&&o!==void 0?o:{},c.prototype)}return Mh(c,e),c}n(pu,"Mixin");var su=n((e,t)=>{let a=e.property,o=e.method;if(a)for(let r in a)for(let i of a[r])i(t,r);if(o)for(let r in o)for(let i of o[r])i(t,r,Object.getOwnPropertyDescriptor(t,r))},"applyPropAndMethodDecorators");var dk=wt(hu(),1);var _u=Object.defineProperty,Gh=Object.getOwnPropertyDescriptor,Yh=Object.getOwnPropertyNames,Xh=Object.prototype.hasOwnProperty,U=n((e,t)=>{for(var a in t)_u(e,a,{get:t[a],enumerable:!0})},"__export"),fu=n((e,t,a,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Yh(t))!Xh.call(e,r)&&r!==a&&_u(e,r,{get:n(()=>t[r],"get"),enumerable:!(o=Gh(t,r))||o.enumerable});return e},"__copyProps"),Zh=n((e,t,a)=>(fu(e,t,"default"),a&&fu(a,t,"default")),"__reExport"),To={};U(To,{ADDR_BOUND:n(()=>Yu,"ADDR_BOUND"),API_VERSION:n(()=>Wu,"API_VERSION"),BaseUrl:n(()=>Ju,"BaseUrl"),FeeMarginPercentage:n(()=>tl,"FeeMarginPercentage"),IS_BROWSER:n(()=>Ru,"IS_BROWSER"),MASK_250:n(()=>Ku,"MASK_250"),MAX_STORAGE_ITEM_SIZE:n(()=>Gu,"MAX_STORAGE_ITEM_SIZE"),NetworkName:n(()=>Io,"NetworkName"),PRIME:n(()=>Tr,"PRIME"),RANGE_FELT:n(()=>fr,"RANGE_FELT"),RANGE_I128:n(()=>Xu,"RANGE_I128"),RANGE_U128:n(()=>Zu,"RANGE_U128"),RPC_DEFAULT_VERSION:n(()=>xa,"RPC_DEFAULT_VERSION"),RPC_NODES:n(()=>al,"RPC_NODES"),StarknetChainId:n(()=>Qu,"StarknetChainId"),TEXT_TO_FELT_MAX_LEN:n(()=>Sr,"TEXT_TO_FELT_MAX_LEN"),TRANSACTION_VERSION:n(()=>O.ETransactionVersion,"TRANSACTION_VERSION"),TransactionHashPrefix:n(()=>el,"TransactionHashPrefix"),UDC:n(()=>Ca,"UDC"),ZERO:n(()=>Ge,"ZERO")});var O={};U(O,{JRPC:n(()=>Jh,"JRPC"),RPCSPEC06:n(()=>q,"RPCSPEC06"),RPCSPEC07:n(()=>ra,"RPCSPEC07")});var Jh={},q={};U(q,{EBlockTag:n(()=>zu,"EBlockTag"),EDAMode:n(()=>Nu,"EDAMode"),EDataAvailabilityMode:n(()=>Ou,"EDataAvailabilityMode"),ESimulationFlag:n(()=>Au,"ESimulationFlag"),ETransactionExecutionStatus:n(()=>Iu,"ETransactionExecutionStatus"),ETransactionFinalityStatus:n(()=>Tu,"ETransactionFinalityStatus"),ETransactionStatus:n(()=>Su,"ETransactionStatus"),ETransactionType:n(()=>Cu,"ETransactionType"),ETransactionVersion:n(()=>Du,"ETransactionVersion"),ETransactionVersion2:n(()=>Bu,"ETransactionVersion2"),ETransactionVersion3:n(()=>Pu,"ETransactionVersion3"),Errors:n(()=>Qh,"Errors"),SPEC:n(()=>ef,"SPEC")});var Qh={},ef={},Cu=(e=>(e.DECLARE="DECLARE",e.DEPLOY="DEPLOY",e.DEPLOY_ACCOUNT="DEPLOY_ACCOUNT",e.INVOKE="INVOKE",e.L1_HANDLER="L1_HANDLER",e))(Cu||{}),Au=(e=>(e.SKIP_VALIDATE="SKIP_VALIDATE",e.SKIP_FEE_CHARGE="SKIP_FEE_CHARGE",e))(Au||{}),Su=(e=>(e.RECEIVED="RECEIVED",e.REJECTED="REJECTED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(Su||{}),Tu=(e=>(e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(Tu||{}),Iu=(e=>(e.SUCCEEDED="SUCCEEDED",e.REVERTED="REVERTED",e))(Iu||{}),zu=(e=>(e.PENDING="pending",e.LATEST="latest",e))(zu||{}),Ou=(e=>(e.L1="L1",e.L2="L2",e))(Ou||{}),Nu=(e=>(e[e.L1=0]="L1",e[e.L2=1]="L2",e))(Nu||{}),Du=(e=>(e.V0="0x0",e.V1="0x1",e.V2="0x2",e.V3="0x3",e.F0="0x100000000000000000000000000000000",e.F1="0x100000000000000000000000000000001",e.F2="0x100000000000000000000000000000002",e.F3="0x100000000000000000000000000000003",e))(Du||{}),Bu=(e=>(e.V0="0x0",e.V1="0x1",e.V2="0x2",e.F0="0x100000000000000000000000000000000",e.F1="0x100000000000000000000000000000001",e.F2="0x100000000000000000000000000000002",e))(Bu||{}),Pu=(e=>(e.V3="0x3",e.F3="0x100000000000000000000000000000003",e))(Pu||{});Zh(O,ra);var tf={};U(tf,{IS_BROWSER:n(()=>Ru,"IS_BROWSER"),addHexPrefix:n(()=>M,"addHexPrefix"),arrayBufferToString:n(()=>Lu,"arrayBufferToString"),atobUniversal:n(()=>Vu,"atobUniversal"),btoaUniversal:n(()=>Hu,"btoaUniversal"),buf2hex:n(()=>$u,"buf2hex"),calcByteLength:n(()=>Mu,"calcByteLength"),padLeft:n(()=>Fu,"padLeft"),pascalToSnake:n(()=>nf,"pascalToSnake"),removeHexPrefix:n(()=>ke,"removeHexPrefix"),sanitizeBytes:n(()=>Uu,"sanitizeBytes"),sanitizeHex:n(()=>qu,"sanitizeHex"),stringToArrayBuffer:n(()=>af,"stringToArrayBuffer"),utf8ToArray:n(()=>pt,"utf8ToArray")});var Ru=typeof window<"u",Ar="0";function Lu(e){return new Uint8Array(e).reduce((t,a)=>t+String.fromCharCode(a),"")}n(Lu,"arrayBufferToString");function pt(e){return new TextEncoder().encode(e)}n(pt,"utf8ToArray");function af(e){return pt(e)}n(af,"stringToArrayBuffer");function Vu(e){return Jo.decode(e)}n(Vu,"atobUniversal");function Hu(e){return Jo.encode(new Uint8Array(e))}n(Hu,"btoaUniversal");function $u(e){return e.reduce((t,a)=>t+a.toString(16).padStart(2,"0"),"")}n($u,"buf2hex");function ke(e){return e.replace(/^0x/i,"")}n(ke,"removeHexPrefix");function M(e){return`0x${ke(e)}`}n(M,"addHexPrefix");function of(e,t,a,o=Ar){let r=t-e.length,i=e;if(r>0){let s=o.repeat(r);i=a?s+e:e+s}return i}n(of,"padString");function Fu(e,t,a=Ar){return of(e,t,!0,a)}n(Fu,"padLeft");function Mu(e,t=8){let{length:a}=e,o=a%t;return o?(a-o)/t*t+t:a}n(Mu,"calcByteLength");function Uu(e,t=8,a=Ar){return Fu(e,Mu(e,t),a)}n(Uu,"sanitizeBytes");function qu(e){return e=ke(e),e=Uu(e,2),e&&(e=M(e)),e}n(qu,"sanitizeHex");var nf=n(e=>/[a-z]/.test(e)?e.split(/(?=[A-Z])/).join("_").toUpperCase():e,"pascalToSnake"),Sr=31,Ge=0n,Ku=2n**250n-1n,Wu=Ge,Tr=2n**251n+17n*2n**192n+1n,Gu=256n,Yu=2n**251n-Gu,Ir=n((e,t)=>({min:e,max:t}),"range"),fr=Ir(Ge,Tr-1n),Xu=Ir(-(2n**127n),2n**127n-1n),Zu=Ir(Ge,2n**128n-1n),Ju=(e=>(e.SN_MAIN="https://alpha-mainnet.starknet.io",e.SN_SEPOLIA="https://alpha-sepolia.starknet.io",e))(Ju||{}),Io=(e=>(e.SN_MAIN="SN_MAIN",e.SN_SEPOLIA="SN_SEPOLIA",e))(Io||{}),Qu=(e=>(e.SN_MAIN="0x534e5f4d41494e",e.SN_SEPOLIA="0x534e5f5345504f4c4941",e))(Qu||{}),el=(e=>(e.DECLARE="0x6465636c617265",e.DEPLOY="0x6465706c6f79",e.DEPLOY_ACCOUNT="0x6465706c6f795f6163636f756e74",e.INVOKE="0x696e766f6b65",e.L1_HANDLER="0x6c315f68616e646c6572",e))(el||{}),tl=(e=>(e[e.L1_BOUND_MAX_AMOUNT=50]="L1_BOUND_MAX_AMOUNT",e[e.L1_BOUND_MAX_PRICE_PER_UNIT=50]="L1_BOUND_MAX_PRICE_PER_UNIT",e[e.MAX_FEE=50]="MAX_FEE",e))(tl||{}),Ca={ADDRESS:"0x041a78e741e5af2fec34b695679bc6891742439f7afb8484ecd7766661ad02bf",ENTRYPOINT:"deployContract"},xa="v0_7",al={SN_MAIN:[`https://starknet-mainnet.public.blastapi.io/rpc/${xa}`,`https://free-rpc.nethermind.io/mainnet-juno/${xa}`],SN_SEPOLIA:[`https://starknet-sepolia.public.blastapi.io/rpc/${xa}`,`https://free-rpc.nethermind.io/sepolia-juno/${xa}`]},ol={};U(ol,{RpcChannel:n(()=>Og,"RpcChannel")});function rf(e,t=e.constructor){let{captureStackTrace:a}=Error;a&&a(e,t)}n(rf,"fixStack");function sf(e,t){let{setPrototypeOf:a}=Object;a?a(e,t):e.__proto__=t}n(sf,"fixProto");var cf=class extends Error{static{n(this,"CustomError")}name;constructor(e){super(e),Object.defineProperty(this,"name",{value:new.target.name,enumerable:!1,configurable:!0}),sf(this,new.target.prototype),rf(this)}},Ta=class extends cf{static{n(this,"LibraryError")}};var uf={};U(uf,{BlockStatus:n(()=>ll,"BlockStatus"),BlockTag:n(()=>Nr,"BlockTag"),EntryPointType:n(()=>rl,"EntryPointType"),Literal:n(()=>Or,"Literal"),RPC:n(()=>O,"RPC"),TransactionExecutionStatus:n(()=>ul,"TransactionExecutionStatus"),TransactionFinalityStatus:n(()=>cl,"TransactionFinalityStatus"),TransactionStatus:n(()=>sl,"TransactionStatus"),TransactionType:n(()=>il,"TransactionType"),TypedDataRevision:n(()=>L,"TypedDataRevision"),Uint:n(()=>zr,"Uint"),ValidateType:n(()=>nl,"ValidateType")});var nl=(e=>(e.DEPLOY="DEPLOY",e.CALL="CALL",e.INVOKE="INVOKE",e))(nl||{}),zr=(e=>(e.u8="core::integer::u8",e.u16="core::integer::u16",e.u32="core::integer::u32",e.u64="core::integer::u64",e.u128="core::integer::u128",e.u256="core::integer::u256",e.u512="core::integer::u512",e))(zr||{}),Or=(e=>(e.ClassHash="core::starknet::class_hash::ClassHash",e.ContractAddress="core::starknet::contract_address::ContractAddress",e.Secp256k1Point="core::starknet::secp256k1::Secp256k1Point",e))(Or||{}),rl=(e=>(e.EXTERNAL="EXTERNAL",e.L1_HANDLER="L1_HANDLER",e.CONSTRUCTOR="CONSTRUCTOR",e))(rl||{}),il=(e=>(e.DECLARE="DECLARE",e.DEPLOY="DEPLOY",e.DEPLOY_ACCOUNT="DEPLOY_ACCOUNT",e.INVOKE="INVOKE_FUNCTION",e))(il||{}),sl=(e=>(e.NOT_RECEIVED="NOT_RECEIVED",e.RECEIVED="RECEIVED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e.REJECTED="REJECTED",e.REVERTED="REVERTED",e))(sl||{}),cl=(e=>(e.NOT_RECEIVED="NOT_RECEIVED",e.RECEIVED="RECEIVED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(cl||{}),ul=(e=>(e.REJECTED="REJECTED",e.REVERTED="REVERTED",e.SUCCEEDED="SUCCEEDED",e))(ul||{}),ll=(e=>(e.PENDING="PENDING",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.REJECTED="REJECTED",e))(ll||{}),Nr=(e=>(e.PENDING="pending",e.LATEST="latest",e))(Nr||{});function z(e,t){if(!e)throw new Error(t||"Assertion failure")}n(z,"assert");var lf={};U(lf,{addPercent:n(()=>Aa,"addPercent"),assertInRange:n(()=>pl,"assertInRange"),bigNumberishArrayToDecimalStringArray:n(()=>dl,"bigNumberishArrayToDecimalStringArray"),bigNumberishArrayToHexadecimalStringArray:n(()=>hl,"bigNumberishArrayToHexadecimalStringArray"),cleanHex:n(()=>Ia,"cleanHex"),getDecimalString:n(()=>mf,"getDecimalString"),getHexString:n(()=>fl,"getHexString"),getHexStringArray:n(()=>Pr,"getHexStringArray"),hexToBytes:n(()=>Rr,"hexToBytes"),hexToDecimalString:n(()=>ml,"hexToDecimalString"),isBigInt:n(()=>ft,"isBigInt"),isBoolean:n(()=>Lr,"isBoolean"),isHex:n(()=>_e,"isHex"),isNumber:n(()=>Zt,"isNumber"),isStringWholeNumber:n(()=>ta,"isStringWholeNumber"),toBigInt:n(()=>K,"toBigInt"),toCairoBool:n(()=>gl,"toCairoBool"),toHex:n(()=>y,"toHex"),toHexString:n(()=>Dr,"toHexString"),toStorageKey:n(()=>Br,"toStorageKey")});function _e(e){return/^0x[0-9a-f]*$/i.test(e)}n(_e,"isHex");function K(e){return BigInt(e)}n(K,"toBigInt");function ft(e){return typeof e=="bigint"}n(ft,"isBigInt");function y(e){return M(K(e).toString(16))}n(y,"toHex");var Dr=y;function Br(e){return M(K(e).toString(16).padStart(64,"0"))}n(Br,"toStorageKey");function ml(e){return BigInt(M(e)).toString(10)}n(ml,"hexToDecimalString");function Ia(e){return e.toLowerCase().replace(/^(0x)0+/,"$1")}n(Ia,"cleanHex");function pl(e,t,a,o=""){let r=o===""?"invalid length":`invalid ${o} length`,i=BigInt(e),s=BigInt(t),c=BigInt(a);z(i>=s&&i<=c,`Message not signable, ${r}.`)}n(pl,"assertInRange");function dl(e){return e.map(t=>K(t).toString(10))}n(dl,"bigNumberishArrayToDecimalStringArray");function hl(e){return e.map(t=>y(t))}n(hl,"bigNumberishArrayToHexadecimalStringArray");function ta(e){return/^\d+$/.test(e)}n(ta,"isStringWholeNumber");function mf(e){if(_e(e))return ml(e);if(ta(e))return e;throw new Error(`${e} needs to be a hex-string or whole-number-string`)}n(mf,"getDecimalString");function fl(e){if(_e(e))return e;if(ta(e))return Dr(e);throw new Error(`${e} needs to be a hex-string or whole-number-string`)}n(fl,"getHexString");function Pr(e){return e.map(fl)}n(Pr,"getHexStringArray");function gl(e){return(+e).toString()}n(gl,"toCairoBool");function Rr(e){if(!_e(e))throw new Error(`${e} needs to be a hex-string`);let t=ke(e);return t.length%2!==0&&(t=`0${t}`),zi(t)}n(Rr,"hexToBytes");function Aa(e,t){let a=BigInt(e);return a+a*BigInt(t)/100n}n(Aa,"addPercent");function Zt(e){return typeof e=="number"}n(Zt,"isNumber");function Lr(e){return typeof e=="boolean"}n(Lr,"isBoolean");var pf={};U(pf,{getSelector:n(()=>zo,"getSelector"),getSelectorFromName:n(()=>J,"getSelectorFromName"),keccakBn:n(()=>kl,"keccakBn"),starknetKeccak:n(()=>Vr,"starknetKeccak")});function kl(e){let t=ke(y(BigInt(e))),a=t.length%2===0?t:`0${t}`;return M(Te(Rr(M(a))).toString(16))}n(kl,"keccakBn");function df(e){return M(Te(pt(e)).toString(16))}n(df,"keccakHex");function Vr(e){return BigInt(df(e))&Ku}n(Vr,"starknetKeccak");function J(e){return y(Vr(e))}n(J,"getSelectorFromName");function zo(e){return _e(e)?e:ta(e)?Dr(e):J(e)}n(zo,"getSelector");var hf={};U(hf,{decodeShortString:n(()=>zt,"decodeShortString"),encodeShortString:n(()=>se,"encodeShortString"),isASCII:n(()=>Hr,"isASCII"),isDecimalString:n(()=>$r,"isDecimalString"),isLongText:n(()=>Fr,"isLongText"),isShortString:n(()=>Pa,"isShortString"),isShortText:n(()=>ff,"isShortText"),isString:n(()=>ee,"isString"),isText:n(()=>Ra,"isText"),splitLongString:n(()=>Mr,"splitLongString")});function Hr(e){return/^[\x00-\x7F]*$/.test(e)}n(Hr,"isASCII");function Pa(e){return e.length<=Sr}n(Pa,"isShortString");function $r(e){return/^[0-9]*$/i.test(e)}n($r,"isDecimalString");function ee(e){return typeof e=="string"}n(ee,"isString");function Ra(e){return ee(e)&&!_e(e)&&!ta(e)}n(Ra,"isText");var ff=n(e=>Ra(e)&&Pa(e),"isShortText"),Fr=n(e=>Ra(e)&&!Pa(e),"isLongText");function Mr(e){let t=RegExp(`[^]{1,${Sr}}`,"g");return e.match(t)||[]}n(Mr,"splitLongString");function se(e){if(!Hr(e))throw new Error(`${e} is not an ASCII string`);if(!Pa(e))throw new Error(`${e} is too long`);return M(e.replace(/./g,t=>t.charCodeAt(0).toString(16)))}n(se,"encodeShortString");function zt(e){if(!Hr(e))throw new Error(`${e} is not an ASCII string`);if(_e(e))return ke(e).replace(/.{2}/g,t=>String.fromCharCode(parseInt(t,16)));if($r(e))return zt("0X".concat(BigInt(e).toString(16)));throw new Error(`${e} is not Hex or decimal`)}n(zt,"decodeShortString");var gf={};U(gf,{byteArrayFromString:n(()=>Oo,"byteArrayFromString"),stringFromByteArray:n(()=>yl,"stringFromByteArray")});function yl(e){let t=BigInt(e.pending_word)===0n?"":zt(y(e.pending_word));return e.data.reduce((a,o)=>{let r=BigInt(o)===0n?"":zt(y(o));return a+r},"")+t}n(yl,"stringFromByteArray");function Oo(e){let t=Mr(e),a=t[t.length-1],o=t.map(se),[r,i]=a===void 0||a.length===31?["0x00",0]:[o.pop(),a.length];return{data:o.length===0?[]:o,pending_word:r,pending_word_len:i}}n(Oo,"byteArrayFromString");var bl={};U(bl,{felt:n(()=>we,"felt"),getAbiContractVersion:n(()=>Wr,"getAbiContractVersion"),getArrayType:n(()=>He,"getArrayType"),isCairo1Abi:n(()=>Kr,"isCairo1Abi"),isCairo1Type:n(()=>ht,"isCairo1Type"),isLen:n(()=>Ot,"isLen"),isTypeArray:n(()=>dt,"isTypeArray"),isTypeBool:n(()=>Bo,"isTypeBool"),isTypeByteArray:n(()=>Po,"isTypeByteArray"),isTypeBytes31:n(()=>qr,"isTypeBytes31"),isTypeContractAddress:n(()=>Cf,"isTypeContractAddress"),isTypeEnum:n(()=>Nt,"isTypeEnum"),isTypeEthAddress:n(()=>vl,"isTypeEthAddress"),isTypeFelt:n(()=>Jt,"isTypeFelt"),isTypeLiteral:n(()=>Ur,"isTypeLiteral"),isTypeNamedTuple:n(()=>jl,"isTypeNamedTuple"),isTypeNonZero:n(()=>Dt,"isTypeNonZero"),isTypeOption:n(()=>No,"isTypeOption"),isTypeResult:n(()=>Do,"isTypeResult"),isTypeSecp256k1Point:n(()=>Ro,"isTypeSecp256k1Point"),isTypeStruct:n(()=>La,"isTypeStruct"),isTypeTuple:n(()=>gt,"isTypeTuple"),isTypeUint:n(()=>za,"isTypeUint"),isTypeUint256:n(()=>_f,"isTypeUint256"),tuple:n(()=>Qt,"tuple"),uint256:n(()=>gr,"uint256"),uint512:n(()=>Af,"uint512")});function Tt(e){if(ft(e)||Number.isInteger(e))return e.toString();if(ee(e)){if(_e(e))return BigInt(e).toString();if(Ra(e)){if(!Pa(e))throw new Error(`${e} is a long string > 31 chars. Please split it into an array of short strings.`);return BigInt(se(e)).toString()}if(ta(e))return e}if(Lr(e))return`${+e}`;throw new Error(`${e} can't be computed by felt()`)}n(Tt,"CairoFelt");var Gt=(1n<<128n)-1n,wl=(1n<<256n)-1n,kf=0n,yf=340282366920938463463374607431768211455n,bf=340282366920938463463374607431768211455n,wf=0n,jf=0n,Z=class Kt{static{n(this,"_CairoUint256")}low;high;static abiSelector="core::integer::u256";constructor(...t){if(typeof t[0]=="object"&&t.length===1&&"low"in t[0]&&"high"in t[0]){let a=Kt.validateProps(t[0].low,t[0].high);this.low=a.low,this.high=a.high}else if(t.length===1){let a=Kt.validate(t[0]);this.low=a&Gt,this.high=a>>128n}else if(t.length===2){let a=Kt.validateProps(t[0],t[1]);this.low=a.low,this.high=a.high}else throw Error("Incorrect constructor parameters")}static validate(t){let a=BigInt(t);if(a<kf)throw Error("bigNumberish is smaller than UINT_256_MIN");if(a>wl)throw new Error("bigNumberish is bigger than UINT_256_MAX");return a}static validateProps(t,a){let o=BigInt(t),r=BigInt(a);if(o<wf||o>yf)throw new Error("low is out of range UINT_256_LOW_MIN - UINT_256_LOW_MAX");if(r<jf||r>bf)throw new Error("high is out of range UINT_256_HIGH_MIN - UINT_256_HIGH_MAX");return{low:o,high:r}}static is(t){try{Kt.validate(t)}catch{return!1}return!0}static isAbiType(t){return t===Kt.abiSelector}toBigInt(){return(this.high<<128n)+this.low}toUint256HexString(){return{low:M(this.low.toString(16)),high:M(this.high.toString(16))}}toUint256DecimalString(){return{low:this.low.toString(10),high:this.high.toString(10)}}toApiRequest(){return[Tt(this.low),Tt(this.high)]}},vf=(1n<<512n)-1n,Ef=0n,xf=0n,pe=class Wt{static{n(this,"_CairoUint512")}limb0;limb1;limb2;limb3;static abiSelector="core::integer::u512";constructor(...t){if(typeof t[0]=="object"&&t.length===1&&"limb0"in t[0]&&"limb1"in t[0]&&"limb2"in t[0]&&"limb3"in t[0]){let a=Wt.validateProps(t[0].limb0,t[0].limb1,t[0].limb2,t[0].limb3);this.limb0=a.limb0,this.limb1=a.limb1,this.limb2=a.limb2,this.limb3=a.limb3}else if(t.length===1){let a=Wt.validate(t[0]);this.limb0=a&Gt,this.limb1=(a&Gt<<128n)>>128n,this.limb2=(a&Gt<<256n)>>256n,this.limb3=a>>384n}else if(t.length===4){let a=Wt.validateProps(t[0],t[1],t[2],t[3]);this.limb0=a.limb0,this.limb1=a.limb1,this.limb2=a.limb2,this.limb3=a.limb3}else throw Error("Incorrect Uint512 constructor parameters")}static validate(t){let a=BigInt(t);if(a<Ef)throw Error("bigNumberish is smaller than UINT_512_MIN.");if(a>vf)throw Error("bigNumberish is bigger than UINT_512_MAX.");return a}static validateProps(t,a,o,r){let i=BigInt(t),s=BigInt(a),c=BigInt(o),u=BigInt(r);return[i,s,c,u].forEach((p,m)=>{if(p<xf||p>Gt)throw Error(`limb${m} is not in the range of a u128 number`)}),{limb0:i,limb1:s,limb2:c,limb3:u}}static is(t){try{Wt.validate(t)}catch{return!1}return!0}static isAbiType(t){return t===Wt.abiSelector}toBigInt(){return(this.limb3<<384n)+(this.limb2<<256n)+(this.limb1<<128n)+this.limb0}toUint512HexString(){return{limb0:M(this.limb0.toString(16)),limb1:M(this.limb1.toString(16)),limb2:M(this.limb2.toString(16)),limb3:M(this.limb3.toString(16))}}toUint512DecimalString(){return{limb0:this.limb0.toString(10),limb1:this.limb1.toString(10),limb2:this.limb2.toString(10),limb3:this.limb3.toString(10)}}toApiRequest(){return[Tt(this.limb0),Tt(this.limb1),Tt(this.limb2),Tt(this.limb3)]}},Ot=n(e=>/_len$/.test(e),"isLen"),Jt=n(e=>e==="felt"||e==="core::felt252","isTypeFelt"),dt=n(e=>/\*/.test(e)||e.startsWith("core::array::Array::")||e.startsWith("core::array::Span::"),"isTypeArray"),gt=n(e=>/^\(.*\)$/i.test(e),"isTypeTuple"),jl=n(e=>/\(.*\)/i.test(e)&&e.includes(":"),"isTypeNamedTuple"),La=n((e,t)=>e in t,"isTypeStruct"),Nt=n((e,t)=>e in t,"isTypeEnum"),No=n(e=>e.startsWith("core::option::Option::"),"isTypeOption"),Do=n(e=>e.startsWith("core::result::Result::"),"isTypeResult"),za=n(e=>Object.values(zr).includes(e),"isTypeUint"),_f=n(e=>Z.isAbiType(e),"isTypeUint256"),Ur=n(e=>Object.values(Or).includes(e),"isTypeLiteral"),Bo=n(e=>e==="core::bool","isTypeBool"),Cf=n(e=>e==="core::starknet::contract_address::ContractAddress","isTypeContractAddress"),vl=n(e=>e==="core::starknet::eth_address::EthAddress","isTypeEthAddress"),qr=n(e=>e==="core::bytes_31::bytes31","isTypeBytes31"),Po=n(e=>e==="core::byte_array::ByteArray","isTypeByteArray"),Ro=n(e=>e==="core::starknet::secp256k1::Secp256k1Point","isTypeSecp256k1Point"),ht=n(e=>e.includes("::"),"isCairo1Type"),He=n(e=>ht(e)?e.substring(e.indexOf("<")+1,e.lastIndexOf(">")):e.replace("*",""),"getArrayType");function Kr(e){let{cairo:t}=Wr(e);if(t===void 0)throw Error("Unable to determine Cairo version");return t==="1"}n(Kr,"isCairo1Abi");function Dt(e){return e.startsWith("core::zeroable::NonZero::")}n(Dt,"isTypeNonZero");function Wr(e){if(e.find(o=>o.type==="interface"))return{cairo:"1",compiler:"2"};let t=e.find(o=>o.type==="function"&&(o.inputs.length||o.outputs.length));if(!t)return{cairo:void 0,compiler:void 0};let a=t.inputs.length?t.inputs:t.outputs;return ht(a[0].type)?{cairo:"1",compiler:"1"}:{cairo:"0",compiler:"0"}}n(Wr,"getAbiContractVersion");var gr=n(e=>new Z(e).toUint256DecimalString(),"uint256"),Af=n(e=>new pe(e).toUint512DecimalString(),"uint512"),Qt=n((...e)=>({...e}),"tuple");function we(e){return Tt(e)}n(we,"felt");var Va=class{static{n(this,"CairoCustomEnum")}variant;constructor(e){let t=Object.values(e);if(t.length===0)throw new Error("This Enum must have at least 1 variant");if(t.filter(o=>typeof o<"u").length!==1)throw new Error("This Enum must have exactly one active variant");this.variant=e}unwrap(){let t=Object.entries(this.variant).find(a=>typeof a[1]<"u");if(!(typeof t>"u"))return t[1]}activeVariant(){let t=Object.entries(this.variant).find(a=>typeof a[1]<"u");return typeof t>"u"?"":t[0]}},El=(e=>(e[e.Some=0]="Some",e[e.None=1]="None",e))(El||{}),kr=class{static{n(this,"CairoOption")}Some;None;constructor(e,t){if(!(e in El))throw new Error("Wrong variant : should be CairoOptionVariant.Some or .None.");if(e===0){if(typeof t>"u")throw new Error('The creation of a Cairo Option with "Some" variant needs a content as input.');this.Some=t,this.None=void 0}else this.Some=void 0,this.None=!0}unwrap(){if(!this.None)return this.Some}isSome(){return!(typeof this.Some>"u")}isNone(){return this.None===!0}},xl=(e=>(e[e.Ok=0]="Ok",e[e.Err=1]="Err",e))(xl||{}),yr=class{static{n(this,"CairoResult")}Ok;Err;constructor(e,t){if(!(e in xl))throw new Error("Wrong variant : should be CairoResultVariant.Ok or .Err.");e===0?(this.Ok=t,this.Err=void 0):(this.Ok=void 0,this.Err=t)}unwrap(){if(typeof this.Ok<"u")return this.Ok;if(typeof this.Err<"u")return this.Err;throw new Error("Both Result.Ok and .Err are undefined. Not authorized.")}isOk(){return!(typeof this.Ok>"u")}isErr(){return!(typeof this.Err>"u")}},lr={isBN:n((e,t,a)=>{if(!ft(e[a]))throw new Error(`Data and formatter mismatch on ${a}:${t[a]}, expected response data ${a}:${e[a]} to be BN instead it is ${typeof e[a]}`)},"isBN"),unknown:n((e,t,a)=>{throw new Error(`Unhandled formatter type on ${a}:${t[a]} for data ${a}:${e[a]}`)},"unknown")};function vo(e,t,a){return Object.entries(e).reduce((o,[r,i])=>{let s=a??t[r];if(!(r in t)&&!a)return o[r]=i,o;if(s==="string"){if(Array.isArray(e[r])){let c=vo(e[r],e[r].map(u=>s));return o[r]=Object.values(c).join(""),o}return lr.isBN(e,t,r),o[r]=zt(i),o}if(s==="number")return lr.isBN(e,t,r),o[r]=Number(i),o;if(typeof s=="function")return o[r]=s(i),o;if(Array.isArray(s)){let c=vo(e[r],s,s[0]);return o[r]=Object.values(c),o}return typeof s=="object"?(o[r]=vo(e[r],s),o):(lr.unknown(e,t,r),o)},{})}n(vo,"formatter");var Sf=class{static{n(this,"AbiParser1")}abi;constructor(e){this.abi=e}methodInputsLength(e){return e.inputs.reduce((t,a)=>Ot(a.name)?t:t+1,0)}getMethod(e){return this.abi.find(t=>t.name===e)}getLegacyFormat(){return this.abi}},Tf=class{static{n(this,"AbiParser2")}abi;constructor(e){this.abi=e}methodInputsLength(e){return e.inputs.length}getMethod(e){return this.abi.find(a=>a.type==="interface").items.find(a=>a.name===e)}getLegacyFormat(){return this.abi.flatMap(e=>e.type==="interface"?e.items:e)}};function _l(e){let t=If(e);if(t===0||t===1)return new Sf(e);if(t===2)return new Tf(e);throw Error(`Unsupported ABI version ${t}`)}n(_l,"createAbiParser");function If(e){return e.find(t=>t.type==="interface")?2:Kr(e)?1:0}n(If,"getAbiVersion");function gu(e,t,a){return e==="constructor"&&!a&&!t.length}n(gu,"isNoConstructorValid");function zf(e){let t=e.substring(0,e.indexOf(":")),a=e.substring(t.length+1);return{name:t,type:a}}n(zf,"parseNamedTuple");function Of(e){if(!e.includes("("))return{subTuple:[],result:e};let t=[],a="",o=0;for(;o<e.length;){if(e[o]==="("){let r=1,i=o;for(o++;r;)e[o]===")"&&r--,e[o]==="("&&r++,o++;t.push(e.substring(i,o)),a+=" ",o--}else a+=e[o];o++}return{subTuple:t,result:a}}n(Of,"parseSubTuple");function Nf(e){let t=e.replace(/\s/g,"").slice(1,-1),{subTuple:a,result:o}=Of(t),r=o.split(",").map(i=>a.length?i.replace(" ",a.shift()):i);return jl(e)&&(r=r.reduce((i,s)=>i.concat(zf(s)),[])),r}n(Nf,"extractCairo0Tuple");function ku(e,t,a){for(let o=0,r=0;o<e.length;o++)if(e[o]===t)r++;else if(e[o]===a&&--r===0)return o;return Number.POSITIVE_INFINITY}n(ku,"getClosureOffset");function Df(e){let t=e.slice(1,-1),a=[],o=0,r;for(;o<t.length;){switch(!0){case t[o]==="(":{r=o+ku(t.slice(o),"(",")")+1;break}case(t.startsWith("core::result::Result::<",o)||t.startsWith("core::array::Array::<",o)||t.startsWith("core::option::Option::<",o)):{r=o+ku(t.slice(o),"<",">")+1;break}default:{let i=t.indexOf(",",o);r=i!==-1?i:Number.POSITIVE_INFINITY}}a.push(t.slice(o,r)),o=r+2}return a}n(Df,"extractCairo1Tuple");function Gr(e){return ht(e)?Df(e):Nf(e)}n(Gr,"extractTupleMemberTypes");function Bf(e){return Error(`Your object includes the property : ${e}, containing an Uint256 object without the 'low' and 'high' keys.`)}n(Bf,"errorU256");function Pf(e){return Error(`Your object includes the property : ${e}, containing an Uint512 object without the 'limb0' to 'limb3' keys.`)}n(Pf,"errorU512");function Rf(e,t,a,o){let r=n((m,l)=>{if(dt(l))return s(m,l);if(Nt(l,o)){let h=o[l];return u(m,h)}if(gt(l))return c(m,l);if(vl(l)||Dt(l)||Po(l)||Ro(l))return m;if(Z.isAbiType(l)){let h=m;if(typeof h!="object")return h;if(!("low"in h&&"high"in h))throw Bf(l);return{low:h.low,high:h.high}}if(pe.isAbiType(l)){let h=m;if(typeof h!="object")return h;if(!["limb0","limb1","limb2","limb3"].every(g=>g in h))throw Pf(l);return{limb0:h.limb0,limb1:h.limb1,limb2:h.limb2,limb3:h.limb3}}if(La(l,a)){let h=a[l].members;return i(m,h)}return m},"orderInput"),i=n((m,l)=>l.reduce((g,f)=>{let d=n(k=>Object.defineProperty(g,f.name,{enumerable:!0,value:k??m[f.name]}),"setProperty");if(m[f.name]==="undefined"&&(ht(f.type)||!Ot(f.name)))throw Error(`Your object needs a property with key : ${f.name} .`);return d(r(m[f.name],f.type)),g},{}),"orderStruct");function s(m,l){let h=He(l);return ee(m)?m:m.map(g=>r(g,h))}n(s,"orderArray");function c(m,l){return Gr(l).reduce((f,d,k)=>{let b=Object.keys(m),v=n(T=>Object.defineProperty(f,k.toString(),{enumerable:!0,value:T??m[b[k]]}),"setProperty"),E=d?.type?d.type:d;return v(r(m[b[k]],E)),f},{})}n(c,"orderTuple");let u=n((m,l)=>{if(Do(l.name)){let d=m,k=l.name.substring(l.name.indexOf("<")+1,l.name.lastIndexOf(",")),b=l.name.substring(l.name.indexOf(",")+1,l.name.lastIndexOf(">"));return d.isOk()?new yr(0,r(m.unwrap(),k)):new yr(1,r(m.unwrap(),b))}if(No(l.name)){let d=m,k=l.name.substring(l.name.indexOf("<")+1,l.name.lastIndexOf(">"));return d.isSome()?new kr(0,r(d.unwrap(),k)):new kr(1,{})}let h=m,f=Object.entries(h.variant).map(d=>{if(typeof d[1]>"u")return d;let k=l.type.substring(l.type.lastIndexOf("<")+1,l.type.lastIndexOf(">"));return k==="()"?d:[d[0],r(h.unwrap(),k)]});return new Va(Object.fromEntries(f))},"orderEnum");return t.reduce((m,l)=>{let h=n(g=>Object.defineProperty(m,l.name,{enumerable:!0,value:g}),"setProperty");return Ot(l.name)&&!ht(l.type)||h(r(e[l.name],l.type)),m},{})}n(Rf,"orderPropsByAbi");function Xt(e,t){switch(!0){case Z.isAbiType(e):return new Z(t).toApiRequest();case pe.isAbiType(e):return new pe(t).toApiRequest();case qr(e):return se(t.toString());case Ro(e):{let a=ke(y(t)).padStart(128,"0"),o=gr(M(a.slice(-64))),r=gr(M(a.slice(0,-64)));return[we(r.low),we(r.high),we(o.low),we(o.high)]}default:return we(t)}}n(Xt,"parseBaseTypes");function Lf(e,t){let a=Gr(t),o=Object.values(e);if(o.length!==a.length)throw Error(`ParseTuple: provided and expected abi tuple size do not match.
27
+ `+l+"}":"}",d}function p(m,l){return typeof l<"u"&&typeof l!="function"&&typeof l!="symbol"}}n(po,"stringify");function yd(e){if(typeof e=="number")return" ".repeat(e);if(typeof e=="string"&&e!=="")return e}n(yd,"resolveSpace");var go=na(Jc(),1),tu=na(eu(),1);function Ch(e,t){let a=new URL(t).hostname,o=new URL(e).hostname;return a===o||a.endsWith(`.${o}`)}n(Ch,"isDomainOrSubdomain");var Ah=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]);function Sh(e){let t=e.split(/[,\s]+/),a="";for(let o of t)o!==""&&Ah.has(o)&&(a=o);return a}n(Sh,"parseReferrerPolicy");function Th(e,t){}n(Th,"doNothing");function Ih(e,t){e.headers.delete(t)}n(Ih,"callDeleteMethod");function zh(e,t){let a=e.headers;for(let o of Object.keys(a))o.toLowerCase()===t&&delete a[o]}n(zh,"deleteFromObject");function Oh(e){return e.headers==null?Th:typeof e.headers.delete=="function"?Ih:zh}n(Oh,"identifyDeleteHeader");var Nh=new Set([301,302,303,307,308]);function Dh(e){return Nh.has(e)}n(Dh,"isRedirect");async function Bh(e,t,a){switch(t.redirect??"follow"){case"error":throw new TypeError(`URI requested responded with a redirect and redirect mode is set to error: ${a.url}`);case"manual":return a;case"follow":break;default:throw new TypeError(`Invalid redirect option: ${t.redirect}`)}let o=a.headers.get("location");if(o===null)return a;let r=a.url,i=new URL(o,r).toString(),s=t.redirectCount??0,c=t.maxRedirect??20;if(s>=c)throw new TypeError(`Reached maximum redirect of ${c} for URL: ${r}`);t={...t,redirectCount:s+1};let u=Oh(t);if(!Ch(r,i))for(let l of["authorization","www-authenticate","cookie","cookie2"])u(t,l);let p=t.body,m=t.body;if(a.status!==303&&t.body!=null&&(typeof p.pipe=="function"||typeof m.pipeTo=="function"))throw new TypeError("Cannot follow redirect with body being a readable stream");return(a.status===303||(a.status===301||a.status===302)&&t.method==="POST")&&(t.method="GET",t.body=void 0,u(t,"content-length")),a.headers.has("referrer-policy")&&(t.referrerPolicy=Sh(a.headers.get("referrer-policy"))),await e(i,t)}n(Bh,"handleRedirect");function Ph(e,t,a){if(a==="")return t;let o=e,r=t.headers;return o.headers&&typeof o.headers.append=="function"?o.headers.append("cookie",a):r&&typeof r.append=="function"?r.append("cookie",a):t={...t,headers:{...t.headers,cookie:a}},t}n(Ph,"addCookiesToRequest");function Rh(e){let t=e.headers;if(typeof t.getAll=="function")return t.getAll("set-cookie");if(typeof t.raw=="function"){let o=t.raw();return Array.isArray(o["set-cookie"])?o["set-cookie"]:[]}let a=e.headers.get("set-cookie");return a!==null?(0,tu.splitCookiesString)(a):[]}n(Rh,"getCookiesFromResponse");function ir(e,t,a=!0){let o=e,r=t??new go.CookieJar;async function i(s,c){let u=c??{};c={...c,redirect:"manual"};let p=typeof s=="string"?s:s.url??s.href,m=await r.getCookieString(p);c=Ph(s,c,m);let l=await o(s,c),h=Rh(l);return await Promise.all(h.map(async g=>await r.setCookie(g,l.url,{ignoreError:a}))),(c.redirectCount??0)>0&&Object.defineProperty(l,"redirected",{value:!0}),Dh(l.status)?await Bh(i,u,l):l}return n(i,"fetchCookieWrapper"),i.toughCookie=go,i}n(ir,"fetchCookie");ir.toughCookie=go;var Gl=na(au(),1);var su=n((e,t,a=[])=>{let o=Object.getOwnPropertyDescriptors(t);for(let r of a)delete o[r];Object.defineProperties(e,o)},"copyProps"),Ut=n((e,t=[e])=>{let a=Object.getPrototypeOf(e);return a===null?t:Ut(a,[...t,a])},"protoChain"),Lh=n((...e)=>{if(e.length===0)return;let t,a=e.map(o=>Ut(o));for(;a.every(o=>o.length>0);){let o=a.map(i=>i.pop()),r=o[0];if(o.every(i=>i===r))t=r;else break}return t},"nearestCommonProto"),ou=n((e,t,a=[])=>{var o;let r=(o=Lh(...e))!==null&&o!==void 0?o:Object.prototype,i=Object.create(r),s=Ut(r);for(let c of e){let u=Ut(c);for(let p=u.length-1;p>=0;p--){let m=u[p];s.indexOf(m)===-1&&(su(i,m,["constructor",...a]),s.push(m))}}return i.constructor=t,i},"hardMixProtos"),cr=n(e=>e.filter((t,a)=>e.indexOf(t)==a),"unique"),yo=n((e,t)=>{let a=t.map(i=>Ut(i)),o=0,r=!0;for(;r;){r=!1;for(let i=t.length-1;i>=0;i--){let s=a[i][o];if(s!=null&&(r=!0,Object.getOwnPropertyDescriptor(s,e)!=null))return a[i][0]}o++}},"getIngredientWithProp"),cu=n((e,t=Object.prototype)=>new Proxy({},{getPrototypeOf(){return t},setPrototypeOf(){throw Error("Cannot set prototype of Proxies created by ts-mixer")},getOwnPropertyDescriptor(a,o){return Object.getOwnPropertyDescriptor(yo(o,e)||{},o)},defineProperty(){throw new Error("Cannot define new properties on Proxies created by ts-mixer")},has(a,o){return yo(o,e)!==void 0||t[o]!==void 0},get(a,o){return(yo(o,e)||t)[o]},set(a,o,r){let i=yo(o,e);if(i===void 0)throw new Error("Cannot set new properties on Proxies created by ts-mixer");return i[o]=r,!0},deleteProperty(){throw new Error("Cannot delete properties on Proxies created by ts-mixer")},ownKeys(){return e.map(Object.getOwnPropertyNames).reduce((a,o)=>o.concat(a.filter(r=>o.indexOf(r)<0)))}}),"proxyMix"),Vh=n((e,t)=>cu([...e,{constructor:t}]),"softMixProtos"),Ea={initFunction:null,staticsStrategy:"copy",prototypeStrategy:"copy",decoratorInheritance:"deep"},uu=new WeakMap,Hh=n(e=>uu.get(e),"getMixinsForClass"),$h=n((e,t)=>uu.set(e,t),"registerMixins");var nu=n((e,t)=>{var a,o;let r=cr([...Object.getOwnPropertyNames(e),...Object.getOwnPropertyNames(t)]),i={};for(let s of r)i[s]=cr([...(a=e?.[s])!==null&&a!==void 0?a:[],...(o=t?.[s])!==null&&o!==void 0?o:[]]);return i},"mergeObjectsOfDecorators"),ru=n((e,t)=>{var a,o,r,i;return{property:nu((a=e?.property)!==null&&a!==void 0?a:{},(o=t?.property)!==null&&o!==void 0?o:{}),method:nu((r=e?.method)!==null&&r!==void 0?r:{},(i=t?.method)!==null&&i!==void 0?i:{})}},"mergePropertyAndMethodDecorators"),lu=n((e,t)=>{var a,o,r,i,s,c;return{class:cr([...(a=e?.class)!==null&&a!==void 0?a:[],...(o=t?.class)!==null&&o!==void 0?o:[]]),static:ru((r=e?.static)!==null&&r!==void 0?r:{},(i=t?.static)!==null&&i!==void 0?i:{}),instance:ru((s=e?.instance)!==null&&s!==void 0?s:{},(c=t?.instance)!==null&&c!==void 0?c:{})}},"mergeDecorators"),ur=new Map,Fh=n((...e)=>{var t;let a=new Set,o=new Set([...e]);for(;o.size>0;)for(let r of o){let i=Ut(r.prototype).map(p=>p.constructor),s=(t=Hh(r))!==null&&t!==void 0?t:[],u=[...i,...s].filter(p=>!a.has(p));for(let p of u)o.add(p);a.add(r),o.delete(r)}return[...a]},"findAllConstituentClasses"),Mh=n((...e)=>{let t=Fh(...e).map(a=>ur.get(a)).filter(a=>!!a);return t.length==0?{}:t.length==1?t[0]:t.reduce((a,o)=>lu(a,o))},"deepDecoratorSearch"),Uh=n((...e)=>{let t=e.map(a=>qh(a));return t.length===0?{}:t.length===1?t[0]:t.reduce((a,o)=>lu(a,o))},"directDecoratorSearch"),qh=n(e=>{let t=ur.get(e);return t||(t={},ur.set(e,t)),t},"getDecoratorsForClass");function mu(...e){var t,a,o;let r=e.map(u=>u.prototype),i=Ea.initFunction;if(i!==null){let u=r.map(l=>l[i]).filter(l=>typeof l=="function"),p=n(function(...l){for(let h of u)h.apply(this,l)},"combinedInitFunction"),m={[i]:p};r.push(m)}function s(...u){for(let p of e)su(this,new p(...u));i!==null&&typeof this[i]=="function"&&this[i].apply(this,u)}n(s,"MixedClass"),s.prototype=Ea.prototypeStrategy==="copy"?ou(r,s):Vh(r,s),Object.setPrototypeOf(s,Ea.staticsStrategy==="copy"?ou(e,null,["prototype"]):cu(e,Function.prototype));let c=s;if(Ea.decoratorInheritance!=="none"){let u=Ea.decoratorInheritance==="deep"?Mh(...e):Uh(...e);for(let p of(t=u?.class)!==null&&t!==void 0?t:[]){let m=p(c);m&&(c=m)}iu((a=u?.static)!==null&&a!==void 0?a:{},c),iu((o=u?.instance)!==null&&o!==void 0?o:{},c.prototype)}return $h(c,e),c}n(mu,"Mixin");var iu=n((e,t)=>{let a=e.property,o=e.method;if(a)for(let r in a)for(let i of a[r])i(t,r);if(o)for(let r in o)for(let i of o[r])i(t,r,Object.getOwnPropertyDescriptor(t,r))},"applyPropAndMethodDecorators");var mk=na(du(),1);var xu=Object.defineProperty,Kh=Object.getOwnPropertyDescriptor,Wh=Object.getOwnPropertyNames,Gh=Object.prototype.hasOwnProperty,U=n((e,t)=>{for(var a in t)xu(e,a,{get:t[a],enumerable:!0})},"__export"),hu=n((e,t,a,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Wh(t))!Gh.call(e,r)&&r!==a&&xu(e,r,{get:n(()=>t[r],"get"),enumerable:!(o=Kh(t,r))||o.enumerable});return e},"__copyProps"),Yh=n((e,t,a)=>(hu(e,t,"default"),a&&hu(a,t,"default")),"__reExport"),To={};U(To,{ADDR_BOUND:n(()=>Gu,"ADDR_BOUND"),API_VERSION:n(()=>Ku,"API_VERSION"),BaseUrl:n(()=>Zu,"BaseUrl"),FeeMarginPercentage:n(()=>el,"FeeMarginPercentage"),IS_BROWSER:n(()=>Pu,"IS_BROWSER"),MASK_250:n(()=>qu,"MASK_250"),MAX_STORAGE_ITEM_SIZE:n(()=>Wu,"MAX_STORAGE_ITEM_SIZE"),NetworkName:n(()=>Io,"NetworkName"),PRIME:n(()=>Tr,"PRIME"),RANGE_FELT:n(()=>fr,"RANGE_FELT"),RANGE_I128:n(()=>Yu,"RANGE_I128"),RANGE_U128:n(()=>Xu,"RANGE_U128"),RPC_DEFAULT_VERSION:n(()=>xa,"RPC_DEFAULT_VERSION"),RPC_NODES:n(()=>tl,"RPC_NODES"),StarknetChainId:n(()=>Ju,"StarknetChainId"),TEXT_TO_FELT_MAX_LEN:n(()=>Sr,"TEXT_TO_FELT_MAX_LEN"),TRANSACTION_VERSION:n(()=>O.ETransactionVersion,"TRANSACTION_VERSION"),TransactionHashPrefix:n(()=>Qu,"TransactionHashPrefix"),UDC:n(()=>Ca,"UDC"),ZERO:n(()=>Ge,"ZERO")});var O={};U(O,{JRPC:n(()=>Xh,"JRPC"),RPCSPEC06:n(()=>q,"RPCSPEC06"),RPCSPEC07:n(()=>ra,"RPCSPEC07")});var Xh={},q={};U(q,{EBlockTag:n(()=>Iu,"EBlockTag"),EDAMode:n(()=>Ou,"EDAMode"),EDataAvailabilityMode:n(()=>zu,"EDataAvailabilityMode"),ESimulationFlag:n(()=>Cu,"ESimulationFlag"),ETransactionExecutionStatus:n(()=>Tu,"ETransactionExecutionStatus"),ETransactionFinalityStatus:n(()=>Su,"ETransactionFinalityStatus"),ETransactionStatus:n(()=>Au,"ETransactionStatus"),ETransactionType:n(()=>_u,"ETransactionType"),ETransactionVersion:n(()=>Nu,"ETransactionVersion"),ETransactionVersion2:n(()=>Du,"ETransactionVersion2"),ETransactionVersion3:n(()=>Bu,"ETransactionVersion3"),Errors:n(()=>Zh,"Errors"),SPEC:n(()=>Jh,"SPEC")});var Zh={},Jh={},_u=(e=>(e.DECLARE="DECLARE",e.DEPLOY="DEPLOY",e.DEPLOY_ACCOUNT="DEPLOY_ACCOUNT",e.INVOKE="INVOKE",e.L1_HANDLER="L1_HANDLER",e))(_u||{}),Cu=(e=>(e.SKIP_VALIDATE="SKIP_VALIDATE",e.SKIP_FEE_CHARGE="SKIP_FEE_CHARGE",e))(Cu||{}),Au=(e=>(e.RECEIVED="RECEIVED",e.REJECTED="REJECTED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(Au||{}),Su=(e=>(e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(Su||{}),Tu=(e=>(e.SUCCEEDED="SUCCEEDED",e.REVERTED="REVERTED",e))(Tu||{}),Iu=(e=>(e.PENDING="pending",e.LATEST="latest",e))(Iu||{}),zu=(e=>(e.L1="L1",e.L2="L2",e))(zu||{}),Ou=(e=>(e[e.L1=0]="L1",e[e.L2=1]="L2",e))(Ou||{}),Nu=(e=>(e.V0="0x0",e.V1="0x1",e.V2="0x2",e.V3="0x3",e.F0="0x100000000000000000000000000000000",e.F1="0x100000000000000000000000000000001",e.F2="0x100000000000000000000000000000002",e.F3="0x100000000000000000000000000000003",e))(Nu||{}),Du=(e=>(e.V0="0x0",e.V1="0x1",e.V2="0x2",e.F0="0x100000000000000000000000000000000",e.F1="0x100000000000000000000000000000001",e.F2="0x100000000000000000000000000000002",e))(Du||{}),Bu=(e=>(e.V3="0x3",e.F3="0x100000000000000000000000000000003",e))(Bu||{});Yh(O,ra);var Qh={};U(Qh,{IS_BROWSER:n(()=>Pu,"IS_BROWSER"),addHexPrefix:n(()=>M,"addHexPrefix"),arrayBufferToString:n(()=>Ru,"arrayBufferToString"),atobUniversal:n(()=>Lu,"atobUniversal"),btoaUniversal:n(()=>Vu,"btoaUniversal"),buf2hex:n(()=>Hu,"buf2hex"),calcByteLength:n(()=>Fu,"calcByteLength"),padLeft:n(()=>$u,"padLeft"),pascalToSnake:n(()=>af,"pascalToSnake"),removeHexPrefix:n(()=>ke,"removeHexPrefix"),sanitizeBytes:n(()=>Mu,"sanitizeBytes"),sanitizeHex:n(()=>Uu,"sanitizeHex"),stringToArrayBuffer:n(()=>ef,"stringToArrayBuffer"),utf8ToArray:n(()=>pt,"utf8ToArray")});var Pu=typeof window<"u",Ar="0";function Ru(e){return new Uint8Array(e).reduce((t,a)=>t+String.fromCharCode(a),"")}n(Ru,"arrayBufferToString");function pt(e){return new TextEncoder().encode(e)}n(pt,"utf8ToArray");function ef(e){return pt(e)}n(ef,"stringToArrayBuffer");function Lu(e){return Jo.decode(e)}n(Lu,"atobUniversal");function Vu(e){return Jo.encode(new Uint8Array(e))}n(Vu,"btoaUniversal");function Hu(e){return e.reduce((t,a)=>t+a.toString(16).padStart(2,"0"),"")}n(Hu,"buf2hex");function ke(e){return e.replace(/^0x/i,"")}n(ke,"removeHexPrefix");function M(e){return`0x${ke(e)}`}n(M,"addHexPrefix");function tf(e,t,a,o=Ar){let r=t-e.length,i=e;if(r>0){let s=o.repeat(r);i=a?s+e:e+s}return i}n(tf,"padString");function $u(e,t,a=Ar){return tf(e,t,!0,a)}n($u,"padLeft");function Fu(e,t=8){let{length:a}=e,o=a%t;return o?(a-o)/t*t+t:a}n(Fu,"calcByteLength");function Mu(e,t=8,a=Ar){return $u(e,Fu(e,t),a)}n(Mu,"sanitizeBytes");function Uu(e){return e=ke(e),e=Mu(e,2),e&&(e=M(e)),e}n(Uu,"sanitizeHex");var af=n(e=>/[a-z]/.test(e)?e.split(/(?=[A-Z])/).join("_").toUpperCase():e,"pascalToSnake"),Sr=31,Ge=0n,qu=2n**250n-1n,Ku=Ge,Tr=2n**251n+17n*2n**192n+1n,Wu=256n,Gu=2n**251n-Wu,Ir=n((e,t)=>({min:e,max:t}),"range"),fr=Ir(Ge,Tr-1n),Yu=Ir(-(2n**127n),2n**127n-1n),Xu=Ir(Ge,2n**128n-1n),Zu=(e=>(e.SN_MAIN="https://alpha-mainnet.starknet.io",e.SN_SEPOLIA="https://alpha-sepolia.starknet.io",e))(Zu||{}),Io=(e=>(e.SN_MAIN="SN_MAIN",e.SN_SEPOLIA="SN_SEPOLIA",e))(Io||{}),Ju=(e=>(e.SN_MAIN="0x534e5f4d41494e",e.SN_SEPOLIA="0x534e5f5345504f4c4941",e))(Ju||{}),Qu=(e=>(e.DECLARE="0x6465636c617265",e.DEPLOY="0x6465706c6f79",e.DEPLOY_ACCOUNT="0x6465706c6f795f6163636f756e74",e.INVOKE="0x696e766f6b65",e.L1_HANDLER="0x6c315f68616e646c6572",e))(Qu||{}),el=(e=>(e[e.L1_BOUND_MAX_AMOUNT=50]="L1_BOUND_MAX_AMOUNT",e[e.L1_BOUND_MAX_PRICE_PER_UNIT=50]="L1_BOUND_MAX_PRICE_PER_UNIT",e[e.MAX_FEE=50]="MAX_FEE",e))(el||{}),Ca={ADDRESS:"0x041a78e741e5af2fec34b695679bc6891742439f7afb8484ecd7766661ad02bf",ENTRYPOINT:"deployContract"},xa="v0_7",tl={SN_MAIN:[`https://starknet-mainnet.public.blastapi.io/rpc/${xa}`,`https://free-rpc.nethermind.io/mainnet-juno/${xa}`],SN_SEPOLIA:[`https://starknet-sepolia.public.blastapi.io/rpc/${xa}`,`https://free-rpc.nethermind.io/sepolia-juno/${xa}`]},al={};U(al,{RpcChannel:n(()=>Ig,"RpcChannel")});function of(e,t=e.constructor){let{captureStackTrace:a}=Error;a&&a(e,t)}n(of,"fixStack");function nf(e,t){let{setPrototypeOf:a}=Object;a?a(e,t):e.__proto__=t}n(nf,"fixProto");var rf=class extends Error{static{n(this,"CustomError")}name;constructor(e){super(e),Object.defineProperty(this,"name",{value:new.target.name,enumerable:!1,configurable:!0}),nf(this,new.target.prototype),of(this)}},Ta=class extends rf{static{n(this,"LibraryError")}};var sf={};U(sf,{BlockStatus:n(()=>ul,"BlockStatus"),BlockTag:n(()=>Nr,"BlockTag"),EntryPointType:n(()=>nl,"EntryPointType"),Literal:n(()=>Or,"Literal"),RPC:n(()=>O,"RPC"),TransactionExecutionStatus:n(()=>cl,"TransactionExecutionStatus"),TransactionFinalityStatus:n(()=>sl,"TransactionFinalityStatus"),TransactionStatus:n(()=>il,"TransactionStatus"),TransactionType:n(()=>rl,"TransactionType"),TypedDataRevision:n(()=>L,"TypedDataRevision"),Uint:n(()=>zr,"Uint"),ValidateType:n(()=>ol,"ValidateType")});var ol=(e=>(e.DEPLOY="DEPLOY",e.CALL="CALL",e.INVOKE="INVOKE",e))(ol||{}),zr=(e=>(e.u8="core::integer::u8",e.u16="core::integer::u16",e.u32="core::integer::u32",e.u64="core::integer::u64",e.u128="core::integer::u128",e.u256="core::integer::u256",e.u512="core::integer::u512",e))(zr||{}),Or=(e=>(e.ClassHash="core::starknet::class_hash::ClassHash",e.ContractAddress="core::starknet::contract_address::ContractAddress",e.Secp256k1Point="core::starknet::secp256k1::Secp256k1Point",e))(Or||{}),nl=(e=>(e.EXTERNAL="EXTERNAL",e.L1_HANDLER="L1_HANDLER",e.CONSTRUCTOR="CONSTRUCTOR",e))(nl||{}),rl=(e=>(e.DECLARE="DECLARE",e.DEPLOY="DEPLOY",e.DEPLOY_ACCOUNT="DEPLOY_ACCOUNT",e.INVOKE="INVOKE_FUNCTION",e))(rl||{}),il=(e=>(e.NOT_RECEIVED="NOT_RECEIVED",e.RECEIVED="RECEIVED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e.REJECTED="REJECTED",e.REVERTED="REVERTED",e))(il||{}),sl=(e=>(e.NOT_RECEIVED="NOT_RECEIVED",e.RECEIVED="RECEIVED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(sl||{}),cl=(e=>(e.REJECTED="REJECTED",e.REVERTED="REVERTED",e.SUCCEEDED="SUCCEEDED",e))(cl||{}),ul=(e=>(e.PENDING="PENDING",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.REJECTED="REJECTED",e))(ul||{}),Nr=(e=>(e.PENDING="pending",e.LATEST="latest",e))(Nr||{});function z(e,t){if(!e)throw new Error(t||"Assertion failure")}n(z,"assert");var cf={};U(cf,{addPercent:n(()=>Aa,"addPercent"),assertInRange:n(()=>ml,"assertInRange"),bigNumberishArrayToDecimalStringArray:n(()=>pl,"bigNumberishArrayToDecimalStringArray"),bigNumberishArrayToHexadecimalStringArray:n(()=>dl,"bigNumberishArrayToHexadecimalStringArray"),cleanHex:n(()=>Ia,"cleanHex"),getDecimalString:n(()=>uf,"getDecimalString"),getHexString:n(()=>hl,"getHexString"),getHexStringArray:n(()=>Pr,"getHexStringArray"),hexToBytes:n(()=>Rr,"hexToBytes"),hexToDecimalString:n(()=>ll,"hexToDecimalString"),isBigInt:n(()=>ft,"isBigInt"),isBoolean:n(()=>Lr,"isBoolean"),isHex:n(()=>_e,"isHex"),isNumber:n(()=>Xt,"isNumber"),isStringWholeNumber:n(()=>ea,"isStringWholeNumber"),toBigInt:n(()=>K,"toBigInt"),toCairoBool:n(()=>fl,"toCairoBool"),toHex:n(()=>y,"toHex"),toHexString:n(()=>Dr,"toHexString"),toStorageKey:n(()=>Br,"toStorageKey")});function _e(e){return/^0x[0-9a-f]*$/i.test(e)}n(_e,"isHex");function K(e){return BigInt(e)}n(K,"toBigInt");function ft(e){return typeof e=="bigint"}n(ft,"isBigInt");function y(e){return M(K(e).toString(16))}n(y,"toHex");var Dr=y;function Br(e){return M(K(e).toString(16).padStart(64,"0"))}n(Br,"toStorageKey");function ll(e){return BigInt(M(e)).toString(10)}n(ll,"hexToDecimalString");function Ia(e){return e.toLowerCase().replace(/^(0x)0+/,"$1")}n(Ia,"cleanHex");function ml(e,t,a,o=""){let r=o===""?"invalid length":`invalid ${o} length`,i=BigInt(e),s=BigInt(t),c=BigInt(a);z(i>=s&&i<=c,`Message not signable, ${r}.`)}n(ml,"assertInRange");function pl(e){return e.map(t=>K(t).toString(10))}n(pl,"bigNumberishArrayToDecimalStringArray");function dl(e){return e.map(t=>y(t))}n(dl,"bigNumberishArrayToHexadecimalStringArray");function ea(e){return/^\d+$/.test(e)}n(ea,"isStringWholeNumber");function uf(e){if(_e(e))return ll(e);if(ea(e))return e;throw new Error(`${e} needs to be a hex-string or whole-number-string`)}n(uf,"getDecimalString");function hl(e){if(_e(e))return e;if(ea(e))return Dr(e);throw new Error(`${e} needs to be a hex-string or whole-number-string`)}n(hl,"getHexString");function Pr(e){return e.map(hl)}n(Pr,"getHexStringArray");function fl(e){return(+e).toString()}n(fl,"toCairoBool");function Rr(e){if(!_e(e))throw new Error(`${e} needs to be a hex-string`);let t=ke(e);return t.length%2!==0&&(t=`0${t}`),Ii(t)}n(Rr,"hexToBytes");function Aa(e,t){let a=BigInt(e);return a+a*BigInt(t)/100n}n(Aa,"addPercent");function Xt(e){return typeof e=="number"}n(Xt,"isNumber");function Lr(e){return typeof e=="boolean"}n(Lr,"isBoolean");var lf={};U(lf,{getSelector:n(()=>zo,"getSelector"),getSelectorFromName:n(()=>J,"getSelectorFromName"),keccakBn:n(()=>gl,"keccakBn"),starknetKeccak:n(()=>Vr,"starknetKeccak")});function gl(e){let t=ke(y(BigInt(e))),a=t.length%2===0?t:`0${t}`;return M(Te(Rr(M(a))).toString(16))}n(gl,"keccakBn");function mf(e){return M(Te(pt(e)).toString(16))}n(mf,"keccakHex");function Vr(e){return BigInt(mf(e))&qu}n(Vr,"starknetKeccak");function J(e){return y(Vr(e))}n(J,"getSelectorFromName");function zo(e){return _e(e)?e:ea(e)?Dr(e):J(e)}n(zo,"getSelector");var pf={};U(pf,{decodeShortString:n(()=>It,"decodeShortString"),encodeShortString:n(()=>se,"encodeShortString"),isASCII:n(()=>Hr,"isASCII"),isDecimalString:n(()=>$r,"isDecimalString"),isLongText:n(()=>Fr,"isLongText"),isShortString:n(()=>Pa,"isShortString"),isShortText:n(()=>df,"isShortText"),isString:n(()=>ee,"isString"),isText:n(()=>Ra,"isText"),splitLongString:n(()=>Mr,"splitLongString")});function Hr(e){return/^[\x00-\x7F]*$/.test(e)}n(Hr,"isASCII");function Pa(e){return e.length<=Sr}n(Pa,"isShortString");function $r(e){return/^[0-9]*$/i.test(e)}n($r,"isDecimalString");function ee(e){return typeof e=="string"}n(ee,"isString");function Ra(e){return ee(e)&&!_e(e)&&!ea(e)}n(Ra,"isText");var df=n(e=>Ra(e)&&Pa(e),"isShortText"),Fr=n(e=>Ra(e)&&!Pa(e),"isLongText");function Mr(e){let t=RegExp(`[^]{1,${Sr}}`,"g");return e.match(t)||[]}n(Mr,"splitLongString");function se(e){if(!Hr(e))throw new Error(`${e} is not an ASCII string`);if(!Pa(e))throw new Error(`${e} is too long`);return M(e.replace(/./g,t=>t.charCodeAt(0).toString(16)))}n(se,"encodeShortString");function It(e){if(!Hr(e))throw new Error(`${e} is not an ASCII string`);if(_e(e))return ke(e).replace(/.{2}/g,t=>String.fromCharCode(parseInt(t,16)));if($r(e))return It("0X".concat(BigInt(e).toString(16)));throw new Error(`${e} is not Hex or decimal`)}n(It,"decodeShortString");var hf={};U(hf,{byteArrayFromString:n(()=>Oo,"byteArrayFromString"),stringFromByteArray:n(()=>kl,"stringFromByteArray")});function kl(e){let t=BigInt(e.pending_word)===0n?"":It(y(e.pending_word));return e.data.reduce((a,o)=>{let r=BigInt(o)===0n?"":It(y(o));return a+r},"")+t}n(kl,"stringFromByteArray");function Oo(e){let t=Mr(e),a=t[t.length-1],o=t.map(se),[r,i]=a===void 0||a.length===31?["0x00",0]:[o.pop(),a.length];return{data:o.length===0?[]:o,pending_word:r,pending_word_len:i}}n(Oo,"byteArrayFromString");var yl={};U(yl,{felt:n(()=>we,"felt"),getAbiContractVersion:n(()=>Wr,"getAbiContractVersion"),getArrayType:n(()=>He,"getArrayType"),isCairo1Abi:n(()=>Kr,"isCairo1Abi"),isCairo1Type:n(()=>ht,"isCairo1Type"),isLen:n(()=>zt,"isLen"),isTypeArray:n(()=>dt,"isTypeArray"),isTypeBool:n(()=>Bo,"isTypeBool"),isTypeByteArray:n(()=>Po,"isTypeByteArray"),isTypeBytes31:n(()=>qr,"isTypeBytes31"),isTypeContractAddress:n(()=>xf,"isTypeContractAddress"),isTypeEnum:n(()=>Ot,"isTypeEnum"),isTypeEthAddress:n(()=>jl,"isTypeEthAddress"),isTypeFelt:n(()=>Zt,"isTypeFelt"),isTypeLiteral:n(()=>Ur,"isTypeLiteral"),isTypeNamedTuple:n(()=>wl,"isTypeNamedTuple"),isTypeNonZero:n(()=>Nt,"isTypeNonZero"),isTypeOption:n(()=>No,"isTypeOption"),isTypeResult:n(()=>Do,"isTypeResult"),isTypeSecp256k1Point:n(()=>Ro,"isTypeSecp256k1Point"),isTypeStruct:n(()=>La,"isTypeStruct"),isTypeTuple:n(()=>gt,"isTypeTuple"),isTypeUint:n(()=>za,"isTypeUint"),isTypeUint256:n(()=>Ef,"isTypeUint256"),tuple:n(()=>Jt,"tuple"),uint256:n(()=>gr,"uint256"),uint512:n(()=>_f,"uint512")});function St(e){if(ft(e)||Number.isInteger(e))return e.toString();if(ee(e)){if(_e(e))return BigInt(e).toString();if(Ra(e)){if(!Pa(e))throw new Error(`${e} is a long string > 31 chars. Please split it into an array of short strings.`);return BigInt(se(e)).toString()}if(ea(e))return e}if(Lr(e))return`${+e}`;throw new Error(`${e} can't be computed by felt()`)}n(St,"CairoFelt");var Wt=(1n<<128n)-1n,bl=(1n<<256n)-1n,ff=0n,gf=340282366920938463463374607431768211455n,kf=340282366920938463463374607431768211455n,yf=0n,bf=0n,Z=class qt{static{n(this,"_CairoUint256")}low;high;static abiSelector="core::integer::u256";constructor(...t){if(typeof t[0]=="object"&&t.length===1&&"low"in t[0]&&"high"in t[0]){let a=qt.validateProps(t[0].low,t[0].high);this.low=a.low,this.high=a.high}else if(t.length===1){let a=qt.validate(t[0]);this.low=a&Wt,this.high=a>>128n}else if(t.length===2){let a=qt.validateProps(t[0],t[1]);this.low=a.low,this.high=a.high}else throw Error("Incorrect constructor parameters")}static validate(t){let a=BigInt(t);if(a<ff)throw Error("bigNumberish is smaller than UINT_256_MIN");if(a>bl)throw new Error("bigNumberish is bigger than UINT_256_MAX");return a}static validateProps(t,a){let o=BigInt(t),r=BigInt(a);if(o<yf||o>gf)throw new Error("low is out of range UINT_256_LOW_MIN - UINT_256_LOW_MAX");if(r<bf||r>kf)throw new Error("high is out of range UINT_256_HIGH_MIN - UINT_256_HIGH_MAX");return{low:o,high:r}}static is(t){try{qt.validate(t)}catch{return!1}return!0}static isAbiType(t){return t===qt.abiSelector}toBigInt(){return(this.high<<128n)+this.low}toUint256HexString(){return{low:M(this.low.toString(16)),high:M(this.high.toString(16))}}toUint256DecimalString(){return{low:this.low.toString(10),high:this.high.toString(10)}}toApiRequest(){return[St(this.low),St(this.high)]}},wf=(1n<<512n)-1n,jf=0n,vf=0n,pe=class Kt{static{n(this,"_CairoUint512")}limb0;limb1;limb2;limb3;static abiSelector="core::integer::u512";constructor(...t){if(typeof t[0]=="object"&&t.length===1&&"limb0"in t[0]&&"limb1"in t[0]&&"limb2"in t[0]&&"limb3"in t[0]){let a=Kt.validateProps(t[0].limb0,t[0].limb1,t[0].limb2,t[0].limb3);this.limb0=a.limb0,this.limb1=a.limb1,this.limb2=a.limb2,this.limb3=a.limb3}else if(t.length===1){let a=Kt.validate(t[0]);this.limb0=a&Wt,this.limb1=(a&Wt<<128n)>>128n,this.limb2=(a&Wt<<256n)>>256n,this.limb3=a>>384n}else if(t.length===4){let a=Kt.validateProps(t[0],t[1],t[2],t[3]);this.limb0=a.limb0,this.limb1=a.limb1,this.limb2=a.limb2,this.limb3=a.limb3}else throw Error("Incorrect Uint512 constructor parameters")}static validate(t){let a=BigInt(t);if(a<jf)throw Error("bigNumberish is smaller than UINT_512_MIN.");if(a>wf)throw Error("bigNumberish is bigger than UINT_512_MAX.");return a}static validateProps(t,a,o,r){let i=BigInt(t),s=BigInt(a),c=BigInt(o),u=BigInt(r);return[i,s,c,u].forEach((p,m)=>{if(p<vf||p>Wt)throw Error(`limb${m} is not in the range of a u128 number`)}),{limb0:i,limb1:s,limb2:c,limb3:u}}static is(t){try{Kt.validate(t)}catch{return!1}return!0}static isAbiType(t){return t===Kt.abiSelector}toBigInt(){return(this.limb3<<384n)+(this.limb2<<256n)+(this.limb1<<128n)+this.limb0}toUint512HexString(){return{limb0:M(this.limb0.toString(16)),limb1:M(this.limb1.toString(16)),limb2:M(this.limb2.toString(16)),limb3:M(this.limb3.toString(16))}}toUint512DecimalString(){return{limb0:this.limb0.toString(10),limb1:this.limb1.toString(10),limb2:this.limb2.toString(10),limb3:this.limb3.toString(10)}}toApiRequest(){return[St(this.limb0),St(this.limb1),St(this.limb2),St(this.limb3)]}},zt=n(e=>/_len$/.test(e),"isLen"),Zt=n(e=>e==="felt"||e==="core::felt252","isTypeFelt"),dt=n(e=>/\*/.test(e)||e.startsWith("core::array::Array::")||e.startsWith("core::array::Span::"),"isTypeArray"),gt=n(e=>/^\(.*\)$/i.test(e),"isTypeTuple"),wl=n(e=>/\(.*\)/i.test(e)&&e.includes(":"),"isTypeNamedTuple"),La=n((e,t)=>e in t,"isTypeStruct"),Ot=n((e,t)=>e in t,"isTypeEnum"),No=n(e=>e.startsWith("core::option::Option::"),"isTypeOption"),Do=n(e=>e.startsWith("core::result::Result::"),"isTypeResult"),za=n(e=>Object.values(zr).includes(e),"isTypeUint"),Ef=n(e=>Z.isAbiType(e),"isTypeUint256"),Ur=n(e=>Object.values(Or).includes(e),"isTypeLiteral"),Bo=n(e=>e==="core::bool","isTypeBool"),xf=n(e=>e==="core::starknet::contract_address::ContractAddress","isTypeContractAddress"),jl=n(e=>e==="core::starknet::eth_address::EthAddress","isTypeEthAddress"),qr=n(e=>e==="core::bytes_31::bytes31","isTypeBytes31"),Po=n(e=>e==="core::byte_array::ByteArray","isTypeByteArray"),Ro=n(e=>e==="core::starknet::secp256k1::Secp256k1Point","isTypeSecp256k1Point"),ht=n(e=>e.includes("::"),"isCairo1Type"),He=n(e=>ht(e)?e.substring(e.indexOf("<")+1,e.lastIndexOf(">")):e.replace("*",""),"getArrayType");function Kr(e){let{cairo:t}=Wr(e);if(t===void 0)throw Error("Unable to determine Cairo version");return t==="1"}n(Kr,"isCairo1Abi");function Nt(e){return e.startsWith("core::zeroable::NonZero::")}n(Nt,"isTypeNonZero");function Wr(e){if(e.find(o=>o.type==="interface"))return{cairo:"1",compiler:"2"};let t=e.find(o=>o.type==="function"&&(o.inputs.length||o.outputs.length));if(!t)return{cairo:void 0,compiler:void 0};let a=t.inputs.length?t.inputs:t.outputs;return ht(a[0].type)?{cairo:"1",compiler:"1"}:{cairo:"0",compiler:"0"}}n(Wr,"getAbiContractVersion");var gr=n(e=>new Z(e).toUint256DecimalString(),"uint256"),_f=n(e=>new pe(e).toUint512DecimalString(),"uint512"),Jt=n((...e)=>({...e}),"tuple");function we(e){return St(e)}n(we,"felt");var Va=class{static{n(this,"CairoCustomEnum")}variant;constructor(e){let t=Object.values(e);if(t.length===0)throw new Error("This Enum must have at least 1 variant");if(t.filter(o=>typeof o<"u").length!==1)throw new Error("This Enum must have exactly one active variant");this.variant=e}unwrap(){let t=Object.entries(this.variant).find(a=>typeof a[1]<"u");if(!(typeof t>"u"))return t[1]}activeVariant(){let t=Object.entries(this.variant).find(a=>typeof a[1]<"u");return typeof t>"u"?"":t[0]}},vl=(e=>(e[e.Some=0]="Some",e[e.None=1]="None",e))(vl||{}),kr=class{static{n(this,"CairoOption")}Some;None;constructor(e,t){if(!(e in vl))throw new Error("Wrong variant : should be CairoOptionVariant.Some or .None.");if(e===0){if(typeof t>"u")throw new Error('The creation of a Cairo Option with "Some" variant needs a content as input.');this.Some=t,this.None=void 0}else this.Some=void 0,this.None=!0}unwrap(){if(!this.None)return this.Some}isSome(){return!(typeof this.Some>"u")}isNone(){return this.None===!0}},El=(e=>(e[e.Ok=0]="Ok",e[e.Err=1]="Err",e))(El||{}),yr=class{static{n(this,"CairoResult")}Ok;Err;constructor(e,t){if(!(e in El))throw new Error("Wrong variant : should be CairoResultVariant.Ok or .Err.");e===0?(this.Ok=t,this.Err=void 0):(this.Ok=void 0,this.Err=t)}unwrap(){if(typeof this.Ok<"u")return this.Ok;if(typeof this.Err<"u")return this.Err;throw new Error("Both Result.Ok and .Err are undefined. Not authorized.")}isOk(){return!(typeof this.Ok>"u")}isErr(){return!(typeof this.Err>"u")}},lr={isBN:n((e,t,a)=>{if(!ft(e[a]))throw new Error(`Data and formatter mismatch on ${a}:${t[a]}, expected response data ${a}:${e[a]} to be BN instead it is ${typeof e[a]}`)},"isBN"),unknown:n((e,t,a)=>{throw new Error(`Unhandled formatter type on ${a}:${t[a]} for data ${a}:${e[a]}`)},"unknown")};function vo(e,t,a){return Object.entries(e).reduce((o,[r,i])=>{let s=a??t[r];if(!(r in t)&&!a)return o[r]=i,o;if(s==="string"){if(Array.isArray(e[r])){let c=vo(e[r],e[r].map(u=>s));return o[r]=Object.values(c).join(""),o}return lr.isBN(e,t,r),o[r]=It(i),o}if(s==="number")return lr.isBN(e,t,r),o[r]=Number(i),o;if(typeof s=="function")return o[r]=s(i),o;if(Array.isArray(s)){let c=vo(e[r],s,s[0]);return o[r]=Object.values(c),o}return typeof s=="object"?(o[r]=vo(e[r],s),o):(lr.unknown(e,t,r),o)},{})}n(vo,"formatter");var Cf=class{static{n(this,"AbiParser1")}abi;constructor(e){this.abi=e}methodInputsLength(e){return e.inputs.reduce((t,a)=>zt(a.name)?t:t+1,0)}getMethod(e){return this.abi.find(t=>t.name===e)}getLegacyFormat(){return this.abi}},Af=class{static{n(this,"AbiParser2")}abi;constructor(e){this.abi=e}methodInputsLength(e){return e.inputs.length}getMethod(e){return this.abi.find(a=>a.type==="interface").items.find(a=>a.name===e)}getLegacyFormat(){return this.abi.flatMap(e=>e.type==="interface"?e.items:e)}};function xl(e){let t=Sf(e);if(t===0||t===1)return new Cf(e);if(t===2)return new Af(e);throw Error(`Unsupported ABI version ${t}`)}n(xl,"createAbiParser");function Sf(e){return e.find(t=>t.type==="interface")?2:Kr(e)?1:0}n(Sf,"getAbiVersion");function fu(e,t,a){return e==="constructor"&&!a&&!t.length}n(fu,"isNoConstructorValid");function Tf(e){let t=e.substring(0,e.indexOf(":")),a=e.substring(t.length+1);return{name:t,type:a}}n(Tf,"parseNamedTuple");function If(e){if(!e.includes("("))return{subTuple:[],result:e};let t=[],a="",o=0;for(;o<e.length;){if(e[o]==="("){let r=1,i=o;for(o++;r;)e[o]===")"&&r--,e[o]==="("&&r++,o++;t.push(e.substring(i,o)),a+=" ",o--}else a+=e[o];o++}return{subTuple:t,result:a}}n(If,"parseSubTuple");function zf(e){let t=e.replace(/\s/g,"").slice(1,-1),{subTuple:a,result:o}=If(t),r=o.split(",").map(i=>a.length?i.replace(" ",a.shift()):i);return wl(e)&&(r=r.reduce((i,s)=>i.concat(Tf(s)),[])),r}n(zf,"extractCairo0Tuple");function gu(e,t,a){for(let o=0,r=0;o<e.length;o++)if(e[o]===t)r++;else if(e[o]===a&&--r===0)return o;return Number.POSITIVE_INFINITY}n(gu,"getClosureOffset");function Of(e){let t=e.slice(1,-1),a=[],o=0,r;for(;o<t.length;){switch(!0){case t[o]==="(":{r=o+gu(t.slice(o),"(",")")+1;break}case(t.startsWith("core::result::Result::<",o)||t.startsWith("core::array::Array::<",o)||t.startsWith("core::option::Option::<",o)):{r=o+gu(t.slice(o),"<",">")+1;break}default:{let i=t.indexOf(",",o);r=i!==-1?i:Number.POSITIVE_INFINITY}}a.push(t.slice(o,r)),o=r+2}return a}n(Of,"extractCairo1Tuple");function Gr(e){return ht(e)?Of(e):zf(e)}n(Gr,"extractTupleMemberTypes");function Nf(e){return Error(`Your object includes the property : ${e}, containing an Uint256 object without the 'low' and 'high' keys.`)}n(Nf,"errorU256");function Df(e){return Error(`Your object includes the property : ${e}, containing an Uint512 object without the 'limb0' to 'limb3' keys.`)}n(Df,"errorU512");function Bf(e,t,a,o){let r=n((m,l)=>{if(dt(l))return s(m,l);if(Ot(l,o)){let h=o[l];return u(m,h)}if(gt(l))return c(m,l);if(jl(l)||Nt(l)||Po(l)||Ro(l))return m;if(Z.isAbiType(l)){let h=m;if(typeof h!="object")return h;if(!("low"in h&&"high"in h))throw Nf(l);return{low:h.low,high:h.high}}if(pe.isAbiType(l)){let h=m;if(typeof h!="object")return h;if(!["limb0","limb1","limb2","limb3"].every(g=>g in h))throw Df(l);return{limb0:h.limb0,limb1:h.limb1,limb2:h.limb2,limb3:h.limb3}}if(La(l,a)){let h=a[l].members;return i(m,h)}return m},"orderInput"),i=n((m,l)=>l.reduce((g,f)=>{let d=n(k=>Object.defineProperty(g,f.name,{enumerable:!0,value:k??m[f.name]}),"setProperty");if(m[f.name]==="undefined"&&(ht(f.type)||!zt(f.name)))throw Error(`Your object needs a property with key : ${f.name} .`);return d(r(m[f.name],f.type)),g},{}),"orderStruct");function s(m,l){let h=He(l);return ee(m)?m:m.map(g=>r(g,h))}n(s,"orderArray");function c(m,l){return Gr(l).reduce((f,d,k)=>{let b=Object.keys(m),v=n(T=>Object.defineProperty(f,k.toString(),{enumerable:!0,value:T??m[b[k]]}),"setProperty"),E=d?.type?d.type:d;return v(r(m[b[k]],E)),f},{})}n(c,"orderTuple");let u=n((m,l)=>{if(Do(l.name)){let d=m,k=l.name.substring(l.name.indexOf("<")+1,l.name.lastIndexOf(",")),b=l.name.substring(l.name.indexOf(",")+1,l.name.lastIndexOf(">"));return d.isOk()?new yr(0,r(m.unwrap(),k)):new yr(1,r(m.unwrap(),b))}if(No(l.name)){let d=m,k=l.name.substring(l.name.indexOf("<")+1,l.name.lastIndexOf(">"));return d.isSome()?new kr(0,r(d.unwrap(),k)):new kr(1,{})}let h=m,f=Object.entries(h.variant).map(d=>{if(typeof d[1]>"u")return d;let k=l.type.substring(l.type.lastIndexOf("<")+1,l.type.lastIndexOf(">"));return k==="()"?d:[d[0],r(h.unwrap(),k)]});return new Va(Object.fromEntries(f))},"orderEnum");return t.reduce((m,l)=>{let h=n(g=>Object.defineProperty(m,l.name,{enumerable:!0,value:g}),"setProperty");return zt(l.name)&&!ht(l.type)||h(r(e[l.name],l.type)),m},{})}n(Bf,"orderPropsByAbi");function Yt(e,t){switch(!0){case Z.isAbiType(e):return new Z(t).toApiRequest();case pe.isAbiType(e):return new pe(t).toApiRequest();case qr(e):return se(t.toString());case Ro(e):{let a=ke(y(t)).padStart(128,"0"),o=gr(M(a.slice(-64))),r=gr(M(a.slice(0,-64)));return[we(r.low),we(r.high),we(o.low),we(o.high)]}default:return we(t)}}n(Yt,"parseBaseTypes");function Pf(e,t){let a=Gr(t),o=Object.values(e);if(o.length!==a.length)throw Error(`ParseTuple: provided and expected abi tuple size do not match.
28
28
  provided: ${o}
29
- expected: ${a}`);return a.map((r,i)=>({element:o[i],type:r.type??r}))}n(Lf,"parseTuple");function Vf(e){let t=Oo(e);return[t.data.length.toString(),...t.data.map(a=>a.toString()),t.pending_word.toString(),t.pending_word_len.toString()]}n(Vf,"parseByteArray");function Pe(e,t,a,o){if(e===void 0)throw Error(`Missing parameter for type ${t}`);if(Array.isArray(e)){let r=[];r.push(we(e.length));let i=He(t);return e.reduce((s,c)=>s.concat(Pe(c,i,a,o)),r)}if(a[t]&&a[t].members.length){if(Z.isAbiType(t))return new Z(e).toApiRequest();if(pe.isAbiType(t))return new pe(e).toApiRequest();if(t==="core::starknet::eth_address::EthAddress")return Xt(t,e);if(t==="core::byte_array::ByteArray")return Vf(e);let{members:r}=a[t],i=e;return r.reduce((s,c)=>s.concat(Pe(i[c.name],c.type,a,o)),[])}if(gt(t))return Lf(e,t).reduce((i,s)=>{let c=Pe(s.element,s.type,a,o);return i.concat(c)},[]);if(Z.isAbiType(t))return new Z(e).toApiRequest();if(pe.isAbiType(t))return new pe(e).toApiRequest();if(Nt(t,o)){let{variants:r}=o[t];if(No(t)){let l=e;if(l.isSome()){let h=r.find(d=>d.name==="Some");if(typeof h>"u")throw Error("Error in abi : Option has no 'Some' variant.");let g=h.type;if(g==="()")return"0";let f=Pe(l.unwrap(),g,a,o);return Array.isArray(f)?["0",...f]:["0",f]}return"1"}if(Do(t)){let l=e;if(l.isOk()){let d=r.find(v=>v.name==="Ok");if(typeof d>"u")throw Error("Error in abi : Result has no 'Ok' variant.");let k=d.type;if(k==="()")return"0";let b=Pe(l.unwrap(),k,a,o);return Array.isArray(b)?["0",...b]:["0",b]}let h=r.find(d=>d.name==="Err");if(typeof h>"u")throw Error("Error in abi : Result has no 'Err' variant.");let g=h.type;if(g==="()")return"1";let f=Pe(l.unwrap(),g,a,o);return Array.isArray(f)?["1",...f]:["1",f]}let i=e,s=i.activeVariant(),c=r.find(l=>l.name===s);if(typeof c>"u")throw Error(`Not find in abi : Enum has no '${s}' variant.`);let u=c.type,p=r.findIndex(l=>l.name===s);if(u==="()")return p.toString();let m=Pe(i.unwrap(),u,a,o);return Array.isArray(m)?[p.toString(),...m]:[p.toString(),m]}if(Dt(t))return Xt(He(t),e);if(typeof e=="object")throw Error(`Parameter ${e} do not align with abi parameter ${t}`);return Xt(t,e)}n(Pe,"parseCalldataValue");function Hf(e,t,a,o){let{name:r,type:i}=t,{value:s}=e.next();switch(!0){case dt(i):if(!Array.isArray(s)&&!Ra(s))throw Error(`ABI expected parameter ${r} to be array or long string, got ${s}`);return ee(s)&&(s=Mr(s)),Pe(s,t.type,a,o);case Dt(i):return Xt(He(i),s);case i==="core::starknet::eth_address::EthAddress":return Xt(i,s);case(La(i,a)||gt(i)||Z.isAbiType(i)||Z.isAbiType(i)):return Pe(s,i,a,o);case Nt(i,o):return Pe(s,i,a,o);default:return Xt(i,s)}}n(Hf,"parseCalldataField");function br(e,t){let a;switch(!0){case Bo(e):return a=t.next().value,!!BigInt(a);case Z.isAbiType(e):let o=t.next().value,r=t.next().value;return new Z(o,r).toBigInt();case pe.isAbiType(e):let i=t.next().value,s=t.next().value,c=t.next().value,u=t.next().value;return new pe(i,s,c,u).toBigInt();case e==="core::starknet::eth_address::EthAddress":return a=t.next().value,BigInt(a);case e==="core::bytes_31::bytes31":return a=t.next().value,zt(a);case Ro(e):let p=ke(t.next().value).padStart(32,"0"),m=ke(t.next().value).padStart(32,"0"),l=ke(t.next().value).padStart(32,"0"),h=ke(t.next().value).padStart(32,"0");return BigInt(M(m+p+h+l));default:return a=t.next().value,BigInt(a)}}n(br,"parseBaseTypes2");function xe(e,t,a,o){if(t.type==="()")return{};if(Z.isAbiType(t.type)){let r=e.next().value,i=e.next().value;return new Z(r,i).toBigInt()}if(pe.isAbiType(t.type)){let r=e.next().value,i=e.next().value,s=e.next().value,c=e.next().value;return new pe(r,i,s,c).toBigInt()}if(Po(t.type)){let r=[],i=BigInt(e.next().value);for(;r.length<i;)r.push(y(e.next().value));let s=y(e.next().value),c=BigInt(e.next().value);return yl({data:r,pending_word:s,pending_word_len:c})}if(dt(t.type)){let r=[],i={name:"",type:He(t.type)},s=BigInt(e.next().value);for(;r.length<s;)r.push(xe(e,i,a,o));return r}if(Dt(t.type)){let r={name:"",type:He(t.type)};return xe(e,r,a,o)}if(a&&t.type in a&&a[t.type])return t.type==="core::starknet::eth_address::EthAddress"?br(t.type,e):a[t.type].members.reduce((r,i)=>(r[i.name]=xe(e,i,a,o),r),{});if(o&&t.type in o&&o[t.type]){let r=Number(e.next().value),i=o[t.type].variants.reduce((c,u,p)=>p===r?(c[u.name]=xe(e,{name:"",type:u.type},a,o),c):(c[u.name]=void 0,c),{});if(t.type.startsWith("core::option::Option")){let c=r===0?i.Some:void 0;return new kr(r,c)}if(t.type.startsWith("core::result::Result")){let c;return r===0?c=i.Ok:c=i.Err,new yr(r,c)}return new Va(i)}if(gt(t.type))return Gr(t.type).reduce((i,s,c)=>{let u=s?.name?s.name:c,p=s?.type?s.type:s,m={name:u,type:p};return i[u]=xe(e,m,a,o),i},{});if(dt(t.type)){let r=[],i={name:"",type:He(t.type)},s=BigInt(e.next().value);for(;r.length<s;)r.push(xe(e,i,a,o));return r}return br(t.type,e)}n(xe,"parseResponseValue");function So(e,t,a,o,r){let{name:i,type:s}=t,c;switch(!0){case Ot(i):return c=e.next().value,BigInt(c);case(a&&s in a||gt(s)):return xe(e,t,a,o);case(o&&Nt(s,o)):return xe(e,t,a,o);case dt(s):if(ht(s))return xe(e,t,a,o);let u=[];if(r&&r[`${i}_len`]){let p=r[`${i}_len`];for(;u.length<p;)u.push(xe(e,{name:i,type:t.type.replace("*","")},a,o))}return u;case Dt(s):return xe(e,t,a,o);default:return br(s,e)}}n(So,"responseParser");var Yr=n((e,t)=>{if(z(ee(e)||Zt(e)||ft(e),`Validate: arg ${t.name} should be a felt typed as (String, Number or BigInt)`),ee(e)&&!_e(e))return;let a=BigInt(e.toString(10));z(a>=0n&&a<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`)},"validateFelt"),$f=n((e,t)=>{z(ee(e),`Validate: arg ${t.name} should be a string.`),z(e.length<32,`Validate: arg ${t.name} cairo typed ${t.type} should be a string of less than 32 characters.`)},"validateBytes31"),Ff=n((e,t)=>{z(ee(e),`Validate: arg ${t.name} should be a string.`)},"validateByteArray"),Lo=n((e,t)=>{Zt(e)&&z(e<=Number.MAX_SAFE_INTEGER,"Validation: Parameter is to large to be typed as Number use (BigInt or String)"),z(ee(e)||Zt(e)||ft(e)||typeof e=="object"&&"low"in e&&"high"in e||typeof e=="object"&&["limb0","limb1","limb2","limb3"].every(o=>o in e),`Validate: arg ${t.name} of cairo type ${t.type} should be type (String, Number or BigInt), but is ${typeof e} ${e}.`);let a;switch(t.type){case"core::integer::u256":a=new Z(e).toBigInt();break;case"core::integer::u512":a=new pe(e).toBigInt();break;default:a=K(e)}switch(t.type){case"core::integer::u8":z(a>=0n&&a<=255n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0 - 255]`);break;case"core::integer::u16":z(a>=0n&&a<=65535n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 65535]`);break;case"core::integer::u32":z(a>=0n&&a<=4294967295n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 4294967295]`);break;case"core::integer::u64":z(a>=0n&&a<=2n**64n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^64-1]`);break;case"core::integer::u128":z(a>=0n&&a<=2n**128n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^128-1]`);break;case"core::integer::u256":z(a>=0n&&a<=2n**256n-1n,`Validate: arg ${t.name} is ${t.type} 0 - 2^256-1`);break;case"core::integer::u512":z(pe.is(a),`Validate: arg ${t.name} is ${t.type} 0 - 2^512-1`);break;case"core::starknet::class_hash::ClassHash":z(a>=0n&&a<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`);break;case"core::starknet::contract_address::ContractAddress":z(a>=0n&&a<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`);break;case"core::starknet::secp256k1::Secp256k1Point":{z(a>=0n&&a<=2n**512n-1n,`Validate: arg ${t.name} must be ${t.type} : a 512 bits number.`);break}default:break}},"validateUint"),Cl=n((e,t)=>{z(Lr(e),`Validate: arg ${t.name} of cairo type ${t.type} should be type (Boolean)`)},"validateBool"),Al=n((e,t,a)=>{if(t.type==="core::integer::u256"||t.type==="core::integer::u512"){Lo(e,t);return}if(t.type==="core::starknet::eth_address::EthAddress"){z(typeof e!="object",`EthAddress type is waiting a BigNumberish. Got ${e}`);let o=BigInt(e.toString(10));z(o>=0n&&o<=2n**160n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^160-1]`);return}z(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} is cairo type struct (${t.type}), and should be defined as js object (not array)`),a[t.type].members.forEach(({name:o})=>{z(Object.keys(e).includes(o),`Validate: arg ${t.name} should have a property ${o}`)})},"validateStruct"),Sl=n((e,t)=>{z(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} is cairo type Enum (${t.type}), and should be defined as js object (not array)`);let a=Object.getOwnPropertyNames(Object.getPrototypeOf(e)),o=[...Object.getOwnPropertyNames(e),...a];if(!(No(t.type)&&o.includes("isSome")&&o.includes("isNone"))&&!(Do(t.type)&&o.includes("isOk")&&o.includes("isErr"))&&!(o.includes("variant")&&o.includes("activeVariant")))throw new Error(`Validate Enum: argument ${t.name}, type ${t.type}, value received ${e}, is not an Enum.`)},"validateEnum"),Tl=n((e,t)=>{z(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} should be a tuple (defined as object)`)},"validateTuple"),Il=n((e,t,a,o)=>{let r=He(t.type);if(!(Jt(r)&&Fr(e)))switch(z(Array.isArray(e),`Validate: arg ${t.name} should be an Array`),!0){case Jt(r):e.forEach(i=>Yr(i,t));break;case gt(r):e.forEach(i=>Tl(i,{name:t.name,type:r}));break;case dt(r):e.forEach(i=>Il(i,{name:"",type:r},a,o));break;case La(r,a):e.forEach(i=>Al(i,{name:t.name,type:r},a));break;case Nt(r,o):e.forEach(i=>Sl(i,{name:t.name,type:r}));break;case(za(r)||Ur(r)):e.forEach(i=>Lo(i,{name:"",type:r}));break;case Bo(r):e.forEach(i=>Cl(i,t));break;default:throw new Error(`Validate Unhandled: argument ${t.name}, type ${t.type}, value ${e}`)}},"validateArray"),Mf=n((e,t)=>{let a=He(t.type);switch(z(za(a)&&a!==pe.abiSelector||Jt(a),`Validate: ${t.name} type is not authorized for NonZero type.`),!0){case Jt(a):Yr(e,t),z(BigInt(e.toString(10))>0,"Validate: value 0 is not authorized in NonZero felt252 type.");break;case za(a):switch(Lo(e,{name:"",type:a}),t.type){case"core::integer::u256":z(new Z(e).toBigInt()>0,"Validate: value 0 is not authorized in NonZero uint256 type.");break;default:z(K(e)>0,"Validate: value 0 is not authorized in NonZero uint type.")}break;default:throw new Error(`Validate Unhandled: argument ${t.name}, type ${t.type}, value ${e}`)}},"validateNonZero");function yu(e,t,a,o){e.inputs.reduce((r,i)=>{let s=t[r];switch(!0){case Ot(i.name):return r;case Jt(i.type):Yr(s,i);break;case qr(i.type):$f(s,i);break;case(za(i.type)||Ur(i.type)):Lo(s,i);break;case Bo(i.type):Cl(s,i);break;case Po(i.type):Ff(s,i);break;case dt(i.type):Il(s,i,a,o);break;case La(i.type,a):Al(s,i,a);break;case Nt(i.type,o):Sl(s,i);break;case gt(i.type):Tl(s,i);break;case Dt(i.type):Mf(s,i);break;default:throw new Error(`Validate Unhandled: argument ${i.name}, type ${i.type}, value ${s}`)}return r+1},0)}n(yu,"validateFields");var P=class _a{static{n(this,"_CallData")}abi;parser;structs;enums;constructor(t){this.structs=_a.getAbiStruct(t),this.enums=_a.getAbiEnum(t),this.parser=_l(t),this.abi=this.parser.getLegacyFormat()}validate(t,a,o=[]){if(t!=="DEPLOY"){let s=this.abi.filter(c=>{if(c.type!=="function")return!1;let u=c.stateMutability==="view"||c.state_mutability==="view";return t==="INVOKE"?!u:u}).map(c=>c.name);z(s.includes(a),`${t==="INVOKE"?"invocable":"viewable"} method not found in abi`)}let r=this.abi.find(s=>t==="DEPLOY"?s.name===a&&s.type==="constructor":s.name===a&&s.type==="function");if(gu(a,o,r))return;let i=this.parser.methodInputsLength(r);if(o.length!==i)throw Error(`Invalid number of arguments, expected ${i} arguments, but got ${o.length}`);yu(r,o,this.structs,this.enums)}compile(t,a){let o=this.abi.find(c=>c.name===t);if(gu(t,a,o))return[];let r;if(Array.isArray(a))r=a;else{let c=Rf(a,o.inputs,this.structs,this.enums);r=Object.values(c),yu(o,r,this.structs,this.enums)}let i=r[Symbol.iterator](),s=o.inputs.reduce((c,u)=>Ot(u.name)&&!ht(u.type)?c:c.concat(Hf(i,u,this.structs,this.enums)),[]);return Object.defineProperty(s,"__compiled__",{enumerable:!1,writable:!1,value:!0}),s}static compile(t){let a=n(r=>{let i=n((c,u=".")=>{let p=Array.isArray(c)?[c.length.toString(),...c]:c;return Object.entries(p).flatMap(([m,l])=>{let h=l;m==="entrypoint"?h=J(h):Fr(h)&&(h=Oo(h));let g=Array.isArray(p)&&m==="0"?"$$len":m;if(ft(h))return[[`${u}${g}`,we(h)]];if(Object(h)===h){let f=Object.getOwnPropertyNames(Object.getPrototypeOf(h)),d=[...Object.getOwnPropertyNames(h),...f];if(d.includes("isSome")&&d.includes("isNone")){let k=h,b=k.isSome()?0:1;return k.isSome()?i({0:b,1:k.unwrap()},`${u}${g}.`):[[`${u}${g}`,we(b)]]}if(d.includes("isOk")&&d.includes("isErr")){let k=h,b=k.isOk()?0:1;return i({0:b,1:k.unwrap()},`${u}${g}.`)}if(d.includes("variant")&&d.includes("activeVariant")){let k=h,b=k.activeVariant(),E=Object.keys(k.variant).findIndex(T=>T===b);return typeof k.unwrap()=="object"&&Object.keys(k.unwrap()).length===0?[[`${u}${g}`,we(E)]]:i({0:E,1:k.unwrap()},`${u}${g}.`)}return i(h,`${u}${g}.`)}return[[`${u}${g}`,we(h)]]})},"getEntries");return Object.fromEntries(i(r))},"createTree"),o;if(Array.isArray(t)){let r={...t},i=a(r);o=Object.values(i)}else{let r=a(t);o=Object.values(r)}return Object.defineProperty(o,"__compiled__",{enumerable:!1,writable:!1,value:!0}),o}parse(t,a){let{outputs:o}=this.abi.find(s=>s.name===t),r=a.flat()[Symbol.iterator](),i=o.flat().reduce((s,c,u)=>{let p=c.name??u;return s[p]=So(r,c,this.structs,this.enums,s),s[p]&&s[`${p}_len`]&&delete s[`${p}_len`],s},{});return Object.keys(i).length===1&&0 in i?i[0]:i}format(t,a,o){let r=this.parse(t,a);return vo(r,o)}static getAbiStruct(t){return t.filter(a=>a.type==="struct").reduce((a,o)=>({...a,[o.name]:o}),{})}static getAbiEnum(t){let a=t.filter(o=>o.type==="enum").reduce((o,r)=>({...o,[r.name]:r}),{});return delete a["core::bool"],a}static toCalldata(t=[]){return _a.compile(t)}static toHex(t=[]){return _a.compile(t).map(o=>y(o))}decodeParameters(t,a){let o=Array.isArray(t)?t:[t],r=a.flat()[Symbol.iterator](),i=o.map(s=>So(r,{name:"",type:s},this.structs,this.enums));return i.length===1?i[0]:i}},Xr={};U(Xr,{calculateContractAddressFromHash:n(()=>Fl,"calculateContractAddressFromHash"),calculateDeclareTransactionHash:n(()=>eg,"calculateDeclareTransactionHash"),calculateDeployAccountTransactionHash:n(()=>ag,"calculateDeployAccountTransactionHash"),calculateInvokeTransactionHash:n(()=>Jf,"calculateInvokeTransactionHash"),computeCompiledClassHash:n(()=>ug,"computeCompiledClassHash"),computeContractClassHash:n(()=>mg,"computeContractClassHash"),computeHashOnElements:n(()=>Re,"computeHashOnElements"),computeHintedClassHash:n(()=>Ml,"computeHintedClassHash"),computeLegacyContractClassHash:n(()=>Ul,"computeLegacyContractClassHash"),computePedersenHash:n(()=>Oa,"computePedersenHash"),computePedersenHashOnElements:n(()=>Hl,"computePedersenHashOnElements"),computePoseidonHash:n(()=>Vl,"computePoseidonHash"),computePoseidonHashOnElements:n(()=>$l,"computePoseidonHashOnElements"),computeSierraContractClassHash:n(()=>Kl,"computeSierraContractClassHash"),formatSpaces:n(()=>Na,"formatSpaces"),getSelector:n(()=>zo,"getSelector"),getSelectorFromName:n(()=>J,"getSelectorFromName"),hashByteCodeSegments:n(()=>ql,"hashByteCodeSegments"),keccakBn:n(()=>kl,"keccakBn"),poseidon:n(()=>En,"poseidon"),starknetKeccak:n(()=>Vr,"starknetKeccak")});var Uf={};U(Uf,{calculateDeclareTransactionHash:n(()=>zl,"calculateDeclareTransactionHash"),calculateDeployAccountTransactionHash:n(()=>Ol,"calculateDeployAccountTransactionHash"),calculateTransactionHash:n(()=>Nl,"calculateTransactionHash"),calculateTransactionHashCommon:n(()=>Vo,"calculateTransactionHashCommon"),computeHashOnElements:n(()=>wr,"computeHashOnElements")});var qf={};U(qf,{starkCurve:n(()=>vn,"starkCurve"),weierstrass:n(()=>Di,"weierstrass")});function wr(e){return[...e,e.length].reduce((t,a)=>Ct(K(t),K(a)),0).toString()}n(wr,"computeHashOnElements");function Vo(e,t,a,o,r,i,s,c=[]){let u=wr(r),p=[e,t,a,o,u,i,s,...c];return wr(p)}n(Vo,"calculateTransactionHashCommon");function zl(e,t,a,o,r,i,s){return Vo("0x6465636c617265",a,t,0,[e],o,r,[i,...s?[s]:[]])}n(zl,"calculateDeclareTransactionHash");function Ol(e,t,a,o,r,i,s,c){let u=[t,o,...a];return Vo("0x6465706c6f795f6163636f756e74",r,e,0,u,i,s,[c])}n(Ol,"calculateDeployAccountTransactionHash");function Nl(e,t,a,o,r,i){return Vo("0x696e766f6b65",t,e,0,a,o,r,[i])}n(Nl,"calculateTransactionHash");var Kf={};U(Kf,{calculateDeclareTransactionHash:n(()=>Rl,"calculateDeclareTransactionHash"),calculateDeployAccountTransactionHash:n(()=>Pl,"calculateDeployAccountTransactionHash"),calculateInvokeTransactionHash:n(()=>Ll,"calculateInvokeTransactionHash"),calculateTransactionHashCommon:n(()=>Ho,"calculateTransactionHashCommon"),hashDAMode:n(()=>Dl,"hashDAMode"),hashFeeField:n(()=>Bl,"hashFeeField")});var mt=n(e=>e.map(t=>BigInt(t)),"AToBI"),Wf=32n,Gf=64n,jr=128n,bu=Gf+jr,Yf=BigInt(se("L1_GAS")),Xf=BigInt(se("L2_GAS"));function Dl(e,t){return(BigInt(e)<<Wf)+BigInt(t)}n(Dl,"hashDAMode");function Bl(e,t){let a=(Yf<<bu)+(BigInt(t.l1_gas.max_amount)<<jr)+BigInt(t.l1_gas.max_price_per_unit),o=(Xf<<bu)+(BigInt(t.l2_gas.max_amount)<<jr)+BigInt(t.l2_gas.max_price_per_unit);return Y([BigInt(e),a,o])}n(Bl,"hashFeeField");function Ho(e,t,a,o,r,i,s,c,u,p,m=[]){let l=Bl(i,p),h=Dl(c,u),g=mt([e,t,a,l,Y(mt(s)),o,r,h,...mt(m)]);return y(Y(g))}n(Ho,"calculateTransactionHashCommon2");function Pl(e,t,a,o,r,i,s,c,u,p,m,l){return Ho("0x6465706c6f795f6163636f756e74",r,e,i,s,m,l,c,u,p,[Y(mt(a)),t,o])}n(Pl,"calculateDeployAccountTransactionHash2");function Rl(e,t,a,o,r,i,s,c,u,p,m,l){return Ho("0x6465636c617265",o,a,r,i,m,mt(l),c,u,p,[Y(mt(s)),e,t])}n(Rl,"calculateDeclareTransactionHash2");function Ll(e,t,a,o,r,i,s,c,u,p,m){return Ho("0x696e766f6b65",t,e,o,r,p,m,s,c,u,[Y(mt(i)),Y(mt(a))])}n(Ll,"calculateInvokeTransactionHash");function Zf(e){return[O.ETransactionVersion.V3,O.ETransactionVersion.F3].includes(e.version)}n(Zf,"isV3InvokeTx");function Jf(e){return Zf(e)?Ll(e.senderAddress,e.version,e.compiledCalldata,e.chainId,e.nonce,e.accountDeploymentData,e.nonceDataAvailabilityMode,e.feeDataAvailabilityMode,e.resourceBounds,e.tip,e.paymasterData):Nl(e.senderAddress,e.version,e.compiledCalldata,e.maxFee,e.chainId,e.nonce)}n(Jf,"calculateInvokeTransactionHash2");function Qf(e){return[O.ETransactionVersion.V3,O.ETransactionVersion.F3].includes(e.version)}n(Qf,"isV3DeclareTx");function eg(e){return Qf(e)?Rl(e.classHash,e.compiledClassHash,e.senderAddress,e.version,e.chainId,e.nonce,e.accountDeploymentData,e.nonceDataAvailabilityMode,e.feeDataAvailabilityMode,e.resourceBounds,e.tip,e.paymasterData):zl(e.classHash,e.senderAddress,e.version,e.maxFee,e.chainId,e.nonce,e.compiledClassHash)}n(eg,"calculateDeclareTransactionHash3");function tg(e){return[O.ETransactionVersion.V3,O.ETransactionVersion.F3].includes(e.version)}n(tg,"isV3DeployAccountTx");function ag(e){return tg(e)?Pl(e.contractAddress,e.classHash,e.compiledConstructorCalldata,e.salt,e.version,e.chainId,e.nonce,e.nonceDataAvailabilityMode,e.feeDataAvailabilityMode,e.resourceBounds,e.tip,e.paymasterData):Ol(e.contractAddress,e.classHash,e.constructorCalldata,e.salt,e.version,e.maxFee,e.chainId,e.nonce)}n(ag,"calculateDeployAccountTransactionHash3");var og={};U(og,{parse:n(()=>aa,"parse"),parseAlwaysAsBig:n(()=>rg,"parseAlwaysAsBig"),stringify:n(()=>ye,"stringify"),stringifyAlwaysAsBig:n(()=>ig,"stringifyAlwaysAsBig")});var ng=n(e=>{if(!Ke(e))return parseFloat(e);let t=parseInt(e,10);return Number.isSafeInteger(t)?t:BigInt(e)},"parseIntAsNumberOrBigInt"),aa=n(e=>mo(String(e),void 0,ng),"parse2"),rg=n(e=>mo(String(e),void 0,Sn),"parseAlwaysAsBig"),ye=n((e,t,a,o)=>po(e,t,a,o),"stringify2"),ig=ye;function Oa(e,t){return Ct(BigInt(e),BigInt(t))}n(Oa,"computePedersenHash");function Vl(e,t){return y(co(BigInt(e),BigInt(t)))}n(Vl,"computePoseidonHash");function Re(e){return[...e,e.length].reduce((t,a)=>Ct(BigInt(t),BigInt(a)),0).toString()}n(Re,"computeHashOnElements2");var Hl=Re;function $l(e){return y(Y(e.map(t=>BigInt(t))))}n($l,"computePoseidonHashOnElements");function Fl(e,t,a,o){let r=P.compile(a),i=Re(r),s=we("0x535441524b4e45545f434f4e54524143545f41444452455353"),c=Re([s,o,e,t,i]);return y(BigInt(c)%Yu)}n(Fl,"calculateContractAddressFromHash");function sg(e,t){return e==="attributes"||e==="accessible_scopes"?Array.isArray(t)&&t.length===0?void 0:t:e==="debug_info"?null:t===null?void 0:t}n(sg,"nullSkipReplacer");function Na(e){let t=!1,a=[];for(let o of e)o==='"'&&!(a.length>0&&a.slice(-1)[0]==="\\")&&(t=!t),t?a.push(o):a.push(o===":"?": ":o===","?", ":o);return a.join("")}n(Na,"formatSpaces");function Ml(e){let{abi:t,program:a}=e,r=Na(ye({abi:t,program:a},sg));return M(Te(pt(r)).toString(16))}n(Ml,"computeHintedClassHash");function Ul(e){let t=ee(e)?aa(e):e,a=y(Wu),o=Re(t.entry_points_by_type.EXTERNAL.flatMap(p=>[p.selector,p.offset])),r=Re(t.entry_points_by_type.L1_HANDLER.flatMap(p=>[p.selector,p.offset])),i=Re(t.entry_points_by_type.CONSTRUCTOR.flatMap(p=>[p.selector,p.offset])),s=Re(t.program.builtins.map(p=>se(p))),c=Ml(t),u=Re(t.program.data);return Re([a,o,r,i,s,c,u])}n(Ul,"computeLegacyContractClassHash");function cg(e){return Y(e.flatMap(t=>BigInt(se(t))))}n(cg,"hashBuiltins");function mr(e){let t=e.flatMap(a=>[BigInt(a.selector),BigInt(a.offset),cg(a.builtins)]);return Y(t)}n(mr,"hashEntryPoint");function ql(e){let t=e.bytecode.map(i=>BigInt(i)),a=e.bytecode_segment_lengths??[],o=0,r=a.flatMap(i=>{let s=t.slice(o,o+=i);return[BigInt(i),Y(s)]});return 1n+Y(r)}n(ql,"hashByteCodeSegments");function ug(e){let a=BigInt(se("COMPILED_CLASS_V1")),o=mr(e.entry_points_by_type.EXTERNAL),r=mr(e.entry_points_by_type.L1_HANDLER),i=mr(e.entry_points_by_type.CONSTRUCTOR),s=e.bytecode_segment_lengths?ql(e):Y(e.bytecode.map(c=>BigInt(c)));return y(Y([a,o,r,i,s]))}n(ug,"computeCompiledClassHash");function pr(e){let t=e.flatMap(a=>[BigInt(a.selector),BigInt(a.function_idx)]);return Y(t)}n(pr,"hashEntryPointSierra");function lg(e){let t=Na(ye(e.abi,null));return BigInt(M(Te(pt(t)).toString(16)))}n(lg,"hashAbi");function Kl(e){let a=BigInt(se("CONTRACT_CLASS_V0.1.0")),o=pr(e.entry_points_by_type.EXTERNAL),r=pr(e.entry_points_by_type.L1_HANDLER),i=pr(e.entry_points_by_type.CONSTRUCTOR),s=lg(e),c=Y(e.sierra_program.map(u=>BigInt(u)));return y(Y([a,o,r,i,s,c]))}n(Kl,"computeSierraContractClassHash");function mg(e){let t=ee(e)?aa(e):e;return"sierra_program"in t?Kl(t):Ul(t)}n(mg,"computeContractClassHash");var pg={};U(pg,{compressProgram:n(()=>Zr,"compressProgram"),decompressProgram:n(()=>It,"decompressProgram"),estimateFeeToBounds:n(()=>Qr,"estimateFeeToBounds"),estimatedFeeToMaxFee:n(()=>Gl,"estimatedFeeToMaxFee"),formatSignature:n(()=>Jr,"formatSignature"),intDAM:n(()=>fg,"intDAM"),makeAddress:n(()=>dg,"makeAddress"),randomAddress:n(()=>Wl,"randomAddress"),reduceV2:n(()=>bg,"reduceV2"),signatureToDecimalArray:n(()=>hg,"signatureToDecimalArray"),signatureToHexArray:n(()=>Q,"signatureToHexArray"),toFeeVersion:n(()=>kg,"toFeeVersion"),toTransactionVersion:n(()=>gg,"toTransactionVersion"),v3Details:n(()=>yg,"v3Details")});function Zr(e){let t=ee(e)?e:ye(e),a=Ri(t);return Hu(a)}n(Zr,"compressProgram");function It(e){if(Array.isArray(e))return e;let t=Lu(Li(Vu(e)));return aa(t)}n(It,"decompressProgram");function Wl(){let e=io.randomPrivateKey();return so(e)}n(Wl,"randomAddress");function dg(e){return M(e).toLowerCase()}n(dg,"makeAddress");function Jr(e){if(!e)throw Error("formatSignature: provided signature is undefined");if(Array.isArray(e))return e.map(t=>y(t));try{let{r:t,s:a}=e;return[y(t),y(a)]}catch{throw new Error("Signature need to be weierstrass.SignatureType or an array for custom")}}n(Jr,"formatSignature");function hg(e){return dl(Jr(e))}n(hg,"signatureToDecimalArray");function Q(e){return hl(Jr(e))}n(Q,"signatureToHexArray");function Gl(e,t=50){return Aa(e,t)}n(Gl,"estimatedFeeToMaxFee");function Qr(e,t=50,a=50){if(ft(e))return{l2_gas:{max_amount:"0x0",max_price_per_unit:"0x0"},l1_gas:{max_amount:"0x0",max_price_per_unit:"0x0"}};if(typeof e.gas_consumed>"u"||typeof e.gas_price>"u")throw Error("estimateFeeToBounds: estimate is undefined");let o=e.data_gas_consumed!==void 0&&e.data_gas_price!==void 0?y(Aa(BigInt(e.overall_fee)/BigInt(e.gas_price),t)):y(Aa(e.gas_consumed,t)),r=y(Aa(e.gas_price,a));return{l2_gas:{max_amount:"0x0",max_price_per_unit:"0x0"},l1_gas:{max_amount:o,max_price_per_unit:r}}}n(Qr,"estimateFeeToBounds");function fg(e){if(e===O.EDataAvailabilityMode.L1)return O.EDAMode.L1;if(e===O.EDataAvailabilityMode.L2)return O.EDAMode.L2;throw Error("EDAM conversion")}n(fg,"intDAM");function gg(e,t){let a=t?y(t):void 0,o=y(e);if(t&&!Object.values(O.ETransactionVersion).includes(a))throw Error(`providedVersion ${t} is not ETransactionVersion`);if(!Object.values(O.ETransactionVersion).includes(o))throw Error(`defaultVersion ${e} is not ETransactionVersion`);return t?a:o}n(gg,"toTransactionVersion");function kg(e){if(!e)return;let t=y(e);if(t===O.ETransactionVersion.V0)return O.ETransactionVersion.F0;if(t===O.ETransactionVersion.V1)return O.ETransactionVersion.F1;if(t===O.ETransactionVersion.V2)return O.ETransactionVersion.F2;if(t===O.ETransactionVersion.V3)return O.ETransactionVersion.F3;throw Error(`toFeeVersion: ${t} is not supported`)}n(kg,"toFeeVersion");function yg(e){return{tip:e.tip||0,paymasterData:e.paymasterData||[],accountDeploymentData:e.accountDeploymentData||[],nonceDataAvailabilityMode:e.nonceDataAvailabilityMode||O.EDataAvailabilityMode.L1,feeDataAvailabilityMode:e.feeDataAvailabilityMode||O.EDataAvailabilityMode.L1,resourceBounds:e.resourceBounds??Qr(Ge)}}n(yg,"v3Details");function bg(e){return e===O.ETransactionVersion.F2?O.ETransactionVersion.F1:e===O.ETransactionVersion.V2?O.ETransactionVersion.V1:e}n(bg,"reduceV2");function Le(e){return"sierra_program"in(ee(e)?aa(e):e)}n(Le,"isSierra");var wg={};U(wg,{ethRandomPrivateKey:n(()=>jg,"ethRandomPrivateKey"),validateAndParseEthAddress:n(()=>ei,"validateAndParseEthAddress")});function jg(){return qu($u(Bi.utils.randomPrivateKey()))}n(jg,"ethRandomPrivateKey");function ei(e){pl(e,Ge,2n**160n-1n,"Ethereum Address ");let t=M(ke(y(e)).padStart(40,"0"));return z(!!t.match(/^(0x)?[0-9a-f]{40}$/),"Invalid Ethereum Address Format"),t}n(ei,"validateAndParseEthAddress");var Xl=typeof window<"u"&&window.fetch||typeof global<"u"&&ir(global.fetch)||Yl.default,vg={};U(vg,{Block:n(()=>R,"Block"),createSierraContractClass:n(()=>Zl,"createSierraContractClass"),getDefaultNodeUrl:n(()=>Da,"getDefaultNodeUrl"),isPendingBlock:n(()=>xg,"isPendingBlock"),isPendingStateUpdate:n(()=>Cg,"isPendingStateUpdate"),isPendingTransaction:n(()=>_g,"isPendingTransaction"),isV3Tx:n(()=>fe,"isV3Tx"),isVersion:n(()=>ti,"isVersion"),parseContract:n(()=>Eg,"parseContract"),validBlockTags:n(()=>Jl,"validBlockTags"),wait:n(()=>ea,"wait")});function ea(e){return new Promise(t=>{setTimeout(t,e)})}n(ea,"wait");function Zl(e){let t={...e};return delete t.sierra_program_debug_info,t.abi=Na(ye(e.abi)),t.sierra_program=Na(ye(e.sierra_program)),t.sierra_program=Zr(t.sierra_program),t}n(Zl,"createSierraContractClass");function Eg(e){let t=ee(e)?aa(e):e;return Le(e)?Zl(t):{...t,..."program"in t&&{program:Zr(t.program)}}}n(Eg,"parseContract");var Da=n((e,t=!1)=>{t||console.warn("Using default public node url, please provide nodeUrl in provider options!");let a=al[e??"SN_SEPOLIA"],o=Math.floor(Math.random()*a.length);return a[o]},"getDefaultNodeUrl"),Jl=Object.values(Nr),R=class{static{n(this,"Block")}hash=null;number=null;tag=null;setIdentifier(e){if(ee(e))if($r(e))this.number=parseInt(e,10);else if(_e(e))this.hash=e;else if(Jl.includes(e))this.tag=e;else throw TypeError(`Block identifier unmanaged: ${e}`);else ft(e)?this.hash=y(e):Zt(e)?this.number=e:this.tag="pending";if(Zt(this.number)&&this.number<0)throw TypeError(`Block number (${this.number}) can't be negative`)}constructor(e){this.setIdentifier(e)}get queryIdentifier(){return this.number!==null?`blockNumber=${this.number}`:this.hash!==null?`blockHash=${this.hash}`:`blockNumber=${this.tag}`}get identifier(){return this.number!==null?{block_number:this.number}:this.hash!==null?{block_hash:this.hash}:this.tag}set identifier(e){this.setIdentifier(e)}valueOf=n(()=>this.number,"valueOf");toString=n(()=>this.hash,"toString")};function fe(e){let t=e.version?y(e.version):O.ETransactionVersion.V3;return t===O.ETransactionVersion.V3||t===O.ETransactionVersion.F3}n(fe,"isV3Tx");function ti(e,t){let[a,o]=e.split("."),[r,i]=t.split(".");return a===r&&o===i}n(ti,"isVersion");function xg(e){return e.status==="PENDING"}n(xg,"isPendingBlock");function _g(e){return!("block_hash"in e)}n(_g,"isPendingTransaction");function Cg(e){return!("block_hash"in e)}n(Cg,"isPendingStateUpdate");var Ag={};U(Ag,{buildUDCCall:n(()=>zg,"buildUDCCall"),fromCallsToExecuteCalldata:n(()=>ai,"fromCallsToExecuteCalldata"),fromCallsToExecuteCalldataWithNonce:n(()=>Sg,"fromCallsToExecuteCalldataWithNonce"),fromCallsToExecuteCalldata_cairo1:n(()=>em,"fromCallsToExecuteCalldata_cairo1"),getExecuteCalldata:n(()=>Ig,"getExecuteCalldata"),getVersionsByType:n(()=>oi,"getVersionsByType"),transformCallsToMulticallArrays:n(()=>Ql,"transformCallsToMulticallArrays"),transformCallsToMulticallArrays_cairo1:n(()=>Tg,"transformCallsToMulticallArrays_cairo1")});var Ql=n(e=>{let t=[],a=[];return e.forEach(o=>{let r=P.compile(o.calldata||[]);t.push({to:K(o.contractAddress).toString(10),selector:K(J(o.entrypoint)).toString(10),data_offset:a.length.toString(),data_len:r.length.toString()}),a.push(...r)}),{callArray:t,calldata:P.compile({calldata:a})}},"transformCallsToMulticallArrays"),ai=n(e=>{let{callArray:t,calldata:a}=Ql(e);return[...P.compile({callArray:t}),...a]},"fromCallsToExecuteCalldata"),Sg=n((e,t)=>[...ai(e),K(t).toString()],"fromCallsToExecuteCalldataWithNonce"),Tg=n(e=>e.map(a=>({to:K(a.contractAddress).toString(10),selector:K(J(a.entrypoint)).toString(10),calldata:P.compile(a.calldata||[])})),"transformCallsToMulticallArrays_cairo1"),em=n(e=>{let t=e.map(a=>({contractAddress:a.contractAddress,entrypoint:a.entrypoint,calldata:Array.isArray(a.calldata)&&"__compiled__"in a.calldata?a.calldata:P.compile(a.calldata)}));return P.compile({orderCalls:t})},"fromCallsToExecuteCalldata_cairo1"),Ig=n((e,t="0")=>t==="1"?em(e):ai(e),"getExecuteCalldata");function zg(e,t){let a=[].concat(e).map(o=>{let{classHash:r,salt:i,unique:s=!0,constructorCalldata:c=[]}=o,u=P.compile(c),p=i??Wl();return{call:{contractAddress:Ca.ADDRESS,entrypoint:Ca.ENTRYPOINT,calldata:[r,p,gl(s),u.length,...u]},address:Fl(s?Ct(t,p):p,r,u,s?Ca.ADDRESS:0)}});return{calls:a.map(o=>o.call),addresses:a.map(o=>o.address)}}n(zg,"buildUDCCall");function oi(e){return e==="fee"?{v1:O.ETransactionVersion.F1,v2:O.ETransactionVersion.F2,v3:O.ETransactionVersion.F3}:{v1:O.ETransactionVersion.V1,v2:O.ETransactionVersion.V2,v3:O.ETransactionVersion.V3}}n(oi,"getVersionsByType");var dr={headers:{"Content-Type":"application/json"},blockIdentifier:"pending",retries:200},Og=class{static{n(this,"RpcChannel")}nodeUrl;headers;retries;requestId;blockIdentifier;chainId;specVersion;waitMode;constructor(e){let{nodeUrl:t,retries:a,headers:o,blockIdentifier:r,chainId:i,specVersion:s,waitMode:c}=e||{};Object.values(Io).includes(t)?this.nodeUrl=Da(t,e?.default):t?this.nodeUrl=t:this.nodeUrl=Da(void 0,e?.default),this.retries=a||dr.retries,this.headers={...dr.headers,...o},this.blockIdentifier=r||dr.blockIdentifier,this.chainId=i,this.specVersion=s,this.waitMode=c||!1,this.requestId=0}setChainId(e){this.chainId=e}fetch(e,t,a=0){let o={id:a,jsonrpc:"2.0",method:e,...t&&{params:t}};return Xl(this.nodeUrl,{method:"POST",body:ye(o),headers:this.headers})}errorHandler(e,t,a,o){if(a){let{code:r,message:i,data:s}=a;throw new Ta(`RPC: ${e} with params ${ye(t,null,2)}
29
+ expected: ${a}`);return a.map((r,i)=>({element:o[i],type:r.type??r}))}n(Pf,"parseTuple");function Rf(e){let t=Oo(e);return[t.data.length.toString(),...t.data.map(a=>a.toString()),t.pending_word.toString(),t.pending_word_len.toString()]}n(Rf,"parseByteArray");function Pe(e,t,a,o){if(e===void 0)throw Error(`Missing parameter for type ${t}`);if(Array.isArray(e)){let r=[];r.push(we(e.length));let i=He(t);return e.reduce((s,c)=>s.concat(Pe(c,i,a,o)),r)}if(a[t]&&a[t].members.length){if(Z.isAbiType(t))return new Z(e).toApiRequest();if(pe.isAbiType(t))return new pe(e).toApiRequest();if(t==="core::starknet::eth_address::EthAddress")return Yt(t,e);if(t==="core::byte_array::ByteArray")return Rf(e);let{members:r}=a[t],i=e;return r.reduce((s,c)=>s.concat(Pe(i[c.name],c.type,a,o)),[])}if(gt(t))return Pf(e,t).reduce((i,s)=>{let c=Pe(s.element,s.type,a,o);return i.concat(c)},[]);if(Z.isAbiType(t))return new Z(e).toApiRequest();if(pe.isAbiType(t))return new pe(e).toApiRequest();if(Ot(t,o)){let{variants:r}=o[t];if(No(t)){let l=e;if(l.isSome()){let h=r.find(d=>d.name==="Some");if(typeof h>"u")throw Error("Error in abi : Option has no 'Some' variant.");let g=h.type;if(g==="()")return"0";let f=Pe(l.unwrap(),g,a,o);return Array.isArray(f)?["0",...f]:["0",f]}return"1"}if(Do(t)){let l=e;if(l.isOk()){let d=r.find(v=>v.name==="Ok");if(typeof d>"u")throw Error("Error in abi : Result has no 'Ok' variant.");let k=d.type;if(k==="()")return"0";let b=Pe(l.unwrap(),k,a,o);return Array.isArray(b)?["0",...b]:["0",b]}let h=r.find(d=>d.name==="Err");if(typeof h>"u")throw Error("Error in abi : Result has no 'Err' variant.");let g=h.type;if(g==="()")return"1";let f=Pe(l.unwrap(),g,a,o);return Array.isArray(f)?["1",...f]:["1",f]}let i=e,s=i.activeVariant(),c=r.find(l=>l.name===s);if(typeof c>"u")throw Error(`Not find in abi : Enum has no '${s}' variant.`);let u=c.type,p=r.findIndex(l=>l.name===s);if(u==="()")return p.toString();let m=Pe(i.unwrap(),u,a,o);return Array.isArray(m)?[p.toString(),...m]:[p.toString(),m]}if(Nt(t))return Yt(He(t),e);if(typeof e=="object")throw Error(`Parameter ${e} do not align with abi parameter ${t}`);return Yt(t,e)}n(Pe,"parseCalldataValue");function Lf(e,t,a,o){let{name:r,type:i}=t,{value:s}=e.next();switch(!0){case dt(i):if(!Array.isArray(s)&&!Ra(s))throw Error(`ABI expected parameter ${r} to be array or long string, got ${s}`);return ee(s)&&(s=Mr(s)),Pe(s,t.type,a,o);case Nt(i):return Yt(He(i),s);case i==="core::starknet::eth_address::EthAddress":return Yt(i,s);case(La(i,a)||gt(i)||Z.isAbiType(i)||Z.isAbiType(i)):return Pe(s,i,a,o);case Ot(i,o):return Pe(s,i,a,o);default:return Yt(i,s)}}n(Lf,"parseCalldataField");function br(e,t){let a;switch(!0){case Bo(e):return a=t.next().value,!!BigInt(a);case Z.isAbiType(e):let o=t.next().value,r=t.next().value;return new Z(o,r).toBigInt();case pe.isAbiType(e):let i=t.next().value,s=t.next().value,c=t.next().value,u=t.next().value;return new pe(i,s,c,u).toBigInt();case e==="core::starknet::eth_address::EthAddress":return a=t.next().value,BigInt(a);case e==="core::bytes_31::bytes31":return a=t.next().value,It(a);case Ro(e):let p=ke(t.next().value).padStart(32,"0"),m=ke(t.next().value).padStart(32,"0"),l=ke(t.next().value).padStart(32,"0"),h=ke(t.next().value).padStart(32,"0");return BigInt(M(m+p+h+l));default:return a=t.next().value,BigInt(a)}}n(br,"parseBaseTypes2");function xe(e,t,a,o){if(t.type==="()")return{};if(Z.isAbiType(t.type)){let r=e.next().value,i=e.next().value;return new Z(r,i).toBigInt()}if(pe.isAbiType(t.type)){let r=e.next().value,i=e.next().value,s=e.next().value,c=e.next().value;return new pe(r,i,s,c).toBigInt()}if(Po(t.type)){let r=[],i=BigInt(e.next().value);for(;r.length<i;)r.push(y(e.next().value));let s=y(e.next().value),c=BigInt(e.next().value);return kl({data:r,pending_word:s,pending_word_len:c})}if(dt(t.type)){let r=[],i={name:"",type:He(t.type)},s=BigInt(e.next().value);for(;r.length<s;)r.push(xe(e,i,a,o));return r}if(Nt(t.type)){let r={name:"",type:He(t.type)};return xe(e,r,a,o)}if(a&&t.type in a&&a[t.type])return t.type==="core::starknet::eth_address::EthAddress"?br(t.type,e):a[t.type].members.reduce((r,i)=>(r[i.name]=xe(e,i,a,o),r),{});if(o&&t.type in o&&o[t.type]){let r=Number(e.next().value),i=o[t.type].variants.reduce((c,u,p)=>p===r?(c[u.name]=xe(e,{name:"",type:u.type},a,o),c):(c[u.name]=void 0,c),{});if(t.type.startsWith("core::option::Option")){let c=r===0?i.Some:void 0;return new kr(r,c)}if(t.type.startsWith("core::result::Result")){let c;return r===0?c=i.Ok:c=i.Err,new yr(r,c)}return new Va(i)}if(gt(t.type))return Gr(t.type).reduce((i,s,c)=>{let u=s?.name?s.name:c,p=s?.type?s.type:s,m={name:u,type:p};return i[u]=xe(e,m,a,o),i},{});if(dt(t.type)){let r=[],i={name:"",type:He(t.type)},s=BigInt(e.next().value);for(;r.length<s;)r.push(xe(e,i,a,o));return r}return br(t.type,e)}n(xe,"parseResponseValue");function So(e,t,a,o,r){let{name:i,type:s}=t,c;switch(!0){case zt(i):return c=e.next().value,BigInt(c);case(a&&s in a||gt(s)):return xe(e,t,a,o);case(o&&Ot(s,o)):return xe(e,t,a,o);case dt(s):if(ht(s))return xe(e,t,a,o);let u=[];if(r&&r[`${i}_len`]){let p=r[`${i}_len`];for(;u.length<p;)u.push(xe(e,{name:i,type:t.type.replace("*","")},a,o))}return u;case Nt(s):return xe(e,t,a,o);default:return br(s,e)}}n(So,"responseParser");var Yr=n((e,t)=>{if(z(ee(e)||Xt(e)||ft(e),`Validate: arg ${t.name} should be a felt typed as (String, Number or BigInt)`),ee(e)&&!_e(e))return;let a=BigInt(e.toString(10));z(a>=0n&&a<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`)},"validateFelt"),Vf=n((e,t)=>{z(ee(e),`Validate: arg ${t.name} should be a string.`),z(e.length<32,`Validate: arg ${t.name} cairo typed ${t.type} should be a string of less than 32 characters.`)},"validateBytes31"),Hf=n((e,t)=>{z(ee(e),`Validate: arg ${t.name} should be a string.`)},"validateByteArray"),Lo=n((e,t)=>{Xt(e)&&z(e<=Number.MAX_SAFE_INTEGER,"Validation: Parameter is to large to be typed as Number use (BigInt or String)"),z(ee(e)||Xt(e)||ft(e)||typeof e=="object"&&"low"in e&&"high"in e||typeof e=="object"&&["limb0","limb1","limb2","limb3"].every(o=>o in e),`Validate: arg ${t.name} of cairo type ${t.type} should be type (String, Number or BigInt), but is ${typeof e} ${e}.`);let a;switch(t.type){case"core::integer::u256":a=new Z(e).toBigInt();break;case"core::integer::u512":a=new pe(e).toBigInt();break;default:a=K(e)}switch(t.type){case"core::integer::u8":z(a>=0n&&a<=255n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0 - 255]`);break;case"core::integer::u16":z(a>=0n&&a<=65535n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 65535]`);break;case"core::integer::u32":z(a>=0n&&a<=4294967295n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 4294967295]`);break;case"core::integer::u64":z(a>=0n&&a<=2n**64n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^64-1]`);break;case"core::integer::u128":z(a>=0n&&a<=2n**128n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^128-1]`);break;case"core::integer::u256":z(a>=0n&&a<=2n**256n-1n,`Validate: arg ${t.name} is ${t.type} 0 - 2^256-1`);break;case"core::integer::u512":z(pe.is(a),`Validate: arg ${t.name} is ${t.type} 0 - 2^512-1`);break;case"core::starknet::class_hash::ClassHash":z(a>=0n&&a<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`);break;case"core::starknet::contract_address::ContractAddress":z(a>=0n&&a<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`);break;case"core::starknet::secp256k1::Secp256k1Point":{z(a>=0n&&a<=2n**512n-1n,`Validate: arg ${t.name} must be ${t.type} : a 512 bits number.`);break}default:break}},"validateUint"),_l=n((e,t)=>{z(Lr(e),`Validate: arg ${t.name} of cairo type ${t.type} should be type (Boolean)`)},"validateBool"),Cl=n((e,t,a)=>{if(t.type==="core::integer::u256"||t.type==="core::integer::u512"){Lo(e,t);return}if(t.type==="core::starknet::eth_address::EthAddress"){z(typeof e!="object",`EthAddress type is waiting a BigNumberish. Got ${e}`);let o=BigInt(e.toString(10));z(o>=0n&&o<=2n**160n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^160-1]`);return}z(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} is cairo type struct (${t.type}), and should be defined as js object (not array)`),a[t.type].members.forEach(({name:o})=>{z(Object.keys(e).includes(o),`Validate: arg ${t.name} should have a property ${o}`)})},"validateStruct"),Al=n((e,t)=>{z(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} is cairo type Enum (${t.type}), and should be defined as js object (not array)`);let a=Object.getOwnPropertyNames(Object.getPrototypeOf(e)),o=[...Object.getOwnPropertyNames(e),...a];if(!(No(t.type)&&o.includes("isSome")&&o.includes("isNone"))&&!(Do(t.type)&&o.includes("isOk")&&o.includes("isErr"))&&!(o.includes("variant")&&o.includes("activeVariant")))throw new Error(`Validate Enum: argument ${t.name}, type ${t.type}, value received ${e}, is not an Enum.`)},"validateEnum"),Sl=n((e,t)=>{z(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} should be a tuple (defined as object)`)},"validateTuple"),Tl=n((e,t,a,o)=>{let r=He(t.type);if(!(Zt(r)&&Fr(e)))switch(z(Array.isArray(e),`Validate: arg ${t.name} should be an Array`),!0){case Zt(r):e.forEach(i=>Yr(i,t));break;case gt(r):e.forEach(i=>Sl(i,{name:t.name,type:r}));break;case dt(r):e.forEach(i=>Tl(i,{name:"",type:r},a,o));break;case La(r,a):e.forEach(i=>Cl(i,{name:t.name,type:r},a));break;case Ot(r,o):e.forEach(i=>Al(i,{name:t.name,type:r}));break;case(za(r)||Ur(r)):e.forEach(i=>Lo(i,{name:"",type:r}));break;case Bo(r):e.forEach(i=>_l(i,t));break;default:throw new Error(`Validate Unhandled: argument ${t.name}, type ${t.type}, value ${e}`)}},"validateArray"),$f=n((e,t)=>{let a=He(t.type);switch(z(za(a)&&a!==pe.abiSelector||Zt(a),`Validate: ${t.name} type is not authorized for NonZero type.`),!0){case Zt(a):Yr(e,t),z(BigInt(e.toString(10))>0,"Validate: value 0 is not authorized in NonZero felt252 type.");break;case za(a):switch(Lo(e,{name:"",type:a}),t.type){case"core::integer::u256":z(new Z(e).toBigInt()>0,"Validate: value 0 is not authorized in NonZero uint256 type.");break;default:z(K(e)>0,"Validate: value 0 is not authorized in NonZero uint type.")}break;default:throw new Error(`Validate Unhandled: argument ${t.name}, type ${t.type}, value ${e}`)}},"validateNonZero");function ku(e,t,a,o){e.inputs.reduce((r,i)=>{let s=t[r];switch(!0){case zt(i.name):return r;case Zt(i.type):Yr(s,i);break;case qr(i.type):Vf(s,i);break;case(za(i.type)||Ur(i.type)):Lo(s,i);break;case Bo(i.type):_l(s,i);break;case Po(i.type):Hf(s,i);break;case dt(i.type):Tl(s,i,a,o);break;case La(i.type,a):Cl(s,i,a);break;case Ot(i.type,o):Al(s,i);break;case gt(i.type):Sl(s,i);break;case Nt(i.type):$f(s,i);break;default:throw new Error(`Validate Unhandled: argument ${i.name}, type ${i.type}, value ${s}`)}return r+1},0)}n(ku,"validateFields");var P=class _a{static{n(this,"_CallData")}abi;parser;structs;enums;constructor(t){this.structs=_a.getAbiStruct(t),this.enums=_a.getAbiEnum(t),this.parser=xl(t),this.abi=this.parser.getLegacyFormat()}validate(t,a,o=[]){if(t!=="DEPLOY"){let s=this.abi.filter(c=>{if(c.type!=="function")return!1;let u=c.stateMutability==="view"||c.state_mutability==="view";return t==="INVOKE"?!u:u}).map(c=>c.name);z(s.includes(a),`${t==="INVOKE"?"invocable":"viewable"} method not found in abi`)}let r=this.abi.find(s=>t==="DEPLOY"?s.name===a&&s.type==="constructor":s.name===a&&s.type==="function");if(fu(a,o,r))return;let i=this.parser.methodInputsLength(r);if(o.length!==i)throw Error(`Invalid number of arguments, expected ${i} arguments, but got ${o.length}`);ku(r,o,this.structs,this.enums)}compile(t,a){let o=this.abi.find(c=>c.name===t);if(fu(t,a,o))return[];let r;if(Array.isArray(a))r=a;else{let c=Bf(a,o.inputs,this.structs,this.enums);r=Object.values(c),ku(o,r,this.structs,this.enums)}let i=r[Symbol.iterator](),s=o.inputs.reduce((c,u)=>zt(u.name)&&!ht(u.type)?c:c.concat(Lf(i,u,this.structs,this.enums)),[]);return Object.defineProperty(s,"__compiled__",{enumerable:!1,writable:!1,value:!0}),s}static compile(t){let a=n(r=>{let i=n((c,u=".")=>{let p=Array.isArray(c)?[c.length.toString(),...c]:c;return Object.entries(p).flatMap(([m,l])=>{let h=l;m==="entrypoint"?h=J(h):Fr(h)&&(h=Oo(h));let g=Array.isArray(p)&&m==="0"?"$$len":m;if(ft(h))return[[`${u}${g}`,we(h)]];if(Object(h)===h){let f=Object.getOwnPropertyNames(Object.getPrototypeOf(h)),d=[...Object.getOwnPropertyNames(h),...f];if(d.includes("isSome")&&d.includes("isNone")){let k=h,b=k.isSome()?0:1;return k.isSome()?i({0:b,1:k.unwrap()},`${u}${g}.`):[[`${u}${g}`,we(b)]]}if(d.includes("isOk")&&d.includes("isErr")){let k=h,b=k.isOk()?0:1;return i({0:b,1:k.unwrap()},`${u}${g}.`)}if(d.includes("variant")&&d.includes("activeVariant")){let k=h,b=k.activeVariant(),E=Object.keys(k.variant).findIndex(T=>T===b);return typeof k.unwrap()=="object"&&Object.keys(k.unwrap()).length===0?[[`${u}${g}`,we(E)]]:i({0:E,1:k.unwrap()},`${u}${g}.`)}return i(h,`${u}${g}.`)}return[[`${u}${g}`,we(h)]]})},"getEntries");return Object.fromEntries(i(r))},"createTree"),o;if(Array.isArray(t)){let r={...t},i=a(r);o=Object.values(i)}else{let r=a(t);o=Object.values(r)}return Object.defineProperty(o,"__compiled__",{enumerable:!1,writable:!1,value:!0}),o}parse(t,a){let{outputs:o}=this.abi.find(s=>s.name===t),r=a.flat()[Symbol.iterator](),i=o.flat().reduce((s,c,u)=>{let p=c.name??u;return s[p]=So(r,c,this.structs,this.enums,s),s[p]&&s[`${p}_len`]&&delete s[`${p}_len`],s},{});return Object.keys(i).length===1&&0 in i?i[0]:i}format(t,a,o){let r=this.parse(t,a);return vo(r,o)}static getAbiStruct(t){return t.filter(a=>a.type==="struct").reduce((a,o)=>({...a,[o.name]:o}),{})}static getAbiEnum(t){let a=t.filter(o=>o.type==="enum").reduce((o,r)=>({...o,[r.name]:r}),{});return delete a["core::bool"],a}static toCalldata(t=[]){return _a.compile(t)}static toHex(t=[]){return _a.compile(t).map(o=>y(o))}decodeParameters(t,a){let o=Array.isArray(t)?t:[t],r=a.flat()[Symbol.iterator](),i=o.map(s=>So(r,{name:"",type:s},this.structs,this.enums));return i.length===1?i[0]:i}},Xr={};U(Xr,{calculateContractAddressFromHash:n(()=>$l,"calculateContractAddressFromHash"),calculateDeclareTransactionHash:n(()=>Jf,"calculateDeclareTransactionHash"),calculateDeployAccountTransactionHash:n(()=>eg,"calculateDeployAccountTransactionHash"),calculateInvokeTransactionHash:n(()=>Xf,"calculateInvokeTransactionHash"),computeCompiledClassHash:n(()=>sg,"computeCompiledClassHash"),computeContractClassHash:n(()=>ug,"computeContractClassHash"),computeHashOnElements:n(()=>Re,"computeHashOnElements"),computeHintedClassHash:n(()=>Fl,"computeHintedClassHash"),computeLegacyContractClassHash:n(()=>Ml,"computeLegacyContractClassHash"),computePedersenHash:n(()=>Oa,"computePedersenHash"),computePedersenHashOnElements:n(()=>Vl,"computePedersenHashOnElements"),computePoseidonHash:n(()=>Ll,"computePoseidonHash"),computePoseidonHashOnElements:n(()=>Hl,"computePoseidonHashOnElements"),computeSierraContractClassHash:n(()=>ql,"computeSierraContractClassHash"),formatSpaces:n(()=>Na,"formatSpaces"),getSelector:n(()=>zo,"getSelector"),getSelectorFromName:n(()=>J,"getSelectorFromName"),hashByteCodeSegments:n(()=>Ul,"hashByteCodeSegments"),keccakBn:n(()=>gl,"keccakBn"),poseidon:n(()=>En,"poseidon"),starknetKeccak:n(()=>Vr,"starknetKeccak")});var Ff={};U(Ff,{calculateDeclareTransactionHash:n(()=>Il,"calculateDeclareTransactionHash"),calculateDeployAccountTransactionHash:n(()=>zl,"calculateDeployAccountTransactionHash"),calculateTransactionHash:n(()=>Ol,"calculateTransactionHash"),calculateTransactionHashCommon:n(()=>Vo,"calculateTransactionHashCommon"),computeHashOnElements:n(()=>wr,"computeHashOnElements")});var Mf={};U(Mf,{starkCurve:n(()=>vn,"starkCurve"),weierstrass:n(()=>Ni,"weierstrass")});function wr(e){return[...e,e.length].reduce((t,a)=>_t(K(t),K(a)),0).toString()}n(wr,"computeHashOnElements");function Vo(e,t,a,o,r,i,s,c=[]){let u=wr(r),p=[e,t,a,o,u,i,s,...c];return wr(p)}n(Vo,"calculateTransactionHashCommon");function Il(e,t,a,o,r,i,s){return Vo("0x6465636c617265",a,t,0,[e],o,r,[i,...s?[s]:[]])}n(Il,"calculateDeclareTransactionHash");function zl(e,t,a,o,r,i,s,c){let u=[t,o,...a];return Vo("0x6465706c6f795f6163636f756e74",r,e,0,u,i,s,[c])}n(zl,"calculateDeployAccountTransactionHash");function Ol(e,t,a,o,r,i){return Vo("0x696e766f6b65",t,e,0,a,o,r,[i])}n(Ol,"calculateTransactionHash");var Uf={};U(Uf,{calculateDeclareTransactionHash:n(()=>Pl,"calculateDeclareTransactionHash"),calculateDeployAccountTransactionHash:n(()=>Bl,"calculateDeployAccountTransactionHash"),calculateInvokeTransactionHash:n(()=>Rl,"calculateInvokeTransactionHash"),calculateTransactionHashCommon:n(()=>Ho,"calculateTransactionHashCommon"),hashDAMode:n(()=>Nl,"hashDAMode"),hashFeeField:n(()=>Dl,"hashFeeField")});var mt=n(e=>e.map(t=>BigInt(t)),"AToBI"),qf=32n,Kf=64n,jr=128n,yu=Kf+jr,Wf=BigInt(se("L1_GAS")),Gf=BigInt(se("L2_GAS"));function Nl(e,t){return(BigInt(e)<<qf)+BigInt(t)}n(Nl,"hashDAMode");function Dl(e,t){let a=(Wf<<yu)+(BigInt(t.l1_gas.max_amount)<<jr)+BigInt(t.l1_gas.max_price_per_unit),o=(Gf<<yu)+(BigInt(t.l2_gas.max_amount)<<jr)+BigInt(t.l2_gas.max_price_per_unit);return Y([BigInt(e),a,o])}n(Dl,"hashFeeField");function Ho(e,t,a,o,r,i,s,c,u,p,m=[]){let l=Dl(i,p),h=Nl(c,u),g=mt([e,t,a,l,Y(mt(s)),o,r,h,...mt(m)]);return y(Y(g))}n(Ho,"calculateTransactionHashCommon2");function Bl(e,t,a,o,r,i,s,c,u,p,m,l){return Ho("0x6465706c6f795f6163636f756e74",r,e,i,s,m,l,c,u,p,[Y(mt(a)),t,o])}n(Bl,"calculateDeployAccountTransactionHash2");function Pl(e,t,a,o,r,i,s,c,u,p,m,l){return Ho("0x6465636c617265",o,a,r,i,m,mt(l),c,u,p,[Y(mt(s)),e,t])}n(Pl,"calculateDeclareTransactionHash2");function Rl(e,t,a,o,r,i,s,c,u,p,m){return Ho("0x696e766f6b65",t,e,o,r,p,m,s,c,u,[Y(mt(i)),Y(mt(a))])}n(Rl,"calculateInvokeTransactionHash");function Yf(e){return[O.ETransactionVersion.V3,O.ETransactionVersion.F3].includes(e.version)}n(Yf,"isV3InvokeTx");function Xf(e){return Yf(e)?Rl(e.senderAddress,e.version,e.compiledCalldata,e.chainId,e.nonce,e.accountDeploymentData,e.nonceDataAvailabilityMode,e.feeDataAvailabilityMode,e.resourceBounds,e.tip,e.paymasterData):Ol(e.senderAddress,e.version,e.compiledCalldata,e.maxFee,e.chainId,e.nonce)}n(Xf,"calculateInvokeTransactionHash2");function Zf(e){return[O.ETransactionVersion.V3,O.ETransactionVersion.F3].includes(e.version)}n(Zf,"isV3DeclareTx");function Jf(e){return Zf(e)?Pl(e.classHash,e.compiledClassHash,e.senderAddress,e.version,e.chainId,e.nonce,e.accountDeploymentData,e.nonceDataAvailabilityMode,e.feeDataAvailabilityMode,e.resourceBounds,e.tip,e.paymasterData):Il(e.classHash,e.senderAddress,e.version,e.maxFee,e.chainId,e.nonce,e.compiledClassHash)}n(Jf,"calculateDeclareTransactionHash3");function Qf(e){return[O.ETransactionVersion.V3,O.ETransactionVersion.F3].includes(e.version)}n(Qf,"isV3DeployAccountTx");function eg(e){return Qf(e)?Bl(e.contractAddress,e.classHash,e.compiledConstructorCalldata,e.salt,e.version,e.chainId,e.nonce,e.nonceDataAvailabilityMode,e.feeDataAvailabilityMode,e.resourceBounds,e.tip,e.paymasterData):zl(e.contractAddress,e.classHash,e.constructorCalldata,e.salt,e.version,e.maxFee,e.chainId,e.nonce)}n(eg,"calculateDeployAccountTransactionHash3");var tg={};U(tg,{parse:n(()=>ta,"parse"),parseAlwaysAsBig:n(()=>og,"parseAlwaysAsBig"),stringify:n(()=>ye,"stringify"),stringifyAlwaysAsBig:n(()=>ng,"stringifyAlwaysAsBig")});var ag=n(e=>{if(!Ke(e))return parseFloat(e);let t=parseInt(e,10);return Number.isSafeInteger(t)?t:BigInt(e)},"parseIntAsNumberOrBigInt"),ta=n(e=>mo(String(e),void 0,ag),"parse2"),og=n(e=>mo(String(e),void 0,Sn),"parseAlwaysAsBig"),ye=n((e,t,a,o)=>po(e,t,a,o),"stringify2"),ng=ye;function Oa(e,t){return _t(BigInt(e),BigInt(t))}n(Oa,"computePedersenHash");function Ll(e,t){return y(co(BigInt(e),BigInt(t)))}n(Ll,"computePoseidonHash");function Re(e){return[...e,e.length].reduce((t,a)=>_t(BigInt(t),BigInt(a)),0).toString()}n(Re,"computeHashOnElements2");var Vl=Re;function Hl(e){return y(Y(e.map(t=>BigInt(t))))}n(Hl,"computePoseidonHashOnElements");function $l(e,t,a,o){let r=P.compile(a),i=Re(r),s=we("0x535441524b4e45545f434f4e54524143545f41444452455353"),c=Re([s,o,e,t,i]);return y(BigInt(c)%Gu)}n($l,"calculateContractAddressFromHash");function rg(e,t){return e==="attributes"||e==="accessible_scopes"?Array.isArray(t)&&t.length===0?void 0:t:e==="debug_info"?null:t===null?void 0:t}n(rg,"nullSkipReplacer");function Na(e){let t=!1,a=[];for(let o of e)o==='"'&&!(a.length>0&&a.slice(-1)[0]==="\\")&&(t=!t),t?a.push(o):a.push(o===":"?": ":o===","?", ":o);return a.join("")}n(Na,"formatSpaces");function Fl(e){let{abi:t,program:a}=e,r=Na(ye({abi:t,program:a},rg));return M(Te(pt(r)).toString(16))}n(Fl,"computeHintedClassHash");function Ml(e){let t=ee(e)?ta(e):e,a=y(Ku),o=Re(t.entry_points_by_type.EXTERNAL.flatMap(p=>[p.selector,p.offset])),r=Re(t.entry_points_by_type.L1_HANDLER.flatMap(p=>[p.selector,p.offset])),i=Re(t.entry_points_by_type.CONSTRUCTOR.flatMap(p=>[p.selector,p.offset])),s=Re(t.program.builtins.map(p=>se(p))),c=Fl(t),u=Re(t.program.data);return Re([a,o,r,i,s,c,u])}n(Ml,"computeLegacyContractClassHash");function ig(e){return Y(e.flatMap(t=>BigInt(se(t))))}n(ig,"hashBuiltins");function mr(e){let t=e.flatMap(a=>[BigInt(a.selector),BigInt(a.offset),ig(a.builtins)]);return Y(t)}n(mr,"hashEntryPoint");function Ul(e){let t=e.bytecode.map(i=>BigInt(i)),a=e.bytecode_segment_lengths??[],o=0,r=a.flatMap(i=>{let s=t.slice(o,o+=i);return[BigInt(i),Y(s)]});return 1n+Y(r)}n(Ul,"hashByteCodeSegments");function sg(e){let a=BigInt(se("COMPILED_CLASS_V1")),o=mr(e.entry_points_by_type.EXTERNAL),r=mr(e.entry_points_by_type.L1_HANDLER),i=mr(e.entry_points_by_type.CONSTRUCTOR),s=e.bytecode_segment_lengths?Ul(e):Y(e.bytecode.map(c=>BigInt(c)));return y(Y([a,o,r,i,s]))}n(sg,"computeCompiledClassHash");function pr(e){let t=e.flatMap(a=>[BigInt(a.selector),BigInt(a.function_idx)]);return Y(t)}n(pr,"hashEntryPointSierra");function cg(e){let t=Na(ye(e.abi,null));return BigInt(M(Te(pt(t)).toString(16)))}n(cg,"hashAbi");function ql(e){let a=BigInt(se("CONTRACT_CLASS_V0.1.0")),o=pr(e.entry_points_by_type.EXTERNAL),r=pr(e.entry_points_by_type.L1_HANDLER),i=pr(e.entry_points_by_type.CONSTRUCTOR),s=cg(e),c=Y(e.sierra_program.map(u=>BigInt(u)));return y(Y([a,o,r,i,s,c]))}n(ql,"computeSierraContractClassHash");function ug(e){let t=ee(e)?ta(e):e;return"sierra_program"in t?ql(t):Ml(t)}n(ug,"computeContractClassHash");var lg={};U(lg,{compressProgram:n(()=>Zr,"compressProgram"),decompressProgram:n(()=>Tt,"decompressProgram"),estimateFeeToBounds:n(()=>Qr,"estimateFeeToBounds"),estimatedFeeToMaxFee:n(()=>Wl,"estimatedFeeToMaxFee"),formatSignature:n(()=>Jr,"formatSignature"),intDAM:n(()=>dg,"intDAM"),makeAddress:n(()=>mg,"makeAddress"),randomAddress:n(()=>Kl,"randomAddress"),reduceV2:n(()=>kg,"reduceV2"),signatureToDecimalArray:n(()=>pg,"signatureToDecimalArray"),signatureToHexArray:n(()=>Q,"signatureToHexArray"),toFeeVersion:n(()=>fg,"toFeeVersion"),toTransactionVersion:n(()=>hg,"toTransactionVersion"),v3Details:n(()=>gg,"v3Details")});function Zr(e){let t=ee(e)?e:ye(e),a=Pi(t);return Vu(a)}n(Zr,"compressProgram");function Tt(e){if(Array.isArray(e))return e;let t=Ru(Ri(Lu(e)));return ta(t)}n(Tt,"decompressProgram");function Kl(){let e=io.randomPrivateKey();return so(e)}n(Kl,"randomAddress");function mg(e){return M(e).toLowerCase()}n(mg,"makeAddress");function Jr(e){if(!e)throw Error("formatSignature: provided signature is undefined");if(Array.isArray(e))return e.map(t=>y(t));try{let{r:t,s:a}=e;return[y(t),y(a)]}catch{throw new Error("Signature need to be weierstrass.SignatureType or an array for custom")}}n(Jr,"formatSignature");function pg(e){return pl(Jr(e))}n(pg,"signatureToDecimalArray");function Q(e){return dl(Jr(e))}n(Q,"signatureToHexArray");function Wl(e,t=50){return Aa(e,t)}n(Wl,"estimatedFeeToMaxFee");function Qr(e,t=50,a=50){if(ft(e))return{l2_gas:{max_amount:"0x0",max_price_per_unit:"0x0"},l1_gas:{max_amount:"0x0",max_price_per_unit:"0x0"}};if(typeof e.gas_consumed>"u"||typeof e.gas_price>"u")throw Error("estimateFeeToBounds: estimate is undefined");let o=e.data_gas_consumed!==void 0&&e.data_gas_price!==void 0?y(Aa(BigInt(e.overall_fee)/BigInt(e.gas_price),t)):y(Aa(e.gas_consumed,t)),r=y(Aa(e.gas_price,a));return{l2_gas:{max_amount:"0x0",max_price_per_unit:"0x0"},l1_gas:{max_amount:o,max_price_per_unit:r}}}n(Qr,"estimateFeeToBounds");function dg(e){if(e===O.EDataAvailabilityMode.L1)return O.EDAMode.L1;if(e===O.EDataAvailabilityMode.L2)return O.EDAMode.L2;throw Error("EDAM conversion")}n(dg,"intDAM");function hg(e,t){let a=t?y(t):void 0,o=y(e);if(t&&!Object.values(O.ETransactionVersion).includes(a))throw Error(`providedVersion ${t} is not ETransactionVersion`);if(!Object.values(O.ETransactionVersion).includes(o))throw Error(`defaultVersion ${e} is not ETransactionVersion`);return t?a:o}n(hg,"toTransactionVersion");function fg(e){if(!e)return;let t=y(e);if(t===O.ETransactionVersion.V0)return O.ETransactionVersion.F0;if(t===O.ETransactionVersion.V1)return O.ETransactionVersion.F1;if(t===O.ETransactionVersion.V2)return O.ETransactionVersion.F2;if(t===O.ETransactionVersion.V3)return O.ETransactionVersion.F3;throw Error(`toFeeVersion: ${t} is not supported`)}n(fg,"toFeeVersion");function gg(e){return{tip:e.tip||0,paymasterData:e.paymasterData||[],accountDeploymentData:e.accountDeploymentData||[],nonceDataAvailabilityMode:e.nonceDataAvailabilityMode||O.EDataAvailabilityMode.L1,feeDataAvailabilityMode:e.feeDataAvailabilityMode||O.EDataAvailabilityMode.L1,resourceBounds:e.resourceBounds??Qr(Ge)}}n(gg,"v3Details");function kg(e){return e===O.ETransactionVersion.F2?O.ETransactionVersion.F1:e===O.ETransactionVersion.V2?O.ETransactionVersion.V1:e}n(kg,"reduceV2");function Le(e){return"sierra_program"in(ee(e)?ta(e):e)}n(Le,"isSierra");var yg={};U(yg,{ethRandomPrivateKey:n(()=>bg,"ethRandomPrivateKey"),validateAndParseEthAddress:n(()=>ei,"validateAndParseEthAddress")});function bg(){return Uu(Hu(Di.utils.randomPrivateKey()))}n(bg,"ethRandomPrivateKey");function ei(e){ml(e,Ge,2n**160n-1n,"Ethereum Address ");let t=M(ke(y(e)).padStart(40,"0"));return z(!!t.match(/^(0x)?[0-9a-f]{40}$/),"Invalid Ethereum Address Format"),t}n(ei,"validateAndParseEthAddress");var Yl=typeof window<"u"&&window.fetch||typeof global<"u"&&ir(global.fetch)||Gl.default,wg={};U(wg,{Block:n(()=>R,"Block"),createSierraContractClass:n(()=>Xl,"createSierraContractClass"),getDefaultNodeUrl:n(()=>Da,"getDefaultNodeUrl"),isPendingBlock:n(()=>vg,"isPendingBlock"),isPendingStateUpdate:n(()=>xg,"isPendingStateUpdate"),isPendingTransaction:n(()=>Eg,"isPendingTransaction"),isV3Tx:n(()=>fe,"isV3Tx"),isVersion:n(()=>ti,"isVersion"),parseContract:n(()=>jg,"parseContract"),validBlockTags:n(()=>Zl,"validBlockTags"),wait:n(()=>Qt,"wait")});function Qt(e){return new Promise(t=>{setTimeout(t,e)})}n(Qt,"wait");function Xl(e){let t={...e};return delete t.sierra_program_debug_info,t.abi=Na(ye(e.abi)),t.sierra_program=Na(ye(e.sierra_program)),t.sierra_program=Zr(t.sierra_program),t}n(Xl,"createSierraContractClass");function jg(e){let t=ee(e)?ta(e):e;return Le(e)?Xl(t):{...t,..."program"in t&&{program:Zr(t.program)}}}n(jg,"parseContract");var Da=n((e,t=!1)=>{t||console.warn("Using default public node url, please provide nodeUrl in provider options!");let a=tl[e??"SN_SEPOLIA"],o=Math.floor(Math.random()*a.length);return a[o]},"getDefaultNodeUrl"),Zl=Object.values(Nr),R=class{static{n(this,"Block")}hash=null;number=null;tag=null;setIdentifier(e){if(ee(e))if($r(e))this.number=parseInt(e,10);else if(_e(e))this.hash=e;else if(Zl.includes(e))this.tag=e;else throw TypeError(`Block identifier unmanaged: ${e}`);else ft(e)?this.hash=y(e):Xt(e)?this.number=e:this.tag="pending";if(Xt(this.number)&&this.number<0)throw TypeError(`Block number (${this.number}) can't be negative`)}constructor(e){this.setIdentifier(e)}get queryIdentifier(){return this.number!==null?`blockNumber=${this.number}`:this.hash!==null?`blockHash=${this.hash}`:`blockNumber=${this.tag}`}get identifier(){return this.number!==null?{block_number:this.number}:this.hash!==null?{block_hash:this.hash}:this.tag}set identifier(e){this.setIdentifier(e)}valueOf=n(()=>this.number,"valueOf");toString=n(()=>this.hash,"toString")};function fe(e){let t=e.version?y(e.version):O.ETransactionVersion.V3;return t===O.ETransactionVersion.V3||t===O.ETransactionVersion.F3}n(fe,"isV3Tx");function ti(e,t){let[a,o]=e.split("."),[r,i]=t.split(".");return a===r&&o===i}n(ti,"isVersion");function vg(e){return e.status==="PENDING"}n(vg,"isPendingBlock");function Eg(e){return!("block_hash"in e)}n(Eg,"isPendingTransaction");function xg(e){return!("block_hash"in e)}n(xg,"isPendingStateUpdate");var _g={};U(_g,{buildUDCCall:n(()=>Tg,"buildUDCCall"),fromCallsToExecuteCalldata:n(()=>ai,"fromCallsToExecuteCalldata"),fromCallsToExecuteCalldataWithNonce:n(()=>Cg,"fromCallsToExecuteCalldataWithNonce"),fromCallsToExecuteCalldata_cairo1:n(()=>Ql,"fromCallsToExecuteCalldata_cairo1"),getExecuteCalldata:n(()=>Sg,"getExecuteCalldata"),getVersionsByType:n(()=>oi,"getVersionsByType"),transformCallsToMulticallArrays:n(()=>Jl,"transformCallsToMulticallArrays"),transformCallsToMulticallArrays_cairo1:n(()=>Ag,"transformCallsToMulticallArrays_cairo1")});var Jl=n(e=>{let t=[],a=[];return e.forEach(o=>{let r=P.compile(o.calldata||[]);t.push({to:K(o.contractAddress).toString(10),selector:K(J(o.entrypoint)).toString(10),data_offset:a.length.toString(),data_len:r.length.toString()}),a.push(...r)}),{callArray:t,calldata:P.compile({calldata:a})}},"transformCallsToMulticallArrays"),ai=n(e=>{let{callArray:t,calldata:a}=Jl(e);return[...P.compile({callArray:t}),...a]},"fromCallsToExecuteCalldata"),Cg=n((e,t)=>[...ai(e),K(t).toString()],"fromCallsToExecuteCalldataWithNonce"),Ag=n(e=>e.map(a=>({to:K(a.contractAddress).toString(10),selector:K(J(a.entrypoint)).toString(10),calldata:P.compile(a.calldata||[])})),"transformCallsToMulticallArrays_cairo1"),Ql=n(e=>{let t=e.map(a=>({contractAddress:a.contractAddress,entrypoint:a.entrypoint,calldata:Array.isArray(a.calldata)&&"__compiled__"in a.calldata?a.calldata:P.compile(a.calldata)}));return P.compile({orderCalls:t})},"fromCallsToExecuteCalldata_cairo1"),Sg=n((e,t="0")=>t==="1"?Ql(e):ai(e),"getExecuteCalldata");function Tg(e,t){let a=[].concat(e).map(o=>{let{classHash:r,salt:i,unique:s=!0,constructorCalldata:c=[]}=o,u=P.compile(c),p=i??Kl();return{call:{contractAddress:Ca.ADDRESS,entrypoint:Ca.ENTRYPOINT,calldata:[r,p,fl(s),u.length,...u]},address:$l(s?_t(t,p):p,r,u,s?Ca.ADDRESS:0)}});return{calls:a.map(o=>o.call),addresses:a.map(o=>o.address)}}n(Tg,"buildUDCCall");function oi(e){return e==="fee"?{v1:O.ETransactionVersion.F1,v2:O.ETransactionVersion.F2,v3:O.ETransactionVersion.F3}:{v1:O.ETransactionVersion.V1,v2:O.ETransactionVersion.V2,v3:O.ETransactionVersion.V3}}n(oi,"getVersionsByType");var dr={headers:{"Content-Type":"application/json"},blockIdentifier:"pending",retries:200},Ig=class{static{n(this,"RpcChannel")}nodeUrl;headers;retries;requestId;blockIdentifier;chainId;specVersion;waitMode;constructor(e){let{nodeUrl:t,retries:a,headers:o,blockIdentifier:r,chainId:i,specVersion:s,waitMode:c}=e||{};Object.values(Io).includes(t)?this.nodeUrl=Da(t,e?.default):t?this.nodeUrl=t:this.nodeUrl=Da(void 0,e?.default),this.retries=a||dr.retries,this.headers={...dr.headers,...o},this.blockIdentifier=r||dr.blockIdentifier,this.chainId=i,this.specVersion=s,this.waitMode=c||!1,this.requestId=0}setChainId(e){this.chainId=e}fetch(e,t,a=0){let o={id:a,jsonrpc:"2.0",method:e,...t&&{params:t}};return Yl(this.nodeUrl,{method:"POST",body:ye(o),headers:this.headers})}errorHandler(e,t,a,o){if(a){let{code:r,message:i,data:s}=a;throw new Ta(`RPC: ${e} with params ${ye(t,null,2)}
30
30
 
31
- ${r}: ${i}: ${ye(s)}`)}if(o instanceof Ta)throw o;if(o)throw Error(o.message)}async fetchEndpoint(e,t){try{let a=await this.fetch(e,t,this.requestId+=1),{error:o,result:r}=await a.json();return this.errorHandler(e,t,o),r}catch(a){throw this.errorHandler(e,t,a?.response?.data,a),a}}async getChainId(){return this.chainId??=await this.fetchEndpoint("starknet_chainId"),this.chainId}async getSpecVersion(){return this.specVersion??=await this.fetchEndpoint("starknet_specVersion"),this.specVersion}getNonceForAddress(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getNonce",{contract_address:a,block_id:o})}getBlockLatestAccepted(){return this.fetchEndpoint("starknet_blockHashAndNumber")}getBlockNumber(){return this.fetchEndpoint("starknet_blockNumber")}getBlockWithTxHashes(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxHashes",{block_id:t})}getBlockWithTxs(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxs",{block_id:t})}getBlockStateUpdate(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getStateUpdate",{block_id:t})}getBlockTransactionsTraces(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_traceBlockTransactions",{block_id:t})}getBlockTransactionCount(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockTransactionCount",{block_id:t})}getTransactionByHash(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionByHash",{transaction_hash:t})}getTransactionByBlockIdAndIndex(e,t){let a=new R(e).identifier;return this.fetchEndpoint("starknet_getTransactionByBlockIdAndIndex",{block_id:a,index:t})}getTransactionReceipt(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionReceipt",{transaction_hash:t})}getTransactionTrace(e){let t=y(e);return this.fetchEndpoint("starknet_traceTransaction",{transaction_hash:t})}getTransactionStatus(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionStatus",{transaction_hash:t})}simulateTransaction(e,t={}){let{blockIdentifier:a=this.blockIdentifier,skipValidate:o=!0,skipFeeCharge:r=!0}=t,i=new R(a).identifier,s=[];return o&&s.push(q.ESimulationFlag.SKIP_VALIDATE),r&&s.push(q.ESimulationFlag.SKIP_FEE_CHARGE),this.fetchEndpoint("starknet_simulateTransactions",{block_id:i,transactions:e.map(c=>this.buildTransaction(c)),simulation_flags:s})}async waitForTransaction(e,t){let a=y(e),{retries:o}=this,r=!1,i=!1,s=t?.retryInterval??5e3,c=t?.errorStates??[q.ETransactionStatus.REJECTED],u=t?.successStates??[q.ETransactionExecutionStatus.SUCCEEDED,q.ETransactionStatus.ACCEPTED_ON_L2,q.ETransactionStatus.ACCEPTED_ON_L1],p;for(;!r;){await ea(s);try{p=await this.getTransactionStatus(a);let l=p.execution_status,h=p.finality_status;if(!h)throw new Error("waiting for transaction status");if(c.includes(l)||c.includes(h)){let g=`${l}: ${h}`,f=new Error(g);throw f.response=p,i=!0,f}else(u.includes(l)||u.includes(h))&&(r=!0)}catch(l){if(l instanceof Error&&i)throw l;if(o<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}o-=1}let m=null;for(;m===null;){try{m=await this.getTransactionReceipt(a)}catch{if(o<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}o-=1,await ea(s)}return m}getStorageAt(e,t,a=this.blockIdentifier){let o=y(e),r=Br(t),i=new R(a).identifier;return this.fetchEndpoint("starknet_getStorageAt",{contract_address:o,key:r,block_id:i})}getClassHashAt(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClassHashAt",{block_id:o,contract_address:a})}getClass(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClass",{class_hash:a,block_id:o})}getClassAt(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClassAt",{block_id:o,contract_address:a})}async getEstimateFee(e,{blockIdentifier:t=this.blockIdentifier,skipValidate:a=!0}){let o=new R(t).identifier,r={};return ti("0.5",await this.getSpecVersion())||(r={simulation_flags:a?[q.ESimulationFlag.SKIP_VALIDATE]:[]}),this.fetchEndpoint("starknet_estimateFee",{request:e.map(i=>this.buildTransaction(i,"fee")),block_id:o,...r})}async invoke(e,t){let a;return fe(t)?a=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{type:q.ETransactionType.INVOKE,sender_address:e.contractAddress,calldata:P.toHex(e.calldata),version:q.ETransactionVersion.V3,signature:Q(e.signature),nonce:y(t.nonce),resource_bounds:t.resourceBounds,tip:y(t.tip),paymaster_data:t.paymasterData.map(o=>y(o)),account_deployment_data:t.accountDeploymentData.map(o=>y(o)),nonce_data_availability_mode:t.nonceDataAvailabilityMode,fee_data_availability_mode:t.feeDataAvailabilityMode}}):a=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{sender_address:e.contractAddress,calldata:P.toHex(e.calldata),type:q.ETransactionType.INVOKE,max_fee:y(t.maxFee||0),version:q.ETransactionVersion.V1,signature:Q(e.signature),nonce:y(t.nonce)}}),this.waitMode?this.waitForTransaction((await a).transaction_hash):a}async declare({contract:e,signature:t,senderAddress:a,compiledClassHash:o},r){let i;if(!Le(e)&&!fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:q.ETransactionType.DECLARE,contract_class:{program:e.program,entry_points_by_type:e.entry_points_by_type,abi:e.abi},version:q.ETransactionVersion.V1,max_fee:y(r.maxFee||0),signature:Q(t),sender_address:a,nonce:y(r.nonce)}});else if(Le(e)&&!fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:q.ETransactionType.DECLARE,contract_class:{sierra_program:It(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},compiled_class_hash:o||"",version:q.ETransactionVersion.V2,max_fee:y(r.maxFee||0),signature:Q(t),sender_address:a,nonce:y(r.nonce)}});else if(Le(e)&&fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:q.ETransactionType.DECLARE,sender_address:a,compiled_class_hash:o||"",version:q.ETransactionVersion.V3,signature:Q(t),nonce:y(r.nonce),contract_class:{sierra_program:It(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},resource_bounds:r.resourceBounds,tip:y(r.tip),paymaster_data:r.paymasterData.map(s=>y(s)),account_deployment_data:r.accountDeploymentData.map(s=>y(s)),nonce_data_availability_mode:r.nonceDataAvailabilityMode,fee_data_availability_mode:r.feeDataAvailabilityMode}});else throw Error("declare unspotted parameters");return this.waitMode?this.waitForTransaction((await i).transaction_hash):i}async deployAccount({classHash:e,constructorCalldata:t,addressSalt:a,signature:o},r){let i;return fe(r)?i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{type:q.ETransactionType.DEPLOY_ACCOUNT,version:q.ETransactionVersion.V3,signature:Q(o),nonce:y(r.nonce),contract_address_salt:y(a||0),constructor_calldata:P.toHex(t||[]),class_hash:y(e),resource_bounds:r.resourceBounds,tip:y(r.tip),paymaster_data:r.paymasterData.map(s=>y(s)),nonce_data_availability_mode:r.nonceDataAvailabilityMode,fee_data_availability_mode:r.feeDataAvailabilityMode}}):i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{constructor_calldata:P.toHex(t||[]),class_hash:y(e),contract_address_salt:y(a||0),type:q.ETransactionType.DEPLOY_ACCOUNT,max_fee:y(r.maxFee||0),version:q.ETransactionVersion.V1,signature:Q(o),nonce:y(r.nonce)}}),this.waitMode?this.waitForTransaction((await i).transaction_hash):i}callContract(e,t=this.blockIdentifier){let a=new R(t).identifier;return this.fetchEndpoint("starknet_call",{request:{contract_address:e.contractAddress,entry_point_selector:J(e.entrypoint),calldata:P.toHex(e.calldata)},block_id:a})}estimateMessageFee(e,t=this.blockIdentifier){let{from_address:a,to_address:o,entry_point_selector:r,payload:i}=e,s={from_address:ei(a),to_address:y(o),entry_point_selector:zo(r),payload:Pr(i)},c=new R(t).identifier;return this.fetchEndpoint("starknet_estimateMessageFee",{message:s,block_id:c})}getSyncingStats(){return this.fetchEndpoint("starknet_syncing")}getEvents(e){return this.fetchEndpoint("starknet_getEvents",{filter:e})}buildTransaction(e,t){let a=oi(t),o;if(fe(e)?o={signature:Q(e.signature),nonce:y(e.nonce),resource_bounds:e.resourceBounds,tip:y(e.tip),paymaster_data:e.paymasterData.map(r=>y(r)),nonce_data_availability_mode:e.nonceDataAvailabilityMode,fee_data_availability_mode:e.feeDataAvailabilityMode,account_deployment_data:e.accountDeploymentData.map(r=>y(r))}:o={signature:Q(e.signature),nonce:y(e.nonce),max_fee:y(e.maxFee||0)},e.type==="INVOKE_FUNCTION")return{type:q.ETransactionType.INVOKE,sender_address:e.contractAddress,calldata:P.toHex(e.calldata),version:y(e.version||a.v3),...o};if(e.type==="DECLARE")return Le(e.contract)?{type:e.type,contract_class:{...e.contract,sierra_program:It(e.contract.sierra_program)},compiled_class_hash:e.compiledClassHash||"",sender_address:e.senderAddress,version:y(e.version||a.v3),...o}:{type:e.type,contract_class:e.contract,sender_address:e.senderAddress,version:y(e.version||a.v1),...o};if(e.type==="DEPLOY_ACCOUNT"){let{account_deployment_data:r,...i}=o;return{type:e.type,constructor_calldata:P.toHex(e.constructorCalldata||[]),class_hash:y(e.classHash),contract_address_salt:y(e.addressSalt||0),version:y(e.version||a.v3),...i}}throw Error("RPC buildTransaction received unknown TransactionType")}},Ng={};U(Ng,{RpcChannel:n(()=>tm,"RpcChannel")});var hr={headers:{"Content-Type":"application/json"},blockIdentifier:"pending",retries:200},tm=class{static{n(this,"RpcChannel2")}nodeUrl;headers;retries;requestId;blockIdentifier;chainId;specVersion;transactionRetryIntervalFallback;waitMode;constructor(e){let{nodeUrl:t,retries:a,headers:o,blockIdentifier:r,chainId:i,specVersion:s,waitMode:c,transactionRetryIntervalFallback:u}=e||{};Object.values(Io).includes(t)?this.nodeUrl=Da(t,e?.default):t?this.nodeUrl=t:this.nodeUrl=Da(void 0,e?.default),this.retries=a||hr.retries,this.headers={...hr.headers,...o},this.blockIdentifier=r||hr.blockIdentifier,this.chainId=i,this.specVersion=s,this.waitMode=c||!1,this.requestId=0,this.transactionRetryIntervalFallback=u}get transactionRetryIntervalDefault(){return this.transactionRetryIntervalFallback??5e3}setChainId(e){this.chainId=e}fetch(e,t,a=0){let o={id:a,jsonrpc:"2.0",method:e,...t&&{params:t}};return Xl(this.nodeUrl,{method:"POST",body:ye(o),headers:this.headers})}errorHandler(e,t,a,o){if(a){let{code:r,message:i,data:s}=a;throw new Ta(`RPC: ${e} with params ${ye(t,null,2)}
31
+ ${r}: ${i}: ${ye(s)}`)}if(o instanceof Ta)throw o;if(o)throw Error(o.message)}async fetchEndpoint(e,t){try{let a=await this.fetch(e,t,this.requestId+=1),{error:o,result:r}=await a.json();return this.errorHandler(e,t,o),r}catch(a){throw this.errorHandler(e,t,a?.response?.data,a),a}}async getChainId(){return this.chainId??=await this.fetchEndpoint("starknet_chainId"),this.chainId}async getSpecVersion(){return this.specVersion??=await this.fetchEndpoint("starknet_specVersion"),this.specVersion}getNonceForAddress(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getNonce",{contract_address:a,block_id:o})}getBlockLatestAccepted(){return this.fetchEndpoint("starknet_blockHashAndNumber")}getBlockNumber(){return this.fetchEndpoint("starknet_blockNumber")}getBlockWithTxHashes(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxHashes",{block_id:t})}getBlockWithTxs(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxs",{block_id:t})}getBlockStateUpdate(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getStateUpdate",{block_id:t})}getBlockTransactionsTraces(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_traceBlockTransactions",{block_id:t})}getBlockTransactionCount(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockTransactionCount",{block_id:t})}getTransactionByHash(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionByHash",{transaction_hash:t})}getTransactionByBlockIdAndIndex(e,t){let a=new R(e).identifier;return this.fetchEndpoint("starknet_getTransactionByBlockIdAndIndex",{block_id:a,index:t})}getTransactionReceipt(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionReceipt",{transaction_hash:t})}getTransactionTrace(e){let t=y(e);return this.fetchEndpoint("starknet_traceTransaction",{transaction_hash:t})}getTransactionStatus(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionStatus",{transaction_hash:t})}simulateTransaction(e,t={}){let{blockIdentifier:a=this.blockIdentifier,skipValidate:o=!0,skipFeeCharge:r=!0}=t,i=new R(a).identifier,s=[];return o&&s.push(q.ESimulationFlag.SKIP_VALIDATE),r&&s.push(q.ESimulationFlag.SKIP_FEE_CHARGE),this.fetchEndpoint("starknet_simulateTransactions",{block_id:i,transactions:e.map(c=>this.buildTransaction(c)),simulation_flags:s})}async waitForTransaction(e,t){let a=y(e),{retries:o}=this,r=!1,i=!1,s=t?.retryInterval??5e3,c=t?.errorStates??[q.ETransactionStatus.REJECTED],u=t?.successStates??[q.ETransactionExecutionStatus.SUCCEEDED,q.ETransactionStatus.ACCEPTED_ON_L2,q.ETransactionStatus.ACCEPTED_ON_L1],p;for(;!r;){await Qt(s);try{p=await this.getTransactionStatus(a);let l=p.execution_status,h=p.finality_status;if(!h)throw new Error("waiting for transaction status");if(c.includes(l)||c.includes(h)){let g=`${l}: ${h}`,f=new Error(g);throw f.response=p,i=!0,f}else(u.includes(l)||u.includes(h))&&(r=!0)}catch(l){if(l instanceof Error&&i)throw l;if(o<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}o-=1}let m=null;for(;m===null;){try{m=await this.getTransactionReceipt(a)}catch{if(o<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}o-=1,await Qt(s)}return m}getStorageAt(e,t,a=this.blockIdentifier){let o=y(e),r=Br(t),i=new R(a).identifier;return this.fetchEndpoint("starknet_getStorageAt",{contract_address:o,key:r,block_id:i})}getClassHashAt(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClassHashAt",{block_id:o,contract_address:a})}getClass(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClass",{class_hash:a,block_id:o})}getClassAt(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClassAt",{block_id:o,contract_address:a})}async getEstimateFee(e,{blockIdentifier:t=this.blockIdentifier,skipValidate:a=!0}){let o=new R(t).identifier,r={};return ti("0.5",await this.getSpecVersion())||(r={simulation_flags:a?[q.ESimulationFlag.SKIP_VALIDATE]:[]}),this.fetchEndpoint("starknet_estimateFee",{request:e.map(i=>this.buildTransaction(i,"fee")),block_id:o,...r})}async invoke(e,t){let a;return fe(t)?a=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{type:q.ETransactionType.INVOKE,sender_address:e.contractAddress,calldata:P.toHex(e.calldata),version:q.ETransactionVersion.V3,signature:Q(e.signature),nonce:y(t.nonce),resource_bounds:t.resourceBounds,tip:y(t.tip),paymaster_data:t.paymasterData.map(o=>y(o)),account_deployment_data:t.accountDeploymentData.map(o=>y(o)),nonce_data_availability_mode:t.nonceDataAvailabilityMode,fee_data_availability_mode:t.feeDataAvailabilityMode}}):a=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{sender_address:e.contractAddress,calldata:P.toHex(e.calldata),type:q.ETransactionType.INVOKE,max_fee:y(t.maxFee||0),version:q.ETransactionVersion.V1,signature:Q(e.signature),nonce:y(t.nonce)}}),this.waitMode?this.waitForTransaction((await a).transaction_hash):a}async declare({contract:e,signature:t,senderAddress:a,compiledClassHash:o},r){let i;if(!Le(e)&&!fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:q.ETransactionType.DECLARE,contract_class:{program:e.program,entry_points_by_type:e.entry_points_by_type,abi:e.abi},version:q.ETransactionVersion.V1,max_fee:y(r.maxFee||0),signature:Q(t),sender_address:a,nonce:y(r.nonce)}});else if(Le(e)&&!fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:q.ETransactionType.DECLARE,contract_class:{sierra_program:Tt(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},compiled_class_hash:o||"",version:q.ETransactionVersion.V2,max_fee:y(r.maxFee||0),signature:Q(t),sender_address:a,nonce:y(r.nonce)}});else if(Le(e)&&fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:q.ETransactionType.DECLARE,sender_address:a,compiled_class_hash:o||"",version:q.ETransactionVersion.V3,signature:Q(t),nonce:y(r.nonce),contract_class:{sierra_program:Tt(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},resource_bounds:r.resourceBounds,tip:y(r.tip),paymaster_data:r.paymasterData.map(s=>y(s)),account_deployment_data:r.accountDeploymentData.map(s=>y(s)),nonce_data_availability_mode:r.nonceDataAvailabilityMode,fee_data_availability_mode:r.feeDataAvailabilityMode}});else throw Error("declare unspotted parameters");return this.waitMode?this.waitForTransaction((await i).transaction_hash):i}async deployAccount({classHash:e,constructorCalldata:t,addressSalt:a,signature:o},r){let i;return fe(r)?i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{type:q.ETransactionType.DEPLOY_ACCOUNT,version:q.ETransactionVersion.V3,signature:Q(o),nonce:y(r.nonce),contract_address_salt:y(a||0),constructor_calldata:P.toHex(t||[]),class_hash:y(e),resource_bounds:r.resourceBounds,tip:y(r.tip),paymaster_data:r.paymasterData.map(s=>y(s)),nonce_data_availability_mode:r.nonceDataAvailabilityMode,fee_data_availability_mode:r.feeDataAvailabilityMode}}):i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{constructor_calldata:P.toHex(t||[]),class_hash:y(e),contract_address_salt:y(a||0),type:q.ETransactionType.DEPLOY_ACCOUNT,max_fee:y(r.maxFee||0),version:q.ETransactionVersion.V1,signature:Q(o),nonce:y(r.nonce)}}),this.waitMode?this.waitForTransaction((await i).transaction_hash):i}callContract(e,t=this.blockIdentifier){let a=new R(t).identifier;return this.fetchEndpoint("starknet_call",{request:{contract_address:e.contractAddress,entry_point_selector:J(e.entrypoint),calldata:P.toHex(e.calldata)},block_id:a})}estimateMessageFee(e,t=this.blockIdentifier){let{from_address:a,to_address:o,entry_point_selector:r,payload:i}=e,s={from_address:ei(a),to_address:y(o),entry_point_selector:zo(r),payload:Pr(i)},c=new R(t).identifier;return this.fetchEndpoint("starknet_estimateMessageFee",{message:s,block_id:c})}getSyncingStats(){return this.fetchEndpoint("starknet_syncing")}getEvents(e){return this.fetchEndpoint("starknet_getEvents",{filter:e})}buildTransaction(e,t){let a=oi(t),o;if(fe(e)?o={signature:Q(e.signature),nonce:y(e.nonce),resource_bounds:e.resourceBounds,tip:y(e.tip),paymaster_data:e.paymasterData.map(r=>y(r)),nonce_data_availability_mode:e.nonceDataAvailabilityMode,fee_data_availability_mode:e.feeDataAvailabilityMode,account_deployment_data:e.accountDeploymentData.map(r=>y(r))}:o={signature:Q(e.signature),nonce:y(e.nonce),max_fee:y(e.maxFee||0)},e.type==="INVOKE_FUNCTION")return{type:q.ETransactionType.INVOKE,sender_address:e.contractAddress,calldata:P.toHex(e.calldata),version:y(e.version||a.v3),...o};if(e.type==="DECLARE")return Le(e.contract)?{type:e.type,contract_class:{...e.contract,sierra_program:Tt(e.contract.sierra_program)},compiled_class_hash:e.compiledClassHash||"",sender_address:e.senderAddress,version:y(e.version||a.v3),...o}:{type:e.type,contract_class:e.contract,sender_address:e.senderAddress,version:y(e.version||a.v1),...o};if(e.type==="DEPLOY_ACCOUNT"){let{account_deployment_data:r,...i}=o;return{type:e.type,constructor_calldata:P.toHex(e.constructorCalldata||[]),class_hash:y(e.classHash),contract_address_salt:y(e.addressSalt||0),version:y(e.version||a.v3),...i}}throw Error("RPC buildTransaction received unknown TransactionType")}},zg={};U(zg,{RpcChannel:n(()=>em,"RpcChannel")});var hr={headers:{"Content-Type":"application/json"},blockIdentifier:"pending",retries:200},em=class{static{n(this,"RpcChannel2")}nodeUrl;headers;retries;requestId;blockIdentifier;chainId;specVersion;transactionRetryIntervalFallback;waitMode;constructor(e){let{nodeUrl:t,retries:a,headers:o,blockIdentifier:r,chainId:i,specVersion:s,waitMode:c,transactionRetryIntervalFallback:u}=e||{};Object.values(Io).includes(t)?this.nodeUrl=Da(t,e?.default):t?this.nodeUrl=t:this.nodeUrl=Da(void 0,e?.default),this.retries=a||hr.retries,this.headers={...hr.headers,...o},this.blockIdentifier=r||hr.blockIdentifier,this.chainId=i,this.specVersion=s,this.waitMode=c||!1,this.requestId=0,this.transactionRetryIntervalFallback=u}get transactionRetryIntervalDefault(){return this.transactionRetryIntervalFallback??5e3}setChainId(e){this.chainId=e}fetch(e,t,a=0){let o={id:a,jsonrpc:"2.0",method:e,...t&&{params:t}};return Yl(this.nodeUrl,{method:"POST",body:ye(o),headers:this.headers})}errorHandler(e,t,a,o){if(a){let{code:r,message:i,data:s}=a;throw new Ta(`RPC: ${e} with params ${ye(t,null,2)}
32
32
 
33
- ${r}: ${i}: ${ye(s)}`)}if(o instanceof Ta)throw o;if(o)throw Error(o.message)}async fetchEndpoint(e,t){try{let a=await this.fetch(e,t,this.requestId+=1),{error:o,result:r}=await a.json();return this.errorHandler(e,t,o),r}catch(a){throw this.errorHandler(e,t,a?.response?.data,a),a}}async getChainId(){return this.chainId??=await this.fetchEndpoint("starknet_chainId"),this.chainId}async getSpecVersion(){return this.specVersion??=await this.fetchEndpoint("starknet_specVersion"),this.specVersion}getNonceForAddress(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getNonce",{contract_address:a,block_id:o})}getBlockLatestAccepted(){return this.fetchEndpoint("starknet_blockHashAndNumber")}getBlockNumber(){return this.fetchEndpoint("starknet_blockNumber")}getBlockWithTxHashes(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxHashes",{block_id:t})}getBlockWithTxs(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxs",{block_id:t})}getBlockWithReceipts(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockWithReceipts",{block_id:t})}getBlockStateUpdate(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getStateUpdate",{block_id:t})}getBlockTransactionsTraces(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_traceBlockTransactions",{block_id:t})}getBlockTransactionCount(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockTransactionCount",{block_id:t})}getTransactionByHash(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionByHash",{transaction_hash:t})}getTransactionByBlockIdAndIndex(e,t){let a=new R(e).identifier;return this.fetchEndpoint("starknet_getTransactionByBlockIdAndIndex",{block_id:a,index:t})}getTransactionReceipt(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionReceipt",{transaction_hash:t})}getTransactionTrace(e){let t=y(e);return this.fetchEndpoint("starknet_traceTransaction",{transaction_hash:t})}getTransactionStatus(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionStatus",{transaction_hash:t})}simulateTransaction(e,t={}){let{blockIdentifier:a=this.blockIdentifier,skipValidate:o=!0,skipFeeCharge:r=!0}=t,i=new R(a).identifier,s=[];return o&&s.push(Lt.SKIP_VALIDATE),r&&s.push(Lt.SKIP_FEE_CHARGE),this.fetchEndpoint("starknet_simulateTransactions",{block_id:i,transactions:e.map(c=>this.buildTransaction(c)),simulation_flags:s})}async waitForTransaction(e,t){let a=y(e),{retries:o}=this,r=!1,i=!1,s=t?.retryInterval??this.transactionRetryIntervalDefault,c=t?.errorStates??[Vt.REJECTED],u=t?.successStates??[Fa.SUCCEEDED,Vt.ACCEPTED_ON_L2,Vt.ACCEPTED_ON_L1],p;for(;!r;){await ea(s);try{p=await this.getTransactionStatus(a);let l=p.execution_status,h=p.finality_status;if(!h)throw new Error("waiting for transaction status");if(c.includes(l)||c.includes(h)){let g=`${l}: ${h}`,f=new Error(g);throw f.response=p,i=!0,f}else(u.includes(l)||u.includes(h))&&(r=!0)}catch(l){if(l instanceof Error&&i)throw l;if(o<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}o-=1}let m=null;for(;m===null;){try{m=await this.getTransactionReceipt(a)}catch{if(o<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}o-=1,await ea(s)}return m}getStorageAt(e,t,a=this.blockIdentifier){let o=y(e),r=Br(t),i=new R(a).identifier;return this.fetchEndpoint("starknet_getStorageAt",{contract_address:o,key:r,block_id:i})}getClassHashAt(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClassHashAt",{block_id:o,contract_address:a})}getClass(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClass",{class_hash:a,block_id:o})}getClassAt(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClassAt",{block_id:o,contract_address:a})}async getEstimateFee(e,{blockIdentifier:t=this.blockIdentifier,skipValidate:a=!0}){let o=new R(t).identifier,r={};return ti("0.5",await this.getSpecVersion())||(r={simulation_flags:a?[Lt.SKIP_VALIDATE]:[]}),this.fetchEndpoint("starknet_estimateFee",{request:e.map(i=>this.buildTransaction(i,"fee")),block_id:o,...r})}async invoke(e,t){let a;return fe(t)?a=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{type:je.INVOKE,sender_address:e.contractAddress,calldata:P.toHex(e.calldata),version:Ae.V3,signature:Q(e.signature),nonce:y(t.nonce),resource_bounds:t.resourceBounds,tip:y(t.tip),paymaster_data:t.paymasterData.map(o=>y(o)),account_deployment_data:t.accountDeploymentData.map(o=>y(o)),nonce_data_availability_mode:t.nonceDataAvailabilityMode,fee_data_availability_mode:t.feeDataAvailabilityMode}}):a=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{sender_address:e.contractAddress,calldata:P.toHex(e.calldata),type:je.INVOKE,max_fee:y(t.maxFee||0),version:Ae.V1,signature:Q(e.signature),nonce:y(t.nonce)}}),this.waitMode?this.waitForTransaction((await a).transaction_hash):a}async declare({contract:e,signature:t,senderAddress:a,compiledClassHash:o},r){let i;if(!Le(e)&&!fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:je.DECLARE,contract_class:{program:e.program,entry_points_by_type:e.entry_points_by_type,abi:e.abi},version:Ae.V1,max_fee:y(r.maxFee||0),signature:Q(t),sender_address:a,nonce:y(r.nonce)}});else if(Le(e)&&!fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:je.DECLARE,contract_class:{sierra_program:It(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},compiled_class_hash:o||"",version:Ae.V2,max_fee:y(r.maxFee||0),signature:Q(t),sender_address:a,nonce:y(r.nonce)}});else if(Le(e)&&fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:je.DECLARE,sender_address:a,compiled_class_hash:o||"",version:Ae.V3,signature:Q(t),nonce:y(r.nonce),contract_class:{sierra_program:It(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},resource_bounds:r.resourceBounds,tip:y(r.tip),paymaster_data:r.paymasterData.map(s=>y(s)),account_deployment_data:r.accountDeploymentData.map(s=>y(s)),nonce_data_availability_mode:r.nonceDataAvailabilityMode,fee_data_availability_mode:r.feeDataAvailabilityMode}});else throw Error("declare unspotted parameters");return this.waitMode?this.waitForTransaction((await i).transaction_hash):i}async deployAccount({classHash:e,constructorCalldata:t,addressSalt:a,signature:o},r){let i;return fe(r)?i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{type:je.DEPLOY_ACCOUNT,version:Ae.V3,signature:Q(o),nonce:y(r.nonce),contract_address_salt:y(a||0),constructor_calldata:P.toHex(t||[]),class_hash:y(e),resource_bounds:r.resourceBounds,tip:y(r.tip),paymaster_data:r.paymasterData.map(s=>y(s)),nonce_data_availability_mode:r.nonceDataAvailabilityMode,fee_data_availability_mode:r.feeDataAvailabilityMode}}):i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{constructor_calldata:P.toHex(t||[]),class_hash:y(e),contract_address_salt:y(a||0),type:je.DEPLOY_ACCOUNT,max_fee:y(r.maxFee||0),version:Ae.V1,signature:Q(o),nonce:y(r.nonce)}}),this.waitMode?this.waitForTransaction((await i).transaction_hash):i}callContract(e,t=this.blockIdentifier){let a=new R(t).identifier;return this.fetchEndpoint("starknet_call",{request:{contract_address:e.contractAddress,entry_point_selector:J(e.entrypoint),calldata:P.toHex(e.calldata)},block_id:a})}estimateMessageFee(e,t=this.blockIdentifier){let{from_address:a,to_address:o,entry_point_selector:r,payload:i}=e,s={from_address:ei(a),to_address:y(o),entry_point_selector:zo(r),payload:Pr(i)},c=new R(t).identifier;return this.fetchEndpoint("starknet_estimateMessageFee",{message:s,block_id:c})}getSyncingStats(){return this.fetchEndpoint("starknet_syncing")}getEvents(e){return this.fetchEndpoint("starknet_getEvents",{filter:e})}buildTransaction(e,t){let a=oi(t),o;if(fe(e)?o={signature:Q(e.signature),nonce:y(e.nonce),resource_bounds:e.resourceBounds,tip:y(e.tip),paymaster_data:e.paymasterData.map(r=>y(r)),nonce_data_availability_mode:e.nonceDataAvailabilityMode,fee_data_availability_mode:e.feeDataAvailabilityMode,account_deployment_data:e.accountDeploymentData.map(r=>y(r))}:o={signature:Q(e.signature),nonce:y(e.nonce),max_fee:y(e.maxFee||0)},e.type==="INVOKE_FUNCTION")return{type:je.INVOKE,sender_address:e.contractAddress,calldata:P.toHex(e.calldata),version:y(e.version||a.v3),...o};if(e.type==="DECLARE")return Le(e.contract)?{type:e.type,contract_class:{...e.contract,sierra_program:It(e.contract.sierra_program)},compiled_class_hash:e.compiledClassHash||"",sender_address:e.senderAddress,version:y(e.version||a.v3),...o}:{type:e.type,contract_class:e.contract,sender_address:e.senderAddress,version:y(e.version||a.v1),...o};if(e.type==="DEPLOY_ACCOUNT"){let{account_deployment_data:r,...i}=o;return{type:e.type,constructor_calldata:P.toHex(e.constructorCalldata||[]),class_hash:y(e.classHash),contract_address_salt:y(e.addressSalt||0),version:y(e.version||a.v3),...i}}throw Error("RPC buildTransaction received unknown TransactionType")}},wu=class{static{n(this,"RPCResponseParser")}margin;constructor(e){this.margin=e}estimatedFeeToMaxFee(e){return Gl(e,this.margin?.maxFee)}estimateFeeToBounds(e){return Qr(e,this.margin?.l1BoundMaxAmount,this.margin?.l1BoundMaxPricePerUnit)}parseGetBlockResponse(e){return{status:"PENDING",...e}}parseTransactionReceipt(e){return"actual_fee"in e&&ee(e.actual_fee)?{...e,actual_fee:{amount:e.actual_fee,unit:"FRI"}}:e}parseFeeEstimateResponse(e){let t=e[0];return{overall_fee:K(t.overall_fee),gas_consumed:K(t.gas_consumed),gas_price:K(t.gas_price),unit:t.unit,suggestedMaxFee:this.estimatedFeeToMaxFee(t.overall_fee),resourceBounds:this.estimateFeeToBounds(t),data_gas_consumed:t.data_gas_consumed?K(t.data_gas_consumed):0n,data_gas_price:t.data_gas_price?K(t.data_gas_price):0n}}parseFeeEstimateBulkResponse(e){return e.map(t=>({overall_fee:K(t.overall_fee),gas_consumed:K(t.gas_consumed),gas_price:K(t.gas_price),unit:t.unit,suggestedMaxFee:this.estimatedFeeToMaxFee(t.overall_fee),resourceBounds:this.estimateFeeToBounds(t),data_gas_consumed:t.data_gas_consumed?K(t.data_gas_consumed):0n,data_gas_price:t.data_gas_price?K(t.data_gas_price):0n}))}parseSimulateTransactionResponse(e){return e.map(t=>({...t,suggestedMaxFee:this.estimatedFeeToMaxFee(t.fee_estimation.overall_fee),resourceBounds:this.estimateFeeToBounds(t.fee_estimation)}))}parseContractClassResponse(e){return{...e,abi:ee(e.abi)?JSON.parse(e.abi):e.abi}}parseL1GasPriceResponse(e){return e.l1_gas_price.price_in_wei}},ju=class Eo{static{n(this,"_ReceiptTx")}statusReceipt;value;constructor(t){[this.statusReceipt,this.value]=Eo.isSuccess(t)?["success",t]:Eo.isReverted(t)?["reverted",t]:Eo.isRejected(t)?["rejected",t]:["error",new Error("Unknown response type")];for(let[a]of Object.entries(this))Object.defineProperty(this,a,{enumerable:!1});for(let[a,o]of Object.entries(t))Object.defineProperty(this,a,{enumerable:!0,writable:!1,value:o})}match(t){return this.statusReceipt in t?t[this.statusReceipt](this.value):t._()}isSuccess(){return this.statusReceipt==="success"}isReverted(){return this.statusReceipt==="reverted"}isRejected(){return this.statusReceipt==="rejected"}isError(){return this.statusReceipt==="error"}static isSuccess(t){return t.execution_status==="SUCCEEDED"}static isReverted(t){return t.execution_status==="REVERTED"}static isRejected(t){return t.status==="REJECTED"}},am=class{static{n(this,"RpcProvider")}responseParser;channel;constructor(e){e&&"channel"in e?(this.channel=e.channel,this.responseParser="responseParser"in e?e.responseParser:new wu):(this.channel=new tm({...e,waitMode:!1}),this.responseParser=new wu(e?.feeMarginPercentage))}fetch(e,t,a=0){return this.channel.fetch(e,t,a)}async getChainId(){return this.channel.getChainId()}async getSpecVersion(){return this.channel.getSpecVersion()}async getNonceForAddress(e,t){return this.channel.getNonceForAddress(e,t)}async getBlock(e){return this.channel.getBlockWithTxHashes(e).then(this.responseParser.parseGetBlockResponse)}async getBlockLatestAccepted(){return this.channel.getBlockLatestAccepted()}async getBlockNumber(){return this.channel.getBlockNumber()}async getBlockWithTxHashes(e){return this.channel.getBlockWithTxHashes(e)}async getBlockWithTxs(e){return this.channel.getBlockWithTxs(e)}async waitForBlock(e="pending",t=5e3){if(e==="latest")return;let a=await this.getBlockNumber(),o=e==="pending"?a+1:Number(y(e));if(o<=a)return;let{retries:r}=this.channel,i=r,s=!1;for(;!s;)if(await this.getBlockNumber()===o?s=!0:await ea(t),i-=1,i<=0)throw new Error(`waitForBlock() timed-out after ${r} tries.`)}async getL1GasPrice(e){return this.channel.getBlockWithTxHashes(e).then(this.responseParser.parseL1GasPriceResponse)}async getL1MessageHash(e){let t=await this.channel.getTransactionByHash(e);z(t.type==="L1_HANDLER","This L2 transaction is not a L1 message.");let{calldata:a,contract_address:o,entry_point_selector:r,nonce:i}=t,s=[a[0],o,i,r,a.length-1,...a.slice(1)],c=M(s.reduce((u,p)=>u+ke(y(p)).padStart(64,"0"),""));return M(Ii(Zi(Rr(c))))}async getBlockWithReceipts(e){if(this.channel instanceof ol.RpcChannel)throw new Ta("Unsupported method for RPC version");return this.channel.getBlockWithReceipts(e)}getStateUpdate=this.getBlockStateUpdate;async getBlockStateUpdate(e){return this.channel.getBlockStateUpdate(e)}async getBlockTransactionsTraces(e){return this.channel.getBlockTransactionsTraces(e)}async getBlockTransactionCount(e){return this.channel.getBlockTransactionCount(e)}async getPendingTransactions(){let{transactions:e}=await this.getBlockWithTxHashes("pending").then(this.responseParser.parseGetBlockResponse);return Promise.all(e.map(t=>this.getTransactionByHash(t)))}async getTransaction(e){return this.channel.getTransactionByHash(e)}async getTransactionByHash(e){return this.channel.getTransactionByHash(e)}async getTransactionByBlockIdAndIndex(e,t){return this.channel.getTransactionByBlockIdAndIndex(e,t)}async getTransactionReceipt(e){let t=await this.channel.getTransactionReceipt(e),a=this.responseParser.parseTransactionReceipt(t);return new ju(a)}async getTransactionTrace(e){return this.channel.getTransactionTrace(e)}async getTransactionStatus(e){return this.channel.getTransactionStatus(e)}async getSimulateTransaction(e,t){return this.channel.simulateTransaction(e,t).then(a=>this.responseParser.parseSimulateTransactionResponse(a))}async waitForTransaction(e,t){let a=await this.channel.waitForTransaction(e,t);return new ju(a)}async getStorageAt(e,t,a){return this.channel.getStorageAt(e,t,a)}async getClassHashAt(e,t){return this.channel.getClassHashAt(e,t)}async getClassByHash(e){return this.getClass(e)}async getClass(e,t){return this.channel.getClass(e,t).then(this.responseParser.parseContractClassResponse)}async getClassAt(e,t){return this.channel.getClassAt(e,t).then(this.responseParser.parseContractClassResponse)}async getContractVersion(e,t,{blockIdentifier:a=this.channel.blockIdentifier,compiler:o=!0}={}){let r;if(e)r=await this.getClassAt(e,a);else if(t)r=await this.getClass(t,a);else throw Error("getContractVersion require contractAddress or classHash");return Le(r)?o?{cairo:"1",compiler:Wr(r.abi).compiler}:{cairo:"1",compiler:void 0}:{cairo:"0",compiler:"0"}}async getEstimateFee(e,t,a,o){return this.getInvokeEstimateFee(e,t,a,o)}async getInvokeEstimateFee(e,t,a,o){return this.channel.getEstimateFee([{type:"INVOKE_FUNCTION",...e,...t}],{blockIdentifier:a,skipValidate:o}).then(r=>this.responseParser.parseFeeEstimateResponse(r))}async getDeclareEstimateFee(e,t,a,o){return this.channel.getEstimateFee([{type:"DECLARE",...e,...t}],{blockIdentifier:a,skipValidate:o}).then(r=>this.responseParser.parseFeeEstimateResponse(r))}async getDeployAccountEstimateFee(e,t,a,o){return this.channel.getEstimateFee([{type:"DEPLOY_ACCOUNT",...e,...t}],{blockIdentifier:a,skipValidate:o}).then(r=>this.responseParser.parseFeeEstimateResponse(r))}async getEstimateFeeBulk(e,t){return this.channel.getEstimateFee(e,t).then(a=>this.responseParser.parseFeeEstimateBulkResponse(a))}async invokeFunction(e,t){return this.channel.invoke(e,t)}async declareContract(e,t){return this.channel.declare(e,t)}async deployAccountContract(e,t){return this.channel.deployAccount(e,t)}async callContract(e,t){return this.channel.callContract(e,t)}async estimateMessageFee(e,t){return this.channel.estimateMessageFee(e,t)}async getSyncingStats(){return this.channel.getSyncingStats()}async getEvents(e){return this.channel.getEvents(e)}},Dg={};U(Dg,{StarknetIdContract:n(()=>nm,"StarknetIdContract"),StarknetIdIdentityContract:n(()=>rm,"StarknetIdIdentityContract"),StarknetIdMulticallContract:n(()=>_r,"StarknetIdMulticallContract"),StarknetIdPfpContract:n(()=>lm,"StarknetIdPfpContract"),StarknetIdPopContract:n(()=>pm,"StarknetIdPopContract"),StarknetIdVerifierContract:n(()=>cm,"StarknetIdVerifierContract"),dynamicCallData:n(()=>B,"dynamicCallData"),dynamicFelt:n(()=>ue,"dynamicFelt"),execution:n(()=>Be,"execution"),getStarknetIdContract:n(()=>xo,"getStarknetIdContract"),getStarknetIdIdentityContract:n(()=>im,"getStarknetIdIdentityContract"),getStarknetIdMulticallContract:n(()=>sm,"getStarknetIdMulticallContract"),getStarknetIdPfpContract:n(()=>mm,"getStarknetIdPfpContract"),getStarknetIdPopContract:n(()=>dm,"getStarknetIdPopContract"),getStarknetIdVerifierContract:n(()=>um,"getStarknetIdVerifierContract"),useDecoded:n(()=>xr,"useDecoded"),useEncoded:n(()=>om,"useEncoded")});var Ve="abcdefghijklmnopqrstuvwxyz0123456789-",Yt=BigInt(Ve.length+1),ie="\u8FD9\u6765",vu=BigInt(Ve.length),vr=BigInt(ie.length),Eu=BigInt(ie.length+1);function Er(e){let t=0;for(;e.endsWith(ie[ie.length-1]);)e=e.substring(0,e.length-1),t+=1;return[e,t]}n(Er,"extractStars");function xr(e){let t="";return e.forEach(a=>{for(;a!==Ge;){let i=a%Yt;if(a/=Yt,i===BigInt(Ve.length)){let s=a/Eu;if(s===Ge){let c=a%Eu;a=s,c===Ge?t+=Ve[0]:t+=ie[Number(c)-1]}else{let c=a%vr;t+=ie[Number(c)],a/=vr}}else t+=Ve[Number(i)]}let[o,r]=Er(t);r&&(t=o+(r%2===0?ie[ie.length-1].repeat(r/2-1)+ie[0]+Ve[1]:ie[ie.length-1].repeat((r-1)/2+1))),t+="."}),t&&t.concat("stark")}n(xr,"useDecoded");function om(e){let t=BigInt(0),a=BigInt(1);if(e.endsWith(ie[0]+Ve[1])){let[o,r]=Er(e.substring(0,e.length-2));e=o+ie[ie.length-1].repeat(2*(r+1))}else{let[o,r]=Er(e);r&&(e=o+ie[ie.length-1].repeat(1+2*(r-1)))}for(let o=0;o<e.length;o+=1){let r=e[o],i=Ve.indexOf(r),s=BigInt(Ve.indexOf(r));if(i!==-1)o===e.length-1&&e[o]===Ve[0]?(t+=a*vu,a*=Yt,a*=Yt):(t+=a*s,a*=Yt);else if(ie.indexOf(r)!==-1){t+=a*vu,a*=Yt;let c=(o===e.length-1?1:0)+ie.indexOf(r);t+=a*BigInt(c),a*=vr}}return t}n(om,"useEncoded");var nm=(e=>(e.MAINNET="0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678",e.TESTNET_SEPOLIA="0x154bc2e1af9260b9e66af0e9c46fc757ff893b3ff6a85718a810baf1474",e))(nm||{});function xo(e){switch(e){case"0x534e5f4d41494e":return"0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678";case"0x534e5f5345504f4c4941":return"0x154bc2e1af9260b9e66af0e9c46fc757ff893b3ff6a85718a810baf1474";default:throw new Error("Starknet.id is not yet deployed on this network")}}n(xo,"getStarknetIdContract");var rm=(e=>(e.MAINNET="0x05dbdedc203e92749e2e746e2d40a768d966bd243df04a6b712e222bc040a9af",e.TESTNET_SEPOLIA="0x3697660a0981d734780731949ecb2b4a38d6a58fc41629ed611e8defda",e))(rm||{});function im(e){switch(e){case"0x534e5f4d41494e":return"0x05dbdedc203e92749e2e746e2d40a768d966bd243df04a6b712e222bc040a9af";case"0x534e5f5345504f4c4941":return"0x3697660a0981d734780731949ecb2b4a38d6a58fc41629ed611e8defda";default:throw new Error("Starknet.id verifier contract is not yet deployed on this network")}}n(im,"getStarknetIdIdentityContract");var _r="0x034ffb8f4452df7a613a0210824d6414dbadcddce6c6e19bf4ddc9e22ce5f970";function sm(e){switch(e){case"0x534e5f4d41494e":return _r;case"0x534e5f5345504f4c4941":return _r;default:throw new Error("Starknet.id multicall contract is not yet deployed on this network")}}n(sm,"getStarknetIdMulticallContract");var cm=(e=>(e.MAINNET="0x07d14dfd8ee95b41fce179170d88ba1f0d5a512e13aeb232f19cfeec0a88f8bf",e.TESTNET_SEPOLIA="0x60B94fEDe525f815AE5E8377A463e121C787cCCf3a36358Aa9B18c12c4D566",e))(cm||{});function um(e){switch(e){case"0x534e5f4d41494e":return"0x07d14dfd8ee95b41fce179170d88ba1f0d5a512e13aeb232f19cfeec0a88f8bf";case"0x534e5f5345504f4c4941":return"0x60B94fEDe525f815AE5E8377A463e121C787cCCf3a36358Aa9B18c12c4D566";default:throw new Error("Starknet.id verifier contract is not yet deployed on this network")}}n(um,"getStarknetIdVerifierContract");var lm=(e=>(e.MAINNET="0x070aaa20ec4a46da57c932d9fd89ca5e6bb9ca3188d3df361a32306aff7d59c7",e.TESTNET_SEPOLIA="0x9e7bdb8dabd02ea8cfc23b1d1c5278e46490f193f87516ed5ff2dfec02",e))(lm||{});function mm(e){switch(e){case"0x534e5f4d41494e":return"0x070aaa20ec4a46da57c932d9fd89ca5e6bb9ca3188d3df361a32306aff7d59c7";case"0x534e5f5345504f4c4941":return"0x9e7bdb8dabd02ea8cfc23b1d1c5278e46490f193f87516ed5ff2dfec02";default:throw new Error("Starknet.id profile picture verifier contract is not yet deployed on this network")}}n(mm,"getStarknetIdPfpContract");var pm=(e=>(e.MAINNET="0x0293eb2ba9862f762bd3036586d5755a782bd22e6f5028320f1d0405fd47bff4",e.TESTNET_SEPOLIA="0x15ae88ae054caa74090b89025c1595683f12edf7a4ed2ad0274de3e1d4a",e))(pm||{});function dm(e){switch(e){case"0x534e5f4d41494e":return"0x0293eb2ba9862f762bd3036586d5755a782bd22e6f5028320f1d0405fd47bff4";case"0x534e5f5345504f4c4941":return"0x15ae88ae054caa74090b89025c1595683f12edf7a4ed2ad0274de3e1d4a";default:throw new Error("Starknet.id proof of personhood verifier contract is not yet deployed on this network")}}n(dm,"getStarknetIdPopContract");function Be(e,t=void 0,a=void 0){return new Va({Static:e,IfEqual:t?Qt(t[0],t[1],t[2]):void 0,IfNotEqual:a?Qt(a[0],a[1],a[2]):void 0})}n(Be,"execution");function ue(e,t=void 0){return new Va({Hardcoded:e,Reference:t?Qt(t[0],t[1]):void 0})}n(ue,"dynamicFelt");function B(e,t=void 0,a=void 0){return new Va({Hardcoded:e,Reference:t?Qt(t[0],t[1]):void 0,ArrayReference:a?Qt(a[0],a[1]):void 0})}n(B,"dynamicCallData");var Bg=class _o{static{n(this,"_StarknetId")}async getStarkName(t,a){return _o.getStarkName(this,t,a)}async getAddressFromStarkName(t,a){return _o.getAddressFromStarkName(this,t,a)}async getStarkProfile(t,a,o,r,i,s,c){return _o.getStarkProfile(this,t,a,o,r,i,s,c)}static async getStarkName(t,a,o){let r=await t.getChainId(),i=o??xo(r);try{let c=(await t.callContract({contractAddress:i,entrypoint:"address_to_domain",calldata:P.compile({address:a,hint:[]})})).map(p=>BigInt(p)).slice(1),u=xr(c);if(!u)throw Error("Starkname not found");return u}catch(s){throw s instanceof Error&&s.message==="Starkname not found"?s:Error("Could not get stark name")}}static async getAddressFromStarkName(t,a,o){let r=await t.getChainId(),i=o??xo(r);try{let s=a.replace(".stark","").split(".").map(u=>om(u).toString(10));return(await t.callContract({contractAddress:i,entrypoint:"domain_to_address",calldata:P.compile({domain:s,hint:[]})}))[0]}catch{throw Error("Could not get address from stark name")}}static async getStarkProfile(t,a,o,r,i,s,c,u){let p=await t.getChainId(),m=o??xo(p),l=r??im(p),h=i??um(p),g=s??mm(p),f=c??dm(p),d=u??sm(p);try{let k=[{execution:Be({}),to:B(m),selector:B(J("address_to_domain")),calldata:[B(a),B("0")]},{execution:Be({}),to:ue(m),selector:ue(J("domain_to_id")),calldata:[B(void 0,void 0,[0,0])]},{execution:Be({}),to:ue(l),selector:ue(J("get_verifier_data")),calldata:[B(void 0,[1,0]),B(se("twitter")),B(h),B("0")]},{execution:Be({}),to:ue(l),selector:ue(J("get_verifier_data")),calldata:[B(void 0,[1,0]),B(se("github")),B(h),B("0")]},{execution:Be({}),to:ue(l),selector:ue(J("get_verifier_data")),calldata:[B(void 0,[1,0]),B(se("discord")),B(h),B("0")]},{execution:Be({}),to:ue(l),selector:ue(J("get_verifier_data")),calldata:[B(void 0,[1,0]),B(se("proof_of_personhood")),B(f),B("0")]},{execution:Be({}),to:ue(l),selector:ue(J("get_verifier_data")),calldata:[B(void 0,[1,0]),B(se("nft_pp_contract")),B(g),B("0")]},{execution:Be({}),to:ue(l),selector:ue(J("get_extended_verifier_data")),calldata:[B(void 0,[1,0]),B(se("nft_pp_id")),B("2"),B(g),B("0")]},{execution:Be(void 0,void 0,[6,0,0]),to:ue(void 0,[6,0]),selector:ue(J("tokenURI")),calldata:[B(void 0,[7,1]),B(void 0,[7,2])]}],b=await t.callContract({contractAddress:d,entrypoint:"aggregate",calldata:P.compile({calls:k})});if(Array.isArray(b)){let v=parseInt(b[0],16),E=[],T=1;for(let W=0;W<v&&T<b.length;W+=1){let $=parseInt(b[T],16);T+=1;let x=b.slice(T,T+$);E.push(x),T+=$}let D=xr(E[0].slice(1).map(W=>BigInt(W))),_=E[2][0]!=="0x0"?BigInt(E[2][0]).toString():void 0,A=E[3][0]!=="0x0"?BigInt(E[3][0]).toString():void 0,I=E[4][0]!=="0x0"?BigInt(E[4][0]).toString():void 0,le=E[5][0]==="0x1",N=(b[0]==="0x9"?E[8].slice(1).map(W=>zt(W)).join(""):void 0)||`https://starknet.id/api/identicons/${BigInt(E[1][0]).toString()}`;return{name:D,twitter:_,github:A,discord:I,proofOfPersonhood:le,profilePicture:N}}throw Error("Error while calling aggregate function")}catch(k){throw k instanceof Error?k:Error("Could not get user stark profile data from address")}}},hm=class extends pu(am,Bg){static{n(this,"RpcProvider2")}};var Pg=new am({default:!0});var Rg={};U(Rg,{TypedDataRevision:n(()=>L,"TypedDataRevision"),encodeData:n(()=>jm,"encodeData"),encodeType:n(()=>bm,"encodeType"),encodeValue:n(()=>Sa,"encodeValue"),getDependencies:n(()=>ri,"getDependencies"),getMessageHash:n(()=>Fg,"getMessageHash"),getStructHash:n(()=>Ba,"getStructHash"),getTypeHash:n(()=>wm,"getTypeHash"),isMerkleTreeType:n(()=>ym,"isMerkleTreeType"),prepareSelector:n(()=>km,"prepareSelector")});var Lg={};U(Lg,{MerkleTree:n(()=>ni,"MerkleTree"),proofMerklePath:n(()=>fm,"proofMerklePath")});var ni=class Co{static{n(this,"_MerkleTree")}leaves;branches=[];root;hashMethod;constructor(t,a=Oa){this.hashMethod=a,this.leaves=t,this.root=this.build(t)}build(t){if(t.length===1)return t[0];t.length!==this.leaves.length&&this.branches.push(t);let a=[];for(let o=0;o<t.length;o+=2)o+1===t.length?a.push(Co.hash(t[o],"0x0",this.hashMethod)):a.push(Co.hash(t[o],t[o+1],this.hashMethod));return this.build(a)}static hash(t,a,o=Oa){let[r,i]=[BigInt(t),BigInt(a)].sort((s,c)=>s>=c?1:-1);return o(r,i)}getProof(t,a=this.leaves,o=[]){let r=a.indexOf(t);if(r===-1)throw new Error("leaf not found");if(a.length===1)return o;let i=r%2===0,s=(i?a[r+1]:a[r-1])??"0x0",c=[...o,s],u=this.leaves.length===a.length?-1:this.branches.findIndex(m=>m.length===a.length),p=this.branches[u+1]??[this.root];return this.getProof(Co.hash(i?t:s,i?s:t,this.hashMethod),p,c)}};function fm(e,t,a,o=Oa){if(a.length===0)return e===t;let[r,...i]=a;return fm(e,ni.hash(t,r,o),i,o)}n(fm,"proofMerklePath");var Vg={u256:JSON.parse('[{ "name": "low", "type": "u128" }, { "name": "high", "type": "u128" }]'),TokenAmount:JSON.parse('[{ "name": "token_address", "type": "ContractAddress" }, { "name": "amount", "type": "u256" }]'),NftId:JSON.parse('[{ "name": "collection_address", "type": "ContractAddress" }, { "name": "token_id", "type": "u256" }]')},ge={[L.ACTIVE]:{domain:"StarknetDomain",hashMethod:$l,hashMerkleMethod:Vl,escapeTypeString:n(e=>`"${e}"`,"escapeTypeString"),presetTypes:Vg},[L.LEGACY]:{domain:"StarkNetDomain",hashMethod:Hl,hashMerkleMethod:Oa,escapeTypeString:n(e=>e,"escapeTypeString"),presetTypes:{}}};function wo(e,t,{min:a,max:o}){let r=BigInt(e);z(r>=a&&r<=o,`${r} (${t}) is out of bounds [${a}, ${o}]`)}n(wo,"assertRange");function gm({types:e,domain:t}){if(ge[L.ACTIVE].domain in e&&t.revision===L.ACTIVE)return L.ACTIVE;if(ge[L.LEGACY].domain in e&&(t.revision??L.LEGACY)===L.LEGACY)return L.LEGACY}n(gm,"identifyRevision");function De(e){try{return y(e)}catch{if(ee(e))return y(se(e));throw new Error(`Invalid BigNumberish: ${e}`)}}n(De,"getHex");function Hg(e){let t=e;return!!(t.message&&t.primaryType&&t.types&&gm(t))}n(Hg,"validateTypedData");function km(e){return _e(e)?e:J(e)}n(km,"prepareSelector");function ym(e){return e.type==="merkletree"}n(ym,"isMerkleTreeType");function ri(e,t,a=[],o="",r=L.LEGACY){return t[t.length-1]==="*"?t=t.slice(0,-1):r===L.ACTIVE&&(t==="enum"?t=o:t.match(/^\(.*\)$/)&&(t=t.slice(1,-1))),a.includes(t)||!e[t]?a:[t,...e[t].reduce((i,s)=>[...i,...ri(e,s.type,i,s.contains,r).filter(c=>!i.includes(c))],[])]}n(ri,"getDependencies");function $g(e,t){if(t.parent&&t.key){let o=e[t.parent].find(i=>i.name===t.key);if(!ym(o))throw new Error(`${t.key} is not a merkle tree`);if(o.contains.endsWith("*"))throw new Error(`Merkle tree contain property must not be an array but was given ${t.key}`);return o.contains}return"raw"}n($g,"getMerkleTreeType");function bm(e,t,a=L.LEGACY){let o=a===L.ACTIVE?{...e,...ge[a].presetTypes}:e,[r,...i]=ri(o,t,void 0,void 0,a),s=r?[r,...i.sort()]:[],c=ge[a].escapeTypeString;return s.map(u=>{let p=o[u].map(m=>{let l=m.type==="enum"&&a===L.ACTIVE?m.contains:m.type,h=l.match(/^\(.*\)$/)?`(${l.slice(1,-1).split(",").map(g=>g&&c(g)).join(",")})`:c(l);return`${c(m.name)}:${h}`});return`${c(u)}(${p})`}).join("")}n(bm,"encodeType");function wm(e,t,a=L.LEGACY){return J(bm(e,t,a))}n(wm,"getTypeHash");function Sa(e,t,a,o={},r=L.LEGACY){if(e[t])return[t,Ba(e,t,a,r)];if(ge[r].presetTypes[t])return[t,Ba(ge[r].presetTypes,t,a,r)];if(t.endsWith("*")){let i=a.map(s=>Sa(e,t.slice(0,-1),s,void 0,r)[1]);return[t,ge[r].hashMethod(i)]}switch(t){case"enum":{if(r===L.ACTIVE){let[i,s]=Object.entries(a)[0],c=e[o.parent][0],u=e[c.contains],p=u.find(h=>h.name===i),m=u.indexOf(p),l=p.type.slice(1,-1).split(",").map((h,g)=>{if(!h)return h;let f=s[g];return Sa(e,h,f,void 0,r)[1]});return[t,ge[r].hashMethod([m,...l])]}return[t,De(a)]}case"merkletree":{let i=$g(e,o),s=a.map(u=>Sa(e,i,u,void 0,r)[1]),{root:c}=new ni(s,ge[r].hashMerkleMethod);return["felt",c]}case"selector":return["felt",km(a)];case"string":{if(r===L.ACTIVE){let i=Oo(a),s=[i.data.length,...i.data,i.pending_word,i.pending_word_len];return[t,ge[r].hashMethod(s)]}return[t,De(a)]}case"i128":{if(r===L.ACTIVE){let i=BigInt(a);return wo(i,t,Xu),[t,De(i<0n?Tr+i:i)]}return[t,De(a)]}case"timestamp":case"u128":return r===L.ACTIVE&&wo(a,t,Zu),[t,De(a)];case"felt":case"shortstring":return r===L.ACTIVE&&wo(De(a),t,fr),[t,De(a)];case"ClassHash":case"ContractAddress":return r===L.ACTIVE&&wo(a,t,fr),[t,De(a)];case"bool":return r===L.ACTIVE&&z(typeof a=="boolean",`Type mismatch for ${t} ${a}`),[t,De(a)];default:{if(r===L.ACTIVE)throw new Error(`Unsupported type: ${t}`);return[t,De(a)]}}}n(Sa,"encodeValue");function jm(e,t,a,o=L.LEGACY){let r=e[t]??ge[o].presetTypes[t],[i,s]=r.reduce(([c,u],p)=>{if(a[p.name]===void 0||a[p.name]===null&&p.type!=="enum")throw new Error(`Cannot encode data: missing data for '${p.name}'`);let m=a[p.name],l={parent:t,key:p.name},[h,g]=Sa(e,p.type,m,l,o);return[[...c,h],[...u,g]]},[["felt"],[wm(e,t,o)]]);return[i,s]}n(jm,"encodeData");function Ba(e,t,a,o=L.LEGACY){return ge[o].hashMethod(jm(e,t,a,o)[1])}n(Ba,"getStructHash");function Fg(e,t){if(!Hg(e))throw new Error("Typed data does not match JSON schema");let a=gm(e),{domain:o,hashMethod:r}=ge[a],i=[se("StarkNet Message"),Ba(e.types,o,e.domain,a),t,Ba(e.types,e.primaryType,e.message,a)];return r(i)}n(Fg,"getMessageHash");var Mg={};U(Mg,{UINT_128_MAX:n(()=>Gt,"UINT_128_MAX"),UINT_256_MAX:n(()=>wl,"UINT_256_MAX"),bnToUint256:n(()=>Kg,"bnToUint256"),isUint256:n(()=>qg,"isUint256"),uint256ToBN:n(()=>Ug,"uint256ToBN")});function Ug(e){return new Z(e).toBigInt()}n(Ug,"uint256ToBN");function qg(e){return Z.is(e)}n(qg,"isUint256");function Kg(e){return new Z(e).toUint256HexString()}n(Kg,"bnToUint256");var $o={};U($o,{getAbiEvents:n(()=>vm,"getAbiEvents"),isAbiEvent:n(()=>Cr,"isAbiEvent"),isObject:n(()=>Ao,"isObject"),parseEvents:n(()=>xm,"parseEvents"),parseUDCEvent:n(()=>Yg,"parseUDCEvent")});function Cr(e){return e.type==="event"}n(Cr,"isAbiEvent");function Wg(e){return e.filter(t=>t.type==="event").reduce((t,a)=>{let o=a.name,r={...a};return r.name=o,{...t,[M(Te(pt(o)).toString(16))]:r}},{})}n(Wg,"getCairo0AbiEvents");function Gg(e){let t=e.filter(r=>Cr(r)&&r.kind==="struct"),a=e.filter(r=>Cr(r)&&r.kind==="enum");return t.reduce((r,i)=>{let s=[],{name:c}=i,u=!1,p=n(h=>h.type===c,"findName");for(;;){let h=a.find(f=>f.variants.some(p));if(typeof h>"u")break;let g=h.variants.find(p);s.unshift(g.name),g.kind==="flat"&&(u=!0),c=h.name}if(s.length===0)throw new Error("inconsistency in ABI events definition.");u&&(s=[s[s.length-1]]);let m=s.pop(),l={[M(Te(pt(m)).toString(16))]:i};for(;s.length>0;)l={[M(Te(pt(s.pop())).toString(16))]:l};return l={...l},Em(r,l)},{})}n(Gg,"getCairo1AbiEvents");function vm(e){return Kr(e)?Gg(e):Wg(e)}n(vm,"getAbiEvents");function Ao(e){return e&&typeof e=="object"&&!Array.isArray(e)}n(Ao,"isObject");function Em(e,t){let a={...e};return Ao(e)&&Ao(t)&&Object.keys(t).forEach(o=>{Ao(t[o])?o in e?a[o]=Em(e[o],t[o]):Object.assign(a,{[o]:t[o]}):Object.assign(a,{[o]:t[o]})}),a}n(Em,"mergeAbiEvents");function xm(e,t,a,o){return e.flat().reduce((i,s)=>{let c=t[s.keys.shift()??0];if(!c)return i;for(;!c.name;){let g=s.keys.shift();z(!!g,'Not enough data in "key" property of this event.'),c=c[g]}let u={};u[c.name]={};let p=s.keys[Symbol.iterator](),m=s.data[Symbol.iterator](),l=c.members?.filter(g=>g.kind==="key")||c.keys,h=c.members?.filter(g=>g.kind==="data")||c.data;return l.forEach(g=>{u[c.name][g.name]=So(p,g,a,o,u[c.name])}),h.forEach(g=>{u[c.name][g.name]=So(m,g,a,o,u[c.name])}),i.push(u),i},[])}n(xm,"parseEvents");function Yg(e){if(!e.events)throw new Error("UDC emitted event is empty");let t=e.events.find(a=>Ia(a.from_address)===Ia(Ca.ADDRESS))||{data:[]};return{transaction_hash:e.transaction_hash,contract_address:t.data[0],address:t.data[0],deployer:t.data[1],unique:t.data[2],classHash:t.data[3],calldata_len:t.data[4],calldata:t.data.slice(5,5+parseInt(t.data[4],16)),salt:t.data[t.data.length-1]}}n(Yg,"parseUDCEvent");var Xg={};U(Xg,{addDeclareTransaction:n(()=>rk,"addDeclareTransaction"),addInvokeTransaction:n(()=>nk,"addInvokeTransaction"),addStarknetChain:n(()=>ek,"addStarknetChain"),deploymentData:n(()=>ok,"deploymentData"),getPermissions:n(()=>Jg,"getPermissions"),onAccountChange:n(()=>ck,"onAccountChange"),onNetworkChanged:n(()=>uk,"onNetworkChanged"),requestAccounts:n(()=>Zg,"requestAccounts"),requestChainId:n(()=>ak,"requestChainId"),signMessage:n(()=>ik,"signMessage"),supportedSpecs:n(()=>sk,"supportedSpecs"),switchStarknetChain:n(()=>tk,"switchStarknetChain"),watchAsset:n(()=>Qg,"watchAsset")});function Zg(e,t=!1){return e.request({type:"wallet_requestAccounts",params:{silent_mode:t}})}n(Zg,"requestAccounts");function Jg(e){return e.request({type:"wallet_getPermissions"})}n(Jg,"getPermissions");function Qg(e,t){return e.request({type:"wallet_watchAsset",params:t})}n(Qg,"watchAsset");function ek(e,t){return e.request({type:"wallet_addStarknetChain",params:t})}n(ek,"addStarknetChain");function tk(e,t){return e.request({type:"wallet_switchStarknetChain",params:{chainId:t}})}n(tk,"switchStarknetChain");function ak(e){return e.request({type:"wallet_requestChainId"})}n(ak,"requestChainId");function ok(e){return e.request({type:"wallet_deploymentData"})}n(ok,"deploymentData");function nk(e,t){return e.request({type:"wallet_addInvokeTransaction",params:t})}n(nk,"addInvokeTransaction");function rk(e,t){return e.request({type:"wallet_addDeclareTransaction",params:t})}n(rk,"addDeclareTransaction");function ik(e,t){return e.request({type:"wallet_signTypedData",params:t})}n(ik,"signMessage");function sk(e){return e.request({type:"wallet_supportedSpecs"})}n(sk,"supportedSpecs");function ck(e,t){e.on("accountsChanged",t)}n(ck,"onAccountChange");function uk(e,t){e.on("networkChanged",t)}n(uk,"onNetworkChanged");var Fo=n(e=>{let t=["blockIdentifier","parseRequest","parseResponse","formatResponse","maxFee","nonce","signature","addressSalt"],a=e[e.length-1];return typeof a=="object"&&t.some(o=>o in a)?{args:e,options:e.pop()}:{args:e}},"splitArgsAndOptions");function _m(e,t){return async function(...a){let o=Fo(a);return e.call(t.name,o.args,{parseRequest:!0,parseResponse:!0,...o.options})}}n(_m,"buildCall");function lk(e,t){return async function(...a){let o=Fo(a);return e.invoke(t.name,o.args,{parseRequest:!0,...o.options})}}n(lk,"buildInvoke");function xu(e,t){return t.stateMutability==="view"||t.state_mutability==="view"?_m(e,t):lk(e,t)}n(xu,"buildDefault");function mk(e,t){return function(...a){return e.populate(t.name,a)}}n(mk,"buildPopulate");function pk(e,t){return function(...a){return e.estimate(t.name,a)}}n(pk,"buildEstimate");function jo(e,t){return Array.isArray(e)&&"__compiled__"in e?e:Array.isArray(e)&&Array.isArray(e[0])&&"__compiled__"in e[0]?e[0]:t()}n(jo,"getCalldata");var Cm=class{static{n(this,"Contract")}abi;address;providerOrAccount;deployTransactionHash;structs;events;functions;callStatic;populateTransaction;estimateFee;callData;constructor(e,t,a=Pg){this.address=t&&t.toLowerCase(),this.providerOrAccount=a,this.callData=new P(e),this.structs=P.getAbiStruct(e),this.events=vm(e);let o=_l(e);this.abi=o.getLegacyFormat();let r={enumerable:!0,value:{},writable:!1};Object.defineProperties(this,{functions:{enumerable:!0,value:{},writable:!1},callStatic:{enumerable:!0,value:{},writable:!1},populateTransaction:{enumerable:!0,value:{},writable:!1},estimateFee:{enumerable:!0,value:{},writable:!1}}),this.abi.forEach(i=>{if(i.type!=="function")return;let s=i.name;this[s]||Object.defineProperty(this,s,{...r,value:xu(this,i)}),this.functions[s]||Object.defineProperty(this.functions,s,{...r,value:xu(this,i)}),this.callStatic[s]||Object.defineProperty(this.callStatic,s,{...r,value:_m(this,i)}),this.populateTransaction[s]||Object.defineProperty(this.populateTransaction,s,{...r,value:mk(this,i)}),this.estimateFee[s]||Object.defineProperty(this.estimateFee,s,{...r,value:pk(this,i)})})}attach(e){this.address=e}connect(e){this.providerOrAccount=e}async deployed(){return this.deployTransactionHash&&(await this.providerOrAccount.waitForTransaction(this.deployTransactionHash),this.deployTransactionHash=void 0),this}async call(e,t=[],{parseRequest:a=!0,parseResponse:o=!0,formatResponse:r=void 0,blockIdentifier:i=void 0}={}){z(this.address!==null,"contract is not connected to an address");let s=jo(t,()=>a?(this.callData.validate("CALL",e,t),this.callData.compile(e,t)):(console.warn("Call skipped parsing but provided rawArgs, possible malfunction request"),t));return this.providerOrAccount.callContract({contractAddress:this.address,calldata:s,entrypoint:e},i).then(c=>o?r?this.callData.format(e,c,r):this.callData.parse(e,c):c)}invoke(e,t=[],{parseRequest:a=!0,maxFee:o,nonce:r,signature:i}={}){z(this.address!==null,"contract is not connected to an address");let s=jo(t,()=>a?(this.callData.validate("INVOKE",e,t),this.callData.compile(e,t)):(console.warn("Invoke skipped parsing but provided rawArgs, possible malfunction request"),t)),c={contractAddress:this.address,calldata:s,entrypoint:e};if("execute"in this.providerOrAccount)return this.providerOrAccount.execute(c,void 0,{maxFee:o,nonce:r});if(!r)throw new Error("Nonce is required when invoking a function without an account");return console.warn(`Invoking ${e} without an account. This will not work on a public node.`),this.providerOrAccount.invokeFunction({...c,signature:i},{nonce:r})}async estimate(e,t=[]){z(this.address!==null,"contract is not connected to an address"),jo(t,()=>!1)||this.callData.validate("INVOKE",e,t);let a=this.populate(e,t);if("estimateInvokeFee"in this.providerOrAccount)return this.providerOrAccount.estimateInvokeFee(a);throw Error("Contract must be connected to the account contract to estimate")}populate(e,t=[]){let a=jo(t,()=>this.callData.compile(e,t));return{contractAddress:this.address,entrypoint:e,calldata:a}}parseEvents(e){return xm(e.events?.filter(t=>Ia(t.from_address)===Ia(this.address),[])||[],this.events,this.structs,P.getAbiEnum(this.abi))}isCairo1(){return bl.isCairo1Abi(this.abi)}async getVersion(){return this.providerOrAccount.getContractVersion(this.address)}typedv2(e){return this}};var Mo=class{constructor(t,a,o,r){this.abi=t;this.address=a;this.provider=o;this.blockNumber=r;this._contract=new Cm(t,a,o);let i=new P(t);for(let s of i.abi)if(s.type=="function"&&s.state_mutability=="view"){let c=s.name;Object.defineProperty(this,c,{enumerable:!0,writable:!1,value:hk(this,c)})}}static{n(this,"StarknetContractView")}_contract;call(t,a,o){return this._contract.call(t,a,{...o,blockIdentifier:this.blockNumber})}};function hk(e,t){return async function(...a){let o=Fo(a);return e.call(t,o.args,{parseRequest:!0,parseResponse:!0,...o.options})}}n(hk,"buildCall");import("node:process").then(e=>e.stdout.write(""));var ii=class extends fi{constructor(a,o,r,i,s,c,u=-1,p="",m){super({});this.provider=a;this.contractAddress=o;this.chainId=r;this.blockNumber=i;this.blockHash=s;this.transactionHash=c;this.logIndex=u;this.contractName=p;this.abi=m}static{n(this,"AbstractContext")}getMetaDataInternal(a,o){return{address:this.contractAddress,contractName:"",blockNumber:BigInt(this.blockNumber),transactionIndex:0,transactionHash:this.transactionHash,chainId:this.getChainId(),name:a,logIndex:this.logIndex,labels:hi(o)}}getChainId(){return this.chainId}},Uo=class extends ii{constructor(a,o,r,i,s,c,u){super(o,a.address,a.chainId,r,i,s,c,a.name??u.slice(0,8),a.abi);this.classHash=u}static{n(this,"StarknetContext")}_contract;getContract(){if(!this.abi)throw new Error("abi not found");return this._contract||(this._contract=new Mo(this.abi,this.contractAddress,this.provider,this.blockNumber)),this._contract}};import("node:process").then(e=>e.stdout.write(""));var Ha=class{constructor(t,a,o){this.caller=t;this.transactionHash=a;this.data=o}static{n(this,"StarknetEvent")}};import("node:process").then(e=>e.stdout.write(""));import{ListStateStorage as fk,mergeProcessResults as gk}from"@sentio/runtime";var si=class e{constructor(t){this.config=t;return Qo(this)}static{n(this,"StarknetProcessor")}callHandlers=[];provider;static bind(t){let a=new e(t);return oa.INSTANCE.addValue(a),a}classHash;async configure(){this.provider=new hm({nodeUrl:kk(this.config.chainId)});let t=await this.provider.getClassHashAt(this.config.address);if(!t)throw new Error("can't find the class hash defined at "+this.config.address);if(this.classHash=t,!this.config.abi){let a=await this.provider.getClass(t,"latest");this.config.abi=a.abi}}onEvent(t,a){let o=Array.isArray(t)?t:[t];if(!this.config.abi)throw new Error("abi not found");let r=this.config.abi,i={handlerName:Pi(),handler:n(async s=>{try{let c=[s.result],u=$o.getAbiEvents(r),p=P.getAbiStruct(r),m=P.getAbiEnum(r),l=$o.parseEvents(c,u,p,m),h=[],{block_hash:g,block_number:f,transaction_hash:d,from_address:k}=s.result;for(let b=0;b<l.length;b++){let v=new Uo(this.config,this.provider,f,g,d,b,this.classHash),E=new Ha(k,d,l[b]);try{await a(E,v)}catch(T){console.error(T)}h.push(v.stopAndGetResult())}return gk(h)}catch(c){return console.error(c),{gauges:[],counters:[],events:[],exports:[],states:{configUpdated:!1}}}},"handler"),eventFilter:o};return this.callHandlers.push(i),this}};function kk(e){switch(e){case Sm.StarknetChainId.STARKNET_MAINNET:return To.NetworkName.SN_MAIN;default:return To.NetworkName.SN_SEPOLIA}}n(kk,"getRpcEndpoint");var oa=class e extends fk{static{n(this,"StarknetProcessorState")}static INSTANCE=new e},Am=class{constructor(t,a){this.abi=t;this.config=a;return this.processor=new si(a),oa.INSTANCE.addValue(this.processor),Qo(this)}static{n(this,"AbstractStarknetProcessor")}processor;onEvent(t,a,o){return this.processor.onEvent(t,async(r,i)=>{let s=r.data[a],c=new Ha(r.caller,r.transactionHash,s);await o(c,i)}),this}};import("node:process").then(e=>e.stdout.write(""));var qo=class extends jk{static{n(this,"StarknetPlugin")}name="StarknetPlugin";handlers={callHandlers:[]};async configure(t){let a={callHandlers:[]};for(let o of oa.INSTANCE.getValues()){await o.configure();let r=di.fromPartial({processorType:Ek,contract:{name:o.config.name,chainId:o.config.chainId.toString(),address:o.config.address||"*",abi:""},startBlock:o.config.startBlock,endBlock:o.config.endBlock});for(let i of o.callHandlers){let s=a.callHandlers.push(i.handler)-1;i.eventFilter&&r.starknetEventConfigs.push({filters:i.eventFilter.map(c=>({address:o.config.address,keys:[Xr.getSelectorFromName(c)]})),handlerId:s,handlerName:i.handlerName})}t.contractConfigs.push(r)}this.handlers=a}supportedHandlers=[Wo.STARKNET_EVENT];processBinding(t){switch(t.handlerType){case Wo.STARKNET_EVENT:return this.processEvent(t);default:throw new kt.ServerError(kt.Status.INVALID_ARGUMENT,"No handle type registered "+t.handlerType)}}async start(t){}stateDiff(t){return gi.INSTANCE.getValues().length!==t.templateInstances.length}async processEvent(t){if(!t.data?.starknetEvents?.result)throw new kt.ServerError(kt.Status.INVALID_ARGUMENT,"starknetEvents can't be null");let a=[],o=t.data?.starknetEvents?.result;for(let r of t.handlerIds){let i=this.handlers.callHandlers[r](t.data?.starknetEvents).catch(s=>{throw new kt.ServerError(kt.Status.INTERNAL,"error processing transaction: "+JSON.stringify(o)+`
34
- `+yk(s))});bk.execution.sequential&&await i,a.push(i)}return wk(await Promise.all(a))}};vk.INSTANCE.register(new qo);import("node:process").then(e=>e.stdout.write(""));var xk=wt(ki(),1);import("node:process").then(e=>e.stdout.write(""));import("node:process").then(e=>e.stdout.write(""));var export_StarknetChainId=xk.StarknetChainId;export{Am as AbstractStarknetProcessor,export_StarknetChainId as StarknetChainId,Uo as StarknetContext,Ha as StarknetEvent,qo as StarknetPlugin,si as StarknetProcessor,oa as StarknetProcessorState};
33
+ ${r}: ${i}: ${ye(s)}`)}if(o instanceof Ta)throw o;if(o)throw Error(o.message)}async fetchEndpoint(e,t){try{let a=await this.fetch(e,t,this.requestId+=1),{error:o,result:r}=await a.json();return this.errorHandler(e,t,o),r}catch(a){throw this.errorHandler(e,t,a?.response?.data,a),a}}async getChainId(){return this.chainId??=await this.fetchEndpoint("starknet_chainId"),this.chainId}async getSpecVersion(){return this.specVersion??=await this.fetchEndpoint("starknet_specVersion"),this.specVersion}getNonceForAddress(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getNonce",{contract_address:a,block_id:o})}getBlockLatestAccepted(){return this.fetchEndpoint("starknet_blockHashAndNumber")}getBlockNumber(){return this.fetchEndpoint("starknet_blockNumber")}getBlockWithTxHashes(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxHashes",{block_id:t})}getBlockWithTxs(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxs",{block_id:t})}getBlockWithReceipts(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockWithReceipts",{block_id:t})}getBlockStateUpdate(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getStateUpdate",{block_id:t})}getBlockTransactionsTraces(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_traceBlockTransactions",{block_id:t})}getBlockTransactionCount(e=this.blockIdentifier){let t=new R(e).identifier;return this.fetchEndpoint("starknet_getBlockTransactionCount",{block_id:t})}getTransactionByHash(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionByHash",{transaction_hash:t})}getTransactionByBlockIdAndIndex(e,t){let a=new R(e).identifier;return this.fetchEndpoint("starknet_getTransactionByBlockIdAndIndex",{block_id:a,index:t})}getTransactionReceipt(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionReceipt",{transaction_hash:t})}getTransactionTrace(e){let t=y(e);return this.fetchEndpoint("starknet_traceTransaction",{transaction_hash:t})}getTransactionStatus(e){let t=y(e);return this.fetchEndpoint("starknet_getTransactionStatus",{transaction_hash:t})}simulateTransaction(e,t={}){let{blockIdentifier:a=this.blockIdentifier,skipValidate:o=!0,skipFeeCharge:r=!0}=t,i=new R(a).identifier,s=[];return o&&s.push(Rt.SKIP_VALIDATE),r&&s.push(Rt.SKIP_FEE_CHARGE),this.fetchEndpoint("starknet_simulateTransactions",{block_id:i,transactions:e.map(c=>this.buildTransaction(c)),simulation_flags:s})}async waitForTransaction(e,t){let a=y(e),{retries:o}=this,r=!1,i=!1,s=t?.retryInterval??this.transactionRetryIntervalDefault,c=t?.errorStates??[Lt.REJECTED],u=t?.successStates??[Fa.SUCCEEDED,Lt.ACCEPTED_ON_L2,Lt.ACCEPTED_ON_L1],p;for(;!r;){await Qt(s);try{p=await this.getTransactionStatus(a);let l=p.execution_status,h=p.finality_status;if(!h)throw new Error("waiting for transaction status");if(c.includes(l)||c.includes(h)){let g=`${l}: ${h}`,f=new Error(g);throw f.response=p,i=!0,f}else(u.includes(l)||u.includes(h))&&(r=!0)}catch(l){if(l instanceof Error&&i)throw l;if(o<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}o-=1}let m=null;for(;m===null;){try{m=await this.getTransactionReceipt(a)}catch{if(o<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}o-=1,await Qt(s)}return m}getStorageAt(e,t,a=this.blockIdentifier){let o=y(e),r=Br(t),i=new R(a).identifier;return this.fetchEndpoint("starknet_getStorageAt",{contract_address:o,key:r,block_id:i})}getClassHashAt(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClassHashAt",{block_id:o,contract_address:a})}getClass(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClass",{class_hash:a,block_id:o})}getClassAt(e,t=this.blockIdentifier){let a=y(e),o=new R(t).identifier;return this.fetchEndpoint("starknet_getClassAt",{block_id:o,contract_address:a})}async getEstimateFee(e,{blockIdentifier:t=this.blockIdentifier,skipValidate:a=!0}){let o=new R(t).identifier,r={};return ti("0.5",await this.getSpecVersion())||(r={simulation_flags:a?[Rt.SKIP_VALIDATE]:[]}),this.fetchEndpoint("starknet_estimateFee",{request:e.map(i=>this.buildTransaction(i,"fee")),block_id:o,...r})}async invoke(e,t){let a;return fe(t)?a=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{type:je.INVOKE,sender_address:e.contractAddress,calldata:P.toHex(e.calldata),version:Ae.V3,signature:Q(e.signature),nonce:y(t.nonce),resource_bounds:t.resourceBounds,tip:y(t.tip),paymaster_data:t.paymasterData.map(o=>y(o)),account_deployment_data:t.accountDeploymentData.map(o=>y(o)),nonce_data_availability_mode:t.nonceDataAvailabilityMode,fee_data_availability_mode:t.feeDataAvailabilityMode}}):a=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{sender_address:e.contractAddress,calldata:P.toHex(e.calldata),type:je.INVOKE,max_fee:y(t.maxFee||0),version:Ae.V1,signature:Q(e.signature),nonce:y(t.nonce)}}),this.waitMode?this.waitForTransaction((await a).transaction_hash):a}async declare({contract:e,signature:t,senderAddress:a,compiledClassHash:o},r){let i;if(!Le(e)&&!fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:je.DECLARE,contract_class:{program:e.program,entry_points_by_type:e.entry_points_by_type,abi:e.abi},version:Ae.V1,max_fee:y(r.maxFee||0),signature:Q(t),sender_address:a,nonce:y(r.nonce)}});else if(Le(e)&&!fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:je.DECLARE,contract_class:{sierra_program:Tt(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},compiled_class_hash:o||"",version:Ae.V2,max_fee:y(r.maxFee||0),signature:Q(t),sender_address:a,nonce:y(r.nonce)}});else if(Le(e)&&fe(r))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:je.DECLARE,sender_address:a,compiled_class_hash:o||"",version:Ae.V3,signature:Q(t),nonce:y(r.nonce),contract_class:{sierra_program:Tt(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},resource_bounds:r.resourceBounds,tip:y(r.tip),paymaster_data:r.paymasterData.map(s=>y(s)),account_deployment_data:r.accountDeploymentData.map(s=>y(s)),nonce_data_availability_mode:r.nonceDataAvailabilityMode,fee_data_availability_mode:r.feeDataAvailabilityMode}});else throw Error("declare unspotted parameters");return this.waitMode?this.waitForTransaction((await i).transaction_hash):i}async deployAccount({classHash:e,constructorCalldata:t,addressSalt:a,signature:o},r){let i;return fe(r)?i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{type:je.DEPLOY_ACCOUNT,version:Ae.V3,signature:Q(o),nonce:y(r.nonce),contract_address_salt:y(a||0),constructor_calldata:P.toHex(t||[]),class_hash:y(e),resource_bounds:r.resourceBounds,tip:y(r.tip),paymaster_data:r.paymasterData.map(s=>y(s)),nonce_data_availability_mode:r.nonceDataAvailabilityMode,fee_data_availability_mode:r.feeDataAvailabilityMode}}):i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{constructor_calldata:P.toHex(t||[]),class_hash:y(e),contract_address_salt:y(a||0),type:je.DEPLOY_ACCOUNT,max_fee:y(r.maxFee||0),version:Ae.V1,signature:Q(o),nonce:y(r.nonce)}}),this.waitMode?this.waitForTransaction((await i).transaction_hash):i}callContract(e,t=this.blockIdentifier){let a=new R(t).identifier;return this.fetchEndpoint("starknet_call",{request:{contract_address:e.contractAddress,entry_point_selector:J(e.entrypoint),calldata:P.toHex(e.calldata)},block_id:a})}estimateMessageFee(e,t=this.blockIdentifier){let{from_address:a,to_address:o,entry_point_selector:r,payload:i}=e,s={from_address:ei(a),to_address:y(o),entry_point_selector:zo(r),payload:Pr(i)},c=new R(t).identifier;return this.fetchEndpoint("starknet_estimateMessageFee",{message:s,block_id:c})}getSyncingStats(){return this.fetchEndpoint("starknet_syncing")}getEvents(e){return this.fetchEndpoint("starknet_getEvents",{filter:e})}buildTransaction(e,t){let a=oi(t),o;if(fe(e)?o={signature:Q(e.signature),nonce:y(e.nonce),resource_bounds:e.resourceBounds,tip:y(e.tip),paymaster_data:e.paymasterData.map(r=>y(r)),nonce_data_availability_mode:e.nonceDataAvailabilityMode,fee_data_availability_mode:e.feeDataAvailabilityMode,account_deployment_data:e.accountDeploymentData.map(r=>y(r))}:o={signature:Q(e.signature),nonce:y(e.nonce),max_fee:y(e.maxFee||0)},e.type==="INVOKE_FUNCTION")return{type:je.INVOKE,sender_address:e.contractAddress,calldata:P.toHex(e.calldata),version:y(e.version||a.v3),...o};if(e.type==="DECLARE")return Le(e.contract)?{type:e.type,contract_class:{...e.contract,sierra_program:Tt(e.contract.sierra_program)},compiled_class_hash:e.compiledClassHash||"",sender_address:e.senderAddress,version:y(e.version||a.v3),...o}:{type:e.type,contract_class:e.contract,sender_address:e.senderAddress,version:y(e.version||a.v1),...o};if(e.type==="DEPLOY_ACCOUNT"){let{account_deployment_data:r,...i}=o;return{type:e.type,constructor_calldata:P.toHex(e.constructorCalldata||[]),class_hash:y(e.classHash),contract_address_salt:y(e.addressSalt||0),version:y(e.version||a.v3),...i}}throw Error("RPC buildTransaction received unknown TransactionType")}},bu=class{static{n(this,"RPCResponseParser")}margin;constructor(e){this.margin=e}estimatedFeeToMaxFee(e){return Wl(e,this.margin?.maxFee)}estimateFeeToBounds(e){return Qr(e,this.margin?.l1BoundMaxAmount,this.margin?.l1BoundMaxPricePerUnit)}parseGetBlockResponse(e){return{status:"PENDING",...e}}parseTransactionReceipt(e){return"actual_fee"in e&&ee(e.actual_fee)?{...e,actual_fee:{amount:e.actual_fee,unit:"FRI"}}:e}parseFeeEstimateResponse(e){let t=e[0];return{overall_fee:K(t.overall_fee),gas_consumed:K(t.gas_consumed),gas_price:K(t.gas_price),unit:t.unit,suggestedMaxFee:this.estimatedFeeToMaxFee(t.overall_fee),resourceBounds:this.estimateFeeToBounds(t),data_gas_consumed:t.data_gas_consumed?K(t.data_gas_consumed):0n,data_gas_price:t.data_gas_price?K(t.data_gas_price):0n}}parseFeeEstimateBulkResponse(e){return e.map(t=>({overall_fee:K(t.overall_fee),gas_consumed:K(t.gas_consumed),gas_price:K(t.gas_price),unit:t.unit,suggestedMaxFee:this.estimatedFeeToMaxFee(t.overall_fee),resourceBounds:this.estimateFeeToBounds(t),data_gas_consumed:t.data_gas_consumed?K(t.data_gas_consumed):0n,data_gas_price:t.data_gas_price?K(t.data_gas_price):0n}))}parseSimulateTransactionResponse(e){return e.map(t=>({...t,suggestedMaxFee:this.estimatedFeeToMaxFee(t.fee_estimation.overall_fee),resourceBounds:this.estimateFeeToBounds(t.fee_estimation)}))}parseContractClassResponse(e){return{...e,abi:ee(e.abi)?JSON.parse(e.abi):e.abi}}parseL1GasPriceResponse(e){return e.l1_gas_price.price_in_wei}},wu=class Eo{static{n(this,"_ReceiptTx")}statusReceipt;value;constructor(t){[this.statusReceipt,this.value]=Eo.isSuccess(t)?["success",t]:Eo.isReverted(t)?["reverted",t]:Eo.isRejected(t)?["rejected",t]:["error",new Error("Unknown response type")];for(let[a]of Object.entries(this))Object.defineProperty(this,a,{enumerable:!1});for(let[a,o]of Object.entries(t))Object.defineProperty(this,a,{enumerable:!0,writable:!1,value:o})}match(t){return this.statusReceipt in t?t[this.statusReceipt](this.value):t._()}isSuccess(){return this.statusReceipt==="success"}isReverted(){return this.statusReceipt==="reverted"}isRejected(){return this.statusReceipt==="rejected"}isError(){return this.statusReceipt==="error"}static isSuccess(t){return t.execution_status==="SUCCEEDED"}static isReverted(t){return t.execution_status==="REVERTED"}static isRejected(t){return t.status==="REJECTED"}},tm=class{static{n(this,"RpcProvider")}responseParser;channel;constructor(e){e&&"channel"in e?(this.channel=e.channel,this.responseParser="responseParser"in e?e.responseParser:new bu):(this.channel=new em({...e,waitMode:!1}),this.responseParser=new bu(e?.feeMarginPercentage))}fetch(e,t,a=0){return this.channel.fetch(e,t,a)}async getChainId(){return this.channel.getChainId()}async getSpecVersion(){return this.channel.getSpecVersion()}async getNonceForAddress(e,t){return this.channel.getNonceForAddress(e,t)}async getBlock(e){return this.channel.getBlockWithTxHashes(e).then(this.responseParser.parseGetBlockResponse)}async getBlockLatestAccepted(){return this.channel.getBlockLatestAccepted()}async getBlockNumber(){return this.channel.getBlockNumber()}async getBlockWithTxHashes(e){return this.channel.getBlockWithTxHashes(e)}async getBlockWithTxs(e){return this.channel.getBlockWithTxs(e)}async waitForBlock(e="pending",t=5e3){if(e==="latest")return;let a=await this.getBlockNumber(),o=e==="pending"?a+1:Number(y(e));if(o<=a)return;let{retries:r}=this.channel,i=r,s=!1;for(;!s;)if(await this.getBlockNumber()===o?s=!0:await Qt(t),i-=1,i<=0)throw new Error(`waitForBlock() timed-out after ${r} tries.`)}async getL1GasPrice(e){return this.channel.getBlockWithTxHashes(e).then(this.responseParser.parseL1GasPriceResponse)}async getL1MessageHash(e){let t=await this.channel.getTransactionByHash(e);z(t.type==="L1_HANDLER","This L2 transaction is not a L1 message.");let{calldata:a,contract_address:o,entry_point_selector:r,nonce:i}=t,s=[a[0],o,i,r,a.length-1,...a.slice(1)],c=M(s.reduce((u,p)=>u+ke(y(p)).padStart(64,"0"),""));return M(Ti(Xi(Rr(c))))}async getBlockWithReceipts(e){if(this.channel instanceof al.RpcChannel)throw new Ta("Unsupported method for RPC version");return this.channel.getBlockWithReceipts(e)}getStateUpdate=this.getBlockStateUpdate;async getBlockStateUpdate(e){return this.channel.getBlockStateUpdate(e)}async getBlockTransactionsTraces(e){return this.channel.getBlockTransactionsTraces(e)}async getBlockTransactionCount(e){return this.channel.getBlockTransactionCount(e)}async getPendingTransactions(){let{transactions:e}=await this.getBlockWithTxHashes("pending").then(this.responseParser.parseGetBlockResponse);return Promise.all(e.map(t=>this.getTransactionByHash(t)))}async getTransaction(e){return this.channel.getTransactionByHash(e)}async getTransactionByHash(e){return this.channel.getTransactionByHash(e)}async getTransactionByBlockIdAndIndex(e,t){return this.channel.getTransactionByBlockIdAndIndex(e,t)}async getTransactionReceipt(e){let t=await this.channel.getTransactionReceipt(e),a=this.responseParser.parseTransactionReceipt(t);return new wu(a)}async getTransactionTrace(e){return this.channel.getTransactionTrace(e)}async getTransactionStatus(e){return this.channel.getTransactionStatus(e)}async getSimulateTransaction(e,t){return this.channel.simulateTransaction(e,t).then(a=>this.responseParser.parseSimulateTransactionResponse(a))}async waitForTransaction(e,t){let a=await this.channel.waitForTransaction(e,t);return new wu(a)}async getStorageAt(e,t,a){return this.channel.getStorageAt(e,t,a)}async getClassHashAt(e,t){return this.channel.getClassHashAt(e,t)}async getClassByHash(e){return this.getClass(e)}async getClass(e,t){return this.channel.getClass(e,t).then(this.responseParser.parseContractClassResponse)}async getClassAt(e,t){return this.channel.getClassAt(e,t).then(this.responseParser.parseContractClassResponse)}async getContractVersion(e,t,{blockIdentifier:a=this.channel.blockIdentifier,compiler:o=!0}={}){let r;if(e)r=await this.getClassAt(e,a);else if(t)r=await this.getClass(t,a);else throw Error("getContractVersion require contractAddress or classHash");return Le(r)?o?{cairo:"1",compiler:Wr(r.abi).compiler}:{cairo:"1",compiler:void 0}:{cairo:"0",compiler:"0"}}async getEstimateFee(e,t,a,o){return this.getInvokeEstimateFee(e,t,a,o)}async getInvokeEstimateFee(e,t,a,o){return this.channel.getEstimateFee([{type:"INVOKE_FUNCTION",...e,...t}],{blockIdentifier:a,skipValidate:o}).then(r=>this.responseParser.parseFeeEstimateResponse(r))}async getDeclareEstimateFee(e,t,a,o){return this.channel.getEstimateFee([{type:"DECLARE",...e,...t}],{blockIdentifier:a,skipValidate:o}).then(r=>this.responseParser.parseFeeEstimateResponse(r))}async getDeployAccountEstimateFee(e,t,a,o){return this.channel.getEstimateFee([{type:"DEPLOY_ACCOUNT",...e,...t}],{blockIdentifier:a,skipValidate:o}).then(r=>this.responseParser.parseFeeEstimateResponse(r))}async getEstimateFeeBulk(e,t){return this.channel.getEstimateFee(e,t).then(a=>this.responseParser.parseFeeEstimateBulkResponse(a))}async invokeFunction(e,t){return this.channel.invoke(e,t)}async declareContract(e,t){return this.channel.declare(e,t)}async deployAccountContract(e,t){return this.channel.deployAccount(e,t)}async callContract(e,t){return this.channel.callContract(e,t)}async estimateMessageFee(e,t){return this.channel.estimateMessageFee(e,t)}async getSyncingStats(){return this.channel.getSyncingStats()}async getEvents(e){return this.channel.getEvents(e)}},Og={};U(Og,{StarknetIdContract:n(()=>om,"StarknetIdContract"),StarknetIdIdentityContract:n(()=>nm,"StarknetIdIdentityContract"),StarknetIdMulticallContract:n(()=>_r,"StarknetIdMulticallContract"),StarknetIdPfpContract:n(()=>um,"StarknetIdPfpContract"),StarknetIdPopContract:n(()=>mm,"StarknetIdPopContract"),StarknetIdVerifierContract:n(()=>sm,"StarknetIdVerifierContract"),dynamicCallData:n(()=>B,"dynamicCallData"),dynamicFelt:n(()=>ue,"dynamicFelt"),execution:n(()=>Be,"execution"),getStarknetIdContract:n(()=>xo,"getStarknetIdContract"),getStarknetIdIdentityContract:n(()=>rm,"getStarknetIdIdentityContract"),getStarknetIdMulticallContract:n(()=>im,"getStarknetIdMulticallContract"),getStarknetIdPfpContract:n(()=>lm,"getStarknetIdPfpContract"),getStarknetIdPopContract:n(()=>pm,"getStarknetIdPopContract"),getStarknetIdVerifierContract:n(()=>cm,"getStarknetIdVerifierContract"),useDecoded:n(()=>xr,"useDecoded"),useEncoded:n(()=>am,"useEncoded")});var Ve="abcdefghijklmnopqrstuvwxyz0123456789-",Gt=BigInt(Ve.length+1),ie="\u8FD9\u6765",ju=BigInt(Ve.length),vr=BigInt(ie.length),vu=BigInt(ie.length+1);function Er(e){let t=0;for(;e.endsWith(ie[ie.length-1]);)e=e.substring(0,e.length-1),t+=1;return[e,t]}n(Er,"extractStars");function xr(e){let t="";return e.forEach(a=>{for(;a!==Ge;){let i=a%Gt;if(a/=Gt,i===BigInt(Ve.length)){let s=a/vu;if(s===Ge){let c=a%vu;a=s,c===Ge?t+=Ve[0]:t+=ie[Number(c)-1]}else{let c=a%vr;t+=ie[Number(c)],a/=vr}}else t+=Ve[Number(i)]}let[o,r]=Er(t);r&&(t=o+(r%2===0?ie[ie.length-1].repeat(r/2-1)+ie[0]+Ve[1]:ie[ie.length-1].repeat((r-1)/2+1))),t+="."}),t&&t.concat("stark")}n(xr,"useDecoded");function am(e){let t=BigInt(0),a=BigInt(1);if(e.endsWith(ie[0]+Ve[1])){let[o,r]=Er(e.substring(0,e.length-2));e=o+ie[ie.length-1].repeat(2*(r+1))}else{let[o,r]=Er(e);r&&(e=o+ie[ie.length-1].repeat(1+2*(r-1)))}for(let o=0;o<e.length;o+=1){let r=e[o],i=Ve.indexOf(r),s=BigInt(Ve.indexOf(r));if(i!==-1)o===e.length-1&&e[o]===Ve[0]?(t+=a*ju,a*=Gt,a*=Gt):(t+=a*s,a*=Gt);else if(ie.indexOf(r)!==-1){t+=a*ju,a*=Gt;let c=(o===e.length-1?1:0)+ie.indexOf(r);t+=a*BigInt(c),a*=vr}}return t}n(am,"useEncoded");var om=(e=>(e.MAINNET="0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678",e.TESTNET_SEPOLIA="0x154bc2e1af9260b9e66af0e9c46fc757ff893b3ff6a85718a810baf1474",e))(om||{});function xo(e){switch(e){case"0x534e5f4d41494e":return"0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678";case"0x534e5f5345504f4c4941":return"0x154bc2e1af9260b9e66af0e9c46fc757ff893b3ff6a85718a810baf1474";default:throw new Error("Starknet.id is not yet deployed on this network")}}n(xo,"getStarknetIdContract");var nm=(e=>(e.MAINNET="0x05dbdedc203e92749e2e746e2d40a768d966bd243df04a6b712e222bc040a9af",e.TESTNET_SEPOLIA="0x3697660a0981d734780731949ecb2b4a38d6a58fc41629ed611e8defda",e))(nm||{});function rm(e){switch(e){case"0x534e5f4d41494e":return"0x05dbdedc203e92749e2e746e2d40a768d966bd243df04a6b712e222bc040a9af";case"0x534e5f5345504f4c4941":return"0x3697660a0981d734780731949ecb2b4a38d6a58fc41629ed611e8defda";default:throw new Error("Starknet.id verifier contract is not yet deployed on this network")}}n(rm,"getStarknetIdIdentityContract");var _r="0x034ffb8f4452df7a613a0210824d6414dbadcddce6c6e19bf4ddc9e22ce5f970";function im(e){switch(e){case"0x534e5f4d41494e":return _r;case"0x534e5f5345504f4c4941":return _r;default:throw new Error("Starknet.id multicall contract is not yet deployed on this network")}}n(im,"getStarknetIdMulticallContract");var sm=(e=>(e.MAINNET="0x07d14dfd8ee95b41fce179170d88ba1f0d5a512e13aeb232f19cfeec0a88f8bf",e.TESTNET_SEPOLIA="0x60B94fEDe525f815AE5E8377A463e121C787cCCf3a36358Aa9B18c12c4D566",e))(sm||{});function cm(e){switch(e){case"0x534e5f4d41494e":return"0x07d14dfd8ee95b41fce179170d88ba1f0d5a512e13aeb232f19cfeec0a88f8bf";case"0x534e5f5345504f4c4941":return"0x60B94fEDe525f815AE5E8377A463e121C787cCCf3a36358Aa9B18c12c4D566";default:throw new Error("Starknet.id verifier contract is not yet deployed on this network")}}n(cm,"getStarknetIdVerifierContract");var um=(e=>(e.MAINNET="0x070aaa20ec4a46da57c932d9fd89ca5e6bb9ca3188d3df361a32306aff7d59c7",e.TESTNET_SEPOLIA="0x9e7bdb8dabd02ea8cfc23b1d1c5278e46490f193f87516ed5ff2dfec02",e))(um||{});function lm(e){switch(e){case"0x534e5f4d41494e":return"0x070aaa20ec4a46da57c932d9fd89ca5e6bb9ca3188d3df361a32306aff7d59c7";case"0x534e5f5345504f4c4941":return"0x9e7bdb8dabd02ea8cfc23b1d1c5278e46490f193f87516ed5ff2dfec02";default:throw new Error("Starknet.id profile picture verifier contract is not yet deployed on this network")}}n(lm,"getStarknetIdPfpContract");var mm=(e=>(e.MAINNET="0x0293eb2ba9862f762bd3036586d5755a782bd22e6f5028320f1d0405fd47bff4",e.TESTNET_SEPOLIA="0x15ae88ae054caa74090b89025c1595683f12edf7a4ed2ad0274de3e1d4a",e))(mm||{});function pm(e){switch(e){case"0x534e5f4d41494e":return"0x0293eb2ba9862f762bd3036586d5755a782bd22e6f5028320f1d0405fd47bff4";case"0x534e5f5345504f4c4941":return"0x15ae88ae054caa74090b89025c1595683f12edf7a4ed2ad0274de3e1d4a";default:throw new Error("Starknet.id proof of personhood verifier contract is not yet deployed on this network")}}n(pm,"getStarknetIdPopContract");function Be(e,t=void 0,a=void 0){return new Va({Static:e,IfEqual:t?Jt(t[0],t[1],t[2]):void 0,IfNotEqual:a?Jt(a[0],a[1],a[2]):void 0})}n(Be,"execution");function ue(e,t=void 0){return new Va({Hardcoded:e,Reference:t?Jt(t[0],t[1]):void 0})}n(ue,"dynamicFelt");function B(e,t=void 0,a=void 0){return new Va({Hardcoded:e,Reference:t?Jt(t[0],t[1]):void 0,ArrayReference:a?Jt(a[0],a[1]):void 0})}n(B,"dynamicCallData");var Ng=class _o{static{n(this,"_StarknetId")}async getStarkName(t,a){return _o.getStarkName(this,t,a)}async getAddressFromStarkName(t,a){return _o.getAddressFromStarkName(this,t,a)}async getStarkProfile(t,a,o,r,i,s,c){return _o.getStarkProfile(this,t,a,o,r,i,s,c)}static async getStarkName(t,a,o){let r=await t.getChainId(),i=o??xo(r);try{let c=(await t.callContract({contractAddress:i,entrypoint:"address_to_domain",calldata:P.compile({address:a,hint:[]})})).map(p=>BigInt(p)).slice(1),u=xr(c);if(!u)throw Error("Starkname not found");return u}catch(s){throw s instanceof Error&&s.message==="Starkname not found"?s:Error("Could not get stark name")}}static async getAddressFromStarkName(t,a,o){let r=await t.getChainId(),i=o??xo(r);try{let s=a.replace(".stark","").split(".").map(u=>am(u).toString(10));return(await t.callContract({contractAddress:i,entrypoint:"domain_to_address",calldata:P.compile({domain:s,hint:[]})}))[0]}catch{throw Error("Could not get address from stark name")}}static async getStarkProfile(t,a,o,r,i,s,c,u){let p=await t.getChainId(),m=o??xo(p),l=r??rm(p),h=i??cm(p),g=s??lm(p),f=c??pm(p),d=u??im(p);try{let k=[{execution:Be({}),to:B(m),selector:B(J("address_to_domain")),calldata:[B(a),B("0")]},{execution:Be({}),to:ue(m),selector:ue(J("domain_to_id")),calldata:[B(void 0,void 0,[0,0])]},{execution:Be({}),to:ue(l),selector:ue(J("get_verifier_data")),calldata:[B(void 0,[1,0]),B(se("twitter")),B(h),B("0")]},{execution:Be({}),to:ue(l),selector:ue(J("get_verifier_data")),calldata:[B(void 0,[1,0]),B(se("github")),B(h),B("0")]},{execution:Be({}),to:ue(l),selector:ue(J("get_verifier_data")),calldata:[B(void 0,[1,0]),B(se("discord")),B(h),B("0")]},{execution:Be({}),to:ue(l),selector:ue(J("get_verifier_data")),calldata:[B(void 0,[1,0]),B(se("proof_of_personhood")),B(f),B("0")]},{execution:Be({}),to:ue(l),selector:ue(J("get_verifier_data")),calldata:[B(void 0,[1,0]),B(se("nft_pp_contract")),B(g),B("0")]},{execution:Be({}),to:ue(l),selector:ue(J("get_extended_verifier_data")),calldata:[B(void 0,[1,0]),B(se("nft_pp_id")),B("2"),B(g),B("0")]},{execution:Be(void 0,void 0,[6,0,0]),to:ue(void 0,[6,0]),selector:ue(J("tokenURI")),calldata:[B(void 0,[7,1]),B(void 0,[7,2])]}],b=await t.callContract({contractAddress:d,entrypoint:"aggregate",calldata:P.compile({calls:k})});if(Array.isArray(b)){let v=parseInt(b[0],16),E=[],T=1;for(let W=0;W<v&&T<b.length;W+=1){let $=parseInt(b[T],16);T+=1;let x=b.slice(T,T+$);E.push(x),T+=$}let D=xr(E[0].slice(1).map(W=>BigInt(W))),_=E[2][0]!=="0x0"?BigInt(E[2][0]).toString():void 0,A=E[3][0]!=="0x0"?BigInt(E[3][0]).toString():void 0,I=E[4][0]!=="0x0"?BigInt(E[4][0]).toString():void 0,le=E[5][0]==="0x1",N=(b[0]==="0x9"?E[8].slice(1).map(W=>It(W)).join(""):void 0)||`https://starknet.id/api/identicons/${BigInt(E[1][0]).toString()}`;return{name:D,twitter:_,github:A,discord:I,proofOfPersonhood:le,profilePicture:N}}throw Error("Error while calling aggregate function")}catch(k){throw k instanceof Error?k:Error("Could not get user stark profile data from address")}}},dm=class extends mu(tm,Ng){static{n(this,"RpcProvider2")}};var Dg=new tm({default:!0});var Bg={};U(Bg,{TypedDataRevision:n(()=>L,"TypedDataRevision"),encodeData:n(()=>wm,"encodeData"),encodeType:n(()=>ym,"encodeType"),encodeValue:n(()=>Sa,"encodeValue"),getDependencies:n(()=>ri,"getDependencies"),getMessageHash:n(()=>Hg,"getMessageHash"),getStructHash:n(()=>Ba,"getStructHash"),getTypeHash:n(()=>bm,"getTypeHash"),isMerkleTreeType:n(()=>km,"isMerkleTreeType"),prepareSelector:n(()=>gm,"prepareSelector")});var Pg={};U(Pg,{MerkleTree:n(()=>ni,"MerkleTree"),proofMerklePath:n(()=>hm,"proofMerklePath")});var ni=class Co{static{n(this,"_MerkleTree")}leaves;branches=[];root;hashMethod;constructor(t,a=Oa){this.hashMethod=a,this.leaves=t,this.root=this.build(t)}build(t){if(t.length===1)return t[0];t.length!==this.leaves.length&&this.branches.push(t);let a=[];for(let o=0;o<t.length;o+=2)o+1===t.length?a.push(Co.hash(t[o],"0x0",this.hashMethod)):a.push(Co.hash(t[o],t[o+1],this.hashMethod));return this.build(a)}static hash(t,a,o=Oa){let[r,i]=[BigInt(t),BigInt(a)].sort((s,c)=>s>=c?1:-1);return o(r,i)}getProof(t,a=this.leaves,o=[]){let r=a.indexOf(t);if(r===-1)throw new Error("leaf not found");if(a.length===1)return o;let i=r%2===0,s=(i?a[r+1]:a[r-1])??"0x0",c=[...o,s],u=this.leaves.length===a.length?-1:this.branches.findIndex(m=>m.length===a.length),p=this.branches[u+1]??[this.root];return this.getProof(Co.hash(i?t:s,i?s:t,this.hashMethod),p,c)}};function hm(e,t,a,o=Oa){if(a.length===0)return e===t;let[r,...i]=a;return hm(e,ni.hash(t,r,o),i,o)}n(hm,"proofMerklePath");var Rg={u256:JSON.parse('[{ "name": "low", "type": "u128" }, { "name": "high", "type": "u128" }]'),TokenAmount:JSON.parse('[{ "name": "token_address", "type": "ContractAddress" }, { "name": "amount", "type": "u256" }]'),NftId:JSON.parse('[{ "name": "collection_address", "type": "ContractAddress" }, { "name": "token_id", "type": "u256" }]')},ge={[L.ACTIVE]:{domain:"StarknetDomain",hashMethod:Hl,hashMerkleMethod:Ll,escapeTypeString:n(e=>`"${e}"`,"escapeTypeString"),presetTypes:Rg},[L.LEGACY]:{domain:"StarkNetDomain",hashMethod:Vl,hashMerkleMethod:Oa,escapeTypeString:n(e=>e,"escapeTypeString"),presetTypes:{}}};function wo(e,t,{min:a,max:o}){let r=BigInt(e);z(r>=a&&r<=o,`${r} (${t}) is out of bounds [${a}, ${o}]`)}n(wo,"assertRange");function fm({types:e,domain:t}){if(ge[L.ACTIVE].domain in e&&t.revision===L.ACTIVE)return L.ACTIVE;if(ge[L.LEGACY].domain in e&&(t.revision??L.LEGACY)===L.LEGACY)return L.LEGACY}n(fm,"identifyRevision");function De(e){try{return y(e)}catch{if(ee(e))return y(se(e));throw new Error(`Invalid BigNumberish: ${e}`)}}n(De,"getHex");function Lg(e){let t=e;return!!(t.message&&t.primaryType&&t.types&&fm(t))}n(Lg,"validateTypedData");function gm(e){return _e(e)?e:J(e)}n(gm,"prepareSelector");function km(e){return e.type==="merkletree"}n(km,"isMerkleTreeType");function ri(e,t,a=[],o="",r=L.LEGACY){return t[t.length-1]==="*"?t=t.slice(0,-1):r===L.ACTIVE&&(t==="enum"?t=o:t.match(/^\(.*\)$/)&&(t=t.slice(1,-1))),a.includes(t)||!e[t]?a:[t,...e[t].reduce((i,s)=>[...i,...ri(e,s.type,i,s.contains,r).filter(c=>!i.includes(c))],[])]}n(ri,"getDependencies");function Vg(e,t){if(t.parent&&t.key){let o=e[t.parent].find(i=>i.name===t.key);if(!km(o))throw new Error(`${t.key} is not a merkle tree`);if(o.contains.endsWith("*"))throw new Error(`Merkle tree contain property must not be an array but was given ${t.key}`);return o.contains}return"raw"}n(Vg,"getMerkleTreeType");function ym(e,t,a=L.LEGACY){let o=a===L.ACTIVE?{...e,...ge[a].presetTypes}:e,[r,...i]=ri(o,t,void 0,void 0,a),s=r?[r,...i.sort()]:[],c=ge[a].escapeTypeString;return s.map(u=>{let p=o[u].map(m=>{let l=m.type==="enum"&&a===L.ACTIVE?m.contains:m.type,h=l.match(/^\(.*\)$/)?`(${l.slice(1,-1).split(",").map(g=>g&&c(g)).join(",")})`:c(l);return`${c(m.name)}:${h}`});return`${c(u)}(${p})`}).join("")}n(ym,"encodeType");function bm(e,t,a=L.LEGACY){return J(ym(e,t,a))}n(bm,"getTypeHash");function Sa(e,t,a,o={},r=L.LEGACY){if(e[t])return[t,Ba(e,t,a,r)];if(ge[r].presetTypes[t])return[t,Ba(ge[r].presetTypes,t,a,r)];if(t.endsWith("*")){let i=a.map(s=>Sa(e,t.slice(0,-1),s,void 0,r)[1]);return[t,ge[r].hashMethod(i)]}switch(t){case"enum":{if(r===L.ACTIVE){let[i,s]=Object.entries(a)[0],c=e[o.parent][0],u=e[c.contains],p=u.find(h=>h.name===i),m=u.indexOf(p),l=p.type.slice(1,-1).split(",").map((h,g)=>{if(!h)return h;let f=s[g];return Sa(e,h,f,void 0,r)[1]});return[t,ge[r].hashMethod([m,...l])]}return[t,De(a)]}case"merkletree":{let i=Vg(e,o),s=a.map(u=>Sa(e,i,u,void 0,r)[1]),{root:c}=new ni(s,ge[r].hashMerkleMethod);return["felt",c]}case"selector":return["felt",gm(a)];case"string":{if(r===L.ACTIVE){let i=Oo(a),s=[i.data.length,...i.data,i.pending_word,i.pending_word_len];return[t,ge[r].hashMethod(s)]}return[t,De(a)]}case"i128":{if(r===L.ACTIVE){let i=BigInt(a);return wo(i,t,Yu),[t,De(i<0n?Tr+i:i)]}return[t,De(a)]}case"timestamp":case"u128":return r===L.ACTIVE&&wo(a,t,Xu),[t,De(a)];case"felt":case"shortstring":return r===L.ACTIVE&&wo(De(a),t,fr),[t,De(a)];case"ClassHash":case"ContractAddress":return r===L.ACTIVE&&wo(a,t,fr),[t,De(a)];case"bool":return r===L.ACTIVE&&z(typeof a=="boolean",`Type mismatch for ${t} ${a}`),[t,De(a)];default:{if(r===L.ACTIVE)throw new Error(`Unsupported type: ${t}`);return[t,De(a)]}}}n(Sa,"encodeValue");function wm(e,t,a,o=L.LEGACY){let r=e[t]??ge[o].presetTypes[t],[i,s]=r.reduce(([c,u],p)=>{if(a[p.name]===void 0||a[p.name]===null&&p.type!=="enum")throw new Error(`Cannot encode data: missing data for '${p.name}'`);let m=a[p.name],l={parent:t,key:p.name},[h,g]=Sa(e,p.type,m,l,o);return[[...c,h],[...u,g]]},[["felt"],[bm(e,t,o)]]);return[i,s]}n(wm,"encodeData");function Ba(e,t,a,o=L.LEGACY){return ge[o].hashMethod(wm(e,t,a,o)[1])}n(Ba,"getStructHash");function Hg(e,t){if(!Lg(e))throw new Error("Typed data does not match JSON schema");let a=fm(e),{domain:o,hashMethod:r}=ge[a],i=[se("StarkNet Message"),Ba(e.types,o,e.domain,a),t,Ba(e.types,e.primaryType,e.message,a)];return r(i)}n(Hg,"getMessageHash");var $g={};U($g,{UINT_128_MAX:n(()=>Wt,"UINT_128_MAX"),UINT_256_MAX:n(()=>bl,"UINT_256_MAX"),bnToUint256:n(()=>Ug,"bnToUint256"),isUint256:n(()=>Mg,"isUint256"),uint256ToBN:n(()=>Fg,"uint256ToBN")});function Fg(e){return new Z(e).toBigInt()}n(Fg,"uint256ToBN");function Mg(e){return Z.is(e)}n(Mg,"isUint256");function Ug(e){return new Z(e).toUint256HexString()}n(Ug,"bnToUint256");var $o={};U($o,{getAbiEvents:n(()=>jm,"getAbiEvents"),isAbiEvent:n(()=>Cr,"isAbiEvent"),isObject:n(()=>Ao,"isObject"),parseEvents:n(()=>Em,"parseEvents"),parseUDCEvent:n(()=>Wg,"parseUDCEvent")});function Cr(e){return e.type==="event"}n(Cr,"isAbiEvent");function qg(e){return e.filter(t=>t.type==="event").reduce((t,a)=>{let o=a.name,r={...a};return r.name=o,{...t,[M(Te(pt(o)).toString(16))]:r}},{})}n(qg,"getCairo0AbiEvents");function Kg(e){let t=e.filter(r=>Cr(r)&&r.kind==="struct"),a=e.filter(r=>Cr(r)&&r.kind==="enum");return t.reduce((r,i)=>{let s=[],{name:c}=i,u=!1,p=n(h=>h.type===c,"findName");for(;;){let h=a.find(f=>f.variants.some(p));if(typeof h>"u")break;let g=h.variants.find(p);s.unshift(g.name),g.kind==="flat"&&(u=!0),c=h.name}if(s.length===0)throw new Error("inconsistency in ABI events definition.");u&&(s=[s[s.length-1]]);let m=s.pop(),l={[M(Te(pt(m)).toString(16))]:i};for(;s.length>0;)l={[M(Te(pt(s.pop())).toString(16))]:l};return l={...l},vm(r,l)},{})}n(Kg,"getCairo1AbiEvents");function jm(e){return Kr(e)?Kg(e):qg(e)}n(jm,"getAbiEvents");function Ao(e){return e&&typeof e=="object"&&!Array.isArray(e)}n(Ao,"isObject");function vm(e,t){let a={...e};return Ao(e)&&Ao(t)&&Object.keys(t).forEach(o=>{Ao(t[o])?o in e?a[o]=vm(e[o],t[o]):Object.assign(a,{[o]:t[o]}):Object.assign(a,{[o]:t[o]})}),a}n(vm,"mergeAbiEvents");function Em(e,t,a,o){return e.flat().reduce((i,s)=>{let c=t[s.keys.shift()??0];if(!c)return i;for(;!c.name;){let g=s.keys.shift();z(!!g,'Not enough data in "key" property of this event.'),c=c[g]}let u={};u[c.name]={};let p=s.keys[Symbol.iterator](),m=s.data[Symbol.iterator](),l=c.members?.filter(g=>g.kind==="key")||c.keys,h=c.members?.filter(g=>g.kind==="data")||c.data;return l.forEach(g=>{u[c.name][g.name]=So(p,g,a,o,u[c.name])}),h.forEach(g=>{u[c.name][g.name]=So(m,g,a,o,u[c.name])}),i.push(u),i},[])}n(Em,"parseEvents");function Wg(e){if(!e.events)throw new Error("UDC emitted event is empty");let t=e.events.find(a=>Ia(a.from_address)===Ia(Ca.ADDRESS))||{data:[]};return{transaction_hash:e.transaction_hash,contract_address:t.data[0],address:t.data[0],deployer:t.data[1],unique:t.data[2],classHash:t.data[3],calldata_len:t.data[4],calldata:t.data.slice(5,5+parseInt(t.data[4],16)),salt:t.data[t.data.length-1]}}n(Wg,"parseUDCEvent");var Gg={};U(Gg,{addDeclareTransaction:n(()=>ok,"addDeclareTransaction"),addInvokeTransaction:n(()=>ak,"addInvokeTransaction"),addStarknetChain:n(()=>Jg,"addStarknetChain"),deploymentData:n(()=>tk,"deploymentData"),getPermissions:n(()=>Xg,"getPermissions"),onAccountChange:n(()=>ik,"onAccountChange"),onNetworkChanged:n(()=>sk,"onNetworkChanged"),requestAccounts:n(()=>Yg,"requestAccounts"),requestChainId:n(()=>ek,"requestChainId"),signMessage:n(()=>nk,"signMessage"),supportedSpecs:n(()=>rk,"supportedSpecs"),switchStarknetChain:n(()=>Qg,"switchStarknetChain"),watchAsset:n(()=>Zg,"watchAsset")});function Yg(e,t=!1){return e.request({type:"wallet_requestAccounts",params:{silent_mode:t}})}n(Yg,"requestAccounts");function Xg(e){return e.request({type:"wallet_getPermissions"})}n(Xg,"getPermissions");function Zg(e,t){return e.request({type:"wallet_watchAsset",params:t})}n(Zg,"watchAsset");function Jg(e,t){return e.request({type:"wallet_addStarknetChain",params:t})}n(Jg,"addStarknetChain");function Qg(e,t){return e.request({type:"wallet_switchStarknetChain",params:{chainId:t}})}n(Qg,"switchStarknetChain");function ek(e){return e.request({type:"wallet_requestChainId"})}n(ek,"requestChainId");function tk(e){return e.request({type:"wallet_deploymentData"})}n(tk,"deploymentData");function ak(e,t){return e.request({type:"wallet_addInvokeTransaction",params:t})}n(ak,"addInvokeTransaction");function ok(e,t){return e.request({type:"wallet_addDeclareTransaction",params:t})}n(ok,"addDeclareTransaction");function nk(e,t){return e.request({type:"wallet_signTypedData",params:t})}n(nk,"signMessage");function rk(e){return e.request({type:"wallet_supportedSpecs"})}n(rk,"supportedSpecs");function ik(e,t){e.on("accountsChanged",t)}n(ik,"onAccountChange");function sk(e,t){e.on("networkChanged",t)}n(sk,"onNetworkChanged");var Fo=n(e=>{let t=["blockIdentifier","parseRequest","parseResponse","formatResponse","maxFee","nonce","signature","addressSalt"],a=e[e.length-1];return typeof a=="object"&&t.some(o=>o in a)?{args:e,options:e.pop()}:{args:e}},"splitArgsAndOptions");function xm(e,t){return async function(...a){let o=Fo(a);return e.call(t.name,o.args,{parseRequest:!0,parseResponse:!0,...o.options})}}n(xm,"buildCall");function ck(e,t){return async function(...a){let o=Fo(a);return e.invoke(t.name,o.args,{parseRequest:!0,...o.options})}}n(ck,"buildInvoke");function Eu(e,t){return t.stateMutability==="view"||t.state_mutability==="view"?xm(e,t):ck(e,t)}n(Eu,"buildDefault");function uk(e,t){return function(...a){return e.populate(t.name,a)}}n(uk,"buildPopulate");function lk(e,t){return function(...a){return e.estimate(t.name,a)}}n(lk,"buildEstimate");function jo(e,t){return Array.isArray(e)&&"__compiled__"in e?e:Array.isArray(e)&&Array.isArray(e[0])&&"__compiled__"in e[0]?e[0]:t()}n(jo,"getCalldata");var _m=class{static{n(this,"Contract")}abi;address;providerOrAccount;deployTransactionHash;structs;events;functions;callStatic;populateTransaction;estimateFee;callData;constructor(e,t,a=Dg){this.address=t&&t.toLowerCase(),this.providerOrAccount=a,this.callData=new P(e),this.structs=P.getAbiStruct(e),this.events=jm(e);let o=xl(e);this.abi=o.getLegacyFormat();let r={enumerable:!0,value:{},writable:!1};Object.defineProperties(this,{functions:{enumerable:!0,value:{},writable:!1},callStatic:{enumerable:!0,value:{},writable:!1},populateTransaction:{enumerable:!0,value:{},writable:!1},estimateFee:{enumerable:!0,value:{},writable:!1}}),this.abi.forEach(i=>{if(i.type!=="function")return;let s=i.name;this[s]||Object.defineProperty(this,s,{...r,value:Eu(this,i)}),this.functions[s]||Object.defineProperty(this.functions,s,{...r,value:Eu(this,i)}),this.callStatic[s]||Object.defineProperty(this.callStatic,s,{...r,value:xm(this,i)}),this.populateTransaction[s]||Object.defineProperty(this.populateTransaction,s,{...r,value:uk(this,i)}),this.estimateFee[s]||Object.defineProperty(this.estimateFee,s,{...r,value:lk(this,i)})})}attach(e){this.address=e}connect(e){this.providerOrAccount=e}async deployed(){return this.deployTransactionHash&&(await this.providerOrAccount.waitForTransaction(this.deployTransactionHash),this.deployTransactionHash=void 0),this}async call(e,t=[],{parseRequest:a=!0,parseResponse:o=!0,formatResponse:r=void 0,blockIdentifier:i=void 0}={}){z(this.address!==null,"contract is not connected to an address");let s=jo(t,()=>a?(this.callData.validate("CALL",e,t),this.callData.compile(e,t)):(console.warn("Call skipped parsing but provided rawArgs, possible malfunction request"),t));return this.providerOrAccount.callContract({contractAddress:this.address,calldata:s,entrypoint:e},i).then(c=>o?r?this.callData.format(e,c,r):this.callData.parse(e,c):c)}invoke(e,t=[],{parseRequest:a=!0,maxFee:o,nonce:r,signature:i}={}){z(this.address!==null,"contract is not connected to an address");let s=jo(t,()=>a?(this.callData.validate("INVOKE",e,t),this.callData.compile(e,t)):(console.warn("Invoke skipped parsing but provided rawArgs, possible malfunction request"),t)),c={contractAddress:this.address,calldata:s,entrypoint:e};if("execute"in this.providerOrAccount)return this.providerOrAccount.execute(c,void 0,{maxFee:o,nonce:r});if(!r)throw new Error("Nonce is required when invoking a function without an account");return console.warn(`Invoking ${e} without an account. This will not work on a public node.`),this.providerOrAccount.invokeFunction({...c,signature:i},{nonce:r})}async estimate(e,t=[]){z(this.address!==null,"contract is not connected to an address"),jo(t,()=>!1)||this.callData.validate("INVOKE",e,t);let a=this.populate(e,t);if("estimateInvokeFee"in this.providerOrAccount)return this.providerOrAccount.estimateInvokeFee(a);throw Error("Contract must be connected to the account contract to estimate")}populate(e,t=[]){let a=jo(t,()=>this.callData.compile(e,t));return{contractAddress:this.address,entrypoint:e,calldata:a}}parseEvents(e){return Em(e.events?.filter(t=>Ia(t.from_address)===Ia(this.address),[])||[],this.events,this.structs,P.getAbiEnum(this.abi))}isCairo1(){return yl.isCairo1Abi(this.abi)}async getVersion(){return this.providerOrAccount.getContractVersion(this.address)}typedv2(e){return this}};var Mo=class{constructor(t,a,o,r){this.abi=t;this.address=a;this.provider=o;this.blockNumber=r;this._contract=new _m(t,a,o);let i=new P(t);for(let s of i.abi)if(s.type=="function"&&s.state_mutability=="view"){let c=s.name;Object.defineProperty(this,c,{enumerable:!0,writable:!1,value:pk(this,c)})}}static{n(this,"StarknetContractView")}_contract;call(t,a,o){return this._contract.call(t,a,{...o,blockIdentifier:this.blockNumber})}};function pk(e,t){return async function(...a){let o=Fo(a);return e.call(t,o.args,{parseRequest:!0,parseResponse:!0,...o.options})}}n(pk,"buildCall");import("node:process").then(e=>e.stdout.write(""));var ii=class extends fi{constructor(a,o,r,i,s,c,u=-1,p="",m){super({});this.provider=a;this.contractAddress=o;this.chainId=r;this.blockNumber=i;this.blockHash=s;this.transactionHash=c;this.logIndex=u;this.contractName=p;this.abi=m}static{n(this,"AbstractContext")}getMetaDataInternal(a,o){return{address:this.contractAddress,contractName:"",blockNumber:BigInt(this.blockNumber),transactionIndex:0,transactionHash:this.transactionHash,chainId:this.getChainId(),name:a,logIndex:this.logIndex,labels:hi(o)}}getChainId(){return this.chainId}},Uo=class extends ii{constructor(a,o,r,i,s,c,u){super(o,a.address,a.chainId,r,i,s,c,a.name??u.slice(0,8),a.abi);this.classHash=u}static{n(this,"StarknetContext")}_contract;getContract(){if(!this.abi)throw new Error("abi not found");return this._contract||(this._contract=new Mo(this.abi,this.contractAddress,this.provider,this.blockNumber)),this._contract}};import("node:process").then(e=>e.stdout.write(""));var Ha=class{constructor(t,a,o){this.caller=t;this.transactionHash=a;this.data=o}static{n(this,"StarknetEvent")}};import("node:process").then(e=>e.stdout.write(""));import{ListStateStorage as hk,mergeProcessResults as fk}from"@sentio/runtime";var si=class e{constructor(t){this.config=t;return Qo(this)}static{n(this,"StarknetProcessor")}callHandlers=[];provider;static bind(t){let a=new e(t);return aa.INSTANCE.addValue(a),a}classHash;async configure(){this.provider=new dm({nodeUrl:gk(this.config.chainId)});let t=await this.provider.getClassHashAt(this.config.address);if(!t)throw new Error("can't find the class hash defined at "+this.config.address);if(this.classHash=t,!this.config.abi){let a=await this.provider.getClass(t,"latest");this.config.abi=a.abi}}onEvent(t,a){let o=Array.isArray(t)?t:[t];if(!this.config.abi)throw new Error("abi not found");let r=this.config.abi,i={handlerName:Bi(),handler:n(async s=>{try{let c=[s.result],u=$o.getAbiEvents(r),p=P.getAbiStruct(r),m=P.getAbiEnum(r),l=$o.parseEvents(c,u,p,m),h=[],{block_hash:g,block_number:f,transaction_hash:d,from_address:k}=s.result;for(let b=0;b<l.length;b++){let v=new Uo(this.config,this.provider,f,g,d,b,this.classHash),E=new Ha(k,d,l[b]);try{await a(E,v)}catch(T){console.error(T)}h.push(v.stopAndGetResult())}return fk(h)}catch(c){return console.error(c),{gauges:[],counters:[],events:[],exports:[],states:{configUpdated:!1}}}},"handler"),eventFilter:o};return this.callHandlers.push(i),this}};function gk(e){switch(e){case dk.STARKNET_MAINNET:return To.NetworkName.SN_MAIN;default:return To.NetworkName.SN_SEPOLIA}}n(gk,"getRpcEndpoint");var aa=class e extends hk{static{n(this,"StarknetProcessorState")}static INSTANCE=new e},Cm=class{constructor(t,a){this.abi=t;this.config=a;return this.processor=new si(a),aa.INSTANCE.addValue(this.processor),Qo(this)}static{n(this,"AbstractStarknetProcessor")}processor;onEvent(t,a,o){return this.processor.onEvent(t,async(r,i)=>{let s=r.data[a],c=new Ha(r.caller,r.transactionHash,s);await o(c,i)}),this}};import("node:process").then(e=>e.stdout.write(""));var qo=class extends wk{static{n(this,"StarknetPlugin")}name="StarknetPlugin";handlers={callHandlers:[]};async configure(t){let a={callHandlers:[]};for(let o of aa.INSTANCE.getValues()){await o.configure();let r=di.fromPartial({processorType:vk,contract:{name:o.config.name,chainId:o.config.chainId.toString(),address:o.config.address||"*",abi:""},startBlock:o.config.startBlock,endBlock:o.config.endBlock});for(let i of o.callHandlers){let s=a.callHandlers.push(i.handler)-1;i.eventFilter&&r.starknetEventConfigs.push({filters:i.eventFilter.map(c=>({address:o.config.address,keys:[Xr.getSelectorFromName(c)]})),handlerId:s,handlerName:i.handlerName})}t.contractConfigs.push(r)}this.handlers=a}supportedHandlers=[Wo.STARKNET_EVENT];processBinding(t){switch(t.handlerType){case Wo.STARKNET_EVENT:return this.processEvent(t);default:throw new kt.ServerError(kt.Status.INVALID_ARGUMENT,"No handle type registered "+t.handlerType)}}async start(t){}stateDiff(t){return gi.INSTANCE.getValues().length!==t.templateInstances.length}async processEvent(t){if(!t.data?.starknetEvents?.result)throw new kt.ServerError(kt.Status.INVALID_ARGUMENT,"starknetEvents can't be null");let a=[],o=t.data?.starknetEvents?.result;for(let r of t.handlerIds){let i=this.handlers.callHandlers[r](t.data?.starknetEvents).catch(s=>{throw new kt.ServerError(kt.Status.INTERNAL,"error processing transaction: "+JSON.stringify(o)+`
34
+ `+kk(s))});yk.execution.sequential&&await i,a.push(i)}return bk(await Promise.all(a))}};jk.INSTANCE.register(new qo);import("node:process").then(e=>e.stdout.write(""));import{StarknetChainId as Fj}from"@sentio/chain";import("node:process").then(e=>e.stdout.write(""));import("node:process").then(e=>e.stdout.write(""));export{Cm as AbstractStarknetProcessor,Fj as StarknetChainId,Uo as StarknetContext,Ha as StarknetEvent,qo as StarknetPlugin,si as StarknetProcessor,aa as StarknetProcessorState};
35
35
  /*! Bundled license information:
36
36
 
37
37
  tough-cookie/lib/pubsuffix-psl.js: