@dfinity/nns 5.2.0 → 6.0.0
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 +46 -35
- package/dist/candid/genesis_token.did +1 -1
- package/dist/candid/governance.certified.idl.js +152 -10
- package/dist/candid/governance.d.ts +114 -3
- package/dist/candid/governance.did +107 -4
- package/dist/candid/governance.idl.js +152 -10
- package/dist/candid/governance_test.certified.idl.js +152 -10
- package/dist/candid/governance_test.d.ts +114 -3
- package/dist/candid/governance_test.did +107 -4
- package/dist/candid/governance_test.idl.js +152 -10
- package/dist/candid/sns_wasm.certified.idl.js +0 -13
- package/dist/candid/sns_wasm.d.ts +0 -13
- package/dist/candid/sns_wasm.did +1 -12
- package/dist/candid/sns_wasm.idl.js +0 -13
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/index.cjs.js.map +3 -3
- package/dist/esm/chunk-3GMJYFVP.js +2 -0
- package/dist/esm/chunk-3GMJYFVP.js.map +7 -0
- package/dist/esm/chunk-L6YE6E7N.js +19 -0
- package/dist/esm/chunk-L6YE6E7N.js.map +7 -0
- package/dist/esm/governance.canister.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +3 -3
- package/dist/esm/sns_wasm.canister.js +1 -1
- package/dist/types/canisters/governance/request.converters.d.ts +10 -5
- package/dist/types/canisters/governance/services.d.ts +3 -3
- package/dist/types/enums/governance.enums.d.ts +32 -6
- package/dist/types/governance.canister.d.ts +9 -2
- package/dist/types/types/governance_converters.d.ts +108 -2
- package/package.json +6 -6
- package/dist/esm/chunk-RRSEQTKA.js +0 -2
- package/dist/esm/chunk-RRSEQTKA.js.map +0 -7
- package/dist/esm/chunk-ZSTGGZGS.js +0 -19
- package/dist/esm/chunk-ZSTGGZGS.js.map +0 -7
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var tr=Object.create;var _o=Object.defineProperty;var or=Object.getOwnPropertyDescriptor;var nr=Object.getOwnPropertyNames;var rr=Object.getPrototypeOf,ar=Object.prototype.hasOwnProperty;var sr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ir=(e,t)=>{for(var o in t)_o(e,o,{get:t[o],enumerable:!0})},Wo=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of nr(t))!ar.call(e,r)&&r!==o&&_o(e,r,{get:()=>t[r],enumerable:!(n=or(t,r))||n.enumerable});return e};var cr=(e,t,o)=>(o=e!=null?tr(rr(e)):{},Wo(t||!e||!e.__esModule?_o(o,"default",{value:e,enumerable:!0}):o,e)),_r=e=>Wo(_o({},"__esModule",{value:!0}),e);var sn=sr((Ta,an)=>{an.exports=require("crypto").randomBytes});var aa={};ir(aa,{CouldNotClaimNeuronError:()=>Ie,GenesisTokenCanister:()=>uo,GovernanceCanister:()=>bo,GovernanceError:()=>Ve,GovernanceTestCanister:()=>ho,InsufficientAmountError:()=>De,NeuronState:()=>Ho,NeuronType:()=>Qo,NnsFunction:()=>$o,ProposalRewardStatus:()=>zo,ProposalStatus:()=>Xo,SnsWasmCanister:()=>xo,StakeNeuronError:()=>so,Topic:()=>jo,UnrecognizedTypeError:()=>Te,UnsupportedValueError:()=>k,Vote:()=>Jo,ineligibleNeurons:()=>er,votableNeurons:()=>na,votedNeurons:()=>ra});module.exports=_r(aa);var Ho=(s=>(s[s.Unspecified=0]="Unspecified",s[s.Locked=1]="Locked",s[s.Dissolving=2]="Dissolving",s[s.Dissolved=3]="Dissolved",s[s.Spawning=4]="Spawning",s))(Ho||{}),jo=(p=>(p[p.Unspecified=0]="Unspecified",p[p.ManageNeuron=1]="ManageNeuron",p[p.ExchangeRate=2]="ExchangeRate",p[p.NetworkEconomics=3]="NetworkEconomics",p[p.Governance=4]="Governance",p[p.NodeAdmin=5]="NodeAdmin",p[p.ParticipantManagement=6]="ParticipantManagement",p[p.SubnetManagement=7]="SubnetManagement",p[p.NetworkCanisterManagement=8]="NetworkCanisterManagement",p[p.Kyc=9]="Kyc",p[p.NodeProviderRewards=10]="NodeProviderRewards",p[p.SnsDecentralizationSale=11]="SnsDecentralizationSale",p[p.SubnetReplicaVersionManagement=12]="SubnetReplicaVersionManagement",p[p.ReplicaVersionManagement=13]="ReplicaVersionManagement",p[p.SnsAndCommunityFund=14]="SnsAndCommunityFund",p[p.ApiBoundaryNodeManagement=15]="ApiBoundaryNodeManagement",p[p.SubnetRental=16]="SubnetRental",p[p.ProtocolCanisterManagement=17]="ProtocolCanisterManagement",p[p.ServiceNervousSystemManagement=18]="ServiceNervousSystemManagement",p))(jo||{}),zo=(s=>(s[s.Unknown=0]="Unknown",s[s.AcceptVotes=1]="AcceptVotes",s[s.ReadyToSettle=2]="ReadyToSettle",s[s.Settled=3]="Settled",s[s.Ineligible=4]="Ineligible",s))(zo||{}),Xo=(c=>(c[c.Unknown=0]="Unknown",c[c.Open=1]="Open",c[c.Rejected=2]="Rejected",c[c.Accepted=3]="Accepted",c[c.Executed=4]="Executed",c[c.Failed=5]="Failed",c))(Xo||{}),Jo=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(Jo||{}),$o=(a=>(a[a.Unspecified=0]="Unspecified",a[a.CreateSubnet=1]="CreateSubnet",a[a.AddNodeToSubnet=2]="AddNodeToSubnet",a[a.NnsCanisterInstall=3]="NnsCanisterInstall",a[a.NnsCanisterUpgrade=4]="NnsCanisterUpgrade",a[a.BlessReplicaVersion=5]="BlessReplicaVersion",a[a.RecoverSubnet=6]="RecoverSubnet",a[a.UpdateConfigOfSubnet=7]="UpdateConfigOfSubnet",a[a.AssignNoid=8]="AssignNoid",a[a.NnsRootUpgrade=9]="NnsRootUpgrade",a[a.IcpXdrConversionRate=10]="IcpXdrConversionRate",a[a.UpdateSubnetReplicaVersion=11]="UpdateSubnetReplicaVersion",a[a.ClearProvisionalWhitelist=12]="ClearProvisionalWhitelist",a[a.RemoveNodesFromSubnet=13]="RemoveNodesFromSubnet",a[a.SetAuthorizedSubnetworks=14]="SetAuthorizedSubnetworks",a[a.SetFirewallConfig=15]="SetFirewallConfig",a[a.UpdateNodeOperatorConfig=16]="UpdateNodeOperatorConfig",a[a.StopOrStartNnsCanister=17]="StopOrStartNnsCanister",a[a.RemoveNodes=18]="RemoveNodes",a[a.UninstallCode=19]="UninstallCode",a[a.UpdateNodeRewardsTable=20]="UpdateNodeRewardsTable",a[a.AddOrRemoveDataCenters=21]="AddOrRemoveDataCenters",a[a.UpdateUnassignedNodesConfig=22]="UpdateUnassignedNodesConfig",a[a.RemoveNodeOperators=23]="RemoveNodeOperators",a[a.RerouteCanisterRanges=24]="RerouteCanisterRanges",a[a.AddFirewallRules=25]="AddFirewallRules",a[a.RemoveFirewallRules=26]="RemoveFirewallRules",a[a.UpdateFirewallRules=27]="UpdateFirewallRules",a[a.PrepareCanisterMigration=28]="PrepareCanisterMigration",a[a.CompleteCanisterMigration=29]="CompleteCanisterMigration",a[a.AddSnsWasm=30]="AddSnsWasm",a[a.ChangeSubnetMembership=31]="ChangeSubnetMembership",a[a.UpdateSubnetType=32]="UpdateSubnetType",a[a.ChangeSubnetTypeAssignment=33]="ChangeSubnetTypeAssignment",a[a.UpdateSnsWasmSnsSubnetIds=34]="UpdateSnsWasmSnsSubnetIds",a[a.UpdateAllowedPrincipals=35]="UpdateAllowedPrincipals",a[a.RetireReplicaVersion=36]="RetireReplicaVersion",a[a.InsertSnsWasmUpgradePathEntries=37]="InsertSnsWasmUpgradePathEntries",a[a.UpdateElectedReplicaVersions=38]="UpdateElectedReplicaVersions",a[a.BitcoinSetConfig=39]="BitcoinSetConfig",a[a.UpdateElectedHostosVersions=40]="UpdateElectedHostosVersions",a[a.UpdateNodesHostosVersion=41]="UpdateNodesHostosVersion",a[a.AddApiBoundaryNode=43]="AddApiBoundaryNode",a[a.RemoveApiBoundaryNodes=44]="RemoveApiBoundaryNodes",a[a.UpdateApiBoundaryNodesVersion=46]="UpdateApiBoundaryNodesVersion",a[a.DeployGuestosToSomeApiBoundaryNodes=47]="DeployGuestosToSomeApiBoundaryNodes",a[a.DeployGuestosToAllUnassignedNodes=48]="DeployGuestosToAllUnassignedNodes",a[a.UpdateSshReadOnlyAccessForAllUnassignedNodes=49]="UpdateSshReadOnlyAccessForAllUnassignedNodes",a[a.ReviseElectedHostosVersions=50]="ReviseElectedHostosVersions",a[a.DeployHostosToSomeNodes=51]="DeployHostosToSomeNodes",a[a.SubnetRentalRequest=52]="SubnetRentalRequest",a))($o||{}),Qo=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Seed=1]="Seed",n[n.Ect=2]="Ect",n))(Qo||{});var so=class extends Error{},Ie=class extends so{},De=class extends so{constructor(o){super();this.minimumAmount=o}},Te=class extends Error{},Ve=class extends Error{constructor(o){super();this.detail=o}},k=class extends Error{constructor(t){super("Unsupported value: "+t)}};var Lo=require("@dfinity/utils");var Yo=({IDL:e})=>{let t=e.Record({id:e.Nat64}),o=e.Variant({Ok:e.Vec(t),Err:e.Text}),n=e.Variant({Ok:e.Null,Err:e.Text}),r=e.Record({error:e.Opt(e.Text),timestamp_seconds:e.Nat64,neuron_id:e.Opt(t)}),s=e.Record({authenticated_principal_id:e.Opt(e.Principal),successfully_transferred_neurons:e.Vec(r),is_whitelisted_for_forwarding:e.Bool,has_donated:e.Bool,failed_transferred_neurons:e.Vec(r),neuron_ids:e.Vec(t),has_claimed:e.Bool,has_forwarded:e.Bool,icpts:e.Nat32}),c=e.Variant({Ok:s,Err:e.Text});return e.Service({balance:e.Func([e.Text],[e.Nat32],[]),claim_neurons:e.Func([e.Text],[o],[]),donate_account:e.Func([e.Text],[n],[]),forward_whitelisted_unclaimed_accounts:e.Func([e.Null],[n],[]),get_account:e.Func([e.Text],[c],[]),get_build_metadata:e.Func([],[e.Text],[]),len:e.Func([],[e.Nat16],[]),total:e.Func([],[e.Nat32],[])})};var Zo=({IDL:e})=>{let t=e.Record({id:e.Nat64}),o=e.Variant({Ok:e.Vec(t),Err:e.Text}),n=e.Variant({Ok:e.Null,Err:e.Text}),r=e.Record({error:e.Opt(e.Text),timestamp_seconds:e.Nat64,neuron_id:e.Opt(t)}),s=e.Record({authenticated_principal_id:e.Opt(e.Principal),successfully_transferred_neurons:e.Vec(r),is_whitelisted_for_forwarding:e.Bool,has_donated:e.Bool,failed_transferred_neurons:e.Vec(r),neuron_ids:e.Vec(t),has_claimed:e.Bool,has_forwarded:e.Bool,icpts:e.Nat32}),c=e.Variant({Ok:s,Err:e.Text});return e.Service({balance:e.Func([e.Text],[e.Nat32],["query"]),claim_neurons:e.Func([e.Text],[o],[]),donate_account:e.Func([e.Text],[n],[]),forward_whitelisted_unclaimed_accounts:e.Func([e.Null],[n],[]),get_account:e.Func([e.Text],[c],["query"]),get_build_metadata:e.Func([],[e.Text],["query"]),len:e.Func([],[e.Nat16],["query"]),total:e.Func([],[e.Nat32],["query"])})};var io=require("@dfinity/principal"),pa=io.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),po=io.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),Io=io.Principal.fromText("renrk-eyaaa-aaaaa-aaada-cai"),Do=io.Principal.fromText("r7inp-6aaaa-aaaaa-aaabq-cai");var uo=class e{constructor(t){this.service=t;this.claimNeurons=async({hexPubKey:t})=>{let o=await this.service.claim_neurons(t);if("Ok"in o)return o.Ok.map(n=>n.id);throw new Error(o.Err)}}static create(t={}){let{service:o}=(0,Lo.createServices)({options:{...t,canisterId:t.canisterId??Io},idlFactory:Zo,certifiedIdlFactory:Yo});return new e(o)}};var $n=require("@dfinity/agent"),Ce=require("@dfinity/ledger-icp"),l=require("@dfinity/utils");function dr(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function So(e,...t){if(!dr(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function To(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function en(e,t){So(e);let o=t.outputLen;if(e.length<o)throw new Error(`digestInto() expects output buffer of length at least ${o}`)}var mo=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),L=(e,t)=>e<<32-t|e>>>t;var va=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function pr(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Vo(e){return typeof e=="string"&&(e=pr(e)),So(e),e}var lo=class{clone(){return this._cloneInto()}},ga={}.toString;function tn(e){let t=n=>e().update(Vo(n)).digest(),o=e();return t.outputLen=o.outputLen,t.blockLen=o.blockLen,t.create=()=>e(),t}function ur(e,t,o,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,o,n);let r=BigInt(32),s=BigInt(4294967295),c=Number(o>>r&s),_=Number(o&s),d=n?4:0,N=n?0:4;e.setUint32(t+d,c,n),e.setUint32(t+N,_,n)}var on=(e,t,o)=>e&t^~e&o,nn=(e,t,o)=>e&t^e&o^t&o,No=class extends lo{constructor(t,o,n,r){super(),this.blockLen=t,this.outputLen=o,this.padOffset=n,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=mo(this.buffer)}update(t){To(this);let{view:o,buffer:n,blockLen:r}=this;t=Vo(t);let s=t.length;for(let c=0;c<s;){let _=Math.min(r-this.pos,s-c);if(_===r){let d=mo(t);for(;r<=s-c;c+=r)this.process(d,c);continue}n.set(t.subarray(c,c+_),this.pos),this.pos+=_,c+=_,this.pos===r&&(this.process(o,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){To(this),en(t,this),this.finished=!0;let{buffer:o,view:n,blockLen:r,isLE:s}=this,{pos:c}=this;o[c++]=128,this.buffer.subarray(c).fill(0),this.padOffset>r-c&&(this.process(n,0),c=0);for(let u=c;u<r;u++)o[u]=0;ur(n,r-8,BigInt(this.length*8),s),this.process(n,0);let _=mo(t),d=this.outputLen;if(d%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let N=d/4,R=this.get();if(N>R.length)throw new Error("_sha2: outputLen bigger than state");for(let u=0;u<N;u++)_.setUint32(4*u,R[u],s)}digest(){let{buffer:t,outputLen:o}=this;this.digestInto(t);let n=t.slice(0,o);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:o,buffer:n,length:r,finished:s,destroyed:c,pos:_}=this;return t.length=r,t.pos=_,t.finished=s,t.destroyed=c,r%o&&t.buffer.set(n),t}};var lr=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),$e=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Qe=new Uint32Array(64),Po=class extends No{constructor(){super(64,32,8,!1),this.A=$e[0]|0,this.B=$e[1]|0,this.C=$e[2]|0,this.D=$e[3]|0,this.E=$e[4]|0,this.F=$e[5]|0,this.G=$e[6]|0,this.H=$e[7]|0}get(){let{A:t,B:o,C:n,D:r,E:s,F:c,G:_,H:d}=this;return[t,o,n,r,s,c,_,d]}set(t,o,n,r,s,c,_,d){this.A=t|0,this.B=o|0,this.C=n|0,this.D=r|0,this.E=s|0,this.F=c|0,this.G=_|0,this.H=d|0}process(t,o){for(let u=0;u<16;u++,o+=4)Qe[u]=t.getUint32(o,!1);for(let u=16;u<64;u++){let w=Qe[u-15],x=Qe[u-2],G=L(w,7)^L(w,18)^w>>>3,B=L(x,17)^L(x,19)^x>>>10;Qe[u]=B+Qe[u-7]+G+Qe[u-16]|0}let{A:n,B:r,C:s,D:c,E:_,F:d,G:N,H:R}=this;for(let u=0;u<64;u++){let w=L(_,6)^L(_,11)^L(_,25),x=R+w+on(_,d,N)+lr[u]+Qe[u]|0,B=(L(n,2)^L(n,13)^L(n,22))+nn(n,r,s)|0;R=N,N=d,d=_,_=c+x|0,c=s,s=r,r=n,n=x+B|0}n=n+this.A|0,r=r+this.B|0,s=s+this.C|0,c=c+this.D|0,_=_+this.E|0,d=d+this.F|0,N=N+this.G|0,R=R+this.H|0,this.set(n,r,s,c,_,d,N,R)}roundClean(){Qe.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var rn=tn(()=>new Po);var Ko=cr(sn());var cn=({IDL:e})=>{let t=e.Rec(),o=e.Record({id:e.Nat64}),n=e.Record({followees:e.Vec(o)}),r=e.Record({name:e.Text,description:e.Opt(e.Text)}),s=e.Record({id:e.Opt(o),known_neuron_data:e.Opt(r)}),c=e.Record({percentage_to_spawn:e.Opt(e.Nat32),new_controller:e.Opt(e.Principal),nonce:e.Opt(e.Nat64)}),_=e.Record({amount_e8s:e.Nat64}),d=e.Record({topic:e.Int32,followees:e.Vec(o)}),N=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),R=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:N,Memo:e.Nat64}),u=e.Record({by:e.Opt(R)}),w=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),x=e.Record({new_hot_key:e.Opt(e.Principal)}),G=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),B=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),Q=e.Variant({RemoveHotKey:w,AddHotKey:x,ChangeAutoStakeMaturity:G,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:B,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:ne}),K=e.Record({operation:e.Opt(Q)}),p=e.Record({vote:e.Int32,proposal:e.Opt(o)}),U=e.Record({source_neuron_id:e.Opt(o)}),W=e.Record({dissolve_delay_seconds:e.Nat64,kyc_verified:e.Bool,amount_e8s:e.Nat64,new_controller:e.Opt(e.Principal),nonce:e.Nat64}),re=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),H=e.Record({percentage_to_merge:e.Nat32}),S=e.Record({hash:e.Vec(e.Nat8)}),ae=e.Record({e8s:e.Nat64}),j=e.Record({to_account:e.Opt(S),amount:e.Opt(ae)}),se=e.Variant({Spawn:c,Split:_,Follow:d,ClaimOrRefresh:u,Configure:K,RegisterVote:p,Merge:U,DisburseToNeuron:W,MakeProposal:t,StakeMaturity:re,MergeMaturity:H,Disburse:j}),C=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:o}),V=e.Record({id:e.Opt(o),command:e.Opt(se),neuron_id_or_subaccount:e.Opt(C)}),g=e.Record({basis_points:e.Opt(e.Nat64)}),f=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),ie=e.Record({reward_rate_transition_duration:e.Opt(f),initial_reward_rate:e.Opt(g),final_reward_rate:e.Opt(g)}),h=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(g),neuron_maximum_age_for_age_bonus:e.Opt(f),neuron_maximum_dissolve_delay:e.Opt(f),neuron_minimum_dissolve_delay_to_vote:e.Opt(f),neuron_maximum_age_bonus:e.Opt(g),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(f),proposal_initial_voting_period:e.Opt(f),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(ie)}),z=e.Record({base64_encoding:e.Opt(e.Text)}),ce=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(z),token_name:e.Opt(e.Text)}),_e=e.Record({id:e.Opt(e.Principal)}),de=e.Record({dissolve_delay_interval:e.Opt(f),count:e.Opt(e.Nat64)}),pe=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),ue=e.Record({iso_codes:e.Vec(e.Text)}),le=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(f),neuron_basket_construction_parameters:e.Opt(de),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(m),minimum_icp:e.Opt(m),minimum_direct_participation_icp:e.Opt(m),minimum_participant_icp:e.Opt(m),start_time:e.Opt(pe),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(ue)}),X=e.Record({total:e.Opt(m)}),me=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(f),memo:e.Opt(e.Nat64),vesting_period:e.Opt(f),stake:e.Opt(m)}),Ne=e.Record({developer_neurons:e.Vec(me)}),Oe=e.Record({treasury_distribution:e.Opt(X),developer_distribution:e.Opt(Ne),swap_distribution:e.Opt(X)}),fe=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(h),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(z),name:e.Opt(e.Text),ledger_parameters:e.Opt(ce),description:e.Opt(e.Text),dapp_canisters:e.Vec(_e),swap_parameters:e.Opt(le),initial_token_distribution:e.Opt(Oe)}),Re=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),v=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(S)}),ve=e.Record({dissolve_delay_seconds:e.Nat64}),ge=e.Record({to_account:e.Opt(S)}),a=e.Variant({RewardToNeuron:ve,RewardToAccount:ge}),M=e.Record({node_provider:e.Opt(v),reward_mode:e.Opt(a),amount_e8s:e.Nat64}),we=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),ye=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(we),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,sale_delay_seconds:e.Opt(e.Nat64),max_participant_icp_e8s:e.Nat64,min_direct_participation_icp_e8s:e.Opt(e.Nat64),min_icp_e8s:e.Nat64,max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),be=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(ye)}),he=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),ke=e.Record({open_time_window:e.Opt(he)}),xe=e.Record({request:e.Opt(ke),swap_canister_id:e.Opt(e.Principal)}),Se=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n))}),Me=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(M)}),F=e.Record({human_readable:e.Opt(e.Text)}),Le=e.Record({contribution_threshold_xdr:e.Opt(F),one_third_participation_milestone_xdr:e.Opt(F),full_participation_milestone_xdr:e.Opt(F)}),et=e.Record({maximum_icp_xdr_rate:e.Opt(g),neurons_fund_matched_funding_curve_coefficients:e.Opt(Le),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(F),minimum_icp_xdr_rate:e.Opt(g)}),Y=e.Record({neuron_minimum_stake_e8s:e.Nat64,max_proposals_to_keep_per_topic:e.Nat32,neuron_management_fee_per_proposal_e8s:e.Nat64,reject_cost_e8s:e.Nat64,transaction_fee_e8s:e.Nat64,neuron_spawn_dissolve_delay_seconds:e.Nat64,minimum_icp_xdr_rate:e.Nat64,maximum_node_provider_rewards_e8s:e.Nat64,neurons_fund_economics:e.Opt(et)}),tt=e.Record({principals:e.Vec(e.Principal)}),ot=e.Variant({ToRemove:v,ToAdd:v}),nt=e.Record({change:e.Opt(ot)}),rt=e.Record({motion_text:e.Text}),at=e.Variant({RegisterKnownNeuron:s,ManageNeuron:V,CreateServiceNervousSystem:fe,ExecuteNnsFunction:Re,RewardNodeProvider:M,OpenSnsTokenSwap:be,SetSnsTokenSwapOpenTimeWindow:xe,SetDefaultFollowees:Se,RewardNodeProviders:Me,ManageNetworkEconomics:Y,ApproveGenesisKyc:tt,AddOrRemoveNodeProvider:nt,Motion:rt});t.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(at),summary:e.Text}));let st=e.Record({proposal:e.Opt(t),caller:e.Opt(e.Principal),proposer_id:e.Opt(o)}),Fe=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),Ae=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(v),timestamp:e.Nat64,rewards:e.Vec(M),xdr_conversion_rate:e.Opt(Fe),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),it=e.Record({total_maturity_e8s_equivalent:e.Opt(e.Nat64),maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_e8s:e.Opt(e.Nat64),count:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Opt(e.Nat64),staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),staked_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_voting_power:e.Opt(e.Nat64),count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64))}),qe=e.Record({total_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,garbage_collectable_neurons_count:e.Nat64,dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),ect_neuron_count:e.Nat64,total_supply_icp:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,community_fund_total_maturity_e8s_equivalent:e.Nat64,total_staked_e8s_seed:e.Nat64,total_staked_maturity_e8s_equivalent_ect:e.Nat64,total_staked_e8s:e.Nat64,not_dissolving_neurons_count:e.Nat64,total_locked_e8s:e.Nat64,neurons_fund_total_active_neurons:e.Nat64,total_voting_power_non_self_authenticating_controller:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_e8s_ect:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,dissolved_neurons_e8s:e.Nat64,total_staked_e8s_non_self_authenticating_controller:e.Opt(e.Nat64),dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),non_self_authenticating_controller_neuron_subset_metrics:e.Opt(it),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_maturity_e8s_equivalent_seed:e.Nat64,community_fund_total_staked_e8s:e.Nat64,not_dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),ct=e.Record({count:e.Opt(e.Nat64),previous_total_stake_e8s:e.Opt(e.Nat64),current_total_stake_e8s:e.Opt(e.Nat64),group_type:e.Int32}),Ee=e.Record({groups:e.Vec(ct),timestamp_seconds:e.Opt(e.Nat64)}),Be=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),day_after_genesis:e.Nat64,actual_timestamp_seconds:e.Nat64,total_available_e8s_equivalent:e.Nat64,latest_round_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,settled_proposals:e.Vec(o)}),Ge=e.Record({to_subaccount:e.Vec(e.Nat8),neuron_stake_e8s:e.Nat64,from:e.Opt(e.Principal),memo:e.Nat64,from_subaccount:e.Vec(e.Nat8),transfer_timestamp:e.Nat64,block_height:e.Nat64}),_t=e.Record({followers:e.Vec(o)}),dt=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,_t))}),pt=e.Variant({LastNeuronId:o}),Ke=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(pt)}),ut=e.Record({neuron_indexes_migration:e.Opt(Ke),copy_inactive_neurons_to_stable_memory_migration:e.Opt(Ke)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),lt=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),mt=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(lt)}),Ue=e.Record({vote:e.Int32,voting_power:e.Nat64}),Nt=e.Record({min_participant_icp_e8s:e.Opt(e.Nat64),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),Ot=e.Record({hotkey_principal:e.Opt(e.Principal),is_capped:e.Opt(e.Bool),maturity_equivalent_icp_e8s:e.Opt(e.Nat64),nns_neuron_id:e.Opt(o),amount_icp_e8s:e.Opt(e.Nat64)}),Z=e.Record({neurons_fund_neuron_portions:e.Vec(Ot)}),ft=e.Record({serialized_representation:e.Opt(e.Text)}),A=e.Record({total_maturity_equivalent_icp_e8s:e.Opt(e.Nat64),intended_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),swap_participation_limits:e.Opt(Nt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(Z),ideal_matched_participation_function:e.Opt(ft),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),Rt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(Z)}),vt=e.Record({status:e.Opt(e.Int32),freezing_threshold:e.Opt(e.Nat64),controllers:e.Vec(e.Principal),memory_size:e.Opt(e.Nat64),cycles:e.Opt(e.Nat64),idle_cycles_burned_per_day:e.Opt(e.Nat64),module_hash:e.Vec(e.Nat8)}),y=e.Record({status:e.Opt(vt),canister_id:e.Opt(e.Principal)}),gt=e.Record({ledger_index_canister_summary:e.Opt(y),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(y),ledger_canister_summary:e.Opt(y),swap_canister_summary:e.Opt(y),governance_canister_summary:e.Opt(y),root_canister_summary:e.Opt(y),dapp_canister_summaries:e.Vec(y)}),We=e.Record({swap_background_information:e.Opt(gt)}),He=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),wt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),yt=e.Record({id:e.Opt(o),failure_reason:e.Opt(O),cf_participants:e.Vec(mt),ballots:e.Vec(e.Tuple(e.Nat64,Ue)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(Rt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(We),latest_tally:e.Opt(He),sns_token_swap_lifecycle:e.Opt(e.Int32),decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(wt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),bt=e.Variant({Spawn:o,Split:_,Configure:K,Merge:U,DisburseToNeuron:W,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:u,MergeMaturity:H,Disburse:j}),ht=e.Record({command:e.Opt(bt),timestamp:e.Nat64}),je=e.Record({vote:e.Int32,proposal_id:e.Opt(o)}),kt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),T=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(je),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(kt),followees:e.Vec(e.Tuple(e.Int32,n)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(Ge),known_neuron_data:e.Opt(r),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),Uo=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n)),making_sns_proposal:e.Opt(st),most_recent_monthly_node_provider_rewards:e.Opt(Ae),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(qe),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(v),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(Y),restore_aging_summary:e.Opt(Ee),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Be),to_claim_transfers:e.Vec(Ge),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,dt)),migrations:e.Opt(ut),proposals:e.Vec(e.Tuple(e.Nat64,yt)),xdr_conversion_rate:e.Opt(Fe),in_flight_commands:e.Vec(e.Tuple(e.Nat64,ht)),neurons:e.Vec(e.Tuple(e.Nat64,T)),genesis_timestamp_seconds:e.Nat64}),q=e.Variant({Ok:e.Null,Err:O}),xt=e.Variant({Error:O,NeuronId:o}),St=e.Record({result:e.Opt(xt)}),ze=e.Variant({Ok:T,Err:O}),Tt=e.Variant({Ok:qe,Err:O}),Vt=e.Variant({Ok:Me,Err:O}),E=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(je),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,known_neuron_data:e.Opt(r),voting_power:e.Nat64,age_seconds:e.Nat64}),Xe=e.Variant({Ok:E,Err:O}),Pt=e.Record({nns_proposal_id:e.Opt(o)}),Ct=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(Z)}),Mt=e.Record({neurons_fund_audit_info:e.Opt(Ct)}),Ft=e.Variant({Ok:Mt,Err:O}),At=e.Record({result:e.Opt(Ft)}),qt=e.Variant({Ok:v,Err:O}),I=e.Record({id:e.Opt(o),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,Ue)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,deadline_timestamp_seconds:e.Opt(e.Nat64),failed_timestamp_seconds:e.Nat64,reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(We),latest_tally:e.Opt(He),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),executed_timestamp_seconds:e.Nat64}),Et=e.Record({known_neurons:e.Vec(s)}),Bt=e.Record({neuron_ids:e.Vec(e.Nat64),include_empty_neurons_readable_by_caller:e.Opt(e.Bool),include_neurons_readable_by_caller:e.Bool}),Gt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,E)),full_neurons:e.Vec(T)}),Kt=e.Record({node_providers:e.Vec(v)}),Ut=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(o),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),Wt=e.Record({proposal_info:e.Vec(I)}),D=e.Record({created_neuron_id:e.Opt(o)}),Ht=e.Record({refreshed_neuron_id:e.Opt(o)}),jt=e.Record({target_neuron:e.Opt(T),source_neuron:e.Opt(T),target_neuron_info:e.Opt(E),source_neuron_info:e.Opt(E)}),zt=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(o)}),Xt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Jt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),$t=e.Record({transfer_block_height:e.Nat64}),Qt=e.Variant({Error:O,Spawn:D,Split:D,Follow:e.Record({}),ClaimOrRefresh:Ht,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:jt,DisburseToNeuron:D,MakeProposal:zt,StakeMaturity:Xt,MergeMaturity:Jt,Disburse:$t}),Je=e.Record({command:e.Opt(Qt)}),Yt=e.Record({total_direct_contribution_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_contribution_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),Zt=e.Variant({Committed:Yt,Aborted:e.Record({})}),It=e.Record({result:e.Opt(Zt),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Dt=e.Record({total_direct_participation_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),Lt=e.Variant({Committed:Dt,Aborted:e.Record({})}),eo=e.Record({result:e.Opt(Lt),nns_proposal_id:e.Opt(e.Nat64)}),to=e.Record({hotkey_principal:e.Opt(e.Text),is_capped:e.Opt(e.Bool),nns_neuron_id:e.Opt(e.Nat64),amount_icp_e8s:e.Opt(e.Nat64)}),oo=e.Record({neurons_fund_neuron_portions:e.Vec(to)}),no=e.Variant({Ok:oo,Err:O}),ro=e.Record({result:e.Opt(no)}),ao=e.Record({reward_account:e.Opt(S)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(o)],[q],[]),claim_or_refresh_neuron_from_account:e.Func([N],[St],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[ze],[]),get_full_neuron_by_id_or_subaccount:e.Func([C],[ze],[]),get_latest_reward_event:e.Func([],[Be],[]),get_metrics:e.Func([],[Tt],[]),get_monthly_node_provider_rewards:e.Func([],[Vt],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(Ae)],[]),get_network_economics_parameters:e.Func([],[Y],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[Xe],[]),get_neuron_info_by_id_or_subaccount:e.Func([C],[Xe],[]),get_neurons_fund_audit_info:e.Func([Pt],[At],[]),get_node_provider_by_caller:e.Func([e.Null],[qt],[]),get_pending_proposals:e.Func([],[e.Vec(I)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(I)],[]),get_restore_aging_summary:e.Func([],[Ee],[]),list_known_neurons:e.Func([],[Et],[]),list_neurons:e.Func([Bt],[Gt],[]),list_node_providers:e.Func([],[Kt],[]),list_proposals:e.Func([Ut],[Wt],[]),manage_neuron:e.Func([V],[Je],[]),settle_community_fund_participation:e.Func([It],[q],[]),settle_neurons_fund_participation:e.Func([eo],[ro],[]),simulate_manage_neuron:e.Func([V],[Je],[]),transfer_gtc_neuron:e.Func([o,o],[q],[]),update_node_provider:e.Func([ao],[q],[])})};var Oo=({IDL:e})=>{let t=e.Rec(),o=e.Record({id:e.Nat64}),n=e.Record({followees:e.Vec(o)}),r=e.Record({name:e.Text,description:e.Opt(e.Text)}),s=e.Record({id:e.Opt(o),known_neuron_data:e.Opt(r)}),c=e.Record({percentage_to_spawn:e.Opt(e.Nat32),new_controller:e.Opt(e.Principal),nonce:e.Opt(e.Nat64)}),_=e.Record({amount_e8s:e.Nat64}),d=e.Record({topic:e.Int32,followees:e.Vec(o)}),N=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),R=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:N,Memo:e.Nat64}),u=e.Record({by:e.Opt(R)}),w=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),x=e.Record({new_hot_key:e.Opt(e.Principal)}),G=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),B=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),Q=e.Variant({RemoveHotKey:w,AddHotKey:x,ChangeAutoStakeMaturity:G,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:B,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:ne}),K=e.Record({operation:e.Opt(Q)}),p=e.Record({vote:e.Int32,proposal:e.Opt(o)}),U=e.Record({source_neuron_id:e.Opt(o)}),W=e.Record({dissolve_delay_seconds:e.Nat64,kyc_verified:e.Bool,amount_e8s:e.Nat64,new_controller:e.Opt(e.Principal),nonce:e.Nat64}),re=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),H=e.Record({percentage_to_merge:e.Nat32}),S=e.Record({hash:e.Vec(e.Nat8)}),ae=e.Record({e8s:e.Nat64}),j=e.Record({to_account:e.Opt(S),amount:e.Opt(ae)}),se=e.Variant({Spawn:c,Split:_,Follow:d,ClaimOrRefresh:u,Configure:K,RegisterVote:p,Merge:U,DisburseToNeuron:W,MakeProposal:t,StakeMaturity:re,MergeMaturity:H,Disburse:j}),C=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:o}),V=e.Record({id:e.Opt(o),command:e.Opt(se),neuron_id_or_subaccount:e.Opt(C)}),g=e.Record({basis_points:e.Opt(e.Nat64)}),f=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),ie=e.Record({reward_rate_transition_duration:e.Opt(f),initial_reward_rate:e.Opt(g),final_reward_rate:e.Opt(g)}),h=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(g),neuron_maximum_age_for_age_bonus:e.Opt(f),neuron_maximum_dissolve_delay:e.Opt(f),neuron_minimum_dissolve_delay_to_vote:e.Opt(f),neuron_maximum_age_bonus:e.Opt(g),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(f),proposal_initial_voting_period:e.Opt(f),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(ie)}),z=e.Record({base64_encoding:e.Opt(e.Text)}),ce=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(z),token_name:e.Opt(e.Text)}),_e=e.Record({id:e.Opt(e.Principal)}),de=e.Record({dissolve_delay_interval:e.Opt(f),count:e.Opt(e.Nat64)}),pe=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),ue=e.Record({iso_codes:e.Vec(e.Text)}),le=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(f),neuron_basket_construction_parameters:e.Opt(de),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(m),minimum_icp:e.Opt(m),minimum_direct_participation_icp:e.Opt(m),minimum_participant_icp:e.Opt(m),start_time:e.Opt(pe),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(ue)}),X=e.Record({total:e.Opt(m)}),me=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(f),memo:e.Opt(e.Nat64),vesting_period:e.Opt(f),stake:e.Opt(m)}),Ne=e.Record({developer_neurons:e.Vec(me)}),Oe=e.Record({treasury_distribution:e.Opt(X),developer_distribution:e.Opt(Ne),swap_distribution:e.Opt(X)}),fe=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(h),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(z),name:e.Opt(e.Text),ledger_parameters:e.Opt(ce),description:e.Opt(e.Text),dapp_canisters:e.Vec(_e),swap_parameters:e.Opt(le),initial_token_distribution:e.Opt(Oe)}),Re=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),v=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(S)}),ve=e.Record({dissolve_delay_seconds:e.Nat64}),ge=e.Record({to_account:e.Opt(S)}),a=e.Variant({RewardToNeuron:ve,RewardToAccount:ge}),M=e.Record({node_provider:e.Opt(v),reward_mode:e.Opt(a),amount_e8s:e.Nat64}),we=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),ye=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(we),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,sale_delay_seconds:e.Opt(e.Nat64),max_participant_icp_e8s:e.Nat64,min_direct_participation_icp_e8s:e.Opt(e.Nat64),min_icp_e8s:e.Nat64,max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),be=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(ye)}),he=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),ke=e.Record({open_time_window:e.Opt(he)}),xe=e.Record({request:e.Opt(ke),swap_canister_id:e.Opt(e.Principal)}),Se=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n))}),Me=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(M)}),F=e.Record({human_readable:e.Opt(e.Text)}),Le=e.Record({contribution_threshold_xdr:e.Opt(F),one_third_participation_milestone_xdr:e.Opt(F),full_participation_milestone_xdr:e.Opt(F)}),et=e.Record({maximum_icp_xdr_rate:e.Opt(g),neurons_fund_matched_funding_curve_coefficients:e.Opt(Le),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(F),minimum_icp_xdr_rate:e.Opt(g)}),Y=e.Record({neuron_minimum_stake_e8s:e.Nat64,max_proposals_to_keep_per_topic:e.Nat32,neuron_management_fee_per_proposal_e8s:e.Nat64,reject_cost_e8s:e.Nat64,transaction_fee_e8s:e.Nat64,neuron_spawn_dissolve_delay_seconds:e.Nat64,minimum_icp_xdr_rate:e.Nat64,maximum_node_provider_rewards_e8s:e.Nat64,neurons_fund_economics:e.Opt(et)}),tt=e.Record({principals:e.Vec(e.Principal)}),ot=e.Variant({ToRemove:v,ToAdd:v}),nt=e.Record({change:e.Opt(ot)}),rt=e.Record({motion_text:e.Text}),at=e.Variant({RegisterKnownNeuron:s,ManageNeuron:V,CreateServiceNervousSystem:fe,ExecuteNnsFunction:Re,RewardNodeProvider:M,OpenSnsTokenSwap:be,SetSnsTokenSwapOpenTimeWindow:xe,SetDefaultFollowees:Se,RewardNodeProviders:Me,ManageNetworkEconomics:Y,ApproveGenesisKyc:tt,AddOrRemoveNodeProvider:nt,Motion:rt});t.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(at),summary:e.Text}));let st=e.Record({proposal:e.Opt(t),caller:e.Opt(e.Principal),proposer_id:e.Opt(o)}),Fe=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),Ae=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(v),timestamp:e.Nat64,rewards:e.Vec(M),xdr_conversion_rate:e.Opt(Fe),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),it=e.Record({total_maturity_e8s_equivalent:e.Opt(e.Nat64),maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_e8s:e.Opt(e.Nat64),count:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Opt(e.Nat64),staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),staked_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_voting_power:e.Opt(e.Nat64),count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64))}),qe=e.Record({total_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,garbage_collectable_neurons_count:e.Nat64,dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),ect_neuron_count:e.Nat64,total_supply_icp:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,community_fund_total_maturity_e8s_equivalent:e.Nat64,total_staked_e8s_seed:e.Nat64,total_staked_maturity_e8s_equivalent_ect:e.Nat64,total_staked_e8s:e.Nat64,not_dissolving_neurons_count:e.Nat64,total_locked_e8s:e.Nat64,neurons_fund_total_active_neurons:e.Nat64,total_voting_power_non_self_authenticating_controller:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_e8s_ect:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,dissolved_neurons_e8s:e.Nat64,total_staked_e8s_non_self_authenticating_controller:e.Opt(e.Nat64),dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),non_self_authenticating_controller_neuron_subset_metrics:e.Opt(it),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_maturity_e8s_equivalent_seed:e.Nat64,community_fund_total_staked_e8s:e.Nat64,not_dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),ct=e.Record({count:e.Opt(e.Nat64),previous_total_stake_e8s:e.Opt(e.Nat64),current_total_stake_e8s:e.Opt(e.Nat64),group_type:e.Int32}),Ee=e.Record({groups:e.Vec(ct),timestamp_seconds:e.Opt(e.Nat64)}),Be=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),day_after_genesis:e.Nat64,actual_timestamp_seconds:e.Nat64,total_available_e8s_equivalent:e.Nat64,latest_round_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,settled_proposals:e.Vec(o)}),Ge=e.Record({to_subaccount:e.Vec(e.Nat8),neuron_stake_e8s:e.Nat64,from:e.Opt(e.Principal),memo:e.Nat64,from_subaccount:e.Vec(e.Nat8),transfer_timestamp:e.Nat64,block_height:e.Nat64}),_t=e.Record({followers:e.Vec(o)}),dt=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,_t))}),pt=e.Variant({LastNeuronId:o}),Ke=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(pt)}),ut=e.Record({neuron_indexes_migration:e.Opt(Ke),copy_inactive_neurons_to_stable_memory_migration:e.Opt(Ke)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),lt=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),mt=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(lt)}),Ue=e.Record({vote:e.Int32,voting_power:e.Nat64}),Nt=e.Record({min_participant_icp_e8s:e.Opt(e.Nat64),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),Ot=e.Record({hotkey_principal:e.Opt(e.Principal),is_capped:e.Opt(e.Bool),maturity_equivalent_icp_e8s:e.Opt(e.Nat64),nns_neuron_id:e.Opt(o),amount_icp_e8s:e.Opt(e.Nat64)}),Z=e.Record({neurons_fund_neuron_portions:e.Vec(Ot)}),ft=e.Record({serialized_representation:e.Opt(e.Text)}),A=e.Record({total_maturity_equivalent_icp_e8s:e.Opt(e.Nat64),intended_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),swap_participation_limits:e.Opt(Nt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(Z),ideal_matched_participation_function:e.Opt(ft),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),Rt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(Z)}),vt=e.Record({status:e.Opt(e.Int32),freezing_threshold:e.Opt(e.Nat64),controllers:e.Vec(e.Principal),memory_size:e.Opt(e.Nat64),cycles:e.Opt(e.Nat64),idle_cycles_burned_per_day:e.Opt(e.Nat64),module_hash:e.Vec(e.Nat8)}),y=e.Record({status:e.Opt(vt),canister_id:e.Opt(e.Principal)}),gt=e.Record({ledger_index_canister_summary:e.Opt(y),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(y),ledger_canister_summary:e.Opt(y),swap_canister_summary:e.Opt(y),governance_canister_summary:e.Opt(y),root_canister_summary:e.Opt(y),dapp_canister_summaries:e.Vec(y)}),We=e.Record({swap_background_information:e.Opt(gt)}),He=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),wt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),yt=e.Record({id:e.Opt(o),failure_reason:e.Opt(O),cf_participants:e.Vec(mt),ballots:e.Vec(e.Tuple(e.Nat64,Ue)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(Rt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(We),latest_tally:e.Opt(He),sns_token_swap_lifecycle:e.Opt(e.Int32),decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(wt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),bt=e.Variant({Spawn:o,Split:_,Configure:K,Merge:U,DisburseToNeuron:W,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:u,MergeMaturity:H,Disburse:j}),ht=e.Record({command:e.Opt(bt),timestamp:e.Nat64}),je=e.Record({vote:e.Int32,proposal_id:e.Opt(o)}),kt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),T=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(je),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(kt),followees:e.Vec(e.Tuple(e.Int32,n)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(Ge),known_neuron_data:e.Opt(r),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),Uo=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n)),making_sns_proposal:e.Opt(st),most_recent_monthly_node_provider_rewards:e.Opt(Ae),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(qe),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(v),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(Y),restore_aging_summary:e.Opt(Ee),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Be),to_claim_transfers:e.Vec(Ge),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,dt)),migrations:e.Opt(ut),proposals:e.Vec(e.Tuple(e.Nat64,yt)),xdr_conversion_rate:e.Opt(Fe),in_flight_commands:e.Vec(e.Tuple(e.Nat64,ht)),neurons:e.Vec(e.Tuple(e.Nat64,T)),genesis_timestamp_seconds:e.Nat64}),q=e.Variant({Ok:e.Null,Err:O}),xt=e.Variant({Error:O,NeuronId:o}),St=e.Record({result:e.Opt(xt)}),ze=e.Variant({Ok:T,Err:O}),Tt=e.Variant({Ok:qe,Err:O}),Vt=e.Variant({Ok:Me,Err:O}),E=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(je),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,known_neuron_data:e.Opt(r),voting_power:e.Nat64,age_seconds:e.Nat64}),Xe=e.Variant({Ok:E,Err:O}),Pt=e.Record({nns_proposal_id:e.Opt(o)}),Ct=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(Z)}),Mt=e.Record({neurons_fund_audit_info:e.Opt(Ct)}),Ft=e.Variant({Ok:Mt,Err:O}),At=e.Record({result:e.Opt(Ft)}),qt=e.Variant({Ok:v,Err:O}),I=e.Record({id:e.Opt(o),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,Ue)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,deadline_timestamp_seconds:e.Opt(e.Nat64),failed_timestamp_seconds:e.Nat64,reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(We),latest_tally:e.Opt(He),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),executed_timestamp_seconds:e.Nat64}),Et=e.Record({known_neurons:e.Vec(s)}),Bt=e.Record({neuron_ids:e.Vec(e.Nat64),include_empty_neurons_readable_by_caller:e.Opt(e.Bool),include_neurons_readable_by_caller:e.Bool}),Gt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,E)),full_neurons:e.Vec(T)}),Kt=e.Record({node_providers:e.Vec(v)}),Ut=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(o),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),Wt=e.Record({proposal_info:e.Vec(I)}),D=e.Record({created_neuron_id:e.Opt(o)}),Ht=e.Record({refreshed_neuron_id:e.Opt(o)}),jt=e.Record({target_neuron:e.Opt(T),source_neuron:e.Opt(T),target_neuron_info:e.Opt(E),source_neuron_info:e.Opt(E)}),zt=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(o)}),Xt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Jt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),$t=e.Record({transfer_block_height:e.Nat64}),Qt=e.Variant({Error:O,Spawn:D,Split:D,Follow:e.Record({}),ClaimOrRefresh:Ht,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:jt,DisburseToNeuron:D,MakeProposal:zt,StakeMaturity:Xt,MergeMaturity:Jt,Disburse:$t}),Je=e.Record({command:e.Opt(Qt)}),Yt=e.Record({total_direct_contribution_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_contribution_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),Zt=e.Variant({Committed:Yt,Aborted:e.Record({})}),It=e.Record({result:e.Opt(Zt),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Dt=e.Record({total_direct_participation_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),Lt=e.Variant({Committed:Dt,Aborted:e.Record({})}),eo=e.Record({result:e.Opt(Lt),nns_proposal_id:e.Opt(e.Nat64)}),to=e.Record({hotkey_principal:e.Opt(e.Text),is_capped:e.Opt(e.Bool),nns_neuron_id:e.Opt(e.Nat64),amount_icp_e8s:e.Opt(e.Nat64)}),oo=e.Record({neurons_fund_neuron_portions:e.Vec(to)}),no=e.Variant({Ok:oo,Err:O}),ro=e.Record({result:e.Opt(no)}),ao=e.Record({reward_account:e.Opt(S)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(o)],[q],[]),claim_or_refresh_neuron_from_account:e.Func([N],[St],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_full_neuron:e.Func([e.Nat64],[ze],["query"]),get_full_neuron_by_id_or_subaccount:e.Func([C],[ze],["query"]),get_latest_reward_event:e.Func([],[Be],["query"]),get_metrics:e.Func([],[Tt],["query"]),get_monthly_node_provider_rewards:e.Func([],[Vt],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(Ae)],["query"]),get_network_economics_parameters:e.Func([],[Y],["query"]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],["query"]),get_neuron_info:e.Func([e.Nat64],[Xe],["query"]),get_neuron_info_by_id_or_subaccount:e.Func([C],[Xe],["query"]),get_neurons_fund_audit_info:e.Func([Pt],[At],["query"]),get_node_provider_by_caller:e.Func([e.Null],[qt],["query"]),get_pending_proposals:e.Func([],[e.Vec(I)],["query"]),get_proposal_info:e.Func([e.Nat64],[e.Opt(I)],["query"]),get_restore_aging_summary:e.Func([],[Ee],["query"]),list_known_neurons:e.Func([],[Et],["query"]),list_neurons:e.Func([Bt],[Gt],["query"]),list_node_providers:e.Func([],[Kt],["query"]),list_proposals:e.Func([Ut],[Wt],["query"]),manage_neuron:e.Func([V],[Je],[]),settle_community_fund_participation:e.Func([It],[q],[]),settle_neurons_fund_participation:e.Func([eo],[ro],[]),simulate_manage_neuron:e.Func([V],[Je],[]),transfer_gtc_neuron:e.Func([o,o],[q],[]),update_node_provider:e.Func([ao],[q],[])})};var _n=({IDL:e})=>{let t=e.Record({id:e.Nat64}),o=e.Record({followees:e.Vec(t)}),n=e.Record({name:e.Text,description:e.Opt(e.Text)}),r=e.Record({to_subaccount:e.Vec(e.Nat8),neuron_stake_e8s:e.Nat64,from:e.Opt(e.Principal),memo:e.Nat64,from_subaccount:e.Vec(e.Nat8),transfer_timestamp:e.Nat64,block_height:e.Nat64}),s=e.Record({vote:e.Int32,proposal_id:e.Opt(t)}),c=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),_=e.Record({id:e.Opt(t),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(s),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(c),followees:e.Vec(e.Tuple(e.Int32,o)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(r),known_neuron_data:e.Opt(n),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),d=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(s),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,known_neuron_data:e.Opt(n),voting_power:e.Nat64,age_seconds:e.Nat64}),N=e.Record({neuron_ids:e.Vec(e.Nat64),include_neurons_readable_by_caller:e.Bool}),R=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,d)),full_neurons:e.Vec(_)});return e.Service({list_neurons:e.Func([N],[R],[])})};var un=require("@dfinity/ledger-icp"),ee=require("@dfinity/principal"),b=require("@dfinity/utils");var ln=e=>({id:e}),Co=e=>({id:e}),mr=e=>({followees:e.map(Co)}),Nr=e=>{if("NeuronId"in e)return{NeuronId:{id:e.NeuronId}};if("Subaccount"in e)return{Subaccount:Uint8Array.from(e.Subaccount)};throw new k(e)},fo=e=>e.basisPoints!==void 0?{basis_points:[e.basisPoints]}:{basis_points:[]},te=e=>e.seconds!==void 0?{seconds:[e.seconds]}:{seconds:[]},Or=e=>e.secondsAfterUtcMidnight!==void 0?{seconds_after_utc_midnight:[e.secondsAfterUtcMidnight]}:{seconds_after_utc_midnight:[]},fr=e=>({iso_codes:e.isoCodes}),J=e=>e.e8s!==void 0?{e8s:[e.e8s]}:{e8s:[]},mn=e=>e.base64Encoding!==void 0?{base64_encoding:[e.base64Encoding]}:{base64_encoding:[]},Rr=e=>({reward_rate_transition_duration:e.rewardRateTransitionDuration!==void 0?[te(e.rewardRateTransitionDuration)]:[],initial_reward_rate:e.initialRewardRate!==void 0?[fo(e.initialRewardRate)]:[],final_reward_rate:e.finalRewardRate!==void 0?[fo(e.finalRewardRate)]:[]}),vr=e=>({transaction_fee:e.transactionFee!==void 0?[J(e.transactionFee)]:[],token_symbol:e.tokenSymbol!==void 0?[e.tokenSymbol]:[],token_logo:e.tokenLogo!==void 0?[mn(e.tokenLogo)]:[],token_name:e.tokenName!==void 0?[e.tokenName]:[]}),gr=e=>({minimum_participants:e.minimumParticipants!==void 0?[e.minimumParticipants]:[],duration:e.duration!==void 0?[te(e.duration)]:[],neuron_basket_construction_parameters:e.neuronBasketConstructionParameters!==void 0?[wr(e.neuronBasketConstructionParameters)]:[],confirmation_text:e.confirmationText!==void 0?[e.confirmationText]:[],maximum_participant_icp:e.maximumParticipantIcp!==void 0?[J(e.maximumParticipantIcp)]:[],neurons_fund_investment_icp:e.neuronsFundInvestmentIcp!==void 0?[J(e.neuronsFundInvestmentIcp)]:[],minimum_icp:e.minimumIcp!==void 0?[J(e.minimumIcp)]:[],minimum_participant_icp:e.minimumParticipantIcp!==void 0?[J(e.minimumParticipantIcp)]:[],start_time:e.startTime!==void 0?[Or(e.startTime)]:[],maximum_icp:e.maximumIcp!==void 0?[J(e.maximumIcp)]:[],restricted_countries:e.restrictedCountries!==void 0?[fr(e.restrictedCountries)]:[],maximum_direct_participation_icp:e.maxDirectParticipationIcp!==void 0?[J(e.maxDirectParticipationIcp)]:[],minimum_direct_participation_icp:e.minDirectParticipationIcp!==void 0?[J(e.minDirectParticipationIcp)]:[],neurons_fund_participation:(0,b.toNullable)(e.neuronsFundParticipation)}),wr=e=>({dissolve_delay_interval:e.dissolveDelayInterval!==void 0?[te(e.dissolveDelayInterval)]:[],count:e.count!==void 0?[e.count]:[]}),yr=e=>({neuron_maximum_dissolve_delay_bonus:e.neuronMaximumDissolveDelayBonus!==void 0?[fo(e.neuronMaximumDissolveDelayBonus)]:[],neuron_maximum_age_for_age_bonus:e.neuronMaximumAgeForAgeBonus!==void 0?[te(e.neuronMaximumAgeForAgeBonus)]:[],neuron_maximum_dissolve_delay:e.neuronMaximumDissolveDelay!==void 0?[te(e.neuronMaximumDissolveDelay)]:[],neuron_minimum_dissolve_delay_to_vote:e.neuronMinimumDissolveDelayToVote!==void 0?[te(e.neuronMinimumDissolveDelayToVote)]:[],neuron_maximum_age_bonus:e.neuronMaximumAgeBonus!==void 0?[fo(e.neuronMaximumAgeBonus)]:[],neuron_minimum_stake:e.neuronMinimumStake!==void 0?[J(e.neuronMinimumStake)]:[],proposal_wait_for_quiet_deadline_increase:e.proposalWaitForQuietDeadlineIncrease!==void 0?[te(e.proposalWaitForQuietDeadlineIncrease)]:[],proposal_initial_voting_period:e.proposalInitialVotingPeriod!==void 0?[te(e.proposalInitialVotingPeriod)]:[],proposal_rejection_fee:e.proposalRejectionFee!==void 0?[J(e.proposalRejectionFee)]:[],voting_reward_parameters:e.votingRewardParameters!==void 0?[Rr(e.votingRewardParameters)]:[]}),dn=e=>({total:e.total!==void 0?[J(e.total)]:[]}),br=e=>({treasury_distribution:e.treasuryDistribution!==void 0?[dn(e.treasuryDistribution)]:[],developer_distribution:e.developerDistribution!==void 0?[kr(e.developerDistribution)]:[],swap_distribution:e.swapDistribution!==void 0?[dn(e.swapDistribution)]:[]}),hr=e=>({controller:e.controller!==void 0?[ee.Principal.fromText(e.controller)]:[],dissolve_delay:e.dissolveDelay!==void 0?[te(e.dissolveDelay)]:[],memo:e.memo!==void 0?[e.memo]:[],vesting_period:e.vestingPeriod!==void 0?[te(e.vestingPeriod)]:[],stake:e.stake!==void 0?[J(e.stake)]:[]}),kr=e=>({developer_neurons:e.developerNeurons.map(hr)}),xr=e=>({url:e.url!==void 0?[e.url]:[],governance_parameters:e.governanceParameters!==void 0?[yr(e.governanceParameters)]:[],fallback_controller_principal_ids:e.fallbackControllerPrincipalIds.map(t=>ee.Principal.fromText(t)),logo:e.logo!==void 0?[mn(e.logo)]:[],name:e.name!==void 0?[e.name]:[],ledger_parameters:e.ledgerParameters!==void 0?[vr(e.ledgerParameters)]:[],description:e.description!==void 0?[e.description]:[],dapp_canisters:e.dappCanisters.map(t=>({id:[ee.Principal.fromText(t)]})),swap_parameters:e.swapParameters!==void 0?[gr(e.swapParameters)]:[],initial_token_distribution:e.initialTokenDistribution!==void 0?[br(e.initialTokenDistribution)]:[]}),Nn=e=>{if("ExecuteNnsFunction"in e){let t=e.ExecuteNnsFunction;if(t.payloadBytes===void 0)throw new Error("payloadBytes not found");return{ExecuteNnsFunction:{nns_function:t.nnsFunctionId,payload:(0,b.arrayBufferToUint8Array)(t.payloadBytes)}}}if("ManageNeuron"in e){let t=e.ManageNeuron;return{ManageNeuron:Mr(t)}}if("ApproveGenesisKyc"in e)return{ApproveGenesisKyc:{principals:e.ApproveGenesisKyc.principals.map(ee.Principal.fromText)}};if("ManageNetworkEconomics"in e){let t=e.ManageNetworkEconomics;return{ManageNetworkEconomics:{neuron_minimum_stake_e8s:t.neuronMinimumStake,max_proposals_to_keep_per_topic:t.maxProposalsToKeepPerTopic,neuron_management_fee_per_proposal_e8s:t.neuronManagementFeePerProposal,reject_cost_e8s:t.rejectCost,transaction_fee_e8s:t.transactionFee,neuron_spawn_dissolve_delay_seconds:t.neuronSpawnDissolveDelaySeconds,minimum_icp_xdr_rate:t.minimumIcpXdrRate,maximum_node_provider_rewards_e8s:t.maximumNodeProviderRewards,neurons_fund_economics:Pr(t.neuronsFundEconomics)}}}if("RewardNodeProvider"in e){let t=e.RewardNodeProvider;return{RewardNodeProvider:{node_provider:t.nodeProvider?[Ro(t.nodeProvider)]:[],amount_e8s:t.amountE8s,reward_mode:t.rewardMode!=null?[pn(t.rewardMode)]:[]}}}if("RewardNodeProviders"in e){let t=e.RewardNodeProviders;return{RewardNodeProviders:{use_registry_derived_rewards:t.useRegistryDerivedRewards===void 0?[]:[t.useRegistryDerivedRewards],rewards:t.rewards.map(o=>({node_provider:o.nodeProvider?[Ro(o.nodeProvider)]:[],amount_e8s:o.amountE8s,reward_mode:o.rewardMode!=null?[pn(o.rewardMode)]:[]}))}}}if("AddOrRemoveNodeProvider"in e){let t=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:t.change?[Vr(t.change)]:[]}}}if("Motion"in e)return{Motion:{motion_text:e.Motion.motionText}};if("SetDefaultFollowees"in e)return{SetDefaultFollowees:{default_followees:e.SetDefaultFollowees.defaultFollowees.map(o=>[o.topic,mr(o.followees)])}};if("RegisterKnownNeuron"in e){let t=e.RegisterKnownNeuron;return{RegisterKnownNeuron:{id:[{id:t.id}],known_neuron_data:[{name:t.name,description:t.description!==void 0?[t.description]:[]}]}}}if("SetSnsTokenSwapOpenTimeWindow"in e){let{request:t,swapCanisterId:o}=e.SetSnsTokenSwapOpenTimeWindow;return{SetSnsTokenSwapOpenTimeWindow:{request:t===void 0?[]:[{open_time_window:t.openTimeWindow===void 0?[]:[{start_timestamp_seconds:t.openTimeWindow.startTimestampSeconds,end_timestamp_seconds:t.openTimeWindow.endTimestampSeconds}]}],swap_canister_id:o===void 0?[]:[ee.Principal.fromText(o)]}}}if("OpenSnsTokenSwap"in e){let{communityFundInvestmentE8s:t,targetSwapCanisterId:o,params:n}=e.OpenSnsTokenSwap;return{OpenSnsTokenSwap:{community_fund_investment_e8s:(0,b.toNullable)(t),target_swap_canister_id:(0,b.toNullable)(o),params:n===void 0?[]:[{min_participant_icp_e8s:n.minParticipantIcpE8s,max_icp_e8s:n.maxIcpE8s,swap_due_timestamp_seconds:n.swapDueTimestampSeconds,min_participants:n.minParticipants,sns_token_e8s:n.snsTokenE8s,max_participant_icp_e8s:n.maxParticipantIcpE8s,min_icp_e8s:n.minIcpE8s,sale_delay_seconds:(0,b.toNullable)(n.saleDelaySeconds),neuron_basket_construction_parameters:(0,b.toNullable)(n.neuronBasketConstructionParameters),max_direct_participation_icp_e8s:(0,b.toNullable)(n.maxDirectParticipationIcpE8s),min_direct_participation_icp_e8s:(0,b.toNullable)(n.minDirectParticipationIcpE8s)}]}}}if("CreateServiceNervousSystem"in e)return{CreateServiceNervousSystem:xr(e.CreateServiceNervousSystem)};throw new k(e)},Sr=e=>{if("Split"in e)return{Split:{amount_e8s:e.Split.amount}};if("Follow"in e){let t=e.Follow;return{Follow:{topic:t.topic,followees:t.followees.map(Co)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by?[Cr(t.by)]:[]}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation?[Tr(t.operation)]:[]}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal?[ln(t.proposal)]:[]}}}if("DisburseToNeuron"in e){let t=e.DisburseToNeuron;return{DisburseToNeuron:{dissolve_delay_seconds:t.dissolveDelaySeconds,kyc_verified:t.kycVerified,amount_e8s:t.amount,new_controller:t.newController?[ee.Principal.fromText(t.newController)]:[],nonce:t.nonce}}}if("MergeMaturity"in e)return{MergeMaturity:{percentage_to_merge:e.MergeMaturity.percentageToMerge}};if("StakeMaturity"in e){let{percentageToStake:t}=e.StakeMaturity;return{StakeMaturity:{percentage_to_stake:(0,b.toNullable)(t)}}}if("MakeProposal"in e){let t=e.MakeProposal;return{MakeProposal:{url:t.url,title:[],action:t.action?[Nn(t.action)]:[],summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{to_account:t.toAccountId?[Mo(t.toAccountId)]:[],amount:t.amount?[On(t.amount)]:[]}}}if("Spawn"in e){let t=e.Spawn;return{Spawn:{percentage_to_spawn:t.percentageToSpawn===void 0?[]:[t.percentageToSpawn],new_controller:t.newController?[ee.Principal.fromText(t.newController)]:[],nonce:[]}}}if("Merge"in e){let t=e.Merge;return{Merge:{source_neuron_id:t.sourceNeuronId?[{id:t.sourceNeuronId}]:[]}}}throw new k(e)},Tr=e=>{if("RemoveHotKey"in e){let t=e.RemoveHotKey;return{RemoveHotKey:{hot_key_to_remove:t.hotKeyToRemove!=null?[ee.Principal.fromText(t.hotKeyToRemove)]:[]}}}if("AddHotKey"in e){let t=e.AddHotKey;return{AddHotKey:{new_hot_key:t.newHotKey?[ee.Principal.fromText(t.newHotKey)]:[]}}}if("StopDissolving"in e)return{StopDissolving:{}};if("StartDissolving"in e)return{StartDissolving:{}};if("IncreaseDissolveDelay"in e)return{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:e.IncreaseDissolveDelay.additionalDissolveDelaySeconds}};if("JoinCommunityFund"in e||"LeaveCommunityFund"in e)return e;if("SetDissolveTimestamp"in e)return{SetDissolveTimestamp:{dissolve_timestamp_seconds:e.SetDissolveTimestamp.dissolveTimestampSeconds}};if("ChangeAutoStakeMaturity"in e){let{requestedSettingForAutoStakeMaturity:t}=e.ChangeAutoStakeMaturity;return{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}throw new k(e)},Vr=e=>{if("ToRemove"in e)return{ToRemove:Ro(e.ToRemove)};if("ToAdd"in e)return{ToAdd:Ro(e.ToAdd)};throw new k(e)},Ro=e=>({id:e.id!=null?[ee.Principal.fromText(e.id)]:[],reward_account:e.rewardAccount!=null?[Mo(e.rewardAccount)]:[]}),On=e=>({e8s:e}),Mo=e=>({hash:(0,un.accountIdentifierToBytes)(e)}),Pr=e=>{if((0,b.isNullish)(e))return[];let{maximumIcpXdrRate:t,maxTheoreticalNeuronsFundParticipationAmountXdr:o,neuronsFundMatchedFundingCurveCoefficients:n,minimumIcpXdrRate:r}=e,s=d=>(0,b.isNullish)(d)?[]:[{basis_points:(0,b.toNullable)(d.basisPoints)}],c=d=>(0,b.isNullish)(d)?[]:[{human_readable:(0,b.toNullable)(d.humanReadable)}],_=d=>(0,b.isNullish)(d)?[]:[{contribution_threshold_xdr:c(d.contributionThresholdXdr),full_participation_milestone_xdr:c(d.fullParticipationMilestoneXdr),one_third_participation_milestone_xdr:c(d.oneThirdParticipationMilestoneXdr)}];return[{maximum_icp_xdr_rate:s(t),neurons_fund_matched_funding_curve_coefficients:_(n),minimum_icp_xdr_rate:s(r),max_theoretical_neurons_fund_participation_amount_xdr:c(o)}]},pn=e=>{if("RewardToNeuron"in e)return{RewardToNeuron:{dissolve_delay_seconds:e.RewardToNeuron.dissolveDelaySeconds}};if("RewardToAccount"in e)return{RewardToAccount:{to_account:e.RewardToAccount.toAccount!=null?[Mo(e.RewardToAccount.toAccount)]:[]}};throw new k(e)},Cr=e=>{if("NeuronIdOrSubaccount"in e)return{NeuronIdOrSubaccount:{}};if("Memo"in e)return{Memo:e.Memo};if("MemoAndController"in e)return{MemoAndController:{memo:e.MemoAndController.memo,controller:e.MemoAndController.controller?[e.MemoAndController.controller]:[]}};throw new k(e)},vo=({neuronIds:e,includeEmptyNeurons:t})=>({neuron_ids:BigUint64Array.from(e??[]),include_neurons_readable_by_caller:!e,include_empty_neurons_readable_by_caller:(0,b.toNullable)(t)}),Mr=({id:e,command:t,neuronIdOrSubaccount:o})=>({id:e?[Co(e)]:[],command:t?[Sr(t)]:[],neuron_id_or_subaccount:o?[Nr(o)]:[]}),fn=({includeRewardStatus:e,beforeProposal:t,excludeTopic:o,includeStatus:n,limit:r,includeAllManageNeuronProposals:s,omitLargeFields:c})=>({include_reward_status:Int32Array.from(e),before_proposal:t?[ln(t)]:[],limit:r,exclude_topic:Int32Array.from(o),include_all_manage_neuron_proposals:s!==void 0?[s]:[],include_status:Int32Array.from(n),omit_large_fields:(0,b.toNullable)(c)}),Rn=e=>({id:[],command:[{ClaimOrRefresh:{by:[{NeuronIdOrSubaccount:{}}]}}],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}),vn=({memo:e,controller:t})=>{let o={ClaimOrRefresh:{by:[{MemoAndController:{controller:t==null?[]:[t],memo:e}}]}};return{id:[],command:[o],neuron_id_or_subaccount:[]}},gn=({neuronId:e,amount:t})=>({id:[],command:[{Split:{amount_e8s:t}}],neuron_id_or_subaccount:[{NeuronId:{id:e}}]});var wn=({neuronId:e,vote:t,proposalId:o})=>Ye({neuronId:e,command:{RegisterVote:{vote:t,proposal:[{id:o}]}}}),yn=e=>{let t={MakeProposal:{url:e.url,title:e.title!=null?[e.title]:[],summary:e.summary,action:[Nn(e.action)]}};return{id:[],command:[t],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}},bn=({neuronId:e,topic:t,followees:o})=>Ye({neuronId:e,command:{Follow:{topic:t,followees:o.map(n=>({id:n}))}}}),hn=({neuronId:e,toAccountIdentifier:t,amount:o})=>Ye({neuronId:e,command:{Disburse:{to_account:t!==void 0?[t.toAccountIdentifierHash()]:[],amount:o!==void 0?[On(o)]:[]}}}),kn=({neuronId:e,percentageToMerge:t})=>Ye({neuronId:e,command:{MergeMaturity:{percentage_to_merge:t}}}),xn=({neuronId:e,percentageToStake:t})=>Ye({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,b.toNullable)(t)}}}),Sn=({neuronId:e,percentageToSpawn:t,newController:o,nonce:n})=>Ye({neuronId:e,command:{Spawn:{percentage_to_spawn:t===void 0?[]:[t],new_controller:o===void 0?[]:[o],nonce:n===void 0?[]:[n]}}}),Tn=({neuronId:e,principal:t})=>Pe({neuronId:e,operation:{AddHotKey:{new_hot_key:[t]}}}),Vn=({neuronId:e,principal:t})=>Pe({neuronId:e,operation:{RemoveHotKey:{hot_key_to_remove:[t]}}}),Pn=({neuronId:e,additionalDissolveDelaySeconds:t})=>Pe({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),Cn=({neuronId:e,dissolveDelaySeconds:t})=>Pe({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:BigInt(t)}}}),Mn=e=>Pe({neuronId:e,operation:{JoinCommunityFund:{}}}),Fn=({neuronId:e,autoStake:t})=>Pe({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),An=e=>Pe({neuronId:e,operation:{LeaveCommunityFund:{}}}),Fo=({sourceNeuronId:e,targetNeuronId:t})=>Ye({neuronId:t,command:{Merge:{source_neuron_id:[{id:e}]}}}),qn=e=>Pe({neuronId:e,operation:{StartDissolving:{}}}),En=e=>Pe({neuronId:e,operation:{StopDissolving:{}}}),Ye=({neuronId:e,command:t})=>({id:[{id:e}],command:[t],neuron_id_or_subaccount:[]}),Pe=({neuronId:e,operation:t})=>Ye({neuronId:e,command:{Configure:{operation:[t]}}});var yo=require("@dfinity/ledger-icp"),Ao=require("@dfinity/principal"),i=require("@dfinity/utils");var qo=({neuronId:e,neuronInfo:t,rawNeuron:o,canisterId:n})=>{let r=o?Fr({neuron:o,canisterId:n}):void 0;return{neuronId:e,dissolveDelaySeconds:t.dissolve_delay_seconds,recentBallots:t.recent_ballots.map(Un),neuronType:(0,i.fromNullable)(t.neuron_type),createdTimestampSeconds:t.created_timestamp_seconds,state:t.state,joinedCommunityFundTimestampSeconds:t.joined_community_fund_timestamp_seconds.length?t.joined_community_fund_timestamp_seconds[0]:void 0,retrievedAtTimestampSeconds:t.retrieved_at_timestamp_seconds,votingPower:t.voting_power,ageSeconds:t.age_seconds,fullNeuron:r}},Fr=({neuron:e,canisterId:t})=>({id:e.id.length?Ze(e.id[0]):void 0,stakedMaturityE8sEquivalent:(0,i.fromNullable)(e.staked_maturity_e8s_equivalent),controller:e.controller.length?e.controller[0].toString():void 0,recentBallots:e.recent_ballots.map(Un),neuronType:(0,i.fromNullable)(e.neuron_type),kycVerified:e.kyc_verified,notForProfit:e.not_for_profit,cachedNeuronStake:e.cached_neuron_stake_e8s,createdTimestampSeconds:e.created_timestamp_seconds,autoStakeMaturity:(0,i.fromNullable)(e.auto_stake_maturity),maturityE8sEquivalent:e.maturity_e8s_equivalent,agingSinceTimestampSeconds:e.aging_since_timestamp_seconds,neuronFees:e.neuron_fees_e8s,hotKeys:e.hot_keys.map(o=>o.toString()),accountIdentifier:(0,yo.principalToAccountIdentifier)(t,Uint8Array.from(e.account)),joinedCommunityFundTimestampSeconds:e.joined_community_fund_timestamp_seconds.length?e.joined_community_fund_timestamp_seconds[0]:void 0,dissolveState:e.dissolve_state.length?Ar(e.dissolve_state[0]):void 0,spawnAtTimesSeconds:e.spawn_at_timestamp_seconds[0],followees:e.followees.map(([o,n])=>Wn({topic:o,followees:n}))}),Kn=({neuron:e,account:t})=>({id:(0,i.nonNullish)(e.id)?(0,i.toNullable)({id:e.id}):[],staked_maturity_e8s_equivalent:(0,i.toNullable)(e.stakedMaturityE8sEquivalent),controller:(0,i.nonNullish)(e.controller)?(0,i.toNullable)(Ao.Principal.from(e.controller)):[],recent_ballots:e.recentBallots.map(o=>({vote:o.vote,proposal_id:(0,i.nonNullish)(o.proposalId)?(0,i.toNullable)({id:o.proposalId}):[]})),kyc_verified:e.kycVerified,neuron_type:(0,i.toNullable)(e.neuronType),not_for_profit:e.notForProfit,cached_neuron_stake_e8s:e.cachedNeuronStake,created_timestamp_seconds:e.createdTimestampSeconds,auto_stake_maturity:(0,i.toNullable)(e.autoStakeMaturity),maturity_e8s_equivalent:e.maturityE8sEquivalent,aging_since_timestamp_seconds:e.agingSinceTimestampSeconds,neuron_fees_e8s:e.neuronFees,hot_keys:e.hotKeys.map(o=>Ao.Principal.from(o)),account:t,joined_community_fund_timestamp_seconds:(0,i.toNullable)(e.joinedCommunityFundTimestampSeconds),dissolve_state:(0,i.nonNullish)(e.dissolveState)?[e.dissolveState]:[],spawn_at_timestamp_seconds:(0,i.toNullable)(e.spawnAtTimesSeconds),followees:e.followees.map(o=>[o.topic,{followees:o.followees.map(n=>({id:n}))}]),transfer:[],known_neuron_data:[]}),Un=({vote:e,proposal_id:t})=>({vote:e,proposalId:t.length?Ze(t[0]):void 0}),Ar=e=>"DissolveDelaySeconds"in e?{DissolveDelaySeconds:e.DissolveDelaySeconds}:{WhenDissolvedTimestampSeconds:e.WhenDissolvedTimestampSeconds},Wn=({topic:e,followees:t})=>({topic:e,followees:t.followees.map(Ze)}),Ze=({id:e})=>e,qr=e=>{if("NeuronId"in e)return{NeuronId:e.NeuronId.id};if("Subaccount"in e)return{Subaccount:(0,i.uint8ArrayToArrayOfNumber)(Uint8Array.from(e.Subaccount))};throw new k(e)},Er=({neuronId:e,ballot:t})=>{let{vote:o,voting_power:n}=t;return{neuronId:e,vote:o,votingPower:n}},Br=({title:e,url:t,action:o,summary:n})=>({title:e.length?e[0]:void 0,url:t,action:o.length?Hn(o[0]):void 0,summary:n}),Hn=e=>{var t;if("ExecuteNnsFunction"in e)return{ExecuteNnsFunction:{nnsFunctionId:e.ExecuteNnsFunction.nns_function}};if("ManageNeuron"in e){let o=e.ManageNeuron;return{ManageNeuron:{id:o.id.length?Ze(o.id[0]):void 0,command:o.command.length?Kr(o.command[0]):void 0,neuronIdOrSubaccount:o.neuron_id_or_subaccount.length?qr(o.neuron_id_or_subaccount[0]):void 0}}}if("ApproveGenesisKyc"in e)return{ApproveGenesisKyc:{principals:e.ApproveGenesisKyc.principals.map(n=>n.toString())}};if("ManageNetworkEconomics"in e){let o=e.ManageNetworkEconomics;return{ManageNetworkEconomics:{neuronMinimumStake:o.neuron_minimum_stake_e8s,maxProposalsToKeepPerTopic:o.max_proposals_to_keep_per_topic,neuronManagementFeePerProposal:o.neuron_management_fee_per_proposal_e8s,rejectCost:o.reject_cost_e8s,transactionFee:o.transaction_fee_e8s,neuronSpawnDissolveDelaySeconds:o.neuron_spawn_dissolve_delay_seconds,minimumIcpXdrRate:o.minimum_icp_xdr_rate,maximumNodeProviderRewards:o.maximum_node_provider_rewards_e8s,neuronsFundEconomics:Hr(o.neurons_fund_economics)}}}if("RewardNodeProvider"in e){let o=e.RewardNodeProvider;return{RewardNodeProvider:{nodeProvider:o.node_provider.length?go(o.node_provider[0]):void 0,amountE8s:o.amount_e8s,rewardMode:o.reward_mode.length?Bn(o.reward_mode[0]):void 0}}}if("RewardNodeProviders"in e){let o=e.RewardNodeProviders;return{RewardNodeProviders:{useRegistryDerivedRewards:o.use_registry_derived_rewards.length?o.use_registry_derived_rewards[0]:void 0,rewards:o.rewards.map(n=>({nodeProvider:n.node_provider.length?go(n.node_provider[0]):void 0,amountE8s:n.amount_e8s,rewardMode:n.reward_mode.length?Bn(n.reward_mode[0]):void 0}))}}}if("AddOrRemoveNodeProvider"in e){let o=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:o.change.length?Wr(o.change[0]):void 0}}}if("Motion"in e)return{Motion:{motionText:e.Motion.motion_text}};if("SetDefaultFollowees"in e)return{SetDefaultFollowees:{defaultFollowees:e.SetDefaultFollowees.default_followees.map(([n,r])=>Wn({topic:n,followees:r}))}};if("RegisterKnownNeuron"in e){let o=e.RegisterKnownNeuron;return{RegisterKnownNeuron:Xr(o)}}if("SetSnsTokenSwapOpenTimeWindow"in e){let o=e.SetSnsTokenSwapOpenTimeWindow,n=(t=o.request)!=null&&t.length?{openTimeWindow:o.request[0].open_time_window.length?{startTimestampSeconds:o.request[0].open_time_window[0].start_timestamp_seconds,endTimestampSeconds:o.request[0].open_time_window[0].end_timestamp_seconds}:void 0}:void 0,r=o!=null&&o.swap_canister_id.length?o.swap_canister_id[0].toString():void 0;return{SetSnsTokenSwapOpenTimeWindow:{request:n,swapCanisterId:r}}}if("OpenSnsTokenSwap"in e){let o=e.OpenSnsTokenSwap,n=(0,i.fromNullable)(o.params);return{OpenSnsTokenSwap:{communityFundInvestmentE8s:(0,i.fromNullable)(o.community_fund_investment_e8s),targetSwapCanisterId:(0,i.fromNullable)(o.target_swap_canister_id),params:n&&{minParticipantIcpE8s:n.min_participant_icp_e8s,maxIcpE8s:n.max_icp_e8s,swapDueTimestampSeconds:n.swap_due_timestamp_seconds,minParticipants:n.min_participants,snsTokenE8s:n.sns_token_e8s,maxParticipantIcpE8s:n.max_participant_icp_e8s,minIcpE8s:n.min_icp_e8s,saleDelaySeconds:(0,i.fromNullable)(n.sale_delay_seconds),neuronBasketConstructionParameters:(0,i.fromNullable)(n.neuron_basket_construction_parameters),maxDirectParticipationIcpE8s:(0,i.fromNullable)(n.max_direct_participation_icp_e8s),minDirectParticipationIcpE8s:(0,i.fromNullable)(n.min_direct_participation_icp_e8s)}}}}if("CreateServiceNervousSystem"in e){let o=e.CreateServiceNervousSystem;return{CreateServiceNervousSystem:{url:(0,i.fromNullable)(o.url),governanceParameters:Ir((0,i.fromNullable)(o.governance_parameters)),fallbackControllerPrincipalIds:o.fallback_controller_principal_ids.map(n=>n.toString()),logo:Xn((0,i.fromNullable)(o.logo)),name:(0,i.fromNullable)(o.name),ledgerParameters:Yr((0,i.fromNullable)(o.ledger_parameters)),description:(0,i.fromNullable)(o.description),dappCanisters:o.dapp_canisters.map(Qr)??[],swapParameters:Lr((0,i.fromNullable)(o.swap_parameters)),initialTokenDistribution:oa((0,i.fromNullable)(o.initial_token_distribution))}}}throw new k(e)},Gr=e=>({no:e.no,yes:e.yes,total:e.total,timestampSeconds:e.timestamp_seconds}),Kr=e=>{if("Spawn"in e){let t=e.Spawn;return{Spawn:{newController:t.new_controller.length?t.new_controller[0].toString():void 0,percentageToSpawn:t.percentage_to_spawn.length?t.percentage_to_spawn[0]:0}}}if("Split"in e)return{Split:{amount:e.Split.amount_e8s}};if("Follow"in e){let t=e.Follow;return{Follow:{topic:t.topic,followees:t.followees.map(Ze)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by.length?zr(t.by[0]):void 0}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation.length?Ur(t.operation[0]):void 0}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal.length?Ze(t.proposal[0]):void 0}}}if("DisburseToNeuron"in e){let t=e.DisburseToNeuron;return{DisburseToNeuron:{dissolveDelaySeconds:t.dissolve_delay_seconds,kycVerified:t.kyc_verified,amount:t.amount_e8s,newController:t.new_controller.length?t.new_controller[0].toString():void 0,nonce:t.nonce}}}if("MergeMaturity"in e)return{MergeMaturity:{percentageToMerge:e.MergeMaturity.percentage_to_merge}};if("StakeMaturity"in e){let{percentage_to_stake:t}=e.StakeMaturity;return{StakeMaturity:{percentageToStake:(0,i.fromNullable)(t)}}}if("MakeProposal"in e){let t=e.MakeProposal;return{MakeProposal:{title:t.title.length?t.title[0]:void 0,url:t.url,action:t.action.length?Hn(t.action[0]):void 0,summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{toAccountId:t.to_account.length?Eo(t.to_account[0]):void 0,amount:t.amount.length?jr(t.amount[0]):void 0}}}if("Merge"in e){let t=e.Merge;return{Merge:{sourceNeuronId:t.source_neuron_id.length?t.source_neuron_id[0].id:void 0}}}throw new k(e)},Ur=e=>{if("RemoveHotKey"in e){let t=e.RemoveHotKey;return{RemoveHotKey:{hotKeyToRemove:t.hot_key_to_remove.length?t.hot_key_to_remove[0].toString():void 0}}}if("AddHotKey"in e){let t=e.AddHotKey;return{AddHotKey:{newHotKey:t.new_hot_key.length?t.new_hot_key[0].toString():void 0}}}if("StopDissolving"in e)return{StopDissolving:{}};if("StartDissolving"in e)return{StartDissolving:{}};if("IncreaseDissolveDelay"in e)return{IncreaseDissolveDelay:{additionalDissolveDelaySeconds:e.IncreaseDissolveDelay.additional_dissolve_delay_seconds}};if("JoinCommunityFund"in e||"LeaveCommunityFund"in e)return e;if("SetDissolveTimestamp"in e)return{SetDissolveTimestamp:{dissolveTimestampSeconds:e.SetDissolveTimestamp.dissolve_timestamp_seconds}};if("ChangeAutoStakeMaturity"in e){let{requested_setting_for_auto_stake_maturity:t}=e.ChangeAutoStakeMaturity;return{ChangeAutoStakeMaturity:{requestedSettingForAutoStakeMaturity:t}}}throw new k(e)},Wr=e=>{if("ToRemove"in e)return{ToRemove:go(e.ToRemove)};if("ToAdd"in e)return{ToAdd:go(e.ToAdd)};throw new k(e)},Hr=e=>{let t=(0,i.fromNullable)(e);if((0,i.isNullish)(t))return;let{maximum_icp_xdr_rate:o,neurons_fund_matched_funding_curve_coefficients:n,max_theoretical_neurons_fund_participation_amount_xdr:r,minimum_icp_xdr_rate:s}=t,c=N=>{let R=(0,i.fromNullable)(N);if((0,i.isNullish)(R))return;let{basis_points:u}=R,w=(0,i.fromNullable)(u);return(0,i.nonNullish)(w)?{basisPoints:w}:void 0},_=N=>{let R=(0,i.fromNullable)(N);if((0,i.isNullish)(R))return;let{human_readable:u}=R,w=(0,i.fromNullable)(u);return(0,i.nonNullish)(w)?{humanReadable:w}:void 0},d=N=>{let R=(0,i.fromNullable)(N);if((0,i.isNullish)(R))return;let{full_participation_milestone_xdr:u,one_third_participation_milestone_xdr:w,contribution_threshold_xdr:x}=R;return{fullParticipationMilestoneXdr:_(u),oneThirdParticipationMilestoneXdr:_(w),contributionThresholdXdr:_(x)}};return{maximumIcpXdrRate:c(o),neuronsFundMatchedFundingCurveCoefficients:d(n),maxTheoreticalNeuronsFundParticipationAmountXdr:_(r),minimumIcpXdrRate:c(s)}},go=e=>({id:e.id.length?e.id[0].toString():void 0,rewardAccount:e.reward_account.length?Eo(e.reward_account[0]):void 0}),jr=e=>e.e8s,Eo=e=>(0,yo.accountIdentifierFromBytes)(new Uint8Array(e.hash)),Bn=e=>{if("RewardToNeuron"in e)return{RewardToNeuron:{dissolveDelaySeconds:e.RewardToNeuron.dissolve_delay_seconds}};if("RewardToAccount"in e)return{RewardToAccount:{toAccount:e.RewardToAccount.to_account!=null&&e.RewardToAccount.to_account.length?Eo(e.RewardToAccount.to_account[0]):void 0}};throw new k(e)},zr=e=>{if("NeuronIdOrSubaccount"in e)return{NeuronIdOrSubaccount:{}};if("Memo"in e)return{Memo:e.Memo};if("MemoAndController"in e)return{MemoAndController:{memo:e.MemoAndController.memo,controller:e.MemoAndController.controller.length?e.MemoAndController.controller[0]:void 0}};throw new k(e)},Bo=e=>({id:e.id.length?Ze(e.id[0]):void 0,ballots:e.ballots.map(t=>Er({neuronId:t[0],ballot:t[1]})),rejectCost:e.reject_cost_e8s,proposalTimestampSeconds:e.proposal_timestamp_seconds,rewardEventRound:e.reward_event_round,failedTimestampSeconds:e.failed_timestamp_seconds,deadlineTimestampSeconds:(0,i.fromNullable)(e.deadline_timestamp_seconds),decidedTimestampSeconds:e.decided_timestamp_seconds,proposal:e.proposal.length?Br(e.proposal[0]):void 0,proposer:e.proposer.length?Ze(e.proposer[0]):void 0,latestTally:e.latest_tally.length?Gr(e.latest_tally[0]):void 0,executedTimestampSeconds:e.executed_timestamp_seconds,topic:e.topic,status:e.status,rewardStatus:e.reward_status}),jn=({response:{neuron_infos:e,full_neurons:t},canisterId:o})=>e.map(([n,r])=>qo({neuronId:n,neuronInfo:r,rawNeuron:t.find(s=>s.id.length&&s.id[0].id===n),canisterId:o})),zn=({proposal_info:e})=>({proposals:e.map(Bo)}),Xr=({id:e,known_neuron_data:t})=>{var o,n,r;return{id:((o=e[0])==null?void 0:o.id)??BigInt(0),name:((n=t[0])==null?void 0:n.name)??"",description:((r=t[0])==null?void 0:r.description[0])??""}},wo=e=>e===void 0?void 0:{basisPoints:(0,i.fromNullable)(e.basis_points)},oe=e=>e===void 0?void 0:{seconds:(0,i.fromNullable)(e.seconds)},Jr=e=>e===void 0?void 0:{secondsAfterUtcMidnight:(0,i.fromNullable)(e.seconds_after_utc_midnight)},$r=e=>e===void 0?void 0:{isoCodes:e.iso_codes},$=e=>e===void 0?void 0:{e8s:(0,i.fromNullable)(e.e8s)},Qr=e=>e===void 0||e.id.length===0?void 0:(0,i.fromDefinedNullable)(e.id).toString(),Xn=e=>e===void 0?void 0:{base64Encoding:(0,i.fromNullable)(e.base64_encoding)},Yr=e=>e===void 0?void 0:{transactionFee:$((0,i.fromNullable)(e.transaction_fee)),tokenSymbol:(0,i.fromNullable)(e.token_symbol),tokenLogo:Xn((0,i.fromNullable)(e.token_logo)),tokenName:(0,i.fromNullable)(e.token_name)},Zr=e=>e===void 0?void 0:{rewardRateTransitionDuration:oe((0,i.fromNullable)(e.reward_rate_transition_duration)),initialRewardRate:wo((0,i.fromNullable)(e.initial_reward_rate)),finalRewardRate:wo((0,i.fromNullable)(e.final_reward_rate))},Ir=e=>e===void 0?void 0:{neuronMaximumDissolveDelayBonus:wo((0,i.fromNullable)(e.neuron_maximum_dissolve_delay_bonus)),neuronMaximumAgeForAgeBonus:oe((0,i.fromNullable)(e.neuron_maximum_age_for_age_bonus)),neuronMaximumDissolveDelay:oe((0,i.fromNullable)(e.neuron_maximum_dissolve_delay)),neuronMinimumDissolveDelayToVote:oe((0,i.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote)),neuronMaximumAgeBonus:wo((0,i.fromNullable)(e.neuron_maximum_age_bonus)),neuronMinimumStake:$((0,i.fromNullable)(e.neuron_minimum_stake)),proposalWaitForQuietDeadlineIncrease:oe((0,i.fromNullable)(e.proposal_wait_for_quiet_deadline_increase)),proposalInitialVotingPeriod:oe((0,i.fromNullable)(e.proposal_initial_voting_period)),proposalRejectionFee:$((0,i.fromNullable)(e.proposal_rejection_fee)),votingRewardParameters:Zr((0,i.fromNullable)(e.voting_reward_parameters))},Dr=e=>e===void 0?void 0:{dissolveDelayInterval:oe((0,i.fromNullable)(e.dissolve_delay_interval)),count:(0,i.fromNullable)(e.count)},Lr=e=>e===void 0?void 0:{minimumParticipants:(0,i.fromNullable)(e.minimum_participants),duration:oe((0,i.fromNullable)(e.duration)),neuronBasketConstructionParameters:Dr((0,i.fromNullable)(e.neuron_basket_construction_parameters)),confirmationText:(0,i.fromNullable)(e.confirmation_text),maximumParticipantIcp:$((0,i.fromNullable)(e.maximum_participant_icp)),neuronsFundInvestmentIcp:$((0,i.fromNullable)(e.neurons_fund_investment_icp)),minimumIcp:$((0,i.fromNullable)(e.minimum_icp)),minimumParticipantIcp:$((0,i.fromNullable)(e.minimum_participant_icp)),startTime:Jr((0,i.fromNullable)(e.start_time)),maximumIcp:$((0,i.fromNullable)(e.maximum_icp)),restrictedCountries:$r((0,i.fromNullable)(e.restricted_countries)),maxDirectParticipationIcp:$((0,i.fromNullable)(e.maximum_direct_participation_icp)),minDirectParticipationIcp:$((0,i.fromNullable)(e.minimum_direct_participation_icp)),neuronsFundParticipation:(0,i.fromNullable)(e.neurons_fund_participation)},Gn=e=>e===void 0?void 0:{total:$((0,i.fromNullable)(e.total))},ea=e=>e===void 0?void 0:{controller:e.controller.length===0?void 0:e.controller[0].toString(),dissolveDelay:oe((0,i.fromNullable)(e.dissolve_delay)),memo:(0,i.fromNullable)(e.memo),vestingPeriod:oe((0,i.fromNullable)(e.vesting_period)),stake:$((0,i.fromNullable)(e.stake))},ta=e=>e===void 0?void 0:{developerNeurons:e.developer_neurons.map(ea)},oa=e=>e===void 0?void 0:{treasuryDistribution:Gn((0,i.fromNullable)(e.treasury_distribution)),developerDistribution:ta((0,i.fromNullable)(e.developer_distribution)),swapDistribution:Gn((0,i.fromNullable)(e.swap_distribution))};var co=e=>{let{command:t}=e,o=t[0];if(!o)throw new Ve({error_message:"Error updating neuron",error_type:0});if("Error"in o)throw new Ve(o.Error);return o},P=async({request:e,service:t})=>{let o=await t.manage_neuron(e);return co(o)},Jn=async({request:e,service:t})=>{let o=await t.simulate_manage_neuron(e);return co(o)};var Go=BigInt(1e8);var bo=class e{constructor(t,o,n,r,s){this.canisterId=t;this.service=o;this.certifiedService=n;this.oldListNeuronsCertifiedService=r;this.agent=s;this.listNeurons=async({certified:t=!0,neuronIds:o,includeEmptyNeurons:n})=>{let r=vo({neuronIds:o,includeEmptyNeurons:n}),_=await((0,l.isNullish)(n)&&t?this.oldListNeuronsCertifiedService:this.getGovernanceService(t)).list_neurons(r);return jn({response:_,canisterId:this.canisterId})};this.listKnownNeurons=async(t=!0)=>(await this.getGovernanceService(t).list_known_neurons()).known_neurons.map(n=>{var r,s,c;return{id:((r=(0,l.fromNullable)(n.id))==null?void 0:r.id)??BigInt(0),name:((s=(0,l.fromNullable)(n.known_neuron_data))==null?void 0:s.name)??"",description:(0,l.fromNullable)(((c=(0,l.fromNullable)(n.known_neuron_data))==null?void 0:c.description)??[])}});this.getLastestRewardEvent=async(t=!0)=>this.getGovernanceService(t).get_latest_reward_event();this.listProposals=async({request:t,certified:o=!0})=>{let n=fn(t),r=await this.getGovernanceService(o).list_proposals(n);return zn(r)};this.stakeNeuron=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:s,fee:c})=>{if(t<Go)throw new De(t);let _=new Uint8Array((0,Ko.default)(8)),d=(0,l.uint8ArrayToBigInt)(_),N=this.buildNeuronStakeSubAccount(_,o),R=Ce.AccountIdentifier.fromPrincipal({principal:this.canisterId,subAccount:N});await r.transfer({memo:d,amount:t,fromSubAccount:n,to:R,createdAt:s,fee:c});let u=await this.claimOrRefreshNeuronFromAccount({controller:o,memo:d});if((0,l.isNullish)(u))throw new Ie;return u};this.stakeNeuronIcrc1=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:s,fee:c})=>{if(t<Go)throw new De(t);let _=new Uint8Array((0,Ko.default)(8)),d=(0,l.uint8ArrayToBigInt)(_),N=this.getNeuronStakeSubAccountBytes(_,o);await r.icrc1Transfer({icrc1Memo:_,amount:t,fromSubAccount:n,to:{owner:this.canisterId,subaccount:[N]},createdAt:s,fee:c});let R=await this.claimOrRefreshNeuronFromAccount({controller:o,memo:d});if((0,l.isNullish)(R))throw new Ie;return R};this.increaseDissolveDelay=async({neuronId:t,additionalDissolveDelaySeconds:o})=>{let n=Pn({neuronId:t,additionalDissolveDelaySeconds:o});await P({request:n,service:this.certifiedService})};this.setDissolveDelay=async({neuronId:t,dissolveDelaySeconds:o})=>{let n=Cn({neuronId:t,dissolveDelaySeconds:o});await P({request:n,service:this.certifiedService})};this.startDissolving=async t=>{let o=qn(t);await P({request:o,service:this.certifiedService})};this.stopDissolving=async t=>{let o=En(t);await P({request:o,service:this.certifiedService})};this.joinCommunityFund=async t=>{let o=Mn(t);await P({request:o,service:this.certifiedService})};this.autoStakeMaturity=async t=>{await P({request:Fn(t),service:this.certifiedService})};this.leaveCommunityFund=async t=>{let o=An(t);await P({request:o,service:this.certifiedService})};this.setNodeProviderAccount=async t=>{(0,Ce.checkAccountId)(t);let o=Ce.AccountIdentifier.fromHex(t),n=await this.certifiedService.update_node_provider({reward_account:[o.toAccountIdentifierHash()]});if("Err"in n)throw new Ve(n.Err)};this.mergeNeurons=async t=>{let o=Fo(t);await P({request:o,service:this.certifiedService})};this.simulateMergeNeurons=async t=>{var d;let o=Fo(t),n=await Jn({request:o,service:this.certifiedService}),r,s,c,_;if("Merge"in n&&(0,l.nonNullish)(r=n.Merge)&&(0,l.nonNullish)(s=(0,l.fromNullable)(r.target_neuron_info))&&(0,l.nonNullish)(c=(0,l.fromNullable)(r.target_neuron))&&(0,l.nonNullish)(_=(d=(0,l.fromNullable)(c.id))==null?void 0:d.id))return qo({neuronId:_,neuronInfo:s,rawNeuron:c,canisterId:this.canisterId});throw new Te(`simulateMergeNeurons: Unrecognized Merge error in ${JSON.stringify(n)}`)};this.splitNeuron=async({neuronId:t,amount:o})=>{let n=gn({neuronId:t,amount:o}),r=await this.certifiedService.manage_neuron(n),s=co(r);if("Split"in s){let c=(0,l.fromNullable)(s.Split.created_neuron_id);if((0,l.isNullish)(c))throw new Ve({error_message:"Unexpected error splitting neuron. No neuronId in Split response.",error_type:0});return c.id}throw new Te(`Unrecognized Split error in ${JSON.stringify(r)}`)};this.getProposal=async({proposalId:t,certified:o=!0})=>{let[n]=await this.getGovernanceService(o).get_proposal_info(t);return n?Bo(n):void 0};this.makeProposal=async t=>{var r;let o=yn(t),n=await P({request:o,service:this.certifiedService});return"MakeProposal"in n?(r=(0,l.fromNullable)(n.MakeProposal.proposal_id))==null?void 0:r.id:void 0};this.registerVote=async({neuronId:t,vote:o,proposalId:n})=>{let r=wn({neuronId:t,vote:o,proposalId:n});await P({request:r,service:this.certifiedService})};this.setFollowees=async t=>{let o=bn(t);await P({request:o,service:this.certifiedService})};this.disburse=async({neuronId:t,toAccountId:o,amount:n})=>{(0,l.nonNullish)(o)&&(0,Ce.checkAccountId)(o);let r=(0,l.nonNullish)(o)?Ce.AccountIdentifier.fromHex(o):void 0,s=hn({neuronId:t,toAccountIdentifier:r,amount:n});await P({request:s,service:this.certifiedService})};this.mergeMaturity=async({neuronId:t,percentageToMerge:o})=>{(0,l.assertPercentageNumber)(o);let n=kn({neuronId:t,percentageToMerge:o});await P({request:n,service:this.certifiedService})};this.stakeMaturity=async({neuronId:t,percentageToStake:o})=>{(0,l.assertPercentageNumber)(o??100),await P({request:xn({neuronId:t,percentageToStake:o}),service:this.certifiedService})};this.spawnNeuron=async({neuronId:t,percentageToSpawn:o,newController:n,nonce:r})=>{var N;(0,l.nonNullish)(o)&&(0,l.assertPercentageNumber)(o);let s=Sn({neuronId:t,percentageToSpawn:o,newController:n,nonce:r}),c=await this.certifiedService.manage_neuron(s),_=co(c),d;if("Spawn"in _&&(0,l.nonNullish)(d=(N=(0,l.fromNullable)(_.Spawn.created_neuron_id))==null?void 0:N.id))return d;throw new Te(`Unrecognized Spawn error in ${JSON.stringify(c)}`)};this.addHotkey=async({neuronId:t,principal:o})=>{let n=Tn({neuronId:t,principal:o});await P({request:n,service:this.certifiedService})};this.removeHotkey=async({neuronId:t,principal:o})=>{let n=Vn({neuronId:t,principal:o});await P({request:n,service:this.certifiedService})};this.claimOrRefreshNeuronFromAccount=async({memo:t,controller:o})=>{var c;let n=vn({memo:t,controller:o}),r=await this.certifiedService.manage_neuron(n),s;if((0,l.nonNullish)(s=(0,l.fromNullable)(r.command))&&"ClaimOrRefresh"in s)return(c=(0,l.fromNullable)(s.ClaimOrRefresh.refreshed_neuron_id))==null?void 0:c.id;throw new Te(`Unrecognized ClaimOrRefresh error in ${JSON.stringify(r)}`)};this.claimOrRefreshNeuron=async t=>{var s;let o=Rn(t),n=await this.service.manage_neuron(o),r;if((0,l.nonNullish)(r=(0,l.fromNullable)(n.command))&&"ClaimOrRefresh"in r)return(s=(0,l.fromNullable)(r.ClaimOrRefresh.refreshed_neuron_id))==null?void 0:s.id;throw new Te(`Unrecognized ClaimOrRefresh error in ${JSON.stringify(n)}`)};this.buildNeuronStakeSubAccount=(t,o)=>Ce.SubAccount.fromBytes(this.getNeuronStakeSubAccountBytes(t,o));this.getNeuronStakeSubAccountBytes=(t,o)=>{let n=(0,l.asciiStringToByteArray)("neuron-stake"),r=rn.create();return r.update((0,l.arrayOfNumberToUint8Array)([12,...n,...o.toUint8Array(),...t])),r.digest()};this.getNeuron=async({certified:t=!0,neuronId:o})=>{let[n]=await this.listNeurons({certified:t,neuronIds:[o]});return n};this.canisterId=t,this.service=o,this.certifiedService=n,this.oldListNeuronsCertifiedService=r,this.agent=s}static create(t={}){let o=t.canisterId??po,{service:n,certifiedService:r,agent:s}=(0,l.createServices)({options:{...t,canisterId:o},idlFactory:Oo,certifiedIdlFactory:cn}),c=t.oldListNeuronsServiceOverride??$n.Actor.createActor(_n,{agent:s,canisterId:o});return new e(o,n,r,c,s)}getGovernanceService(t){return t?this.certifiedService:this.service}};var Yn=require("@dfinity/ledger-icp"),ko=require("@dfinity/utils");var Qn=({IDL:e})=>{let t=e.Rec(),o=e.Record({id:e.Nat64}),n=e.Record({followees:e.Vec(o)}),r=e.Record({name:e.Text,description:e.Opt(e.Text)}),s=e.Record({id:e.Opt(o),known_neuron_data:e.Opt(r)}),c=e.Record({percentage_to_spawn:e.Opt(e.Nat32),new_controller:e.Opt(e.Principal),nonce:e.Opt(e.Nat64)}),_=e.Record({amount_e8s:e.Nat64}),d=e.Record({topic:e.Int32,followees:e.Vec(o)}),N=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),R=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:N,Memo:e.Nat64}),u=e.Record({by:e.Opt(R)}),w=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),x=e.Record({new_hot_key:e.Opt(e.Principal)}),G=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),B=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),Q=e.Variant({RemoveHotKey:w,AddHotKey:x,ChangeAutoStakeMaturity:G,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:B,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:ne}),K=e.Record({operation:e.Opt(Q)}),p=e.Record({vote:e.Int32,proposal:e.Opt(o)}),U=e.Record({source_neuron_id:e.Opt(o)}),W=e.Record({dissolve_delay_seconds:e.Nat64,kyc_verified:e.Bool,amount_e8s:e.Nat64,new_controller:e.Opt(e.Principal),nonce:e.Nat64}),re=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),H=e.Record({percentage_to_merge:e.Nat32}),S=e.Record({hash:e.Vec(e.Nat8)}),ae=e.Record({e8s:e.Nat64}),j=e.Record({to_account:e.Opt(S),amount:e.Opt(ae)}),se=e.Variant({Spawn:c,Split:_,Follow:d,ClaimOrRefresh:u,Configure:K,RegisterVote:p,Merge:U,DisburseToNeuron:W,MakeProposal:t,StakeMaturity:re,MergeMaturity:H,Disburse:j}),C=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:o}),V=e.Record({id:e.Opt(o),command:e.Opt(se),neuron_id_or_subaccount:e.Opt(C)}),g=e.Record({basis_points:e.Opt(e.Nat64)}),f=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),ie=e.Record({reward_rate_transition_duration:e.Opt(f),initial_reward_rate:e.Opt(g),final_reward_rate:e.Opt(g)}),h=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(g),neuron_maximum_age_for_age_bonus:e.Opt(f),neuron_maximum_dissolve_delay:e.Opt(f),neuron_minimum_dissolve_delay_to_vote:e.Opt(f),neuron_maximum_age_bonus:e.Opt(g),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(f),proposal_initial_voting_period:e.Opt(f),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(ie)}),z=e.Record({base64_encoding:e.Opt(e.Text)}),ce=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(z),token_name:e.Opt(e.Text)}),_e=e.Record({id:e.Opt(e.Principal)}),de=e.Record({dissolve_delay_interval:e.Opt(f),count:e.Opt(e.Nat64)}),pe=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),ue=e.Record({iso_codes:e.Vec(e.Text)}),le=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(f),neuron_basket_construction_parameters:e.Opt(de),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(m),minimum_icp:e.Opt(m),minimum_direct_participation_icp:e.Opt(m),minimum_participant_icp:e.Opt(m),start_time:e.Opt(pe),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(ue)}),X=e.Record({total:e.Opt(m)}),me=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(f),memo:e.Opt(e.Nat64),vesting_period:e.Opt(f),stake:e.Opt(m)}),Ne=e.Record({developer_neurons:e.Vec(me)}),Oe=e.Record({treasury_distribution:e.Opt(X),developer_distribution:e.Opt(Ne),swap_distribution:e.Opt(X)}),fe=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(h),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(z),name:e.Opt(e.Text),ledger_parameters:e.Opt(ce),description:e.Opt(e.Text),dapp_canisters:e.Vec(_e),swap_parameters:e.Opt(le),initial_token_distribution:e.Opt(Oe)}),Re=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),v=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(S)}),ve=e.Record({dissolve_delay_seconds:e.Nat64}),ge=e.Record({to_account:e.Opt(S)}),a=e.Variant({RewardToNeuron:ve,RewardToAccount:ge}),M=e.Record({node_provider:e.Opt(v),reward_mode:e.Opt(a),amount_e8s:e.Nat64}),we=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),ye=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(we),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,sale_delay_seconds:e.Opt(e.Nat64),max_participant_icp_e8s:e.Nat64,min_direct_participation_icp_e8s:e.Opt(e.Nat64),min_icp_e8s:e.Nat64,max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),be=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(ye)}),he=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),ke=e.Record({open_time_window:e.Opt(he)}),xe=e.Record({request:e.Opt(ke),swap_canister_id:e.Opt(e.Principal)}),Se=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n))}),Me=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(M)}),F=e.Record({human_readable:e.Opt(e.Text)}),Le=e.Record({contribution_threshold_xdr:e.Opt(F),one_third_participation_milestone_xdr:e.Opt(F),full_participation_milestone_xdr:e.Opt(F)}),et=e.Record({maximum_icp_xdr_rate:e.Opt(g),neurons_fund_matched_funding_curve_coefficients:e.Opt(Le),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(F),minimum_icp_xdr_rate:e.Opt(g)}),Y=e.Record({neuron_minimum_stake_e8s:e.Nat64,max_proposals_to_keep_per_topic:e.Nat32,neuron_management_fee_per_proposal_e8s:e.Nat64,reject_cost_e8s:e.Nat64,transaction_fee_e8s:e.Nat64,neuron_spawn_dissolve_delay_seconds:e.Nat64,minimum_icp_xdr_rate:e.Nat64,maximum_node_provider_rewards_e8s:e.Nat64,neurons_fund_economics:e.Opt(et)}),tt=e.Record({principals:e.Vec(e.Principal)}),ot=e.Variant({ToRemove:v,ToAdd:v}),nt=e.Record({change:e.Opt(ot)}),rt=e.Record({motion_text:e.Text}),at=e.Variant({RegisterKnownNeuron:s,ManageNeuron:V,CreateServiceNervousSystem:fe,ExecuteNnsFunction:Re,RewardNodeProvider:M,OpenSnsTokenSwap:be,SetSnsTokenSwapOpenTimeWindow:xe,SetDefaultFollowees:Se,RewardNodeProviders:Me,ManageNetworkEconomics:Y,ApproveGenesisKyc:tt,AddOrRemoveNodeProvider:nt,Motion:rt});t.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(at),summary:e.Text}));let st=e.Record({proposal:e.Opt(t),caller:e.Opt(e.Principal),proposer_id:e.Opt(o)}),Fe=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),Ae=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(v),timestamp:e.Nat64,rewards:e.Vec(M),xdr_conversion_rate:e.Opt(Fe),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),it=e.Record({total_maturity_e8s_equivalent:e.Opt(e.Nat64),maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_e8s:e.Opt(e.Nat64),count:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Opt(e.Nat64),staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),staked_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_voting_power:e.Opt(e.Nat64),count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64))}),qe=e.Record({total_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,garbage_collectable_neurons_count:e.Nat64,dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),ect_neuron_count:e.Nat64,total_supply_icp:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,community_fund_total_maturity_e8s_equivalent:e.Nat64,total_staked_e8s_seed:e.Nat64,total_staked_maturity_e8s_equivalent_ect:e.Nat64,total_staked_e8s:e.Nat64,not_dissolving_neurons_count:e.Nat64,total_locked_e8s:e.Nat64,neurons_fund_total_active_neurons:e.Nat64,total_voting_power_non_self_authenticating_controller:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_e8s_ect:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,dissolved_neurons_e8s:e.Nat64,total_staked_e8s_non_self_authenticating_controller:e.Opt(e.Nat64),dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),non_self_authenticating_controller_neuron_subset_metrics:e.Opt(it),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_maturity_e8s_equivalent_seed:e.Nat64,community_fund_total_staked_e8s:e.Nat64,not_dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),ct=e.Record({count:e.Opt(e.Nat64),previous_total_stake_e8s:e.Opt(e.Nat64),current_total_stake_e8s:e.Opt(e.Nat64),group_type:e.Int32}),Ee=e.Record({groups:e.Vec(ct),timestamp_seconds:e.Opt(e.Nat64)}),Be=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),day_after_genesis:e.Nat64,actual_timestamp_seconds:e.Nat64,total_available_e8s_equivalent:e.Nat64,latest_round_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,settled_proposals:e.Vec(o)}),Ge=e.Record({to_subaccount:e.Vec(e.Nat8),neuron_stake_e8s:e.Nat64,from:e.Opt(e.Principal),memo:e.Nat64,from_subaccount:e.Vec(e.Nat8),transfer_timestamp:e.Nat64,block_height:e.Nat64}),_t=e.Record({followers:e.Vec(o)}),dt=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,_t))}),pt=e.Variant({LastNeuronId:o}),Ke=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(pt)}),ut=e.Record({neuron_indexes_migration:e.Opt(Ke),copy_inactive_neurons_to_stable_memory_migration:e.Opt(Ke)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),lt=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),mt=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(lt)}),Ue=e.Record({vote:e.Int32,voting_power:e.Nat64}),Nt=e.Record({min_participant_icp_e8s:e.Opt(e.Nat64),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),Ot=e.Record({hotkey_principal:e.Opt(e.Principal),is_capped:e.Opt(e.Bool),maturity_equivalent_icp_e8s:e.Opt(e.Nat64),nns_neuron_id:e.Opt(o),amount_icp_e8s:e.Opt(e.Nat64)}),Z=e.Record({neurons_fund_neuron_portions:e.Vec(Ot)}),ft=e.Record({serialized_representation:e.Opt(e.Text)}),A=e.Record({total_maturity_equivalent_icp_e8s:e.Opt(e.Nat64),intended_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),swap_participation_limits:e.Opt(Nt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(Z),ideal_matched_participation_function:e.Opt(ft),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),Rt=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(Z)}),vt=e.Record({status:e.Opt(e.Int32),freezing_threshold:e.Opt(e.Nat64),controllers:e.Vec(e.Principal),memory_size:e.Opt(e.Nat64),cycles:e.Opt(e.Nat64),idle_cycles_burned_per_day:e.Opt(e.Nat64),module_hash:e.Vec(e.Nat8)}),y=e.Record({status:e.Opt(vt),canister_id:e.Opt(e.Principal)}),gt=e.Record({ledger_index_canister_summary:e.Opt(y),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(y),ledger_canister_summary:e.Opt(y),swap_canister_summary:e.Opt(y),governance_canister_summary:e.Opt(y),root_canister_summary:e.Opt(y),dapp_canister_summaries:e.Vec(y)}),We=e.Record({swap_background_information:e.Opt(gt)}),He=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),wt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),yt=e.Record({id:e.Opt(o),failure_reason:e.Opt(O),cf_participants:e.Vec(mt),ballots:e.Vec(e.Tuple(e.Nat64,Ue)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(Rt),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(We),latest_tally:e.Opt(He),sns_token_swap_lifecycle:e.Opt(e.Int32),decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(wt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),bt=e.Variant({Spawn:o,Split:_,Configure:K,Merge:U,DisburseToNeuron:W,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:u,MergeMaturity:H,Disburse:j}),ht=e.Record({command:e.Opt(bt),timestamp:e.Nat64}),je=e.Record({vote:e.Int32,proposal_id:e.Opt(o)}),kt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),T=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(je),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(kt),followees:e.Vec(e.Tuple(e.Int32,n)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(Ge),known_neuron_data:e.Opt(r),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),Uo=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,n)),making_sns_proposal:e.Opt(st),most_recent_monthly_node_provider_rewards:e.Opt(Ae),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(qe),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(v),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(Y),restore_aging_summary:e.Opt(Ee),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(Be),to_claim_transfers:e.Vec(Ge),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,dt)),migrations:e.Opt(ut),proposals:e.Vec(e.Tuple(e.Nat64,yt)),xdr_conversion_rate:e.Opt(Fe),in_flight_commands:e.Vec(e.Tuple(e.Nat64,ht)),neurons:e.Vec(e.Tuple(e.Nat64,T)),genesis_timestamp_seconds:e.Nat64}),q=e.Variant({Ok:e.Null,Err:O}),xt=e.Variant({Error:O,NeuronId:o}),St=e.Record({result:e.Opt(xt)}),ze=e.Variant({Ok:T,Err:O}),Tt=e.Variant({Ok:qe,Err:O}),Vt=e.Variant({Ok:Me,Err:O}),E=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(je),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,known_neuron_data:e.Opt(r),voting_power:e.Nat64,age_seconds:e.Nat64}),Xe=e.Variant({Ok:E,Err:O}),Pt=e.Record({nns_proposal_id:e.Opt(o)}),Ct=e.Record({final_neurons_fund_participation:e.Opt(A),initial_neurons_fund_participation:e.Opt(A),neurons_fund_refunds:e.Opt(Z)}),Mt=e.Record({neurons_fund_audit_info:e.Opt(Ct)}),Ft=e.Variant({Ok:Mt,Err:O}),At=e.Record({result:e.Opt(Ft)}),qt=e.Variant({Ok:v,Err:O}),I=e.Record({id:e.Opt(o),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,Ue)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,deadline_timestamp_seconds:e.Opt(e.Nat64),failed_timestamp_seconds:e.Nat64,reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(We),latest_tally:e.Opt(He),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(t),proposer:e.Opt(o),executed_timestamp_seconds:e.Nat64}),Et=e.Record({known_neurons:e.Vec(s)}),Bt=e.Record({neuron_ids:e.Vec(e.Nat64),include_empty_neurons_readable_by_caller:e.Opt(e.Bool),include_neurons_readable_by_caller:e.Bool}),Gt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,E)),full_neurons:e.Vec(T)}),Kt=e.Record({node_providers:e.Vec(v)}),Ut=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(o),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),Wt=e.Record({proposal_info:e.Vec(I)}),D=e.Record({created_neuron_id:e.Opt(o)}),Ht=e.Record({refreshed_neuron_id:e.Opt(o)}),jt=e.Record({target_neuron:e.Opt(T),source_neuron:e.Opt(T),target_neuron_info:e.Opt(E),source_neuron_info:e.Opt(E)}),zt=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(o)}),Xt=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Jt=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),$t=e.Record({transfer_block_height:e.Nat64}),Qt=e.Variant({Error:O,Spawn:D,Split:D,Follow:e.Record({}),ClaimOrRefresh:Ht,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:jt,DisburseToNeuron:D,MakeProposal:zt,StakeMaturity:Xt,MergeMaturity:Jt,Disburse:$t}),Je=e.Record({command:e.Opt(Qt)}),Yt=e.Record({total_direct_contribution_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_contribution_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),Zt=e.Variant({Committed:Yt,Aborted:e.Record({})}),It=e.Record({result:e.Opt(Zt),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Dt=e.Record({total_direct_participation_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),Lt=e.Variant({Committed:Dt,Aborted:e.Record({})}),eo=e.Record({result:e.Opt(Lt),nns_proposal_id:e.Opt(e.Nat64)}),to=e.Record({hotkey_principal:e.Opt(e.Text),is_capped:e.Opt(e.Bool),nns_neuron_id:e.Opt(e.Nat64),amount_icp_e8s:e.Opt(e.Nat64)}),oo=e.Record({neurons_fund_neuron_portions:e.Vec(to)}),no=e.Variant({Ok:oo,Err:O}),ro=e.Record({result:e.Opt(no)}),ao=e.Record({reward_account:e.Opt(S)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(o)],[q],[]),claim_or_refresh_neuron_from_account:e.Func([N],[St],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[ze],[]),get_full_neuron_by_id_or_subaccount:e.Func([C],[ze],[]),get_latest_reward_event:e.Func([],[Be],[]),get_metrics:e.Func([],[Tt],[]),get_monthly_node_provider_rewards:e.Func([],[Vt],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(Ae)],[]),get_network_economics_parameters:e.Func([],[Y],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[Xe],[]),get_neuron_info_by_id_or_subaccount:e.Func([C],[Xe],[]),get_neurons_fund_audit_info:e.Func([Pt],[At],[]),get_node_provider_by_caller:e.Func([e.Null],[qt],[]),get_pending_proposals:e.Func([],[e.Vec(I)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(I)],[]),get_restore_aging_summary:e.Func([],[Ee],[]),list_known_neurons:e.Func([],[Et],[]),list_neurons:e.Func([Bt],[Gt],[]),list_node_providers:e.Func([],[Kt],[]),list_proposals:e.Func([Ut],[Wt],[]),manage_neuron:e.Func([V],[Je],[]),settle_community_fund_participation:e.Func([It],[q],[]),settle_neurons_fund_participation:e.Func([eo],[ro],[]),simulate_manage_neuron:e.Func([V],[Je],[]),transfer_gtc_neuron:e.Func([o,o],[q],[]),update_neuron:e.Func([T],[e.Opt(O)],[]),update_node_provider:e.Func([ao],[q],[])})};var ho=class e{constructor(t,o){this.canisterId=t;this.certifiedService=o;this.canisterId=t,this.certifiedService=o}static create(t={}){let o=t.canisterId??po,{certifiedService:n}=(0,ko.createServices)({options:{...t,canisterId:o},idlFactory:Oo,certifiedIdlFactory:Qn});return new e(o,n)}async updateNeuron(t){(0,ko.assertNonNullish)(t.id);let o=vo({neuronIds:[t.id]}),r=(await this.certifiedService.list_neurons(o)).full_neurons[0];if((0,Yn.principalToAccountIdentifier)(this.canisterId,Uint8Array.from(r.account))!==t.accountIdentifier)throw new Error("Neuron account identifier can't be changed");let c=Kn({neuron:t,account:Uint8Array.from(r.account)});return this.certifiedService.update_neuron(c)}};var Dn=require("@dfinity/utils");var Zn=({IDL:e})=>{let t=e.Record({allowed_principals:e.Vec(e.Principal),access_controls_enabled:e.Bool,sns_subnet_ids:e.Vec(e.Principal)}),o=e.Record({wasm:e.Vec(e.Nat8),proposal_id:e.Opt(e.Nat64),canister_type:e.Int32}),n=e.Record({hash:e.Vec(e.Nat8),wasm:e.Opt(o)}),r=e.Record({message:e.Text}),s=e.Variant({Error:r,Hash:e.Vec(e.Nat8)}),c=e.Record({result:e.Opt(s)}),_=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),d=e.Record({id:e.Opt(e.Principal)}),N=e.Record({canisters:e.Vec(d)}),R=e.Record({slope_numerator:e.Opt(e.Nat64),intercept_icp_e8s:e.Opt(e.Nat64),from_direct_participation_icp_e8s:e.Opt(e.Nat64),slope_denominator:e.Opt(e.Nat64),to_direct_participation_icp_e8s:e.Opt(e.Nat64)}),u=e.Record({serialized_representation:e.Opt(e.Text)}),w=e.Record({coefficient_intervals:e.Vec(R),max_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),min_direct_participation_threshold_icp_e8s:e.Opt(e.Nat64),ideal_matched_participation_function:e.Opt(u)}),x=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),G=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(x)}),B=e.Record({participants:e.Vec(G)}),ne=e.Record({total_e8s:e.Nat64}),Q=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Nat64,memo:e.Nat64,stake_e8s:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64)}),K=e.Record({developer_neurons:e.Vec(Q)}),p=e.Record({airdrop_neurons:e.Vec(Q)}),U=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),W=e.Record({treasury_distribution:e.Opt(ne),developer_distribution:e.Opt(K),airdrop_distribution:e.Opt(p),swap_distribution:e.Opt(U)}),re=e.Variant({FractionalDeveloperVotingPower:W}),H=e.Record({iso_codes:e.Vec(e.Text)}),S=e.Record({url:e.Opt(e.Text),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),nns_proposal_id:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(_),fallback_controller_principal_ids:e.Vec(e.Text),token_symbol:e.Opt(e.Text),final_reward_rate_basis_points:e.Opt(e.Nat64),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),description:e.Opt(e.Text),max_neuron_age_seconds_for_age_bonus:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),dapp_canisters:e.Opt(N),neurons_fund_participation_constraints:e.Opt(w),neurons_fund_participants:e.Opt(B),max_age_bonus_percentage:e.Opt(e.Nat64),initial_token_distribution:e.Opt(re),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),proposal_reject_cost_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(H),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),ae=e.Record({sns_init_payload:e.Opt(S)}),j=e.Record({restored_dapp_canisters:e.Vec(d),nns_controlled_dapp_canisters:e.Vec(d),sns_controlled_dapp_canisters:e.Vec(d)}),se=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)}),C=e.Record({dapp_canisters_transfer_result:e.Opt(j),subnet_id:e.Opt(e.Principal),error:e.Opt(r),canisters:e.Opt(se)}),V=e.Record({allowed_principals:e.Vec(e.Principal)}),g=e.Record({proposal_id:e.Nat64}),f=e.Record({root_canister_id:e.Opt(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)}),m=e.Variant({Error:r,DeployedSns:f}),ie=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(m)}),h=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)}),z=e.Record({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(h)}),ce=e.Record({next_version:e.Opt(h)}),_e=e.Record({hash:e.Vec(e.Nat8)}),de=e.Record({proposal_id:e.Opt(e.Nat64)}),pe=e.Record({sns_subnet_ids:e.Vec(e.Principal)}),ue=e.Record({hash:e.Vec(e.Nat8)}),le=e.Record({wasm:e.Opt(o)}),X=e.Record({hash:e.Opt(e.Vec(e.Nat8))}),me=e.Record({contents:e.Opt(e.Vec(e.Nat8)),name:e.Opt(e.Text),visibility:e.Opt(e.Text)}),Ne=e.Record({sections:e.Vec(me)}),Oe=e.Variant({Ok:Ne,Error:r}),fe=e.Record({result:e.Opt(Oe)}),Re=e.Record({next_version:e.Opt(h),current_version:e.Opt(h)}),v=e.Record({upgrade_path:e.Vec(Re),sns_governance_canister_id:e.Opt(e.Principal)}),ve=e.Record({error:e.Opt(r)}),ge=e.Record({instances:e.Vec(f)}),a=e.Record({limit:e.Nat32,starting_at:e.Opt(h),sns_governance_canister_id:e.Opt(e.Principal)}),M=e.Record({archive_wasm_hash:e.Text,root_wasm_hash:e.Text,swap_wasm_hash:e.Text,ledger_wasm_hash:e.Text,governance_wasm_hash:e.Text,index_wasm_hash:e.Text}),we=e.Record({pretty_version:e.Opt(M),version:e.Opt(h)}),ye=e.Record({steps:e.Vec(we)}),be=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),he=e.Variant({Error:r,AllowedPrincipals:V}),ke=e.Record({update_allowed_principals_result:e.Opt(he)}),xe=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),Se=e.Record({error:e.Opt(r)});return e.Service({add_wasm:e.Func([n],[c],[]),deploy_new_sns:e.Func([ae],[C],[]),get_allowed_principals:e.Func([e.Record({})],[V],[]),get_deployed_sns_by_proposal_id:e.Func([g],[ie],[]),get_latest_sns_version_pretty:e.Func([e.Null],[e.Vec(e.Tuple(e.Text,e.Text))],[]),get_next_sns_version:e.Func([z],[ce],[]),get_proposal_id_that_added_wasm:e.Func([_e],[de],[]),get_sns_subnet_ids:e.Func([e.Record({})],[pe],[]),get_wasm:e.Func([ue],[le],[]),get_wasm_metadata:e.Func([X],[fe],[]),insert_upgrade_path_entries:e.Func([v],[ve],[]),list_deployed_snses:e.Func([e.Record({})],[ge],[]),list_upgrade_steps:e.Func([a],[ye],[]),update_allowed_principals:e.Func([be],[ke],[]),update_sns_subnet_list:e.Func([xe],[Se],[])})};var In=({IDL:e})=>{let t=e.Record({allowed_principals:e.Vec(e.Principal),access_controls_enabled:e.Bool,sns_subnet_ids:e.Vec(e.Principal)}),o=e.Record({wasm:e.Vec(e.Nat8),proposal_id:e.Opt(e.Nat64),canister_type:e.Int32}),n=e.Record({hash:e.Vec(e.Nat8),wasm:e.Opt(o)}),r=e.Record({message:e.Text}),s=e.Variant({Error:r,Hash:e.Vec(e.Nat8)}),c=e.Record({result:e.Opt(s)}),_=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),d=e.Record({id:e.Opt(e.Principal)}),N=e.Record({canisters:e.Vec(d)}),R=e.Record({slope_numerator:e.Opt(e.Nat64),intercept_icp_e8s:e.Opt(e.Nat64),from_direct_participation_icp_e8s:e.Opt(e.Nat64),slope_denominator:e.Opt(e.Nat64),to_direct_participation_icp_e8s:e.Opt(e.Nat64)}),u=e.Record({serialized_representation:e.Opt(e.Text)}),w=e.Record({coefficient_intervals:e.Vec(R),max_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),min_direct_participation_threshold_icp_e8s:e.Opt(e.Nat64),ideal_matched_participation_function:e.Opt(u)}),x=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),G=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(x)}),B=e.Record({participants:e.Vec(G)}),ne=e.Record({total_e8s:e.Nat64}),Q=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Nat64,memo:e.Nat64,stake_e8s:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64)}),K=e.Record({developer_neurons:e.Vec(Q)}),p=e.Record({airdrop_neurons:e.Vec(Q)}),U=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),W=e.Record({treasury_distribution:e.Opt(ne),developer_distribution:e.Opt(K),airdrop_distribution:e.Opt(p),swap_distribution:e.Opt(U)}),re=e.Variant({FractionalDeveloperVotingPower:W}),H=e.Record({iso_codes:e.Vec(e.Text)}),S=e.Record({url:e.Opt(e.Text),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),nns_proposal_id:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(_),fallback_controller_principal_ids:e.Vec(e.Text),token_symbol:e.Opt(e.Text),final_reward_rate_basis_points:e.Opt(e.Nat64),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),description:e.Opt(e.Text),max_neuron_age_seconds_for_age_bonus:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),dapp_canisters:e.Opt(N),neurons_fund_participation_constraints:e.Opt(w),neurons_fund_participants:e.Opt(B),max_age_bonus_percentage:e.Opt(e.Nat64),initial_token_distribution:e.Opt(re),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),proposal_reject_cost_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(H),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),ae=e.Record({sns_init_payload:e.Opt(S)}),j=e.Record({restored_dapp_canisters:e.Vec(d),nns_controlled_dapp_canisters:e.Vec(d),sns_controlled_dapp_canisters:e.Vec(d)}),se=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)}),C=e.Record({dapp_canisters_transfer_result:e.Opt(j),subnet_id:e.Opt(e.Principal),error:e.Opt(r),canisters:e.Opt(se)}),V=e.Record({allowed_principals:e.Vec(e.Principal)}),g=e.Record({proposal_id:e.Nat64}),f=e.Record({root_canister_id:e.Opt(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)}),m=e.Variant({Error:r,DeployedSns:f}),ie=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(m)}),h=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)}),z=e.Record({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(h)}),ce=e.Record({next_version:e.Opt(h)}),_e=e.Record({hash:e.Vec(e.Nat8)}),de=e.Record({proposal_id:e.Opt(e.Nat64)}),pe=e.Record({sns_subnet_ids:e.Vec(e.Principal)}),ue=e.Record({hash:e.Vec(e.Nat8)}),le=e.Record({wasm:e.Opt(o)}),X=e.Record({hash:e.Opt(e.Vec(e.Nat8))}),me=e.Record({contents:e.Opt(e.Vec(e.Nat8)),name:e.Opt(e.Text),visibility:e.Opt(e.Text)}),Ne=e.Record({sections:e.Vec(me)}),Oe=e.Variant({Ok:Ne,Error:r}),fe=e.Record({result:e.Opt(Oe)}),Re=e.Record({next_version:e.Opt(h),current_version:e.Opt(h)}),v=e.Record({upgrade_path:e.Vec(Re),sns_governance_canister_id:e.Opt(e.Principal)}),ve=e.Record({error:e.Opt(r)}),ge=e.Record({instances:e.Vec(f)}),a=e.Record({limit:e.Nat32,starting_at:e.Opt(h),sns_governance_canister_id:e.Opt(e.Principal)}),M=e.Record({archive_wasm_hash:e.Text,root_wasm_hash:e.Text,swap_wasm_hash:e.Text,ledger_wasm_hash:e.Text,governance_wasm_hash:e.Text,index_wasm_hash:e.Text}),we=e.Record({pretty_version:e.Opt(M),version:e.Opt(h)}),ye=e.Record({steps:e.Vec(we)}),be=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),he=e.Variant({Error:r,AllowedPrincipals:V}),ke=e.Record({update_allowed_principals_result:e.Opt(he)}),xe=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),Se=e.Record({error:e.Opt(r)});return e.Service({add_wasm:e.Func([n],[c],[]),deploy_new_sns:e.Func([ae],[C],[]),get_allowed_principals:e.Func([e.Record({})],[V],["query"]),get_deployed_sns_by_proposal_id:e.Func([g],[ie],["query"]),get_latest_sns_version_pretty:e.Func([e.Null],[e.Vec(e.Tuple(e.Text,e.Text))],["query"]),get_next_sns_version:e.Func([z],[ce],["query"]),get_proposal_id_that_added_wasm:e.Func([_e],[de],["query"]),get_sns_subnet_ids:e.Func([e.Record({})],[pe],["query"]),get_wasm:e.Func([ue],[le],["query"]),get_wasm_metadata:e.Func([X],[fe],["query"]),insert_upgrade_path_entries:e.Func([v],[ve],[]),list_deployed_snses:e.Func([e.Record({})],[ge],["query"]),list_upgrade_steps:e.Func([a],[ye],["query"]),update_allowed_principals:e.Func([be],[ke],[]),update_sns_subnet_list:e.Func([xe],[Se],[])})};var xo=class e{constructor(t,o){this.service=t;this.certifiedService=o;this.listSnses=async({certified:t=!0})=>{let o=t?this.certifiedService:this.service,{instances:n}=await o.list_deployed_snses({});return n}}static create(t={}){let{service:o,certifiedService:n}=(0,Dn.createServices)({options:{...t,canisterId:t.canisterId??Do},idlFactory:In,certifiedIdlFactory:Zn});return new e(o,n)}};var Ln=({recentBallots:e,proposalId:t})=>{if(!t)return;let o=e.find(({proposalId:n})=>n===t);return o==null?void 0:o.vote},er=({neurons:e,proposal:t})=>{let{ballots:o,proposalTimestampSeconds:n}=t;return e.filter(({createdTimestampSeconds:r,neuronId:s})=>{let c=r>n,_=o.find(({neuronId:d})=>d===s)===void 0;return c||_})},na=({neurons:e,proposal:t})=>{let{id:o}=t;return e.filter(({recentBallots:n,neuronId:r})=>Ln({recentBallots:n,proposalId:o})===void 0&&er({neurons:e,proposal:t}).find(({neuronId:s})=>s===r)===void 0)},ra=({neurons:e,proposal:{id:t}})=>e.filter(({recentBallots:o})=>Ln({recentBallots:o,proposalId:t})!==void 0);0&&(module.exports={CouldNotClaimNeuronError,GenesisTokenCanister,GovernanceCanister,GovernanceError,GovernanceTestCanister,InsufficientAmountError,NeuronState,NeuronType,NnsFunction,ProposalRewardStatus,ProposalStatus,SnsWasmCanister,StakeNeuronError,Topic,UnrecognizedTypeError,UnsupportedValueError,Vote,ineligibleNeurons,votableNeurons,votedNeurons});
|
|
1
|
+
"use strict";var vr=Object.create;var ho=Object.defineProperty;var wr=Object.getOwnPropertyDescriptor;var yr=Object.getOwnPropertyNames;var br=Object.getPrototypeOf,hr=Object.prototype.hasOwnProperty;var Sr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),kr=(e,t)=>{for(var o in t)ho(e,o,{get:t[o],enumerable:!0})},tn=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of yr(t))!hr.call(e,r)&&r!==o&&ho(e,r,{get:()=>t[r],enumerable:!(n=wr(t,r))||n.enumerable});return e};var xr=(e,t,o)=>(o=e!=null?vr(br(e)):{},tn(t||!e||!e.__esModule?ho(o,"default",{value:e,enumerable:!0}):o,e)),Vr=e=>tn(ho({},"__esModule",{value:!0}),e);var Sn=Sr((Zs,hn)=>{hn.exports=require("crypto").randomBytes});var xs={};kr(xs,{CanisterAction:()=>pn,CanisterInstallMode:()=>ln,CouldNotClaimNeuronError:()=>ot,GenesisTokenCanister:()=>ko,GovernanceCanister:()=>Bo,GovernanceError:()=>Ce,GovernanceTestCanister:()=>Go,InsufficientAmountError:()=>nt,LogVisibility:()=>dn,NeuronState:()=>on,NeuronType:()=>_n,NeuronVisibility:()=>un,NnsFunction:()=>cn,ProposalRewardStatus:()=>rn,ProposalStatus:()=>sn,SnsWasmCanister:()=>Ko,StakeNeuronError:()=>wo,Topic:()=>nn,UnrecognizedTypeError:()=>Pe,UnsupportedValueError:()=>k,Vote:()=>an,ineligibleNeurons:()=>gr,votableNeurons:()=>Ss,votedNeurons:()=>ks});module.exports=Vr(xs);var on=(i=>(i[i.Unspecified=0]="Unspecified",i[i.Locked=1]="Locked",i[i.Dissolving=2]="Dissolving",i[i.Dissolved=3]="Dissolved",i[i.Spawning=4]="Spawning",i))(on||{}),nn=(p=>(p[p.Unspecified=0]="Unspecified",p[p.NeuronManagement=1]="NeuronManagement",p[p.ExchangeRate=2]="ExchangeRate",p[p.NetworkEconomics=3]="NetworkEconomics",p[p.Governance=4]="Governance",p[p.NodeAdmin=5]="NodeAdmin",p[p.ParticipantManagement=6]="ParticipantManagement",p[p.SubnetManagement=7]="SubnetManagement",p[p.NetworkCanisterManagement=8]="NetworkCanisterManagement",p[p.Kyc=9]="Kyc",p[p.NodeProviderRewards=10]="NodeProviderRewards",p[p.SnsDecentralizationSale=11]="SnsDecentralizationSale",p[p.IcOsVersionDeployment=12]="IcOsVersionDeployment",p[p.IcOsVersionElection=13]="IcOsVersionElection",p[p.SnsAndCommunityFund=14]="SnsAndCommunityFund",p[p.ApiBoundaryNodeManagement=15]="ApiBoundaryNodeManagement",p[p.SubnetRental=16]="SubnetRental",p[p.ProtocolCanisterManagement=17]="ProtocolCanisterManagement",p[p.ServiceNervousSystemManagement=18]="ServiceNervousSystemManagement",p))(nn||{}),rn=(i=>(i[i.Unknown=0]="Unknown",i[i.AcceptVotes=1]="AcceptVotes",i[i.ReadyToSettle=2]="ReadyToSettle",i[i.Settled=3]="Settled",i[i.Ineligible=4]="Ineligible",i))(rn||{}),sn=(c=>(c[c.Unknown=0]="Unknown",c[c.Open=1]="Open",c[c.Rejected=2]="Rejected",c[c.Accepted=3]="Accepted",c[c.Executed=4]="Executed",c[c.Failed=5]="Failed",c))(sn||{}),an=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(an||{}),cn=(s=>(s[s.Unspecified=0]="Unspecified",s[s.CreateSubnet=1]="CreateSubnet",s[s.AddNodeToSubnet=2]="AddNodeToSubnet",s[s.NnsCanisterInstall=3]="NnsCanisterInstall",s[s.NnsCanisterUpgrade=4]="NnsCanisterUpgrade",s[s.BlessReplicaVersion=5]="BlessReplicaVersion",s[s.RecoverSubnet=6]="RecoverSubnet",s[s.UpdateConfigOfSubnet=7]="UpdateConfigOfSubnet",s[s.AssignNoid=8]="AssignNoid",s[s.NnsRootUpgrade=9]="NnsRootUpgrade",s[s.IcpXdrConversionRate=10]="IcpXdrConversionRate",s[s.DeployGuestosToAllSubnetNodes=11]="DeployGuestosToAllSubnetNodes",s[s.ClearProvisionalWhitelist=12]="ClearProvisionalWhitelist",s[s.RemoveNodesFromSubnet=13]="RemoveNodesFromSubnet",s[s.SetAuthorizedSubnetworks=14]="SetAuthorizedSubnetworks",s[s.SetFirewallConfig=15]="SetFirewallConfig",s[s.UpdateNodeOperatorConfig=16]="UpdateNodeOperatorConfig",s[s.StopOrStartNnsCanister=17]="StopOrStartNnsCanister",s[s.RemoveNodes=18]="RemoveNodes",s[s.UninstallCode=19]="UninstallCode",s[s.UpdateNodeRewardsTable=20]="UpdateNodeRewardsTable",s[s.AddOrRemoveDataCenters=21]="AddOrRemoveDataCenters",s[s.UpdateUnassignedNodesConfig=22]="UpdateUnassignedNodesConfig",s[s.RemoveNodeOperators=23]="RemoveNodeOperators",s[s.RerouteCanisterRanges=24]="RerouteCanisterRanges",s[s.AddFirewallRules=25]="AddFirewallRules",s[s.RemoveFirewallRules=26]="RemoveFirewallRules",s[s.UpdateFirewallRules=27]="UpdateFirewallRules",s[s.PrepareCanisterMigration=28]="PrepareCanisterMigration",s[s.CompleteCanisterMigration=29]="CompleteCanisterMigration",s[s.AddSnsWasm=30]="AddSnsWasm",s[s.ChangeSubnetMembership=31]="ChangeSubnetMembership",s[s.UpdateSubnetType=32]="UpdateSubnetType",s[s.ChangeSubnetTypeAssignment=33]="ChangeSubnetTypeAssignment",s[s.UpdateSnsWasmSnsSubnetIds=34]="UpdateSnsWasmSnsSubnetIds",s[s.UpdateAllowedPrincipals=35]="UpdateAllowedPrincipals",s[s.RetireReplicaVersion=36]="RetireReplicaVersion",s[s.InsertSnsWasmUpgradePathEntries=37]="InsertSnsWasmUpgradePathEntries",s[s.ReviseElectedGuestosVersions=38]="ReviseElectedGuestosVersions",s[s.BitcoinSetConfig=39]="BitcoinSetConfig",s[s.UpdateElectedHostosVersions=40]="UpdateElectedHostosVersions",s[s.UpdateNodesHostosVersion=41]="UpdateNodesHostosVersion",s[s.HardResetNnsRootToVersion=42]="HardResetNnsRootToVersion",s[s.AddApiBoundaryNodes=43]="AddApiBoundaryNodes",s[s.RemoveApiBoundaryNodes=44]="RemoveApiBoundaryNodes",s[s.UpdateApiBoundaryNodeDomain=45]="UpdateApiBoundaryNodeDomain",s[s.UpdateApiBoundaryNodesVersion=46]="UpdateApiBoundaryNodesVersion",s[s.DeployGuestosToSomeApiBoundaryNodes=47]="DeployGuestosToSomeApiBoundaryNodes",s[s.DeployGuestosToAllUnassignedNodes=48]="DeployGuestosToAllUnassignedNodes",s[s.UpdateSshReadOnlyAccessForAllUnassignedNodes=49]="UpdateSshReadOnlyAccessForAllUnassignedNodes",s[s.ReviseElectedHostosVersions=50]="ReviseElectedHostosVersions",s[s.DeployHostosToSomeNodes=51]="DeployHostosToSomeNodes",s[s.SubnetRentalRequest=52]="SubnetRentalRequest",s))(cn||{}),_n=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Seed=1]="Seed",n[n.Ect=2]="Ect",n))(_n||{}),dn=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Controllers=1]="Controllers",n[n.Public=2]="Public",n))(dn||{}),pn=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Stop=1]="Stop",n[n.Start=2]="Start",n))(pn||{}),un=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Private=1]="Private",n[n.Public=2]="Public",n))(un||{}),ln=(r=>(r[r.Unspecified=0]="Unspecified",r[r.Install=1]="Install",r[r.Reinstall=2]="Reinstall",r[r.Upgrade=3]="Upgrade",r))(ln||{});var wo=class extends Error{},ot=class extends wo{},nt=class extends wo{constructor(o){super();this.minimumAmount=o}},Pe=class extends Error{},Ce=class extends Error{constructor(o){super();this.detail=o}},k=class extends Error{constructor(t){super("Unsupported value: "+t)}};var Rn=require("@dfinity/utils");var mn=({IDL:e})=>{let t=e.Record({id:e.Nat64}),o=e.Variant({Ok:e.Vec(t),Err:e.Text}),n=e.Variant({Ok:e.Null,Err:e.Text}),r=e.Record({error:e.Opt(e.Text),timestamp_seconds:e.Nat64,neuron_id:e.Opt(t)}),i=e.Record({authenticated_principal_id:e.Opt(e.Principal),successfully_transferred_neurons:e.Vec(r),is_whitelisted_for_forwarding:e.Bool,has_donated:e.Bool,failed_transferred_neurons:e.Vec(r),neuron_ids:e.Vec(t),has_claimed:e.Bool,has_forwarded:e.Bool,icpts:e.Nat32}),c=e.Variant({Ok:i,Err:e.Text});return e.Service({balance:e.Func([e.Text],[e.Nat32],[]),claim_neurons:e.Func([e.Text],[o],[]),donate_account:e.Func([e.Text],[n],[]),forward_whitelisted_unclaimed_accounts:e.Func([e.Null],[n],[]),get_account:e.Func([e.Text],[c],[]),get_build_metadata:e.Func([],[e.Text],[]),len:e.Func([],[e.Nat16],[]),total:e.Func([],[e.Nat32],[])})};var Nn=({IDL:e})=>{let t=e.Record({id:e.Nat64}),o=e.Variant({Ok:e.Vec(t),Err:e.Text}),n=e.Variant({Ok:e.Null,Err:e.Text}),r=e.Record({error:e.Opt(e.Text),timestamp_seconds:e.Nat64,neuron_id:e.Opt(t)}),i=e.Record({authenticated_principal_id:e.Opt(e.Principal),successfully_transferred_neurons:e.Vec(r),is_whitelisted_for_forwarding:e.Bool,has_donated:e.Bool,failed_transferred_neurons:e.Vec(r),neuron_ids:e.Vec(t),has_claimed:e.Bool,has_forwarded:e.Bool,icpts:e.Nat32}),c=e.Variant({Ok:i,Err:e.Text});return e.Service({balance:e.Func([e.Text],[e.Nat32],["query"]),claim_neurons:e.Func([e.Text],[o],[]),donate_account:e.Func([e.Text],[n],[]),forward_whitelisted_unclaimed_accounts:e.Func([e.Null],[n],[]),get_account:e.Func([e.Text],[c],["query"]),get_build_metadata:e.Func([],[e.Text],["query"]),len:e.Func([],[e.Nat16],["query"]),total:e.Func([],[e.Nat32],["query"])})};var yo=require("@dfinity/principal"),Fs=yo.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),So=yo.Principal.fromText("rrkah-fqaaa-aaaaa-aaaaq-cai"),On=yo.Principal.fromText("renrk-eyaaa-aaaaa-aaada-cai"),fn=yo.Principal.fromText("r7inp-6aaaa-aaaaa-aaabq-cai");var ko=class e{constructor(t){this.service=t;this.claimNeurons=async({hexPubKey:t})=>{let o=await this.service.claim_neurons(t);if("Ok"in o)return o.Ok.map(n=>n.id);throw new Error(o.Err)}}static create(t={}){let{service:o}=(0,Rn.createServices)({options:{...t,canisterId:t.canisterId??On},idlFactory:Nn,certifiedIdlFactory:mn});return new e(o)}};var ur=require("@dfinity/agent"),Me=require("@dfinity/ledger-icp"),u=require("@dfinity/utils");function Tr(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function Wo(e,...t){if(!Tr(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function Ho(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function gn(e,t){Wo(e);let o=t.outputLen;if(e.length<o)throw new Error(`digestInto() expects output buffer of length at least ${o}`)}var Vo=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),ae=(e,t)=>e<<32-t|e>>>t;var Ws=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Pr(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function jo(e){return typeof e=="string"&&(e=Pr(e)),Wo(e),e}var xo=class{clone(){return this._cloneInto()}},Hs={}.toString;function vn(e){let t=n=>e().update(jo(n)).digest(),o=e();return t.outputLen=o.outputLen,t.blockLen=o.blockLen,t.create=()=>e(),t}function Cr(e,t,o,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,o,n);let r=BigInt(32),i=BigInt(4294967295),c=Number(o>>r&i),d=Number(o&i),_=n?4:0,N=n?0:4;e.setUint32(t+_,c,n),e.setUint32(t+N,d,n)}var wn=(e,t,o)=>e&t^~e&o,yn=(e,t,o)=>e&t^e&o^t&o,To=class extends xo{constructor(t,o,n,r){super(),this.blockLen=t,this.outputLen=o,this.padOffset=n,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=Vo(this.buffer)}update(t){Ho(this);let{view:o,buffer:n,blockLen:r}=this;t=jo(t);let i=t.length;for(let c=0;c<i;){let d=Math.min(r-this.pos,i-c);if(d===r){let _=Vo(t);for(;r<=i-c;c+=r)this.process(_,c);continue}n.set(t.subarray(c,c+d),this.pos),this.pos+=d,c+=d,this.pos===r&&(this.process(o,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Ho(this),gn(t,this),this.finished=!0;let{buffer:o,view:n,blockLen:r,isLE:i}=this,{pos:c}=this;o[c++]=128,this.buffer.subarray(c).fill(0),this.padOffset>r-c&&(this.process(n,0),c=0);for(let l=c;l<r;l++)o[l]=0;Cr(n,r-8,BigInt(this.length*8),i),this.process(n,0);let d=Vo(t),_=this.outputLen;if(_%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let N=_/4,f=this.get();if(N>f.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<N;l++)d.setUint32(4*l,f[l],i)}digest(){let{buffer:t,outputLen:o}=this;this.digestInto(t);let n=t.slice(0,o);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:o,buffer:n,length:r,finished:i,destroyed:c,pos:d}=this;return t.length=r,t.pos=d,t.finished=i,t.destroyed=c,r%o&&t.buffer.set(n),t}};var Mr=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),De=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Le=new Uint32Array(64),zo=class extends To{constructor(){super(64,32,8,!1),this.A=De[0]|0,this.B=De[1]|0,this.C=De[2]|0,this.D=De[3]|0,this.E=De[4]|0,this.F=De[5]|0,this.G=De[6]|0,this.H=De[7]|0}get(){let{A:t,B:o,C:n,D:r,E:i,F:c,G:d,H:_}=this;return[t,o,n,r,i,c,d,_]}set(t,o,n,r,i,c,d,_){this.A=t|0,this.B=o|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=c|0,this.G=d|0,this.H=_|0}process(t,o){for(let l=0;l<16;l++,o+=4)Le[l]=t.getUint32(o,!1);for(let l=16;l<64;l++){let v=Le[l-15],x=Le[l-2],B=ae(v,7)^ae(v,18)^v>>>3,X=ae(x,17)^ae(x,19)^x>>>10;Le[l]=X+Le[l-7]+B+Le[l-16]|0}let{A:n,B:r,C:i,D:c,E:d,F:_,G:N,H:f}=this;for(let l=0;l<64;l++){let v=ae(d,6)^ae(d,11)^ae(d,25),x=f+v+wn(d,_,N)+Mr[l]+Le[l]|0,X=(ae(n,2)^ae(n,13)^ae(n,22))+yn(n,r,i)|0;f=N,N=_,_=d,d=c+x|0,c=i,i=r,r=n,n=x+X|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,c=c+this.D|0,d=d+this.E|0,_=_+this.F|0,N=N+this.G|0,f=f+this.H|0,this.set(n,r,i,c,d,_,N,f)}roundClean(){Le.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var bn=vn(()=>new zo);var Lo=xr(Sn());var kn=({IDL:e})=>{let t=e.Rec(),o=e.Rec(),n=e.Record({id:e.Nat64}),r=e.Record({followees:e.Vec(n)}),i=e.Record({name:e.Text,description:e.Opt(e.Text)}),c=e.Record({id:e.Opt(n),known_neuron_data:e.Opt(i)}),d=e.Record({percentage_to_spawn:e.Opt(e.Nat32),new_controller:e.Opt(e.Principal),nonce:e.Opt(e.Nat64)}),_=e.Record({amount_e8s:e.Nat64}),N=e.Record({topic:e.Int32,followees:e.Vec(n)}),f=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),l=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:f,Memo:e.Nat64}),v=e.Record({by:e.Opt(l)}),x=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),B=e.Record({new_hot_key:e.Opt(e.Principal)}),X=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),de=e.Record({additional_dissolve_delay_seconds:e.Nat32}),pe=e.Record({visibility:e.Opt(e.Int32)}),ue=e.Record({dissolve_timestamp_seconds:e.Nat64}),p=e.Variant({RemoveHotKey:x,AddHotKey:B,ChangeAutoStakeMaturity:X,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:de,SetVisibility:pe,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:ue}),M=e.Record({operation:e.Opt(p)}),J=e.Record({vote:e.Int32,proposal:e.Opt(n)}),F=e.Record({source_neuron_id:e.Opt(n)}),A=e.Record({dissolve_delay_seconds:e.Nat64,kyc_verified:e.Bool,amount_e8s:e.Nat64,new_controller:e.Opt(e.Principal),nonce:e.Nat64}),$=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),q=e.Record({percentage_to_merge:e.Nat32}),h=e.Record({hash:e.Vec(e.Nat8)}),le=e.Record({e8s:e.Nat64}),C=e.Record({to_account:e.Opt(h),amount:e.Opt(le)}),me=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:v,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:o,StakeMaturity:$,MergeMaturity:q,Disburse:C}),V=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:n}),S=e.Record({id:e.Opt(n),command:e.Opt(me),neuron_id_or_subaccount:e.Opt(V)}),Ne=e.Record({controllers:e.Vec(e.Principal)}),Oe=e.Record({freezing_threshold:e.Opt(e.Nat64),controllers:e.Opt(Ne),log_visibility:e.Opt(e.Int32),wasm_memory_limit:e.Opt(e.Nat64),memory_allocation:e.Opt(e.Nat64),compute_allocation:e.Opt(e.Nat64)}),Q=e.Record({canister_id:e.Opt(e.Principal),settings:e.Opt(Oe)}),fe=e.Record({skip_stopping_before_installing:e.Opt(e.Bool),wasm_module_hash:e.Opt(e.Vec(e.Nat8)),canister_id:e.Opt(e.Principal),arg_hash:e.Opt(e.Vec(e.Nat8)),install_mode:e.Opt(e.Int32)}),Y=e.Record({action:e.Opt(e.Int32),canister_id:e.Opt(e.Principal)}),y=e.Record({basis_points:e.Opt(e.Nat64)}),g=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),Re=e.Record({reward_rate_transition_duration:e.Opt(g),initial_reward_rate:e.Opt(y),final_reward_rate:e.Opt(y)}),ge=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(y),neuron_maximum_age_for_age_bonus:e.Opt(g),neuron_maximum_dissolve_delay:e.Opt(g),neuron_minimum_dissolve_delay_to_vote:e.Opt(g),neuron_maximum_age_bonus:e.Opt(y),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(g),proposal_initial_voting_period:e.Opt(g),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(Re)}),Z=e.Record({base64_encoding:e.Opt(e.Text)}),ve=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(Z),token_name:e.Opt(e.Text)}),we=e.Record({id:e.Opt(e.Principal)}),ye=e.Record({dissolve_delay_interval:e.Opt(g),count:e.Opt(e.Nat64)}),be=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),he=e.Record({iso_codes:e.Vec(e.Text)}),Se=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(g),neuron_basket_construction_parameters:e.Opt(ye),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(m),minimum_icp:e.Opt(m),minimum_direct_participation_icp:e.Opt(m),minimum_participant_icp:e.Opt(m),start_time:e.Opt(be),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(he)}),I=e.Record({total:e.Opt(m)}),ke=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(g),memo:e.Opt(e.Nat64),vesting_period:e.Opt(g),stake:e.Opt(m)}),xe=e.Record({developer_neurons:e.Vec(ke)}),Ve=e.Record({treasury_distribution:e.Opt(I),developer_distribution:e.Opt(xe),swap_distribution:e.Opt(I)}),s=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(ge),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(Z),name:e.Opt(e.Text),ledger_parameters:e.Opt(ve),description:e.Opt(e.Text),dapp_canisters:e.Vec(we),swap_parameters:e.Opt(Se),initial_token_distribution:e.Opt(Ve)}),D=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),w=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(h)}),Te=e.Record({dissolve_delay_seconds:e.Nat64}),rt=e.Record({to_account:e.Opt(h)}),st=e.Variant({RewardToNeuron:Te,RewardToAccount:rt}),G=e.Record({node_provider:e.Opt(w),reward_mode:e.Opt(st),amount_e8s:e.Nat64}),at=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),it=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(at),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,sale_delay_seconds:e.Opt(e.Nat64),max_participant_icp_e8s:e.Nat64,min_direct_participation_icp_e8s:e.Opt(e.Nat64),min_icp_e8s:e.Nat64,max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),Fe=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(it)}),ct=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),_t=e.Record({open_time_window:e.Opt(ct)}),Ae=e.Record({request:e.Opt(_t),swap_canister_id:e.Opt(e.Principal)}),qe=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),te=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(G)}),U=e.Record({human_readable:e.Opt(e.Text)}),dt=e.Record({contribution_threshold_xdr:e.Opt(U),one_third_participation_milestone_xdr:e.Opt(U),full_participation_milestone_xdr:e.Opt(U)}),pt=e.Record({maximum_icp_xdr_rate:e.Opt(y),neurons_fund_matched_funding_curve_coefficients:e.Opt(dt),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(U),minimum_icp_xdr_rate:e.Opt(y)}),K=e.Record({neuron_minimum_stake_e8s:e.Nat64,max_proposals_to_keep_per_topic:e.Nat32,neuron_management_fee_per_proposal_e8s:e.Nat64,reject_cost_e8s:e.Nat64,transaction_fee_e8s:e.Nat64,neuron_spawn_dissolve_delay_seconds:e.Nat64,minimum_icp_xdr_rate:e.Nat64,maximum_node_provider_rewards_e8s:e.Nat64,neurons_fund_economics:e.Opt(pt)}),W=e.Record({principals:e.Vec(e.Principal)}),ut=e.Variant({ToRemove:w,ToAdd:w}),Ee=e.Record({change:e.Opt(ut)}),Be=e.Record({motion_text:e.Text}),lt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:S,UpdateCanisterSettings:Q,InstallCode:fe,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:G,OpenSnsTokenSwap:Fe,SetSnsTokenSwapOpenTimeWindow:Ae,SetDefaultFollowees:qe,RewardNodeProviders:te,ManageNetworkEconomics:K,ApproveGenesisKyc:W,AddOrRemoveNodeProvider:Ee,Motion:Be});o.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(lt),summary:e.Text}));let mt=e.Record({proposal:e.Opt(o),caller:e.Opt(e.Principal),proposer_id:e.Opt(n)}),Ge=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),oe=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(w),timestamp:e.Nat64,rewards:e.Vec(G),xdr_conversion_rate:e.Opt(Ge),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),Ue=e.Record({total_maturity_e8s_equivalent:e.Opt(e.Nat64),maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_e8s:e.Opt(e.Nat64),count:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Opt(e.Nat64),staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),staked_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_voting_power:e.Opt(e.Nat64),count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64))}),Ke=e.Record({total_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,garbage_collectable_neurons_count:e.Nat64,dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),ect_neuron_count:e.Nat64,total_supply_icp:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,community_fund_total_maturity_e8s_equivalent:e.Nat64,total_staked_e8s_seed:e.Nat64,total_staked_maturity_e8s_equivalent_ect:e.Nat64,total_staked_e8s:e.Nat64,not_dissolving_neurons_count:e.Nat64,total_locked_e8s:e.Nat64,neurons_fund_total_active_neurons:e.Nat64,total_voting_power_non_self_authenticating_controller:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_e8s_ect:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,dissolved_neurons_e8s:e.Nat64,total_staked_e8s_non_self_authenticating_controller:e.Opt(e.Nat64),dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),non_self_authenticating_controller_neuron_subset_metrics:e.Opt(Ue),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_maturity_e8s_equivalent_seed:e.Nat64,community_fund_total_staked_e8s:e.Nat64,not_dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),public_neuron_subset_metrics:e.Opt(Ue),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),Nt=e.Record({count:e.Opt(e.Nat64),previous_total_stake_e8s:e.Opt(e.Nat64),current_total_stake_e8s:e.Opt(e.Nat64),group_type:e.Int32}),We=e.Record({groups:e.Vec(Nt),timestamp_seconds:e.Opt(e.Nat64)}),He=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),day_after_genesis:e.Nat64,actual_timestamp_seconds:e.Nat64,total_available_e8s_equivalent:e.Nat64,latest_round_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,settled_proposals:e.Vec(n)}),je=e.Record({to_subaccount:e.Vec(e.Nat8),neuron_stake_e8s:e.Nat64,from:e.Opt(e.Principal),memo:e.Nat64,from_subaccount:e.Vec(e.Nat8),transfer_timestamp:e.Nat64,block_height:e.Nat64}),Ot=e.Record({followers:e.Vec(n)}),ft=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,Ot))}),Rt=e.Variant({LastNeuronId:n}),ze=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(Rt)}),gt=e.Record({neuron_indexes_migration:e.Opt(ze),copy_inactive_neurons_to_stable_memory_migration:e.Opt(ze)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),vt=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(W),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),wt=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(vt)}),Xe=e.Record({vote:e.Int32,voting_power:e.Nat64}),yt=e.Record({min_participant_icp_e8s:e.Opt(e.Nat64),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),bt=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Opt(e.Principal),hotkeys:e.Vec(e.Principal),is_capped:e.Opt(e.Bool),maturity_equivalent_icp_e8s:e.Opt(e.Nat64),nns_neuron_id:e.Opt(n),amount_icp_e8s:e.Opt(e.Nat64)}),ne=e.Record({neurons_fund_neuron_portions:e.Vec(bt)}),ht=e.Record({serialized_representation:e.Opt(e.Text)}),H=e.Record({total_maturity_equivalent_icp_e8s:e.Opt(e.Nat64),intended_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),swap_participation_limits:e.Opt(yt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(ne),ideal_matched_participation_function:e.Opt(ht),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),St=e.Record({final_neurons_fund_participation:e.Opt(H),initial_neurons_fund_participation:e.Opt(H),neurons_fund_refunds:e.Opt(ne)}),kt=e.Record({status:e.Opt(e.Int32),freezing_threshold:e.Opt(e.Nat64),controllers:e.Vec(e.Principal),memory_size:e.Opt(e.Nat64),cycles:e.Opt(e.Nat64),idle_cycles_burned_per_day:e.Opt(e.Nat64),module_hash:e.Vec(e.Nat8)}),b=e.Record({status:e.Opt(kt),canister_id:e.Opt(e.Principal)}),xt=e.Record({ledger_index_canister_summary:e.Opt(b),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(b),ledger_canister_summary:e.Opt(b),swap_canister_summary:e.Opt(b),governance_canister_summary:e.Opt(b),root_canister_summary:e.Opt(b),dapp_canister_summaries:e.Vec(b)}),Je=e.Record({swap_background_information:e.Opt(xt)}),$e=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),Vt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Tt=e.Record({id:e.Opt(n),failure_reason:e.Opt(O),cf_participants:e.Vec(wt),ballots:e.Vec(e.Tuple(e.Nat64,Xe)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(St),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Je),latest_tally:e.Opt($e),sns_token_swap_lifecycle:e.Opt(e.Int32),decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),wait_for_quiet_state:e.Opt(Vt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Pt=e.Variant({Spawn:n,Split:_,Configure:M,Merge:F,DisburseToNeuron:A,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:v,MergeMaturity:q,Disburse:C}),Ct=e.Record({command:e.Opt(Pt),timestamp:e.Nat64}),Qe=e.Record({vote:e.Int32,proposal_id:e.Opt(n)}),Mt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),T=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Qe),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(Mt),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(je),known_neuron_data:e.Opt(i),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),en=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r)),making_sns_proposal:e.Opt(mt),most_recent_monthly_node_provider_rewards:e.Opt(oe),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Ke),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(w),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(K),restore_aging_summary:e.Opt(We),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(He),to_claim_transfers:e.Vec(je),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,ft)),migrations:e.Opt(gt),proposals:e.Vec(e.Tuple(e.Nat64,Tt)),xdr_conversion_rate:e.Opt(Ge),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Ct)),neurons:e.Vec(e.Tuple(e.Nat64,T)),genesis_timestamp_seconds:e.Nat64}),j=e.Variant({Ok:e.Null,Err:O}),Ft=e.Variant({Error:O,NeuronId:n}),At=e.Record({result:e.Opt(Ft)}),Ye=e.Variant({Ok:T,Err:O}),qt=e.Variant({Ok:Ke,Err:O}),Et=e.Variant({Ok:te,Err:O}),z=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Qe),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,visibility:e.Opt(e.Int32),known_neuron_data:e.Opt(i),voting_power:e.Nat64,age_seconds:e.Nat64}),Ze=e.Variant({Ok:z,Err:O}),Bt=e.Record({nns_proposal_id:e.Opt(n)}),Gt=e.Record({final_neurons_fund_participation:e.Opt(H),initial_neurons_fund_participation:e.Opt(H),neurons_fund_refunds:e.Opt(ne)}),Ut=e.Record({neurons_fund_audit_info:e.Opt(Gt)}),Kt=e.Variant({Ok:Ut,Err:O}),Wt=e.Record({result:e.Opt(Kt)}),Ht=e.Variant({Ok:w,Err:O}),re=e.Record({id:e.Opt(n),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,Xe)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,deadline_timestamp_seconds:e.Opt(e.Nat64),failed_timestamp_seconds:e.Nat64,reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Je),latest_tally:e.Opt($e),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),jt=e.Record({known_neurons:e.Vec(c)}),zt=e.Record({include_public_neurons_in_full_neurons:e.Opt(e.Bool),neuron_ids:e.Vec(e.Nat64),include_empty_neurons_readable_by_caller:e.Opt(e.Bool),include_neurons_readable_by_caller:e.Bool}),Xt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,z)),full_neurons:e.Vec(T)}),Jt=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),$t=e.Record({date_filter:e.Opt(Jt)}),Qt=e.Record({rewards:e.Vec(oe)}),Yt=e.Record({node_providers:e.Vec(w)}),Zt=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(n),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),It=e.Record({proposal_info:e.Vec(re)}),Dt=e.Record({arg:e.Opt(e.Vec(e.Nat8)),wasm_module:e.Opt(e.Vec(e.Nat8)),skip_stopping_before_installing:e.Opt(e.Bool),canister_id:e.Opt(e.Principal),install_mode:e.Opt(e.Int32)}),Lt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:t,UpdateCanisterSettings:Q,InstallCode:Dt,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:G,OpenSnsTokenSwap:Fe,SetSnsTokenSwapOpenTimeWindow:Ae,SetDefaultFollowees:qe,RewardNodeProviders:te,ManageNetworkEconomics:K,ApproveGenesisKyc:W,AddOrRemoveNodeProvider:Ee,Motion:Be}),eo=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Lt),summary:e.Text}),to=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:v,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:eo,StakeMaturity:$,MergeMaturity:q,Disburse:C});t.fill(e.Record({id:e.Opt(n),command:e.Opt(to),neuron_id_or_subaccount:e.Opt(V)}));let se=e.Record({created_neuron_id:e.Opt(n)}),oo=e.Record({refreshed_neuron_id:e.Opt(n)}),no=e.Record({target_neuron:e.Opt(T),source_neuron:e.Opt(T),target_neuron_info:e.Opt(z),source_neuron_info:e.Opt(z)}),ro=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(n)}),so=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),ao=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),io=e.Record({transfer_block_height:e.Nat64}),co=e.Variant({Error:O,Spawn:se,Split:se,Follow:e.Record({}),ClaimOrRefresh:oo,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:no,DisburseToNeuron:se,MakeProposal:ro,StakeMaturity:so,MergeMaturity:ao,Disburse:io}),Ie=e.Record({command:e.Opt(co)}),_o=e.Record({total_direct_contribution_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_contribution_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),po=e.Variant({Committed:_o,Aborted:e.Record({})}),uo=e.Record({result:e.Opt(po),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),lo=e.Record({total_direct_participation_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),mo=e.Variant({Committed:lo,Aborted:e.Record({})}),No=e.Record({result:e.Opt(mo),nns_proposal_id:e.Opt(e.Nat64)}),Oo=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Opt(e.Text),hotkeys:e.Opt(W),is_capped:e.Opt(e.Bool),nns_neuron_id:e.Opt(e.Nat64),amount_icp_e8s:e.Opt(e.Nat64)}),fo=e.Record({neurons_fund_neuron_portions:e.Vec(Oo)}),Ro=e.Variant({Ok:fo,Err:O}),go=e.Record({result:e.Opt(Ro)}),vo=e.Record({reward_account:e.Opt(h)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[j],[]),claim_or_refresh_neuron_from_account:e.Func([f],[At],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[Ye],[]),get_full_neuron_by_id_or_subaccount:e.Func([V],[Ye],[]),get_latest_reward_event:e.Func([],[He],[]),get_metrics:e.Func([],[qt],[]),get_monthly_node_provider_rewards:e.Func([],[Et],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(oe)],[]),get_network_economics_parameters:e.Func([],[K],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[Ze],[]),get_neuron_info_by_id_or_subaccount:e.Func([V],[Ze],[]),get_neurons_fund_audit_info:e.Func([Bt],[Wt],[]),get_node_provider_by_caller:e.Func([e.Null],[Ht],[]),get_pending_proposals:e.Func([],[e.Vec(re)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(re)],[]),get_restore_aging_summary:e.Func([],[We],[]),list_known_neurons:e.Func([],[jt],[]),list_neurons:e.Func([zt],[Xt],[]),list_node_provider_rewards:e.Func([$t],[Qt],[]),list_node_providers:e.Func([],[Yt],[]),list_proposals:e.Func([Zt],[It],[]),manage_neuron:e.Func([t],[Ie],[]),settle_community_fund_participation:e.Func([uo],[j],[]),settle_neurons_fund_participation:e.Func([No],[go],[]),simulate_manage_neuron:e.Func([t],[Ie],[]),transfer_gtc_neuron:e.Func([n,n],[j],[]),update_node_provider:e.Func([vo],[j],[])})};var Po=({IDL:e})=>{let t=e.Rec(),o=e.Rec(),n=e.Record({id:e.Nat64}),r=e.Record({followees:e.Vec(n)}),i=e.Record({name:e.Text,description:e.Opt(e.Text)}),c=e.Record({id:e.Opt(n),known_neuron_data:e.Opt(i)}),d=e.Record({percentage_to_spawn:e.Opt(e.Nat32),new_controller:e.Opt(e.Principal),nonce:e.Opt(e.Nat64)}),_=e.Record({amount_e8s:e.Nat64}),N=e.Record({topic:e.Int32,followees:e.Vec(n)}),f=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),l=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:f,Memo:e.Nat64}),v=e.Record({by:e.Opt(l)}),x=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),B=e.Record({new_hot_key:e.Opt(e.Principal)}),X=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),de=e.Record({additional_dissolve_delay_seconds:e.Nat32}),pe=e.Record({visibility:e.Opt(e.Int32)}),ue=e.Record({dissolve_timestamp_seconds:e.Nat64}),p=e.Variant({RemoveHotKey:x,AddHotKey:B,ChangeAutoStakeMaturity:X,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:de,SetVisibility:pe,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:ue}),M=e.Record({operation:e.Opt(p)}),J=e.Record({vote:e.Int32,proposal:e.Opt(n)}),F=e.Record({source_neuron_id:e.Opt(n)}),A=e.Record({dissolve_delay_seconds:e.Nat64,kyc_verified:e.Bool,amount_e8s:e.Nat64,new_controller:e.Opt(e.Principal),nonce:e.Nat64}),$=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),q=e.Record({percentage_to_merge:e.Nat32}),h=e.Record({hash:e.Vec(e.Nat8)}),le=e.Record({e8s:e.Nat64}),C=e.Record({to_account:e.Opt(h),amount:e.Opt(le)}),me=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:v,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:o,StakeMaturity:$,MergeMaturity:q,Disburse:C}),V=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:n}),S=e.Record({id:e.Opt(n),command:e.Opt(me),neuron_id_or_subaccount:e.Opt(V)}),Ne=e.Record({controllers:e.Vec(e.Principal)}),Oe=e.Record({freezing_threshold:e.Opt(e.Nat64),controllers:e.Opt(Ne),log_visibility:e.Opt(e.Int32),wasm_memory_limit:e.Opt(e.Nat64),memory_allocation:e.Opt(e.Nat64),compute_allocation:e.Opt(e.Nat64)}),Q=e.Record({canister_id:e.Opt(e.Principal),settings:e.Opt(Oe)}),fe=e.Record({skip_stopping_before_installing:e.Opt(e.Bool),wasm_module_hash:e.Opt(e.Vec(e.Nat8)),canister_id:e.Opt(e.Principal),arg_hash:e.Opt(e.Vec(e.Nat8)),install_mode:e.Opt(e.Int32)}),Y=e.Record({action:e.Opt(e.Int32),canister_id:e.Opt(e.Principal)}),y=e.Record({basis_points:e.Opt(e.Nat64)}),g=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),Re=e.Record({reward_rate_transition_duration:e.Opt(g),initial_reward_rate:e.Opt(y),final_reward_rate:e.Opt(y)}),ge=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(y),neuron_maximum_age_for_age_bonus:e.Opt(g),neuron_maximum_dissolve_delay:e.Opt(g),neuron_minimum_dissolve_delay_to_vote:e.Opt(g),neuron_maximum_age_bonus:e.Opt(y),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(g),proposal_initial_voting_period:e.Opt(g),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(Re)}),Z=e.Record({base64_encoding:e.Opt(e.Text)}),ve=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(Z),token_name:e.Opt(e.Text)}),we=e.Record({id:e.Opt(e.Principal)}),ye=e.Record({dissolve_delay_interval:e.Opt(g),count:e.Opt(e.Nat64)}),be=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),he=e.Record({iso_codes:e.Vec(e.Text)}),Se=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(g),neuron_basket_construction_parameters:e.Opt(ye),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(m),minimum_icp:e.Opt(m),minimum_direct_participation_icp:e.Opt(m),minimum_participant_icp:e.Opt(m),start_time:e.Opt(be),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(he)}),I=e.Record({total:e.Opt(m)}),ke=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(g),memo:e.Opt(e.Nat64),vesting_period:e.Opt(g),stake:e.Opt(m)}),xe=e.Record({developer_neurons:e.Vec(ke)}),Ve=e.Record({treasury_distribution:e.Opt(I),developer_distribution:e.Opt(xe),swap_distribution:e.Opt(I)}),s=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(ge),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(Z),name:e.Opt(e.Text),ledger_parameters:e.Opt(ve),description:e.Opt(e.Text),dapp_canisters:e.Vec(we),swap_parameters:e.Opt(Se),initial_token_distribution:e.Opt(Ve)}),D=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),w=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(h)}),Te=e.Record({dissolve_delay_seconds:e.Nat64}),rt=e.Record({to_account:e.Opt(h)}),st=e.Variant({RewardToNeuron:Te,RewardToAccount:rt}),G=e.Record({node_provider:e.Opt(w),reward_mode:e.Opt(st),amount_e8s:e.Nat64}),at=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),it=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(at),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,sale_delay_seconds:e.Opt(e.Nat64),max_participant_icp_e8s:e.Nat64,min_direct_participation_icp_e8s:e.Opt(e.Nat64),min_icp_e8s:e.Nat64,max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),Fe=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(it)}),ct=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),_t=e.Record({open_time_window:e.Opt(ct)}),Ae=e.Record({request:e.Opt(_t),swap_canister_id:e.Opt(e.Principal)}),qe=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),te=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(G)}),U=e.Record({human_readable:e.Opt(e.Text)}),dt=e.Record({contribution_threshold_xdr:e.Opt(U),one_third_participation_milestone_xdr:e.Opt(U),full_participation_milestone_xdr:e.Opt(U)}),pt=e.Record({maximum_icp_xdr_rate:e.Opt(y),neurons_fund_matched_funding_curve_coefficients:e.Opt(dt),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(U),minimum_icp_xdr_rate:e.Opt(y)}),K=e.Record({neuron_minimum_stake_e8s:e.Nat64,max_proposals_to_keep_per_topic:e.Nat32,neuron_management_fee_per_proposal_e8s:e.Nat64,reject_cost_e8s:e.Nat64,transaction_fee_e8s:e.Nat64,neuron_spawn_dissolve_delay_seconds:e.Nat64,minimum_icp_xdr_rate:e.Nat64,maximum_node_provider_rewards_e8s:e.Nat64,neurons_fund_economics:e.Opt(pt)}),W=e.Record({principals:e.Vec(e.Principal)}),ut=e.Variant({ToRemove:w,ToAdd:w}),Ee=e.Record({change:e.Opt(ut)}),Be=e.Record({motion_text:e.Text}),lt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:S,UpdateCanisterSettings:Q,InstallCode:fe,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:G,OpenSnsTokenSwap:Fe,SetSnsTokenSwapOpenTimeWindow:Ae,SetDefaultFollowees:qe,RewardNodeProviders:te,ManageNetworkEconomics:K,ApproveGenesisKyc:W,AddOrRemoveNodeProvider:Ee,Motion:Be});o.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(lt),summary:e.Text}));let mt=e.Record({proposal:e.Opt(o),caller:e.Opt(e.Principal),proposer_id:e.Opt(n)}),Ge=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),oe=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(w),timestamp:e.Nat64,rewards:e.Vec(G),xdr_conversion_rate:e.Opt(Ge),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),Ue=e.Record({total_maturity_e8s_equivalent:e.Opt(e.Nat64),maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_e8s:e.Opt(e.Nat64),count:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Opt(e.Nat64),staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),staked_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_voting_power:e.Opt(e.Nat64),count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64))}),Ke=e.Record({total_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,garbage_collectable_neurons_count:e.Nat64,dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),ect_neuron_count:e.Nat64,total_supply_icp:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,community_fund_total_maturity_e8s_equivalent:e.Nat64,total_staked_e8s_seed:e.Nat64,total_staked_maturity_e8s_equivalent_ect:e.Nat64,total_staked_e8s:e.Nat64,not_dissolving_neurons_count:e.Nat64,total_locked_e8s:e.Nat64,neurons_fund_total_active_neurons:e.Nat64,total_voting_power_non_self_authenticating_controller:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_e8s_ect:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,dissolved_neurons_e8s:e.Nat64,total_staked_e8s_non_self_authenticating_controller:e.Opt(e.Nat64),dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),non_self_authenticating_controller_neuron_subset_metrics:e.Opt(Ue),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_maturity_e8s_equivalent_seed:e.Nat64,community_fund_total_staked_e8s:e.Nat64,not_dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),public_neuron_subset_metrics:e.Opt(Ue),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),Nt=e.Record({count:e.Opt(e.Nat64),previous_total_stake_e8s:e.Opt(e.Nat64),current_total_stake_e8s:e.Opt(e.Nat64),group_type:e.Int32}),We=e.Record({groups:e.Vec(Nt),timestamp_seconds:e.Opt(e.Nat64)}),He=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),day_after_genesis:e.Nat64,actual_timestamp_seconds:e.Nat64,total_available_e8s_equivalent:e.Nat64,latest_round_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,settled_proposals:e.Vec(n)}),je=e.Record({to_subaccount:e.Vec(e.Nat8),neuron_stake_e8s:e.Nat64,from:e.Opt(e.Principal),memo:e.Nat64,from_subaccount:e.Vec(e.Nat8),transfer_timestamp:e.Nat64,block_height:e.Nat64}),Ot=e.Record({followers:e.Vec(n)}),ft=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,Ot))}),Rt=e.Variant({LastNeuronId:n}),ze=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(Rt)}),gt=e.Record({neuron_indexes_migration:e.Opt(ze),copy_inactive_neurons_to_stable_memory_migration:e.Opt(ze)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),vt=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(W),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),wt=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(vt)}),Xe=e.Record({vote:e.Int32,voting_power:e.Nat64}),yt=e.Record({min_participant_icp_e8s:e.Opt(e.Nat64),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),bt=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Opt(e.Principal),hotkeys:e.Vec(e.Principal),is_capped:e.Opt(e.Bool),maturity_equivalent_icp_e8s:e.Opt(e.Nat64),nns_neuron_id:e.Opt(n),amount_icp_e8s:e.Opt(e.Nat64)}),ne=e.Record({neurons_fund_neuron_portions:e.Vec(bt)}),ht=e.Record({serialized_representation:e.Opt(e.Text)}),H=e.Record({total_maturity_equivalent_icp_e8s:e.Opt(e.Nat64),intended_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),swap_participation_limits:e.Opt(yt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(ne),ideal_matched_participation_function:e.Opt(ht),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),St=e.Record({final_neurons_fund_participation:e.Opt(H),initial_neurons_fund_participation:e.Opt(H),neurons_fund_refunds:e.Opt(ne)}),kt=e.Record({status:e.Opt(e.Int32),freezing_threshold:e.Opt(e.Nat64),controllers:e.Vec(e.Principal),memory_size:e.Opt(e.Nat64),cycles:e.Opt(e.Nat64),idle_cycles_burned_per_day:e.Opt(e.Nat64),module_hash:e.Vec(e.Nat8)}),b=e.Record({status:e.Opt(kt),canister_id:e.Opt(e.Principal)}),xt=e.Record({ledger_index_canister_summary:e.Opt(b),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(b),ledger_canister_summary:e.Opt(b),swap_canister_summary:e.Opt(b),governance_canister_summary:e.Opt(b),root_canister_summary:e.Opt(b),dapp_canister_summaries:e.Vec(b)}),Je=e.Record({swap_background_information:e.Opt(xt)}),$e=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),Vt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Tt=e.Record({id:e.Opt(n),failure_reason:e.Opt(O),cf_participants:e.Vec(wt),ballots:e.Vec(e.Tuple(e.Nat64,Xe)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(St),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Je),latest_tally:e.Opt($e),sns_token_swap_lifecycle:e.Opt(e.Int32),decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),wait_for_quiet_state:e.Opt(Vt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Pt=e.Variant({Spawn:n,Split:_,Configure:M,Merge:F,DisburseToNeuron:A,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:v,MergeMaturity:q,Disburse:C}),Ct=e.Record({command:e.Opt(Pt),timestamp:e.Nat64}),Qe=e.Record({vote:e.Int32,proposal_id:e.Opt(n)}),Mt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),T=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Qe),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(Mt),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(je),known_neuron_data:e.Opt(i),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),en=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r)),making_sns_proposal:e.Opt(mt),most_recent_monthly_node_provider_rewards:e.Opt(oe),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Ke),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(w),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(K),restore_aging_summary:e.Opt(We),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(He),to_claim_transfers:e.Vec(je),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,ft)),migrations:e.Opt(gt),proposals:e.Vec(e.Tuple(e.Nat64,Tt)),xdr_conversion_rate:e.Opt(Ge),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Ct)),neurons:e.Vec(e.Tuple(e.Nat64,T)),genesis_timestamp_seconds:e.Nat64}),j=e.Variant({Ok:e.Null,Err:O}),Ft=e.Variant({Error:O,NeuronId:n}),At=e.Record({result:e.Opt(Ft)}),Ye=e.Variant({Ok:T,Err:O}),qt=e.Variant({Ok:Ke,Err:O}),Et=e.Variant({Ok:te,Err:O}),z=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Qe),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,visibility:e.Opt(e.Int32),known_neuron_data:e.Opt(i),voting_power:e.Nat64,age_seconds:e.Nat64}),Ze=e.Variant({Ok:z,Err:O}),Bt=e.Record({nns_proposal_id:e.Opt(n)}),Gt=e.Record({final_neurons_fund_participation:e.Opt(H),initial_neurons_fund_participation:e.Opt(H),neurons_fund_refunds:e.Opt(ne)}),Ut=e.Record({neurons_fund_audit_info:e.Opt(Gt)}),Kt=e.Variant({Ok:Ut,Err:O}),Wt=e.Record({result:e.Opt(Kt)}),Ht=e.Variant({Ok:w,Err:O}),re=e.Record({id:e.Opt(n),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,Xe)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,deadline_timestamp_seconds:e.Opt(e.Nat64),failed_timestamp_seconds:e.Nat64,reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Je),latest_tally:e.Opt($e),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),jt=e.Record({known_neurons:e.Vec(c)}),zt=e.Record({include_public_neurons_in_full_neurons:e.Opt(e.Bool),neuron_ids:e.Vec(e.Nat64),include_empty_neurons_readable_by_caller:e.Opt(e.Bool),include_neurons_readable_by_caller:e.Bool}),Xt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,z)),full_neurons:e.Vec(T)}),Jt=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),$t=e.Record({date_filter:e.Opt(Jt)}),Qt=e.Record({rewards:e.Vec(oe)}),Yt=e.Record({node_providers:e.Vec(w)}),Zt=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(n),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),It=e.Record({proposal_info:e.Vec(re)}),Dt=e.Record({arg:e.Opt(e.Vec(e.Nat8)),wasm_module:e.Opt(e.Vec(e.Nat8)),skip_stopping_before_installing:e.Opt(e.Bool),canister_id:e.Opt(e.Principal),install_mode:e.Opt(e.Int32)}),Lt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:t,UpdateCanisterSettings:Q,InstallCode:Dt,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:G,OpenSnsTokenSwap:Fe,SetSnsTokenSwapOpenTimeWindow:Ae,SetDefaultFollowees:qe,RewardNodeProviders:te,ManageNetworkEconomics:K,ApproveGenesisKyc:W,AddOrRemoveNodeProvider:Ee,Motion:Be}),eo=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Lt),summary:e.Text}),to=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:v,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:eo,StakeMaturity:$,MergeMaturity:q,Disburse:C});t.fill(e.Record({id:e.Opt(n),command:e.Opt(to),neuron_id_or_subaccount:e.Opt(V)}));let se=e.Record({created_neuron_id:e.Opt(n)}),oo=e.Record({refreshed_neuron_id:e.Opt(n)}),no=e.Record({target_neuron:e.Opt(T),source_neuron:e.Opt(T),target_neuron_info:e.Opt(z),source_neuron_info:e.Opt(z)}),ro=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(n)}),so=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),ao=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),io=e.Record({transfer_block_height:e.Nat64}),co=e.Variant({Error:O,Spawn:se,Split:se,Follow:e.Record({}),ClaimOrRefresh:oo,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:no,DisburseToNeuron:se,MakeProposal:ro,StakeMaturity:so,MergeMaturity:ao,Disburse:io}),Ie=e.Record({command:e.Opt(co)}),_o=e.Record({total_direct_contribution_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_contribution_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),po=e.Variant({Committed:_o,Aborted:e.Record({})}),uo=e.Record({result:e.Opt(po),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),lo=e.Record({total_direct_participation_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),mo=e.Variant({Committed:lo,Aborted:e.Record({})}),No=e.Record({result:e.Opt(mo),nns_proposal_id:e.Opt(e.Nat64)}),Oo=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Opt(e.Text),hotkeys:e.Opt(W),is_capped:e.Opt(e.Bool),nns_neuron_id:e.Opt(e.Nat64),amount_icp_e8s:e.Opt(e.Nat64)}),fo=e.Record({neurons_fund_neuron_portions:e.Vec(Oo)}),Ro=e.Variant({Ok:fo,Err:O}),go=e.Record({result:e.Opt(Ro)}),vo=e.Record({reward_account:e.Opt(h)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[j],[]),claim_or_refresh_neuron_from_account:e.Func([f],[At],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_full_neuron:e.Func([e.Nat64],[Ye],["query"]),get_full_neuron_by_id_or_subaccount:e.Func([V],[Ye],["query"]),get_latest_reward_event:e.Func([],[He],["query"]),get_metrics:e.Func([],[qt],["query"]),get_monthly_node_provider_rewards:e.Func([],[Et],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(oe)],["query"]),get_network_economics_parameters:e.Func([],[K],["query"]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],["query"]),get_neuron_info:e.Func([e.Nat64],[Ze],["query"]),get_neuron_info_by_id_or_subaccount:e.Func([V],[Ze],["query"]),get_neurons_fund_audit_info:e.Func([Bt],[Wt],["query"]),get_node_provider_by_caller:e.Func([e.Null],[Ht],["query"]),get_pending_proposals:e.Func([],[e.Vec(re)],["query"]),get_proposal_info:e.Func([e.Nat64],[e.Opt(re)],["query"]),get_restore_aging_summary:e.Func([],[We],["query"]),list_known_neurons:e.Func([],[jt],["query"]),list_neurons:e.Func([zt],[Xt],["query"]),list_node_provider_rewards:e.Func([$t],[Qt],["query"]),list_node_providers:e.Func([],[Yt],["query"]),list_proposals:e.Func([Zt],[It],["query"]),manage_neuron:e.Func([t],[Ie],[]),settle_community_fund_participation:e.Func([uo],[j],[]),settle_neurons_fund_participation:e.Func([No],[go],[]),simulate_manage_neuron:e.Func([t],[Ie],[]),transfer_gtc_neuron:e.Func([n,n],[j],[]),update_node_provider:e.Func([vo],[j],[])})};var xn=({IDL:e})=>{let t=e.Record({id:e.Nat64}),o=e.Record({followees:e.Vec(t)}),n=e.Record({name:e.Text,description:e.Opt(e.Text)}),r=e.Record({to_subaccount:e.Vec(e.Nat8),neuron_stake_e8s:e.Nat64,from:e.Opt(e.Principal),memo:e.Nat64,from_subaccount:e.Vec(e.Nat8),transfer_timestamp:e.Nat64,block_height:e.Nat64}),i=e.Record({vote:e.Int32,proposal_id:e.Opt(t)}),c=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),d=e.Record({id:e.Opt(t),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(i),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(c),followees:e.Vec(e.Tuple(e.Int32,o)),neuron_fees_e8s:e.Nat64,transfer:e.Opt(r),known_neuron_data:e.Opt(n),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),_=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(i),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,known_neuron_data:e.Opt(n),voting_power:e.Nat64,age_seconds:e.Nat64}),N=e.Record({neuron_ids:e.Vec(e.Nat64),include_neurons_readable_by_caller:e.Bool}),f=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,_)),full_neurons:e.Vec(d)});return e.Service({list_neurons:e.Func([N],[f],[])})};var Pn=require("@dfinity/ledger-icp"),E=require("@dfinity/principal"),R=require("@dfinity/utils");var Cn=e=>({id:e}),Xo=e=>({id:e}),Fr=e=>({followees:e.map(Xo)}),Ar=e=>{if("NeuronId"in e)return{NeuronId:{id:e.NeuronId}};if("Subaccount"in e)return{Subaccount:Uint8Array.from(e.Subaccount)};throw new k(e)},Co=e=>e.basisPoints!==void 0?{basis_points:[e.basisPoints]}:{basis_points:[]},ie=e=>e.seconds!==void 0?{seconds:[e.seconds]}:{seconds:[]},qr=e=>e.secondsAfterUtcMidnight!==void 0?{seconds_after_utc_midnight:[e.secondsAfterUtcMidnight]}:{seconds_after_utc_midnight:[]},Er=e=>({iso_codes:e.isoCodes}),L=e=>e.e8s!==void 0?{e8s:[e.e8s]}:{e8s:[]},Mn=e=>e.base64Encoding!==void 0?{base64_encoding:[e.base64Encoding]}:{base64_encoding:[]},Br=e=>({reward_rate_transition_duration:e.rewardRateTransitionDuration!==void 0?[ie(e.rewardRateTransitionDuration)]:[],initial_reward_rate:e.initialRewardRate!==void 0?[Co(e.initialRewardRate)]:[],final_reward_rate:e.finalRewardRate!==void 0?[Co(e.finalRewardRate)]:[]}),Gr=e=>({transaction_fee:e.transactionFee!==void 0?[L(e.transactionFee)]:[],token_symbol:e.tokenSymbol!==void 0?[e.tokenSymbol]:[],token_logo:e.tokenLogo!==void 0?[Mn(e.tokenLogo)]:[],token_name:e.tokenName!==void 0?[e.tokenName]:[]}),Ur=e=>({minimum_participants:e.minimumParticipants!==void 0?[e.minimumParticipants]:[],duration:e.duration!==void 0?[ie(e.duration)]:[],neuron_basket_construction_parameters:e.neuronBasketConstructionParameters!==void 0?[Kr(e.neuronBasketConstructionParameters)]:[],confirmation_text:e.confirmationText!==void 0?[e.confirmationText]:[],maximum_participant_icp:e.maximumParticipantIcp!==void 0?[L(e.maximumParticipantIcp)]:[],neurons_fund_investment_icp:e.neuronsFundInvestmentIcp!==void 0?[L(e.neuronsFundInvestmentIcp)]:[],minimum_icp:e.minimumIcp!==void 0?[L(e.minimumIcp)]:[],minimum_participant_icp:e.minimumParticipantIcp!==void 0?[L(e.minimumParticipantIcp)]:[],start_time:e.startTime!==void 0?[qr(e.startTime)]:[],maximum_icp:e.maximumIcp!==void 0?[L(e.maximumIcp)]:[],restricted_countries:e.restrictedCountries!==void 0?[Er(e.restrictedCountries)]:[],maximum_direct_participation_icp:e.maxDirectParticipationIcp!==void 0?[L(e.maxDirectParticipationIcp)]:[],minimum_direct_participation_icp:e.minDirectParticipationIcp!==void 0?[L(e.minDirectParticipationIcp)]:[],neurons_fund_participation:(0,R.toNullable)(e.neuronsFundParticipation)}),Kr=e=>({dissolve_delay_interval:e.dissolveDelayInterval!==void 0?[ie(e.dissolveDelayInterval)]:[],count:e.count!==void 0?[e.count]:[]}),Wr=e=>({neuron_maximum_dissolve_delay_bonus:e.neuronMaximumDissolveDelayBonus!==void 0?[Co(e.neuronMaximumDissolveDelayBonus)]:[],neuron_maximum_age_for_age_bonus:e.neuronMaximumAgeForAgeBonus!==void 0?[ie(e.neuronMaximumAgeForAgeBonus)]:[],neuron_maximum_dissolve_delay:e.neuronMaximumDissolveDelay!==void 0?[ie(e.neuronMaximumDissolveDelay)]:[],neuron_minimum_dissolve_delay_to_vote:e.neuronMinimumDissolveDelayToVote!==void 0?[ie(e.neuronMinimumDissolveDelayToVote)]:[],neuron_maximum_age_bonus:e.neuronMaximumAgeBonus!==void 0?[Co(e.neuronMaximumAgeBonus)]:[],neuron_minimum_stake:e.neuronMinimumStake!==void 0?[L(e.neuronMinimumStake)]:[],proposal_wait_for_quiet_deadline_increase:e.proposalWaitForQuietDeadlineIncrease!==void 0?[ie(e.proposalWaitForQuietDeadlineIncrease)]:[],proposal_initial_voting_period:e.proposalInitialVotingPeriod!==void 0?[ie(e.proposalInitialVotingPeriod)]:[],proposal_rejection_fee:e.proposalRejectionFee!==void 0?[L(e.proposalRejectionFee)]:[],voting_reward_parameters:e.votingRewardParameters!==void 0?[Br(e.votingRewardParameters)]:[]}),Vn=e=>({total:e.total!==void 0?[L(e.total)]:[]}),Hr=e=>({treasury_distribution:e.treasuryDistribution!==void 0?[Vn(e.treasuryDistribution)]:[],developer_distribution:e.developerDistribution!==void 0?[zr(e.developerDistribution)]:[],swap_distribution:e.swapDistribution!==void 0?[Vn(e.swapDistribution)]:[]}),jr=e=>({controller:e.controller!==void 0?[E.Principal.fromText(e.controller)]:[],dissolve_delay:e.dissolveDelay!==void 0?[ie(e.dissolveDelay)]:[],memo:e.memo!==void 0?[e.memo]:[],vesting_period:e.vestingPeriod!==void 0?[ie(e.vestingPeriod)]:[],stake:e.stake!==void 0?[L(e.stake)]:[]}),zr=e=>({developer_neurons:e.developerNeurons.map(jr)}),Xr=e=>({url:e.url!==void 0?[e.url]:[],governance_parameters:e.governanceParameters!==void 0?[Wr(e.governanceParameters)]:[],fallback_controller_principal_ids:e.fallbackControllerPrincipalIds.map(t=>E.Principal.fromText(t)),logo:e.logo!==void 0?[Mn(e.logo)]:[],name:e.name!==void 0?[e.name]:[],ledger_parameters:e.ledgerParameters!==void 0?[Gr(e.ledgerParameters)]:[],description:e.description!==void 0?[e.description]:[],dapp_canisters:e.dappCanisters.map(t=>({id:[E.Principal.fromText(t)]})),swap_parameters:e.swapParameters!==void 0?[Ur(e.swapParameters)]:[],initial_token_distribution:e.initialTokenDistribution!==void 0?[Hr(e.initialTokenDistribution)]:[]}),Jr=e=>{if(e.wasmModule===void 0)throw new Error("wasmModule not found");return{arg:(0,R.toNullable)((0,R.arrayBufferToUint8Array)(e.arg??new ArrayBuffer(0))),wasm_module:(0,R.toNullable)((0,R.arrayBufferToUint8Array)(e.wasmModule)),skip_stopping_before_installing:(0,R.toNullable)(e.skipStoppingBeforeInstalling),canister_id:(0,R.toNullable)((0,R.nonNullish)(e.canisterId)?E.Principal.fromText(e.canisterId):void 0),install_mode:(0,R.toNullable)(e.installMode)}},$r=e=>e===void 0?[]:[{freezing_threshold:(0,R.toNullable)(e.freezingThreshold),controllers:e.controllers?[{controllers:e.controllers.map(t=>E.Principal.fromText(t))}]:[],log_visibility:(0,R.toNullable)(e.logVisibility),wasm_memory_limit:(0,R.toNullable)(e.wasmMemoryLimit),compute_allocation:(0,R.toNullable)(e.computeAllocation),memory_allocation:(0,R.toNullable)(e.memoryAllocation)}],Fn=e=>{if("ExecuteNnsFunction"in e){let t=e.ExecuteNnsFunction;if(t.payloadBytes===void 0)throw new Error("payloadBytes not found");return{ExecuteNnsFunction:{nns_function:t.nnsFunctionId,payload:(0,R.arrayBufferToUint8Array)(t.payloadBytes)}}}if("ManageNeuron"in e){let t=e.ManageNeuron;return{ManageNeuron:Lr(t)}}if("ApproveGenesisKyc"in e)return{ApproveGenesisKyc:{principals:e.ApproveGenesisKyc.principals.map(E.Principal.fromText)}};if("ManageNetworkEconomics"in e){let t=e.ManageNetworkEconomics;return{ManageNetworkEconomics:{neuron_minimum_stake_e8s:t.neuronMinimumStake,max_proposals_to_keep_per_topic:t.maxProposalsToKeepPerTopic,neuron_management_fee_per_proposal_e8s:t.neuronManagementFeePerProposal,reject_cost_e8s:t.rejectCost,transaction_fee_e8s:t.transactionFee,neuron_spawn_dissolve_delay_seconds:t.neuronSpawnDissolveDelaySeconds,minimum_icp_xdr_rate:t.minimumIcpXdrRate,maximum_node_provider_rewards_e8s:t.maximumNodeProviderRewards,neurons_fund_economics:Ir(t.neuronsFundEconomics)}}}if("RewardNodeProvider"in e){let t=e.RewardNodeProvider;return{RewardNodeProvider:{node_provider:t.nodeProvider?[Mo(t.nodeProvider)]:[],amount_e8s:t.amountE8s,reward_mode:t.rewardMode!=null?[Tn(t.rewardMode)]:[]}}}if("RewardNodeProviders"in e){let t=e.RewardNodeProviders;return{RewardNodeProviders:{use_registry_derived_rewards:t.useRegistryDerivedRewards===void 0?[]:[t.useRegistryDerivedRewards],rewards:t.rewards.map(o=>({node_provider:o.nodeProvider?[Mo(o.nodeProvider)]:[],amount_e8s:o.amountE8s,reward_mode:o.rewardMode!=null?[Tn(o.rewardMode)]:[]}))}}}if("AddOrRemoveNodeProvider"in e){let t=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:t.change?[Zr(t.change)]:[]}}}if("Motion"in e)return{Motion:{motion_text:e.Motion.motionText}};if("SetDefaultFollowees"in e)return{SetDefaultFollowees:{default_followees:e.SetDefaultFollowees.defaultFollowees.map(o=>[o.topic,Fr(o.followees)])}};if("RegisterKnownNeuron"in e){let t=e.RegisterKnownNeuron;return{RegisterKnownNeuron:{id:[{id:t.id}],known_neuron_data:[{name:t.name,description:t.description!==void 0?[t.description]:[]}]}}}if("SetSnsTokenSwapOpenTimeWindow"in e){let{request:t,swapCanisterId:o}=e.SetSnsTokenSwapOpenTimeWindow;return{SetSnsTokenSwapOpenTimeWindow:{request:t===void 0?[]:[{open_time_window:t.openTimeWindow===void 0?[]:[{start_timestamp_seconds:t.openTimeWindow.startTimestampSeconds,end_timestamp_seconds:t.openTimeWindow.endTimestampSeconds}]}],swap_canister_id:o===void 0?[]:[E.Principal.fromText(o)]}}}if("OpenSnsTokenSwap"in e){let{communityFundInvestmentE8s:t,targetSwapCanisterId:o,params:n}=e.OpenSnsTokenSwap;return{OpenSnsTokenSwap:{community_fund_investment_e8s:(0,R.toNullable)(t),target_swap_canister_id:(0,R.toNullable)(o),params:n===void 0?[]:[{min_participant_icp_e8s:n.minParticipantIcpE8s,max_icp_e8s:n.maxIcpE8s,swap_due_timestamp_seconds:n.swapDueTimestampSeconds,min_participants:n.minParticipants,sns_token_e8s:n.snsTokenE8s,max_participant_icp_e8s:n.maxParticipantIcpE8s,min_icp_e8s:n.minIcpE8s,sale_delay_seconds:(0,R.toNullable)(n.saleDelaySeconds),neuron_basket_construction_parameters:(0,R.toNullable)(n.neuronBasketConstructionParameters),max_direct_participation_icp_e8s:(0,R.toNullable)(n.maxDirectParticipationIcpE8s),min_direct_participation_icp_e8s:(0,R.toNullable)(n.minDirectParticipationIcpE8s)}]}}}if("CreateServiceNervousSystem"in e)return{CreateServiceNervousSystem:Xr(e.CreateServiceNervousSystem)};if("InstallCode"in e)return{InstallCode:Jr(e.InstallCode)};if("StopOrStartCanister"in e){let t=e.StopOrStartCanister;return{StopOrStartCanister:{canister_id:t.canisterId?[E.Principal.fromText(t.canisterId)]:[],action:t.action?[t.action]:[]}}}if("UpdateCanisterSettings"in e){let t=e.UpdateCanisterSettings;return{UpdateCanisterSettings:{canister_id:t.canisterId?[E.Principal.fromText(t.canisterId)]:[],settings:$r(t.settings)}}}throw new k(e)},Qr=e=>{if("Split"in e)return{Split:{amount_e8s:e.Split.amount}};if("Follow"in e){let t=e.Follow;return{Follow:{topic:t.topic,followees:t.followees.map(Xo)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by?[Dr(t.by)]:[]}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation?[Yr(t.operation)]:[]}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal?[Cn(t.proposal)]:[]}}}if("DisburseToNeuron"in e){let t=e.DisburseToNeuron;return{DisburseToNeuron:{dissolve_delay_seconds:t.dissolveDelaySeconds,kyc_verified:t.kycVerified,amount_e8s:t.amount,new_controller:t.newController?[E.Principal.fromText(t.newController)]:[],nonce:t.nonce}}}if("MergeMaturity"in e)return{MergeMaturity:{percentage_to_merge:e.MergeMaturity.percentageToMerge}};if("StakeMaturity"in e){let{percentageToStake:t}=e.StakeMaturity;return{StakeMaturity:{percentage_to_stake:(0,R.toNullable)(t)}}}if("MakeProposal"in e){let t=e.MakeProposal;return{MakeProposal:{url:t.url,title:[],action:t.action?[Fn(t.action)]:[],summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{to_account:t.toAccountId?[Jo(t.toAccountId)]:[],amount:t.amount?[An(t.amount)]:[]}}}if("Spawn"in e){let t=e.Spawn;return{Spawn:{percentage_to_spawn:t.percentageToSpawn===void 0?[]:[t.percentageToSpawn],new_controller:t.newController?[E.Principal.fromText(t.newController)]:[],nonce:[]}}}if("Merge"in e){let t=e.Merge;return{Merge:{source_neuron_id:t.sourceNeuronId?[{id:t.sourceNeuronId}]:[]}}}throw new k(e)},Yr=e=>{if("RemoveHotKey"in e){let t=e.RemoveHotKey;return{RemoveHotKey:{hot_key_to_remove:t.hotKeyToRemove!=null?[E.Principal.fromText(t.hotKeyToRemove)]:[]}}}if("AddHotKey"in e){let t=e.AddHotKey;return{AddHotKey:{new_hot_key:t.newHotKey?[E.Principal.fromText(t.newHotKey)]:[]}}}if("StopDissolving"in e)return{StopDissolving:{}};if("StartDissolving"in e)return{StartDissolving:{}};if("IncreaseDissolveDelay"in e)return{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:e.IncreaseDissolveDelay.additionalDissolveDelaySeconds}};if("JoinCommunityFund"in e||"LeaveCommunityFund"in e)return e;if("SetDissolveTimestamp"in e)return{SetDissolveTimestamp:{dissolve_timestamp_seconds:e.SetDissolveTimestamp.dissolveTimestampSeconds}};if("ChangeAutoStakeMaturity"in e){let{requestedSettingForAutoStakeMaturity:t}=e.ChangeAutoStakeMaturity;return{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}if("SetVisibility"in e){let t=e.SetVisibility;return{SetVisibility:{visibility:(0,R.toNullable)(t.visibility)}}}throw new k(e)},Zr=e=>{if("ToRemove"in e)return{ToRemove:Mo(e.ToRemove)};if("ToAdd"in e)return{ToAdd:Mo(e.ToAdd)};throw new k(e)},Mo=e=>({id:e.id!=null?[E.Principal.fromText(e.id)]:[],reward_account:e.rewardAccount!=null?[Jo(e.rewardAccount)]:[]}),An=e=>({e8s:e}),Jo=e=>({hash:(0,Pn.accountIdentifierToBytes)(e)}),Ir=e=>{if((0,R.isNullish)(e))return[];let{maximumIcpXdrRate:t,maxTheoreticalNeuronsFundParticipationAmountXdr:o,neuronsFundMatchedFundingCurveCoefficients:n,minimumIcpXdrRate:r}=e,i=_=>(0,R.isNullish)(_)?[]:[{basis_points:(0,R.toNullable)(_.basisPoints)}],c=_=>(0,R.isNullish)(_)?[]:[{human_readable:(0,R.toNullable)(_.humanReadable)}],d=_=>(0,R.isNullish)(_)?[]:[{contribution_threshold_xdr:c(_.contributionThresholdXdr),full_participation_milestone_xdr:c(_.fullParticipationMilestoneXdr),one_third_participation_milestone_xdr:c(_.oneThirdParticipationMilestoneXdr)}];return[{maximum_icp_xdr_rate:i(t),neurons_fund_matched_funding_curve_coefficients:d(n),minimum_icp_xdr_rate:i(r),max_theoretical_neurons_fund_participation_amount_xdr:c(o)}]},Tn=e=>{if("RewardToNeuron"in e)return{RewardToNeuron:{dissolve_delay_seconds:e.RewardToNeuron.dissolveDelaySeconds}};if("RewardToAccount"in e)return{RewardToAccount:{to_account:e.RewardToAccount.toAccount!=null?[Jo(e.RewardToAccount.toAccount)]:[]}};throw new k(e)},Dr=e=>{if("NeuronIdOrSubaccount"in e)return{NeuronIdOrSubaccount:{}};if("Memo"in e)return{Memo:e.Memo};if("MemoAndController"in e)return{MemoAndController:{memo:e.MemoAndController.memo,controller:e.MemoAndController.controller?[e.MemoAndController.controller]:[]}};throw new k(e)},Fo=({neuronIds:e,includeEmptyNeurons:t,includePublicNeurons:o})=>({neuron_ids:BigUint64Array.from(e??[]),include_neurons_readable_by_caller:!e,include_empty_neurons_readable_by_caller:(0,R.toNullable)(t),include_public_neurons_in_full_neurons:(0,R.toNullable)(o)}),Lr=({id:e,command:t,neuronIdOrSubaccount:o})=>({id:e?[Xo(e)]:[],command:t?[Qr(t)]:[],neuron_id_or_subaccount:o?[Ar(o)]:[]}),qn=({includeRewardStatus:e,beforeProposal:t,excludeTopic:o,includeStatus:n,limit:r,includeAllManageNeuronProposals:i,omitLargeFields:c})=>({include_reward_status:Int32Array.from(e),before_proposal:t?[Cn(t)]:[],limit:r,exclude_topic:Int32Array.from(o),include_all_manage_neuron_proposals:i!==void 0?[i]:[],include_status:Int32Array.from(n),omit_large_fields:(0,R.toNullable)(c)}),En=e=>({id:[],command:[{ClaimOrRefresh:{by:[{NeuronIdOrSubaccount:{}}]}}],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}),Bn=({memo:e,controller:t})=>{let o={ClaimOrRefresh:{by:[{MemoAndController:{controller:t==null?[]:[t],memo:e}}]}};return{id:[],command:[o],neuron_id_or_subaccount:[]}},Gn=({neuronId:e,amount:t})=>({id:[],command:[{Split:{amount_e8s:t}}],neuron_id_or_subaccount:[{NeuronId:{id:e}}]});var Un=({neuronId:e,vote:t,proposalId:o})=>et({neuronId:e,command:{RegisterVote:{vote:t,proposal:[{id:o}]}}}),Kn=e=>{let t={MakeProposal:{url:e.url,title:e.title!=null?[e.title]:[],summary:e.summary,action:[Fn(e.action)]}};return{id:[],command:[t],neuron_id_or_subaccount:[{NeuronId:{id:e.neuronId}}]}},Wn=({neuronId:e,topic:t,followees:o})=>et({neuronId:e,command:{Follow:{topic:t,followees:o.map(n=>({id:n}))}}}),Hn=({neuronId:e,toAccountIdentifier:t,amount:o})=>et({neuronId:e,command:{Disburse:{to_account:t!==void 0?[t.toAccountIdentifierHash()]:[],amount:o!==void 0?[An(o)]:[]}}}),jn=({neuronId:e,percentageToMerge:t})=>et({neuronId:e,command:{MergeMaturity:{percentage_to_merge:t}}}),zn=({neuronId:e,percentageToStake:t})=>et({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,R.toNullable)(t)}}}),Xn=({neuronId:e,percentageToSpawn:t,newController:o,nonce:n})=>et({neuronId:e,command:{Spawn:{percentage_to_spawn:t===void 0?[]:[t],new_controller:o===void 0?[]:[o],nonce:n===void 0?[]:[n]}}}),Jn=({neuronId:e,principal:t})=>ce({neuronId:e,operation:{AddHotKey:{new_hot_key:[t]}}}),$n=({neuronId:e,principal:t})=>ce({neuronId:e,operation:{RemoveHotKey:{hot_key_to_remove:[t]}}}),Qn=({neuronId:e,additionalDissolveDelaySeconds:t})=>ce({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),Yn=({neuronId:e,dissolveDelaySeconds:t})=>ce({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:BigInt(t)}}}),Zn=e=>ce({neuronId:e,operation:{JoinCommunityFund:{}}}),In=({neuronId:e,autoStake:t})=>ce({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),Dn=e=>ce({neuronId:e,operation:{LeaveCommunityFund:{}}}),Ln=({neuronId:e,visibility:t})=>ce({neuronId:e,operation:{SetVisibility:{visibility:[t]}}}),$o=({sourceNeuronId:e,targetNeuronId:t})=>et({neuronId:t,command:{Merge:{source_neuron_id:[{id:e}]}}}),er=e=>ce({neuronId:e,operation:{StartDissolving:{}}}),tr=e=>ce({neuronId:e,operation:{StopDissolving:{}}}),et=({neuronId:e,command:t})=>({id:[{id:e}],command:[t],neuron_id_or_subaccount:[]}),ce=({neuronId:e,operation:t})=>et({neuronId:e,command:{Configure:{operation:[t]}}});var Eo=require("@dfinity/ledger-icp"),Qo=require("@dfinity/principal"),a=require("@dfinity/utils");var Yo=({neuronId:e,neuronInfo:t,rawNeuron:o,canisterId:n})=>{let r=o?es({neuron:o,canisterId:n}):void 0;return{neuronId:e,dissolveDelaySeconds:t.dissolve_delay_seconds,recentBallots:t.recent_ballots.map(sr),neuronType:(0,a.fromNullable)(t.neuron_type),createdTimestampSeconds:t.created_timestamp_seconds,state:t.state,joinedCommunityFundTimestampSeconds:t.joined_community_fund_timestamp_seconds.length?t.joined_community_fund_timestamp_seconds[0]:void 0,retrievedAtTimestampSeconds:t.retrieved_at_timestamp_seconds,votingPower:t.voting_power,ageSeconds:t.age_seconds,visibility:(0,a.fromNullable)(t.visibility),fullNeuron:r}},es=({neuron:e,canisterId:t})=>({id:e.id.length?tt(e.id[0]):void 0,stakedMaturityE8sEquivalent:(0,a.fromNullable)(e.staked_maturity_e8s_equivalent),controller:e.controller.length?e.controller[0].toString():void 0,recentBallots:e.recent_ballots.map(sr),neuronType:(0,a.fromNullable)(e.neuron_type),kycVerified:e.kyc_verified,notForProfit:e.not_for_profit,cachedNeuronStake:e.cached_neuron_stake_e8s,createdTimestampSeconds:e.created_timestamp_seconds,autoStakeMaturity:(0,a.fromNullable)(e.auto_stake_maturity),maturityE8sEquivalent:e.maturity_e8s_equivalent,agingSinceTimestampSeconds:e.aging_since_timestamp_seconds,neuronFees:e.neuron_fees_e8s,hotKeys:e.hot_keys.map(o=>o.toString()),accountIdentifier:(0,Eo.principalToAccountIdentifier)(t,Uint8Array.from(e.account)),joinedCommunityFundTimestampSeconds:e.joined_community_fund_timestamp_seconds.length?e.joined_community_fund_timestamp_seconds[0]:void 0,dissolveState:e.dissolve_state.length?ts(e.dissolve_state[0]):void 0,spawnAtTimesSeconds:e.spawn_at_timestamp_seconds[0],followees:e.followees.map(([o,n])=>ar({topic:o,followees:n})),visibility:(0,a.fromNullable)(e.visibility)}),rr=({neuron:e,account:t})=>({id:(0,a.nonNullish)(e.id)?(0,a.toNullable)({id:e.id}):[],staked_maturity_e8s_equivalent:(0,a.toNullable)(e.stakedMaturityE8sEquivalent),controller:(0,a.nonNullish)(e.controller)?(0,a.toNullable)(Qo.Principal.from(e.controller)):[],recent_ballots:e.recentBallots.map(o=>({vote:o.vote,proposal_id:(0,a.nonNullish)(o.proposalId)?(0,a.toNullable)({id:o.proposalId}):[]})),kyc_verified:e.kycVerified,neuron_type:(0,a.toNullable)(e.neuronType),not_for_profit:e.notForProfit,cached_neuron_stake_e8s:e.cachedNeuronStake,created_timestamp_seconds:e.createdTimestampSeconds,auto_stake_maturity:(0,a.toNullable)(e.autoStakeMaturity),maturity_e8s_equivalent:e.maturityE8sEquivalent,aging_since_timestamp_seconds:e.agingSinceTimestampSeconds,neuron_fees_e8s:e.neuronFees,hot_keys:e.hotKeys.map(o=>Qo.Principal.from(o)),account:t,joined_community_fund_timestamp_seconds:(0,a.toNullable)(e.joinedCommunityFundTimestampSeconds),dissolve_state:(0,a.nonNullish)(e.dissolveState)?[e.dissolveState]:[],spawn_at_timestamp_seconds:(0,a.toNullable)(e.spawnAtTimesSeconds),followees:e.followees.map(o=>[o.topic,{followees:o.followees.map(n=>({id:n}))}]),visibility:(0,a.toNullable)(e.visibility),transfer:[],known_neuron_data:[]}),sr=({vote:e,proposal_id:t})=>({vote:e,proposalId:t.length?tt(t[0]):void 0}),ts=e=>"DissolveDelaySeconds"in e?{DissolveDelaySeconds:e.DissolveDelaySeconds}:{WhenDissolvedTimestampSeconds:e.WhenDissolvedTimestampSeconds},ar=({topic:e,followees:t})=>({topic:e,followees:t.followees.map(tt)}),tt=({id:e})=>e,os=e=>{if("NeuronId"in e)return{NeuronId:e.NeuronId.id};if("Subaccount"in e)return{Subaccount:(0,a.uint8ArrayToArrayOfNumber)(Uint8Array.from(e.Subaccount))};throw new k(e)},ns=({neuronId:e,ballot:t})=>{let{vote:o,voting_power:n}=t;return{neuronId:e,vote:o,votingPower:n}},rs=({title:e,url:t,action:o,summary:n})=>({title:e.length?e[0]:void 0,url:t,action:o.length?ir(o[0]):void 0,summary:n}),ir=e=>{var t;if("ExecuteNnsFunction"in e)return{ExecuteNnsFunction:{nnsFunctionId:e.ExecuteNnsFunction.nns_function}};if("ManageNeuron"in e){let o=e.ManageNeuron;return{ManageNeuron:{id:o.id.length?tt(o.id[0]):void 0,command:o.command.length?as(o.command[0]):void 0,neuronIdOrSubaccount:o.neuron_id_or_subaccount.length?os(o.neuron_id_or_subaccount[0]):void 0}}}if("ApproveGenesisKyc"in e)return{ApproveGenesisKyc:{principals:e.ApproveGenesisKyc.principals.map(n=>n.toString())}};if("ManageNetworkEconomics"in e){let o=e.ManageNetworkEconomics;return{ManageNetworkEconomics:{neuronMinimumStake:o.neuron_minimum_stake_e8s,maxProposalsToKeepPerTopic:o.max_proposals_to_keep_per_topic,neuronManagementFeePerProposal:o.neuron_management_fee_per_proposal_e8s,rejectCost:o.reject_cost_e8s,transactionFee:o.transaction_fee_e8s,neuronSpawnDissolveDelaySeconds:o.neuron_spawn_dissolve_delay_seconds,minimumIcpXdrRate:o.minimum_icp_xdr_rate,maximumNodeProviderRewards:o.maximum_node_provider_rewards_e8s,neuronsFundEconomics:_s(o.neurons_fund_economics)}}}if("RewardNodeProvider"in e){let o=e.RewardNodeProvider;return{RewardNodeProvider:{nodeProvider:o.node_provider.length?Ao(o.node_provider[0]):void 0,amountE8s:o.amount_e8s,rewardMode:o.reward_mode.length?or(o.reward_mode[0]):void 0}}}if("RewardNodeProviders"in e){let o=e.RewardNodeProviders;return{RewardNodeProviders:{useRegistryDerivedRewards:o.use_registry_derived_rewards.length?o.use_registry_derived_rewards[0]:void 0,rewards:o.rewards.map(n=>({nodeProvider:n.node_provider.length?Ao(n.node_provider[0]):void 0,amountE8s:n.amount_e8s,rewardMode:n.reward_mode.length?or(n.reward_mode[0]):void 0}))}}}if("AddOrRemoveNodeProvider"in e){let o=e.AddOrRemoveNodeProvider;return{AddOrRemoveNodeProvider:{change:o.change.length?cs(o.change[0]):void 0}}}if("Motion"in e)return{Motion:{motionText:e.Motion.motion_text}};if("SetDefaultFollowees"in e)return{SetDefaultFollowees:{defaultFollowees:e.SetDefaultFollowees.default_followees.map(([n,r])=>ar({topic:n,followees:r}))}};if("RegisterKnownNeuron"in e){let o=e.RegisterKnownNeuron;return{RegisterKnownNeuron:us(o)}}if("SetSnsTokenSwapOpenTimeWindow"in e){let o=e.SetSnsTokenSwapOpenTimeWindow,n=(t=o.request)!=null&&t.length?{openTimeWindow:o.request[0].open_time_window.length?{startTimestampSeconds:o.request[0].open_time_window[0].start_timestamp_seconds,endTimestampSeconds:o.request[0].open_time_window[0].end_timestamp_seconds}:void 0}:void 0,r=o!=null&&o.swap_canister_id.length?o.swap_canister_id[0].toString():void 0;return{SetSnsTokenSwapOpenTimeWindow:{request:n,swapCanisterId:r}}}if("OpenSnsTokenSwap"in e){let o=e.OpenSnsTokenSwap,n=(0,a.fromNullable)(o.params);return{OpenSnsTokenSwap:{communityFundInvestmentE8s:(0,a.fromNullable)(o.community_fund_investment_e8s),targetSwapCanisterId:(0,a.fromNullable)(o.target_swap_canister_id),params:n&&{minParticipantIcpE8s:n.min_participant_icp_e8s,maxIcpE8s:n.max_icp_e8s,swapDueTimestampSeconds:n.swap_due_timestamp_seconds,minParticipants:n.min_participants,snsTokenE8s:n.sns_token_e8s,maxParticipantIcpE8s:n.max_participant_icp_e8s,minIcpE8s:n.min_icp_e8s,saleDelaySeconds:(0,a.fromNullable)(n.sale_delay_seconds),neuronBasketConstructionParameters:(0,a.fromNullable)(n.neuron_basket_construction_parameters),maxDirectParticipationIcpE8s:(0,a.fromNullable)(n.max_direct_participation_icp_e8s),minDirectParticipationIcpE8s:(0,a.fromNullable)(n.min_direct_participation_icp_e8s)}}}}if("CreateServiceNervousSystem"in e){let o=e.CreateServiceNervousSystem;return{CreateServiceNervousSystem:{url:(0,a.fromNullable)(o.url),governanceParameters:Rs((0,a.fromNullable)(o.governance_parameters)),fallbackControllerPrincipalIds:o.fallback_controller_principal_ids.map(n=>n.toString()),logo:dr((0,a.fromNullable)(o.logo)),name:(0,a.fromNullable)(o.name),ledgerParameters:Os((0,a.fromNullable)(o.ledger_parameters)),description:(0,a.fromNullable)(o.description),dappCanisters:o.dapp_canisters.map(Ns)??[],swapParameters:vs((0,a.fromNullable)(o.swap_parameters)),initialTokenDistribution:bs((0,a.fromNullable)(o.initial_token_distribution))}}}if("InstallCode"in e){let o=e.InstallCode;return{InstallCode:{skipStoppingBeforeInstalling:(0,a.fromNullable)(o.skip_stopping_before_installing),canisterId:o.canister_id.length?o.canister_id[0].toString():void 0,installMode:(0,a.fromNullable)(o.install_mode),wasmModuleHash:(0,a.uint8ArrayToHexString)((0,a.fromDefinedNullable)(o.wasm_module_hash)),argHash:(0,a.uint8ArrayToHexString)((0,a.fromDefinedNullable)(o.arg_hash))}}}if("StopOrStartCanister"in e){let o=e.StopOrStartCanister;return{StopOrStartCanister:{canisterId:o.canister_id.length?o.canister_id[0].toString():void 0,action:(0,a.fromNullable)(o.action)}}}if("UpdateCanisterSettings"in e)return{UpdateCanisterSettings:{canisterId:e.UpdateCanisterSettings.canister_id.length?e.UpdateCanisterSettings.canister_id[0].toString():void 0,settings:hs((0,a.fromDefinedNullable)(e.UpdateCanisterSettings.settings))}};throw new k(e)},ss=e=>({no:e.no,yes:e.yes,total:e.total,timestampSeconds:e.timestamp_seconds}),as=e=>{if("Spawn"in e){let t=e.Spawn;return{Spawn:{newController:t.new_controller.length?t.new_controller[0].toString():void 0,percentageToSpawn:t.percentage_to_spawn.length?t.percentage_to_spawn[0]:0}}}if("Split"in e)return{Split:{amount:e.Split.amount_e8s}};if("Follow"in e){let t=e.Follow;return{Follow:{topic:t.topic,followees:t.followees.map(tt)}}}if("ClaimOrRefresh"in e){let t=e.ClaimOrRefresh;return{ClaimOrRefresh:{by:t.by.length?ps(t.by[0]):void 0}}}if("Configure"in e){let t=e.Configure;return{Configure:{operation:t.operation.length?is(t.operation[0]):void 0}}}if("RegisterVote"in e){let t=e.RegisterVote;return{RegisterVote:{vote:t.vote,proposal:t.proposal.length?tt(t.proposal[0]):void 0}}}if("DisburseToNeuron"in e){let t=e.DisburseToNeuron;return{DisburseToNeuron:{dissolveDelaySeconds:t.dissolve_delay_seconds,kycVerified:t.kyc_verified,amount:t.amount_e8s,newController:t.new_controller.length?t.new_controller[0].toString():void 0,nonce:t.nonce}}}if("MergeMaturity"in e)return{MergeMaturity:{percentageToMerge:e.MergeMaturity.percentage_to_merge}};if("StakeMaturity"in e){let{percentage_to_stake:t}=e.StakeMaturity;return{StakeMaturity:{percentageToStake:(0,a.fromNullable)(t)}}}if("MakeProposal"in e){let t=e.MakeProposal;return{MakeProposal:{title:t.title.length?t.title[0]:void 0,url:t.url,action:t.action.length?ir(t.action[0]):void 0,summary:t.summary}}}if("Disburse"in e){let t=e.Disburse;return{Disburse:{toAccountId:t.to_account.length?Zo(t.to_account[0]):void 0,amount:t.amount.length?ds(t.amount[0]):void 0}}}if("Merge"in e){let t=e.Merge;return{Merge:{sourceNeuronId:t.source_neuron_id.length?t.source_neuron_id[0].id:void 0}}}throw new k(e)},is=e=>{if("RemoveHotKey"in e){let t=e.RemoveHotKey;return{RemoveHotKey:{hotKeyToRemove:t.hot_key_to_remove.length?t.hot_key_to_remove[0].toString():void 0}}}if("AddHotKey"in e){let t=e.AddHotKey;return{AddHotKey:{newHotKey:t.new_hot_key.length?t.new_hot_key[0].toString():void 0}}}if("StopDissolving"in e)return{StopDissolving:{}};if("StartDissolving"in e)return{StartDissolving:{}};if("IncreaseDissolveDelay"in e)return{IncreaseDissolveDelay:{additionalDissolveDelaySeconds:e.IncreaseDissolveDelay.additional_dissolve_delay_seconds}};if("JoinCommunityFund"in e||"LeaveCommunityFund"in e)return e;if("SetDissolveTimestamp"in e)return{SetDissolveTimestamp:{dissolveTimestampSeconds:e.SetDissolveTimestamp.dissolve_timestamp_seconds}};if("ChangeAutoStakeMaturity"in e){let{requested_setting_for_auto_stake_maturity:t}=e.ChangeAutoStakeMaturity;return{ChangeAutoStakeMaturity:{requestedSettingForAutoStakeMaturity:t}}}if("SetVisibility"in e){let t=e.SetVisibility;return{SetVisibility:{visibility:(0,a.fromNullable)(t.visibility)}}}throw new k(e)},cs=e=>{if("ToRemove"in e)return{ToRemove:Ao(e.ToRemove)};if("ToAdd"in e)return{ToAdd:Ao(e.ToAdd)};throw new k(e)},_s=e=>{let t=(0,a.fromNullable)(e);if((0,a.isNullish)(t))return;let{maximum_icp_xdr_rate:o,neurons_fund_matched_funding_curve_coefficients:n,max_theoretical_neurons_fund_participation_amount_xdr:r,minimum_icp_xdr_rate:i}=t,c=N=>{let f=(0,a.fromNullable)(N);if((0,a.isNullish)(f))return;let{basis_points:l}=f,v=(0,a.fromNullable)(l);return(0,a.nonNullish)(v)?{basisPoints:v}:void 0},d=N=>{let f=(0,a.fromNullable)(N);if((0,a.isNullish)(f))return;let{human_readable:l}=f,v=(0,a.fromNullable)(l);return(0,a.nonNullish)(v)?{humanReadable:v}:void 0},_=N=>{let f=(0,a.fromNullable)(N);if((0,a.isNullish)(f))return;let{full_participation_milestone_xdr:l,one_third_participation_milestone_xdr:v,contribution_threshold_xdr:x}=f;return{fullParticipationMilestoneXdr:d(l),oneThirdParticipationMilestoneXdr:d(v),contributionThresholdXdr:d(x)}};return{maximumIcpXdrRate:c(o),neuronsFundMatchedFundingCurveCoefficients:_(n),maxTheoreticalNeuronsFundParticipationAmountXdr:d(r),minimumIcpXdrRate:c(i)}},Ao=e=>({id:e.id.length?e.id[0].toString():void 0,rewardAccount:e.reward_account.length?Zo(e.reward_account[0]):void 0}),ds=e=>e.e8s,Zo=e=>(0,Eo.accountIdentifierFromBytes)(new Uint8Array(e.hash)),or=e=>{if("RewardToNeuron"in e)return{RewardToNeuron:{dissolveDelaySeconds:e.RewardToNeuron.dissolve_delay_seconds}};if("RewardToAccount"in e)return{RewardToAccount:{toAccount:e.RewardToAccount.to_account!=null&&e.RewardToAccount.to_account.length?Zo(e.RewardToAccount.to_account[0]):void 0}};throw new k(e)},ps=e=>{if("NeuronIdOrSubaccount"in e)return{NeuronIdOrSubaccount:{}};if("Memo"in e)return{Memo:e.Memo};if("MemoAndController"in e)return{MemoAndController:{memo:e.MemoAndController.memo,controller:e.MemoAndController.controller.length?e.MemoAndController.controller[0]:void 0}};throw new k(e)},Io=e=>({id:e.id.length?tt(e.id[0]):void 0,ballots:e.ballots.map(t=>ns({neuronId:t[0],ballot:t[1]})),rejectCost:e.reject_cost_e8s,proposalTimestampSeconds:e.proposal_timestamp_seconds,rewardEventRound:e.reward_event_round,failedTimestampSeconds:e.failed_timestamp_seconds,deadlineTimestampSeconds:(0,a.fromNullable)(e.deadline_timestamp_seconds),decidedTimestampSeconds:e.decided_timestamp_seconds,proposal:e.proposal.length?rs(e.proposal[0]):void 0,proposer:e.proposer.length?tt(e.proposer[0]):void 0,latestTally:e.latest_tally.length?ss(e.latest_tally[0]):void 0,executedTimestampSeconds:e.executed_timestamp_seconds,topic:e.topic,status:e.status,rewardStatus:e.reward_status}),cr=({response:{neuron_infos:e,full_neurons:t},canisterId:o})=>e.map(([n,r])=>Yo({neuronId:n,neuronInfo:r,rawNeuron:t.find(i=>i.id.length&&i.id[0].id===n),canisterId:o})),_r=({proposal_info:e})=>({proposals:e.map(Io)}),us=({id:e,known_neuron_data:t})=>{var o,n,r;return{id:((o=e[0])==null?void 0:o.id)??BigInt(0),name:((n=t[0])==null?void 0:n.name)??"",description:((r=t[0])==null?void 0:r.description[0])??""}},qo=e=>e===void 0?void 0:{basisPoints:(0,a.fromNullable)(e.basis_points)},_e=e=>e===void 0?void 0:{seconds:(0,a.fromNullable)(e.seconds)},ls=e=>e===void 0?void 0:{secondsAfterUtcMidnight:(0,a.fromNullable)(e.seconds_after_utc_midnight)},ms=e=>e===void 0?void 0:{isoCodes:e.iso_codes},ee=e=>e===void 0?void 0:{e8s:(0,a.fromNullable)(e.e8s)},Ns=e=>e===void 0||e.id.length===0?void 0:(0,a.fromDefinedNullable)(e.id).toString(),dr=e=>e===void 0?void 0:{base64Encoding:(0,a.fromNullable)(e.base64_encoding)},Os=e=>e===void 0?void 0:{transactionFee:ee((0,a.fromNullable)(e.transaction_fee)),tokenSymbol:(0,a.fromNullable)(e.token_symbol),tokenLogo:dr((0,a.fromNullable)(e.token_logo)),tokenName:(0,a.fromNullable)(e.token_name)},fs=e=>e===void 0?void 0:{rewardRateTransitionDuration:_e((0,a.fromNullable)(e.reward_rate_transition_duration)),initialRewardRate:qo((0,a.fromNullable)(e.initial_reward_rate)),finalRewardRate:qo((0,a.fromNullable)(e.final_reward_rate))},Rs=e=>e===void 0?void 0:{neuronMaximumDissolveDelayBonus:qo((0,a.fromNullable)(e.neuron_maximum_dissolve_delay_bonus)),neuronMaximumAgeForAgeBonus:_e((0,a.fromNullable)(e.neuron_maximum_age_for_age_bonus)),neuronMaximumDissolveDelay:_e((0,a.fromNullable)(e.neuron_maximum_dissolve_delay)),neuronMinimumDissolveDelayToVote:_e((0,a.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote)),neuronMaximumAgeBonus:qo((0,a.fromNullable)(e.neuron_maximum_age_bonus)),neuronMinimumStake:ee((0,a.fromNullable)(e.neuron_minimum_stake)),proposalWaitForQuietDeadlineIncrease:_e((0,a.fromNullable)(e.proposal_wait_for_quiet_deadline_increase)),proposalInitialVotingPeriod:_e((0,a.fromNullable)(e.proposal_initial_voting_period)),proposalRejectionFee:ee((0,a.fromNullable)(e.proposal_rejection_fee)),votingRewardParameters:fs((0,a.fromNullable)(e.voting_reward_parameters))},gs=e=>e===void 0?void 0:{dissolveDelayInterval:_e((0,a.fromNullable)(e.dissolve_delay_interval)),count:(0,a.fromNullable)(e.count)},vs=e=>e===void 0?void 0:{minimumParticipants:(0,a.fromNullable)(e.minimum_participants),duration:_e((0,a.fromNullable)(e.duration)),neuronBasketConstructionParameters:gs((0,a.fromNullable)(e.neuron_basket_construction_parameters)),confirmationText:(0,a.fromNullable)(e.confirmation_text),maximumParticipantIcp:ee((0,a.fromNullable)(e.maximum_participant_icp)),neuronsFundInvestmentIcp:ee((0,a.fromNullable)(e.neurons_fund_investment_icp)),minimumIcp:ee((0,a.fromNullable)(e.minimum_icp)),minimumParticipantIcp:ee((0,a.fromNullable)(e.minimum_participant_icp)),startTime:ls((0,a.fromNullable)(e.start_time)),maximumIcp:ee((0,a.fromNullable)(e.maximum_icp)),restrictedCountries:ms((0,a.fromNullable)(e.restricted_countries)),maxDirectParticipationIcp:ee((0,a.fromNullable)(e.maximum_direct_participation_icp)),minDirectParticipationIcp:ee((0,a.fromNullable)(e.minimum_direct_participation_icp)),neuronsFundParticipation:(0,a.fromNullable)(e.neurons_fund_participation)},nr=e=>e===void 0?void 0:{total:ee((0,a.fromNullable)(e.total))},ws=e=>e===void 0?void 0:{controller:e.controller.length===0?void 0:e.controller[0].toString(),dissolveDelay:_e((0,a.fromNullable)(e.dissolve_delay)),memo:(0,a.fromNullable)(e.memo),vestingPeriod:_e((0,a.fromNullable)(e.vesting_period)),stake:ee((0,a.fromNullable)(e.stake))},ys=e=>e===void 0?void 0:{developerNeurons:e.developer_neurons.map(ws)},bs=e=>e===void 0?void 0:{treasuryDistribution:nr((0,a.fromNullable)(e.treasury_distribution)),developerDistribution:ys((0,a.fromNullable)(e.developer_distribution)),swapDistribution:nr((0,a.fromNullable)(e.swap_distribution))},hs=e=>{var t;return e===void 0?void 0:{freezingThreshold:(0,a.fromNullable)(e.freezing_threshold),controllers:(t=(0,a.fromNullable)(e.controllers))==null?void 0:t.controllers.map(o=>o.toString()),logVisibility:(0,a.fromNullable)(e.log_visibility),wasmMemoryLimit:(0,a.fromNullable)(e.wasm_memory_limit),computeAllocation:(0,a.fromNullable)(e.compute_allocation),memoryAllocation:(0,a.fromNullable)(e.memory_allocation)}};var bo=e=>{let{command:t}=e,o=t[0];if(!o)throw new Ce({error_message:"Error updating neuron",error_type:0});if("Error"in o)throw new Ce(o.Error);return o},P=async({request:e,service:t})=>{let o=await t.manage_neuron(e);return bo(o)},pr=async({request:e,service:t})=>{let o=await t.simulate_manage_neuron(e);return bo(o)};var Do=BigInt(1e8);var Bo=class e{constructor(t,o,n,r,i){this.canisterId=t;this.service=o;this.certifiedService=n;this.oldListNeuronsCertifiedService=r;this.agent=i;this.listNeurons=async({certified:t=!0,neuronIds:o,includeEmptyNeurons:n,includePublicNeurons:r})=>{let i=Fo({neuronIds:o,includeEmptyNeurons:n,includePublicNeurons:r}),_=await((0,u.isNullish)(n)&&(0,u.isNullish)(r)&&t?this.oldListNeuronsCertifiedService:this.getGovernanceService(t)).list_neurons(i);return cr({response:_,canisterId:this.canisterId})};this.listKnownNeurons=async(t=!0)=>(await this.getGovernanceService(t).list_known_neurons()).known_neurons.map(n=>{var r,i,c;return{id:((r=(0,u.fromNullable)(n.id))==null?void 0:r.id)??BigInt(0),name:((i=(0,u.fromNullable)(n.known_neuron_data))==null?void 0:i.name)??"",description:(0,u.fromNullable)(((c=(0,u.fromNullable)(n.known_neuron_data))==null?void 0:c.description)??[])}});this.getLastestRewardEvent=async(t=!0)=>this.getGovernanceService(t).get_latest_reward_event();this.listProposals=async({request:t,certified:o=!0})=>{let n=qn(t),r=await this.getGovernanceService(o).list_proposals(n);return _r(r)};this.stakeNeuron=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:i,fee:c})=>{if(t<Do)throw new nt(t);let d=new Uint8Array((0,Lo.default)(8)),_=(0,u.uint8ArrayToBigInt)(d),N=this.buildNeuronStakeSubAccount(d,o),f=Me.AccountIdentifier.fromPrincipal({principal:this.canisterId,subAccount:N});await r.transfer({memo:_,amount:t,fromSubAccount:n,to:f,createdAt:i,fee:c});let l=await this.claimOrRefreshNeuronFromAccount({controller:o,memo:_});if((0,u.isNullish)(l))throw new ot;return l};this.stakeNeuronIcrc1=async({stake:t,principal:o,fromSubAccount:n,ledgerCanister:r,createdAt:i,fee:c})=>{if(t<Do)throw new nt(t);let d=new Uint8Array((0,Lo.default)(8)),_=(0,u.uint8ArrayToBigInt)(d),N=this.getNeuronStakeSubAccountBytes(d,o);await r.icrc1Transfer({icrc1Memo:d,amount:t,fromSubAccount:n,to:{owner:this.canisterId,subaccount:[N]},createdAt:i,fee:c});let f=await this.claimOrRefreshNeuronFromAccount({controller:o,memo:_});if((0,u.isNullish)(f))throw new ot;return f};this.increaseDissolveDelay=async({neuronId:t,additionalDissolveDelaySeconds:o})=>{let n=Qn({neuronId:t,additionalDissolveDelaySeconds:o});await P({request:n,service:this.certifiedService})};this.setDissolveDelay=async({neuronId:t,dissolveDelaySeconds:o})=>{let n=Yn({neuronId:t,dissolveDelaySeconds:o});await P({request:n,service:this.certifiedService})};this.startDissolving=async t=>{let o=er(t);await P({request:o,service:this.certifiedService})};this.stopDissolving=async t=>{let o=tr(t);await P({request:o,service:this.certifiedService})};this.joinCommunityFund=async t=>{let o=Zn(t);await P({request:o,service:this.certifiedService})};this.autoStakeMaturity=async t=>{await P({request:In(t),service:this.certifiedService})};this.leaveCommunityFund=async t=>{let o=Dn(t);await P({request:o,service:this.certifiedService})};this.setVisibility=async(t,o)=>{let n=Ln({neuronId:t,visibility:o});await P({request:n,service:this.certifiedService})};this.setNodeProviderAccount=async t=>{(0,Me.checkAccountId)(t);let o=Me.AccountIdentifier.fromHex(t),n=await this.certifiedService.update_node_provider({reward_account:[o.toAccountIdentifierHash()]});if("Err"in n)throw new Ce(n.Err)};this.mergeNeurons=async t=>{let o=$o(t);await P({request:o,service:this.certifiedService})};this.simulateMergeNeurons=async t=>{var _;let o=$o(t),n=await pr({request:o,service:this.certifiedService}),r,i,c,d;if("Merge"in n&&(0,u.nonNullish)(r=n.Merge)&&(0,u.nonNullish)(i=(0,u.fromNullable)(r.target_neuron_info))&&(0,u.nonNullish)(c=(0,u.fromNullable)(r.target_neuron))&&(0,u.nonNullish)(d=(_=(0,u.fromNullable)(c.id))==null?void 0:_.id))return Yo({neuronId:d,neuronInfo:i,rawNeuron:c,canisterId:this.canisterId});throw new Pe(`simulateMergeNeurons: Unrecognized Merge error in ${JSON.stringify(n)}`)};this.splitNeuron=async({neuronId:t,amount:o})=>{let n=Gn({neuronId:t,amount:o}),r=await this.certifiedService.manage_neuron(n),i=bo(r);if("Split"in i){let c=(0,u.fromNullable)(i.Split.created_neuron_id);if((0,u.isNullish)(c))throw new Ce({error_message:"Unexpected error splitting neuron. No neuronId in Split response.",error_type:0});return c.id}throw new Pe(`Unrecognized Split error in ${JSON.stringify(r)}`)};this.getProposal=async({proposalId:t,certified:o=!0})=>{let[n]=await this.getGovernanceService(o).get_proposal_info(t);return n?Io(n):void 0};this.makeProposal=async t=>{var r;let o=Kn(t),n=await P({request:o,service:this.certifiedService});return"MakeProposal"in n?(r=(0,u.fromNullable)(n.MakeProposal.proposal_id))==null?void 0:r.id:void 0};this.registerVote=async({neuronId:t,vote:o,proposalId:n})=>{let r=Un({neuronId:t,vote:o,proposalId:n});await P({request:r,service:this.certifiedService})};this.setFollowees=async t=>{let o=Wn(t);await P({request:o,service:this.certifiedService})};this.disburse=async({neuronId:t,toAccountId:o,amount:n})=>{(0,u.nonNullish)(o)&&(0,Me.checkAccountId)(o);let r=(0,u.nonNullish)(o)?Me.AccountIdentifier.fromHex(o):void 0,i=Hn({neuronId:t,toAccountIdentifier:r,amount:n});await P({request:i,service:this.certifiedService})};this.mergeMaturity=async({neuronId:t,percentageToMerge:o})=>{(0,u.assertPercentageNumber)(o);let n=jn({neuronId:t,percentageToMerge:o});await P({request:n,service:this.certifiedService})};this.stakeMaturity=async({neuronId:t,percentageToStake:o})=>{(0,u.assertPercentageNumber)(o??100),await P({request:zn({neuronId:t,percentageToStake:o}),service:this.certifiedService})};this.spawnNeuron=async({neuronId:t,percentageToSpawn:o,newController:n,nonce:r})=>{var N;(0,u.nonNullish)(o)&&(0,u.assertPercentageNumber)(o);let i=Xn({neuronId:t,percentageToSpawn:o,newController:n,nonce:r}),c=await this.certifiedService.manage_neuron(i),d=bo(c),_;if("Spawn"in d&&(0,u.nonNullish)(_=(N=(0,u.fromNullable)(d.Spawn.created_neuron_id))==null?void 0:N.id))return _;throw new Pe(`Unrecognized Spawn error in ${JSON.stringify(c)}`)};this.addHotkey=async({neuronId:t,principal:o})=>{let n=Jn({neuronId:t,principal:o});await P({request:n,service:this.certifiedService})};this.removeHotkey=async({neuronId:t,principal:o})=>{let n=$n({neuronId:t,principal:o});await P({request:n,service:this.certifiedService})};this.claimOrRefreshNeuronFromAccount=async({memo:t,controller:o})=>{var c;let n=Bn({memo:t,controller:o}),r=await this.certifiedService.manage_neuron(n),i;if((0,u.nonNullish)(i=(0,u.fromNullable)(r.command))&&"ClaimOrRefresh"in i)return(c=(0,u.fromNullable)(i.ClaimOrRefresh.refreshed_neuron_id))==null?void 0:c.id;throw new Pe(`Unrecognized ClaimOrRefresh error in ${JSON.stringify(r)}`)};this.claimOrRefreshNeuron=async t=>{var i;let o=En(t),n=await this.service.manage_neuron(o),r;if((0,u.nonNullish)(r=(0,u.fromNullable)(n.command))&&"ClaimOrRefresh"in r)return(i=(0,u.fromNullable)(r.ClaimOrRefresh.refreshed_neuron_id))==null?void 0:i.id;throw new Pe(`Unrecognized ClaimOrRefresh error in ${JSON.stringify(n)}`)};this.buildNeuronStakeSubAccount=(t,o)=>Me.SubAccount.fromBytes(this.getNeuronStakeSubAccountBytes(t,o));this.getNeuronStakeSubAccountBytes=(t,o)=>{let n=(0,u.asciiStringToByteArray)("neuron-stake"),r=bn.create();return r.update((0,u.arrayOfNumberToUint8Array)([12,...n,...o.toUint8Array(),...t])),r.digest()};this.getNeuron=async({certified:t=!0,neuronId:o})=>{let[n]=await this.listNeurons({certified:t,neuronIds:[o]});return n};this.canisterId=t,this.service=o,this.certifiedService=n,this.oldListNeuronsCertifiedService=r,this.agent=i}static create(t={}){let o=t.canisterId??So,{service:n,certifiedService:r,agent:i}=(0,u.createServices)({options:{...t,canisterId:o},idlFactory:Po,certifiedIdlFactory:kn}),c=t.oldListNeuronsServiceOverride??ur.Actor.createActor(xn,{agent:i,canisterId:o});return new e(o,n,r,c,i)}getGovernanceService(t){return t?this.certifiedService:this.service}};var mr=require("@dfinity/ledger-icp"),Uo=require("@dfinity/utils");var lr=({IDL:e})=>{let t=e.Rec(),o=e.Rec(),n=e.Record({id:e.Nat64}),r=e.Record({followees:e.Vec(n)}),i=e.Record({name:e.Text,description:e.Opt(e.Text)}),c=e.Record({id:e.Opt(n),known_neuron_data:e.Opt(i)}),d=e.Record({percentage_to_spawn:e.Opt(e.Nat32),new_controller:e.Opt(e.Principal),nonce:e.Opt(e.Nat64)}),_=e.Record({amount_e8s:e.Nat64}),N=e.Record({topic:e.Int32,followees:e.Vec(n)}),f=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),l=e.Variant({NeuronIdOrSubaccount:e.Record({}),MemoAndController:f,Memo:e.Nat64}),v=e.Record({by:e.Opt(l)}),x=e.Record({hot_key_to_remove:e.Opt(e.Principal)}),B=e.Record({new_hot_key:e.Opt(e.Principal)}),X=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),de=e.Record({additional_dissolve_delay_seconds:e.Nat32}),pe=e.Record({visibility:e.Opt(e.Int32)}),ue=e.Record({dissolve_timestamp_seconds:e.Nat64}),p=e.Variant({RemoveHotKey:x,AddHotKey:B,ChangeAutoStakeMaturity:X,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:de,SetVisibility:pe,JoinCommunityFund:e.Record({}),LeaveCommunityFund:e.Record({}),SetDissolveTimestamp:ue}),M=e.Record({operation:e.Opt(p)}),J=e.Record({vote:e.Int32,proposal:e.Opt(n)}),F=e.Record({source_neuron_id:e.Opt(n)}),A=e.Record({dissolve_delay_seconds:e.Nat64,kyc_verified:e.Bool,amount_e8s:e.Nat64,new_controller:e.Opt(e.Principal),nonce:e.Nat64}),$=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),q=e.Record({percentage_to_merge:e.Nat32}),h=e.Record({hash:e.Vec(e.Nat8)}),le=e.Record({e8s:e.Nat64}),C=e.Record({to_account:e.Opt(h),amount:e.Opt(le)}),me=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:v,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:o,StakeMaturity:$,MergeMaturity:q,Disburse:C}),V=e.Variant({Subaccount:e.Vec(e.Nat8),NeuronId:n}),S=e.Record({id:e.Opt(n),command:e.Opt(me),neuron_id_or_subaccount:e.Opt(V)}),Ne=e.Record({controllers:e.Vec(e.Principal)}),Oe=e.Record({freezing_threshold:e.Opt(e.Nat64),controllers:e.Opt(Ne),log_visibility:e.Opt(e.Int32),wasm_memory_limit:e.Opt(e.Nat64),memory_allocation:e.Opt(e.Nat64),compute_allocation:e.Opt(e.Nat64)}),Q=e.Record({canister_id:e.Opt(e.Principal),settings:e.Opt(Oe)}),fe=e.Record({skip_stopping_before_installing:e.Opt(e.Bool),wasm_module_hash:e.Opt(e.Vec(e.Nat8)),canister_id:e.Opt(e.Principal),arg_hash:e.Opt(e.Vec(e.Nat8)),install_mode:e.Opt(e.Int32)}),Y=e.Record({action:e.Opt(e.Int32),canister_id:e.Opt(e.Principal)}),y=e.Record({basis_points:e.Opt(e.Nat64)}),g=e.Record({seconds:e.Opt(e.Nat64)}),m=e.Record({e8s:e.Opt(e.Nat64)}),Re=e.Record({reward_rate_transition_duration:e.Opt(g),initial_reward_rate:e.Opt(y),final_reward_rate:e.Opt(y)}),ge=e.Record({neuron_maximum_dissolve_delay_bonus:e.Opt(y),neuron_maximum_age_for_age_bonus:e.Opt(g),neuron_maximum_dissolve_delay:e.Opt(g),neuron_minimum_dissolve_delay_to_vote:e.Opt(g),neuron_maximum_age_bonus:e.Opt(y),neuron_minimum_stake:e.Opt(m),proposal_wait_for_quiet_deadline_increase:e.Opt(g),proposal_initial_voting_period:e.Opt(g),proposal_rejection_fee:e.Opt(m),voting_reward_parameters:e.Opt(Re)}),Z=e.Record({base64_encoding:e.Opt(e.Text)}),ve=e.Record({transaction_fee:e.Opt(m),token_symbol:e.Opt(e.Text),token_logo:e.Opt(Z),token_name:e.Opt(e.Text)}),we=e.Record({id:e.Opt(e.Principal)}),ye=e.Record({dissolve_delay_interval:e.Opt(g),count:e.Opt(e.Nat64)}),be=e.Record({seconds_after_utc_midnight:e.Opt(e.Nat64)}),he=e.Record({iso_codes:e.Vec(e.Text)}),Se=e.Record({minimum_participants:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),duration:e.Opt(g),neuron_basket_construction_parameters:e.Opt(ye),confirmation_text:e.Opt(e.Text),maximum_participant_icp:e.Opt(m),minimum_icp:e.Opt(m),minimum_direct_participation_icp:e.Opt(m),minimum_participant_icp:e.Opt(m),start_time:e.Opt(be),maximum_direct_participation_icp:e.Opt(m),maximum_icp:e.Opt(m),neurons_fund_investment_icp:e.Opt(m),restricted_countries:e.Opt(he)}),I=e.Record({total:e.Opt(m)}),ke=e.Record({controller:e.Opt(e.Principal),dissolve_delay:e.Opt(g),memo:e.Opt(e.Nat64),vesting_period:e.Opt(g),stake:e.Opt(m)}),xe=e.Record({developer_neurons:e.Vec(ke)}),Ve=e.Record({treasury_distribution:e.Opt(I),developer_distribution:e.Opt(xe),swap_distribution:e.Opt(I)}),s=e.Record({url:e.Opt(e.Text),governance_parameters:e.Opt(ge),fallback_controller_principal_ids:e.Vec(e.Principal),logo:e.Opt(Z),name:e.Opt(e.Text),ledger_parameters:e.Opt(ve),description:e.Opt(e.Text),dapp_canisters:e.Vec(we),swap_parameters:e.Opt(Se),initial_token_distribution:e.Opt(Ve)}),D=e.Record({nns_function:e.Int32,payload:e.Vec(e.Nat8)}),w=e.Record({id:e.Opt(e.Principal),reward_account:e.Opt(h)}),Te=e.Record({dissolve_delay_seconds:e.Nat64}),rt=e.Record({to_account:e.Opt(h)}),st=e.Variant({RewardToNeuron:Te,RewardToAccount:rt}),G=e.Record({node_provider:e.Opt(w),reward_mode:e.Opt(st),amount_e8s:e.Nat64}),at=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),it=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(at),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,sale_delay_seconds:e.Opt(e.Nat64),max_participant_icp_e8s:e.Nat64,min_direct_participation_icp_e8s:e.Opt(e.Nat64),min_icp_e8s:e.Nat64,max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),Fe=e.Record({community_fund_investment_e8s:e.Opt(e.Nat64),target_swap_canister_id:e.Opt(e.Principal),params:e.Opt(it)}),ct=e.Record({start_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Nat64}),_t=e.Record({open_time_window:e.Opt(ct)}),Ae=e.Record({request:e.Opt(_t),swap_canister_id:e.Opt(e.Principal)}),qe=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r))}),te=e.Record({use_registry_derived_rewards:e.Opt(e.Bool),rewards:e.Vec(G)}),U=e.Record({human_readable:e.Opt(e.Text)}),dt=e.Record({contribution_threshold_xdr:e.Opt(U),one_third_participation_milestone_xdr:e.Opt(U),full_participation_milestone_xdr:e.Opt(U)}),pt=e.Record({maximum_icp_xdr_rate:e.Opt(y),neurons_fund_matched_funding_curve_coefficients:e.Opt(dt),max_theoretical_neurons_fund_participation_amount_xdr:e.Opt(U),minimum_icp_xdr_rate:e.Opt(y)}),K=e.Record({neuron_minimum_stake_e8s:e.Nat64,max_proposals_to_keep_per_topic:e.Nat32,neuron_management_fee_per_proposal_e8s:e.Nat64,reject_cost_e8s:e.Nat64,transaction_fee_e8s:e.Nat64,neuron_spawn_dissolve_delay_seconds:e.Nat64,minimum_icp_xdr_rate:e.Nat64,maximum_node_provider_rewards_e8s:e.Nat64,neurons_fund_economics:e.Opt(pt)}),W=e.Record({principals:e.Vec(e.Principal)}),ut=e.Variant({ToRemove:w,ToAdd:w}),Ee=e.Record({change:e.Opt(ut)}),Be=e.Record({motion_text:e.Text}),lt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:S,UpdateCanisterSettings:Q,InstallCode:fe,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:G,OpenSnsTokenSwap:Fe,SetSnsTokenSwapOpenTimeWindow:Ae,SetDefaultFollowees:qe,RewardNodeProviders:te,ManageNetworkEconomics:K,ApproveGenesisKyc:W,AddOrRemoveNodeProvider:Ee,Motion:Be});o.fill(e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(lt),summary:e.Text}));let mt=e.Record({proposal:e.Opt(o),caller:e.Opt(e.Principal),proposer_id:e.Opt(n)}),Ge=e.Record({xdr_permyriad_per_icp:e.Opt(e.Nat64),timestamp_seconds:e.Opt(e.Nat64)}),oe=e.Record({minimum_xdr_permyriad_per_icp:e.Opt(e.Nat64),registry_version:e.Opt(e.Nat64),node_providers:e.Vec(w),timestamp:e.Nat64,rewards:e.Vec(G),xdr_conversion_rate:e.Opt(Ge),maximum_node_provider_rewards_e8s:e.Opt(e.Nat64)}),Ue=e.Record({total_maturity_e8s_equivalent:e.Opt(e.Nat64),maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),voting_power_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_staked_e8s:e.Opt(e.Nat64),count:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Opt(e.Nat64),staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),staked_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),total_voting_power:e.Opt(e.Nat64),count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64))}),Ke=e.Record({total_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,garbage_collectable_neurons_count:e.Nat64,dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),ect_neuron_count:e.Nat64,total_supply_icp:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,community_fund_total_maturity_e8s_equivalent:e.Nat64,total_staked_e8s_seed:e.Nat64,total_staked_maturity_e8s_equivalent_ect:e.Nat64,total_staked_e8s:e.Nat64,not_dissolving_neurons_count:e.Nat64,total_locked_e8s:e.Nat64,neurons_fund_total_active_neurons:e.Nat64,total_voting_power_non_self_authenticating_controller:e.Opt(e.Nat64),total_staked_maturity_e8s_equivalent:e.Nat64,not_dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_e8s_ect:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_sum:e.Nat64,dissolved_neurons_e8s:e.Nat64,total_staked_e8s_non_self_authenticating_controller:e.Opt(e.Nat64),dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_e8s_buckets_ect:e.Vec(e.Tuple(e.Nat64,e.Float64)),non_self_authenticating_controller_neuron_subset_metrics:e.Opt(Ue),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),total_staked_maturity_e8s_equivalent_seed:e.Nat64,community_fund_total_staked_e8s:e.Nat64,not_dissolving_neurons_e8s_buckets_seed:e.Vec(e.Tuple(e.Nat64,e.Float64)),public_neuron_subset_metrics:e.Opt(Ue),timestamp_seconds:e.Nat64,seed_neuron_count:e.Nat64}),Nt=e.Record({count:e.Opt(e.Nat64),previous_total_stake_e8s:e.Opt(e.Nat64),current_total_stake_e8s:e.Opt(e.Nat64),group_type:e.Int32}),We=e.Record({groups:e.Vec(Nt),timestamp_seconds:e.Opt(e.Nat64)}),He=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),day_after_genesis:e.Nat64,actual_timestamp_seconds:e.Nat64,total_available_e8s_equivalent:e.Nat64,latest_round_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,settled_proposals:e.Vec(n)}),je=e.Record({to_subaccount:e.Vec(e.Nat8),neuron_stake_e8s:e.Nat64,from:e.Opt(e.Principal),memo:e.Nat64,from_subaccount:e.Vec(e.Nat8),transfer_timestamp:e.Nat64,block_height:e.Nat64}),Ot=e.Record({followers:e.Vec(n)}),ft=e.Record({followers_map:e.Vec(e.Tuple(e.Nat64,Ot))}),Rt=e.Variant({LastNeuronId:n}),ze=e.Record({status:e.Opt(e.Int32),failure_reason:e.Opt(e.Text),progress:e.Opt(Rt)}),gt=e.Record({neuron_indexes_migration:e.Opt(ze),copy_inactive_neurons_to_stable_memory_migration:e.Opt(ze)}),O=e.Record({error_message:e.Text,error_type:e.Int32}),vt=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),hotkeys:e.Opt(W),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),wt=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Text,cf_neurons:e.Vec(vt)}),Xe=e.Record({vote:e.Int32,voting_power:e.Nat64}),yt=e.Record({min_participant_icp_e8s:e.Opt(e.Nat64),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),bt=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Opt(e.Principal),hotkeys:e.Vec(e.Principal),is_capped:e.Opt(e.Bool),maturity_equivalent_icp_e8s:e.Opt(e.Nat64),nns_neuron_id:e.Opt(n),amount_icp_e8s:e.Opt(e.Nat64)}),ne=e.Record({neurons_fund_neuron_portions:e.Vec(bt)}),ht=e.Record({serialized_representation:e.Opt(e.Text)}),H=e.Record({total_maturity_equivalent_icp_e8s:e.Opt(e.Nat64),intended_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),swap_participation_limits:e.Opt(yt),max_neurons_fund_swap_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_reserves:e.Opt(ne),ideal_matched_participation_function:e.Opt(ht),allocated_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64)}),St=e.Record({final_neurons_fund_participation:e.Opt(H),initial_neurons_fund_participation:e.Opt(H),neurons_fund_refunds:e.Opt(ne)}),kt=e.Record({status:e.Opt(e.Int32),freezing_threshold:e.Opt(e.Nat64),controllers:e.Vec(e.Principal),memory_size:e.Opt(e.Nat64),cycles:e.Opt(e.Nat64),idle_cycles_burned_per_day:e.Opt(e.Nat64),module_hash:e.Vec(e.Nat8)}),b=e.Record({status:e.Opt(kt),canister_id:e.Opt(e.Principal)}),xt=e.Record({ledger_index_canister_summary:e.Opt(b),fallback_controller_principal_ids:e.Vec(e.Principal),ledger_archive_canister_summaries:e.Vec(b),ledger_canister_summary:e.Opt(b),swap_canister_summary:e.Opt(b),governance_canister_summary:e.Opt(b),root_canister_summary:e.Opt(b),dapp_canister_summaries:e.Vec(b)}),Je=e.Record({swap_background_information:e.Opt(xt)}),$e=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),Vt=e.Record({current_deadline_timestamp_seconds:e.Nat64}),Tt=e.Record({id:e.Opt(n),failure_reason:e.Opt(O),cf_participants:e.Vec(wt),ballots:e.Vec(e.Tuple(e.Nat64,Xe)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,neurons_fund_data:e.Opt(St),reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Je),latest_tally:e.Opt($e),sns_token_swap_lifecycle:e.Opt(e.Int32),decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),wait_for_quiet_state:e.Opt(Vt),executed_timestamp_seconds:e.Nat64,original_total_community_fund_maturity_e8s_equivalent:e.Opt(e.Nat64)}),Pt=e.Variant({Spawn:n,Split:_,Configure:M,Merge:F,DisburseToNeuron:A,SyncCommand:e.Record({}),ClaimOrRefreshNeuron:v,MergeMaturity:q,Disburse:C}),Ct=e.Record({command:e.Opt(Pt),timestamp:e.Nat64}),Qe=e.Record({vote:e.Int32,proposal_id:e.Opt(n)}),Mt=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),T=e.Record({id:e.Opt(n),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),controller:e.Opt(e.Principal),recent_ballots:e.Vec(Qe),kyc_verified:e.Bool,neuron_type:e.Opt(e.Int32),not_for_profit:e.Bool,maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,hot_keys:e.Vec(e.Principal),account:e.Vec(e.Nat8),joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),dissolve_state:e.Opt(Mt),followees:e.Vec(e.Tuple(e.Int32,r)),neuron_fees_e8s:e.Nat64,visibility:e.Opt(e.Int32),transfer:e.Opt(je),known_neuron_data:e.Opt(i),spawn_at_timestamp_seconds:e.Opt(e.Nat64)}),en=e.Record({default_followees:e.Vec(e.Tuple(e.Int32,r)),making_sns_proposal:e.Opt(mt),most_recent_monthly_node_provider_rewards:e.Opt(oe),maturity_modulation_last_updated_at_timestamp_seconds:e.Opt(e.Nat64),wait_for_quiet_threshold_seconds:e.Nat64,metrics:e.Opt(Ke),neuron_management_voting_period_seconds:e.Opt(e.Nat64),node_providers:e.Vec(w),cached_daily_maturity_modulation_basis_points:e.Opt(e.Int32),economics:e.Opt(K),restore_aging_summary:e.Opt(We),spawning_neurons:e.Opt(e.Bool),latest_reward_event:e.Opt(He),to_claim_transfers:e.Vec(je),short_voting_period_seconds:e.Nat64,topic_followee_index:e.Vec(e.Tuple(e.Int32,ft)),migrations:e.Opt(gt),proposals:e.Vec(e.Tuple(e.Nat64,Tt)),xdr_conversion_rate:e.Opt(Ge),in_flight_commands:e.Vec(e.Tuple(e.Nat64,Ct)),neurons:e.Vec(e.Tuple(e.Nat64,T)),genesis_timestamp_seconds:e.Nat64}),j=e.Variant({Ok:e.Null,Err:O}),Ft=e.Variant({Error:O,NeuronId:n}),At=e.Record({result:e.Opt(Ft)}),Ye=e.Variant({Ok:T,Err:O}),qt=e.Variant({Ok:Ke,Err:O}),Et=e.Variant({Ok:te,Err:O}),z=e.Record({dissolve_delay_seconds:e.Nat64,recent_ballots:e.Vec(Qe),neuron_type:e.Opt(e.Int32),created_timestamp_seconds:e.Nat64,state:e.Int32,stake_e8s:e.Nat64,joined_community_fund_timestamp_seconds:e.Opt(e.Nat64),retrieved_at_timestamp_seconds:e.Nat64,visibility:e.Opt(e.Int32),known_neuron_data:e.Opt(i),voting_power:e.Nat64,age_seconds:e.Nat64}),Ze=e.Variant({Ok:z,Err:O}),Bt=e.Record({nns_proposal_id:e.Opt(n)}),Gt=e.Record({final_neurons_fund_participation:e.Opt(H),initial_neurons_fund_participation:e.Opt(H),neurons_fund_refunds:e.Opt(ne)}),Ut=e.Record({neurons_fund_audit_info:e.Opt(Gt)}),Kt=e.Variant({Ok:Ut,Err:O}),Wt=e.Record({result:e.Opt(Kt)}),Ht=e.Variant({Ok:w,Err:O}),re=e.Record({id:e.Opt(n),status:e.Int32,topic:e.Int32,failure_reason:e.Opt(O),ballots:e.Vec(e.Tuple(e.Nat64,Xe)),proposal_timestamp_seconds:e.Nat64,reward_event_round:e.Nat64,deadline_timestamp_seconds:e.Opt(e.Nat64),failed_timestamp_seconds:e.Nat64,reject_cost_e8s:e.Nat64,derived_proposal_information:e.Opt(Je),latest_tally:e.Opt($e),reward_status:e.Int32,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(o),proposer:e.Opt(n),executed_timestamp_seconds:e.Nat64}),jt=e.Record({known_neurons:e.Vec(c)}),zt=e.Record({include_public_neurons_in_full_neurons:e.Opt(e.Bool),neuron_ids:e.Vec(e.Nat64),include_empty_neurons_readable_by_caller:e.Opt(e.Bool),include_neurons_readable_by_caller:e.Bool}),Xt=e.Record({neuron_infos:e.Vec(e.Tuple(e.Nat64,z)),full_neurons:e.Vec(T)}),Jt=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),end_timestamp_seconds:e.Opt(e.Nat64)}),$t=e.Record({date_filter:e.Opt(Jt)}),Qt=e.Record({rewards:e.Vec(oe)}),Yt=e.Record({node_providers:e.Vec(w)}),Zt=e.Record({include_reward_status:e.Vec(e.Int32),omit_large_fields:e.Opt(e.Bool),before_proposal:e.Opt(n),limit:e.Nat32,exclude_topic:e.Vec(e.Int32),include_all_manage_neuron_proposals:e.Opt(e.Bool),include_status:e.Vec(e.Int32)}),It=e.Record({proposal_info:e.Vec(re)}),Dt=e.Record({arg:e.Opt(e.Vec(e.Nat8)),wasm_module:e.Opt(e.Vec(e.Nat8)),skip_stopping_before_installing:e.Opt(e.Bool),canister_id:e.Opt(e.Principal),install_mode:e.Opt(e.Int32)}),Lt=e.Variant({RegisterKnownNeuron:c,ManageNeuron:t,UpdateCanisterSettings:Q,InstallCode:Dt,StopOrStartCanister:Y,CreateServiceNervousSystem:s,ExecuteNnsFunction:D,RewardNodeProvider:G,OpenSnsTokenSwap:Fe,SetSnsTokenSwapOpenTimeWindow:Ae,SetDefaultFollowees:qe,RewardNodeProviders:te,ManageNetworkEconomics:K,ApproveGenesisKyc:W,AddOrRemoveNodeProvider:Ee,Motion:Be}),eo=e.Record({url:e.Text,title:e.Opt(e.Text),action:e.Opt(Lt),summary:e.Text}),to=e.Variant({Spawn:d,Split:_,Follow:N,ClaimOrRefresh:v,Configure:M,RegisterVote:J,Merge:F,DisburseToNeuron:A,MakeProposal:eo,StakeMaturity:$,MergeMaturity:q,Disburse:C});t.fill(e.Record({id:e.Opt(n),command:e.Opt(to),neuron_id_or_subaccount:e.Opt(V)}));let se=e.Record({created_neuron_id:e.Opt(n)}),oo=e.Record({refreshed_neuron_id:e.Opt(n)}),no=e.Record({target_neuron:e.Opt(T),source_neuron:e.Opt(T),target_neuron_info:e.Opt(z),source_neuron_info:e.Opt(z)}),ro=e.Record({message:e.Opt(e.Text),proposal_id:e.Opt(n)}),so=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),ao=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),io=e.Record({transfer_block_height:e.Nat64}),co=e.Variant({Error:O,Spawn:se,Split:se,Follow:e.Record({}),ClaimOrRefresh:oo,Configure:e.Record({}),RegisterVote:e.Record({}),Merge:no,DisburseToNeuron:se,MakeProposal:ro,StakeMaturity:so,MergeMaturity:ao,Disburse:io}),Ie=e.Record({command:e.Opt(co)}),_o=e.Record({total_direct_contribution_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_contribution_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),po=e.Variant({Committed:_o,Aborted:e.Record({})}),uo=e.Record({result:e.Opt(po),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),lo=e.Record({total_direct_participation_icp_e8s:e.Opt(e.Nat64),total_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Opt(e.Principal)}),mo=e.Variant({Committed:lo,Aborted:e.Record({})}),No=e.Record({result:e.Opt(mo),nns_proposal_id:e.Opt(e.Nat64)}),Oo=e.Record({controller:e.Opt(e.Principal),hotkey_principal:e.Opt(e.Text),hotkeys:e.Opt(W),is_capped:e.Opt(e.Bool),nns_neuron_id:e.Opt(e.Nat64),amount_icp_e8s:e.Opt(e.Nat64)}),fo=e.Record({neurons_fund_neuron_portions:e.Vec(Oo)}),Ro=e.Variant({Ok:fo,Err:O}),go=e.Record({result:e.Opt(Ro)}),vo=e.Record({reward_account:e.Opt(h)});return e.Service({claim_gtc_neurons:e.Func([e.Principal,e.Vec(n)],[j],[]),claim_or_refresh_neuron_from_account:e.Func([f],[At],[]),get_build_metadata:e.Func([],[e.Text],[]),get_full_neuron:e.Func([e.Nat64],[Ye],[]),get_full_neuron_by_id_or_subaccount:e.Func([V],[Ye],[]),get_latest_reward_event:e.Func([],[He],[]),get_metrics:e.Func([],[qt],[]),get_monthly_node_provider_rewards:e.Func([],[Et],[]),get_most_recent_monthly_node_provider_rewards:e.Func([],[e.Opt(oe)],[]),get_network_economics_parameters:e.Func([],[K],[]),get_neuron_ids:e.Func([],[e.Vec(e.Nat64)],[]),get_neuron_info:e.Func([e.Nat64],[Ze],[]),get_neuron_info_by_id_or_subaccount:e.Func([V],[Ze],[]),get_neurons_fund_audit_info:e.Func([Bt],[Wt],[]),get_node_provider_by_caller:e.Func([e.Null],[Ht],[]),get_pending_proposals:e.Func([],[e.Vec(re)],[]),get_proposal_info:e.Func([e.Nat64],[e.Opt(re)],[]),get_restore_aging_summary:e.Func([],[We],[]),list_known_neurons:e.Func([],[jt],[]),list_neurons:e.Func([zt],[Xt],[]),list_node_provider_rewards:e.Func([$t],[Qt],[]),list_node_providers:e.Func([],[Yt],[]),list_proposals:e.Func([Zt],[It],[]),manage_neuron:e.Func([t],[Ie],[]),settle_community_fund_participation:e.Func([uo],[j],[]),settle_neurons_fund_participation:e.Func([No],[go],[]),simulate_manage_neuron:e.Func([t],[Ie],[]),transfer_gtc_neuron:e.Func([n,n],[j],[]),update_neuron:e.Func([T],[e.Opt(O)],[]),update_node_provider:e.Func([vo],[j],[])})};var Go=class e{constructor(t,o){this.canisterId=t;this.certifiedService=o;this.canisterId=t,this.certifiedService=o}static create(t={}){let o=t.canisterId??So,{certifiedService:n}=(0,Uo.createServices)({options:{...t,canisterId:o},idlFactory:Po,certifiedIdlFactory:lr});return new e(o,n)}async updateNeuron(t){(0,Uo.assertNonNullish)(t.id);let o=Fo({neuronIds:[t.id]}),r=(await this.certifiedService.list_neurons(o)).full_neurons[0];if((0,mr.principalToAccountIdentifier)(this.canisterId,Uint8Array.from(r.account))!==t.accountIdentifier)throw new Error("Neuron account identifier can't be changed");let c=rr({neuron:t,account:Uint8Array.from(r.account)});return this.certifiedService.update_neuron(c)}};var fr=require("@dfinity/utils");var Nr=({IDL:e})=>{let t=e.Record({allowed_principals:e.Vec(e.Principal),access_controls_enabled:e.Bool,sns_subnet_ids:e.Vec(e.Principal)}),o=e.Record({wasm:e.Vec(e.Nat8),proposal_id:e.Opt(e.Nat64),canister_type:e.Int32}),n=e.Record({hash:e.Vec(e.Nat8),wasm:e.Opt(o)}),r=e.Record({message:e.Text}),i=e.Variant({Error:r,Hash:e.Vec(e.Nat8)}),c=e.Record({result:e.Opt(i)}),d=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),_=e.Record({id:e.Opt(e.Principal)}),N=e.Record({canisters:e.Vec(_)}),f=e.Record({slope_numerator:e.Opt(e.Nat64),intercept_icp_e8s:e.Opt(e.Nat64),from_direct_participation_icp_e8s:e.Opt(e.Nat64),slope_denominator:e.Opt(e.Nat64),to_direct_participation_icp_e8s:e.Opt(e.Nat64)}),l=e.Record({serialized_representation:e.Opt(e.Text)}),v=e.Record({coefficient_intervals:e.Vec(f),max_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),min_direct_participation_threshold_icp_e8s:e.Opt(e.Nat64),ideal_matched_participation_function:e.Opt(l)}),x=e.Record({total_e8s:e.Nat64}),B=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Nat64,memo:e.Nat64,stake_e8s:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64)}),X=e.Record({developer_neurons:e.Vec(B)}),de=e.Record({airdrop_neurons:e.Vec(B)}),pe=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),ue=e.Record({treasury_distribution:e.Opt(x),developer_distribution:e.Opt(X),airdrop_distribution:e.Opt(de),swap_distribution:e.Opt(pe)}),p=e.Variant({FractionalDeveloperVotingPower:ue}),M=e.Record({iso_codes:e.Vec(e.Text)}),J=e.Record({url:e.Opt(e.Text),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),nns_proposal_id:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(d),fallback_controller_principal_ids:e.Vec(e.Text),token_symbol:e.Opt(e.Text),final_reward_rate_basis_points:e.Opt(e.Nat64),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),description:e.Opt(e.Text),max_neuron_age_seconds_for_age_bonus:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),dapp_canisters:e.Opt(N),neurons_fund_participation_constraints:e.Opt(v),max_age_bonus_percentage:e.Opt(e.Nat64),initial_token_distribution:e.Opt(p),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),proposal_reject_cost_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(M),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),F=e.Record({sns_init_payload:e.Opt(J)}),A=e.Record({restored_dapp_canisters:e.Vec(_),nns_controlled_dapp_canisters:e.Vec(_),sns_controlled_dapp_canisters:e.Vec(_)}),$=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)}),q=e.Record({dapp_canisters_transfer_result:e.Opt(A),subnet_id:e.Opt(e.Principal),error:e.Opt(r),canisters:e.Opt($)}),h=e.Record({allowed_principals:e.Vec(e.Principal)}),le=e.Record({proposal_id:e.Nat64}),C=e.Record({root_canister_id:e.Opt(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)}),me=e.Variant({Error:r,DeployedSns:C}),V=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(me)}),S=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)}),Ne=e.Record({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(S)}),Oe=e.Record({next_version:e.Opt(S)}),Q=e.Record({hash:e.Vec(e.Nat8)}),fe=e.Record({proposal_id:e.Opt(e.Nat64)}),Y=e.Record({sns_subnet_ids:e.Vec(e.Principal)}),y=e.Record({hash:e.Vec(e.Nat8)}),g=e.Record({wasm:e.Opt(o)}),m=e.Record({hash:e.Opt(e.Vec(e.Nat8))}),Re=e.Record({contents:e.Opt(e.Vec(e.Nat8)),name:e.Opt(e.Text),visibility:e.Opt(e.Text)}),ge=e.Record({sections:e.Vec(Re)}),Z=e.Variant({Ok:ge,Error:r}),ve=e.Record({result:e.Opt(Z)}),we=e.Record({next_version:e.Opt(S),current_version:e.Opt(S)}),ye=e.Record({upgrade_path:e.Vec(we),sns_governance_canister_id:e.Opt(e.Principal)}),be=e.Record({error:e.Opt(r)}),he=e.Record({instances:e.Vec(C)}),Se=e.Record({limit:e.Nat32,starting_at:e.Opt(S),sns_governance_canister_id:e.Opt(e.Principal)}),I=e.Record({archive_wasm_hash:e.Text,root_wasm_hash:e.Text,swap_wasm_hash:e.Text,ledger_wasm_hash:e.Text,governance_wasm_hash:e.Text,index_wasm_hash:e.Text}),ke=e.Record({pretty_version:e.Opt(I),version:e.Opt(S)}),xe=e.Record({steps:e.Vec(ke)}),Ve=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),s=e.Variant({Error:r,AllowedPrincipals:h}),D=e.Record({update_allowed_principals_result:e.Opt(s)}),w=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),Te=e.Record({error:e.Opt(r)});return e.Service({add_wasm:e.Func([n],[c],[]),deploy_new_sns:e.Func([F],[q],[]),get_allowed_principals:e.Func([e.Record({})],[h],[]),get_deployed_sns_by_proposal_id:e.Func([le],[V],[]),get_latest_sns_version_pretty:e.Func([e.Null],[e.Vec(e.Tuple(e.Text,e.Text))],[]),get_next_sns_version:e.Func([Ne],[Oe],[]),get_proposal_id_that_added_wasm:e.Func([Q],[fe],[]),get_sns_subnet_ids:e.Func([e.Record({})],[Y],[]),get_wasm:e.Func([y],[g],[]),get_wasm_metadata:e.Func([m],[ve],[]),insert_upgrade_path_entries:e.Func([ye],[be],[]),list_deployed_snses:e.Func([e.Record({})],[he],[]),list_upgrade_steps:e.Func([Se],[xe],[]),update_allowed_principals:e.Func([Ve],[D],[]),update_sns_subnet_list:e.Func([w],[Te],[])})};var Or=({IDL:e})=>{let t=e.Record({allowed_principals:e.Vec(e.Principal),access_controls_enabled:e.Bool,sns_subnet_ids:e.Vec(e.Principal)}),o=e.Record({wasm:e.Vec(e.Nat8),proposal_id:e.Opt(e.Nat64),canister_type:e.Int32}),n=e.Record({hash:e.Vec(e.Nat8),wasm:e.Opt(o)}),r=e.Record({message:e.Text}),i=e.Variant({Error:r,Hash:e.Vec(e.Nat8)}),c=e.Record({result:e.Opt(i)}),d=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),_=e.Record({id:e.Opt(e.Principal)}),N=e.Record({canisters:e.Vec(_)}),f=e.Record({slope_numerator:e.Opt(e.Nat64),intercept_icp_e8s:e.Opt(e.Nat64),from_direct_participation_icp_e8s:e.Opt(e.Nat64),slope_denominator:e.Opt(e.Nat64),to_direct_participation_icp_e8s:e.Opt(e.Nat64)}),l=e.Record({serialized_representation:e.Opt(e.Text)}),v=e.Record({coefficient_intervals:e.Vec(f),max_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),min_direct_participation_threshold_icp_e8s:e.Opt(e.Nat64),ideal_matched_participation_function:e.Opt(l)}),x=e.Record({total_e8s:e.Nat64}),B=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Nat64,memo:e.Nat64,stake_e8s:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64)}),X=e.Record({developer_neurons:e.Vec(B)}),de=e.Record({airdrop_neurons:e.Vec(B)}),pe=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),ue=e.Record({treasury_distribution:e.Opt(x),developer_distribution:e.Opt(X),airdrop_distribution:e.Opt(de),swap_distribution:e.Opt(pe)}),p=e.Variant({FractionalDeveloperVotingPower:ue}),M=e.Record({iso_codes:e.Vec(e.Text)}),J=e.Record({url:e.Opt(e.Text),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),nns_proposal_id:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(d),fallback_controller_principal_ids:e.Vec(e.Text),token_symbol:e.Opt(e.Text),final_reward_rate_basis_points:e.Opt(e.Nat64),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),description:e.Opt(e.Text),max_neuron_age_seconds_for_age_bonus:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),dapp_canisters:e.Opt(N),neurons_fund_participation_constraints:e.Opt(v),max_age_bonus_percentage:e.Opt(e.Nat64),initial_token_distribution:e.Opt(p),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),proposal_reject_cost_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(M),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),F=e.Record({sns_init_payload:e.Opt(J)}),A=e.Record({restored_dapp_canisters:e.Vec(_),nns_controlled_dapp_canisters:e.Vec(_),sns_controlled_dapp_canisters:e.Vec(_)}),$=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)}),q=e.Record({dapp_canisters_transfer_result:e.Opt(A),subnet_id:e.Opt(e.Principal),error:e.Opt(r),canisters:e.Opt($)}),h=e.Record({allowed_principals:e.Vec(e.Principal)}),le=e.Record({proposal_id:e.Nat64}),C=e.Record({root_canister_id:e.Opt(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)}),me=e.Variant({Error:r,DeployedSns:C}),V=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(me)}),S=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)}),Ne=e.Record({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(S)}),Oe=e.Record({next_version:e.Opt(S)}),Q=e.Record({hash:e.Vec(e.Nat8)}),fe=e.Record({proposal_id:e.Opt(e.Nat64)}),Y=e.Record({sns_subnet_ids:e.Vec(e.Principal)}),y=e.Record({hash:e.Vec(e.Nat8)}),g=e.Record({wasm:e.Opt(o)}),m=e.Record({hash:e.Opt(e.Vec(e.Nat8))}),Re=e.Record({contents:e.Opt(e.Vec(e.Nat8)),name:e.Opt(e.Text),visibility:e.Opt(e.Text)}),ge=e.Record({sections:e.Vec(Re)}),Z=e.Variant({Ok:ge,Error:r}),ve=e.Record({result:e.Opt(Z)}),we=e.Record({next_version:e.Opt(S),current_version:e.Opt(S)}),ye=e.Record({upgrade_path:e.Vec(we),sns_governance_canister_id:e.Opt(e.Principal)}),be=e.Record({error:e.Opt(r)}),he=e.Record({instances:e.Vec(C)}),Se=e.Record({limit:e.Nat32,starting_at:e.Opt(S),sns_governance_canister_id:e.Opt(e.Principal)}),I=e.Record({archive_wasm_hash:e.Text,root_wasm_hash:e.Text,swap_wasm_hash:e.Text,ledger_wasm_hash:e.Text,governance_wasm_hash:e.Text,index_wasm_hash:e.Text}),ke=e.Record({pretty_version:e.Opt(I),version:e.Opt(S)}),xe=e.Record({steps:e.Vec(ke)}),Ve=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),s=e.Variant({Error:r,AllowedPrincipals:h}),D=e.Record({update_allowed_principals_result:e.Opt(s)}),w=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),Te=e.Record({error:e.Opt(r)});return e.Service({add_wasm:e.Func([n],[c],[]),deploy_new_sns:e.Func([F],[q],[]),get_allowed_principals:e.Func([e.Record({})],[h],["query"]),get_deployed_sns_by_proposal_id:e.Func([le],[V],["query"]),get_latest_sns_version_pretty:e.Func([e.Null],[e.Vec(e.Tuple(e.Text,e.Text))],["query"]),get_next_sns_version:e.Func([Ne],[Oe],["query"]),get_proposal_id_that_added_wasm:e.Func([Q],[fe],["query"]),get_sns_subnet_ids:e.Func([e.Record({})],[Y],["query"]),get_wasm:e.Func([y],[g],["query"]),get_wasm_metadata:e.Func([m],[ve],["query"]),insert_upgrade_path_entries:e.Func([ye],[be],[]),list_deployed_snses:e.Func([e.Record({})],[he],["query"]),list_upgrade_steps:e.Func([Se],[xe],["query"]),update_allowed_principals:e.Func([Ve],[D],[]),update_sns_subnet_list:e.Func([w],[Te],[])})};var Ko=class e{constructor(t,o){this.service=t;this.certifiedService=o;this.listSnses=async({certified:t=!0})=>{let o=t?this.certifiedService:this.service,{instances:n}=await o.list_deployed_snses({});return n}}static create(t={}){let{service:o,certifiedService:n}=(0,fr.createServices)({options:{...t,canisterId:t.canisterId??fn},idlFactory:Or,certifiedIdlFactory:Nr});return new e(o,n)}};var Rr=({recentBallots:e,proposalId:t})=>{if(!t)return;let o=e.find(({proposalId:n})=>n===t);return o==null?void 0:o.vote},gr=({neurons:e,proposal:t})=>{let{ballots:o,proposalTimestampSeconds:n}=t;return e.filter(({createdTimestampSeconds:r,neuronId:i})=>{let c=r>n,d=o.find(({neuronId:_})=>_===i)===void 0;return c||d})},Ss=({neurons:e,proposal:t})=>{let{id:o}=t;return e.filter(({recentBallots:n,neuronId:r})=>Rr({recentBallots:n,proposalId:o})===void 0&&gr({neurons:e,proposal:t}).find(({neuronId:i})=>i===r)===void 0)},ks=({neurons:e,proposal:{id:t}})=>e.filter(({recentBallots:o})=>Rr({recentBallots:o,proposalId:t})!==void 0);0&&(module.exports={CanisterAction,CanisterInstallMode,CouldNotClaimNeuronError,GenesisTokenCanister,GovernanceCanister,GovernanceError,GovernanceTestCanister,InsufficientAmountError,LogVisibility,NeuronState,NeuronType,NeuronVisibility,NnsFunction,ProposalRewardStatus,ProposalStatus,SnsWasmCanister,StakeNeuronError,Topic,UnrecognizedTypeError,UnsupportedValueError,Vote,ineligibleNeurons,votableNeurons,votedNeurons});
|
|
2
2
|
/*! Bundled license information:
|
|
3
3
|
|
|
4
4
|
@noble/hashes/esm/utils.js:
|