@dfinity/sns 0.0.7-next-2022-12-06 → 0.0.7

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.
package/README.md CHANGED
@@ -139,6 +139,8 @@ Parameters:
139
139
  - [disburse](#gear-disburse)
140
140
  - [startDissolving](#gear-startdissolving)
141
141
  - [stopDissolving](#gear-stopdissolving)
142
+ - [stakeMaturity](#gear-stakematurity)
143
+ - [autoStakeMaturity](#gear-autostakematurity)
142
144
  - [setDissolveTimestamp](#gear-setdissolvetimestamp)
143
145
  - [increaseDissolveDelay](#gear-increasedissolvedelay)
144
146
  - [setTopicFollowees](#gear-settopicfollowees)
@@ -254,6 +256,32 @@ Stop dissolving process of a neuron
254
256
  | ---------------- | --------------------------------------- |
255
257
  | `stopDissolving` | `(neuronId: NeuronId) => Promise<void>` |
256
258
 
259
+ ##### :gear: stakeMaturity
260
+
261
+ Stake the maturity of a neuron.
262
+
263
+ | Method | Type |
264
+ | --------------- | ----------------------------------------------------------------------------------- |
265
+ | `stakeMaturity` | `({ neuronId, percentageToStake, }: SnsNeuronStakeMaturityParams) => Promise<void>` |
266
+
267
+ Parameters:
268
+
269
+ - `neuronId`: The id of the neuron for which to stake the maturity
270
+ - `percentageToStake`: Optional. Percentage of the current maturity to stake. If not provided, all of the neuron's current maturity will be staked.
271
+
272
+ ##### :gear: autoStakeMaturity
273
+
274
+ Changes auto-stake maturity for a Neuron.
275
+
276
+ | Method | Type |
277
+ | ------------------- | ------------------------------------------------------------- |
278
+ | `autoStakeMaturity` | `(params: SnsNeuronAutoStakeMaturityParams) => Promise<void>` |
279
+
280
+ Parameters:
281
+
282
+ - `neuronId`: The id of the neuron for which to request a change of the auto stake feature
283
+ - `autoStake`: `true` to enable the auto-stake maturity for this neuron, `false` to turn it off
284
+
257
285
  ##### :gear: setDissolveTimestamp
258
286
 
259
287
  Increase dissolve delay of a neuron
@@ -521,6 +549,8 @@ Parameters:
521
549
  - [notifyParticipation](#gear-notifyparticipation)
522
550
  - [getUserCommitment](#gear-getusercommitment)
523
551
  - [getTransactions](#gear-gettransactions)
552
+ - [stakeMaturity](#gear-stakematurity)
553
+ - [autoStakeMaturity](#gear-autostakematurity)
524
554
 
525
555
  ##### :gear: listNeurons
526
556
 
@@ -698,4 +728,16 @@ This is a convenient method that transfers the stake to the neuron subaccount an
698
728
  | ----------------- | -------------------------------------------------------------------- |
699
729
  | `getTransactions` | `(params: GetAccountTransactionsParams) => Promise<GetTransactions>` |
700
730
 
731
+ ##### :gear: stakeMaturity
732
+
733
+ | Method | Type |
734
+ | --------------- | --------------------------------------------------------- |
735
+ | `stakeMaturity` | `(params: SnsNeuronStakeMaturityParams) => Promise<void>` |
736
+
737
+ ##### :gear: autoStakeMaturity
738
+
739
+ | Method | Type |
740
+ | ------------------- | ------------------------------------------------------------- |
741
+ | `autoStakeMaturity` | `(params: SnsNeuronAutoStakeMaturityParams) => Promise<void>` |
742
+
701
743
  <!-- TSDOC_END -->
@@ -1,4 +1,4 @@
1
- "use strict";var Et=Object.create;var ie=Object.defineProperty;var kt=Object.getOwnPropertyDescriptor;var Mt=Object.getOwnPropertyNames;var Ht=Object.getPrototypeOf,Gt=Object.prototype.hasOwnProperty;var qt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Bt=(e,t)=>{for(var s in t)ie(e,s,{get:t[s],enumerable:!0})},Le=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Mt(t))!Gt.call(e,n)&&n!==s&&ie(e,n,{get:()=>t[n],enumerable:!(r=kt(t,n))||r.enumerable});return e};var Ut=(e,t,s)=>(s=e!=null?Et(Ht(e)):{},Le(t||!e||!e.__esModule?ie(s,"default",{value:e,enumerable:!0}):s,e)),Xt=e=>Le(ie({},"__esModule",{value:!0}),e);var Pt=qt((exports,module)=>{(function(){"use strict";var ERROR="input is invalid type",WINDOW=typeof window=="object",root=WINDOW?window:{};root.JS_SHA256_NO_WINDOW&&(WINDOW=!1);var WEB_WORKER=!WINDOW&&typeof self=="object",NODE_JS=!root.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;NODE_JS?root=global:WEB_WORKER&&(root=self);var COMMON_JS=!root.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,AMD=typeof define=="function"&&define.amd,ARRAY_BUFFER=!root.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",HEX_CHARS="0123456789abcdef".split(""),EXTRA=[-2147483648,8388608,32768,128],SHIFT=[24,16,8,0],K=[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],OUTPUT_TYPES=["hex","array","digest","arrayBuffer"],blocks=[];(root.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"}),ARRAY_BUFFER&&(root.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var createOutputMethod=function(e,t){return function(s){return new Sha256(t,!0).update(s)[e]()}},createMethod=function(e){var t=createOutputMethod("hex",e);NODE_JS&&(t=nodeWrap(t,e)),t.create=function(){return new Sha256(e)},t.update=function(n){return t.create().update(n)};for(var s=0;s<OUTPUT_TYPES.length;++s){var r=OUTPUT_TYPES[s];t[r]=createOutputMethod(r,e)}return t},nodeWrap=function(method,is224){var crypto=eval("require('crypto')"),Buffer=eval("require('buffer').Buffer"),algorithm=is224?"sha224":"sha256",nodeMethod=function(e){if(typeof e=="string")return crypto.createHash(algorithm).update(e,"utf8").digest("hex");if(e==null)throw new Error(ERROR);return e.constructor===ArrayBuffer&&(e=new Uint8Array(e)),Array.isArray(e)||ArrayBuffer.isView(e)||e.constructor===Buffer?crypto.createHash(algorithm).update(new Buffer(e)).digest("hex"):method(e)};return nodeMethod},createHmacOutputMethod=function(e,t){return function(s,r){return new HmacSha256(s,t,!0).update(r)[e]()}},createHmacMethod=function(e){var t=createHmacOutputMethod("hex",e);t.create=function(n){return new HmacSha256(n,e)},t.update=function(n,o){return t.create(n).update(o)};for(var s=0;s<OUTPUT_TYPES.length;++s){var r=OUTPUT_TYPES[s];t[r]=createHmacOutputMethod(r,e)}return t};function Sha256(e,t){t?(blocks[0]=blocks[16]=blocks[1]=blocks[2]=blocks[3]=blocks[4]=blocks[5]=blocks[6]=blocks[7]=blocks[8]=blocks[9]=blocks[10]=blocks[11]=blocks[12]=blocks[13]=blocks[14]=blocks[15]=0,this.blocks=blocks):this.blocks=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],e?(this.h0=3238371032,this.h1=914150663,this.h2=812702999,this.h3=4144912697,this.h4=4290775857,this.h5=1750603025,this.h6=1694076839,this.h7=3204075428):(this.h0=1779033703,this.h1=3144134277,this.h2=1013904242,this.h3=2773480762,this.h4=1359893119,this.h5=2600822924,this.h6=528734635,this.h7=1541459225),this.block=this.start=this.bytes=this.hBytes=0,this.finalized=this.hashed=!1,this.first=!0,this.is224=e}Sha256.prototype.update=function(e){if(!this.finalized){var t,s=typeof e;if(s!=="string"){if(s==="object"){if(e===null)throw new Error(ERROR);if(ARRAY_BUFFER&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!ARRAY_BUFFER||!ArrayBuffer.isView(e)))throw new Error(ERROR)}else throw new Error(ERROR);t=!0}for(var r,n=0,o,p=e.length,a=this.blocks;n<p;){if(this.hashed&&(this.hashed=!1,a[0]=this.block,a[16]=a[1]=a[2]=a[3]=a[4]=a[5]=a[6]=a[7]=a[8]=a[9]=a[10]=a[11]=a[12]=a[13]=a[14]=a[15]=0),t)for(o=this.start;n<p&&o<64;++n)a[o>>2]|=e[n]<<SHIFT[o++&3];else for(o=this.start;n<p&&o<64;++n)r=e.charCodeAt(n),r<128?a[o>>2]|=r<<SHIFT[o++&3]:r<2048?(a[o>>2]|=(192|r>>6)<<SHIFT[o++&3],a[o>>2]|=(128|r&63)<<SHIFT[o++&3]):r<55296||r>=57344?(a[o>>2]|=(224|r>>12)<<SHIFT[o++&3],a[o>>2]|=(128|r>>6&63)<<SHIFT[o++&3],a[o>>2]|=(128|r&63)<<SHIFT[o++&3]):(r=65536+((r&1023)<<10|e.charCodeAt(++n)&1023),a[o>>2]|=(240|r>>18)<<SHIFT[o++&3],a[o>>2]|=(128|r>>12&63)<<SHIFT[o++&3],a[o>>2]|=(128|r>>6&63)<<SHIFT[o++&3],a[o>>2]|=(128|r&63)<<SHIFT[o++&3]);this.lastByteIndex=o,this.bytes+=o-this.start,o>=64?(this.block=a[16],this.start=o-64,this.hash(),this.hashed=!0):this.start=o}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}},Sha256.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=EXTRA[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}},Sha256.prototype.hash=function(){var e=this.h0,t=this.h1,s=this.h2,r=this.h3,n=this.h4,o=this.h5,p=this.h6,a=this.h7,c=this.blocks,i,_,u,l,d,N,m,R,g,f,y;for(i=16;i<64;++i)d=c[i-15],_=(d>>>7|d<<25)^(d>>>18|d<<14)^d>>>3,d=c[i-2],u=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10,c[i]=c[i-16]+_+c[i-7]+u<<0;for(y=t&s,i=0;i<64;i+=4)this.first?(this.is224?(R=300032,d=c[0]-1413257819,a=d-150054599<<0,r=d+24177077<<0):(R=704751109,d=c[0]-210244248,a=d-1521486534<<0,r=d+143694565<<0),this.first=!1):(_=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),u=(n>>>6|n<<26)^(n>>>11|n<<21)^(n>>>25|n<<7),R=e&t,l=R^e&s^y,m=n&o^~n&p,d=a+u+m+K[i]+c[i],N=_+l,a=r+d<<0,r=d+N<<0),_=(r>>>2|r<<30)^(r>>>13|r<<19)^(r>>>22|r<<10),u=(a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7),g=r&e,l=g^r&t^R,m=a&n^~a&o,d=p+u+m+K[i+1]+c[i+1],N=_+l,p=s+d<<0,s=d+N<<0,_=(s>>>2|s<<30)^(s>>>13|s<<19)^(s>>>22|s<<10),u=(p>>>6|p<<26)^(p>>>11|p<<21)^(p>>>25|p<<7),f=s&r,l=f^s&e^g,m=p&a^~p&n,d=o+u+m+K[i+2]+c[i+2],N=_+l,o=t+d<<0,t=d+N<<0,_=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),u=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),y=t&s,l=y^t&r^f,m=o&p^~o&a,d=n+u+m+K[i+3]+c[i+3],N=_+l,n=e+d<<0,e=d+N<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+s<<0,this.h3=this.h3+r<<0,this.h4=this.h4+n<<0,this.h5=this.h5+o<<0,this.h6=this.h6+p<<0,this.h7=this.h7+a<<0},Sha256.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,s=this.h2,r=this.h3,n=this.h4,o=this.h5,p=this.h6,a=this.h7,c=HEX_CHARS[e>>28&15]+HEX_CHARS[e>>24&15]+HEX_CHARS[e>>20&15]+HEX_CHARS[e>>16&15]+HEX_CHARS[e>>12&15]+HEX_CHARS[e>>8&15]+HEX_CHARS[e>>4&15]+HEX_CHARS[e&15]+HEX_CHARS[t>>28&15]+HEX_CHARS[t>>24&15]+HEX_CHARS[t>>20&15]+HEX_CHARS[t>>16&15]+HEX_CHARS[t>>12&15]+HEX_CHARS[t>>8&15]+HEX_CHARS[t>>4&15]+HEX_CHARS[t&15]+HEX_CHARS[s>>28&15]+HEX_CHARS[s>>24&15]+HEX_CHARS[s>>20&15]+HEX_CHARS[s>>16&15]+HEX_CHARS[s>>12&15]+HEX_CHARS[s>>8&15]+HEX_CHARS[s>>4&15]+HEX_CHARS[s&15]+HEX_CHARS[r>>28&15]+HEX_CHARS[r>>24&15]+HEX_CHARS[r>>20&15]+HEX_CHARS[r>>16&15]+HEX_CHARS[r>>12&15]+HEX_CHARS[r>>8&15]+HEX_CHARS[r>>4&15]+HEX_CHARS[r&15]+HEX_CHARS[n>>28&15]+HEX_CHARS[n>>24&15]+HEX_CHARS[n>>20&15]+HEX_CHARS[n>>16&15]+HEX_CHARS[n>>12&15]+HEX_CHARS[n>>8&15]+HEX_CHARS[n>>4&15]+HEX_CHARS[n&15]+HEX_CHARS[o>>28&15]+HEX_CHARS[o>>24&15]+HEX_CHARS[o>>20&15]+HEX_CHARS[o>>16&15]+HEX_CHARS[o>>12&15]+HEX_CHARS[o>>8&15]+HEX_CHARS[o>>4&15]+HEX_CHARS[o&15]+HEX_CHARS[p>>28&15]+HEX_CHARS[p>>24&15]+HEX_CHARS[p>>20&15]+HEX_CHARS[p>>16&15]+HEX_CHARS[p>>12&15]+HEX_CHARS[p>>8&15]+HEX_CHARS[p>>4&15]+HEX_CHARS[p&15];return this.is224||(c+=HEX_CHARS[a>>28&15]+HEX_CHARS[a>>24&15]+HEX_CHARS[a>>20&15]+HEX_CHARS[a>>16&15]+HEX_CHARS[a>>12&15]+HEX_CHARS[a>>8&15]+HEX_CHARS[a>>4&15]+HEX_CHARS[a&15]),c},Sha256.prototype.toString=Sha256.prototype.hex,Sha256.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,s=this.h2,r=this.h3,n=this.h4,o=this.h5,p=this.h6,a=this.h7,c=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,s>>24&255,s>>16&255,s>>8&255,s&255,r>>24&255,r>>16&255,r>>8&255,r&255,n>>24&255,n>>16&255,n>>8&255,n&255,o>>24&255,o>>16&255,o>>8&255,o&255,p>>24&255,p>>16&255,p>>8&255,p&255];return this.is224||c.push(a>>24&255,a>>16&255,a>>8&255,a&255),c},Sha256.prototype.array=Sha256.prototype.digest,Sha256.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function HmacSha256(e,t,s){var r,n=typeof e;if(n==="string"){var o=[],p=e.length,a=0,c;for(r=0;r<p;++r)c=e.charCodeAt(r),c<128?o[a++]=c:c<2048?(o[a++]=192|c>>6,o[a++]=128|c&63):c<55296||c>=57344?(o[a++]=224|c>>12,o[a++]=128|c>>6&63,o[a++]=128|c&63):(c=65536+((c&1023)<<10|e.charCodeAt(++r)&1023),o[a++]=240|c>>18,o[a++]=128|c>>12&63,o[a++]=128|c>>6&63,o[a++]=128|c&63);e=o}else if(n==="object"){if(e===null)throw new Error(ERROR);if(ARRAY_BUFFER&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!ARRAY_BUFFER||!ArrayBuffer.isView(e)))throw new Error(ERROR)}else throw new Error(ERROR);e.length>64&&(e=new Sha256(t,!0).update(e).array());var i=[],_=[];for(r=0;r<64;++r){var u=e[r]||0;i[r]=92^u,_[r]=54^u}Sha256.call(this,t,s),this.update(_),this.oKeyPad=i,this.inner=!0,this.sharedMemory=s}HmacSha256.prototype=new Sha256,HmacSha256.prototype.finalize=function(){if(Sha256.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();Sha256.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),Sha256.prototype.finalize.call(this)}};var exports=createMethod();exports.sha256=exports,exports.sha224=createMethod(!0),exports.sha256.hmac=createHmacMethod(),exports.sha224.hmac=createHmacMethod(!0),COMMON_JS?module.exports=exports:(root.sha256=exports.sha256,root.sha224=exports.sha224,AMD&&define(function(){return exports}))})()});var Kt={};Bt(Kt,{SnsGovernanceCanister:()=>q,SnsGovernanceError:()=>h,SnsIndexCanister:()=>X,SnsLedgerCanister:()=>B,SnsMetadataResponseEntries:()=>wt,SnsNeuronPermissionType:()=>et,SnsRootCanister:()=>U,SnsSwapCanister:()=>z,SnsSwapLifecycle:()=>tt,SnsTransferError:()=>oe,SnsWrapper:()=>ne,decodeSnsAccount:()=>Jt,encodeSnsAccount:()=>jt,initSnsWrapper:()=>Qt,neuronSubaccount:()=>De});module.exports=Xt(Kt);var et=(i=>(i[i.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",i[i.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",i[i.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",i[i.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",i[i.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",i[i.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",i[i.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",i[i.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",i[i.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",i))(et||{});var tt=(o=>(o[o.Unspecified=0]="Unspecified",o[o.Pending=1]="Pending",o[o.Open=2]="Open",o[o.Committed=3]="Committed",o[o.Aborted=4]="Aborted",o))(tt||{});var h=class extends Error{};var oe=class extends Error{constructor({msg:s,errorType:r}){super(s);this.errorType=r}};var T=require("@dfinity/utils");var rt=({IDL:e})=>{let t=e.Record({validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),s=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:t}),r=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(s)}),n=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),o=e.Record({id:e.Vec(e.Nat8)}),p=e.Record({followees:e.Vec(o)}),a=e.Record({followees:e.Vec(e.Tuple(e.Nat64,p))}),c=e.Record({permissions:e.Vec(e.Int32)}),i=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),_=e.Record({default_followees:e.Opt(a),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(c),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(c),voting_rewards_parameters:e.Opt(i),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),u=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),l=e.Record({id:e.Nat64}),d=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(l)}),N=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(u)}),m=e.Record({error_message:e.Text,error_type:e.Int32}),R=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),g=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),f=e.Record({subaccount:e.Vec(e.Nat8)}),y=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(f),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),W=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),S=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),F=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Q=e.Record({motion_text:e.Text}),Y=e.Variant({ManageNervousSystemParameters:_,AddGenericNervousSystemFunction:r,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),TransferSnsTreasuryFunds:y,UpgradeSnsControlledCanister:W,Unspecified:e.Record({}),ManageSnsMetadata:S,ExecuteGenericNervousSystemFunction:F,Motion:Q}),x=e.Record({url:e.Text,title:e.Text,action:e.Opt(Y),summary:e.Text}),j=e.Record({current_deadline_timestamp_seconds:e.Nat64}),v=e.Record({id:e.Opt(l),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(m),ballots:e.Vec(e.Tuple(e.Text,R)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(g),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(x),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),w=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),V=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),C=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(f)}),A=e.Record({to_account:e.Opt(C),percentage_to_disburse:e.Nat32}),J=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),Z=e.Record({additional_dissolve_delay_seconds:e.Nat32}),E=e.Record({dissolve_timestamp_seconds:e.Nat64}),$=e.Variant({ChangeAutoStakeMaturity:J,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:Z,SetDissolveTimestamp:E}),P=e.Record({operation:e.Opt($)}),k=e.Record({vote:e.Int32,proposal:e.Opt(l)}),I=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),D=e.Variant({MemoAndController:I,NeuronId:e.Record({})}),M=e.Record({by:e.Opt(D)}),H=e.Record({permissions_to_remove:e.Opt(c),principal_id:e.Opt(e.Principal)}),G=e.Record({permissions_to_add:e.Opt(c),principal_id:e.Opt(e.Principal)}),te=e.Record({percentage_to_merge:e.Nat32}),Ne=e.Record({e8s:e.Nat64}),re=e.Record({to_account:e.Opt(C),amount:e.Opt(Ne)}),Re=e.Variant({Split:w,Follow:V,DisburseMaturity:A,Configure:P,RegisterVote:k,SyncCommand:e.Record({}),MakeProposal:x,ClaimOrRefreshNeuron:M,RemoveNeuronPermissions:H,AddNeuronPermissions:G,MergeMaturity:te,Disburse:re}),fe=e.Record({command:e.Opt(Re),timestamp:e.Nat64}),he=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),ye=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),L=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(he),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(ye),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,p)),neuron_fees_e8s:e.Nat64}),At=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,r)),metrics:e.Opt(n),mode:e.Int32,parameters:e.Opt(_),deployed_version:e.Opt(u),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(d),pending_version:e.Opt(N),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,v)),in_flight_commands:e.Vec(e.Tuple(e.Text,fe)),sns_metadata:e.Opt(S),neurons:e.Vec(e.Tuple(e.Text,L)),genesis_timestamp_seconds:e.Nat64}),Oe=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),memo:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),hotkey:e.Opt(e.Principal)}),ge=e.Record({neuron_parameters:e.Vec(Oe)}),Se=e.Record({skipped_claims:e.Nat32,successful_claims:e.Nat32,failed_claims:e.Nat32}),xe=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ve=e.Record({neuron_id:e.Opt(o)}),Pe=e.Variant({Error:m,Neuron:L}),Te=e.Record({result:e.Opt(Pe)}),se=e.Record({proposal_id:e.Opt(l)}),be=e.Variant({Error:m,Proposal:v}),Fe=e.Record({result:e.Opt(be)}),we=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Ve=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Ce=e.Record({controller:e.Principal,status:we,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:Ve,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ae=e.Record({deployed_version:e.Opt(u),pending_version:e.Opt(N)}),Ee=e.Record({sns_initialization_parameters:e.Text}),ke=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(r)}),Me=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),He=e.Record({neurons:e.Vec(L)}),Ge=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(l),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),qe=e.Record({proposals:e.Vec(v)}),Be=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Ue=e.Variant({Split:w,Follow:V,DisburseMaturity:A,ClaimOrRefresh:M,Configure:P,RegisterVote:k,MakeProposal:x,StakeMaturity:Be,RemoveNeuronPermissions:H,AddNeuronPermissions:G,MergeMaturity:te,Disburse:re}),Xe=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Ue)}),ze=e.Record({created_neuron_id:e.Opt(o)}),We=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),Qe=e.Record({refreshed_neuron_id:e.Opt(o)}),Ye=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),je=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Je=e.Record({transfer_block_height:e.Nat64}),Ke=e.Variant({Error:m,Split:ze,Follow:e.Record({}),DisburseMaturity:We,ClaimOrRefresh:Qe,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:se,RemoveNeuronPermission:e.Record({}),StakeMaturity:Ye,MergeMaturity:je,Disburse:Je,AddNeuronPermission:e.Record({})}),Ze=e.Record({command:e.Opt(Ke)}),$e=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([ge],[Se],[]),get_build_metadata:e.Func([],[e.Text],[]),get_metadata:e.Func([e.Record({})],[xe],[]),get_nervous_system_parameters:e.Func([e.Null],[_],[]),get_neuron:e.Func([ve],[Te],[]),get_proposal:e.Func([se],[Fe],[]),get_root_canister_status:e.Func([e.Null],[Ce],[]),get_running_sns_version:e.Func([e.Record({})],[Ae],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ee],[]),list_nervous_system_functions:e.Func([],[ke],[]),list_neurons:e.Func([Me],[He],[]),list_proposals:e.Func([Ge],[qe],[]),manage_neuron:e.Func([Xe],[Ze],[]),set_mode:e.Func([$e],[e.Record({})],[])})};var st=({IDL:e})=>{let t=e.Record({validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),s=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:t}),r=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(s)}),n=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),o=e.Record({id:e.Vec(e.Nat8)}),p=e.Record({followees:e.Vec(o)}),a=e.Record({followees:e.Vec(e.Tuple(e.Nat64,p))}),c=e.Record({permissions:e.Vec(e.Int32)}),i=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),_=e.Record({default_followees:e.Opt(a),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(c),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(c),voting_rewards_parameters:e.Opt(i),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),u=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),l=e.Record({id:e.Nat64}),d=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(l)}),N=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(u)}),m=e.Record({error_message:e.Text,error_type:e.Int32}),R=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),g=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),f=e.Record({subaccount:e.Vec(e.Nat8)}),y=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(f),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),W=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),S=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),F=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Q=e.Record({motion_text:e.Text}),Y=e.Variant({ManageNervousSystemParameters:_,AddGenericNervousSystemFunction:r,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),TransferSnsTreasuryFunds:y,UpgradeSnsControlledCanister:W,Unspecified:e.Record({}),ManageSnsMetadata:S,ExecuteGenericNervousSystemFunction:F,Motion:Q}),x=e.Record({url:e.Text,title:e.Text,action:e.Opt(Y),summary:e.Text}),j=e.Record({current_deadline_timestamp_seconds:e.Nat64}),v=e.Record({id:e.Opt(l),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(m),ballots:e.Vec(e.Tuple(e.Text,R)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(g),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(x),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),w=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),V=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),C=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(f)}),A=e.Record({to_account:e.Opt(C),percentage_to_disburse:e.Nat32}),J=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),Z=e.Record({additional_dissolve_delay_seconds:e.Nat32}),E=e.Record({dissolve_timestamp_seconds:e.Nat64}),$=e.Variant({ChangeAutoStakeMaturity:J,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:Z,SetDissolveTimestamp:E}),P=e.Record({operation:e.Opt($)}),k=e.Record({vote:e.Int32,proposal:e.Opt(l)}),I=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),D=e.Variant({MemoAndController:I,NeuronId:e.Record({})}),M=e.Record({by:e.Opt(D)}),H=e.Record({permissions_to_remove:e.Opt(c),principal_id:e.Opt(e.Principal)}),G=e.Record({permissions_to_add:e.Opt(c),principal_id:e.Opt(e.Principal)}),te=e.Record({percentage_to_merge:e.Nat32}),Ne=e.Record({e8s:e.Nat64}),re=e.Record({to_account:e.Opt(C),amount:e.Opt(Ne)}),Re=e.Variant({Split:w,Follow:V,DisburseMaturity:A,Configure:P,RegisterVote:k,SyncCommand:e.Record({}),MakeProposal:x,ClaimOrRefreshNeuron:M,RemoveNeuronPermissions:H,AddNeuronPermissions:G,MergeMaturity:te,Disburse:re}),fe=e.Record({command:e.Opt(Re),timestamp:e.Nat64}),he=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),ye=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),L=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(he),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(ye),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,p)),neuron_fees_e8s:e.Nat64}),At=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,r)),metrics:e.Opt(n),mode:e.Int32,parameters:e.Opt(_),deployed_version:e.Opt(u),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(d),pending_version:e.Opt(N),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,v)),in_flight_commands:e.Vec(e.Tuple(e.Text,fe)),sns_metadata:e.Opt(S),neurons:e.Vec(e.Tuple(e.Text,L)),genesis_timestamp_seconds:e.Nat64}),Oe=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),memo:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),hotkey:e.Opt(e.Principal)}),ge=e.Record({neuron_parameters:e.Vec(Oe)}),Se=e.Record({skipped_claims:e.Nat32,successful_claims:e.Nat32,failed_claims:e.Nat32}),xe=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ve=e.Record({neuron_id:e.Opt(o)}),Pe=e.Variant({Error:m,Neuron:L}),Te=e.Record({result:e.Opt(Pe)}),se=e.Record({proposal_id:e.Opt(l)}),be=e.Variant({Error:m,Proposal:v}),Fe=e.Record({result:e.Opt(be)}),we=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Ve=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Ce=e.Record({controller:e.Principal,status:we,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:Ve,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ae=e.Record({deployed_version:e.Opt(u),pending_version:e.Opt(N)}),Ee=e.Record({sns_initialization_parameters:e.Text}),ke=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(r)}),Me=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),He=e.Record({neurons:e.Vec(L)}),Ge=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(l),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),qe=e.Record({proposals:e.Vec(v)}),Be=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Ue=e.Variant({Split:w,Follow:V,DisburseMaturity:A,ClaimOrRefresh:M,Configure:P,RegisterVote:k,MakeProposal:x,StakeMaturity:Be,RemoveNeuronPermissions:H,AddNeuronPermissions:G,MergeMaturity:te,Disburse:re}),Xe=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Ue)}),ze=e.Record({created_neuron_id:e.Opt(o)}),We=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),Qe=e.Record({refreshed_neuron_id:e.Opt(o)}),Ye=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),je=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Je=e.Record({transfer_block_height:e.Nat64}),Ke=e.Variant({Error:m,Split:ze,Follow:e.Record({}),DisburseMaturity:We,ClaimOrRefresh:Qe,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:se,RemoveNeuronPermission:e.Record({}),StakeMaturity:Ye,MergeMaturity:je,Disburse:Je,AddNeuronPermission:e.Record({})}),Ze=e.Record({command:e.Opt(Ke)}),$e=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([ge],[Se],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_metadata:e.Func([e.Record({})],[xe],["query"]),get_nervous_system_parameters:e.Func([e.Null],[_],["query"]),get_neuron:e.Func([ve],[Te],["query"]),get_proposal:e.Func([se],[Fe],["query"]),get_root_canister_status:e.Func([e.Null],[Ce],[]),get_running_sns_version:e.Func([e.Record({})],[Ae],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ee],["query"]),list_nervous_system_functions:e.Func([],[ke],["query"]),list_neurons:e.Func([Me],[He],["query"]),list_proposals:e.Func([Ge],[qe],["query"]),manage_neuron:e.Func([Xe],[Ze],[]),set_mode:e.Func([$e],[e.Record({})],[])})};var ot=require("@dfinity/utils"),ce=({neuronId:{id:e},command:t})=>({subaccount:e,command:[t]}),pe=({neuronId:e,operation:t})=>ce({neuronId:e,command:{Configure:{operation:[t]}}}),nt=({neuronId:e,permissions:t,principal:s})=>ce({neuronId:e,command:{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(t)}],principal_id:[s]}}}),at=({neuronId:e,permissions:t,principal:s})=>ce({neuronId:e,command:{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(t)}],principal_id:[s]}}}),it=({neuronId:e,amount:t})=>ce({neuronId:e,command:{Disburse:{to_account:[],amount:t===void 0?[]:[{e8s:t}]}}}),ct=e=>pe({neuronId:e,operation:{StartDissolving:{}}}),pt=e=>pe({neuronId:e,operation:{StopDissolving:{}}}),_t=({neuronId:e,dissolveTimestampSeconds:t})=>pe({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:t}}}),dt=({neuronId:e,additionalDissolveDelaySeconds:t})=>pe({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),ut=({neuronId:e,functionId:t,followees:s})=>({subaccount:e.id,command:[{Follow:{function_id:t,followees:s}}]}),Ie=({subaccount:e,memo:t,controller:s})=>({subaccount:e,command:[{ClaimOrRefresh:{by:[t===void 0?{NeuronId:{}}:{MemoAndController:{memo:t,controller:(0,ot.toNullable)(s)}}]}}]});var O=class{constructor(t,s,r){this.id=t;this.service=s;this.certifiedService=r;this.caller=({certified:t=!0})=>t?this.certifiedService:this.service}get canisterId(){return this.id}};var q=class extends O{constructor(){super(...arguments);this.listNeurons=async s=>{let{principal:r,limit:n,beforeNeuronId:o}=s,{neurons:p}=await this.caller(s).list_neurons({of_principal:(0,T.toNullable)(r),limit:n??100,start_page_at:(0,T.toNullable)(o)});return p};this.listNervousSystemFunctions=async s=>this.caller(s).list_nervous_system_functions();this.metadata=s=>this.caller(s).get_metadata({});this.nervousSystemParameters=s=>this.caller(s).get_nervous_system_parameters(null);this.getNeuron=async s=>{let{neuronId:r}=s,{result:n}=await this.caller(s).get_neuron({neuron_id:(0,T.toNullable)(r)}),o=(0,T.fromNullable)(n);if(o===void 0||"Error"in o)throw new h((o==null?void 0:o.Error.error_message)??"Response type not supported");return o.Neuron};this.queryNeuron=async s=>{try{return await this.getNeuron(s)}catch(r){if(r instanceof Error&&r.message.includes("No neuron for given NeuronId"))return;throw r}};this.manageNeuron=async s=>{let r=await this.caller({certified:!0}).manage_neuron(s);return this.assertManageNeuronError(r),r};this.addNeuronPermissions=async s=>{let r=nt(s);await this.manageNeuron(r)};this.removeNeuronPermissions=async s=>{let r=at(s);await this.manageNeuron(r)};this.disburse=async s=>{let r=it(s);await this.manageNeuron(r)};this.startDissolving=async s=>{let r=ct(s);await this.manageNeuron(r)};this.stopDissolving=async s=>{let r=pt(s);await this.manageNeuron(r)};this.setDissolveTimestamp=async s=>{let r=_t(s);await this.manageNeuron(r)};this.increaseDissolveDelay=async s=>{let r=dt(s);await this.manageNeuron(r)};this.setTopicFollowees=async s=>{let r=ut(s);await this.manageNeuron(r)};this.refreshNeuron=async s=>{let r=Ie({subaccount:s.id});await this.manageNeuron(r)};this.claimNeuron=async({memo:s,controller:r,subaccount:n})=>{let o=Ie({subaccount:n,memo:s,controller:r}),{command:p}=await this.manageNeuron(o),a=(0,T.fromNullable)(p);if(a===void 0)throw new h("Claim neuron failed");if("ClaimOrRefresh"in a){let c=(0,T.fromNullable)(a.ClaimOrRefresh.refreshed_neuron_id);if(c===void 0)throw new h("Claim neuron failed");return c}throw new h("Claim neuron failed")};this.assertManageNeuronError=({command:s})=>{let r=s[0];if(r!==void 0&&"Error"in r)throw new h(r.Error.error_message)}}static create(s){let{service:r,certifiedService:n,canisterId:o}=(0,T.createServices)({options:s,idlFactory:st,certifiedIdlFactory:rt});return new q(o,r,n)}};var _e=require("@dfinity/utils");var lt=({IDL:e})=>{let t=e.Variant({Int:e.Int,Nat:e.Nat,Blob:e.Vec(e.Nat8),Text:e.Text}),s=e.Vec(e.Nat8),r=e.Record({owner:e.Principal,subaccount:e.Opt(s)}),n=e.Record({token_symbol:e.Text,transfer_fee:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,t)),minting_account:r,initial_balances:e.Vec(e.Tuple(r,e.Nat64)),archive_options:e.Record({num_blocks_to_archive:e.Nat64,trigger_threshold:e.Nat64,max_message_size_bytes:e.Opt(e.Nat64),cycles_for_archive_creation:e.Opt(e.Nat64),node_max_memory_size_bytes:e.Opt(e.Nat64),controller_id:e.Principal}),token_name:e.Text}),o=e.Nat,p=e.Nat64,a=e.Record({to:r,fee:e.Opt(o),memo:e.Opt(e.Vec(e.Nat8)),from_subaccount:e.Opt(s),created_at_time:e.Opt(p),amount:o}),c=e.Nat,i=e.Variant({GenericError:e.Record({message:e.Text,error_code:e.Nat}),TemporarilyUnavailable:e.Null,BadBurn:e.Record({min_burn_amount:o}),Duplicate:e.Record({duplicate_of:c}),BadFee:e.Record({expected_fee:o}),CreatedInFuture:e.Record({ledger_time:e.Nat64}),TooOld:e.Null,InsufficientFunds:e.Record({balance:o})}),_=e.Variant({Ok:c,Err:i});return e.Service({icrc1_balance_of:e.Func([r],[o],[]),icrc1_decimals:e.Func([],[e.Nat8],[]),icrc1_fee:e.Func([],[o],[]),icrc1_metadata:e.Func([],[e.Vec(e.Tuple(e.Text,t))],[]),icrc1_minting_account:e.Func([],[e.Opt(r)],[]),icrc1_name:e.Func([],[e.Text],[]),icrc1_supported_standards:e.Func([],[e.Vec(e.Record({url:e.Text,name:e.Text}))],[]),icrc1_symbol:e.Func([],[e.Text],[]),icrc1_total_supply:e.Func([],[o],[]),icrc1_transfer:e.Func([a],[_],[])})};var mt=({IDL:e})=>{let t=e.Variant({Int:e.Int,Nat:e.Nat,Blob:e.Vec(e.Nat8),Text:e.Text}),s=e.Vec(e.Nat8),r=e.Record({owner:e.Principal,subaccount:e.Opt(s)}),n=e.Record({token_symbol:e.Text,transfer_fee:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,t)),minting_account:r,initial_balances:e.Vec(e.Tuple(r,e.Nat64)),archive_options:e.Record({num_blocks_to_archive:e.Nat64,trigger_threshold:e.Nat64,max_message_size_bytes:e.Opt(e.Nat64),cycles_for_archive_creation:e.Opt(e.Nat64),node_max_memory_size_bytes:e.Opt(e.Nat64),controller_id:e.Principal}),token_name:e.Text}),o=e.Nat,p=e.Nat64,a=e.Record({to:r,fee:e.Opt(o),memo:e.Opt(e.Vec(e.Nat8)),from_subaccount:e.Opt(s),created_at_time:e.Opt(p),amount:o}),c=e.Nat,i=e.Variant({GenericError:e.Record({message:e.Text,error_code:e.Nat}),TemporarilyUnavailable:e.Null,BadBurn:e.Record({min_burn_amount:o}),Duplicate:e.Record({duplicate_of:c}),BadFee:e.Record({expected_fee:o}),CreatedInFuture:e.Record({ledger_time:e.Nat64}),TooOld:e.Null,InsufficientFunds:e.Record({balance:o})}),_=e.Variant({Ok:c,Err:i});return e.Service({icrc1_balance_of:e.Func([r],[o],["query"]),icrc1_decimals:e.Func([],[e.Nat8],["query"]),icrc1_fee:e.Func([],[o],["query"]),icrc1_metadata:e.Func([],[e.Vec(e.Tuple(e.Text,t))],["query"]),icrc1_minting_account:e.Func([],[e.Opt(r)],["query"]),icrc1_name:e.Func([],[e.Text],["query"]),icrc1_supported_standards:e.Func([],[e.Vec(e.Record({url:e.Text,name:e.Text}))],["query"]),icrc1_symbol:e.Func([],[e.Text],["query"]),icrc1_total_supply:e.Func([],[o],["query"]),icrc1_transfer:e.Func([a],[_],[])})};var ee=require("@dfinity/utils"),Nt=({to:e,from_subaccount:t,fee:s,amount:r,created_at_time:n,memo:o})=>({to:e,amount:r,fee:(0,ee.toNullable)(s),memo:(0,ee.toNullable)(o),from_subaccount:(0,ee.toNullable)(t),created_at_time:(0,ee.toNullable)(n)}),Rt=({owner:e,subaccount:t})=>({owner:e,subaccount:(0,ee.toNullable)(t)});var B=class extends O{constructor(){super(...arguments);this.metadata=s=>this.caller(s).icrc1_metadata();this.transactionFee=s=>this.caller(s).icrc1_fee();this.balance=s=>this.caller({certified:s.certified}).icrc1_balance_of({owner:s.owner,subaccount:(0,_e.toNullable)(s.subaccount)});this.transfer=async s=>{let r=await this.caller({certified:!0}).icrc1_transfer(Nt(s));if("Err"in r)throw new oe({errorType:r.Err,msg:"Failed to transfer"});return r.Ok}}static create(s){let{service:r,certifiedService:n,canisterId:o}=(0,_e.createServices)({options:s,idlFactory:mt,certifiedIdlFactory:lt});return new B(o,r,n)}};var yt=require("@dfinity/utils");var ft=({IDL:e})=>{let t=e.Record({dapp_canister_ids:e.Vec(e.Principal),latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_canister_id:e.Opt(e.Principal),index_canister_id:e.Opt(e.Principal),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal)}),s=e.Record({canister_id:e.Principal}),r=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),n=e.Record({controller:e.Principal,status:r,memory_size:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),o=e.Record({update_canister_list:e.Opt(e.Bool)}),p=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),a=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),c=e.Record({controller:e.Principal,status:p,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:a,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),i=e.Record({status:e.Opt(c),canister_id:e.Opt(e.Principal)}),_=e.Record({root:e.Opt(i),swap:e.Opt(i),ledger:e.Opt(i),index:e.Opt(i),governance:e.Opt(i),dapps:e.Vec(i),archives:e.Vec(i)}),u=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),l=e.Record({canister_id:e.Opt(e.Principal)}),d=e.Record({controller_principal_ids:e.Vec(e.Principal)}),N=e.Record({code:e.Opt(e.Int32),description:e.Text}),m=e.Record({err:e.Opt(N),dapp_canister_id:e.Opt(e.Principal)}),R=e.Record({failed_updates:e.Vec(m)});return e.Service({canister_status:e.Func([s],[n],[]),get_build_metadata:e.Func([],[e.Text],[]),get_sns_canisters_summary:e.Func([o],[_],[]),list_sns_canisters:e.Func([e.Record({})],[u],[]),register_dapp_canister:e.Func([l],[e.Record({})],[]),set_dapp_controllers:e.Func([d],[R],[])})};var ht=({IDL:e})=>{let t=e.Record({dapp_canister_ids:e.Vec(e.Principal),latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_canister_id:e.Opt(e.Principal),index_canister_id:e.Opt(e.Principal),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal)}),s=e.Record({canister_id:e.Principal}),r=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),n=e.Record({controller:e.Principal,status:r,memory_size:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),o=e.Record({update_canister_list:e.Opt(e.Bool)}),p=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),a=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),c=e.Record({controller:e.Principal,status:p,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:a,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),i=e.Record({status:e.Opt(c),canister_id:e.Opt(e.Principal)}),_=e.Record({root:e.Opt(i),swap:e.Opt(i),ledger:e.Opt(i),index:e.Opt(i),governance:e.Opt(i),dapps:e.Vec(i),archives:e.Vec(i)}),u=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),l=e.Record({canister_id:e.Opt(e.Principal)}),d=e.Record({controller_principal_ids:e.Vec(e.Principal)}),N=e.Record({code:e.Opt(e.Int32),description:e.Text}),m=e.Record({err:e.Opt(N),dapp_canister_id:e.Opt(e.Principal)}),R=e.Record({failed_updates:e.Vec(m)});return e.Service({canister_status:e.Func([s],[n],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_sns_canisters_summary:e.Func([o],[_],[]),list_sns_canisters:e.Func([e.Record({})],[u],["query"]),register_dapp_canister:e.Func([l],[e.Record({})],[]),set_dapp_controllers:e.Func([d],[R],[])})};var U=class extends O{constructor(){super(...arguments);this.listSnsCanisters=async({certified:s=!0})=>this.caller({certified:s}).list_sns_canisters({})}static create(s){let{service:r,certifiedService:n,canisterId:o}=(0,yt.createServices)({options:s,idlFactory:ht,certifiedIdlFactory:ft});return new U(o,r,n)}};var b=require("@dfinity/utils");var vt=require("@dfinity/utils");var Ot=({IDL:e})=>{let t=e.Record({ledger_id:e.Principal}),s=e.Nat,r=e.Record({owner:e.Principal,subaccount:e.Opt(e.Vec(e.Nat8))}),n=e.Record({max_results:e.Nat,start:e.Opt(s),account:r}),o=e.Record({burn:e.Opt(e.Record({from:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat})),kind:e.Text,mint:e.Opt(e.Record({to:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat})),timestamp:e.Nat64,transfer:e.Opt(e.Record({to:r,fee:e.Opt(e.Nat),from:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat}))}),p=e.Record({id:s,transaction:o}),a=e.Record({transactions:e.Vec(p),oldest_tx_id:e.Opt(s)}),c=e.Record({message:e.Text}),i=e.Variant({Ok:a,Err:c}),_=e.Vec(e.Nat8),u=e.Record({owner:e.Principal,start:e.Opt(_)});return e.Service({get_account_transactions:e.Func([n],[i],[]),ledger_id:e.Func([],[e.Principal],[]),list_subaccounts:e.Func([u],[e.Vec(_)],[])})};var gt=({IDL:e})=>{let t=e.Record({ledger_id:e.Principal}),s=e.Nat,r=e.Record({owner:e.Principal,subaccount:e.Opt(e.Vec(e.Nat8))}),n=e.Record({max_results:e.Nat,start:e.Opt(s),account:r}),o=e.Record({burn:e.Opt(e.Record({from:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat})),kind:e.Text,mint:e.Opt(e.Record({to:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat})),timestamp:e.Nat64,transfer:e.Opt(e.Record({to:r,fee:e.Opt(e.Nat),from:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat}))}),p=e.Record({id:s,transaction:o}),a=e.Record({transactions:e.Vec(p),oldest_tx_id:e.Opt(s)}),c=e.Record({message:e.Text}),i=e.Variant({Ok:a,Err:c}),_=e.Vec(e.Nat8),u=e.Record({owner:e.Principal,start:e.Opt(_)});return e.Service({get_account_transactions:e.Func([n],[i],[]),ledger_id:e.Func([],[e.Principal],["query"]),list_subaccounts:e.Func([u],[e.Vec(_)],["query"])})};var St=require("@dfinity/utils");var xt=({account:e,max_results:t,start:s})=>({account:Rt(e),max_results:t,start:(0,St.toNullable)(s)});var de=class extends Error{};var X=class extends O{constructor(){super(...arguments);this.getTransactions=async s=>{let r=await this.caller({certified:!0}).get_account_transactions(xt(s));if("Err"in r)throw new de(r.Err.message);return r.Ok}}static create(s){let{service:r,certifiedService:n,canisterId:o}=(0,vt.createServices)({options:s,idlFactory:gt,certifiedIdlFactory:Ot});return new X(o,r,n)}};var le=require("@dfinity/utils");var ue=require("@dfinity/utils"),Tt=Ut(Pt()),De=({index:e,controller:t})=>{let s=(0,ue.asciiStringToByteArray)("neuron-stake"),r=[12,...s,...t.toUint8Array(),...(0,ue.numberToUint8Array)(e)],n=Tt.sha256.create();return n.update(r),new Uint8Array(n.array())};var ne=class{constructor({root:t,governance:s,ledger:r,swap:n,index:o,certified:p}){this.listNeurons=t=>this.governance.listNeurons(this.mergeParams(t));this.listNervousSystemFunctions=t=>this.governance.listNervousSystemFunctions(this.mergeParams(t));this.metadata=t=>Promise.all([this.governance.metadata(this.mergeParams(t)),this.ledger.metadata(this.mergeParams(t))]);this.nervousSystemParameters=t=>this.governance.nervousSystemParameters(this.mergeParams(t));this.ledgerMetadata=t=>this.ledger.metadata(this.mergeParams(t));this.transactionFee=t=>this.ledger.transactionFee(this.mergeParams(t));this.balance=t=>this.ledger.balance(this.mergeParams(t));this.transfer=t=>this.ledger.transfer(t);this.getNeuron=t=>this.governance.getNeuron(this.mergeParams(t));this.queryNeuron=t=>this.governance.queryNeuron(this.mergeParams(t));this.nextNeuronAccount=async t=>{for(let s=0;s<65536;s++){let r=De({index:s,controller:t}),n={owner:this.canisterIds.governanceCanisterId,subaccount:r},o={id:r},p=await this.governance.queryNeuron({neuronId:o,certified:!1});if(p===void 0&&(p=await this.governance.queryNeuron({neuronId:o,certified:!0}),p===void 0))return{account:n,index:BigInt(s)}}throw new h("No more neuron accounts available")};this.stakeNeuron=async({stakeE8s:t,source:s,controller:r})=>{this.assertCertified("stakeNeuron");let{account:n,index:o}=await this.nextNeuronAccount(r);if(n.subaccount===void 0)throw new h("There was an error creating the neuron subaccount");return await this.ledger.transfer({amount:t,to:{owner:n.owner,subaccount:(0,le.toNullable)(n.subaccount)},from_subaccount:s.subaccount,memo:(0,le.bigIntToUint8Array)(o)}),this.governance.claimNeuron({memo:BigInt(o),controller:r,subaccount:n.subaccount})};this.getNeuronBalance=async t=>{let s={owner:this.canisterIds.governanceCanisterId,subaccount:t.id};return this.ledger.balance({...s,certified:this.certified})};this.addNeuronPermissions=t=>this.governance.addNeuronPermissions(t);this.refreshNeuron=t=>this.governance.refreshNeuron(t);this.claimNeuron=t=>this.governance.claimNeuron(t);this.removeNeuronPermissions=t=>this.governance.removeNeuronPermissions(t);this.disburse=t=>this.governance.disburse(t);this.startDissolving=t=>this.governance.startDissolving(t);this.stopDissolving=t=>this.governance.stopDissolving(t);this.setDissolveTimestamp=t=>this.governance.setDissolveTimestamp(t);this.increaseDissolveDelay=t=>this.governance.increaseDissolveDelay(t);this.setTopicFollowees=t=>this.governance.setTopicFollowees(t);this.swapState=t=>this.swap.state(this.mergeParams(t));this.notifyParticipation=t=>this.swap.notifyParticipation(t);this.getUserCommitment=t=>this.swap.getUserCommitment(this.mergeParams(t));this.getTransactions=t=>this.index.getTransactions(t);this.assertCertified=t=>{if(!this.certified)throw new h(`Call to ${t} needs to be certified`)};this.root=t,this.governance=s,this.ledger=r,this.swap=n,this.index=o,this.certified=p}get canisterIds(){return{rootCanisterId:this.root.canisterId,ledgerCanisterId:this.ledger.canisterId,governanceCanisterId:this.governance.canisterId,swapCanisterId:this.swap.canisterId}}mergeParams(t){return{...t,certified:this.certified}}};var me=require("@dfinity/utils");var bt=({IDL:e})=>{let t=e.Record({sns_root_canister_id:e.Text,fallback_controller_principal_ids:e.Vec(e.Text),neuron_minimum_stake_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,sns_governance_canister_id:e.Text}),s=e.Record({source_principal_id:e.Opt(e.Principal)}),r=e.Record({block_height:e.Opt(e.Nat64)}),n=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),o=e.Variant({Ok:r,Err:n}),p=e.Record({result:e.Opt(o)}),a=e.Record({error_message:e.Text,error_type:e.Int32}),c=e.Record({governance_error:e.Opt(a)}),i=e.Record({code:e.Opt(e.Int32),description:e.Text}),_=e.Variant({Ok:c,Err:i}),u=e.Record({possibility:e.Opt(_)}),l=e.Record({err:e.Opt(i),dapp_canister_id:e.Opt(e.Principal)}),d=e.Record({failed_updates:e.Vec(l)}),N=e.Variant({Ok:d,Err:i}),m=e.Record({possibility:e.Opt(N)}),R=e.Variant({Err:i}),g=e.Record({possibility:e.Opt(R)}),f=e.Record({failure:e.Nat32,skipped:e.Nat32,success:e.Nat32}),y=e.Record({settle_community_fund_participation_result:e.Opt(u),set_dapp_controllers_result:e.Opt(m),sns_governance_normal_mode_enabled:e.Opt(g),sweep_icp:e.Opt(f),sweep_sns:e.Opt(f),create_neuron:e.Opt(f)}),W=e.Record({principal_id:e.Opt(e.Principal)}),S=e.Record({transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,transfer_success_timestamp_seconds:e.Nat64}),F=e.Record({icp:e.Opt(S)}),Q=e.Record({buyer_state:e.Opt(F)}),Y=e.Record({buyers_total:e.Nat64}),x=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),j=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),v=e.Record({controller:e.Principal,status:x,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:j,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),w=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64}),V=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),C=e.Record({buyer_principal:e.Text}),A=e.Variant({CommunityFund:V,Direct:C}),J=e.Record({sns:e.Opt(S),neuron_attributes:e.Opt(w),investor:e.Opt(A)}),Z=e.Record({nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),E=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(Z)}),$=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),P=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt($),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,max_participant_icp_e8s:e.Nat64,min_icp_e8s:e.Nat64}),k=e.Record({neuron_recipes:e.Vec(J),cf_participants:e.Vec(E),init:e.Opt(t),lifecycle:e.Int32,buyers:e.Vec(e.Tuple(e.Text,F)),params:e.Opt(P),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),I=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64}),D=e.Record({swap:e.Opt(k),derived:e.Opt(I)}),M=e.Record({cf_participants:e.Vec(E),params:e.Opt(P),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),H=e.Record({buyer:e.Text}),G=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([s],[p],[]),finalize_swap:e.Func([e.Record({})],[y],[]),get_buyer_state:e.Func([W],[Q],[]),get_buyers_total:e.Func([e.Record({})],[Y],[]),get_canister_status:e.Func([e.Record({})],[v],[]),get_state:e.Func([e.Record({})],[D],[]),open:e.Func([M],[e.Record({})],[]),refresh_buyer_tokens:e.Func([H],[G],[]),restore_dapp_controllers:e.Func([e.Record({})],[m],[])})};var Ft=({IDL:e})=>{let t=e.Record({sns_root_canister_id:e.Text,fallback_controller_principal_ids:e.Vec(e.Text),neuron_minimum_stake_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,sns_governance_canister_id:e.Text}),s=e.Record({source_principal_id:e.Opt(e.Principal)}),r=e.Record({block_height:e.Opt(e.Nat64)}),n=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),o=e.Variant({Ok:r,Err:n}),p=e.Record({result:e.Opt(o)}),a=e.Record({error_message:e.Text,error_type:e.Int32}),c=e.Record({governance_error:e.Opt(a)}),i=e.Record({code:e.Opt(e.Int32),description:e.Text}),_=e.Variant({Ok:c,Err:i}),u=e.Record({possibility:e.Opt(_)}),l=e.Record({err:e.Opt(i),dapp_canister_id:e.Opt(e.Principal)}),d=e.Record({failed_updates:e.Vec(l)}),N=e.Variant({Ok:d,Err:i}),m=e.Record({possibility:e.Opt(N)}),R=e.Variant({Err:i}),g=e.Record({possibility:e.Opt(R)}),f=e.Record({failure:e.Nat32,skipped:e.Nat32,success:e.Nat32}),y=e.Record({settle_community_fund_participation_result:e.Opt(u),set_dapp_controllers_result:e.Opt(m),sns_governance_normal_mode_enabled:e.Opt(g),sweep_icp:e.Opt(f),sweep_sns:e.Opt(f),create_neuron:e.Opt(f)}),W=e.Record({principal_id:e.Opt(e.Principal)}),S=e.Record({transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,transfer_success_timestamp_seconds:e.Nat64}),F=e.Record({icp:e.Opt(S)}),Q=e.Record({buyer_state:e.Opt(F)}),Y=e.Record({buyers_total:e.Nat64}),x=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),j=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),v=e.Record({controller:e.Principal,status:x,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:j,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),w=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64}),V=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),C=e.Record({buyer_principal:e.Text}),A=e.Variant({CommunityFund:V,Direct:C}),J=e.Record({sns:e.Opt(S),neuron_attributes:e.Opt(w),investor:e.Opt(A)}),Z=e.Record({nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),E=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(Z)}),$=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),P=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt($),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,max_participant_icp_e8s:e.Nat64,min_icp_e8s:e.Nat64}),k=e.Record({neuron_recipes:e.Vec(J),cf_participants:e.Vec(E),init:e.Opt(t),lifecycle:e.Int32,buyers:e.Vec(e.Tuple(e.Text,F)),params:e.Opt(P),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),I=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64}),D=e.Record({swap:e.Opt(k),derived:e.Opt(I)}),M=e.Record({cf_participants:e.Vec(E),params:e.Opt(P),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),H=e.Record({buyer:e.Text}),G=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([s],[p],[]),finalize_swap:e.Func([e.Record({})],[y],[]),get_buyer_state:e.Func([W],[Q],["query"]),get_buyers_total:e.Func([e.Record({})],[Y],[]),get_canister_status:e.Func([e.Record({})],[v],[]),get_state:e.Func([e.Record({})],[D],["query"]),open:e.Func([M],[e.Record({})],[]),refresh_buyer_tokens:e.Func([H],[G],[]),restore_dapp_controllers:e.Func([e.Record({})],[m],[])})};var z=class extends O{constructor(){super(...arguments);this.state=s=>this.caller(s).get_state({});this.notifyParticipation=async s=>{await this.caller({certified:!0}).refresh_buyer_tokens(s)};this.getUserCommitment=async s=>{let{buyer_state:r}=await this.caller({certified:s.certified}).get_buyer_state({principal_id:s.principal_id});return(0,me.fromNullable)(r)}}static create(s){let{service:r,certifiedService:n,canisterId:o}=(0,me.createServices)({options:s,idlFactory:Ft,certifiedIdlFactory:bt});return new z(o,r,n)}};var Qt=async({agent:e,rootOptions:t,certified:s=!0})=>{let r=U.create({...t,agent:e}),{ledger:n,swap:o,governance:p,index:a}=await r.listSnsCanisters({certified:s}),c=(0,b.fromNullable)(p),i=(0,b.fromNullable)(n),_=(0,b.fromNullable)(o),u=(0,b.fromNullable)(a);return(0,b.assertNonNullish)(c),(0,b.assertNonNullish)(i),(0,b.assertNonNullish)(_),(0,b.assertNonNullish)(u),new ne({root:r,governance:q.create({canisterId:c,agent:e}),ledger:B.create({canisterId:i,agent:e}),swap:z.create({canisterId:_,agent:e}),index:X.create({canisterId:u,agent:e}),certified:s})};var wt=(n=>(n.SYMBOL="icrc1:symbol",n.NAME="icrc1:name",n.DECIMALS="icrc1:decimals",n.FEE="icrc1:fee",n))(wt||{});var ae=require("@dfinity/principal"),Ct=parseInt("FF",16),Vt=32,Yt=e=>{let t=Array.from(e);for(;t[0]===0;)t.shift();return Uint8Array.from(t)},jt=({owner:e,subaccount:t})=>{if(t===void 0)return e.toText();let s=Yt(t);if(s.length===0)return e.toText();let r=Uint8Array.from([...e.toUint8Array(),...s,s.length,Ct]);return ae.Principal.fromUint8Array(r).toText()},Jt=e=>{let t=ae.Principal.fromText(e),[s,r,...n]=t.toUint8Array().reverse();if(s!==Ct)return{owner:ae.Principal.fromText(e)};if(r>Vt||r===0||r===void 0)throw new Error("Invalid account string");let o=n.slice(0,r);if(o[0]===0||o.length!==r)throw new Error("Invalid account string");for(;o.length<Vt;)o.push(0);let p=Uint8Array.from(o.reverse()),a=n.reverse().filter((c,i)=>i<n.length-r);return{owner:ae.Principal.fromUint8Array(Uint8Array.from(a)),subaccount:p}};0&&(module.exports={SnsGovernanceCanister,SnsGovernanceError,SnsIndexCanister,SnsLedgerCanister,SnsMetadataResponseEntries,SnsNeuronPermissionType,SnsRootCanister,SnsSwapCanister,SnsSwapLifecycle,SnsTransferError,SnsWrapper,decodeSnsAccount,encodeSnsAccount,initSnsWrapper,neuronSubaccount});
1
+ "use strict";var Gt=Object.create;var pe=Object.defineProperty;var qt=Object.getOwnPropertyDescriptor;var Bt=Object.getOwnPropertyNames;var Ut=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty;var zt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Wt=(e,t)=>{for(var s in t)pe(e,s,{get:t[s],enumerable:!0})},tt=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Bt(t))!Xt.call(e,n)&&n!==s&&pe(e,n,{get:()=>t[n],enumerable:!(r=qt(t,n))||r.enumerable});return e};var Qt=(e,t,s)=>(s=e!=null?Gt(Ut(e)):{},tt(t||!e||!e.__esModule?pe(s,"default",{value:e,enumerable:!0}):s,e)),Yt=e=>tt(pe({},"__esModule",{value:!0}),e);var wt=zt((exports,module)=>{(function(){"use strict";var ERROR="input is invalid type",WINDOW=typeof window=="object",root=WINDOW?window:{};root.JS_SHA256_NO_WINDOW&&(WINDOW=!1);var WEB_WORKER=!WINDOW&&typeof self=="object",NODE_JS=!root.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;NODE_JS?root=global:WEB_WORKER&&(root=self);var COMMON_JS=!root.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,AMD=typeof define=="function"&&define.amd,ARRAY_BUFFER=!root.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",HEX_CHARS="0123456789abcdef".split(""),EXTRA=[-2147483648,8388608,32768,128],SHIFT=[24,16,8,0],K=[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],OUTPUT_TYPES=["hex","array","digest","arrayBuffer"],blocks=[];(root.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return Object.prototype.toString.call(e)==="[object Array]"}),ARRAY_BUFFER&&(root.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return typeof e=="object"&&e.buffer&&e.buffer.constructor===ArrayBuffer});var createOutputMethod=function(e,t){return function(s){return new Sha256(t,!0).update(s)[e]()}},createMethod=function(e){var t=createOutputMethod("hex",e);NODE_JS&&(t=nodeWrap(t,e)),t.create=function(){return new Sha256(e)},t.update=function(n){return t.create().update(n)};for(var s=0;s<OUTPUT_TYPES.length;++s){var r=OUTPUT_TYPES[s];t[r]=createOutputMethod(r,e)}return t},nodeWrap=function(method,is224){var crypto=eval("require('crypto')"),Buffer=eval("require('buffer').Buffer"),algorithm=is224?"sha224":"sha256",nodeMethod=function(e){if(typeof e=="string")return crypto.createHash(algorithm).update(e,"utf8").digest("hex");if(e==null)throw new Error(ERROR);return e.constructor===ArrayBuffer&&(e=new Uint8Array(e)),Array.isArray(e)||ArrayBuffer.isView(e)||e.constructor===Buffer?crypto.createHash(algorithm).update(new Buffer(e)).digest("hex"):method(e)};return nodeMethod},createHmacOutputMethod=function(e,t){return function(s,r){return new HmacSha256(s,t,!0).update(r)[e]()}},createHmacMethod=function(e){var t=createHmacOutputMethod("hex",e);t.create=function(n){return new HmacSha256(n,e)},t.update=function(n,o){return t.create(n).update(o)};for(var s=0;s<OUTPUT_TYPES.length;++s){var r=OUTPUT_TYPES[s];t[r]=createHmacOutputMethod(r,e)}return t};function Sha256(e,t){t?(blocks[0]=blocks[16]=blocks[1]=blocks[2]=blocks[3]=blocks[4]=blocks[5]=blocks[6]=blocks[7]=blocks[8]=blocks[9]=blocks[10]=blocks[11]=blocks[12]=blocks[13]=blocks[14]=blocks[15]=0,this.blocks=blocks):this.blocks=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],e?(this.h0=3238371032,this.h1=914150663,this.h2=812702999,this.h3=4144912697,this.h4=4290775857,this.h5=1750603025,this.h6=1694076839,this.h7=3204075428):(this.h0=1779033703,this.h1=3144134277,this.h2=1013904242,this.h3=2773480762,this.h4=1359893119,this.h5=2600822924,this.h6=528734635,this.h7=1541459225),this.block=this.start=this.bytes=this.hBytes=0,this.finalized=this.hashed=!1,this.first=!0,this.is224=e}Sha256.prototype.update=function(e){if(!this.finalized){var t,s=typeof e;if(s!=="string"){if(s==="object"){if(e===null)throw new Error(ERROR);if(ARRAY_BUFFER&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!ARRAY_BUFFER||!ArrayBuffer.isView(e)))throw new Error(ERROR)}else throw new Error(ERROR);t=!0}for(var r,n=0,o,c=e.length,a=this.blocks;n<c;){if(this.hashed&&(this.hashed=!1,a[0]=this.block,a[16]=a[1]=a[2]=a[3]=a[4]=a[5]=a[6]=a[7]=a[8]=a[9]=a[10]=a[11]=a[12]=a[13]=a[14]=a[15]=0),t)for(o=this.start;n<c&&o<64;++n)a[o>>2]|=e[n]<<SHIFT[o++&3];else for(o=this.start;n<c&&o<64;++n)r=e.charCodeAt(n),r<128?a[o>>2]|=r<<SHIFT[o++&3]:r<2048?(a[o>>2]|=(192|r>>6)<<SHIFT[o++&3],a[o>>2]|=(128|r&63)<<SHIFT[o++&3]):r<55296||r>=57344?(a[o>>2]|=(224|r>>12)<<SHIFT[o++&3],a[o>>2]|=(128|r>>6&63)<<SHIFT[o++&3],a[o>>2]|=(128|r&63)<<SHIFT[o++&3]):(r=65536+((r&1023)<<10|e.charCodeAt(++n)&1023),a[o>>2]|=(240|r>>18)<<SHIFT[o++&3],a[o>>2]|=(128|r>>12&63)<<SHIFT[o++&3],a[o>>2]|=(128|r>>6&63)<<SHIFT[o++&3],a[o>>2]|=(128|r&63)<<SHIFT[o++&3]);this.lastByteIndex=o,this.bytes+=o-this.start,o>=64?(this.block=a[16],this.start=o-64,this.hash(),this.hashed=!0):this.start=o}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}},Sha256.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>2]|=EXTRA[t&3],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}},Sha256.prototype.hash=function(){var e=this.h0,t=this.h1,s=this.h2,r=this.h3,n=this.h4,o=this.h5,c=this.h6,a=this.h7,i=this.blocks,p,_,u,l,d,N,m,R,S,f,h;for(p=16;p<64;++p)d=i[p-15],_=(d>>>7|d<<25)^(d>>>18|d<<14)^d>>>3,d=i[p-2],u=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10,i[p]=i[p-16]+_+i[p-7]+u<<0;for(h=t&s,p=0;p<64;p+=4)this.first?(this.is224?(R=300032,d=i[0]-1413257819,a=d-150054599<<0,r=d+24177077<<0):(R=704751109,d=i[0]-210244248,a=d-1521486534<<0,r=d+143694565<<0),this.first=!1):(_=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),u=(n>>>6|n<<26)^(n>>>11|n<<21)^(n>>>25|n<<7),R=e&t,l=R^e&s^h,m=n&o^~n&c,d=a+u+m+K[p]+i[p],N=_+l,a=r+d<<0,r=d+N<<0),_=(r>>>2|r<<30)^(r>>>13|r<<19)^(r>>>22|r<<10),u=(a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7),S=r&e,l=S^r&t^R,m=a&n^~a&o,d=c+u+m+K[p+1]+i[p+1],N=_+l,c=s+d<<0,s=d+N<<0,_=(s>>>2|s<<30)^(s>>>13|s<<19)^(s>>>22|s<<10),u=(c>>>6|c<<26)^(c>>>11|c<<21)^(c>>>25|c<<7),f=s&r,l=f^s&e^S,m=c&a^~c&n,d=o+u+m+K[p+2]+i[p+2],N=_+l,o=t+d<<0,t=d+N<<0,_=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),u=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),h=t&s,l=h^t&r^f,m=o&c^~o&a,d=n+u+m+K[p+3]+i[p+3],N=_+l,n=e+d<<0,e=d+N<<0;this.h0=this.h0+e<<0,this.h1=this.h1+t<<0,this.h2=this.h2+s<<0,this.h3=this.h3+r<<0,this.h4=this.h4+n<<0,this.h5=this.h5+o<<0,this.h6=this.h6+c<<0,this.h7=this.h7+a<<0},Sha256.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,s=this.h2,r=this.h3,n=this.h4,o=this.h5,c=this.h6,a=this.h7,i=HEX_CHARS[e>>28&15]+HEX_CHARS[e>>24&15]+HEX_CHARS[e>>20&15]+HEX_CHARS[e>>16&15]+HEX_CHARS[e>>12&15]+HEX_CHARS[e>>8&15]+HEX_CHARS[e>>4&15]+HEX_CHARS[e&15]+HEX_CHARS[t>>28&15]+HEX_CHARS[t>>24&15]+HEX_CHARS[t>>20&15]+HEX_CHARS[t>>16&15]+HEX_CHARS[t>>12&15]+HEX_CHARS[t>>8&15]+HEX_CHARS[t>>4&15]+HEX_CHARS[t&15]+HEX_CHARS[s>>28&15]+HEX_CHARS[s>>24&15]+HEX_CHARS[s>>20&15]+HEX_CHARS[s>>16&15]+HEX_CHARS[s>>12&15]+HEX_CHARS[s>>8&15]+HEX_CHARS[s>>4&15]+HEX_CHARS[s&15]+HEX_CHARS[r>>28&15]+HEX_CHARS[r>>24&15]+HEX_CHARS[r>>20&15]+HEX_CHARS[r>>16&15]+HEX_CHARS[r>>12&15]+HEX_CHARS[r>>8&15]+HEX_CHARS[r>>4&15]+HEX_CHARS[r&15]+HEX_CHARS[n>>28&15]+HEX_CHARS[n>>24&15]+HEX_CHARS[n>>20&15]+HEX_CHARS[n>>16&15]+HEX_CHARS[n>>12&15]+HEX_CHARS[n>>8&15]+HEX_CHARS[n>>4&15]+HEX_CHARS[n&15]+HEX_CHARS[o>>28&15]+HEX_CHARS[o>>24&15]+HEX_CHARS[o>>20&15]+HEX_CHARS[o>>16&15]+HEX_CHARS[o>>12&15]+HEX_CHARS[o>>8&15]+HEX_CHARS[o>>4&15]+HEX_CHARS[o&15]+HEX_CHARS[c>>28&15]+HEX_CHARS[c>>24&15]+HEX_CHARS[c>>20&15]+HEX_CHARS[c>>16&15]+HEX_CHARS[c>>12&15]+HEX_CHARS[c>>8&15]+HEX_CHARS[c>>4&15]+HEX_CHARS[c&15];return this.is224||(i+=HEX_CHARS[a>>28&15]+HEX_CHARS[a>>24&15]+HEX_CHARS[a>>20&15]+HEX_CHARS[a>>16&15]+HEX_CHARS[a>>12&15]+HEX_CHARS[a>>8&15]+HEX_CHARS[a>>4&15]+HEX_CHARS[a&15]),i},Sha256.prototype.toString=Sha256.prototype.hex,Sha256.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,s=this.h2,r=this.h3,n=this.h4,o=this.h5,c=this.h6,a=this.h7,i=[e>>24&255,e>>16&255,e>>8&255,e&255,t>>24&255,t>>16&255,t>>8&255,t&255,s>>24&255,s>>16&255,s>>8&255,s&255,r>>24&255,r>>16&255,r>>8&255,r&255,n>>24&255,n>>16&255,n>>8&255,n&255,o>>24&255,o>>16&255,o>>8&255,o&255,c>>24&255,c>>16&255,c>>8&255,c&255];return this.is224||i.push(a>>24&255,a>>16&255,a>>8&255,a&255),i},Sha256.prototype.array=Sha256.prototype.digest,Sha256.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e};function HmacSha256(e,t,s){var r,n=typeof e;if(n==="string"){var o=[],c=e.length,a=0,i;for(r=0;r<c;++r)i=e.charCodeAt(r),i<128?o[a++]=i:i<2048?(o[a++]=192|i>>6,o[a++]=128|i&63):i<55296||i>=57344?(o[a++]=224|i>>12,o[a++]=128|i>>6&63,o[a++]=128|i&63):(i=65536+((i&1023)<<10|e.charCodeAt(++r)&1023),o[a++]=240|i>>18,o[a++]=128|i>>12&63,o[a++]=128|i>>6&63,o[a++]=128|i&63);e=o}else if(n==="object"){if(e===null)throw new Error(ERROR);if(ARRAY_BUFFER&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!ARRAY_BUFFER||!ArrayBuffer.isView(e)))throw new Error(ERROR)}else throw new Error(ERROR);e.length>64&&(e=new Sha256(t,!0).update(e).array());var p=[],_=[];for(r=0;r<64;++r){var u=e[r]||0;p[r]=92^u,_[r]=54^u}Sha256.call(this,t,s),this.update(_),this.oKeyPad=p,this.inner=!0,this.sharedMemory=s}HmacSha256.prototype=new Sha256,HmacSha256.prototype.finalize=function(){if(Sha256.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();Sha256.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),Sha256.prototype.finalize.call(this)}};var exports=createMethod();exports.sha256=exports,exports.sha224=createMethod(!0),exports.sha256.hmac=createHmacMethod(),exports.sha224.hmac=createHmacMethod(!0),COMMON_JS?module.exports=exports:(root.sha256=exports.sha256,root.sha224=exports.sha224,AMD&&define(function(){return exports}))})()});var Dt={};Wt(Dt,{SnsGovernanceCanister:()=>q,SnsGovernanceError:()=>y,SnsIndexCanister:()=>X,SnsLedgerCanister:()=>B,SnsMetadataResponseEntries:()=>Et,SnsNeuronPermissionType:()=>rt,SnsRootCanister:()=>U,SnsSwapCanister:()=>z,SnsSwapLifecycle:()=>st,SnsTransferError:()=>oe,SnsWrapper:()=>ie,decodeSnsAccount:()=>It,encodeSnsAccount:()=>Zt,initSnsWrapper:()=>Kt,neuronSubaccount:()=>et});module.exports=Yt(Dt);var rt=(_=>(_[_.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",_[_.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",_[_.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",_[_.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",_[_.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",_[_.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",_[_.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",_[_.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",_[_.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",_[_.NEURON_PERMISSION_TYPE_STAKE_MATURITY=9]="NEURON_PERMISSION_TYPE_STAKE_MATURITY",_))(rt||{});var st=(o=>(o[o.Unspecified=0]="Unspecified",o[o.Pending=1]="Pending",o[o.Open=2]="Open",o[o.Committed=3]="Committed",o[o.Aborted=4]="Aborted",o))(st||{});var y=class extends Error{};var oe=class extends Error{constructor({msg:s,errorType:r}){super(s);this.errorType=r}};var _e=class extends Error{};var ot=e=>{if(e<0||e>100)throw new _e(`${e} is not a valid percentage number.`)};var T=require("@dfinity/utils");var nt=({IDL:e})=>{let t=e.Record({validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),s=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:t}),r=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(s)}),n=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),o=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(o)}),a=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),i=e.Record({permissions:e.Vec(e.Int32)}),p=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),_=e.Record({default_followees:e.Opt(a),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(i),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(i),voting_rewards_parameters:e.Opt(p),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),u=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),l=e.Record({id:e.Nat64}),d=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(l)}),N=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(u)}),m=e.Record({error_message:e.Text,error_type:e.Int32}),R=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),S=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),f=e.Record({subaccount:e.Vec(e.Nat8)}),h=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(f),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),W=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),g=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),F=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Q=e.Record({motion_text:e.Text}),Y=e.Variant({ManageNervousSystemParameters:_,AddGenericNervousSystemFunction:r,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),TransferSnsTreasuryFunds:h,UpgradeSnsControlledCanister:W,Unspecified:e.Record({}),ManageSnsMetadata:g,ExecuteGenericNervousSystemFunction:F,Motion:Q}),x=e.Record({url:e.Text,title:e.Text,action:e.Opt(Y),summary:e.Text}),j=e.Record({current_deadline_timestamp_seconds:e.Nat64}),v=e.Record({id:e.Opt(l),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(m),ballots:e.Vec(e.Tuple(e.Text,R)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(S),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(x),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),w=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),V=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),C=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(f)}),A=e.Record({to_account:e.Opt(C),percentage_to_disburse:e.Nat32}),J=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),$=e.Record({additional_dissolve_delay_seconds:e.Nat32}),E=e.Record({dissolve_timestamp_seconds:e.Nat64}),Z=e.Variant({ChangeAutoStakeMaturity:J,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:$,SetDissolveTimestamp:E}),P=e.Record({operation:e.Opt(Z)}),k=e.Record({vote:e.Int32,proposal:e.Opt(l)}),I=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),D=e.Variant({MemoAndController:I,NeuronId:e.Record({})}),M=e.Record({by:e.Opt(D)}),H=e.Record({permissions_to_remove:e.Opt(i),principal_id:e.Opt(e.Principal)}),G=e.Record({permissions_to_add:e.Opt(i),principal_id:e.Opt(e.Principal)}),te=e.Record({percentage_to_merge:e.Nat32}),Re=e.Record({e8s:e.Nat64}),re=e.Record({to_account:e.Opt(C),amount:e.Opt(Re)}),fe=e.Variant({Split:w,Follow:V,DisburseMaturity:A,Configure:P,RegisterVote:k,SyncCommand:e.Record({}),MakeProposal:x,ClaimOrRefreshNeuron:M,RemoveNeuronPermissions:H,AddNeuronPermissions:G,MergeMaturity:te,Disburse:re}),ye=e.Record({command:e.Opt(fe),timestamp:e.Nat64}),he=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Oe=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),L=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(he),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(Oe),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ht=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,r)),metrics:e.Opt(n),mode:e.Int32,parameters:e.Opt(_),deployed_version:e.Opt(u),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(d),pending_version:e.Opt(N),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,v)),in_flight_commands:e.Vec(e.Tuple(e.Text,ye)),sns_metadata:e.Opt(g),neurons:e.Vec(e.Tuple(e.Text,L)),genesis_timestamp_seconds:e.Nat64}),Se=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),memo:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),hotkey:e.Opt(e.Principal)}),ge=e.Record({neuron_parameters:e.Vec(Se)}),xe=e.Record({skipped_claims:e.Nat32,successful_claims:e.Nat32,failed_claims:e.Nat32}),ve=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Pe=e.Record({neuron_id:e.Opt(o)}),Te=e.Variant({Error:m,Neuron:L}),be=e.Record({result:e.Opt(Te)}),se=e.Record({proposal_id:e.Opt(l)}),Fe=e.Variant({Error:m,Proposal:v}),we=e.Record({result:e.Opt(Fe)}),Ve=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Ce=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Ae=e.Record({controller:e.Principal,status:Ve,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:Ce,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ee=e.Record({deployed_version:e.Opt(u),pending_version:e.Opt(N)}),ke=e.Record({sns_initialization_parameters:e.Text}),Me=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(r)}),He=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),Ge=e.Record({neurons:e.Vec(L)}),qe=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(l),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Be=e.Record({proposals:e.Vec(v)}),Ue=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Xe=e.Variant({Split:w,Follow:V,DisburseMaturity:A,ClaimOrRefresh:M,Configure:P,RegisterVote:k,MakeProposal:x,StakeMaturity:Ue,RemoveNeuronPermissions:H,AddNeuronPermissions:G,MergeMaturity:te,Disburse:re}),ze=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Xe)}),We=e.Record({created_neuron_id:e.Opt(o)}),Qe=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),Ye=e.Record({refreshed_neuron_id:e.Opt(o)}),je=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Je=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ke=e.Record({transfer_block_height:e.Nat64}),$e=e.Variant({Error:m,Split:We,Follow:e.Record({}),DisburseMaturity:Qe,ClaimOrRefresh:Ye,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:se,RemoveNeuronPermission:e.Record({}),StakeMaturity:je,MergeMaturity:Je,Disburse:Ke,AddNeuronPermission:e.Record({})}),Ze=e.Record({command:e.Opt($e)}),Ie=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([ge],[xe],[]),get_build_metadata:e.Func([],[e.Text],[]),get_metadata:e.Func([e.Record({})],[ve],[]),get_nervous_system_parameters:e.Func([e.Null],[_],[]),get_neuron:e.Func([Pe],[be],[]),get_proposal:e.Func([se],[we],[]),get_root_canister_status:e.Func([e.Null],[Ae],[]),get_running_sns_version:e.Func([e.Record({})],[Ee],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[ke],[]),list_nervous_system_functions:e.Func([],[Me],[]),list_neurons:e.Func([He],[Ge],[]),list_proposals:e.Func([qe],[Be],[]),manage_neuron:e.Func([ze],[Ze],[]),set_mode:e.Func([Ie],[e.Record({})],[])})};var at=({IDL:e})=>{let t=e.Record({validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),s=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:t}),r=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(s)}),n=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),o=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(o)}),a=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),i=e.Record({permissions:e.Vec(e.Int32)}),p=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),_=e.Record({default_followees:e.Opt(a),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(i),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(i),voting_rewards_parameters:e.Opt(p),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),u=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),l=e.Record({id:e.Nat64}),d=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(l)}),N=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(u)}),m=e.Record({error_message:e.Text,error_type:e.Int32}),R=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),S=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),f=e.Record({subaccount:e.Vec(e.Nat8)}),h=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(f),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),W=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),g=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),F=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Q=e.Record({motion_text:e.Text}),Y=e.Variant({ManageNervousSystemParameters:_,AddGenericNervousSystemFunction:r,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),TransferSnsTreasuryFunds:h,UpgradeSnsControlledCanister:W,Unspecified:e.Record({}),ManageSnsMetadata:g,ExecuteGenericNervousSystemFunction:F,Motion:Q}),x=e.Record({url:e.Text,title:e.Text,action:e.Opt(Y),summary:e.Text}),j=e.Record({current_deadline_timestamp_seconds:e.Nat64}),v=e.Record({id:e.Opt(l),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(m),ballots:e.Vec(e.Tuple(e.Text,R)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(S),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(x),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),w=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),V=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),C=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(f)}),A=e.Record({to_account:e.Opt(C),percentage_to_disburse:e.Nat32}),J=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),$=e.Record({additional_dissolve_delay_seconds:e.Nat32}),E=e.Record({dissolve_timestamp_seconds:e.Nat64}),Z=e.Variant({ChangeAutoStakeMaturity:J,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:$,SetDissolveTimestamp:E}),P=e.Record({operation:e.Opt(Z)}),k=e.Record({vote:e.Int32,proposal:e.Opt(l)}),I=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),D=e.Variant({MemoAndController:I,NeuronId:e.Record({})}),M=e.Record({by:e.Opt(D)}),H=e.Record({permissions_to_remove:e.Opt(i),principal_id:e.Opt(e.Principal)}),G=e.Record({permissions_to_add:e.Opt(i),principal_id:e.Opt(e.Principal)}),te=e.Record({percentage_to_merge:e.Nat32}),Re=e.Record({e8s:e.Nat64}),re=e.Record({to_account:e.Opt(C),amount:e.Opt(Re)}),fe=e.Variant({Split:w,Follow:V,DisburseMaturity:A,Configure:P,RegisterVote:k,SyncCommand:e.Record({}),MakeProposal:x,ClaimOrRefreshNeuron:M,RemoveNeuronPermissions:H,AddNeuronPermissions:G,MergeMaturity:te,Disburse:re}),ye=e.Record({command:e.Opt(fe),timestamp:e.Nat64}),he=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Oe=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),L=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(he),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(Oe),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ht=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,r)),metrics:e.Opt(n),mode:e.Int32,parameters:e.Opt(_),deployed_version:e.Opt(u),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(d),pending_version:e.Opt(N),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,v)),in_flight_commands:e.Vec(e.Tuple(e.Text,ye)),sns_metadata:e.Opt(g),neurons:e.Vec(e.Tuple(e.Text,L)),genesis_timestamp_seconds:e.Nat64}),Se=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),memo:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),hotkey:e.Opt(e.Principal)}),ge=e.Record({neuron_parameters:e.Vec(Se)}),xe=e.Record({skipped_claims:e.Nat32,successful_claims:e.Nat32,failed_claims:e.Nat32}),ve=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Pe=e.Record({neuron_id:e.Opt(o)}),Te=e.Variant({Error:m,Neuron:L}),be=e.Record({result:e.Opt(Te)}),se=e.Record({proposal_id:e.Opt(l)}),Fe=e.Variant({Error:m,Proposal:v}),we=e.Record({result:e.Opt(Fe)}),Ve=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Ce=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Ae=e.Record({controller:e.Principal,status:Ve,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:Ce,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ee=e.Record({deployed_version:e.Opt(u),pending_version:e.Opt(N)}),ke=e.Record({sns_initialization_parameters:e.Text}),Me=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(r)}),He=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),Ge=e.Record({neurons:e.Vec(L)}),qe=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(l),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Be=e.Record({proposals:e.Vec(v)}),Ue=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Xe=e.Variant({Split:w,Follow:V,DisburseMaturity:A,ClaimOrRefresh:M,Configure:P,RegisterVote:k,MakeProposal:x,StakeMaturity:Ue,RemoveNeuronPermissions:H,AddNeuronPermissions:G,MergeMaturity:te,Disburse:re}),ze=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Xe)}),We=e.Record({created_neuron_id:e.Opt(o)}),Qe=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),Ye=e.Record({refreshed_neuron_id:e.Opt(o)}),je=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Je=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ke=e.Record({transfer_block_height:e.Nat64}),$e=e.Variant({Error:m,Split:We,Follow:e.Record({}),DisburseMaturity:Qe,ClaimOrRefresh:Ye,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:se,RemoveNeuronPermission:e.Record({}),StakeMaturity:je,MergeMaturity:Je,Disburse:Ke,AddNeuronPermission:e.Record({})}),Ze=e.Record({command:e.Opt($e)}),Ie=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([ge],[xe],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_metadata:e.Func([e.Record({})],[ve],["query"]),get_nervous_system_parameters:e.Func([e.Null],[_],["query"]),get_neuron:e.Func([Pe],[be],["query"]),get_proposal:e.Func([se],[we],["query"]),get_root_canister_status:e.Func([e.Null],[Ae],[]),get_running_sns_version:e.Func([e.Record({})],[Ee],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[ke],["query"]),list_nervous_system_functions:e.Func([],[Me],["query"]),list_neurons:e.Func([He],[Ge],["query"]),list_proposals:e.Func([qe],[Be],["query"]),manage_neuron:e.Func([ze],[Ze],[]),set_mode:e.Func([Ie],[e.Record({})],[])})};var De=require("@dfinity/utils"),ne=({neuronId:{id:e},command:t})=>({subaccount:e,command:[t]}),ae=({neuronId:e,operation:t})=>ne({neuronId:e,command:{Configure:{operation:[t]}}}),it=({neuronId:e,permissions:t,principal:s})=>ne({neuronId:e,command:{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(t)}],principal_id:[s]}}}),ct=({neuronId:e,permissions:t,principal:s})=>ne({neuronId:e,command:{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(t)}],principal_id:[s]}}}),pt=({neuronId:e,amount:t})=>ne({neuronId:e,command:{Disburse:{to_account:[],amount:t===void 0?[]:[{e8s:t}]}}}),_t=e=>ae({neuronId:e,operation:{StartDissolving:{}}}),dt=e=>ae({neuronId:e,operation:{StopDissolving:{}}}),ut=({neuronId:e,percentageToStake:t})=>ne({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,De.toNullable)(t)}}}),lt=({neuronId:e,autoStake:t})=>ae({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),mt=({neuronId:e,dissolveTimestampSeconds:t})=>ae({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:t}}}),Nt=({neuronId:e,additionalDissolveDelaySeconds:t})=>ae({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),Rt=({neuronId:e,functionId:t,followees:s})=>({subaccount:e.id,command:[{Follow:{function_id:t,followees:s}}]}),Le=({subaccount:e,memo:t,controller:s})=>({subaccount:e,command:[{ClaimOrRefresh:{by:[t===void 0?{NeuronId:{}}:{MemoAndController:{memo:t,controller:(0,De.toNullable)(s)}}]}}]});var O=class{constructor(t,s,r){this.id=t;this.service=s;this.certifiedService=r;this.caller=({certified:t=!0})=>t?this.certifiedService:this.service}get canisterId(){return this.id}};var q=class extends O{constructor(){super(...arguments);this.listNeurons=async s=>{let{principal:r,limit:n,beforeNeuronId:o}=s,{neurons:c}=await this.caller(s).list_neurons({of_principal:(0,T.toNullable)(r),limit:n??100,start_page_at:(0,T.toNullable)(o)});return c};this.listNervousSystemFunctions=async s=>this.caller(s).list_nervous_system_functions();this.metadata=s=>this.caller(s).get_metadata({});this.nervousSystemParameters=s=>this.caller(s).get_nervous_system_parameters(null);this.getNeuron=async s=>{let{neuronId:r}=s,{result:n}=await this.caller(s).get_neuron({neuron_id:(0,T.toNullable)(r)}),o=(0,T.fromNullable)(n);if(o===void 0||"Error"in o)throw new y((o==null?void 0:o.Error.error_message)??"Response type not supported");return o.Neuron};this.queryNeuron=async s=>{try{return await this.getNeuron(s)}catch(r){if(r instanceof Error&&r.message.includes("No neuron for given NeuronId"))return;throw r}};this.manageNeuron=async s=>{let r=await this.caller({certified:!0}).manage_neuron(s);return this.assertManageNeuronError(r),r};this.addNeuronPermissions=async s=>{let r=it(s);await this.manageNeuron(r)};this.removeNeuronPermissions=async s=>{let r=ct(s);await this.manageNeuron(r)};this.disburse=async s=>{let r=pt(s);await this.manageNeuron(r)};this.startDissolving=async s=>{let r=_t(s);await this.manageNeuron(r)};this.stopDissolving=async s=>{let r=dt(s);await this.manageNeuron(r)};this.stakeMaturity=async({neuronId:s,percentageToStake:r})=>{ot(r??100);let n=ut({neuronId:s,percentageToStake:r});await this.manageNeuron(n)};this.autoStakeMaturity=async s=>{let r=lt(s);await this.manageNeuron(r)};this.setDissolveTimestamp=async s=>{let r=mt(s);await this.manageNeuron(r)};this.increaseDissolveDelay=async s=>{let r=Nt(s);await this.manageNeuron(r)};this.setTopicFollowees=async s=>{let r=Rt(s);await this.manageNeuron(r)};this.refreshNeuron=async s=>{let r=Le({subaccount:s.id});await this.manageNeuron(r)};this.claimNeuron=async({memo:s,controller:r,subaccount:n})=>{let o=Le({subaccount:n,memo:s,controller:r}),{command:c}=await this.manageNeuron(o),a=(0,T.fromNullable)(c);if(a===void 0)throw new y("Claim neuron failed");if("ClaimOrRefresh"in a){let i=(0,T.fromNullable)(a.ClaimOrRefresh.refreshed_neuron_id);if(i===void 0)throw new y("Claim neuron failed");return i}throw new y("Claim neuron failed")};this.assertManageNeuronError=({command:s})=>{let r=s[0];if(r!==void 0&&"Error"in r)throw new y(r.Error.error_message)}}static create(s){let{service:r,certifiedService:n,canisterId:o}=(0,T.createServices)({options:s,idlFactory:at,certifiedIdlFactory:nt});return new q(o,r,n)}};var de=require("@dfinity/utils");var ft=({IDL:e})=>{let t=e.Variant({Int:e.Int,Nat:e.Nat,Blob:e.Vec(e.Nat8),Text:e.Text}),s=e.Vec(e.Nat8),r=e.Record({owner:e.Principal,subaccount:e.Opt(s)}),n=e.Record({token_symbol:e.Text,transfer_fee:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,t)),minting_account:r,initial_balances:e.Vec(e.Tuple(r,e.Nat64)),archive_options:e.Record({num_blocks_to_archive:e.Nat64,trigger_threshold:e.Nat64,max_message_size_bytes:e.Opt(e.Nat64),cycles_for_archive_creation:e.Opt(e.Nat64),node_max_memory_size_bytes:e.Opt(e.Nat64),controller_id:e.Principal}),token_name:e.Text}),o=e.Nat,c=e.Nat64,a=e.Record({to:r,fee:e.Opt(o),memo:e.Opt(e.Vec(e.Nat8)),from_subaccount:e.Opt(s),created_at_time:e.Opt(c),amount:o}),i=e.Nat,p=e.Variant({GenericError:e.Record({message:e.Text,error_code:e.Nat}),TemporarilyUnavailable:e.Null,BadBurn:e.Record({min_burn_amount:o}),Duplicate:e.Record({duplicate_of:i}),BadFee:e.Record({expected_fee:o}),CreatedInFuture:e.Record({ledger_time:e.Nat64}),TooOld:e.Null,InsufficientFunds:e.Record({balance:o})}),_=e.Variant({Ok:i,Err:p});return e.Service({icrc1_balance_of:e.Func([r],[o],[]),icrc1_decimals:e.Func([],[e.Nat8],[]),icrc1_fee:e.Func([],[o],[]),icrc1_metadata:e.Func([],[e.Vec(e.Tuple(e.Text,t))],[]),icrc1_minting_account:e.Func([],[e.Opt(r)],[]),icrc1_name:e.Func([],[e.Text],[]),icrc1_supported_standards:e.Func([],[e.Vec(e.Record({url:e.Text,name:e.Text}))],[]),icrc1_symbol:e.Func([],[e.Text],[]),icrc1_total_supply:e.Func([],[o],[]),icrc1_transfer:e.Func([a],[_],[])})};var yt=({IDL:e})=>{let t=e.Variant({Int:e.Int,Nat:e.Nat,Blob:e.Vec(e.Nat8),Text:e.Text}),s=e.Vec(e.Nat8),r=e.Record({owner:e.Principal,subaccount:e.Opt(s)}),n=e.Record({token_symbol:e.Text,transfer_fee:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,t)),minting_account:r,initial_balances:e.Vec(e.Tuple(r,e.Nat64)),archive_options:e.Record({num_blocks_to_archive:e.Nat64,trigger_threshold:e.Nat64,max_message_size_bytes:e.Opt(e.Nat64),cycles_for_archive_creation:e.Opt(e.Nat64),node_max_memory_size_bytes:e.Opt(e.Nat64),controller_id:e.Principal}),token_name:e.Text}),o=e.Nat,c=e.Nat64,a=e.Record({to:r,fee:e.Opt(o),memo:e.Opt(e.Vec(e.Nat8)),from_subaccount:e.Opt(s),created_at_time:e.Opt(c),amount:o}),i=e.Nat,p=e.Variant({GenericError:e.Record({message:e.Text,error_code:e.Nat}),TemporarilyUnavailable:e.Null,BadBurn:e.Record({min_burn_amount:o}),Duplicate:e.Record({duplicate_of:i}),BadFee:e.Record({expected_fee:o}),CreatedInFuture:e.Record({ledger_time:e.Nat64}),TooOld:e.Null,InsufficientFunds:e.Record({balance:o})}),_=e.Variant({Ok:i,Err:p});return e.Service({icrc1_balance_of:e.Func([r],[o],["query"]),icrc1_decimals:e.Func([],[e.Nat8],["query"]),icrc1_fee:e.Func([],[o],["query"]),icrc1_metadata:e.Func([],[e.Vec(e.Tuple(e.Text,t))],["query"]),icrc1_minting_account:e.Func([],[e.Opt(r)],["query"]),icrc1_name:e.Func([],[e.Text],["query"]),icrc1_supported_standards:e.Func([],[e.Vec(e.Record({url:e.Text,name:e.Text}))],["query"]),icrc1_symbol:e.Func([],[e.Text],["query"]),icrc1_total_supply:e.Func([],[o],["query"]),icrc1_transfer:e.Func([a],[_],[])})};var ee=require("@dfinity/utils"),ht=({to:e,from_subaccount:t,fee:s,amount:r,created_at_time:n,memo:o})=>({to:e,amount:r,fee:(0,ee.toNullable)(s),memo:(0,ee.toNullable)(o),from_subaccount:(0,ee.toNullable)(t),created_at_time:(0,ee.toNullable)(n)}),Ot=({owner:e,subaccount:t})=>({owner:e,subaccount:(0,ee.toNullable)(t)});var B=class extends O{constructor(){super(...arguments);this.metadata=s=>this.caller(s).icrc1_metadata();this.transactionFee=s=>this.caller(s).icrc1_fee();this.balance=s=>this.caller({certified:s.certified}).icrc1_balance_of({owner:s.owner,subaccount:(0,de.toNullable)(s.subaccount)});this.transfer=async s=>{let r=await this.caller({certified:!0}).icrc1_transfer(ht(s));if("Err"in r)throw new oe({errorType:r.Err,msg:"Failed to transfer"});return r.Ok}}static create(s){let{service:r,certifiedService:n,canisterId:o}=(0,de.createServices)({options:s,idlFactory:yt,certifiedIdlFactory:ft});return new B(o,r,n)}};var xt=require("@dfinity/utils");var St=({IDL:e})=>{let t=e.Record({dapp_canister_ids:e.Vec(e.Principal),latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_canister_id:e.Opt(e.Principal),index_canister_id:e.Opt(e.Principal),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal)}),s=e.Record({canister_id:e.Principal}),r=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),n=e.Record({controller:e.Principal,status:r,memory_size:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),o=e.Record({update_canister_list:e.Opt(e.Bool)}),c=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),a=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),i=e.Record({controller:e.Principal,status:c,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:a,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),p=e.Record({status:e.Opt(i),canister_id:e.Opt(e.Principal)}),_=e.Record({root:e.Opt(p),swap:e.Opt(p),ledger:e.Opt(p),index:e.Opt(p),governance:e.Opt(p),dapps:e.Vec(p),archives:e.Vec(p)}),u=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),l=e.Record({canister_id:e.Opt(e.Principal)}),d=e.Record({controller_principal_ids:e.Vec(e.Principal)}),N=e.Record({code:e.Opt(e.Int32),description:e.Text}),m=e.Record({err:e.Opt(N),dapp_canister_id:e.Opt(e.Principal)}),R=e.Record({failed_updates:e.Vec(m)});return e.Service({canister_status:e.Func([s],[n],[]),get_build_metadata:e.Func([],[e.Text],[]),get_sns_canisters_summary:e.Func([o],[_],[]),list_sns_canisters:e.Func([e.Record({})],[u],[]),register_dapp_canister:e.Func([l],[e.Record({})],[]),set_dapp_controllers:e.Func([d],[R],[])})};var gt=({IDL:e})=>{let t=e.Record({dapp_canister_ids:e.Vec(e.Principal),latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_canister_id:e.Opt(e.Principal),index_canister_id:e.Opt(e.Principal),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal)}),s=e.Record({canister_id:e.Principal}),r=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),n=e.Record({controller:e.Principal,status:r,memory_size:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),o=e.Record({update_canister_list:e.Opt(e.Bool)}),c=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),a=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),i=e.Record({controller:e.Principal,status:c,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:a,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),p=e.Record({status:e.Opt(i),canister_id:e.Opt(e.Principal)}),_=e.Record({root:e.Opt(p),swap:e.Opt(p),ledger:e.Opt(p),index:e.Opt(p),governance:e.Opt(p),dapps:e.Vec(p),archives:e.Vec(p)}),u=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),l=e.Record({canister_id:e.Opt(e.Principal)}),d=e.Record({controller_principal_ids:e.Vec(e.Principal)}),N=e.Record({code:e.Opt(e.Int32),description:e.Text}),m=e.Record({err:e.Opt(N),dapp_canister_id:e.Opt(e.Principal)}),R=e.Record({failed_updates:e.Vec(m)});return e.Service({canister_status:e.Func([s],[n],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_sns_canisters_summary:e.Func([o],[_],[]),list_sns_canisters:e.Func([e.Record({})],[u],["query"]),register_dapp_canister:e.Func([l],[e.Record({})],[]),set_dapp_controllers:e.Func([d],[R],[])})};var U=class extends O{constructor(){super(...arguments);this.listSnsCanisters=async({certified:s=!0})=>this.caller({certified:s}).list_sns_canisters({})}static create(s){let{service:r,certifiedService:n,canisterId:o}=(0,xt.createServices)({options:s,idlFactory:gt,certifiedIdlFactory:St});return new U(o,r,n)}};var b=require("@dfinity/utils");var Ft=require("@dfinity/utils");var vt=({IDL:e})=>{let t=e.Record({ledger_id:e.Principal}),s=e.Nat,r=e.Record({owner:e.Principal,subaccount:e.Opt(e.Vec(e.Nat8))}),n=e.Record({max_results:e.Nat,start:e.Opt(s),account:r}),o=e.Record({burn:e.Opt(e.Record({from:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat})),kind:e.Text,mint:e.Opt(e.Record({to:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat})),timestamp:e.Nat64,transfer:e.Opt(e.Record({to:r,fee:e.Opt(e.Nat),from:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat}))}),c=e.Record({id:s,transaction:o}),a=e.Record({transactions:e.Vec(c),oldest_tx_id:e.Opt(s)}),i=e.Record({message:e.Text}),p=e.Variant({Ok:a,Err:i}),_=e.Vec(e.Nat8),u=e.Record({owner:e.Principal,start:e.Opt(_)});return e.Service({get_account_transactions:e.Func([n],[p],[]),ledger_id:e.Func([],[e.Principal],[]),list_subaccounts:e.Func([u],[e.Vec(_)],[])})};var Pt=({IDL:e})=>{let t=e.Record({ledger_id:e.Principal}),s=e.Nat,r=e.Record({owner:e.Principal,subaccount:e.Opt(e.Vec(e.Nat8))}),n=e.Record({max_results:e.Nat,start:e.Opt(s),account:r}),o=e.Record({burn:e.Opt(e.Record({from:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat})),kind:e.Text,mint:e.Opt(e.Record({to:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat})),timestamp:e.Nat64,transfer:e.Opt(e.Record({to:r,fee:e.Opt(e.Nat),from:r,memo:e.Opt(e.Vec(e.Nat8)),created_at_time:e.Opt(e.Nat64),amount:e.Nat}))}),c=e.Record({id:s,transaction:o}),a=e.Record({transactions:e.Vec(c),oldest_tx_id:e.Opt(s)}),i=e.Record({message:e.Text}),p=e.Variant({Ok:a,Err:i}),_=e.Vec(e.Nat8),u=e.Record({owner:e.Principal,start:e.Opt(_)});return e.Service({get_account_transactions:e.Func([n],[p],[]),ledger_id:e.Func([],[e.Principal],["query"]),list_subaccounts:e.Func([u],[e.Vec(_)],["query"])})};var Tt=require("@dfinity/utils");var bt=({account:e,max_results:t,start:s})=>({account:Ot(e),max_results:t,start:(0,Tt.toNullable)(s)});var ue=class extends Error{};var X=class extends O{constructor(){super(...arguments);this.getTransactions=async s=>{let r=await this.caller({certified:!0}).get_account_transactions(bt(s));if("Err"in r)throw new ue(r.Err.message);return r.Ok}}static create(s){let{service:r,certifiedService:n,canisterId:o}=(0,Ft.createServices)({options:s,idlFactory:Pt,certifiedIdlFactory:vt});return new X(o,r,n)}};var me=require("@dfinity/utils");var le=require("@dfinity/utils"),Vt=Qt(wt()),et=({index:e,controller:t})=>{let s=(0,le.asciiStringToByteArray)("neuron-stake"),r=[12,...s,...t.toUint8Array(),...(0,le.numberToUint8Array)(e)],n=Vt.sha256.create();return n.update(r),new Uint8Array(n.array())};var ie=class{constructor({root:t,governance:s,ledger:r,swap:n,index:o,certified:c}){this.listNeurons=t=>this.governance.listNeurons(this.mergeParams(t));this.listNervousSystemFunctions=t=>this.governance.listNervousSystemFunctions(this.mergeParams(t));this.metadata=t=>Promise.all([this.governance.metadata(this.mergeParams(t)),this.ledger.metadata(this.mergeParams(t))]);this.nervousSystemParameters=t=>this.governance.nervousSystemParameters(this.mergeParams(t));this.ledgerMetadata=t=>this.ledger.metadata(this.mergeParams(t));this.transactionFee=t=>this.ledger.transactionFee(this.mergeParams(t));this.balance=t=>this.ledger.balance(this.mergeParams(t));this.transfer=t=>this.ledger.transfer(t);this.getNeuron=t=>this.governance.getNeuron(this.mergeParams(t));this.queryNeuron=t=>this.governance.queryNeuron(this.mergeParams(t));this.nextNeuronAccount=async t=>{for(let s=0;s<65536;s++){let r=et({index:s,controller:t}),n={owner:this.canisterIds.governanceCanisterId,subaccount:r},o={id:r},c=await this.governance.queryNeuron({neuronId:o,certified:!1});if(c===void 0&&(c=await this.governance.queryNeuron({neuronId:o,certified:!0}),c===void 0))return{account:n,index:BigInt(s)}}throw new y("No more neuron accounts available")};this.stakeNeuron=async({stakeE8s:t,source:s,controller:r})=>{this.assertCertified("stakeNeuron");let{account:n,index:o}=await this.nextNeuronAccount(r);if(n.subaccount===void 0)throw new y("There was an error creating the neuron subaccount");return await this.ledger.transfer({amount:t,to:{owner:n.owner,subaccount:(0,me.toNullable)(n.subaccount)},from_subaccount:s.subaccount,memo:(0,me.bigIntToUint8Array)(o)}),this.governance.claimNeuron({memo:BigInt(o),controller:r,subaccount:n.subaccount})};this.getNeuronBalance=async t=>{let s={owner:this.canisterIds.governanceCanisterId,subaccount:t.id};return this.ledger.balance({...s,certified:this.certified})};this.addNeuronPermissions=t=>this.governance.addNeuronPermissions(t);this.refreshNeuron=t=>this.governance.refreshNeuron(t);this.claimNeuron=t=>this.governance.claimNeuron(t);this.removeNeuronPermissions=t=>this.governance.removeNeuronPermissions(t);this.disburse=t=>this.governance.disburse(t);this.startDissolving=t=>this.governance.startDissolving(t);this.stopDissolving=t=>this.governance.stopDissolving(t);this.setDissolveTimestamp=t=>this.governance.setDissolveTimestamp(t);this.increaseDissolveDelay=t=>this.governance.increaseDissolveDelay(t);this.setTopicFollowees=t=>this.governance.setTopicFollowees(t);this.swapState=t=>this.swap.state(this.mergeParams(t));this.notifyParticipation=t=>this.swap.notifyParticipation(t);this.getUserCommitment=t=>this.swap.getUserCommitment(this.mergeParams(t));this.getTransactions=t=>this.index.getTransactions(t);this.stakeMaturity=t=>this.governance.stakeMaturity(t);this.autoStakeMaturity=t=>this.governance.autoStakeMaturity(t);this.assertCertified=t=>{if(!this.certified)throw new y(`Call to ${t} needs to be certified`)};this.root=t,this.governance=s,this.ledger=r,this.swap=n,this.index=o,this.certified=c}get canisterIds(){return{rootCanisterId:this.root.canisterId,ledgerCanisterId:this.ledger.canisterId,governanceCanisterId:this.governance.canisterId,swapCanisterId:this.swap.canisterId}}mergeParams(t){return{...t,certified:this.certified}}};var Ne=require("@dfinity/utils");var Ct=({IDL:e})=>{let t=e.Record({sns_root_canister_id:e.Text,fallback_controller_principal_ids:e.Vec(e.Text),neuron_minimum_stake_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,sns_governance_canister_id:e.Text}),s=e.Record({source_principal_id:e.Opt(e.Principal)}),r=e.Record({block_height:e.Opt(e.Nat64)}),n=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),o=e.Variant({Ok:r,Err:n}),c=e.Record({result:e.Opt(o)}),a=e.Record({error_message:e.Text,error_type:e.Int32}),i=e.Record({governance_error:e.Opt(a)}),p=e.Record({code:e.Opt(e.Int32),description:e.Text}),_=e.Variant({Ok:i,Err:p}),u=e.Record({possibility:e.Opt(_)}),l=e.Record({err:e.Opt(p),dapp_canister_id:e.Opt(e.Principal)}),d=e.Record({failed_updates:e.Vec(l)}),N=e.Variant({Ok:d,Err:p}),m=e.Record({possibility:e.Opt(N)}),R=e.Variant({Err:p}),S=e.Record({possibility:e.Opt(R)}),f=e.Record({failure:e.Nat32,skipped:e.Nat32,success:e.Nat32}),h=e.Record({settle_community_fund_participation_result:e.Opt(u),set_dapp_controllers_result:e.Opt(m),sns_governance_normal_mode_enabled:e.Opt(S),sweep_icp:e.Opt(f),sweep_sns:e.Opt(f),create_neuron:e.Opt(f)}),W=e.Record({principal_id:e.Opt(e.Principal)}),g=e.Record({transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,transfer_success_timestamp_seconds:e.Nat64}),F=e.Record({icp:e.Opt(g)}),Q=e.Record({buyer_state:e.Opt(F)}),Y=e.Record({buyers_total:e.Nat64}),x=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),j=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),v=e.Record({controller:e.Principal,status:x,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:j,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),w=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64}),V=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),C=e.Record({buyer_principal:e.Text}),A=e.Variant({CommunityFund:V,Direct:C}),J=e.Record({sns:e.Opt(g),neuron_attributes:e.Opt(w),investor:e.Opt(A)}),$=e.Record({nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),E=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec($)}),Z=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),P=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(Z),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,max_participant_icp_e8s:e.Nat64,min_icp_e8s:e.Nat64}),k=e.Record({neuron_recipes:e.Vec(J),cf_participants:e.Vec(E),init:e.Opt(t),lifecycle:e.Int32,buyers:e.Vec(e.Tuple(e.Text,F)),params:e.Opt(P),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),I=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64}),D=e.Record({swap:e.Opt(k),derived:e.Opt(I)}),M=e.Record({cf_participants:e.Vec(E),params:e.Opt(P),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),H=e.Record({buyer:e.Text}),G=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([s],[c],[]),finalize_swap:e.Func([e.Record({})],[h],[]),get_buyer_state:e.Func([W],[Q],[]),get_buyers_total:e.Func([e.Record({})],[Y],[]),get_canister_status:e.Func([e.Record({})],[v],[]),get_state:e.Func([e.Record({})],[D],[]),open:e.Func([M],[e.Record({})],[]),refresh_buyer_tokens:e.Func([H],[G],[]),restore_dapp_controllers:e.Func([e.Record({})],[m],[])})};var At=({IDL:e})=>{let t=e.Record({sns_root_canister_id:e.Text,fallback_controller_principal_ids:e.Vec(e.Text),neuron_minimum_stake_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,sns_governance_canister_id:e.Text}),s=e.Record({source_principal_id:e.Opt(e.Principal)}),r=e.Record({block_height:e.Opt(e.Nat64)}),n=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),o=e.Variant({Ok:r,Err:n}),c=e.Record({result:e.Opt(o)}),a=e.Record({error_message:e.Text,error_type:e.Int32}),i=e.Record({governance_error:e.Opt(a)}),p=e.Record({code:e.Opt(e.Int32),description:e.Text}),_=e.Variant({Ok:i,Err:p}),u=e.Record({possibility:e.Opt(_)}),l=e.Record({err:e.Opt(p),dapp_canister_id:e.Opt(e.Principal)}),d=e.Record({failed_updates:e.Vec(l)}),N=e.Variant({Ok:d,Err:p}),m=e.Record({possibility:e.Opt(N)}),R=e.Variant({Err:p}),S=e.Record({possibility:e.Opt(R)}),f=e.Record({failure:e.Nat32,skipped:e.Nat32,success:e.Nat32}),h=e.Record({settle_community_fund_participation_result:e.Opt(u),set_dapp_controllers_result:e.Opt(m),sns_governance_normal_mode_enabled:e.Opt(S),sweep_icp:e.Opt(f),sweep_sns:e.Opt(f),create_neuron:e.Opt(f)}),W=e.Record({principal_id:e.Opt(e.Principal)}),g=e.Record({transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,transfer_success_timestamp_seconds:e.Nat64}),F=e.Record({icp:e.Opt(g)}),Q=e.Record({buyer_state:e.Opt(F)}),Y=e.Record({buyers_total:e.Nat64}),x=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),j=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),v=e.Record({controller:e.Principal,status:x,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:j,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),w=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64}),V=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),C=e.Record({buyer_principal:e.Text}),A=e.Variant({CommunityFund:V,Direct:C}),J=e.Record({sns:e.Opt(g),neuron_attributes:e.Opt(w),investor:e.Opt(A)}),$=e.Record({nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),E=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec($)}),Z=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),P=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(Z),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,max_participant_icp_e8s:e.Nat64,min_icp_e8s:e.Nat64}),k=e.Record({neuron_recipes:e.Vec(J),cf_participants:e.Vec(E),init:e.Opt(t),lifecycle:e.Int32,buyers:e.Vec(e.Tuple(e.Text,F)),params:e.Opt(P),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),I=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64}),D=e.Record({swap:e.Opt(k),derived:e.Opt(I)}),M=e.Record({cf_participants:e.Vec(E),params:e.Opt(P),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),H=e.Record({buyer:e.Text}),G=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([s],[c],[]),finalize_swap:e.Func([e.Record({})],[h],[]),get_buyer_state:e.Func([W],[Q],["query"]),get_buyers_total:e.Func([e.Record({})],[Y],[]),get_canister_status:e.Func([e.Record({})],[v],[]),get_state:e.Func([e.Record({})],[D],["query"]),open:e.Func([M],[e.Record({})],[]),refresh_buyer_tokens:e.Func([H],[G],[]),restore_dapp_controllers:e.Func([e.Record({})],[m],[])})};var z=class extends O{constructor(){super(...arguments);this.state=s=>this.caller(s).get_state({});this.notifyParticipation=async s=>{await this.caller({certified:!0}).refresh_buyer_tokens(s)};this.getUserCommitment=async s=>{let{buyer_state:r}=await this.caller({certified:s.certified}).get_buyer_state({principal_id:s.principal_id});return(0,Ne.fromNullable)(r)}}static create(s){let{service:r,certifiedService:n,canisterId:o}=(0,Ne.createServices)({options:s,idlFactory:At,certifiedIdlFactory:Ct});return new z(o,r,n)}};var Kt=async({agent:e,rootOptions:t,certified:s=!0})=>{let r=U.create({...t,agent:e}),{ledger:n,swap:o,governance:c,index:a}=await r.listSnsCanisters({certified:s}),i=(0,b.fromNullable)(c),p=(0,b.fromNullable)(n),_=(0,b.fromNullable)(o),u=(0,b.fromNullable)(a);return(0,b.assertNonNullish)(i),(0,b.assertNonNullish)(p),(0,b.assertNonNullish)(_),(0,b.assertNonNullish)(u),new ie({root:r,governance:q.create({canisterId:i,agent:e}),ledger:B.create({canisterId:p,agent:e}),swap:z.create({canisterId:_,agent:e}),index:X.create({canisterId:u,agent:e}),certified:s})};var Et=(n=>(n.SYMBOL="icrc1:symbol",n.NAME="icrc1:name",n.DECIMALS="icrc1:decimals",n.FEE="icrc1:fee",n))(Et||{});var ce=require("@dfinity/principal"),Mt=parseInt("FF",16),kt=32,$t=e=>{let t=Array.from(e);for(;t[0]===0;)t.shift();return Uint8Array.from(t)},Zt=({owner:e,subaccount:t})=>{if(t===void 0)return e.toText();let s=$t(t);if(s.length===0)return e.toText();let r=Uint8Array.from([...e.toUint8Array(),...s,s.length,Mt]);return ce.Principal.fromUint8Array(r).toText()},It=e=>{let t=ce.Principal.fromText(e),[s,r,...n]=t.toUint8Array().reverse();if(s!==Mt)return{owner:ce.Principal.fromText(e)};if(r>kt||r===0||r===void 0)throw new Error("Invalid account string");let o=n.slice(0,r);if(o[0]===0||o.length!==r)throw new Error("Invalid account string");for(;o.length<kt;)o.push(0);let c=Uint8Array.from(o.reverse()),a=n.reverse().filter((i,p)=>p<n.length-r);return{owner:ce.Principal.fromUint8Array(Uint8Array.from(a)),subaccount:c}};0&&(module.exports={SnsGovernanceCanister,SnsGovernanceError,SnsIndexCanister,SnsLedgerCanister,SnsMetadataResponseEntries,SnsNeuronPermissionType,SnsRootCanister,SnsSwapCanister,SnsSwapLifecycle,SnsTransferError,SnsWrapper,decodeSnsAccount,encodeSnsAccount,initSnsWrapper,neuronSubaccount});
2
2
  /**
3
3
  * [js-sha256]{@link https://github.com/emn178/js-sha256}
4
4
  *